Advertisement
Guest User

Untitled

a guest
Mar 13th, 2019
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JSON 100.40 KB | None | 0 0
  1. /**@license
  2.  *       __ _____                     ________                              __
  3.  *      / // _  /__ __ _____ ___ __ _/__  ___/__ ___ ______ __ __  __ ___  / /
  4.  *  __ / // // // // // _  // _// // / / // _  // _//     // //  \/ // _ \/ /
  5.  * /  / // // // // // ___// / / // / / // ___// / / / / // // /\  // // / /__
  6.  * \___//____ \\___//____//_/ _\_  / /_//____//_/ /_/ /_//_//_/ /_/ \__\_\___/
  7.  *           \/              /____/                              version 1.19.1
  8.  *
  9.  * This file is part of jQuery Terminal. http://terminal.jcubic.pl
  10.  *
  11.  * Copyright (c) 2010-2018 Jakub Jankiewicz <http://jcubic.pl/me>
  12.  * Released under the MIT license
  13.  *
  14.  * Contains:
  15.  *
  16.  * Storage plugin Distributed under the MIT License
  17.  * modified to work from Data URIs that block storage and cookies in Chrome
  18.  * Copyright (c) 2010 Dave Schindler
  19.  *
  20.  * jQuery Timers licenced with the WTFPL
  21.  * <http://jquery.offput.ca/timers/>
  22.  *
  23.  * Cross-Browser Split 1.1.1
  24.  * Copyright 2007-2012 Steven Levithan <stevenlevithan.com>
  25.  * Available under the MIT License
  26.  *
  27.  * jQuery Caret
  28.  * Copyright (c) 2009, Gideon Sireling
  29.  * 3 clause BSD License
  30.  *
  31.  * sprintf.js
  32.  * Copyright (c) 2007-2013 Alexandru Marasteanu <hello at alexei dot ro>
  33.  * licensed under 3 clause BSD license
  34.  *
  35.  * Date: Mon, 23 Jul 2018 16:39:27 +0000
  36.  */
  37. (function(e){var m=function(){if(!m.cache.hasOwnProperty(arguments[0])){m.cache[arguments[0]]=m.parse(arguments[0])}return m.format.call(null,m.cache[arguments[0]],arguments)};m.format=function(e,n){var t=1,r=e.length,i="",o,a=[],s,l,f,c,u,p;for(s=0;s<r;s++){i=d(e[s]);if(i==="string"){a.push(e[s])}else if(i==="array"){f=e[s];if(f[2]){o=n[t];for(l=0;l<f[2].length;l++){if(!o.hasOwnProperty(f[2][l])){throw m('[sprintf] property "%s" does not exist',f[2][l])}o=o[f[2][l]]}}else if(f[1]){o=n[f[1]]}else{o=n[t++]}if(/[^s]/.test(f[8])&&d(o)!=="number"){throw m("[sprintf] expecting number but found %s",d(o))}switch(f[8]){case"b":o=o.toString(2);break;case"c":o=String.fromCharCode(o);break;case"d":o=parseInt(o,10);break;case"e":o=f[7]?o.toExponential(f[7]):o.toExponential();break;case"f":o=f[7]?parseFloat(o).toFixed(f[7]):parseFloat(o);break;case"o":o=o.toString(8);break;case"s":o=(o=String(o))&&f[7]?o.substring(0,f[7]):o;break;case"u":o=o>>>0;break;case"x":o=o.toString(16);break;case"X":o=o.toString(16).toUpperCase();break}o=/[def]/.test(f[8])&&f[3]&&o>=0?" +"+o:o;u=f[4]?f[4]==="0"?"0":f[4].charAt(1):" ";p=f[6]-String(o).length;c=f[6]?h(u,p):"";a.push(f[5]?o+c:c+o)}}return a.join("")};m.cache={};m.parse=function(e){var n=e,t=[],r=[],i=0;while(n){if((t=/^[^\x25]+/.exec(n))!==null){r.push(t[0])}else if((t=/^\x25{2}/.exec(n))!==null){r.push("%")}else if((t=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(n))!==null){if(t[2]){i|=1;var o=[],a=t[2],s=[];if((s=/^([a-z_][a-z_\d]*)/i.exec(a))!==null){o.push(s[1]);while((a=a.substring(s[0].length))!==""){if((s=/^\.([a-z_][a-z_\d]*)/i.exec(a))!==null){o.push(s[1])}else if((s=/^\[(\d+)\]/.exec(a))!==null){o.push(s[1])}else{throw"[sprintf] huh?"}}}else{throw"[sprintf] huh?"}t[2]=o}else{i|=2}if(i===3){throw"[sprintf] mixing positional and named placeholders is not (yet) supported"}r.push(t)}else{throw"[sprintf] huh?"}n=n.substring(t[0].length)}return r};var n=function(e,n,t){t=n.slice(0);t.splice(0,0,e);return m.apply(null,t)};function d(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()}function h(e,n){for(var t=[];n>0;t[--n]=e){}return t.join("")}e.sprintf=m;e.vsprintf=n})(typeof global!=="undefined"?global:window);(function(r){var e=typeof window!=="undefined"?window:global;if(typeof define==="function"&&define.amd){define(["jquery","wcwidth"],r)}else if(typeof module==="object"&&module.exports){module.exports=function(e,n,t){if(n===undefined){if(typeof window!=="undefined"){n=require("jquery")}else{n=require("jquery")(e)}}if(typeof t==="undefined"){t=require("wcwidth")}r(n,t);return n}}else{r(e.jQuery,e.wcwidth)}})(function($,wcwidth,undefined){"use strict";function debug(e){if(false){console.log(e)}}function DelayQueue(){var n=$.Callbacks();var t=false;this.resolve=function(){n.fire();t=true};this.add=function(e){if(t){e()}else{n.add(e)}}}$.omap=function(t,r){var i={};$.each(t,function(e,n){i[e]=r.call(t,e,n)});return i};$.fn.text_length=function(){return this.map(function(){return $(this).text().length}).get().reduce(function(e,n){return e+n},0)};var Clone={clone_object:function(e){var n={};if(typeof e==="object"){if($.isArray(e)){return this.clone_array(e)}else if(e===null){return e}else{for(var t in e){if($.isArray(e[t])){n[t]=this.clone_array(e[t])}else if(typeof e[t]==="object"){n[t]=this.clone_object(e[t])}else{n[t]=e[t]}}}}return n},clone_array:function(e){if(!is_function(Array.prototype.map)){throw new Error("Your browser don't support ES5 array map "+"use es5-shim")}return e.slice(0).map(function(e){if(typeof e==="object"){return this.clone_object(e)}else{return e}}.bind(this))}};var clone=function(e){return Clone.clone_object(e)};var localStorage;(function(){var e=function(){try{var e="test",n=window.localStorage;n.setItem(e,"1");n.removeItem(e);return true}catch(e){return false}};var n=function(){try{document.cookie.split(";");return true}catch(e){return false}};var t=e();function r(e,n){var t;if(typeof e==="string"&&typeof n==="string"){localStorage[e]=n;return true}else if(typeof e==="object"&&typeof n==="undefined"){for(t in e){if(e.hasOwnProperty(t)){localStorage[t]=e[t]}}return true}return false}function i(e,n){var t,r,i;t=new Date;t.setTime(t.getTime()+31536e6);r="; expires="+t.toGMTString();if(typeof e==="string"&&typeof n==="string"){document.cookie=e+"="+n+r+"; path=/";return true}else if(typeof e==="object"&&typeof n==="undefined"){for(i in e){if(e.hasOwnProperty(i)){document.cookie=i+"="+e[i]+r+"; path=/"}}return true}return false}function o(e){return localStorage[e]}function a(e){var n,t,r,i;n=e+"=";t=document.cookie.split(";");for(r=0;r<t.length;r++){i=t[r];while(i.charAt(0)===" "){i=i.substring(1,i.length)}if(i.indexOf(n)===0){return i.substring(n.length,i.length)}}return null}function s(e){return delete localStorage[e]}function l(e){return i(e,"",-1)}if(!n()&&!t){localStorage={};$.extend({Storage:{set:r,get:o,remove:s}})}else{if(t){localStorage=window.localStorage}$.extend({Storage:{set:t?r:i,get:t?o:a,remove:t?s:l}})}})();var jQuery=$;(function(e){jQuery.fn.extend({everyTime:function(e,n,t,r,i){return this.each(function(){jQuery.timer.add(this,e,n,t,r,i)})},oneTime:function(e,n,t){return this.each(function(){jQuery.timer.add(this,e,n,t,1)})},stopTime:function(e,n){return this.each(function(){jQuery.timer.remove(this,e,n)})}});jQuery.extend({timer:{guid:1,global:{},regex:/^([0-9]+)\s*(.*s)?$/,powers:{ms:1,cs:10,ds:100,s:1e3,das:1e4,hs:1e5,ks:1e6},timeParse:function(e){if(e===undefined||e===null){return null}var n=this.regex.exec(jQuery.trim(e.toString()));if(n[2]){var t=parseInt(n[1],10);var r=this.powers[n[2]]||1;return t*r}else{return e}},add:function(e,n,t,r,i,o){var a=0;if(jQuery.isFunction(t)){if(!i){i=r}r=t;t=n}n=jQuery.timer.timeParse(n);if(typeof n!=="number"||isNaN(n)||n<=0){return}if(i&&i.constructor!==Number){o=!!i;i=0}i=i||0;o=o||false;if(!e.$timers){e.$timers={}}if(!e.$timers[t]){e.$timers[t]={}}r.$timerID=r.$timerID||this.guid++;var s=function(){if(o&&s.inProgress){return}s.inProgress=true;if(++a>i&&i!==0||r.call(e,a)===false){jQuery.timer.remove(e,t,r)}s.inProgress=false};s.$timerID=r.$timerID;if(!e.$timers[t][r.$timerID]){e.$timers[t][r.$timerID]=window.setInterval(s,n)}if(!this.global[t]){this.global[t]=[]}this.global[t].push(e)},remove:function(e,n,t){var r=e.$timers,i;if(r){if(!n){for(var o in r){if(r.hasOwnProperty(o)){this.remove(e,o,t)}}}else if(r[n]){if(t){if(t.$timerID){window.clearInterval(r[n][t.$timerID]);delete r[n][t.$timerID]}}else{for(var a in r[n]){if(r[n].hasOwnProperty(a)){window.clearInterval(r[n][a]);delete r[n][a]}}}for(i in r[n]){if(r[n].hasOwnProperty(i)){break}}if(!i){i=null;delete r[n]}}for(i in r){if(r.hasOwnProperty(i)){break}}if(!i){e.$timers=null}}}}});if(/(msie) ([\w.]+)/.exec(navigator.userAgent.toLowerCase())){e(window).one("unload",function(){var e=jQuery.timer.global;for(var n in e){if(e.hasOwnProperty(n)){var t=e[n],r=t.length;while(--r){jQuery.timer.remove(t[r],n)}}}})}})(jQuery);(function(c){if(!String.prototype.split.toString().match(/\[native/)){return}var u=String.prototype.split,p=/()??/.exec("")[1]===c,t;t=function(e,n,t){if(Object.prototype.toString.call(n)!=="[object RegExp]"){return u.call(e,n,t)}var r=[],i=(n.ignoreCase?"i":"")+(n.multiline?"m":"")+(n.extended?"x":"")+(n.sticky?"y":""),o=0,a,s,l,f;n=new RegExp(n.source,i+"g");e+="";if(!p){a=new RegExp("^"+n.source+"$(?!\\s)",i)}t=t===c?-1>>>0:t>>>0;while(s=n.exec(e)){l=s.index+s[0].length;if(l>o){r.push(e.slice(o,s.index));if(!p&&s.length>1){s[0].replace(a,function(){for(var e=1;e<arguments.length-2;e++){if(arguments[e]===c){s[e]=c}}})}if(s.length>1&&s.index<e.length){Array.prototype.push.apply(r,s.slice(1))}f=s[0].length;o=l;if(r.length>=t){break}}if(n.lastIndex===s.index){n.lastIndex++}}if(o===e.length){if(f||!n.test("")){r.push("")}}else{r.push(e.slice(o))}return r.length>t?r.slice(0,t):r};String.prototype.split=function(e,n){return t(this,e,n)};return t})();$.fn.caret=function(e){var n=this[0];var t=n.contentEditable==="true";if(arguments.length===0){if(window.getSelection){if(t){n.focus();var r=window.getSelection().getRangeAt(0),i=r.cloneRange();i.selectNodeContents(n);i.setEnd(r.endContainer,r.endOffset);return i.toString().length}return n.selectionStart}if(document.selection){n.focus();if(t){var r=document.selection.createRange(),i=document.body.createTextRange();i.moveToElementText(n);i.setEndPoint("EndToEnd",r);return i.text.length}var e=0,o=n.createTextRange(),i=document.selection.createRange().duplicate(),a=i.getBookmark();o.moveToBookmark(a);while(o.moveStart("character",-1)!==0)e++;return e}return 0}if(e===-1)e=this[t?"text":"val"]().length;if(window.getSelection){if(t){n.focus();window.getSelection().collapse(n.firstChild,e)}else n.setSelectionRange(e,e)}else if(document.body.createTextRange){var o=document.body.createTextRange();o.moveToElementText(n);o.moveStart("character",e);o.collapse(true);o.select()}if(!t&&!this.is(":focus")){n.focus()}return e};$.fn.resizer=function(s){var l=arguments[0]==="unbind";if(!l&&!is_function(s)){throw new Error('Invalid argument, it need to a function or string "unbind".')}if(l){s=is_function(arguments[1])?arguments[1]:null}return this.each(function(){var e=$(this);var n;var t;function r(){t.fire()}if(l){t=e.data("callbacks");if(s&&t){t.remove(s);if(!t.has()){t=null}}else{t=null}if(!t){e.removeData("callbacks");if(window.ResizeObserver){var i=e.data("observer");if(i){i.unobserve(this);e.removeData("observer")}}else{n=e.find("> iframe");if(n.length){$(n[0].contentWindow).off("resize").remove();n.remove()}else if(e.is("body")){$(window).off("resize.resizer")}}}}else if(e.data("callbacks")){$(this).data("callbacks").add(s)}else{t=$.Callbacks();t.add(s);e.data("callbacks",t);var o;var a=true;if(window.ResizeObserver){o=new ResizeObserver(function(){if(!a){r()}a=false});o.observe(this);e.data("observer",o)}else if(e.is("body")){$(window).on("resize.resizer",r)}else{n=$("<iframe/>").addClass("resizer").appendTo(this)[0];$(n.contentWindow).on("resize",r)}}})};function a11y_hide(e){e.attr({role:"presentation","aria-hidden":"true"})}var excepctions=[];function alert_exception(e,n){var t=(e?e+": ":"")+exception_message(n);if(excepctions.indexOf(t)===-1){excepctions.push(t);alert(t+(n.stack?"\n"+n.stack:""))}}function scrollbar_event(e,n){var t=n.offset().left;return n.outerWidth()<=e.clientX-t}function exception_message(e){if(typeof e==="string"){return e}else if(typeof e.fileName==="string"){return e.fileName+": "+e.message}else{return e.message}}function Cycle(){var r=[].slice.call(arguments);var t=0;$.extend(this,{get:function(){return r},index:function(){return t},rotate:function(e){if(!e){var n=r.filter(function(e){return typeof e!=="undefined"});if(!n.length){return}}if(!r.length){return}if(r.length===1){return r[0]}else{if(t===r.length-1){t=0}else{++t}if(typeof r[t]!=="undefined"){return r[t]}else{return this.rotate(true)}}},length:function(){return r.length},remove:function(e){delete r[e]},set:function(e){for(var n=r.length;n--;){if(r[n]===e){t=n;return}}this.append(e);t=r.length-1},front:function(){if(r.length){var e=t;var n=false;while(!r[e]){e++;if(e>r.length){if(n){break}e=0;n=true}}return r[e]}},map:function(t){return r.map(function(e,n){if(typeof e!=="undefined"){return t(e,n)}return null}).filter(Boolean)},forEach:function(t){return r.forEach(function(e,n){if(typeof e!=="undefined"){t(e,n)}})},append:function(e){r.push(e)}})}function Stack(e){var n=e instanceof Array?e:e?[e]:[];$.extend(this,{data:function(){return n},map:function(e){return $.map(n,e)},size:function(){return n.length},pop:function(){if(n.length===0){return null}else{var e=n[n.length-1];n=n.slice(0,n.length-1);return e}},push:function(e){n=n.concat([e]);return e},top:function(){return n.length>0?n[n.length-1]:null},clone:function(){return new Stack(n.slice(0))}})}function History(e,n,t){var r=true;var i="";if(typeof e==="string"&&e!==""){i=e+"_"}i+="commands";var o;if(t){o=[]}else{o=$.Storage.get(i);o=o?JSON.parse(o):[]}var a=o.length-1;$.extend(this,{append:function(e){if(r){if(o[o.length-1]!==e){o.push(e);if(n&&o.length>n){o=o.slice(-n)}a=o.length-1;if(!t){$.Storage.set(i,JSON.stringify(o))}}}},set:function(e){if(e instanceof Array){o=e;if(!t){$.Storage.set(i,JSON.stringify(o))}}},data:function(){return o},reset:function(){a=o.length-1},last:function(){return o[o.length-1]},end:function(){return a===o.length-1},position:function(){return a},current:function(){return o[a]},next:function(){var e=a;if(a<o.length-1){++a}if(e!==a){return o[a]}},previous:function(){var e=a;if(a>0){--a}if(e!==a){return o[a]}},clear:function(){o=[];this.purge()},enabled:function(){return r},enable:function(){r=true},purge:function(){if(!t){$.Storage.remove(i)}},disable:function(){r=false},toggle:function(e){if(typeof e==="undefined"){r=!r}else{r=e}}})}var cmd_index=0;$.cmd={defaults:{mask:false,caseSensitiveSearch:true,historySize:60,prompt:"> ",enabled:true,history:true,onPositionChange:$.noop,onCommandChange:$.noop}};$.fn.cmd=function(e){var k=$.extend({},$.cmd.defaults,e);var C=this;var n=C.data("cmd");if(n){return n}var a=cmd_index++;C.addClass("cmd");C.append('<span class="prompt"></span>');C.append('<div class="cursor-line">'+"<span></span>"+'<span class="cursor">&nbsp;</span>'+"<span></span>"+"</div>");a11y_hide(C.find(".cursor-line"));var o=$("<textarea>").attr({autocapitalize:"off",spellcheck:"false",tabindex:1}).addClass("clipboard").appendTo(C).val(" ");if(k.width){C.width(k.width)}var T;var E;var u=C.find(".prompt");var s=false;var l="";var f=null;var t;var S="";var r;var i="";var c=0;var p;var m;var R=0;var d,h;var A=C.find(".cursor");var g;var v;var _=0;function y(e){var n=$(e.target);if(n.is("span")){return n.index()+n.parents("span").prevAll().text_length()+n.closest('[role="presentation"]').prevUntil(".prompt").text_length()}else if(n.is('div[role="presentation"]')){var t=n.index();var r=S.split(/\n/).slice(0,t);return r.reduce(function(e,n){return e+Z(n)},0)+(r.length-1)}}var b={SPACEBAR:" ",UP:"ARROWUP",DOWN:"ARROWDOWN",LEFT:"ARROWLEFT",RIGHT:"ARROWRIGHT",DEL:"DELETE",MULTIPLY:"*",DIVIDE:"/",SUBTRACT:"-",ADD:"+"};function w(e){if(e.key){var n=e.key.toUpperCase();if(b[n]){n=b[n]}if(n==="CONTROL"){return"CTRL"}else{var t=[];if(e.ctrlKey){t.push("CTRL")}if(e.metaKey&&n!=="META"){t.push("META")}if(e.shiftKey&&n!=="SHIFT"){t.push("SHIFT")}if(e.altKey&&n!=="ALT"){t.push("ALT")}if(t.length&&n===" "){n="SPACEBAR"}if(e.key){t.push(n)}return t.join("+")}}}var x;var j={"ALT+D":function(){var e=/ *[^ ]+ *(?= )|[^ ]+$/;C.set(S.slice(0,c)+S.slice(c).replace(e,""),true);return false},ENTER:function(){if(h&&S&&!k.mask&&(is_function(k.historyFilter)&&k.historyFilter(S))||k.historyFilter instanceof RegExp&&S.match(k.historyFilter)||!k.historyFilter){h.append(S)}var e=S;h.reset();he="";ue=true;C.set("");if(k.commands){k.commands(e)}if(is_function(p)){te()}o.val("");return false},"SHIFT+ENTER":function(){C.insert("\n");return true},BACKSPACE:P,"SHIFT+BACKSPACE":P,TAB:function(){C.insert("\t")},"CTRL+D":function(){C["delete"](1);return false},DELETE:function(){C["delete"](1);return true},ARROWUP:z,"CTRL+P":z,ARROWDOWN:I,"CTRL+N":I,ARROWLEFT:N,"CTRL+B":N,"CTRL+ARROWLEFT":function(){var e=c-1;var n=0;if(S[e]===" "){--e}for(var t=e;t>0;--t){if(S[t]===" "&&S[t+1]!==" "){n=t+1;break}else if(S[t]==="\n"&&S[t+1]!=="\n"){n=t;break}}C.position(n)},"CTRL+R":function(){if(s){J(true)}else{t=p;W();r=S;C.set("");ne();s=true}return false},"CTRL+G":function(){if(s){p=t;te();C.set(r);ne();s=false;l="";return false}},ARROWRIGHT:F,"CTRL+F":F,"CTRL+ARROWRIGHT":function(){if(S[c]===" "){++c}var e=/\S[\n\s]{2,}|[\n\s]+\S?/;var n=S.slice(c).match(e);if(!n||n[0].match(/^\s+$/)){C.position(S.length)}else if(n[0][0]!==" "){c+=n.index+1}else{c+=n.index+n[0].length-1;if(n[0][n[0].length-1]!==" "){--c}}ne()},F12:O,END:H,"CTRL+E":H,HOME:D,"CTRL+A":D,"SHIFT+INSERT":L,"CTRL+SHIFT+T":O,"CTRL+W":function(){if(S!==""&&c!==0){var e=S.slice(0,c).match(/([^ ]+ *$)/);if(e[0].length){i=C["delete"](-e[0].length);text_to_clipboard(C,i)}}return false},"CTRL+H":function(){if(S!==""&&c>0){C["delete"](-1)}return false},"CTRL+X":O,"CTRL+C":O,"CTRL+T":O,"CTRL+Y":function(){if(i!==""){C.insert(i)}},"CTRL+V":L,"META+V":L,"CTRL+K":function(){if(S.length-c){i=C["delete"](S.length-c);text_to_clipboard(C,i)}return false},"CTRL+U":function(){if(S!==""&&c!==0){i=C["delete"](-c);text_to_clipboard(C,i)}return false},"CTRL+TAB":function(){return false},"META+`":O,"META+R":O,"META+L":O};function O(){return true}function L(){o.val("");_=0;if(C.isenabled()&&!o.is(":focus")){o.trigger("focus",[true])}o.one("input",re);return true}function z(){if(oe){r=S;C.set(h.current())}else{C.set(h.previous())}oe=false;return false}function I(){C.set(h.end()?r:h.next());return false}function P(){if(s){l=l.slice(0,-1);W()}else if(S!==""&&c>0){C["delete"](-1)}C.oneTime(1,function(){ue=true})}function N(){if(c>0){C.position(-1,true);ne()}}function F(){if(c<S.length){C.position(1,true)}return false}function D(){C.position(0)}function H(){C.position(S.length)}function U(){var e=o.is(":focus");if(m){if(!e){}C.oneTime(10,function(){if(!o.is(":focus")&&m){o.trigger("focus",[true])}})}else if(e&&(is_mobile||!m)){o.trigger("blur",[true])}}function q(e){if(!C.isenabled()){return}C.oneTime(10,function(){if(o.val()!==S&&!e){o.val(" "+S)}if(m){C.oneTime(10,function(){try{if(o.caret()!==c+1){o.caret(c+1)}}catch(e){}})}})}if(animation_supported&&!is_android){g=function(e){if(e){A.addClass("blink")}else{A.removeClass("blink")}};v=function(){var e=A.clone();e.insertBefore(A);A.remove();A=e}}else{var M=false;g=function(e){if(e&&!M){M=true;A.addClass("inverted blink");C.everyTime(500,"blink",B)}else if(M&&!e){M=false;C.stopTime("blink",B);A.removeClass("inverted blink")}};v=function(){g(false);g(true)}}function B(){A.toggleClass("inverted")}function W(){p="(reverse-i-search)`"+l+"': ";te()}function K(){p=t;s=false;f=null;l=""}function J(e){var n=h.data();var t,r;var i=n.length;if(e&&f>0){i-=f}if(l.length>0){for(var o=l.length;o>0;o--){r=$.terminal.escape_regex(l.substring(0,o));if(k.caseSensitiveSearch){t=new RegExp(r)}else{t=new RegExp(r,"i")}for(var a=i;a--;){if(t.test(n[a])){f=n.length-a;C.position(n[a].indexOf(r));C.set(n[a],true);ne();if(l.length!==o){l=l.substring(0,o);W()}return}}}}l=""}function Q(){var e=C.find(".prompt").text("&nbsp;");var n=C.width();var t=e[0].getBoundingClientRect().width;T=Math.floor(n/t);te()}function Y(e){function n(e){return $.terminal.split_equal(e,T)}function t(e){return e.filter(function(e){return!$.terminal.strip(e).match(/^ $/)})}var r=u.find(".line");var i;if(r.length){i=r.nextUntil(".line").text()}else{i=u.text()}i=$.terminal.escape_brackets(i);var o=new RegExp("^"+$.terminal.escape_regex(i));var a;if(e.match(/\n/)){var s=e.split("\n");var l=T-E-1;for(var f=0;f<s.length-1;++f){s[f]+=" "}if(strlen(s[0])>l){a=n(i+s[0]);a[0]=a[0].replace(o,"");a=t(a)}else{a=[s[0]]}for(f=1;f<s.length;++f){if(strlen(s[f])>T){var c=n(s[f]);if(f<s.length-1){c=t(c)}a=a.concat(c)}else{a.push(s[f])}}}else{a=n(i+e,T);a[0]=a[0].replace(o,"")}if(a.length>1&&a[a.length-1].length===T){a.push("")}return a}function G(n){try{n=$.terminal.escape_formatting(n);var e=$.extend({},k,{position:c});var t=$.terminal.apply_formatters(n,e);R=t[1];n=t[0];n=$.terminal.normalize(n);n=crlf(n);return n}catch(e){alert_exception("[Formatting]",e.stack);return n}}function V(e){return $.terminal.format($.terminal.encode(X(e)),{char_width:k.char_width})}function X(e){function n(e){if($.terminal.is_formatting(e)){if(e.match(/\]\\\]/)){e=e.replace(/\]\\\]/g,"]\\\\]")}}else{if(e.match(/\\$/)){e+="\\"}e="[[;;]"+e+"]"}return e}var t=Z(e);if(t===1){return n(e)}var r=[];for(var i=0;i<t;++i){var o=$.terminal.substring(e,i,i+1);r.push(n(o))}return r.join("")}function Z(e){return $.terminal.length(e)}function ee(e,n,t){return $.terminal.substring(e,n,t)}var ne=function(){var g=A.prev();var v=A.next();var _=A.parent();function y(e,n){var t=Z(e);if(n===t){g.html(V(e));A.html("&nbsp;");v.html("")}else if(n===0){g.html("");A.html(V(ee(e,0,1)));v.html(V(ee(e,1)))}else{var r=$.terminal.substring(e,0,n);g.html(V(r));var i=ee(e,n,n+1);A.html(V(i));if(n===t-1){v.html("")}else{v.html(V(ee(e,n+1)))}}}function b(e){return'<div role="presentation" aria-hidden="true">'+V(e)+"</div>"}function w(e){var t=_;$.each(e,function(e,n){t=$(b(n)).insertAfter(t)})}function x(e){$.each(e,function(e,n){_.before(b(n))})}return function(){var e;switch(typeof k.mask){case"boolean":e=k.mask?S.replace(/./g,"*"):S;break;case"string":e=S.replace(/./g,k.mask);break}e=G(e);var n=R;var t;C.find("div:not(.cursor-line,.clipboard-wrapper)").remove();g.html("");if(strlen(text(e))>T-E-1||e.match(/\n/)){var r=e.match(/\t/g);var i=r?r.length*3:0;if(r){e=e.replace(/\t/g,"\0\0\0\0")}var o=Y(e);if(r){o=$.map(o,function(e){return e.replace(/\x00\x00\x00\x00/g,"\t")})}var a=Z(o[0]);if(a===0&&o.length===1){}else if(n<a){y(o[0],n);w(o.slice(1))}else if(n===a){_.before(b(o[0]));y(o[1]||"",0);if(o.length>1){w(o.slice(2))}}else if(n<a){y(o[0],n);w(o.slice(1))}else if(n===a){_.before(b(o[0]));y(o[1],0);w(o.slice(2))}else{var s=o.slice(-1)[0];var l=Z(e);var f=l-n-i;var c=Z(s);var u=0;if(f===-1){f=0}if(f<=c){x(o.slice(0,-1));if(c===f){u=0}else{u=c-f}y(s,u)}else{var p;var m;u=n;for(t=0;t<o.length;++t){var d=$.terminal.length(o[t]);if(u>d){u-=d}else{break}}m=o[t];p=t;if(u===Z(m)){u=0;m=o[++p];if(m===undefined){var h=$.terminal.defaults.strings.redrawError;throw new Error(h)}}y(m,u);x(o.slice(0,p));w(o.slice(p+1))}}}else if(e===""){g.html("");A.html("&nbsp;");v.html("")}else{y(e,n)}}}();var te=function(){function e(e){var n=$.terminal.split_equal($.terminal.encode(e),T);var t={char_width:k.char_width};var r=$.terminal.format(n[n.length-1],t);var i=n.slice(0,-1).map(function(e){return'<span class="line">'+$.terminal.format(e,t)+"</span>"}).concat([r]).join("\n");if(u.html()!==i){u.html(i);E=strlen($("<span>"+r+"</span>").text())}}return function(){switch(typeof p){case"string":e(p);break;case"function":p(e);break}}}();function re(){if(_++>0){return}if(C.isenabled()){C.oneTime(100,function(){C.insert(o.val());o.val(S);q()})}}function ie(){if(is_function(k.onCommandChange)){k.onCommandChange(S)}}$.extend(C,{option:function(e,n){if(typeof n==="undefined"){return k[e]}else{k[e]=n}return C},name:function(e){if(e!==undefined){d=e;var n=h&&h.enabled()||!h;h=new History(d,k.historySize,k.history==="memory");if(!n){h.disable()}return C}else{return d}},purge:function(){h.clear();return C},history:function(){return h},delete:function(e,n){var t;if(e===0){return""}else if(e<0){if(c>0){t=S.slice(0,c).slice(e);S=S.slice(0,c+e)+S.slice(c,S.length);if(!n){C.position(c+e)}ie()}}else if(S!==""&&c<S.length){t=S.slice(c).slice(0,e);S=S.slice(0,c)+S.slice(c+e,S.length);ie()}ne();q();return t},set:function(e,n,t){if(e!==undefined){S=e;if(!n){C.position(S.length)}ne();q();if(!t){ie()}}return C},keymap:function(e,n){function t(n,t){return function(e){return t(e,j[n])}}if(typeof e==="undefined"){return x}else if(typeof e==="string"){if(typeof n==="undefined"){if(x[e]){return x[e]}else if(j[e]){return j[e]}}else{x[e]=t(e,n)}}else{x=$.extend({},x?x:j,$.omap(e||{},t));return C}},insert:function(e,n){if(c===S.length){S+=e}else if(c===0){S=e+S}else{S=S.slice(0,c)+e+S.slice(c)}if(!n){C.position(e.length,true,true)}else{q()}ne();ie();q();return C},get:function(){return S},commands:function(e){if(e){k.commands=e;return C}else{return e}},destroy:function(){ye.unbind("keypress.cmd",be);ye.unbind("keydown.cmd",_e);ye.unbind("input.cmd",xe);C.stopTime("blink",B);C.find(".cursor").next().remove().end().prev().remove().end().remove();C.find(".prompt, .clipboard").remove();C.removeClass("cmd").removeData("cmd").off(".cmd");return C},prompt:function(e){if(e===undefined){return p}else{if(typeof e==="string"||typeof e==="function"){p=e}else{throw new Error("prompt must be a function or string")}te();ne();return C}},kill_text:function(){return i},position:function(e,n,t){if(typeof e==="number"){var r=c;if(n){c+=e}else if(e<0){c=0}else if(e>S.length){c=S.length}else{c=e}if(r!==c&&!t){if(is_function(k.onPositionChange)){k.onPositionChange(c,R)}ne();q(true)}return C}else{return c}},refresh:function(){te();ne();return C},display_position:function(e,n){if(e===undefined){return R}else{var t=G(S);var r=$.terminal.length(t);var i=$.terminal.length(S);if(r===i){return C.position(e)}else{var o;if(n){o=R+e}else if(e>r){o=r}else{o=e}if(o===r){C.position($.terminal.length(S))}else{for(var a=0;a<i;++a){var s=$.extend({},k,{position:a});var l=$.terminal.apply_formatters(S,s)[1];if(o===l){R=l;C.position(a)}}}}return C}},visible:function(){var e=C.visible;return function(){e.apply(C,[]);ne();te();return C}}(),show:function(){var e=C.show;return function(){e.apply(C,[]);ne();te();return C}}(),resize:function(e){if(e){T=e}else{Q()}ne();te();return C},enable:function(){if(!m){m=true;C.addClass("enabled");try{o.caret(c)}catch(e){}g(true);te();q()}U();return C},isenabled:function(){return m},disable:function(e){m=false;C.removeClass("enabled");g(false);if(!e){U()}return C},mask:function(e){if(typeof e==="undefined"){return k.mask}else{k.mask=e;ne();return C}}});C.name(k.name||k.prompt||"");if(typeof k.prompt==="string"){p=k.prompt}else{p="> "}te();if(k.enabled===true){C.enable()}if(!k.history){h.disable()}var oe=true;var ae=false;var se=false;var le=false;var fe=false;var ce=false;var ue=true;var pe=false;var me=false;var de;var he="";function ge(e){return e.key.toUpperCase()==="BACKSPACE"||e.which===8}function ve(e){return e.key&&e.key.length===1&&!e.ctrlKey}function _e(e){debug('keydown "'+e.key+'" '+e.fake+" "+e.which);me=(e.key||"").toLowerCase()==="process"||e.which===0;var n;se=fe&&le&&!ge(e);try{if(!e.fake){le=ve(e);ce=String(e.key).toLowerCase()==="unidentified";pe=ge(e)}}catch(e){}if(e.key==="Unidentified"){ue=true;return}if(!e.fake){fe=true;ue=false}o.off("input",re);var t=w(e);if(is_function(k.keydown)){n=k.keydown(e);if(n!==undefined){if(!n){de=true}return n}}if(m){v();de=["CTRL+V","META+V"].indexOf(t)!==-1;if(e.which!==38&&!(e.which===80&&e.ctrlKey)){oe=true}if(s&&(e.which===35||e.which===36||e.which===37||e.which===38||e.which===39||e.which===40||e.which===13||e.which===27)){K();te();if(e.which===27){C.set("")}ne();_e.call(this,e)}else if(is_function(x[t])){n=x[t](e);if(n===true){return}if(n!==undefined){return n}}else if(e.altKey){return}else{ae=false;return}}}var ye=$(document.documentElement||window);C.keymap(k.keymap||{});function be(e){debug('keypress "'+e.key+'" '+e.fake);var n;if(!e.fake){fe=false}if((e.ctrlKey||e.metaKey)&&!e.altKey){return}if(ae){return}if(is_function(k.keypress)){n=k.keypress(e);if(n!==undefined){if(!n){de=true}return n}}if(m){if(e.fake){return}var t;if(is_key_native||e.fake){t=e.key;var r=t.toUpperCase();if(b[r]){t=b[r]}}if(!t||ce){t=String.fromCharCode(e.which)}if($.inArray(e.which,[13,0,8])>-1){if(e.keyCode===123){return}return false}else if(t&&(!e.ctrlKey||e.ctrlKey&&e.ctrlKey)&&(!(e.altKey&&e.which===100)||e.altKey)&&!se){if(s){l+=t;J();W()}else if(t.length===1){C.insert(t)}}}}function we(e,n,t){var r=$.Event(e);r.which=t;r.key=n;r.fake=true;ye.trigger(r)}function xe(){debug("input "+ue+" || "+me+" (("+fe+" || "+se+") && !"+de+" && ("+le+" || "+ce+") && !"+pe+")");var e=o.val().replace(/^ /,"");if((ue||me||(fe||se)&&!de&&(le||ce)&&!pe)&&e!==S){var n=c;if(ue){var t=he;pe=t.substring(0,t.length-1).length===e.length}if(s){l=e;J();W()}else{var r=e.substring(c);if(r.length===1||pe){if(ue){var i;if(pe){i=8}else{i=r.toUpperCase().charCodeAt(0)}we("keydown",pe?"Backspace":r,i)}if(fe&&!pe){we("keypress",r,r.charCodeAt(0))}}if(pe){he=S;return}if(de){de=false;return}C.set(e)}if(pe){C.position(n-1)}else{C.position(n+Math.abs(e.length-he.length))}}he=S;de=false;ue=true}ye.bind("keypress.cmd",be).bind("keydown.cmd",_e).bind("input.cmd",xe);(function(){var i=false;var o=0;C.on("mousedown.cmd",function(){i=true}).on("mouseup.cmd",function(n){var e;if(n.originalEvent===undefined){e=n.button}else{e=n.originalEvent.button}if(e===0&&get_selected_text()===""){var t="click_"+a;if(++o===1){var r=i;if(m){C.oneTime(k.clickTimeout,t,function(){var e=$(n.target);if(!e.is(".prompt")&&r){if(m){if(e.is(".cmd")){C.position(S.length)}else{C.display_position(y(n))}}}o=0})}else{o=0}}else{C.stopTime(t);o=0}}i=false})})();C.data("cmd",C);if(!("KeyboardEvent"in window&&"key"in window.KeyboardEvent.prototype)){setTimeout(function(){throw new Error("key event property not supported try https://github."+"com/inexorabletash/polyfill/blob/master/keyboard.js")},0)}return C};var mobile_re=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i;var tablet_re=/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i;var format_split_re=/(\[\[[!gbiuso]*;[^;]*;[^\]]*\](?:[^\]]*[^\\](\\\\)*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]?)/i;var format_parts_re=/\[\[([!gbiuso]*);([^;]*);([^;\]]*);?([^;\]]*);?([^\]]*)\]([^\]]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]?/gi;var format_re=/\[\[([!gbiuso]*;[^;\]]*;[^;\]]*(?:;|[^\]()]*);?[^\]]*)\]([^\]]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]?/gi;var format_exist_re=/\[\[([!gbiuso]*;[^;\]]*;[^;\]]*(?:;|[^\]()]*);?[^\]]*)\]([^\]]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]/gi;var format_full_re=/^\[\[([!gbiuso]*;[^;\]]*;[^;\]]*(?:;|[^\]()]*);?[^\]]*)\]([^\]]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]$/gi;var color_hex_re=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i;var url_re=/(\bhttps?:\/\/(?:(?:(?!&[^;]+;)|(?=&amp;))[^\s"'<>\][)])+)/gi;var url_nf_re=/\b(?![^\s[\]]*])(https?:\/\/(?:(?:(?!&[^;]+;)|(?=&amp;))[^\s"'<>\][)])+)/gi;var email_re=/((([^<>('")[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,})))/g;var command_re=/((?:"[^"\\]*(?:\\[\S\s][^"\\]*)*"|'[^'\\]*(?:\\[\S\s][^'\\]*)*'|\/[^\/\\]*(?:\\[\S\s][^\/\\]*)*\/[gimsuy]*(?=\s|$)|(?:\\\s|\S))+)(?=\s|$)/gi;var extended_command_re=/^\s*((terminal|cmd)::([a-z_]+)\(([\s\S]*)\))\s*$/;var format_begin_re=/(\[\[[!gbiuso]*;[^;]*;[^\]]*\])/i;var format_start_re=/^(\[\[[!gbiuso]*;[^;]*;[^\]]*\])/i;var format_end_re=/\[\[[!gbiuso]*;[^;]*;[^\]]*\]?$/i;var format_exec_re=/(\[\[(?:[^\][]|\\\])+\]\])/;var float_re=/^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/;var re_re=/^\/((?:\\\/|[^/]|\[[^\]]*\/[^\]]*\])+)\/([gimsuy]*)$/;var string_re=/("(?:[^"\\]|\\(?:\\\\)*"|\\\\)*"|'(?:[^'\\]|\\(?:\\\\)*'|\\\\)*')/;var unclosed_strings_re=/^(?=((?:[^"']+|"[^"\\]*(?:\\[^][^"\\]*)*"|'[^'\\]*(?:\\[^][^'\\]*)*')*))\1./;var animation_supported=function(){var e=false,n="Webkit Moz O ms Khtml".split(" "),t=document.createElement("div");if(t.style.animationName){e=true}if(e===false){for(var r=0;r<n.length;r++){var i=n[r]+"AnimationName";if(t.style[i]!==undefined){e=true;break}}}t=null;return e}();var is_ch_unit_supported=function(){var e=window.navigator.userAgent;if(e.match(/MSIE|Trident/)&&!e.match(/IEMobile/)){return false}var n=document.createElement("div");n.style.width="1ch";return n.style.width==="1ch"}();var is_css_variables_supported=window.CSS&&window.CSS.supports&&window.CSS.supports("--fake-var",0);var is_android=navigator.userAgent.toLowerCase().indexOf("android")!==-1;var is_safari=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);var is_key_native=function e(){if(!("KeyboardEvent"in window&&"key"in window.KeyboardEvent.prototype)){return false}var n=window.KeyboardEvent.prototype;var t=Object.getOwnPropertyDescriptor(n,"key").get;return t.toString().match(/\[native code\]/)}();var is_mobile=function(e){var n=false;if(mobile_re.test(e)||tablet_re.test(e.substr(0,4))){n=true}return n}(navigator.userAgent||navigator.vendor||window.opera);var strlen=function(){if(typeof wcwidth==="undefined"){return function(e){return e.length}}else{return wcwidth}}();function bare_text(e){if(!e.match(/&/)){return e}return $("<span>"+safe(e)+"</span>").text()}function text(e){return bare_text($.terminal.strip(e))}function safe(e){if(!e.match(/[<>&]/)){return e}return e.replace(/&(?![^;]+;)/g,"&amp;").replace(/>/g,"&gt;").replace(/</g,"&lt;")}function crlf(e){return e.replace(/\r/g,"")}function char_width_prop(e,n){if(is_ch_unit_supported){return"width: "+e+"ch"}else if(!is_css_variables_supported){if(n.char_width){return"width: "+n.char_width*e+"px"}}else{return"--length: "+e}return""}function extra_css(e,n){if(typeof wcwidth!=="undefined"){var t=bare_text(e);var r=strlen(t);if(r!==t.length){return char_width_prop(r,n)}}return""}function wide_characters(e,t){if(typeof wcwidth!=="undefined"){var n=bare_text(e);if(n.length===1){return e}var r=n.split("").map(function(e){return{len:strlen(e),chr:e}}).reduce(function(e,n){var t=e[e.length-1];if(t){if(t.len!==n.len){return e.concat([{sum:n.len,len:n.len,str:n.chr}])}else{e.pop();return e.concat([{sum:t.sum+n.len,len:t.len,str:t.str+n.chr}])}}return[{sum:n.len,str:n.chr,len:n.len}]},[]);return r.map(function(e){if(e.len===1){return e.str}var n=char_width_prop(e.sum,t);if(n.length){return'<span style="'+n+'">'+e.str+"</span>"}else{return"<span>"+e.str+"</span>"}}).join("")}return e}var get_selected_text=function(){if(window.getSelection||document.getSelection){return function(){var e=(window.getSelection||document.getSelection)();if(e.text){return e.text}else{return e.toString()}}}else if(document.selection&&document.selection.type!=="Control"){return function(){return document.selection.createRange().text}}return function(){return""}}();function text_to_clipboard(e,n){var t=$("<div>"+n.replace(/\n/,"<br/>")+"<div>");t.appendTo("body");select_all(t[0]);try{document.execCommand("copy")}catch(e){}t.remove()}var get_textarea_selection=function(){var e=document.createElement("textarea");var n="selectionStart"in e;e=null;if(n){return function(e){var n=e.selectionEnd-e.selectionStart;return e.value.substr(e.selectionStart,n)}}else if(document.selection){return function(){var e=document.selection.createRange();return e.text()}}else{return function(){return""}}}();function clear_textarea_selection(e){e.selectionStart=e.selectionEnd=0}function common_string(e,n,t){if(!n.length){return""}var r=string_case(e);var i=[];for(var o=e.length;o<n[0].length;++o){var a=false;var s=n[0].charAt(o),l=s.toLowerCase();for(var f=1;f<n.length;++f){a=true;var c=n[f].charAt(o),u=c.toLowerCase();if(s!==c){if(t||r==="mixed"){a=false;break}else if(l===u){if(r==="lower"){s=s.toLowerCase()}else if(r==="upper"){s=s.toUpperCase()}else{a=false;break}}else{a=false;break}}}if(a){i.push(s)}else{break}}return e+i.join("")}function trigger_terminal_change(n){terminals.forEach(function(e){e.settings().onTerminalChange.call(e,n)})}var select=function(){if(window.getSelection){var e=window.getSelection();if(e.setBaseAndExtent){return function(e,n){var t=window.getSelection();t.setBaseAndExtent(e,0,n,1)}}else{return function(e,n){var t=window.getSelection();var r=document.createRange();r.setStart(e,0);r.setEnd(n,n.childNodes.length);t.removeAllRanges();t.addRange(r)}}}else{return $.noop}}();function select_all(e){if(window.getSelection){var n=window.getSelection();if(n.setBaseAndExtent){n.setBaseAndExtent(e,0,e,1)}else if(document.createRange){var t=document.createRange();t.selectNodeContents(e);n.removeAllRanges();n.addRange(t)}}}function process_command(e,n){var t=e.match(command_re)||[];if(t.length){var r=t.shift();var i=$.map(t,function(e){if(e.match(/^["']/)){e=e.replace(/\n/g,"\\u0000\\u0000\\u0000\\u0000");e=n(e);return e.replace(/\x00\x00\x00\x00/g,"\n")}return n(e)});var o=$.map(t,function(e){var n=e.match(/^(['"]).*\1$/);return n&&n[1]||""});var a=e.substring(r.length).trim();return{command:e,name:r,args:i,args_quotes:o,rest:a}}else{return{command:e,name:"",args:[],args_quotes:o,rest:""}}}$.terminal={version:"1.19.1",date:"Mon, 23 Jul 2018 16:39:27 +0000",color_names:["transparent","currentcolor","black","silver","gray","white","maroon","red","purple","fuchsia","green","lime","olive","yellow","navy","blue","teal","aqua","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],Cycle:Cycle,History:History,Stack:Stack,valid_color:function e(n){if(n.match(color_hex_re)){return true}else{return $.inArray(n.toLowerCase(),$.terminal.color_names)!==-1}},unclosed_strings:function e(n){return!!n.match(unclosed_strings_re)},escape_regex:function e(n){if(typeof n==="string"){var t=/([-\\^$[\]()+{}?*.|])/g;return n.replace(t,"\\$1")}},have_formatting:function e(n){return typeof n==="string"&&!!n.match(format_exist_re)},is_formatting:function e(n){return typeof n==="string"&&!!n.match(format_full_re)},format_split:function e(n){return n.split(format_split_re).filter(Boolean)},tracking_replace:function e(n,t,r,i){function o(e,n,t){return $.terminal.substring(e,n,t)}function a(e){return $.terminal.length(e)}var s="";var l;var f=0;var c;var u=i;var p;var m=t.flags.indexOf("g")!==-1;t.lastIndex=0;while(l=t.exec(n)){if(m){var d=a(o(n,0,t.lastIndex));p=d-a(l[0])}else{p=l.index;d=p+a(l[0])}if(f<p){s+=o(n,f,p)}f=d;if(typeof r==="function"){c=r.apply(null,l)}else{c=r.replace(/\$(\$|\d)/g,function(e,n){if(n==="$"){return"$"}return l[n]})}s+=c;if(p<i){if(d<i){u=Math.max(0,u+a(c)-a(l[0]))}else{u+=a(c)-(i-p)}}if(!m){break}}if(f<a(n)){s+=o(n,f)}return[s,u]},iterate_formatting:function e(n,t){function r(e){return n.substring(e-6,e)==="&nbsp;"||n.substring(e-1,e).match(/\s/)}function i(e){return n.substring(e).match(/^(&[^;]+;)/)}function o(e){return n[e]==="["&&n[e+1]==="["}function a(e){return n[e]==="]"&&n[e-1]==="\\"}function s(e){return v&&(n[e]!=="]"||!l)&&!_}var l=$.terminal.have_formatting(n);var f="";var c=false;var u=0;var p;var m=-1;var d;var h=0;for(var g=0;g<n.length;g++){p=n.substring(g).match(format_start_re);if(p){f=p[1];c=false}else if(f){if(n[g]==="]"){if(c){f="";c=false}else{c=true}}}else{c=true}var v=f&&c||!f;var _=o(g);if(r(g)&&(v||_)){if(m===-1&&d!==g||m!==-1){m=g}}var y=n[g].match(/[[\]]/);if(v){if(n[g]==="&"){p=i(g);if(p){g+=p[1].length-2;continue}++u;++h}else if(a(g)){--u;--h}else if(!y||!l){++u;++h}}if(s(g)){if(strlen(n[g])===2){h++}var b={count:u,index:g,formatting:f,length:h,text:c,space:m};var w=t(b);if(w===false){break}else if(w){if(w.count!==undefined){u=w.count}if(w.length!==undefined){h=w.length}if(w.space!==undefined){d=m;m=w.space}if(w.index!==undefined){g=w.index}}}else if(g===n.length-1){t({count:u+1,index:g,formatting:f,length:0,text:c,space:m})}}},substring:function e(t,r,i){if(text(t).substring(r,i)===""){return""}var o=0;var a;var s="";var l="";var f;var c=/(&[^;]+);$/;$.terminal.iterate_formatting(t,function(e){var n;if(r&&e.count===r+1){o=e.index;n=t.substring(0,o+1).match(c);if(n){o-=n[1].length}if(e.formatting){s=e.formatting}}if(i&&e.count===i){l=e.formatting;f=e.index}if(e.count===i+1){a=e.index;n=t.substring(0,a+1).match(c);if(n){a-=n[1].length}if(e.formatting){a=f+1}}});if(r&&!o){return""}if(a===undefined){a=t.length}t=s+t.substring(o,a);if(l){t=t.replace(/(\[\[^\]]+)?\]$/,"");t+="]"}return t},normalize:function e(n){return n.replace(format_re,function(e,n,t){if(t===""){return""}var r=n.match(/;/g).length;if(r>=4){var i=n.split(/;/);var o=i.slice(0,4).join(";");var a=i.slice(4).join(";");return"[["+o+";"+(a||t)+"]"+t+"]"}else if(r===2){r=";;"}else if(r===3){r=";"}else{r=""}var s=t.replace(/\\\]/g,"&#93;").replace(/\n/g,"\\n").replace(/&nbsp;/g," ");return"[["+n+r+s+"]"+t+"]"})},split_equal:function e(n,c,u){var p="";var m=[];var t=$.terminal.normalize(n).split(/\n/g);for(var r=0,i=t.length;r<i;++r){if(t[r]===""){m.push("");continue}var d=t[r];var h=0;var g;var v=d.length;$.terminal.iterate_formatting(d,function(e){var n=e.index===v-1;if(e.length>=c||n||e.length===c-1&&strlen(d[e.index+1])===2){var t=false;if(u&&e.space!==-1){var r=$.terminal.strip(d.substring(e.space));r=$("<span>"+r+"</span>").text();var i=r.length;var o=e.index+c+1;r=r.substring(0,o);if(r.match(/\s|&nbsp;/)||o>i){t=true}}if(u&&e.space!==-1&&e.index!==v-1&&t){g=d.substring(h,e.space);var a=e.space-1}else{g=d.substring(h,e.index+1)}if(u){g=g.replace(/^(&nbsp;|\s)+|(&nbsp;|\s)+$/g,"")}h=(a||e.index)+1;if(p){var s=g.match(/^[^\]]*\]/);g=p+g;if(s){p=""}}var l=g.match(format_re);if(l){var f=l[l.length-1];if(f[f.length-1]!=="]"){p=f.match(format_begin_re)[1];g+="]"}else if(g.match(format_end_re)){g=g.replace(format_end_re,"");p=f.match(format_begin_re)[1]}}m.push(g);return{index:a,length:0,space:-1}}})}return m},amp:function e(n){return n.replace(/&(?!#[0-9]+;|[a-zA-Z]+;)/g,"&amp;")},encode:function e(n){return $.terminal.amp(n).replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/ /g,"&nbsp;").replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;")},nested_formatting:function e(n){if(!$.terminal.have_formatting(n)){return n}var t=[];var r=/((?:\[\[(?:[^\][]|\\\])+\])?(?:[^\][]|\\\])*\]?)/;var i=/(\[\[(?:[^\][]|\\\])+\])[\s\S]*/;return n.split(r).filter(Boolean).map(function(e){if(e.match(/^\[\[/)){if(!$.terminal.is_formatting(e)){e+="]";t.push(e.replace(i,"$1"))}}else{var n=false;if(e.match(/\]/)){n=true}if(t.length){e=t[t.length-1]+e}if(n){t.pop()}else if(t.length){e+="]"}}return e}).join("")},escape_formatting:function e(n){return $.terminal.escape_brackets(n)},apply_formatters:function(e,i){function o(e,n,t,r){if(!e.__no_warn__&&$.terminal.length(t)!==$.terminal.length(r)){warn("Your formatter["+n+"] change length of the string, "+"you should use [regex, replacement] formatter or function "+" that return [replacement, position] instead")}}var n=$.terminal.defaults.formatters;i=i||{};var s=0;function l(e,n){var t=$.extend({},i,{position:n[1]});var r=e(n[0],t);if(typeof r==="string"){o(e,s-1,r,n[0]);if(typeof r==="string"){return[r,t.position]}return n}else if(r instanceof Array&&r.length===2){return r}else{return n}}var t;if(typeof i.position==="number"){t=[e,i.position]}else{t=[e,0]}try{var r=n.reduce(function(i,o){s++;if(typeof o==="function"&&o.__meta__){return l(o,i)}else{var a=0;var e=$.terminal.format_split(i[0]);var n=e.map(function(e){var n;if(i[1]-a>=0){n=i[1]-a}else{n=-1}a+=$.terminal.length(e);if($.terminal.is_formatting(e)){return[e,-1]}else{if(o instanceof Array){var t=o[2]||{};var r=[e,n===-1?0:n];if(t.loop){while(r[0].match(o[0])){r=$.terminal.tracking_replace(r[0],o[0],o[1],r[1])}}else{r=$.terminal.tracking_replace(r[0],o[0],o[1],r[1])}if(n===-1){return[r,-1]}return r}else if(typeof o==="function"){return l(o,[e,n])}return[e,-1]}});var t=n.filter(function(e){return e[1]!==-1})[0];var r=n.map(function(e){return e[0]}).join("");return[r,typeof t==="undefined"?0:t[1]]}},t);if(typeof i.position==="number"){return r}else{return r[0]}}catch(e){var a="Error in formatter ["+(s-1)+"]";n.splice(s-1);throw new $.terminal.Exception("formatting",a,e.stack)}},format:function e(n,p){function m(e){if(e.match(/\\]/)){e=e.replace(/(\\+)]/g,function(e,n){if(n.length%2===1){return"]"}else{return n.replace(/../,"\\")}})}return safe(e)}var d=$.extend({},{linksNoReferrer:false},p||{});if(typeof n==="string"){var t=$.terminal.format_split(n);n=$.map(t,function(e){if(e===""){return e}else if($.terminal.is_formatting(e)){e=e.replace(/\[\[[^\]]+\]/,function(e){return e.replace(/&nbsp;/g," ")});return e.replace(format_parts_re,function(e,n,t,r,i,o,a){if(a===""){return""}a=m(a);var s="";if(n.indexOf("b")!==-1){s+="font-weight:bold;"}var l=[];if(n.indexOf("u")!==-1){l.push("underline")}if(n.indexOf("s")!==-1){l.push("line-through")}if(n.indexOf("o")!==-1){l.push("overline")}if(l.length){s+="text-decoration:"+l.join(" ")+";"}if(n.indexOf("i")!==-1){s+="font-style:italic;"}if($.terminal.valid_color(t)){s+="color:"+t+";";if(n.indexOf("g")!==-1){s+="text-shadow:0 0 5px "+t+";"}}if($.terminal.valid_color(r)){s+="background-color:"+r}var f;if(o===""){f=a}else{f=o.replace(/&#93;/g,"]").replace(/>/g,"&gt;").replace(/</g,"&lt;")}var c=extra_css(a,p);if(c){a=wide_characters(a,p);s+=c}var u;if(n.indexOf("!")!==-1){if(f.match(email_re)){u='<a href="mailto:'+f+'"'}else{u='<a target="_blank" href="'+f+'"';if(d.linksNoReferrer){u+=' rel="noreferrer noopener"'}else{u+=' rel="noopener"'}}u+=' tabindex="1000"'}else{u="<span"}if(s!==""){u+=' style="'+s+'"'}if(i!==""){u+=' class="'+i+'"'}if(n.indexOf("!")!==-1){u+=">"+a+"</a>"}else{u+=' data-text="'+f.replace(/"/g,"&quote;")+'">'+a+"</span>"}return u})}else{e=m(e);var n=extra_css(e,p);if(n.length){e=wide_characters(e,p);return'<span style="'+n+'">'+e+"</span>"}else{return"<span>"+e+"</span>"}}}).join("");return n.replace(/<span><br\s*\/?><\/span>/gi,"<br/>")}else{return""}},escape_brackets:function e(n){return n.replace(/\[/g,"&#91;").replace(/\]/g,"&#93;")},unescape_brackets:function e(n){return n.replace(/&#91;/g,"[").replace(/&#93;/g,"]")},length:function(e){return text(e).length},columns:function(e,n,t){var r=e.map(function(e){return $.terminal.strip(e)});var i=r.map(function(e){return strlen(e)});if(typeof t==="undefined"){t=4}var o=Math.max.apply(null,i)+t;var a=Math.floor(n/o)-1;if(a<1){return e.join("\n")}var s=[];for(var l=0,f=e.length;l<f;l+=a){var c=e.slice(l,l+a);var u=c.pop();s.push(c.reduce(function(e,n){var t=$.terminal.strip(n);var r=new Array(o-t.length+1).join(" ");e.push(n+r);return e},[]).join("")+u)}return s.join("\n")},strip:function e(n){n=n.replace(format_parts_re,"$6");return n.replace(/\\([[\]])/g,function(e,n){return n})},active:function e(){return terminals.front()},last_id:function e(){var n=terminals.length();return n-1},parse_argument:function e(n,t){function r(e){return e.split(string_re).map(function(e){if(e.match(/^['"]/)){if(e==='""'||e==="''"){return""}var n=e[0];var t=new RegExp("(^|(?:\\\\(?:\\\\)*)?)"+n,"g");e=e.replace(t,"$1")}e='"'+e+'"';return JSON.parse(e)}).join("")}if(t===false){if(n[0]==="'"&&n[n.length-1]==="'"){return n.replace(/^'|'$/g,"")}else if(n[0]==='"'&&n[n.length-1]==='"'){return n.replace(/^"|"$/g,"").replace(/\\([" ])/g,"$1")}else if(n.match(/\/.*\/[gimy]*$/)){return n}else if(n.match(/['"]]/)){return r(n)}else{return n.replace(/\\ /g," ")}}var i=n.match(re_re);if(i){return new RegExp(i[1],i[2])}else if(n.match(/['"]/)){return r(n)}else if(n.match(/^-?[0-9]+$/)){return parseInt(n,10)}else if(n.match(float_re)){return parseFloat(n)}else{return n.replace(/\\(['"() ])/g,"$1")}},parse_arguments:function e(n){return $.map(n.match(command_re)||[],$.terminal.parse_argument)},split_arguments:function e(n){return $.map(n.match(command_re)||[],function(e){return $.terminal.parse_argument(e,false)})},parse_command:function e(n){return process_command(n,$.terminal.parse_argument)},split_command:function e(n){return process_command(n,function(e){return $.terminal.parse_argument(e,false)})},parse_options:function e(n,t){var o=$.extend({},{boolean:[]},t);if(typeof n==="string"){return e($.terminal.split_arguments(n),t)}var a={_:[]};function s(e){this.value=e}var r=n.reduce(function(e,n){if(typeof n!=="string"){n=String(n)}if(n.match(/^-/)&&e instanceof s){a[e.value]=true}if(n.match(/^--/)){var t=n.replace(/^--/,"");if(o.boolean.indexOf(t)===-1){return new s(t)}else{a[t]=true}}else if(n.match(/^-/)){var r=n.replace(/^-/,"").split("");if(o.boolean.indexOf(r.slice(-1)[0])===-1){var i=r.pop()}r.forEach(function(e){a[e]=true});if(i){return new s(i)}}else if(e instanceof s){a[e.value]=n}else if(n){a._.push(n)}return null},null);if(r instanceof s){a[r.value]=true}return a},extended_command:function extended_command(term,string){try{change_hash=false;var m=string.match(extended_command_re);if(m){string=m[1];var obj=m[2]==="terminal"?term:term.cmd();var fn=m[3];try{var args=eval("["+m[4]+"]");if(!obj[fn]){term.error("Unknow function "+fn)}else{obj[fn].apply(term,args)}}catch(e){term.error("Invalid invocation in "+$.terminal.escape_brackets(string))}}else{term.exec(string,true).done(function(){change_hash=true})}}catch(e){}},formatter:new function(){try{this[Symbol.split]=function(e){return $.terminal.format_split(e)};this[Symbol.match]=function(e){return e.match(format_re)};this[Symbol.replace]=function(e,n){return e.replace(format_parts_re,n)};this[Symbol.search]=function(e){return e.search(format_re)}}catch(e){}}};$.terminal.Exception=function e(n,t,r){if(arguments.length===1){this.message=arguments[0];this.type="TERMINAL"}else{this.type=n;this.message=t;if(r){this.stack=r}}};$.terminal.Exception.prototype=new Error;$.fn.visible=function(){return this.css("visibility","visible")};$.fn.hidden=function(){return this.css("visibility","hidden")};var warnings=[];function warn(e){e="[jQuery Terminal] "+e;if(warnings.indexOf(e)===-1){warnings.push(e);if(console){if(console.warn){console.warn(e)}else if(console.log){console.log(e)}}else{setTimeout(function(){throw new Error("WARN: "+e)},0)}}}var ids={};$.jrpc=function(e,n,t,r,i){var a=new $.Deferred;var s;if($.isPlainObject(e)){s=e}else{s={url:e,method:n,params:t,success:r,error:i}}function l(e){return $.isNumeric(e.id)&&(typeof e.result!=="undefined"||typeof e.error!=="undefined")}ids[s.url]=ids[s.url]||0;var o={jsonrpc:"2.0",method:s.method,params:s.params,id:++ids[s.url]};$.ajax({url:s.url,beforeSend:function e(n,t){if(is_function(s.request)){s.request(n,o)}t.data=JSON.stringify(o)},success:function e(n,t,r){var i=r.getResponseHeader("Content-Type");if(!i.match(/(application|text)\/json/)){warn("Response Content-Type is neither application/json"+" nor text/json")}var o;try{o=JSON.parse(n)}catch(e){if(s.error){s.error(r,"Invalid JSON",e)}else{throw new $.terminal.Exception("JSON","Invalid JSON",e.stack)}a.reject({message:"Invalid JSON",response:n});return}if(is_function(s.response)){s.response(r,o)}if(l(o)||s.method==="system.describe"){if(s.success){s.success(o,t,r)}a.resolve(o)}else{if(s.error){s.error(r,"Invalid JSON-RPC")}a.reject({message:"Invalid JSON-RPC",response:n})}},error:s.error,contentType:"application/json",dataType:"text",async:true,cache:false,type:"POST"});return a.promise()};function get_char_size(e){var n=$('<div class="terminal temp"><div class="terminal-output">'+'<div><div class="line" style="float: left"><span>&nbsp;</span>'+"</div></div></div></div>").appendTo("body");n.addClass(e.attr("class"));if(e){var t=e.attr("style");if(t){t=t.split(/\s*;\s*/).filter(function(e){return!e.match(/display\s*:\s*none/i)}).join(";");n.attr("style",t)}}var r=n.find(".line")[0].getBoundingClientRect();var i={width:r.width,height:r.height};n.remove();return i}function get_num_chars(e,n){var t=e.find(".terminal-fill").width();var r=Math.floor(t/n.width);return r||1e3}function get_num_rows(e,n){return Math.floor(e.find(".terminal-fill").height()/n.height)}function all(e,n){var t=e.filter(function(e){return e[n]()===e});return t.length===e.length}function string_case(e){var n=e.split("");if(all(n,"toLowerCase")){return"lower"}else if(all(n,"toUpperCase")){return"upper"}else{return"mixed"}}function same_case(e){return string_case(e)!=="mixed"}function is_function(e){return get_type(e)==="function"}function get_type(e){return typeof e==="function"?"function":$.type(e)}var version_set=!$.terminal.version.match(/^\{\{/);var copyright="Copyright (c) 2011-2018 Jakub Jankiewicz <http://jcubic"+".pl/me>";var version_string=version_set?" v. "+$.terminal.version:" ";var reg=new RegExp(" {"+version_string.length+"}$");var name_ver="jQuery Terminal Emulator"+(version_set?version_string:"");var signatures=[["jQuery Terminal","(c) 2011-2018 jcubic"],[name_ver,copyright.replace(/^Copyright | *<.*>/g,"")],[name_ver,copyright.replace(/^Copyright /,"")],["      _______                 ________                        __","     / / _  /_ ____________ _/__  ___/______________  _____  / /"," __ / / // / // / _  / _/ // / / / _  / _/     / /  \\/ / _ \\/ /","/  / / // / // / ___/ // // / / / ___/ // / / / / /\\  / // / /__","\\___/____ \\\\__/____/_/ \\__ / /_/____/_//_/_/_/ /_/  \\/\\__\\_\\___/","         \\/          /____/                                   ".replace(reg," ")+version_string,copyright],["      __ _____                     ________                            "+"  __","     / // _  /__ __ _____ ___ __ _/__  ___/__ ___ ______ __ __  __ ___ "+" / /"," __ / // // // // // _  // _// // / / // _  // _//     // //  \\/ // _ "+"\\/ /","/  / // // // // // ___// / / // / / // ___// / / / / // // /\\  // // "+"/ /__","\\___//____ \\\\___//____//_/ _\\_  / /_//____//_/ /_/ /_//_//_/ /_/ \\"+"__\\_\\___/",("          \\/              /____/                                     "+"     ").replace(reg,"")+version_string,copyright]];$.terminal.nested_formatting.__meta__=true;$.terminal.nested_formatting.__no_warn__=true;$.terminal.defaults={prompt:"> ",history:true,exit:true,clear:true,enabled:true,maskChar:"*",wrap:true,checkArity:true,raw:false,exceptionHandler:null,pauseEvents:true,softPause:false,memory:false,cancelableAjax:true,processArguments:true,linksNoReferrer:false,processRPCResponse:null,completionEscape:true,convertLinks:true,extra:{},tabs:4,historySize:60,scrollObject:null,historyState:false,importHistory:false,historyFilter:null,echoCommand:true,scrollOnEcho:true,login:null,outputLimit:-1,formatters:[$.terminal.nested_formatting],onAjaxError:null,pasteImage:true,scrollBottomOffset:20,wordAutocomplete:true,caseSensitiveAutocomplete:true,caseSensitiveSearch:true,clickTimeout:200,request:$.noop,response:$.noop,describe:"procs",onRPCError:null,doubleTab:null,completion:false,onInit:$.noop,onClear:$.noop,onBlur:$.noop,onFocus:$.noop,onTerminalChange:$.noop,onExit:$.noop,onPush:$.noop,onPop:$.noop,keypress:$.noop,keydown:$.noop,onAfterRedraw:$.noop,onEchoCommand:$.noop,onFlush:$.noop,strings:{comletionParameters:"From version 1.0.0 completion function need to"+" have two arguments",wrongPasswordTryAgain:"Wrong password try again!",wrongPassword:"Wrong password!",ajaxAbortError:"Error while aborting ajax call!",wrongArity:"Wrong number of arguments. Function '%s' expects %s got"+" %s!",commandNotFound:"Command '%s' Not Found!",oneRPCWithIgnore:"You can use only one rpc with describe == false "+"or rpc without system.describe",oneInterpreterFunction:"You can't use more than one function (rpc "+"without system.describe or with option describe == false count"+"s as one)",loginFunctionMissing:"You didn't specify a login function",noTokenError:"Access denied (no token)",serverResponse:"Server responded",wrongGreetings:"Wrong value of greetings parameter",notWhileLogin:"You can't call `%s' function while in login",loginIsNotAFunction:"Authenticate must be a function",canExitError:"You can't exit from main interpreter",invalidCompletion:"Invalid completion",invalidSelector:"Sorry, but terminal said that you use invalid "+"selector!",invalidTerminalId:"Invalid Terminal ID",login:"login",password:"password",recursiveCall:"Recursive call detected, skip",notAString:"%s function: argument is not a string",redrawError:"Internal error, wrong position in cmd redraw",invalidStrings:"Command %s have unclosed strings",defunctTerminal:"You can't call method on terminal that was destroyed"}};var requests=[];var terminals=new Cycle;var save_state=[];var hash_commands;var change_hash=false;var fire_hash_change=true;var first_instance=true;$.fn.terminal=function(e,n){function t(t){if(t){this.storage={}}this.set=function(e,n){if(t){this.storage[e]=n}else{$.Storage.set(e,n)}};this.get=function(e){if(t){return this.storage[e]}else{return $.Storage.get(e)}};this.remove=function(e){if(t){delete this.storage[e]}else{$.Storage.remove(e)}}}function c(e){if($.terminal.unclosed_strings(e)){var n=$.terminal.escape_brackets(e);var t=sprintf(q().invalidStrings,"`"+n+"`");throw new $.terminal.Exception(t)}else if(is_function(ce.processArguments)){return process_command(e,ce.processArguments)}else if(ce.processArguments){return $.terminal.parse_command(e)}else{return $.terminal.split_command(e)}}function p(e){if(typeof e==="string"){M.echo(e)}else if(e instanceof Array){M.echo($.map(e,function(e){return JSON.stringify(e)}).join(" "))}else if(typeof e==="object"){M.echo(JSON.stringify(e))}else{M.echo(e)}}function u(e){var n=/(.*):([0-9]+):([0-9]+)$/;var o=e.match(n);if(o){M.pause(ce.softPause);$.get(o[1],function(e){var n=location.href.replace(/[^/]+$/,"");var t=o[1].replace(n,"");M.echo("[[b;white;]"+t+"]");var r=e.split("\n");var i=+o[2]-1;M.echo(r.slice(i-2,i+3).map(function(e,n){if(n===2){e="[[;#f00;]"+$.terminal.escape_brackets(e)+"]"}return"["+(i+n-1)+"]: "+e}).join("\n")).resume()},"text")}}function a(e){if(is_function(ce.onRPCError)){ce.onRPCError.call(M,e)}else{M.error("&#91;RPC&#93; "+e.message);if(e.error&&e.error.message){e=e.error;var n="\t"+e.message;if(e.file){n+=' in file "'+e.file.replace(/.*\//,"")+'"'}if(e.at){n+=" at line "+e.at}M.error(n)}}}function m(t,r){var i=function(e,n){M.pause(ce.softPause);$.jrpc({url:t,method:e,params:n,request:function(e,n){try{ce.request.call(M,e,n,M)}catch(e){v(e,"USER")}},response:function(e,n){try{ce.response.call(M,e,n,M)}catch(e){v(e,"USER")}},success:function e(n){if(n.error){a(n.error)}else if(is_function(ce.processRPCResponse)){ce.processRPCResponse.call(M,n.result,M)}else{p(n.result)}M.resume()},error:h})};return function(e,n){if(e===""){return}try{e=c(e)}catch(e){v(e,"TERMINAL (get_processed_command)");return}if(!r||e.name==="help"){i(e.name,e.args)}else{var t=n.token();if(t){i(e.name,[t].concat(e.args))}else{n.error("&#91;AUTH&#93; "+q().noTokenError)}}}}function d(a,s,l,f){return function(e,n){if(e===""){return}var t;try{t=c(e)}catch(e){if(is_function(ce.exception)){ce.exception(e,M)}else{M.error(e.toString())}return}var r=a[t.name];var i=get_type(r);if(i==="function"){if(s&&r.length!==t.args.length){M.error("&#91;Arity&#93; "+sprintf(q().wrongArity,t.name,r.length,t.args.length))}else{return r.apply(M,t.args)}}else if(i==="object"||i==="string"){var o=[];if(i==="object"){o=Object.keys(r);r=d(r,s,l)}n.push(r,{prompt:t.name+"> ",name:t.name,completion:i==="object"?o:undefined})}else if(is_function(f)){f(e,M)}else if(is_function(ce.onCommandNotFound)){ce.onCommandNotFound.call(M,e,M)}else{n.error(sprintf(q().commandNotFound,t.name))}}}function h(e,n,t){M.resume();if(is_function(ce.onAjaxError)){ce.onAjaxError.call(M,e,n,t)}else if(n!=="abort"){M.error("&#91;AJAX&#93; "+n+" - "+q().serverResponse+":\n"+$.terminal.escape_brackets(e.responseText))}}function g(o,s,i){function l(e){if(e.error){a(e.error)}else if(is_function(ce.processRPCResponse)){ce.processRPCResponse.call(M,e.result,M)}else{p(e.result)}M.resume()}function f(e,n){try{ce.request.call(M,e,n,M)}catch(e){v(e,"USER")}}function c(e,n){try{ce.response.call(M,e,n,M)}catch(e){v(e,"USER")}}function e(t){var r=t;if(ce.describe!==""){ce.describe.split(".").forEach(function(e){r=r[e]})}if(r&&r.length){var n={};$.each(r,function(e,i){if($.isPlainObject(i)&&typeof i.name==="string"){n[i.name]=function(){var e=s&&i.name!=="help";var n=Array.prototype.slice.call(arguments);var t=n.length+(e?1:0);if(ce.checkArity&&i.params&&i.params.length!==t){M.error("&#91;Arity&#93; "+sprintf(q().wrongArity,i.name,i.params.length,t))}else{M.pause(ce.softPause);if(e){var r=M.token(true);if(r){n=[r].concat(n)}else{M.error("&#91;AUTH&#93; "+q().noTokenError)}}$.jrpc({url:o,method:i.name,params:n,request:f,response:c,success:l,error:h})}}}});var a=typeof s==="string"?s:"login";n.help=n.help||function(i){if(typeof i==="undefined"){var e=t.procs.map(function(e){return e.name}).join(", ")+", help";M.echo("Available commands: "+e)}else{var o=false;$.each(r,function(e,n){if(n.name===i){o=true;var t="";t+="[[bu;;]"+n.name+"]";if(n.params){var r=n.params;if(s&&n.name!==a){r=r.slice(1)}t+=" "+r.join(" ")}if(n.help){t+="\n"+n.help}M.echo(t);return false}});if(!o){if(i==="help"){M.echo("[[bu;;]help] [method]\ndisplay help "+"for the method or list of methods if not"+" specified")}else{var n="Method `"+i+"' not found ";M.error(n)}}}};i(n)}else{i(null)}}return $.jrpc({url:o,method:"system.describe",params:[],success:e,request:f,response:c,error:function e(){i(null)}})}function l(n,a,t){t=t||$.noop;var e=get_type(n);var s;var r={};var l=0;var f;if(e==="array"){s={};(function n(e,t){if(e.length){var r=e[0];var i=e.slice(1);var o=get_type(r);if(o==="string"){M.pause(ce.softPause);if(ce.describe===false){if(++l===1){f=m(r,a)}else{M.error(q().oneRPCWithIgnore)}n(i,t)}else{g(r,a,function(e){if(e){$.extend(s,e)}else if(++l===1){f=m(r,a)}else{M.error(q().oneRPCWithIgnore)}M.resume();n(i,t)})}}else if(o==="function"){if(f){M.error(q().oneInterpreterFunction)}else{f=r}n(i,t)}else if(o==="object"){$.extend(s,r);n(i,t)}}else{t()}})(n,function(){t({interpreter:d(s,false,a,f.bind(M)),completion:Object.keys(s)})})}else if(e==="string"){if(ce.ignoreSystemDescribe){s={interpreter:m(n,a)};if($.isArray(ce.completion)){s.completion=ce.completion}t(s)}else{M.pause(ce.softPause);g(n,a,function(e){if(e){r.interpreter=d(e,false,a);r.completion=Object.keys(e)}else{r.interpreter=m(n,a)}t(r);M.resume()})}}else if(e==="object"){t({interpreter:d(n,ce.checkArity),completion:Object.keys(n)})}else{if(e==="undefined"){n=$.noop}else if(e!=="function"){var i=e+" is invalid interpreter value";throw new $.terminal.Exception(i)}t({interpreter:n,completion:ce.completion})}}function f(r,e){var i=get_type(e)==="boolean"?"login":e;return function(e,n,t){M.pause(ce.softPause);$.jrpc({url:r,method:i,params:[e,n],request:function(e,n){try{ce.request.call(M,e,n,M)}catch(e){v(e,"USER")}},response:function(e,n){try{ce.response.call(M,e,n,M)}catch(e){v(e,"USER")}},success:function e(n){if(!n.error&&n.result){t(n.result)}else{t(null)}M.resume()},error:h})}}function v(e,n,t){if(is_function(ce.exceptionHandler)){ce.exceptionHandler.call(M,e,n)}else{M.exception(e,n);if(!t){setTimeout(function(){throw e},0)}}}function r(n,e){try{if(is_function(e)){e.call(M,$.noop,M)}else if(typeof e!=="string"){var t=n+" must be string or function";throw t}}catch(e){v(e,n.toUpperCase());return false}return true}var _=[];var y=1;function s(e,n,t){var r,i;_.push(y);if(e===""){}else if(!t.raw){var o={linksNoReferrer:ce.linksNoReferrer,char_width:re.width};var a=M.cols();if((strlen(e)>a||e.match(/\n/))&&(ce.wrap===true&&t.wrap===undefined||ce.wrap===false&&t.wrap===true)){var s=t.keepWords;var l=$.terminal.split_equal(e,a,s);for(r=0,i=l.length;r<i;++r){if(l[r]===""||l[r]==="\r"){_.push("<span></span>")}else{_.push($.terminal.format(l[r],o))}}}else{e=$.terminal.normalize(e);e=$.terminal.format(e,o);e.split(/\n/).forEach(function(e){_.push(e)})}}else{_.push(e)}_.push({finalize:t.finalize,index:n})}function o(e){try{var n=$.extend({exec:true,raw:false,finalize:$.noop},e.options||{});var t;var r=e.string;var i=is_function(r);if(i){r=r()}if(get_type(r)!=="string"){if(is_function(ce.parseObject)){var o=ce.parseObject(r);if(get_type(o)==="string"){t=o}}else if(r instanceof Array){t=$.terminal.columns(r,M.cols(),ce.tabs)}else{t=String(r)}}else{t=r}if(t!==""){t=$.map(t.split(format_exec_re),function(e){if(e&&e.match(format_exec_re)&&!$.terminal.is_formatting(e)){e=e.replace(/^\[\[|\]\]$/g,"");if(n.exec){if(K&&K.command.trim()===e.trim()){M.error(q().recursiveCall)}else{$.terminal.extended_command(M,e)}}return""}else{return e}}).join("");if(t!==""){if(!n.raw){if(ce.convertLinks){t=t.replace(email_re,"[[!;;]$1]").replace(url_nf_re,"[[!;;]$1]")}if(n.formatters){try{t=$.terminal.apply_formatters(t,ce);t=crlf($.terminal.normalize(t))}catch(e){v(e,"FORMATTING")}}t=$.terminal.encode(t)}s(t,e.index,n)}}if(t===""&&i){s(t,e.index,n)}}catch(e){_=[];if(is_function(ce.exceptionHandler)){ce.exceptionHandler.call(M,e,"TERMINAL")}else{alert_exception("[Internal Exception(process_line)]",e)}}}function i(e){e=$.extend({},{update:false,scroll:true},e||{});if(!e.update){ye.resize(G);var n=Q.empty().detach()}var i=[];if(ce.outputLimit>=0){var t;if(ce.outputLimit===0){t=M.rows()}else{t=ce.outputLimit}pe.forEach(function(e,n){var t=e[0];var r=e[1];if(get_type(t)==="function"){t=t()}if(get_type(t)!=="string"){t=String(t)}i.push({string:t,index:n,options:r})});i=i.slice(i.length-t-1)}else{i=pe.map(function(e,n){return{string:e[0],index:n,options:e[1]}})}try{_=[];$.each(i,function(e,n){o(n)});if(!e.update){ye.before(n)}M.flush(e);try{ce.onAfterRedraw.call(M,M)}catch(e){ce.onAfterRedraw=$.noop;v(e,"onAfterRedraw")}}catch(e){if(is_function(ce.exceptionHandler)){ce.exceptionHandler.call(M,e,"TERMINAL (redraw)")}else{alert_exception("[redraw]",e)}}}function b(){if(ce.outputLimit>=0){var e;if(ce.outputLimit===0){e=M.rows()}else{e=ce.outputLimit}var n=Q.find("> div > div");if(n.length+1>e){var t=n.length-e+1;var r=n.slice(0,t);var i=r.parent();r.remove();i.each(function(){var e=$(this);if(e.is(":empty")){e.remove()}})}}}function w(){if(ce.greetings===undefined){M.echo(M.signature,{finalize:a11y_hide,formatters:false})}else if(ce.greetings){var e=typeof ce.greetings;if(e==="string"){M.echo(ce.greetings)}else if(e==="function"){try{ce.greetings.call(M,M.echo)}catch(e){ce.greetings=null;v(e,"greetings")}}else{M.error(q().wrongGreetings)}}}function x(t){if(typeof t==="undefined"){t=M.get_command()}var e=ye.prompt();var n=ye.mask();switch(typeof n){case"string":t=t.replace(/./g,n);break;case"boolean":if(n){t=t.replace(/./g,ce.maskChar)}else{t=$.terminal.escape_formatting(t)}break}var r={finalize:function e(n){a11y_hide(n.addClass("command"));try{ce.onEchoCommand.call(M,n,t)}catch(e){ce.onEchoCommand=$.noop;M.exception(e)}}};if(is_function(e)){var i=e(function(e){M.echo(e+t,r)});if(i&&is_function(i.then)){i.then(function(e){if(typeof e==="string"){M.echo(e+t,r)}})}}else{M.echo(e+t,r)}}function k(){if(M.is("body")){return window.innerWidth-document.documentElement.clientWidth>0}return Se.outerWidth()!==M.outerWidth()}function C(e){var n=terminals.get()[e[0]];if(!n){throw new $.terminal.Exception(q().invalidTerminalId)}var t=e[1];if(save_state[t]){n.import_view(save_state[t])}else{change_hash=false;var r=e[2];if(r){n.exec(r).done(function(){change_hash=true;save_state[t]=n.export_view()})}}}function T(){if(change_hash){fire_hash_change=false;location.hash="#"+JSON.stringify(hash_commands);setTimeout(function(){fire_hash_change=true},100)}}var E=true;var S=[];function R(n,e,t){function r(){if(ce.historyState||ce.execHash&&t){if(!save_state.length){M.save_state()}else{M.save_state(null)}}}function i(){if(!t){change_hash=true;if(ce.historyState){M.save_state(n,false)}change_hash=f}l.resolve();if(is_function(ce.onAfterCommand)){ce.onAfterCommand.call(M,M,n)}}function o(e){if(typeof e!=="undefined"){p(e)}i();M.resume()}function a(){var e=s.interpreter.call(M,n,M);if(e){M.pause(ce.softPause);if(is_function(e.done||e.then)){(e.done||e.then).call(e,o)}else{return $.when(e).done(o)}}else if(ge){S.push(function(){i()})}else{i()}}if(E){E=false;r()}try{if(is_function(ce.onBeforeCommand)){if(ce.onBeforeCommand.call(M,M,n)===false){return}}if(!t){K=$.terminal.split_command(n)}if(!P()){if(t&&(is_function(ce.historyFilter)&&ce.historyFilter(n)||n.match(ce.historyFilter))){ye.history().append(n)}}var s=_e.top();if(!e&&ce.echoCommand){x(n)}var l=new $.Deferred;var f=change_hash;if(n.match(/^\s*login\s*$/)&&M.token(true)){if(M.level()>1){M.logout(true)}else{M.logout()}i()}else if(ce.exit&&n.match(/^\s*exit\s*$/)&&!oe){var c=M.level();if(c===1&&M.get_token()||c>1){if(M.get_token(true)){M.set_token(undefined,true)}M.pop()}i()}else if(ce.clear&&n.match(/^\s*clear\s*$/)&&!oe){M.clear();i()}else{var u=a();if(u){return u}}return l.promise()}catch(e){v(e,"USER",t);M.resume();if(t){throw e}}}function A(){if(is_function(ce.onBeforeLogout)){try{if(ce.onBeforeLogout.call(M,M)===false){return}}catch(e){ce.onBeforeLogout=$.noop;v(e,"onBeforeLogout")}}j();if(is_function(ce.onAfterLogout)){try{ce.onAfterLogout.call(M,M)}catch(e){ce.onAfterLogout=$.noop;v(e,"onAfterlogout")}}M.login(Oe,true,I)}function j(){var e=M.prefix_name(true)+"_";me.remove(e+"token");me.remove(e+"login")}function O(e){var n=M.prefix_name()+"_interpreters";var t=me.get(n);if(t){t=JSON.parse(t)}else{t=[]}if($.inArray(e,t)===-1){t.push(e);me.set(n,JSON.stringify(t))}}function L(e){var t=_e.top();var n=M.prefix_name(true);if(!P()){O(n)}var r=M.login_name(true);ye.name(n+(r?"_"+r:""));if(is_function(t.prompt)){ye.prompt(function(n){var e=t.prompt.call(M,n,M);if(e&&is_function(e.then)){e.then(function(e){if(typeof e==="string"){n(e)}})}})}else{ye.prompt(t.prompt)}if(typeof t.history!=="undefined"){M.history().toggle(t.history)}if($.isPlainObject(t.keymap)){ye.keymap($.omap(t.keymap,function(e,n){return function(){var e=[].slice.call(arguments);try{return n.apply(M,e)}catch(e){v(e,"USER KEYMAP")}}}))}ye.set("");ne.resolve();if(!e&&is_function(t.onStart)){t.onStart.call(M,M)}}function z(){if(fire_hash_change&&ce.execHash){try{if(location.hash){var e=location.hash.replace(/^#/,"");hash_commands=JSON.parse(decodeURIComponent(e))}else{hash_commands=[]}if(hash_commands.length){C(hash_commands[hash_commands.length-1])}else if(save_state[0]){M.import_view(save_state[0])}}catch(e){v(e,"TERMINAL")}}}function I(){L();w();if(pe.length){M.refresh()}var e=false;if(is_function(ce.onInit)){ae=function(){e=true};try{ce.onInit.call(M,M)}catch(e){v(e,"OnInit")}finally{ae=$.noop;if(!e&&M.enabled()){M.resume()}}}if(first_instance){first_instance=false;$(window).on("hashchange",z)}}function P(){return oe||ye.mask()!==false}function N(e){var n,t=_e.top();if(is_function(t.keydown)){n=t.keydown.call(M,e,M);if(n!==undefined){return n}}else if(is_function(ce.keydown)){n=ce.keydown.call(M,e,M);if(n!==undefined){return n}}}var F={"CTRL+D":function(e,n){if(!oe){if(ye.get()===""){if(_e.size()>1||is_function(Oe)){M.pop("")}else{M.resume();M.echo("")}}else{n()}}return false},"CTRL+C":function(){if(get_selected_text()===""){var e=M.get_command();var n=M.get_position();e=e.substring(0,n)+"^C"+e.substring(n+2);x(e);M.set_command("")}},"CTRL+L":function(){M.clear()},TAB:function(e,n){var t=_e.top(),r,i;if(typeof t.caseSensitiveAutocomplete!=="undefined"){i=t.caseSensitiveAutocomplete}else{i=ce.caseSensitiveAutocomplete}if(ce.completion&&get_type(ce.completion)!=="boolean"&&t.completion===undefined){r=ce.completion}else{r=t.completion}if(r==="settings"){r=ce.completion}function o(e){M.complete(e,{echo:true,word:ce.wordAutocomplete,escape:ce.completionEscape,caseSensitive:i,doubleTab:ce.doubleTab})}if(r){switch(get_type(r)){case"function":var a=M.before_cursor(ce.wordAutocomplete);if(r.length===3){var s=new Error(q().comletionParameters);v(s,"USER");return false}var l=r.call(M,a,o);if(l&&is_function(l.then)){l.then(o)}break;case"array":o(r);break;default:throw new $.terminal.Exception(q().invalidCompletion)}}else{n()}return false},"CTRL+V":function(e,n){n(e);M.oneTime(200,function(){M.scroll_to_bottom()});return true},"CTRL+TAB":function(){if(terminals.length()>1){M.focus(false);return false}},PAGEDOWN:function(){M.scroll(M.height())},PAGEUP:function(){M.scroll(-M.height())}};function D(n){var e,t;if(M.enabled()){if(!M.paused()){e=N(n);if(e!==undefined){return e}if(n.which!==9){J=0}}else{if(!ce.pauseEvents){e=N(n);if(e!==undefined){return e}}if(n.which===68&&n.ctrlKey){if(ce.pauseEvents){e=N(n);if(e!==undefined){return e}}if(requests.length){for(t=requests.length;t--;){var r=requests[t];if(r.readyState!==4){try{r.abort()}catch(e){if(is_function(ce.exceptionHandler)){ce.exceptionHandler.call(M,n,"AJAX ABORT")}else{M.error(q().ajaxAbortError)}}}}requests=[]}M.resume()}return false}}}function H(e){var n=_e.top();if(de&&(!ge||!ce.pauseEvents)){if(is_function(n.keypress)){return n.keypress.call(M,e,M)}else if(is_function(ce.keypress)){return ce.keypress.call(M,e,M)}}}function U(n){return function(e){n.add(e)}}function q(){return $.extend({},$.terminal.defaults.strings,ce&&ce.strings||{})}var M=this;if(this.length>1){return this.each(function(){$.fn.terminal.call($(this),e,$.extend({name:M.selector},n))})}if(M.data("terminal")){return M.data("terminal")}if(M.length===0){var B=sprintf(q().invalidSelector);throw new $.terminal.Exception(B)}var W;var K;var J=0;var Q;var Y=terminals.length();var G;var V;var X;var Z=new Stack;var ee=new DelayQueue;var ne=new DelayQueue;var te=U(ne);var re=get_char_size(M);var ie=U(ee);var oe=false;var ae=$.noop;var se,le;var fe=[];var ce=$.extend({},$.terminal.defaults,{name:M.selector,exit:!!(n&&n.login||!n)},n||{});delete ce.formatters;var ue=false;var pe=[];var me=new t(ce.memory);var de=ce.enabled;var he=false;var ge=false;var ve=true;var _e;var ye;var be;var we;var xe;$.extend(M,$.omap({id:function(){return Y},clear:function(){Q.html("");pe=[];try{ce.onClear.call(M,M)}catch(e){v(e,"onClear")}M.attr({scrollTop:0});return M},export_view:function(){var e={};if(is_function(ce.onExport)){try{e=ce.onExport.call(M)}catch(e){v(e,"onExport")}}return $.extend({},{focus:de,mask:ye.mask(),prompt:M.get_prompt(),command:M.get_command(),position:ye.position(),lines:clone(pe),interpreters:_e.clone(),history:ye.history().data},e)},import_view:function(n){if(oe){throw new Error(sprintf(q().notWhileLogin,"import_view"))}if(is_function(ce.onImport)){try{ce.onImport.call(M,n)}catch(e){ce.onImport=$.noop;v(e,"onImport")}}te(function e(){M.set_prompt(n.prompt);M.set_command(n.command);ye.position(n.position);ye.mask(n.mask);if(n.focus){M.focus()}pe=clone(n.lines).filter(function(e){return e[0]});if(n.interpreters instanceof Stack){_e=n.interpreters}if(ce.importHistory){ye.history().set(n.history)}i()});return M},save_state:function(e,n,t){if(typeof t!=="undefined"){save_state[t]=M.export_view()}else{save_state.push(M.export_view())}if(!$.isArray(hash_commands)){hash_commands=[]}if(e!==undefined&&!n){var r=[Y,save_state.length-1,e];hash_commands.push(r);T()}return M},exec:function(t,r,e){var i=e||new $.Deferred;ie(function e(){if($.isArray(t)){(function e(){var n=t.shift();if(n){M.exec(n,r).done(e)}else{i.resolve()}})()}else if(ge){fe.push([t,r,i])}else{var n=R(t,r,true);if(n&&(n.done||n.then)){(n.done||n.then).call(n,function(){i.resolve(M)})}}});return i.promise()},autologin:function(e,n,t){M.trigger("terminal.autologin",[e,n,t]);return M},login:function(r,i,o,a){Z.push([].slice.call(arguments));if(oe){throw new Error(sprintf(q().notWhileLogin,"login"))}if(!is_function(r)){throw new Error(q().loginIsNotAFunction)}oe=true;if(M.token()&&M.level()===1&&!ve){oe=false;M.logout(true)}else if(M.token(true)&&M.login_name(true)){oe=false;if(is_function(o)){o()}return M}if(ce.history){ye.history().disable()}var s=M.level();function l(e,n,t){if(n){while(M.level()>s){M.pop(undefined,true)}if(ce.history){ye.history().enable()}var r=M.prefix_name(true)+"_";me.set(r+"token",n);me.set(r+"login",e);oe=false;if(is_function(o)){o()}}else{if(i){if(!t){M.error(q().wrongPasswordTryAgain)}M.pop(undefined,true).set_mask(false)}else{oe=false;if(!t){M.error(q().wrongPassword)}M.pop(undefined,true).pop(undefined,true)}if(is_function(a)){a()}}M.off("terminal.autologin")}M.on("terminal.autologin",function(e,n,t,r){l(n,t,r)});M.push(function(t){M.set_mask(ce.maskChar).push(function(e){try{var n=r.call(M,t,e,function(e,n){l(t,e,n)});if(n&&is_function(n.then)){M.pause();n.then(function(e){l(t,e);M.resume()})}}catch(e){v(e,"AUTH")}},{prompt:q().password+": ",name:"password"})},{prompt:q().login+": ",name:"login"});return M},settings:function(){return ce},before_cursor:function(e){var n=ye.position();var t=ye.get().substring(0,n);var r=t.split(" ");var i;if(e){if(r.length===1){i=r[0]}else{var o=t.match(/(\\?")/g);var a=o?o.filter(function(e){return!e.match(/^\\/)}).length:0;o=t.match(/'/g);var s=o?o.length:0;if(s%2===1){i=t.match(/('[^']*)$/)[0]}else if(a%2===1){i=t.match(/("(?:[^"]|\\")*)$/)[0]}else{i=r[r.length-1];for(Ae=r.length-1;Ae>0;Ae--){var l=r[Ae-1];if(l[l.length-1]==="\\"){i=r[Ae-1]+" "+i}else{break}}}}}else{i=t}return i},complete:function(r,i){i=$.extend({word:true,echo:false,escape:true,caseSensitive:true,doubleTab:null},i||{});var o=i.caseSensitive;var a=M.before_cursor(i.word).replace(/\\"/g,'"');var l=false;if(i.word){if(a.match(/^"/)){l='"'}else if(a.match(/^'/)){l="'"}if(l){a=a.replace(/^["']/,"")}}r=r.slice();if(ce.clear&&$.inArray("clear",r)===-1){r.push("clear")}if(ce.exit&&$.inArray("exit",r)===-1){r.push("exit")}if(J%2===0){X=M.before_cursor(i.word)}else{var e=M.before_cursor(i.word);if(e!==X){return}}var n=$.terminal.escape_regex(a);if(i.escape){n=n.replace(/(\\+)(["'() ])/g,function(e,n,t){if(t.match(/[()]/)){return n+"\\?\\"+t}else{return n+"?"+t}})}function t(){var e=[];for(var n=r.length;n--;){if(f.test(r[n])){var t=r[n];if(l==='"'){t=t.replace(/"/g,'\\"')}if(!l&&i.escape){t=t.replace(/(["'() ])/g,"\\$1")}if(!o&&same_case(t)){if(a.toLowerCase()===a){t=t.toLowerCase()}else if(a.toUpperCase()===a){t=t.toUpperCase()}}e.push(t)}}return e}var s=o?"":"i";var f=new RegExp("^"+n,s);var c=t();function u(e,n){var t=M.get_command();var r=M.get_position();var i=new RegExp("^"+e,"i");var o=t.substring(0,r);var a=t.substring(r);var s=n.replace(i,"")+(l||"");M.set_command(o+s+a);M.set_position((o+s).length)}if(c.length===1){if(i.escape){u(n,c[0])}else{M.insert(c[0].replace(f,"")+(l||""))}X=M.before_cursor(i.word);return true}else if(c.length>1){if(++J>=2){J=0;if(i.echo){if(is_function(i.doubleTab)){var p=i.doubleTab.call(M,a,c,x);if(typeof p==="undefined"){return true}else{return p}}else if(i.doubleTab!==false){x();var m=c.reverse().join("\t");M.echo($.terminal.escape_brackets(m),{keepWords:true,formatters:false})}return true}}else{var d=common_string(a,c,o);if(d){u(a,d);X=M.before_cursor(i.word);return true}}}},commands:function(){return _e.top().interpreter},set_interpreter:function(e,n){function t(){M.pause(ce.softPause);l(e,n,function(e){M.resume();var n=_e.top();$.extend(n,e);L(true)})}if(get_type(e)==="string"&&n){M.login(f(e,n),true,t)}else{t()}return M},greetings:function(){w();return M},paused:function(){return ge},pause:function(n){ie(function e(){ae();ge=true;ye.disable(n||is_android);if(!n){ye.find(".prompt").hidden()}if(is_function(ce.onPause)){ce.onPause.call(M)}});return M},resume:function(){ie(function e(){ge=false;if(de&&terminals.front()===M){ye.enable()}ye.find(".prompt").visible();var n=fe;fe=[];for(var t=0;t<n.length;++t){M.exec.apply(M,n[t])}M.trigger("resume");var r=S.shift();if(r){r()}M.scroll_to_bottom();if(is_function(ce.onResume)){ce.onResume.call(M)}});return M},cols:function(){if(ce.numChars){return ce.numChars}if(typeof G==="undefined"||G===1e3){G=get_num_chars(M,re)}return G},rows:function(){if(ce.numRows){return ce.numRows}if(typeof V==="undefined"){V=get_num_rows(M,re)}return V},history:function(){return ye.history()},history_state:function(e){function n(){ce.historyState=true;if(!save_state.length){M.save_state()}else if(terminals.length()>1){M.save_state(null)}}if(e){if(typeof window.setImmediate==="undefined"){setTimeout(n,0)}else{setImmediate(n)}}else{ce.historyState=false}return M},clear_history_state:function(){hash_commands=[];save_state=[];return M},next:function(){if(terminals.length()===1){return M}else{terminals.front().disable();var e=terminals.rotate().enable();var n=e.offset().top-50;$("html,body").animate({scrollTop:n},500);try{trigger_terminal_change(e)}catch(e){v(e,"onTerminalChange")}return e}},focus:function(t,r){ie(function e(){if(terminals.length()===1){if(t===false){M.disable(r)}else{M.enable(r)}}else if(t===false){M.next()}else{var n=terminals.front();if(n!==M){terminals.forEach(function(e){if(e!==M&&e.enabled()){e.disable(r)}});if(!r){try{trigger_terminal_change(M)}catch(e){v(e,"onTerminalChange")}}}terminals.set(M);M.enable(r)}});return M},freeze:function(n){te(function e(){if(n){M.disable();he=true}else{he=false;M.enable()}});return M},frozen:function(){return he},enable:function(t){if(!de&&!he){if(G===undefined){M.resize()}ie(function e(){var n;if(!t&&!de){try{n=ce.onFocus.call(M,M)}catch(e){ce.onFocus=$.noop;v(e,"onFocus")}}if(!t&&n===undefined||t){de=true;if(!M.paused()){ye.enable()}}})}return M},disable:function(t){ie(function e(){var n;if(!t&&de){try{n=ce.onBlur.call(M,M)}catch(e){ce.onBlur=$.noop;v(e,"onBlur")}}if(!t&&n===undefined||t){de=false;ye.disable()}});return M},enabled:function(){return de},signature:function(){var e=M.cols();for(var n=signatures.length;n--;){var t=signatures[n].map(function(e){return e.length});if(Math.max.apply(null,t)<=e){return signatures[n].join("\n")+"\n"}}return""},version:function(){return $.terminal.version},cmd:function(){return ye},get_command:function(){return ye.get()},set_command:function(n,t){te(function e(){if(typeof n!=="string"){n=JSON.stringify(n)}ye.set(n,undefined,t)});return M},set_position:function(n,t){te(function e(){ye.position(n,t)});return M},get_position:function(){return ye.position()},insert:function(t,r){if(typeof t==="string"){te(function e(){var n=M.is_bottom();ye.insert(t,r);if(ce.scrollOnEcho||n){M.scroll_to_bottom()}});return M}else{throw new Error(sprintf(q().notAString,"insert"))}},set_prompt:function(n){te(function e(){if(r("prompt",n)){if(is_function(n)){ye.prompt(function(e){n(e,M)})}else{ye.prompt(n)}_e.top().prompt=n}});return M},get_prompt:function(){return _e.top().prompt},set_mask:function(n){te(function e(){ye.mask(n===true?ce.maskChar:n)});return M},get_output:function(e){if(e){return pe}else{return $.map(pe,function(e){return is_function(e[0])?e[0]():e[0]}).join("\n")}},resize:function(e,n){if(!M.is(":visible")){M.stopTime("resize");M.oneTime(500,"resize",function(){M.resize(e,n)})}else{if(e&&n){M.width(e);M.height(n)}e=M.width();n=M.height();if(typeof ce.numChars!=="undefined"||typeof ce.numRows!=="undefined"){ye.resize(ce.numChars);M.refresh();return}var t=get_num_chars(M,re);var r=get_num_rows(M,re);if(t!==G||r!==V){G=t;V=r;ye.resize(G);M.refresh();var i=_e.top();if(is_function(i.resize)){i.resize.call(M,M)}else if(is_function(ce.onResize)){ce.onResize.call(M,M)}}}return M},refresh:function(){if(re.width!==0){M[0].style.setProperty("--char-width",re.width)}i({scroll:false,update:true});return M},flush:function(i){i=$.extend({},{update:false,scroll:true},i||{});try{var e=M.is_bottom();var o;$.each(_,function(e,n){if(n===y){o=$("<div></div>")}else if($.isPlainObject(n)&&is_function(n.finalize)){if(i.update){var t="> div[data-index="+n.index+"]";var r=Q.find(t);if(r.html()!==o.html()){r.replaceWith(o)}}else{o.appendTo(Q)}n.finalize(o.attr("data-index",n.index))}else{$("<div/>").html(n).appendTo(o).width("100%")}});b();try{ce.onFlush.call(M,M)}catch(e){ce.onFlush=$.noop;v(e,"onFlush")}if(ce.scrollOnEcho&&i.scroll||e){M.scroll_to_bottom()}_=[]}catch(e){if(is_function(ce.exceptionHandler)){ce.exceptionHandler.call(M,e,"TERMINAL (Flush)")}else{alert_exception("[Flush]",e)}}return M},update:function(n,t,r){te(function e(){if(n<0){n=pe.length+n}if(!pe[n]){M.error("Invalid line number "+n)}else if(t===null){pe.splice(n,1);Q.find("[data-index="+n+"]").remove()}else{pe[n][0]=t;if(r){pe[n][1]=r}o({string:t,index:n,options:r});M.flush({scroll:false,update:true})}});return M},remove_line:function(e,n){return M.update(e,null,n)},last_index:function(){return pe.length-1},echo:function(e,n){function t(e){try{var t=$.extend({flush:true,raw:ce.raw,finalize:$.noop,keepWords:false,formatters:true},n||{});(function(n){t.finalize=function(e){if(t.raw){e.addClass("raw")}try{if(is_function(n)){n(e)}}catch(e){v(e,"USER:echo(finalize)");n=null}}})(t.finalize);if(t.flush){if(_.length){M.flush()}_=[]}if(typeof e==="function"){e=e.bind(M)}o({string:e,options:t,index:pe.length});pe.push([e,$.extend(t,{exec:false})]);if(t.flush){M.flush()}}catch(e){if(is_function(ce.exceptionHandler)){ce.exceptionHandler.call(M,e,"TERMINAL (echo)")}else{alert_exception("[Terminal.echo]",e)}}}if(e!==undefined&&is_function(e.then)){$.when(e).done(t)}else{t(e)}return M},error:function(e,n){n=$.extend({},n,{raw:false,formatters:false});function t(e){if(typeof e!=="string"){e=String(e)}var n=$.terminal.escape_brackets(e).replace(/\\$/,"&#92;").replace(url_re,"]$1[[;;;error]");return"[[;;;error]"+n+"]"}if(typeof e==="function"){return M.echo(function(){return t(e.call(M))},n)}return M.echo(t(e),n)},exception:function(r,e){var n=exception_message(r);if(e){n="&#91;"+e+"&#93;: "+n}if(n){M.error(n,{finalize:function(e){e.addClass("exception message")},keepWords:true})}if(typeof r.fileName==="string"){M.pause(ce.softPause);$.get(r.fileName,function(e){var n=r.lineNumber-1;var t=e.split("\n")[n];if(t){M.error("["+r.lineNumber+"]: "+t)}M.resume()},"text")}if(r.stack){var t=$.terminal.escape_brackets(r.stack);M.echo(t.split(/\n/g).map(function(e){return"[[;;;error]"+e.replace(url_re,function(e){return"]"+e+"[[;;;error]"})+"]"}).join("\n"),{finalize:function(e){e.addClass("exception stack-trace")},formatters:false})}return M},scroll:function(e){var n;e=Math.round(e);if(W.prop){if(e>W.prop("scrollTop")&&e>0){W.prop("scrollTop",0)}n=W.prop("scrollTop");W.scrollTop(n+e)}else{if(e>W.attr("scrollTop")&&e>0){W.attr("scrollTop",0)}n=W.attr("scrollTop");W.scrollTop(n+e)}return M},logout:function(t){if(oe){throw new Error(sprintf(q().notWhileLogin,"logout"))}te(function e(){if(t){var n=Z.pop();M.set_token(undefined,true);M.login.apply(M,n)}else if(_e.size()===1&&M.token()){M.logout(true)}else{while(_e.size()>1){if(M.token()){M.logout(true).pop().pop()}else{M.pop()}}}});return M},token:function(e){return me.get(M.prefix_name(e)+"_token")},set_token:function(e,n){var t=M.prefix_name(n)+"_token";if(typeof e==="undefined"){me.remove(t)}else{me.set(t,e)}return M},get_token:function(e){return M.token(e)},login_name:function(e){return me.get(M.prefix_name(e)+"_login")},name:function(){return _e.top().name},prefix_name:function(e){var n=(ce.name?ce.name+"_":"")+Y;if(e&&_e.size()>1){var t=_e.map(function(e){return e.name||""}).slice(1).join("_");if(t){n+="_"+t}}return n},read:function(e,n,t){var r=jQuery.Deferred();var i=false;M.push(function(e){i=true;r.resolve(e);if(is_function(n)){n(e)}M.pop();if(ce.history){ye.history().enable()}},{name:"read",history:false,prompt:e||"",onExit:function(){if(!i){r.reject();if(is_function(t)){t()}}}});if(ce.history){ye.history().disable()}return r.promise()},push:function(a,s){ie(function e(){s=s||{};var n={infiniteLogin:false};var r=$.extend({},n,s);if(!r.name&&K){r.name=K.name}if(r.prompt===undefined){r.prompt=(r.name||">")+" "}var t=_e.top();if(t){t.mask=ye.mask()}var i=ge;function o(){ce.onPush.call(M,t,_e.top(),M);L()}l(a,s.login,function(e){_e.push($.extend({},e,r));if(r.completion===true){if($.isArray(e.completion)){_e.top().completion=e.completion}else if(!e.completion){_e.top().completion=false}}if(r.login){var n;var t=get_type(r.login);if(t==="function"){n=r.infiniteLogin?$.noop:M.pop;M.login(r.login,r.infiniteLogin,o,n)}else if(get_type(a)==="string"&&t==="string"||t==="boolean"){n=r.infiniteLogin?$.noop:M.pop;M.login(f(a,r.login),r.infiniteLogin,o,n)}}else{o()}if(!i&&M.enabled()){M.resume()}})});return M},pop:function(e,n){if(e!==undefined){x(e)}var t=M.token(true);var r;if(_e.size()===1){r=_e.top();if(ce.login){if(!n){ce.onPop.call(M,r,null,M)}A();if(is_function(ce.onExit)){try{ce.onExit.call(M,M)}catch(e){ce.onExit=$.noop;v(e,"onExit")}}}else{M.error(q().canExitError)}}else{if(t){j()}var i=_e.pop();r=_e.top();L();if(!n){ce.onPop.call(M,i,r)}if(oe&&M.get_prompt()!==q().login+": "){oe=false}if(is_function(i.onExit)){try{i.onExit.call(M,M)}catch(e){i.onExit=$.noop;v(e,"onExit")}}M.set_mask(r.mask)}return M},option:function(e,n){if(typeof n==="undefined"){if(typeof e==="string"){return ce[e]}else if(typeof e==="object"){$.each(e,function(e,n){ce[e]=n})}}else{ce[e]=n;if(e.match(/^num(Chars|Rows)$/)){i()}}return M},invoke_key:function(e){var n=e.toUpperCase().split("+");var t=n.pop();var r=n.indexOf("CTRL")!==-1;var i=n.indexOf("SHIFT")!==-1;var o=n.indexOf("ALT")!==-1;var a=n.indexOf("META")!==-1;var s=$.Event("keydown",{ctrlKey:r,shiftKey:i,altKey:o,metaKey:a,which:Ce[t],key:t});var l=$(document.documentElement||window);l.trigger(s);s=$.Event("keypress");s.key=t;s.which=s.keyCode=0;l.trigger(s);return M},keymap:function(e,t){if(arguments.length===0){return ye.keymap()}if(typeof t==="undefined"){if(typeof e==="string"){return ye.keymap(e)}else if($.isPlainObject(e)){e=$.omap(e||{},function(t,r){if(!Pe[t]){return r.bind(M)}return function(e,n){return r.call(M,e,function(){return Pe[t](e,n)})}});ye.keymap(e)}}else if(typeof t==="function"){var r=e;if(!Pe[r]){ye.keymap(r,t.bind(M))}else{ye.keymap(r,function(e,n){return t.call(M,e,function(){return Pe[r](e,n)})})}}},level:function(){return _e.size()},reset:function(){te(function e(){M.clear();while(_e.size()>1){_e.pop()}I()});return M},purge:function(){te(function e(){var n=M.prefix_name()+"_";var t=me.get(n+"interpreters");if(t){$.each(JSON.parse(t),function(e,n){me.remove(n+"_commands");me.remove(n+"_token");me.remove(n+"_login")})}ye.purge();me.remove(n+"interpreters")});return M},destroy:function(){te(function e(){ye.destroy().remove();Q.remove();Te.remove();$(document).unbind(".terminal_"+M.id());$(window).unbind(".terminal_"+M.id());M.unbind("click wheel mousewheel mousedown mouseup");M.removeData("terminal").removeClass("terminal").unbind(".terminal");if(ce.width){M.css("width","")}if(ce.height){M.css("height","")}$(window).off("blur",ze).off("focus",Le);M.find(".terminal-fill").remove();M.stopTime();terminals.remove(Y);if(we){we.unobserve(M[0])}if(xe){xe.disconnect()}M.resizer("unbind");Ee.resizer("unbind").remove();if(!terminals.length()){$(window).off("hashchange")}ue=true});return M},scroll_to_bottom:function(){var e;if(W.prop){e=W.prop("scrollHeight")}else{e=W.attr("scrollHeight")}W.scrollTop(e);return M},is_bottom:function(){if(ce.scrollBottomOffset===-1){return false}else{var e,n,t;if(M.is("body")){e=$(document).height();n=$(window).scrollTop();t=window.innerHeight}else{e=W[0].scrollHeight;n=W.scrollTop();t=W.outerHeight()}var r=e-ce.scrollBottomOffset;return n+t>r}}},function(n,e){return function(){if(ue){if(!ce.exceptionHandler){throw new $.terminal.Exception(q().defunctTerminal)}}try{return e.apply(M,[].slice.apply(arguments))}catch(e){if(n!=="exec"&&n!=="resume"){v(e,e.type||"TERMINAL",true)}if(!ce.exceptionHandler){throw e}}}}));var $e={3:"Cancel",6:"Help",8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",28:"Convert",29:"NonConvert",30:"Accept",31:"ModeChange",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",41:"Select",42:"Print",43:"Execute",44:"PrintScreen",45:"Insert",46:"Delete",48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],91:"OS",93:"ContextMenu",144:"NumLock",145:"ScrollLock",181:"VolumeMute",182:"VolumeDown",183:"VolumeUp",186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"'],224:"Meta",225:"AltGraph",246:"Attn",247:"CrSel",248:"ExSel",249:"EraseEof",250:"Play",251:"ZoomOut"};for(Ae=1;Ae<25;Ae++){$e[111+Ae]="F"+Ae}var ke="";for(Ae=65;Ae<91;Ae++){ke=String.fromCharCode(Ae);$e[Ae]=[ke.toLowerCase(),ke.toUpperCase()]}var Ce={};Object.keys($e).forEach(function(n){if($e[n]instanceof Array){$e[n].forEach(function(e){Ce[e.toUpperCase()]=n})}else{Ce[$e[n].toUpperCase()]=n}});if(ce.ignoreSystemDescribe===true){ce.describe=false}if(ce.width){M.width(ce.width)}if(ce.height){M.height(ce.height)}if(ce.scrollObject!==null){W=$(ce.scrollObject)}else{W=M}if(W.is("body")&&!is_safari){W=$("html,body")}$(document).bind("ajaxSend.terminal_"+M.id(),function(e,n){requests.push(n)});var Te=$('<div class="terminal-wrapper"/>').appendTo(M);var Ee=$('<div class="font">&nbsp;</div>').appendTo(M);var Se=$('<div class="terminal-fill"/>').appendTo(M);Q=$("<div>").addClass("terminal-output").attr("role","log").appendTo(Te);M.addClass("terminal");if(ce.login&&is_function(ce.onBeforeLogin)){try{if(ce.onBeforeLogin.call(M,M)===false){ve=false}}catch(e){ce.onBeforeLogin=$.noop;v(e,"onBeforeLogin")}}var Re;if(typeof e==="string"){Re=e}else if(e instanceof Array){for(var Ae=0,je=e.length;Ae<je;++Ae){if(typeof e[Ae]==="string"){Re=e[Ae];break}}}var Oe;if(is_function(ce.login)){Oe=ce.login}else if(Re&&(typeof ce.login==="string"||ce.login===true)){Oe=f(Re,ce.login)}terminals.append(M);function Le(){if(be){M.focus()}}function ze(){be=de;M.disable().find(".cmd textarea").trigger("blur",[true])}function Ie(e){e=e.originalEvent;function n(e,n){return e.type.indexOf(n)!==-1}if(e.clipboardData){if(M.enabled()){var t=e.clipboardData.items;if(t){for(var r=0;r<t.length;r++){if(n(t[r],"image")&&ce.pasteImage){var i=t[r].getAsFile();var o=window.URL||window.webkitURL;var a=o.createObjectURL(i);M.echo('<img src="'+a+'"/>',{raw:true})}else if(n(t[r],"text/plain")){t[r].getAsString(M.insert)}}}else if(e.clipboardData.getData){var s=e.clipboardData.getData("text/plain");M.insert(s)}return false}}}$(document).on("paste.terminal_"+M.id(),Ie);var Pe=$.extend({},F,$.omap(ce.keymap||{},function(t,r){if(!F[t]){return r.bind(M)}return function(e,n){return r.call(M,e,function(){return F[t](e,n)})}}));l(e,ce.login,function(e){if(ce.completion&&typeof ce.completion!=="boolean"||!ce.completion){e.completion="settings"}_e=new Stack($.extend({},ce.extra,{name:ce.name,prompt:ce.prompt,keypress:ce.keypress,keydown:ce.keydown,resize:ce.onResize,greetings:ce.greetings,mousewheel:ce.mousewheel,history:ce.history,keymap:Pe},e));ye=$("<div/>").appendTo(Te).cmd({prompt:ce.prompt,history:ce.memory?"memory":ce.history,historyFilter:ce.historyFilter,historySize:ce.historySize,caseSensitiveSearch:ce.caseSensitiveSearch,width:"100%",enabled:false,char_width:re.width,keydown:D,keymap:Pe,clickTimeout:ce.clickTimeout,keypress:H,onCommandChange:function(e){if(is_function(ce.onCommandChange)){try{ce.onCommandChange.call(M,e,M)}catch(e){ce.onCommandChange=$.noop;v(e,"onCommandChange")}}M.scroll_to_bottom()},commands:R});function n(e){e=e.originalEvent;if(e){var n=document.elementFromPoint(e.clientX,e.clientY);if(!$(n).closest(".terminal").length&&M.enabled()){M.disable()}}}M.oneTime(100,function(){$(document).bind("click.terminal_"+M.id(),n).bind("contextmenu.terminal_"+M.id(),n)});var t=$(window);document.addEventListener("resume",function(){M.disable()});if(is_mobile){M.click(function(){if(!he){if(!M.enabled()){M.focus();ye.enable()}else{M.disable()}}})}else{t.on("focus.terminal_"+M.id(),Le).on("blur.terminal_"+M.id(),ze);(function(){var n=0;var t;var r="click_"+M.id();var i=M.find(".cmd textarea");function o(){if(t.is(".terminal")||t.is(".terminal-wrapper")){var e=M.get_command().length;M.set_position(e)}else if(t.closest(".prompt").length){M.set_position(0)}if(!i.is(":focus")){i.focus()}a()}function a(){n=0;t=null}var e;M.find(".cmd textarea").on("focus",function(){if(typeof e!=="undefined"){W.scrollTop(e)}}).on("blur",function(){e=W.scrollTop()});M.mousedown(function(e){if(!scrollbar_event(e,Se)){t=$(e.target)}}).mouseup(function(){if(get_selected_text()===""&&t){if(++n===1){if(!he){if(!de){M.focus()}else{var e=ce.clickTimeout;M.oneTime(e,r,o);return}}}else{M.stopTime(r)}}a()}).dblclick(function(){a();M.stopTime(r)})})();(function(){var t=M.find(".cmd textarea");M.on("contextmenu.terminal",function(e){if(get_selected_text()===""){if(!$(e.target).is("img,value,audio,object,canvas,a")){if(!M.enabled()){M.enable()}var n=ye.offset();t.css({left:e.pageX-n.left-20,top:e.pageY-n.top-20,width:"5em",height:"4em"});if(!t.is(":focus")){t.focus()}M.stopTime("textarea");M.oneTime(100,"textarea",function(){t.css({left:"",top:"",width:"",height:""})});M.stopTime("selection");M.everyTime(20,"selection",function(){if(t[0].selection!==t[0].value){if(get_textarea_selection(t[0])){clear_textarea_selection(t[0]);select(M.find(".terminal-output")[0],M.find(".cmd div:last-of-type")[0]);M.stopTime("selection")}}})}}})})()}M.on("click","a",function(e){var n=$(this);if(n.closest(".exception").length){var t=n.attr("href");if(t.match(/:[0-9]+$/)){e.preventDefault();u(t)}}if(de){M.find(".cmd textarea").focus()}});function r(){var e=re.width;re=get_char_size(M);if(e!==re.width){ye.option("char_width",re.width).refresh()}}i();function i(){if(M.is(":visible")){var e=Se.width();var n=Se.height();if(le!==n||se!==e){M.resize()}le=n;se=e}}function o(){M.resizer("unbind").resizer(i);Ee.resizer("unbind").resizer(function(){r();M.resize()})}if(M.is(":visible")){o()}function a(){if(we){we.unobserve(M[0])}var e=M.enabled();var n=M.is(":visible");if(n){o()}we=new window.IntersectionObserver(function(){if(M.is(":visible")&&!n){n=true;o();r();i();if(e){M.enable()}}else if(n&&!M.is(":visible")){n=false;e=$.terminal.active()===M&&M.enabled();M.disable()}},{root:document.body});we.observe(M[0])}var s=!!M.closest("body").length;var l=window.MutationObserver||window.WebKitMutationObserver;if(l){xe=new l(function(){if(M.closest("body").length){if(!s){M.scroll_to_bottom();if(window.IntersectionObserver){a()}i()}s=true}else if(s){s=false}});xe.observe(document.body,{childList:true})}if(window.IntersectionObserver&&s){a()}ee.resolve();if(de&&M.is(":visible")&&!is_mobile){M.focus(undefined,true)}else{M.disable()}if(is_function(Oe)){M.login(Oe,true,I)}else{I()}function f(e){var n=terminals.get()[e[0]];if(n&&Y===n.id()){if(!e[2]){t.resolve();return t.promise()}else if(ge){var t=$.Deferred();S.push(function(){return n.exec(e[2]).done(function(){n.save_state(e[2],true,e[1]);t.resolve()})});return t.promise()}else{return n.exec(e[2]).done(function(){n.save_state(e[2],true,e[1])})}}}if(ce.execHash){if(location.hash){setTimeout(function(){try{var e=location.hash.replace(/^#/,"");hash_commands=JSON.parse(decodeURIComponent(e));var t=0;(function e(){var n=hash_commands[t++];if(n){f(n).done(e)}else{change_hash=true}})()}catch(e){}})}else{change_hash=true}}else{change_hash=true}(function(){var i=false;$(document).bind("keydown.terminal_"+M.id(),function(e){if(e.shiftKey){i=true}}).bind("keyup.terminal_"+M.id(),function(e){if(e.shiftKey||e.which===16){i=false}});function t(e,n){if(!i){var t=_e.top();var r;if(is_function(t.mousewheel)){r=t.mousewheel(e,n,M)}else if(is_function(ce.mousewheel)){r=ce.mousewheel(e,n,M)}if(k()||r===false){e.stopPropagation();e.preventDefault()}if(r===false){return false}else if(r===true){return}if(n>0){M.scroll(-40)}else{M.scroll(40)}}}if($.event.special.mousewheel){M.on("mousewheel",t)}else{var r;var e=document.createElement("div");if("onwheel"in e){r="wheel"}else if(document.onmousewheel!==undefined){r="mousewheel"}else{r="DOMMouseScroll"}e=null;M.on(r,function(e){var n;if(r==="mousewheel"){n=-1/40*e.originalEvent.wheelDelta}else{n=e.originalEvent.deltaY||e.originalEvent.detail}t(e,-n)})}})()});M.data("terminal",M);return M}});
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement