/* @license Copyright (C) Exontrol. All rights reserved. */ !function(){"use strict";function e(){var e,t,n=function(){},o=run.contentWindow,i=o.requestAnimationFrame||o.webkitRequestAnimationFrame||o.mozRequestAnimationFrame||o.oRequestAnimationFrame||o.msRequestAnimationFrame,r=o.cancelAnimationFrame||o.webkitCancelAnimationFrame||o.mozCancelAnimationFrame||o.oCancelAnimationFrame||o.msCancelAnimationFrame;if(i&&r)for(t=i.call(o,n),e=Math.max(0,t-16);e<=t;e++)r.call(o,e);for(t=setTimeout.call(o,n),e=Math.max(0,t-16);e<=t;e++)clearTimeout.call(o,e);for(t=setInterval.call(o,n),e=Math.max(0,t-16);e<=t;e++)clearInterval.call(o,e)}function t(){return run.contentDocument||run.contentWindow.document}function n(e,t,n){n=n||1;var o,i={w:~~((run.contentWindow.innerWidth-J)/t),h:~~((run.contentWindow.innerHeight-J)/n)};return(o=G[e])&&(null!=o[0]&&(i.w=o[0]),null!=o[1]&&(i.h=o[1])),i}function o(){T(code),i()}function i(){function e(e){var t,n;return(t=e.exontrol)&&(t=t.oCC)&&(t=t.rgC)&&t.forEach(function(e){n||(n=function(e){return e.oT||e}(e).constructor.type)}),n}var o,i=t().querySelectorAll("["+le+"]"),r=i.length,c=1;r&&(i.forEach(function(t){G[e(t)]&&(c=2)}),i.forEach(function(t){!function(e,t,n){if(e.tagName.toLowerCase()==he){e.width=t,e.height=n;var o=o=e.exontrol;o&&(o=o.oCC)&&o.resize&&o.resize()}else e.style.width=V(t),e.style.height=V(n)}(t,(o=n(e(t),r,c)).w*window.devicePixelRatio,o.h*window.devicePixelRatio)}))}function r(e){return ke+e}function c(e){var t=window.innerWidth-J,n=parseInt(getComputedStyle(vsplit).width)+parseInt(getComputedStyle(lineno).width)+4;e=Math.max(0,Math.min(e,t-n)),code.style.width=V(e),run.style.width=V(t-(n+parseInt(code.style.width))),hsplit.style.width=V(t),o()}function l(e){var t=window.innerHeight-J,n=parseInt(getComputedStyle(hsplit).height)+J;e=Math.max(0,Math.min(e,t-n)),desc.style.height=V(e),lineno.style.height=vsplit.style.height=run.style.height=code.style.height=V(window.innerHeight-(n+parseInt(getComputedStyle(desc).height))),o()}function s(o){function i(){function e(e){function t(){var t,n=new Map;return i.forEach(function(o){var i=Z[o];i&&i.split(",").forEach(function(o){n.get(o)||(n.set(o,o),o=function(e){return Te&&e.indexOf(".def.js")<0&&e.indexOf(".shapes.js")<0&&(e=e.replace(".js",".min.js")),e}(o),new RegExp(Se.replace("FILE",o.replace(/\./g,"\\."))).test(e)||(t=t||[]).push(o))})}),t}var n,o,i=new Map,r=new Map,c=new Map;if(_(ve,e,function(e){3==e.length&&(e[1]&&i.set(e[1],e[1]),e[2]&&r.set(e[2],e[2]),e[1]&&e[2]&&c.set(e[2],e[1]))}),_(xe,e,function(e){2==e.length&&(n=e[1])&&(n&&i.set(n,n),!o&&n in Z&&(o=n))}),_(ye,e,function(e){2==e.length&&(n=e[1])&&n&&i.set(n,n)}),i.size||r.size||o)return{src:t(),id:function(){var t;return r.forEach(function(n){!new RegExp(Ce.replace("ID",n.replace(/\./g,"\\."))).test(e)&&(t=t||[]).push(n)}),t}(),type:c,use:o}}function o(e){var t="";return e&&e.forEach(function(e){t+=function(e){return L(me,!0,'type="text/javascript" src="'+r(e)+'"')}(e)}),t}function i(e,t,o){var i,r=!Le&&L(me,"window.onerror = function(message, source, lineno, colno){window.parent.setError(message, source, lineno, colno);}")||"",c=1;return e&&(t.forEach(function(e){G[e]&&(c=2)}),e.forEach(function(o){i=n(t.get(o),e.length,c);var l=$[t.get(o)]||he,s=l==he;r+=ce+L(l,!s||we+"\n",le+' id="'+o+'" tabIndex="0" '+function(e,t,n){function o(e){return n&&(e=V(e)),i+r+e+c+r+l}var i=n?":":"=",r=n?"":'"',c=n?";":"",l=n?"":" ",s="width"+o(e)+"height"+o(t);return n&&(s='style="'+s+'"'),s}(i.w,i.h,!s)).trim()})),o&&(r+=ce+L(me,o)),window.parent.exttsa&&(r+=ce+L(me,"exontrol.DPR.X()")),r}var c=t();xError(),c.open(),c.write(function(){var t,n=h(H(a())),c=e(n),l=y(n);return function(){var t;if(n&&!l&&!c)for(var o in Z)if(t=new RegExp(Me.replace("TYPE",o)).exec(n)){d(n=(Ee.exec(n)||"")+"var "+t[1]+" = new exontrol."+o+"('cvs"+o+"');\n\n"+n),p(code),c=e(n);break}}(),F=c&&c.use||"",function(){var e,t,o="",i=0;_(be,n,function(c){o+=n.substr(i,c.index-i),(t=c[0])&&(window.parent.extnfo=window.parent.extnfo||{},window.parent.extnfo.rel=(window.parent.extnfo.rel||0)+1,(window.parent.extnfo.occ=window.parent.extnfo.occ||new Map).set(t,t),e=t.charAt(0),t=t.substr(1,t.length-2),t=r((F&&"ex"+F.toLowerCase()+"/"||"")+t),o+=t=e+t+e),i=c.index+c[0].length}),o+=n.substr(i),n=o}(),t=L(ae,o(c&&c.src))+ce,l?(t+=i(c&&c.id,c&&c.type,"")+ce+n,n=t):(t+=L(de,i(c&&c.id,c&&c.type,n)),n=L(ue,t)),Le>0&&(1==Le?n=g():2==Le&&(n=x()),n=L(pe,Ie[Le],'class="view"')+L(ge,n.trim(),'spellcheck="false" readonly style="width: '+(window.innerWidth-Qe-2*J)+"px;height: "+(window.innerHeight-2*J)+'px"')),n}()),c.close(),!hasError()&&m()}e(),clearTimeout(z),(o=~~o)&&!Re||(o?(P=!0,z=setTimeout(i,o)):i())}function u(){P=!0,s(),O(),setTimeout(function(){p(code)})}function a(){return code.value||code.innerText}function d(e){var t=a();code["value"in code?"value":"innerText"]=e,E(),A(t!=a())}function h(e,t){return null==e&&(e=a()),t=t||ee(e),d(e=t.c),"o"in t&&(N=t.o,w(t.d),m()),e}function f(){var e=desc.innerHTML.replace(/\n/g,se).trim();return e&&e!=Fe&&e||""}function w(e){null!=e&&(desc.innerHTML=e),desc.style.minHeight=f()||Ae?V(Ue):"initial",l(Ve)}function m(){!function(){var e,t,n=Oe,o=function(){var e="";N&&(e+=N.t&&N.t[0]||"",N.e&&N.e[0]&&(e+=e?", ":"",e+="E"+N.e[0]));return e}();(F||o)&&(~(t=n.indexOf("-"))&&(n=n.substr(0,t).trim()),e=n,F?(n=F+"/JS",o&&(n+=" ("+o+")"),n+=" | "+e):o&&(n+=" - "+o));X(function(){window.top.document.title=n})}(),p(code)}function p(e,t){if(!P){var n,o,i,r,c,l=N&&N.k,s=[],u=t;t&&function(){if(t){if(l){var e=l.indexOf(t);~e?(l.splice(e,1),l.length||(l=null)):l.push(t)}else l=[t];(N=N||{}).k=l}}(),l&&(document.activeElement==code&&(c={s:e.selectionStart,e:e.selectionEnd}),n=a(),r=~l.indexOf(n.substr(e.selectionStart,e.selectionEnd-e.selectionStart)),l.forEach(function(t){function c(e){return~e&&(/[^\w]/.test(t)||(!e||!/\w/.test(n.charAt(e-1)))&&(e+t.length>=n.length||!/\w/g.test(n.charAt(e+t.length))))}if(t&&~(o=n.indexOf(t)))for(!r&&c(o)&&(r=!0,K=u,setSelCol(Be),e.setSelectionRange(o,o+t.length),e.ensureVisibleSel());~o;)i=o,o+=t.length,c(i)&&s.push.apply(s,function(e,t,n,o){function i(e,t){return[~~e[0],~~e[1],~~(t[0]-e[0]),~~e[3],o]}var r,c,l,s=M(e,t),u=M(e,n),a=[];if(s[1]==u[1])a.push(i(s,u));else{r=e.value,c=C(r,t),l=C(r,n),a.push(i(s,M(e,b(r,c.l,S(r,c.l).length+1))));for(var d=c.l+1;dcode.clientHeight&&t++,e="";for(var n=0;n"+(n+1)+"";lineno.innerHTML=e}}function b(e,t,n){for(var o=0,i=1,r=0;~r&&i=0&&r<=t;)i=o,(r=e.indexOf(ce,r))>=0&&(o=r+ce.length,r=l[0]&&l[0]+l[2]>=i[0]&&i[1]+i[3]>=l[1]&&l[1]+l[3]>=i[1])&&(t=Math.max(i[0],l[0]),n=Math.max(i[1],l[1]),i=[t,n,Math.min(i[0]+i[2],l[0]+l[2])-t,Math.min(i[1]+i[3],l[1]+l[3])-n],e.style.left=V(i[0]),e.style.width=V(i[2]),e.style.top=V(i[1]),e.style.height=V(i[3])),e.style.visibility=o?"":"hidden"})}function k(e){e&&(e.exkeys&&e.exkeys.forEach(function(e){e.remove()}),ne(e,Pe,!0),e.exkeys=null)}function R(){var e="";return X(function(){e=window.top.location.href},window,128,window.setError),e}function A(e,t){W=e,ne(vsplit,je,!W),W&&(t||null==t)&&Re&&s(He)}function H(e){return null!=e?String(e):""}function L(e,t,n){var o="",i=1==t;return t=i?"":H(t),(i||t)&&((n=H(n))&&(n=" "+n),o="<"+e+n+">",i||t.charAt(0)==ce||(o+=ce),o+=t,i||t.charAt(t.length-1)==ce||(o+=ce),o+="",i&&(o+="\n")),o}function I(){window.frameElement&&(window.frameElement.height=window.parent.innerHeight-58)}function O(){window.parent.onexample&&window.parent.onexample(g())}var F,N,W,j,K,P,z,B,D=comrun.RUR,q=comrun.URLParam,Y=comrun.SEP,X=comrun.tryC,Q=comrun.getLocalItem,U=comrun.setLocalItem,V=comrun.suffiPX,J=comrun.border,Z=comrun.lib,G=comrun.size,$=comrun.tag,_=comrun.feMU,ee=comrun.splitQ,te=comrun.toA,ne=comrun.uCL,oe=comrun.buildQ,ie=comrun.buildQI,re=comrun.INLINECOMMENT,ce=comrun.EOL,le="exontrol",se="
",ue="html",ae="head",de="body",he="canvas",fe="contentEditable",we="Your browser does not support the canvas tag.",me="script",pe="span",ge="textarea",ve=/new\s*exontrol\.(.*?)\s*\(\s*['"](.*?)['"]/gm,xe=/new\s*exontrol\.(.*?)\s*\(/gm,ye=/exontrol\.([^.(]*)[.(]/gm,Ee=/^[ \t]*/,be=/["']([^\\\/#A-Z0-9<>.].([^<>()"'`,:|?*\[\]\n]*?)[\\\/].*?|[^<>()"'`,:|?*\[\]\n]*?\.(csv|xml|txt))["']/g,Se="",Ce="<[a-zA-Z]+\\s*.*[iI][dD]\\s*=\\s*['\"]ID['\"].*?>",Me="(\\w*TYPE)\\b",Te=comrun.isMin(),ke="../",Re=!1,Ae=!1,He=2e3,Le=0,Ie=["result","code","url","html"],Oe="Exontrol - Run JavaScript",Fe="

",Ne="E64",We="edit",je="dirty",Ke="lincaret",Pe="host-keyword",ze="keyword",Be="style-sel-key",De="run-js.width",qe="run-js.height",Ye="run-js.txtcode",Xe="run-js.auto",Qe=window.innerWidth,Ue=28,Ve=0,Je={e:[],t:[],k:[]};window.onload=function(){function e(e){setTimeout(function(){e.selectionStart!=j&&e.oncaret(j=e.selectionStart)})}code.oninput=function(t){e(this),xError(),E(),A(!0),this.setSelectionRange&&t&&"/"==t.data&&this.selectionStart==this.selectionEnd&&(1==this.selectionStart||2==this.selectionStart)&&setTimeout(function(){var e=a(),t=re.length;e!=re&&e.substr(0,t+1)!=re+ce||(d(e=re+ie(N,Je)+f()+e.substr(t)),code.setSelectionRange(t,t))})},code.onscroll=function(){T(this),lineno.scrollTop=this.scrollTop},code.onkeydown=function(t){if(e(this),t.ctrlKey&&13==t.keyCode)p(this,a().substr(this.selectionStart,Math.abs(this.selectionStart-this.selectionEnd)));else if(36==t.keyCode)code.scrollLeft=0;else if(!t.ctrlKey&&!t.altKey)switch(t.keyCode){case 9:return this.setSelectionRange?function(t){function n(e,t){for(var n=0,o=0,r=c.length;e=n[0]&&e=n[1]&&tthis.offsetHeight-36?(B&&B.n&&null!=B.i&&(B.n=!1,B.i++),n=(B=B||function(){var e=document.getElementById("tricks");return e&&(e=e.innerHTML.trim())&&(e=e.split("\n")),e||[]}())[B.i=(B.i||0)%B.length].trim()):B&&(B.n=!0)),this.setAttribute("title",n||"")},code.ensureVisibleSel=function(){var e=M(this,this.selectionEnd);this.scrollLeft=e[0]+e[2]+8-this.clientWidth,this.scrollTop=e[1]+e[3]-this.clientHeight},vsplit.onpointerdown=vsplit.onmousedown=function(e){D.Do(e,function(e){if(4==e.drag.status)e.offsetX<0&&(u(),(e.ctrlKey||e.altKey||e.shiftKey)&&(Re=!Re));else{var t=Math.max(0,Qe+e.drag.offset.x/window.devicePixelRatio);c(t),7==e.drag.status&&(Qe=t)}})},hsplit.onpointerdown=hsplit.onmousedown=function(e){D.Do(e,function(e){var t=Math.max(0,Ve+e.drag.offset.y/window.devicePixelRatio);l(t),7==e.drag.status&&(Ve=t)})},hsplit.oncontextmenu=vsplit.oncontextmenu=function(){return!1},run.onload=function(){A(!1);var e=t(),n=document.getElementById("style-run");n&&n.content&&e.head.appendChild(n.content.cloneNode(!0)),i()},run.contentWindow.console.log=function(e){return function(){e.apply(this,arguments),setOutput.apply(window,arguments)}}(run.contentWindow.console.log),run.eval=function(e){var n,o=t();(n=o.createElement(me)).appendChild(o.createTextNode("console.log("+e+")")),o.body.appendChild(n),n.remove()},output.oncontextmenu=function(e){return window.xOutput(),window.showOutput(!1),Y(e)},code.style.lineHeight=lineno.style.lineHeight="1.4em",lineno.style.font=getComputedStyle(code).font,showOutput(!1),showError(!1),I(),function(){var e=Q(Ye)||"",t=new q(R()).Get(Ne);t&&X(function(){e=atob(t)}),Qe=~~((~~Q(De)||384||Qe+1)-1),Ve=~~((~~Q(qe)||Ve+1)-1),Re=~~Q(Xe),v(e)}(),E(),l(Ve),c(Qe),s()},window.onbeforeunload=function(){U(De,Qe+1),U(qe,Ve+1),U(Xe,~~Re),U(Ye,g())},window.onresize=function(){I(),l(Ve),c(Qe),o()},window.onkeydown=function(t){function n(e){Le!=e&&(Le=e,s())}function o(e,t){Ae!=e&&(Ae=e,desc.setAttribute(fe,e?"true":"false"),w(),ne(desc,We,!e),(e?desc:code).focus(),!e&&O(),t&&window.top.history.replaceState(null,null,x()))}var i=!1;switch(t.keyCode){case 27:e(),o(!1,!1),n(0);break;case 48:case 49:case 50:case 51:(i=t.ctrlKey||t.altKey)&&n(t.keyCode-48);break;case 69:(i=t.ctrlKey)&&o(!Ae,Ae);break;case 83:(i=t.ctrlKey)&&u()}if(i)return Y(t)},window.setError=function(t,n,o,i){var r,c,l,s,u,d,h="",f=null!=o;e(),te(document.getElementsByClassName("linerr")).forEach(function(e){ne(e,"linerr",!0)}),xSelCol(),k(code),t&&(h=t,f&&((u=y(c=a()))&&(f=(s=c.match(//i))&&c.substr(s.index).match(/<\/script\s*>/i))&&(d=C(c,s.index+s[0].length),i+=1==o?d.c-1:0,o+=d.l-1),o--,u||c.charAt(0)==ce||o--,h+=" on line "+(o+1),f&&(r=lineno.children.item(o))&&(ne(r,"linerr"),code.setSelectionRange&&(setSelCol("style-sel-err"),l=b(c,o+1,i),code.setSelectionRange(l,l+(/\w/.test(c.charAt(l))&&(c.substr(l).match(/\w\w*/)||[])[0].length||0)),code.ensureVisibleSel(),code.focus()),window.parent.extnfo=window.parent.extnfo||{},window.parent.extnfo.err=(window.parent.extnfo.err||0)+1))),showError(error.innerHTML=h),this.parent&&this.parent.setError&&this.parent.setError.apply(this.parent,arguments)},window.xError=function(){window.setError()},window.hasError=function(){return document.getElementsByClassName("linerr").length},window.showError=function(e){error.style.visibility=e?"visible":"hidden"},window.showOutput=function(e){output.style.visibility=e?"visible":"hidden"},window.setOutput=function(){for(var e,t="",n=output.innerHTML.trim(),o=0,i=arguments.length;o