Current Path : /home/church/www/ntktesting.com/wp-content/plugins/ninja-forms/assets/js/min/ |
Current File : /home/church/www/ntktesting.com/wp-content/plugins/ninja-forms/assets/js/min/front-end--rte.min.js |
if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){"use strict";var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher")}(jQuery),+function(t){"use strict";function e(){var t=document.createElement("bootstrap"),e={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var i in e)if(void 0!==t.style[i])return{end:e[i]};return!1}t.fn.emulateTransitionEnd=function(e){var i=!1,o=this;t(this).one("bsTransitionEnd",function(){i=!0});var n=function(){i||t(o).trigger(t.support.transition.end)};return setTimeout(n,e),this},t(function(){t.support.transition=e(),t.support.transition&&(t.event.special.bsTransitionEnd={bindType:t.support.transition.end,delegateType:t.support.transition.end,handle:function(e){return t(e.target).is(this)?e.handleObj.handler.apply(this,arguments):void 0}})})}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.alert");n||i.data("bs.alert",n=new o(this)),"string"==typeof e&&n[e].call(i)})}var i='[data-dismiss="alert"]',o=function(e){t(e).on("click",i,this.close)};o.VERSION="3.3.5",o.TRANSITION_DURATION=150,o.prototype.close=function(e){function i(){a.detach().trigger("closed.bs.alert").remove()}var n=t(this),s=n.attr("data-target");s||(s=n.attr("href"),s=s&&s.replace(/.*(?=#[^\s]*$)/,""));var a=t(s);e&&e.preventDefault(),a.length||(a=n.closest(".alert")),a.trigger(e=t.Event("close.bs.alert")),e.isDefaultPrevented()||(a.removeClass("in"),t.support.transition&&a.hasClass("fade")?a.one("bsTransitionEnd",i).emulateTransitionEnd(o.TRANSITION_DURATION):i())};var n=t.fn.alert;t.fn.alert=e,t.fn.alert.Constructor=o,t.fn.alert.noConflict=function(){return t.fn.alert=n,this},t(document).on("click.bs.alert.data-api",i,o.prototype.close)}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.button"),s="object"==typeof e&&e;n||o.data("bs.button",n=new i(this,s)),"toggle"==e?n.toggle():e&&n.setState(e)})}var i=function(e,o){this.$element=t(e),this.options=t.extend({},i.DEFAULTS,o),this.isLoading=!1};i.VERSION="3.3.5",i.DEFAULTS={loadingText:"loading..."},i.prototype.setState=function(e){var i="disabled",o=this.$element,n=o.is("input")?"val":"html",s=o.data();e+="Text",null==s.resetText&&o.data("resetText",o[n]()),setTimeout(t.proxy(function(){o[n](null==s[e]?this.options[e]:s[e]),"loadingText"==e?(this.isLoading=!0,o.addClass(i).attr(i,i)):this.isLoading&&(this.isLoading=!1,o.removeClass(i).removeAttr(i))},this),0)},i.prototype.toggle=function(){var t=!0,e=this.$element.closest('[data-toggle="buttons"]');if(e.length){var i=this.$element.find("input");"radio"==i.prop("type")?(i.prop("checked")&&(t=!1),e.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==i.prop("type")&&(i.prop("checked")!==this.$element.hasClass("active")&&(t=!1),this.$element.toggleClass("active")),i.prop("checked",this.$element.hasClass("active")),t&&i.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var o=t.fn.button;t.fn.button=e,t.fn.button.Constructor=i,t.fn.button.noConflict=function(){return t.fn.button=o,this},t(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(i){var o=t(i.target);o.hasClass("btn")||(o=o.closest(".btn")),e.call(o,"toggle"),t(i.target).is('input[type="radio"]')||t(i.target).is('input[type="checkbox"]')||i.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(e){t(e.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(e.type))})}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.carousel"),s=t.extend({},i.DEFAULTS,o.data(),"object"==typeof e&&e),a="string"==typeof e?e:s.slide;n||o.data("bs.carousel",n=new i(this,s)),"number"==typeof e?n.to(e):a?n[a]():s.interval&&n.pause().cycle()})}var i=function(e,i){this.$element=t(e),this.$indicators=this.$element.find(".carousel-indicators"),this.options=i,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",t.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",t.proxy(this.pause,this)).on("mouseleave.bs.carousel",t.proxy(this.cycle,this))};i.VERSION="3.3.5",i.TRANSITION_DURATION=600,i.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},i.prototype.keydown=function(t){if(!/input|textarea/i.test(t.target.tagName)){switch(t.which){case 37:this.prev();break;case 39:this.next();break;default:return}t.preventDefault()}},i.prototype.cycle=function(e){return e||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(t.proxy(this.next,this),this.options.interval)),this},i.prototype.getItemIndex=function(t){return this.$items=t.parent().children(".item"),this.$items.index(t||this.$active)},i.prototype.getItemForDirection=function(t,e){var i=this.getItemIndex(e),o="prev"==t&&0===i||"next"==t&&i==this.$items.length-1;if(o&&!this.options.wrap)return e;var n="prev"==t?-1:1,s=(i+n)%this.$items.length;return this.$items.eq(s)},i.prototype.to=function(t){var e=this,i=this.getItemIndex(this.$active=this.$element.find(".item.active"));return t>this.$items.length-1||0>t?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){e.to(t)}):i==t?this.pause().cycle():this.slide(t>i?"next":"prev",this.$items.eq(t))},i.prototype.pause=function(e){return e||(this.paused=!0),this.$element.find(".next, .prev").length&&t.support.transition&&(this.$element.trigger(t.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},i.prototype.next=function(){return this.sliding?void 0:this.slide("next")},i.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},i.prototype.slide=function(e,o){var n=this.$element.find(".item.active"),s=o||this.getItemForDirection(e,n),a=this.interval,r="next"==e?"left":"right",l=this;if(s.hasClass("active"))return this.sliding=!1;var h=s[0],d=t.Event("slide.bs.carousel",{relatedTarget:h,direction:r});if(this.$element.trigger(d),!d.isDefaultPrevented()){if(this.sliding=!0,a&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var p=t(this.$indicators.children()[this.getItemIndex(s)]);p&&p.addClass("active")}var c=t.Event("slid.bs.carousel",{relatedTarget:h,direction:r});return t.support.transition&&this.$element.hasClass("slide")?(s.addClass(e),s[0].offsetWidth,n.addClass(r),s.addClass(r),n.one("bsTransitionEnd",function(){s.removeClass([e,r].join(" ")).addClass("active"),n.removeClass(["active",r].join(" ")),l.sliding=!1,setTimeout(function(){l.$element.trigger(c)},0)}).emulateTransitionEnd(i.TRANSITION_DURATION)):(n.removeClass("active"),s.addClass("active"),this.sliding=!1,this.$element.trigger(c)),a&&this.cycle(),this}};var o=t.fn.carousel;t.fn.carousel=e,t.fn.carousel.Constructor=i,t.fn.carousel.noConflict=function(){return t.fn.carousel=o,this};var n=function(i){var o,n=t(this),s=t(n.attr("data-target")||(o=n.attr("href"))&&o.replace(/.*(?=#[^\s]+$)/,""));if(s.hasClass("carousel")){var a=t.extend({},s.data(),n.data()),r=n.attr("data-slide-to");r&&(a.interval=!1),e.call(s,a),r&&s.data("bs.carousel").to(r),i.preventDefault()}};t(document).on("click.bs.carousel.data-api","[data-slide]",n).on("click.bs.carousel.data-api","[data-slide-to]",n),t(window).on("load",function(){t('[data-ride="carousel"]').each(function(){var i=t(this);e.call(i,i.data())})})}(jQuery),+function(t){"use strict";function e(e){var i,o=e.attr("data-target")||(i=e.attr("href"))&&i.replace(/.*(?=#[^\s]+$)/,"");return t(o)}function i(e){return this.each(function(){var i=t(this),n=i.data("bs.collapse"),s=t.extend({},o.DEFAULTS,i.data(),"object"==typeof e&&e);!n&&s.toggle&&/show|hide/.test(e)&&(s.toggle=!1),n||i.data("bs.collapse",n=new o(this,s)),"string"==typeof e&&n[e]()})}var o=function(e,i){this.$element=t(e),this.options=t.extend({},o.DEFAULTS,i),this.$trigger=t('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};o.VERSION="3.3.5",o.TRANSITION_DURATION=350,o.DEFAULTS={toggle:!0},o.prototype.dimension=function(){var t=this.$element.hasClass("width");return t?"width":"height"},o.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var e,n=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(n&&n.length&&(e=n.data("bs.collapse"),e&&e.transitioning))){var s=t.Event("show.bs.collapse");if(this.$element.trigger(s),!s.isDefaultPrevented()){n&&n.length&&(i.call(n,"hide"),e||n.data("bs.collapse",null));var a=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[a](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var r=function(){this.$element.removeClass("collapsing").addClass("collapse in")[a](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!t.support.transition)return r.call(this);var l=t.camelCase(["scroll",a].join("-"));this.$element.one("bsTransitionEnd",t.proxy(r,this)).emulateTransitionEnd(o.TRANSITION_DURATION)[a](this.$element[0][l])}}}},o.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var e=t.Event("hide.bs.collapse");if(this.$element.trigger(e),!e.isDefaultPrevented()){var i=this.dimension();this.$element[i](this.$element[i]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var n=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return t.support.transition?void this.$element[i](0).one("bsTransitionEnd",t.proxy(n,this)).emulateTransitionEnd(o.TRANSITION_DURATION):n.call(this)}}},o.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},o.prototype.getParent=function(){return t(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(t.proxy(function(i,o){var n=t(o);this.addAriaAndCollapsedClass(e(n),n)},this)).end()},o.prototype.addAriaAndCollapsedClass=function(t,e){var i=t.hasClass("in");t.attr("aria-expanded",i),e.toggleClass("collapsed",!i).attr("aria-expanded",i)};var n=t.fn.collapse;t.fn.collapse=i,t.fn.collapse.Constructor=o,t.fn.collapse.noConflict=function(){return t.fn.collapse=n,this},t(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(o){var n=t(this);n.attr("data-target")||o.preventDefault();var s=e(n),a=s.data("bs.collapse"),r=a?"toggle":n.data();i.call(s,r)})}(jQuery),+function(t){"use strict";function e(e){var i=e.attr("data-target");i||(i=e.attr("href"),i=i&&/#[A-Za-z]/.test(i)&&i.replace(/.*(?=#[^\s]*$)/,""));var o=i&&t(i);return o&&o.length?o:e.parent()}function i(i){i&&3===i.which||(t(n).remove(),t(s).each(function(){var o=t(this),n=e(o),s={relatedTarget:this};n.hasClass("open")&&(i&&"click"==i.type&&/input|textarea/i.test(i.target.tagName)&&t.contains(n[0],i.target)||(n.trigger(i=t.Event("hide.bs.dropdown",s)),i.isDefaultPrevented()||(o.attr("aria-expanded","false"),n.removeClass("open").trigger("hidden.bs.dropdown",s))))}))}function o(e){return this.each(function(){var i=t(this),o=i.data("bs.dropdown");o||i.data("bs.dropdown",o=new a(this)),"string"==typeof e&&o[e].call(i)})}var n=".dropdown-backdrop",s='[data-toggle="dropdown"]',a=function(e){t(e).on("click.bs.dropdown",this.toggle)};a.VERSION="3.3.5",a.prototype.toggle=function(o){var n=t(this);if(!n.is(".disabled, :disabled")){var s=e(n),a=s.hasClass("open");if(i(),!a){"ontouchstart"in document.documentElement&&!s.closest(".navbar-nav").length&&t(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(t(this)).on("click",i);var r={relatedTarget:this};if(s.trigger(o=t.Event("show.bs.dropdown",r)),o.isDefaultPrevented())return;n.trigger("focus").attr("aria-expanded","true"),s.toggleClass("open").trigger("shown.bs.dropdown",r)}return!1}},a.prototype.keydown=function(i){if(/(38|40|27|32)/.test(i.which)&&!/input|textarea/i.test(i.target.tagName)){var o=t(this);if(i.preventDefault(),i.stopPropagation(),!o.is(".disabled, :disabled")){var n=e(o),a=n.hasClass("open");if(!a&&27!=i.which||a&&27==i.which)return 27==i.which&&n.find(s).trigger("focus"),o.trigger("click");var r=" li:not(.disabled):visible a",l=n.find(".dropdown-menu"+r);if(l.length){var h=l.index(i.target);38==i.which&&h>0&&h--,40==i.which&&h<l.length-1&&h++,~h||(h=0),l.eq(h).trigger("focus")}}}};var r=t.fn.dropdown;t.fn.dropdown=o,t.fn.dropdown.Constructor=a,t.fn.dropdown.noConflict=function(){return t.fn.dropdown=r,this},t(document).on("click.bs.dropdown.data-api",i).on("click.bs.dropdown.data-api",".dropdown form",function(t){t.stopPropagation()}).on("click.bs.dropdown.data-api",s,a.prototype.toggle).on("keydown.bs.dropdown.data-api",s,a.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",a.prototype.keydown)}(jQuery),+function(t){"use strict";function e(e,o){return this.each(function(){var n=t(this),s=n.data("bs.modal"),a=t.extend({},i.DEFAULTS,n.data(),"object"==typeof e&&e);s||n.data("bs.modal",s=new i(this,a)),"string"==typeof e?s[e](o):a.show&&s.show(o)})}var i=function(e,i){this.options=i,this.$body=t(document.body),this.$element=t(e),this.$dialog=this.$element.find(".modal-dialog"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,t.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};i.VERSION="3.3.5",i.TRANSITION_DURATION=300,i.BACKDROP_TRANSITION_DURATION=150,i.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},i.prototype.toggle=function(t){return this.isShown?this.hide():this.show(t)},i.prototype.show=function(e){var o=this,n=t.Event("show.bs.modal",{relatedTarget:e});this.$element.trigger(n),this.isShown||n.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',t.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){o.$element.one("mouseup.dismiss.bs.modal",function(e){t(e.target).is(o.$element)&&(o.ignoreBackdropClick=!0)})}),this.backdrop(function(){var n=t.support.transition&&o.$element.hasClass("fade");o.$element.parent().length||o.$element.appendTo(o.$body),o.$element.show().scrollTop(0),o.adjustDialog(),n&&o.$element[0].offsetWidth,o.$element.addClass("in"),o.enforceFocus();var s=t.Event("shown.bs.modal",{relatedTarget:e});n?o.$dialog.one("bsTransitionEnd",function(){o.$element.trigger("focus").trigger(s)}).emulateTransitionEnd(i.TRANSITION_DURATION):o.$element.trigger("focus").trigger(s)}))},i.prototype.hide=function(e){e&&e.preventDefault(),e=t.Event("hide.bs.modal"),this.$element.trigger(e),this.isShown&&!e.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),t(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),t.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",t.proxy(this.hideModal,this)).emulateTransitionEnd(i.TRANSITION_DURATION):this.hideModal())},i.prototype.enforceFocus=function(){t(document).off("focusin.bs.modal").on("focusin.bs.modal",t.proxy(function(t){this.$element[0]===t.target||this.$element.has(t.target).length||this.$element.trigger("focus")},this))},i.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",t.proxy(function(t){27==t.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")},i.prototype.resize=function(){this.isShown?t(window).on("resize.bs.modal",t.proxy(this.handleUpdate,this)):t(window).off("resize.bs.modal")},i.prototype.hideModal=function(){var t=this;this.$element.hide(),this.backdrop(function(){t.$body.removeClass("modal-open"),t.resetAdjustments(),t.resetScrollbar(),t.$element.trigger("hidden.bs.modal")})},i.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},i.prototype.backdrop=function(e){var o=this,n=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var s=t.support.transition&&n;if(this.$backdrop=t(document.createElement("div")).addClass("modal-backdrop "+n).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",t.proxy(function(t){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(t.target===t.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),s&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!e)return;s?this.$backdrop.one("bsTransitionEnd",e).emulateTransitionEnd(i.BACKDROP_TRANSITION_DURATION):e()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var a=function(){o.removeBackdrop(),e&&e()};t.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",a).emulateTransitionEnd(i.BACKDROP_TRANSITION_DURATION):a()}else e&&e()},i.prototype.handleUpdate=function(){this.adjustDialog()},i.prototype.adjustDialog=function(){var t=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&t?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!t?this.scrollbarWidth:""})},i.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},i.prototype.checkScrollbar=function(){var t=window.innerWidth;if(!t){var e=document.documentElement.getBoundingClientRect();t=e.right-Math.abs(e.left)}this.bodyIsOverflowing=document.body.clientWidth<t,this.scrollbarWidth=this.measureScrollbar()},i.prototype.setScrollbar=function(){var t=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"",this.bodyIsOverflowing&&this.$body.css("padding-right",t+this.scrollbarWidth)},i.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)},i.prototype.measureScrollbar=function(){var t=document.createElement("div");t.className="modal-scrollbar-measure",this.$body.append(t);var e=t.offsetWidth-t.clientWidth;return this.$body[0].removeChild(t),e};var o=t.fn.modal;t.fn.modal=e,t.fn.modal.Constructor=i,t.fn.modal.noConflict=function(){return t.fn.modal=o,this},t(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(i){var o=t(this),n=o.attr("href"),s=t(o.attr("data-target")||n&&n.replace(/.*(?=#[^\s]+$)/,"")),a=s.data("bs.modal")?"toggle":t.extend({remote:!/#/.test(n)&&n},s.data(),o.data());o.is("a")&&i.preventDefault(),s.one("show.bs.modal",function(t){t.isDefaultPrevented()||s.one("hidden.bs.modal",function(){o.is(":visible")&&o.trigger("focus")})}),e.call(s,a,this)})}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.tooltip"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||o.data("bs.tooltip",n=new i(this,s)),"string"==typeof e&&n[e]())})}var i=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",t,e)};i.VERSION="3.3.5",i.TRANSITION_DURATION=150,i.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},i.prototype.init=function(e,i,o){if(this.enabled=!0,this.type=e,this.$element=t(i),this.options=this.getOptions(o),this.$viewport=this.options.viewport&&t(t.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var n=this.options.trigger.split(" "),s=n.length;s--;){var a=n[s];if("click"==a)this.$element.on("click."+this.type,this.options.selector,t.proxy(this.toggle,this));else if("manual"!=a){var r="hover"==a?"mouseenter":"focusin",l="hover"==a?"mouseleave":"focusout";this.$element.on(r+"."+this.type,this.options.selector,t.proxy(this.enter,this)),this.$element.on(l+"."+this.type,this.options.selector,t.proxy(this.leave,this))}}this.options.selector?this._options=t.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},i.prototype.getDefaults=function(){return i.DEFAULTS},i.prototype.getOptions=function(e){return e=t.extend({},this.getDefaults(),this.$element.data(),e),e.delay&&"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),e},i.prototype.getDelegateOptions=function(){var e={},i=this.getDefaults();return this._options&&t.each(this._options,function(t,o){i[t]!=o&&(e[t]=o)}),e},i.prototype.enter=function(e){var i=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return i||(i=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,i)),e instanceof t.Event&&(i.inState["focusin"==e.type?"focus":"hover"]=!0),i.tip().hasClass("in")||"in"==i.hoverState?void(i.hoverState="in"):(clearTimeout(i.timeout),i.hoverState="in",i.options.delay&&i.options.delay.show?void(i.timeout=setTimeout(function(){"in"==i.hoverState&&i.show()},i.options.delay.show)):i.show())},i.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},i.prototype.leave=function(e){var i=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return i||(i=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,i)),e instanceof t.Event&&(i.inState["focusout"==e.type?"focus":"hover"]=!1),i.isInStateTrue()?void 0:(clearTimeout(i.timeout),i.hoverState="out",i.options.delay&&i.options.delay.hide?void(i.timeout=setTimeout(function(){"out"==i.hoverState&&i.hide()},i.options.delay.hide)):i.hide())},i.prototype.show=function(){var e=t.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(e);var o=t.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(e.isDefaultPrevented()||!o)return;var n=this,s=this.tip(),a=this.getUID(this.type);this.setContent(),s.attr("id",a),this.$element.attr("aria-describedby",a),this.options.animation&&s.addClass("fade");var r="function"==typeof this.options.placement?this.options.placement.call(this,s[0],this.$element[0]):this.options.placement,l=/\s?auto?\s?/i,h=l.test(r);h&&(r=r.replace(l,"")||"top"),s.detach().css({top:0,left:0,display:"block"}).addClass(r).data("bs."+this.type,this),this.options.container?s.appendTo(this.options.container):s.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var d=this.getPosition(),p=s[0].offsetWidth,c=s[0].offsetHeight;if(h){var f=r,u=this.getPosition(this.$viewport);r="bottom"==r&&d.bottom+c>u.bottom?"top":"top"==r&&d.top-c<u.top?"bottom":"right"==r&&d.right+p>u.width?"left":"left"==r&&d.left-p<u.left?"right":r,s.removeClass(f).addClass(r)}var g=this.getCalculatedOffset(r,d,p,c);this.applyPlacement(g,r);var m=function(){var t=n.hoverState;n.$element.trigger("shown.bs."+n.type),n.hoverState=null,"out"==t&&n.leave(n)};t.support.transition&&this.$tip.hasClass("fade")?s.one("bsTransitionEnd",m).emulateTransitionEnd(i.TRANSITION_DURATION):m()}},i.prototype.applyPlacement=function(e,i){var o=this.tip(),n=o[0].offsetWidth,s=o[0].offsetHeight,a=parseInt(o.css("margin-top"),10),r=parseInt(o.css("margin-left"),10);isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.top+=a,e.left+=r,t.offset.setOffset(o[0],t.extend({using:function(t){o.css({top:Math.round(t.top),left:Math.round(t.left)})}},e),0),o.addClass("in");var l=o[0].offsetWidth,h=o[0].offsetHeight;"top"==i&&h!=s&&(e.top=e.top+s-h);var d=this.getViewportAdjustedDelta(i,e,l,h);d.left?e.left+=d.left:e.top+=d.top;var p=/top|bottom/.test(i),c=p?2*d.left-n+l:2*d.top-s+h,f=p?"offsetWidth":"offsetHeight";o.offset(e),this.replaceArrow(c,o[0][f],p)},i.prototype.replaceArrow=function(t,e,i){this.arrow().css(i?"left":"top",50*(1-t/e)+"%").css(i?"top":"left","")},i.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(".tooltip-inner")[this.options.html?"html":"text"](e),t.removeClass("fade in top bottom left right")},i.prototype.hide=function(e){function o(){"in"!=n.hoverState&&s.detach(),n.$element.removeAttr("aria-describedby").trigger("hidden.bs."+n.type),e&&e()}var n=this,s=t(this.$tip),a=t.Event("hide.bs."+this.type);return this.$element.trigger(a),a.isDefaultPrevented()?void 0:(s.removeClass("in"),t.support.transition&&s.hasClass("fade")?s.one("bsTransitionEnd",o).emulateTransitionEnd(i.TRANSITION_DURATION):o(),this.hoverState=null,this)},i.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},i.prototype.hasContent=function(){return this.getTitle()},i.prototype.getPosition=function(e){e=e||this.$element;var i=e[0],o="BODY"==i.tagName,n=i.getBoundingClientRect();null==n.width&&(n=t.extend({},n,{width:n.right-n.left,height:n.bottom-n.top}));var s=o?{top:0,left:0}:e.offset(),a={scroll:o?document.documentElement.scrollTop||document.body.scrollTop:e.scrollTop()},r=o?{width:t(window).width(),height:t(window).height()}:null;return t.extend({},n,a,r,s)},i.prototype.getCalculatedOffset=function(t,e,i,o){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-i/2}:"top"==t?{top:e.top-o,left:e.left+e.width/2-i/2}:"left"==t?{top:e.top+e.height/2-o/2,left:e.left-i}:{top:e.top+e.height/2-o/2,left:e.left+e.width}},i.prototype.getViewportAdjustedDelta=function(t,e,i,o){var n={top:0,left:0};if(!this.$viewport)return n;var s=this.options.viewport&&this.options.viewport.padding||0,a=this.getPosition(this.$viewport);if(/right|left/.test(t)){var r=e.top-s-a.scroll,l=e.top+s-a.scroll+o;r<a.top?n.top=a.top-r:l>a.top+a.height&&(n.top=a.top+a.height-l)}else{var h=e.left-s,d=e.left+s+i;h<a.left?n.left=a.left-h:d>a.right&&(n.left=a.left+a.width-d)}return n},i.prototype.getTitle=function(){var t,e=this.$element,i=this.options;return t=e.attr("data-original-title")||("function"==typeof i.title?i.title.call(e[0]):i.title)},i.prototype.getUID=function(t){do t+=~~(1e6*Math.random());while(document.getElementById(t));return t},i.prototype.tip=function(){if(!this.$tip&&(this.$tip=t(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},i.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},i.prototype.enable=function(){this.enabled=!0},i.prototype.disable=function(){this.enabled=!1},i.prototype.toggleEnabled=function(){this.enabled=!this.enabled},i.prototype.toggle=function(e){var i=this;e&&(i=t(e.currentTarget).data("bs."+this.type),i||(i=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,i))),e?(i.inState.click=!i.inState.click,i.isInStateTrue()?i.enter(i):i.leave(i)):i.tip().hasClass("in")?i.leave(i):i.enter(i)},i.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off("."+t.type).removeData("bs."+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null})};var o=t.fn.tooltip;t.fn.tooltip=e,t.fn.tooltip.Constructor=i,t.fn.tooltip.noConflict=function(){return t.fn.tooltip=o,this}}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.popover"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||o.data("bs.popover",n=new i(this,s)),"string"==typeof e&&n[e]())})}var i=function(t,e){this.init("popover",t,e)};if(!t.fn.tooltip)throw new Error("Popover requires tooltip.js");i.VERSION="3.3.5",i.DEFAULTS=t.extend({},t.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),i.prototype=t.extend({},t.fn.tooltip.Constructor.prototype),i.prototype.constructor=i,i.prototype.getDefaults=function(){return i.DEFAULTS},i.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),i=this.getContent();t.find(".popover-title")[this.options.html?"html":"text"](e),t.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof i?"html":"append":"text"](i),t.removeClass("fade top bottom left right in"),t.find(".popover-title").html()||t.find(".popover-title").hide()},i.prototype.hasContent=function(){return this.getTitle()||this.getContent()},i.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr("data-content")||("function"==typeof e.content?e.content.call(t[0]):e.content)},i.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var o=t.fn.popover;t.fn.popover=e,t.fn.popover.Constructor=i,t.fn.popover.noConflict=function(){return t.fn.popover=o,this}}(jQuery),+function(t){"use strict";function e(i,o){this.$body=t(document.body),this.$scrollElement=t(t(i).is(document.body)?window:i),this.options=t.extend({},e.DEFAULTS,o),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",t.proxy(this.process,this)),this.refresh(),this.process()}function i(i){return this.each(function(){var o=t(this),n=o.data("bs.scrollspy"),s="object"==typeof i&&i;n||o.data("bs.scrollspy",n=new e(this,s)),"string"==typeof i&&n[i]()})}e.VERSION="3.3.5",e.DEFAULTS={offset:10},e.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},e.prototype.refresh=function(){var e=this,i="offset",o=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),t.isWindow(this.$scrollElement[0])||(i="position",o=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var e=t(this),n=e.data("target")||e.attr("href"),s=/^#./.test(n)&&t(n);return s&&s.length&&s.is(":visible")&&[[s[i]().top+o,n]]||null}).sort(function(t,e){return t[0]-e[0]}).each(function(){e.offsets.push(this[0]),e.targets.push(this[1])})},e.prototype.process=function(){var t,e=this.$scrollElement.scrollTop()+this.options.offset,i=this.getScrollHeight(),o=this.options.offset+i-this.$scrollElement.height(),n=this.offsets,s=this.targets,a=this.activeTarget;if(this.scrollHeight!=i&&this.refresh(),e>=o)return a!=(t=s[s.length-1])&&this.activate(t);if(a&&e<n[0])return this.activeTarget=null,this.clear();for(t=n.length;t--;)a!=s[t]&&e>=n[t]&&(void 0===n[t+1]||e<n[t+1])&&this.activate(s[t])},e.prototype.activate=function(e){this.activeTarget=e,this.clear();var i=this.selector+'[data-target="'+e+'"],'+this.selector+'[href="'+e+'"]',o=t(i).parents("li").addClass("active");o.parent(".dropdown-menu").length&&(o=o.closest("li.dropdown").addClass("active")), o.trigger("activate.bs.scrollspy")},e.prototype.clear=function(){t(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var o=t.fn.scrollspy;t.fn.scrollspy=i,t.fn.scrollspy.Constructor=e,t.fn.scrollspy.noConflict=function(){return t.fn.scrollspy=o,this},t(window).on("load.bs.scrollspy.data-api",function(){t('[data-spy="scroll"]').each(function(){var e=t(this);i.call(e,e.data())})})}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.tab");n||o.data("bs.tab",n=new i(this)),"string"==typeof e&&n[e]()})}var i=function(e){this.element=t(e)};i.VERSION="3.3.5",i.TRANSITION_DURATION=150,i.prototype.show=function(){var e=this.element,i=e.closest("ul:not(.dropdown-menu)"),o=e.data("target");if(o||(o=e.attr("href"),o=o&&o.replace(/.*(?=#[^\s]*$)/,"")),!e.parent("li").hasClass("active")){var n=i.find(".active:last a"),s=t.Event("hide.bs.tab",{relatedTarget:e[0]}),a=t.Event("show.bs.tab",{relatedTarget:n[0]});if(n.trigger(s),e.trigger(a),!a.isDefaultPrevented()&&!s.isDefaultPrevented()){var r=t(o);this.activate(e.closest("li"),i),this.activate(r,r.parent(),function(){n.trigger({type:"hidden.bs.tab",relatedTarget:e[0]}),e.trigger({type:"shown.bs.tab",relatedTarget:n[0]})})}}},i.prototype.activate=function(e,o,n){function s(){a.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),e.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),r?(e[0].offsetWidth,e.addClass("in")):e.removeClass("fade"),e.parent(".dropdown-menu").length&&e.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),n&&n()}var a=o.find("> .active"),r=n&&t.support.transition&&(a.length&&a.hasClass("fade")||!!o.find("> .fade").length);a.length&&r?a.one("bsTransitionEnd",s).emulateTransitionEnd(i.TRANSITION_DURATION):s(),a.removeClass("in")};var o=t.fn.tab;t.fn.tab=e,t.fn.tab.Constructor=i,t.fn.tab.noConflict=function(){return t.fn.tab=o,this};var n=function(i){i.preventDefault(),e.call(t(this),"show")};t(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',n).on("click.bs.tab.data-api",'[data-toggle="pill"]',n)}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.affix"),s="object"==typeof e&&e;n||o.data("bs.affix",n=new i(this,s)),"string"==typeof e&&n[e]()})}var i=function(e,o){this.options=t.extend({},i.DEFAULTS,o),this.$target=t(this.options.target).on("scroll.bs.affix.data-api",t.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",t.proxy(this.checkPositionWithEventLoop,this)),this.$element=t(e),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};i.VERSION="3.3.5",i.RESET="affix affix-top affix-bottom",i.DEFAULTS={offset:0,target:window},i.prototype.getState=function(t,e,i,o){var n=this.$target.scrollTop(),s=this.$element.offset(),a=this.$target.height();if(null!=i&&"top"==this.affixed)return i>n?"top":!1;if("bottom"==this.affixed)return null!=i?n+this.unpin<=s.top?!1:"bottom":t-o>=n+a?!1:"bottom";var r=null==this.affixed,l=r?n:s.top,h=r?a:e;return null!=i&&i>=n?"top":null!=o&&l+h>=t-o?"bottom":!1},i.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(i.RESET).addClass("affix");var t=this.$target.scrollTop(),e=this.$element.offset();return this.pinnedOffset=e.top-t},i.prototype.checkPositionWithEventLoop=function(){setTimeout(t.proxy(this.checkPosition,this),1)},i.prototype.checkPosition=function(){if(this.$element.is(":visible")){var e=this.$element.height(),o=this.options.offset,n=o.top,s=o.bottom,a=Math.max(t(document).height(),t(document.body).height());"object"!=typeof o&&(s=n=o),"function"==typeof n&&(n=o.top(this.$element)),"function"==typeof s&&(s=o.bottom(this.$element));var r=this.getState(a,e,n,s);if(this.affixed!=r){null!=this.unpin&&this.$element.css("top","");var l="affix"+(r?"-"+r:""),h=t.Event(l+".bs.affix");if(this.$element.trigger(h),h.isDefaultPrevented())return;this.affixed=r,this.unpin="bottom"==r?this.getPinnedOffset():null,this.$element.removeClass(i.RESET).addClass(l).trigger(l.replace("affix","affixed")+".bs.affix")}"bottom"==r&&this.$element.offset({top:a-e-s})}};var o=t.fn.affix;t.fn.affix=e,t.fn.affix.Constructor=i,t.fn.affix.noConflict=function(){return t.fn.affix=o,this},t(window).on("load",function(){t('[data-spy="affix"]').each(function(){var i=t(this),o=i.data();o.offset=o.offset||{},null!=o.offsetBottom&&(o.offset.bottom=o.offsetBottom),null!=o.offsetTop&&(o.offset.top=o.offsetTop),e.call(i,o)})})}(jQuery); window.CodeMirror=function(){"use strict";function t(r,n){if(!(this instanceof t))return new t(r,n);this.options=n=n||{};for(var i in ai)!n.hasOwnProperty(i)&&ai.hasOwnProperty(i)&&(n[i]=ai[i]);h(n);var o="string"==typeof n.value?0:n.value.first,l=this.display=e(r,o);l.wrapper.CodeMirror=this,u(this),n.autofocus&&!Vn&&pt(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,focused:!1,suppressEdits:!1,pasteIncoming:!1,draggingText:!1,highlight:new jr},s(this),n.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap");var a=n.value;"string"==typeof a&&(a=new Ci(n.value,n.mode)),lt(this,dr)(this,a),An&&setTimeout(nn(dt,this,!0),20),mt(this);var c;try{c=document.activeElement==l.input}catch(f){}c||n.autofocus&&!Vn?setTimeout(nn(Et,this),20):zt(this),lt(this,function(){for(var t in si)si.propertyIsEnumerable(t)&&si[t](this,n[t],ui);for(var e=0;e<di.length;++e)di[e](this)})()}function e(t,e){var r={},n=r.input=sn("textarea",null,null,"position: absolute; padding: 0; width: 1px; height: 1em; outline: none; font-size: 4px;");return Wn?n.style.width="1000px":n.setAttribute("wrap","off"),Gn&&(n.style.border="1px solid black"),n.setAttribute("autocorrect","off"),n.setAttribute("autocapitalize","off"),n.setAttribute("spellcheck","false"),r.inputDiv=sn("div",[n],null,"overflow: hidden; position: relative; width: 3px; height: 0px;"),r.scrollbarH=sn("div",[sn("div",null,null,"height: 1px")],"CodeMirror-hscrollbar"),r.scrollbarV=sn("div",[sn("div",null,null,"width: 1px")],"CodeMirror-vscrollbar"),r.scrollbarFiller=sn("div",null,"CodeMirror-scrollbar-filler"),r.gutterFiller=sn("div",null,"CodeMirror-gutter-filler"),r.lineDiv=sn("div",null,"CodeMirror-code"),r.selectionDiv=sn("div",null,null,"position: relative; z-index: 1"),r.cursor=sn("div"," ","CodeMirror-cursor"),r.otherCursor=sn("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"),r.measure=sn("div",null,"CodeMirror-measure"),r.lineSpace=sn("div",[r.measure,r.selectionDiv,r.lineDiv,r.cursor,r.otherCursor],null,"position: relative; outline: none"),r.mover=sn("div",[sn("div",[r.lineSpace],"CodeMirror-lines")],null,"position: relative"),r.sizer=sn("div",[r.mover],"CodeMirror-sizer"),r.heightForcer=sn("div",null,null,"position: absolute; height: "+Mi+"px; width: 1px;"),r.gutters=sn("div",null,"CodeMirror-gutters"),r.lineGutter=null,r.scroller=sn("div",[r.sizer,r.heightForcer,r.gutters],"CodeMirror-scroll"),r.scroller.setAttribute("tabIndex","-1"),r.wrapper=sn("div",[r.inputDiv,r.scrollbarH,r.scrollbarV,r.scrollbarFiller,r.gutterFiller,r.scroller],"CodeMirror"),Nn&&(r.gutters.style.zIndex=-1,r.scroller.style.paddingRight=0),t.appendChild?t.appendChild(r.wrapper):t(r.wrapper),Gn&&(n.style.width="0px"),Wn||(r.scroller.draggable=!0),Fn?(r.inputDiv.style.height="1px",r.inputDiv.style.position="absolute"):Nn&&(r.scrollbarH.style.minWidth=r.scrollbarV.style.minWidth="18px"),r.viewOffset=r.lastSizeC=0,r.showingFrom=r.showingTo=e,r.lineNumWidth=r.lineNumInnerWidth=r.lineNumChars=null,r.prevInput="",r.alignWidgets=!1,r.pollingFast=!1,r.poll=new jr,r.cachedCharWidth=r.cachedTextHeight=null,r.measureLineCache=[],r.measureLineCachePos=0,r.inaccurateSelection=!1,r.maxLine=null,r.maxLineLength=0,r.maxLineChanged=!1,r.wheelDX=r.wheelDY=r.wheelStartX=r.wheelStartY=null,r}function r(e){e.doc.mode=t.getMode(e.options,e.doc.modeOption),e.doc.iter(function(t){t.stateAfter&&(t.stateAfter=null),t.styles&&(t.styles=null)}),e.doc.frontier=e.doc.first,W(e,100),e.state.modeGen++,e.curOp&&ut(e)}function n(t){t.options.lineWrapping?(t.display.wrapper.className+=" CodeMirror-wrap",t.display.sizer.style.minWidth=""):(t.display.wrapper.className=t.display.wrapper.className.replace(" CodeMirror-wrap",""),f(t)),o(t),ut(t),_(t),setTimeout(function(){d(t)},100)}function i(t){var e=rt(t.display),r=t.options.lineWrapping,n=r&&Math.max(5,t.display.scroller.clientWidth/nt(t.display)-3);return function(i){return Ve(t.doc,i)?0:r?(Math.ceil(i.text.length/n)||1)*e:e}}function o(t){var e=t.doc,r=i(t);e.iter(function(t){var e=r(t);e!=t.height&&vr(t,e)})}function l(t){var e=mi[t.options.keyMap],r=e.style;t.display.wrapper.className=t.display.wrapper.className.replace(/\s*cm-keymap-\S+/g,"")+(r?" cm-keymap-"+r:""),t.state.disableInput=e.disableInput}function s(t){t.display.wrapper.className=t.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+t.options.theme.replace(/(^|\s)\s*/g," cm-s-"),_(t)}function a(t){u(t),ut(t),setTimeout(function(){g(t)},20)}function u(t){var e=t.display.gutters,r=t.options.gutters;an(e);for(var n=0;n<r.length;++n){var i=r[n],o=e.appendChild(sn("div",null,"CodeMirror-gutter "+i));"CodeMirror-linenumbers"==i&&(t.display.lineGutter=o,o.style.width=(t.display.lineNumWidth||1)+"px")}e.style.display=n?"":"none"}function c(t,e){if(0==e.height)return 0;for(var r,n=e.text.length,i=e;r=Re(i);){var o=r.find();i=pr(t,o.from.line),n+=o.from.ch-o.to.ch}for(i=e;r=Be(i);){var o=r.find();n-=i.text.length-o.from.ch,i=pr(t,o.to.line),n+=i.text.length-o.to.ch}return n}function f(t){var e=t.display,r=t.doc;e.maxLine=pr(r,r.first),e.maxLineLength=c(r,e.maxLine),e.maxLineChanged=!0,r.iter(function(t){var n=c(r,t);n>e.maxLineLength&&(e.maxLineLength=n,e.maxLine=t)})}function h(t){var e=Jr(t.gutters,"CodeMirror-linenumbers");-1==e&&t.lineNumbers?t.gutters=t.gutters.concat(["CodeMirror-linenumbers"]):e>-1&&!t.lineNumbers&&(t.gutters=t.gutters.slice(0),t.gutters.splice(e,1))}function d(t){var e=t.display,r=t.doc.height,n=r+F(e);e.sizer.style.minHeight=e.heightForcer.style.top=n+"px",e.gutters.style.height=Math.max(n,e.scroller.clientHeight-Mi)+"px";var i=Math.max(n,e.scroller.scrollHeight),o=e.scroller.scrollWidth>e.scroller.clientWidth+1,l=i>e.scroller.clientHeight+1;l?(e.scrollbarV.style.display="block",e.scrollbarV.style.bottom=o?dn(e.measure)+"px":"0",e.scrollbarV.firstChild.style.height=i-e.scroller.clientHeight+e.scrollbarV.clientHeight+"px"):(e.scrollbarV.style.display="",e.scrollbarV.firstChild.style.height="0"),o?(e.scrollbarH.style.display="block",e.scrollbarH.style.right=l?dn(e.measure)+"px":"0",e.scrollbarH.firstChild.style.width=e.scroller.scrollWidth-e.scroller.clientWidth+e.scrollbarH.clientWidth+"px"):(e.scrollbarH.style.display="",e.scrollbarH.firstChild.style.width="0"),o&&l?(e.scrollbarFiller.style.display="block",e.scrollbarFiller.style.height=e.scrollbarFiller.style.width=dn(e.measure)+"px"):e.scrollbarFiller.style.display="",o&&t.options.coverGutterNextToScrollbar&&t.options.fixedGutter?(e.gutterFiller.style.display="block",e.gutterFiller.style.height=dn(e.measure)+"px",e.gutterFiller.style.width=e.gutters.offsetWidth+"px"):e.gutterFiller.style.display="",Pn&&0===dn(e.measure)&&(e.scrollbarV.style.minWidth=e.scrollbarH.style.minHeight=Rn?"18px":"12px",e.scrollbarV.style.pointerEvents=e.scrollbarH.style.pointerEvents="none")}function p(t,e,r){var n=t.scroller.scrollTop,i=t.wrapper.clientHeight;"number"==typeof r?n=r:r&&(n=r.top,i=r.bottom-r.top),n=Math.floor(n-I(t));var o=Math.ceil(n+i);return{from:br(e,n),to:br(e,o)}}function g(t){var e=t.display;if(e.alignWidgets||e.gutters.firstChild&&t.options.fixedGutter){for(var r=y(e)-e.scroller.scrollLeft+t.doc.scrollLeft,n=e.gutters.offsetWidth,i=r+"px",o=e.lineDiv.firstChild;o;o=o.nextSibling)if(o.alignable)for(var l=0,s=o.alignable;l<s.length;++l)s[l].style.left=i;t.options.fixedGutter&&(e.gutters.style.left=r+n+"px")}}function m(t){if(!t.options.lineNumbers)return!1;var e=t.doc,r=v(t.options,e.first+e.size-1),n=t.display;if(r.length!=n.lineNumChars){var i=n.measure.appendChild(sn("div",[sn("div",r)],"CodeMirror-linenumber CodeMirror-gutter-elt")),o=i.firstChild.offsetWidth,l=i.offsetWidth-o;return n.lineGutter.style.width="",n.lineNumInnerWidth=Math.max(o,n.lineGutter.offsetWidth-l),n.lineNumWidth=n.lineNumInnerWidth+l,n.lineNumChars=n.lineNumInnerWidth?r.length:-1,n.lineGutter.style.width=n.lineNumWidth+"px",!0}return!1}function v(t,e){return String(t.lineNumberFormatter(e+t.firstLineNumber))}function y(t){return fn(t.scroller).left-fn(t.sizer).left}function b(t,e,r,n){for(var i,o=t.display.showingFrom,l=t.display.showingTo,s=p(t.display,t.doc,r),a=!0;;a=!1){var u=t.display.scroller.clientWidth;if(!x(t,e,s,n))break;if(i=!0,e=[],A(t),d(t),a&&t.options.lineWrapping&&u!=t.display.scroller.clientWidth)n=!0;else if(n=!1,r&&(r=Math.min(t.display.scroller.scrollHeight-t.display.scroller.clientHeight,"number"==typeof r?r:r.top)),s=p(t.display,t.doc,r),s.from>=t.display.showingFrom&&s.to<=t.display.showingTo)break}return i&&(Kr(t,"update",t),(t.display.showingFrom!=o||t.display.showingTo!=l)&&Kr(t,"viewportChange",t,t.display.showingFrom,t.display.showingTo)),i}function x(t,e,r,n){var i=t.display,o=t.doc;if(!i.wrapper.clientWidth)return i.showingFrom=i.showingTo=o.first,void(i.viewOffset=0);if(!(!n&&0==e.length&&r.from>i.showingFrom&&r.to<i.showingTo)){m(t)&&(e=[{from:o.first,to:o.first+o.size}]);var l=i.sizer.style.marginLeft=i.gutters.offsetWidth+"px";i.scrollbarH.style.left=t.options.fixedGutter?l:"0";var s=1/0;if(t.options.lineNumbers)for(var a=0;a<e.length;++a)e[a].diff&&e[a].from<s&&(s=e[a].from);var u=o.first+o.size,c=Math.max(r.from-t.options.viewportMargin,o.first),f=Math.min(u,r.to+t.options.viewportMargin);if(i.showingFrom<c&&c-i.showingFrom<20&&(c=Math.max(o.first,i.showingFrom)),i.showingTo>f&&i.showingTo-f<20&&(f=Math.min(u,i.showingTo)),Qn)for(c=yr(Ge(o,pr(o,c)));u>f&&Ve(o,pr(o,f));)++f;var h=[{from:Math.max(i.showingFrom,o.first),to:Math.min(i.showingTo,u)}];if(h=h[0].from>=h[0].to?[]:L(h,e),Qn)for(var a=0;a<h.length;++a)for(var d,p=h[a];d=Be(pr(o,p.to-1));){var g=d.find().from.line;if(!(g>p.from)){h.splice(a--,1);break}p.to=g}for(var v=0,a=0;a<h.length;++a){var p=h[a];p.from<c&&(p.from=c),p.to>f&&(p.to=f),p.from>=p.to?h.splice(a--,1):v+=p.to-p.from}if(!n&&v==f-c&&c==i.showingFrom&&f==i.showingTo)return void w(t);h.sort(function(t,e){return t.from-e.from});try{var y=document.activeElement}catch(b){}.7*(f-c)>v&&(i.lineDiv.style.display="none"),S(t,c,f,h,s),i.lineDiv.style.display="",y&&document.activeElement!=y&&y.offsetHeight&&y.focus();var x=c!=i.showingFrom||f!=i.showingTo||i.lastSizeC!=i.wrapper.clientHeight;return x&&(i.lastSizeC=i.wrapper.clientHeight,W(t,400)),i.showingFrom=c,i.showingTo=f,C(t),w(t),!0}}function C(t){for(var e,r=t.display,n=r.lineDiv.offsetTop,i=r.lineDiv.firstChild;i;i=i.nextSibling)if(i.lineObj){if(Nn){var o=i.offsetTop+i.offsetHeight;e=o-n,n=o}else{var l=fn(i);e=l.bottom-l.top}var s=i.lineObj.height-e;if(2>e&&(e=rt(r)),s>.001||-.001>s){vr(i.lineObj,e);var a=i.lineObj.widgets;if(a)for(var u=0;u<a.length;++u)a[u].height=a[u].node.offsetHeight}}}function w(t){var e=t.display.viewOffset=xr(t,pr(t.doc,t.display.showingFrom));t.display.mover.style.top=e+"px"}function L(t,e){for(var r=0,n=e.length||0;n>r;++r){for(var i=e[r],o=[],l=i.diff||0,s=0,a=t.length;a>s;++s){var u=t[s];i.to<=u.from&&i.diff?o.push({from:u.from+l,to:u.to+l}):i.to<=u.from||i.from>=u.to?o.push(u):(i.from>u.from&&o.push({from:u.from,to:i.from}),i.to<u.to&&o.push({from:i.to+l,to:u.to+l}))}t=o}return t}function k(t){for(var e=t.display,r={},n={},i=e.gutters.firstChild,o=0;i;i=i.nextSibling,++o)r[t.options.gutters[o]]=i.offsetLeft,n[t.options.gutters[o]]=i.offsetWidth;return{fixedPos:y(e),gutterTotalWidth:e.gutters.offsetWidth,gutterLeft:r,gutterWidth:n,wrapperWidth:e.wrapper.clientWidth}}function S(t,e,r,n,i){function o(e){var r=e.nextSibling;return Wn&&Kn&&t.display.currentWheelTarget==e?(e.style.display="none",e.lineObj=null):e.parentNode.removeChild(e),r}var l=k(t),s=t.display,a=t.options.lineNumbers;n.length||Wn&&t.display.currentWheelTarget||an(s.lineDiv);var u=s.lineDiv,c=u.firstChild,f=n.shift(),h=e;for(t.doc.iter(e,r,function(e){if(f&&f.to==h&&(f=n.shift()),Ve(t.doc,e)){if(0!=e.height&&vr(e,0),e.widgets&&c&&c.previousSibling)for(var r=0;r<e.widgets.length;++r){var s=e.widgets[r];if(s.showIfHidden){var d=c.previousSibling;if(/pre/i.test(d.nodeName)){var p=sn("div",null,null,"position: relative");d.parentNode.replaceChild(p,d),p.appendChild(d),d=p}var g=d.appendChild(sn("div",[s.node],"CodeMirror-linewidget"));s.handleMouseEvents||(g.ignoreEvents=!0),T(s,g,d,l)}}}else if(f&&f.from<=h&&f.to>h){for(;c.lineObj!=e;)c=o(c);a&&h>=i&&c.lineNumber&&cn(c.lineNumber,v(t.options,h)),c=c.nextSibling}else{if(e.widgets)for(var m,y=0,b=c;b&&20>y;++y,b=b.nextSibling)if(b.lineObj==e&&/div/i.test(b.nodeName)){m=b;break}var x=M(t,e,h,l,m);if(x!=m)u.insertBefore(x,c);else{for(;c!=m;)c=o(c);c=c.nextSibling}x.lineObj=e}++h});c;)c=o(c)}function M(t,e,r,n,i){var o,l=rr(t,e),s=l.pre,a=e.gutterMarkers,u=t.display,c=l.bgClass?l.bgClass+" "+(e.bgClass||""):e.bgClass;if(!(t.options.lineNumbers||a||c||e.wrapClass||e.widgets))return s;if(i){i.alignable=null;for(var f,h=!0,d=0,p=null,g=i.firstChild;g;g=f)if(f=g.nextSibling,/\bCodeMirror-linewidget\b/.test(g.className)){for(var m=0;m<e.widgets.length;++m){var y=e.widgets[m];if(y.node==g.firstChild){y.above||p||(p=g),T(y,g,i,n),++d;break}}if(m==e.widgets.length){h=!1;break}}else i.removeChild(g);i.insertBefore(s,p),h&&d==e.widgets.length&&(o=i,i.className=e.wrapClass||"")}if(o||(o=sn("div",null,e.wrapClass,"position: relative"),o.appendChild(s)),c&&o.insertBefore(sn("div",null,c+" CodeMirror-linebackground"),o.firstChild),t.options.lineNumbers||a){var b=o.insertBefore(sn("div",null,null,"position: absolute; left: "+(t.options.fixedGutter?n.fixedPos:-n.gutterTotalWidth)+"px"),o.firstChild);if(t.options.fixedGutter&&(o.alignable||(o.alignable=[])).push(b),!t.options.lineNumbers||a&&a["CodeMirror-linenumbers"]||(o.lineNumber=b.appendChild(sn("div",v(t.options,r),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+n.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+u.lineNumInnerWidth+"px"))),a)for(var x=0;x<t.options.gutters.length;++x){var C=t.options.gutters[x],w=a.hasOwnProperty(C)&&a[C];w&&b.appendChild(sn("div",[w],"CodeMirror-gutter-elt","left: "+n.gutterLeft[C]+"px; width: "+n.gutterWidth[C]+"px"))}}if(Nn&&(o.style.zIndex=2),e.widgets&&o!=i)for(var m=0,L=e.widgets;m<L.length;++m){var y=L[m],k=sn("div",[y.node],"CodeMirror-linewidget");y.handleMouseEvents||(k.ignoreEvents=!0),T(y,k,o,n),y.above?o.insertBefore(k,t.options.lineNumbers&&0!=e.height?b:s):o.appendChild(k),Kr(y,"redraw")}return o}function T(t,e,r,n){if(t.noHScroll){(r.alignable||(r.alignable=[])).push(e);var i=n.wrapperWidth;e.style.left=n.fixedPos+"px",t.coverGutter||(i-=n.gutterTotalWidth,e.style.paddingLeft=n.gutterTotalWidth+"px"),e.style.width=i+"px"}t.coverGutter&&(e.style.zIndex=5,e.style.position="relative",t.noHScroll||(e.style.marginLeft=-n.gutterTotalWidth+"px"))}function A(t){var e=t.display,r=jt(t.doc.sel.from,t.doc.sel.to);if(r||t.options.showCursorWhenSelecting?N(t):e.cursor.style.display=e.otherCursor.style.display="none",r?e.selectionDiv.style.display="none":H(t),t.options.moveInputWithCursor){var n=Q(t,t.doc.sel.head,"div"),i=fn(e.wrapper),o=fn(e.lineDiv);e.inputDiv.style.top=Math.max(0,Math.min(e.wrapper.clientHeight-10,n.top+o.top-i.top))+"px",e.inputDiv.style.left=Math.max(0,Math.min(e.wrapper.clientWidth-10,n.left+o.left-i.left))+"px"}}function N(t){var e=t.display,r=Q(t,t.doc.sel.head,"div");e.cursor.style.left=r.left+"px",e.cursor.style.top=r.top+"px",e.cursor.style.height=Math.max(0,r.bottom-r.top)*t.options.cursorHeight+"px",e.cursor.style.display="",r.other?(e.otherCursor.style.display="",e.otherCursor.style.left=r.other.left+"px",e.otherCursor.style.top=r.other.top+"px",e.otherCursor.style.height=.85*(r.other.bottom-r.other.top)+"px"):e.otherCursor.style.display="none"}function H(t){function e(t,e,r,n){0>e&&(e=0),l.appendChild(sn("div",null,"CodeMirror-selected","position: absolute; left: "+t+"px; top: "+e+"px; width: "+(null==r?s-t:r)+"px; height: "+(n-e)+"px"))}function r(r,n,o){function l(e,n){return q(t,Yt(r,e),"div",f,n)}var u,c,f=pr(i,r),h=f.text.length;return gn(Cr(f),n||0,null==o?h:o,function(t,r,i){var f,d,p,g=l(t,"left");if(t==r)f=g,d=p=g.left;else{if(f=l(r-1,"right"),"rtl"==i){var m=g;g=f,f=m}d=g.left,p=f.right}null==n&&0==t&&(d=a),f.top-g.top>3&&(e(d,g.top,null,g.bottom),d=a,g.bottom<f.top&&e(d,g.bottom,null,f.top)),null==o&&r==h&&(p=s),(!u||g.top<u.top||g.top==u.top&&g.left<u.left)&&(u=g),(!c||f.bottom>c.bottom||f.bottom==c.bottom&&f.right>c.right)&&(c=f),a+1>d&&(d=a),e(d,f.top,p-d,f.bottom)}),{start:u,end:c}}var n=t.display,i=t.doc,o=t.doc.sel,l=document.createDocumentFragment(),s=n.lineSpace.offsetWidth,a=P(t.display);if(o.from.line==o.to.line)r(o.from.line,o.from.ch,o.to.ch);else{var u=pr(i,o.from.line),c=pr(i,o.to.line),f=Ge(i,u)==Ge(i,c),h=r(o.from.line,o.from.ch,f?u.text.length:null).end,d=r(o.to.line,f?0:null,o.to.ch).start;f&&(h.top<d.top-2?(e(h.right,h.top,null,h.bottom),e(a,d.top,d.left,d.bottom)):e(h.right,h.top,d.left-h.right,h.bottom)),h.bottom<d.top&&e(a,h.bottom,null,d.top)}un(n.selectionDiv,l),n.selectionDiv.style.display=""}function D(t){if(t.state.focused){var e=t.display;clearInterval(e.blinker);var r=!0;e.cursor.style.visibility=e.otherCursor.style.visibility="",t.options.cursorBlinkRate>0&&(e.blinker=setInterval(function(){e.cursor.style.visibility=e.otherCursor.style.visibility=(r=!r)?"":"hidden"},t.options.cursorBlinkRate))}}function W(t,e){t.doc.mode.startState&&t.doc.frontier<t.display.showingTo&&t.state.highlight.set(e,nn(O,t))}function O(t){var e=t.doc;if(e.frontier<e.first&&(e.frontier=e.first),!(e.frontier>=t.display.showingTo)){var r,n=+new Date+t.options.workTime,i=be(e.mode,z(t,e.frontier)),o=[];e.iter(e.frontier,Math.min(e.first+e.size,t.display.showingTo+500),function(l){if(e.frontier>=t.display.showingFrom){var s=l.styles;l.styles=Qe(t,l,i,!0);for(var a=!s||s.length!=l.styles.length,u=0;!a&&u<s.length;++u)a=s[u]!=l.styles[u];a&&(r&&r.end==e.frontier?r.end++:o.push(r={start:e.frontier,end:e.frontier+1})),l.stateAfter=be(e.mode,i)}else tr(t,l.text,i),l.stateAfter=e.frontier%5==0?be(e.mode,i):null;return++e.frontier,+new Date>n?(W(t,t.options.workDelay),!0):void 0}),o.length&<(t,function(){for(var t=0;t<o.length;++t)ut(this,o[t].start,o[t].end)})()}}function E(t,e,r){for(var n,i,o=t.doc,l=r?-1:e-(t.doc.mode.innerMode?1e3:100),s=e;s>l;--s){if(s<=o.first)return o.first;var a=pr(o,s-1);if(a.stateAfter&&(!r||s<=o.frontier))return s;var u=$r(a.text,null,t.options.tabSize);(null==i||n>u)&&(i=s-1,n=u)}return i}function z(t,e,r){var n=t.doc,i=t.display;if(!n.mode.startState)return!0;var o=E(t,e,r),l=o>n.first&&pr(n,o-1).stateAfter;return l=l?be(n.mode,l):xe(n.mode),n.iter(o,e,function(r){tr(t,r.text,l);var s=o==e-1||o%5==0||o>=i.showingFrom&&o<i.showingTo;r.stateAfter=s?be(n.mode,l):null,++o}),r&&(n.frontier=o),l}function I(t){return t.lineSpace.offsetTop}function F(t){return t.mover.offsetHeight-t.lineSpace.offsetHeight}function P(t){var e=un(t.measure,sn("pre",null,null,"text-align: left")).appendChild(sn("span","x"));return e.offsetLeft}function R(t,e,r,n,i){var o=-1;if(n=n||V(t,e),n.crude){var l=n.left+r*n.width;return{left:l,right:l+n.width,top:n.top,bottom:n.bottom}}for(var s=r;;s+=o){var a=n[s];if(a)break;0>o&&0==s&&(o=1)}return i=s>r?"left":r>s?"right":i,"left"==i&&a.leftSide?a=a.leftSide:"right"==i&&a.rightSide&&(a=a.rightSide),{left:r>s?a.right:a.left,right:s>r?a.left:a.right,top:a.top,bottom:a.bottom}}function B(t,e){for(var r=t.display.measureLineCache,n=0;n<r.length;++n){var i=r[n];if(i.text==e.text&&i.markedSpans==e.markedSpans&&t.display.scroller.clientWidth==i.width&&i.classes==e.textClass+"|"+e.wrapClass)return i}}function G(t,e){var r=B(t,e);r&&(r.text=r.measure=r.markedSpans=null)}function V(t,e){var r=B(t,e);if(r)return r.measure;var n=K(t,e),i=t.display.measureLineCache,o={text:e.text,width:t.display.scroller.clientWidth,markedSpans:e.markedSpans,measure:n,classes:e.textClass+"|"+e.wrapClass};return 16==i.length?i[++t.display.measureLineCachePos%16]=o:i.push(o),n}function K(t,e){function r(t){var e=t.top-p.top,r=t.bottom-p.top;r>v&&(r=v),0>e&&(e=0);for(var n=g.length-2;n>=0;n-=2){var i=g[n],o=g[n+1];if(!(i>r||e>o)&&(e>=i&&o>=r||i>=e&&r>=o||Math.min(r,o)-Math.max(e,i)>=r-e>>1)){g[n]=Math.min(e,i),g[n+1]=Math.max(r,o);break}}return 0>n&&(n=g.length,g.push(e,r)),{left:t.left-p.left,right:t.right-p.left,top:n,bottom:null}}function n(t){t.bottom=g[t.top+1],t.top=g[t.top]}if(!t.options.lineWrapping&&e.text.length>=t.options.crudeMeasuringFrom)return U(t,e);var i=t.display,o=rn(e.text.length),l=rr(t,e,o,!0).pre;if(An&&!Nn&&!t.options.lineWrapping&&l.childNodes.length>100){for(var s=document.createDocumentFragment(),a=10,u=l.childNodes.length,c=0,f=Math.ceil(u/a);f>c;++c){for(var h=sn("div",null,null,"display: inline-block"),d=0;a>d&&u;++d)h.appendChild(l.firstChild),--u;s.appendChild(h)}l.appendChild(s)}un(i.measure,l);var p=fn(i.lineDiv),g=[],m=rn(e.text.length),v=l.offsetHeight;Hn&&i.measure.first!=l&&un(i.measure,l);for(var y,c=0;c<o.length;++c)if(y=o[c]){var b=y,x=null;if(/\bCodeMirror-widget\b/.test(y.className)&&y.getClientRects){1==y.firstChild.nodeType&&(b=y.firstChild);var C=b.getClientRects();C.length>1&&(x=m[c]=r(C[0]),x.rightSide=r(C[C.length-1]))}x||(x=m[c]=r(fn(b))),y.measureRight&&(x.right=fn(y.measureRight).left),y.leftSide&&(x.leftSide=r(fn(y.leftSide)))}an(t.display.measure);for(var y,c=0;c<m.length;++c)(y=m[c])&&(n(y),y.leftSide&&n(y.leftSide),y.rightSide&&n(y.rightSide));return m}function U(t,e){var r=new yi(e.text.slice(0,100),null);e.textClass&&(r.textClass=e.textClass);var n=K(t,r),i=R(t,r,0,n,"left"),o=R(t,r,99,n,"right");return{crude:!0,top:i.top,left:i.left,bottom:i.bottom,width:(o.right-i.left)/100}}function X(t,e){var r=!1;if(e.markedSpans)for(var n=0;n<e.markedSpans;++n){var i=e.markedSpans[n];!i.collapsed||null!=i.to&&i.to!=e.text.length||(r=!0)}var o=!r&&B(t,e);if(o||e.text.length>=t.options.crudeMeasuringFrom)return R(t,e,e.text.length,o&&o.measure,"right").right;var l=rr(t,e,null,!0).pre,s=l.appendChild(pn(t.display.measure));return un(t.display.measure,l),fn(s).right-fn(t.display.lineDiv).left}function _(t){t.display.measureLineCache.length=t.display.measureLineCachePos=0,t.display.cachedCharWidth=t.display.cachedTextHeight=null,t.options.lineWrapping||(t.display.maxLineChanged=!0),t.display.lineNumChars=null}function Y(){return window.pageXOffset||(document.documentElement||document.body).scrollLeft}function j(){return window.pageYOffset||(document.documentElement||document.body).scrollTop}function $(t,e,r,n){if(e.widgets)for(var i=0;i<e.widgets.length;++i)if(e.widgets[i].above){var o=Ye(e.widgets[i]);r.top+=o,r.bottom+=o}if("line"==n)return r;n||(n="local");var l=xr(t,e);if("local"==n?l+=I(t.display):l-=t.display.viewOffset,"page"==n||"window"==n){var s=fn(t.display.lineSpace);l+=s.top+("window"==n?0:j());var a=s.left+("window"==n?0:Y());r.left+=a,r.right+=a}return r.top+=l,r.bottom+=l,r}function Z(t,e,r){if("div"==r)return e;var n=e.left,i=e.top;if("page"==r)n-=Y(),i-=j();else if("local"==r||!r){var o=fn(t.display.sizer);n+=o.left,i+=o.top}var l=fn(t.display.lineSpace);return{left:n-l.left,top:i-l.top}}function q(t,e,r,n,i){return n||(n=pr(t.doc,e.line)),$(t,n,R(t,n,e.ch,null,i),r)}function Q(t,e,r,n,i){function o(e,o){var l=R(t,n,e,i,o?"right":"left");return o?l.left=l.right:l.right=l.left,$(t,n,l,r)}function l(t,e){var r=s[e],n=r.level%2;return t==mn(r)&&e&&r.level<s[e-1].level?(r=s[--e],t=vn(r)-(r.level%2?0:1),n=!0):t==vn(r)&&e<s.length-1&&r.level<s[e+1].level&&(r=s[++e],t=mn(r)-r.level%2,n=!1),n&&t==r.to&&t>r.from?o(t-1):o(t,n)}n=n||pr(t.doc,e.line),i||(i=V(t,n));var s=Cr(n),a=e.ch;if(!s)return o(a);var u=Ln(s,a),c=l(a,u);return null!=Pi&&(c.other=l(a,Pi)),c}function J(t,e,r,n){var i=new Yt(t,e);return i.xRel=n,r&&(i.outside=!0),i}function tt(t,e,r){var n=t.doc;if(r+=t.display.viewOffset,0>r)return J(n.first,0,!0,-1);var i=br(n,r),o=n.first+n.size-1;if(i>o)return J(n.first+n.size-1,pr(n,o).text.length,!0,1);for(0>e&&(e=0);;){var l=pr(n,i),s=et(t,l,i,e,r),a=Be(l),u=a&&a.find();if(!a||!(s.ch>u.from.ch||s.ch==u.from.ch&&s.xRel>0))return s;i=u.to.line}}function et(t,e,r,n,i){function o(n){var i=Q(t,Yt(r,n),"line",e,u);return s=!0,l>i.bottom?i.left-a:l<i.top?i.left+a:(s=!1,i.left)}var l=i-xr(t,e),s=!1,a=2*t.display.wrapper.clientWidth,u=V(t,e),c=Cr(e),f=e.text.length,h=yn(e),d=bn(e),p=o(h),g=s,m=o(d),v=s;if(n>m)return J(r,d,v,1);for(;;){if(c?d==h||d==Sn(e,h,1):1>=d-h){for(var y=p>n||m-n>=n-p?h:d,b=n-(y==h?p:m);Hi.test(e.text.charAt(y));)++y;var x=J(r,y,y==h?g:v,0>b?-1:b?1:0);return x}var C=Math.ceil(f/2),w=h+C;if(c){w=h;for(var L=0;C>L;++L)w=Sn(e,w,1)}var k=o(w);k>n?(d=w,m=k,(v=s)&&(m+=1e3),f=C):(h=w,p=k,g=s,f-=C)}}function rt(t){if(null!=t.cachedTextHeight)return t.cachedTextHeight;if(null==_n){_n=sn("pre");for(var e=0;49>e;++e)_n.appendChild(document.createTextNode("x")),_n.appendChild(sn("br"));_n.appendChild(document.createTextNode("x"))}un(t.measure,_n);var r=_n.offsetHeight/50;return r>3&&(t.cachedTextHeight=r),an(t.measure),r||1}function nt(t){if(null!=t.cachedCharWidth)return t.cachedCharWidth;var e=sn("span","x"),r=sn("pre",[e]);un(t.measure,r);var n=e.offsetWidth;return n>2&&(t.cachedCharWidth=n),n||10}function it(t){t.curOp={changes:[],forceUpdate:!1,updateInput:null,userSelChange:null,textChanged:null,selectionChanged:!1,cursorActivity:!1,updateMaxLine:!1,updateScrollPos:!1,id:++Jn},Si++||(ki=[])}function ot(t){var e=t.curOp,r=t.doc,n=t.display;if(t.curOp=null,e.updateMaxLine&&f(t),n.maxLineChanged&&!t.options.lineWrapping&&n.maxLine){var i=X(t,n.maxLine);n.sizer.style.minWidth=Math.max(0,i+3+Mi)+"px",n.maxLineChanged=!1;var o=Math.max(0,n.sizer.offsetLeft+n.sizer.offsetWidth-n.scroller.clientWidth);o<r.scrollLeft&&!e.updateScrollPos&&Mt(t,Math.min(n.scroller.scrollLeft,o),!0)}var l,s;if(e.updateScrollPos)l=e.updateScrollPos;else if(e.selectionChanged&&n.scroller.clientHeight){var a=Q(t,r.sel.head);l=ue(t,a.left,a.top,a.left,a.bottom)}if((e.changes.length||e.forceUpdate||l&&null!=l.scrollTop)&&(s=b(t,e.changes,l&&l.scrollTop,e.forceUpdate),t.display.scroller.offsetHeight&&(t.doc.scrollTop=t.display.scroller.scrollTop)),!s&&e.selectionChanged&&A(t),e.updateScrollPos){var u=Math.max(0,Math.min(n.scroller.scrollHeight-n.scroller.clientHeight,l.scrollTop)),c=Math.max(0,Math.min(n.scroller.scrollWidth-n.scroller.clientWidth,l.scrollLeft));n.scroller.scrollTop=n.scrollbarV.scrollTop=r.scrollTop=u,n.scroller.scrollLeft=n.scrollbarH.scrollLeft=r.scrollLeft=c,g(t),e.scrollToPos&&se(t,Qt(t.doc,e.scrollToPos.from),Qt(t.doc,e.scrollToPos.to),e.scrollToPos.margin)}else l&&le(t);e.selectionChanged&&D(t),t.state.focused&&e.updateInput&&dt(t,e.userSelChange);var h=e.maybeHiddenMarkers,d=e.maybeUnhiddenMarkers;if(h)for(var p=0;p<h.length;++p)h[p].lines.length||Vr(h[p],"hide");if(d)for(var p=0;p<d.length;++p)d[p].lines.length&&Vr(d[p],"unhide");var m;if(--Si||(m=ki,ki=null),e.textChanged&&Vr(t,"change",t,e.textChanged),e.cursorActivity&&Vr(t,"cursorActivity",t),m)for(var p=0;p<m.length;++p)m[p]()}function lt(t,e){return function(){var r=t||this,n=!r.curOp;n&&it(r);try{var i=e.apply(r,arguments)}finally{n&&ot(r)}return i}}function st(t){return function(){var e,r=this.cm&&!this.cm.curOp;r&&it(this.cm);try{e=t.apply(this,arguments)}finally{r&&ot(this.cm)}return e}}function at(t,e){var r,n=!t.curOp;n&&it(t);try{r=e()}finally{n&&ot(t)}return r}function ut(t,e,r,n){null==e&&(e=t.doc.first),null==r&&(r=t.doc.first+t.doc.size),t.curOp.changes.push({from:e,to:r,diff:n})}function ct(t){t.display.pollingFast||t.display.poll.set(t.options.pollInterval,function(){ht(t),t.state.focused&&ct(t)})}function ft(t){function e(){var n=ht(t);n||r?(t.display.pollingFast=!1,ct(t)):(r=!0,t.display.poll.set(60,e))}var r=!1;t.display.pollingFast=!0,t.display.poll.set(20,e)}function ht(t){var e=t.display.input,r=t.display.prevInput,n=t.doc,i=n.sel;if(!t.state.focused||zi(e)||gt(t)||t.state.disableInput)return!1;t.state.pasteIncoming&&t.state.fakedLastChar&&(e.value=e.value.substring(0,e.value.length-1),t.state.fakedLastChar=!1);var o=e.value;if(o==r&&jt(i.from,i.to))return!1;if(An&&!Hn&&t.display.inputHasSelection===o)return dt(t,!0),!1;var l=!t.curOp;l&&it(t),i.shift=!1;for(var s=0,a=Math.min(r.length,o.length);a>s&&r.charCodeAt(s)==o.charCodeAt(s);)++s;var u=i.from,c=i.to;s<r.length?u=Yt(u.line,u.ch-(r.length-s)):t.state.overwrite&&jt(u,c)&&!t.state.pasteIncoming&&(c=Yt(c.line,Math.min(pr(n,c.line).text.length,c.ch+(o.length-s))));var f=t.curOp.updateInput,h={from:u,to:c,text:Ei(o.slice(s)),origin:t.state.pasteIncoming?"paste":"+input"};return Bt(t.doc,h,"end"),t.curOp.updateInput=f,Kr(t,"inputRead",t,h),o.length>1e3||o.indexOf("\n")>-1?e.value=t.display.prevInput="":t.display.prevInput=o,l&&ot(t),t.state.pasteIncoming=!1,!0}function dt(t,e){var r,n,i=t.doc;if(jt(i.sel.from,i.sel.to))e&&(t.display.prevInput=t.display.input.value="",An&&!Hn&&(t.display.inputHasSelection=null));else{t.display.prevInput="",r=Ii&&(i.sel.to.line-i.sel.from.line>100||(n=t.getSelection()).length>1e3);var o=r?"-":n||t.getSelection();t.display.input.value=o,t.state.focused&&Qr(t.display.input),An&&!Hn&&(t.display.inputHasSelection=o)}t.display.inaccurateSelection=r}function pt(t){"nocursor"==t.options.readOnly||Vn&&document.activeElement==t.display.input||t.display.input.focus()}function gt(t){return t.options.readOnly||t.doc.cantEdit}function mt(t){function e(){t.state.focused&&setTimeout(nn(pt,t),0)}function r(){null==s&&(s=setTimeout(function(){s=null,l.cachedCharWidth=l.cachedTextHeight=Wi=null,_(t),at(t,nn(ut,t))},100))}function n(){for(var t=l.wrapper.parentNode;t&&t!=document.body;t=t.parentNode);t?setTimeout(n,5e3):Gr(window,"resize",r)}function i(e){Ur(t,e)||t.options.onDragEvent&&t.options.onDragEvent(t,Or(e))||Fr(e)}function o(){l.inaccurateSelection&&(l.prevInput="",l.inaccurateSelection=!1,l.input.value=t.getSelection(),Qr(l.input))}var l=t.display;Br(l.scroller,"mousedown",lt(t,bt)),An?Br(l.scroller,"dblclick",lt(t,function(e){if(!Ur(t,e)){var r=yt(t,e);if(r&&!wt(t,e)&&!vt(t.display,e)){Er(e);var n=me(pr(t.doc,r.line).text,r);ee(t.doc,n.from,n.to)}}})):Br(l.scroller,"dblclick",function(e){Ur(t,e)||Er(e)}),Br(l.lineSpace,"selectstart",function(t){vt(l,t)||Er(t)}),Zn||Br(l.scroller,"contextmenu",function(e){It(t,e)}),Br(l.scroller,"scroll",function(){l.scroller.clientHeight&&(St(t,l.scroller.scrollTop),Mt(t,l.scroller.scrollLeft,!0),Vr(t,"scroll",t))}),Br(l.scrollbarV,"scroll",function(){l.scroller.clientHeight&&St(t,l.scrollbarV.scrollTop)}),Br(l.scrollbarH,"scroll",function(){l.scroller.clientHeight&&Mt(t,l.scrollbarH.scrollLeft)}),Br(l.scroller,"mousewheel",function(e){Tt(t,e)}),Br(l.scroller,"DOMMouseScroll",function(e){Tt(t,e)}),Br(l.scrollbarH,"mousedown",e),Br(l.scrollbarV,"mousedown",e),Br(l.wrapper,"scroll",function(){l.wrapper.scrollTop=l.wrapper.scrollLeft=0});var s;Br(window,"resize",r),setTimeout(n,5e3),Br(l.input,"keyup",lt(t,function(e){Ur(t,e)||t.options.onKeyEvent&&t.options.onKeyEvent(t,Or(e))||16==e.keyCode&&(t.doc.sel.shift=!1)})),Br(l.input,"input",function(){An&&!Hn&&t.display.inputHasSelection&&(t.display.inputHasSelection=null),ft(t)}),Br(l.input,"keydown",lt(t,Wt)),Br(l.input,"keypress",lt(t,Ot)),Br(l.input,"focus",nn(Et,t)),Br(l.input,"blur",nn(zt,t)),t.options.dragDrop&&(Br(l.scroller,"dragstart",function(e){kt(t,e)}),Br(l.scroller,"dragenter",i),Br(l.scroller,"dragover",i),Br(l.scroller,"drop",lt(t,Lt))),Br(l.scroller,"paste",function(e){vt(l,e)||(pt(t),ft(t))}),Br(l.input,"paste",function(){if(Wn&&!t.state.fakedLastChar&&!(new Date-t.state.lastMiddleDown<200)){var e=l.input.selectionStart,r=l.input.selectionEnd;l.input.value+="$",l.input.selectionStart=e,l.input.selectionEnd=r,t.state.fakedLastChar=!0}t.state.pasteIncoming=!0,ft(t)}),Br(l.input,"cut",o),Br(l.input,"copy",o),Fn&&Br(l.sizer,"mouseup",function(){document.activeElement==l.input&&l.input.blur(),pt(t)})}function vt(t,e){for(var r=Pr(e);r!=t.wrapper;r=r.parentNode)if(!r||r.ignoreEvents||r.parentNode==t.sizer&&r!=t.mover)return!0}function yt(t,e,r){var n=t.display;if(!r){var i=Pr(e);if(i==n.scrollbarH||i==n.scrollbarH.firstChild||i==n.scrollbarV||i==n.scrollbarV.firstChild||i==n.scrollbarFiller||i==n.gutterFiller)return null}var o,l,s=fn(n.lineSpace);try{o=e.clientX,l=e.clientY}catch(e){return null}return tt(t,o-s.left,l-s.top)}function bt(t){function e(t){if(!jt(v,t)){ if(v=t,"single"==c)return void ee(i.doc,Qt(l,a),t);if(g=Qt(l,g),m=Qt(l,m),"double"==c){var e=me(pr(l,t.line).text,t);$t(t,g)?ee(i.doc,e.from,m):ee(i.doc,g,e.to)}else"triple"==c&&($t(t,g)?ee(i.doc,m,Qt(l,Yt(t.line,0))):ee(i.doc,g,Qt(l,Yt(t.line+1,0))))}}function r(t){var n=++b,s=yt(i,t,!0);if(s)if(jt(s,h)){var a=t.clientY<y.top?-20:t.clientY>y.bottom?20:0;a&&setTimeout(lt(i,function(){b==n&&(o.scroller.scrollTop+=a,r(t))}),50)}else{i.state.focused||Et(i),h=s,e(s);var u=p(o,l);(s.line>=u.to||s.line<u.from)&&setTimeout(lt(i,function(){b==n&&r(t)}),150)}}function n(t){b=1/0,Er(t),pt(i),Gr(document,"mousemove",x),Gr(document,"mouseup",C)}if(!Ur(this,t)){var i=this,o=i.display,l=i.doc,s=l.sel;if(s.shift=t.shiftKey,vt(o,t))return void(Wn||(o.scroller.draggable=!1,setTimeout(function(){o.scroller.draggable=!0},100)));if(!wt(i,t)){var a=yt(i,t);switch(Rr(t)){case 3:return void(Zn&&It.call(i,i,t));case 2:return Wn&&(i.state.lastMiddleDown=+new Date),a&&ee(i.doc,a),setTimeout(nn(pt,i),20),void Er(t)}if(!a)return void(Pr(t)==o.scroller&&Er(t));i.state.focused||Et(i);var u=+new Date,c="single";if(jn&&jn.time>u-400&&jt(jn.pos,a))c="triple",Er(t),setTimeout(nn(pt,i),20),ve(i,a.line);else if(Yn&&Yn.time>u-400&&jt(Yn.pos,a)){c="double",jn={time:u,pos:a},Er(t);var f=me(pr(l,a.line).text,a);ee(i.doc,f.from,f.to)}else Yn={time:u,pos:a};var h=a;if(i.options.dragDrop&&Di&&!gt(i)&&!jt(s.from,s.to)&&!$t(a,s.from)&&!$t(s.to,a)&&"single"==c){var d=lt(i,function(e){Wn&&(o.scroller.draggable=!1),i.state.draggingText=!1,Gr(document,"mouseup",d),Gr(o.scroller,"drop",d),Math.abs(t.clientX-e.clientX)+Math.abs(t.clientY-e.clientY)<10&&(Er(e),ee(i.doc,a),pt(i))});return Wn&&(o.scroller.draggable=!0),i.state.draggingText=d,o.scroller.dragDrop&&o.scroller.dragDrop(),Br(document,"mouseup",d),void Br(o.scroller,"drop",d)}Er(t),"single"==c&&ee(i.doc,Qt(l,a));var g=s.from,m=s.to,v=a,y=fn(o.wrapper),b=0,x=lt(i,function(t){An||Rr(t)?r(t):n(t)}),C=lt(i,n);Br(document,"mousemove",x),Br(document,"mouseup",C)}}}function xt(t,e,r,n,i){try{var o=e.clientX,l=e.clientY}catch(e){return!1}if(o>=Math.floor(fn(t.display.gutters).right))return!1;n&&Er(e);var s=t.display,a=fn(s.lineDiv);if(l>a.bottom||!_r(t,r))return Ir(e);l-=a.top-s.viewOffset;for(var u=0;u<t.options.gutters.length;++u){var c=s.gutters.childNodes[u];if(c&&fn(c).right>=o){var f=br(t.doc,l),h=t.options.gutters[u];return i(t,r,t,f,h,e),Ir(e)}}}function Ct(t,e){return _r(t,"gutterContextMenu")?xt(t,e,"gutterContextMenu",!1,Vr):!1}function wt(t,e){return xt(t,e,"gutterClick",!0,Kr)}function Lt(t){var e=this;if(!(Ur(e,t)||vt(e.display,t)||e.options.onDragEvent&&e.options.onDragEvent(e,Or(t)))){Er(t),An&&(ti=+new Date);var r=yt(e,t,!0),n=t.dataTransfer.files;if(r&&!gt(e))if(n&&n.length&&window.FileReader&&window.File)for(var i=n.length,o=Array(i),l=0,s=function(t,n){var s=new FileReader;s.onload=function(){o[n]=s.result,++l==i&&(r=Qt(e.doc,r),Bt(e.doc,{from:r,to:r,text:Ei(o.join("\n")),origin:"paste"},"around"))},s.readAsText(t)},a=0;i>a;++a)s(n[a],a);else{if(e.state.draggingText&&!$t(r,e.doc.sel.from)&&!$t(e.doc.sel.to,r))return e.state.draggingText(t),void setTimeout(nn(pt,e),20);try{var o=t.dataTransfer.getData("Text");if(o){var u=e.doc.sel.from,c=e.doc.sel.to;ne(e.doc,r,r),e.state.draggingText&&_t(e.doc,"",u,c,"paste"),e.replaceSelection(o,null,"paste"),pt(e)}}catch(t){}}}}function kt(t,e){if(An&&(!t.state.draggingText||+new Date-ti<100))return void Fr(e);if(!Ur(t,e)&&!vt(t.display,e)){var r=t.getSelection();if(e.dataTransfer.setData("Text",r),e.dataTransfer.setDragImage&&!In){var n=sn("img",null,null,"position: fixed; left: 0; top: 0;");n.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",zn&&(n.width=n.height=1,t.display.wrapper.appendChild(n),n._top=n.offsetTop),e.dataTransfer.setDragImage(n,0,0),zn&&n.parentNode.removeChild(n)}}}function St(t,e){Math.abs(t.doc.scrollTop-e)<2||(t.doc.scrollTop=e,Tn||b(t,[],e),t.display.scroller.scrollTop!=e&&(t.display.scroller.scrollTop=e),t.display.scrollbarV.scrollTop!=e&&(t.display.scrollbarV.scrollTop=e),Tn&&b(t,[]),W(t,100))}function Mt(t,e,r){(r?e==t.doc.scrollLeft:Math.abs(t.doc.scrollLeft-e)<2)||(e=Math.min(e,t.display.scroller.scrollWidth-t.display.scroller.clientWidth),t.doc.scrollLeft=e,g(t),t.display.scroller.scrollLeft!=e&&(t.display.scroller.scrollLeft=e),t.display.scrollbarH.scrollLeft!=e&&(t.display.scrollbarH.scrollLeft=e))}function Tt(t,e){var r=e.wheelDeltaX,n=e.wheelDeltaY;null==r&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(r=e.detail),null==n&&e.detail&&e.axis==e.VERTICAL_AXIS?n=e.detail:null==n&&(n=e.wheelDelta);var i=t.display,o=i.scroller;if(r&&o.scrollWidth>o.clientWidth||n&&o.scrollHeight>o.clientHeight){if(n&&Kn&&Wn)for(var l=e.target;l!=o;l=l.parentNode)if(l.lineObj){t.display.currentWheelTarget=l;break}if(r&&!Tn&&!zn&&null!=ri)return n&&St(t,Math.max(0,Math.min(o.scrollTop+n*ri,o.scrollHeight-o.clientHeight))),Mt(t,Math.max(0,Math.min(o.scrollLeft+r*ri,o.scrollWidth-o.clientWidth))),Er(e),void(i.wheelStartX=null);if(n&&null!=ri){var s=n*ri,a=t.doc.scrollTop,u=a+i.wrapper.clientHeight;0>s?a=Math.max(0,a+s-50):u=Math.min(t.doc.height,u+s+50),b(t,[],{top:a,bottom:u})}20>ei&&(null==i.wheelStartX?(i.wheelStartX=o.scrollLeft,i.wheelStartY=o.scrollTop,i.wheelDX=r,i.wheelDY=n,setTimeout(function(){if(null!=i.wheelStartX){var t=o.scrollLeft-i.wheelStartX,e=o.scrollTop-i.wheelStartY,r=e&&i.wheelDY&&e/i.wheelDY||t&&i.wheelDX&&t/i.wheelDX;i.wheelStartX=i.wheelStartY=null,r&&(ri=(ri*ei+r)/(ei+1),++ei)}},200)):(i.wheelDX+=r,i.wheelDY+=n))}}function At(t,e,r){if("string"==typeof e&&(e=gi[e],!e))return!1;t.display.pollingFast&&ht(t)&&(t.display.pollingFast=!1);var n=t.doc,i=n.sel.shift,o=!1;try{gt(t)&&(t.state.suppressEdits=!0),r&&(n.sel.shift=!1),o=e(t)!=Ti}finally{n.sel.shift=i,t.state.suppressEdits=!1}return o}function Nt(t){var e=t.state.keyMaps.slice(0);return t.options.extraKeys&&e.push(t.options.extraKeys),e.push(t.options.keyMap),e}function Ht(t,e){var r=Ce(t.options.keyMap),n=r.auto;clearTimeout(ni),n&&!Le(e)&&(ni=setTimeout(function(){Ce(t.options.keyMap)==r&&(t.options.keyMap=n.call?n.call(null,t):n,l(t))},50));var i=ke(e,!0),o=!1;if(!i)return!1;var s=Nt(t);return o=e.shiftKey?we("Shift-"+i,s,function(e){return At(t,e,!0)})||we(i,s,function(e){return("string"==typeof e?/^go[A-Z]/.test(e):e.motion)?At(t,e):void 0}):we(i,s,function(e){return At(t,e)}),o&&(Er(e),D(t),Hn&&(e.oldKeyCode=e.keyCode,e.keyCode=0),Kr(t,"keyHandled",t,i,e)),o}function Dt(t,e,r){var n=we("'"+r+"'",Nt(t),function(e){return At(t,e,!0)});return n&&(Er(e),D(t),Kr(t,"keyHandled",t,"'"+r+"'",e)),n}function Wt(t){var e=this;if(e.state.focused||Et(e),!(Ur(e,t)||e.options.onKeyEvent&&e.options.onKeyEvent(e,Or(t)))){An&&27==t.keyCode&&(t.returnValue=!1);var r=t.keyCode;e.doc.sel.shift=16==r||t.shiftKey;var n=Ht(e,t);zn&&(oi=n?r:null,!n&&88==r&&!Ii&&(Kn?t.metaKey:t.ctrlKey)&&e.replaceSelection(""))}}function Ot(t){var e=this;if(!(Ur(e,t)||e.options.onKeyEvent&&e.options.onKeyEvent(e,Or(t)))){var r=t.keyCode,n=t.charCode;if(zn&&r==oi)return oi=null,void Er(t);if(!(zn&&(!t.which||t.which<10)||Fn)||!Ht(e,t)){var i=String.fromCharCode(null==n?r:n);this.options.electricChars&&this.doc.mode.electricChars&&this.options.smartIndent&&!gt(this)&&this.doc.mode.electricChars.indexOf(i)>-1&&setTimeout(lt(e,function(){he(e,e.doc.sel.to.line,"smart")}),75),Dt(e,t,i)||(An&&!Hn&&(e.display.inputHasSelection=null),ft(e))}}}function Et(t){"nocursor"!=t.options.readOnly&&(t.state.focused||(Vr(t,"focus",t),t.state.focused=!0,-1==t.display.wrapper.className.search(/\bCodeMirror-focused\b/)&&(t.display.wrapper.className+=" CodeMirror-focused"),t.curOp||(dt(t,!0),Wn&&setTimeout(nn(dt,t,!0),0))),ct(t),D(t))}function zt(t){t.state.focused&&(Vr(t,"blur",t),t.state.focused=!1,t.display.wrapper.className=t.display.wrapper.className.replace(" CodeMirror-focused","")),clearInterval(t.display.blinker),setTimeout(function(){t.state.focused||(t.doc.sel.shift=!1)},150)}function It(t,e){function r(){if(null!=i.input.selectionStart){var t=i.input.value=""+(jt(o.from,o.to)?"":i.input.value);i.prevInput="",i.input.selectionStart=1,i.input.selectionEnd=t.length}}function n(){if(i.inputDiv.style.position="relative",i.input.style.cssText=u,Hn&&(i.scrollbarV.scrollTop=i.scroller.scrollTop=s),ct(t),null!=i.input.selectionStart){(!An||Hn)&&r(),clearTimeout(ii);var e=0,n=function(){" "==i.prevInput&&0==i.input.selectionStart?lt(t,gi.selectAll)(t):e++<10?ii=setTimeout(n,500):dt(t)};ii=setTimeout(n,200)}}if(!Ur(t,e,"contextmenu")){var i=t.display,o=t.doc.sel;if(!vt(i,e)&&!Ct(t,e)){var l=yt(t,e),s=i.scroller.scrollTop;if(l&&!zn){var a=t.options.resetSelectionOnContextMenu;a&&(jt(o.from,o.to)||$t(l,o.from)||!$t(l,o.to))&<(t,ne)(t.doc,l,l);var u=i.input.style.cssText;if(i.inputDiv.style.position="absolute",i.input.style.cssText="position: fixed; width: 30px; height: 30px; top: "+(e.clientY-5)+"px; left: "+(e.clientX-5)+"px; z-index: 1000; background: white; outline: none;border-width: 0; outline: none; overflow: hidden; opacity: .05; -ms-opacity: .05; filter: alpha(opacity=5);",pt(t),dt(t,!0),jt(o.from,o.to)&&(i.input.value=i.prevInput=" "),An&&!Hn&&r(),Zn){Fr(e);var c=function(){Gr(window,"mouseup",c),setTimeout(n,20)};Br(window,"mouseup",c)}else setTimeout(n,50)}}}}function Ft(t,e,r){if(!$t(e.from,r))return Qt(t,r);var n=e.text.length-1-(e.to.line-e.from.line);if(r.line>e.to.line+n){var i=r.line-n,o=t.first+t.size-1;return i>o?Yt(o,pr(t,o).text.length):Jt(r,pr(t,i).text.length)}if(r.line==e.to.line+n)return Jt(r,qr(e.text).length+(1==e.text.length?e.from.ch:0)+pr(t,e.to.line).text.length-e.to.ch);var l=r.line-e.from.line;return Jt(r,e.text[l].length+(l?0:e.from.ch))}function Pt(t,e,r){if(r&&"object"==typeof r)return{anchor:Ft(t,e,r.anchor),head:Ft(t,e,r.head)};if("start"==r)return{anchor:e.from,head:e.from};var n=li(e);if("around"==r)return{anchor:e.from,head:n};if("end"==r)return{anchor:n,head:n};var i=function(t){if($t(t,e.from))return t;if(!$t(e.to,t))return n;var r=t.line+e.text.length-(e.to.line-e.from.line)-1,i=t.ch;return t.line==e.to.line&&(i+=n.ch-e.to.ch),Yt(r,i)};return{anchor:i(t.sel.anchor),head:i(t.sel.head)}}function Rt(t,e,r){var n={canceled:!1,from:e.from,to:e.to,text:e.text,origin:e.origin,cancel:function(){this.canceled=!0}};return r&&(n.update=function(e,r,n,i){e&&(this.from=Qt(t,e)),r&&(this.to=Qt(t,r)),n&&(this.text=n),void 0!==i&&(this.origin=i)}),Vr(t,"beforeChange",t,n),t.cm&&Vr(t.cm,"beforeChange",t.cm,n),n.canceled?null:{from:n.from,to:n.to,text:n.text,origin:n.origin}}function Bt(t,e,r,n){if(t.cm){if(!t.cm.curOp)return lt(t.cm,Bt)(t,e,r,n);if(t.cm.state.suppressEdits)return}if(!(_r(t,"beforeChange")||t.cm&&_r(t.cm,"beforeChange"))||(e=Rt(t,e,!0))){var i=qn&&!n&&Fe(t,e.from,e.to);if(i){for(var o=i.length-1;o>=1;--o)Gt(t,{from:i[o].from,to:i[o].to,text:[""]});i.length&&Gt(t,{from:i[0].from,to:i[0].to,text:e.text},r)}else Gt(t,e,r)}}function Gt(t,e,r){if(1!=e.text.length||""!=e.text[0]||!jt(e.from,e.to)){var n=Pt(t,e,r);Sr(t,e,n,t.cm?t.cm.curOp.id:NaN),Ut(t,e,n,ze(t,e));var i=[];hr(t,function(t,r){r||-1!=Jr(i,t.history)||(Dr(t.history,e),i.push(t.history)),Ut(t,e,null,ze(t,e))})}}function Vt(t,e){if(!t.cm||!t.cm.state.suppressEdits){var r=t.history,n=("undo"==e?r.done:r.undone).pop();if(n){var i={changes:[],anchorBefore:n.anchorAfter,headBefore:n.headAfter,anchorAfter:n.anchorBefore,headAfter:n.headBefore,generation:r.generation};("undo"==e?r.undone:r.done).push(i),r.generation=n.generation||++r.maxGeneration;for(var o=_r(t,"beforeChange")||t.cm&&_r(t.cm,"beforeChange"),l=n.changes.length-1;l>=0;--l){var s=n.changes[l];if(s.origin=e,o&&!Rt(t,s,!1))return void(("undo"==e?r.done:r.undone).length=0);i.changes.push(kr(t,s));var a=l?Pt(t,s,null):{anchor:n.anchorBefore,head:n.headBefore};Ut(t,s,a,Ie(t,s));var u=[];hr(t,function(t,e){e||-1!=Jr(u,t.history)||(Dr(t.history,s),u.push(t.history)),Ut(t,s,null,Ie(t,s))})}}}}function Kt(t,e){function r(t){return Yt(t.line+e,t.ch)}t.first+=e,t.cm&&ut(t.cm,t.first,t.first,e),t.sel.head=r(t.sel.head),t.sel.anchor=r(t.sel.anchor),t.sel.from=r(t.sel.from),t.sel.to=r(t.sel.to)}function Ut(t,e,r,n){if(t.cm&&!t.cm.curOp)return lt(t.cm,Ut)(t,e,r,n);if(e.to.line<t.first)return void Kt(t,e.text.length-1-(e.to.line-e.from.line));if(!(e.from.line>t.lastLine())){if(e.from.line<t.first){var i=e.text.length-1-(t.first-e.from.line);Kt(t,i),e={from:Yt(t.first,0),to:Yt(e.to.line+i,e.to.ch),text:[qr(e.text)],origin:e.origin}}var o=t.lastLine();e.to.line>o&&(e={from:e.from,to:Yt(o,pr(t,o).text.length),text:[e.text[0]],origin:e.origin}),e.removed=gr(t,e.from,e.to),r||(r=Pt(t,e,null)),t.cm?Xt(t.cm,e,n,r):ur(t,e,n,r)}}function Xt(t,e,r,n){var o=t.doc,l=t.display,s=e.from,a=e.to,u=!1,f=s.line;t.options.lineWrapping||(f=yr(Ge(o,pr(o,s.line))),o.iter(f,a.line+1,function(t){return t==l.maxLine?(u=!0,!0):void 0})),$t(o.sel.head,e.from)||$t(e.to,o.sel.head)||(t.curOp.cursorActivity=!0),ur(o,e,r,n,i(t)),t.options.lineWrapping||(o.iter(f,s.line+e.text.length,function(t){var e=c(o,t);e>l.maxLineLength&&(l.maxLine=t,l.maxLineLength=e,l.maxLineChanged=!0,u=!1)}),u&&(t.curOp.updateMaxLine=!0)),o.frontier=Math.min(o.frontier,s.line),W(t,400);var h=e.text.length-(a.line-s.line)-1;if(ut(t,s.line,a.line+1,h),_r(t,"change")){var d={from:s,to:a,text:e.text,removed:e.removed,origin:e.origin};if(t.curOp.textChanged){for(var p=t.curOp.textChanged;p.next;p=p.next);p.next=d}else t.curOp.textChanged=d}}function _t(t,e,r,n,i){if(n||(n=r),$t(n,r)){var o=n;n=r,r=o}"string"==typeof e&&(e=Ei(e)),Bt(t,{from:r,to:n,text:e,origin:i},null)}function Yt(t,e){return this instanceof Yt?(this.line=t,void(this.ch=e)):new Yt(t,e)}function jt(t,e){return t.line==e.line&&t.ch==e.ch}function $t(t,e){return t.line<e.line||t.line==e.line&&t.ch<e.ch}function Zt(t){return Yt(t.line,t.ch)}function qt(t,e){return Math.max(t.first,Math.min(e,t.first+t.size-1))}function Qt(t,e){if(e.line<t.first)return Yt(t.first,0);var r=t.first+t.size-1;return e.line>r?Yt(r,pr(t,r).text.length):Jt(e,pr(t,e.line).text.length)}function Jt(t,e){var r=t.ch;return null==r||r>e?Yt(t.line,e):0>r?Yt(t.line,0):t}function te(t,e){return e>=t.first&&e<t.first+t.size}function ee(t,e,r,n){if(t.sel.shift||t.sel.extend){var i=t.sel.anchor;if(r){var o=$t(e,i);o!=$t(r,i)?(i=e,e=r):o!=$t(e,r)&&(e=r)}ne(t,i,e,n)}else ne(t,e,r||e,n);t.cm&&(t.cm.curOp.userSelChange=!0)}function re(t,e,r){var n={anchor:e,head:r};return Vr(t,"beforeSelectionChange",t,n),t.cm&&Vr(t.cm,"beforeSelectionChange",t.cm,n),n.anchor=Qt(t,n.anchor),n.head=Qt(t,n.head),n}function ne(t,e,r,n,i){if(!i&&_r(t,"beforeSelectionChange")||t.cm&&_r(t.cm,"beforeSelectionChange")){var o=re(t,e,r);r=o.head,e=o.anchor}var l=t.sel;if(l.goalColumn=null,null==n&&(n=$t(r,l.head)?-1:1),(i||!jt(e,l.anchor))&&(e=oe(t,e,n,"push"!=i)),(i||!jt(r,l.head))&&(r=oe(t,r,n,"push"!=i)),!jt(l.anchor,e)||!jt(l.head,r)){l.anchor=e,l.head=r;var s=$t(r,e);l.from=s?r:e,l.to=s?e:r,t.cm&&(t.cm.curOp.updateInput=t.cm.curOp.selectionChanged=t.cm.curOp.cursorActivity=!0),Kr(t,"cursorActivity",t)}}function ie(t){ne(t.doc,t.doc.sel.from,t.doc.sel.to,null,"push")}function oe(t,e,r,n){var i=!1,o=e,l=r||1;t.cantEdit=!1;t:for(;;){var s=pr(t,o.line);if(s.markedSpans)for(var a=0;a<s.markedSpans.length;++a){var u=s.markedSpans[a],c=u.marker;if((null==u.from||(c.inclusiveLeft?u.from<=o.ch:u.from<o.ch))&&(null==u.to||(c.inclusiveRight?u.to>=o.ch:u.to>o.ch))){if(n&&(Vr(c,"beforeCursorEnter"),c.explicitlyCleared)){if(s.markedSpans){--a;continue}break}if(!c.atomic)continue;var f=c.find()[0>l?"from":"to"];if(jt(f,o)&&(f.ch+=l,f.ch<0?f=f.line>t.first?Qt(t,Yt(f.line-1)):null:f.ch>s.text.length&&(f=f.line<t.first+t.size-1?Yt(f.line+1,0):null),!f)){if(i)return n?(t.cantEdit=!0,Yt(t.first,0)):oe(t,e,r,!0);i=!0,f=e,l=-l}o=f;continue t}}return o}}function le(t){var e=se(t,t.doc.sel.head,null,t.options.cursorScrollMargin);if(t.state.focused){var r=t.display,n=fn(r.sizer),i=null;if(e.top+n.top<0?i=!0:e.bottom+n.top>(window.innerHeight||document.documentElement.clientHeight)&&(i=!1),null!=i&&!Bn){var o="none"==r.cursor.style.display;o&&(r.cursor.style.display="",r.cursor.style.left=e.left+"px",r.cursor.style.top=e.top-r.viewOffset+"px"),r.cursor.scrollIntoView(i),o&&(r.cursor.style.display="none")}}}function se(t,e,r,n){for(null==n&&(n=0);;){var i=!1,o=Q(t,e),l=r&&r!=e?Q(t,r):o,s=ue(t,Math.min(o.left,l.left),Math.min(o.top,l.top)-n,Math.max(o.left,l.left),Math.max(o.bottom,l.bottom)+n),a=t.doc.scrollTop,u=t.doc.scrollLeft;if(null!=s.scrollTop&&(St(t,s.scrollTop),Math.abs(t.doc.scrollTop-a)>1&&(i=!0)),null!=s.scrollLeft&&(Mt(t,s.scrollLeft),Math.abs(t.doc.scrollLeft-u)>1&&(i=!0)),!i)return o}}function ae(t,e,r,n,i){var o=ue(t,e,r,n,i);null!=o.scrollTop&&St(t,o.scrollTop),null!=o.scrollLeft&&Mt(t,o.scrollLeft)}function ue(t,e,r,n,i){var o=t.display,l=rt(t.display);0>r&&(r=0);var s=o.scroller.clientHeight-Mi,a=o.scroller.scrollTop,u={},c=t.doc.height+F(o),f=l>r,h=i>c-l;if(a>r)u.scrollTop=f?0:r;else if(i>a+s){var d=Math.min(r,(h?c:i)-s);d!=a&&(u.scrollTop=d)}var p=o.scroller.clientWidth-Mi,g=o.scroller.scrollLeft;e+=o.gutters.offsetWidth,n+=o.gutters.offsetWidth;var m=o.gutters.offsetWidth,v=m+10>e;return g+m>e||v?(v&&(e=0),u.scrollLeft=Math.max(0,e-10-m)):n>p+g-3&&(u.scrollLeft=n+10-p),u}function ce(t,e,r){t.curOp.updateScrollPos={scrollLeft:null==e?t.doc.scrollLeft:e,scrollTop:null==r?t.doc.scrollTop:r}}function fe(t,e,r){var n=t.curOp.updateScrollPos||(t.curOp.updateScrollPos={scrollLeft:t.doc.scrollLeft,scrollTop:t.doc.scrollTop}),i=t.display.scroller;n.scrollTop=Math.max(0,Math.min(i.scrollHeight-i.clientHeight,n.scrollTop+r)),n.scrollLeft=Math.max(0,Math.min(i.scrollWidth-i.clientWidth,n.scrollLeft+e))}function he(t,e,r,n){var i=t.doc;if(null==r&&(r="add"),"smart"==r)if(t.doc.mode.indent)var o=z(t,e);else r="prev";var l,s=t.options.tabSize,a=pr(i,e),u=$r(a.text,null,s),c=a.text.match(/^\s*/)[0];if("smart"==r&&(l=t.doc.mode.indent(o,a.text.slice(c.length),a.text),l==Ti)){if(!n)return;r="prev"}"prev"==r?l=e>i.first?$r(pr(i,e-1).text,null,s):0:"add"==r?l=u+t.options.indentUnit:"subtract"==r?l=u-t.options.indentUnit:"number"==typeof r&&(l=u+r),l=Math.max(0,l);var f="",h=0;if(t.options.indentWithTabs)for(var d=Math.floor(l/s);d;--d)h+=s,f+=" ";l>h&&(f+=Zr(l-h)),f!=c?_t(t.doc,f,Yt(e,0),Yt(e,c.length),"+input"):i.sel.head.line==e&&i.sel.head.ch<c.length&&ne(i,Yt(e,c.length),Yt(e,c.length),1),a.stateAfter=null}function de(t,e,r){var n=e,i=e,o=t.doc;return"number"==typeof e?i=pr(o,qt(o,e)):n=yr(e),null==n?null:r(i,n)?(ut(t,n,n+1),i):null}function pe(t,e,r,n,i){function o(){var e=s+r;return e<t.first||e>=t.first+t.size?f=!1:(s=e,c=pr(t,e))}function l(t){var e=(i?Sn:Mn)(c,a,r,!0);if(null==e){if(t||!o())return f=!1;a=i?(0>r?bn:yn)(c):0>r?c.text.length:0}else a=e;return!0}var s=e.line,a=e.ch,u=r,c=pr(t,s),f=!0;if("char"==n)l();else if("column"==n)l(!0);else if("word"==n||"group"==n)for(var h=null,d="group"==n,p=!0;!(0>r)||l(!p);p=!1){var g=c.text.charAt(a)||"\n",m=on(g)?"w":d?/\s/.test(g)?null:"p":null;if(h&&h!=m){0>r&&(r=1,l());break}if(m&&(h=m),r>0&&!l(!p))break}var v=oe(t,Yt(s,a),u,!0);return f||(v.hitSide=!0),v}function ge(t,e,r,n){var i,o=t.doc,l=e.left;if("page"==n){var s=Math.min(t.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight);i=e.top+r*(s-(0>r?1.5:.5)*rt(t.display))}else"line"==n&&(i=r>0?e.bottom+3:e.top-3);for(;;){var a=tt(t,l,i);if(!a.outside)break;if(0>r?0>=i:i>=o.height){a.hitSide=!0;break}i+=5*r}return a}function me(t,e){var r=e.ch,n=e.ch;if(t){(e.xRel<0||n==t.length)&&r?--r:++n;for(var i=t.charAt(r),o=on(i)?on:/\s/.test(i)?function(t){return/\s/.test(t)}:function(t){return!/\s/.test(t)&&!on(t)};r>0&&o(t.charAt(r-1));)--r;for(;n<t.length&&o(t.charAt(n));)++n}return{from:Yt(e.line,r),to:Yt(e.line,n)}}function ve(t,e){ee(t.doc,Yt(e,0),Qt(t.doc,Yt(e+1,0)))}function ye(e,r,n,i){t.defaults[e]=r,n&&(si[e]=i?function(t,e,r){r!=ui&&n(t,e,r)}:n)}function be(t,e){if(e===!0)return e;if(t.copyState)return t.copyState(e);var r={};for(var n in e){var i=e[n];i instanceof Array&&(i=i.concat([])),r[n]=i}return r}function xe(t,e,r){return t.startState?t.startState(e,r):!0}function Ce(t){return"string"==typeof t?mi[t]:t}function we(t,e,r){function n(e){e=Ce(e);var i=e[t];if(i===!1)return"stop";if(null!=i&&r(i))return!0;if(e.nofallthrough)return"stop";var o=e.fallthrough;if(null==o)return!1;if("[object Array]"!=Object.prototype.toString.call(o))return n(o);for(var l=0,s=o.length;s>l;++l){var a=n(o[l]);if(a)return a}return!1}for(var i=0;i<e.length;++i){var o=n(e[i]);if(o)return"stop"!=o}}function Le(t){var e=Fi[t.keyCode];return"Ctrl"==e||"Alt"==e||"Shift"==e||"Mod"==e}function ke(t,e){if(zn&&34==t.keyCode&&t["char"])return!1;var r=Fi[t.keyCode];return null==r||t.altGraphKey?!1:(t.altKey&&(r="Alt-"+r),($n?t.metaKey:t.ctrlKey)&&(r="Ctrl-"+r),($n?t.ctrlKey:t.metaKey)&&(r="Cmd-"+r),!e&&t.shiftKey&&(r="Shift-"+r),r)}function Se(t,e){this.pos=this.start=0,this.string=t,this.tabSize=e||8,this.lastColumnPos=this.lastColumnValue=0}function Me(t,e){this.lines=[],this.type=e,this.doc=t}function Te(t,e,r,n,i){if(n&&n.shared)return Ne(t,e,r,n,i);if(t.cm&&!t.cm.curOp)return lt(t.cm,Te)(t,e,r,n,i);var o=new Me(t,i);if($t(r,e)||jt(e,r)&&"range"==i&&(!n.inclusiveLeft||!n.inclusiveRight))return o;n&&en(n,o),o.replacedWith&&(o.collapsed=!0,o.replacedWith=sn("span",[o.replacedWith],"CodeMirror-widget"),n.handleMouseEvents||(o.replacedWith.ignoreEvents=!0)),o.collapsed&&(Qn=!0),o.addToHistory&&Sr(t,{from:e,to:r,origin:"markText"},{head:t.sel.head,anchor:t.sel.anchor},NaN);var l,s,a,u=e.line,c=0,f=t.cm;if(t.iter(u,r.line+1,function(n){f&&o.collapsed&&!f.options.lineWrapping&&Ge(t,n)==f.display.maxLine&&(a=!0);var i={from:null,to:null,marker:o};c+=n.text.length,u==e.line&&(i.from=e.ch,c-=e.ch),u==r.line&&(i.to=r.ch,c-=n.text.length-r.ch),o.collapsed&&(u==r.line&&(s=Pe(n,r.ch)),u==e.line?l=Pe(n,e.ch):vr(n,0)),We(n,i),++u}),o.collapsed&&t.iter(e.line,r.line+1,function(e){Ve(t,e)&&vr(e,0)}),o.clearOnEnter&&Br(o,"beforeCursorEnter",function(){o.clear()}),o.readOnly&&(qn=!0,(t.history.done.length||t.history.undone.length)&&t.clearHistory()),o.collapsed){if(l!=s)throw new Error("Inserting collapsed marker overlapping an existing one");o.size=c,o.atomic=!0}return f&&(a&&(f.curOp.updateMaxLine=!0),(o.className||o.title||o.startStyle||o.endStyle||o.collapsed)&&ut(f,e.line,r.line+1),o.atomic&&ie(f)),o}function Ae(t,e){this.markers=t,this.primary=e;for(var r=0,n=this;r<t.length;++r)t[r].parent=this,Br(t[r],"clear",function(){n.clear()})}function Ne(t,e,r,n,i){n=en(n),n.shared=!1;var o=[Te(t,e,r,n,i)],l=o[0],s=n.replacedWith;return hr(t,function(t){s&&(n.replacedWith=s.cloneNode(!0)),o.push(Te(t,Qt(t,e),Qt(t,r),n,i));for(var a=0;a<t.linked.length;++a)if(t.linked[a].isParent)return;l=qr(o)}),new Ae(o,l)}function He(t,e){if(t)for(var r=0;r<t.length;++r){var n=t[r];if(n.marker==e)return n}}function De(t,e){for(var r,n=0;n<t.length;++n)t[n]!=e&&(r||(r=[])).push(t[n]);return r}function We(t,e){t.markedSpans=t.markedSpans?t.markedSpans.concat([e]):[e],e.marker.attachLine(t)}function Oe(t,e,r){if(t)for(var n,i=0;i<t.length;++i){var o=t[i],l=o.marker,s=null==o.from||(l.inclusiveLeft?o.from<=e:o.from<e);if(s||(l.inclusiveLeft&&l.inclusiveRight||"bookmark"==l.type)&&o.from==e&&(!r||!o.marker.insertLeft)){var a=null==o.to||(l.inclusiveRight?o.to>=e:o.to>e);(n||(n=[])).push({from:o.from,to:a?null:o.to,marker:l})}}return n}function Ee(t,e,r){if(t)for(var n,i=0;i<t.length;++i){var o=t[i],l=o.marker,s=null==o.to||(l.inclusiveRight?o.to>=e:o.to>e);if(s||"bookmark"==l.type&&o.from==e&&(!r||o.marker.insertLeft)){var a=null==o.from||(l.inclusiveLeft?o.from<=e:o.from<e);(n||(n=[])).push({from:a?null:o.from-e,to:null==o.to?null:o.to-e,marker:l})}}return n}function ze(t,e){var r=te(t,e.from.line)&&pr(t,e.from.line).markedSpans,n=te(t,e.to.line)&&pr(t,e.to.line).markedSpans;if(!r&&!n)return null;var i=e.from.ch,o=e.to.ch,l=jt(e.from,e.to),s=Oe(r,i,l),a=Ee(n,o,l),u=1==e.text.length,c=qr(e.text).length+(u?i:0);if(s)for(var f=0;f<s.length;++f){var h=s[f];if(null==h.to){var d=He(a,h.marker);d?u&&(h.to=null==d.to?null:d.to+c):h.to=i}}if(a)for(var f=0;f<a.length;++f){var h=a[f];if(null!=h.to&&(h.to+=c),null==h.from){var d=He(s,h.marker);d||(h.from=c,u&&(s||(s=[])).push(h))}else h.from+=c,u&&(s||(s=[])).push(h)}if(u&&s){for(var f=0;f<s.length;++f)null!=s[f].from&&s[f].from==s[f].to&&"bookmark"!=s[f].marker.type&&s.splice(f--,1);s.length||(s=null)}var p=[s];if(!u){var g,m=e.text.length-2;if(m>0&&s)for(var f=0;f<s.length;++f)null==s[f].to&&(g||(g=[])).push({from:null,to:null,marker:s[f].marker});for(var f=0;m>f;++f)p.push(g);p.push(a)}return p}function Ie(t,e){var r=Tr(t,e),n=ze(t,e);if(!r)return n;if(!n)return r;for(var i=0;i<r.length;++i){var o=r[i],l=n[i];if(o&&l)t:for(var s=0;s<l.length;++s){for(var a=l[s],u=0;u<o.length;++u)if(o[u].marker==a.marker)continue t;o.push(a)}else l&&(r[i]=l)}return r}function Fe(t,e,r){var n=null;if(t.iter(e.line,r.line+1,function(t){if(t.markedSpans)for(var e=0;e<t.markedSpans.length;++e){var r=t.markedSpans[e].marker;!r.readOnly||n&&-1!=Jr(n,r)||(n||(n=[])).push(r)}}),!n)return null;for(var i=[{from:e,to:r}],o=0;o<n.length;++o)for(var l=n[o],s=l.find(),a=0;a<i.length;++a){var u=i[a];if(!$t(u.to,s.from)&&!$t(s.to,u.from)){var c=[a,1];($t(u.from,s.from)||!l.inclusiveLeft&&jt(u.from,s.from))&&c.push({from:u.from,to:s.from}),($t(s.to,u.to)||!l.inclusiveRight&&jt(u.to,s.to))&&c.push({from:s.to,to:u.to}),i.splice.apply(i,c),a+=c.length-1}}return i}function Pe(t,e){var r,n=Qn&&t.markedSpans;if(n)for(var i,o=0;o<n.length;++o)i=n[o],i.marker.collapsed&&(null==i.from||i.from<e)&&(null==i.to||i.to>e)&&(!r||r.width<i.marker.width)&&(r=i.marker);return r}function Re(t){return Pe(t,-1)}function Be(t){return Pe(t,t.text.length+1)}function Ge(t,e){for(var r;r=Re(e);)e=pr(t,r.find().from.line);return e}function Ve(t,e){var r=Qn&&e.markedSpans;if(r)for(var n,i=0;i<r.length;++i)if(n=r[i],n.marker.collapsed){if(null==n.from)return!0;if(!n.marker.replacedWith&&0==n.from&&n.marker.inclusiveLeft&&Ke(t,e,n))return!0}}function Ke(t,e,r){if(null==r.to){var n=r.marker.find().to,i=pr(t,n.line);return Ke(t,i,He(i.markedSpans,r.marker))}if(r.marker.inclusiveRight&&r.to==e.text.length)return!0;for(var o,l=0;l<e.markedSpans.length;++l)if(o=e.markedSpans[l],o.marker.collapsed&&!o.marker.replacedWith&&o.from==r.to&&(o.marker.inclusiveLeft||r.marker.inclusiveRight)&&Ke(t,e,o))return!0}function Ue(t){var e=t.markedSpans;if(e){for(var r=0;r<e.length;++r)e[r].marker.detachLine(t);t.markedSpans=null}}function Xe(t,e){if(e){for(var r=0;r<e.length;++r)e[r].marker.attachLine(t);t.markedSpans=e}}function _e(t){return function(){var e=!this.cm.curOp;e&&it(this.cm);try{var r=t.apply(this,arguments)}finally{e&&ot(this.cm)}return r}}function Ye(t){return null!=t.height?t.height:(t.node.parentNode&&1==t.node.parentNode.nodeType||un(t.cm.display.measure,sn("div",[t.node],null,"position: relative")),t.height=t.node.offsetHeight)}function je(t,e,r,n){var i=new vi(t,r,n);return i.noHScroll&&(t.display.alignWidgets=!0),de(t,e,function(e){var r=e.widgets||(e.widgets=[]);if(null==i.insertAt?r.push(i):r.splice(Math.min(r.length-1,Math.max(0,i.insertAt)),0,i),i.line=e,!Ve(t.doc,e)||i.showIfHidden){var n=xr(t,e)<t.doc.scrollTop;vr(e,e.height+Ye(i)),n&&fe(t,0,i.height)}return!0}),i}function $e(t,e,r,n){t.text=e,t.stateAfter&&(t.stateAfter=null),t.styles&&(t.styles=null),null!=t.order&&(t.order=null),Ue(t),Xe(t,r);var i=n?n(t):1;i!=t.height&&vr(t,i)}function Ze(t){t.parent=null,Ue(t)}function qe(t,e,r,n,i,o){var l=r.flattenSpans;null==l&&(l=t.options.flattenSpans);var s,a=0,u=null,c=new Se(e,t.options.tabSize);for(""==e&&r.blankLine&&r.blankLine(n);!c.eol();)c.pos>t.options.maxHighlightLength?(l=!1,o&&tr(t,e,n,c.pos),c.pos=e.length,s=null):s=r.token(c,n),l&&u==s||(a<c.start&&i(c.start,u),a=c.start,u=s),c.start=c.pos;for(;a<c.pos;){var f=Math.min(c.pos,a+5e4);i(f,u),a=f}}function Qe(t,e,r,n){var i=[t.state.modeGen];qe(t,e.text,t.doc.mode,r,function(t,e){i.push(t,e)},n);for(var o=0;o<t.state.overlays.length;++o){var l=t.state.overlays[o],s=1,a=0;qe(t,e.text,l.mode,!0,function(t,e){for(var r=s;t>a;){var n=i[s];n>t&&i.splice(s,1,t,i[s+1],n),s+=2,a=Math.min(t,n)}if(e)if(l.opaque)i.splice(r,s-r,t,e),s=r+2;else for(;s>r;r+=2){var o=i[r+1];i[r+1]=o?o+" "+e:e}})}return i}function Je(t,e){return e.styles&&e.styles[0]==t.state.modeGen||(e.styles=Qe(t,e,e.stateAfter=z(t,yr(e)))),e.styles}function tr(t,e,r,n){var i=t.doc.mode,o=new Se(e,t.options.tabSize);for(o.start=o.pos=n||0,""==e&&i.blankLine&&i.blankLine(r);!o.eol()&&o.pos<=t.options.maxHighlightLength;)i.token(o,r),o.start=o.pos}function er(t,e){if(!t)return null;for(;;){var r=t.match(/(?:^|\s)line-(background-)?(\S+)/);if(!r)break;t=t.slice(0,r.index)+t.slice(r.index+r[0].length);var n=r[1]?"bgClass":"textClass";null==e[n]?e[n]=r[2]:new RegExp("(?:^|s)"+r[2]+"(?:$|s)").test(e[n])||(e[n]+=" "+r[2])}return bi[t]||(bi[t]="cm-"+t.replace(/ +/g," cm-"))}function rr(t,e,r,n){for(var i,o=e,l=!0;i=Re(o);)o=pr(t.doc,i.find().from.line);var s={pre:sn("pre"),col:0,pos:0,measure:null,measuredSomething:!1,cm:t,copyWidgets:n};do{o.text&&(l=!1),s.measure=o==e&&r,s.pos=0,s.addToken=s.measure?or:ir,(An||Wn)&&t.getOption("lineWrapping")&&(s.addToken=lr(s.addToken));var a=ar(o,s,Je(t,o));r&&o==e&&!s.measuredSomething&&(r[0]=s.pre.appendChild(pn(t.display.measure)),s.measuredSomething=!0),a&&(o=pr(t.doc,a.to.line))}while(a);!r||s.measuredSomething||r[0]||(r[0]=s.pre.appendChild(l?sn("span"," "):pn(t.display.measure))),s.pre.firstChild||Ve(t.doc,e)||s.pre.appendChild(document.createTextNode(" "));var u;if(r&&(An||Dn)&&(u=Cr(o))){var c=u.length-1;u[c].from==u[c].to&&--c;var f=u[c],h=u[c-1];if(f.from+1==f.to&&h&&f.level<h.level){var d=r[s.pos-1];d&&d.parentNode.insertBefore(d.measureRight=pn(t.display.measure),d.nextSibling)}}var p=s.textClass?s.textClass+" "+(e.textClass||""):e.textClass;return p&&(s.pre.className=p),Vr(t,"renderLine",t,e,s.pre),s}function nr(t){var e=sn("span","•","cm-invalidchar");return e.title="\\u"+t.charCodeAt(0).toString(16),e}function ir(t,e,r,n,i,o){if(e){var l=t.cm.options.specialChars;if(l.test(e))for(var s=document.createDocumentFragment(),a=0;;){l.lastIndex=a;var u=l.exec(e),c=u?u.index-a:e.length-a;if(c&&(s.appendChild(document.createTextNode(e.slice(a,a+c))),t.col+=c),!u)break;if(a+=c+1," "==u[0]){var f=t.cm.options.tabSize,h=f-t.col%f;s.appendChild(sn("span",Zr(h),"cm-tab")),t.col+=h}else{var d=t.cm.options.specialCharPlaceholder(u[0]);s.appendChild(d),t.col+=1}}else{t.col+=e.length;var s=document.createTextNode(e)}if(r||n||i||t.measure){var p=r||"";n&&(p+=n),i&&(p+=i);var d=sn("span",[s],p);return o&&(d.title=o),t.pre.appendChild(d)}t.pre.appendChild(s)}}function or(t,e,r,n,i){for(var o=t.cm.options.lineWrapping,l=0;l<e.length;++l){var s=e.charAt(l),a=0==l;s>="�"&&"�">s&&l<e.length-1?(s=e.slice(l,l+2),++l):l&&o&&hn(e,l)&&t.pre.appendChild(sn("wbr"));var u=t.measure[t.pos],c=t.measure[t.pos]=ir(t,s,r,a&&n,l==e.length-1&&i);u&&(c.leftSide=u.leftSide||u),An&&o&&" "==s&&l&&!/\s/.test(e.charAt(l-1))&&l<e.length-1&&!/\s/.test(e.charAt(l+1))&&(c.style.whiteSpace="normal"),t.pos+=s.length}e.length&&(t.measuredSomething=!0)}function lr(t){function e(t){for(var e=" ",r=0;r<t.length-2;++r)e+=r%2?" ":" ";return e+=" "}return function(r,n,i,o,l,s){return t(r,n.replace(/ {3,}/g,e),i,o,l,s)}}function sr(t,e,r,n){var i=!n&&r.replacedWith;if(i&&(t.copyWidgets&&(i=i.cloneNode(!0)),t.pre.appendChild(i),t.measure)){if(e)t.measure[t.pos]=i;else{var o=pn(t.cm.display.measure);if("bookmark"!=r.type||r.insertLeft){if(t.measure[t.pos])return;t.measure[t.pos]=t.pre.insertBefore(o,i)}else t.measure[t.pos]=t.pre.appendChild(o)}t.measuredSomething=!0}t.pos+=e}function ar(t,e,r){var n=t.markedSpans,i=t.text,o=0;if(n)for(var l,s,a,u,c,f,h=i.length,d=0,p=1,g="",m=0;;){if(m==d){s=a=u=c="",f=null,m=1/0;for(var v=[],y=0;y<n.length;++y){var b=n[y],x=b.marker;b.from<=d&&(null==b.to||b.to>d)?(null!=b.to&&m>b.to&&(m=b.to,a=""),x.className&&(s+=" "+x.className),x.startStyle&&b.from==d&&(u+=" "+x.startStyle),x.endStyle&&b.to==m&&(a+=" "+x.endStyle),x.title&&!c&&(c=x.title), x.collapsed&&(!f||f.marker.size<x.size)&&(f=b)):b.from>d&&m>b.from&&(m=b.from),"bookmark"==x.type&&b.from==d&&x.replacedWith&&v.push(x)}if(f&&(f.from||0)==d&&(sr(e,(null==f.to?h:f.to)-d,f.marker,null==f.from),null==f.to))return f.marker.find();if(!f&&v.length)for(var y=0;y<v.length;++y)sr(e,0,v[y])}if(d>=h)break;for(var C=Math.min(h,m);;){if(g){var w=d+g.length;if(!f){var L=w>C?g.slice(0,C-d):g;e.addToken(e,L,l?l+s:s,u,d+L.length==m?a:"",c)}if(w>=C){g=g.slice(C-d),d=C;break}d=w,u=""}g=i.slice(o,o=r[p++]),l=er(r[p++],e)}}else for(var p=1;p<r.length;p+=2)e.addToken(e,i.slice(o,o=r[p]),er(r[p+1],e))}function ur(t,e,r,n,i){function o(t){return r?r[t]:null}function l(t,r,n){$e(t,r,n,i),Kr(t,"change",t,e)}var s=e.from,a=e.to,u=e.text,c=pr(t,s.line),f=pr(t,a.line),h=qr(u),d=o(u.length-1),p=a.line-s.line;if(0!=s.ch||0!=a.ch||""!=h||t.cm&&!t.cm.options.wholeLineUpdateBefore)if(c==f)if(1==u.length)l(c,c.text.slice(0,s.ch)+h+c.text.slice(a.ch),d);else{for(var g=[],m=1,v=u.length-1;v>m;++m)g.push(new yi(u[m],o(m),i));g.push(new yi(h+c.text.slice(a.ch),d,i)),l(c,c.text.slice(0,s.ch)+u[0],o(0)),t.insert(s.line+1,g)}else if(1==u.length)l(c,c.text.slice(0,s.ch)+u[0]+f.text.slice(a.ch),o(0)),t.remove(s.line+1,p);else{l(c,c.text.slice(0,s.ch)+u[0],o(0)),l(f,h+f.text.slice(a.ch),d);for(var m=1,v=u.length-1,g=[];v>m;++m)g.push(new yi(u[m],o(m),i));p>1&&t.remove(s.line+1,p-1),t.insert(s.line+1,g)}else{for(var m=0,v=u.length-1,g=[];v>m;++m)g.push(new yi(u[m],o(m),i));l(f,f.text,d),p&&t.remove(s.line,p),g.length&&t.insert(s.line,g)}Kr(t,"change",t,e),ne(t,n.anchor,n.head,null,!0)}function cr(t){this.lines=t,this.parent=null;for(var e=0,r=t.length,n=0;r>e;++e)t[e].parent=this,n+=t[e].height;this.height=n}function fr(t){this.children=t;for(var e=0,r=0,n=0,i=t.length;i>n;++n){var o=t[n];e+=o.chunkSize(),r+=o.height,o.parent=this}this.size=e,this.height=r,this.parent=null}function hr(t,e,r){function n(t,i,o){if(t.linked)for(var l=0;l<t.linked.length;++l){var s=t.linked[l];if(s.doc!=i){var a=o&&s.sharedHist;(!r||a)&&(e(s.doc,a),n(s.doc,t,a))}}}n(t,null,!0)}function dr(t,e){if(e.cm)throw new Error("This document is already in use.");t.doc=e,e.cm=t,o(t),r(t),t.options.lineWrapping||f(t),t.options.mode=e.modeOption,ut(t)}function pr(t,e){for(e-=t.first;!t.lines;)for(var r=0;;++r){var n=t.children[r],i=n.chunkSize();if(i>e){t=n;break}e-=i}return t.lines[e]}function gr(t,e,r){var n=[],i=e.line;return t.iter(e.line,r.line+1,function(t){var o=t.text;i==r.line&&(o=o.slice(0,r.ch)),i==e.line&&(o=o.slice(e.ch)),n.push(o),++i}),n}function mr(t,e,r){var n=[];return t.iter(e,r,function(t){n.push(t.text)}),n}function vr(t,e){for(var r=e-t.height,n=t;n;n=n.parent)n.height+=r}function yr(t){if(null==t.parent)return null;for(var e=t.parent,r=Jr(e.lines,t),n=e.parent;n;e=n,n=n.parent)for(var i=0;n.children[i]!=e;++i)r+=n.children[i].chunkSize();return r+e.first}function br(t,e){var r=t.first;t:do{for(var n=0,i=t.children.length;i>n;++n){var o=t.children[n],l=o.height;if(l>e){t=o;continue t}e-=l,r+=o.chunkSize()}return r}while(!t.lines);for(var n=0,i=t.lines.length;i>n;++n){var s=t.lines[n],a=s.height;if(a>e)break;e-=a}return r+n}function xr(t,e){e=Ge(t.doc,e);for(var r=0,n=e.parent,i=0;i<n.lines.length;++i){var o=n.lines[i];if(o==e)break;r+=o.height}for(var l=n.parent;l;n=l,l=n.parent)for(var i=0;i<l.children.length;++i){var s=l.children[i];if(s==n)break;r+=s.height}return r}function Cr(t){var e=t.order;return null==e&&(e=t.order=Ri(t.text)),e}function wr(t){return{done:[],undone:[],undoDepth:1/0,lastTime:0,lastOp:null,lastOrigin:null,generation:t||1,maxGeneration:t||1}}function Lr(t,e,r,n){var i=e["spans_"+t.id],o=0;t.iter(Math.max(t.first,r),Math.min(t.first+t.size,n),function(r){r.markedSpans&&((i||(i=e["spans_"+t.id]={}))[o]=r.markedSpans),++o})}function kr(t,e){var r={line:e.from.line,ch:e.from.ch},n={from:r,to:li(e),text:gr(t,e.from,e.to)};return Lr(t,n,e.from.line,e.to.line+1),hr(t,function(t){Lr(t,n,e.from.line,e.to.line+1)},!0),n}function Sr(t,e,r,n){var i=t.history;i.undone.length=0;var o=+new Date,l=qr(i.done);if(l&&(i.lastOp==n||i.lastOrigin==e.origin&&e.origin&&("+"==e.origin.charAt(0)&&t.cm&&i.lastTime>o-t.cm.options.historyEventDelay||"*"==e.origin.charAt(0)))){var s=qr(l.changes);jt(e.from,e.to)&&jt(e.from,s.to)?s.to=li(e):l.changes.push(kr(t,e)),l.anchorAfter=r.anchor,l.headAfter=r.head}else for(l={changes:[kr(t,e)],generation:i.generation,anchorBefore:t.sel.anchor,headBefore:t.sel.head,anchorAfter:r.anchor,headAfter:r.head},i.done.push(l),i.generation=++i.maxGeneration;i.done.length>i.undoDepth;)i.done.shift();i.lastTime=o,i.lastOp=n,i.lastOrigin=e.origin}function Mr(t){if(!t)return null;for(var e,r=0;r<t.length;++r)t[r].marker.explicitlyCleared?e||(e=t.slice(0,r)):e&&e.push(t[r]);return e?e.length?e:null:t}function Tr(t,e){var r=e["spans_"+t.id];if(!r)return null;for(var n=0,i=[];n<e.text.length;++n)i.push(Mr(r[n]));return i}function Ar(t,e){for(var r=0,n=[];r<t.length;++r){var i=t[r],o=i.changes,l=[];n.push({changes:l,anchorBefore:i.anchorBefore,headBefore:i.headBefore,anchorAfter:i.anchorAfter,headAfter:i.headAfter});for(var s=0;s<o.length;++s){var a,u=o[s];if(l.push({from:u.from,to:u.to,text:u.text}),e)for(var c in u)(a=c.match(/^spans_(\d+)$/))&&Jr(e,Number(a[1]))>-1&&(qr(l)[c]=u[c],delete u[c])}}return n}function Nr(t,e,r,n){r<t.line?t.line+=n:e<t.line&&(t.line=e,t.ch=0)}function Hr(t,e,r,n){for(var i=0;i<t.length;++i){for(var o=t[i],l=!0,s=0;s<o.changes.length;++s){var a=o.changes[s];if(o.copied||(a.from=Zt(a.from),a.to=Zt(a.to)),r<a.from.line)a.from.line+=n,a.to.line+=n;else if(e<=a.to.line){l=!1;break}}o.copied||(o.anchorBefore=Zt(o.anchorBefore),o.headBefore=Zt(o.headBefore),o.anchorAfter=Zt(o.anchorAfter),o.readAfter=Zt(o.headAfter),o.copied=!0),l?(Nr(o.anchorBefore),Nr(o.headBefore),Nr(o.anchorAfter),Nr(o.headAfter)):(t.splice(0,i+1),i=0)}}function Dr(t,e){var r=e.from.line,n=e.to.line,i=e.text.length-(n-r)-1;Hr(t.done,r,n,i),Hr(t.undone,r,n,i)}function Wr(){Fr(this)}function Or(t){return t.stop||(t.stop=Wr),t}function Er(t){t.preventDefault?t.preventDefault():t.returnValue=!1}function zr(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0}function Ir(t){return null!=t.defaultPrevented?t.defaultPrevented:0==t.returnValue}function Fr(t){Er(t),zr(t)}function Pr(t){return t.target||t.srcElement}function Rr(t){var e=t.which;return null==e&&(1&t.button?e=1:2&t.button?e=3:4&t.button&&(e=2)),Kn&&t.ctrlKey&&1==e&&(e=3),e}function Br(t,e,r){if(t.addEventListener)t.addEventListener(e,r,!1);else if(t.attachEvent)t.attachEvent("on"+e,r);else{var n=t._handlers||(t._handlers={}),i=n[e]||(n[e]=[]);i.push(r)}}function Gr(t,e,r){if(t.removeEventListener)t.removeEventListener(e,r,!1);else if(t.detachEvent)t.detachEvent("on"+e,r);else{var n=t._handlers&&t._handlers[e];if(!n)return;for(var i=0;i<n.length;++i)if(n[i]==r){n.splice(i,1);break}}}function Vr(t,e){var r=t._handlers&&t._handlers[e];if(r)for(var n=Array.prototype.slice.call(arguments,2),i=0;i<r.length;++i)r[i].apply(null,n)}function Kr(t,e){function r(t){return function(){t.apply(null,i)}}var n=t._handlers&&t._handlers[e];if(n){var i=Array.prototype.slice.call(arguments,2);ki||(++Si,ki=[],setTimeout(Xr,0));for(var o=0;o<n.length;++o)ki.push(r(n[o]))}}function Ur(t,e,r){return Vr(t,r||e.type,t,e),Ir(e)||e.codemirrorIgnore}function Xr(){--Si;var t=ki;ki=null;for(var e=0;e<t.length;++e)t[e]()}function _r(t,e){var r=t._handlers&&t._handlers[e];return r&&r.length>0}function Yr(t){t.prototype.on=function(t,e){Br(this,t,e)},t.prototype.off=function(t,e){Gr(this,t,e)}}function jr(){this.id=null}function $r(t,e,r,n,i){null==e&&(e=t.search(/[^\s\u00a0]/),-1==e&&(e=t.length));for(var o=n||0,l=i||0;e>o;++o)" "==t.charAt(o)?l+=r-l%r:++l;return l}function Zr(t){for(;Ai.length<=t;)Ai.push(qr(Ai)+" ");return Ai[t]}function qr(t){return t[t.length-1]}function Qr(t){if(Gn)t.selectionStart=0,t.selectionEnd=t.value.length;else try{t.select()}catch(e){}}function Jr(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;n>r;++r)if(t[r]==e)return r;return-1}function tn(t,e){function r(){}r.prototype=t;var n=new r;return e&&en(e,n),n}function en(t,e){e||(e={});for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);return e}function rn(t){for(var e=[],r=0;t>r;++r)e.push(void 0);return e}function nn(t){var e=Array.prototype.slice.call(arguments,1);return function(){return t.apply(null,e)}}function on(t){return/\w/.test(t)||t>""&&(t.toUpperCase()!=t.toLowerCase()||Ni.test(t))}function ln(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e])return!1;return!0}function sn(t,e,r,n){var i=document.createElement(t);if(r&&(i.className=r),n&&(i.style.cssText=n),"string"==typeof e)cn(i,e);else if(e)for(var o=0;o<e.length;++o)i.appendChild(e[o]);return i}function an(t){for(var e=t.childNodes.length;e>0;--e)t.removeChild(t.firstChild);return t}function un(t,e){return an(t).appendChild(e)}function cn(t,e){Hn?(t.innerHTML="",t.appendChild(document.createTextNode(e))):t.textContent=e}function fn(t){return t.getBoundingClientRect()}function hn(){return!1}function dn(t){if(null!=Wi)return Wi;var e=sn("div",null,null,"width: 50px; height: 50px; overflow-x: scroll");return un(t,e),e.offsetWidth&&(Wi=e.offsetHeight-e.clientHeight),Wi||0}function pn(t){if(null==Oi){var e=sn("span","");un(t,sn("span",[e,document.createTextNode("x")])),0!=t.firstChild.offsetHeight&&(Oi=e.offsetWidth<=1&&e.offsetHeight>2&&!Nn)}return Oi?sn("span",""):sn("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px")}function gn(t,e,r,n){if(!t)return n(e,r,"ltr");for(var i=!1,o=0;o<t.length;++o){var l=t[o];(l.from<r&&l.to>e||e==r&&l.to==e)&&(n(Math.max(l.from,e),Math.min(l.to,r),1==l.level?"rtl":"ltr"),i=!0)}i||n(e,r,"ltr")}function mn(t){return t.level%2?t.to:t.from}function vn(t){return t.level%2?t.from:t.to}function yn(t){var e=Cr(t);return e?mn(e[0]):0}function bn(t){var e=Cr(t);return e?vn(qr(e)):t.text.length}function xn(t,e){var r=pr(t.doc,e),n=Ge(t.doc,r);n!=r&&(e=yr(n));var i=Cr(n),o=i?i[0].level%2?bn(n):yn(n):0;return Yt(e,o)}function Cn(t,e){for(var r,n;r=Be(n=pr(t.doc,e));)e=r.find().to.line;var i=Cr(n),o=i?i[0].level%2?yn(n):bn(n):n.text.length;return Yt(e,o)}function wn(t,e,r){var n=t[0].level;return e==n?!0:r==n?!1:r>e}function Ln(t,e){for(var r,n=0;n<t.length;++n){var i=t[n];if(i.from<e&&i.to>e)return Pi=null,n;if(i.from==e||i.to==e){if(null!=r)return wn(t,i.level,t[r].level)?(Pi=r,n):(Pi=n,r);r=n}}return Pi=null,r}function kn(t,e,r,n){if(!n)return e+r;do e+=r;while(e>0&&Hi.test(t.text.charAt(e)));return e}function Sn(t,e,r,n){var i=Cr(t);if(!i)return Mn(t,e,r,n);for(var o=Ln(i,e),l=i[o],s=kn(t,e,l.level%2?-r:r,n);;){if(s>l.from&&s<l.to)return s;if(s==l.from||s==l.to)return Ln(i,s)==o?s:(l=i[o+=r],r>0==l.level%2?l.to:l.from);if(l=i[o+=r],!l)return null;s=r>0==l.level%2?kn(t,l.to,-1,n):kn(t,l.from,1,n)}}function Mn(t,e,r,n){var i=e+r;if(n)for(;i>0&&Hi.test(t.text.charAt(i));)i+=r;return 0>i||i>t.text.length?null:i}var Tn=/gecko\/\d/i.test(navigator.userAgent),An=/MSIE \d/.test(navigator.userAgent),Nn=An&&(null==document.documentMode||document.documentMode<8),Hn=An&&(null==document.documentMode||document.documentMode<9),Dn=/Trident\/([7-9]|\d{2,})\./.test(navigator.userAgent),Wn=/WebKit\//.test(navigator.userAgent),On=Wn&&/Qt\/\d+\.\d+/.test(navigator.userAgent),En=/Chrome\//.test(navigator.userAgent),zn=/Opera\//.test(navigator.userAgent),In=/Apple Computer/.test(navigator.vendor),Fn=/KHTML\//.test(navigator.userAgent),Pn=/Mac OS X 1\d\D([7-9]|\d\d)\D/.test(navigator.userAgent),Rn=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent),Bn=/PhantomJS/.test(navigator.userAgent),Gn=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent),Vn=Gn||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent),Kn=Gn||/Mac/.test(navigator.platform),Un=/win/i.test(navigator.platform),Xn=zn&&navigator.userAgent.match(/Version\/(\d*\.\d*)/);Xn&&(Xn=Number(Xn[1])),Xn&&Xn>=15&&(zn=!1,Wn=!0);var _n,Yn,jn,$n=Kn&&(On||zn&&(null==Xn||12.11>Xn)),Zn=Tn||An&&!Hn,qn=!1,Qn=!1,Jn=0,ti=0,ei=0,ri=null;An?ri=-.53:Tn?ri=15:En?ri=-.7:In&&(ri=-1/3);var ni,ii,oi=null,li=t.changeEnd=function(t){return t.text?Yt(t.from.line+t.text.length-1,qr(t.text).length+(1==t.text.length?t.from.ch:0)):t.to};t.Pos=Yt,t.prototype={constructor:t,focus:function(){window.focus(),pt(this),ft(this)},setOption:function(t,e){var r=this.options,n=r[t];(r[t]!=e||"mode"==t)&&(r[t]=e,si.hasOwnProperty(t)&<(this,si[t])(this,e,n))},getOption:function(t){return this.options[t]},getDoc:function(){return this.doc},addKeyMap:function(t,e){this.state.keyMaps[e?"push":"unshift"](t)},removeKeyMap:function(t){for(var e=this.state.keyMaps,r=0;r<e.length;++r)if(e[r]==t||"string"!=typeof e[r]&&e[r].name==t)return e.splice(r,1),!0},addOverlay:lt(null,function(e,r){var n=e.token?e:t.getMode(this.options,e);if(n.startState)throw new Error("Overlays may not be stateful.");this.state.overlays.push({mode:n,modeSpec:e,opaque:r&&r.opaque}),this.state.modeGen++,ut(this)}),removeOverlay:lt(null,function(t){for(var e=this.state.overlays,r=0;r<e.length;++r){var n=e[r].modeSpec;if(n==t||"string"==typeof t&&n.name==t)return e.splice(r,1),this.state.modeGen++,void ut(this)}}),indentLine:lt(null,function(t,e,r){"string"!=typeof e&&"number"!=typeof e&&(e=null==e?this.options.smartIndent?"smart":"prev":e?"add":"subtract"),te(this.doc,t)&&he(this,t,e,r)}),indentSelection:lt(null,function(t){var e=this.doc.sel;if(jt(e.from,e.to))return he(this,e.from.line,t);for(var r=e.to.line-(e.to.ch?0:1),n=e.from.line;r>=n;++n)he(this,n,t)}),getTokenAt:function(t,e){var r=this.doc;t=Qt(r,t);for(var n=z(this,t.line,e),i=this.doc.mode,o=pr(r,t.line),l=new Se(o.text,this.options.tabSize);l.pos<t.ch&&!l.eol();){l.start=l.pos;var s=i.token(l,n)}return{start:l.start,end:l.pos,string:l.current(),className:s||null,type:s||null,state:n}},getTokenTypeAt:function(t){t=Qt(this.doc,t);var e=Je(this,pr(this.doc,t.line)),r=0,n=(e.length-1)/2,i=t.ch;if(0==i)return e[2];for(;;){var o=r+n>>1;if((o?e[2*o-1]:0)>=i)n=o;else{if(!(e[2*o+1]<i))return e[2*o+2];r=o+1}}},getModeAt:function(e){var r=this.doc.mode;return r.innerMode?t.innerMode(r,this.getTokenAt(e).state).mode:r},getHelper:function(t,e){if(pi.hasOwnProperty(e)){var r=pi[e],n=this.getModeAt(t);return n[e]&&r[n[e]]||n.helperType&&r[n.helperType]||r[n.name]}},getStateAfter:function(t,e){var r=this.doc;return t=qt(r,null==t?r.first+r.size-1:t),z(this,t+1,e)},cursorCoords:function(t,e){var r,n=this.doc.sel;return r=null==t?n.head:"object"==typeof t?Qt(this.doc,t):t?n.from:n.to,Q(this,r,e||"page")},charCoords:function(t,e){return q(this,Qt(this.doc,t),e||"page")},coordsChar:function(t,e){return t=Z(this,t,e||"page"),tt(this,t.left,t.top)},lineAtHeight:function(t,e){return t=Z(this,{top:t,left:0},e||"page").top,br(this.doc,t+this.display.viewOffset)},heightAtLine:function(t,e){var r=!1,n=this.doc.first+this.doc.size-1;t<this.doc.first?t=this.doc.first:t>n&&(t=n,r=!0);var i=pr(this.doc,t);return $(this,pr(this.doc,t),{top:0,left:0},e||"page").top+(r?i.height:0)},defaultTextHeight:function(){return rt(this.display)},defaultCharWidth:function(){return nt(this.display)},setGutterMarker:lt(null,function(t,e,r){return de(this,t,function(t){var n=t.gutterMarkers||(t.gutterMarkers={});return n[e]=r,!r&&ln(n)&&(t.gutterMarkers=null),!0})}),clearGutter:lt(null,function(t){var e=this,r=e.doc,n=r.first;r.iter(function(r){r.gutterMarkers&&r.gutterMarkers[t]&&(r.gutterMarkers[t]=null,ut(e,n,n+1),ln(r.gutterMarkers)&&(r.gutterMarkers=null)),++n})}),addLineClass:lt(null,function(t,e,r){return de(this,t,function(t){var n="text"==e?"textClass":"background"==e?"bgClass":"wrapClass";if(t[n]){if(new RegExp("(?:^|\\s)"+r+"(?:$|\\s)").test(t[n]))return!1;t[n]+=" "+r}else t[n]=r;return!0})}),removeLineClass:lt(null,function(t,e,r){return de(this,t,function(t){var n="text"==e?"textClass":"background"==e?"bgClass":"wrapClass",i=t[n];if(!i)return!1;if(null==r)t[n]=null;else{var o=i.match(new RegExp("(?:^|\\s+)"+r+"(?:$|\\s+)"));if(!o)return!1;var l=o.index+o[0].length;t[n]=i.slice(0,o.index)+(o.index&&l!=i.length?" ":"")+i.slice(l)||null}return!0})}),addLineWidget:lt(null,function(t,e,r){return je(this,t,e,r)}),removeLineWidget:function(t){t.clear()},lineInfo:function(t){if("number"==typeof t){if(!te(this.doc,t))return null;var e=t;if(t=pr(this.doc,t),!t)return null}else{var e=yr(t);if(null==e)return null}return{line:e,handle:t,text:t.text,gutterMarkers:t.gutterMarkers,textClass:t.textClass,bgClass:t.bgClass,wrapClass:t.wrapClass,widgets:t.widgets}},getViewport:function(){return{from:this.display.showingFrom,to:this.display.showingTo}},addWidget:function(t,e,r,n,i){var o=this.display;t=Q(this,Qt(this.doc,t));var l=t.bottom,s=t.left;if(e.style.position="absolute",o.sizer.appendChild(e),"over"==n)l=t.top;else if("above"==n||"near"==n){var a=Math.max(o.wrapper.clientHeight,this.doc.height),u=Math.max(o.sizer.clientWidth,o.lineSpace.clientWidth);("above"==n||t.bottom+e.offsetHeight>a)&&t.top>e.offsetHeight?l=t.top-e.offsetHeight:t.bottom+e.offsetHeight<=a&&(l=t.bottom),s+e.offsetWidth>u&&(s=u-e.offsetWidth)}e.style.top=l+"px",e.style.left=e.style.right="","right"==i?(s=o.sizer.clientWidth-e.offsetWidth,e.style.right="0px"):("left"==i?s=0:"middle"==i&&(s=(o.sizer.clientWidth-e.offsetWidth)/2),e.style.left=s+"px"),r&&ae(this,s,l,s+e.offsetWidth,l+e.offsetHeight)},triggerOnKeyDown:lt(null,Wt),execCommand:function(t){return gi[t](this)},findPosH:function(t,e,r,n){var i=1;0>e&&(i=-1,e=-e);for(var o=0,l=Qt(this.doc,t);e>o&&(l=pe(this.doc,l,i,r,n),!l.hitSide);++o);return l},moveH:lt(null,function(t,e){var r,n=this.doc.sel;r=n.shift||n.extend||jt(n.from,n.to)?pe(this.doc,n.head,t,e,this.options.rtlMoveVisually):0>t?n.from:n.to,ee(this.doc,r,r,t)}),deleteH:lt(null,function(t,e){var r=this.doc.sel;jt(r.from,r.to)?_t(this.doc,"",r.from,pe(this.doc,r.head,t,e,!1),"+delete"):_t(this.doc,"",r.from,r.to,"+delete"),this.curOp.userSelChange=!0}),findPosV:function(t,e,r,n){var i=1,o=n;0>e&&(i=-1,e=-e);for(var l=0,s=Qt(this.doc,t);e>l;++l){var a=Q(this,s,"div");if(null==o?o=a.left:a.left=o,s=ge(this,a,i,r),s.hitSide)break}return s},moveV:lt(null,function(t,e){var r=this.doc.sel,n=Q(this,r.head,"div");null!=r.goalColumn&&(n.left=r.goalColumn);var i=ge(this,n,t,e);"page"==e&&fe(this,0,q(this,i,"div").top-n.top),ee(this.doc,i,i,t),r.goalColumn=n.left}),toggleOverwrite:function(t){(null==t||t!=this.state.overwrite)&&((this.state.overwrite=!this.state.overwrite)?this.display.cursor.className+=" CodeMirror-overwrite":this.display.cursor.className=this.display.cursor.className.replace(" CodeMirror-overwrite",""))},hasFocus:function(){return this.state.focused},scrollTo:lt(null,function(t,e){ce(this,t,e)}),getScrollInfo:function(){var t=this.display.scroller,e=Mi;return{left:t.scrollLeft,top:t.scrollTop,height:t.scrollHeight-e,width:t.scrollWidth-e,clientHeight:t.clientHeight-e,clientWidth:t.clientWidth-e}},scrollIntoView:lt(null,function(t,e){null==t?t={from:this.doc.sel.head,to:null}:"number"==typeof t?t={from:Yt(t,0),to:null}:null==t.from&&(t={from:t,to:null}),t.to||(t.to=t.from),e||(e=0);var r=t;null!=t.from.line&&(this.curOp.scrollToPos={from:t.from,to:t.to,margin:e},r={from:Q(this,t.from),to:Q(this,t.to)});var n=ue(this,Math.min(r.from.left,r.to.left),Math.min(r.from.top,r.to.top)-e,Math.max(r.from.right,r.to.right),Math.max(r.from.bottom,r.to.bottom)+e);ce(this,n.scrollLeft,n.scrollTop)}),setSize:lt(null,function(t,e){function r(t){return"number"==typeof t||/^\d+$/.test(String(t))?t+"px":t}null!=t&&(this.display.wrapper.style.width=r(t)),null!=e&&(this.display.wrapper.style.height=r(e)),this.options.lineWrapping&&(this.display.measureLineCache.length=this.display.measureLineCachePos=0),this.curOp.forceUpdate=!0}),operation:function(t){return at(this,t)},refresh:lt(null,function(){var t=null==this.display.cachedTextHeight;_(this),ce(this,this.doc.scrollLeft,this.doc.scrollTop),ut(this),t&&o(this)}),swapDoc:lt(null,function(t){var e=this.doc;return e.cm=null,dr(this,t),_(this),dt(this,!0),ce(this,t.scrollLeft,t.scrollTop),Kr(this,"swapDoc",this,e),e}),getInputField:function(){return this.display.input},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Yr(t);var si=t.optionHandlers={},ai=t.defaults={},ui=t.Init={toString:function(){return"CodeMirror.Init"}};ye("value","",function(t,e){t.setValue(e)},!0),ye("mode",null,function(t,e){t.doc.modeOption=e,r(t)},!0),ye("indentUnit",2,r,!0),ye("indentWithTabs",!1),ye("smartIndent",!0),ye("tabSize",4,function(t){r(t),_(t),ut(t)},!0),ye("specialChars",/[\t\u0000-\u0019\u00ad\u200b\u2028\u2029\ufeff]/g,function(t,e){t.options.specialChars=new RegExp(e.source+(e.test(" ")?"":"| "),"g"),t.refresh()},!0),ye("specialCharPlaceholder",nr,function(t){t.refresh()},!0),ye("electricChars",!0),ye("rtlMoveVisually",!Un),ye("wholeLineUpdateBefore",!0),ye("theme","default",function(t){s(t),a(t)},!0),ye("keyMap","default",l),ye("extraKeys",null),ye("onKeyEvent",null),ye("onDragEvent",null),ye("lineWrapping",!1,n,!0),ye("gutters",[],function(t){h(t.options),a(t)},!0),ye("fixedGutter",!0,function(t,e){t.display.gutters.style.left=e?y(t.display)+"px":"0",t.refresh()},!0),ye("coverGutterNextToScrollbar",!1,d,!0),ye("lineNumbers",!1,function(t){h(t.options),a(t)},!0),ye("firstLineNumber",1,a,!0),ye("lineNumberFormatter",function(t){return t},a,!0),ye("showCursorWhenSelecting",!1,A,!0),ye("resetSelectionOnContextMenu",!0),ye("readOnly",!1,function(t,e){"nocursor"==e?(zt(t),t.display.input.blur(),t.display.disabled=!0):(t.display.disabled=!1,e||dt(t,!0))}),ye("dragDrop",!0),ye("cursorBlinkRate",530),ye("cursorScrollMargin",0),ye("cursorHeight",1),ye("workTime",100),ye("workDelay",100),ye("flattenSpans",!0),ye("pollInterval",100),ye("undoDepth",40,function(t,e){t.doc.history.undoDepth=e}),ye("historyEventDelay",500),ye("viewportMargin",10,function(t){t.refresh()},!0),ye("maxHighlightLength",1e4,function(t){r(t),t.refresh()},!0),ye("crudeMeasuringFrom",1e4),ye("moveInputWithCursor",!0,function(t,e){e||(t.display.inputDiv.style.top=t.display.inputDiv.style.left=0)}),ye("tabindex",null,function(t,e){t.display.input.tabIndex=e||""}),ye("autofocus",null);var ci=t.modes={},fi=t.mimeModes={};t.defineMode=function(e,r){if(t.defaults.mode||"null"==e||(t.defaults.mode=e),arguments.length>2){r.dependencies=[];for(var n=2;n<arguments.length;++n)r.dependencies.push(arguments[n])}ci[e]=r},t.defineMIME=function(t,e){fi[t]=e},t.resolveMode=function(e){if("string"==typeof e&&fi.hasOwnProperty(e))e=fi[e];else if(e&&"string"==typeof e.name&&fi.hasOwnProperty(e.name)){var r=fi[e.name];e=tn(r,e),e.name=r.name}else if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return t.resolveMode("application/xml");return"string"==typeof e?{name:e}:e||{name:"null"}},t.getMode=function(e,r){var r=t.resolveMode(r),n=ci[r.name];if(!n)return t.getMode(e,"text/plain");var i=n(e,r);if(hi.hasOwnProperty(r.name)){var o=hi[r.name];for(var l in o)o.hasOwnProperty(l)&&(i.hasOwnProperty(l)&&(i["_"+l]=i[l]),i[l]=o[l])}return i.name=r.name,i},t.defineMode("null",function(){return{token:function(t){t.skipToEnd()}}}),t.defineMIME("text/plain","null");var hi=t.modeExtensions={};t.extendMode=function(t,e){var r=hi.hasOwnProperty(t)?hi[t]:hi[t]={};en(e,r)},t.defineExtension=function(e,r){t.prototype[e]=r},t.defineDocExtension=function(t,e){Ci.prototype[t]=e},t.defineOption=ye;var di=[];t.defineInitHook=function(t){di.push(t)};var pi=t.helpers={};t.registerHelper=function(e,r,n){pi.hasOwnProperty(e)||(pi[e]=t[e]={}),pi[e][r]=n},t.isWordChar=on,t.copyState=be,t.startState=xe,t.innerMode=function(t,e){for(;t.innerMode;){var r=t.innerMode(e);if(!r||r.mode==t)break;e=r.state,t=r.mode}return r||{mode:t,state:e}};var gi=t.commands={selectAll:function(t){t.setSelection(Yt(t.firstLine(),0),Yt(t.lastLine()))},killLine:function(t){var e=t.getCursor(!0),r=t.getCursor(!1),n=!jt(e,r);n||t.getLine(e.line).length!=e.ch?t.replaceRange("",e,n?r:Yt(e.line),"+delete"):t.replaceRange("",e,Yt(e.line+1,0),"+delete")},deleteLine:function(t){var e=t.getCursor().line;t.replaceRange("",Yt(e,0),Yt(e),"+delete")},delLineLeft:function(t){var e=t.getCursor();t.replaceRange("",Yt(e.line,0),e,"+delete")},undo:function(t){t.undo()},redo:function(t){t.redo()},goDocStart:function(t){t.extendSelection(Yt(t.firstLine(),0))},goDocEnd:function(t){t.extendSelection(Yt(t.lastLine()))},goLineStart:function(t){t.extendSelection(xn(t,t.getCursor().line))},goLineStartSmart:function(t){var e=t.getCursor(),r=xn(t,e.line),n=t.getLineHandle(r.line),i=Cr(n);if(i&&0!=i[0].level)t.extendSelection(r);else{var o=Math.max(0,n.text.search(/\S/)),l=e.line==r.line&&e.ch<=o&&e.ch;t.extendSelection(Yt(r.line,l?0:o))}},goLineEnd:function(t){t.extendSelection(Cn(t,t.getCursor().line))},goLineRight:function(t){var e=t.charCoords(t.getCursor(),"div").top+5;t.extendSelection(t.coordsChar({left:t.display.lineDiv.offsetWidth+100,top:e},"div"))},goLineLeft:function(t){var e=t.charCoords(t.getCursor(),"div").top+5;t.extendSelection(t.coordsChar({left:0,top:e},"div"))},goLineUp:function(t){t.moveV(-1,"line")},goLineDown:function(t){t.moveV(1,"line")},goPageUp:function(t){t.moveV(-1,"page")},goPageDown:function(t){t.moveV(1,"page")},goCharLeft:function(t){t.moveH(-1,"char")},goCharRight:function(t){t.moveH(1,"char")},goColumnLeft:function(t){t.moveH(-1,"column")},goColumnRight:function(t){t.moveH(1,"column")},goWordLeft:function(t){t.moveH(-1,"word")},goGroupRight:function(t){t.moveH(1,"group")},goGroupLeft:function(t){t.moveH(-1,"group")},goWordRight:function(t){t.moveH(1,"word")},delCharBefore:function(t){t.deleteH(-1,"char")},delCharAfter:function(t){t.deleteH(1,"char")},delWordBefore:function(t){t.deleteH(-1,"word")},delWordAfter:function(t){t.deleteH(1,"word")},delGroupBefore:function(t){t.deleteH(-1,"group")},delGroupAfter:function(t){t.deleteH(1,"group")},indentAuto:function(t){t.indentSelection("smart")},indentMore:function(t){t.indentSelection("add")},indentLess:function(t){t.indentSelection("subtract")},insertTab:function(t){t.replaceSelection(" ","end","+input")},defaultTab:function(t){t.somethingSelected()?t.indentSelection("add"):t.replaceSelection(" ","end","+input")},transposeChars:function(t){var e=t.getCursor(),r=t.getLine(e.line);e.ch>0&&e.ch<r.length-1&&t.replaceRange(r.charAt(e.ch)+r.charAt(e.ch-1),Yt(e.line,e.ch-1),Yt(e.line,e.ch+1))},newlineAndIndent:function(t){lt(t,function(){t.replaceSelection("\n","end","+input"),t.indentLine(t.getCursor().line,null,!0)})()},toggleOverwrite:function(t){t.toggleOverwrite()}},mi=t.keyMap={};mi.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite"},mi.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Alt-Up":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Down":"goDocEnd","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore",fallthrough:"basic"},mi.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineStart","Cmd-Right":"goLineEnd","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delLineLeft",fallthrough:["basic","emacsy"]},mi["default"]=Kn?mi.macDefault:mi.pcDefault,mi.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Alt-F":"goWordRight","Alt-B":"goWordLeft","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-D":"delWordAfter","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars"},t.lookupKey=we,t.isModifierKey=Le,t.keyName=ke,t.fromTextArea=function(e,r){function n(){e.value=u.getValue()}if(r||(r={}),r.value=e.value,!r.tabindex&&e.tabindex&&(r.tabindex=e.tabindex),!r.placeholder&&e.placeholder&&(r.placeholder=e.placeholder),null==r.autofocus){var i=document.body;try{i=document.activeElement}catch(o){}r.autofocus=i==e||null!=e.getAttribute("autofocus")&&i==document.body}if(e.form&&(Br(e.form,"submit",n),!r.leaveSubmitMethodAlone)){var l=e.form,s=l.submit;try{var a=l.submit=function(){n(),l.submit=s,l.submit(),l.submit=a}}catch(o){}}e.style.display="none";var u=t(function(t){e.parentNode.insertBefore(t,e.nextSibling)},r);return u.save=n,u.getTextArea=function(){return e},u.toTextArea=function(){n(),e.parentNode.removeChild(u.getWrapperElement()),e.style.display="",e.form&&(Gr(e.form,"submit",n),"function"==typeof e.form.submit&&(e.form.submit=s))},u},Se.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return 0==this.pos},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){return this.pos<this.string.length?this.string.charAt(this.pos++):void 0},eat:function(t){var e=this.string.charAt(this.pos);if("string"==typeof t)var r=e==t;else var r=e&&(t.test?t.test(e):t(e));return r?(++this.pos,e):void 0},eatWhile:function(t){for(var e=this.pos;this.eat(t););return this.pos>e},eatSpace:function(){for(var t=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>t},skipToEnd:function(){this.pos=this.string.length},skipTo:function(t){var e=this.string.indexOf(t,this.pos);return e>-1?(this.pos=e,!0):void 0},backUp:function(t){this.pos-=t},column:function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=$r(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue},indentation:function(){return $r(this.string,null,this.tabSize)},match:function(t,e,r){if("string"!=typeof t){var n=this.string.slice(this.pos).match(t);return n&&n.index>0?null:(n&&e!==!1&&(this.pos+=n[0].length),n)}var i=function(t){return r?t.toLowerCase():t},o=this.string.substr(this.pos,t.length);return i(o)==i(t)?(e!==!1&&(this.pos+=t.length),!0):void 0},current:function(){return this.string.slice(this.start,this.pos)}},t.StringStream=Se,t.TextMarker=Me,Yr(Me),Me.prototype.clear=function(){if(!this.explicitlyCleared){var t=this.doc.cm,e=t&&!t.curOp;if(e&&it(t),_r(this,"clear")){var r=this.find();r&&Kr(this,"clear",r.from,r.to)}for(var n=null,i=null,o=0;o<this.lines.length;++o){var l=this.lines[o],s=He(l.markedSpans,this);null!=s.to&&(i=yr(l)),l.markedSpans=De(l.markedSpans,s),null!=s.from?n=yr(l):this.collapsed&&!Ve(this.doc,l)&&t&&vr(l,rt(t.display))}if(t&&this.collapsed&&!t.options.lineWrapping)for(var o=0;o<this.lines.length;++o){var a=Ge(t.doc,this.lines[o]),u=c(t.doc,a);u>t.display.maxLineLength&&(t.display.maxLine=a,t.display.maxLineLength=u,t.display.maxLineChanged=!0)}null!=n&&t&&ut(t,n,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,t&&ie(t)),e&&ot(t)}},Me.prototype.find=function(){for(var t,e,r=0;r<this.lines.length;++r){var n=this.lines[r],i=He(n.markedSpans,this);if(null!=i.from||null!=i.to){var o=yr(n);null!=i.from&&(t=Yt(o,i.from)),null!=i.to&&(e=Yt(o,i.to))}}return"bookmark"==this.type?t:t&&{from:t,to:e}},Me.prototype.changed=function(){var t=this.find(),e=this.doc.cm;if(t&&e){"bookmark"!=this.type&&(t=t.from); var r=pr(this.doc,t.line);if(G(e,r),t.line>=e.display.showingFrom&&t.line<e.display.showingTo){for(var n=e.display.lineDiv.firstChild;n;n=n.nextSibling)if(n.lineObj==r){n.offsetHeight!=r.height&&vr(r,n.offsetHeight);break}at(e,function(){e.curOp.selectionChanged=e.curOp.forceUpdate=e.curOp.updateMaxLine=!0})}}},Me.prototype.attachLine=function(t){if(!this.lines.length&&this.doc.cm){var e=this.doc.cm.curOp;e.maybeHiddenMarkers&&-1!=Jr(e.maybeHiddenMarkers,this)||(e.maybeUnhiddenMarkers||(e.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(t)},Me.prototype.detachLine=function(t){if(this.lines.splice(Jr(this.lines,t),1),!this.lines.length&&this.doc.cm){var e=this.doc.cm.curOp;(e.maybeHiddenMarkers||(e.maybeHiddenMarkers=[])).push(this)}},t.SharedTextMarker=Ae,Yr(Ae),Ae.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var t=0;t<this.markers.length;++t)this.markers[t].clear();Kr(this,"clear")}},Ae.prototype.find=function(){return this.primary.find()};var vi=t.LineWidget=function(t,e,r){if(r)for(var n in r)r.hasOwnProperty(n)&&(this[n]=r[n]);this.cm=t,this.node=e};Yr(vi),vi.prototype.clear=_e(function(){var t=this.line.widgets,e=yr(this.line);if(null!=e&&t){for(var r=0;r<t.length;++r)t[r]==this&&t.splice(r--,1);t.length||(this.line.widgets=null);var n=xr(this.cm,this.line)<this.cm.doc.scrollTop;vr(this.line,Math.max(0,this.line.height-Ye(this))),n&&fe(this.cm,0,-this.height),ut(this.cm,e,e+1)}}),vi.prototype.changed=_e(function(){var t=this.height;this.height=null;var e=Ye(this)-t;if(e){vr(this.line,this.line.height+e);var r=yr(this.line);ut(this.cm,r,r+1)}});var yi=t.Line=function(t,e,r){this.text=t,Xe(this,e),this.height=r?r(this):1};Yr(yi),yi.prototype.lineNo=function(){return yr(this)};var bi={};cr.prototype={chunkSize:function(){return this.lines.length},removeInner:function(t,e){for(var r=t,n=t+e;n>r;++r){var i=this.lines[r];this.height-=i.height,Ze(i),Kr(i,"delete")}this.lines.splice(t,e)},collapse:function(t){t.splice.apply(t,[t.length,0].concat(this.lines))},insertInner:function(t,e,r){this.height+=r,this.lines=this.lines.slice(0,t).concat(e).concat(this.lines.slice(t));for(var n=0,i=e.length;i>n;++n)e[n].parent=this},iterN:function(t,e,r){for(var n=t+e;n>t;++t)if(r(this.lines[t]))return!0}},fr.prototype={chunkSize:function(){return this.size},removeInner:function(t,e){this.size-=e;for(var r=0;r<this.children.length;++r){var n=this.children[r],i=n.chunkSize();if(i>t){var o=Math.min(e,i-t),l=n.height;if(n.removeInner(t,o),this.height-=l-n.height,i==o&&(this.children.splice(r--,1),n.parent=null),0==(e-=o))break;t=0}else t-=i}if(this.size-e<25){var s=[];this.collapse(s),this.children=[new cr(s)],this.children[0].parent=this}},collapse:function(t){for(var e=0,r=this.children.length;r>e;++e)this.children[e].collapse(t)},insertInner:function(t,e,r){this.size+=e.length,this.height+=r;for(var n=0,i=this.children.length;i>n;++n){var o=this.children[n],l=o.chunkSize();if(l>=t){if(o.insertInner(t,e,r),o.lines&&o.lines.length>50){for(;o.lines.length>50;){var s=o.lines.splice(o.lines.length-25,25),a=new cr(s);o.height-=a.height,this.children.splice(n+1,0,a),a.parent=this}this.maybeSpill()}break}t-=l}},maybeSpill:function(){if(!(this.children.length<=10)){var t=this;do{var e=t.children.splice(t.children.length-5,5),r=new fr(e);if(t.parent){t.size-=r.size,t.height-=r.height;var n=Jr(t.parent.children,t);t.parent.children.splice(n+1,0,r)}else{var i=new fr(t.children);i.parent=t,t.children=[i,r],t=i}r.parent=t.parent}while(t.children.length>10);t.parent.maybeSpill()}},iterN:function(t,e,r){for(var n=0,i=this.children.length;i>n;++n){var o=this.children[n],l=o.chunkSize();if(l>t){var s=Math.min(e,l-t);if(o.iterN(t,s,r))return!0;if(0==(e-=s))break;t=0}else t-=l}}};var xi=0,Ci=t.Doc=function(t,e,r){if(!(this instanceof Ci))return new Ci(t,e,r);null==r&&(r=0),fr.call(this,[new cr([new yi("",null)])]),this.first=r,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.history=wr(),this.cleanGeneration=1,this.frontier=r;var n=Yt(r,0);this.sel={from:n,to:n,head:n,anchor:n,shift:!1,extend:!1,goalColumn:null},this.id=++xi,this.modeOption=e,"string"==typeof t&&(t=Ei(t)),ur(this,{from:n,to:n,text:t},null,{head:n,anchor:n})};Ci.prototype=tn(fr.prototype,{constructor:Ci,iter:function(t,e,r){r?this.iterN(t-this.first,e-t,r):this.iterN(this.first,this.first+this.size,t)},insert:function(t,e){for(var r=0,n=0,i=e.length;i>n;++n)r+=e[n].height;this.insertInner(t-this.first,e,r)},remove:function(t,e){this.removeInner(t-this.first,e)},getValue:function(t){var e=mr(this,this.first,this.first+this.size);return t===!1?e:e.join(t||"\n")},setValue:function(t){var e=Yt(this.first,0),r=this.first+this.size-1;Bt(this,{from:e,to:Yt(r,pr(this,r).text.length),text:Ei(t),origin:"setValue"},{head:e,anchor:e},!0)},replaceRange:function(t,e,r,n){e=Qt(this,e),r=r?Qt(this,r):e,_t(this,t,e,r,n)},getRange:function(t,e,r){var n=gr(this,Qt(this,t),Qt(this,e));return r===!1?n:n.join(r||"\n")},getLine:function(t){var e=this.getLineHandle(t);return e&&e.text},setLine:function(t,e){te(this,t)&&_t(this,e,Yt(t,0),Qt(this,Yt(t)))},removeLine:function(t){t?_t(this,"",Qt(this,Yt(t-1)),Qt(this,Yt(t))):_t(this,"",Yt(0,0),Qt(this,Yt(1,0)))},getLineHandle:function(t){return te(this,t)?pr(this,t):void 0},getLineNumber:function(t){return yr(t)},getLineHandleVisualStart:function(t){return"number"==typeof t&&(t=pr(this,t)),Ge(this,t)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(t){return Qt(this,t)},getCursor:function(t){var e,r=this.sel;return e=null==t||"head"==t?r.head:"anchor"==t?r.anchor:"end"==t||t===!1?r.to:r.from,Zt(e)},somethingSelected:function(){return!jt(this.sel.head,this.sel.anchor)},setCursor:st(function(t,e,r){var n=Qt(this,"number"==typeof t?Yt(t,e||0):t);r?ee(this,n):ne(this,n,n)}),setSelection:st(function(t,e,r){ne(this,Qt(this,t),Qt(this,e||t),r)}),extendSelection:st(function(t,e,r){ee(this,Qt(this,t),e&&Qt(this,e),r)}),getSelection:function(t){return this.getRange(this.sel.from,this.sel.to,t)},replaceSelection:function(t,e,r){Bt(this,{from:this.sel.from,to:this.sel.to,text:Ei(t),origin:r},e||"around")},undo:st(function(){Vt(this,"undo")}),redo:st(function(){Vt(this,"redo")}),setExtending:function(t){this.sel.extend=t},historySize:function(){var t=this.history;return{undo:t.done.length,redo:t.undone.length}},clearHistory:function(){this.history=wr(this.history.maxGeneration)},markClean:function(){this.cleanGeneration=this.changeGeneration()},changeGeneration:function(){return this.history.lastOp=this.history.lastOrigin=null,this.history.generation},isClean:function(t){return this.history.generation==(t||this.cleanGeneration)},getHistory:function(){return{done:Ar(this.history.done),undone:Ar(this.history.undone)}},setHistory:function(t){var e=this.history=wr(this.history.maxGeneration);e.done=t.done.slice(0),e.undone=t.undone.slice(0)},markText:function(t,e,r){return Te(this,Qt(this,t),Qt(this,e),r,"range")},setBookmark:function(t,e){var r={replacedWith:e&&(null==e.nodeType?e.widget:e),insertLeft:e&&e.insertLeft};return t=Qt(this,t),Te(this,t,t,r,"bookmark")},findMarksAt:function(t){t=Qt(this,t);var e=[],r=pr(this,t.line).markedSpans;if(r)for(var n=0;n<r.length;++n){var i=r[n];(null==i.from||i.from<=t.ch)&&(null==i.to||i.to>=t.ch)&&e.push(i.marker.parent||i.marker)}return e},getAllMarks:function(){var t=[];return this.iter(function(e){var r=e.markedSpans;if(r)for(var n=0;n<r.length;++n)null!=r[n].from&&t.push(r[n].marker)}),t},posFromIndex:function(t){var e,r=this.first;return this.iter(function(n){var i=n.text.length+1;return i>t?(e=t,!0):(t-=i,void++r)}),Qt(this,Yt(r,e))},indexFromPos:function(t){t=Qt(this,t);var e=t.ch;return t.line<this.first||t.ch<0?0:(this.iter(this.first,t.line,function(t){e+=t.text.length+1}),e)},copy:function(t){var e=new Ci(mr(this,this.first,this.first+this.size),this.modeOption,this.first);return e.scrollTop=this.scrollTop,e.scrollLeft=this.scrollLeft,e.sel={from:this.sel.from,to:this.sel.to,head:this.sel.head,anchor:this.sel.anchor,shift:this.sel.shift,extend:!1,goalColumn:this.sel.goalColumn},t&&(e.history.undoDepth=this.history.undoDepth,e.setHistory(this.getHistory())),e},linkedDoc:function(t){t||(t={});var e=this.first,r=this.first+this.size;null!=t.from&&t.from>e&&(e=t.from),null!=t.to&&t.to<r&&(r=t.to);var n=new Ci(mr(this,e,r),t.mode||this.modeOption,e);return t.sharedHist&&(n.history=this.history),(this.linked||(this.linked=[])).push({doc:n,sharedHist:t.sharedHist}),n.linked=[{doc:this,isParent:!0,sharedHist:t.sharedHist}],n},unlinkDoc:function(e){if(e instanceof t&&(e=e.doc),this.linked)for(var r=0;r<this.linked.length;++r){var n=this.linked[r];if(n.doc==e){this.linked.splice(r,1),e.unlinkDoc(this);break}}if(e.history==this.history){var i=[e.id];hr(e,function(t){i.push(t.id)},!0),e.history=wr(),e.history.done=Ar(this.history.done,i),e.history.undone=Ar(this.history.undone,i)}},iterLinkedDocs:function(t){hr(this,t)},getMode:function(){return this.mode},getEditor:function(){return this.cm}}),Ci.prototype.eachLine=Ci.prototype.iter;var wi="iter insert remove copy getEditor".split(" ");for(var Li in Ci.prototype)Ci.prototype.hasOwnProperty(Li)&&Jr(wi,Li)<0&&(t.prototype[Li]=function(t){return function(){return t.apply(this.doc,arguments)}}(Ci.prototype[Li]));Yr(Ci),t.e_stop=Fr,t.e_preventDefault=Er,t.e_stopPropagation=zr;var ki,Si=0;t.on=Br,t.off=Gr,t.signal=Vr;var Mi=30,Ti=t.Pass={toString:function(){return"CodeMirror.Pass"}};jr.prototype={set:function(t,e){clearTimeout(this.id),this.id=setTimeout(e,t)}},t.countColumn=$r;var Ai=[""],Ni=/[\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,Hi=/[\u0300-\u036F\u0483-\u0487\u0488-\u0489\u0591-\u05BD\u05BF\u05C1-\u05C2\u05C4-\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7-\u06E8\u06EA-\u06ED\uA66F\u1DC0–\u1DFF\u20D0–\u20FF\uA670-\uA672\uA674-\uA67D\uA69F\udc00-\udfff\uFE20–\uFE2F]/;t.replaceGetRect=function(t){fn=t};var Di=function(){if(Hn)return!1;var t=sn("div");return"draggable"in t||"dragDrop"in t}();Tn?hn=function(t,e){return 36==t.charCodeAt(e-1)&&39==t.charCodeAt(e)}:In&&!/Version\/([6-9]|\d\d)\b/.test(navigator.userAgent)?hn=function(t,e){return/\-[^ \-?]|\?[^ !\'\"\),.\-\/:;\?\]\}]/.test(t.slice(e-1,e+1))}:Wn&&/Chrome\/(?:29|[3-9]\d|\d\d\d)\./.test(navigator.userAgent)?hn=function(t,e){var r=t.charCodeAt(e-1);return r>=8208&&8212>=r}:Wn&&(hn=function(t,e){if(e>1&&45==t.charCodeAt(e-1)){if(/\w/.test(t.charAt(e-2))&&/[^\-?\.]/.test(t.charAt(e)))return!0;if(e>2&&/[\d\.,]/.test(t.charAt(e-2))&&/[\d\.,]/.test(t.charAt(e)))return!1}return/[~!#%&*)=+}\]\\|\"\.>,:;][({[<]|-[^\-?\.\u2010-\u201f\u2026]|\?[\w~`@#$%\^&*(_=+{[|><]|…[\w~`@#$%\^&*(_=+{[><]/.test(t.slice(e-1,e+1))});var Wi,Oi,Ei=3!="\n\nb".split(/\n/).length?function(t){for(var e=0,r=[],n=t.length;n>=e;){var i=t.indexOf("\n",e);-1==i&&(i=t.length);var o=t.slice(e,"\r"==t.charAt(i-1)?i-1:i),l=o.indexOf("\r");-1!=l?(r.push(o.slice(0,l)),e+=l+1):(r.push(o),e=i+1)}return r}:function(t){return t.split(/\r\n?|\n/)};t.splitLines=Ei;var zi=window.getSelection?function(t){try{return t.selectionStart!=t.selectionEnd}catch(e){return!1}}:function(t){try{var e=t.ownerDocument.selection.createRange()}catch(r){}return e&&e.parentElement()==t?0!=e.compareEndPoints("StartToEnd",e):!1},Ii=function(){var t=sn("div");return"oncopy"in t?!0:(t.setAttribute("oncopy","return;"),"function"==typeof t.oncopy)}(),Fi={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",91:"Mod",92:"Mod",93:"Mod",109:"-",107:"=",127:"Delete",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63276:"PageUp",63277:"PageDown",63275:"End",63273:"Home",63234:"Left",63232:"Up",63235:"Right",63233:"Down",63302:"Insert",63272:"Delete"};t.keyNames=Fi,function(){for(var t=0;10>t;t++)Fi[t+48]=String(t);for(var t=65;90>=t;t++)Fi[t]=String.fromCharCode(t);for(var t=1;12>=t;t++)Fi[t+111]=Fi[t+63235]="F"+t}();var Pi,Ri=function(){function t(t){return 255>=t?e.charAt(t):t>=1424&&1524>=t?"R":t>=1536&&1791>=t?r.charAt(t-1536):t>=1792&&2220>=t?"r":"L"}var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLL",r="rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmmrrrrrrrrrrrrrrrrrr",n=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,o=/[LRr]/,l=/[Lb1n]/,s=/[1n]/,a="L";return function(e){if(!n.test(e))return!1;for(var r,u=e.length,c=[],f=0;u>f;++f)c.push(r=t(e.charCodeAt(f)));for(var f=0,h=a;u>f;++f){var r=c[f];"m"==r?c[f]=h:h=r}for(var f=0,d=a;u>f;++f){var r=c[f];"1"==r&&"r"==d?c[f]="n":o.test(r)&&(d=r,"r"==r&&(c[f]="R"))}for(var f=1,h=c[0];u-1>f;++f){var r=c[f];"+"==r&&"1"==h&&"1"==c[f+1]?c[f]="1":","!=r||h!=c[f+1]||"1"!=h&&"n"!=h||(c[f]=h),h=r}for(var f=0;u>f;++f){var r=c[f];if(","==r)c[f]="N";else if("%"==r){for(var p=f+1;u>p&&"%"==c[p];++p);for(var g=f&&"!"==c[f-1]||u-1>p&&"1"==c[p]?"1":"N",m=f;p>m;++m)c[m]=g;f=p-1}}for(var f=0,d=a;u>f;++f){var r=c[f];"L"==d&&"1"==r?c[f]="L":o.test(r)&&(d=r)}for(var f=0;u>f;++f)if(i.test(c[f])){for(var p=f+1;u>p&&i.test(c[p]);++p);for(var v="L"==(f?c[f-1]:a),y="L"==(u-1>p?c[p]:a),g=v||y?"L":"R",m=f;p>m;++m)c[m]=g;f=p-1}for(var b,x=[],f=0;u>f;)if(l.test(c[f])){var C=f;for(++f;u>f&&l.test(c[f]);++f);x.push({from:C,to:f,level:0})}else{var w=f,L=x.length;for(++f;u>f&&"L"!=c[f];++f);for(var m=w;f>m;)if(s.test(c[m])){m>w&&x.splice(L,0,{from:w,to:m,level:1});var k=m;for(++m;f>m&&s.test(c[m]);++m);x.splice(L,0,{from:k,to:m,level:2}),w=m}else++m;f>w&&x.splice(L,0,{from:w,to:f,level:1})}return 1==x[0].level&&(b=e.match(/^\s+/))&&(x[0].from=b[0].length,x.unshift({from:0,to:b[0].length,level:0})),1==qr(x).level&&(b=e.match(/\s+$/))&&(qr(x).to-=b[0].length,x.push({from:u-b[0].length,to:u,level:0})),x[0].level!=qr(x).level&&x.push({from:u,to:u,level:x[0].level}),x}}();return t.version="3.20.0",t}(); CodeMirror.defineMode("xml",function(t,e){function r(t,e){function r(r){return e.tokenize=r,r(t,e)}var o=t.next();if("<"==o){if(t.eat("!"))return t.eat("[")?t.match("CDATA[")?r(a("atom","]]>")):null:t.match("--")?r(a("comment","-->")):t.match("DOCTYPE",!0,!0)?(t.eatWhile(/[\w\._\-]/),r(i(1))):null;if(t.eat("?"))return t.eatWhile(/[\w\._\-]/),e.tokenize=a("meta","?>"),"meta";var l=t.eat("/");b="";for(var u;u=t.eat(/[^\s\u00a0=<>\"\'\/?]/);)b+=u;return b?(C=l?"closeTag":"openTag",e.tokenize=n,"tag"):"tag error"}if("&"==o){var f;return f=t.eat("#")?t.eat("x")?t.eatWhile(/[a-fA-F\d]/)&&t.eat(";"):t.eatWhile(/[\d]/)&&t.eat(";"):t.eatWhile(/[\w\.\-:]/)&&t.eat(";"),f?"atom":"error"}return t.eatWhile(/[^&<]/),null}function n(t,e){var n=t.next();if(">"==n||"/"==n&&t.eat(">"))return e.tokenize=r,C=">"==n?"endTag":"selfcloseTag","tag";if("="==n)return C="equals",null;if("<"==n){e.tokenize=r;var a=e.tokenize(t,e);return a?a+" error":"error"}return/[\'\"]/.test(n)?(e.tokenize=o(n),e.stringStartCol=t.column(),e.tokenize(t,e)):(t.eatWhile(/[^\s\u00a0=<>\"\']/),"word")}function o(t){var e=function(e,r){for(;!e.eol();)if(e.next()==t){r.tokenize=n;break}return"string"};return e.isInAttribute=!0,e}function a(t,e){return function(n,o){for(;!n.eol();){if(n.match(e)){o.tokenize=r;break}n.next()}return t}}function i(t){return function(e,n){for(var o;null!=(o=e.next());){if("<"==o)return n.tokenize=i(t+1),n.tokenize(e,n);if(">"==o){if(1==t){n.tokenize=r;break}return n.tokenize=i(t-1),n.tokenize(e,n)}}return"meta"}}function l(){for(var t=arguments.length-1;t>=0;t--)w.cc.push(arguments[t])}function u(){return l.apply(null,arguments),!0}function f(t,e){var r=N.doNotIndent.hasOwnProperty(t)||w.context&&w.context.noIndent;w.context={prev:w.context,tagName:t,indent:w.indented,startOfLine:e,noIndent:r}}function d(){w.context&&(w.context=w.context.prev)}function c(t){if("openTag"==t)return w.tagName=b,w.tagStart=T.column(),u(p,s(w.startOfLine));if("closeTag"==t){var e=!1;return w.context?w.context.tagName!=b&&(N.implicitlyClosed.hasOwnProperty(w.context.tagName.toLowerCase())&&d(),e=!w.context||w.context.tagName!=b):e=!0,e&&(v="error"),u(m(e))}return u()}function s(t){return function(e){var r=w.tagName;return w.tagName=w.tagStart=null,"selfcloseTag"==e||"endTag"==e&&N.autoSelfClosers.hasOwnProperty(r.toLowerCase())?(g(r.toLowerCase()),u()):"endTag"==e?(g(r.toLowerCase()),f(r,t),u()):u()}}function m(t){return function(e){return t&&(v="error"),"endTag"==e?(d(),u()):(v="error",u(arguments.callee))}}function g(t){for(var e;;){if(!w.context)return;if(e=w.context.tagName.toLowerCase(),!N.contextGrabbers.hasOwnProperty(e)||!N.contextGrabbers[e].hasOwnProperty(t))return;d()}}function p(t){return"word"==t?(v="attribute",u(h,p)):"endTag"==t||"selfcloseTag"==t?l():(v="error",u(p))}function h(t){if("equals"==t)return u(x,p);if(N.allowMissing){if("word"==t)return v="attribute",u(h,p)}else v="error";return"endTag"==t||"selfcloseTag"==t?l():u()}function x(t){return"string"==t?u(k):"word"==t&&N.allowUnquoted?(v="string",u()):(v="error","endTag"==t||"selfCloseTag"==t?l():u())}function k(t){return"string"==t?u(k):l()}var b,C,w,T,v,z=t.indentUnit,M=e.multilineTagIndentFactor||1,y=e.multilineTagIndentPastTag||!0,N=e.htmlMode?{autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1},I=e.alignCDATA;return{startState:function(){return{tokenize:r,cc:[],indented:0,startOfLine:!0,tagName:null,tagStart:null,context:null}},token:function(t,e){if(!e.tagName&&t.sol()&&(e.startOfLine=!0,e.indented=t.indentation()),t.eatSpace())return null;v=C=b=null;var r=e.tokenize(t,e);if(e.type=C,(r||C)&&"comment"!=r)for(w=e,T=t;;){var n=e.cc.pop()||c;if(n(C||r))break}return e.startOfLine=!1,v&&(r="error"==v?r+" error":v),r},indent:function(t,e,o){var a=t.context;if(t.tokenize.isInAttribute)return t.stringStartCol+1;if(t.tokenize!=n&&t.tokenize!=r||a&&a.noIndent)return o?o.match(/^(\s*)/)[0].length:0;if(t.tagName)return y?t.tagStart+t.tagName.length+2:t.tagStart+z*M;if(I&&/<!\[CDATA\[/.test(e))return 0;for(a&&/^<\//.test(e)&&(a=a.prev);a&&!a.startOfLine;)a=a.prev;return a?a.indent+z:0},electricChars:"/",blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:e.htmlMode?"html":"xml",helperType:e.htmlMode?"html":"xml"}}),CodeMirror.defineMIME("text/xml","xml"),CodeMirror.defineMIME("application/xml","xml"),CodeMirror.mimeModes.hasOwnProperty("text/html")||CodeMirror.defineMIME("text/html",{name:"xml",htmlMode:!0}); !function(){function e(e){for(var n=[/for\s*?\((.*?)\)/,/\"(.*?)(\"|$)/,/\'(.*?)(\'|$)/,/\/\*(.*?)(\*\/|$)/,/\/\/.*/],r=[],t=0;t<n.length;t++)for(var o=0;o<e.length;){var a=e.substr(o).match(n[t]);if(null==a)break;r.push({start:o+a.index,end:o+a.index+a[0].length}),o+=a.index+Math.max(1,a[0].length)}return r.sort(function(e,n){return e.start-n.start}),r}function n(e,n){return CodeMirror.innerMode(e.getMode(),e.getTokenAt(n).state).mode}function r(e,n,r,t){var o=e.getMode(),a=e.getLine(n);if(null==t&&(t=a.length),!o.innerMode)return[{from:r,to:t,mode:o}];var i=e.getTokenAt({line:n,ch:r}).state,s=CodeMirror.innerMode(o,i).mode,c=[],d=new CodeMirror.StringStream(a);for(d.pos=d.start=r;;){o.token(d,i);var l=CodeMirror.innerMode(o,i).mode;if(l!=s){var m=d.start;"xml"==s.name&&">"==a.charAt(d.pos-1)&&(m=d.pos),c.push({from:r,to:m,mode:s}),r=m,s=l}if(d.pos>=t)break;d.start=d.pos}return t>r&&c.push({from:r,to:t,mode:s}),c}CodeMirror.extendMode("css",{commentStart:"/*",commentEnd:"*/",wordWrapChars:[";","\\{","\\}"],autoFormatLineBreaks:function(e){return e.replace(new RegExp("(;|\\{|\\})([^\r\n])","g"),"$1\n$2")}}),CodeMirror.extendMode("javascript",{commentStart:"/*",commentEnd:"*/",wordWrapChars:[";","\\{","\\}"],autoFormatLineBreaks:function(n){var r=0,t=this.jsonMode?function(e){return e.replace(/([,{])/g,"$1\n").replace(/}/g,"\n}")}:function(e){return e.replace(/(;|\{|\})([^\r\n;])/g,"$1\n$2")},o=e(n),a="";if(null!=o){for(var i=0;i<o.length;i++)o[i].start>r&&(a+=t(n.substring(r,o[i].start)),r=o[i].start),o[i].start<=r&&o[i].end>=r&&(a+=n.substring(r,o[i].end),r=o[i].end);r<n.length&&(a+=t(n.substr(r)))}else a=t(n);return a.replace(/^\n*|\n*$/,"")}}),CodeMirror.extendMode("xml",{commentStart:"<!--",commentEnd:"-->",wordWrapChars:[">"],autoFormatLineBreaks:function(e){for(var n=e.split("\n"),r=new RegExp("(^\\s*?<|^[^<]*?)(.+)(>\\s*?$|[^>]*?$)"),t=new RegExp("<","g"),o=new RegExp("(>)([^\r\n])","g"),a=0;a<n.length;a++){var i=n[a].match(r);null!=i&&i.length>3&&(n[a]=i[1]+i[2].replace(t,"\n$&").replace(o,"$1\n$2")+i[3])}return n.join("\n")}}),CodeMirror.defineExtension("commentRange",function(e,r,t){var o=n(this,r),a=this;this.operation(function(){if(e)a.replaceRange(o.commentEnd,t),a.replaceRange(o.commentStart,r),r.line==t.line&&r.ch==t.ch&&a.setCursor(r.line,r.ch+o.commentStart.length);else{var n=a.getRange(r,t),i=n.indexOf(o.commentStart),s=n.lastIndexOf(o.commentEnd);i>-1&&s>-1&&s>i&&(n=n.substr(0,i)+n.substring(i+o.commentStart.length,s)+n.substr(s+o.commentEnd.length)),a.replaceRange(n,r,t)}})}),CodeMirror.defineExtension("autoIndentRange",function(e,n){var r=this;this.operation(function(){for(var t=e.line;t<=n.line;t++)r.indentLine(t,"smart")})}),CodeMirror.defineExtension("autoFormatRange",function(e,n){var t=this;t.operation(function(){for(var o=e.line,a=n.line;a>=o;++o){for(var i={line:o,ch:o==e.line?e.ch:0},s={line:o,ch:o==a?n.ch:null},c=r(t,o,i.ch,s.ch),d="",l=t.getRange(i,s),m=0;m<c.length;++m){var u=c.length>1?l.slice(c[m].from,c[m].to):l;d&&(d+="\n"),d+=c[m].mode.autoFormatLineBreaks?c[m].mode.autoFormatLineBreaks(u):l}if(d!=l){for(var f=0,g=d.indexOf("\n");-1!=g;g=d.indexOf("\n",g+1),++f);t.replaceRange(d,i,s),o+=f,a+=f}}for(var o=e.line+1;a>=o;++o)t.indentLine(o,"smart");t.setSelection(e,t.getCursor(!1))})})}(); /** * Super simple wysiwyg editor v0.7.1 * http://summernote.org/ * * summernote.js * Copyright 2013-2015 Alan Hong. and other contributors * summernote may be freely distributed under the MIT license./ * * * MODIFIED: Adding support for CodeMirror callbacks. * If we've got any callbacks for code mirror, register them. * Line 4670 * * Date: 2015-12-31T12:09Z */ !function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&module.exports?module.exports=e(require("jquery")):e(window.jQuery)}(function(e){"use strict";var t,n=function(){var t=function(e){return function(t){return e===t}},n=function(e,t){return e===t},o=function(e){return function(t,n){return t[e]===n[e]}},i=function(){return!0},r=function(){return!1},a=function(e){return function(){return!e.apply(e,arguments)}},s=function(e,t){return function(n){return e(n)&&t(n)}},l=function(e){return e},c=0,d=function(e){var t=++c+"";return e?e+t:t},u=function(t){var n=e(document);return{top:t.top+n.scrollTop(),left:t.left+n.scrollLeft(),width:t.right-t.left,height:t.bottom-t.top}},f=function(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[e[n]]=n);return t},h=function(e,t){return t=t||"",t+e.split(".").map(function(e){return e.substring(0,1).toUpperCase()+e.substring(1)}).join("")};return{eq:t,eq2:n,peq2:o,ok:i,fail:r,self:l,not:a,and:s,uniqueId:d,rect2bnd:u,invertObject:f,namespaceToCamel:h}}(),o=function(){var t=function(e){return e[0]},o=function(e){return e[e.length-1]},i=function(e){return e.slice(0,e.length-1)},r=function(e){return e.slice(1)},a=function(e,t){for(var n=0,o=e.length;o>n;n++){var i=e[n];if(t(i))return i}},s=function(e,t){for(var n=0,o=e.length;o>n;n++)if(!t(e[n]))return!1;return!0},l=function(t,n){return e.inArray(n,t)},c=function(e,t){return-1!==l(e,t)},d=function(e,t){return t=t||n.self,e.reduce(function(e,n){return e+t(n)},0)},u=function(e){for(var t=[],n=-1,o=e.length;++n<o;)t[n]=e[n];return t},f=function(e){return!e||!e.length},h=function(e,n){if(!e.length)return[];var i=r(e);return i.reduce(function(e,t){var i=o(e);return n(o(i),t)?i[i.length]=t:e[e.length]=[t],e},[[t(e)]])},m=function(e){for(var t=[],n=0,o=e.length;o>n;n++)e[n]&&t.push(e[n]);return t},p=function(e){for(var t=[],n=0,o=e.length;o>n;n++)c(t,e[n])||t.push(e[n]);return t},g=function(e,t){var n=l(e,t);return-1===n?null:e[n+1]},v=function(e,t){var n=l(e,t);return-1===n?null:e[n-1]};return{head:t,last:o,initial:i,tail:r,prev:v,next:g,find:a,contains:c,all:s,sum:d,from:u,isEmpty:f,clusterBy:h,compact:m,unique:p}}(),i="function"==typeof define&&define.amd,r=function(t){var n="Comic Sans MS"===t?"Courier New":"Comic Sans MS",o=e("<div>").css({position:"absolute",left:"-9999px",top:"-9999px",fontSize:"200px"}).text("mmmmmmmmmwwwwwww").appendTo(document.body),i=o.css("fontFamily",n).width(),r=o.css("fontFamily",t+","+n).width();return o.remove(),i!==r},a=navigator.userAgent,s=/MSIE|Trident/i.test(a);if(s){var l=/MSIE (\d+[.]\d+)/.exec(a);l&&(t=parseFloat(l[1])),l=/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(a),l&&(t=parseFloat(l[1]))}var c={isMac:navigator.appVersion.indexOf("Mac")>-1,isMSIE:s,isFF:/firefox/i.test(a),isWebkit:/webkit/i.test(a),isSafari:/safari/i.test(a),browserVersion:t,jqueryVersion:parseFloat(e.fn.jquery),isSupportAmd:i,hasCodeMirror:i?require.specified("codemirror"):!!window.CodeMirror,isFontInstalled:r,isW3CRangeSupport:!!document.createRange},d=String.fromCharCode(160),u="\ufeff",f=function(){var t=function(t){return t&&e(t).hasClass("note-editable")},i=function(t){return t&&e(t).hasClass("note-control-sizing")},r=function(e){return e=e.toUpperCase(),function(t){return t&&t.nodeName.toUpperCase()===e}},a=function(e){return e&&3===e.nodeType},s=function(e){return e&&1===e.nodeType},l=function(e){return e&&/^BR|^IMG|^HR|^IFRAME|^BUTTON/.test(e.nodeName.toUpperCase())},h=function(e){return t(e)?!1:e&&/^DIV|^P|^LI|^H[1-7]/.test(e.nodeName.toUpperCase())},m=function(e){return e&&/^H[1-7]/.test(e.nodeName.toUpperCase())},p=r("PRE"),g=r("LI"),v=function(e){return h(e)&&!g(e)},b=r("TABLE"),k=function(e){return!(T(e)||y(e)||C(e)||h(e)||b(e)||N(e))},y=function(e){return e&&/^UL|^OL/.test(e.nodeName.toUpperCase())},C=r("HR"),w=function(e){return e&&/^TD|^TH/.test(e.nodeName.toUpperCase())},N=r("BLOCKQUOTE"),T=function(e){return w(e)||N(e)||t(e)},I=r("A"),E=function(e){return k(e)&&!!D(e,h)},S=function(e){return k(e)&&!D(e,h)},H=r("BODY"),x=function(e,t){return e.nextSibling===t||e.previousSibling===t},P=function(e,t){t=t||n.ok;var o=[];return e.previousSibling&&t(e.previousSibling)&&o.push(e.previousSibling),o.push(e),e.nextSibling&&t(e.nextSibling)&&o.push(e.nextSibling),o},R=c.isMSIE&&c.browserVersion<11?" ":"<br>",L=function(e){return a(e)?e.nodeValue.length:e.childNodes.length},F=function(e){var t=L(e);return 0===t?!0:a(e)||1!==t||e.innerHTML!==R?o.all(e.childNodes,a)&&""===e.innerHTML?!0:!1:!0},A=function(e){l(e)||L(e)||(e.innerHTML=R)},D=function(e,n){for(;e;){if(n(e))return e;if(t(e))break;e=e.parentNode}return null},M=function(e,n){for(e=e.parentNode;e&&1===L(e);){if(n(e))return e;if(t(e))break;e=e.parentNode}return null},z=function(e,o){o=o||n.fail;var i=[];return D(e,function(e){return t(e)||i.push(e),o(e)}),i},B=function(e,t){var n=z(e);return o.last(n.filter(t))},U=function(t,n){for(var o=z(t),i=n;i;i=i.parentNode)if(e.inArray(i,o)>-1)return i;return null},$=function(e,t){t=t||n.fail;for(var o=[];e&&!t(e);)o.push(e),e=e.previousSibling;return o},O=function(e,t){t=t||n.fail;for(var o=[];e&&!t(e);)o.push(e),e=e.nextSibling;return o},j=function(e,t){var o=[];return t=t||n.ok,function i(n){e!==n&&t(n)&&o.push(n);for(var r=0,a=n.childNodes.length;a>r;r++)i(n.childNodes[r])}(e),o},K=function(t,n){var o=t.parentNode,i=e("<"+n+">")[0];return o.insertBefore(i,t),i.appendChild(t),i},V=function(e,t){var n=t.nextSibling,o=t.parentNode;return n?o.insertBefore(e,n):o.appendChild(e),e},W=function(t,n){return e.each(n,function(e,n){t.appendChild(n)}),t},q=function(e){return 0===e.offset},_=function(e){return e.offset===L(e.node)},G=function(e){return q(e)||_(e)},Y=function(e,t){for(;e&&e!==t;){if(0!==X(e))return!1;e=e.parentNode}return!0},Z=function(e,t){for(;e&&e!==t;){if(X(e)!==L(e.parentNode)-1)return!1;e=e.parentNode}return!0},J=function(e,t){return q(e)&&Y(e.node,t)},Q=function(e,t){return _(e)&&Z(e.node,t)},X=function(e){for(var t=0;e=e.previousSibling;)t+=1;return t},ee=function(e){return!!(e&&e.childNodes&&e.childNodes.length)},te=function(e,n){var o,i;if(0===e.offset){if(t(e.node))return null;o=e.node.parentNode,i=X(e.node)}else ee(e.node)?(o=e.node.childNodes[e.offset-1],i=L(o)):(o=e.node,i=n?0:e.offset-1);return{node:o,offset:i}},ne=function(e,n){var o,i;if(L(e.node)===e.offset){if(t(e.node))return null;o=e.node.parentNode,i=X(e.node)+1}else ee(e.node)?(o=e.node.childNodes[e.offset],i=0):(o=e.node,i=n?L(e.node):e.offset+1);return{node:o,offset:i}},oe=function(e,t){return e.node===t.node&&e.offset===t.offset},ie=function(e){if(a(e.node)||!ee(e.node)||F(e.node))return!0;var t=e.node.childNodes[e.offset-1],n=e.node.childNodes[e.offset];return t&&!l(t)||n&&!l(n)?!1:!0},re=function(e,t){for(;e;){if(t(e))return e;e=te(e)}return null},ae=function(e,t){for(;e;){if(t(e))return e;e=ne(e)}return null},se=function(e){if(!a(e.node))return!1;var t=e.node.nodeValue.charAt(e.offset-1);return t&&" "!==t&&t!==d},le=function(e,t,n,o){for(var i=e;i&&(n(i),!oe(i,t));){var r=o&&e.node!==i.node&&t.node!==i.node;i=ne(i,r)}},ce=function(e,t){var o=z(t,n.eq(e));return o.map(X).reverse()},de=function(e,t){for(var n=e,o=0,i=t.length;i>o;o++)n=n.childNodes.length<=t[o]?n.childNodes[n.childNodes.length-1]:n.childNodes[t[o]];return n},ue=function(e,t){var n=t&&t.isSkipPaddingBlankHTML,o=t&&t.isNotSplitEdgePoint;if(G(e)&&(a(e.node)||o)){if(q(e))return e.node;if(_(e))return e.node.nextSibling}if(a(e.node))return e.node.splitText(e.offset);var i=e.node.childNodes[e.offset],r=V(e.node.cloneNode(!1),e.node);return W(r,O(i)),n||(A(e.node),A(r)),r},fe=function(e,t,o){var i=z(t.node,n.eq(e));return i.length?1===i.length?ue(t,o):i.reduce(function(e,n){return e===t.node&&(e=ue(t,o)),ue({node:n,offset:e?f.position(e):L(n)},o)}):null},he=function(e,t){var n,i,r=t?h:T,a=z(e.node,r),s=o.last(a)||e.node;r(s)?(n=a[a.length-2],i=s):(n=s,i=n.parentNode);var l=n&&fe(n,e,{isSkipPaddingBlankHTML:t,isNotSplitEdgePoint:t});return l||i!==e.node||(l=e.node.childNodes[e.offset]),{rightNode:l,container:i}},me=function(e){return document.createElement(e)},pe=function(e){return document.createTextNode(e)},ge=function(e,t){if(e&&e.parentNode){if(e.removeNode)return e.removeNode(t);var n=e.parentNode;if(!t){var o,i,r=[];for(o=0,i=e.childNodes.length;i>o;o++)r.push(e.childNodes[o]);for(o=0,i=r.length;i>o;o++)n.insertBefore(r[o],e)}n.removeChild(e)}},ve=function(e,n){for(;e&&!t(e)&&n(e);){var o=e.parentNode;ge(e),e=o}},be=function(e,t){if(e.nodeName.toUpperCase()===t.toUpperCase())return e;var n=me(t);return e.style.cssText&&(n.style.cssText=e.style.cssText),W(n,o.from(e.childNodes)),V(n,e),ge(e),n},ke=r("TEXTAREA"),ye=function(e,t){var n=ke(e[0])?e.val():e.html();return t?n.replace(/[\n\r]/g,""):n},Ce=function(t,n){var o=ye(t);if(n){var i=/<(\/?)(\b(?!!)[^>\s]*)(.*?)(\s*\/?>)/g;o=o.replace(i,function(e,t,n){n=n.toUpperCase();var o=/^DIV|^TD|^TH|^P|^LI|^H[1-7]/.test(n)&&!!t,i=/^BLOCKQUOTE|^TABLE|^TBODY|^TR|^HR|^UL|^OL/.test(n);return e+(o||i?"\n":"")}),o=e.trim(o)}return o},we=function(t){var n=e(t),o=n.offset(),i=n.outerHeight(!0);return{left:o.left,top:o.top+i}},Ne=function(e,t){Object.keys(t).forEach(function(n){e.on(n,t[n])})},Te=function(e,t){Object.keys(t).forEach(function(n){e.off(n,t[n])})};return{NBSP_CHAR:d,ZERO_WIDTH_NBSP_CHAR:u,blank:R,emptyPara:"<p>"+R+"</p>",makePredByNodeName:r,isEditable:t,isControlSizing:i,isText:a,isElement:s,isVoid:l,isPara:h,isPurePara:v,isHeading:m,isInline:k,isBlock:n.not(k),isBodyInline:S,isBody:H,isParaInline:E,isPre:p,isList:y,isTable:b,isCell:w,isBlockquote:N,isBodyContainer:T,isAnchor:I,isDiv:r("DIV"),isLi:g,isBR:r("BR"),isSpan:r("SPAN"),isB:r("B"),isU:r("U"),isS:r("S"),isI:r("I"),isImg:r("IMG"),isTextarea:ke,isEmpty:F,isEmptyAnchor:n.and(I,F),isClosestSibling:x,withClosestSiblings:P,nodeLength:L,isLeftEdgePoint:q,isRightEdgePoint:_,isEdgePoint:G,isLeftEdgeOf:Y,isRightEdgeOf:Z,isLeftEdgePointOf:J,isRightEdgePointOf:Q,prevPoint:te,nextPoint:ne,isSamePoint:oe,isVisiblePoint:ie,prevPointUntil:re,nextPointUntil:ae,isCharPoint:se,walkPoint:le,ancestor:D,singleChildAncestor:M,listAncestor:z,lastAncestor:B,listNext:O,listPrev:$,listDescendant:j,commonAncestor:U,wrap:K,insertAfter:V,appendChildNodes:W,position:X,hasChildren:ee,makeOffsetPath:ce,fromOffsetPath:de,splitTree:fe,splitPoint:he,create:me,createText:pe,remove:ge,removeWhile:ve,replace:be,html:Ce,value:ye,posFromPlaceholder:we,attachEvents:Ne,detachEvents:Te}}(),h=function(t,i){var r=this,a=e.summernote.ui;return this.memos={},this.modules={},this.layoutInfo={},this.options=i,this.initialize=function(){return this.layoutInfo=a.createLayout(t,i),this._initialize(),t.hide(),this},this.destroy=function(){this._destroy(),t.removeData("summernote"),a.removeLayout(t,this.layoutInfo)},this.reset=function(){this.code(f.emptyPara),this._destroy(),this._initialize()},this._initialize=function(){var t=e.extend({},this.options.buttons);Object.keys(t).forEach(function(e){r.memo("button."+e,t[e])});var n=e.extend({},this.options.modules,e.summernote.plugins||{});Object.keys(n).forEach(function(e){r.module(e,n[e],!0)}),Object.keys(this.modules).forEach(function(e){r.initializeModule(e)})},this._destroy=function(){Object.keys(this.modules).reverse().forEach(function(e){r.removeModule(e)}),Object.keys(this.memos).forEach(function(e){r.removeMemo(e)})},this.code=function(e){var n=this.invoke("codeview.isActivated");return void 0===e?(this.invoke("codeview.sync"),n?this.layoutInfo.codable.val():this.layoutInfo.editable.html()):(n?this.layoutInfo.codable.val(e):this.layoutInfo.editable.html(e),t.val(e),this.triggerEvent("change",e),void 0)},this.isDisabled=function(){return"false"===this.layoutInfo.editable.attr("contenteditable")},this.enable=function(){this.layoutInfo.editable.attr("contenteditable",!0),this.invoke("toolbar.activate",!0)},this.disable=function(){this.invoke("codeview.isActivated")&&this.invoke("codeview.deactivate"),this.layoutInfo.editable.attr("contenteditable",!1),this.invoke("toolbar.deactivate",!0)},this.triggerEvent=function(){var e=o.head(arguments),i=o.tail(o.from(arguments)),r=this.options.callbacks[n.namespaceToCamel(e,"on")];r&&r.apply(t[0],i),t.trigger("summernote."+e,i)},this.initializeModule=function(e){var o=this.modules[e];o.shouldInitialize=o.shouldInitialize||n.ok,o.shouldInitialize()&&(o.initialize&&o.initialize(),o.events&&f.attachEvents(t,o.events))},this.module=function(e,t,n){return 1===arguments.length?this.modules[e]:(this.modules[e]=new t(this),void(n||this.initializeModule(e)))},this.removeModule=function(e){var n=this.modules[e];n.shouldInitialize()&&(n.events&&f.detachEvents(t,n.events),n.destroy&&n.destroy()),delete this.modules[e]},this.memo=function(e,t){return 1===arguments.length?this.memos[e]:void(this.memos[e]=t)},this.removeMemo=function(e){this.memos[e]&&this.memos[e].destroy&&this.memos[e].destroy(),delete this.memos[e]},this.createInvokeHandler=function(t,n){return function(o){o.preventDefault(),r.invoke(t,n||e(o.target).data("value")||e(o.currentTarget).data("value"))}},this.invoke=function(){var e=o.head(arguments),t=o.tail(o.from(arguments)),n=e.split("."),i=n.length>1,r=i&&o.head(n),a=i?o.last(n):o.head(n),s=this.modules[r||"editor"];return!r&&this[a]?this[a].apply(this,t):s&&s[a]&&s.shouldInitialize()?s[a].apply(s,t):void 0},this.initialize()};e.summernote=e.summernote||{lang:{}},e.fn.extend({summernote:function(){var t=e.type(o.head(arguments)),n="string"===t,i="object"===t,r=i?o.head(arguments):{};r=e.extend({},e.summernote.options,r),r.langInfo=e.extend(!0,{},e.summernote.lang["en-US"],e.summernote.lang[r.lang]),this.each(function(t,n){var o=e(n);if(!o.data("summernote")){var i=new h(o,r);o.data("summernote",i),o.data("summernote").triggerEvent("init",i.layoutInfo)}});var a=this.first();if(a.length){var s=a.data("summernote");if(n)return s.invoke.apply(s,o.from(arguments));r.focus&&s.invoke("editor.focus")}return this}});var m=function(t,n,o,i){this.render=function(r){var a=e(t);if(o&&o.contents&&a.html(o.contents),o&&o.className&&a.addClass(o.className),o&&o.data&&e.each(o.data,function(e,t){a.attr("data-"+e,t)}),o&&o.click&&a.on("click",o.click),n){var s=a.find(".note-children-container");n.forEach(function(e){e.render(s.length?s:a)})}return i&&i(a,o),o&&o.callback&&o.callback(a),r&&r.append(a),a}},p={create:function(t,n){return function(){var o=e.isArray(arguments[0])?arguments[0]:[],i="object"==typeof arguments[1]?arguments[1]:arguments[0];return i&&i.children&&(o=i.children),new m(t,o,i,n)}}},g=p.create('<div class="note-editor note-frame panel panel-default"/>'),v=p.create('<div class="note-toolbar panel-heading"/>'),b=p.create('<div class="note-editing-area"/>'),k=p.create('<textarea class="note-codable"/>'),y=p.create('<div class="note-editable panel-body" contentEditable="true"/>'),C=p.create(['<div class="note-statusbar">',' <div class="note-resizebar">',' <div class="note-icon-bar"/>',' <div class="note-icon-bar"/>',' <div class="note-icon-bar"/>'," </div>","</div>"].join("")),w=p.create('<div class="note-editor"/>'),N=p.create('<div class="note-editable" contentEditable="true"/>'),T=p.create('<div class="note-btn-group btn-group">'),I=p.create('<button type="button" class="note-btn btn btn-default btn-sm">',function(e,t){}),E=p.create('<div class="dropdown-menu">',function(t,n){var o=e.isArray(n.items)?n.items.map(function(e){return'<li><a href="#" data-value="'+e+'">'+e+"</a></li>"}).join(""):n.items;t.html(o)}),S=p.create('<div class="dropdown-menu note-check">',function(t,n){var o=e.isArray(n.items)?n.items.map(function(e){return'<li><a href="#" data-value="'+e+'">'+R(n.checkClassName)+" "+e+"</a></li>"}).join(""):n.items;t.html(o)}),H=p.create('<div class="note-color-palette"/>',function(e,t){for(var n=[],o=0,i=t.colors.length;i>o;o++){for(var r=t.eventName,a=t.colors[o],s=[],l=0,c=a.length;c>l;l++){var d=a[l];s.push(['<button type="button" class="note-color-btn"','style="background-color:',d,'" ','data-event="',r,'" ','data-value="',d,'" ','title="',d,'" ','data-toggle="button" tabindex="-1"></button>'].join(""))}n.push('<div class="note-color-row">'+s.join("")+"</div>")}e.html(n.join("")),e.find(".note-color-btn").tooltip({container:"body",trigger:"hover",placement:"bottom"})}),x=p.create('<div class="modal" aria-hidden="false"/>',function(e,t){e.html(['<div class="modal-dialog">',' <div class="modal-content">',t.title?' <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> <h4 class="modal-title">'+t.title+"</h4> </div>":"",' <div class="modal-body">'+t.body+"</div>",t.footer?' <div class="modal-footer">'+t.footer+"</div>":""," </div>","</div>"].join(""))}),P=p.create(['<div class="note-popover popover bottom in">',' <div class="arrow"/>',' <div class="popover-content note-children-container"/>',"</div>"].join("")),R=function(e,t){return t=t||"i","<"+t+' class="'+e+'"/>'},L={editor:g,toolbar:v,editingArea:b,codable:k,editable:y,statusbar:C,airEditor:w,airEditable:N,buttonGroup:T,button:I,dropdown:E,dropdownCheck:S,palette:H,dialog:x,popover:P,icon:R,toggleBtn:function(e,t){e.toggleClass("disabled",!t),e.attr("disabled",!t)},toggleBtnActive:function(e,t){e.toggleClass("active",t)},onDialogShown:function(e,t){e.one("shown.bs.modal",t)},onDialogHidden:function(e,t){e.one("hidden.bs.modal",t)},showDialog:function(e){e.modal("show")},hideDialog:function(e){e.modal("hide")},createLayout:function(e,t){var n=(t.airMode?L.airEditor([L.editingArea([L.airEditable()])]):L.editor([L.toolbar(),L.editingArea([L.codable(),L.editable()]),L.statusbar()])).render();return n.insertAfter(e),{note:e,editor:n,toolbar:n.find(".note-toolbar"),editingArea:n.find(".note-editing-area"),editable:n.find(".note-editable"),codable:n.find(".note-codable"),statusbar:n.find(".note-statusbar")}},removeLayout:function(e,t){e.html(t.editable.html()),t.editor.remove(),e.show()}};e.extend(e.summernote.lang,{"en-US":{font:{bold:"Bold",italic:"Italic",underline:"Underline",clear:"Remove Font Style",height:"Line Height",name:"Font Family",strikethrough:"Strikethrough",subscript:"Subscript",superscript:"Superscript",size:"Font Size"},image:{image:"Picture",insert:"Insert Image",resizeFull:"Resize Full",resizeHalf:"Resize Half",resizeQuarter:"Resize Quarter",floatLeft:"Float Left",floatRight:"Float Right",floatNone:"Float None",shapeRounded:"Shape: Rounded",shapeCircle:"Shape: Circle",shapeThumbnail:"Shape: Thumbnail",shapeNone:"Shape: None",dragImageHere:"Drag image or text here",dropImage:"Drop image or Text",selectFromFiles:"Select from files",maximumFileSize:"Maximum file size",maximumFileSizeError:"Maximum file size exceeded.",url:"Image URL",remove:"Remove Image"},video:{video:"Video",videoLink:"Video Link",insert:"Insert Video",url:"Video URL?",providers:"(YouTube, Vimeo, Vine, Instagram, DailyMotion or Youku)"},link:{link:"Link",insert:"Insert Link",unlink:"Unlink",edit:"Edit",textToDisplay:"Text to display",url:"To what URL should this link go?",openInNewWindow:"Open in new window"},table:{table:"Table"},hr:{insert:"Insert Horizontal Rule"},style:{style:"Style",normal:"Normal",blockquote:"Quote",pre:"Code",h1:"Header 1",h2:"Header 2",h3:"Header 3",h4:"Header 4",h5:"Header 5",h6:"Header 6"},lists:{unordered:"Unordered list",ordered:"Ordered list"},options:{help:"Help",fullscreen:"Full Screen",codeview:"Code View"},paragraph:{paragraph:"Paragraph",outdent:"Outdent",indent:"Indent",left:"Align left",center:"Align center",right:"Align right",justify:"Justify full"},color:{recent:"Recent Color",more:"More Color",background:"Background Color",foreground:"Foreground Color",transparent:"Transparent",setTransparent:"Set transparent",reset:"Reset",resetToDefault:"Reset to default"},shortcut:{shortcuts:"Keyboard shortcuts",close:"Close",textFormatting:"Text formatting",action:"Action",paragraphFormatting:"Paragraph formatting",documentStyle:"Document Style",extraKeys:"Extra keys"},help:{insertParagraph:"Insert Paragraph",undo:"Undoes the last command",redo:"Redoes the last command",tab:"Tab",untab:"Untab",bold:"Set a bold style",italic:"Set a italic style",underline:"Set a underline style",strikethrough:"Set a strikethrough style",removeFormat:"Clean a style",justifyLeft:"Set left align",justifyCenter:"Set center align",justifyRight:"Set right align",justifyFull:"Set full align",insertUnorderedList:"Toggle unordered list",insertOrderedList:"Toggle ordered list",outdent:"Outdent on current paragraph",indent:"Indent on current paragraph",formatPara:"Change current block's format as a paragraph(P tag)",formatH1:"Change current block's format as H1",formatH2:"Change current block's format as H2",formatH3:"Change current block's format as H3",formatH4:"Change current block's format as H4",formatH5:"Change current block's format as H5",formatH6:"Change current block's format as H6",insertHorizontalRule:"Insert horizontal rule","linkDialog.show":"Show Link Dialog"},history:{undo:"Undo",redo:"Redo"},specialChar:{specialChar:"SPECIAL CHARACTERS",select:"Select Special characters"}}});var F,A=function(){var e={BACKSPACE:8,TAB:9,ENTER:13,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,NUM0:48,NUM1:49,NUM2:50,NUM3:51,NUM4:52,NUM5:53,NUM6:54,NUM7:55,NUM8:56,B:66,E:69,I:73,J:74,K:75,L:76,R:82,S:83,U:85,V:86,Y:89,Z:90,SLASH:191,LEFTBRACKET:219,BACKSLASH:220,RIGHTBRACKET:221};return{isEdit:function(t){return o.contains([e.BACKSPACE,e.TAB,e.ENTER,e.SPACe],t)},isMove:function(t){return o.contains([e.LEFT,e.UP,e.RIGHT,e.DOWN],t)},nameFromCode:n.invertObject(e),code:e}}(),D=function(){var t=function(e,t){var n,i,r=e.parentElement(),a=document.body.createTextRange(),s=o.from(r.childNodes);for(n=0;n<s.length;n++)if(!f.isText(s[n])){if(a.moveToElementText(s[n]),a.compareEndPoints("StartToStart",e)>=0)break;i=s[n]}if(0!==n&&f.isText(s[n-1])){var l=document.body.createTextRange(),c=null;l.moveToElementText(i||r),l.collapse(!i),c=i?i.nextSibling:r.firstChild;var d=e.duplicate();d.setEndPoint("StartToStart",l);for(var u=d.text.replace(/[\r\n]/g,"").length;u>c.nodeValue.length&&c.nextSibling;)u-=c.nodeValue.length,c=c.nextSibling;c.nodeValue;t&&c.nextSibling&&f.isText(c.nextSibling)&&u===c.nodeValue.length&&(u-=c.nodeValue.length,c=c.nextSibling),r=c,n=u}return{cont:r,offset:n}},i=function(e){var t=function(e,i){var r,a;if(f.isText(e)){var s=f.listPrev(e,n.not(f.isText)),l=o.last(s).previousSibling;r=l||e.parentNode,i+=o.sum(o.tail(s),f.nodeLength),a=!l}else{if(r=e.childNodes[i]||e,f.isText(r))return t(r,0);i=0,a=!1}return{node:r,collapseToStart:a,offset:i}},i=document.body.createTextRange(),r=t(e.node,e.offset);return i.moveToElementText(r.node),i.collapse(r.collapseToStart),i.moveStart("character",r.offset),i},r=function(t,a,s,l){this.sc=t,this.so=a,this.ec=s,this.eo=l;var d=function(){if(c.isW3CRangeSupport){var e=document.createRange();return e.setStart(t,a),e.setEnd(s,l),e}var n=i({node:t,offset:a});return n.setEndPoint("EndToEnd",i({node:s,offset:l})),n};this.getPoints=function(){return{sc:t,so:a,ec:s,eo:l}},this.getStartPoint=function(){return{node:t,offset:a}},this.getEndPoint=function(){return{node:s,offset:l}},this.select=function(){var e=d();if(c.isW3CRangeSupport){var t=document.getSelection();t.rangeCount>0&&t.removeAllRanges(),t.addRange(e)}else e.select();return this},this.scrollIntoView=function(e){return e[0].scrollTop+e.height()<this.sc.offsetTop&&(e[0].scrollTop+=Math.abs(e[0].scrollTop+e.height()-this.sc.offsetTop)),this},this.normalize=function(){var e=function(e,t){if(f.isVisiblePoint(e)&&!f.isEdgePoint(e)||f.isVisiblePoint(e)&&f.isRightEdgePoint(e)&&!t||f.isVisiblePoint(e)&&f.isLeftEdgePoint(e)&&t||f.isVisiblePoint(e)&&f.isBlock(e.node)&&f.isEmpty(e.node))return e;var n=f.ancestor(e.node,f.isBlock);if((f.isLeftEdgePointOf(e,n)||f.isVoid(f.prevPoint(e).node))&&!t||(f.isRightEdgePointOf(e,n)||f.isVoid(f.nextPoint(e).node))&&t){if(f.isVisiblePoint(e))return e;t=!t}var o=t?f.nextPointUntil(f.nextPoint(e),f.isVisiblePoint):f.prevPointUntil(f.prevPoint(e),f.isVisiblePoint);return o||e},t=e(this.getEndPoint(),!1),n=this.isCollapsed()?t:e(this.getStartPoint(),!0);return new r(n.node,n.offset,t.node,t.offset)},this.nodes=function(e,t){e=e||n.ok;var i=t&&t.includeAncestor,r=t&&t.fullyContains,a=this.getStartPoint(),s=this.getEndPoint(),l=[],c=[];return f.walkPoint(a,s,function(t){if(!f.isEditable(t.node)){var n;r?(f.isLeftEdgePoint(t)&&c.push(t.node),f.isRightEdgePoint(t)&&o.contains(c,t.node)&&(n=t.node)):n=i?f.ancestor(t.node,e):t.node,n&&e(n)&&l.push(n)}},!0),o.unique(l)},this.commonAncestor=function(){return f.commonAncestor(t,s)},this.expand=function(e){var n=f.ancestor(t,e),o=f.ancestor(s,e);if(!n&&!o)return new r(t,a,s,l);var i=this.getPoints();return n&&(i.sc=n,i.so=0),o&&(i.ec=o,i.eo=f.nodeLength(o)),new r(i.sc,i.so,i.ec,i.eo)},this.collapse=function(e){return e?new r(t,a,t,a):new r(s,l,s,l)},this.splitText=function(){var e=t===s,n=this.getPoints();return f.isText(s)&&!f.isEdgePoint(this.getEndPoint())&&s.splitText(l),f.isText(t)&&!f.isEdgePoint(this.getStartPoint())&&(n.sc=t.splitText(a),n.so=0,e&&(n.ec=n.sc,n.eo=l-a)),new r(n.sc,n.so,n.ec,n.eo)},this.deleteContents=function(){if(this.isCollapsed())return this;var t=this.splitText(),n=t.nodes(null,{fullyContains:!0}),i=f.prevPointUntil(t.getStartPoint(),function(e){return!o.contains(n,e.node)}),a=[];return e.each(n,function(e,t){var n=t.parentNode;i.node!==n&&1===f.nodeLength(n)&&a.push(n),f.remove(t,!1)}),e.each(a,function(e,t){f.remove(t,!1)}),new r(i.node,i.offset,i.node,i.offset).normalize()};var u=function(e){return function(){var n=f.ancestor(t,e);return!!n&&n===f.ancestor(s,e)}};this.isOnEditable=u(f.isEditable),this.isOnList=u(f.isList),this.isOnAnchor=u(f.isAnchor),this.isOnCell=u(f.isCell),this.isLeftEdgeOf=function(e){if(!f.isLeftEdgePoint(this.getStartPoint()))return!1;var t=f.ancestor(this.sc,e);return t&&f.isLeftEdgeOf(this.sc,t)},this.isCollapsed=function(){return t===s&&a===l},this.wrapBodyInlineWithPara=function(){if(f.isBodyContainer(t)&&f.isEmpty(t))return t.innerHTML=f.emptyPara,new r(t.firstChild,0,t.firstChild,0);var e=this.normalize();if(f.isParaInline(t)||f.isPara(t))return e;var i;if(f.isInline(e.sc)){var a=f.listAncestor(e.sc,n.not(f.isInline));i=o.last(a),f.isInline(i)||(i=a[a.length-2]||e.sc.childNodes[e.so])}else i=e.sc.childNodes[e.so>0?e.so-1:0];var s=f.listPrev(i,f.isParaInline).reverse();if(s=s.concat(f.listNext(i.nextSibling,f.isParaInline)),s.length){var l=f.wrap(o.head(s),"p");f.appendChildNodes(l,o.tail(s))}return this.normalize()},this.insertNode=function(e){var t=this.wrapBodyInlineWithPara().deleteContents(),n=f.splitPoint(t.getStartPoint(),f.isInline(e));return n.rightNode?n.rightNode.parentNode.insertBefore(e,n.rightNode):n.container.appendChild(e),e},this.pasteHTML=function(t){var n=e("<div></div>").html(t)[0],i=o.from(n.childNodes),r=this.wrapBodyInlineWithPara().deleteContents();return i.reverse().map(function(e){return r.insertNode(e)}).reverse()},this.toString=function(){var e=d();return c.isW3CRangeSupport?e.toString():e.text},this.getWordRange=function(e){var t=this.getEndPoint();if(!f.isCharPoint(t))return this;var n=f.prevPointUntil(t,function(e){return!f.isCharPoint(e)});return e&&(t=f.nextPointUntil(t,function(e){return!f.isCharPoint(e)})),new r(n.node,n.offset,t.node,t.offset)},this.bookmark=function(e){return{s:{path:f.makeOffsetPath(e,t),offset:a},e:{path:f.makeOffsetPath(e,s),offset:l}}},this.paraBookmark=function(e){return{s:{path:o.tail(f.makeOffsetPath(o.head(e),t)),offset:a},e:{path:o.tail(f.makeOffsetPath(o.last(e),s)),offset:l}}},this.getClientRects=function(){var e=d();return e.getClientRects()}};return{create:function(e,n,o,i){if(arguments.length)2===arguments.length&&(o=e,i=n);else if(c.isW3CRangeSupport){var a=document.getSelection();if(!a||0===a.rangeCount)return null;if(f.isBody(a.anchorNode))return null;var s=a.getRangeAt(0);e=s.startContainer,n=s.startOffset,o=s.endContainer,i=s.endOffset}else{var l=document.selection.createRange(),d=l.duplicate();d.collapse(!1);var u=l;u.collapse(!0);var h=t(u,!0),m=t(d,!1);f.isText(h.node)&&f.isLeftEdgePoint(h)&&f.isTextNode(m.node)&&f.isRightEdgePoint(m)&&m.node.nextSibling===h.node&&(h=m),e=h.cont,n=h.offset,o=m.cont,i=m.offset}return new r(e,n,o,i)},createFromNode:function(e){var t=e,n=0,o=e,i=f.nodeLength(o);return f.isVoid(t)&&(n=f.listPrev(t).length-1,t=t.parentNode),f.isBR(o)?(i=f.listPrev(o).length-1,o=o.parentNode):f.isVoid(o)&&(i=f.listPrev(o).length,o=o.parentNode),this.create(t,n,o,i)},createFromNodeBefore:function(e){return this.createFromNode(e).collapse(!0)},createFromNodeAfter:function(e){return this.createFromNode(e).collapse()},createFromBookmark:function(e,t){var n=f.fromOffsetPath(e,t.s.path),o=t.s.offset,i=f.fromOffsetPath(e,t.e.path),a=t.e.offset;return new r(n,o,i,a)},createFromParaBookmark:function(e,t){var n=e.s.offset,i=e.e.offset,a=f.fromOffsetPath(o.head(t),e.s.path),s=f.fromOffsetPath(o.last(t),e.e.path);return new r(a,n,s,i)}}}(),M=function(){var t=function(t){return e.Deferred(function(n){e.extend(new FileReader,{onload:function(e){var t=e.target.result;n.resolve(t)},onerror:function(){n.reject(this)}}).readAsDataURL(t)}).promise()},n=function(t){return e.Deferred(function(n){var o=e("<img>");o.one("load",function(){o.off("error abort"),n.resolve(o)}).one("error abort",function(){o.off("load").detach(),n.reject(o)}).css({display:"none"}).appendTo(document.body).attr("src",t)}).promise()};return{readFileAsDataURL:t,createImage:n}}(),z=function(e){var t=[],n=-1,o=e[0],i=function(){var t=D.create(),n={s:{path:[],offset:0},e:{path:[],offset:0}};return{contents:e.html(),bookmark:t?t.bookmark(o):n}},r=function(t){null!==t.contents&&e.html(t.contents),null!==t.bookmark&&D.createFromBookmark(o,t.bookmark).select()};this.rewind=function(){e.html()!==t[n].contents&&this.recordUndo(),n=0,r(t[n])},this.reset=function(){t=[],n=-1,e.html(""),this.recordUndo()},this.undo=function(){e.html()!==t[n].contents&&this.recordUndo(),n>0&&(n--,r(t[n]))},this.redo=function(){t.length-1>n&&(n++,r(t[n]))},this.recordUndo=function(){n++,t.length>n&&(t=t.slice(0,n)),t.push(i())}},B=function(){var t=function(t,n){if(c.jqueryVersion<1.9){var o={};return e.each(n,function(e,n){o[n]=t.css(n)}),o}return t.css.call(t,n)};this.fromNode=function(e){var n=["font-family","font-size","text-align","list-style-type","line-height"],o=t(e,n)||{};return o["font-size"]=parseInt(o["font-size"],10),o},this.stylePara=function(t,n){e.each(t.nodes(f.isPara,{includeAncestor:!0}),function(t,o){e(o).css(n)})},this.styleNodes=function(t,i){t=t.splitText();var r=i&&i.nodeName||"SPAN",a=!(!i||!i.expandClosestSibling),s=!(!i||!i.onlyPartialContains);if(t.isCollapsed())return[t.insertNode(f.create(r))];var l=f.makePredByNodeName(r),c=t.nodes(f.isText,{fullyContains:!0}).map(function(e){return f.singleChildAncestor(e,l)||f.wrap(e,r)});if(a){if(s){var d=t.nodes();l=n.and(l,function(e){return o.contains(d,e)})}return c.map(function(t){var n=f.withClosestSiblings(t,l),i=o.head(n),r=o.tail(n);return e.each(r,function(e,t){f.appendChildNodes(i,t.childNodes),f.remove(t)}),o.head(n)})}return c},this.current=function(t){var n=e(f.isElement(t.sc)?t.sc:t.sc.parentNode),o=this.fromNode(n);try{o=e.extend(o,{"font-bold":document.queryCommandState("bold")?"bold":"normal","font-italic":document.queryCommandState("italic")?"italic":"normal","font-underline":document.queryCommandState("underline")?"underline":"normal","font-subscript":document.queryCommandState("subscript")?"subscript":"normal","font-superscript":document.queryCommandState("superscript")?"superscript":"normal","font-strikethrough":document.queryCommandState("strikeThrough")?"strikethrough":"normal"})}catch(i){}if(t.isOnList()){var r=["circle","disc","disc-leading-zero","square"],a=e.inArray(o["list-style-type"],r)>-1;o["list-style"]=a?"unordered":"ordered"}else o["list-style"]="none";var s=f.ancestor(t.sc,f.isPara);if(s&&s.style["line-height"])o["line-height"]=s.style.lineHeight;else{var l=parseInt(o["line-height"],10)/parseInt(o["font-size"],10); o["line-height"]=l.toFixed(1)}return o.anchor=t.isOnAnchor()&&f.ancestor(t.sc,f.isAnchor),o.ancestors=f.listAncestor(t.sc,f.isEditable),o.range=t,o}},U=function(){this.insertOrderedList=function(){this.toggleList("OL")},this.insertUnorderedList=function(){this.toggleList("UL")},this.indent=function(){var t=this,i=D.create().wrapBodyInlineWithPara(),r=i.nodes(f.isPara,{includeAncestor:!0}),a=o.clusterBy(r,n.peq2("parentNode"));e.each(a,function(n,i){var r=o.head(i);f.isLi(r)?t.wrapList(i,r.parentNode.nodeName):e.each(i,function(t,n){e(n).css("marginLeft",function(e,t){return(parseInt(t,10)||0)+25})})}),i.select()},this.outdent=function(){var t=this,i=D.create().wrapBodyInlineWithPara(),r=i.nodes(f.isPara,{includeAncestor:!0}),a=o.clusterBy(r,n.peq2("parentNode"));e.each(a,function(n,i){var r=o.head(i);f.isLi(r)?t.releaseList([i]):e.each(i,function(t,n){e(n).css("marginLeft",function(e,t){return t=parseInt(t,10)||0,t>25?t-25:""})})}),i.select()},this.toggleList=function(t){var i=this,r=D.create().wrapBodyInlineWithPara(),a=r.nodes(f.isPara,{includeAncestor:!0}),s=r.paraBookmark(a),l=o.clusterBy(a,n.peq2("parentNode"));if(o.find(a,f.isPurePara)){var c=[];e.each(l,function(e,n){c=c.concat(i.wrapList(n,t))}),a=c}else{var d=r.nodes(f.isList,{includeAncestor:!0}).filter(function(n){return!e.nodeName(n,t)});d.length?e.each(d,function(e,n){f.replace(n,t)}):a=this.releaseList(l,!0)}D.createFromParaBookmark(s,a).select()},this.wrapList=function(e,t){var n=o.head(e),i=o.last(e),r=f.isList(n.previousSibling)&&n.previousSibling,a=f.isList(i.nextSibling)&&i.nextSibling,s=r||f.insertAfter(f.create(t||"UL"),i);return e=e.map(function(e){return f.isPurePara(e)?f.replace(e,"LI"):e}),f.appendChildNodes(s,e),a&&(f.appendChildNodes(s,o.from(a.childNodes)),f.remove(a)),e},this.releaseList=function(t,n){var i=[];return e.each(t,function(t,r){var a=o.head(r),s=o.last(r),l=n?f.lastAncestor(a,f.isList):a.parentNode,c=l.childNodes.length>1?f.splitTree(l,{node:s.parentNode,offset:f.position(s)+1},{isSkipPaddingBlankHTML:!0}):null,d=f.splitTree(l,{node:a.parentNode,offset:f.position(a)},{isSkipPaddingBlankHTML:!0});r=n?f.listDescendant(d,f.isLi):o.from(d.childNodes).filter(f.isLi),(n||!f.isList(l.parentNode))&&(r=r.map(function(e){return f.replace(e,"P")})),e.each(o.from(r).reverse(),function(e,t){f.insertAfter(t,l)});var u=o.compact([l,d,c]);e.each(u,function(t,n){var o=[n].concat(f.listDescendant(n,f.isList));e.each(o.reverse(),function(e,t){f.nodeLength(t)||f.remove(t,!0)})}),i=i.concat(r)}),i}},$=function(){var t=new U;this.insertTab=function(e,t,n){var o=f.createText(new Array(n+1).join(f.NBSP_CHAR));t=t.deleteContents(),t.insertNode(o,!0),t=D.create(o,n),t.select()},this.insertParagraph=function(n){var o=D.create();o=o.deleteContents(),o=o.wrapBodyInlineWithPara();var i,r=f.ancestor(o.sc,f.isPara);if(r){if(f.isEmpty(r)&&f.isLi(r))return void t.toggleList(r.parentNode.nodeName);if(f.isEmpty(r)&&f.isPara(r)&&f.isBlockquote(r.parentNode))f.insertAfter(r,r.parentNode),i=r;else{i=f.splitTree(r,o.getStartPoint());var a=f.listDescendant(r,f.isEmptyAnchor);a=a.concat(f.listDescendant(i,f.isEmptyAnchor)),e.each(a,function(e,t){f.remove(t)}),(f.isHeading(i)||f.isPre(i))&&f.isEmpty(i)&&(i=f.replace(i,"p"))}}else{var s=o.sc.childNodes[o.so];i=e(f.emptyPara)[0],s?o.sc.insertBefore(i,s):o.sc.appendChild(i)}D.create(i,0).normalize().select().scrollIntoView(n)}},O=function(){this.tab=function(e,t){var n=f.ancestor(e.commonAncestor(),f.isCell),i=f.ancestor(n,f.isTable),r=f.listDescendant(i,f.isCell),a=o[t?"prev":"next"](r,n);a&&D.create(a,0).select()},this.createTable=function(t,n,o){for(var i,r=[],a=0;t>a;a++)r.push("<td>"+f.blank+"</td>");i=r.join("");for(var s,l=[],c=0;n>c;c++)l.push("<tr>"+i+"</tr>");s=l.join("");var d=e("<table>"+s+"</table>");return o&&o.tableClassName&&d.addClass(o.tableClassName),d[0]}},j="bogus",K=function(t){var n=this,i=t.layoutInfo.note,r=t.layoutInfo.editor,a=t.layoutInfo.editable,s=t.options,l=s.langInfo,d=new B,u=new O,h=new $,m=new U,p=new z(a);this.initialize=function(){a.on("keydown",function(e){e.keyCode===A.code.ENTER&&t.triggerEvent("enter",e),t.triggerEvent("keydown",e),s.shortcuts&&!e.isDefaultPrevented()&&n.handleKeyMap(e)}).on("keyup",function(e){t.triggerEvent("keyup",e)}).on("focus",function(e){t.triggerEvent("focus",e)}).on("blur",function(e){t.triggerEvent("blur",e)}).on("mousedown",function(e){t.triggerEvent("mousedown",e)}).on("mouseup",function(e){t.triggerEvent("mouseup",e)}).on("scroll",function(e){t.triggerEvent("scroll",e)}).on("paste",function(e){t.triggerEvent("paste",e)});var e=c.isMSIE?"DOMCharacterDataModified DOMSubtreeModified DOMNodeInserted":"input";a.on(e,function(){t.triggerEvent("change",a.html())}),r.on("focusin",function(e){t.triggerEvent("focusin",e)}).on("focusout",function(e){t.triggerEvent("focusout",e)}),!s.airMode&&s.height&&a.outerHeight(s.height),!s.airMode&&s.maxHeight&&a.css("max-height",s.maxHeight),!s.airMode&&s.minHeight&&a.css("min-height",s.minHeight),a.html(f.html(i)||f.emptyPara),p.recordUndo()},this.destroy=function(){a.off()},this.handleKeyMap=function(e){var n=s.keyMap[c.isMac?"mac":"pc"],o=[];e.metaKey&&o.push("CMD"),e.ctrlKey&&!e.altKey&&o.push("CTRL"),e.shiftKey&&o.push("SHIFT");var i=A.nameFromCode[e.keyCode];i&&o.push(i);var r=n[o.join("+")];r?(e.preventDefault(),t.invoke(r)):A.isEdit(e.keyCode)&&this.afterCommand()},this.createRange=function(){return this.focus(),D.create()},this.saveRange=function(e){this.focus(),a.data("range",D.create()),e&&D.create().collapse().select()},this.restoreRange=function(){var e=a.data("range");e&&(e.select(),this.focus())},this.saveTarget=function(e){a.data("target",e)},this.clearTarget=function(){a.removeData("target")},this.restoreTarget=function(){return a.data("target")},this.currentStyle=function(){var e=D.create();return e&&(e=e.normalize()),e?d.current(e):d.fromNode(a)},this.styleFromNode=function(e){return d.fromNode(e)},this.undo=function(){t.triggerEvent("before.command",a.html()),p.undo(),t.triggerEvent("change",a.html())},t.memo("help.undo",l.help.undo),this.redo=function(){t.triggerEvent("before.command",a.html()),p.redo(),t.triggerEvent("change",a.html())},t.memo("help.redo",l.help.redo);for(var g=this.beforeCommand=function(){t.triggerEvent("before.command",a.html()),n.focus()},v=this.afterCommand=function(e){p.recordUndo(),e||t.triggerEvent("change",a.html())},b=["bold","italic","underline","strikethrough","superscript","subscript","justifyLeft","justifyCenter","justifyRight","justifyFull","formatBlock","removeFormat","backColor","foreColor","fontName"],k=0,y=b.length;y>k;k++)this[b[k]]=function(e){return function(t){g(),document.execCommand(e,!1,t),v(!0)}}(b[k]),t.memo("help."+b[k],l.help[b[k]]);this.tab=function(){var e=this.createRange();e.isCollapsed()&&e.isOnCell()?u.tab(e):(g(),h.insertTab(a,e,s.tabSize),v())},t.memo("help.tab",l.help.tab),this.untab=function(){var e=this.createRange();e.isCollapsed()&&e.isOnCell()&&u.tab(e,!0)},t.memo("help.untab",l.help.untab),this.wrapCommand=function(e){return function(){g(),e.apply(n,arguments),v()}},this.insertParagraph=this.wrapCommand(function(){h.insertParagraph(a)}),t.memo("help.insertParagraph",l.help.insertParagraph),this.insertOrderedList=this.wrapCommand(function(){m.insertOrderedList(a)}),t.memo("help.insertOrderedList",l.help.insertOrderedList),this.insertUnorderedList=this.wrapCommand(function(){m.insertUnorderedList(a)}),t.memo("help.insertUnorderedList",l.help.insertUnorderedList),this.indent=this.wrapCommand(function(){m.indent(a)}),t.memo("help.indent",l.help.indent),this.outdent=this.wrapCommand(function(){m.outdent(a)}),t.memo("help.outdent",l.help.outdent),this.insertImage=function(e,n){return M.createImage(e,n).then(function(e){g(),"function"==typeof n?n(e):("string"==typeof n&&e.attr("data-filename",n),e.css("width",Math.min(a.width(),e.width()))),e.show(),D.create().insertNode(e[0]),D.createFromNodeAfter(e[0]).select(),v()}).fail(function(){t.triggerEvent("image.upload.error")})},this.insertImages=function(o){e.each(o,function(e,o){var i=o.name;s.maximumImageFileSize&&s.maximumImageFileSize<o.size?t.triggerEvent("image.upload.error",l.image.maximumFileSizeError):M.readFileAsDataURL(o).then(function(e){return n.insertImage(e,i)}).fail(function(){t.triggerEvent("image.upload.error")})})},this.insertImagesOrCallback=function(e){var n=s.callbacks;n.onImageUpload?t.triggerEvent("image.upload",e):this.insertImages(e)},this.insertNode=this.wrapCommand(function(e){D.create().insertNode(e),D.createFromNodeAfter(e).select()}),this.insertText=this.wrapCommand(function(e){var t=D.create().insertNode(f.createText(e));D.create(t,f.nodeLength(t)).select()}),this.getSelectedText=function(){var e=this.createRange();return e.isOnAnchor()&&(e=D.createFromNode(f.ancestor(e.sc,f.isAnchor))),e.toString()},this.pasteHTML=this.wrapCommand(function(e){var t=D.create().pasteHTML(e);D.createFromNodeAfter(o.last(t)).select()}),this.formatBlock=this.wrapCommand(function(e){e=c.isMSIE?"<"+e+">":e,document.execCommand("FormatBlock",!1,e)}),this.formatPara=function(){this.formatBlock("P")},t.memo("help.formatPara",l.help.formatPara);for(var k=1;6>=k;k++)this["formatH"+k]=function(e){return function(){this.formatBlock("H"+e)}}(k),t.memo("help.formatH"+k,l.help["formatH"+k]);this.fontSize=function(t){this.focus();var n=D.create();if(n&&n.isCollapsed()){var i=d.styleNodes(n),r=o.head(i);e(i).css({"font-size":t+"px"}),r&&!f.nodeLength(r)&&(r.innerHTML=f.ZERO_WIDTH_NBSP_CHAR,D.createFromNodeAfter(r.firstChild).select(),a.data(j,r))}else g(),e(d.styleNodes(n)).css({"font-size":t+"px"}),v()},this.insertHorizontalRule=this.wrapCommand(function(){var t=D.create(),n=t.insertNode(e("<HR/>")[0]);n.nextSibling&&D.create(n.nextSibling,0).normalize().select()}),t.memo("help.insertHorizontalRule",l.help.insertHorizontalRule),this.removeBogus=function(){var e=a.data(j);if(e){var t=o.find(o.from(e.childNodes),f.isText),n=t.nodeValue.indexOf(f.ZERO_WIDTH_NBSP_CHAR);-1!==n&&t.deleteData(n,1),f.isEmpty(e)&&f.remove(e),a.removeData(j)}},this.lineHeight=this.wrapCommand(function(e){d.stylePara(D.create(),{lineHeight:e})}),this.unlink=function(){var e=this.createRange();if(e.isOnAnchor()){var t=f.ancestor(e.sc,f.isAnchor);e=D.createFromNode(t),e.select(),g(),document.execCommand("unlink"),v()}},this.createLink=this.wrapCommand(function(t){var n=t.url,i=t.text,r=t.isNewWindow,a=t.range||this.createRange(),l=a.toString()!==i;s.onCreateLink&&(n=s.onCreateLink(n));var c=[];if(l){var u=a.insertNode(e("<A>"+i+"</A>")[0]);c.push(u)}else c=d.styleNodes(a,{nodeName:"A",expandClosestSibling:!0,onlyPartialContains:!0});e.each(c,function(t,o){e(o).attr("href",n),r?e(o).attr("target","_blank"):e(o).removeAttr("target")});var f=D.createFromNodeBefore(o.head(c)),h=f.getStartPoint(),m=D.createFromNodeAfter(o.last(c)),p=m.getEndPoint();D.create(h.node,h.offset,p.node,p.offset).select()}),this.getLinkInfo=function(){this.focus();var t=D.create().expand(f.isAnchor),n=e(o.head(t.nodes(f.isAnchor)));return{range:t,text:t.toString(),isNewWindow:n.length?"_blank"===n.attr("target"):!1,url:n.length?n.attr("href"):""}},this.color=this.wrapCommand(function(e){var t=e.foreColor,n=e.backColor;t&&document.execCommand("foreColor",!1,t),n&&document.execCommand("backColor",!1,n)}),this.insertTable=this.wrapCommand(function(e){var t=e.split("x"),n=D.create().deleteContents();n.insertNode(u.createTable(t[0],t[1],s))}),this.floatMe=this.wrapCommand(function(t){var n=e(this.restoreTarget());n.css("float",t)}),this.resize=this.wrapCommand(function(t){var n=e(this.restoreTarget());n.css({width:100*t+"%",height:""})}),this.resizeTo=function(e,t,n){var o;if(n){var i=e.y/e.x,r=t.data("ratio");o={width:r>i?e.x:e.y/r,height:r>i?e.x*r:e.y}}else o={width:e.x,height:e.y};t.css(o)},this.removeMedia=this.wrapCommand(function(){var n=e(this.restoreTarget()).detach();t.triggerEvent("media.delete",n,a)}),this.focus=function(){a.is(":focus")||(a.focus(),!a.is(":focus")&&c.isFF&&D.createFromNode(a[0]).normalize().collapse().select())},this.isEmpty=function(){return f.isEmpty(a[0])||f.emptyPara===a.html()}},V=function(t){var n=this,i=t.layoutInfo.editable;this.events={"summernote.keydown":function(e,o){n.needKeydownHook()&&(o.ctrlKey||o.metaKey)&&o.keyCode===A.code.V&&(t.invoke("editor.saveRange"),n.$paste.focus(),setTimeout(function(){n.pasteByHook()},0))}},this.needKeydownHook=function(){return c.isMSIE&&c.browserVersion>10||c.isFF},this.initialize=function(){this.needKeydownHook()?(this.$paste=e("<div />").attr("contenteditable",!0).css({position:"absolute",left:-1e5,opacity:0}),i.before(this.$paste),this.$paste.on("paste",function(e){t.triggerEvent("paste",e)})):i.on("paste",this.pasteByEvent)},this.destroy=function(){this.needKeydownHook()&&(this.$paste.remove(),this.$paste=null)},this.pasteByHook=function(){var n=this.$paste[0].firstChild;if(f.isImg(n)){for(var o=n.src,i=atob(o.split(",")[1]),r=new Uint8Array(i.length),a=0;a<i.length;a++)r[a]=i.charCodeAt(a);var s=new Blob([r],{type:"image/png"});s.name="clipboard.png",t.invoke("editor.restoreRange"),t.invoke("editor.focus"),t.invoke("editor.insertImagesOrCallback",[s])}else{var l=e("<div />").html(this.$paste.html()).html();t.invoke("editor.restoreRange"),t.invoke("editor.focus"),l&&t.invoke("editor.pasteHTML",l)}this.$paste.empty()},this.pasteByEvent=function(e){var n=e.originalEvent.clipboardData;if(n&&n.items&&n.items.length){var i=o.head(n.items);"file"===i.kind&&-1!==i.type.indexOf("image/")&&t.invoke("editor.insertImagesOrCallback",[i.getAsFile()]),t.invoke("editor.afterCommand")}}},W=function(t){var n=e(document),o=t.layoutInfo.editor,i=t.layoutInfo.editable,r=t.options,a=r.langInfo,s=e(['<div class="note-dropzone">',' <div class="note-dropzone-message"/>',"</div>"].join("")).prependTo(o);this.initialize=function(){r.disableDragAndDrop?n.on("drop",function(e){e.preventDefault()}):this.attachDragAndDropEvent()},this.attachDragAndDropEvent=function(){var r=e(),l=s.find(".note-dropzone-message");n.on("dragenter",function(e){var n=t.invoke("codeview.isActivated"),i=o.width()>0&&o.height()>0;n||r.length||!i||(o.addClass("dragover"),s.width(o.width()),s.height(o.height()),l.text(a.image.dragImageHere)),r=r.add(e.target)}).on("dragleave",function(e){r=r.not(e.target),r.length||o.removeClass("dragover")}).on("drop",function(){r=e(),o.removeClass("dragover")}),s.on("dragenter",function(){s.addClass("hover"),l.text(a.image.dropImage)}).on("dragleave",function(){s.removeClass("hover"),l.text(a.image.dragImageHere)}),s.on("drop",function(n){var o=n.originalEvent.dataTransfer;o&&o.files&&o.files.length?(n.preventDefault(),i.focus(),t.invoke("editor.insertImagesOrCallback",o.files)):e.each(o.types,function(n,i){var r=o.getData(i);i.toLowerCase().indexOf("text")>-1?t.invoke("editor.pasteHTML",r):e(r).each(function(){t.invoke("editor.insertNode",this)})})}).on("dragover",!1)}};c.hasCodeMirror&&(c.isSupportAmd?require(["codemirror"],function(e){F=e}):F=window.CodeMirror);var q=function(e){var t=e.layoutInfo.editor,n=e.layoutInfo.editable,o=e.layoutInfo.codable,i=e.options;this.sync=function(){var e=this.isActivated();e&&c.hasCodeMirror&&o.data("cmEditor").save()},this.isActivated=function(){return t.hasClass("codeview")},this.toggle=function(){this.isActivated()?this.deactivate():this.activate(),e.triggerEvent("codeview.toggled")},this.activate=function(){if(o.val(f.html(n,i.prettifyHtml)),o.height(n.height()),e.invoke("toolbar.updateCodeview",!0),t.addClass("codeview"),o.focus(),c.hasCodeMirror){var r=F.fromTextArea(o[0],i.codemirror);if("undefined"!=typeof i.codemirror.callbacks)for(var a in i.codemirror.callbacks)if(i.codemirror.callbacks.hasOwnProperty(a)){if("onBlur"==a)var s="blur";else if("onFocus"==a)var s="focus";else if("onChange"==a)var s="change";r.on(s,i.codemirror.callbacks[a],r)}if(i.codemirror.tern){var l=new F.TernServer(i.codemirror.tern);r.ternServer=l,r.on("cursorActivity",function(e){l.updateArgHints(e)})}r.setSize(null,n.outerHeight()),o.data("cmEditor",r)}},this.deactivate=function(){if(c.hasCodeMirror){var r=o.data("cmEditor");o.val(r.getValue()),r.toTextArea()}var a=f.value(o,i.prettifyHtml)||f.emptyPara,s=n.html()!==a;n.html(a),n.height(i.height?o.height():"auto"),t.removeClass("codeview"),s&&e.triggerEvent("change",n.html(),n),n.focus(),e.invoke("toolbar.updateCodeview",!1)},this.destroy=function(){this.isActivated()&&this.deactivate()}},_=24,G=function(t){var n=e(document),o=t.layoutInfo.statusbar,i=t.layoutInfo.editable,r=t.options;this.initialize=function(){r.airMode||r.disableResizeEditor||o.on("mousedown",function(e){e.preventDefault(),e.stopPropagation();var t=i.offset().top-n.scrollTop();n.on("mousemove",function(e){var n=e.clientY-(t+_);n=r.minheight>0?Math.max(n,r.minheight):n,n=r.maxHeight>0?Math.min(n,r.maxHeight):n,i.height(n)}).one("mouseup",function(){n.off("mousemove")})})},this.destroy=function(){o.off()}},Y=function(t){var n=t.layoutInfo.editor,o=t.layoutInfo.toolbar,i=t.layoutInfo.editable,r=t.layoutInfo.codable,a=e(window),s=e("html, body");this.toggle=function(){var e=function(e){i.css("height",e.h),r.css("height",e.h),r.data("cmeditor")&&r.data("cmeditor").setsize(null,e.h)};n.toggleClass("fullscreen");var l=n.hasClass("fullscreen");l?(i.data("orgHeight",i.css("height")),a.on("resize",function(){e({h:a.height()-o.outerHeight()})}).trigger("resize"),s.css("overflow","hidden")):(a.off("resize"),e({h:i.data("orgHeight")}),s.css("overflow","visible")),t.invoke("toolbar.updateFullscreen",l)}},Z=function(t){var n=this,o=e(document),i=t.layoutInfo.editingArea,r=t.options;this.events={"summernote.mousedown":function(e,t){n.update(t.target)&&t.preventDefault()},"summernote.keyup summernote.scroll summernote.change summernote.dialog.shown":function(){n.update()}},this.initialize=function(){this.$handle=e(['<div class="note-handle">','<div class="note-control-selection">','<div class="note-control-selection-bg"></div>','<div class="note-control-holder note-control-nw"></div>','<div class="note-control-holder note-control-ne"></div>','<div class="note-control-holder note-control-sw"></div>','<div class="',r.disableResizeImage?"note-control-holder":"note-control-sizing",' note-control-se"></div>',r.disableResizeImage?"":'<div class="note-control-selection-info"></div>',"</div>","</div>"].join("")).prependTo(i),this.$handle.on("mousedown",function(e){if(f.isControlSizing(e.target)){e.preventDefault(),e.stopPropagation();var i=n.$handle.find(".note-control-selection").data("target"),r=i.offset(),a=o.scrollTop();o.on("mousemove",function(e){t.invoke("editor.resizeTo",{x:e.clientX-r.left,y:e.clientY-(r.top-a)},i,!e.shiftKey),n.update(i[0])}).one("mouseup",function(e){e.preventDefault(),o.off("mousemove"),t.invoke("editor.afterCommand")}),i.data("ratio")||i.data("ratio",i.height()/i.width())}})},this.destroy=function(){this.$handle.remove()},this.update=function(n){var o=f.isImg(n),i=this.$handle.find(".note-control-selection");if(t.invoke("imagePopover.update",n),o){var r=e(n),a=r.position(),s={w:r.outerWidth(!0),h:r.outerHeight(!0)};i.css({display:"block",left:a.left,top:a.top,width:s.w,height:s.h}).data("target",r);var l=s.w+"x"+s.h;i.find(".note-control-selection-info").text(l),t.invoke("editor.saveTarget",n)}else this.hide();return o},this.hide=function(){t.invoke("editor.clearTarget"),this.$handle.children().hide()}},J=function(t){var n=this,i=/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|(?:mailto:)?[A-Z0-9._%+-]+@)(.+)$/i;this.events={"summernote.keyup":function(e,t){t.isDefaultPrevented()||n.handleKeyup(t)},"summernote.keydown":function(e,t){n.handleKeydown(t)}},this.initialize=function(){this.lastWordRange=null},this.destroy=function(){this.lastWordRange=null},this.replace=function(){if(this.lastWordRange){var e=this.lastWordRange.toString();if(i.test(e)){var n=this.nodeFromKeyword(e);this.lastWordRange.insertNode(n),this.lastWordRange=null,t.invoke("editor.focus")}}},this.nodeFromKeyword=function(t){return e("<a />").html(t).attr("href",t)[0]},this.handleKeydown=function(e){if(o.contains([A.code.ENTER,A.code.SPACE],e.keyCode)){var n=t.invoke("editor.createRange").getWordRange();this.lastWordRange=n}},this.handleKeyup=function(e){o.contains([A.code.ENTER,A.code.SPACE],e.keyCode)&&this.replace()}},Q=function(e){var t=e.layoutInfo.note;this.events={"summernote.change":function(){t.val(e.invoke("code"))}},this.shouldInitialize=function(){return f.isTextarea(t[0])}},X=function(t){var n=this,o=t.layoutInfo.editingArea,i=t.options;this.events={"summernote.init summernote.change":function(){n.update()},"summernote.codeview.toggled":function(){n.update()}},this.shouldInitialize=function(){return!!i.placeholder},this.initialize=function(){this.$placeholder=e('<div class="note-placeholder">'),this.$placeholder.on("click",function(){t.invoke("focus")}).text(i.placeholder).prependTo(o)},this.destroy=function(){this.$placeholder.remove()},this.update=function(){var e=!t.invoke("codeview.isActivated")&&t.invoke("editor.isEmpty");this.$placeholder.toggle(e)}},ee=function(t){var i=this,r=e.summernote.ui,a=t.layoutInfo.toolbar,s=t.options,l=s.langInfo,d=n.invertObject(s.keyMap[c.isMac?"mac":"pc"]),u=this.representShortcut=function(e){var t=d[e];return c.isMac&&(t=t.replace("CMD","⌘").replace("SHIFT","⇧")),t=t.replace("BACKSLASH","\\").replace("SLASH","/").replace("LEFTBRACKET","[").replace("RIGHTBRACKET","]")," ("+t+")"};this.initialize=function(){this.addToolbarButtons(),this.addImagePopoverButtons(),this.addLinkPopoverButtons()},this.addToolbarButtons=function(){t.memo("button.style",function(){return r.buttonGroup([r.button({className:"dropdown-toggle",contents:r.icon(s.icons.magic)+" "+r.icon(s.icons.caret,"span"),tooltip:l.style.style,data:{toggle:"dropdown"}}),r.dropdown({className:"dropdown-style",items:t.options.styleTags,click:t.createInvokeHandler("editor.formatBlock")})]).render()}),t.memo("button.bold",function(){return r.button({className:"note-btn-bold",contents:r.icon(s.icons.bold),tooltip:l.font.bold+u("bold"),click:t.createInvokeHandler("editor.bold")}).render()}),t.memo("button.italic",function(){return r.button({className:"note-btn-italic",contents:r.icon(s.icons.italic),tooltip:l.font.italic+u("italic"),click:t.createInvokeHandler("editor.italic")}).render()}),t.memo("button.underline",function(){return r.button({className:"note-btn-underline",contents:r.icon(s.icons.underline),tooltip:l.font.underline+u("underline"),click:t.createInvokeHandler("editor.underline")}).render()}),t.memo("button.clear",function(){return r.button({contents:r.icon(s.icons.eraser),tooltip:l.font.clear+u("removeFormat"),click:t.createInvokeHandler("editor.removeFormat")}).render()}),t.memo("button.strikethrough",function(){return r.button({contents:r.icon(s.icons.strikethrough),tooltip:l.font.strikethrough+u("strikethrough"),click:t.createInvokeHandler("editor.strikethrough")}).render()}),t.memo("button.superscript",function(){return r.button({contents:r.icon(s.icons.superscript),tooltip:l.font.superscript,click:t.createInvokeHandler("editor.superscript")}).render()}),t.memo("button.subscript",function(){return r.button({contents:r.icon(s.icons.subscript),tooltip:l.font.subscript,click:t.createInvokeHandler("editor.subscript")}).render()}),t.memo("button.fontname",function(){return r.buttonGroup([r.button({className:"dropdown-toggle",contents:'<span class="note-current-fontname"/> '+r.icon(s.icons.caret,"span"),tooltip:l.font.name,data:{toggle:"dropdown"}}),r.dropdownCheck({className:"dropdown-fontname",checkClassName:s.icons.menuCheck,items:s.fontNames.filter(function(e){return c.isFontInstalled(e)||o.contains(s.fontNamesIgnoreCheck,e)}),click:t.createInvokeHandler("editor.fontName")})]).render()}),t.memo("button.fontsize",function(){return r.buttonGroup([r.button({className:"dropdown-toggle",contents:'<span class="note-current-fontsize"/>'+r.icon(s.icons.caret,"span"),tooltip:l.font.size,data:{toggle:"dropdown"}}),r.dropdownCheck({className:"dropdown-fontsize",checkClassName:s.icons.menuCheck,items:s.fontSizes,click:t.createInvokeHandler("editor.fontSize")})]).render()}),t.memo("button.color",function(){return r.buttonGroup({className:"note-color",children:[r.button({className:"note-current-color-button",contents:r.icon(s.icons.font+" note-recent-color"),tooltip:l.color.recent,click:t.createInvokeHandler("editor.color"),callback:function(e){var t=e.find(".note-recent-color");t.css({"background-color":"yellow"}),e.data("value",{backColor:"yellow"})}}),r.button({className:"dropdown-toggle",contents:r.icon(s.icons.caret,"span"),tooltip:l.color.more,data:{toggle:"dropdown"}}),r.dropdown({items:["<li>",'<div class="btn-group">',' <div class="note-palette-title">'+l.color.background+"</div>"," <div>",' <button class="note-color-reset btn btn-default" data-event="backColor" data-value="inherit">',l.color.transparent," </button>"," </div>",' <div class="note-holder" data-event="backColor"/>',"</div>",'<div class="btn-group">',' <div class="note-palette-title">'+l.color.foreground+"</div>"," <div>",' <button class="note-color-reset btn btn-default" data-event="removeFormat" data-value="foreColor">',l.color.resetToDefault," </button>"," </div>",' <div class="note-holder" data-event="foreColor"/>',"</div>","</li>"].join(""),callback:function(t){t.find(".note-holder").each(function(){var t=e(this);t.append(r.palette({colors:s.colors,eventName:t.data("event")}).render())})},click:function(n){var o=e(n.target),i=o.data("event"),r=o.data("value");if(i&&r){var a="backColor"===i?"background-color":"color",s=o.closest(".note-color").find(".note-recent-color"),l=o.closest(".note-color").find(".note-current-color-button"),c=l.data("value");c[i]=r,s.css(a,r),l.data("value",c),t.invoke("editor."+i,r)}}})]}).render()}),t.memo("button.ol",function(){return r.button({contents:r.icon(s.icons.unorderedlist),tooltip:l.lists.unordered+u("insertUnorderedList"),click:t.createInvokeHandler("editor.insertUnorderedList")}).render()}),t.memo("button.ul",function(){return r.button({contents:r.icon(s.icons.orderedlist),tooltip:l.lists.ordered+u("insertOrderedList"),click:t.createInvokeHandler("editor.insertOrderedList")}).render()}),t.memo("button.paragraph",function(){return r.buttonGroup([r.button({className:"dropdown-toggle",contents:r.icon(s.icons.align)+" "+r.icon(s.icons.caret,"span"),tooltip:l.paragraph.paragraph,data:{toggle:"dropdown"}}),r.dropdown([r.buttonGroup({className:"note-align",children:[r.button({contents:r.icon(s.icons.alignLeft),tooltip:l.paragraph.left+u("justifyLeft"),click:t.createInvokeHandler("editor.justifyLeft")}),r.button({contents:r.icon(s.icons.alignCenter),tooltip:l.paragraph.center+u("justifyCenter"),click:t.createInvokeHandler("editor.justifyCenter")}),r.button({contents:r.icon(s.icons.alignRight),tooltip:l.paragraph.right+u("justifyRight"),click:t.createInvokeHandler("editor.justifyRight")}),r.button({contents:r.icon(s.icons.alignJustify),tooltip:l.paragraph.justify+u("justifyFull"),click:t.createInvokeHandler("editor.justifyFull")})]}),r.buttonGroup({className:"note-list",children:[r.button({contents:r.icon(s.icons.outdent),tooltip:l.paragraph.outdent+u("outdent"),click:t.createInvokeHandler("editor.outdent")}),r.button({contents:r.icon(s.icons.indent),tooltip:l.paragraph.indent+u("indent"),click:t.createInvokeHandler("editor.indent")})]})])]).render()}),t.memo("button.height",function(){return r.buttonGroup([r.button({className:"dropdown-toggle",contents:r.icon(s.icons.textHeight)+" "+r.icon(s.icons.caret,"span"),tooltip:l.font.height,data:{toggle:"dropdown"}}),r.dropdownCheck({items:s.lineHeights,checkClassName:s.icons.menuCheck,className:"dropdown-line-height",click:t.createInvokeHandler("editor.lineHeight")})]).render()}),t.memo("button.table",function(){return r.buttonGroup([r.button({className:"dropdown-toggle",contents:r.icon(s.icons.table)+" "+r.icon(s.icons.caret,"span"),tooltip:l.table.table,data:{toggle:"dropdown"}}),r.dropdown({className:"note-table",items:['<div class="note-dimension-picker">',' <div class="note-dimension-picker-mousecatcher" data-event="insertTable" data-value="1x1"/>',' <div class="note-dimension-picker-highlighted"/>',' <div class="note-dimension-picker-unhighlighted"/>',"</div>",'<div class="note-dimension-display">1 x 1</div>'].join("")})],{callback:function(e){var n=e.find(".note-dimension-picker-mousecatcher");n.css({width:s.insertTableMaxSize.col+"em",height:s.insertTableMaxSize.row+"em"}).mousedown(t.createInvokeHandler("editor.insertTable")).on("mousemove",i.tableMoveHandler)}}).render()}),t.memo("button.link",function(){return r.button({contents:r.icon(s.icons.link),tooltip:l.link.link,click:t.createInvokeHandler("linkDialog.show")}).render()}),t.memo("button.picture",function(){return r.button({contents:r.icon(s.icons.picture),tooltip:l.image.image,click:t.createInvokeHandler("imageDialog.show")}).render()}),t.memo("button.video",function(){return r.button({contents:r.icon(s.icons.video),tooltip:l.video.video,click:t.createInvokeHandler("videoDialog.show")}).render()}),t.memo("button.hr",function(){return r.button({contents:r.icon(s.icons.minus),tooltip:l.hr.insert+u("insertHorizontalRule"),click:t.createInvokeHandler("editor.insertHorizontalRule")}).render()}),t.memo("button.fullscreen",function(){return r.button({className:"btn-fullscreen",contents:r.icon(s.icons.arrowsAlt),tooltip:l.options.fullscreen,click:t.createInvokeHandler("fullscreen.toggle")}).render()}),t.memo("button.codeview",function(){return r.button({className:"btn-codeview",contents:r.icon(s.icons.code),tooltip:l.options.codeview,click:t.createInvokeHandler("codeview.toggle")}).render()}),t.memo("button.redo",function(){return r.button({contents:r.icon(s.icons.redo),tooltip:l.history.redo+u("redo"),click:t.createInvokeHandler("editor.redo")}).render()}),t.memo("button.undo",function(){return r.button({contents:r.icon(s.icons.undo),tooltip:l.history.undo+u("undo"),click:t.createInvokeHandler("editor.undo")}).render()}),t.memo("button.help",function(){return r.button({contents:r.icon(s.icons.question),tooltip:l.options.help,click:t.createInvokeHandler("helpDialog.show")}).render()})},this.addImagePopoverButtons=function(){t.memo("button.imageSize100",function(){return r.button({contents:'<span class="note-fontsize-10">100%</span>',tooltip:l.image.resizeFull,click:t.createInvokeHandler("editor.resize","1")}).render()}),t.memo("button.imageSize50",function(){return r.button({contents:'<span class="note-fontsize-10">50%</span>',tooltip:l.image.resizeHalf,click:t.createInvokeHandler("editor.resize","0.5")}).render()}),t.memo("button.imageSize25",function(){return r.button({contents:'<span class="note-fontsize-10">25%</span>',tooltip:l.image.resizeQuarter,click:t.createInvokeHandler("editor.resize","0.25")}).render()}),t.memo("button.floatLeft",function(){return r.button({contents:r.icon(s.icons.alignLeft),tooltip:l.image.floatLeft,click:t.createInvokeHandler("editor.floatMe","left")}).render()}),t.memo("button.floatRight",function(){return r.button({contents:r.icon(s.icons.alignRight),tooltip:l.image.floatRight,click:t.createInvokeHandler("editor.floatMe","right")}).render()}),t.memo("button.floatNone",function(){return r.button({contents:r.icon(s.icons.alignJustify),tooltip:l.image.floatNone,click:t.createInvokeHandler("editor.floatMe","none")}).render()}),t.memo("button.removeMedia",function(){return r.button({contents:r.icon(s.icons.trash),tooltip:l.image.remove,click:t.createInvokeHandler("editor.removeMedia")}).render()})},this.addLinkPopoverButtons=function(){t.memo("button.linkDialogShow",function(){return r.button({contents:r.icon(s.icons.link),tooltip:l.link.edit,click:t.createInvokeHandler("linkDialog.show")}).render()}),t.memo("button.unlink",function(){return r.button({contents:r.icon(s.icons.unlink),tooltip:l.link.unlink,click:t.createInvokeHandler("editor.unlink")}).render()})},this.build=function(e,n){for(var o=0,i=n.length;i>o;o++){for(var a=n[o],s=a[0],l=a[1],c=r.buttonGroup({className:"note-"+s}).render(),d=0,u=l.length;u>d;d++){ var f=t.memo("button."+l[d]);f&&c.append("function"==typeof f?f(t):f)}c.appendTo(e)}},this.updateCurrentStyle=function(){var n=t.invoke("editor.currentStyle");if(this.updateBtnStates({".note-btn-bold":function(){return"bold"===n["font-bold"]},".note-btn-italic":function(){return"italic"===n["font-italic"]},".note-btn-underline":function(){return"underline"===n["font-underline"]}}),n["font-family"]){var i=n["font-family"].split(",").map(function(e){return e.replace(/[\'\"]/g,"").replace(/\s+$/,"").replace(/^\s+/,"")}),r=o.find(i,function(e){return c.isFontInstalled(e)||o.contains(s.fontNamesIgnoreCheck,e)});a.find(".dropdown-fontname li a").each(function(){var t=e(this).data("value")+""==r+"";this.className=t?"checked":""}),a.find(".note-current-fontname").text(r)}if(n["font-size"]){var l=n["font-size"];a.find(".dropdown-fontsize li a").each(function(){var t=e(this).data("value")+""==l+"";this.className=t?"checked":""}),a.find(".note-current-fontsize").text(l)}if(n["line-height"]){var d=n["line-height"];a.find(".dropdown-line-height li a").each(function(){var t=e(this).data("value")+""==d+"";this.className=t?"checked":""})}},this.updateBtnStates=function(t){e.each(t,function(e,t){r.toggleBtnActive(a.find(e),t())})},this.tableMoveHandler=function(t){var n,o=18,i=e(t.target.parentNode),r=i.next(),a=i.find(".note-dimension-picker-mousecatcher"),l=i.find(".note-dimension-picker-highlighted"),c=i.find(".note-dimension-picker-unhighlighted");if(void 0===t.offsetX){var d=e(t.target).offset();n={x:t.pageX-d.left,y:t.pageY-d.top}}else n={x:t.offsetX,y:t.offsetY};var u={c:Math.ceil(n.x/o)||1,r:Math.ceil(n.y/o)||1};l.css({width:u.c+"em",height:u.r+"em"}),a.data("value",u.c+"x"+u.r),3<u.c&&u.c<s.insertTableMaxSize.col&&c.css({width:u.c+1+"em"}),3<u.r&&u.r<s.insertTableMaxSize.row&&c.css({height:u.r+1+"em"}),r.html(u.c+" x "+u.r)}},te=function(t){var n=e.summernote.ui,o=t.layoutInfo.note,i=t.layoutInfo.toolbar,r=t.options;this.shouldInitialize=function(){return!r.airMode},this.initialize=function(){r.toolbar=r.toolbar||[],r.toolbar.length?t.invoke("buttons.build",i,r.toolbar):i.hide(),o.on("summernote.keyup summernote.mouseup summernote.change",function(){t.invoke("buttons.updateCurrentStyle")}),t.invoke("buttons.updateCurrentStyle")},this.destroy=function(){i.children().remove()},this.updateFullscreen=function(e){n.toggleBtnActive(i.find(".btn-fullscreen"),e)},this.updateCodeview=function(e){n.toggleBtnActive(i.find(".btn-codeview"),e),e?this.deactivate():this.activate()},this.activate=function(e){var t=i.find("button");e||(t=t.not(".btn-codeview")),n.toggleBtn(t,!0)},this.deactivate=function(e){var t=i.find("button");e||(t=t.not(".btn-codeview")),n.toggleBtn(t,!1)}},ne=function(t){var n=this,o=e.summernote.ui,i=t.layoutInfo.editor,r=t.options,a=r.langInfo;this.initialize=function(){var t=r.dialogsInBody?e(document.body):i,n='<div class="form-group"><label>'+a.link.textToDisplay+'</label><input class="note-link-text form-control" type="text" /></div><div class="form-group"><label>'+a.link.url+'</label><input class="note-link-url form-control" type="text" value="http://" /></div>'+(r.disableLinkTarget?"":'<div class="checkbox"><label><input type="checkbox" checked> '+a.link.openInNewWindow+"</label></div>"),s='<button href="#" class="btn btn-primary note-link-btn disabled" disabled>'+a.link.insert+"</button>";this.$dialog=o.dialog({className:"link-dialog",title:a.link.insert,body:n,footer:s}).render().appendTo(t)},this.destroy=function(){o.hideDialog(this.$dialog),this.$dialog.remove()},this.bindEnterKey=function(e,t){e.on("keypress",function(e){e.keyCode===A.code.ENTER&&t.trigger("click")})},this.showLinkDialog=function(i){return e.Deferred(function(e){var r=n.$dialog.find(".note-link-text"),a=n.$dialog.find(".note-link-url"),s=n.$dialog.find(".note-link-btn"),l=n.$dialog.find("input[type=checkbox]");o.onDialogShown(n.$dialog,function(){t.triggerEvent("dialog.shown"),r.val(i.text),r.on("input",function(){o.toggleBtn(s,r.val()&&a.val()),i.text=r.val()}),i.url||(i.url=i.text||"http://",o.toggleBtn(s,i.text)),a.on("input",function(){o.toggleBtn(s,r.val()&&a.val()),i.text||r.val(a.val())}).val(i.url).trigger("focus"),n.bindEnterKey(a,s),n.bindEnterKey(r,s),l.prop("checked",i.isNewWindow),s.one("click",function(t){t.preventDefault(),e.resolve({range:i.range,url:a.val(),text:r.val(),isNewWindow:l.is(":checked")}),n.$dialog.modal("hide")})}),o.onDialogHidden(n.$dialog,function(){r.off("input keypress"),a.off("input keypress"),s.off("click"),"pending"===e.state()&&e.reject()}),o.showDialog(n.$dialog)}).promise()},this.show=function(){var e=t.invoke("editor.getLinkInfo");t.invoke("editor.saveRange"),this.showLinkDialog(e).then(function(e){t.invoke("editor.restoreRange"),t.invoke("editor.createLink",e)}).fail(function(){t.invoke("editor.restoreRange")})},t.memo("help.linkDialog.show",r.langInfo.help["linkDialog.show"])},oe=function(t){var n=this,i=e.summernote.ui,r=t.options;this.events={"summernote.keyup summernote.mouseup summernote.change summernote.scroll":function(){n.update()},"summernote.dialog.shown":function(){n.hide()}},this.shouldInitialize=function(){return!o.isEmpty(r.popover.link)},this.initialize=function(){this.$popover=i.popover({className:"note-link-popover",callback:function(e){var t=e.find(".popover-content");t.prepend('<span><a target="_blank"></a> </span>')}}).render().appendTo("body");var e=this.$popover.find(".popover-content");t.invoke("buttons.build",e,r.popover.link)},this.destroy=function(){this.$popover.remove()},this.update=function(){var n=t.invoke("editor.createRange");if(n.isCollapsed()&&n.isOnAnchor()){var o=f.ancestor(n.sc,f.isAnchor),i=e(o).attr("href");this.$popover.find("a").attr("href",i).html(i);var r=f.posFromPlaceholder(o);this.$popover.css({display:"block",left:r.left,top:r.top})}else this.hide()},this.hide=function(){this.$popover.hide()}},ie=function(t){var n=this,o=e.summernote.ui,i=t.layoutInfo.editor,r=t.options,a=r.langInfo;this.initialize=function(){var t=r.dialogsInBody?e(document.body):i,n="";if(r.maximumImageFileSize){var s=Math.floor(Math.log(r.maximumImageFileSize)/Math.log(1024)),l=1*(r.maximumImageFileSize/Math.pow(1024,s)).toFixed(2)+" "+" KMGTP"[s]+"B";n="<small>"+a.image.maximumFileSize+" : "+l+"</small>"}var c='<div class="form-group note-group-select-from-files"><label>'+a.image.selectFromFiles+'</label><input class="note-image-input form-control" type="file" name="files" accept="image/*" multiple="multiple" />'+n+'</div><div class="form-group" style="overflow:auto;"><label>'+a.image.url+'</label><input class="note-image-url form-control col-md-12" type="text" /></div>',d='<button href="#" class="btn btn-primary note-image-btn disabled" disabled>'+a.image.insert+"</button>";this.$dialog=o.dialog({title:a.image.insert,body:c,footer:d}).render().appendTo(t)},this.destroy=function(){o.hideDialog(this.$dialog),this.$dialog.remove()},this.bindEnterKey=function(e,t){e.on("keypress",function(e){e.keyCode===A.code.ENTER&&t.trigger("click")})},this.show=function(){t.invoke("editor.saveRange"),this.showImageDialog().then(function(e){o.hideDialog(n.$dialog),t.invoke("editor.restoreRange"),"string"==typeof e?t.invoke("editor.insertImage",e):t.invoke("editor.insertImagesOrCallback",e)}).fail(function(){t.invoke("editor.restoreRange")})},this.showImageDialog=function(){return e.Deferred(function(e){var i=n.$dialog.find(".note-image-input"),r=n.$dialog.find(".note-image-url"),a=n.$dialog.find(".note-image-btn");o.onDialogShown(n.$dialog,function(){t.triggerEvent("dialog.shown"),i.replaceWith(i.clone().on("change",function(){e.resolve(this.files||this.value)}).val("")),a.click(function(t){t.preventDefault(),e.resolve(r.val())}),r.on("keyup paste",function(){var e=r.val();o.toggleBtn(a,e)}).val("").trigger("focus"),n.bindEnterKey(r,a)}),o.onDialogHidden(n.$dialog,function(){i.off("change"),r.off("keyup paste keypress"),a.off("click"),"pending"===e.state()&&e.reject()}),o.showDialog(n.$dialog)})}},re=function(t){var n=e.summernote.ui,i=t.options;this.shouldInitialize=function(){return!o.isEmpty(i.popover.image)},this.initialize=function(){this.$popover=n.popover({className:"note-image-popover"}).render().appendTo("body");var e=this.$popover.find(".popover-content");t.invoke("buttons.build",e,i.popover.image)},this.destroy=function(){this.$popover.remove()},this.update=function(e){if(f.isImg(e)){var t=f.posFromPlaceholder(e);this.$popover.css({display:"block",left:t.left,top:t.top})}else this.hide()},this.hide=function(){this.$popover.hide()}},ae=function(t){var n=this,o=e.summernote.ui,i=t.layoutInfo.editor,r=t.options,a=r.langInfo;this.initialize=function(){var t=r.dialogsInBody?e(document.body):i,n='<div class="form-group row-fluid"><label>'+a.video.url+' <small class="text-muted">'+a.video.providers+'</small></label><input class="note-video-url form-control span12" type="text" /></div>',s='<button href="#" class="btn btn-primary note-video-btn disabled" disabled>'+a.video.insert+"</button>";this.$dialog=o.dialog({title:a.video.insert,body:n,footer:s}).render().appendTo(t)},this.destroy=function(){o.hideDialog(this.$dialog),this.$dialog.remove()},this.bindEnterKey=function(e,t){e.on("keypress",function(e){e.keyCode===A.code.ENTER&&t.trigger("click")})},this.createVideoNode=function(t){var n,o=/^(?:https?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?$/,i=t.match(o),r=/\/\/instagram.com\/p\/(.[a-zA-Z0-9_-]*)/,a=t.match(r),s=/\/\/vine.co\/v\/(.[a-zA-Z0-9]*)/,l=t.match(s),c=/\/\/(player.)?vimeo.com\/([a-z]*\/)*([0-9]{6,11})[?]?.*/,d=t.match(c),u=/.+dailymotion.com\/(video|hub)\/([^_]+)[^#]*(#video=([^_&]+))?/,f=t.match(u),h=/\/\/v\.youku\.com\/v_show\/id_(\w+)=*\.html/,m=t.match(h),p=/^.+.(mp4|m4v)$/,g=t.match(p),v=/^.+.(ogg|ogv)$/,b=t.match(v),k=/^.+.(webm)$/,y=t.match(k);if(i&&11===i[1].length){var C=i[1];n=e("<iframe>").attr("frameborder",0).attr("src","//www.youtube.com/embed/"+C).attr("width","640").attr("height","360")}else if(a&&a[0].length)n=e("<iframe>").attr("frameborder",0).attr("src",a[0]+"/embed/").attr("width","612").attr("height","710").attr("scrolling","no").attr("allowtransparency","true");else if(l&&l[0].length)n=e("<iframe>").attr("frameborder",0).attr("src",l[0]+"/embed/simple").attr("width","600").attr("height","600").attr("class","vine-embed");else if(d&&d[3].length)n=e("<iframe webkitallowfullscreen mozallowfullscreen allowfullscreen>").attr("frameborder",0).attr("src","//player.vimeo.com/video/"+d[3]).attr("width","640").attr("height","360");else if(f&&f[2].length)n=e("<iframe>").attr("frameborder",0).attr("src","//www.dailymotion.com/embed/video/"+f[2]).attr("width","640").attr("height","360");else if(m&&m[1].length)n=e("<iframe webkitallowfullscreen mozallowfullscreen allowfullscreen>").attr("frameborder",0).attr("height","498").attr("width","510").attr("src","//player.youku.com/embed/"+m[1]);else{if(!(g||b||y))return!1;n=e("<video controls>").attr("src",t).attr("width","640").attr("height","360")}return n.addClass("note-video-clip"),n[0]},this.show=function(){var e=t.invoke("editor.getSelectedText");t.invoke("editor.saveRange"),this.showVideoDialog(e).then(function(e){o.hideDialog(n.$dialog),t.invoke("editor.restoreRange");var i=n.createVideoNode(e);i&&t.invoke("editor.insertNode",i)}).fail(function(){t.invoke("editor.restoreRange")})},this.showVideoDialog=function(i){return e.Deferred(function(e){var r=n.$dialog.find(".note-video-url"),a=n.$dialog.find(".note-video-btn");o.onDialogShown(n.$dialog,function(){t.triggerEvent("dialog.shown"),r.val(i).on("input",function(){o.toggleBtn(a,r.val())}).trigger("focus"),a.click(function(t){t.preventDefault(),e.resolve(r.val())}),n.bindEnterKey(r,a)}),o.onDialogHidden(n.$dialog,function(){r.off("input"),a.off("click"),"pending"===e.state()&&e.reject()}),o.showDialog(n.$dialog)})}},se=function(t){var n=this,o=e.summernote.ui,i=t.layoutInfo.editor,r=t.options,a=r.langInfo;this.createShortCutList=function(){var n=r.keyMap[c.isMac?"mac":"pc"],o=e("<div />");return Object.keys(n).forEach(function(i){var r=e('<div class="help-list-item"/>'),a=n[i],s=t.memo("help."+a)?t.memo("help."+a):a,l=e("<label />").css({width:180,"max-width":200,"margin-right":10}).html(i),c=e("<span />").html(s);r.html(l).append(c),o.append(r)}),o.html()},this.initialize=function(){var t=r.dialogsInBody?e(document.body):i,n=['<p class="text-center">','<a href="//summernote.org/" target="_blank">Summernote 0.7.1</a> · ','<a href="//github.com/summernote/summernote" target="_blank">Project</a> · ','<a href="//github.com/summernote/summernote/issues" target="_blank">Issues</a>',"</p>"].join("");this.$dialog=o.dialog({title:a.options.help,body:this.createShortCutList(),footer:n,callback:function(e){e.find(".modal-body").css({"max-height":300,overflow:"scroll"})}}).render().appendTo(t)},this.destroy=function(){o.hideDialog(this.$dialog),this.$dialog.remove()},this.showHelpDialog=function(){return e.Deferred(function(e){o.onDialogHidden(n.$dialog,function(){t.triggerEvent("dialog.shown"),e.resolve()}),o.showDialog(n.$dialog)}).promise()},this.show=function(){t.invoke("editor.saveRange"),this.showHelpDialog().then(function(){t.invoke("editor.restoreRange")})}},le=function(t){var i=this,r=e.summernote.ui,a=t.options,s=20;this.events={"summernote.keyup summernote.mouseup summernote.scroll":function(){i.update()},"summernote.change summernote.dialog.shown":function(){i.hide()},"summernote.focusout":function(e,t){c.isFF||t.relatedTarget&&f.ancestor(t.relatedTarget,n.eq(i.$popover[0]))||i.hide()}},this.shouldInitialize=function(){return a.airMode&&!o.isEmpty(a.popover.air)},this.initialize=function(){this.$popover=r.popover({className:"note-air-popover"}).render().appendTo("body");var e=this.$popover.find(".popover-content");t.invoke("buttons.build",e,a.popover.air)},this.destroy=function(){this.$popover.remove()},this.update=function(){var e=t.invoke("editor.currentStyle");if(e.range&&!e.range.isCollapsed()){var i=o.last(e.range.getClientRects());if(i){var r=n.rect2bnd(i);this.$popover.css({display:"block",left:Math.max(r.left+r.width/2,0)-s,top:r.top+r.height})}}else this.hide()},this.hide=function(){this.$popover.hide()}},ce=function(t){var i=this,r=e.summernote.ui,a=t.options.hint||[],s=e.isArray(a)?a:[a];this.events={"summernote.keyup":function(e,t){t.isDefaultPrevented()||i.handleKeyup(t)},"summernote.keydown":function(e,t){i.handleKeydown(t)},"summernote.dialog.shown":function(){i.hide()}},this.shouldInitialize=function(){return s.length>0},this.initialize=function(){this.lastWordRange=null,this.$popover=r.popover({className:"note-hint-popover"}).render().appendTo("body"),this.$content=this.$popover.find(".popover-content"),this.$content.on("click",".note-hint-item",function(){i.$content.find(".active").removeClass("active"),e(this).addClass("active"),i.replace()})},this.destroy=function(){this.$popover.remove()},this.selectItem=function(e){this.$content.find(".active").removeClass("active"),e.addClass("active"),this.$content[0].scrollTop=e[0].offsetTop-this.$content.innerHeight()/2},this.moveDown=function(){var e=this.$content.find(".note-hint-item.active"),t=e.next();if(t.length)this.selectItem(t);else{var n=e.parent().next();n.length||(n=this.$content.find(".note-hint-group").first()),this.selectItem(n.find(".note-hint-item").first())}},this.moveUp=function(){var e=this.$content.find(".note-hint-item.active"),t=e.prev();if(t.length)this.selectItem(t);else{var n=e.parent().prev();n.length||(n=this.$content.find(".note-hint-group").last()),this.selectItem(n.find(".note-hint-item").last())}},this.replace=function(){var e=this.$content.find(".note-hint-item.active"),n=this.nodeFromItem(e);this.lastWordRange.insertNode(n),D.createFromNode(n).collapse().select(),this.lastWordRange=null,this.hide(),t.invoke("editor.focus")},this.nodeFromItem=function(e){var t=s[e.data("index")],n=e.data("item"),o=t.content?t.content(n):n;return"string"==typeof o&&(o=f.createText(o)),o},this.createItemTemplates=function(t,n){var o=s[t];return n.map(function(n,i){var r=e('<div class="note-hint-item"/>');return r.append(o.template?o.template(n):n+""),r.data({index:t,item:n}),0===t&&0===i&&r.addClass("active"),r})},this.handleKeydown=function(e){this.$popover.is(":visible")&&(e.keyCode===A.code.ENTER?(e.preventDefault(),this.replace()):e.keyCode===A.code.UP?(e.preventDefault(),this.moveUp()):e.keyCode===A.code.DOWN&&(e.preventDefault(),this.moveDown()))},this.searchKeyword=function(e,t,n){var o=s[e];if(o&&o.match.test(t)&&o.search){var i=o.match.exec(t);o.search(i[1],n)}else n()},this.createGroup=function(t,n){var o=e('<div class="note-hint-group note-hint-group-'+t+'"/>');return this.searchKeyword(t,n,function(e){e=e||[],e.length&&(o.html(i.createItemTemplates(t,e)),i.show())}),o},this.handleKeyup=function(e){if(o.contains([A.code.ENTER,A.code.UP,A.code.DOWN],e.keyCode)){if(e.keyCode===A.code.ENTER&&this.$popover.is(":visible"))return}else{var r=t.invoke("editor.createRange").getWordRange(),a=r.toString();if(s.length&&a){this.$content.empty();var l=n.rect2bnd(o.last(r.getClientRects()));l&&(this.$popover.css({left:l.left,top:l.top+l.height}).hide(),this.lastWordRange=r,s.forEach(function(e,t){e.match.test(a)&&i.createGroup(t,a).appendTo(i.$content)}))}else this.hide()}},this.show=function(){this.$popover.show()},this.hide=function(){this.$popover.hide()}};e.summernote=e.extend(e.summernote,{version:"0.7.1",ui:L,plugins:{},options:{modules:{editor:K,clipboard:V,dropzone:W,codeview:q,statusbar:G,fullscreen:Y,handle:Z,hintPopover:ce,autoLink:J,autoSync:Q,placeholder:X,buttons:ee,toolbar:te,linkDialog:ne,linkPopover:oe,imageDialog:ie,imagePopover:re,videoDialog:ae,helpDialog:se,airPopover:le},buttons:{},lang:"en-US",toolbar:[["style",["style"]],["font",["bold","underline","clear"]],["fontname",["fontname"]],["color",["color"]],["para",["ul","ol","paragraph"]],["table",["table"]],["insert",["link","picture","video"]],["view",["fullscreen","codeview","help"]]],popover:{image:[["imagesize",["imageSize100","imageSize50","imageSize25"]],["float",["floatLeft","floatRight","floatNone"]],["remove",["removeMedia"]]],link:[["link",["linkDialogShow","unlink"]]],air:[["color",["color"]],["font",["bold","underline","clear"]],["para",["ul","paragraph"]],["table",["table"]],["insert",["link","picture"]]]},airMode:!1,width:null,height:null,focus:!1,tabSize:4,styleWithSpan:!0,shortcuts:!0,textareaAutoSync:!0,direction:null,styleTags:["p","blockquote","pre","h1","h2","h3","h4","h5","h6"],fontNames:["Arial","Arial Black","Comic Sans MS","Courier New","Helvetica Neue","Helvetica","Impact","Lucida Grande","Tahoma","Times New Roman","Verdana"],fontSizes:["8","9","10","11","12","14","18","24","36"],colors:[["#000000","#424242","#636363","#9C9C94","#CEC6CE","#EFEFEF","#F7F7F7","#FFFFFF"],["#FF0000","#FF9C00","#FFFF00","#00FF00","#00FFFF","#0000FF","#9C00FF","#FF00FF"],["#F7C6CE","#FFE7CE","#FFEFC6","#D6EFD6","#CEDEE7","#CEE7F7","#D6D6E7","#E7D6DE"],["#E79C9C","#FFC69C","#FFE79C","#B5D6A5","#A5C6CE","#9CC6EF","#B5A5D6","#D6A5BD"],["#E76363","#F7AD6B","#FFD663","#94BD7B","#73A5AD","#6BADDE","#8C7BC6","#C67BA5"],["#CE0000","#E79439","#EFC631","#6BA54A","#4A7B8C","#3984C6","#634AA5","#A54A7B"],["#9C0000","#B56308","#BD9400","#397B21","#104A5A","#085294","#311873","#731842"],["#630000","#7B3900","#846300","#295218","#083139","#003163","#21104A","#4A1031"]],lineHeights:["1.0","1.2","1.4","1.5","1.6","1.8","2.0","3.0"],tableClassName:"table table-bordered",insertTableMaxSize:{col:10,row:10},dialogsInBody:!1,maximumImageFileSize:null,callbacks:{onInit:null,onFocus:null,onBlur:null,onEnter:null,onKeyup:null,onKeydown:null,onSubmit:null,onImageUpload:null,onImageUploadError:null},codemirror:{mode:"text/html",htmlMode:!0,lineNumbers:!0},keyMap:{pc:{ENTER:"insertParagraph","CTRL+Z":"undo","CTRL+Y":"redo",TAB:"tab","SHIFT+TAB":"untab","CTRL+B":"bold","CTRL+I":"italic","CTRL+U":"underline","CTRL+SHIFT+S":"strikethrough","CTRL+BACKSLASH":"removeFormat","CTRL+SHIFT+L":"justifyLeft","CTRL+SHIFT+E":"justifyCenter","CTRL+SHIFT+R":"justifyRight","CTRL+SHIFT+J":"justifyFull","CTRL+SHIFT+NUM7":"insertUnorderedList","CTRL+SHIFT+NUM8":"insertOrderedList","CTRL+LEFTBRACKET":"outdent","CTRL+RIGHTBRACKET":"indent","CTRL+NUM0":"formatPara","CTRL+NUM1":"formatH1","CTRL+NUM2":"formatH2","CTRL+NUM3":"formatH3","CTRL+NUM4":"formatH4","CTRL+NUM5":"formatH5","CTRL+NUM6":"formatH6","CTRL+ENTER":"insertHorizontalRule","CTRL+K":"linkDialog.show"},mac:{ENTER:"insertParagraph","CMD+Z":"undo","CMD+SHIFT+Z":"redo",TAB:"tab","SHIFT+TAB":"untab","CMD+B":"bold","CMD+I":"italic","CMD+U":"underline","CMD+SHIFT+S":"strikethrough","CMD+BACKSLASH":"removeFormat","CMD+SHIFT+L":"justifyLeft","CMD+SHIFT+E":"justifyCenter","CMD+SHIFT+R":"justifyRight","CMD+SHIFT+J":"justifyFull","CMD+SHIFT+NUM7":"insertUnorderedList","CMD+SHIFT+NUM8":"insertOrderedList","CMD+LEFTBRACKET":"outdent","CMD+RIGHTBRACKET":"indent","CMD+NUM0":"formatPara","CMD+NUM1":"formatH1","CMD+NUM2":"formatH2","CMD+NUM3":"formatH3","CMD+NUM4":"formatH4","CMD+NUM5":"formatH5","CMD+NUM6":"formatH6","CMD+ENTER":"insertHorizontalRule","CMD+K":"linkDialog.show"}},icons:{align:"fa fa-align-left",alignCenter:"fa fa-align-center",alignJustify:"fa fa-align-justify",alignLeft:"fa fa-align-left",alignRight:"fa fa-align-right",indent:"fa fa-indent",outdent:"fa fa-outdent",arrowsAlt:"fa fa-arrows-alt",bold:"fa fa-bold",caret:"caret",circle:"fa fa-circle",close:"fa fa-close",code:"fa fa-code",eraser:"fa fa-eraser",font:"fa fa-font",frame:"fa fa-frame",italic:"fa fa-italic",link:"fa fa-link",unlink:"fa fa-chain-broken",magic:"fa fa-magic",menuCheck:"fa fa-check",minus:"fa fa-minus",orderedlist:"fa fa-list-ol",pencil:"fa fa-pencil",picture:"fa fa-picture-o",question:"fa fa-question",redo:"fa fa-repeat",square:"fa fa-square",strikethrough:"fa fa-strikethrough",subscript:"fa fa-subscript",superscript:"fa fa-superscript",table:"fa fa-table",textHeight:"fa fa-text-height",trash:"fa fa-trash",underline:"fa fa-underline",undo:"fa fa-undo",unorderedlist:"fa fa-list-ul",video:"fa fa-youtube-play"}}})});