UNPKG

jquery.terminal

Version:

jQuery Terminal Emulator is a plugin for creating command line interpreters in your applications.

46 lines 178 kB
/**@license * __ _____ ________ __ * / // _ /__ __ _____ ___ __ _/__ ___/__ ___ ______ __ __ __ ___ / / * __ / // // // // // _ // _// // / / // _ // _// // // \/ // _ \/ / * / / // // // // // ___// / / // / / // ___// / / / / // // /\ // // / /__ * \___//____ \\___//____//_/ _\_ / /_//____//_/ /_/ /_//_//_/ /_/ \__\_\___/ * \/ /____/ version 2.45.2 * * This file is part of jQuery Terminal. https://terminal.jcubic.pl * * Copyright (c) 2010-2025 Jakub T. Jankiewicz <https://jcubic.pl/me> * Released under the MIT license * * Contains: * * Storage plugin Distributed under the MIT License * modified to work from Data URIs that block storage and cookies in Chrome * Copyright (c) 2010 Dave Schindler * * jQuery Timers licenced with the WTFPL * <http://jquery.offput.ca/timers/> * * Cross-Browser Split 1.1.1 * Copyright 2007-2012 Steven Levithan <stevenlevithan.com> * Available under the MIT License * * jQuery Caret * Copyright (c) 2009, Gideon Sireling * 3 clause BSD License * * sprintf.js * Copyright (c) 2007-2013 Alexandru Marasteanu <hello at alexei dot ro> * licensed under 3 clause BSD license * * debounce function from Lodash * Copyright JS Foundation and other contributors <https://js.foundation/> * The MIT License * * emoji regex v9.0.0 by Mathias Bynens * MIT license * * broken image by Sophia Bai from the Noun Project (CC-BY) * * Date: Mon, 21 Jul 2025 22:45:43 +0000 */ (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,t){var r=1,n=e.length,i="",a,u=[],o,s,l,f,c,p;for(o=0;o<n;o++){i=D(e[o]);if(i==="string"){u.push(e[o])}else if(i==="array"){l=e[o];if(l[2]){a=t[r];for(s=0;s<l[2].length;s++){if(!a.hasOwnProperty(l[2][s])){throw m('[sprintf] property "%s" does not exist',l[2][s])}a=a[l[2][s]]}}else if(l[1]){a=t[l[1]]}else{a=t[r++]}if(/[^s]/.test(l[8])&&D(a)!=="number"){throw m("[sprintf] expecting number but found %s",D(a))}switch(l[8]){case"b":a=a.toString(2);break;case"c":a=String.fromCharCode(a);break;case"d":a=parseInt(a,10);break;case"e":a=l[7]?a.toExponential(l[7]):a.toExponential();break;case"f":a=l[7]?parseFloat(a).toFixed(l[7]):parseFloat(a);break;case"o":a=a.toString(8);break;case"s":a=(a=String(a))&&l[7]?a.slice(0,l[7]):a;break;case"u":a=a>>>0;break;case"x":a=a.toString(16);break;case"X":a=a.toString(16).toUpperCase();break}a=/[def]/.test(l[8])&&l[3]&&a>=0?" +"+a:a;c=l[4]?l[4]==="0"?"0":l[4].charAt(1):" ";p=l[6]-String(a).length;f=l[6]?d(c,p):"";u.push(l[5]?a+f:f+a)}}return u.join("")};m.cache={};m.parse=function(e){var t=e,r=[],n=[],i=0;while(t){if((r=/^[^\x25]+/.exec(t))!==null){n.push(r[0])}else if((r=/^\x25{2}/.exec(t))!==null){n.push("%")}else if((r=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(t))!==null){if(r[2]){i|=1;var a=[],u=r[2],o=[];if((o=/^([a-z_][a-z_\d]*)/i.exec(u))!==null){a.push(o[1]);while((u=u.slice(o[0].length))!==""){if((o=/^\.([a-z_][a-z_\d]*)/i.exec(u))!==null){a.push(o[1])}else if((o=/^\[(\d+)\]/.exec(u))!==null){a.push(o[1])}else{throw"[sprintf] huh?"}}}else{throw"[sprintf] huh?"}r[2]=a}else{i|=2}if(i===3){throw"[sprintf] mixing positional and named placeholders is not (yet) supported"}n.push(r)}else{throw"[sprintf] huh?"}t=t.slice(r[0].length)}return n};var t=function(e,t,r){r=t.slice(0);r.splice(0,0,e);return m.apply(null,r)};function D(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()}function d(e,t){for(var r=[];t>0;r[--t]=e){}return r.join("")}e.sprintf=m;e.vsprintf=t})(typeof global!=="undefined"?global:self||window);(function(n,i){var r;if(typeof window!=="undefined"){r=window}else if(typeof self!=="undefined"){r=self}else if(typeof global!=="undefined"){r=global}else{throw new Error("Unknow context")}if(typeof define==="function"&&define.amd){define(["jquery","wcwidth"],function(e,t){n(e,t,r);return e})}else if(typeof module==="object"&&module.exports){module.exports=function(e,t,r){if(t===i){if(typeof window!=="undefined"){t=require("jquery")}else{t=require("jquery")(e)}}if(r===i){r=require("wcwidth")}n(t,r,e);return t}}else{if(!r.jQuery){r.$=r.cash}n(r.jQuery||r.cash,r.wcwidth,r)}})(function($,wcwidth,root,undefined){"use strict";function debug(e){if(false){console.log(e)}}function DelayQueue(){var t=$.Callbacks();var r=false;var e=this;this.resolve=function(){t.fire();e.resolved=r=true};this.add=function(e){if(r){e()}else{t.add(e)}}}function EventEmitter(){this._events={}}EventEmitter.prototype.on=function(e,t){if(!this._events[e]){this._events[e]=[]}this._events[e].push(t)};EventEmitter.prototype.emit=function(e){if(this._events[e]){var t=Array.prototype.slice.call(arguments,1);this._events[e].forEach(function(e){e.apply(null,t)})}};EventEmitter.prototype.off=function(e,t){if(!this._events[e]){return}if(!t){delete this._events[e]}else{this._events[e]=this._events[e].filter(function(e){return e!==t})}};EventEmitter.prototype.once=function(e,t){var r=this;function n(){r.off(e,n);t.apply(null,arguments)}this.on(e,n)};EventEmitter.prototype.wait_for=function(e){var t=new $.Deferred;this.once(e,function(){t.resolve()});return t.promise()};$.omap=function(r,n){var i={};$.each(r,function(e,t){i[e]=n.call(r,e,t)});return i};$.fn.text_length=function(){return this.map(function(){return $(this).text().length}).get().reduce(function(e,t){return e+t},0)};var Clone={clone_object:function(e){var t={};if(typeof e==="object"){if(Array.isArray(e)){return this.clone_array(e)}else if(e===null){return e}else{for(var r in e){if(!e.hasOwnProperty(r)){continue}if(Array.isArray(e[r])){t[r]=this.clone_array(e[r])}else if(typeof e[r]==="object"){t[r]=this.clone_object(e[r])}else{t[r]=e[r]}}}}return t},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)};if("Map"in root&&!("clear"in Map.prototype)){Map.prototype.clear=function(){this.forEach(function(e,t,r){r.delete(t)})}}var localStorage;(function(){var e=function(){try{var e="test",t=window.localStorage;t.setItem(e,"1");t.removeItem(e);return true}catch(e){return false}};var t=function(){try{document.cookie.split(";");return true}catch(e){return false}};var r=e();function n(e,t){var r;if(typeof e==="string"&&typeof t==="string"){localStorage[e]=t;return true}else if(typeof e==="object"&&typeof t==="undefined"){for(r in e){if(e.hasOwnProperty(r)){localStorage[r]=e[r]}}return true}return false}function i(e,t){var r,n,i;r=new Date;r.setTime(r.getTime()+31536e6);n="; expires="+r.toGMTString();if(typeof e==="string"&&typeof t==="string"){document.cookie=e+"="+t+n+"; path=/";return true}else if(typeof e==="object"&&typeof t==="undefined"){for(i in e){if(e.hasOwnProperty(i)){document.cookie=i+"="+e[i]+n+"; path=/"}}return true}return false}function a(e){return localStorage[e]}function u(e){var t,r,n,i;t=e+"=";r=document.cookie.split(";");for(n=0;n<r.length;n++){i=r[n];while(i.charAt(0)===" "){i=i.slice(1,i.length)}if(i.indexOf(t)===0){return i.slice(t.length,i.length)}}return null}function o(e){return delete localStorage[e]}function s(e){return i(e,"",-1)}if(!t()&&!r){localStorage={};$.extend({Storage:{set:n,get:a,remove:o}})}else{if(r){localStorage=window.localStorage}$.extend({Storage:{set:r?n:i,get:r?a:u,remove:r?o:s}})}})();var debounce=function(){var E="Expected a function";function x(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function $(){return Date.now()}return function e(n,i,t){var r=Math.max,a=Math.min;var u,o,s,l,f,c,p=0,m=false,D=false,d=true;if(typeof n!="function"){throw new TypeError(E)}i=i||0;if(x(t)){m=!!t.leading;D="maxWait"in t;s=D?r(t.maxWait||0,i):s;d="trailing"in t?!!t.trailing:d}function h(e){var t=u,r=o;u=o=undefined;p=e;l=n.apply(r,t);return l}function v(e){p=e;f=setTimeout(y,i);return m?h(e):l}function g(e){var t=e-c,r=e-p,n=i-t;return D?a(n,s-r):n}function _(e){var t=e-c,r=e-p;return c===undefined||t>=i||t<0||D&&r>=s}function y(){var e=$();if(_(e)){return b(e)}f=setTimeout(y,g(e))}function b(e){f=undefined;if(d&&u){return h(e)}u=o=undefined;return l}function C(){if(f!==undefined){clearTimeout(f)}p=0;u=c=o=f=undefined}function w(){return f===undefined?l:b($())}function F(){var e=$(),t=_(e);u=arguments;o=this;c=e;if(t){if(f===undefined){return v(c)}if(D){f=setTimeout(y,i);return h(c)}}if(f===undefined){f=setTimeout(y,i)}return l}F.cancel=C;F.flush=w;return F}}();var jQuery=$;(function(e){jQuery.fn.extend({everyTime:function(e,t,r,n,i){return this.each(function(){jQuery.timer.add(this,e,t,r,n,i)})},oneTime:function(e,t,r){return this.each(function(){jQuery.timer.add(this,e,t,r,1)})},stopTime:function(e,t){return this.each(function(){jQuery.timer.remove(this,e,t)})}});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 t=this.regex.exec(e.toString().trim());if(t[2]){var r=parseInt(t[1],10);var n=this.powers[t[2]]||1;return r*n}else{return e}},add:function(e,t,r,n,i,a){var u=0;if(typeof r==="function"){if(!i){i=n}n=r;r=t}t=jQuery.timer.timeParse(t);if(typeof t!=="number"||isNaN(t)||t<=0){return}if(i&&i.constructor!==Number){a=!!i;i=0}i=i||0;a=a||false;if(!e.$timers){e.$timers={}}if(!e.$timers[r]){e.$timers[r]={}}n.$timerID=n.$timerID||this.guid++;var o=function(){if(a&&o.inProgress){return}o.inProgress=true;if(++u>i&&i!==0||n.call(e,u)===false){jQuery.timer.remove(e,r,n)}o.inProgress=false};o.$timerID=n.$timerID;if(!e.$timers[r][n.$timerID]){e.$timers[r][n.$timerID]=setInterval(o,t)}if(!this.global[r]){this.global[r]=[]}this.global[r].push(e)},remove:function(e,t,r){var n=e.$timers,i;if(n){if(!t){for(var a in n){if(n.hasOwnProperty(a)){this.remove(e,a,r)}}}else if(n[t]){if(r){if(r.$timerID){clearInterval(n[t][r.$timerID]);delete n[t][r.$timerID]}}else{for(var u in n[t]){if(n[t].hasOwnProperty(u)){clearInterval(n[t][u]);delete n[t][u]}}}for(i in n[t]){if(n[t].hasOwnProperty(i)){break}}if(!i){i=null;delete n[t]}}for(i in n){if(n.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 t in e){if(e.hasOwnProperty(t)){var r=e[t],n=r.length;while(--n){jQuery.timer.remove(r[n],t)}}}})}})(jQuery);(function(f){if(!String.prototype.split.toString().match(/\[native/)){return}var c=String.prototype.split,p=/()??/.exec("")[1]===f,r;r=function(e,t,r){if(Object.prototype.toString.call(t)!=="[object RegExp]"){return c.call(e,t,r)}var n=[],i=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.extended?"x":"")+(t.sticky?"y":""),a=0,u,o,s,l;t=new RegExp(t.source,i+"g");e+="";if(!p){u=new RegExp("^"+t.source+"$(?!\\s)",i)}r=r===f?-1>>>0:r>>>0;while(o=t.exec(e)){s=o.index+o[0].length;if(s>a){n.push(e.slice(a,o.index));if(!p&&o.length>1){o[0].replace(u,function(){for(var e=1;e<arguments.length-2;e++){if(arguments[e]===f){o[e]=f}}})}if(o.length>1&&o.index<e.length){Array.prototype.push.apply(n,o.slice(1))}l=o[0].length;a=s;if(n.length>=r){break}}if(t.lastIndex===o.index){t.lastIndex++}}if(a===e.length){if(l||!t.test("")){n.push("")}}else{n.push(e.slice(a))}return n.length>r?n.slice(0,r):n};String.prototype.split=function(e,t){return r(this,e,t)};return r})();$.fn.caret=function(e){var t=this[0];var r=t.contentEditable==="true";if(arguments.length===0){if(window.getSelection){if(r){if(!this.is(":focus")){t.focus()}var n=window.getSelection().getRangeAt(0),i=n.cloneRange();i.selectNodeContents(t);i.setEnd(n.endContainer,n.endOffset);return i.toString().length}return t.selectionStart}if(document.selection){t.focus();if(r){var n=document.selection.createRange(),i=document.body.createTextRange();i.moveToElementText(t);i.setEndPoint("EndToEnd",n);return i.text.length}var e=0,a=t.createTextRange(),i=document.selection.createRange().duplicate(),u=i.getBookmark();a.moveToBookmark(u);while(a.moveStart("character",-1)!==0)e++;return e}return 0}if(e===-1)e=this[r?"text":"val"]().length;if(window.getSelection){if(r){if(!this.is(":focus")){t.focus()}var o=window.getSelection();o.collapse(o.focusNode,e)}else t.setSelectionRange(e,e)}else if(document.body.createTextRange){var a=document.body.createTextRange();a.moveToElementText(t);a.moveStart("character",e);a.collapse(true);a.select()}if(!r&&!this.is(":focus")){t.focus()}return e};function make_callback_plugin(e){var s=$.extend({init:$.noop,destroy:$.noop,name:"event"},e);return function(n,i){var a=arguments.length===0;var u=arguments[0]==="unbind";if(!a&&!u&&!is_function(n)){throw new Error("Invalid argument, it need to a function or string "+'"unbind" or no arguments.')}if(u){n=is_function(arguments[1])?arguments[1]:null}var o="callbacks_"+s.name;return this.each(function(){var t=$(this);var r;function e(e){r.fireWith(t,[e])}if(a||u){r=t.data(o);if(a){r&&r.fire()}else{if(n&&r){r.remove(n);if(!r.has()){r=null}}else{r=null}if(!r){t.removeData(o);s.destroy.call(this,e,i)}}}else if(t.data(o)){$(this).data(o).add(n)}else{r=$.Callbacks();r.add(n);t.data(o,r);s.init.call(this,e,i)}})}}$.fn.resizer=make_callback_plugin({name:"resize",init:function(e,t){var r=$.extend({prefix:""},t);var n=$(this);var i;var a=true;if(n.is("body")){$(window).on("resize.resizer",e)}else if(window.ResizeObserver){i=new ResizeObserver(function(){if(!a){setTimeout(e,0)}a=false});i.observe(this);n.data("observer",i)}else{var u=$("<iframe/>").addClass(r.prefix+"resizer").appendTo(this)[0];$(u.contentWindow).on("resize",e)}},destroy:function(){var e=$(this);if(window.ResizeObserver){var t=e.data("observer");if(t){t.unobserve(this);e.removeData("observer")}}else{var r=e.find('> iframe[class$="resizer"]');if(r.length){$(r[0].contentWindow).off("resize").remove();r.remove()}else if(e.is("body")){$(window).off("resize.resizer")}}}});$.fn.touch_scroll=make_callback_plugin({name:"touch",init:function(n){var i;var a;$(this).on("touchstart.scroll",function(e){e=e.originalEvent;if(e.target.tagName.toLowerCase()!=="a"&&e.touches.length===1){a=i=e.touches[0]}}).on("touchmove.scroll",function(e){e=e.originalEvent;if(i&&e.touches.length===1){var t=e.touches[0];var r=n({origin:i,previous:a,current:t});if(r===false){e.preventDefault()}a=t}}).on("touchend.scroll",function(){if(i||a){i=a=null}})},destroy:function(){$(this).off("touchstart.scroll touchmove.scroll touchend.scroll")}});$.fn.on_load=function(e){var r=$.extend({error:$.noop,load:$.noop,done:$.noop},e);var n=[];this.find("img,iframe").each(function(){var e=$(this);var t=new $.Deferred;e.on("load",t.resolve).on("error",function(){r.error(e);t.reject()});n.push(t)});r.load(!!n.length);if(n.length){$.when.apply($,n).then(function(){r.done(true)})}else{r.done(false)}return this};function jquery_resolve(e){var t=jQuery.Deferred();t.resolve(e);return t.promise()}function always(e,t){if(is_function(e.finally)){return e.finally(t)}if(is_function(e.always)){return e.always(t)}return e}function unpromise(e,t,r){if(e!==undefined){if(is_promise(e)){if(is_function(e.done)){e=e.done(t)}else if(is_function(e.then)){e=e.then(t)}if(is_function(e.catch)&&is_function(r)){e.catch(r)}return e}else if(e instanceof Array){var n=e.filter(function(e){return e&&(is_function(e.done)||is_function(e.then))});if(n.length){var i=$.when.apply($,e).then(function(){return t([].slice.call(arguments))});if(is_function(i.catch)){i=i.catch(r)}return i}}try{return t(e)}catch(e){if(is_function(r)){r(e)}else{throw e}}}}function defined(e){return e===undefined?true:e}$.fn.is_fully_in_viewport=function(){function t(e,t){var r=e.getBoundingClientRect();var n=t[0].getBoundingClientRect();var i=r.top-n.top;var a=r.bottom-n.top;var u=t.height();return a>0&&i<=u}if(root.IntersectionObserver){return function(e){var t=this[0];var r=jQuery.Deferred();var n=new root.IntersectionObserver(function(e){r.resolve(e[0].isIntersecting&&e[0].ratio===1);n.unobserve(t)},{root:e[0]});n.observe(t);return r.promise()}}else{return function(e){return jquery_resolve(t(this[0],e))}}}();var entity_re=/(&(?:[a-z\d]+|#\d+|#x[a-f\d]+);)/i;var space_re=/\s/;var combine_chr_re=/(.(?:[\u0300-\u036F]|[\u1AB0-\u1abE]|[\u1DC0-\u1DF9]|[\u1DFB-\u1DFF]|[\u20D0-\u20F0]|[\uFE20-\uFE2F])+)/;var astral_symbols_re=/([\uD800-\uDBFF][\uDC00-\uDFFF])/;var emoji_re=/(\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC68(?:\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83E\uDDD1(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69])(?:\uD83C[\uDFFB-\uDFFE])|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69])(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69])(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69])(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69])(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83E\uDDD1(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC3B\u200D\u2744|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F\u200D[\u2640\u2642]|(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDF])\u200D[\u2640\u2642])\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F?|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD]))/;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=/(\[\[(?:-?[@!gbiusor])*;[^;]*;[^\]]*\](?:[^\]\\]*(?:\\\\)*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]?)/i;var format_parts_re=/\[\[((?:-?[@!gbiusor])*);([^;]*);([^;\]]*);?([^;\]]*);?([^\]]*)\]([^\]\\]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]+)\]?/gi;var format_re=/\[\[((?:-?[@!gbiusor])*;[^;\]]*;[^;\]]*(?:;|[^\]()]*);?[^\]]*)\]([^\]]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]?/gi;var format_exist_re=/\[\[((?:-?[@!gbiusor])*;[^;\]]*;[^;\]]*(?:;|[^\]()]*);?[^\]]*)\]([^\]]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)\]/gi;var format_full_re=/^(\[\[(?:(?:-?[@!gbiusor])*;[^;\]]*;[^;\]]*(?:;|[^\]()]*);?[^\]]*)\])([^\]]*\\\][^\]]*|[^\]]*|[^[]*\[[^\]]*)(\])$/i;var format_begin_re=/(\[\[(?:-?[@!gbiusor])*;[^;]*;[^\]]*\])/i;var format_start_re=/^(\[\[(?:-?[@!gbiusor])*;[^;]*;[^\]]*\])/i;var format_end_re=/\[\[(?:-?[@!gbiusor])*;[^;]*;[^\]]*\]?$/i;var self_closing_re=/^(?:\[\[)?[^;]*@[^;]*;/;var color_re=/^(?:#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})|rgba?\([^)]+\)|hsla?\([^)]+\))$/i;var url_re=/(\b(?:file|ftp|https?|blog:https?):\/\/(?:[^/\s]+\.[^/\s.]+)(?:\/[^\s]*)?(?:#[^\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 url_full_re=/^(https?:\/\/(?:(?:(?!&[^;]+;)|(?=&amp;))[^\s"'<>\\\][)])+)$/gi;var email_full_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][^`\\]*)*`|\/[^\/\\]*(?:\\[\S\s][^\/\\]*)*\/[gimsuy]*(?=\s|$)|(?:\\\s|\S))+)(?=\s|$)/gi;var extended_command_re=/^\s*((terminal|cmd)::([a-z_]+)\(([\s\S]*)\))\s*$/;var format_exec_split_re=/(\[\[(?:-?[@!gbiusor])*;[^\]]+\](?:\\[[\]]|[^\]])*\]|\[\[[\s\S]+?\]\])/;var format_exec_re=/(\[\[[\s\S]+?\]\])/;var float_re=/^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/;var re_re=/^\/((?:\\\/|[^/]|\[[^\]]*\/[^\]]*\])+)\/([gimsuy]*)$/;var string_re=/("(?:[^"\\]|\\(?:\\\\)*"|\\\\)*"|'(?:[^'\\]|\\(?:\\\\)*'|\\\\)*'|`(?:[^`\\]|\\(?:\\\\)*`|\\\\)*`)/;var unclosed_strings_re=/^(?=((?:[^"']+|"[^"\\]*(?:\\[^][^"\\]*)*"|'[^'\\]*(?:\\[^][^'\\]*)*')*))\1./;var broken_image='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 14"><title id="title2">rounded</title><path id="terminal-broken-image" d="m 14,10 h 2 v 1 a 3,3 0 0 1 -3,3 H 3 A 3,3 0 0 1 0,11 H 4.5 A 1.00012,1.00012 0 0 0 5.207,10.707 L 6.5,9.414 7.793,10.707 a 0.99963,0.99963 0 0 0 1.41406,0 l 2.36719,-2.36719 1.80127,1.44092 A 0.99807,0.99807 0 0 0 14,10 Z M 16,3 V 8 H 14.35059 L 12.12451,6.21924 A 0.99846,0.99846 0 0 0 10.793,6.293 L 8.5,8.586 7.207,7.293 a 0.99962,0.99962 0 0 0 -1.41406,0 L 4.08594,9 H 0 V 3 A 3,3 0 0 1 3,0 h 10 a 3,3 0 0 1 3,3 z M 6,4.5 A 1.5,1.5 0 1 0 4.5,6 1.5,1.5 0 0 0 6,4.5 Z" /></svg>';var use_broken_image='<svg class="terminal-broken-image" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 14" xmlns:xlink="http://www.w3.org/1999/xlink"><use xlink:href="#terminal-broken-image"/></svg>';var animation_supported=function(){if(typeof document==="undefined"){return false}var e=false,t="Webkit Moz O ms Khtml".split(" "),r=document.createElement("div");if(r.style.animationName){e=true}if(e===false){for(var n=0;n<t.length;n++){var i=t[n]+"AnimationName";if(r.style[i]!==undefined){e=true;break}}}r=null;return e}();var agent=(root.navigator||window.navigator).userAgent;var is_IE=/MSIE|Trident/.test(agent)||/rv:11.0/i.test(agent);var is_IEMobile=/IEMobile/.test(agent);var is_ch_unit_supported=function(){if(is_IE&&!is_IEMobile){return false}if(typeof document==="undefined"){return true}var e=document.createElement("div");e.style.width="1ch";return e.style.width==="1ch"}();var is_css_variables_supported=root.CSS&&root.CSS.supports&&root.CSS.supports("(--fake-var: 0)");var is_android=navigator.userAgent.toLowerCase().indexOf("android")!==-1;var is_key_native=function e(){if(!("KeyboardEvent"in root&&"key"in root.KeyboardEvent.prototype)){return false}var t=root.KeyboardEvent.prototype;var r=Object.getOwnPropertyDescriptor(t,"key").get;return!!r.toString().match(/\[native code\]/)}();var is_browser=function(){try{return this===window}catch(e){return false}}();var is_mobile=function(e){var t=false;if(mobile_re.test(e)||tablet_re.test(e.substr(0,4))){t=true}if(navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1){return true}return t}(navigator.userAgent||navigator.vendor||root.opera);var ch_unit_bug=false;if(is_browser){$(function(){function e(e){return e[0].getBoundingClientRect().width}var t='<span style="font-family: monospace;visibility:hidden;';var r=$(t+'width:1ch;overflow: hidden">&nbsp;</span>');r.appendTo("body");var n=$(t+'">&nbsp;</span>').appendTo("body");ch_unit_bug=Math.abs(e(r)-e(n))>1e-4;r.remove();n.remove()})}function css(t,r,e){if(t instanceof $.fn.init){t.each(function(){css(this,r,e)})}else if($.isPlainObject(r)){Object.keys(r).forEach(function(e){t.style.setProperty(e,r[e])})}else if(typeof e==="undefined"){return t.style.getPropertyValue(r)}else{t.style.setProperty(r,e)}}function style_prop(e,t,r){var n=[e+":"+t+"px",e+":"+"calc("+t+"px / var(--pixel-density, 1))"];if(r){n=n.map(function(e){return e+" !important"})}return n.join(";")}function a11y_hide(e){e.attr({role:"presentation","aria-hidden":"true"})}var excepctions=[];function alert_exception(e,t){if(arguments[0]instanceof $.terminal.Exception){e=arguments[0].type;t=arguments[0]}var r=(e?e+": ":"")+exception_message(t);if(excepctions.indexOf(r)===-1){excepctions.push(r);setTimeout(function(){throw t},0)}}function generate_id(){var e=Math.random()*46656|0;var t=Math.random()*46656|0;e=("000"+e.toString(36)).slice(-3);t=("000"+t.toString(36)).slice(-3);return e+t}function remove(e,t){for(var r in e){if(t(e[r],r)){e.splice(r,1)}}}function scrollbar_event(e,t,r){r=r||1;var n=t.offset().left;var i=t.outerWidth()*r;return i<=e.clientX-n}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 n=[].slice.call(arguments);var i=0;$.extend(this,{get:function(){return n},index:function(){return i},rotate:function(e,t){if(t===undefined){t=i}else if(t===i){return}if(!e){var r=n.filter(function(e){return typeof e!=="undefined"});if(!r.length){return}}if(!n.length){return}if(n.length===1){return n[0]}else{if(i===n.length-1){i=0}else{++i}if(typeof n[i]!=="undefined"){return n[i]}else{return this.rotate(true,t)}}},length:function(){return n.length},remove:function(e){delete n[e]},active:function(e){for(var t=n.length;t--;){if(n[t]===e){i=t;return}}this.append(e);i=n.length-1},front:function(){if(n.length){var e=i;var t=false;while(!n[e]){e++;if(e>n.length){if(t){break}e=0;t=true}}return n[e]}},map:function(r){return n.map(function(e,t){if(typeof e!=="undefined"){return r(e,t)}return null}).filter(Boolean)},forEach:function(r){return n.forEach(function(e,t){if(typeof e!=="undefined"){r(e,t)}})},set:function(e,t){if(!n[e]){n[e]=t;return true}return false},append:function(e){n.push(e)}})}function Stack(e){var t=is_array(e)?e:e?[e]:[];$.extend(this,{data:function(){return t},map:function(e){return $.map(t,e)},size:function(){return t.length},pop:function(){if(t.length===0){return null}else{var e=t[t.length-1];t=t.slice(0,t.length-1);return e}},push:function(e){t=t.concat([e]);return e},top:function(){return t.length>0?t[t.length-1]:null},clone:function(){return new Stack(t.slice(0))}})}function WorkerCache(e){var t=$.extend({validation:$.noop,action:$.noop,onCache:$.noop},e);this._onCache=t.onCache.bind(this);this._action=t.action.bind(this);this._validation=t.validation.bind(this);if("Map"in root){this._cache=new Map}}WorkerCache.prototype.validate=function(e){var t=this._validation(e);var r=t===undefined||t===true;if(!r){this._cache.clear()}return r};WorkerCache.prototype.clear=function(){this._cache.clear()};WorkerCache.prototype.get=function(e){if(!this._cache){return this._action(e)}var t;if(this.validate(e)&&this._cache.has(e)){t=this._cache.get(e);this._onCache({cache:t});return t}t=this._action(e);this._cache.set(e,t);return t};function History(e,t,r){var n=true;var i="";if(typeof e==="string"&&e!==""){i=e+"_"}i+="commands";var a;if(r){a=[]}else{a=$.Storage.get(i);a=a?JSON.parse(a):[]}var u=a.length-1;$.extend(this,{append:function(e){if(n){if(a[a.length-1]!==e){a.push(e);if(t&&a.length>t){a=a.slice(-t)}u=a.length-1;if(!r){$.Storage.set(i,JSON.stringify(a))}}}},set:function(e){if(is_array(e)){a=e;if(!r){$.Storage.set(i,JSON.stringify(a))}}},data:function(){return a},reset:function(){u=a.length-1},last:function(){return a[a.length-1]},end:function(){return u===a.length-1},position:function(){return u},current:function(){return a[u]},next:function(){var e=u;if(u<a.length-1){++u}if(e!==u){return a[u]}},previous:function(){var e=u;if(u>0){--u}if(e!==u){return a[u]}},clear:function(){a=[];this.purge()},enabled:function(){return n},enable:function(){n=true},purge:function(){if(!r){$.Storage.remove(i)}},disable:function(){n=false},toggle:function(e){if(typeof e==="undefined"){n=!n}else{n=e}}})}function OutputLines(e){this._settings=e;this._lines=[];this._snapshot=[]}OutputLines.prototype.make_snapshot=function(e){this._snapshot.push(e)};OutputLines.prototype.get_partial=function(){if(!this._snapshot.length){return[]}var e=this._snapshot[this._snapshot.length-1];return e};OutputLines.prototype.update_snapshot=function(e,t){this._snapshot[e]=t};OutputLines.prototype.limit_snapshot=function(e){this._snapshot=this._snapshot.slice(e)};OutputLines.prototype.clear_snapshot=function(){this._snapshot=[]};OutputLines.prototype.get_snapshot=function(){return this._snapshot.reduce(function(e,t){if(!t){return e}return e.concat(t)},[]).join("\n")};OutputLines.prototype.join=function(){var e=[].slice.call(arguments);if(e.some(is_function)){return function(){return e.reduce(function(e,t){if(is_function(e)){e=e()}if(is_function(t)){t=t()}if(is_promise(e)||is_promise(t)){return $.when(e,t).then(function(e,t){return e+t})}return t})}}else if(e.some(is_promise)){return e.reduce(function(e,t){return $.when(e,t).then(function(e,t){return e+t})})}return e.join("")};OutputLines.prototype.import=function(e){this._lines=e};OutputLines.prototype.push=function(e){var t=e[0];var r=e[1];if(this.has_newline()){this._lines.push(e)}else{var n=this.last_line();n[0]=this.join(n[0],t);n[1].newline=r.newline}};OutputLines.prototype.clear=function(n){this._lines.forEach(function(e,t){var r=e[1];if(is_function(r.onClear)){r.onClear.call(self,n(t))}});this._lines=[];this._snapshot=[]};OutputLines.prototype.data=function(){return this._lines.filter(Boolean)};OutputLines.prototype.has_newline=function(){var e=this.last_line();if(!e){return true}return e[1].newline};OutputLines.prototype.unmount=function(e){var t=e.data("index");var r=this._lines[t];if(r){var n=r[1];if(is_function(n.unmount)){n.unmount.call(self,e)}}};OutputLines.prototype.last_line=function(){var e=this.data();var t=e.length;return e[t-1]};OutputLines.prototype.update=function(e,t,r){if(t===null){delete this._lines[e];delete this._snapshot[e]}else{this._lines[e][0]=t;if(r){this._lines[e][1]=$.extend(this._lines[e][1],r)}return this._lines[e][1]}};OutputLines.prototype.length=function(){return this._lines.length};OutputLines.prototype.valid_index=function(e){return!!this._lines[e]};OutputLines.prototype.render=function(e,t){var r=this._settings();var i=[];this._snapshot=[];if(r.outputLimit>=0){var n;if(r.outputLimit===0){n=e}else{n=r.outputLimit}this._lines.forEach(function(e,t){var r=e[0];var n=e[1];i.push({value:r,index:t,options:n})});var a=i.length-n-1;i=i.slice(a)}else{i=this._lines.map(function(e,t){return{value:e[0],index:t,options:e[1]}})}return t(i)};function FormatBuffer(e){this._options=e;if("Map"in root){this._format_cache=new Map}this._output_buffer=[]}FormatBuffer.NEW_LINE=1;FormatBuffer.prototype.format=function e(t,r,n){var i=this._format_cache&&this._settings.useCache;if(i){var a=JSON.stringify([t,this._settings]);if(this._format_cache.has(a)){return this._format_cache.get(a)}}var u={line:$.terminal.format(t,this._settings),raw:n,newline:r};if(i){this._format_cache.set(a,u)}return u};FormatBuffer.prototype.empty=function(){return!this._output_buffer.length};FormatBuffer.prototype.append=function(e,t,r,n){this._settings=$.extend({useCache:true},this._options(r));this._output_buffer.push(FormatBuffer.NEW_LINE);if(e instanceof Array){for(var i=0,a=e.length;i<a;++i){if(e[i]===""||e[i]==="\r"){this._output_buffer.push({line:"",raw:""})}else{var u=this.format(e[i],i===a-1,n[i]);this._output_buffer.push(u)}}}else if(r.raw){this._output_buffer.push({line:e,raw:n})}else{this._output_buffer.push(this.format(e,false,n))}this._output_buffer.push({finalize:r.finalize,index:t,raw:r.raw,newline:r.newline})};FormatBuffer.prototype.clear_cache=function(){if(this._format_cache){this._format_cache.clear()}};FormatBuffer.prototype.output=function(){return this._output_buffer.slice()};FormatBuffer.prototype.is_empty=function(){return!this._output_buffer.length};FormatBuffer.prototype.clear=function(){this._output_buffer=[]};FormatBuffer.prototype.sort=function(){var e=[];var t=[];for(var r=0;r<this._output_buffer.length;r++){var n=this._output_buffer[r];e.push(n);if(n!==FormatBuffer.NEW_LINE&&"index"in n){t.push(e);e=[]}}if(t.length===1){return}t.sort(function(e,t){return e[2].index-t[2].index});this._output_buffer=[];t.forEach(function(e){this._output_buffer=this._output_buffer.concat(e)},this)};FormatBuffer.prototype.forEach=function(e){var t=0;while(t<this._output_buffer.length){var r=this._output_buffer[t++];if(r===FormatBuffer.NEW_LINE){e()}else{e(r)}}};FormatBuffer.prototype.flush=function(e){this.forEach(e);this.clear()};function with_prompt(e,r,t){function n(e){var t=$.terminal.escape_brackets("[ERR]> ");r("[[;red;]"+t+"]");alert_exception("Prompt",e)}function i(e){r(e);a.resolve()}var a=new $.Deferred;switch(typeof e){case"string":i(e);break;case"function":try{var u=e.call(t,function(e){i(e)});if(typeof u==="string"){i(u)}if(u&&u.then){u.then(i).catch(n)}}catch(e){n(e)}break}return a.promise()}var cmd_index=0;$.cmd={defaults:{mask:false,caseSensitiveSearch:true,historySize:60,prompt:"> ",enabled:true,history:true,onPositionChange:$.noop,onCommandChange:$.noop,inputStyle:"textarea",mobileDelete:is_mobile,onPaste:$.noop,clickTimeout:200,holdTimeout:400,holdRepeatTimeout:200,mobileIgnoreAutoSpace:[",",".",")"],repeatTimeoutKeys:[],tabindex:1,tabs:4}};$.fn.cmd=function(z){var x=$.extend({},$.cmd.defaults,z);function I(e){return x.mobileIgnoreAutoSpace.length&&x.mobileIgnoreAutoSpace.indexOf(e)!==-1&&is_android}var k=this;var P=k.data("cmd");if(P){return P}var N=cmd_index++;k.addClass("cmd");var A=$('<div class="cmd-wrapper"/>').appendTo(k);A.append('<span class="cmd-prompt"></span>');A.append('<div class="cmd-cursor-line">'+"<span></span>"+'<span class="cmd-cursor">'+'<span data-text class="end"><span>&nbsp;</span></span>'+"</span>"+"<span></span>"+"</div>");var M=A.find(".cmd-cursor-line");a11y_hide(M);var B;if(is_mobile){B=function(){var t=$('<div class="cmd-editable" contenteditable/>').attr({autocapitalize:"off",autocorrect:"off",autocomplete:"new-password",spellcheck:"false",tabindex:x.tabindex}).insertAfter(k);t.on("focus",function(){k.enable()}).on("blur",function(){k.disable()});var e;var r={$node:t,val:function(e){if(typeof e==="undefined"){return t.text()}else{t.html(e)}},reset:function(){clearTimeout(e);e=setTimeout(function(){t.css({top:"",bottom:""})},100)},focus:function(){css(t[0],{top:"calc(var(--terminal-scroll, 0) * 1px)"});r.reset()},blur:function(){t.css({top:"100%",bottom:0}).blur();window.getSelection().removeAllRanges();r.reset()}};return r}();k.addClass("cmd-mobile")}else{B=function(){var e=generate_id();var t=$("<textarea>").attr({autocapitalize:"off",spellcheck:"false",id:e,tabindex:x.tabindex}).addClass("cmd-clipboard").appendTo(k);t.before('<label class="visually-hidden" for="'+e+'">'+"Clipboard textarea for jQuery Terminal</label>");return{$node:t,val:function(e){if(typeof e==="undefined"){return t.val()}else{return t.val(e)}}}}();B.val(" ")}if(x.width){k.width(x.width)}var m;var D;var H;var W;var q;var o=0;var d;var h=k.find(".cmd-prompt");var s=false;var l="";var U=null;var K;var T="";var J;var a="";var S=0;var n;var f;var R=0;var Q,c;var v=k.find(".cmd-cursor");var t;var Y;var V=0;var G="￿";var X=/\uFFFF$/;var Z=/^\uFFFF$/;function ee(e){var t=$(e.target);if(t.is("span,img,a")){t=t.closest("[data-text]");return t.index()+t.parent("span").prevAll().find("[data-text]").length+t.closest('[role="presentation"]').prevUntil(".cmd-prompt").find("[data-text]").length}else if(t.is('div[role="presentation"]')){var r=!t.next().length;return t.find("[data-text]").length+t.prevUntil(".cmd-prompt").find("[data-text]").length-(r?0:1)}}var te={SPACEBAR:" ",UP:"ArrowUP",DOWN:"ArrowDown",LEFT:"ArrowLeft",RIGHT:"ArrowRight",DEL:"Delete",MULTIPLY:"*",DIVIDE:"/",SUBTRACT:"-",ADD:"+"};function re(e){var t=e.key.toUpperCase();if(te[t]){return te[t]}return t}function ne(e){if(e.key){var t=re(e).toUpperCase();if(t==="CONTROL"){return"CTRL"}else{var r=[];if(e.ctrlKey){r.push("CTRL")}if(e.metaKey&&t!=="META"){r.push("META")}if(e.shiftKey&&t!=="SHIFT"){r.push("SHIFT")}if(e.altKey&&t!=="ALT"){r.push("ALT")}if(r.length&&t===" "){t="SPACEBAR"}if(e.key){r.push(t)}return r.join("+")}}}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"};var r;for(r=1;r<25;r++){e[111+r]="F"+r}var ie="";for(r=65;r<91;r++){ie=String.fromCharCode(r);e[r]=[ie.toLowerCase(),ie.toUpperCase()]}var ae={};Object.keys(e).forEach(function(t){if(is_array(e[t])){e[t].forEach(function(e){ae[e.toUpperCase()]=t})}else{ae[e[t].toUpperCase()]=t}});var p;var i={"ALT+D":ue({clipboard:true}),"HOLD+ALT+D":ue({clipboard:true,hold:true}),"HOLD+DELETE":ue({clipboard:false,hold:true}),"HOLD+SHIFT+DELETE":ue({clipboard:false,hold:true}),ENTER:function(){if(c&&T&&!x.mask&&(is_function(x.historyFilter)&&x.historyFilter(T)||x.historyFilter instanceof RegExp&&T.match(x.historyFilter)||!x.historyFilter)){c.append(T)}var e=T;if(!is_mobile){B.$node.blur()}c.reset();k.set("");B.val("");Xe="";w=true;var t;if(x.commands){t=x.commands.call(k,e)}if(is_function(n)){if(t&&is_function(t.then)){t.then(function(){b()})}else{b()}}if(!is_mobile){B.$node.focus()}return false},"SHIFT+ENTER":function(){k.insert("\n");return true},BACKSPACE:ve,"SHIFT+BACKSPACE":ve,TAB:function(){k.insert("\t")},"CTRL+D":function(){k["delete"](1);return false},DELETE:function(){k["delete"](1);return true},"HOLD+ARROWUP":de,ARROWUP:de,"CTRL+ARROWUP":fe,"CTRL+P":fe,ARROWDOWN:he,"HOLD+ARROWDOWN":he,"CTRL+N":ce,"CTRL+ARROWDOWN":ce,ARROWLEFT:ge,"HOLD+ARROWLEFT":debounce(ge,10),"CTRL+B":ge,"CTRL+ARROWLEFT":function(){var e=S-1;var t=0;if(T[e]===" "){--e}for(var r=e;r>0;--r){if(T[r]===" "&&T[r+1]!==" "){t=r+1;break}else if(T[r]==="\n"&&T[r+1]!=="\n"){t=r;break}}k.position(t)},"CTRL+R":function(){if(s){$e(true)}else{K=n;_();J=T;k.set("");y();s=true}return false},"CTRL+G":function(){if(s){n=K;b();k.set(J);y();s=false;l="";return false}},ARROWRIGHT:_e,"HOLD+ARROWRIGHT":debounce(_e,10),"CTRL+F":_e,"CTRL+ARROWRIGHT":function(){if(T[S]===" "){++S}var e=/\S[\n\s]{2,}|[\n\s]+\S?/;var t=T.slice(S).match(e);if(!t||t[0].match(/^\s+$/)){k.position(bare_text(T).length)}else if(t[0][0]!==" "){S+=t.index+1}else{S+=t.index+t[0].length-1;if(t[0][t[0].length-1]!==" "){--S}}y()},F12:u,END:be(true),"CTRL+END":be(),"CTRL+E":be(),HOME:ye(true),"CTRL+HOME":ye(),"CTRL+A":ye(),"SHIFT+INSERT":se,"CTRL+SHIFT+T":u,"CTRL+W":oe({clipboard:true,hold:false}),"CTRL+BACKSPACE":oe({clipboard:true,hold:false}),"HOLD+BACKSPACE":oe({clipboard:false,hold:true}),"HOLD+SHIFT+BACKSPAC