diff --git a/client/galaxy/scripts/apps/analysis.js b/client/galaxy/scripts/apps/analysis.js index a5c97c30b28f..bd0d64ff06c4 100644 --- a/client/galaxy/scripts/apps/analysis.js +++ b/client/galaxy/scripts/apps/analysis.js @@ -13,7 +13,10 @@ var jQuery = require( 'jquery' ), PageList = require( 'mvc/page/page-list' ), Workflows = require( 'mvc/workflow/workflow' ), HistoryList = require( 'mvc/history/history-list' ), - WorkflowsConfigureMenu = require( 'mvc/workflow/workflow-configure-menu' ); + WorkflowsConfigureMenu = require( 'mvc/workflow/workflow-configure-menu' ), + ToolFormComposite = require( 'mvc/tool/tool-form-composite' ), + Utils = require( 'utils/utils' ), + Ui = require( 'mvc/ui/ui-misc' ); /** define the 'Analyze Data'/analysis/main/home page for Galaxy * * has a masthead @@ -83,10 +86,12 @@ window.app = function app( options, bootstrapped ){ '(/)user(/)' : 'show_user', '(/)user(/)(:form_id)' : 'show_user_form', '(/)workflow(/)' : 'show_workflows', + '(/)workflow/run(/)' : 'show_run', '(/)pages(/)(:action_id)' : 'show_pages', '(/)histories(/)list(/)' : 'show_histories', '(/)datasets(/)list(/)' : 'show_datasets', '(/)workflow/configure_menu(/)' : 'show_configure_menu', + '(/)workflow/import_workflow' : 'show_import_workflow', '(/)custom_builds' : 'show_custom_builds' }, @@ -141,6 +146,14 @@ window.app = function app( options, bootstrapped ){ this.page.display( new Workflows.View() ); }, + show_run : function() { + this._loadWorkflow(); + }, + + show_import_workflow : function() { + this.page.display( new Workflows.ImportWorkflowView() ); + }, + show_configure_menu : function(){ this.page.display( new WorkflowsConfigureMenu.View() ); }, @@ -169,7 +182,7 @@ window.app = function app( options, bootstrapped ){ } else { // show the workflow run form if( params.workflow_id ){ - this._loadCenterIframe( 'workflow/run?id=' + params.workflow_id ); + this._loadWorkflow(); // load the center iframe with controller.action: galaxy.org/?m_c=history&m_a=list -> history/list } else if( params.m_c ){ this._loadCenterIframe( params.m_c + '/' + params.m_a ); @@ -194,6 +207,22 @@ window.app = function app( options, bootstrapped ){ this.page.$( '#galaxy_main' ).prop( 'src', url ); }, + /** load workflow by its url in run mode */ + _loadWorkflow: function() { + var self = this; + Utils.get({ + url: Galaxy.root + 'api/workflows/' + Utils.getQueryString( 'id' ) + '/download', + data: { 'style': 'run' }, + success: function( response ) { + self.page.display( new ToolFormComposite.View( response ) ); + }, + error: function( response ) { + var error_msg = "Error occurred while loading the resource.", + options = { 'message': error_msg, 'status': 'error', 'persistent': true, 'cls': 'errormessage' }; + self.page.display( new Ui.Message( options ) ); + } + }); + } }); // render and start the router @@ -211,4 +240,4 @@ window.app = function app( options, bootstrapped ){ pushState : true, }); }); -}; \ No newline at end of file +}; diff --git a/client/galaxy/scripts/apps/panels/tool-panel.js b/client/galaxy/scripts/apps/panels/tool-panel.js index 4d4b16af06cc..b396c9d1424e 100644 --- a/client/galaxy/scripts/apps/panels/tool-panel.js +++ b/client/galaxy/scripts/apps/panels/tool-panel.js @@ -1,6 +1,7 @@ var Tools = require( 'mvc/tool/tools' ), Upload = require( 'mvc/upload/upload-view' ), - _l = require( 'utils/localization' ); + _l = require( 'utils/localization' ), + ToolForm = require( 'mvc/tool/tool-form-composite' ); var ToolPanel = Backbone.View.extend({ initialize: function( page, options ) { @@ -58,7 +59,7 @@ var ToolPanel = Backbone.View.extend({ href : 'workflow' })); _.each( this.stored_workflow_menu_entries, function( menu_entry ){ - self.$( '#internal-workflows' ).append( self._templateTool({ + self.$( '#internal-workflows' ).append( self._templateWorkflowLink({ title : menu_entry.stored_workflow.name, href : 'workflow/run?id=' + menu_entry.encoded_stored_workflow_id })); @@ -84,6 +85,15 @@ var ToolPanel = Backbone.View.extend({ ].join(''); }, + /** build links to workflows in toolpanel */ + _templateWorkflowLink: function( wf ) { + return [ + '
', + '', wf.title, '', + '
' + ].join(''); + }, + /** override to include inital menu dom and workflow section */ _template : function() { return [ diff --git a/client/galaxy/scripts/layout/page.js b/client/galaxy/scripts/layout/page.js index e7d62f25d119..1b8a1cc613d4 100644 --- a/client/galaxy/scripts/layout/page.js +++ b/client/galaxy/scripts/layout/page.js @@ -19,18 +19,19 @@ define( [ 'layout/masthead', 'layout/panel', 'mvc/ui/ui-modal' ], function( Mast Galaxy.display = this.display = function( view ) { self.center.display( view ) }; Galaxy.router = this.router = options.Router && new options.Router( self, options ); this.masthead = new Masthead.View( this.config ); + this.center = new Panel.CenterPanel(); // build page template this.$el.attr( 'scroll', 'no' ); this.$el.html( this._template() ); this.$( '#masthead' ).replaceWith( this.masthead.$el ); + this.$( '#center' ).append( this.center.$el ); this.$el.append( this.masthead.frame.$el ); this.$el.append( this.modal.$el ); this.$messagebox = this.$( '#messagebox' ); this.$inactivebox = this.$( '#inactivebox' ); // build panels - this.center = new Panel.CenterPanel(); this.panels = {}; _.each( this._panelids, function( panel_id ) { var panel_class_name = panel_id.charAt( 0 ).toUpperCase() + panel_id.slice( 1 ); @@ -98,8 +99,6 @@ define( [ 'layout/masthead', 'layout/panel', 'mvc/ui/ui-modal' ], function( Mast /** Render panels */ renderPanels : function() { var self = this; - this.center.setElement( '#center' ); - this.center.render(); _.each( this._panelids, function( panel_id ) { var panel = self.panels[ panel_id ]; if ( panel ) { diff --git a/client/galaxy/scripts/layout/panel.js b/client/galaxy/scripts/layout/panel.js index 6253938efb9a..8a4d87171ebf 100644 --- a/client/galaxy/scripts/layout/panel.js +++ b/client/galaxy/scripts/layout/panel.js @@ -189,29 +189,20 @@ define( [ 'jquery', 'libs/underscore', 'libs/backbone' ], function( $, _, Backbo var CenterPanel = Backbone.View.extend({ initialize : function( options ){ - /** previous view contained in the center panel - cached for removal later */ - this.prev = null; + this.setElement( $( this.template() ) ); + this.$frame = this.$( '.center-frame' ); + this.$panel = this.$( '.center-panel' ); + this.$frame.on( 'load', _.bind( this._iframeChangeHandler, this ) ); }, - render : function(){ - this.$el.html( this.template() ); - // ?: doesn't work/listen in events map - this.$( '#galaxy_main' ).on( 'load', _.bind( this._iframeChangeHandler, this ) ); - }, - - /** */ - _iframeChangeHandler : function( ev ){ + /** Display iframe if its target url changes, hide center panel */ + _iframeChangeHandler : function( ev ) { var iframe = ev.currentTarget; var location = iframe.contentWindow && iframe.contentWindow.location; - if( location && location.host ){ - // show the iframe and hide MVCview div, remove any views in the MVCview div + if( location && location.host ) { $( iframe ).show(); - if( this.prev ){ - this.prev.remove(); - } - this.$( '#center-panel' ).hide(); - // TODO: move to Galaxy - Galaxy.trigger( 'galaxy_main:load', { + this.$panel.empty().hide(); + Galaxy.trigger( 'center-frame:load', { fullpath: location.pathname + location.search + location.hash, pathname: location.pathname, search : location.search, @@ -220,43 +211,26 @@ define( [ 'jquery', 'libs/underscore', 'libs/backbone' ], function( $, _, Backbo } }, - /** */ + /** Display a view in the center panel, hide iframe */ display: function( view ) { - // we need to display an MVC view: hide the iframe and show the other center panel - // first checking for any onbeforeunload handlers on the iframe - var contentWindow = this.$( '#galaxy_main' )[ 0 ].contentWindow || {}; + var contentWindow = this.$frame[ 0 ].contentWindow || {}; var message = contentWindow.onbeforeunload && contentWindow.onbeforeunload(); if ( !message || confirm( message ) ) { contentWindow.onbeforeunload = undefined; - // remove any previous views - if( this.prev ){ - this.prev.remove(); - } - this.prev = view; - this.$( '#galaxy_main' ).attr( 'src', 'about:blank' ).hide(); - this.$( '#center-panel' ).scrollTop( 0 ).append( view.$el ).show(); + this.$frame.attr( 'src', 'about:blank' ).hide(); + this.$panel.empty().scrollTop( 0 ).append( view.$el ).show(); Galaxy.trigger( 'center-panel:load', view ); - - } else { - if( view ){ - view.remove(); - } } }, - template: function(){ - return [ - //TODO: remove inline styling - '
', - '
")}),a.show({backdrop:!0})}var o=t,r=function(t){this.$overlay=t.overlay,this.$dialog=t.dialog,this.$header=this.$dialog.find(".modal-header"),this.$body=this.$dialog.find(".modal-body"),this.$footer=this.$dialog.find(".modal-footer"),this.$backdrop=t.backdrop,this.$header.find(".close").on("click",o.proxy(this.hide,this))};o.extend(r.prototype,{setContent:function(t){this.$header.hide(),t.title&&(this.$header.find(".title").html(t.title),this.$header.show()),t.closeButton?(this.$header.find(".close").show(),this.$header.show()):this.$header.find(".close").hide(),this.$footer.hide();var e=this.$footer.find(".buttons").html("");t.buttons&&(o.each(t.buttons,function(t,i){e.append(o(" ").text(t).click(i)).append(" ")}),this.$footer.show());var i=this.$footer.find(".extra_buttons").html("");t.extra_buttons&&(o.each(t.extra_buttons,function(t,e){i.append(o("").text(t).click(e)).append(" ")}),this.$footer.show());var n=t.body;"progress"==n&&(n=o("
")),this.$body.html(n)},show:function(t,e){this.$dialog.is(":visible")||(t.backdrop?this.$backdrop.addClass("in"):this.$backdrop.removeClass("in"),this.$overlay.show(),this.$dialog.show(),this.$overlay.addClass("in"),this.$body.css("min-width",this.$body.width()),this.$body.css("max-height",o(window).height()-this.$footer.outerHeight()-this.$header.outerHeight()-parseInt(this.$dialog.css("padding-top"),10)-parseInt(this.$dialog.css("padding-bottom"),10))),e&&e()},hide:function(){var t=this;t.$dialog.fadeOut(function(){t.$overlay.hide(),t.$backdrop.removeClass("in"),t.$body.children().remove(),t.$body.css("min-width",void 0)})}});var a;return o(function(){a=new r({overlay:o("#top-modal"),dialog:o("#top-modal-dialog"),backdrop:o("#top-modal-backdrop")})}),{Modal:r,hide_modal:e,show_modal:i,show_message:n,show_in_overlay:s}}.apply(e,n),!(void 0!==s&&(t.exports=s))},function(t,e,i){(function(t){!function(t,e){var i,n;return n=e.document,i=function(){function i(i){var n;try{n=e.localStorage}catch(t){n=!1}this._options=t.extend({name:"tour",steps:[],container:"body",autoscroll:!0,keyboard:!0,storage:n,debug:!1,backdrop:!1,backdropContainer:"body",backdropPadding:0,redirect:!0,orphan:!1,duration:!1,delay:!1,basePath:"",template:'',afterSetState:function(t,e){},afterGetState:function(t,e){},afterRemoveState:function(t){},onStart:function(t){},onEnd:function(t){},onShow:function(t){},onShown:function(t){},onHide:function(t){},onHidden:function(t){},onNext:function(t){},onPrev:function(t){},onPause:function(t,e){},onResume:function(t,e){},onRedirectError:function(t){}},i),this._force=!1,this._inited=!1,this._current=null,this.backdrop={overlay:null,$element:null,$background:null,backgroundShown:!1,overlayElementShown:!1}}return i.prototype.addSteps=function(t){var e,i,n;for(i=0,n=t.length;i

",next:e===this._options.steps.length-1?-1:e+1,prev:e-1,animation:!0,container:this._options.container,autoscroll:this._options.autoscroll,backdrop:this._options.backdrop,backdropContainer:this._options.backdropContainer,backdropPadding:this._options.backdropPadding,redirect:this._options.redirect,reflexElement:this._options.steps[e].element,orphan:this._options.orphan,duration:this._options.duration,delay:this._options.delay,template:this._options.template,onShow:this._options.onShow,onShown:this._options.onShown,onHide:this._options.onHide,onHidden:this._options.onHidden,onNext:this._options.onNext,onPrev:this._options.onPrev,onPause:this._options.onPause,onResume:this._options.onResume,onRedirectError:this._options.onRedirectError},this._options.steps[e])},i.prototype.init=function(t){return this._force=t,this.ended()?(this._debug("Tour ended, init prevented."),this):(this.setCurrentStep(),this._initMouseNavigation(),this._initKeyboardNavigation(),this._onResize(function(t){return function(){return t.showStep(t._current)}}(this)),null!==this._current&&this.showStep(this._current),this._inited=!0,this)},i.prototype.start=function(t){var e;return null==t&&(t=!1),this._inited||this.init(t),null===this._current&&(e=this._makePromise(null!=this._options.onStart?this._options.onStart(this):void 0),this._callOnPromiseDone(e,this.showStep,0)),this},i.prototype.next=function(){var t;return t=this.hideStep(this._current),this._callOnPromiseDone(t,this._showNextStep)},i.prototype.prev=function(){var t;return t=this.hideStep(this._current),this._callOnPromiseDone(t,this._showPrevStep)},i.prototype.goTo=function(t){var e;return e=this.hideStep(this._current),this._callOnPromiseDone(e,this.showStep,t)},i.prototype.end=function(){var i,s;return i=function(i){return function(s){if(t(n).off("click.tour-"+i._options.name),t(n).off("keyup.tour-"+i._options.name),t(e).off("resize.tour-"+i._options.name),i._setState("end","yes"),i._inited=!1,i._force=!1,i._clearTimer(),null!=i._options.onEnd)return i._options.onEnd(i)}}(this),s=this.hideStep(this._current),this._callOnPromiseDone(s,i)},i.prototype.ended=function(){return!this._force&&!!this._getState("end")},i.prototype.restart=function(){return this._removeState("current_step"),this._removeState("end"),this._removeState("redirect_to"),this.start()},i.prototype.pause=function(){var t;return t=this.getStep(this._current),t&&t.duration?(this._paused=!0,this._duration-=(new Date).getTime()-this._start,e.clearTimeout(this._timer),this._debug("Paused/Stopped step "+(this._current+1)+" timer ("+this._duration+" remaining)."),null!=t.onPause?t.onPause(this,this._duration):void 0):this},i.prototype.resume=function(){var t;return t=this.getStep(this._current),t&&t.duration?(this._paused=!1,this._start=(new Date).getTime(),this._duration=this._duration||t.duration,this._timer=e.setTimeout(function(t){return function(){return t._isLast()?t.next():t.end()}}(this),this._duration),this._debug("Started step "+(this._current+1)+" timer with duration "+this._duration),null!=t.onResume&&this._duration!==t.duration?t.onResume(this,this._duration):void 0):this},i.prototype.hideStep=function(e){var i,n,s;if(s=this.getStep(e))return this._clearTimer(),n=this._makePromise(null!=s.onHide?s.onHide(this,e):void 0),i=function(i){return function(n){var o;if(o=t(s.element), -o.data("bs.popover")||o.data("popover")||(o=t("body")),o.popover("destroy").removeClass("tour-"+i._options.name+"-element tour-"+i._options.name+"-"+e+"-element"),o.removeData("bs.popover"),s.reflex&&t(s.reflexElement).removeClass("tour-step-element-reflex").off(""+i._reflexEvent(s.reflex)+".tour-"+i._options.name),s.backdrop&&i._hideBackdrop(),null!=s.onHidden)return s.onHidden(i)}}(this),this._callOnPromiseDone(n,i),n},i.prototype.showStep=function(t){var i,s,o,r;return this.ended()?(this._debug("Tour ended, showStep prevented."),this):(r=this.getStep(t))?(o=t").parent().html()},i.prototype._reflexEvent=function(t){return"[object Boolean]"==={}.toString.call(t)?"click":t},i.prototype._reposition=function(e,i){var s,o,r,a,l,u,c;if(a=e[0].offsetWidth,o=e[0].offsetHeight,c=e.offset(),l=c.left,u=c.top,s=t(n).outerHeight()-c.top-e.outerHeight(),s<0&&(c.top=c.top+s),r=t("html").outerWidth()-c.left-e.outerWidth(),r<0&&(c.left=c.left+r),c.top<0&&(c.top=0),c.left<0&&(c.left=0),e.offset(c),"bottom"===i.placement||"top"===i.placement){if(l!==c.left)return this._replaceArrow(e,2*(c.left-l),a,"left")}else if(u!==c.top)return this._replaceArrow(e,2*(c.top-u),o,"top")},i.prototype._center=function(i){return i.css("top",t(e).outerHeight()/2-i.outerHeight()/2)},i.prototype._replaceArrow=function(t,e,i,n){return t.find(".arrow").css(n,e?50*(1-e/i)+"%":"")},i.prototype._scrollIntoView=function(i,n){var s,o,r,a,l,u;return s=t(i),s.length?(o=t(e),a=s.offset().top,u=o.height(),l=Math.max(0,a-u/2),this._debug("Scroll into view. ScrollTop: "+l+". Element offset: "+a+". Window height: "+u+"."),r=0,t("body, html").stop(!0,!0).animate({scrollTop:Math.ceil(l)},function(t){return function(){if(2===++r)return n(),t._debug("Scroll into view.\nAnimation end element offset: "+s.offset().top+".\nWindow height: "+o.height()+".")}}(this))):n()},i.prototype._onResize=function(i,n){return t(e).on("resize.tour-"+this._options.name,function(){return clearTimeout(n),n=setTimeout(i,100)})},i.prototype._initMouseNavigation=function(){var e;return e=this,t(n).off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='prev']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='next']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='end']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='pause-resume']").on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='next']",function(t){return function(e){return e.preventDefault(),t.next()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='prev']",function(t){return function(e){return e.preventDefault(),t.prev()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='end']",function(t){return function(e){return e.preventDefault(),t.end()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='pause-resume']",function(i){var n;return i.preventDefault(),n=t(this),n.text(e._paused?n.data("pause-text"):n.data("resume-text")),e._paused?e.resume():e.pause()})},i.prototype._initKeyboardNavigation=function(){if(this._options.keyboard)return t(n).on("keyup.tour-"+this._options.name,function(t){return function(e){if(e.which)switch(e.which){case 39:return e.preventDefault(),t._isLast()?t.next():t.end();case 37:if(e.preventDefault(),t._current>0)return t.prev();break;case 27:return e.preventDefault(),t.end()}}}(this))},i.prototype._makePromise=function(e){return e&&t.isFunction(e.then)?e:null},i.prototype._callOnPromiseDone=function(t,e,i){return t?t.then(function(t){return function(n){return e.call(t,i)}}(this)):e.call(this,i)},i.prototype._showBackdrop=function(e){if(!this.backdrop.backgroundShown)return this.backdrop=t("
",{class:"tour-backdrop"}),this.backdrop.backgroundShown=!0,t(e.backdropContainer).append(this.backdrop)},i.prototype._hideBackdrop=function(){return this._hideOverlayElement(),this._hideBackground()},i.prototype._hideBackground=function(){if(this.backdrop)return this.backdrop.remove(),this.backdrop.overlay=null,this.backdrop.backgroundShown=!1},i.prototype._showOverlayElement=function(e,i){var n,s;if(n=t(e.element),n&&0!==n.length&&(!this.backdrop.overlayElementShown||i))return this.backdrop.overlayElementShown||(this.backdrop.$element=n.addClass("tour-step-backdrop"),this.backdrop.$background=t("
",{class:"tour-step-background"}),this.backdrop.$background.appendTo(e.backdropContainer),this.backdrop.overlayElementShown=!0),s={width:n.innerWidth(),height:n.innerHeight(),offset:n.offset()},e.backdropPadding&&(s=this._applyBackdropPadding(e.backdropPadding,s)),this.backdrop.$background.width(s.width).height(s.height).offset(s.offset)},i.prototype._hideOverlayElement=function(){if(this.backdrop.overlayElementShown)return this.backdrop.$element.removeClass("tour-step-backdrop"),this.backdrop.$background.remove(),this.backdrop.$element=null,this.backdrop.$background=null,this.backdrop.overlayElementShown=!1},i.prototype._applyBackdropPadding=function(t,e){return"object"==typeof t?(null==t.top&&(t.top=0),null==t.right&&(t.right=0),null==t.bottom&&(t.bottom=0),null==t.left&&(t.left=0),e.offset.top=e.offset.top-t.top,e.offset.left=e.offset.left-t.left,e.width=e.width+t.left+t.right,e.height=e.height+t.top+t.bottom):(e.offset.top=e.offset.top-t,e.offset.left=e.offset.left-t,e.width=e.width+2*t,e.height=e.height+2*t),e},i.prototype._clearTimer=function(){return e.clearTimeout(this._timer),this._timer=null,this._duration=null},i.prototype._getProtocol=function(t){return t=t.split("://"),t.length>1?t[0]:"http"},i.prototype._getHost=function(t){return t=t.split("//"),t=t.length>1?t[1]:t[0],t.split("/")[0]},i.prototype._getPath=function(t){return t.replace(/\/?$/,"").split("?")[0].split("#")[0]},i.prototype._getQuery=function(t){return this._getParams(t,"?")},i.prototype._getHash=function(t){return this._getParams(t,"#")},i.prototype._getParams=function(t,e){var i,n,s,o,r;if(n=t.split(e),1===n.length)return{};for(n=n[1].split("&"),s={},o=0,r=n.length;othis.length&&(s=this.length),s<0&&(s+=this.length+1);var o,r,a=[],l=[],u=[],c=[],h={},d=e.add,p=e.merge,f=e.remove,g=!1,m=this.comparator&&null==s&&e.sort!==!1,v=i.isString(this.comparator)?this.comparator:null;for(r=0;r7),this._useHashChange=this._wantsHashChange&&this._hasHashChange,this._wantsPushState=!!this.options.pushState,this._hasPushState=!(!this.history||!this.history.pushState),this._usePushState=this._wantsPushState&&this._hasPushState,this.fragment=this.getFragment(),this.root=("/"+this.root+"/").replace(L,"/"),this._wantsHashChange&&this._wantsPushState){if(!this._hasPushState&&!this.atRoot()){var e=this.root.slice(0,-1)||"/";return this.location.replace(e+"#"+this.getPath()),!0}this._hasPushState&&this.atRoot()&&this.navigate(this.getHash(),{replace:!0})}if(!this._hasHashChange&&this._wantsHashChange&&!this._usePushState){this.iframe=document.createElement("iframe"),this.iframe.src="javascript:0",this.iframe.style.display="none",this.iframe.tabIndex=-1;var n=document.body,s=n.insertBefore(this.iframe,n.firstChild).contentWindow;s.document.open(),s.document.close(),s.location.hash="#"+this.fragment}var o=window.addEventListener||function(t,e){return attachEvent("on"+t,e)};if(this._usePushState?o("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe?o("hashchange",this.checkUrl,!1):this._wantsHashChange&&(this._checkUrlInterval=setInterval(this.checkUrl,this.interval)),!this.options.silent)return this.loadUrl()},stop:function(){var t=window.removeEventListener||function(t,e){return detachEvent("on"+t,e)};this._usePushState?t("popstate",this.checkUrl,!1):this._useHashChange&&!this.iframe&&t("hashchange",this.checkUrl,!1),this.iframe&&(document.body.removeChild(this.iframe),this.iframe=null),this._checkUrlInterval&&clearInterval(this._checkUrlInterval),j.started=!1},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();return e===this.fragment&&this.iframe&&(e=this.getHash(this.iframe.contentWindow)),e!==this.fragment&&(this.iframe&&this.navigate(e),void this.loadUrl())},loadUrl:function(t){return!!this.matchRoot()&&(t=this.fragment=this.getFragment(t),i.some(this.handlers,function(e){if(e.route.test(t))return e.callback(t),!0}))},navigate:function(t,e){if(!j.started)return!1;e&&e!==!0||(e={trigger:!!e}),t=this.getFragment(t||"");var i=this.root;""!==t&&"?"!==t.charAt(0)||(i=i.slice(0,-1)||"/");var n=i+t;if(t=this.decodeFragment(t.replace(H,"")),this.fragment!==t){if(this.fragment=t,this._usePushState)this.history[e.replace?"replaceState":"pushState"]({},document.title,n);else{if(!this._wantsHashChange)return this.location.assign(n);if(this._updateHash(this.location,t,e.replace),this.iframe&&t!==this.getHash(this.iframe.contentWindow)){var s=this.iframe.contentWindow;e.replace||(s.document.open(),s.document.close()),this._updateHash(s.location,t,e.replace)}}return e.trigger?this.loadUrl(t):void 0}},_updateHash:function(t,e,i){if(i){var n=t.href.replace(/(javascript:|#).*$/,"");t.replace(n+"#"+e)}else t.hash="#"+e}}),e.history=new j;var $=function(t,e){var n,s=this;return n=t&&i.has(t,"constructor")?t.constructor:function(){return s.apply(this,arguments)},i.extend(n,s,e),n.prototype=i.create(s.prototype,t),n.prototype.constructor=n,n.__super__=s.prototype,n};b.extend=_.extend=N.extend=T.extend=j.extend=$;var F=function(){throw new Error('A "url" property or function must be specified')},q=function(t,e){var i=e.error;e.error=function(n){i&&i.call(e.context,t,n,e),t.trigger("error",t,n,e)}};return e})}).call(e,function(){return this}())},function(t,e,i){var n,s;(function(i,o,r){n=[],s=function(){function t(t){return'
")}),a.show({backdrop:!0})}var o=t,r=function(t){this.$overlay=t.overlay,this.$dialog=t.dialog,this.$header=this.$dialog.find(".modal-header"),this.$body=this.$dialog.find(".modal-body"),this.$footer=this.$dialog.find(".modal-footer"),this.$backdrop=t.backdrop,this.$header.find(".close").on("click",o.proxy(this.hide,this))};o.extend(r.prototype,{setContent:function(t){this.$header.hide(),t.title&&(this.$header.find(".title").html(t.title),this.$header.show()),t.closeButton?(this.$header.find(".close").show(),this.$header.show()):this.$header.find(".close").hide(),this.$footer.hide();var e=this.$footer.find(".buttons").html("");t.buttons&&(o.each(t.buttons,function(t,i){e.append(o(" ").text(t).click(i)).append(" ")}),this.$footer.show());var i=this.$footer.find(".extra_buttons").html("");t.extra_buttons&&(o.each(t.extra_buttons,function(t,e){i.append(o("").text(t).click(e)).append(" ")}),this.$footer.show());var n=t.body;"progress"==n&&(n=o("
")),this.$body.html(n)},show:function(t,e){this.$dialog.is(":visible")||(t.backdrop?this.$backdrop.addClass("in"):this.$backdrop.removeClass("in"),this.$overlay.show(),this.$dialog.show(),this.$overlay.addClass("in"),this.$body.css("min-width",this.$body.width()),this.$body.css("max-height",o(window).height()-this.$footer.outerHeight()-this.$header.outerHeight()-parseInt(this.$dialog.css("padding-top"),10)-parseInt(this.$dialog.css("padding-bottom"),10))),e&&e()},hide:function(){var t=this;t.$dialog.fadeOut(function(){t.$overlay.hide(),t.$backdrop.removeClass("in"),t.$body.children().remove(),t.$body.css("min-width",void 0)})}});var a;return o(function(){a=new r({overlay:o("#top-modal"),dialog:o("#top-modal-dialog"),backdrop:o("#top-modal-backdrop")})}),{Modal:r,hide_modal:e,show_modal:i,show_message:n,show_in_overlay:s}}.apply(e,n),!(void 0!==s&&(t.exports=s))},function(t,e,i){(function(t){!function(t,e){var i,n;return n=e.document,i=function(){function i(i){var n;try{n=e.localStorage}catch(t){n=!1}this._options=t.extend({name:"tour",steps:[],container:"body",autoscroll:!0,keyboard:!0,storage:n,debug:!1,backdrop:!1,backdropContainer:"body",backdropPadding:0,redirect:!0,orphan:!1,duration:!1,delay:!1,basePath:"",template:'',afterSetState:function(t,e){},afterGetState:function(t,e){},afterRemoveState:function(t){},onStart:function(t){},onEnd:function(t){},onShow:function(t){},onShown:function(t){},onHide:function(t){},onHidden:function(t){},onNext:function(t){},onPrev:function(t){},onPause:function(t,e){},onResume:function(t,e){},onRedirectError:function(t){}},i),this._force=!1,this._inited=!1,this._current=null,this.backdrop={overlay:null,$element:null,$background:null,backgroundShown:!1,overlayElementShown:!1}}return i.prototype.addSteps=function(t){var e,i,n;for(i=0,n=t.length;i

",next:e===this._options.steps.length-1?-1:e+1,prev:e-1,animation:!0,container:this._options.container,autoscroll:this._options.autoscroll,backdrop:this._options.backdrop,backdropContainer:this._options.backdropContainer,backdropPadding:this._options.backdropPadding,redirect:this._options.redirect,reflexElement:this._options.steps[e].element,orphan:this._options.orphan,duration:this._options.duration,delay:this._options.delay,template:this._options.template,onShow:this._options.onShow,onShown:this._options.onShown,onHide:this._options.onHide,onHidden:this._options.onHidden,onNext:this._options.onNext,onPrev:this._options.onPrev,onPause:this._options.onPause,onResume:this._options.onResume,onRedirectError:this._options.onRedirectError},this._options.steps[e])},i.prototype.init=function(t){return this._force=t,this.ended()?(this._debug("Tour ended, init prevented."),this):(this.setCurrentStep(),this._initMouseNavigation(),this._initKeyboardNavigation(),this._onResize(function(t){return function(){return t.showStep(t._current)}}(this)),null!==this._current&&this.showStep(this._current),this._inited=!0,this)},i.prototype.start=function(t){var e;return null==t&&(t=!1),this._inited||this.init(t),null===this._current&&(e=this._makePromise(null!=this._options.onStart?this._options.onStart(this):void 0),this._callOnPromiseDone(e,this.showStep,0)),this},i.prototype.next=function(){var t;return t=this.hideStep(this._current),this._callOnPromiseDone(t,this._showNextStep)},i.prototype.prev=function(){var t;return t=this.hideStep(this._current),this._callOnPromiseDone(t,this._showPrevStep)},i.prototype.goTo=function(t){var e;return e=this.hideStep(this._current),this._callOnPromiseDone(e,this.showStep,t)},i.prototype.end=function(){var i,s;return i=function(i){return function(s){if(t(n).off("click.tour-"+i._options.name),t(n).off("keyup.tour-"+i._options.name),t(e).off("resize.tour-"+i._options.name),i._setState("end","yes"),i._inited=!1,i._force=!1,i._clearTimer(),null!=i._options.onEnd)return i._options.onEnd(i)}}(this),s=this.hideStep(this._current),this._callOnPromiseDone(s,i)},i.prototype.ended=function(){return!this._force&&!!this._getState("end")},i.prototype.restart=function(){return this._removeState("current_step"),this._removeState("end"),this._removeState("redirect_to"),this.start()},i.prototype.pause=function(){var t;return t=this.getStep(this._current),t&&t.duration?(this._paused=!0,this._duration-=(new Date).getTime()-this._start,e.clearTimeout(this._timer),this._debug("Paused/Stopped step "+(this._current+1)+" timer ("+this._duration+" remaining)."),null!=t.onPause?t.onPause(this,this._duration):void 0):this},i.prototype.resume=function(){var t;return t=this.getStep(this._current),t&&t.duration?(this._paused=!1,this._start=(new Date).getTime(),this._duration=this._duration||t.duration,this._timer=e.setTimeout(function(t){return function(){return t._isLast()?t.next():t.end()}}(this),this._duration),this._debug("Started step "+(this._current+1)+" timer with duration "+this._duration),null!=t.onResume&&this._duration!==t.duration?t.onResume(this,this._duration):void 0):this},i.prototype.hideStep=function(e){var i,n,s;if(s=this.getStep(e))return this._clearTimer(),n=this._makePromise(null!=s.onHide?s.onHide(this,e):void 0),i=function(i){return function(n){var o;if(o=t(s.element),o.data("bs.popover")||o.data("popover")||(o=t("body")),o.popover("destroy").removeClass("tour-"+i._options.name+"-element tour-"+i._options.name+"-"+e+"-element"), +o.removeData("bs.popover"),s.reflex&&t(s.reflexElement).removeClass("tour-step-element-reflex").off(""+i._reflexEvent(s.reflex)+".tour-"+i._options.name),s.backdrop&&i._hideBackdrop(),null!=s.onHidden)return s.onHidden(i)}}(this),this._callOnPromiseDone(n,i),n},i.prototype.showStep=function(t){var i,s,o,r;return this.ended()?(this._debug("Tour ended, showStep prevented."),this):(r=this.getStep(t))?(o=t").parent().html()},i.prototype._reflexEvent=function(t){return"[object Boolean]"==={}.toString.call(t)?"click":t},i.prototype._reposition=function(e,i){var s,o,r,a,l,u,c;if(a=e[0].offsetWidth,o=e[0].offsetHeight,c=e.offset(),l=c.left,u=c.top,s=t(n).outerHeight()-c.top-e.outerHeight(),s<0&&(c.top=c.top+s),r=t("html").outerWidth()-c.left-e.outerWidth(),r<0&&(c.left=c.left+r),c.top<0&&(c.top=0),c.left<0&&(c.left=0),e.offset(c),"bottom"===i.placement||"top"===i.placement){if(l!==c.left)return this._replaceArrow(e,2*(c.left-l),a,"left")}else if(u!==c.top)return this._replaceArrow(e,2*(c.top-u),o,"top")},i.prototype._center=function(i){return i.css("top",t(e).outerHeight()/2-i.outerHeight()/2)},i.prototype._replaceArrow=function(t,e,i,n){return t.find(".arrow").css(n,e?50*(1-e/i)+"%":"")},i.prototype._scrollIntoView=function(i,n){var s,o,r,a,l,u;return s=t(i),s.length?(o=t(e),a=s.offset().top,u=o.height(),l=Math.max(0,a-u/2),this._debug("Scroll into view. ScrollTop: "+l+". Element offset: "+a+". Window height: "+u+"."),r=0,t("body, html").stop(!0,!0).animate({scrollTop:Math.ceil(l)},function(t){return function(){if(2===++r)return n(),t._debug("Scroll into view.\nAnimation end element offset: "+s.offset().top+".\nWindow height: "+o.height()+".")}}(this))):n()},i.prototype._onResize=function(i,n){return t(e).on("resize.tour-"+this._options.name,function(){return clearTimeout(n),n=setTimeout(i,100)})},i.prototype._initMouseNavigation=function(){var e;return e=this,t(n).off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='prev']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='next']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='end']").off("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='pause-resume']").on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='next']",function(t){return function(e){return e.preventDefault(),t.next()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='prev']",function(t){return function(e){return e.preventDefault(),t.prev()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='end']",function(t){return function(e){return e.preventDefault(),t.end()}}(this)).on("click.tour-"+this._options.name,".popover.tour-"+this._options.name+" *[data-role='pause-resume']",function(i){var n;return i.preventDefault(),n=t(this),n.text(e._paused?n.data("pause-text"):n.data("resume-text")),e._paused?e.resume():e.pause()})},i.prototype._initKeyboardNavigation=function(){if(this._options.keyboard)return t(n).on("keyup.tour-"+this._options.name,function(t){return function(e){if(e.which)switch(e.which){case 39:return e.preventDefault(),t._isLast()?t.next():t.end();case 37:if(e.preventDefault(),t._current>0)return t.prev();break;case 27:return e.preventDefault(),t.end()}}}(this))},i.prototype._makePromise=function(e){return e&&t.isFunction(e.then)?e:null},i.prototype._callOnPromiseDone=function(t,e,i){return t?t.then(function(t){return function(n){return e.call(t,i)}}(this)):e.call(this,i)},i.prototype._showBackdrop=function(e){if(!this.backdrop.backgroundShown)return this.backdrop=t("
",{class:"tour-backdrop"}),this.backdrop.backgroundShown=!0,t(e.backdropContainer).append(this.backdrop)},i.prototype._hideBackdrop=function(){return this._hideOverlayElement(),this._hideBackground()},i.prototype._hideBackground=function(){if(this.backdrop)return this.backdrop.remove(),this.backdrop.overlay=null,this.backdrop.backgroundShown=!1},i.prototype._showOverlayElement=function(e,i){var n,s;if(n=t(e.element),n&&0!==n.length&&(!this.backdrop.overlayElementShown||i))return this.backdrop.overlayElementShown||(this.backdrop.$element=n.addClass("tour-step-backdrop"),this.backdrop.$background=t("
",{class:"tour-step-background"}),this.backdrop.$background.appendTo(e.backdropContainer),this.backdrop.overlayElementShown=!0),s={width:n.innerWidth(),height:n.innerHeight(),offset:n.offset()},e.backdropPadding&&(s=this._applyBackdropPadding(e.backdropPadding,s)),this.backdrop.$background.width(s.width).height(s.height).offset(s.offset)},i.prototype._hideOverlayElement=function(){if(this.backdrop.overlayElementShown)return this.backdrop.$element.removeClass("tour-step-backdrop"),this.backdrop.$background.remove(),this.backdrop.$element=null,this.backdrop.$background=null,this.backdrop.overlayElementShown=!1},i.prototype._applyBackdropPadding=function(t,e){return"object"==typeof t?(null==t.top&&(t.top=0),null==t.right&&(t.right=0),null==t.bottom&&(t.bottom=0),null==t.left&&(t.left=0),e.offset.top=e.offset.top-t.top,e.offset.left=e.offset.left-t.left,e.width=e.width+t.left+t.right,e.height=e.height+t.top+t.bottom):(e.offset.top=e.offset.top-t,e.offset.left=e.offset.left-t,e.width=e.width+2*t,e.height=e.height+2*t),e},i.prototype._clearTimer=function(){return e.clearTimeout(this._timer),this._timer=null,this._duration=null},i.prototype._getProtocol=function(t){return t=t.split("://"),t.length>1?t[0]:"http"},i.prototype._getHost=function(t){return t=t.split("//"),t=t.length>1?t[1]:t[0],t.split("/")[0]},i.prototype._getPath=function(t){return t.replace(/\/?$/,"").split("?")[0].split("#")[0]},i.prototype._getQuery=function(t){return this._getParams(t,"?")},i.prototype._getHash=function(t){return this._getParams(t,"#")},i.prototype._getParams=function(t,e){var i,n,s,o,r;if(n=t.split(e),1===n.length)return{};for(n=n[1].split("&"),s={},o=0,r=n.length;o",this.document[0]).addClass("ui-button-text").html(this.options.label).appendTo(e.empty()).text(),n=this.options.icons,s=n.primary&&n.secondary,o=[];n.primary||n.secondary?(this.options.text&&o.push("ui-button-text-icon"+(s?"s":n.primary?"-primary":"-secondary")),n.primary&&e.prepend(""),n.secondary&&e.append(""),this.options.text||(o.push(s?"ui-button-icons-only":"ui-button-icon-only"),this.hasTitle||e.attr("title",t.trim(i)))):o.push("ui-button-text-only"),e.addClass(o.join(" "))}}),t.widget("ui.buttonset",{version:"1.9.1",options:{items:"button, input[type=button], input[type=submit], input[type=reset], input[type=checkbox], input[type=radio], a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(t,e){"disabled"===t&&this.buttons.button("option",t,e),this._super(t,e)},refresh:function(){var e="rtl"===this.element.css("direction");this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return t(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(e?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(e?"ui-corner-left":"ui-corner-right").end().end()},_destroy:function(){this.element.removeClass("ui-buttonset"),this.buttons.map(function(){return t(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy")}})}(t),function(t,e){var i=!1;t.widget("ui.menu",{version:"1.9.1",defaultElement:"
    ",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content ui-corner-all").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0}).bind("click"+this.eventNamespace,t.proxy(function(t){this.options.disabled&&t.preventDefault()},this)),this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true"),this._on({"mousedown .ui-menu-item > a":function(t){t.preventDefault()},"click .ui-state-disabled > a":function(t){t.preventDefault()},"click .ui-menu-item:has(a)":function(e){var n=t(e.target).closest(".ui-menu-item");!i&&n.not(".ui-state-disabled").length&&(i=!0,this.select(e),n.has(".ui-menu").length?this.expand(e):this.element.is(":focus")||(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(e){var i=t(e.currentTarget);i.siblings().children(".ui-state-active").removeClass("ui-state-active"),this.focus(e,i)},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var i=this.active||this.element.children(".ui-menu-item").eq(0);e||this.focus(t,i)},blur:function(e){this._delay(function(){t.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(e)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(e){t(e.target).closest(".ui-menu").length||this.collapseAll(e),i=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").andSelf().removeClass("ui-menu ui-widget ui-widget-content ui-corner-all ui-menu-icons").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show(),this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").children("a").removeUniqueId().removeClass("ui-corner-all ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var e=t(this);e.data("ui-menu-submenu-carat")&&e.remove()}),this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(e){function i(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}var n,s,o,r,a,l=!0;switch(e.keyCode){case t.ui.keyCode.PAGE_UP:this.previousPage(e);break;case t.ui.keyCode.PAGE_DOWN:this.nextPage(e);break;case t.ui.keyCode.HOME:this._move("first","first",e);break;case t.ui.keyCode.END:this._move("last","last",e);break;case t.ui.keyCode.UP:this.previous(e);break;case t.ui.keyCode.DOWN:this.next(e);break;case t.ui.keyCode.LEFT:this.collapse(e);break;case t.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(e);break;case t.ui.keyCode.ENTER:case t.ui.keyCode.SPACE:this._activate(e);break;case t.ui.keyCode.ESCAPE:this.collapse(e);break;default:l=!1,s=this.previousFilter||"",o=String.fromCharCode(e.keyCode),r=!1,clearTimeout(this.filterTimer),o===s?r=!0:o=s+o,a=new RegExp("^"+i(o),"i"),n=this.activeMenu.children(".ui-menu-item").filter(function(){return a.test(t(this).children("a").text())}),n=r&&n.index(this.active.next())!==-1?this.active.nextAll(".ui-menu-item"):n,n.length||(o=String.fromCharCode(e.keyCode),a=new RegExp("^"+i(o),"i"),n=this.activeMenu.children(".ui-menu-item").filter(function(){return a.test(t(this).children("a").text())})),n.length?(this.focus(e,n),n.length>1?(this.previousFilter=o,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter):delete this.previousFilter}l&&e.preventDefault()},_activate:function(t){this.active.is(".ui-state-disabled")||(this.active.children("a[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var e,i=this.options.icons.submenu,n=this.element.find(this.options.menus+":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-corner-all").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"});e=n.add(this.element),e.children(":not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","presentation").children("a").uniqueId().addClass("ui-corner-all").attr({tabIndex:-1,role:this._itemRole()}),e.children(":not(.ui-menu-item)").each(function(){var e=t(this);/[^\-—–\s]/.test(e.text())||e.addClass("ui-widget-content ui-menu-divider")}),e.children(".ui-state-disabled").attr("aria-disabled","true"),n.each(function(){var e=t(this),n=e.prev("a"),s=t("").addClass("ui-menu-icon ui-icon "+i).data("ui-menu-submenu-carat",!0);n.attr("aria-haspopup","true").prepend(s),e.attr("aria-labelledby",n.attr("id"))}),this.active&&!t.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},focus:function(t,e){var i,n;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),n=this.active.children("a").addClass("ui-state-focus"),this.options.role&&this.element.attr("aria-activedescendant",n.attr("id")),this.active.parent().closest(".ui-menu-item").children("a:first").addClass("ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=e.children(".ui-menu"),i.length&&/^mouse/.test(t.type)&&this._startOpening(i),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(e){var i,n,s,o,r,a;this._hasScroll()&&(i=parseFloat(t.css(this.activeMenu[0],"borderTopWidth"))||0,n=parseFloat(t.css(this.activeMenu[0],"paddingTop"))||0,s=e.offset().top-this.activeMenu.offset().top-i-n,o=this.activeMenu.scrollTop(),r=this.activeMenu.height(),a=e.height(),s<0?this.activeMenu.scrollTop(o+s):s+a>r&&this.activeMenu.scrollTop(o+s-r+a))},blur:function(t,e){e||clearTimeout(this.timer),this.active&&(this.active.children("a").removeClass("ui-state-focus"),this.active=null,this._trigger("blur",t,{item:this.active}))},_startOpening:function(t){clearTimeout(this.timer),"true"===t.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(t)},this.delay))},_open:function(e){var i=t.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(e.parents(".ui-menu")).hide().attr("aria-hidden","true"),e.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(e,i){clearTimeout(this.timer),this.timer=this._delay(function(){var n=i?this.element:t(e&&e.target).closest(this.element.find(".ui-menu"));n.length||(n=this.element),this._close(n),this.blur(e),this.activeMenu=n},this.delay)},_close:function(t){t||(t=this.active?this.active.parent():this.element),t.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find("a.ui-state-active").removeClass("ui-state-active")},collapse:function(t){var e=this.active&&this.active.parent().closest(".ui-menu-item",this.element);e&&e.length&&(this._close(),this.focus(t,e))},expand:function(t){var e=this.active&&this.active.children(".ui-menu ").children(".ui-menu-item").first();e&&e.length&&(this._open(e.parent()),this._delay(function(){this.focus(t,e)}))},next:function(t){this._move("next","first",t)},previous:function(t){this._move("prev","last",t)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(t,e,i){var n;this.active&&(n="first"===t||"last"===t?this.active["first"===t?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[t+"All"](".ui-menu-item").eq(0)),n&&n.length&&this.active||(n=this.activeMenu.children(".ui-menu-item")[e]()),this.focus(i,n)},nextPage:function(e){var i,n,s;return this.active?void(this.isLastItem()||(this._hasScroll()?(n=this.active.offset().top,s=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=t(this),i.offset().top-n-s<0}),this.focus(e,i)):this.focus(e,this.activeMenu.children(".ui-menu-item")[this.active?"last":"first"]()))):void this.next(e)},previousPage:function(e){var i,n,s;return this.active?void(this.isFirstItem()||(this._hasScroll()?(n=this.active.offset().top,s=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=t(this),i.offset().top-n+s>0}),this.focus(e,i)):this.focus(e,this.activeMenu.children(".ui-menu-item").first()))):void this.next(e)},_hasScroll:function(){return this.element.outerHeight()
").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+("min"===s.range||"max"===s.range?" ui-slider-range-"+s.range:""))),n=s.values&&s.values.length||1,e=o.length;ei&&(s=i,o=t(this),r=e)}),h.range===!0&&this.values(1)===h.min&&(r+=1,o=t(this.handles[r])),a=this._start(e,r),a!==!1&&(this._mouseSliding=!0,this._handleIndex=r,o.addClass("ui-state-active").focus(),l=o.offset(),u=!t(e.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=u?{left:0,top:0}:{left:e.pageX-l.left-o.width()/2,top:e.pageY-l.top-o.height()/2-(parseInt(o.css("borderTopWidth"),10)||0)-(parseInt(o.css("borderBottomWidth"),10)||0)+(parseInt(o.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(e,r,n),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(t){var e={x:t.pageX,y:t.pageY},i=this._normValueFromMouse(e);return this._slide(t,this._handleIndex,i),!1},_mouseStop:function(t){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(t,this._handleIndex),this._change(t,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(t){var e,i,n,s,o;return"horizontal"===this.orientation?(e=this.elementSize.width,i=t.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(e=this.elementSize.height,i=t.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),n=i/e,n>1&&(n=1),n<0&&(n=0),"vertical"===this.orientation&&(n=1-n),s=this._valueMax()-this._valueMin(),o=this._valueMin()+n*s,this._trimAlignValue(o)},_start:function(t,e){var i={handle:this.handles[e],value:this.value()};return this.options.values&&this.options.values.length&&(i.value=this.values(e),i.values=this.values()),this._trigger("start",t,i)},_slide:function(t,e,i){var n,s,o;this.options.values&&this.options.values.length?(n=this.values(e?0:1),2===this.options.values.length&&this.options.range===!0&&(0===e&&i>n||1===e&&i1)return this.options.values[e]=this._trimAlignValue(i),this._refreshValue(),this._change(null,e),void 0;if(!arguments.length)return this._values();if(!t.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(e):this.value();for(n=this.options.values,s=arguments[0],o=0;o=this._valueMax())return this._valueMax();var e=this.options.step>0?this.options.step:1,i=(t-this._valueMin())%e,n=t-i;return 2*Math.abs(i)>=e&&(n+=i>0?e:-e),parseFloat(n.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var e,i,n,s,o,r=this.options.range,a=this.options,l=this,u=!this._animateOff&&a.animate,c={};this.options.values&&this.options.values.length?this.handles.each(function(n){i=(l.values(n)-l._valueMin())/(l._valueMax()-l._valueMin())*100,c["horizontal"===l.orientation?"left":"bottom"]=i+"%",t(this).stop(1,1)[u?"animate":"css"](c,a.animate),l.options.range===!0&&("horizontal"===l.orientation?(0===n&&l.range.stop(1,1)[u?"animate":"css"]({left:i+"%"},a.animate),1===n&&l.range[u?"animate":"css"]({width:i-e+"%"},{queue:!1,duration:a.animate})):(0===n&&l.range.stop(1,1)[u?"animate":"css"]({bottom:i+"%"},a.animate),1===n&&l.range[u?"animate":"css"]({height:i-e+"%"},{queue:!1,duration:a.animate}))),e=i}):(n=this.value(),s=this._valueMin(),o=this._valueMax(),i=o!==s?(n-s)/(o-s)*100:0,c["horizontal"===this.orientation?"left":"bottom"]=i+"%",this.handle.stop(1,1)[u?"animate":"css"](c,a.animate),"min"===r&&"horizontal"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({width:i+"%"},a.animate),"max"===r&&"horizontal"===this.orientation&&this.range[u?"animate":"css"]({width:100-i+"%"},{queue:!1,duration:a.animate}),"min"===r&&"vertical"===this.orientation&&this.range.stop(1,1)[u?"animate":"css"]({height:i+"%"},a.animate),"max"===r&&"vertical"===this.orientation&&this.range[u?"animate":"css"]({height:100-i+"%"},{queue:!1,duration:a.animate}))}})}(t)}).call(e,i(1))},function(t,e,i){(function(t){!function(t){function e(i){function n(){e(s)}var s=i.data||i;switch(i.type){case"mouseenter":s.dist2=0,s.event=i,i.type="hoverstart",t.event.dispatch.call(this,i)!==!1&&(s.elem=this,t.event.add(this,"mousemove",e,s),s.timer=setTimeout(n,s.delay));break;case"mousemove":s.dist2+=Math.pow(i.pageX-s.event.pageX,2)+Math.pow(i.pageY-s.event.pageY,2),s.event=i;break;case"mouseleave":clearTimeout(s.timer),s.hovered?(i.type="hoverend",t.event.dispatch.call(this,i),s.hovered--):t.event.remove(s.elem,"mousemove",e);break;default:s.dist2<=Math.pow(s.speed*(s.delay/1e3),2)?(t.event.remove(s.elem,"mousemove",e),s.event.type="hover",t.event.dispatch.call(s.elem,s.event)!==!1&&s.hovered++):s.timer=setTimeout(n,s.delay),s.dist2=0}}t.fn._hover=t.fn.hover,t.fn.hover=function(t,e,i){return i&&this.bind("hoverstart",t),e&&this.bind("hoverend",i?i:e),t?this.bind("hover",i?e:t):this.trigger("hover")};var i=t.event.special.hover={delay:100,speed:100,setup:function(n){n=t.extend({speed:i.speed,delay:i.delay,hovered:0},n||{}),t.event.add(this,"mouseenter mouseleave",e,n)},teardown:function(){t.event.remove(this,"mouseenter mouseleave",e)}}}(t)}).call(e,i(1))},function(t,e,i){(function(t){!function(t){"use strict";function e(e){var i=e.data;e.isDefaultPrevented()||(e.preventDefault(),t(e.target).ajaxSubmit(i))}function i(e){var i=e.target,n=t(i);if(!n.is("[type=submit],[type=image]")){var s=n.closest("[type=submit]");if(0===s.length)return;i=s[0]}var o=this;if(o.clk=i,"image"==i.type)if(void 0!==e.offsetX)o.clk_x=e.offsetX,o.clk_y=e.offsetY;else if("function"==typeof t.fn.offset){var r=n.offset();o.clk_x=e.pageX-r.left,o.clk_y=e.pageY-r.top}else o.clk_x=e.pageX-i.offsetLeft,o.clk_y=e.pageY-i.offsetTop;setTimeout(function(){o.clk=o.clk_x=o.clk_y=null},100)}function n(){if(t.fn.ajaxSubmit.debug){var e="[jquery.form] "+Array.prototype.join.call(arguments,"");window.console&&window.console.log?window.console.log(e):window.opera&&window.opera.postError&&window.opera.postError(e)}}var s={};s.fileapi=void 0!==t("").get(0).files,s.formdata=void 0!==window.FormData;var o=!!t.fn.prop;t.fn.attr2=function(){if(!o)return this.attr.apply(this,arguments);var t=this.prop.apply(this,arguments);return t&&t.jquery||"string"==typeof t?t:this.attr.apply(this,arguments)},t.fn.ajaxSubmit=function(e){function i(i){var n,s,o=t.param(i,e.traditional).split("&"),r=o.length,a=[];for(n=0;n').val(d.extraData[u].value).appendTo(C)[0]):r.push(t('').val(d.extraData[u]).appendTo(C)[0]));d.iframeTarget||m.appendTo("body"),v.attachEvent?v.attachEvent("onload",a):v.addEventListener("load",a,!1),setTimeout(e,15);try{C.submit()}catch(t){var c=document.createElement("form").submit;c.apply(C)}}finally{C.setAttribute("action",o),i?C.setAttribute("target",i):h.removeAttr("target"),t(r).remove()}}function a(e){if(!y.aborted&&!O){if(N=s(v),N||(n("cannot access response document"),e=T),e===k&&y)return y.abort("timeout"),void S.reject(y,"timeout");if(e==T&&y)return y.abort("server abort"),void S.reject(y,"error","server abort");if(N&&N.location.href!=d.iframeSrc||_){v.detachEvent?v.detachEvent("onload",a):v.removeEventListener("load",a,!1);var i,o="success";try{if(_)throw"timeout";var r="xml"==d.dataType||N.XMLDocument||t.isXMLDoc(N);if(n("isXml="+r),!r&&window.opera&&(null===N.body||!N.body.innerHTML)&&--P)return n("requeing onLoad callback, DOM not available"),void setTimeout(a,250);var l=N.body?N.body:N.documentElement;y.responseText=l?l.innerHTML:null,y.responseXML=N.XMLDocument?N.XMLDocument:N,r&&(d.dataType="xml"),y.getResponseHeader=function(t){var e={"content-type":d.dataType};return e[t.toLowerCase()]},l&&(y.status=Number(l.getAttribute("status"))||y.status,y.statusText=l.getAttribute("statusText")||y.statusText);var u=(d.dataType||"").toLowerCase(),c=/(json|script|text)/.test(u);if(c||d.textarea){var h=N.getElementsByTagName("textarea")[0];if(h)y.responseText=h.value,y.status=Number(h.getAttribute("status"))||y.status,y.statusText=h.getAttribute("statusText")||y.statusText;else if(c){var f=N.getElementsByTagName("pre")[0],g=N.getElementsByTagName("body")[0];f?y.responseText=f.textContent?f.textContent:f.innerText:g&&(y.responseText=g.textContent?g.textContent:g.innerText)}}else"xml"==u&&!y.responseXML&&y.responseText&&(y.responseXML=R(y.responseText));try{D=j(y,u,d)}catch(t){o="parsererror",y.error=i=t||o}}catch(t){n("error caught: ",t),o="error",y.error=i=t||o}y.aborted&&(n("upload aborted"),o=null),y.status&&(o=y.status>=200&&y.status<300||304===y.status?"success":"error"),"success"===o?(d.success&&d.success.call(d.context,D,"success",y),S.resolve(y.responseText,"success",y),p&&t.event.trigger("ajaxSuccess",[y,d])):o&&(void 0===i&&(i=y.statusText),d.error&&d.error.call(d.context,y,o,i),S.reject(y,"error",i),p&&t.event.trigger("ajaxError",[y,d,i])),p&&t.event.trigger("ajaxComplete",[y,d]),p&&!--t.active&&t.event.trigger("ajaxStop"),d.complete&&d.complete.call(d.context,y,o),O=!0,d.timeout&&clearTimeout(x),setTimeout(function(){d.iframeTarget?m.attr("src",d.iframeSrc):m.remove(),y.responseXML=null},100)}}}var u,c,d,p,f,m,v,y,b,w,_,x,C=h[0],S=t.Deferred();if(S.abort=function(t){y.abort(t)},i)for(c=0;c'),m.css({position:"absolute",top:"-1000px",left:"-1000px"})),v=m[0],y={aborted:0,responseText:null,responseXML:null,status:0,statusText:"n/a",getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){},abort:function(e){var i="timeout"===e?"timeout":"aborted";n("aborting upload... "+i),this.aborted=1;try{v.contentWindow.document.execCommand&&v.contentWindow.document.execCommand("Stop")}catch(t){}m.attr("src",d.iframeSrc),y.error=i,d.error&&d.error.call(d.context,y,i,e),p&&t.event.trigger("ajaxError",[y,d,i]),d.complete&&d.complete.call(d.context,y,i)}},p=d.global,p&&0===t.active++&&t.event.trigger("ajaxStart"),p&&t.event.trigger("ajaxSend",[y,d]),d.beforeSend&&d.beforeSend.call(d.context,y,d)===!1)return d.global&&t.active--,S.reject(),S;if(y.aborted)return S.reject(),S;b=C.clk,b&&(w=b.name,w&&!b.disabled&&(d.extraData=d.extraData||{},d.extraData[w]=b.value,"image"==b.type&&(d.extraData[w+".x"]=C.clk_x,d.extraData[w+".y"]=C.clk_y)));var k=1,T=2,E=t("meta[name=csrf-token]").attr("content"),A=t("meta[name=csrf-param]").attr("content");A&&E&&(d.extraData=d.extraData||{},d.extraData[A]=E),d.forceSync?r():setTimeout(r,10);var D,N,O,P=50,R=t.parseXML||function(t,e){return window.ActiveXObject?(e=new ActiveXObject("Microsoft.XMLDOM"),e.async="false",e.loadXML(t)):e=(new DOMParser).parseFromString(t,"text/xml"),e&&e.documentElement&&"parsererror"!=e.documentElement.nodeName?e:null},M=t.parseJSON||function(t){return window.eval("("+t+")")},j=function(e,i,n){var s=e.getResponseHeader("content-type")||"",o="xml"===i||!i&&s.indexOf("xml")>=0,r=o?e.responseXML:e.responseText;return o&&"parsererror"===r.documentElement.nodeName&&t.error&&t.error("parsererror"),n&&n.dataFilter&&(r=n.dataFilter(r,i)),"string"==typeof r&&("json"===i||!i&&s.indexOf("json")>=0?r=M(r):("script"===i||!i&&s.indexOf("javascript")>=0)&&t.globalEval(r)),r};return S}if(!this.length)return n("ajaxSubmit: skipping submit process - no element selected"),this;var l,u,c,h=this;"function"==typeof e?e={success:e}:void 0===e&&(e={}),l=e.type||this.attr2("method"),u=e.url||this.attr2("action"),c="string"==typeof u?t.trim(u):"",c=c||window.location.href||"",c&&(c=(c.match(/^([^#]+)/)||[])[1]),e=t.extend(!0,{url:c,success:t.ajaxSettings.success,type:l||t.ajaxSettings.type,iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank"},e);var d={};if(this.trigger("form-pre-serialize",[this,e,d]),d.veto)return n("ajaxSubmit: submit vetoed via form-pre-serialize trigger"),this;if(e.beforeSerialize&&e.beforeSerialize(this,e)===!1)return n("ajaxSubmit: submit aborted via beforeSerialize callback"),this;var p=e.traditional;void 0===p&&(p=t.ajaxSettings.traditional);var f,g=[],m=this.formToArray(e.semantic,g);if(e.data&&(e.extraData=e.data,f=t.param(e.data,p)),e.beforeSubmit&&e.beforeSubmit(m,this,e)===!1)return n("ajaxSubmit: submit aborted via beforeSubmit callback"),this;if(this.trigger("form-submit-validate",[m,this,e,d]),d.veto)return n("ajaxSubmit: submit vetoed via form-submit-validate trigger"),this;var v=t.param(m,p);f&&(v=v?v+"&"+f:f),"GET"==e.type.toUpperCase()?(e.url+=(e.url.indexOf("?")>=0?"&":"?")+v,e.data=null):e.data=v;var y=[];if(e.resetForm&&y.push(function(){h.resetForm()}),e.clearForm&&y.push(function(){h.clearForm(e.includeHidden)}),!e.dataType&&e.target){var b=e.success||function(){};y.push(function(i){var n=e.replaceTarget?"replaceWith":"html"; t(e.target)[n](i).each(b,arguments)})}else e.success&&y.push(e.success);if(e.success=function(t,i,n){for(var s=e.context||this,o=0,r=y.length;o0,S="multipart/form-data",k=h.attr("enctype")==S||h.attr("encoding")==S,T=s.fileapi&&s.formdata;n("fileAPI :"+T);var E,A=(C||k)&&!T;e.iframe!==!1&&(e.iframe||A)?e.closeKeepAlive?t.get(e.closeKeepAlive,function(){E=a(m)}):E=a(m):E=(C||k)&&T?r(m):t.ajax(e),h.removeData("jqxhr").data("jqxhr",E);for(var D=0;D1){var i=arguments;return this.each(function(){t.fn.rating.apply(t(this),i)})}return t.fn.rating[arguments[0]].apply(this,t.makeArray(arguments).slice(1)||[]),this}var e=t.extend({},t.fn.rating.options,e||{});return t.fn.rating.calls++,this.not(".star-rating-applied").addClass("star-rating-applied").each(function(){var i,n=t(this),s=(this.name||"unnamed-rating").replace(/\[|\]/g,"_").replace(/^\_+|\_+$/g,""),o=t(this.form||document.body),r=o.data("rating");r&&r.call==t.fn.rating.calls||(r={count:0,call:t.fn.rating.calls});var a=r[s]||o.data("rating"+s);a&&(i=a.data("rating")),a&&i?i.count++:(i=t.extend({},e||{},(t.metadata?n.metadata():t.meta?n.data():null)||{},{count:0,stars:[],inputs:[]}),i.serial=r.count++,a=t(''),n.before(a),a.addClass("rating-to-be-drawn"),(n.attr("disabled")||n.hasClass("disabled"))&&(i.readOnly=!0),n.hasClass("required")&&(i.required=!0),a.append(i.cancel=t('").on("mouseover",function(){t(this).rating("drain"),t(this).addClass("star-rating-hover")}).on("mouseout",function(){t(this).rating("draw"),t(this).removeClass("star-rating-hover")}).on("click",function(){t(this).rating("select")}).data("rating",i)));var l=t('");if(a.append(l),this.id&&l.attr("id",this.id),this.className&&l.addClass(this.className),i.half&&(i.split=2),"number"==typeof i.split&&i.split>0){var u=(t.fn.width?l.width():0)||i.starWidth,c=i.count%i.split,h=Math.floor(u/i.split);l.width(h).find("a").css({"margin-left":"-"+c*h+"px"})}i.readOnly?l.addClass("star-rating-readonly"):l.addClass("star-rating-live").on("mouseover",function(){t(this).rating("fill"),t(this).rating("focus")}).on("mouseout",function(){t(this).rating("draw"),t(this).rating("blur")}).on("click",function(){t(this).rating("select")}),this.checked&&(i.current=l),"A"==this.nodeName&&t(this).hasClass("selected")&&(i.current=l),n.hide(),n.on("change.rating",function(e){return!e.selfTriggered&&void t(this).rating("select")}),l.data("rating.input",n.data("rating.star",l)),i.stars[i.stars.length]=l[0],i.inputs[i.inputs.length]=n[0],i.rater=r[s]=a,i.context=o,n.data("rating",i),a.data("rating",i),l.data("rating",i),o.data("rating",r),o.data("rating"+s,a)}),t(".rating-to-be-drawn").rating("draw").removeClass("rating-to-be-drawn"),this},t.extend(t.fn.rating,{calls:0,focus:function(){var e=this.data("rating");if(!e)return this;if(!e.focus)return this;var i=t(this).data("rating.input")||t("INPUT"==this.tagName?this:null);e.focus&&e.focus.apply(i[0],[i.val(),t("a",i.data("rating.star"))[0]])},blur:function(){var e=this.data("rating");if(!e)return this;if(!e.blur)return this;var i=t(this).data("rating.input")||t("INPUT"==this.tagName?this:null);e.blur&&e.blur.apply(i[0],[i.val(),t("a",i.data("rating.star"))[0]])},fill:function(){var t=this.data("rating");return t?void(t.readOnly||(this.rating("drain"),this.prevAll().addBack().filter(".rater-"+t.serial).addClass("star-rating-hover"))):this},drain:function(){var t=this.data("rating");return t?void(t.readOnly||t.rater.children().filter(".rater-"+t.serial).removeClass("star-rating-on").removeClass("star-rating-hover")):this},draw:function(){var e=this.data("rating");if(!e)return this;this.rating("drain");var i=t(e.current),n=i.length?i.prevAll().addBack().filter(".rater-"+e.serial):null;n&&n.addClass("star-rating-on"),e.cancel[e.readOnly||e.required?"hide":"show"](),this.siblings()[e.readOnly?"addClass":"removeClass"]("star-rating-readonly")},select:function(e,i){var n=this.data("rating");if(!n)return this;if(!n.readOnly){if(n.current=null,"undefined"!=typeof e||this.length>1){if("number"==typeof e)return t(n.stars[e]).rating("select",void 0,i);if("string"==typeof e)return t.each(n.stars,function(){t(this).data("rating.input").val()==e&&t(this).rating("select",void 0,i)}),this}else n.current="INPUT"==this[0].tagName?this.data("rating.star"):this.is(".rater-"+n.serial)?this:null;this.data("rating",n),this.rating("draw");var s=t(n.current?n.current.data("rating.input"):null),o=t(n.inputs).filter(":checked"),r=t(n.inputs).not(s);return r.prop("checked",!1),s.prop("checked",!0),t(s.length?s:o).trigger({type:"change",selfTriggered:!0}),(i||void 0==i)&&n.callback&&n.callback.apply(s[0],[s.val(),t("a",n.current)[0]]),this}},readOnly:function(e,i){var n=this.data("rating");return n?(n.readOnly=!(!e&&void 0!=e),i?t(n.inputs).attr("disabled","disabled"):t(n.inputs).removeAttr("disabled"),this.data("rating",n),void this.rating("draw")):this},disable:function(){this.rating("readOnly",!0,!0)},enable:function(){this.rating("readOnly",!1,!1)}}),t.fn.rating.options={cancel:"Cancel Rating",cancelValue:"",split:0,starWidth:16},t(function(){t("input[type=radio].star").rating()})}(e)}).call(e,i(1),i(1))},function(t,e,i){(function(t){!function(t){"undefined"==typeof t.fn.each2&&t.extend(t.fn,{each2:function(e){for(var i=t([0]),n=-1,s=this.length;++n=0&&i(t)})}function p(t){t[0]!==document.activeElement&&window.setTimeout(function(){var e,i=t[0],n=t.val().length;t.focus();var s=i.offsetWidth>0||i.offsetHeight>0;s&&i===document.activeElement&&(i.setSelectionRange?i.setSelectionRange(n,n):i.createTextRange&&(e=i.createTextRange(),e.collapse(!1),e.select()))},0)}function f(e){e=t(e)[0];var i=0,n=0;if("selectionStart"in e)i=e.selectionStart,n=e.selectionEnd-i;else if("selection"in document){e.focus();var s=document.selection.createRange();n=document.selection.createRange().text.length,s.moveStart("character",-e.value.length),i=s.text.length-n}return{offset:i,length:n}}function g(t){t.preventDefault(),t.stopPropagation()}function m(t){t.preventDefault(),t.stopImmediatePropagation()}function v(e){if(!j){var i=e[0].currentStyle||window.getComputedStyle(e[0],null);j=t(document.createElement("div")).css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:i.fontSize,fontFamily:i.fontFamily,fontStyle:i.fontStyle,fontWeight:i.fontWeight,letterSpacing:i.letterSpacing,textTransform:i.textTransform,whiteSpace:"nowrap"}),j.attr("class","select2-sizer"),t("body").append(j)}return j.text(e.val()),j.width()}function y(e,i,n){var s,o,r=[];s=t.trim(e.attr("class")),s&&(s=""+s,t(s.split(/\s+/)).each2(function(){0===this.indexOf("select2-")&&r.push(this)})),s=t.trim(i.attr("class")),s&&(s=""+s,t(s.split(/\s+/)).each2(function(){0!==this.indexOf("select2-")&&(o=n(this),o&&r.push(o))})),e.attr("class",r.join(" "))}function b(t,e,i,s){var o=n(t.toUpperCase()).indexOf(n(e.toUpperCase())),r=e.length;return o<0?void i.push(s(t)):(i.push(s(t.substring(0,o))),i.push(""),i.push(s(t.substring(o,o+r))),i.push(""),void i.push(s(t.substring(o+r,t.length))))}function w(t){var e={"\\":"\","&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};return String(t).replace(/[&<>"'\/\\]/g,function(t){return e[t]})}function _(i){var n,s=null,o=i.quietMillis||100,r=i.url,a=this;return function(l){window.clearTimeout(n),n=window.setTimeout(function(){var n=i.data,o=r,u=i.transport||t.fn.select2.ajaxDefaults.transport,c={type:i.type||"GET",cache:i.cache||!1,jsonpCallback:i.jsonpCallback||e,dataType:i.dataType||"json"},h=t.extend({},t.fn.select2.ajaxDefaults.params,c);n=n?n.call(a,l.term,l.page,l.context):null,o="function"==typeof o?o.call(a,l.term,l.page,l.context):o,s&&"function"==typeof s.abort&&s.abort(),i.params&&(t.isFunction(i.params)?t.extend(h,i.params.call(a)):t.extend(h,i.params)),t.extend(h,{url:o,dataType:i.dataType,data:n,success:function(t){var e=i.results(t,l.page,l);l.callback(e)},error:function(t,e,i){var n={hasError:!0,jqXHR:t,textStatus:e,errorThrown:i};l.callback(n)}}),s=u.call(a,h)},o)}}function x(e){var i,n,s=e,o=function(t){return""+t.text};t.isArray(s)&&(n=s,s={results:n}),t.isFunction(s)===!1&&(n=s,s=function(){return n});var r=s();return r.text&&(o=r.text,t.isFunction(o)||(i=r.text,o=function(t){return t[i]})),function(e){var i,n=e.term,r={results:[]};return""===n?void e.callback(s()):(i=function(s,r){var a,l;if(s=s[0],s.children){a={};for(l in s)s.hasOwnProperty(l)&&(a[l]=s[l]);a.children=[],t(s.children).each2(function(t,e){i(e,a.children)}),(a.children.length||e.matcher(n,o(a),s))&&r.push(a)}else e.matcher(n,o(s),s)&&r.push(s)},t(s().results).each2(function(t,e){i(e,r.results)}),void e.callback(r))}}function C(i){var n=t.isFunction(i);return function(s){var o=s.term,r={results:[]},a=n?i(s):i;t.isArray(a)&&(t(a).each(function(){var t=this.text!==e,i=t?this.text:this;(""===o||s.matcher(o,i))&&r.results.push(t?this:{id:this,text:this})}),s.callback(r))}}function S(e,i){if(t.isFunction(e))return!0;if(!e)return!1;if("string"==typeof e)return!0;throw new Error(i+" must be a string, function, or falsy value")}function k(e,i){if(t.isFunction(e)){var n=Array.prototype.slice.call(arguments,2);return e.apply(i,n)}return e}function T(e){var i=0;return t.each(e,function(t,e){e.children?i+=T(e.children):i++}),i}function E(t,i,n,s){var o,a,l,u,c,h=t,d=!1;if(!s.createSearchChoice||!s.tokenSeparators||s.tokenSeparators.length<1)return e;for(;;){for(a=-1,l=0,u=s.tokenSeparators.length;l=0));l++);if(a<0)break;if(o=t.substring(0,a),t=t.substring(a+c.length),o.length>0&&(o=s.createSearchChoice.call(this,o,i),o!==e&&null!==o&&s.id(o)!==e&&null!==s.id(o))){for(d=!1,l=0,u=i.length;l=112&&t<=123}},$="
",F={"Ⓐ":"A","A":"A","À":"A","Á":"A","Â":"A","Ầ":"A","Ấ":"A","Ẫ":"A","Ẩ":"A","Ã":"A","Ā":"A","Ă":"A","Ằ":"A","Ắ":"A","Ẵ":"A","Ẳ":"A","Ȧ":"A","Ǡ":"A","Ä":"A","Ǟ":"A","Ả":"A","Å":"A","Ǻ":"A","Ǎ":"A","Ȁ":"A","Ȃ":"A","Ạ":"A","Ậ":"A","Ặ":"A","Ḁ":"A","Ą":"A","Ⱥ":"A","Ɐ":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ⓑ":"B","B":"B","Ḃ":"B","Ḅ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ɓ":"B","Ⓒ":"C","C":"C","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","Ç":"C","Ḉ":"C","Ƈ":"C","Ȼ":"C","Ꜿ":"C","Ⓓ":"D","D":"D","Ḋ":"D","Ď":"D","Ḍ":"D","Ḑ":"D","Ḓ":"D","Ḏ":"D","Đ":"D","Ƌ":"D","Ɗ":"D","Ɖ":"D","Ꝺ":"D","DZ":"DZ","DŽ":"DZ","Dz":"Dz","Dž":"Dz","Ⓔ":"E","E":"E","È":"E","É":"E","Ê":"E","Ề":"E","Ế":"E","Ễ":"E","Ể":"E","Ẽ":"E","Ē":"E","Ḕ":"E","Ḗ":"E","Ĕ":"E","Ė":"E","Ë":"E","Ẻ":"E","Ě":"E","Ȅ":"E","Ȇ":"E","Ẹ":"E","Ệ":"E","Ȩ":"E","Ḝ":"E","Ę":"E","Ḙ":"E","Ḛ":"E","Ɛ":"E","Ǝ":"E","Ⓕ":"F","F":"F","Ḟ":"F","Ƒ":"F","Ꝼ":"F","Ⓖ":"G","G":"G","Ǵ":"G","Ĝ":"G","Ḡ":"G","Ğ":"G","Ġ":"G","Ǧ":"G","Ģ":"G","Ǥ":"G","Ɠ":"G","Ꞡ":"G","Ᵹ":"G","Ꝿ":"G","Ⓗ":"H","H":"H","Ĥ":"H","Ḣ":"H","Ḧ":"H","Ȟ":"H","Ḥ":"H","Ḩ":"H","Ḫ":"H","Ħ":"H","Ⱨ":"H","Ⱶ":"H","Ɥ":"H","Ⓘ":"I","I":"I","Ì":"I","Í":"I","Î":"I","Ĩ":"I","Ī":"I","Ĭ":"I","İ":"I","Ï":"I","Ḯ":"I","Ỉ":"I","Ǐ":"I","Ȉ":"I","Ȋ":"I","Ị":"I","Į":"I","Ḭ":"I","Ɨ":"I","Ⓙ":"J","J":"J","Ĵ":"J","Ɉ":"J","Ⓚ":"K","K":"K","Ḱ":"K","Ǩ":"K","Ḳ":"K","Ķ":"K","Ḵ":"K","Ƙ":"K","Ⱪ":"K","Ꝁ":"K","Ꝃ":"K","Ꝅ":"K","Ꞣ":"K","Ⓛ":"L","L":"L","Ŀ":"L","Ĺ":"L","Ľ":"L","Ḷ":"L","Ḹ":"L","Ļ":"L","Ḽ":"L","Ḻ":"L","Ł":"L","Ƚ":"L","Ɫ":"L","Ⱡ":"L","Ꝉ":"L","Ꝇ":"L","Ꞁ":"L","LJ":"LJ","Lj":"Lj","Ⓜ":"M","M":"M","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ɯ":"M","Ⓝ":"N","N":"N","Ǹ":"N","Ń":"N","Ñ":"N","Ṅ":"N","Ň":"N","Ṇ":"N","Ņ":"N","Ṋ":"N","Ṉ":"N","Ƞ":"N","Ɲ":"N","Ꞑ":"N","Ꞥ":"N","NJ":"NJ","Nj":"Nj","Ⓞ":"O","O":"O","Ò":"O","Ó":"O","Ô":"O","Ồ":"O","Ố":"O","Ỗ":"O","Ổ":"O","Õ":"O","Ṍ":"O","Ȭ":"O","Ṏ":"O","Ō":"O","Ṑ":"O","Ṓ":"O","Ŏ":"O","Ȯ":"O","Ȱ":"O","Ö":"O","Ȫ":"O","Ỏ":"O","Ő":"O","Ǒ":"O","Ȍ":"O","Ȏ":"O","Ơ":"O","Ờ":"O","Ớ":"O","Ỡ":"O","Ở":"O","Ợ":"O","Ọ":"O","Ộ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Ɔ":"O","Ɵ":"O","Ꝋ":"O","Ꝍ":"O","Ƣ":"OI","Ꝏ":"OO","Ȣ":"OU","Ⓟ":"P","P":"P","Ṕ":"P","Ṗ":"P","Ƥ":"P","Ᵽ":"P","Ꝑ":"P","Ꝓ":"P","Ꝕ":"P","Ⓠ":"Q","Q":"Q","Ꝗ":"Q","Ꝙ":"Q","Ɋ":"Q","Ⓡ":"R","R":"R","Ŕ":"R","Ṙ":"R","Ř":"R","Ȑ":"R","Ȓ":"R","Ṛ":"R","Ṝ":"R","Ŗ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꝛ":"R","Ꞧ":"R","Ꞃ":"R","Ⓢ":"S","S":"S","ẞ":"S","Ś":"S","Ṥ":"S","Ŝ":"S","Ṡ":"S","Š":"S","Ṧ":"S","Ṣ":"S","Ṩ":"S","Ș":"S","Ş":"S","Ȿ":"S","Ꞩ":"S","Ꞅ":"S","Ⓣ":"T","T":"T","Ṫ":"T","Ť":"T","Ṭ":"T","Ț":"T","Ţ":"T","Ṱ":"T","Ṯ":"T","Ŧ":"T","Ƭ":"T","Ʈ":"T","Ⱦ":"T","Ꞇ":"T","Ꜩ":"TZ","Ⓤ":"U","U":"U","Ù":"U","Ú":"U","Û":"U","Ũ":"U","Ṹ":"U","Ū":"U","Ṻ":"U","Ŭ":"U","Ü":"U","Ǜ":"U","Ǘ":"U","Ǖ":"U","Ǚ":"U","Ủ":"U","Ů":"U","Ű":"U","Ǔ":"U","Ȕ":"U","Ȗ":"U","Ư":"U","Ừ":"U","Ứ":"U","Ữ":"U","Ử":"U","Ự":"U","Ụ":"U","Ṳ":"U","Ų":"U","Ṷ":"U","Ṵ":"U","Ʉ":"U","Ⓥ":"V","V":"V","Ṽ":"V","Ṿ":"V","Ʋ":"V","Ꝟ":"V","Ʌ":"V","Ꝡ":"VY","Ⓦ":"W","W":"W","Ẁ":"W","Ẃ":"W","Ŵ":"W","Ẇ":"W","Ẅ":"W","Ẉ":"W","Ⱳ":"W","Ⓧ":"X","X":"X","Ẋ":"X","Ẍ":"X","Ⓨ":"Y","Y":"Y","Ỳ":"Y","Ý":"Y","Ŷ":"Y","Ỹ":"Y","Ȳ":"Y","Ẏ":"Y","Ÿ":"Y","Ỷ":"Y","Ỵ":"Y","Ƴ":"Y","Ɏ":"Y","Ỿ":"Y","Ⓩ":"Z","Z":"Z","Ź":"Z","Ẑ":"Z","Ż":"Z","Ž":"Z","Ẓ":"Z","Ẕ":"Z","Ƶ":"Z","Ȥ":"Z","Ɀ":"Z","Ⱬ":"Z","Ꝣ":"Z","ⓐ":"a","a":"a","ẚ":"a","à":"a","á":"a","â":"a","ầ":"a","ấ":"a","ẫ":"a","ẩ":"a","ã":"a","ā":"a","ă":"a","ằ":"a","ắ":"a","ẵ":"a","ẳ":"a","ȧ":"a","ǡ":"a","ä":"a","ǟ":"a","ả":"a","å":"a","ǻ":"a","ǎ":"a","ȁ":"a","ȃ":"a","ạ":"a","ậ":"a","ặ":"a","ḁ":"a","ą":"a","ⱥ":"a","ɐ":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ⓑ":"b","b":"b","ḃ":"b","ḅ":"b","ḇ":"b","ƀ":"b","ƃ":"b","ɓ":"b","ⓒ":"c","c":"c","ć":"c","ĉ":"c","ċ":"c","č":"c","ç":"c","ḉ":"c","ƈ":"c","ȼ":"c","ꜿ":"c","ↄ":"c","ⓓ":"d","d":"d","ḋ":"d","ď":"d","ḍ":"d","ḑ":"d","ḓ":"d","ḏ":"d","đ":"d","ƌ":"d","ɖ":"d","ɗ":"d","ꝺ":"d","dz":"dz","dž":"dz","ⓔ":"e","e":"e","è":"e","é":"e","ê":"e","ề":"e","ế":"e","ễ":"e","ể":"e","ẽ":"e","ē":"e","ḕ":"e","ḗ":"e","ĕ":"e","ė":"e","ë":"e","ẻ":"e","ě":"e","ȅ":"e","ȇ":"e","ẹ":"e","ệ":"e","ȩ":"e","ḝ":"e","ę":"e","ḙ":"e","ḛ":"e","ɇ":"e","ɛ":"e","ǝ":"e","ⓕ":"f","f":"f","ḟ":"f","ƒ":"f","ꝼ":"f","ⓖ":"g","g":"g","ǵ":"g","ĝ":"g","ḡ":"g","ğ":"g","ġ":"g","ǧ":"g","ģ":"g","ǥ":"g","ɠ":"g","ꞡ":"g","ᵹ":"g","ꝿ":"g","ⓗ":"h","h":"h","ĥ":"h","ḣ":"h","ḧ":"h","ȟ":"h","ḥ":"h","ḩ":"h","ḫ":"h","ẖ":"h","ħ":"h","ⱨ":"h","ⱶ":"h","ɥ":"h","ƕ":"hv","ⓘ":"i","i":"i","ì":"i","í":"i","î":"i","ĩ":"i","ī":"i","ĭ":"i","ï":"i","ḯ":"i","ỉ":"i","ǐ":"i","ȉ":"i","ȋ":"i","ị":"i","į":"i","ḭ":"i","ɨ":"i","ı":"i","ⓙ":"j","j":"j","ĵ":"j","ǰ":"j","ɉ":"j","ⓚ":"k","k":"k","ḱ":"k","ǩ":"k","ḳ":"k","ķ":"k","ḵ":"k","ƙ":"k","ⱪ":"k","ꝁ":"k","ꝃ":"k","ꝅ":"k","ꞣ":"k","ⓛ":"l","l":"l","ŀ":"l","ĺ":"l","ľ":"l","ḷ":"l","ḹ":"l","ļ":"l","ḽ":"l","ḻ":"l","ſ":"l","ł":"l","ƚ":"l","ɫ":"l","ⱡ":"l","ꝉ":"l","ꞁ":"l","ꝇ":"l","lj":"lj","ⓜ":"m","m":"m","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ɯ":"m","ⓝ":"n","n":"n","ǹ":"n","ń":"n","ñ":"n","ṅ":"n","ň":"n","ṇ":"n","ņ":"n","ṋ":"n","ṉ":"n","ƞ":"n","ɲ":"n","ʼn":"n","ꞑ":"n","ꞥ":"n","nj":"nj","ⓞ":"o","o":"o","ò":"o","ó":"o","ô":"o","ồ":"o","ố":"o","ỗ":"o","ổ":"o","õ":"o","ṍ":"o","ȭ":"o","ṏ":"o","ō":"o","ṑ":"o","ṓ":"o","ŏ":"o","ȯ":"o","ȱ":"o","ö":"o","ȫ":"o","ỏ":"o","ő":"o","ǒ":"o","ȍ":"o","ȏ":"o","ơ":"o","ờ":"o","ớ":"o","ỡ":"o","ở":"o","ợ":"o","ọ":"o","ộ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","ɔ":"o","ꝋ":"o","ꝍ":"o","ɵ":"o","ƣ":"oi","ȣ":"ou","ꝏ":"oo","ⓟ":"p","p":"p","ṕ":"p","ṗ":"p","ƥ":"p","ᵽ":"p","ꝑ":"p","ꝓ":"p","ꝕ":"p","ⓠ":"q","q":"q","ɋ":"q","ꝗ":"q","ꝙ":"q","ⓡ":"r","r":"r","ŕ":"r","ṙ":"r","ř":"r","ȑ":"r","ȓ":"r","ṛ":"r","ṝ":"r","ŗ":"r","ṟ":"r","ɍ":"r","ɽ":"r","ꝛ":"r","ꞧ":"r","ꞃ":"r","ⓢ":"s","s":"s","ß":"s","ś":"s","ṥ":"s","ŝ":"s","ṡ":"s","š":"s","ṧ":"s","ṣ":"s","ṩ":"s","ș":"s","ş":"s","ȿ":"s","ꞩ":"s","ꞅ":"s","ẛ":"s","ⓣ":"t","t":"t","ṫ":"t","ẗ":"t","ť":"t","ṭ":"t","ț":"t","ţ":"t","ṱ":"t","ṯ":"t","ŧ":"t","ƭ":"t","ʈ":"t","ⱦ":"t","ꞇ":"t","ꜩ":"tz","ⓤ":"u","u":"u","ù":"u","ú":"u","û":"u","ũ":"u","ṹ":"u","ū":"u","ṻ":"u","ŭ":"u","ü":"u","ǜ":"u","ǘ":"u","ǖ":"u","ǚ":"u","ủ":"u","ů":"u","ű":"u","ǔ":"u","ȕ":"u","ȗ":"u","ư":"u","ừ":"u","ứ":"u","ữ":"u","ử":"u","ự":"u","ụ":"u","ṳ":"u","ų":"u","ṷ":"u","ṵ":"u","ʉ":"u","ⓥ":"v","v":"v","ṽ":"v","ṿ":"v","ʋ":"v","ꝟ":"v","ʌ":"v","ꝡ":"vy","ⓦ":"w","w":"w","ẁ":"w","ẃ":"w","ŵ":"w","ẇ":"w","ẅ":"w","ẘ":"w","ẉ":"w","ⱳ":"w","ⓧ":"x","x":"x","ẋ":"x","ẍ":"x","ⓨ":"y","y":"y","ỳ":"y","ý":"y","ŷ":"y","ỹ":"y","ȳ":"y","ẏ":"y","ÿ":"y","ỷ":"y","ẙ":"y","ỵ":"y","ƴ":"y","ɏ":"y","ỿ":"y","ⓩ":"z","z":"z","ź":"z","ẑ":"z","ż":"z","ž":"z","ẓ":"z","ẕ":"z","ƶ":"z","ȥ":"z","ɀ":"z","ⱬ":"z","ꝣ":"z","Ά":"Α","Έ":"Ε","Ή":"Η","Ί":"Ι","Ϊ":"Ι","Ό":"Ο","Ύ":"Υ","Ϋ":"Υ","Ώ":"Ω","ά":"α","έ":"ε","ή":"η","ί":"ι","ϊ":"ι","ΐ":"ι","ό":"ο","ύ":"υ","ϋ":"υ","ΰ":"υ","ω":"ω","ς":"σ"};I=t(document),M=function(){var t=1;return function(){return t++}}(),O=D(Object,{bind:function(t){var e=this;return function(){t.apply(e,arguments)}},init:function(i){var n,s,r=".select2-results";this.opts=i=this.prepareOpts(i),this.id=i.id,i.element.data("select2")!==e&&null!==i.element.data("select2")&&i.element.data("select2").destroy(),this.container=this.createContainer(),this.liveRegion=t("",{role:"status","aria-live":"polite"}).addClass("select2-hidden-accessible").appendTo(document.body),this.containerId="s2id_"+(i.element.attr("id")||"autogen"+M()),this.containerEventName=this.containerId.replace(/([.])/g,"_").replace(/([;&,\-\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1"),this.container.attr("id",this.containerId),this.container.attr("title",i.element.attr("title")),this.body=t("body"),y(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.attr("style",i.element.attr("style")),this.container.css(k(i.containerCss,this.opts.element)),this.container.addClass(k(i.containerCssClass,this.opts.element)),this.elementTabIndex=this.opts.element.attr("tabindex"),this.opts.element.data("select2",this).attr("tabindex","-1").before(this.container).on("click.select2",g),this.container.data("select2",this),this.dropdown=this.container.find(".select2-drop"),y(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(k(i.dropdownCssClass,this.opts.element)),this.dropdown.data("select2",this),this.dropdown.on("click",g),this.results=n=this.container.find(r),this.search=s=this.container.find("input.select2-input"),this.queryCount=0,this.resultsPage=0,this.context=null,this.initContainer(),this.container.on("click",g),c(this.results),this.dropdown.on("mousemove-filtered",r,this.bind(this.highlightUnderEvent)),this.dropdown.on("touchstart touchmove touchend",r,this.bind(function(t){this._touchEvent=!0,this.highlightUnderEvent(t)})),this.dropdown.on("touchmove",r,this.bind(this.touchMoved)),this.dropdown.on("touchstart touchend",r,this.bind(this.clearTouchMoved)),this.dropdown.on("click",this.bind(function(t){this._touchEvent&&(this._touchEvent=!1,this.selectHighlighted())})),d(80,this.results),this.dropdown.on("scroll-debounced",r,this.bind(this.loadMoreIfNeeded)),t(this.container).on("change",".select2-input",function(t){t.stopPropagation()}),t(this.dropdown).on("change",".select2-input",function(t){t.stopPropagation()}),t.fn.mousewheel&&n.mousewheel(function(t,e,i,s){var o=n.scrollTop();s>0&&o-s<=0?(n.scrollTop(0),g(t)):s<0&&n.get(0).scrollHeight-n.scrollTop()+s<=n.height()&&(n.scrollTop(n.get(0).scrollHeight-n.height()),g(t))}),u(s),s.on("keyup-change input paste",this.bind(this.updateResults)),s.on("focus",function(){s.addClass("select2-focused")}),s.on("blur",function(){s.removeClass("select2-focused")}),this.dropdown.on("mouseup",r,this.bind(function(e){t(e.target).closest(".select2-result-selectable").length>0&&(this.highlightUnderEvent(e),this.selectHighlighted(e))})),this.dropdown.on("click mouseup mousedown touchstart touchend focusin",function(t){t.stopPropagation()}),this.nextSearchTerm=e,t.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource()),null!==i.maximumInputLength&&this.search.attr("maxlength",i.maximumInputLength);var a=i.element.prop("disabled");a===e&&(a=!1),this.enable(!a);var l=i.element.prop("readonly");l===e&&(l=!1),this.readonly(l),L=L||o(),this.autofocus=i.element.prop("autofocus"),i.element.prop("autofocus",!1),this.autofocus&&this.focus(),this.search.attr("placeholder",i.searchInputPlaceholder)},destroy:function(){var t=this.opts.element,i=t.data("select2"),n=this;this.close(),t.length&&t[0].detachEvent&&t.each(function(){this.detachEvent("onpropertychange",n._sync)}),this.propertyObserver&&(this.propertyObserver.disconnect(),this.propertyObserver=null),this._sync=null,i!==e&&(i.container.remove(),i.liveRegion.remove(),i.dropdown.remove(),t.removeClass("select2-offscreen").removeData("select2").off(".select2").prop("autofocus",this.autofocus||!1),this.elementTabIndex?t.attr({tabindex:this.elementTabIndex}):t.removeAttr("tabindex"),t.show()),A.call(this,"container","liveRegion","dropdown","results","search")},optionToData:function(t){return t.is("option")?{id:t.prop("value"),text:t.text(),element:t.get(),css:t.attr("class"),disabled:t.prop("disabled"),locked:r(t.attr("locked"),"locked")||r(t.data("locked"),!0)}:t.is("optgroup")?{text:t.attr("label"),children:[],element:t.get(),css:t.attr("class")}:void 0},prepareOpts:function(i){var n,s,o,l,u=this;if(n=i.element,"select"===n.get(0).tagName.toLowerCase()&&(this.select=s=i.element),s&&t.each(["id","multiple","ajax","query","createSearchChoice","initSelection","data","tags"],function(){if(this in i)throw new Error("Option '"+this+"' is not allowed for Select2 when attached to a ","
"," ","
    ","
","
"].join(""));return e},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.focusser.prop("disabled",!this.isInterfaceEnabled())},opening:function(){var i,n,s;this.opts.minimumResultsForSearch>=0&&this.showSearch(!0),this.parent.opening.apply(this,arguments),this.showSearchInput!==!1&&this.search.val(this.focusser.val()),this.opts.shouldFocusInput(this)&&(this.search.focus(),i=this.search.get(0),i.createTextRange?(n=i.createTextRange(),n.collapse(!1),n.select()):i.setSelectionRange&&(s=this.search.val().length,i.setSelectionRange(s,s))),""===this.search.val()&&this.nextSearchTerm!=e&&(this.search.val(this.nextSearchTerm),this.search.select()),this.focusser.prop("disabled",!0).val(""),this.updateResults(!0),this.opts.element.trigger(t.Event("select2-open"))},close:function(){this.opened()&&(this.parent.close.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},focus:function(){this.opened()?this.close():(this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus()},destroy:function(){t("label[for='"+this.focusser.attr("id")+"']").attr("for",this.opts.element.attr("id")),this.parent.destroy.apply(this,arguments),A.call(this,"selection","focusser")},initContainer:function(){var e,n,s=this.container,o=this.dropdown,r=M();this.opts.minimumResultsForSearch<0?this.showSearch(!1):this.showSearch(!0),this.selection=e=s.find(".select2-choice"),this.focusser=s.find(".select2-focusser"),e.find(".select2-chosen").attr("id","select2-chosen-"+r),this.focusser.attr("aria-labelledby","select2-chosen-"+r),this.results.attr("id","select2-results-"+r),this.search.attr("aria-owns","select2-results-"+r),this.focusser.attr("id","s2id_autogen"+r),n=t("label[for='"+this.opts.element.attr("id")+"']"),this.focusser.prev().text(n.text()).attr("for",this.focusser.attr("id"));var a=this.opts.element.attr("title");this.opts.element.attr("title",a||n.text()),this.focusser.attr("tabindex",this.elementTabIndex),this.search.attr("id",this.focusser.attr("id")+"_search"),this.search.prev().text(t("label[for='"+this.focusser.attr("id")+"']").text()).attr("for",this.search.attr("id")),this.search.on("keydown",this.bind(function(t){if(this.isInterfaceEnabled()&&229!=t.keyCode){if(t.which===N.PAGE_UP||t.which===N.PAGE_DOWN)return void g(t);switch(t.which){case N.UP:case N.DOWN:return this.moveHighlight(t.which===N.UP?-1:1),void g(t);case N.ENTER:return this.selectHighlighted(),void g(t);case N.TAB:return void this.selectHighlighted({noFocus:!0});case N.ESC:return this.cancel(t),void g(t)}}})),this.search.on("blur",this.bind(function(t){document.activeElement===this.body.get(0)&&window.setTimeout(this.bind(function(){this.opened()&&this.search.focus()}),0)})),this.focusser.on("keydown",this.bind(function(t){if(this.isInterfaceEnabled()&&t.which!==N.TAB&&!N.isControl(t)&&!N.isFunctionKey(t)&&t.which!==N.ESC){if(this.opts.openOnEnter===!1&&t.which===N.ENTER)return void g(t);if(t.which==N.DOWN||t.which==N.UP||t.which==N.ENTER&&this.opts.openOnEnter){if(t.altKey||t.ctrlKey||t.shiftKey||t.metaKey)return;return this.open(),void g(t)}return t.which==N.DELETE||t.which==N.BACKSPACE?(this.opts.allowClear&&this.clear(),void g(t)):void 0}})),u(this.focusser),this.focusser.on("keyup-change input",this.bind(function(t){if(this.opts.minimumResultsForSearch>=0){if(t.stopPropagation(),this.opened())return;this.open()}})),e.on("mousedown touchstart","abbr",this.bind(function(t){this.isInterfaceEnabled()&&(this.clear(),m(t),this.close(),this.selection.focus())})),e.on("mousedown touchstart",this.bind(function(n){i(e),this.container.hasClass("select2-container-active")||this.opts.element.trigger(t.Event("select2-focus")),this.opened()?this.close():this.isInterfaceEnabled()&&this.open(),g(n)})),o.on("mousedown touchstart",this.bind(function(){this.opts.shouldFocusInput(this)&&this.search.focus()})),e.on("focus",this.bind(function(t){g(t)})),this.focusser.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(t.Event("select2-focus")),this.container.addClass("select2-container-active")})).on("blur",this.bind(function(){this.opened()||(this.container.removeClass("select2-container-active"),this.opts.element.trigger(t.Event("select2-blur")))})),this.search.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(t.Event("select2-focus")),this.container.addClass("select2-container-active")})),this.initContainerWidth(),this.opts.element.addClass("select2-offscreen"),this.setPlaceholder()},clear:function(e){var i=this.selection.data("select2-data");if(i){var n=t.Event("select2-clearing");if(this.opts.element.trigger(n),n.isDefaultPrevented())return;var s=this.getPlaceholderOption();this.opts.element.val(s?s.val():""),this.selection.find(".select2-chosen").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),e!==!1&&(this.opts.element.trigger({type:"select2-removed",val:this.id(i),choice:i}),this.triggerChange({removed:i}))}},initSelection:function(){if(this.isPlaceholderOptionSelected())this.updateSelection(null),this.close(),this.setPlaceholder();else{var t=this;this.opts.initSelection.call(null,this.opts.element,function(i){i!==e&&null!==i&&(t.updateSelection(i),t.close(),t.setPlaceholder(),t.nextSearchTerm=t.opts.nextSearchTerm(i,t.search.val()))})}},isPlaceholderOptionSelected:function(){var t;return this.getPlaceholder()!==e&&((t=this.getPlaceholderOption())!==e&&t.prop("selected")||""===this.opts.element.val()||this.opts.element.val()===e||null===this.opts.element.val())},prepareOpts:function(){var e=this.parent.prepareOpts.apply(this,arguments),i=this;return"select"===e.element.get(0).tagName.toLowerCase()?e.initSelection=function(t,e){var n=t.find("option").filter(function(){return this.selected&&!this.disabled});e(i.optionToData(n))}:"data"in e&&(e.initSelection=e.initSelection||function(i,n){var s=i.val(),o=null;e.query({matcher:function(t,i,n){var a=r(s,e.id(n));return a&&(o=n),a},callback:t.isFunction(n)?function(){n(o)}:t.noop})}),e},getPlaceholder:function(){return this.select&&this.getPlaceholderOption()===e?e:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var t=this.getPlaceholder();if(this.isPlaceholderOptionSelected()&&t!==e){if(this.select&&this.getPlaceholderOption()===e)return;this.selection.find(".select2-chosen").html(this.opts.escapeMarkup(t)),this.selection.addClass("select2-default"),this.container.removeClass("select2-allowclear")}},postprocessResults:function(t,e,i){var n=0,s=this;if(this.findHighlightableChoices().each2(function(t,e){if(r(s.id(e.data("select2-data")),s.opts.element.val()))return n=t,!1}),i!==!1&&(e===!0&&n>=0?this.highlight(n):this.highlight(0)),e===!0){var o=this.opts.minimumResultsForSearch;o>=0&&this.showSearch(T(t.results)>=o)}},showSearch:function(e){this.showSearchInput!==e&&(this.showSearchInput=e,this.dropdown.find(".select2-search").toggleClass("select2-search-hidden",!e),this.dropdown.find(".select2-search").toggleClass("select2-offscreen",!e),t(this.dropdown,this.container).toggleClass("select2-with-searchbox",e))},onSelect:function(t,e){if(this.triggerSelect(t)){var i=this.opts.element.val(),n=this.data();this.opts.element.val(this.id(t)),this.updateSelection(t),this.opts.element.trigger({type:"select2-selected",val:this.id(t),choice:t}),this.nextSearchTerm=this.opts.nextSearchTerm(t,this.search.val()),this.close(),e&&e.noFocus||!this.opts.shouldFocusInput(this)||this.focusser.focus(),r(i,this.id(t))||this.triggerChange({added:t,removed:n})}},updateSelection:function(t){var i,n,s=this.selection.find(".select2-chosen");this.selection.data("select2-data",t),s.empty(),null!==t&&(i=this.opts.formatSelection(t,s,this.opts.escapeMarkup)),i!==e&&s.append(i),n=this.opts.formatSelectionCssClass(t,s),n!==e&&s.addClass(n),this.selection.removeClass("select2-default"),this.opts.allowClear&&this.getPlaceholder()!==e&&this.container.addClass("select2-allowclear")},val:function(){var t,i=!1,n=null,s=this,o=this.data();if(0===arguments.length)return this.opts.element.val();if(t=arguments[0],arguments.length>1&&(i=arguments[1]),this.select)this.select.val(t).find("option").filter(function(){return this.selected}).each2(function(t,e){return n=s.optionToData(e),!1}),this.updateSelection(n),this.setPlaceholder(),i&&this.triggerChange({added:n,removed:o});else{if(!t&&0!==t)return void this.clear(i);if(this.opts.initSelection===e)throw new Error("cannot call val() if initSelection() is not defined");this.opts.element.val(t),this.opts.initSelection(this.opts.element,function(t){s.opts.element.val(t?s.id(t):""),s.updateSelection(t),s.setPlaceholder(),i&&s.triggerChange({added:t,removed:o})})}},clearSearch:function(){this.search.val(""),this.focusser.val("")},data:function(t){var i,n=!1;return 0===arguments.length?(i=this.selection.data("select2-data"),i==e&&(i=null),i):(arguments.length>1&&(n=arguments[1]),void(t?(i=this.data(),this.opts.element.val(t?this.id(t):""),this.updateSelection(t),n&&this.triggerChange({added:t,removed:i})):this.clear(n)))}}),R=D(O,{createContainer:function(){var e=t(document.createElement("div")).attr({class:"select2-container select2-container-multi"}).html(["
    ","
  • "," "," ","
  • ","
","
","
    ","
","
"].join(""));return e},prepareOpts:function(){var e=this.parent.prepareOpts.apply(this,arguments),i=this;return"select"===e.element.get(0).tagName.toLowerCase()?e.initSelection=function(t,e){var n=[];t.find("option").filter(function(){return this.selected&&!this.disabled}).each2(function(t,e){n.push(i.optionToData(e))}),e(n)}:"data"in e&&(e.initSelection=e.initSelection||function(i,n){var s=a(i.val(),e.separator),o=[];e.query({matcher:function(i,n,a){var l=t.grep(s,function(t){return r(t,e.id(a))}).length;return l&&o.push(a),l},callback:t.isFunction(n)?function(){for(var t=[],i=0;i0||(this.selectChoice(null),this.clearPlaceholder(),this.container.hasClass("select2-container-active")||this.opts.element.trigger(t.Event("select2-focus")),this.open(),this.focusSearch(),e.preventDefault()))})),this.container.on("focus",i,this.bind(function(){this.isInterfaceEnabled()&&(this.container.hasClass("select2-container-active")||this.opts.element.trigger(t.Event("select2-focus")),this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder())})),this.initContainerWidth(),this.opts.element.addClass("select2-offscreen"),this.clearSearch()},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.search.prop("disabled",!this.isInterfaceEnabled())},initSelection:function(){if(""===this.opts.element.val()&&""===this.opts.element.text()&&(this.updateSelection([]),this.close(),this.clearSearch()),this.select||""!==this.opts.element.val()){var t=this;this.opts.initSelection.call(null,this.opts.element,function(i){i!==e&&null!==i&&(t.updateSelection(i),t.close(),t.clearSearch())})}},clearSearch:function(){var t=this.getPlaceholder(),i=this.getMaxSearchWidth();t!==e&&0===this.getVal().length&&this.search.hasClass("select2-focused")===!1?(this.search.val(t).addClass("select2-default"),this.search.width(i>0?i:this.container.css("width"))):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.clearPlaceholder(),this.resizeSearch(),this.parent.opening.apply(this,arguments),this.focusSearch(),""===this.search.val()&&this.nextSearchTerm!=e&&(this.search.val(this.nextSearchTerm),this.search.select()),this.updateResults(!0),this.opts.shouldFocusInput(this)&&this.search.focus(),this.opts.element.trigger(t.Event("select2-open"))},close:function(){this.opened()&&this.parent.close.apply(this,arguments)},focus:function(){this.close(),this.search.focus()},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(e){var i=[],n=[],o=this;t(e).each(function(){s(o.id(this),i)<0&&(i.push(o.id(this)),n.push(this))}),e=n,this.selection.find(".select2-search-choice").remove(),t(e).each(function(){o.addSelectedChoice(this)}),o.postprocessResults()},tokenize:function(){var t=this.search.val();t=this.opts.tokenizer.call(this,t,this.data(),this.bind(this.onSelect),this.opts),null!=t&&t!=e&&(this.search.val(t),t.length>0&&this.open())},onSelect:function(t,i){this.triggerSelect(t)&&""!==t.text&&(this.addSelectedChoice(t),this.opts.element.trigger({type:"selected",val:this.id(t),choice:t}),this.nextSearchTerm=this.opts.nextSearchTerm(t,this.search.val()),this.moveHighlight(1),!this.select&&this.opts.closeOnSelect||this.postprocessResults(t,!1,this.opts.closeOnSelect===!0),this.opts.closeOnSelect?(this.clearSearch(),this.updateResults(),this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.getMaximumSelectionSize()>0&&this.val().length>=this.getMaximumSelectionSize()?this.updateResults(!0):this.nextSearchTerm!=e&&(this.search.val(this.nextSearchTerm),this.updateResults(),this.search.select()),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:t}),i&&i.noFocus||this.focusSearch())},cancel:function(){this.close(),this.focusSearch()},addSelectedChoice:function(i){var n,s,o=!i.locked,r=t("
  • "),a=t("
  • "),l=o?r:a,u=this.id(i),c=this.getVal();n=this.opts.formatSelection(i,l.find("div"),this.opts.escapeMarkup),n!=e&&l.find("div").replaceWith("
    "+n+"
    "),s=this.opts.formatSelectionCssClass(i,l.find("div")),s!=e&&l.addClass(s),o&&l.find(".select2-search-choice-close").on("mousedown",g).on("click dblclick",this.bind(function(e){this.isInterfaceEnabled()&&(this.unselect(t(e.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),g(e),this.close(),this.focusSearch())})).on("focus",this.bind(function(){this.isInterfaceEnabled()&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))})),l.data("select2-data",i),l.insertBefore(this.searchContainer),c.push(u),this.setVal(c)},unselect:function(e){var i,n,o=this.getVal();if(e=e.closest(".select2-search-choice"),0===e.length)throw"Invalid argument: "+e+". Must be .select2-search-choice"; -if(i=e.data("select2-data")){var r=t.Event("select2-removing");if(r.val=this.id(i),r.choice=i,this.opts.element.trigger(r),r.isDefaultPrevented())return!1;for(;(n=s(this.id(i),o))>=0;)o.splice(n,1),this.setVal(o),this.select&&this.postprocessResults();return e.remove(),this.opts.element.trigger({type:"select2-removed",val:this.id(i),choice:i}),this.triggerChange({removed:i}),!0}},postprocessResults:function(t,e,i){var n=this.getVal(),o=this.results.find(".select2-result"),r=this.results.find(".select2-result-with-children"),a=this;o.each2(function(t,e){var i=a.id(e.data("select2-data"));s(i,n)>=0&&(e.addClass("select2-selected"),e.find(".select2-result-selectable").addClass("select2-selected"))}),r.each2(function(t,e){e.is(".select2-result-selectable")||0!==e.find(".select2-result-selectable:not(.select2-selected)").length||e.addClass("select2-selected")}),this.highlight()==-1&&i!==!1&&a.highlight(0),!this.opts.createSearchChoice&&!o.filter(".select2-result:not(.select2-selected)").length>0&&(!t||t&&!t.more&&0===this.results.find(".select2-no-results").length)&&S(a.opts.formatNoMatches,"formatNoMatches")&&this.results.append("
  • "+k(a.opts.formatNoMatches,a.opts.element,a.search.val())+"
  • ")},getMaxSearchWidth:function(){return this.selection.width()-l(this.search)},resizeSearch:function(){var t,e,i,n,s,o=l(this.search);t=v(this.search)+10,e=this.search.offset().left,i=this.selection.width(),n=this.selection.offset().left,s=i-(e-n)-o,s0&&i--,t.splice(n,1),n--);return{added:e,removed:t}},val:function(i,n){var s,o=this;if(0===arguments.length)return this.getVal();if(s=this.data(),s.length||(s=[]),!i&&0!==i)return this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),void(n&&this.triggerChange({added:this.data(),removed:s}));if(this.setVal(i),this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),n&&this.triggerChange(this.buildChangeDetails(s,this.data()));else{if(this.opts.initSelection===e)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(e){var i=t.map(e,o.id);o.setVal(i),o.updateSelection(e),o.clearSearch(),n&&o.triggerChange(o.buildChangeDetails(s,o.data()))})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var e=[],i=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){e.push(i.opts.id(t(this).data("select2-data")))}),this.setVal(e),this.triggerChange()},data:function(e,i){var n,s,o=this;return 0===arguments.length?this.selection.children(".select2-search-choice").map(function(){return t(this).data("select2-data")}).get():(s=this.data(),e||(e=[]),n=t.map(e,function(t){return o.opts.id(t)}),this.setVal(n),this.updateSelection(e),this.clearSearch(),i&&this.triggerChange(this.buildChangeDetails(s,this.data())),void 0)}}),t.fn.select2=function(){var i,n,o,r,a,l=Array.prototype.slice.call(arguments,0),u=["val","destroy","opened","open","close","focus","isFocused","container","dropdown","onSortStart","onSortEnd","enable","disable","readonly","positionDropdown","data","search"],c=["opened","isFocused","container","dropdown"],h=["val","data"],d={search:"externalSearch"};return this.each(function(){if(0===l.length||"object"==typeof l[0])i=0===l.length?{}:t.extend({},l[0]),i.element=t(this),"select"===i.element.get(0).tagName.toLowerCase()?a=i.element.prop("multiple"):(a=i.multiple||!1,"tags"in i&&(i.multiple=a=!0)),n=a?new window.Select2.class.multi:new window.Select2.class.single,n.init(i);else{if("string"!=typeof l[0])throw"Invalid arguments to select2 plugin: "+l;if(s(l[0],u)<0)throw"Unknown method: "+l[0];if(r=e,n=t(this).data("select2"),n===e)return;if(o=l[0],"container"===o?r=n.container:"dropdown"===o?r=n.dropdown:(d[o]&&(o=d[o]),r=n[o].apply(n,l.slice(1))),s(l[0],c)>=0||s(l[0],h)>=0&&1==l.length)return!1}}),r===e?this:r},t.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(t,e,i,n){var s=[];return b(t.text,i.term,s,n),s.join("")},formatSelection:function(t,i,n){return t?n(t.text):e},sortResults:function(t,e,i){return t},formatResultCssClass:function(t){return t.css},formatSelectionCssClass:function(t,i){return e},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(t){return t==e?null:t.id},matcher:function(t,e){return n(""+e).toUpperCase().indexOf(n(""+t).toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:E,escapeMarkup:w,blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(t){return t},adaptDropdownCssClass:function(t){return null},nextSearchTerm:function(t,i){return e},searchInputPlaceholder:"",createSearchChoicePosition:"top",shouldFocusInput:function(t){var e="ontouchstart"in window||navigator.msMaxTouchPoints>0;return!e||!(t.opts.minimumResultsForSearch<0)}},t.fn.select2.locales=[],t.fn.select2.locales.en={formatMatches:function(t){return 1===t?"One result is available, press enter to select it.":t+" results are available, use up and down arrow keys to navigate."},formatNoMatches:function(){return"No matches found"},formatAjaxError:function(t,e,i){return"Loading failed"},formatInputTooShort:function(t,e){var i=e-t.length;return"Please enter "+i+" or more character"+(1==i?"":"s")},formatInputTooLong:function(t,e){var i=t.length-e;return"Please delete "+i+" character"+(1==i?"":"s")},formatSelectionTooBig:function(t){return"You can only select "+t+" item"+(1==t?"":"s")},formatLoadMore:function(t){return"Loading more results…"},formatSearching:function(){return"Searching…"}},t.extend(t.fn.select2.defaults,t.fn.select2.locales.en),t.fn.select2.ajaxDefaults={transport:t.ajax,params:{type:"GET",cache:!1,dataType:"json"}},window.Select2={query:{ajax:_,local:x,tags:C},util:{debounce:h,markMatch:b,escapeMarkup:w,stripDiacritics:n},class:{abstract:O,single:P,multi:R}}}}(t)}).call(e,i(1))},,,,,,,,,,,,,function(t,e,i){var n,s;(function(o,r,a){n=[i(67)],s=function(t){var e="undefined"==typeof Galaxy?"/":Galaxy.root,i={storage:window.sessionStorage,onEnd:function(){sessionStorage.removeItem("activeGalaxyTour")},delay:150,orphan:!0},n=function(t){return o.each(t.steps,function(t){t.preclick&&(t.onShow=function(){o.each(t.preclick,function(t){r(t).click()})}),t.postclick&&(t.onNext=function(){o.each(t.postclick,function(t){r(t).click()})}),t.textinsert&&(t.onShown=function(){r(t.element).val(t.textinsert).trigger("change")})}),t},s=a.Model.extend({urlRoot:e+"api/tours"}),l=a.Collection.extend({url:e+"api/tours",model:s}),u=function(t){var s=e+"api/tours/"+t;r.getJSON(s,function(t){var e=n(t);sessionStorage.setItem("activeGalaxyTour",JSON.stringify(t));var s=new Tour(o.extend({steps:e.steps},i));s.init(),s.goTo(0),s.restart()})},c=a.View.extend({initialize:function(){var t=this;this.setElement("
    "),this.model=new l,this.model.fetch({success:function(){t.render()},error:function(){console.error("Failed to fetch tours.")}})},render:function(){var t=o.template(["

    Galaxy Tours

    ","

    This page presents a list of interactive tours available on this Galaxy server. ","Select any tour to get started (and remember, you can click 'End Tour' at any time).

    ",""].join(""));this.$el.html(t({tours:this.model.models})).on("click",".tourItem",function(t){t.preventDefault(),u(r(this).data("tour.id"))})}});return{ToursView:c,hooked_tour_from_data:n,tour_opts:i,giveTour:u}}.apply(e,n),!(void 0!==s&&(t.exports=s))}).call(e,i(2),i(1),i(3))},,function(t,e,i){var n,s;n=[i(2),i(3),i(6),i(5)],s=function(t,e,i,n){"use strict";var s="user",o=e.Model.extend(i.LoggableMixin).extend({_logNamespace:s,urlRoot:function(){return Galaxy.root+"api/users"},defaults:{id:null,username:"("+n("anonymous user")+")",email:"",total_disk_usage:0,nice_total_disk_usage:"",quota_percent:null,is_admin:!1},initialize:function(t){this.log("User.initialize:",t),this.on("loaded",function(t,e){this.log(this+" has loaded:",t,e)}),this.on("change",function(t,e){this.log(this+" has changed:",t,e.changes)})},isAnonymous:function(){return!this.get("email")},isAdmin:function(){return this.get("is_admin")},loadFromApi:function(t,i){t=t||o.CURRENT_ID_STR,i=i||{};var n=this,s=i.success;return i.success=function(t,e){n.trigger("loaded",t,e),s&&s(t,e)},t===o.CURRENT_ID_STR&&(i.url=this.urlRoot+"/"+o.CURRENT_ID_STR),e.Model.prototype.fetch.call(this,i)},clearSessionStorage:function(){for(var t in sessionStorage)0===t.indexOf("history:")?sessionStorage.removeItem(t):"history-panel"===t&&sessionStorage.removeItem(t)},toString:function(){var t=[this.get("username")];return this.get("id")&&(t.unshift(this.get("id")),t.push(this.get("email"))),"User("+t.join(":")+")"}});o.CURRENT_ID_STR="current",o.getCurrentUserFromApi=function(t){var e=new o;return e.loadFromApi(o.CURRENT_ID_STR,t),e};e.Collection.extend(i.LoggableMixin).extend({model:o,urlRoot:function(){return Galaxy.root+"api/users"}});return{User:o}}.apply(e,n),!(void 0!==s&&(t.exports=s))},function(t,e,i){var n,s,o;(function(r){!function(r){s=[i(1)],n=r,o="function"==typeof n?n.apply(e,s):n,!(void 0!==o&&(t.exports=o))}(function(t){"use_strict";function e(t,e){i(t).find(".tag-name").each(function(){i(this).click(function(){var t=i(this).text(),n=t.split(":");return e(n[0],n[1]),!0})})}var i=t;return t.fn.autocomplete_tagging=function(n){function s(t){i(t).mouseenter(function(){i(this).attr("src",l.delete_tag_img_rollover)}),i(t).mouseleave(function(){i(this).attr("src",l.delete_tag_img)}),i(t).click(function(){var e=i(this).parent(),n=e.find(".tag-name").eq(0),s=n.text(),o=s.split(":"),r=o[0],a=o[1],u=e.prev();e.remove(),delete l.tags[r];var d=l.get_toggle_link_text_fn(l.tags);return h.text(d),i.ajax({url:l.ajax_delete_tag_url,data:{tag_name:r},error:function(){l.tags[r]=a,u.hasClass("tag-button")?u.after(e):c.prepend(e),alert("Remove tag failed"),h.text(l.get_toggle_link_text_fn(l.tags)),t.mouseenter(function(){i(this).attr("src",l.delete_tag_img_rollover)}),t.mouseleave(function(){i(this).attr("src",l.delete_tag_img)})},success:function(){}}),!0})}function o(t){var e=i("").attr("src",l.delete_tag_img).addClass("delete-tag-img");s(e);var n=i("").text(t).addClass("tag-name");n.click(function(){var e=t.split(":");return l.tag_click_fn(e[0],e[1]),!0});var o=i("").addClass("tag-button");return o.append(n),l.editable&&o.append(e),o}var a={get_toggle_link_text_fn:function(t){var e="",i=r.size(t);return e=i>0?i+(i>1?" Tags":" Tag"):"Add tags"},tag_click_fn:function(t,e){},editable:!0,input_size:20,in_form:!1,tags:{},use_toggle_link:!0,item_id:"",add_tag_img:"",add_tag_img_rollover:"",delete_tag_img:"",ajax_autocomplete_tag_url:"",ajax_retag_url:"",ajax_delete_tag_url:"",ajax_add_tag_url:""},l=t.extend(a,n),u=i(this),c=u.find(".tag-area"),h=u.find(".toggle-link"),d=u.find(".tag-input"),p=u.find(".add-tag-button");h.click(function(){var t;return t=c.is(":hidden")?function(){var t=i(this).find(".tag-button").length;0===t&&c.click()}:function(){c.blur()},c.slideToggle("fast",t),i(this)}),l.editable&&d.hide(),d.keyup(function(t){if(27===t.keyCode)i(this).trigger("blur");else if(13===t.keyCode||188===t.keyCode||32===t.keyCode){var e=this.value;if(e.indexOf(": ",e.length-2)!==-1)return this.value=e.substring(0,e.length-1),!1;if(188!==t.keyCode&&32!==t.keyCode||(e=e.substring(0,e.length-1)),e=i.trim(e),e.length<2)return!1;this.value="";var n=o(e),s=c.children(".tag-button");if(0!==s.length){var r=s.slice(s.length-1);r.after(n)}else c.prepend(n);var a=e.split(":");l.tags[a[0]]=a[1];var u=l.get_toggle_link_text_fn(l.tags);h.text(u);var d=i(this);return i.ajax({url:l.ajax_add_tag_url,data:{new_tag:e},error:function(){n.remove(),delete l.tags[a[0]];var t=l.get_toggle_link_text_fn(l.tags);h.text(t),alert("Add tag failed")},success:function(){d.data("autocompleter").cacheFlush()}}),!1}});var f=function(t,e,i,n,s){var o=n.split(":");return 1===o.length?o[0]:o[1]},g={selectFirst:!1,formatItem:f,autoFill:!1,highlight:!1};d.autocomplete_verheul(l.ajax_autocomplete_tag_url,g),u.find(".delete-tag-img").each(function(){s(i(this))}),e(i(this),l.tag_click_fn),p.click(function(){return i(this).hide(),c.click(),!1}),l.editable&&(c.bind("blur",function(t){r.size(l.tags)>0&&(p.show(),d.hide(),c.removeClass("active-tag-area"))}),c.click(function(t){var e=i(this).hasClass("active-tag-area");if(i(t.target).hasClass("delete-tag-img")&&!e)return!1;if(i(t.target).hasClass("tag-name")&&!e)return!1;i(this).addClass("active-tag-area"),p.hide(),d.show(),d.focus();var n=function(t){var e=function(t,e){t.attr("id");e!==t&&(t.blur(),i(window).unbind("click.tagging_blur"),i(this).addClass("tooltip"))};e(c,i(t.target))};return i(window).bind("click.tagging_blur",n),!1})),l.use_toggle_link&&c.hide()},e})}).call(e,i(2))},,,function(t,e,i){var n,s;n=[],s=function(){function t(t,i){var n=void 0!==t.prototype?t.prototype:t;return void 0!==i&&(n._logNamespace=i),e.forEach(function(t){n[t]=function(){if(this.logger)return this.logger.emit?this.logger.emit(t,this._logNamespace,arguments):this.logger[t]?this.logger[t].apply(this.logger,arguments):void 0}}),t}var e=["log","debug","info","warn","error","metric"];return t}.apply(e,n),!(void 0!==s&&(t.exports=s))},,function(t,e){var i={__root:{"Analyze Data":!1,Workflow:!1,"Shared Data":!1,"Data Libraries":!1,Histories:!1,Workflows:!1,Visualizations:!1,Pages:!1,Visualization:!1,"New Track Browser":!1,"Saved Visualizations":!1,"Interactive Environments":!1,Admin:!1,Help:!1,Support:!1,Search:!1,"Mailing Lists":!1,Videos:!1,Wiki:!1,"How to Cite Galaxy":!1,"Interactive Tours":!1,User:!1,Login:!1,Register:!1,"Login or Register":!1,"Logged in as":!1,Preferences:!1,"Custom Builds":!1,Logout:!1,"Saved Histories":!1,"Saved Datasets":!1,"Saved Pages":!1,"Account and saved data":!1,"Account registration or login":!1,"Support, contact, and community":!1,"Administer this Galaxy":!1,"Visualize datasets":!1,"Access published resources":!1,"Chain tools into workflows":!1,"Analysis home view":!1,"History Lists":!1,"Histories Shared with Me":!1,"Current History":!1,"Create New":!1,"Copy History":!1,"Share or Publish":!1,"Show Structure":!1,"Extract Workflow":!1,"Delete Permanently":!1,"Dataset Actions":!1,"Copy Datasets":!1,"Dataset Security":!1,"Resume Paused Jobs":!1,"Collapse Expanded Datasets":!1,"Unhide Hidden Datasets":!1,"Delete Hidden Datasets":!1,"Purge Deleted Datasets":!1,Downloads:!1,"Export Tool Citations":!1,"Export History to File":!1,"Other Actions":!1,"Import from File":!1,Webhooks:!1,"This history is empty":!1,"No matching datasets found":!1,"An error occurred while getting updates from the server":!1,"Please contact a Galaxy administrator if the problem persists":!1,"search datasets":!1,"You are currently viewing a deleted history!":!1,"You are over your disk quota":!1,"Tool execution is on hold until your disk usage drops below your allocated quota":!1,All:!1,None:!1,"For all selected":!1,"Edit history tags":!1,"Edit history Annotation":!1,"Click to rename history":!1,"Operations on multiple datasets":!1,"Hide datasets":!1,"Unhide datasets":!1,"Delete datasets":!1,"Undelete datasets":!1,"Permanently delete datasets":!1,"This will permanently remove the data in your datasets. Are you sure?":!1,Dataset:!1,Annotation:!1,"This history is empty. Click 'Get Data' on the left tool menu to start":!1,"You must be logged in to create histories":!1,"Unable to purge dataset":!1,"Cannot display datasets removed from disk":!1,"This dataset must finish uploading before it can be viewed":!1,"This dataset is not yet viewable":!1,"View data":!1,Download:!1,"Download dataset":!1,"Additional files":!1,"View details":!1,"This is a new dataset and not all of its data are available yet":!1,"You do not have permission to view this dataset":!1,"The job creating this dataset was cancelled before completion":!1,"This job is waiting to run":!1,"This dataset is currently uploading":!1,"Metadata is being auto-detected":!1,"This job is currently running":!1,'This job is paused. Use the "Resume Paused Jobs" in the history menu to resume':!1,"An error occurred with this dataset":!1,"No data":!1,"An error occurred setting the metadata for this dataset":!1,"There was an error getting the data for this dataset":!1,"This dataset has been deleted and removed from disk":!1,"This dataset has been deleted":!1,"This dataset has been hidden":!1,format:!1,database:!1,"Edit attributes":!1,"Cannot edit attributes of datasets removed from disk":!1,"Undelete dataset to edit attributes":!1,"This dataset must finish uploading before it can be edited":!1,"This dataset is not yet editable":!1,Delete:!1,"Dataset is already deleted":!1,"View or report this error":!1,"Run this job again":!1,Visualize:!1,"Visualize in":!1,"Undelete it":!1,"Permanently remove it from disk":!1,"Unhide it":!1,"You may be able to":!1,"set it manually or retry auto-detection":!1,"Edit dataset tags":!1,"Edit dataset annotation":!1,"Search Tool Shed":!1,"Monitor installing repositories":!1,"Manage installed tools":!1,"Reset metadata":!1,"Download local tool":!1,"Tool lineage":!1,"Reload a tool's configuration":!1,"Review tool migration stages":!1,"View Tool Error Logs":!1,"Manage Display Whitelist":!1,"Manage Tool Dependencies":!1,Users:!1,Groups:!1,"API keys":!1,"Impersonate a user":!1,Data:!1,Quotas:!1,Roles:!1,"Local data":!1,"Form Definitions":!1,Tags:!1,"Edit annotation":!1},__ja:{"This history is empty":"ヒストリーは空です","No matching datasets found":"一致するデータセットが見つかりませんでした","Search datasets":"データセットを検索する","You are currently viewing a deleted history!":"消去したヒストリーをみています。","You are over your disk quota":"あなたはディスククォータを超えている",All:"一式",None:"なし","For all selected":"各項目を","Click to rename history":"ヒストリーの名前を変更するにはクリック","Operations on multiple datasets":"複数のデータセットに対する操作","Permanently delete datasets":"永久にデータセットを削除","This will permanently remove the data in your datasets. Are you sure?":"これは永久にあなたのデータセット内のデータを削除します。本当に?",Dataset:"データセット","This history is empty. Click 'Get Data' on the left tool menu to start":"ヒストリーは空です。解析をはじめるには、左パネルの 'データ取得' をクリック","You must be logged in to create histories":"ヒストリーを作成するためにはログインする必要があります","View data":"データを表示",Download:"ダウンロード","Download dataset":"データセットをダウンロード","View details":"細部を表示","This job is waiting to run":"ジョブは実行待ちです","This job is currently running":"ジョブは実行中です","An error occurred with this dataset":"このジョブの実行中に発生したエラー","No data":"データ無し","This dataset has been deleted and removed from disk":"このデータセットは、永続的にディスクから削除されました","This dataset has been deleted":"このデータセットは削除されました","This dataset has been hidden":"このデータセットは、非表示にされた",format:"フォーマット",database:"データベース","Edit attributes":"変数を編集する",Delete:"削除する","View or report this error":"このエラーを届け出る","Run this job again":"もう一度このジョブを実行する",Visualize:"可視化する","Undelete it":"復元する","Permanently remove it from disk":"永久にディスクから削除","Unhide it":"非表示解除する"},__fr:{"Analyze Data":"Analyse de données",Workflow:"Workflow","Shared Data":"Données partagées","Data Libraries":"Bibliothèque de données",Histories:"Historiques",Workflows:"Workflows",Visualizations:"Visualisations",Pages:"Pages",Visualization:"Visualisation","New Track Browser":"Nouveau Navigateur de Tracks/Pistes","Saved Visualizations":"Visualisations sauvegardés","Interactive Environments":"Environnements interactifs",Admin:"Admin",Help:"Aide",Support:"Assistance",Search:"Recherche","Mailing Lists":"Liste de diffusion",Videos:"Vidéos",Wiki:"Documentations","How to Cite Galaxy":"Comment citer Galaxy","Interactive Tours":"Guides interactifs",User:"Utilisateur",Login:"Authentification",Register:"Enregistrement","Login or Register":"Authentification et Enregistrement","Logged in as":"Authentifié en tant que",Preferences:"Préférences","Custom Builds":"Mes génomes Builds de référence",Logout:"Déconnexion","Saved Histories":"Historiques sauvegardés","Saved Datasets":"Jeux de données sauvegardés","Saved Pages":"Pages sauvegardées","Account and saved data":"Compte et données sauvegardées","Account registration or login":"Enregistrement ou authentification","Support, contact, and community":"Support,contact et communauté","Administer this Galaxy":"Outils Admin","Visualize datasets":"Visualiser les jeux de données","Access published resources":"Accéder aux données partagées","Chain tools into workflows":"Relier outils dans un workflow","Analysis home view":"Accueil analyse de donnée","History Lists":"Tableaux des historiques","Histories Shared with Me":"Historiques partagés avec moi","Current History":"Cet Historique","Create New":"Créer un nouveau","Copy History":"Copier l'Historique","Share or Publish":"Partager et publier","Show Structure":"Montrer la structure","Extract Workflow":"Extraire un Workflow","Delete Permanently":"Supprimer définitivement","Dataset Actions":"Actions sur les jeux de données","Copy Datasets":"Copier des jeux de données","Dataset Security":"Permissions/Sécurité","Resume Paused Jobs":"Reprendre les processus en pause","Collapse Expanded Datasets":"Réduire les données étendues","Unhide Hidden Datasets":"Afficher les données cachées","Delete Hidden Datasets":"Supprimer les données cachées","Purge Deleted Datasets":"Purger les données supprimées",Downloads:"Télécharger","Export Tool Citations":"Exporter les citations des outils","Export History to File":"Exporter l'Historique dans un fichier","Other Actions":"Autres actions","Import from File":"Importer depuis un fichier",Webhooks:"Webhooks","This history is empty":"Cet historique est vide","No matching datasets found":"Aucunes données correspondantes n'a été trouvées","An error occurred while getting updates from the server":"Une erreur s'est produite lors de la réception des données depuis le serveur","Please contact a Galaxy administrator if the problem persists":"Veuillez contacter un administrateur de l'instance Galaxy si ce problème persiste","search datasets":"Rechercher des données","You are currently viewing a deleted history!":"Vous consultez actuellement un historique supprimé!","You are over your disk quota":"Vous avez dépassé votre quota d'espace disque","Tool execution is on hold until your disk usage drops below your allocated quota":"L'exécution de l'outil est en attente tant que votre utilisation d'espace disque dépasse le quota attribué",All:"Tout",None:"Aucun","For all selected":"Pour toute la sélection","Edit history tags":"Editer les mots-clés de l'historique","Edit history Annotation":"Editer l'annotation de l'historique","Click to rename history":"Cliquer pour renommer l'historique","Operations on multiple datasets":"Opérer sur plusieurs jeux de données en même temps","Hide datasets":"Cacher les jeux de données","Unhide datasets":"Afficher les jeux de données cachés","Delete datasets":"Supprimer les jeux de données","Undelete datasets":"Restaurer les jeux de données supprimés","Permanently delete datasets":"Supprimer définitivement les jeux de données","This will permanently remove the data in your datasets. Are you sure?":"Cela supprimera de manière permanente les données de votre historique. Êtes-vous certain?",Dataset:"Jeu de données",Annotation:"Annotation","This history is empty. Click 'Get Data' on the left tool menu to start":"Cet historique est vide. Cliquer sur 'Get Data' au niveau du menu d'outils à gauche pour démarrer","You must be logged in to create histories":"Vous devez être connecté pour créer un historique","load your own data":"Charger vos propres données","get data from an external source":"Charger des données depuis une source externe","Include Deleted Datasets":"Inclure les jeux de données supprimés","Include Hidden Datasets":"Inclure les jeux de données cachés","Unable to purge dataset":"Impossible de purger le jeu de données","Cannot display datasets removed from disk":"Impossible de visualiser les jeux de données supprimés du disque","This dataset must finish uploading before it can be viewed":"Le jeu de données doit être totalement téléversé avant de pouvoir être visualiser","This dataset is not yet viewable":"Ce jeu de données n'est pas visualisable","View data":"Voir les données",Download:"Télécharger","Download dataset":"Télécharger le jeu de données","Additional files":"Fichiers additionnels","View details":"Voir les détails","This is a new dataset and not all of its data are available yet":"Il s'agit d'un nouveau jeu de données et seule une partie des données est accessible pour le moment","You do not have permission to view this dataset":"Vous n'avez pas la permission de voir ce jeu de données","The job creating this dataset was cancelled before completion":"Le processus à l'origine de ce jeu de données a été annulé prématurément","This job is waiting to run":"Ce calcul est en attente de traitement","This dataset is currently uploading":"Ce jeu de données est en cours de téléversement","Metadata is being auto-detected":"Les métadonnées sont auto-détectées","This job is currently running":"Le traitement est en cours",'This job is paused. Use the "Resume Paused Jobs" in the history menu to resume':'Ce traitement est en pause. Utilisez le "Relancer les traitements en pause" dans le menu d\'historique pour le relancer',"An error occurred with this dataset":"Un erreur est survenue avec ce jeu de données","No data":"Aucune donnée","An error occurred setting the metadata for this dataset":"Une erreur est survenue pendant la récupération des métadonnées de ce jeu de données","There was an error getting the data for this dataset":"Il est survenu une erreur durant la récupération du contenu de ce jeu de données","This dataset has been deleted and removed from disk":"Ce jeu de données a été supprimé et effacé du disque","This dataset has been deleted":"Ce jeu de données a été supprimé","This dataset has been hidden":"Ce jeu de données a été caché",format:"format",database:"génome de référence","Edit attributes":"Editer les attributs","Cannot edit attributes of datasets removed from disk":"Impossible d'éditer les attributs de jeux de données effacés du disque","Undelete dataset to edit attributes":"Restaurer le jeu de données pour en éditer les attributs","This dataset must finish uploading before it can be edited":"Ce jeu de données doit être entièrement téléversé avant toute modification","This dataset is not yet editable":"Ce jeu de données n'est pas encore éditable",Delete:"Supprimer","Dataset is already deleted":"Le jeu de données est déjà supprimé","View or report this error":"Voir ou remonter cette erreur","Run this job again":"Exécuter ce traitement à nouveau",Visualize:"Visualiser","Visualize in":"Visualiser via","Undelete it":"Restaurer","Permanently remove it from disk":"Supprimer définitivement du disque","Unhide it":"Rendre visible","You may be able to":"Vous devriez être en mesure de","set it manually or retry auto-detection":"Traitez le manuellement ou retenter la détection automatique","Edit dataset tags":"Editer les mots-clés du jeu de données","Edit dataset annotation":"Editer les annotations du jeu de données",Tags:"Mots-clés","Edit annotation":"Editer les annotations"},__zh:{"This history is empty":"历史已空","No matching datasets found":"未找到匹配的数据集","Search datasets":"搜索数据集","You are currently viewing a deleted history!":"正在查看已删除的历史","You are over your disk quota":"您已超过磁盘配额",All:"皆",None:"一个也没有","For all selected":"为每个选定","Click to rename history":"单击要重命名的历史","Operations on multiple datasets":"编辑多个数据集","Permanently delete datasets":"永久删除数据集","This will permanently remove the data in your datasets. Are you sure?":"这将永久在你的数据集删除数据。你确定?",Dataset:"数据集","This history is empty. Click 'Get Data' on the left tool menu to start":"历史已空,请单击左边窗格中‘获取数据’","You must be logged in to create histories":"你必须登录后才能创建历史","View data":"数据",Download:"下载","Download dataset":"下载数据集","View details":"查看详情","This job is waiting to run":"等待运行的进程","This job is currently running":"正在运行的进程","An error occurred with this dataset":"进程运行时出错","No data":"没有数据","This dataset has been deleted":"此数据集已被删除","This dataset has been hidden":"此数据集已隐藏",format:"格式",database:"数据库","Edit attributes":"编辑属性",Delete:"删除","View or report this error":"报告错误","Run this job again":"重新运行",Visualize:"图形","Undelete it":"反删除","Permanently remove it from disk":"从磁盘中永久删除","Unhide it":"取消隐藏"}};i.init=function(t){t||(t=window._i18n&&window._i18n.locale?window._i18n.locale:"root"),Object.assign(this,this.__root,this["__"+t])},i.init(),t.exports=i},,,,function(t,e,i){var n,s;(function(o,r){n=[i(8)],s=function(t){var e=o.View.extend({initialize:function(){this.modal=null},makeModalIframe:function(i){var n=window.Galaxy.config.communication_server_host,s=window.Galaxy.config.communication_server_port,o=escape(window.Galaxy.user.attributes.username),a=escape(window.Galaxy.config.persistent_communication_rooms),l="?username="+o+"&persistent_communication_rooms="+a,u=n+":"+s+l,c=null,h=null,d='',p='',f=350,g=600,m="ui-modal chat-modal";return r(".chat-modal").length>0&&r(".chat-modal").remove(),e.modal=new t.View({body:d,height:f,width:g,closing_events:!0,title_separator:!1,cls:m}),e.modal.show(),c=r(".chat-modal .modal-header"),h=r(".chat-modal .modal-body"),c.addClass("modal-header-body"),h.addClass("modal-header-body"),c.find("h4").remove(),c.removeAttr("min-height padding border"),c.append(p),r(".close-modal").click(function(t){r(".chat-modal").css("display","none")}),r(".expand-compress-modal").click(function(t){r(".expand-compress-modal").hasClass("fa-expand")?(r(".chat-modal .modal-dialog").width("1000px"),r(".chat-modal .modal-body").height("575px"),r(".expand-compress-modal").removeClass("fa-expand").addClass("fa-compress"),r(".expand-compress-modal").attr("title","Minimize"),r(".expand-compress-modal").css("margin-left","96.2%")):(r(".chat-modal .modal-dialog").width(g+"px"),r(".chat-modal .modal-body").height(f+"px"),r(".expand-compress-modal").removeClass("fa-compress").addClass("fa-expand"),r(".expand-compress-modal").attr("title","Maximize"),r(".expand-compress-modal").css("margin-left","93.2%"))}),this},render:function(){var t=this,e={};return e={id:"show-chat-online",icon:"fa-comment-o",tooltip:"Chat online",visible:!1,onclick:t.makeModalIframe}}});return{GenericNavView:e}}.apply(e,n),!(void 0!==s&&(t.exports=s))}).call(e,i(3),i(1))},function(t,e,i){var n,s;(function(o,r){n=[i(4),i(99),i(100),i(138)],s=function(t,e,i,n){var s=o.View.extend({initialize:function(t){var s=this;this.options=t,this.setElement(this._template()),this.$navbarBrandLink=this.$(".navbar-brand-link"),this.$navbarBrandImage=this.$(".navbar-brand-image"),this.$navbarBrandTitle=this.$(".navbar-brand-title"),this.$navbarTabs=this.$(".navbar-tabs"), -this.$quoteMeter=this.$(".quota-meter-container"),this.collection=new e.Collection,this.collection.on("add",function(t){s.$navbarTabs.append(new e.Tab({model:t}).render().$el)}).on("reset",function(){s.$navbarTabs.empty()}).on("dispatch",function(t){s.collection.each(function(e){t(e)})}).fetch(this.options),Galaxy.frame=this.frame=new i({collection:this.collection}),Galaxy.quotaMeter=this.quotaMeter=new n.UserQuotaMeter({model:Galaxy.user,el:this.$quoteMeter}),r(window).on("click",function(t){var e=r(t.target).closest("a[download]");1==e.length&&(0===r("iframe[id=download]").length&&r("body").append(r("',p='',f=350,g=600,m="ui-modal chat-modal";return r(".chat-modal").length>0&&r(".chat-modal").remove(),e.modal=new t.View({body:d,height:f,width:g,closing_events:!0,title_separator:!1,cls:m}),e.modal.show(),c=r(".chat-modal .modal-header"),h=r(".chat-modal .modal-body"),c.addClass("modal-header-body"),h.addClass("modal-header-body"),c.find("h4").remove(),c.removeAttr("min-height padding border"),c.append(p),r(".close-modal").click(function(t){r(".chat-modal").css("display","none")}),r(".expand-compress-modal").click(function(t){r(".expand-compress-modal").hasClass("fa-expand")?(r(".chat-modal .modal-dialog").width("1000px"),r(".chat-modal .modal-body").height("575px"),r(".expand-compress-modal").removeClass("fa-expand").addClass("fa-compress"),r(".expand-compress-modal").attr("title","Minimize"),r(".expand-compress-modal").css("margin-left","96.2%")):(r(".chat-modal .modal-dialog").width(g+"px"),r(".chat-modal .modal-body").height(f+"px"),r(".expand-compress-modal").removeClass("fa-compress").addClass("fa-expand"),r(".expand-compress-modal").attr("title","Maximize"),r(".expand-compress-modal").css("margin-left","93.2%"))}),this},render:function(){var t=this,e={};return e={id:"show-chat-online",icon:"fa-comment-o",tooltip:"Chat online",visible:!1,onclick:t.makeModalIframe}}});return{GenericNavView:e}}.apply(e,n),!(void 0!==s&&(t.exports=s))}).call(e,i(3),i(1))},function(t,e,i){var n,s;(function(o,r){n=[i(4),i(100),i(101),i(139)],s=function(t,e,i,n){var s=o.View.extend({initialize:function(t){var s=this;this.options=t,this.setElement(this._template()),this.$navbarBrandLink=this.$(".navbar-brand-link"),this.$navbarBrandImage=this.$(".navbar-brand-image"),this.$navbarBrandTitle=this.$(".navbar-brand-title"),this.$navbarTabs=this.$(".navbar-tabs"), +this.$quoteMeter=this.$(".quota-meter-container"),this.collection=new e.Collection,this.collection.on("add",function(t){s.$navbarTabs.append(new e.Tab({model:t}).render().$el)}).on("reset",function(){s.$navbarTabs.empty()}).on("dispatch",function(t){s.collection.each(function(e){t(e)})}).fetch(this.options),Galaxy.frame=this.frame=new i({collection:this.collection}),Galaxy.quotaMeter=this.quotaMeter=new n.UserQuotaMeter({model:Galaxy.user,el:this.$quoteMeter}),r(window).on("click",function(t){var e=r(t.target).closest("a[download]");1==e.length&&(0===r("iframe[id=download]").length&&r("body").append(r("
    \")\n\t });\n\t modal.show({ backdrop: true });\n\t }\n\t\n\t // ============================================================================\n\t return {\n\t Modal: Modal,\n\t hide_modal: hide_modal,\n\t show_modal: show_modal,\n\t show_message: show_message,\n\t show_in_overlay: show_in_overlay\n\t };\n\t}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\n/***/ },\n/* 67 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(jQuery) {/* ========================================================================\n\t * bootstrap-tour - v0.10.2\n\t * http://bootstraptour.com\n\t * ========================================================================\n\t * Copyright 2012-2015 Ulrich Sossou\n\t *\n\t * ========================================================================\n\t * Licensed under the MIT License (the \"License\");\n\t * you may not use this file except in compliance with the License.\n\t * You may obtain a copy of the License at\n\t *\n\t * https://opensource.org/licenses/MIT\n\t *\n\t * Unless required by applicable law or agreed to in writing, software\n\t * distributed under the License is distributed on an \"AS IS\" BASIS,\n\t * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n\t * See the License for the specific language governing permissions and\n\t * limitations under the License.\n\t * ========================================================================\n\t */\n\t\n\t(function ($, window) {\n\t var Tour, document;\n\t document = window.document;\n\t Tour = function () {\n\t function Tour(options) {\n\t var storage;\n\t try {\n\t storage = window.localStorage;\n\t } catch (_error) {\n\t storage = false;\n\t }\n\t this._options = $.extend({\n\t name: 'tour',\n\t steps: [],\n\t container: 'body',\n\t autoscroll: true,\n\t keyboard: true,\n\t storage: storage,\n\t debug: false,\n\t backdrop: false,\n\t backdropContainer: 'body',\n\t backdropPadding: 0,\n\t redirect: true,\n\t orphan: false,\n\t duration: false,\n\t delay: false,\n\t basePath: '',\n\t template: '

    ',\n\t afterSetState: function (key, value) {},\n\t afterGetState: function (key, value) {},\n\t afterRemoveState: function (key) {},\n\t onStart: function (tour) {},\n\t onEnd: function (tour) {},\n\t onShow: function (tour) {},\n\t onShown: function (tour) {},\n\t onHide: function (tour) {},\n\t onHidden: function (tour) {},\n\t onNext: function (tour) {},\n\t onPrev: function (tour) {},\n\t onPause: function (tour, duration) {},\n\t onResume: function (tour, duration) {},\n\t onRedirectError: function (tour) {}\n\t }, options);\n\t this._force = false;\n\t this._inited = false;\n\t this._current = null;\n\t this.backdrop = {\n\t overlay: null,\n\t $element: null,\n\t $background: null,\n\t backgroundShown: false,\n\t overlayElementShown: false\n\t };\n\t this;\n\t }\n\t\n\t Tour.prototype.addSteps = function (steps) {\n\t var step, _i, _len;\n\t for (_i = 0, _len = steps.length; _i < _len; _i++) {\n\t step = steps[_i];\n\t this.addStep(step);\n\t }\n\t return this;\n\t };\n\t\n\t Tour.prototype.addStep = function (step) {\n\t this._options.steps.push(step);\n\t return this;\n\t };\n\t\n\t Tour.prototype.getStep = function (i) {\n\t if (this._options.steps[i] != null) {\n\t return $.extend({\n\t id: \"step-\" + i,\n\t path: '',\n\t host: '',\n\t placement: 'right',\n\t title: '',\n\t content: '

    ',\n\t next: i === this._options.steps.length - 1 ? -1 : i + 1,\n\t prev: i - 1,\n\t animation: true,\n\t container: this._options.container,\n\t autoscroll: this._options.autoscroll,\n\t backdrop: this._options.backdrop,\n\t backdropContainer: this._options.backdropContainer,\n\t backdropPadding: this._options.backdropPadding,\n\t redirect: this._options.redirect,\n\t reflexElement: this._options.steps[i].element,\n\t orphan: this._options.orphan,\n\t duration: this._options.duration,\n\t delay: this._options.delay,\n\t template: this._options.template,\n\t onShow: this._options.onShow,\n\t onShown: this._options.onShown,\n\t onHide: this._options.onHide,\n\t onHidden: this._options.onHidden,\n\t onNext: this._options.onNext,\n\t onPrev: this._options.onPrev,\n\t onPause: this._options.onPause,\n\t onResume: this._options.onResume,\n\t onRedirectError: this._options.onRedirectError\n\t }, this._options.steps[i]);\n\t }\n\t };\n\t\n\t Tour.prototype.init = function (force) {\n\t this._force = force;\n\t if (this.ended()) {\n\t this._debug('Tour ended, init prevented.');\n\t return this;\n\t }\n\t this.setCurrentStep();\n\t this._initMouseNavigation();\n\t this._initKeyboardNavigation();\n\t this._onResize(function (_this) {\n\t return function () {\n\t return _this.showStep(_this._current);\n\t };\n\t }(this));\n\t if (this._current !== null) {\n\t this.showStep(this._current);\n\t }\n\t this._inited = true;\n\t return this;\n\t };\n\t\n\t Tour.prototype.start = function (force) {\n\t var promise;\n\t if (force == null) {\n\t force = false;\n\t }\n\t if (!this._inited) {\n\t this.init(force);\n\t }\n\t if (this._current === null) {\n\t promise = this._makePromise(this._options.onStart != null ? this._options.onStart(this) : void 0);\n\t this._callOnPromiseDone(promise, this.showStep, 0);\n\t }\n\t return this;\n\t };\n\t\n\t Tour.prototype.next = function () {\n\t var promise;\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, this._showNextStep);\n\t };\n\t\n\t Tour.prototype.prev = function () {\n\t var promise;\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, this._showPrevStep);\n\t };\n\t\n\t Tour.prototype.goTo = function (i) {\n\t var promise;\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, this.showStep, i);\n\t };\n\t\n\t Tour.prototype.end = function () {\n\t var endHelper, promise;\n\t endHelper = function (_this) {\n\t return function (e) {\n\t $(document).off(\"click.tour-\" + _this._options.name);\n\t $(document).off(\"keyup.tour-\" + _this._options.name);\n\t $(window).off(\"resize.tour-\" + _this._options.name);\n\t _this._setState('end', 'yes');\n\t _this._inited = false;\n\t _this._force = false;\n\t _this._clearTimer();\n\t if (_this._options.onEnd != null) {\n\t return _this._options.onEnd(_this);\n\t }\n\t };\n\t }(this);\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, endHelper);\n\t };\n\t\n\t Tour.prototype.ended = function () {\n\t return !this._force && !!this._getState('end');\n\t };\n\t\n\t Tour.prototype.restart = function () {\n\t this._removeState('current_step');\n\t this._removeState('end');\n\t this._removeState('redirect_to');\n\t return this.start();\n\t };\n\t\n\t Tour.prototype.pause = function () {\n\t var step;\n\t step = this.getStep(this._current);\n\t if (!(step && step.duration)) {\n\t return this;\n\t }\n\t this._paused = true;\n\t this._duration -= new Date().getTime() - this._start;\n\t window.clearTimeout(this._timer);\n\t this._debug(\"Paused/Stopped step \" + (this._current + 1) + \" timer (\" + this._duration + \" remaining).\");\n\t if (step.onPause != null) {\n\t return step.onPause(this, this._duration);\n\t }\n\t };\n\t\n\t Tour.prototype.resume = function () {\n\t var step;\n\t step = this.getStep(this._current);\n\t if (!(step && step.duration)) {\n\t return this;\n\t }\n\t this._paused = false;\n\t this._start = new Date().getTime();\n\t this._duration = this._duration || step.duration;\n\t this._timer = window.setTimeout(function (_this) {\n\t return function () {\n\t if (_this._isLast()) {\n\t return _this.next();\n\t } else {\n\t return _this.end();\n\t }\n\t };\n\t }(this), this._duration);\n\t this._debug(\"Started step \" + (this._current + 1) + \" timer with duration \" + this._duration);\n\t if (step.onResume != null && this._duration !== step.duration) {\n\t return step.onResume(this, this._duration);\n\t }\n\t };\n\t\n\t Tour.prototype.hideStep = function (i) {\n\t var hideStepHelper, promise, step;\n\t step = this.getStep(i);\n\t if (!step) {\n\t return;\n\t }\n\t this._clearTimer();\n\t promise = this._makePromise(step.onHide != null ? step.onHide(this, i) : void 0);\n\t hideStepHelper = function (_this) {\n\t return function (e) {\n\t var $element;\n\t $element = $(step.element);\n\t if (!($element.data('bs.popover') || $element.data('popover'))) {\n\t $element = $('body');\n\t }\n\t $element.popover('destroy').removeClass(\"tour-\" + _this._options.name + \"-element tour-\" + _this._options.name + \"-\" + i + \"-element\");\n\t $element.removeData('bs.popover');\n\t if (step.reflex) {\n\t $(step.reflexElement).removeClass('tour-step-element-reflex').off(\"\" + _this._reflexEvent(step.reflex) + \".tour-\" + _this._options.name);\n\t }\n\t if (step.backdrop) {\n\t _this._hideBackdrop();\n\t }\n\t if (step.onHidden != null) {\n\t return step.onHidden(_this);\n\t }\n\t };\n\t }(this);\n\t this._callOnPromiseDone(promise, hideStepHelper);\n\t return promise;\n\t };\n\t\n\t Tour.prototype.showStep = function (i) {\n\t var promise, showStepHelper, skipToPrevious, step;\n\t if (this.ended()) {\n\t this._debug('Tour ended, showStep prevented.');\n\t return this;\n\t }\n\t step = this.getStep(i);\n\t if (!step) {\n\t return;\n\t }\n\t skipToPrevious = i < this._current;\n\t promise = this._makePromise(step.onShow != null ? step.onShow(this, i) : void 0);\n\t showStepHelper = function (_this) {\n\t return function (e) {\n\t var path, showPopoverAndOverlay;\n\t _this.setCurrentStep(i);\n\t path = function () {\n\t switch ({}.toString.call(step.path)) {\n\t case '[object Function]':\n\t return step.path();\n\t case '[object String]':\n\t return this._options.basePath + step.path;\n\t default:\n\t return step.path;\n\t }\n\t }.call(_this);\n\t if (_this._isRedirect(step.host, path, document.location)) {\n\t _this._redirect(step, i, path);\n\t if (!_this._isJustPathHashDifferent(step.host, path, document.location)) {\n\t return;\n\t }\n\t }\n\t if (_this._isOrphan(step)) {\n\t if (step.orphan === false) {\n\t _this._debug(\"Skip the orphan step \" + (_this._current + 1) + \".\\nOrphan option is false and the element does not exist or is hidden.\");\n\t if (skipToPrevious) {\n\t _this._showPrevStep();\n\t } else {\n\t _this._showNextStep();\n\t }\n\t return;\n\t }\n\t _this._debug(\"Show the orphan step \" + (_this._current + 1) + \". Orphans option is true.\");\n\t }\n\t if (step.backdrop) {\n\t _this._showBackdrop(step);\n\t }\n\t showPopoverAndOverlay = function () {\n\t if (_this.getCurrentStep() !== i || _this.ended()) {\n\t return;\n\t }\n\t if (step.element != null && step.backdrop) {\n\t _this._showOverlayElement(step);\n\t }\n\t _this._showPopover(step, i);\n\t if (step.onShown != null) {\n\t step.onShown(_this);\n\t }\n\t return _this._debug(\"Step \" + (_this._current + 1) + \" of \" + _this._options.steps.length);\n\t };\n\t if (step.autoscroll) {\n\t _this._scrollIntoView(step.element, showPopoverAndOverlay);\n\t } else {\n\t showPopoverAndOverlay();\n\t }\n\t if (step.duration) {\n\t return _this.resume();\n\t }\n\t };\n\t }(this);\n\t if (step.delay) {\n\t this._debug(\"Wait \" + step.delay + \" milliseconds to show the step \" + (this._current + 1));\n\t window.setTimeout(function (_this) {\n\t return function () {\n\t return _this._callOnPromiseDone(promise, showStepHelper);\n\t };\n\t }(this), step.delay);\n\t } else {\n\t this._callOnPromiseDone(promise, showStepHelper);\n\t }\n\t return promise;\n\t };\n\t\n\t Tour.prototype.getCurrentStep = function () {\n\t return this._current;\n\t };\n\t\n\t Tour.prototype.setCurrentStep = function (value) {\n\t if (value != null) {\n\t this._current = value;\n\t this._setState('current_step', value);\n\t } else {\n\t this._current = this._getState('current_step');\n\t this._current = this._current === null ? null : parseInt(this._current, 10);\n\t }\n\t return this;\n\t };\n\t\n\t Tour.prototype.redraw = function () {\n\t return this._showOverlayElement(this.getStep(this.getCurrentStep()).element, true);\n\t };\n\t\n\t Tour.prototype._setState = function (key, value) {\n\t var e, keyName;\n\t if (this._options.storage) {\n\t keyName = \"\" + this._options.name + \"_\" + key;\n\t try {\n\t this._options.storage.setItem(keyName, value);\n\t } catch (_error) {\n\t e = _error;\n\t if (e.code === DOMException.QUOTA_EXCEEDED_ERR) {\n\t this._debug('LocalStorage quota exceeded. State storage failed.');\n\t }\n\t }\n\t return this._options.afterSetState(keyName, value);\n\t } else {\n\t if (this._state == null) {\n\t this._state = {};\n\t }\n\t return this._state[key] = value;\n\t }\n\t };\n\t\n\t Tour.prototype._removeState = function (key) {\n\t var keyName;\n\t if (this._options.storage) {\n\t keyName = \"\" + this._options.name + \"_\" + key;\n\t this._options.storage.removeItem(keyName);\n\t return this._options.afterRemoveState(keyName);\n\t } else {\n\t if (this._state != null) {\n\t return delete this._state[key];\n\t }\n\t }\n\t };\n\t\n\t Tour.prototype._getState = function (key) {\n\t var keyName, value;\n\t if (this._options.storage) {\n\t keyName = \"\" + this._options.name + \"_\" + key;\n\t value = this._options.storage.getItem(keyName);\n\t } else {\n\t if (this._state != null) {\n\t value = this._state[key];\n\t }\n\t }\n\t if (value === void 0 || value === 'null') {\n\t value = null;\n\t }\n\t this._options.afterGetState(key, value);\n\t return value;\n\t };\n\t\n\t Tour.prototype._showNextStep = function () {\n\t var promise, showNextStepHelper, step;\n\t step = this.getStep(this._current);\n\t showNextStepHelper = function (_this) {\n\t return function (e) {\n\t return _this.showStep(step.next);\n\t };\n\t }(this);\n\t promise = this._makePromise(step.onNext != null ? step.onNext(this) : void 0);\n\t return this._callOnPromiseDone(promise, showNextStepHelper);\n\t };\n\t\n\t Tour.prototype._showPrevStep = function () {\n\t var promise, showPrevStepHelper, step;\n\t step = this.getStep(this._current);\n\t showPrevStepHelper = function (_this) {\n\t return function (e) {\n\t return _this.showStep(step.prev);\n\t };\n\t }(this);\n\t promise = this._makePromise(step.onPrev != null ? step.onPrev(this) : void 0);\n\t return this._callOnPromiseDone(promise, showPrevStepHelper);\n\t };\n\t\n\t Tour.prototype._debug = function (text) {\n\t if (this._options.debug) {\n\t return window.console.log(\"Bootstrap Tour '\" + this._options.name + \"' | \" + text);\n\t }\n\t };\n\t\n\t Tour.prototype._isRedirect = function (host, path, location) {\n\t var currentPath;\n\t if (host !== '') {\n\t if (this._isHostDifferent(host, location.href)) {\n\t return true;\n\t }\n\t }\n\t currentPath = [location.pathname, location.search, location.hash].join('');\n\t return path != null && path !== '' && ({}.toString.call(path) === '[object RegExp]' && !path.test(currentPath) || {}.toString.call(path) === '[object String]' && this._isPathDifferent(path, currentPath));\n\t };\n\t\n\t Tour.prototype._isHostDifferent = function (host, currentURL) {\n\t return this._getProtocol(host) !== this._getProtocol(currentURL) || this._getHost(host) !== this._getHost(currentURL);\n\t };\n\t\n\t Tour.prototype._isPathDifferent = function (path, currentPath) {\n\t return this._getPath(path) !== this._getPath(currentPath) || !this._equal(this._getQuery(path), this._getQuery(currentPath)) || !this._equal(this._getHash(path), this._getHash(currentPath));\n\t };\n\t\n\t Tour.prototype._isJustPathHashDifferent = function (host, path, location) {\n\t var currentPath;\n\t if (host !== '') {\n\t if (this._isHostDifferent(host, location.href)) {\n\t return false;\n\t }\n\t }\n\t currentPath = [location.pathname, location.search, location.hash].join('');\n\t if ({}.toString.call(path) === '[object String]') {\n\t return this._getPath(path) === this._getPath(currentPath) && this._equal(this._getQuery(path), this._getQuery(currentPath)) && !this._equal(this._getHash(path), this._getHash(currentPath));\n\t }\n\t return false;\n\t };\n\t\n\t Tour.prototype._redirect = function (step, i, path) {\n\t if ($.isFunction(step.redirect)) {\n\t return step.redirect.call(this, path);\n\t } else if (step.redirect === true) {\n\t this._debug(\"Redirect to \" + step.host + path);\n\t if (this._getState('redirect_to') === \"\" + i) {\n\t this._debug(\"Error redirection loop to \" + path);\n\t this._removeState('redirect_to');\n\t if (step.onRedirectError != null) {\n\t return step.onRedirectError(this);\n\t }\n\t } else {\n\t this._setState('redirect_to', \"\" + i);\n\t return document.location.href = \"\" + step.host + path;\n\t }\n\t }\n\t };\n\t\n\t Tour.prototype._isOrphan = function (step) {\n\t return step.element == null || !$(step.element).length || $(step.element).is(':hidden') && $(step.element)[0].namespaceURI !== 'http://www.w3.org/2000/svg';\n\t };\n\t\n\t Tour.prototype._isLast = function () {\n\t return this._current < this._options.steps.length - 1;\n\t };\n\t\n\t Tour.prototype._showPopover = function (step, i) {\n\t var $element, $tip, isOrphan, options, shouldAddSmart;\n\t $(\".tour-\" + this._options.name).remove();\n\t options = $.extend({}, this._options);\n\t isOrphan = this._isOrphan(step);\n\t step.template = this._template(step, i);\n\t if (isOrphan) {\n\t step.element = 'body';\n\t step.placement = 'top';\n\t }\n\t $element = $(step.element);\n\t $element.addClass(\"tour-\" + this._options.name + \"-element tour-\" + this._options.name + \"-\" + i + \"-element\");\n\t if (step.options) {\n\t $.extend(options, step.options);\n\t }\n\t if (step.reflex && !isOrphan) {\n\t $(step.reflexElement).addClass('tour-step-element-reflex').off(\"\" + this._reflexEvent(step.reflex) + \".tour-\" + this._options.name).on(\"\" + this._reflexEvent(step.reflex) + \".tour-\" + this._options.name, function (_this) {\n\t return function () {\n\t if (_this._isLast()) {\n\t return _this.next();\n\t } else {\n\t return _this.end();\n\t }\n\t };\n\t }(this));\n\t }\n\t shouldAddSmart = step.smartPlacement === true && step.placement.search(/auto/i) === -1;\n\t $element.popover({\n\t placement: shouldAddSmart ? \"auto \" + step.placement : step.placement,\n\t trigger: 'manual',\n\t title: step.title,\n\t content: step.content,\n\t html: true,\n\t animation: step.animation,\n\t container: step.container,\n\t template: step.template,\n\t selector: step.element\n\t }).popover('show');\n\t $tip = $element.data('bs.popover') ? $element.data('bs.popover').tip() : $element.data('popover').tip();\n\t $tip.attr('id', step.id);\n\t this._reposition($tip, step);\n\t if (isOrphan) {\n\t return this._center($tip);\n\t }\n\t };\n\t\n\t Tour.prototype._template = function (step, i) {\n\t var $navigation, $next, $prev, $resume, $template, template;\n\t template = step.template;\n\t if (this._isOrphan(step) && {}.toString.call(step.orphan) !== '[object Boolean]') {\n\t template = step.orphan;\n\t }\n\t $template = $.isFunction(template) ? $(template(i, step)) : $(template);\n\t $navigation = $template.find('.popover-navigation');\n\t $prev = $navigation.find('[data-role=\"prev\"]');\n\t $next = $navigation.find('[data-role=\"next\"]');\n\t $resume = $navigation.find('[data-role=\"pause-resume\"]');\n\t if (this._isOrphan(step)) {\n\t $template.addClass('orphan');\n\t }\n\t $template.addClass(\"tour-\" + this._options.name + \" tour-\" + this._options.name + \"-\" + i);\n\t if (step.reflex) {\n\t $template.addClass(\"tour-\" + this._options.name + \"-reflex\");\n\t }\n\t if (step.prev < 0) {\n\t $prev.addClass('disabled');\n\t $prev.prop('disabled', true);\n\t }\n\t if (step.next < 0) {\n\t $next.addClass('disabled');\n\t $next.prop('disabled', true);\n\t }\n\t if (!step.duration) {\n\t $resume.remove();\n\t }\n\t return $template.clone().wrap('
    ').parent().html();\n\t };\n\t\n\t Tour.prototype._reflexEvent = function (reflex) {\n\t if ({}.toString.call(reflex) === '[object Boolean]') {\n\t return 'click';\n\t } else {\n\t return reflex;\n\t }\n\t };\n\t\n\t Tour.prototype._reposition = function ($tip, step) {\n\t var offsetBottom, offsetHeight, offsetRight, offsetWidth, originalLeft, originalTop, tipOffset;\n\t offsetWidth = $tip[0].offsetWidth;\n\t offsetHeight = $tip[0].offsetHeight;\n\t tipOffset = $tip.offset();\n\t originalLeft = tipOffset.left;\n\t originalTop = tipOffset.top;\n\t offsetBottom = $(document).outerHeight() - tipOffset.top - $tip.outerHeight();\n\t if (offsetBottom < 0) {\n\t tipOffset.top = tipOffset.top + offsetBottom;\n\t }\n\t offsetRight = $('html').outerWidth() - tipOffset.left - $tip.outerWidth();\n\t if (offsetRight < 0) {\n\t tipOffset.left = tipOffset.left + offsetRight;\n\t }\n\t if (tipOffset.top < 0) {\n\t tipOffset.top = 0;\n\t }\n\t if (tipOffset.left < 0) {\n\t tipOffset.left = 0;\n\t }\n\t $tip.offset(tipOffset);\n\t if (step.placement === 'bottom' || step.placement === 'top') {\n\t if (originalLeft !== tipOffset.left) {\n\t return this._replaceArrow($tip, (tipOffset.left - originalLeft) * 2, offsetWidth, 'left');\n\t }\n\t } else {\n\t if (originalTop !== tipOffset.top) {\n\t return this._replaceArrow($tip, (tipOffset.top - originalTop) * 2, offsetHeight, 'top');\n\t }\n\t }\n\t };\n\t\n\t Tour.prototype._center = function ($tip) {\n\t return $tip.css('top', $(window).outerHeight() / 2 - $tip.outerHeight() / 2);\n\t };\n\t\n\t Tour.prototype._replaceArrow = function ($tip, delta, dimension, position) {\n\t return $tip.find('.arrow').css(position, delta ? 50 * (1 - delta / dimension) + '%' : '');\n\t };\n\t\n\t Tour.prototype._scrollIntoView = function (element, callback) {\n\t var $element, $window, counter, offsetTop, scrollTop, windowHeight;\n\t $element = $(element);\n\t if (!$element.length) {\n\t return callback();\n\t }\n\t $window = $(window);\n\t offsetTop = $element.offset().top;\n\t windowHeight = $window.height();\n\t scrollTop = Math.max(0, offsetTop - windowHeight / 2);\n\t this._debug(\"Scroll into view. ScrollTop: \" + scrollTop + \". Element offset: \" + offsetTop + \". Window height: \" + windowHeight + \".\");\n\t counter = 0;\n\t return $('body, html').stop(true, true).animate({\n\t scrollTop: Math.ceil(scrollTop)\n\t }, function (_this) {\n\t return function () {\n\t if (++counter === 2) {\n\t callback();\n\t return _this._debug(\"Scroll into view.\\nAnimation end element offset: \" + $element.offset().top + \".\\nWindow height: \" + $window.height() + \".\");\n\t }\n\t };\n\t }(this));\n\t };\n\t\n\t Tour.prototype._onResize = function (callback, timeout) {\n\t return $(window).on(\"resize.tour-\" + this._options.name, function () {\n\t clearTimeout(timeout);\n\t return timeout = setTimeout(callback, 100);\n\t });\n\t };\n\t\n\t Tour.prototype._initMouseNavigation = function () {\n\t var _this;\n\t _this = this;\n\t return $(document).off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\").on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\", function (_this) {\n\t return function (e) {\n\t e.preventDefault();\n\t return _this.next();\n\t };\n\t }(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\", function (_this) {\n\t return function (e) {\n\t e.preventDefault();\n\t return _this.prev();\n\t };\n\t }(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\", function (_this) {\n\t return function (e) {\n\t e.preventDefault();\n\t return _this.end();\n\t };\n\t }(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\", function (e) {\n\t var $this;\n\t e.preventDefault();\n\t $this = $(this);\n\t $this.text(_this._paused ? $this.data('pause-text') : $this.data('resume-text'));\n\t if (_this._paused) {\n\t return _this.resume();\n\t } else {\n\t return _this.pause();\n\t }\n\t });\n\t };\n\t\n\t Tour.prototype._initKeyboardNavigation = function () {\n\t if (!this._options.keyboard) {\n\t return;\n\t }\n\t return $(document).on(\"keyup.tour-\" + this._options.name, function (_this) {\n\t return function (e) {\n\t if (!e.which) {\n\t return;\n\t }\n\t switch (e.which) {\n\t case 39:\n\t e.preventDefault();\n\t if (_this._isLast()) {\n\t return _this.next();\n\t } else {\n\t return _this.end();\n\t }\n\t break;\n\t case 37:\n\t e.preventDefault();\n\t if (_this._current > 0) {\n\t return _this.prev();\n\t }\n\t break;\n\t case 27:\n\t e.preventDefault();\n\t return _this.end();\n\t }\n\t };\n\t }(this));\n\t };\n\t\n\t Tour.prototype._makePromise = function (result) {\n\t if (result && $.isFunction(result.then)) {\n\t return result;\n\t } else {\n\t return null;\n\t }\n\t };\n\t\n\t Tour.prototype._callOnPromiseDone = function (promise, cb, arg) {\n\t if (promise) {\n\t return promise.then(function (_this) {\n\t return function (e) {\n\t return cb.call(_this, arg);\n\t };\n\t }(this));\n\t } else {\n\t return cb.call(this, arg);\n\t }\n\t };\n\t\n\t Tour.prototype._showBackdrop = function (step) {\n\t if (this.backdrop.backgroundShown) {\n\t return;\n\t }\n\t this.backdrop = $('
    ', {\n\t \"class\": 'tour-backdrop'\n\t });\n\t this.backdrop.backgroundShown = true;\n\t return $(step.backdropContainer).append(this.backdrop);\n\t };\n\t\n\t Tour.prototype._hideBackdrop = function () {\n\t this._hideOverlayElement();\n\t return this._hideBackground();\n\t };\n\t\n\t Tour.prototype._hideBackground = function () {\n\t if (this.backdrop) {\n\t this.backdrop.remove();\n\t this.backdrop.overlay = null;\n\t return this.backdrop.backgroundShown = false;\n\t }\n\t };\n\t\n\t Tour.prototype._showOverlayElement = function (step, force) {\n\t var $element, elementData;\n\t $element = $(step.element);\n\t if (!$element || $element.length === 0 || this.backdrop.overlayElementShown && !force) {\n\t return;\n\t }\n\t if (!this.backdrop.overlayElementShown) {\n\t this.backdrop.$element = $element.addClass('tour-step-backdrop');\n\t this.backdrop.$background = $('
    ', {\n\t \"class\": 'tour-step-background'\n\t });\n\t this.backdrop.$background.appendTo(step.backdropContainer);\n\t this.backdrop.overlayElementShown = true;\n\t }\n\t elementData = {\n\t width: $element.innerWidth(),\n\t height: $element.innerHeight(),\n\t offset: $element.offset()\n\t };\n\t if (step.backdropPadding) {\n\t elementData = this._applyBackdropPadding(step.backdropPadding, elementData);\n\t }\n\t return this.backdrop.$background.width(elementData.width).height(elementData.height).offset(elementData.offset);\n\t };\n\t\n\t Tour.prototype._hideOverlayElement = function () {\n\t if (!this.backdrop.overlayElementShown) {\n\t return;\n\t }\n\t this.backdrop.$element.removeClass('tour-step-backdrop');\n\t this.backdrop.$background.remove();\n\t this.backdrop.$element = null;\n\t this.backdrop.$background = null;\n\t return this.backdrop.overlayElementShown = false;\n\t };\n\t\n\t Tour.prototype._applyBackdropPadding = function (padding, data) {\n\t if (typeof padding === 'object') {\n\t if (padding.top == null) {\n\t padding.top = 0;\n\t }\n\t if (padding.right == null) {\n\t padding.right = 0;\n\t }\n\t if (padding.bottom == null) {\n\t padding.bottom = 0;\n\t }\n\t if (padding.left == null) {\n\t padding.left = 0;\n\t }\n\t data.offset.top = data.offset.top - padding.top;\n\t data.offset.left = data.offset.left - padding.left;\n\t data.width = data.width + padding.left + padding.right;\n\t data.height = data.height + padding.top + padding.bottom;\n\t } else {\n\t data.offset.top = data.offset.top - padding;\n\t data.offset.left = data.offset.left - padding;\n\t data.width = data.width + padding * 2;\n\t data.height = data.height + padding * 2;\n\t }\n\t return data;\n\t };\n\t\n\t Tour.prototype._clearTimer = function () {\n\t window.clearTimeout(this._timer);\n\t this._timer = null;\n\t return this._duration = null;\n\t };\n\t\n\t Tour.prototype._getProtocol = function (url) {\n\t url = url.split('://');\n\t if (url.length > 1) {\n\t return url[0];\n\t } else {\n\t return 'http';\n\t }\n\t };\n\t\n\t Tour.prototype._getHost = function (url) {\n\t url = url.split('//');\n\t url = url.length > 1 ? url[1] : url[0];\n\t return url.split('/')[0];\n\t };\n\t\n\t Tour.prototype._getPath = function (path) {\n\t return path.replace(/\\/?$/, '').split('?')[0].split('#')[0];\n\t };\n\t\n\t Tour.prototype._getQuery = function (path) {\n\t return this._getParams(path, '?');\n\t };\n\t\n\t Tour.prototype._getHash = function (path) {\n\t return this._getParams(path, '#');\n\t };\n\t\n\t Tour.prototype._getParams = function (path, start) {\n\t var param, params, paramsObject, _i, _len;\n\t params = path.split(start);\n\t if (params.length === 1) {\n\t return {};\n\t }\n\t params = params[1].split('&');\n\t paramsObject = {};\n\t for (_i = 0, _len = params.length; _i < _len; _i++) {\n\t param = params[_i];\n\t param = param.split('=');\n\t paramsObject[param[0]] = param[1] || '';\n\t }\n\t return paramsObject;\n\t };\n\t\n\t Tour.prototype._equal = function (obj1, obj2) {\n\t var k, v;\n\t if ({}.toString.call(obj1) === '[object Object]' && {}.toString.call(obj2) === '[object Object]') {\n\t for (k in obj1) {\n\t v = obj1[k];\n\t if (obj2[k] !== v) {\n\t return false;\n\t }\n\t }\n\t for (k in obj2) {\n\t v = obj2[k];\n\t if (obj1[k] !== v) {\n\t return false;\n\t }\n\t }\n\t return true;\n\t }\n\t return obj1 === obj2;\n\t };\n\t\n\t return Tour;\n\t }();\n\t return window.Tour = Tour;\n\t})(jQuery, window);\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n\n/***/ },\n/* 68 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(jQuery) {/*! jQuery UI - v1.9.1 - 2012-10-29\n\t* http://jqueryui.com\n\t* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.autocomplete.js, jquery.ui.button.js, jquery.ui.menu.js, jquery.ui.slider.js\n\t* Copyright (c) 2012 jQuery Foundation and other contributors Licensed MIT */\n\t\n\t(function (e, t) {\n\t function i(t, n) {\n\t var r,\n\t i,\n\t o,\n\t u = t.nodeName.toLowerCase();return \"area\" === u ? (r = t.parentNode, i = r.name, !t.href || !i || r.nodeName.toLowerCase() !== \"map\" ? !1 : (o = e(\"img[usemap=#\" + i + \"]\")[0], !!o && s(o))) : (/input|select|textarea|button|object/.test(u) ? !t.disabled : \"a\" === u ? t.href || n : n) && s(t);\n\t }function s(t) {\n\t return e.expr.filters.visible(t) && !e(t).parents().andSelf().filter(function () {\n\t return e.css(this, \"visibility\") === \"hidden\";\n\t }).length;\n\t }var n = 0,\n\t r = /^ui-id-\\d+$/;e.ui = e.ui || {};if (e.ui.version) return;e.extend(e.ui, { version: \"1.9.1\", keyCode: { BACKSPACE: 8, COMMA: 188, DELETE: 46, DOWN: 40, END: 35, ENTER: 13, ESCAPE: 27, HOME: 36, LEFT: 37, NUMPAD_ADD: 107, NUMPAD_DECIMAL: 110, NUMPAD_DIVIDE: 111, NUMPAD_ENTER: 108, NUMPAD_MULTIPLY: 106, NUMPAD_SUBTRACT: 109, PAGE_DOWN: 34, PAGE_UP: 33, PERIOD: 190, RIGHT: 39, SPACE: 32, TAB: 9, UP: 38 } }), e.fn.extend({ _focus: e.fn.focus, focus: function (t, n) {\n\t return typeof t == \"number\" ? this.each(function () {\n\t var r = this;setTimeout(function () {\n\t e(r).focus(), n && n.call(r);\n\t }, t);\n\t }) : this._focus.apply(this, arguments);\n\t }, scrollParent: function () {\n\t var t;return e.ui.ie && /(static|relative)/.test(this.css(\"position\")) || /absolute/.test(this.css(\"position\")) ? t = this.parents().filter(function () {\n\t return (/(relative|absolute|fixed)/.test(e.css(this, \"position\")) && /(auto|scroll)/.test(e.css(this, \"overflow\") + e.css(this, \"overflow-y\") + e.css(this, \"overflow-x\"))\n\t );\n\t }).eq(0) : t = this.parents().filter(function () {\n\t return (/(auto|scroll)/.test(e.css(this, \"overflow\") + e.css(this, \"overflow-y\") + e.css(this, \"overflow-x\"))\n\t );\n\t }).eq(0), /fixed/.test(this.css(\"position\")) || !t.length ? e(document) : t;\n\t }, zIndex: function (n) {\n\t if (n !== t) return this.css(\"zIndex\", n);if (this.length) {\n\t var r = e(this[0]),\n\t i,\n\t s;while (r.length && r[0] !== document) {\n\t i = r.css(\"position\");if (i === \"absolute\" || i === \"relative\" || i === \"fixed\") {\n\t s = parseInt(r.css(\"zIndex\"), 10);if (!isNaN(s) && s !== 0) return s;\n\t }r = r.parent();\n\t }\n\t }return 0;\n\t }, uniqueId: function () {\n\t return this.each(function () {\n\t this.id || (this.id = \"ui-id-\" + ++n);\n\t });\n\t }, removeUniqueId: function () {\n\t return this.each(function () {\n\t r.test(this.id) && e(this).removeAttr(\"id\");\n\t });\n\t } }), e(\"\").outerWidth(1).jquery || e.each([\"Width\", \"Height\"], function (n, r) {\n\t function u(t, n, r, s) {\n\t return e.each(i, function () {\n\t n -= parseFloat(e.css(t, \"padding\" + this)) || 0, r && (n -= parseFloat(e.css(t, \"border\" + this + \"Width\")) || 0), s && (n -= parseFloat(e.css(t, \"margin\" + this)) || 0);\n\t }), n;\n\t }var i = r === \"Width\" ? [\"Left\", \"Right\"] : [\"Top\", \"Bottom\"],\n\t s = r.toLowerCase(),\n\t o = { innerWidth: e.fn.innerWidth, innerHeight: e.fn.innerHeight, outerWidth: e.fn.outerWidth, outerHeight: e.fn.outerHeight };e.fn[\"inner\" + r] = function (n) {\n\t return n === t ? o[\"inner\" + r].call(this) : this.each(function () {\n\t e(this).css(s, u(this, n) + \"px\");\n\t });\n\t }, e.fn[\"outer\" + r] = function (t, n) {\n\t return typeof t != \"number\" ? o[\"outer\" + r].call(this, t) : this.each(function () {\n\t e(this).css(s, u(this, t, !0, n) + \"px\");\n\t });\n\t };\n\t }), e.extend(e.expr[\":\"], { data: e.expr.createPseudo ? e.expr.createPseudo(function (t) {\n\t return function (n) {\n\t return !!e.data(n, t);\n\t };\n\t }) : function (t, n, r) {\n\t return !!e.data(t, r[3]);\n\t }, focusable: function (t) {\n\t return i(t, !isNaN(e.attr(t, \"tabindex\")));\n\t }, tabbable: function (t) {\n\t var n = e.attr(t, \"tabindex\"),\n\t r = isNaN(n);return (r || n >= 0) && i(t, !r);\n\t } }), e(function () {\n\t var t = document.body,\n\t n = t.appendChild(n = document.createElement(\"div\"));n.offsetHeight, e.extend(n.style, { minHeight: \"100px\", height: \"auto\", padding: 0, borderWidth: 0 }), e.support.minHeight = n.offsetHeight === 100, e.support.selectstart = \"onselectstart\" in n, t.removeChild(n).style.display = \"none\";\n\t }), function () {\n\t var t = /msie ([\\w.]+)/.exec(navigator.userAgent.toLowerCase()) || [];e.ui.ie = t.length ? !0 : !1, e.ui.ie6 = parseFloat(t[1], 10) === 6;\n\t }(), e.fn.extend({ disableSelection: function () {\n\t return this.bind((e.support.selectstart ? \"selectstart\" : \"mousedown\") + \".ui-disableSelection\", function (e) {\n\t e.preventDefault();\n\t });\n\t }, enableSelection: function () {\n\t return this.unbind(\".ui-disableSelection\");\n\t } }), e.extend(e.ui, { plugin: { add: function (t, n, r) {\n\t var i,\n\t s = e.ui[t].prototype;for (i in r) s.plugins[i] = s.plugins[i] || [], s.plugins[i].push([n, r[i]]);\n\t }, call: function (e, t, n) {\n\t var r,\n\t i = e.plugins[t];if (!i || !e.element[0].parentNode || e.element[0].parentNode.nodeType === 11) return;for (r = 0; r < i.length; r++) e.options[i[r][0]] && i[r][1].apply(e.element, n);\n\t } }, contains: e.contains, hasScroll: function (t, n) {\n\t if (e(t).css(\"overflow\") === \"hidden\") return !1;var r = n && n === \"left\" ? \"scrollLeft\" : \"scrollTop\",\n\t i = !1;return t[r] > 0 ? !0 : (t[r] = 1, i = t[r] > 0, t[r] = 0, i);\n\t }, isOverAxis: function (e, t, n) {\n\t return e > t && e < t + n;\n\t }, isOver: function (t, n, r, i, s, o) {\n\t return e.ui.isOverAxis(t, r, s) && e.ui.isOverAxis(n, i, o);\n\t } });\n\t})(jQuery);(function (e, t) {\n\t var n = 0,\n\t r = Array.prototype.slice,\n\t i = e.cleanData;e.cleanData = function (t) {\n\t for (var n = 0, r; (r = t[n]) != null; n++) try {\n\t e(r).triggerHandler(\"remove\");\n\t } catch (s) {}i(t);\n\t }, e.widget = function (t, n, r) {\n\t var i,\n\t s,\n\t o,\n\t u,\n\t a = t.split(\".\")[0];t = t.split(\".\")[1], i = a + \"-\" + t, r || (r = n, n = e.Widget), e.expr[\":\"][i.toLowerCase()] = function (t) {\n\t return !!e.data(t, i);\n\t }, e[a] = e[a] || {}, s = e[a][t], o = e[a][t] = function (e, t) {\n\t if (!this._createWidget) return new o(e, t);arguments.length && this._createWidget(e, t);\n\t }, e.extend(o, s, { version: r.version, _proto: e.extend({}, r), _childConstructors: [] }), u = new n(), u.options = e.widget.extend({}, u.options), e.each(r, function (t, i) {\n\t e.isFunction(i) && (r[t] = function () {\n\t var e = function () {\n\t return n.prototype[t].apply(this, arguments);\n\t },\n\t r = function (e) {\n\t return n.prototype[t].apply(this, e);\n\t };return function () {\n\t var t = this._super,\n\t n = this._superApply,\n\t s;return this._super = e, this._superApply = r, s = i.apply(this, arguments), this._super = t, this._superApply = n, s;\n\t };\n\t }());\n\t }), o.prototype = e.widget.extend(u, { widgetEventPrefix: u.widgetEventPrefix || t }, r, { constructor: o, namespace: a, widgetName: t, widgetBaseClass: i, widgetFullName: i }), s ? (e.each(s._childConstructors, function (t, n) {\n\t var r = n.prototype;e.widget(r.namespace + \".\" + r.widgetName, o, n._proto);\n\t }), delete s._childConstructors) : n._childConstructors.push(o), e.widget.bridge(t, o);\n\t }, e.widget.extend = function (n) {\n\t var i = r.call(arguments, 1),\n\t s = 0,\n\t o = i.length,\n\t u,\n\t a;for (; s < o; s++) for (u in i[s]) a = i[s][u], i[s].hasOwnProperty(u) && a !== t && (e.isPlainObject(a) ? n[u] = e.isPlainObject(n[u]) ? e.widget.extend({}, n[u], a) : e.widget.extend({}, a) : n[u] = a);return n;\n\t }, e.widget.bridge = function (n, i) {\n\t var s = i.prototype.widgetFullName;e.fn[n] = function (o) {\n\t var u = typeof o == \"string\",\n\t a = r.call(arguments, 1),\n\t f = this;return o = !u && a.length ? e.widget.extend.apply(null, [o].concat(a)) : o, u ? this.each(function () {\n\t var r,\n\t i = e.data(this, s);if (!i) return e.error(\"cannot call methods on \" + n + \" prior to initialization; \" + \"attempted to call method '\" + o + \"'\");if (!e.isFunction(i[o]) || o.charAt(0) === \"_\") return e.error(\"no such method '\" + o + \"' for \" + n + \" widget instance\");r = i[o].apply(i, a);if (r !== i && r !== t) return f = r && r.jquery ? f.pushStack(r.get()) : r, !1;\n\t }) : this.each(function () {\n\t var t = e.data(this, s);t ? t.option(o || {})._init() : new i(o, this);\n\t }), f;\n\t };\n\t }, e.Widget = function () {}, e.Widget._childConstructors = [], e.Widget.prototype = { widgetName: \"widget\", widgetEventPrefix: \"\", defaultElement: \"
    \", options: { disabled: !1, create: null }, _createWidget: function (t, r) {\n\t r = e(r || this.defaultElement || this)[0], this.element = e(r), this.uuid = n++, this.eventNamespace = \".\" + this.widgetName + this.uuid, this.options = e.widget.extend({}, this.options, this._getCreateOptions(), t), this.bindings = e(), this.hoverable = e(), this.focusable = e(), r !== this && (e.data(r, this.widgetName, this), e.data(r, this.widgetFullName, this), this._on(this.element, { remove: function (e) {\n\t e.target === r && this.destroy();\n\t } }), this.document = e(r.style ? r.ownerDocument : r.document || r), this.window = e(this.document[0].defaultView || this.document[0].parentWindow)), this._create(), this._trigger(\"create\", null, this._getCreateEventData()), this._init();\n\t }, _getCreateOptions: e.noop, _getCreateEventData: e.noop, _create: e.noop, _init: e.noop, destroy: function () {\n\t this._destroy(), this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)), this.widget().unbind(this.eventNamespace).removeAttr(\"aria-disabled\").removeClass(this.widgetFullName + \"-disabled \" + \"ui-state-disabled\"), this.bindings.unbind(this.eventNamespace), this.hoverable.removeClass(\"ui-state-hover\"), this.focusable.removeClass(\"ui-state-focus\");\n\t }, _destroy: e.noop, widget: function () {\n\t return this.element;\n\t }, option: function (n, r) {\n\t var i = n,\n\t s,\n\t o,\n\t u;if (arguments.length === 0) return e.widget.extend({}, this.options);if (typeof n == \"string\") {\n\t i = {}, s = n.split(\".\"), n = s.shift();if (s.length) {\n\t o = i[n] = e.widget.extend({}, this.options[n]);for (u = 0; u < s.length - 1; u++) o[s[u]] = o[s[u]] || {}, o = o[s[u]];n = s.pop();if (r === t) return o[n] === t ? null : o[n];o[n] = r;\n\t } else {\n\t if (r === t) return this.options[n] === t ? null : this.options[n];i[n] = r;\n\t }\n\t }return this._setOptions(i), this;\n\t }, _setOptions: function (e) {\n\t var t;for (t in e) this._setOption(t, e[t]);return this;\n\t }, _setOption: function (e, t) {\n\t return this.options[e] = t, e === \"disabled\" && (this.widget().toggleClass(this.widgetFullName + \"-disabled ui-state-disabled\", !!t).attr(\"aria-disabled\", t), this.hoverable.removeClass(\"ui-state-hover\"), this.focusable.removeClass(\"ui-state-focus\")), this;\n\t }, enable: function () {\n\t return this._setOption(\"disabled\", !1);\n\t }, disable: function () {\n\t return this._setOption(\"disabled\", !0);\n\t }, _on: function (t, n) {\n\t var r,\n\t i = this;n ? (t = r = e(t), this.bindings = this.bindings.add(t)) : (n = t, t = this.element, r = this.widget()), e.each(n, function (n, s) {\n\t function o() {\n\t if (i.options.disabled === !0 || e(this).hasClass(\"ui-state-disabled\")) return;return (typeof s == \"string\" ? i[s] : s).apply(i, arguments);\n\t }typeof s != \"string\" && (o.guid = s.guid = s.guid || o.guid || e.guid++);var u = n.match(/^(\\w+)\\s*(.*)$/),\n\t a = u[1] + i.eventNamespace,\n\t f = u[2];f ? r.delegate(f, a, o) : t.bind(a, o);\n\t });\n\t }, _off: function (e, t) {\n\t t = (t || \"\").split(\" \").join(this.eventNamespace + \" \") + this.eventNamespace, e.unbind(t).undelegate(t);\n\t }, _delay: function (e, t) {\n\t function n() {\n\t return (typeof e == \"string\" ? r[e] : e).apply(r, arguments);\n\t }var r = this;return setTimeout(n, t || 0);\n\t }, _hoverable: function (t) {\n\t this.hoverable = this.hoverable.add(t), this._on(t, { mouseenter: function (t) {\n\t e(t.currentTarget).addClass(\"ui-state-hover\");\n\t }, mouseleave: function (t) {\n\t e(t.currentTarget).removeClass(\"ui-state-hover\");\n\t } });\n\t }, _focusable: function (t) {\n\t this.focusable = this.focusable.add(t), this._on(t, { focusin: function (t) {\n\t e(t.currentTarget).addClass(\"ui-state-focus\");\n\t }, focusout: function (t) {\n\t e(t.currentTarget).removeClass(\"ui-state-focus\");\n\t } });\n\t }, _trigger: function (t, n, r) {\n\t var i,\n\t s,\n\t o = this.options[t];r = r || {}, n = e.Event(n), n.type = (t === this.widgetEventPrefix ? t : this.widgetEventPrefix + t).toLowerCase(), n.target = this.element[0], s = n.originalEvent;if (s) for (i in s) i in n || (n[i] = s[i]);return this.element.trigger(n, r), !(e.isFunction(o) && o.apply(this.element[0], [n].concat(r)) === !1 || n.isDefaultPrevented());\n\t } }, e.each({ show: \"fadeIn\", hide: \"fadeOut\" }, function (t, n) {\n\t e.Widget.prototype[\"_\" + t] = function (r, i, s) {\n\t typeof i == \"string\" && (i = { effect: i });var o,\n\t u = i ? i === !0 || typeof i == \"number\" ? n : i.effect || n : t;i = i || {}, typeof i == \"number\" && (i = { duration: i }), o = !e.isEmptyObject(i), i.complete = s, i.delay && r.delay(i.delay), o && e.effects && (e.effects.effect[u] || e.uiBackCompat !== !1 && e.effects[u]) ? r[t](i) : u !== t && r[u] ? r[u](i.duration, i.easing, s) : r.queue(function (n) {\n\t e(this)[t](), s && s.call(r[0]), n();\n\t });\n\t };\n\t }), e.uiBackCompat !== !1 && (e.Widget.prototype._getCreateOptions = function () {\n\t return e.metadata && e.metadata.get(this.element[0])[this.widgetName];\n\t });\n\t})(jQuery);(function (e, t) {\n\t var n = !1;e(document).mouseup(function (e) {\n\t n = !1;\n\t }), e.widget(\"ui.mouse\", { version: \"1.9.1\", options: { cancel: \"input,textarea,button,select,option\", distance: 1, delay: 0 }, _mouseInit: function () {\n\t var t = this;this.element.bind(\"mousedown.\" + this.widgetName, function (e) {\n\t return t._mouseDown(e);\n\t }).bind(\"click.\" + this.widgetName, function (n) {\n\t if (!0 === e.data(n.target, t.widgetName + \".preventClickEvent\")) return e.removeData(n.target, t.widgetName + \".preventClickEvent\"), n.stopImmediatePropagation(), !1;\n\t }), this.started = !1;\n\t }, _mouseDestroy: function () {\n\t this.element.unbind(\".\" + this.widgetName), this._mouseMoveDelegate && e(document).unbind(\"mousemove.\" + this.widgetName, this._mouseMoveDelegate).unbind(\"mouseup.\" + this.widgetName, this._mouseUpDelegate);\n\t }, _mouseDown: function (t) {\n\t if (n) return;this._mouseStarted && this._mouseUp(t), this._mouseDownEvent = t;var r = this,\n\t i = t.which === 1,\n\t s = typeof this.options.cancel == \"string\" && t.target.nodeName ? e(t.target).closest(this.options.cancel).length : !1;if (!i || s || !this._mouseCapture(t)) return !0;this.mouseDelayMet = !this.options.delay, this.mouseDelayMet || (this._mouseDelayTimer = setTimeout(function () {\n\t r.mouseDelayMet = !0;\n\t }, this.options.delay));if (this._mouseDistanceMet(t) && this._mouseDelayMet(t)) {\n\t this._mouseStarted = this._mouseStart(t) !== !1;if (!this._mouseStarted) return t.preventDefault(), !0;\n\t }return !0 === e.data(t.target, this.widgetName + \".preventClickEvent\") && e.removeData(t.target, this.widgetName + \".preventClickEvent\"), this._mouseMoveDelegate = function (e) {\n\t return r._mouseMove(e);\n\t }, this._mouseUpDelegate = function (e) {\n\t return r._mouseUp(e);\n\t }, e(document).bind(\"mousemove.\" + this.widgetName, this._mouseMoveDelegate).bind(\"mouseup.\" + this.widgetName, this._mouseUpDelegate), t.preventDefault(), n = !0, !0;\n\t }, _mouseMove: function (t) {\n\t return !e.ui.ie || document.documentMode >= 9 || !!t.button ? this._mouseStarted ? (this._mouseDrag(t), t.preventDefault()) : (this._mouseDistanceMet(t) && this._mouseDelayMet(t) && (this._mouseStarted = this._mouseStart(this._mouseDownEvent, t) !== !1, this._mouseStarted ? this._mouseDrag(t) : this._mouseUp(t)), !this._mouseStarted) : this._mouseUp(t);\n\t }, _mouseUp: function (t) {\n\t return e(document).unbind(\"mousemove.\" + this.widgetName, this._mouseMoveDelegate).unbind(\"mouseup.\" + this.widgetName, this._mouseUpDelegate), this._mouseStarted && (this._mouseStarted = !1, t.target === this._mouseDownEvent.target && e.data(t.target, this.widgetName + \".preventClickEvent\", !0), this._mouseStop(t)), !1;\n\t }, _mouseDistanceMet: function (e) {\n\t return Math.max(Math.abs(this._mouseDownEvent.pageX - e.pageX), Math.abs(this._mouseDownEvent.pageY - e.pageY)) >= this.options.distance;\n\t }, _mouseDelayMet: function (e) {\n\t return this.mouseDelayMet;\n\t }, _mouseStart: function (e) {}, _mouseDrag: function (e) {}, _mouseStop: function (e) {}, _mouseCapture: function (e) {\n\t return !0;\n\t } });\n\t})(jQuery);(function (e, t) {\n\t function h(e, t, n) {\n\t return [parseInt(e[0], 10) * (l.test(e[0]) ? t / 100 : 1), parseInt(e[1], 10) * (l.test(e[1]) ? n / 100 : 1)];\n\t }function p(t, n) {\n\t return parseInt(e.css(t, n), 10) || 0;\n\t }e.ui = e.ui || {};var n,\n\t r = Math.max,\n\t i = Math.abs,\n\t s = Math.round,\n\t o = /left|center|right/,\n\t u = /top|center|bottom/,\n\t a = /[\\+\\-]\\d+%?/,\n\t f = /^\\w+/,\n\t l = /%$/,\n\t c = e.fn.position;e.position = { scrollbarWidth: function () {\n\t if (n !== t) return n;var r,\n\t i,\n\t s = e(\"
    \"),\n\t o = s.children()[0];return e(\"body\").append(s), r = o.offsetWidth, s.css(\"overflow\", \"scroll\"), i = o.offsetWidth, r === i && (i = s[0].clientWidth), s.remove(), n = r - i;\n\t }, getScrollInfo: function (t) {\n\t var n = t.isWindow ? \"\" : t.element.css(\"overflow-x\"),\n\t r = t.isWindow ? \"\" : t.element.css(\"overflow-y\"),\n\t i = n === \"scroll\" || n === \"auto\" && t.width < t.element[0].scrollWidth,\n\t s = r === \"scroll\" || r === \"auto\" && t.height < t.element[0].scrollHeight;return { width: i ? e.position.scrollbarWidth() : 0, height: s ? e.position.scrollbarWidth() : 0 };\n\t }, getWithinInfo: function (t) {\n\t var n = e(t || window),\n\t r = e.isWindow(n[0]);return { element: n, isWindow: r, offset: n.offset() || { left: 0, top: 0 }, scrollLeft: n.scrollLeft(), scrollTop: n.scrollTop(), width: r ? n.width() : n.outerWidth(), height: r ? n.height() : n.outerHeight() };\n\t } }, e.fn.position = function (t) {\n\t if (!t || !t.of) return c.apply(this, arguments);t = e.extend({}, t);var n,\n\t l,\n\t d,\n\t v,\n\t m,\n\t g = e(t.of),\n\t y = e.position.getWithinInfo(t.within),\n\t b = e.position.getScrollInfo(y),\n\t w = g[0],\n\t E = (t.collision || \"flip\").split(\" \"),\n\t S = {};return w.nodeType === 9 ? (l = g.width(), d = g.height(), v = { top: 0, left: 0 }) : e.isWindow(w) ? (l = g.width(), d = g.height(), v = { top: g.scrollTop(), left: g.scrollLeft() }) : w.preventDefault ? (t.at = \"left top\", l = d = 0, v = { top: w.pageY, left: w.pageX }) : (l = g.outerWidth(), d = g.outerHeight(), v = g.offset()), m = e.extend({}, v), e.each([\"my\", \"at\"], function () {\n\t var e = (t[this] || \"\").split(\" \"),\n\t n,\n\t r;e.length === 1 && (e = o.test(e[0]) ? e.concat([\"center\"]) : u.test(e[0]) ? [\"center\"].concat(e) : [\"center\", \"center\"]), e[0] = o.test(e[0]) ? e[0] : \"center\", e[1] = u.test(e[1]) ? e[1] : \"center\", n = a.exec(e[0]), r = a.exec(e[1]), S[this] = [n ? n[0] : 0, r ? r[0] : 0], t[this] = [f.exec(e[0])[0], f.exec(e[1])[0]];\n\t }), E.length === 1 && (E[1] = E[0]), t.at[0] === \"right\" ? m.left += l : t.at[0] === \"center\" && (m.left += l / 2), t.at[1] === \"bottom\" ? m.top += d : t.at[1] === \"center\" && (m.top += d / 2), n = h(S.at, l, d), m.left += n[0], m.top += n[1], this.each(function () {\n\t var o,\n\t u,\n\t a = e(this),\n\t f = a.outerWidth(),\n\t c = a.outerHeight(),\n\t w = p(this, \"marginLeft\"),\n\t x = p(this, \"marginTop\"),\n\t T = f + w + p(this, \"marginRight\") + b.width,\n\t N = c + x + p(this, \"marginBottom\") + b.height,\n\t C = e.extend({}, m),\n\t k = h(S.my, a.outerWidth(), a.outerHeight());t.my[0] === \"right\" ? C.left -= f : t.my[0] === \"center\" && (C.left -= f / 2), t.my[1] === \"bottom\" ? C.top -= c : t.my[1] === \"center\" && (C.top -= c / 2), C.left += k[0], C.top += k[1], e.support.offsetFractions || (C.left = s(C.left), C.top = s(C.top)), o = { marginLeft: w, marginTop: x }, e.each([\"left\", \"top\"], function (r, i) {\n\t e.ui.position[E[r]] && e.ui.position[E[r]][i](C, { targetWidth: l, targetHeight: d, elemWidth: f, elemHeight: c, collisionPosition: o, collisionWidth: T, collisionHeight: N, offset: [n[0] + k[0], n[1] + k[1]], my: t.my, at: t.at, within: y, elem: a });\n\t }), e.fn.bgiframe && a.bgiframe(), t.using && (u = function (e) {\n\t var n = v.left - C.left,\n\t s = n + l - f,\n\t o = v.top - C.top,\n\t u = o + d - c,\n\t h = { target: { element: g, left: v.left, top: v.top, width: l, height: d }, element: { element: a, left: C.left, top: C.top, width: f, height: c }, horizontal: s < 0 ? \"left\" : n > 0 ? \"right\" : \"center\", vertical: u < 0 ? \"top\" : o > 0 ? \"bottom\" : \"middle\" };l < f && i(n + s) < l && (h.horizontal = \"center\"), d < c && i(o + u) < d && (h.vertical = \"middle\"), r(i(n), i(s)) > r(i(o), i(u)) ? h.important = \"horizontal\" : h.important = \"vertical\", t.using.call(this, e, h);\n\t }), a.offset(e.extend(C, { using: u }));\n\t });\n\t }, e.ui.position = { fit: { left: function (e, t) {\n\t var n = t.within,\n\t i = n.isWindow ? n.scrollLeft : n.offset.left,\n\t s = n.width,\n\t o = e.left - t.collisionPosition.marginLeft,\n\t u = i - o,\n\t a = o + t.collisionWidth - s - i,\n\t f;t.collisionWidth > s ? u > 0 && a <= 0 ? (f = e.left + u + t.collisionWidth - s - i, e.left += u - f) : a > 0 && u <= 0 ? e.left = i : u > a ? e.left = i + s - t.collisionWidth : e.left = i : u > 0 ? e.left += u : a > 0 ? e.left -= a : e.left = r(e.left - o, e.left);\n\t }, top: function (e, t) {\n\t var n = t.within,\n\t i = n.isWindow ? n.scrollTop : n.offset.top,\n\t s = t.within.height,\n\t o = e.top - t.collisionPosition.marginTop,\n\t u = i - o,\n\t a = o + t.collisionHeight - s - i,\n\t f;t.collisionHeight > s ? u > 0 && a <= 0 ? (f = e.top + u + t.collisionHeight - s - i, e.top += u - f) : a > 0 && u <= 0 ? e.top = i : u > a ? e.top = i + s - t.collisionHeight : e.top = i : u > 0 ? e.top += u : a > 0 ? e.top -= a : e.top = r(e.top - o, e.top);\n\t } }, flip: { left: function (e, t) {\n\t var n = t.within,\n\t r = n.offset.left + n.scrollLeft,\n\t s = n.width,\n\t o = n.isWindow ? n.scrollLeft : n.offset.left,\n\t u = e.left - t.collisionPosition.marginLeft,\n\t a = u - o,\n\t f = u + t.collisionWidth - s - o,\n\t l = t.my[0] === \"left\" ? -t.elemWidth : t.my[0] === \"right\" ? t.elemWidth : 0,\n\t c = t.at[0] === \"left\" ? t.targetWidth : t.at[0] === \"right\" ? -t.targetWidth : 0,\n\t h = -2 * t.offset[0],\n\t p,\n\t d;if (a < 0) {\n\t p = e.left + l + c + h + t.collisionWidth - s - r;if (p < 0 || p < i(a)) e.left += l + c + h;\n\t } else if (f > 0) {\n\t d = e.left - t.collisionPosition.marginLeft + l + c + h - o;if (d > 0 || i(d) < f) e.left += l + c + h;\n\t }\n\t }, top: function (e, t) {\n\t var n = t.within,\n\t r = n.offset.top + n.scrollTop,\n\t s = n.height,\n\t o = n.isWindow ? n.scrollTop : n.offset.top,\n\t u = e.top - t.collisionPosition.marginTop,\n\t a = u - o,\n\t f = u + t.collisionHeight - s - o,\n\t l = t.my[1] === \"top\",\n\t c = l ? -t.elemHeight : t.my[1] === \"bottom\" ? t.elemHeight : 0,\n\t h = t.at[1] === \"top\" ? t.targetHeight : t.at[1] === \"bottom\" ? -t.targetHeight : 0,\n\t p = -2 * t.offset[1],\n\t d,\n\t v;a < 0 ? (v = e.top + c + h + p + t.collisionHeight - s - r, e.top + c + h + p > a && (v < 0 || v < i(a)) && (e.top += c + h + p)) : f > 0 && (d = e.top - t.collisionPosition.marginTop + c + h + p - o, e.top + c + h + p > f && (d > 0 || i(d) < f) && (e.top += c + h + p));\n\t } }, flipfit: { left: function () {\n\t e.ui.position.flip.left.apply(this, arguments), e.ui.position.fit.left.apply(this, arguments);\n\t }, top: function () {\n\t e.ui.position.flip.top.apply(this, arguments), e.ui.position.fit.top.apply(this, arguments);\n\t } } }, function () {\n\t var t,\n\t n,\n\t r,\n\t i,\n\t s,\n\t o = document.getElementsByTagName(\"body\")[0],\n\t u = document.createElement(\"div\");t = document.createElement(o ? \"div\" : \"body\"), r = { visibility: \"hidden\", width: 0, height: 0, border: 0, margin: 0, background: \"none\" }, o && e.extend(r, { position: \"absolute\", left: \"-1000px\", top: \"-1000px\" });for (s in r) t.style[s] = r[s];t.appendChild(u), n = o || document.documentElement, n.insertBefore(t, n.firstChild), u.style.cssText = \"position: absolute; left: 10.7432222px;\", i = e(u).offset().left, e.support.offsetFractions = i > 10 && i < 11, t.innerHTML = \"\", n.removeChild(t);\n\t }(), e.uiBackCompat !== !1 && function (e) {\n\t var n = e.fn.position;e.fn.position = function (r) {\n\t if (!r || !r.offset) return n.call(this, r);var i = r.offset.split(\" \"),\n\t s = r.at.split(\" \");return i.length === 1 && (i[1] = i[0]), /^\\d/.test(i[0]) && (i[0] = \"+\" + i[0]), /^\\d/.test(i[1]) && (i[1] = \"+\" + i[1]), s.length === 1 && (/left|center|right/.test(s[0]) ? s[1] = \"center\" : (s[1] = s[0], s[0] = \"center\")), n.call(this, e.extend(r, { at: s[0] + i[0] + \" \" + s[1] + i[1], offset: t }));\n\t };\n\t }(jQuery);\n\t})(jQuery);(function (e, t) {\n\t var n = 0;e.widget(\"ui.autocomplete\", { version: \"1.9.1\", defaultElement: \"\", options: { appendTo: \"body\", autoFocus: !1, delay: 300, minLength: 1, position: { my: \"left top\", at: \"left bottom\", collision: \"none\" }, source: null, change: null, close: null, focus: null, open: null, response: null, search: null, select: null }, pending: 0, _create: function () {\n\t var t, n, r;this.isMultiLine = this._isMultiLine(), this.valueMethod = this.element[this.element.is(\"input,textarea\") ? \"val\" : \"text\"], this.isNewMenu = !0, this.element.addClass(\"ui-autocomplete-input\").attr(\"autocomplete\", \"off\"), this._on(this.element, { keydown: function (i) {\n\t if (this.element.prop(\"readOnly\")) {\n\t t = !0, r = !0, n = !0;return;\n\t }t = !1, r = !1, n = !1;var s = e.ui.keyCode;switch (i.keyCode) {case s.PAGE_UP:\n\t t = !0, this._move(\"previousPage\", i);break;case s.PAGE_DOWN:\n\t t = !0, this._move(\"nextPage\", i);break;case s.UP:\n\t t = !0, this._keyEvent(\"previous\", i);break;case s.DOWN:\n\t t = !0, this._keyEvent(\"next\", i);break;case s.ENTER:case s.NUMPAD_ENTER:\n\t this.menu.active && (t = !0, i.preventDefault(), this.menu.select(i));break;case s.TAB:\n\t this.menu.active && this.menu.select(i);break;case s.ESCAPE:\n\t this.menu.element.is(\":visible\") && (this._value(this.term), this.close(i), i.preventDefault());break;default:\n\t n = !0, this._searchTimeout(i);}\n\t }, keypress: function (r) {\n\t if (t) {\n\t t = !1, r.preventDefault();return;\n\t }if (n) return;var i = e.ui.keyCode;switch (r.keyCode) {case i.PAGE_UP:\n\t this._move(\"previousPage\", r);break;case i.PAGE_DOWN:\n\t this._move(\"nextPage\", r);break;case i.UP:\n\t this._keyEvent(\"previous\", r);break;case i.DOWN:\n\t this._keyEvent(\"next\", r);}\n\t }, input: function (e) {\n\t if (r) {\n\t r = !1, e.preventDefault();return;\n\t }this._searchTimeout(e);\n\t }, focus: function () {\n\t this.selectedItem = null, this.previous = this._value();\n\t }, blur: function (e) {\n\t if (this.cancelBlur) {\n\t delete this.cancelBlur;return;\n\t }clearTimeout(this.searching), this.close(e), this._change(e);\n\t } }), this._initSource(), this.menu = e(\"
      \").addClass(\"ui-autocomplete\").appendTo(this.document.find(this.options.appendTo || \"body\")[0]).menu({ input: e(), role: null }).zIndex(this.element.zIndex() + 1).hide().data(\"menu\"), this._on(this.menu.element, { mousedown: function (t) {\n\t t.preventDefault(), this.cancelBlur = !0, this._delay(function () {\n\t delete this.cancelBlur;\n\t });var n = this.menu.element[0];e(t.target).closest(\".ui-menu-item\").length || this._delay(function () {\n\t var t = this;this.document.one(\"mousedown\", function (r) {\n\t r.target !== t.element[0] && r.target !== n && !e.contains(n, r.target) && t.close();\n\t });\n\t });\n\t }, menufocus: function (t, n) {\n\t if (this.isNewMenu) {\n\t this.isNewMenu = !1;if (t.originalEvent && /^mouse/.test(t.originalEvent.type)) {\n\t this.menu.blur(), this.document.one(\"mousemove\", function () {\n\t e(t.target).trigger(t.originalEvent);\n\t });return;\n\t }\n\t }var r = n.item.data(\"ui-autocomplete-item\") || n.item.data(\"item.autocomplete\");!1 !== this._trigger(\"focus\", t, { item: r }) ? t.originalEvent && /^key/.test(t.originalEvent.type) && this._value(r.value) : this.liveRegion.text(r.value);\n\t }, menuselect: function (e, t) {\n\t var n = t.item.data(\"ui-autocomplete-item\") || t.item.data(\"item.autocomplete\"),\n\t r = this.previous;this.element[0] !== this.document[0].activeElement && (this.element.focus(), this.previous = r, this._delay(function () {\n\t this.previous = r, this.selectedItem = n;\n\t })), !1 !== this._trigger(\"select\", e, { item: n }) && this._value(n.value), this.term = this._value(), this.close(e), this.selectedItem = n;\n\t } }), this.liveRegion = e(\"\", { role: \"status\", \"aria-live\": \"polite\" }).addClass(\"ui-helper-hidden-accessible\").insertAfter(this.element), e.fn.bgiframe && this.menu.element.bgiframe(), this._on(this.window, { beforeunload: function () {\n\t this.element.removeAttr(\"autocomplete\");\n\t } });\n\t }, _destroy: function () {\n\t clearTimeout(this.searching), this.element.removeClass(\"ui-autocomplete-input\").removeAttr(\"autocomplete\"), this.menu.element.remove(), this.liveRegion.remove();\n\t }, _setOption: function (e, t) {\n\t this._super(e, t), e === \"source\" && this._initSource(), e === \"appendTo\" && this.menu.element.appendTo(this.document.find(t || \"body\")[0]), e === \"disabled\" && t && this.xhr && this.xhr.abort();\n\t }, _isMultiLine: function () {\n\t return this.element.is(\"textarea\") ? !0 : this.element.is(\"input\") ? !1 : this.element.prop(\"isContentEditable\");\n\t }, _initSource: function () {\n\t var t,\n\t n,\n\t r = this;e.isArray(this.options.source) ? (t = this.options.source, this.source = function (n, r) {\n\t r(e.ui.autocomplete.filter(t, n.term));\n\t }) : typeof this.options.source == \"string\" ? (n = this.options.source, this.source = function (t, i) {\n\t r.xhr && r.xhr.abort(), r.xhr = e.ajax({ url: n, data: t, dataType: \"json\", success: function (e) {\n\t i(e);\n\t }, error: function () {\n\t i([]);\n\t } });\n\t }) : this.source = this.options.source;\n\t }, _searchTimeout: function (e) {\n\t clearTimeout(this.searching), this.searching = this._delay(function () {\n\t this.term !== this._value() && (this.selectedItem = null, this.search(null, e));\n\t }, this.options.delay);\n\t }, search: function (e, t) {\n\t e = e != null ? e : this._value(), this.term = this._value();if (e.length < this.options.minLength) return this.close(t);if (this._trigger(\"search\", t) === !1) return;return this._search(e);\n\t }, _search: function (e) {\n\t this.pending++, this.element.addClass(\"ui-autocomplete-loading\"), this.cancelSearch = !1, this.source({ term: e }, this._response());\n\t }, _response: function () {\n\t var e = this,\n\t t = ++n;return function (r) {\n\t t === n && e.__response(r), e.pending--, e.pending || e.element.removeClass(\"ui-autocomplete-loading\");\n\t };\n\t }, __response: function (e) {\n\t e && (e = this._normalize(e)), this._trigger(\"response\", null, { content: e }), !this.options.disabled && e && e.length && !this.cancelSearch ? (this._suggest(e), this._trigger(\"open\")) : this._close();\n\t }, close: function (e) {\n\t this.cancelSearch = !0, this._close(e);\n\t }, _close: function (e) {\n\t this.menu.element.is(\":visible\") && (this.menu.element.hide(), this.menu.blur(), this.isNewMenu = !0, this._trigger(\"close\", e));\n\t }, _change: function (e) {\n\t this.previous !== this._value() && this._trigger(\"change\", e, { item: this.selectedItem });\n\t }, _normalize: function (t) {\n\t return t.length && t[0].label && t[0].value ? t : e.map(t, function (t) {\n\t return typeof t == \"string\" ? { label: t, value: t } : e.extend({ label: t.label || t.value, value: t.value || t.label }, t);\n\t });\n\t }, _suggest: function (t) {\n\t var n = this.menu.element.empty().zIndex(this.element.zIndex() + 1);this._renderMenu(n, t), this.menu.refresh(), n.show(), this._resizeMenu(), n.position(e.extend({ of: this.element }, this.options.position)), this.options.autoFocus && this.menu.next();\n\t }, _resizeMenu: function () {\n\t var e = this.menu.element;e.outerWidth(Math.max(e.width(\"\").outerWidth() + 1, this.element.outerWidth()));\n\t }, _renderMenu: function (t, n) {\n\t var r = this;e.each(n, function (e, n) {\n\t r._renderItemData(t, n);\n\t });\n\t }, _renderItemData: function (e, t) {\n\t return this._renderItem(e, t).data(\"ui-autocomplete-item\", t);\n\t }, _renderItem: function (t, n) {\n\t return e(\"
    • \").append(e(\"\").text(n.label)).appendTo(t);\n\t }, _move: function (e, t) {\n\t if (!this.menu.element.is(\":visible\")) {\n\t this.search(null, t);return;\n\t }if (this.menu.isFirstItem() && /^previous/.test(e) || this.menu.isLastItem() && /^next/.test(e)) {\n\t this._value(this.term), this.menu.blur();return;\n\t }this.menu[e](t);\n\t }, widget: function () {\n\t return this.menu.element;\n\t }, _value: function () {\n\t return this.valueMethod.apply(this.element, arguments);\n\t }, _keyEvent: function (e, t) {\n\t if (!this.isMultiLine || this.menu.element.is(\":visible\")) this._move(e, t), t.preventDefault();\n\t } }), e.extend(e.ui.autocomplete, { escapeRegex: function (e) {\n\t return e.replace(/[\\-\\[\\]{}()*+?.,\\\\\\^$|#\\s]/g, \"\\\\$&\");\n\t }, filter: function (t, n) {\n\t var r = new RegExp(e.ui.autocomplete.escapeRegex(n), \"i\");return e.grep(t, function (e) {\n\t return r.test(e.label || e.value || e);\n\t });\n\t } }), e.widget(\"ui.autocomplete\", e.ui.autocomplete, { options: { messages: { noResults: \"No search results.\", results: function (e) {\n\t return e + (e > 1 ? \" results are\" : \" result is\") + \" available, use up and down arrow keys to navigate.\";\n\t } } }, __response: function (e) {\n\t var t;this._superApply(arguments);if (this.options.disabled || this.cancelSearch) return;e && e.length ? t = this.options.messages.results(e.length) : t = this.options.messages.noResults, this.liveRegion.text(t);\n\t } });\n\t})(jQuery);(function (e, t) {\n\t var n,\n\t r,\n\t i,\n\t s,\n\t o = \"ui-button ui-widget ui-state-default ui-corner-all\",\n\t u = \"ui-state-hover ui-state-active \",\n\t a = \"ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only\",\n\t f = function () {\n\t var t = e(this).find(\":ui-button\");setTimeout(function () {\n\t t.button(\"refresh\");\n\t }, 1);\n\t },\n\t l = function (t) {\n\t var n = t.name,\n\t r = t.form,\n\t i = e([]);return n && (r ? i = e(r).find(\"[name='\" + n + \"']\") : i = e(\"[name='\" + n + \"']\", t.ownerDocument).filter(function () {\n\t return !this.form;\n\t })), i;\n\t };e.widget(\"ui.button\", { version: \"1.9.1\", defaultElement: \"
    \"\n )\n });\n modal.show( { backdrop: true } );\n}\n\n\n// ============================================================================\n return {\n Modal : Modal,\n hide_modal : hide_modal,\n show_modal : show_modal,\n show_message : show_message,\n show_in_overlay : show_in_overlay,\n };\n});\n\n\n\n// WEBPACK FOOTER //\n// ./galaxy/scripts/layout/modal.js","/* ========================================================================\n * bootstrap-tour - v0.10.2\n * http://bootstraptour.com\n * ========================================================================\n * Copyright 2012-2015 Ulrich Sossou\n *\n * ========================================================================\n * Licensed under the MIT License (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://opensource.org/licenses/MIT\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ========================================================================\n */\n\n(function($, window) {\n var Tour, document;\n document = window.document;\n Tour = (function() {\n function Tour(options) {\n var storage;\n try {\n storage = window.localStorage;\n } catch (_error) {\n storage = false;\n }\n this._options = $.extend({\n name: 'tour',\n steps: [],\n container: 'body',\n autoscroll: true,\n keyboard: true,\n storage: storage,\n debug: false,\n backdrop: false,\n backdropContainer: 'body',\n backdropPadding: 0,\n redirect: true,\n orphan: false,\n duration: false,\n delay: false,\n basePath: '',\n template: '

    ',\n afterSetState: function(key, value) {},\n afterGetState: function(key, value) {},\n afterRemoveState: function(key) {},\n onStart: function(tour) {},\n onEnd: function(tour) {},\n onShow: function(tour) {},\n onShown: function(tour) {},\n onHide: function(tour) {},\n onHidden: function(tour) {},\n onNext: function(tour) {},\n onPrev: function(tour) {},\n onPause: function(tour, duration) {},\n onResume: function(tour, duration) {},\n onRedirectError: function(tour) {}\n }, options);\n this._force = false;\n this._inited = false;\n this._current = null;\n this.backdrop = {\n overlay: null,\n $element: null,\n $background: null,\n backgroundShown: false,\n overlayElementShown: false\n };\n this;\n }\n\n Tour.prototype.addSteps = function(steps) {\n var step, _i, _len;\n for (_i = 0, _len = steps.length; _i < _len; _i++) {\n step = steps[_i];\n this.addStep(step);\n }\n return this;\n };\n\n Tour.prototype.addStep = function(step) {\n this._options.steps.push(step);\n return this;\n };\n\n Tour.prototype.getStep = function(i) {\n if (this._options.steps[i] != null) {\n return $.extend({\n id: \"step-\" + i,\n path: '',\n host: '',\n placement: 'right',\n title: '',\n content: '

    ',\n next: i === this._options.steps.length - 1 ? -1 : i + 1,\n prev: i - 1,\n animation: true,\n container: this._options.container,\n autoscroll: this._options.autoscroll,\n backdrop: this._options.backdrop,\n backdropContainer: this._options.backdropContainer,\n backdropPadding: this._options.backdropPadding,\n redirect: this._options.redirect,\n reflexElement: this._options.steps[i].element,\n orphan: this._options.orphan,\n duration: this._options.duration,\n delay: this._options.delay,\n template: this._options.template,\n onShow: this._options.onShow,\n onShown: this._options.onShown,\n onHide: this._options.onHide,\n onHidden: this._options.onHidden,\n onNext: this._options.onNext,\n onPrev: this._options.onPrev,\n onPause: this._options.onPause,\n onResume: this._options.onResume,\n onRedirectError: this._options.onRedirectError\n }, this._options.steps[i]);\n }\n };\n\n Tour.prototype.init = function(force) {\n this._force = force;\n if (this.ended()) {\n this._debug('Tour ended, init prevented.');\n return this;\n }\n this.setCurrentStep();\n this._initMouseNavigation();\n this._initKeyboardNavigation();\n this._onResize((function(_this) {\n return function() {\n return _this.showStep(_this._current);\n };\n })(this));\n if (this._current !== null) {\n this.showStep(this._current);\n }\n this._inited = true;\n return this;\n };\n\n Tour.prototype.start = function(force) {\n var promise;\n if (force == null) {\n force = false;\n }\n if (!this._inited) {\n this.init(force);\n }\n if (this._current === null) {\n promise = this._makePromise(this._options.onStart != null ? this._options.onStart(this) : void 0);\n this._callOnPromiseDone(promise, this.showStep, 0);\n }\n return this;\n };\n\n Tour.prototype.next = function() {\n var promise;\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, this._showNextStep);\n };\n\n Tour.prototype.prev = function() {\n var promise;\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, this._showPrevStep);\n };\n\n Tour.prototype.goTo = function(i) {\n var promise;\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, this.showStep, i);\n };\n\n Tour.prototype.end = function() {\n var endHelper, promise;\n endHelper = (function(_this) {\n return function(e) {\n $(document).off(\"click.tour-\" + _this._options.name);\n $(document).off(\"keyup.tour-\" + _this._options.name);\n $(window).off(\"resize.tour-\" + _this._options.name);\n _this._setState('end', 'yes');\n _this._inited = false;\n _this._force = false;\n _this._clearTimer();\n if (_this._options.onEnd != null) {\n return _this._options.onEnd(_this);\n }\n };\n })(this);\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, endHelper);\n };\n\n Tour.prototype.ended = function() {\n return !this._force && !!this._getState('end');\n };\n\n Tour.prototype.restart = function() {\n this._removeState('current_step');\n this._removeState('end');\n this._removeState('redirect_to');\n return this.start();\n };\n\n Tour.prototype.pause = function() {\n var step;\n step = this.getStep(this._current);\n if (!(step && step.duration)) {\n return this;\n }\n this._paused = true;\n this._duration -= new Date().getTime() - this._start;\n window.clearTimeout(this._timer);\n this._debug(\"Paused/Stopped step \" + (this._current + 1) + \" timer (\" + this._duration + \" remaining).\");\n if (step.onPause != null) {\n return step.onPause(this, this._duration);\n }\n };\n\n Tour.prototype.resume = function() {\n var step;\n step = this.getStep(this._current);\n if (!(step && step.duration)) {\n return this;\n }\n this._paused = false;\n this._start = new Date().getTime();\n this._duration = this._duration || step.duration;\n this._timer = window.setTimeout((function(_this) {\n return function() {\n if (_this._isLast()) {\n return _this.next();\n } else {\n return _this.end();\n }\n };\n })(this), this._duration);\n this._debug(\"Started step \" + (this._current + 1) + \" timer with duration \" + this._duration);\n if ((step.onResume != null) && this._duration !== step.duration) {\n return step.onResume(this, this._duration);\n }\n };\n\n Tour.prototype.hideStep = function(i) {\n var hideStepHelper, promise, step;\n step = this.getStep(i);\n if (!step) {\n return;\n }\n this._clearTimer();\n promise = this._makePromise(step.onHide != null ? step.onHide(this, i) : void 0);\n hideStepHelper = (function(_this) {\n return function(e) {\n var $element;\n $element = $(step.element);\n if (!($element.data('bs.popover') || $element.data('popover'))) {\n $element = $('body');\n }\n $element.popover('destroy').removeClass(\"tour-\" + _this._options.name + \"-element tour-\" + _this._options.name + \"-\" + i + \"-element\");\n $element.removeData('bs.popover');\n if (step.reflex) {\n $(step.reflexElement).removeClass('tour-step-element-reflex').off(\"\" + (_this._reflexEvent(step.reflex)) + \".tour-\" + _this._options.name);\n }\n if (step.backdrop) {\n _this._hideBackdrop();\n }\n if (step.onHidden != null) {\n return step.onHidden(_this);\n }\n };\n })(this);\n this._callOnPromiseDone(promise, hideStepHelper);\n return promise;\n };\n\n Tour.prototype.showStep = function(i) {\n var promise, showStepHelper, skipToPrevious, step;\n if (this.ended()) {\n this._debug('Tour ended, showStep prevented.');\n return this;\n }\n step = this.getStep(i);\n if (!step) {\n return;\n }\n skipToPrevious = i < this._current;\n promise = this._makePromise(step.onShow != null ? step.onShow(this, i) : void 0);\n showStepHelper = (function(_this) {\n return function(e) {\n var path, showPopoverAndOverlay;\n _this.setCurrentStep(i);\n path = (function() {\n switch ({}.toString.call(step.path)) {\n case '[object Function]':\n return step.path();\n case '[object String]':\n return this._options.basePath + step.path;\n default:\n return step.path;\n }\n }).call(_this);\n if (_this._isRedirect(step.host, path, document.location)) {\n _this._redirect(step, i, path);\n if (!_this._isJustPathHashDifferent(step.host, path, document.location)) {\n return;\n }\n }\n if (_this._isOrphan(step)) {\n if (step.orphan === false) {\n _this._debug(\"Skip the orphan step \" + (_this._current + 1) + \".\\nOrphan option is false and the element does not exist or is hidden.\");\n if (skipToPrevious) {\n _this._showPrevStep();\n } else {\n _this._showNextStep();\n }\n return;\n }\n _this._debug(\"Show the orphan step \" + (_this._current + 1) + \". Orphans option is true.\");\n }\n if (step.backdrop) {\n _this._showBackdrop(step);\n }\n showPopoverAndOverlay = function() {\n if (_this.getCurrentStep() !== i || _this.ended()) {\n return;\n }\n if ((step.element != null) && step.backdrop) {\n _this._showOverlayElement(step);\n }\n _this._showPopover(step, i);\n if (step.onShown != null) {\n step.onShown(_this);\n }\n return _this._debug(\"Step \" + (_this._current + 1) + \" of \" + _this._options.steps.length);\n };\n if (step.autoscroll) {\n _this._scrollIntoView(step.element, showPopoverAndOverlay);\n } else {\n showPopoverAndOverlay();\n }\n if (step.duration) {\n return _this.resume();\n }\n };\n })(this);\n if (step.delay) {\n this._debug(\"Wait \" + step.delay + \" milliseconds to show the step \" + (this._current + 1));\n window.setTimeout((function(_this) {\n return function() {\n return _this._callOnPromiseDone(promise, showStepHelper);\n };\n })(this), step.delay);\n } else {\n this._callOnPromiseDone(promise, showStepHelper);\n }\n return promise;\n };\n\n Tour.prototype.getCurrentStep = function() {\n return this._current;\n };\n\n Tour.prototype.setCurrentStep = function(value) {\n if (value != null) {\n this._current = value;\n this._setState('current_step', value);\n } else {\n this._current = this._getState('current_step');\n this._current = this._current === null ? null : parseInt(this._current, 10);\n }\n return this;\n };\n\n Tour.prototype.redraw = function() {\n return this._showOverlayElement(this.getStep(this.getCurrentStep()).element, true);\n };\n\n Tour.prototype._setState = function(key, value) {\n var e, keyName;\n if (this._options.storage) {\n keyName = \"\" + this._options.name + \"_\" + key;\n try {\n this._options.storage.setItem(keyName, value);\n } catch (_error) {\n e = _error;\n if (e.code === DOMException.QUOTA_EXCEEDED_ERR) {\n this._debug('LocalStorage quota exceeded. State storage failed.');\n }\n }\n return this._options.afterSetState(keyName, value);\n } else {\n if (this._state == null) {\n this._state = {};\n }\n return this._state[key] = value;\n }\n };\n\n Tour.prototype._removeState = function(key) {\n var keyName;\n if (this._options.storage) {\n keyName = \"\" + this._options.name + \"_\" + key;\n this._options.storage.removeItem(keyName);\n return this._options.afterRemoveState(keyName);\n } else {\n if (this._state != null) {\n return delete this._state[key];\n }\n }\n };\n\n Tour.prototype._getState = function(key) {\n var keyName, value;\n if (this._options.storage) {\n keyName = \"\" + this._options.name + \"_\" + key;\n value = this._options.storage.getItem(keyName);\n } else {\n if (this._state != null) {\n value = this._state[key];\n }\n }\n if (value === void 0 || value === 'null') {\n value = null;\n }\n this._options.afterGetState(key, value);\n return value;\n };\n\n Tour.prototype._showNextStep = function() {\n var promise, showNextStepHelper, step;\n step = this.getStep(this._current);\n showNextStepHelper = (function(_this) {\n return function(e) {\n return _this.showStep(step.next);\n };\n })(this);\n promise = this._makePromise(step.onNext != null ? step.onNext(this) : void 0);\n return this._callOnPromiseDone(promise, showNextStepHelper);\n };\n\n Tour.prototype._showPrevStep = function() {\n var promise, showPrevStepHelper, step;\n step = this.getStep(this._current);\n showPrevStepHelper = (function(_this) {\n return function(e) {\n return _this.showStep(step.prev);\n };\n })(this);\n promise = this._makePromise(step.onPrev != null ? step.onPrev(this) : void 0);\n return this._callOnPromiseDone(promise, showPrevStepHelper);\n };\n\n Tour.prototype._debug = function(text) {\n if (this._options.debug) {\n return window.console.log(\"Bootstrap Tour '\" + this._options.name + \"' | \" + text);\n }\n };\n\n Tour.prototype._isRedirect = function(host, path, location) {\n var currentPath;\n if (host !== '') {\n if (this._isHostDifferent(host, location.href)) {\n return true;\n }\n }\n currentPath = [location.pathname, location.search, location.hash].join('');\n return (path != null) && path !== '' && (({}.toString.call(path) === '[object RegExp]' && !path.test(currentPath)) || ({}.toString.call(path) === '[object String]' && this._isPathDifferent(path, currentPath)));\n };\n\n Tour.prototype._isHostDifferent = function(host, currentURL) {\n return this._getProtocol(host) !== this._getProtocol(currentURL) || this._getHost(host) !== this._getHost(currentURL);\n };\n\n Tour.prototype._isPathDifferent = function(path, currentPath) {\n return this._getPath(path) !== this._getPath(currentPath) || !this._equal(this._getQuery(path), this._getQuery(currentPath)) || !this._equal(this._getHash(path), this._getHash(currentPath));\n };\n\n Tour.prototype._isJustPathHashDifferent = function(host, path, location) {\n var currentPath;\n if (host !== '') {\n if (this._isHostDifferent(host, location.href)) {\n return false;\n }\n }\n currentPath = [location.pathname, location.search, location.hash].join('');\n if ({}.toString.call(path) === '[object String]') {\n return this._getPath(path) === this._getPath(currentPath) && this._equal(this._getQuery(path), this._getQuery(currentPath)) && !this._equal(this._getHash(path), this._getHash(currentPath));\n }\n return false;\n };\n\n Tour.prototype._redirect = function(step, i, path) {\n if ($.isFunction(step.redirect)) {\n return step.redirect.call(this, path);\n } else if (step.redirect === true) {\n this._debug(\"Redirect to \" + step.host + path);\n if (this._getState('redirect_to') === (\"\" + i)) {\n this._debug(\"Error redirection loop to \" + path);\n this._removeState('redirect_to');\n if (step.onRedirectError != null) {\n return step.onRedirectError(this);\n }\n } else {\n this._setState('redirect_to', \"\" + i);\n return document.location.href = \"\" + step.host + path;\n }\n }\n };\n\n Tour.prototype._isOrphan = function(step) {\n return (step.element == null) || !$(step.element).length || $(step.element).is(':hidden') && ($(step.element)[0].namespaceURI !== 'http://www.w3.org/2000/svg');\n };\n\n Tour.prototype._isLast = function() {\n return this._current < this._options.steps.length - 1;\n };\n\n Tour.prototype._showPopover = function(step, i) {\n var $element, $tip, isOrphan, options, shouldAddSmart;\n $(\".tour-\" + this._options.name).remove();\n options = $.extend({}, this._options);\n isOrphan = this._isOrphan(step);\n step.template = this._template(step, i);\n if (isOrphan) {\n step.element = 'body';\n step.placement = 'top';\n }\n $element = $(step.element);\n $element.addClass(\"tour-\" + this._options.name + \"-element tour-\" + this._options.name + \"-\" + i + \"-element\");\n if (step.options) {\n $.extend(options, step.options);\n }\n if (step.reflex && !isOrphan) {\n $(step.reflexElement).addClass('tour-step-element-reflex').off(\"\" + (this._reflexEvent(step.reflex)) + \".tour-\" + this._options.name).on(\"\" + (this._reflexEvent(step.reflex)) + \".tour-\" + this._options.name, (function(_this) {\n return function() {\n if (_this._isLast()) {\n return _this.next();\n } else {\n return _this.end();\n }\n };\n })(this));\n }\n shouldAddSmart = step.smartPlacement === true && step.placement.search(/auto/i) === -1;\n $element.popover({\n placement: shouldAddSmart ? \"auto \" + step.placement : step.placement,\n trigger: 'manual',\n title: step.title,\n content: step.content,\n html: true,\n animation: step.animation,\n container: step.container,\n template: step.template,\n selector: step.element\n }).popover('show');\n $tip = $element.data('bs.popover') ? $element.data('bs.popover').tip() : $element.data('popover').tip();\n $tip.attr('id', step.id);\n this._reposition($tip, step);\n if (isOrphan) {\n return this._center($tip);\n }\n };\n\n Tour.prototype._template = function(step, i) {\n var $navigation, $next, $prev, $resume, $template, template;\n template = step.template;\n if (this._isOrphan(step) && {}.toString.call(step.orphan) !== '[object Boolean]') {\n template = step.orphan;\n }\n $template = $.isFunction(template) ? $(template(i, step)) : $(template);\n $navigation = $template.find('.popover-navigation');\n $prev = $navigation.find('[data-role=\"prev\"]');\n $next = $navigation.find('[data-role=\"next\"]');\n $resume = $navigation.find('[data-role=\"pause-resume\"]');\n if (this._isOrphan(step)) {\n $template.addClass('orphan');\n }\n $template.addClass(\"tour-\" + this._options.name + \" tour-\" + this._options.name + \"-\" + i);\n if (step.reflex) {\n $template.addClass(\"tour-\" + this._options.name + \"-reflex\");\n }\n if (step.prev < 0) {\n $prev.addClass('disabled');\n $prev.prop('disabled', true);\n }\n if (step.next < 0) {\n $next.addClass('disabled');\n $next.prop('disabled', true);\n }\n if (!step.duration) {\n $resume.remove();\n }\n return $template.clone().wrap('
    ').parent().html();\n };\n\n Tour.prototype._reflexEvent = function(reflex) {\n if ({}.toString.call(reflex) === '[object Boolean]') {\n return 'click';\n } else {\n return reflex;\n }\n };\n\n Tour.prototype._reposition = function($tip, step) {\n var offsetBottom, offsetHeight, offsetRight, offsetWidth, originalLeft, originalTop, tipOffset;\n offsetWidth = $tip[0].offsetWidth;\n offsetHeight = $tip[0].offsetHeight;\n tipOffset = $tip.offset();\n originalLeft = tipOffset.left;\n originalTop = tipOffset.top;\n offsetBottom = $(document).outerHeight() - tipOffset.top - $tip.outerHeight();\n if (offsetBottom < 0) {\n tipOffset.top = tipOffset.top + offsetBottom;\n }\n offsetRight = $('html').outerWidth() - tipOffset.left - $tip.outerWidth();\n if (offsetRight < 0) {\n tipOffset.left = tipOffset.left + offsetRight;\n }\n if (tipOffset.top < 0) {\n tipOffset.top = 0;\n }\n if (tipOffset.left < 0) {\n tipOffset.left = 0;\n }\n $tip.offset(tipOffset);\n if (step.placement === 'bottom' || step.placement === 'top') {\n if (originalLeft !== tipOffset.left) {\n return this._replaceArrow($tip, (tipOffset.left - originalLeft) * 2, offsetWidth, 'left');\n }\n } else {\n if (originalTop !== tipOffset.top) {\n return this._replaceArrow($tip, (tipOffset.top - originalTop) * 2, offsetHeight, 'top');\n }\n }\n };\n\n Tour.prototype._center = function($tip) {\n return $tip.css('top', $(window).outerHeight() / 2 - $tip.outerHeight() / 2);\n };\n\n Tour.prototype._replaceArrow = function($tip, delta, dimension, position) {\n return $tip.find('.arrow').css(position, delta ? 50 * (1 - delta / dimension) + '%' : '');\n };\n\n Tour.prototype._scrollIntoView = function(element, callback) {\n var $element, $window, counter, offsetTop, scrollTop, windowHeight;\n $element = $(element);\n if (!$element.length) {\n return callback();\n }\n $window = $(window);\n offsetTop = $element.offset().top;\n windowHeight = $window.height();\n scrollTop = Math.max(0, offsetTop - (windowHeight / 2));\n this._debug(\"Scroll into view. ScrollTop: \" + scrollTop + \". Element offset: \" + offsetTop + \". Window height: \" + windowHeight + \".\");\n counter = 0;\n return $('body, html').stop(true, true).animate({\n scrollTop: Math.ceil(scrollTop)\n }, (function(_this) {\n return function() {\n if (++counter === 2) {\n callback();\n return _this._debug(\"Scroll into view.\\nAnimation end element offset: \" + ($element.offset().top) + \".\\nWindow height: \" + ($window.height()) + \".\");\n }\n };\n })(this));\n };\n\n Tour.prototype._onResize = function(callback, timeout) {\n return $(window).on(\"resize.tour-\" + this._options.name, function() {\n clearTimeout(timeout);\n return timeout = setTimeout(callback, 100);\n });\n };\n\n Tour.prototype._initMouseNavigation = function() {\n var _this;\n _this = this;\n return $(document).off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\").on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\", (function(_this) {\n return function(e) {\n e.preventDefault();\n return _this.next();\n };\n })(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\", (function(_this) {\n return function(e) {\n e.preventDefault();\n return _this.prev();\n };\n })(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\", (function(_this) {\n return function(e) {\n e.preventDefault();\n return _this.end();\n };\n })(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\", function(e) {\n var $this;\n e.preventDefault();\n $this = $(this);\n $this.text(_this._paused ? $this.data('pause-text') : $this.data('resume-text'));\n if (_this._paused) {\n return _this.resume();\n } else {\n return _this.pause();\n }\n });\n };\n\n Tour.prototype._initKeyboardNavigation = function() {\n if (!this._options.keyboard) {\n return;\n }\n return $(document).on(\"keyup.tour-\" + this._options.name, (function(_this) {\n return function(e) {\n if (!e.which) {\n return;\n }\n switch (e.which) {\n case 39:\n e.preventDefault();\n if (_this._isLast()) {\n return _this.next();\n } else {\n return _this.end();\n }\n break;\n case 37:\n e.preventDefault();\n if (_this._current > 0) {\n return _this.prev();\n }\n break;\n case 27:\n e.preventDefault();\n return _this.end();\n }\n };\n })(this));\n };\n\n Tour.prototype._makePromise = function(result) {\n if (result && $.isFunction(result.then)) {\n return result;\n } else {\n return null;\n }\n };\n\n Tour.prototype._callOnPromiseDone = function(promise, cb, arg) {\n if (promise) {\n return promise.then((function(_this) {\n return function(e) {\n return cb.call(_this, arg);\n };\n })(this));\n } else {\n return cb.call(this, arg);\n }\n };\n\n Tour.prototype._showBackdrop = function(step) {\n if (this.backdrop.backgroundShown) {\n return;\n }\n this.backdrop = $('
    ', {\n \"class\": 'tour-backdrop'\n });\n this.backdrop.backgroundShown = true;\n return $(step.backdropContainer).append(this.backdrop);\n };\n\n Tour.prototype._hideBackdrop = function() {\n this._hideOverlayElement();\n return this._hideBackground();\n };\n\n Tour.prototype._hideBackground = function() {\n if (this.backdrop) {\n this.backdrop.remove();\n this.backdrop.overlay = null;\n return this.backdrop.backgroundShown = false;\n }\n };\n\n Tour.prototype._showOverlayElement = function(step, force) {\n var $element, elementData;\n $element = $(step.element);\n if (!$element || $element.length === 0 || this.backdrop.overlayElementShown && !force) {\n return;\n }\n if (!this.backdrop.overlayElementShown) {\n this.backdrop.$element = $element.addClass('tour-step-backdrop');\n this.backdrop.$background = $('
    ', {\n \"class\": 'tour-step-background'\n });\n this.backdrop.$background.appendTo(step.backdropContainer);\n this.backdrop.overlayElementShown = true;\n }\n elementData = {\n width: $element.innerWidth(),\n height: $element.innerHeight(),\n offset: $element.offset()\n };\n if (step.backdropPadding) {\n elementData = this._applyBackdropPadding(step.backdropPadding, elementData);\n }\n return this.backdrop.$background.width(elementData.width).height(elementData.height).offset(elementData.offset);\n };\n\n Tour.prototype._hideOverlayElement = function() {\n if (!this.backdrop.overlayElementShown) {\n return;\n }\n this.backdrop.$element.removeClass('tour-step-backdrop');\n this.backdrop.$background.remove();\n this.backdrop.$element = null;\n this.backdrop.$background = null;\n return this.backdrop.overlayElementShown = false;\n };\n\n Tour.prototype._applyBackdropPadding = function(padding, data) {\n if (typeof padding === 'object') {\n if (padding.top == null) {\n padding.top = 0;\n }\n if (padding.right == null) {\n padding.right = 0;\n }\n if (padding.bottom == null) {\n padding.bottom = 0;\n }\n if (padding.left == null) {\n padding.left = 0;\n }\n data.offset.top = data.offset.top - padding.top;\n data.offset.left = data.offset.left - padding.left;\n data.width = data.width + padding.left + padding.right;\n data.height = data.height + padding.top + padding.bottom;\n } else {\n data.offset.top = data.offset.top - padding;\n data.offset.left = data.offset.left - padding;\n data.width = data.width + (padding * 2);\n data.height = data.height + (padding * 2);\n }\n return data;\n };\n\n Tour.prototype._clearTimer = function() {\n window.clearTimeout(this._timer);\n this._timer = null;\n return this._duration = null;\n };\n\n Tour.prototype._getProtocol = function(url) {\n url = url.split('://');\n if (url.length > 1) {\n return url[0];\n } else {\n return 'http';\n }\n };\n\n Tour.prototype._getHost = function(url) {\n url = url.split('//');\n url = url.length > 1 ? url[1] : url[0];\n return url.split('/')[0];\n };\n\n Tour.prototype._getPath = function(path) {\n return path.replace(/\\/?$/, '').split('?')[0].split('#')[0];\n };\n\n Tour.prototype._getQuery = function(path) {\n return this._getParams(path, '?');\n };\n\n Tour.prototype._getHash = function(path) {\n return this._getParams(path, '#');\n };\n\n Tour.prototype._getParams = function(path, start) {\n var param, params, paramsObject, _i, _len;\n params = path.split(start);\n if (params.length === 1) {\n return {};\n }\n params = params[1].split('&');\n paramsObject = {};\n for (_i = 0, _len = params.length; _i < _len; _i++) {\n param = params[_i];\n param = param.split('=');\n paramsObject[param[0]] = param[1] || '';\n }\n return paramsObject;\n };\n\n Tour.prototype._equal = function(obj1, obj2) {\n var k, v;\n if ({}.toString.call(obj1) === '[object Object]' && {}.toString.call(obj2) === '[object Object]') {\n for (k in obj1) {\n v = obj1[k];\n if (obj2[k] !== v) {\n return false;\n }\n }\n for (k in obj2) {\n v = obj2[k];\n if (obj1[k] !== v) {\n return false;\n }\n }\n return true;\n }\n return obj1 === obj2;\n };\n\n return Tour;\n\n })();\n return window.Tour = Tour;\n})(jQuery, window);\n\n\n\n// WEBPACK FOOTER //\n// ./galaxy/scripts/libs/bootstrap-tour.js","/*! jQuery UI - v1.9.1 - 2012-10-29\n* http://jqueryui.com\n* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.autocomplete.js, jquery.ui.button.js, jquery.ui.menu.js, jquery.ui.slider.js\n* Copyright (c) 2012 jQuery Foundation and other contributors Licensed MIT */\n\n(function(e,t){function i(t,n){var r,i,o,u=t.nodeName.toLowerCase();return\"area\"===u?(r=t.parentNode,i=r.name,!t.href||!i||r.nodeName.toLowerCase()!==\"map\"?!1:(o=e(\"img[usemap=#\"+i+\"]\")[0],!!o&&s(o))):(/input|select|textarea|button|object/.test(u)?!t.disabled:\"a\"===u?t.href||n:n)&&s(t)}function s(t){return e.expr.filters.visible(t)&&!e(t).parents().andSelf().filter(function(){return e.css(this,\"visibility\")===\"hidden\"}).length}var n=0,r=/^ui-id-\\d+$/;e.ui=e.ui||{};if(e.ui.version)return;e.extend(e.ui,{version:\"1.9.1\",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({_focus:e.fn.focus,focus:function(t,n){return typeof t==\"number\"?this.each(function(){var r=this;setTimeout(function(){e(r).focus(),n&&n.call(r)},t)}):this._focus.apply(this,arguments)},scrollParent:function(){var t;return e.ui.ie&&/(static|relative)/.test(this.css(\"position\"))||/absolute/.test(this.css(\"position\"))?t=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,\"position\"))&&/(auto|scroll)/.test(e.css(this,\"overflow\")+e.css(this,\"overflow-y\")+e.css(this,\"overflow-x\"))}).eq(0):t=this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,\"overflow\")+e.css(this,\"overflow-y\")+e.css(this,\"overflow-x\"))}).eq(0),/fixed/.test(this.css(\"position\"))||!t.length?e(document):t},zIndex:function(n){if(n!==t)return this.css(\"zIndex\",n);if(this.length){var r=e(this[0]),i,s;while(r.length&&r[0]!==document){i=r.css(\"position\");if(i===\"absolute\"||i===\"relative\"||i===\"fixed\"){s=parseInt(r.css(\"zIndex\"),10);if(!isNaN(s)&&s!==0)return s}r=r.parent()}}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id=\"ui-id-\"+ ++n)})},removeUniqueId:function(){return this.each(function(){r.test(this.id)&&e(this).removeAttr(\"id\")})}}),e(\"\").outerWidth(1).jquery||e.each([\"Width\",\"Height\"],function(n,r){function u(t,n,r,s){return e.each(i,function(){n-=parseFloat(e.css(t,\"padding\"+this))||0,r&&(n-=parseFloat(e.css(t,\"border\"+this+\"Width\"))||0),s&&(n-=parseFloat(e.css(t,\"margin\"+this))||0)}),n}var i=r===\"Width\"?[\"Left\",\"Right\"]:[\"Top\",\"Bottom\"],s=r.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn[\"inner\"+r]=function(n){return n===t?o[\"inner\"+r].call(this):this.each(function(){e(this).css(s,u(this,n)+\"px\")})},e.fn[\"outer\"+r]=function(t,n){return typeof t!=\"number\"?o[\"outer\"+r].call(this,t):this.each(function(){e(this).css(s,u(this,t,!0,n)+\"px\")})}}),e.extend(e.expr[\":\"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,\"tabindex\")))},tabbable:function(t){var n=e.attr(t,\"tabindex\"),r=isNaN(n);return(r||n>=0)&&i(t,!r)}}),e(function(){var t=document.body,n=t.appendChild(n=document.createElement(\"div\"));n.offsetHeight,e.extend(n.style,{minHeight:\"100px\",height:\"auto\",padding:0,borderWidth:0}),e.support.minHeight=n.offsetHeight===100,e.support.selectstart=\"onselectstart\"in n,t.removeChild(n).style.display=\"none\"}),function(){var t=/msie ([\\w.]+)/.exec(navigator.userAgent.toLowerCase())||[];e.ui.ie=t.length?!0:!1,e.ui.ie6=parseFloat(t[1],10)===6}(),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?\"selectstart\":\"mousedown\")+\".ui-disableSelection\",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(\".ui-disableSelection\")}}),e.extend(e.ui,{plugin:{add:function(t,n,r){var i,s=e.ui[t].prototype;for(i in r)s.plugins[i]=s.plugins[i]||[],s.plugins[i].push([n,r[i]])},call:function(e,t,n){var r,i=e.plugins[t];if(!i||!e.element[0].parentNode||e.element[0].parentNode.nodeType===11)return;for(r=0;r0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)},isOverAxis:function(e,t,n){return e>t&&e\",options:{disabled:!1,create:null},_createWidget:function(t,r){r=e(r||this.defaultElement||this)[0],this.element=e(r),this.uuid=n++,this.eventNamespace=\".\"+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),r!==this&&(e.data(r,this.widgetName,this),e.data(r,this.widgetFullName,this),this._on(this.element,{remove:function(e){e.target===r&&this.destroy()}}),this.document=e(r.style?r.ownerDocument:r.document||r),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger(\"create\",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr(\"aria-disabled\").removeClass(this.widgetFullName+\"-disabled \"+\"ui-state-disabled\"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass(\"ui-state-hover\"),this.focusable.removeClass(\"ui-state-focus\")},_destroy:e.noop,widget:function(){return this.element},option:function(n,r){var i=n,s,o,u;if(arguments.length===0)return e.widget.extend({},this.options);if(typeof n==\"string\"){i={},s=n.split(\".\"),n=s.shift();if(s.length){o=i[n]=e.widget.extend({},this.options[n]);for(u=0;u=9||!!t.button?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return e(document).unbind(\"mousemove.\"+this.widgetName,this._mouseMoveDelegate).unbind(\"mouseup.\"+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+\".preventClickEvent\",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(e){return this.mouseDelayMet},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return!0}})})(jQuery);(function(e,t){function h(e,t,n){return[parseInt(e[0],10)*(l.test(e[0])?t/100:1),parseInt(e[1],10)*(l.test(e[1])?n/100:1)]}function p(t,n){return parseInt(e.css(t,n),10)||0}e.ui=e.ui||{};var n,r=Math.max,i=Math.abs,s=Math.round,o=/left|center|right/,u=/top|center|bottom/,a=/[\\+\\-]\\d+%?/,f=/^\\w+/,l=/%$/,c=e.fn.position;e.position={scrollbarWidth:function(){if(n!==t)return n;var r,i,s=e(\"
    \"),o=s.children()[0];return e(\"body\").append(s),r=o.offsetWidth,s.css(\"overflow\",\"scroll\"),i=o.offsetWidth,r===i&&(i=s[0].clientWidth),s.remove(),n=r-i},getScrollInfo:function(t){var n=t.isWindow?\"\":t.element.css(\"overflow-x\"),r=t.isWindow?\"\":t.element.css(\"overflow-y\"),i=n===\"scroll\"||n===\"auto\"&&t.width0?\"right\":\"center\",vertical:u<0?\"top\":o>0?\"bottom\":\"middle\"};lr(i(o),i(u))?h.important=\"horizontal\":h.important=\"vertical\",t.using.call(this,e,h)}),a.offset(e.extend(C,{using:u}))})},e.ui.position={fit:{left:function(e,t){var n=t.within,i=n.isWindow?n.scrollLeft:n.offset.left,s=n.width,o=e.left-t.collisionPosition.marginLeft,u=i-o,a=o+t.collisionWidth-s-i,f;t.collisionWidth>s?u>0&&a<=0?(f=e.left+u+t.collisionWidth-s-i,e.left+=u-f):a>0&&u<=0?e.left=i:u>a?e.left=i+s-t.collisionWidth:e.left=i:u>0?e.left+=u:a>0?e.left-=a:e.left=r(e.left-o,e.left)},top:function(e,t){var n=t.within,i=n.isWindow?n.scrollTop:n.offset.top,s=t.within.height,o=e.top-t.collisionPosition.marginTop,u=i-o,a=o+t.collisionHeight-s-i,f;t.collisionHeight>s?u>0&&a<=0?(f=e.top+u+t.collisionHeight-s-i,e.top+=u-f):a>0&&u<=0?e.top=i:u>a?e.top=i+s-t.collisionHeight:e.top=i:u>0?e.top+=u:a>0?e.top-=a:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var n=t.within,r=n.offset.left+n.scrollLeft,s=n.width,o=n.isWindow?n.scrollLeft:n.offset.left,u=e.left-t.collisionPosition.marginLeft,a=u-o,f=u+t.collisionWidth-s-o,l=t.my[0]===\"left\"?-t.elemWidth:t.my[0]===\"right\"?t.elemWidth:0,c=t.at[0]===\"left\"?t.targetWidth:t.at[0]===\"right\"?-t.targetWidth:0,h=-2*t.offset[0],p,d;if(a<0){p=e.left+l+c+h+t.collisionWidth-s-r;if(p<0||p0){d=e.left-t.collisionPosition.marginLeft+l+c+h-o;if(d>0||i(d)a&&(v<0||v0&&(d=e.top-t.collisionPosition.marginTop+c+h+p-o,e.top+c+h+p>f&&(d>0||i(d)10&&i<11,t.innerHTML=\"\",n.removeChild(t)}(),e.uiBackCompat!==!1&&function(e){var n=e.fn.position;e.fn.position=function(r){if(!r||!r.offset)return n.call(this,r);var i=r.offset.split(\" \"),s=r.at.split(\" \");return i.length===1&&(i[1]=i[0]),/^\\d/.test(i[0])&&(i[0]=\"+\"+i[0]),/^\\d/.test(i[1])&&(i[1]=\"+\"+i[1]),s.length===1&&(/left|center|right/.test(s[0])?s[1]=\"center\":(s[1]=s[0],s[0]=\"center\")),n.call(this,e.extend(r,{at:s[0]+i[0]+\" \"+s[1]+i[1],offset:t}))}}(jQuery)})(jQuery);(function(e,t){var n=0;e.widget(\"ui.autocomplete\",{version:\"1.9.1\",defaultElement:\"\",options:{appendTo:\"body\",autoFocus:!1,delay:300,minLength:1,position:{my:\"left top\",at:\"left bottom\",collision:\"none\"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},pending:0,_create:function(){var t,n,r;this.isMultiLine=this._isMultiLine(),this.valueMethod=this.element[this.element.is(\"input,textarea\")?\"val\":\"text\"],this.isNewMenu=!0,this.element.addClass(\"ui-autocomplete-input\").attr(\"autocomplete\",\"off\"),this._on(this.element,{keydown:function(i){if(this.element.prop(\"readOnly\")){t=!0,r=!0,n=!0;return}t=!1,r=!1,n=!1;var s=e.ui.keyCode;switch(i.keyCode){case s.PAGE_UP:t=!0,this._move(\"previousPage\",i);break;case s.PAGE_DOWN:t=!0,this._move(\"nextPage\",i);break;case s.UP:t=!0,this._keyEvent(\"previous\",i);break;case s.DOWN:t=!0,this._keyEvent(\"next\",i);break;case s.ENTER:case s.NUMPAD_ENTER:this.menu.active&&(t=!0,i.preventDefault(),this.menu.select(i));break;case s.TAB:this.menu.active&&this.menu.select(i);break;case s.ESCAPE:this.menu.element.is(\":visible\")&&(this._value(this.term),this.close(i),i.preventDefault());break;default:n=!0,this._searchTimeout(i)}},keypress:function(r){if(t){t=!1,r.preventDefault();return}if(n)return;var i=e.ui.keyCode;switch(r.keyCode){case i.PAGE_UP:this._move(\"previousPage\",r);break;case i.PAGE_DOWN:this._move(\"nextPage\",r);break;case i.UP:this._keyEvent(\"previous\",r);break;case i.DOWN:this._keyEvent(\"next\",r)}},input:function(e){if(r){r=!1,e.preventDefault();return}this._searchTimeout(e)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){if(this.cancelBlur){delete this.cancelBlur;return}clearTimeout(this.searching),this.close(e),this._change(e)}}),this._initSource(),this.menu=e(\"
      \").addClass(\"ui-autocomplete\").appendTo(this.document.find(this.options.appendTo||\"body\")[0]).menu({input:e(),role:null}).zIndex(this.element.zIndex()+1).hide().data(\"menu\"),this._on(this.menu.element,{mousedown:function(t){t.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur});var n=this.menu.element[0];e(t.target).closest(\".ui-menu-item\").length||this._delay(function(){var t=this;this.document.one(\"mousedown\",function(r){r.target!==t.element[0]&&r.target!==n&&!e.contains(n,r.target)&&t.close()})})},menufocus:function(t,n){if(this.isNewMenu){this.isNewMenu=!1;if(t.originalEvent&&/^mouse/.test(t.originalEvent.type)){this.menu.blur(),this.document.one(\"mousemove\",function(){e(t.target).trigger(t.originalEvent)});return}}var r=n.item.data(\"ui-autocomplete-item\")||n.item.data(\"item.autocomplete\");!1!==this._trigger(\"focus\",t,{item:r})?t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(r.value):this.liveRegion.text(r.value)},menuselect:function(e,t){var n=t.item.data(\"ui-autocomplete-item\")||t.item.data(\"item.autocomplete\"),r=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=r,this._delay(function(){this.previous=r,this.selectedItem=n})),!1!==this._trigger(\"select\",e,{item:n})&&this._value(n.value),this.term=this._value(),this.close(e),this.selectedItem=n}}),this.liveRegion=e(\"\",{role:\"status\",\"aria-live\":\"polite\"}).addClass(\"ui-helper-hidden-accessible\").insertAfter(this.element),e.fn.bgiframe&&this.menu.element.bgiframe(),this._on(this.window,{beforeunload:function(){this.element.removeAttr(\"autocomplete\")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeClass(\"ui-autocomplete-input\").removeAttr(\"autocomplete\"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),e===\"source\"&&this._initSource(),e===\"appendTo\"&&this.menu.element.appendTo(this.document.find(t||\"body\")[0]),e===\"disabled\"&&t&&this.xhr&&this.xhr.abort()},_isMultiLine:function(){return this.element.is(\"textarea\")?!0:this.element.is(\"input\")?!1:this.element.prop(\"isContentEditable\")},_initSource:function(){var t,n,r=this;e.isArray(this.options.source)?(t=this.options.source,this.source=function(n,r){r(e.ui.autocomplete.filter(t,n.term))}):typeof this.options.source==\"string\"?(n=this.options.source,this.source=function(t,i){r.xhr&&r.xhr.abort(),r.xhr=e.ajax({url:n,data:t,dataType:\"json\",success:function(e){i(e)},error:function(){i([])}})}):this.source=this.options.source},_searchTimeout:function(e){clearTimeout(this.searching),this.searching=this._delay(function(){this.term!==this._value()&&(this.selectedItem=null,this.search(null,e))},this.options.delay)},search:function(e,t){e=e!=null?e:this._value(),this.term=this._value();if(e.length\").append(e(\"\").text(n.label)).appendTo(t)},_move:function(e,t){if(!this.menu.element.is(\":visible\")){this.search(null,t);return}if(this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)){this._value(this.term),this.menu.blur();return}this.menu[e](t)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){if(!this.isMultiLine||this.menu.element.is(\":visible\"))this._move(e,t),t.preventDefault()}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\\-\\[\\]{}()*+?.,\\\\\\^$|#\\s]/g,\"\\\\$&\")},filter:function(t,n){var r=new RegExp(e.ui.autocomplete.escapeRegex(n),\"i\");return e.grep(t,function(e){return r.test(e.label||e.value||e)})}}),e.widget(\"ui.autocomplete\",e.ui.autocomplete,{options:{messages:{noResults:\"No search results.\",results:function(e){return e+(e>1?\" results are\":\" result is\")+\" available, use up and down arrow keys to navigate.\"}}},__response:function(e){var t;this._superApply(arguments);if(this.options.disabled||this.cancelSearch)return;e&&e.length?t=this.options.messages.results(e.length):t=this.options.messages.noResults,this.liveRegion.text(t)}})})(jQuery);(function(e,t){var n,r,i,s,o=\"ui-button ui-widget ui-state-default ui-corner-all\",u=\"ui-state-hover ui-state-active \",a=\"ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only\",f=function(){var t=e(this).find(\":ui-button\");setTimeout(function(){t.button(\"refresh\")},1)},l=function(t){var n=t.name,r=t.form,i=e([]);return n&&(r?i=e(r).find(\"[name='\"+n+\"']\"):i=e(\"[name='\"+n+\"']\",t.ownerDocument).filter(function(){return!this.form})),i};e.widget(\"ui.button\",{version:\"1.9.1\",defaultElement:\"
    \")\n\t });\n\t modal.show({ backdrop: true });\n\t }\n\t\n\t // ============================================================================\n\t return {\n\t Modal: Modal,\n\t hide_modal: hide_modal,\n\t show_modal: show_modal,\n\t show_message: show_message,\n\t show_in_overlay: show_in_overlay\n\t };\n\t}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\n/***/ }),\n/* 67 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(jQuery) {/* ========================================================================\n\t * bootstrap-tour - v0.10.2\n\t * http://bootstraptour.com\n\t * ========================================================================\n\t * Copyright 2012-2015 Ulrich Sossou\n\t *\n\t * ========================================================================\n\t * Licensed under the MIT License (the \"License\");\n\t * you may not use this file except in compliance with the License.\n\t * You may obtain a copy of the License at\n\t *\n\t * https://opensource.org/licenses/MIT\n\t *\n\t * Unless required by applicable law or agreed to in writing, software\n\t * distributed under the License is distributed on an \"AS IS\" BASIS,\n\t * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n\t * See the License for the specific language governing permissions and\n\t * limitations under the License.\n\t * ========================================================================\n\t */\n\t\n\t(function ($, window) {\n\t var Tour, document;\n\t document = window.document;\n\t Tour = function () {\n\t function Tour(options) {\n\t var storage;\n\t try {\n\t storage = window.localStorage;\n\t } catch (_error) {\n\t storage = false;\n\t }\n\t this._options = $.extend({\n\t name: 'tour',\n\t steps: [],\n\t container: 'body',\n\t autoscroll: true,\n\t keyboard: true,\n\t storage: storage,\n\t debug: false,\n\t backdrop: false,\n\t backdropContainer: 'body',\n\t backdropPadding: 0,\n\t redirect: true,\n\t orphan: false,\n\t duration: false,\n\t delay: false,\n\t basePath: '',\n\t template: '

    ',\n\t afterSetState: function (key, value) {},\n\t afterGetState: function (key, value) {},\n\t afterRemoveState: function (key) {},\n\t onStart: function (tour) {},\n\t onEnd: function (tour) {},\n\t onShow: function (tour) {},\n\t onShown: function (tour) {},\n\t onHide: function (tour) {},\n\t onHidden: function (tour) {},\n\t onNext: function (tour) {},\n\t onPrev: function (tour) {},\n\t onPause: function (tour, duration) {},\n\t onResume: function (tour, duration) {},\n\t onRedirectError: function (tour) {}\n\t }, options);\n\t this._force = false;\n\t this._inited = false;\n\t this._current = null;\n\t this.backdrop = {\n\t overlay: null,\n\t $element: null,\n\t $background: null,\n\t backgroundShown: false,\n\t overlayElementShown: false\n\t };\n\t this;\n\t }\n\t\n\t Tour.prototype.addSteps = function (steps) {\n\t var step, _i, _len;\n\t for (_i = 0, _len = steps.length; _i < _len; _i++) {\n\t step = steps[_i];\n\t this.addStep(step);\n\t }\n\t return this;\n\t };\n\t\n\t Tour.prototype.addStep = function (step) {\n\t this._options.steps.push(step);\n\t return this;\n\t };\n\t\n\t Tour.prototype.getStep = function (i) {\n\t if (this._options.steps[i] != null) {\n\t return $.extend({\n\t id: \"step-\" + i,\n\t path: '',\n\t host: '',\n\t placement: 'right',\n\t title: '',\n\t content: '

    ',\n\t next: i === this._options.steps.length - 1 ? -1 : i + 1,\n\t prev: i - 1,\n\t animation: true,\n\t container: this._options.container,\n\t autoscroll: this._options.autoscroll,\n\t backdrop: this._options.backdrop,\n\t backdropContainer: this._options.backdropContainer,\n\t backdropPadding: this._options.backdropPadding,\n\t redirect: this._options.redirect,\n\t reflexElement: this._options.steps[i].element,\n\t orphan: this._options.orphan,\n\t duration: this._options.duration,\n\t delay: this._options.delay,\n\t template: this._options.template,\n\t onShow: this._options.onShow,\n\t onShown: this._options.onShown,\n\t onHide: this._options.onHide,\n\t onHidden: this._options.onHidden,\n\t onNext: this._options.onNext,\n\t onPrev: this._options.onPrev,\n\t onPause: this._options.onPause,\n\t onResume: this._options.onResume,\n\t onRedirectError: this._options.onRedirectError\n\t }, this._options.steps[i]);\n\t }\n\t };\n\t\n\t Tour.prototype.init = function (force) {\n\t this._force = force;\n\t if (this.ended()) {\n\t this._debug('Tour ended, init prevented.');\n\t return this;\n\t }\n\t this.setCurrentStep();\n\t this._initMouseNavigation();\n\t this._initKeyboardNavigation();\n\t this._onResize(function (_this) {\n\t return function () {\n\t return _this.showStep(_this._current);\n\t };\n\t }(this));\n\t if (this._current !== null) {\n\t this.showStep(this._current);\n\t }\n\t this._inited = true;\n\t return this;\n\t };\n\t\n\t Tour.prototype.start = function (force) {\n\t var promise;\n\t if (force == null) {\n\t force = false;\n\t }\n\t if (!this._inited) {\n\t this.init(force);\n\t }\n\t if (this._current === null) {\n\t promise = this._makePromise(this._options.onStart != null ? this._options.onStart(this) : void 0);\n\t this._callOnPromiseDone(promise, this.showStep, 0);\n\t }\n\t return this;\n\t };\n\t\n\t Tour.prototype.next = function () {\n\t var promise;\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, this._showNextStep);\n\t };\n\t\n\t Tour.prototype.prev = function () {\n\t var promise;\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, this._showPrevStep);\n\t };\n\t\n\t Tour.prototype.goTo = function (i) {\n\t var promise;\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, this.showStep, i);\n\t };\n\t\n\t Tour.prototype.end = function () {\n\t var endHelper, promise;\n\t endHelper = function (_this) {\n\t return function (e) {\n\t $(document).off(\"click.tour-\" + _this._options.name);\n\t $(document).off(\"keyup.tour-\" + _this._options.name);\n\t $(window).off(\"resize.tour-\" + _this._options.name);\n\t _this._setState('end', 'yes');\n\t _this._inited = false;\n\t _this._force = false;\n\t _this._clearTimer();\n\t if (_this._options.onEnd != null) {\n\t return _this._options.onEnd(_this);\n\t }\n\t };\n\t }(this);\n\t promise = this.hideStep(this._current);\n\t return this._callOnPromiseDone(promise, endHelper);\n\t };\n\t\n\t Tour.prototype.ended = function () {\n\t return !this._force && !!this._getState('end');\n\t };\n\t\n\t Tour.prototype.restart = function () {\n\t this._removeState('current_step');\n\t this._removeState('end');\n\t this._removeState('redirect_to');\n\t return this.start();\n\t };\n\t\n\t Tour.prototype.pause = function () {\n\t var step;\n\t step = this.getStep(this._current);\n\t if (!(step && step.duration)) {\n\t return this;\n\t }\n\t this._paused = true;\n\t this._duration -= new Date().getTime() - this._start;\n\t window.clearTimeout(this._timer);\n\t this._debug(\"Paused/Stopped step \" + (this._current + 1) + \" timer (\" + this._duration + \" remaining).\");\n\t if (step.onPause != null) {\n\t return step.onPause(this, this._duration);\n\t }\n\t };\n\t\n\t Tour.prototype.resume = function () {\n\t var step;\n\t step = this.getStep(this._current);\n\t if (!(step && step.duration)) {\n\t return this;\n\t }\n\t this._paused = false;\n\t this._start = new Date().getTime();\n\t this._duration = this._duration || step.duration;\n\t this._timer = window.setTimeout(function (_this) {\n\t return function () {\n\t if (_this._isLast()) {\n\t return _this.next();\n\t } else {\n\t return _this.end();\n\t }\n\t };\n\t }(this), this._duration);\n\t this._debug(\"Started step \" + (this._current + 1) + \" timer with duration \" + this._duration);\n\t if (step.onResume != null && this._duration !== step.duration) {\n\t return step.onResume(this, this._duration);\n\t }\n\t };\n\t\n\t Tour.prototype.hideStep = function (i) {\n\t var hideStepHelper, promise, step;\n\t step = this.getStep(i);\n\t if (!step) {\n\t return;\n\t }\n\t this._clearTimer();\n\t promise = this._makePromise(step.onHide != null ? step.onHide(this, i) : void 0);\n\t hideStepHelper = function (_this) {\n\t return function (e) {\n\t var $element;\n\t $element = $(step.element);\n\t if (!($element.data('bs.popover') || $element.data('popover'))) {\n\t $element = $('body');\n\t }\n\t $element.popover('destroy').removeClass(\"tour-\" + _this._options.name + \"-element tour-\" + _this._options.name + \"-\" + i + \"-element\");\n\t $element.removeData('bs.popover');\n\t if (step.reflex) {\n\t $(step.reflexElement).removeClass('tour-step-element-reflex').off(\"\" + _this._reflexEvent(step.reflex) + \".tour-\" + _this._options.name);\n\t }\n\t if (step.backdrop) {\n\t _this._hideBackdrop();\n\t }\n\t if (step.onHidden != null) {\n\t return step.onHidden(_this);\n\t }\n\t };\n\t }(this);\n\t this._callOnPromiseDone(promise, hideStepHelper);\n\t return promise;\n\t };\n\t\n\t Tour.prototype.showStep = function (i) {\n\t var promise, showStepHelper, skipToPrevious, step;\n\t if (this.ended()) {\n\t this._debug('Tour ended, showStep prevented.');\n\t return this;\n\t }\n\t step = this.getStep(i);\n\t if (!step) {\n\t return;\n\t }\n\t skipToPrevious = i < this._current;\n\t promise = this._makePromise(step.onShow != null ? step.onShow(this, i) : void 0);\n\t showStepHelper = function (_this) {\n\t return function (e) {\n\t var path, showPopoverAndOverlay;\n\t _this.setCurrentStep(i);\n\t path = function () {\n\t switch ({}.toString.call(step.path)) {\n\t case '[object Function]':\n\t return step.path();\n\t case '[object String]':\n\t return this._options.basePath + step.path;\n\t default:\n\t return step.path;\n\t }\n\t }.call(_this);\n\t if (_this._isRedirect(step.host, path, document.location)) {\n\t _this._redirect(step, i, path);\n\t if (!_this._isJustPathHashDifferent(step.host, path, document.location)) {\n\t return;\n\t }\n\t }\n\t if (_this._isOrphan(step)) {\n\t if (step.orphan === false) {\n\t _this._debug(\"Skip the orphan step \" + (_this._current + 1) + \".\\nOrphan option is false and the element does not exist or is hidden.\");\n\t if (skipToPrevious) {\n\t _this._showPrevStep();\n\t } else {\n\t _this._showNextStep();\n\t }\n\t return;\n\t }\n\t _this._debug(\"Show the orphan step \" + (_this._current + 1) + \". Orphans option is true.\");\n\t }\n\t if (step.backdrop) {\n\t _this._showBackdrop(step);\n\t }\n\t showPopoverAndOverlay = function () {\n\t if (_this.getCurrentStep() !== i || _this.ended()) {\n\t return;\n\t }\n\t if (step.element != null && step.backdrop) {\n\t _this._showOverlayElement(step);\n\t }\n\t _this._showPopover(step, i);\n\t if (step.onShown != null) {\n\t step.onShown(_this);\n\t }\n\t return _this._debug(\"Step \" + (_this._current + 1) + \" of \" + _this._options.steps.length);\n\t };\n\t if (step.autoscroll) {\n\t _this._scrollIntoView(step.element, showPopoverAndOverlay);\n\t } else {\n\t showPopoverAndOverlay();\n\t }\n\t if (step.duration) {\n\t return _this.resume();\n\t }\n\t };\n\t }(this);\n\t if (step.delay) {\n\t this._debug(\"Wait \" + step.delay + \" milliseconds to show the step \" + (this._current + 1));\n\t window.setTimeout(function (_this) {\n\t return function () {\n\t return _this._callOnPromiseDone(promise, showStepHelper);\n\t };\n\t }(this), step.delay);\n\t } else {\n\t this._callOnPromiseDone(promise, showStepHelper);\n\t }\n\t return promise;\n\t };\n\t\n\t Tour.prototype.getCurrentStep = function () {\n\t return this._current;\n\t };\n\t\n\t Tour.prototype.setCurrentStep = function (value) {\n\t if (value != null) {\n\t this._current = value;\n\t this._setState('current_step', value);\n\t } else {\n\t this._current = this._getState('current_step');\n\t this._current = this._current === null ? null : parseInt(this._current, 10);\n\t }\n\t return this;\n\t };\n\t\n\t Tour.prototype.redraw = function () {\n\t return this._showOverlayElement(this.getStep(this.getCurrentStep()).element, true);\n\t };\n\t\n\t Tour.prototype._setState = function (key, value) {\n\t var e, keyName;\n\t if (this._options.storage) {\n\t keyName = \"\" + this._options.name + \"_\" + key;\n\t try {\n\t this._options.storage.setItem(keyName, value);\n\t } catch (_error) {\n\t e = _error;\n\t if (e.code === DOMException.QUOTA_EXCEEDED_ERR) {\n\t this._debug('LocalStorage quota exceeded. State storage failed.');\n\t }\n\t }\n\t return this._options.afterSetState(keyName, value);\n\t } else {\n\t if (this._state == null) {\n\t this._state = {};\n\t }\n\t return this._state[key] = value;\n\t }\n\t };\n\t\n\t Tour.prototype._removeState = function (key) {\n\t var keyName;\n\t if (this._options.storage) {\n\t keyName = \"\" + this._options.name + \"_\" + key;\n\t this._options.storage.removeItem(keyName);\n\t return this._options.afterRemoveState(keyName);\n\t } else {\n\t if (this._state != null) {\n\t return delete this._state[key];\n\t }\n\t }\n\t };\n\t\n\t Tour.prototype._getState = function (key) {\n\t var keyName, value;\n\t if (this._options.storage) {\n\t keyName = \"\" + this._options.name + \"_\" + key;\n\t value = this._options.storage.getItem(keyName);\n\t } else {\n\t if (this._state != null) {\n\t value = this._state[key];\n\t }\n\t }\n\t if (value === void 0 || value === 'null') {\n\t value = null;\n\t }\n\t this._options.afterGetState(key, value);\n\t return value;\n\t };\n\t\n\t Tour.prototype._showNextStep = function () {\n\t var promise, showNextStepHelper, step;\n\t step = this.getStep(this._current);\n\t showNextStepHelper = function (_this) {\n\t return function (e) {\n\t return _this.showStep(step.next);\n\t };\n\t }(this);\n\t promise = this._makePromise(step.onNext != null ? step.onNext(this) : void 0);\n\t return this._callOnPromiseDone(promise, showNextStepHelper);\n\t };\n\t\n\t Tour.prototype._showPrevStep = function () {\n\t var promise, showPrevStepHelper, step;\n\t step = this.getStep(this._current);\n\t showPrevStepHelper = function (_this) {\n\t return function (e) {\n\t return _this.showStep(step.prev);\n\t };\n\t }(this);\n\t promise = this._makePromise(step.onPrev != null ? step.onPrev(this) : void 0);\n\t return this._callOnPromiseDone(promise, showPrevStepHelper);\n\t };\n\t\n\t Tour.prototype._debug = function (text) {\n\t if (this._options.debug) {\n\t return window.console.log(\"Bootstrap Tour '\" + this._options.name + \"' | \" + text);\n\t }\n\t };\n\t\n\t Tour.prototype._isRedirect = function (host, path, location) {\n\t var currentPath;\n\t if (host !== '') {\n\t if (this._isHostDifferent(host, location.href)) {\n\t return true;\n\t }\n\t }\n\t currentPath = [location.pathname, location.search, location.hash].join('');\n\t return path != null && path !== '' && ({}.toString.call(path) === '[object RegExp]' && !path.test(currentPath) || {}.toString.call(path) === '[object String]' && this._isPathDifferent(path, currentPath));\n\t };\n\t\n\t Tour.prototype._isHostDifferent = function (host, currentURL) {\n\t return this._getProtocol(host) !== this._getProtocol(currentURL) || this._getHost(host) !== this._getHost(currentURL);\n\t };\n\t\n\t Tour.prototype._isPathDifferent = function (path, currentPath) {\n\t return this._getPath(path) !== this._getPath(currentPath) || !this._equal(this._getQuery(path), this._getQuery(currentPath)) || !this._equal(this._getHash(path), this._getHash(currentPath));\n\t };\n\t\n\t Tour.prototype._isJustPathHashDifferent = function (host, path, location) {\n\t var currentPath;\n\t if (host !== '') {\n\t if (this._isHostDifferent(host, location.href)) {\n\t return false;\n\t }\n\t }\n\t currentPath = [location.pathname, location.search, location.hash].join('');\n\t if ({}.toString.call(path) === '[object String]') {\n\t return this._getPath(path) === this._getPath(currentPath) && this._equal(this._getQuery(path), this._getQuery(currentPath)) && !this._equal(this._getHash(path), this._getHash(currentPath));\n\t }\n\t return false;\n\t };\n\t\n\t Tour.prototype._redirect = function (step, i, path) {\n\t if ($.isFunction(step.redirect)) {\n\t return step.redirect.call(this, path);\n\t } else if (step.redirect === true) {\n\t this._debug(\"Redirect to \" + step.host + path);\n\t if (this._getState('redirect_to') === \"\" + i) {\n\t this._debug(\"Error redirection loop to \" + path);\n\t this._removeState('redirect_to');\n\t if (step.onRedirectError != null) {\n\t return step.onRedirectError(this);\n\t }\n\t } else {\n\t this._setState('redirect_to', \"\" + i);\n\t return document.location.href = \"\" + step.host + path;\n\t }\n\t }\n\t };\n\t\n\t Tour.prototype._isOrphan = function (step) {\n\t return step.element == null || !$(step.element).length || $(step.element).is(':hidden') && $(step.element)[0].namespaceURI !== 'http://www.w3.org/2000/svg';\n\t };\n\t\n\t Tour.prototype._isLast = function () {\n\t return this._current < this._options.steps.length - 1;\n\t };\n\t\n\t Tour.prototype._showPopover = function (step, i) {\n\t var $element, $tip, isOrphan, options, shouldAddSmart;\n\t $(\".tour-\" + this._options.name).remove();\n\t options = $.extend({}, this._options);\n\t isOrphan = this._isOrphan(step);\n\t step.template = this._template(step, i);\n\t if (isOrphan) {\n\t step.element = 'body';\n\t step.placement = 'top';\n\t }\n\t $element = $(step.element);\n\t $element.addClass(\"tour-\" + this._options.name + \"-element tour-\" + this._options.name + \"-\" + i + \"-element\");\n\t if (step.options) {\n\t $.extend(options, step.options);\n\t }\n\t if (step.reflex && !isOrphan) {\n\t $(step.reflexElement).addClass('tour-step-element-reflex').off(\"\" + this._reflexEvent(step.reflex) + \".tour-\" + this._options.name).on(\"\" + this._reflexEvent(step.reflex) + \".tour-\" + this._options.name, function (_this) {\n\t return function () {\n\t if (_this._isLast()) {\n\t return _this.next();\n\t } else {\n\t return _this.end();\n\t }\n\t };\n\t }(this));\n\t }\n\t shouldAddSmart = step.smartPlacement === true && step.placement.search(/auto/i) === -1;\n\t $element.popover({\n\t placement: shouldAddSmart ? \"auto \" + step.placement : step.placement,\n\t trigger: 'manual',\n\t title: step.title,\n\t content: step.content,\n\t html: true,\n\t animation: step.animation,\n\t container: step.container,\n\t template: step.template,\n\t selector: step.element\n\t }).popover('show');\n\t $tip = $element.data('bs.popover') ? $element.data('bs.popover').tip() : $element.data('popover').tip();\n\t $tip.attr('id', step.id);\n\t this._reposition($tip, step);\n\t if (isOrphan) {\n\t return this._center($tip);\n\t }\n\t };\n\t\n\t Tour.prototype._template = function (step, i) {\n\t var $navigation, $next, $prev, $resume, $template, template;\n\t template = step.template;\n\t if (this._isOrphan(step) && {}.toString.call(step.orphan) !== '[object Boolean]') {\n\t template = step.orphan;\n\t }\n\t $template = $.isFunction(template) ? $(template(i, step)) : $(template);\n\t $navigation = $template.find('.popover-navigation');\n\t $prev = $navigation.find('[data-role=\"prev\"]');\n\t $next = $navigation.find('[data-role=\"next\"]');\n\t $resume = $navigation.find('[data-role=\"pause-resume\"]');\n\t if (this._isOrphan(step)) {\n\t $template.addClass('orphan');\n\t }\n\t $template.addClass(\"tour-\" + this._options.name + \" tour-\" + this._options.name + \"-\" + i);\n\t if (step.reflex) {\n\t $template.addClass(\"tour-\" + this._options.name + \"-reflex\");\n\t }\n\t if (step.prev < 0) {\n\t $prev.addClass('disabled');\n\t $prev.prop('disabled', true);\n\t }\n\t if (step.next < 0) {\n\t $next.addClass('disabled');\n\t $next.prop('disabled', true);\n\t }\n\t if (!step.duration) {\n\t $resume.remove();\n\t }\n\t return $template.clone().wrap('
    ').parent().html();\n\t };\n\t\n\t Tour.prototype._reflexEvent = function (reflex) {\n\t if ({}.toString.call(reflex) === '[object Boolean]') {\n\t return 'click';\n\t } else {\n\t return reflex;\n\t }\n\t };\n\t\n\t Tour.prototype._reposition = function ($tip, step) {\n\t var offsetBottom, offsetHeight, offsetRight, offsetWidth, originalLeft, originalTop, tipOffset;\n\t offsetWidth = $tip[0].offsetWidth;\n\t offsetHeight = $tip[0].offsetHeight;\n\t tipOffset = $tip.offset();\n\t originalLeft = tipOffset.left;\n\t originalTop = tipOffset.top;\n\t offsetBottom = $(document).outerHeight() - tipOffset.top - $tip.outerHeight();\n\t if (offsetBottom < 0) {\n\t tipOffset.top = tipOffset.top + offsetBottom;\n\t }\n\t offsetRight = $('html').outerWidth() - tipOffset.left - $tip.outerWidth();\n\t if (offsetRight < 0) {\n\t tipOffset.left = tipOffset.left + offsetRight;\n\t }\n\t if (tipOffset.top < 0) {\n\t tipOffset.top = 0;\n\t }\n\t if (tipOffset.left < 0) {\n\t tipOffset.left = 0;\n\t }\n\t $tip.offset(tipOffset);\n\t if (step.placement === 'bottom' || step.placement === 'top') {\n\t if (originalLeft !== tipOffset.left) {\n\t return this._replaceArrow($tip, (tipOffset.left - originalLeft) * 2, offsetWidth, 'left');\n\t }\n\t } else {\n\t if (originalTop !== tipOffset.top) {\n\t return this._replaceArrow($tip, (tipOffset.top - originalTop) * 2, offsetHeight, 'top');\n\t }\n\t }\n\t };\n\t\n\t Tour.prototype._center = function ($tip) {\n\t return $tip.css('top', $(window).outerHeight() / 2 - $tip.outerHeight() / 2);\n\t };\n\t\n\t Tour.prototype._replaceArrow = function ($tip, delta, dimension, position) {\n\t return $tip.find('.arrow').css(position, delta ? 50 * (1 - delta / dimension) + '%' : '');\n\t };\n\t\n\t Tour.prototype._scrollIntoView = function (element, callback) {\n\t var $element, $window, counter, offsetTop, scrollTop, windowHeight;\n\t $element = $(element);\n\t if (!$element.length) {\n\t return callback();\n\t }\n\t $window = $(window);\n\t offsetTop = $element.offset().top;\n\t windowHeight = $window.height();\n\t scrollTop = Math.max(0, offsetTop - windowHeight / 2);\n\t this._debug(\"Scroll into view. ScrollTop: \" + scrollTop + \". Element offset: \" + offsetTop + \". Window height: \" + windowHeight + \".\");\n\t counter = 0;\n\t return $('body, html').stop(true, true).animate({\n\t scrollTop: Math.ceil(scrollTop)\n\t }, function (_this) {\n\t return function () {\n\t if (++counter === 2) {\n\t callback();\n\t return _this._debug(\"Scroll into view.\\nAnimation end element offset: \" + $element.offset().top + \".\\nWindow height: \" + $window.height() + \".\");\n\t }\n\t };\n\t }(this));\n\t };\n\t\n\t Tour.prototype._onResize = function (callback, timeout) {\n\t return $(window).on(\"resize.tour-\" + this._options.name, function () {\n\t clearTimeout(timeout);\n\t return timeout = setTimeout(callback, 100);\n\t });\n\t };\n\t\n\t Tour.prototype._initMouseNavigation = function () {\n\t var _this;\n\t _this = this;\n\t return $(document).off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\").on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\", function (_this) {\n\t return function (e) {\n\t e.preventDefault();\n\t return _this.next();\n\t };\n\t }(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\", function (_this) {\n\t return function (e) {\n\t e.preventDefault();\n\t return _this.prev();\n\t };\n\t }(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\", function (_this) {\n\t return function (e) {\n\t e.preventDefault();\n\t return _this.end();\n\t };\n\t }(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\", function (e) {\n\t var $this;\n\t e.preventDefault();\n\t $this = $(this);\n\t $this.text(_this._paused ? $this.data('pause-text') : $this.data('resume-text'));\n\t if (_this._paused) {\n\t return _this.resume();\n\t } else {\n\t return _this.pause();\n\t }\n\t });\n\t };\n\t\n\t Tour.prototype._initKeyboardNavigation = function () {\n\t if (!this._options.keyboard) {\n\t return;\n\t }\n\t return $(document).on(\"keyup.tour-\" + this._options.name, function (_this) {\n\t return function (e) {\n\t if (!e.which) {\n\t return;\n\t }\n\t switch (e.which) {\n\t case 39:\n\t e.preventDefault();\n\t if (_this._isLast()) {\n\t return _this.next();\n\t } else {\n\t return _this.end();\n\t }\n\t break;\n\t case 37:\n\t e.preventDefault();\n\t if (_this._current > 0) {\n\t return _this.prev();\n\t }\n\t break;\n\t case 27:\n\t e.preventDefault();\n\t return _this.end();\n\t }\n\t };\n\t }(this));\n\t };\n\t\n\t Tour.prototype._makePromise = function (result) {\n\t if (result && $.isFunction(result.then)) {\n\t return result;\n\t } else {\n\t return null;\n\t }\n\t };\n\t\n\t Tour.prototype._callOnPromiseDone = function (promise, cb, arg) {\n\t if (promise) {\n\t return promise.then(function (_this) {\n\t return function (e) {\n\t return cb.call(_this, arg);\n\t };\n\t }(this));\n\t } else {\n\t return cb.call(this, arg);\n\t }\n\t };\n\t\n\t Tour.prototype._showBackdrop = function (step) {\n\t if (this.backdrop.backgroundShown) {\n\t return;\n\t }\n\t this.backdrop = $('
    ', {\n\t \"class\": 'tour-backdrop'\n\t });\n\t this.backdrop.backgroundShown = true;\n\t return $(step.backdropContainer).append(this.backdrop);\n\t };\n\t\n\t Tour.prototype._hideBackdrop = function () {\n\t this._hideOverlayElement();\n\t return this._hideBackground();\n\t };\n\t\n\t Tour.prototype._hideBackground = function () {\n\t if (this.backdrop) {\n\t this.backdrop.remove();\n\t this.backdrop.overlay = null;\n\t return this.backdrop.backgroundShown = false;\n\t }\n\t };\n\t\n\t Tour.prototype._showOverlayElement = function (step, force) {\n\t var $element, elementData;\n\t $element = $(step.element);\n\t if (!$element || $element.length === 0 || this.backdrop.overlayElementShown && !force) {\n\t return;\n\t }\n\t if (!this.backdrop.overlayElementShown) {\n\t this.backdrop.$element = $element.addClass('tour-step-backdrop');\n\t this.backdrop.$background = $('
    ', {\n\t \"class\": 'tour-step-background'\n\t });\n\t this.backdrop.$background.appendTo(step.backdropContainer);\n\t this.backdrop.overlayElementShown = true;\n\t }\n\t elementData = {\n\t width: $element.innerWidth(),\n\t height: $element.innerHeight(),\n\t offset: $element.offset()\n\t };\n\t if (step.backdropPadding) {\n\t elementData = this._applyBackdropPadding(step.backdropPadding, elementData);\n\t }\n\t return this.backdrop.$background.width(elementData.width).height(elementData.height).offset(elementData.offset);\n\t };\n\t\n\t Tour.prototype._hideOverlayElement = function () {\n\t if (!this.backdrop.overlayElementShown) {\n\t return;\n\t }\n\t this.backdrop.$element.removeClass('tour-step-backdrop');\n\t this.backdrop.$background.remove();\n\t this.backdrop.$element = null;\n\t this.backdrop.$background = null;\n\t return this.backdrop.overlayElementShown = false;\n\t };\n\t\n\t Tour.prototype._applyBackdropPadding = function (padding, data) {\n\t if (typeof padding === 'object') {\n\t if (padding.top == null) {\n\t padding.top = 0;\n\t }\n\t if (padding.right == null) {\n\t padding.right = 0;\n\t }\n\t if (padding.bottom == null) {\n\t padding.bottom = 0;\n\t }\n\t if (padding.left == null) {\n\t padding.left = 0;\n\t }\n\t data.offset.top = data.offset.top - padding.top;\n\t data.offset.left = data.offset.left - padding.left;\n\t data.width = data.width + padding.left + padding.right;\n\t data.height = data.height + padding.top + padding.bottom;\n\t } else {\n\t data.offset.top = data.offset.top - padding;\n\t data.offset.left = data.offset.left - padding;\n\t data.width = data.width + padding * 2;\n\t data.height = data.height + padding * 2;\n\t }\n\t return data;\n\t };\n\t\n\t Tour.prototype._clearTimer = function () {\n\t window.clearTimeout(this._timer);\n\t this._timer = null;\n\t return this._duration = null;\n\t };\n\t\n\t Tour.prototype._getProtocol = function (url) {\n\t url = url.split('://');\n\t if (url.length > 1) {\n\t return url[0];\n\t } else {\n\t return 'http';\n\t }\n\t };\n\t\n\t Tour.prototype._getHost = function (url) {\n\t url = url.split('//');\n\t url = url.length > 1 ? url[1] : url[0];\n\t return url.split('/')[0];\n\t };\n\t\n\t Tour.prototype._getPath = function (path) {\n\t return path.replace(/\\/?$/, '').split('?')[0].split('#')[0];\n\t };\n\t\n\t Tour.prototype._getQuery = function (path) {\n\t return this._getParams(path, '?');\n\t };\n\t\n\t Tour.prototype._getHash = function (path) {\n\t return this._getParams(path, '#');\n\t };\n\t\n\t Tour.prototype._getParams = function (path, start) {\n\t var param, params, paramsObject, _i, _len;\n\t params = path.split(start);\n\t if (params.length === 1) {\n\t return {};\n\t }\n\t params = params[1].split('&');\n\t paramsObject = {};\n\t for (_i = 0, _len = params.length; _i < _len; _i++) {\n\t param = params[_i];\n\t param = param.split('=');\n\t paramsObject[param[0]] = param[1] || '';\n\t }\n\t return paramsObject;\n\t };\n\t\n\t Tour.prototype._equal = function (obj1, obj2) {\n\t var k, v;\n\t if ({}.toString.call(obj1) === '[object Object]' && {}.toString.call(obj2) === '[object Object]') {\n\t for (k in obj1) {\n\t v = obj1[k];\n\t if (obj2[k] !== v) {\n\t return false;\n\t }\n\t }\n\t for (k in obj2) {\n\t v = obj2[k];\n\t if (obj1[k] !== v) {\n\t return false;\n\t }\n\t }\n\t return true;\n\t }\n\t return obj1 === obj2;\n\t };\n\t\n\t return Tour;\n\t }();\n\t return window.Tour = Tour;\n\t})(jQuery, window);\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n\n/***/ }),\n/* 68 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(jQuery) {/*! jQuery UI - v1.9.1 - 2012-10-29\n\t* http://jqueryui.com\n\t* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.autocomplete.js, jquery.ui.button.js, jquery.ui.menu.js, jquery.ui.slider.js\n\t* Copyright (c) 2012 jQuery Foundation and other contributors Licensed MIT */\n\t\n\t(function (e, t) {\n\t function i(t, n) {\n\t var r,\n\t i,\n\t o,\n\t u = t.nodeName.toLowerCase();return \"area\" === u ? (r = t.parentNode, i = r.name, !t.href || !i || r.nodeName.toLowerCase() !== \"map\" ? !1 : (o = e(\"img[usemap=#\" + i + \"]\")[0], !!o && s(o))) : (/input|select|textarea|button|object/.test(u) ? !t.disabled : \"a\" === u ? t.href || n : n) && s(t);\n\t }function s(t) {\n\t return e.expr.filters.visible(t) && !e(t).parents().andSelf().filter(function () {\n\t return e.css(this, \"visibility\") === \"hidden\";\n\t }).length;\n\t }var n = 0,\n\t r = /^ui-id-\\d+$/;e.ui = e.ui || {};if (e.ui.version) return;e.extend(e.ui, { version: \"1.9.1\", keyCode: { BACKSPACE: 8, COMMA: 188, DELETE: 46, DOWN: 40, END: 35, ENTER: 13, ESCAPE: 27, HOME: 36, LEFT: 37, NUMPAD_ADD: 107, NUMPAD_DECIMAL: 110, NUMPAD_DIVIDE: 111, NUMPAD_ENTER: 108, NUMPAD_MULTIPLY: 106, NUMPAD_SUBTRACT: 109, PAGE_DOWN: 34, PAGE_UP: 33, PERIOD: 190, RIGHT: 39, SPACE: 32, TAB: 9, UP: 38 } }), e.fn.extend({ _focus: e.fn.focus, focus: function (t, n) {\n\t return typeof t == \"number\" ? this.each(function () {\n\t var r = this;setTimeout(function () {\n\t e(r).focus(), n && n.call(r);\n\t }, t);\n\t }) : this._focus.apply(this, arguments);\n\t }, scrollParent: function () {\n\t var t;return e.ui.ie && /(static|relative)/.test(this.css(\"position\")) || /absolute/.test(this.css(\"position\")) ? t = this.parents().filter(function () {\n\t return (/(relative|absolute|fixed)/.test(e.css(this, \"position\")) && /(auto|scroll)/.test(e.css(this, \"overflow\") + e.css(this, \"overflow-y\") + e.css(this, \"overflow-x\"))\n\t );\n\t }).eq(0) : t = this.parents().filter(function () {\n\t return (/(auto|scroll)/.test(e.css(this, \"overflow\") + e.css(this, \"overflow-y\") + e.css(this, \"overflow-x\"))\n\t );\n\t }).eq(0), /fixed/.test(this.css(\"position\")) || !t.length ? e(document) : t;\n\t }, zIndex: function (n) {\n\t if (n !== t) return this.css(\"zIndex\", n);if (this.length) {\n\t var r = e(this[0]),\n\t i,\n\t s;while (r.length && r[0] !== document) {\n\t i = r.css(\"position\");if (i === \"absolute\" || i === \"relative\" || i === \"fixed\") {\n\t s = parseInt(r.css(\"zIndex\"), 10);if (!isNaN(s) && s !== 0) return s;\n\t }r = r.parent();\n\t }\n\t }return 0;\n\t }, uniqueId: function () {\n\t return this.each(function () {\n\t this.id || (this.id = \"ui-id-\" + ++n);\n\t });\n\t }, removeUniqueId: function () {\n\t return this.each(function () {\n\t r.test(this.id) && e(this).removeAttr(\"id\");\n\t });\n\t } }), e(\"\").outerWidth(1).jquery || e.each([\"Width\", \"Height\"], function (n, r) {\n\t function u(t, n, r, s) {\n\t return e.each(i, function () {\n\t n -= parseFloat(e.css(t, \"padding\" + this)) || 0, r && (n -= parseFloat(e.css(t, \"border\" + this + \"Width\")) || 0), s && (n -= parseFloat(e.css(t, \"margin\" + this)) || 0);\n\t }), n;\n\t }var i = r === \"Width\" ? [\"Left\", \"Right\"] : [\"Top\", \"Bottom\"],\n\t s = r.toLowerCase(),\n\t o = { innerWidth: e.fn.innerWidth, innerHeight: e.fn.innerHeight, outerWidth: e.fn.outerWidth, outerHeight: e.fn.outerHeight };e.fn[\"inner\" + r] = function (n) {\n\t return n === t ? o[\"inner\" + r].call(this) : this.each(function () {\n\t e(this).css(s, u(this, n) + \"px\");\n\t });\n\t }, e.fn[\"outer\" + r] = function (t, n) {\n\t return typeof t != \"number\" ? o[\"outer\" + r].call(this, t) : this.each(function () {\n\t e(this).css(s, u(this, t, !0, n) + \"px\");\n\t });\n\t };\n\t }), e.extend(e.expr[\":\"], { data: e.expr.createPseudo ? e.expr.createPseudo(function (t) {\n\t return function (n) {\n\t return !!e.data(n, t);\n\t };\n\t }) : function (t, n, r) {\n\t return !!e.data(t, r[3]);\n\t }, focusable: function (t) {\n\t return i(t, !isNaN(e.attr(t, \"tabindex\")));\n\t }, tabbable: function (t) {\n\t var n = e.attr(t, \"tabindex\"),\n\t r = isNaN(n);return (r || n >= 0) && i(t, !r);\n\t } }), e(function () {\n\t var t = document.body,\n\t n = t.appendChild(n = document.createElement(\"div\"));n.offsetHeight, e.extend(n.style, { minHeight: \"100px\", height: \"auto\", padding: 0, borderWidth: 0 }), e.support.minHeight = n.offsetHeight === 100, e.support.selectstart = \"onselectstart\" in n, t.removeChild(n).style.display = \"none\";\n\t }), function () {\n\t var t = /msie ([\\w.]+)/.exec(navigator.userAgent.toLowerCase()) || [];e.ui.ie = t.length ? !0 : !1, e.ui.ie6 = parseFloat(t[1], 10) === 6;\n\t }(), e.fn.extend({ disableSelection: function () {\n\t return this.bind((e.support.selectstart ? \"selectstart\" : \"mousedown\") + \".ui-disableSelection\", function (e) {\n\t e.preventDefault();\n\t });\n\t }, enableSelection: function () {\n\t return this.unbind(\".ui-disableSelection\");\n\t } }), e.extend(e.ui, { plugin: { add: function (t, n, r) {\n\t var i,\n\t s = e.ui[t].prototype;for (i in r) s.plugins[i] = s.plugins[i] || [], s.plugins[i].push([n, r[i]]);\n\t }, call: function (e, t, n) {\n\t var r,\n\t i = e.plugins[t];if (!i || !e.element[0].parentNode || e.element[0].parentNode.nodeType === 11) return;for (r = 0; r < i.length; r++) e.options[i[r][0]] && i[r][1].apply(e.element, n);\n\t } }, contains: e.contains, hasScroll: function (t, n) {\n\t if (e(t).css(\"overflow\") === \"hidden\") return !1;var r = n && n === \"left\" ? \"scrollLeft\" : \"scrollTop\",\n\t i = !1;return t[r] > 0 ? !0 : (t[r] = 1, i = t[r] > 0, t[r] = 0, i);\n\t }, isOverAxis: function (e, t, n) {\n\t return e > t && e < t + n;\n\t }, isOver: function (t, n, r, i, s, o) {\n\t return e.ui.isOverAxis(t, r, s) && e.ui.isOverAxis(n, i, o);\n\t } });\n\t})(jQuery);(function (e, t) {\n\t var n = 0,\n\t r = Array.prototype.slice,\n\t i = e.cleanData;e.cleanData = function (t) {\n\t for (var n = 0, r; (r = t[n]) != null; n++) try {\n\t e(r).triggerHandler(\"remove\");\n\t } catch (s) {}i(t);\n\t }, e.widget = function (t, n, r) {\n\t var i,\n\t s,\n\t o,\n\t u,\n\t a = t.split(\".\")[0];t = t.split(\".\")[1], i = a + \"-\" + t, r || (r = n, n = e.Widget), e.expr[\":\"][i.toLowerCase()] = function (t) {\n\t return !!e.data(t, i);\n\t }, e[a] = e[a] || {}, s = e[a][t], o = e[a][t] = function (e, t) {\n\t if (!this._createWidget) return new o(e, t);arguments.length && this._createWidget(e, t);\n\t }, e.extend(o, s, { version: r.version, _proto: e.extend({}, r), _childConstructors: [] }), u = new n(), u.options = e.widget.extend({}, u.options), e.each(r, function (t, i) {\n\t e.isFunction(i) && (r[t] = function () {\n\t var e = function () {\n\t return n.prototype[t].apply(this, arguments);\n\t },\n\t r = function (e) {\n\t return n.prototype[t].apply(this, e);\n\t };return function () {\n\t var t = this._super,\n\t n = this._superApply,\n\t s;return this._super = e, this._superApply = r, s = i.apply(this, arguments), this._super = t, this._superApply = n, s;\n\t };\n\t }());\n\t }), o.prototype = e.widget.extend(u, { widgetEventPrefix: u.widgetEventPrefix || t }, r, { constructor: o, namespace: a, widgetName: t, widgetBaseClass: i, widgetFullName: i }), s ? (e.each(s._childConstructors, function (t, n) {\n\t var r = n.prototype;e.widget(r.namespace + \".\" + r.widgetName, o, n._proto);\n\t }), delete s._childConstructors) : n._childConstructors.push(o), e.widget.bridge(t, o);\n\t }, e.widget.extend = function (n) {\n\t var i = r.call(arguments, 1),\n\t s = 0,\n\t o = i.length,\n\t u,\n\t a;for (; s < o; s++) for (u in i[s]) a = i[s][u], i[s].hasOwnProperty(u) && a !== t && (e.isPlainObject(a) ? n[u] = e.isPlainObject(n[u]) ? e.widget.extend({}, n[u], a) : e.widget.extend({}, a) : n[u] = a);return n;\n\t }, e.widget.bridge = function (n, i) {\n\t var s = i.prototype.widgetFullName;e.fn[n] = function (o) {\n\t var u = typeof o == \"string\",\n\t a = r.call(arguments, 1),\n\t f = this;return o = !u && a.length ? e.widget.extend.apply(null, [o].concat(a)) : o, u ? this.each(function () {\n\t var r,\n\t i = e.data(this, s);if (!i) return e.error(\"cannot call methods on \" + n + \" prior to initialization; \" + \"attempted to call method '\" + o + \"'\");if (!e.isFunction(i[o]) || o.charAt(0) === \"_\") return e.error(\"no such method '\" + o + \"' for \" + n + \" widget instance\");r = i[o].apply(i, a);if (r !== i && r !== t) return f = r && r.jquery ? f.pushStack(r.get()) : r, !1;\n\t }) : this.each(function () {\n\t var t = e.data(this, s);t ? t.option(o || {})._init() : new i(o, this);\n\t }), f;\n\t };\n\t }, e.Widget = function () {}, e.Widget._childConstructors = [], e.Widget.prototype = { widgetName: \"widget\", widgetEventPrefix: \"\", defaultElement: \"
    \", options: { disabled: !1, create: null }, _createWidget: function (t, r) {\n\t r = e(r || this.defaultElement || this)[0], this.element = e(r), this.uuid = n++, this.eventNamespace = \".\" + this.widgetName + this.uuid, this.options = e.widget.extend({}, this.options, this._getCreateOptions(), t), this.bindings = e(), this.hoverable = e(), this.focusable = e(), r !== this && (e.data(r, this.widgetName, this), e.data(r, this.widgetFullName, this), this._on(this.element, { remove: function (e) {\n\t e.target === r && this.destroy();\n\t } }), this.document = e(r.style ? r.ownerDocument : r.document || r), this.window = e(this.document[0].defaultView || this.document[0].parentWindow)), this._create(), this._trigger(\"create\", null, this._getCreateEventData()), this._init();\n\t }, _getCreateOptions: e.noop, _getCreateEventData: e.noop, _create: e.noop, _init: e.noop, destroy: function () {\n\t this._destroy(), this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)), this.widget().unbind(this.eventNamespace).removeAttr(\"aria-disabled\").removeClass(this.widgetFullName + \"-disabled \" + \"ui-state-disabled\"), this.bindings.unbind(this.eventNamespace), this.hoverable.removeClass(\"ui-state-hover\"), this.focusable.removeClass(\"ui-state-focus\");\n\t }, _destroy: e.noop, widget: function () {\n\t return this.element;\n\t }, option: function (n, r) {\n\t var i = n,\n\t s,\n\t o,\n\t u;if (arguments.length === 0) return e.widget.extend({}, this.options);if (typeof n == \"string\") {\n\t i = {}, s = n.split(\".\"), n = s.shift();if (s.length) {\n\t o = i[n] = e.widget.extend({}, this.options[n]);for (u = 0; u < s.length - 1; u++) o[s[u]] = o[s[u]] || {}, o = o[s[u]];n = s.pop();if (r === t) return o[n] === t ? null : o[n];o[n] = r;\n\t } else {\n\t if (r === t) return this.options[n] === t ? null : this.options[n];i[n] = r;\n\t }\n\t }return this._setOptions(i), this;\n\t }, _setOptions: function (e) {\n\t var t;for (t in e) this._setOption(t, e[t]);return this;\n\t }, _setOption: function (e, t) {\n\t return this.options[e] = t, e === \"disabled\" && (this.widget().toggleClass(this.widgetFullName + \"-disabled ui-state-disabled\", !!t).attr(\"aria-disabled\", t), this.hoverable.removeClass(\"ui-state-hover\"), this.focusable.removeClass(\"ui-state-focus\")), this;\n\t }, enable: function () {\n\t return this._setOption(\"disabled\", !1);\n\t }, disable: function () {\n\t return this._setOption(\"disabled\", !0);\n\t }, _on: function (t, n) {\n\t var r,\n\t i = this;n ? (t = r = e(t), this.bindings = this.bindings.add(t)) : (n = t, t = this.element, r = this.widget()), e.each(n, function (n, s) {\n\t function o() {\n\t if (i.options.disabled === !0 || e(this).hasClass(\"ui-state-disabled\")) return;return (typeof s == \"string\" ? i[s] : s).apply(i, arguments);\n\t }typeof s != \"string\" && (o.guid = s.guid = s.guid || o.guid || e.guid++);var u = n.match(/^(\\w+)\\s*(.*)$/),\n\t a = u[1] + i.eventNamespace,\n\t f = u[2];f ? r.delegate(f, a, o) : t.bind(a, o);\n\t });\n\t }, _off: function (e, t) {\n\t t = (t || \"\").split(\" \").join(this.eventNamespace + \" \") + this.eventNamespace, e.unbind(t).undelegate(t);\n\t }, _delay: function (e, t) {\n\t function n() {\n\t return (typeof e == \"string\" ? r[e] : e).apply(r, arguments);\n\t }var r = this;return setTimeout(n, t || 0);\n\t }, _hoverable: function (t) {\n\t this.hoverable = this.hoverable.add(t), this._on(t, { mouseenter: function (t) {\n\t e(t.currentTarget).addClass(\"ui-state-hover\");\n\t }, mouseleave: function (t) {\n\t e(t.currentTarget).removeClass(\"ui-state-hover\");\n\t } });\n\t }, _focusable: function (t) {\n\t this.focusable = this.focusable.add(t), this._on(t, { focusin: function (t) {\n\t e(t.currentTarget).addClass(\"ui-state-focus\");\n\t }, focusout: function (t) {\n\t e(t.currentTarget).removeClass(\"ui-state-focus\");\n\t } });\n\t }, _trigger: function (t, n, r) {\n\t var i,\n\t s,\n\t o = this.options[t];r = r || {}, n = e.Event(n), n.type = (t === this.widgetEventPrefix ? t : this.widgetEventPrefix + t).toLowerCase(), n.target = this.element[0], s = n.originalEvent;if (s) for (i in s) i in n || (n[i] = s[i]);return this.element.trigger(n, r), !(e.isFunction(o) && o.apply(this.element[0], [n].concat(r)) === !1 || n.isDefaultPrevented());\n\t } }, e.each({ show: \"fadeIn\", hide: \"fadeOut\" }, function (t, n) {\n\t e.Widget.prototype[\"_\" + t] = function (r, i, s) {\n\t typeof i == \"string\" && (i = { effect: i });var o,\n\t u = i ? i === !0 || typeof i == \"number\" ? n : i.effect || n : t;i = i || {}, typeof i == \"number\" && (i = { duration: i }), o = !e.isEmptyObject(i), i.complete = s, i.delay && r.delay(i.delay), o && e.effects && (e.effects.effect[u] || e.uiBackCompat !== !1 && e.effects[u]) ? r[t](i) : u !== t && r[u] ? r[u](i.duration, i.easing, s) : r.queue(function (n) {\n\t e(this)[t](), s && s.call(r[0]), n();\n\t });\n\t };\n\t }), e.uiBackCompat !== !1 && (e.Widget.prototype._getCreateOptions = function () {\n\t return e.metadata && e.metadata.get(this.element[0])[this.widgetName];\n\t });\n\t})(jQuery);(function (e, t) {\n\t var n = !1;e(document).mouseup(function (e) {\n\t n = !1;\n\t }), e.widget(\"ui.mouse\", { version: \"1.9.1\", options: { cancel: \"input,textarea,button,select,option\", distance: 1, delay: 0 }, _mouseInit: function () {\n\t var t = this;this.element.bind(\"mousedown.\" + this.widgetName, function (e) {\n\t return t._mouseDown(e);\n\t }).bind(\"click.\" + this.widgetName, function (n) {\n\t if (!0 === e.data(n.target, t.widgetName + \".preventClickEvent\")) return e.removeData(n.target, t.widgetName + \".preventClickEvent\"), n.stopImmediatePropagation(), !1;\n\t }), this.started = !1;\n\t }, _mouseDestroy: function () {\n\t this.element.unbind(\".\" + this.widgetName), this._mouseMoveDelegate && e(document).unbind(\"mousemove.\" + this.widgetName, this._mouseMoveDelegate).unbind(\"mouseup.\" + this.widgetName, this._mouseUpDelegate);\n\t }, _mouseDown: function (t) {\n\t if (n) return;this._mouseStarted && this._mouseUp(t), this._mouseDownEvent = t;var r = this,\n\t i = t.which === 1,\n\t s = typeof this.options.cancel == \"string\" && t.target.nodeName ? e(t.target).closest(this.options.cancel).length : !1;if (!i || s || !this._mouseCapture(t)) return !0;this.mouseDelayMet = !this.options.delay, this.mouseDelayMet || (this._mouseDelayTimer = setTimeout(function () {\n\t r.mouseDelayMet = !0;\n\t }, this.options.delay));if (this._mouseDistanceMet(t) && this._mouseDelayMet(t)) {\n\t this._mouseStarted = this._mouseStart(t) !== !1;if (!this._mouseStarted) return t.preventDefault(), !0;\n\t }return !0 === e.data(t.target, this.widgetName + \".preventClickEvent\") && e.removeData(t.target, this.widgetName + \".preventClickEvent\"), this._mouseMoveDelegate = function (e) {\n\t return r._mouseMove(e);\n\t }, this._mouseUpDelegate = function (e) {\n\t return r._mouseUp(e);\n\t }, e(document).bind(\"mousemove.\" + this.widgetName, this._mouseMoveDelegate).bind(\"mouseup.\" + this.widgetName, this._mouseUpDelegate), t.preventDefault(), n = !0, !0;\n\t }, _mouseMove: function (t) {\n\t return !e.ui.ie || document.documentMode >= 9 || !!t.button ? this._mouseStarted ? (this._mouseDrag(t), t.preventDefault()) : (this._mouseDistanceMet(t) && this._mouseDelayMet(t) && (this._mouseStarted = this._mouseStart(this._mouseDownEvent, t) !== !1, this._mouseStarted ? this._mouseDrag(t) : this._mouseUp(t)), !this._mouseStarted) : this._mouseUp(t);\n\t }, _mouseUp: function (t) {\n\t return e(document).unbind(\"mousemove.\" + this.widgetName, this._mouseMoveDelegate).unbind(\"mouseup.\" + this.widgetName, this._mouseUpDelegate), this._mouseStarted && (this._mouseStarted = !1, t.target === this._mouseDownEvent.target && e.data(t.target, this.widgetName + \".preventClickEvent\", !0), this._mouseStop(t)), !1;\n\t }, _mouseDistanceMet: function (e) {\n\t return Math.max(Math.abs(this._mouseDownEvent.pageX - e.pageX), Math.abs(this._mouseDownEvent.pageY - e.pageY)) >= this.options.distance;\n\t }, _mouseDelayMet: function (e) {\n\t return this.mouseDelayMet;\n\t }, _mouseStart: function (e) {}, _mouseDrag: function (e) {}, _mouseStop: function (e) {}, _mouseCapture: function (e) {\n\t return !0;\n\t } });\n\t})(jQuery);(function (e, t) {\n\t function h(e, t, n) {\n\t return [parseInt(e[0], 10) * (l.test(e[0]) ? t / 100 : 1), parseInt(e[1], 10) * (l.test(e[1]) ? n / 100 : 1)];\n\t }function p(t, n) {\n\t return parseInt(e.css(t, n), 10) || 0;\n\t }e.ui = e.ui || {};var n,\n\t r = Math.max,\n\t i = Math.abs,\n\t s = Math.round,\n\t o = /left|center|right/,\n\t u = /top|center|bottom/,\n\t a = /[\\+\\-]\\d+%?/,\n\t f = /^\\w+/,\n\t l = /%$/,\n\t c = e.fn.position;e.position = { scrollbarWidth: function () {\n\t if (n !== t) return n;var r,\n\t i,\n\t s = e(\"
    \"),\n\t o = s.children()[0];return e(\"body\").append(s), r = o.offsetWidth, s.css(\"overflow\", \"scroll\"), i = o.offsetWidth, r === i && (i = s[0].clientWidth), s.remove(), n = r - i;\n\t }, getScrollInfo: function (t) {\n\t var n = t.isWindow ? \"\" : t.element.css(\"overflow-x\"),\n\t r = t.isWindow ? \"\" : t.element.css(\"overflow-y\"),\n\t i = n === \"scroll\" || n === \"auto\" && t.width < t.element[0].scrollWidth,\n\t s = r === \"scroll\" || r === \"auto\" && t.height < t.element[0].scrollHeight;return { width: i ? e.position.scrollbarWidth() : 0, height: s ? e.position.scrollbarWidth() : 0 };\n\t }, getWithinInfo: function (t) {\n\t var n = e(t || window),\n\t r = e.isWindow(n[0]);return { element: n, isWindow: r, offset: n.offset() || { left: 0, top: 0 }, scrollLeft: n.scrollLeft(), scrollTop: n.scrollTop(), width: r ? n.width() : n.outerWidth(), height: r ? n.height() : n.outerHeight() };\n\t } }, e.fn.position = function (t) {\n\t if (!t || !t.of) return c.apply(this, arguments);t = e.extend({}, t);var n,\n\t l,\n\t d,\n\t v,\n\t m,\n\t g = e(t.of),\n\t y = e.position.getWithinInfo(t.within),\n\t b = e.position.getScrollInfo(y),\n\t w = g[0],\n\t E = (t.collision || \"flip\").split(\" \"),\n\t S = {};return w.nodeType === 9 ? (l = g.width(), d = g.height(), v = { top: 0, left: 0 }) : e.isWindow(w) ? (l = g.width(), d = g.height(), v = { top: g.scrollTop(), left: g.scrollLeft() }) : w.preventDefault ? (t.at = \"left top\", l = d = 0, v = { top: w.pageY, left: w.pageX }) : (l = g.outerWidth(), d = g.outerHeight(), v = g.offset()), m = e.extend({}, v), e.each([\"my\", \"at\"], function () {\n\t var e = (t[this] || \"\").split(\" \"),\n\t n,\n\t r;e.length === 1 && (e = o.test(e[0]) ? e.concat([\"center\"]) : u.test(e[0]) ? [\"center\"].concat(e) : [\"center\", \"center\"]), e[0] = o.test(e[0]) ? e[0] : \"center\", e[1] = u.test(e[1]) ? e[1] : \"center\", n = a.exec(e[0]), r = a.exec(e[1]), S[this] = [n ? n[0] : 0, r ? r[0] : 0], t[this] = [f.exec(e[0])[0], f.exec(e[1])[0]];\n\t }), E.length === 1 && (E[1] = E[0]), t.at[0] === \"right\" ? m.left += l : t.at[0] === \"center\" && (m.left += l / 2), t.at[1] === \"bottom\" ? m.top += d : t.at[1] === \"center\" && (m.top += d / 2), n = h(S.at, l, d), m.left += n[0], m.top += n[1], this.each(function () {\n\t var o,\n\t u,\n\t a = e(this),\n\t f = a.outerWidth(),\n\t c = a.outerHeight(),\n\t w = p(this, \"marginLeft\"),\n\t x = p(this, \"marginTop\"),\n\t T = f + w + p(this, \"marginRight\") + b.width,\n\t N = c + x + p(this, \"marginBottom\") + b.height,\n\t C = e.extend({}, m),\n\t k = h(S.my, a.outerWidth(), a.outerHeight());t.my[0] === \"right\" ? C.left -= f : t.my[0] === \"center\" && (C.left -= f / 2), t.my[1] === \"bottom\" ? C.top -= c : t.my[1] === \"center\" && (C.top -= c / 2), C.left += k[0], C.top += k[1], e.support.offsetFractions || (C.left = s(C.left), C.top = s(C.top)), o = { marginLeft: w, marginTop: x }, e.each([\"left\", \"top\"], function (r, i) {\n\t e.ui.position[E[r]] && e.ui.position[E[r]][i](C, { targetWidth: l, targetHeight: d, elemWidth: f, elemHeight: c, collisionPosition: o, collisionWidth: T, collisionHeight: N, offset: [n[0] + k[0], n[1] + k[1]], my: t.my, at: t.at, within: y, elem: a });\n\t }), e.fn.bgiframe && a.bgiframe(), t.using && (u = function (e) {\n\t var n = v.left - C.left,\n\t s = n + l - f,\n\t o = v.top - C.top,\n\t u = o + d - c,\n\t h = { target: { element: g, left: v.left, top: v.top, width: l, height: d }, element: { element: a, left: C.left, top: C.top, width: f, height: c }, horizontal: s < 0 ? \"left\" : n > 0 ? \"right\" : \"center\", vertical: u < 0 ? \"top\" : o > 0 ? \"bottom\" : \"middle\" };l < f && i(n + s) < l && (h.horizontal = \"center\"), d < c && i(o + u) < d && (h.vertical = \"middle\"), r(i(n), i(s)) > r(i(o), i(u)) ? h.important = \"horizontal\" : h.important = \"vertical\", t.using.call(this, e, h);\n\t }), a.offset(e.extend(C, { using: u }));\n\t });\n\t }, e.ui.position = { fit: { left: function (e, t) {\n\t var n = t.within,\n\t i = n.isWindow ? n.scrollLeft : n.offset.left,\n\t s = n.width,\n\t o = e.left - t.collisionPosition.marginLeft,\n\t u = i - o,\n\t a = o + t.collisionWidth - s - i,\n\t f;t.collisionWidth > s ? u > 0 && a <= 0 ? (f = e.left + u + t.collisionWidth - s - i, e.left += u - f) : a > 0 && u <= 0 ? e.left = i : u > a ? e.left = i + s - t.collisionWidth : e.left = i : u > 0 ? e.left += u : a > 0 ? e.left -= a : e.left = r(e.left - o, e.left);\n\t }, top: function (e, t) {\n\t var n = t.within,\n\t i = n.isWindow ? n.scrollTop : n.offset.top,\n\t s = t.within.height,\n\t o = e.top - t.collisionPosition.marginTop,\n\t u = i - o,\n\t a = o + t.collisionHeight - s - i,\n\t f;t.collisionHeight > s ? u > 0 && a <= 0 ? (f = e.top + u + t.collisionHeight - s - i, e.top += u - f) : a > 0 && u <= 0 ? e.top = i : u > a ? e.top = i + s - t.collisionHeight : e.top = i : u > 0 ? e.top += u : a > 0 ? e.top -= a : e.top = r(e.top - o, e.top);\n\t } }, flip: { left: function (e, t) {\n\t var n = t.within,\n\t r = n.offset.left + n.scrollLeft,\n\t s = n.width,\n\t o = n.isWindow ? n.scrollLeft : n.offset.left,\n\t u = e.left - t.collisionPosition.marginLeft,\n\t a = u - o,\n\t f = u + t.collisionWidth - s - o,\n\t l = t.my[0] === \"left\" ? -t.elemWidth : t.my[0] === \"right\" ? t.elemWidth : 0,\n\t c = t.at[0] === \"left\" ? t.targetWidth : t.at[0] === \"right\" ? -t.targetWidth : 0,\n\t h = -2 * t.offset[0],\n\t p,\n\t d;if (a < 0) {\n\t p = e.left + l + c + h + t.collisionWidth - s - r;if (p < 0 || p < i(a)) e.left += l + c + h;\n\t } else if (f > 0) {\n\t d = e.left - t.collisionPosition.marginLeft + l + c + h - o;if (d > 0 || i(d) < f) e.left += l + c + h;\n\t }\n\t }, top: function (e, t) {\n\t var n = t.within,\n\t r = n.offset.top + n.scrollTop,\n\t s = n.height,\n\t o = n.isWindow ? n.scrollTop : n.offset.top,\n\t u = e.top - t.collisionPosition.marginTop,\n\t a = u - o,\n\t f = u + t.collisionHeight - s - o,\n\t l = t.my[1] === \"top\",\n\t c = l ? -t.elemHeight : t.my[1] === \"bottom\" ? t.elemHeight : 0,\n\t h = t.at[1] === \"top\" ? t.targetHeight : t.at[1] === \"bottom\" ? -t.targetHeight : 0,\n\t p = -2 * t.offset[1],\n\t d,\n\t v;a < 0 ? (v = e.top + c + h + p + t.collisionHeight - s - r, e.top + c + h + p > a && (v < 0 || v < i(a)) && (e.top += c + h + p)) : f > 0 && (d = e.top - t.collisionPosition.marginTop + c + h + p - o, e.top + c + h + p > f && (d > 0 || i(d) < f) && (e.top += c + h + p));\n\t } }, flipfit: { left: function () {\n\t e.ui.position.flip.left.apply(this, arguments), e.ui.position.fit.left.apply(this, arguments);\n\t }, top: function () {\n\t e.ui.position.flip.top.apply(this, arguments), e.ui.position.fit.top.apply(this, arguments);\n\t } } }, function () {\n\t var t,\n\t n,\n\t r,\n\t i,\n\t s,\n\t o = document.getElementsByTagName(\"body\")[0],\n\t u = document.createElement(\"div\");t = document.createElement(o ? \"div\" : \"body\"), r = { visibility: \"hidden\", width: 0, height: 0, border: 0, margin: 0, background: \"none\" }, o && e.extend(r, { position: \"absolute\", left: \"-1000px\", top: \"-1000px\" });for (s in r) t.style[s] = r[s];t.appendChild(u), n = o || document.documentElement, n.insertBefore(t, n.firstChild), u.style.cssText = \"position: absolute; left: 10.7432222px;\", i = e(u).offset().left, e.support.offsetFractions = i > 10 && i < 11, t.innerHTML = \"\", n.removeChild(t);\n\t }(), e.uiBackCompat !== !1 && function (e) {\n\t var n = e.fn.position;e.fn.position = function (r) {\n\t if (!r || !r.offset) return n.call(this, r);var i = r.offset.split(\" \"),\n\t s = r.at.split(\" \");return i.length === 1 && (i[1] = i[0]), /^\\d/.test(i[0]) && (i[0] = \"+\" + i[0]), /^\\d/.test(i[1]) && (i[1] = \"+\" + i[1]), s.length === 1 && (/left|center|right/.test(s[0]) ? s[1] = \"center\" : (s[1] = s[0], s[0] = \"center\")), n.call(this, e.extend(r, { at: s[0] + i[0] + \" \" + s[1] + i[1], offset: t }));\n\t };\n\t }(jQuery);\n\t})(jQuery);(function (e, t) {\n\t var n = 0;e.widget(\"ui.autocomplete\", { version: \"1.9.1\", defaultElement: \"\", options: { appendTo: \"body\", autoFocus: !1, delay: 300, minLength: 1, position: { my: \"left top\", at: \"left bottom\", collision: \"none\" }, source: null, change: null, close: null, focus: null, open: null, response: null, search: null, select: null }, pending: 0, _create: function () {\n\t var t, n, r;this.isMultiLine = this._isMultiLine(), this.valueMethod = this.element[this.element.is(\"input,textarea\") ? \"val\" : \"text\"], this.isNewMenu = !0, this.element.addClass(\"ui-autocomplete-input\").attr(\"autocomplete\", \"off\"), this._on(this.element, { keydown: function (i) {\n\t if (this.element.prop(\"readOnly\")) {\n\t t = !0, r = !0, n = !0;return;\n\t }t = !1, r = !1, n = !1;var s = e.ui.keyCode;switch (i.keyCode) {case s.PAGE_UP:\n\t t = !0, this._move(\"previousPage\", i);break;case s.PAGE_DOWN:\n\t t = !0, this._move(\"nextPage\", i);break;case s.UP:\n\t t = !0, this._keyEvent(\"previous\", i);break;case s.DOWN:\n\t t = !0, this._keyEvent(\"next\", i);break;case s.ENTER:case s.NUMPAD_ENTER:\n\t this.menu.active && (t = !0, i.preventDefault(), this.menu.select(i));break;case s.TAB:\n\t this.menu.active && this.menu.select(i);break;case s.ESCAPE:\n\t this.menu.element.is(\":visible\") && (this._value(this.term), this.close(i), i.preventDefault());break;default:\n\t n = !0, this._searchTimeout(i);}\n\t }, keypress: function (r) {\n\t if (t) {\n\t t = !1, r.preventDefault();return;\n\t }if (n) return;var i = e.ui.keyCode;switch (r.keyCode) {case i.PAGE_UP:\n\t this._move(\"previousPage\", r);break;case i.PAGE_DOWN:\n\t this._move(\"nextPage\", r);break;case i.UP:\n\t this._keyEvent(\"previous\", r);break;case i.DOWN:\n\t this._keyEvent(\"next\", r);}\n\t }, input: function (e) {\n\t if (r) {\n\t r = !1, e.preventDefault();return;\n\t }this._searchTimeout(e);\n\t }, focus: function () {\n\t this.selectedItem = null, this.previous = this._value();\n\t }, blur: function (e) {\n\t if (this.cancelBlur) {\n\t delete this.cancelBlur;return;\n\t }clearTimeout(this.searching), this.close(e), this._change(e);\n\t } }), this._initSource(), this.menu = e(\"
      \").addClass(\"ui-autocomplete\").appendTo(this.document.find(this.options.appendTo || \"body\")[0]).menu({ input: e(), role: null }).zIndex(this.element.zIndex() + 1).hide().data(\"menu\"), this._on(this.menu.element, { mousedown: function (t) {\n\t t.preventDefault(), this.cancelBlur = !0, this._delay(function () {\n\t delete this.cancelBlur;\n\t });var n = this.menu.element[0];e(t.target).closest(\".ui-menu-item\").length || this._delay(function () {\n\t var t = this;this.document.one(\"mousedown\", function (r) {\n\t r.target !== t.element[0] && r.target !== n && !e.contains(n, r.target) && t.close();\n\t });\n\t });\n\t }, menufocus: function (t, n) {\n\t if (this.isNewMenu) {\n\t this.isNewMenu = !1;if (t.originalEvent && /^mouse/.test(t.originalEvent.type)) {\n\t this.menu.blur(), this.document.one(\"mousemove\", function () {\n\t e(t.target).trigger(t.originalEvent);\n\t });return;\n\t }\n\t }var r = n.item.data(\"ui-autocomplete-item\") || n.item.data(\"item.autocomplete\");!1 !== this._trigger(\"focus\", t, { item: r }) ? t.originalEvent && /^key/.test(t.originalEvent.type) && this._value(r.value) : this.liveRegion.text(r.value);\n\t }, menuselect: function (e, t) {\n\t var n = t.item.data(\"ui-autocomplete-item\") || t.item.data(\"item.autocomplete\"),\n\t r = this.previous;this.element[0] !== this.document[0].activeElement && (this.element.focus(), this.previous = r, this._delay(function () {\n\t this.previous = r, this.selectedItem = n;\n\t })), !1 !== this._trigger(\"select\", e, { item: n }) && this._value(n.value), this.term = this._value(), this.close(e), this.selectedItem = n;\n\t } }), this.liveRegion = e(\"\", { role: \"status\", \"aria-live\": \"polite\" }).addClass(\"ui-helper-hidden-accessible\").insertAfter(this.element), e.fn.bgiframe && this.menu.element.bgiframe(), this._on(this.window, { beforeunload: function () {\n\t this.element.removeAttr(\"autocomplete\");\n\t } });\n\t }, _destroy: function () {\n\t clearTimeout(this.searching), this.element.removeClass(\"ui-autocomplete-input\").removeAttr(\"autocomplete\"), this.menu.element.remove(), this.liveRegion.remove();\n\t }, _setOption: function (e, t) {\n\t this._super(e, t), e === \"source\" && this._initSource(), e === \"appendTo\" && this.menu.element.appendTo(this.document.find(t || \"body\")[0]), e === \"disabled\" && t && this.xhr && this.xhr.abort();\n\t }, _isMultiLine: function () {\n\t return this.element.is(\"textarea\") ? !0 : this.element.is(\"input\") ? !1 : this.element.prop(\"isContentEditable\");\n\t }, _initSource: function () {\n\t var t,\n\t n,\n\t r = this;e.isArray(this.options.source) ? (t = this.options.source, this.source = function (n, r) {\n\t r(e.ui.autocomplete.filter(t, n.term));\n\t }) : typeof this.options.source == \"string\" ? (n = this.options.source, this.source = function (t, i) {\n\t r.xhr && r.xhr.abort(), r.xhr = e.ajax({ url: n, data: t, dataType: \"json\", success: function (e) {\n\t i(e);\n\t }, error: function () {\n\t i([]);\n\t } });\n\t }) : this.source = this.options.source;\n\t }, _searchTimeout: function (e) {\n\t clearTimeout(this.searching), this.searching = this._delay(function () {\n\t this.term !== this._value() && (this.selectedItem = null, this.search(null, e));\n\t }, this.options.delay);\n\t }, search: function (e, t) {\n\t e = e != null ? e : this._value(), this.term = this._value();if (e.length < this.options.minLength) return this.close(t);if (this._trigger(\"search\", t) === !1) return;return this._search(e);\n\t }, _search: function (e) {\n\t this.pending++, this.element.addClass(\"ui-autocomplete-loading\"), this.cancelSearch = !1, this.source({ term: e }, this._response());\n\t }, _response: function () {\n\t var e = this,\n\t t = ++n;return function (r) {\n\t t === n && e.__response(r), e.pending--, e.pending || e.element.removeClass(\"ui-autocomplete-loading\");\n\t };\n\t }, __response: function (e) {\n\t e && (e = this._normalize(e)), this._trigger(\"response\", null, { content: e }), !this.options.disabled && e && e.length && !this.cancelSearch ? (this._suggest(e), this._trigger(\"open\")) : this._close();\n\t }, close: function (e) {\n\t this.cancelSearch = !0, this._close(e);\n\t }, _close: function (e) {\n\t this.menu.element.is(\":visible\") && (this.menu.element.hide(), this.menu.blur(), this.isNewMenu = !0, this._trigger(\"close\", e));\n\t }, _change: function (e) {\n\t this.previous !== this._value() && this._trigger(\"change\", e, { item: this.selectedItem });\n\t }, _normalize: function (t) {\n\t return t.length && t[0].label && t[0].value ? t : e.map(t, function (t) {\n\t return typeof t == \"string\" ? { label: t, value: t } : e.extend({ label: t.label || t.value, value: t.value || t.label }, t);\n\t });\n\t }, _suggest: function (t) {\n\t var n = this.menu.element.empty().zIndex(this.element.zIndex() + 1);this._renderMenu(n, t), this.menu.refresh(), n.show(), this._resizeMenu(), n.position(e.extend({ of: this.element }, this.options.position)), this.options.autoFocus && this.menu.next();\n\t }, _resizeMenu: function () {\n\t var e = this.menu.element;e.outerWidth(Math.max(e.width(\"\").outerWidth() + 1, this.element.outerWidth()));\n\t }, _renderMenu: function (t, n) {\n\t var r = this;e.each(n, function (e, n) {\n\t r._renderItemData(t, n);\n\t });\n\t }, _renderItemData: function (e, t) {\n\t return this._renderItem(e, t).data(\"ui-autocomplete-item\", t);\n\t }, _renderItem: function (t, n) {\n\t return e(\"
    • \").append(e(\"\").text(n.label)).appendTo(t);\n\t }, _move: function (e, t) {\n\t if (!this.menu.element.is(\":visible\")) {\n\t this.search(null, t);return;\n\t }if (this.menu.isFirstItem() && /^previous/.test(e) || this.menu.isLastItem() && /^next/.test(e)) {\n\t this._value(this.term), this.menu.blur();return;\n\t }this.menu[e](t);\n\t }, widget: function () {\n\t return this.menu.element;\n\t }, _value: function () {\n\t return this.valueMethod.apply(this.element, arguments);\n\t }, _keyEvent: function (e, t) {\n\t if (!this.isMultiLine || this.menu.element.is(\":visible\")) this._move(e, t), t.preventDefault();\n\t } }), e.extend(e.ui.autocomplete, { escapeRegex: function (e) {\n\t return e.replace(/[\\-\\[\\]{}()*+?.,\\\\\\^$|#\\s]/g, \"\\\\$&\");\n\t }, filter: function (t, n) {\n\t var r = new RegExp(e.ui.autocomplete.escapeRegex(n), \"i\");return e.grep(t, function (e) {\n\t return r.test(e.label || e.value || e);\n\t });\n\t } }), e.widget(\"ui.autocomplete\", e.ui.autocomplete, { options: { messages: { noResults: \"No search results.\", results: function (e) {\n\t return e + (e > 1 ? \" results are\" : \" result is\") + \" available, use up and down arrow keys to navigate.\";\n\t } } }, __response: function (e) {\n\t var t;this._superApply(arguments);if (this.options.disabled || this.cancelSearch) return;e && e.length ? t = this.options.messages.results(e.length) : t = this.options.messages.noResults, this.liveRegion.text(t);\n\t } });\n\t})(jQuery);(function (e, t) {\n\t var n,\n\t r,\n\t i,\n\t s,\n\t o = \"ui-button ui-widget ui-state-default ui-corner-all\",\n\t u = \"ui-state-hover ui-state-active \",\n\t a = \"ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only\",\n\t f = function () {\n\t var t = e(this).find(\":ui-button\");setTimeout(function () {\n\t t.button(\"refresh\");\n\t }, 1);\n\t },\n\t l = function (t) {\n\t var n = t.name,\n\t r = t.form,\n\t i = e([]);return n && (r ? i = e(r).find(\"[name='\" + n + \"']\") : i = e(\"[name='\" + n + \"']\", t.ownerDocument).filter(function () {\n\t return !this.form;\n\t })), i;\n\t };e.widget(\"ui.button\", { version: \"1.9.1\", defaultElement: \"
    \"\n )\n });\n modal.show( { backdrop: true } );\n}\n\n\n// ============================================================================\n return {\n Modal : Modal,\n hide_modal : hide_modal,\n show_modal : show_modal,\n show_message : show_message,\n show_in_overlay : show_in_overlay,\n };\n});\n\n\n\n// WEBPACK FOOTER //\n// ./galaxy/scripts/layout/modal.js","/* ========================================================================\n * bootstrap-tour - v0.10.2\n * http://bootstraptour.com\n * ========================================================================\n * Copyright 2012-2015 Ulrich Sossou\n *\n * ========================================================================\n * Licensed under the MIT License (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://opensource.org/licenses/MIT\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ========================================================================\n */\n\n(function($, window) {\n var Tour, document;\n document = window.document;\n Tour = (function() {\n function Tour(options) {\n var storage;\n try {\n storage = window.localStorage;\n } catch (_error) {\n storage = false;\n }\n this._options = $.extend({\n name: 'tour',\n steps: [],\n container: 'body',\n autoscroll: true,\n keyboard: true,\n storage: storage,\n debug: false,\n backdrop: false,\n backdropContainer: 'body',\n backdropPadding: 0,\n redirect: true,\n orphan: false,\n duration: false,\n delay: false,\n basePath: '',\n template: '

    ',\n afterSetState: function(key, value) {},\n afterGetState: function(key, value) {},\n afterRemoveState: function(key) {},\n onStart: function(tour) {},\n onEnd: function(tour) {},\n onShow: function(tour) {},\n onShown: function(tour) {},\n onHide: function(tour) {},\n onHidden: function(tour) {},\n onNext: function(tour) {},\n onPrev: function(tour) {},\n onPause: function(tour, duration) {},\n onResume: function(tour, duration) {},\n onRedirectError: function(tour) {}\n }, options);\n this._force = false;\n this._inited = false;\n this._current = null;\n this.backdrop = {\n overlay: null,\n $element: null,\n $background: null,\n backgroundShown: false,\n overlayElementShown: false\n };\n this;\n }\n\n Tour.prototype.addSteps = function(steps) {\n var step, _i, _len;\n for (_i = 0, _len = steps.length; _i < _len; _i++) {\n step = steps[_i];\n this.addStep(step);\n }\n return this;\n };\n\n Tour.prototype.addStep = function(step) {\n this._options.steps.push(step);\n return this;\n };\n\n Tour.prototype.getStep = function(i) {\n if (this._options.steps[i] != null) {\n return $.extend({\n id: \"step-\" + i,\n path: '',\n host: '',\n placement: 'right',\n title: '',\n content: '

    ',\n next: i === this._options.steps.length - 1 ? -1 : i + 1,\n prev: i - 1,\n animation: true,\n container: this._options.container,\n autoscroll: this._options.autoscroll,\n backdrop: this._options.backdrop,\n backdropContainer: this._options.backdropContainer,\n backdropPadding: this._options.backdropPadding,\n redirect: this._options.redirect,\n reflexElement: this._options.steps[i].element,\n orphan: this._options.orphan,\n duration: this._options.duration,\n delay: this._options.delay,\n template: this._options.template,\n onShow: this._options.onShow,\n onShown: this._options.onShown,\n onHide: this._options.onHide,\n onHidden: this._options.onHidden,\n onNext: this._options.onNext,\n onPrev: this._options.onPrev,\n onPause: this._options.onPause,\n onResume: this._options.onResume,\n onRedirectError: this._options.onRedirectError\n }, this._options.steps[i]);\n }\n };\n\n Tour.prototype.init = function(force) {\n this._force = force;\n if (this.ended()) {\n this._debug('Tour ended, init prevented.');\n return this;\n }\n this.setCurrentStep();\n this._initMouseNavigation();\n this._initKeyboardNavigation();\n this._onResize((function(_this) {\n return function() {\n return _this.showStep(_this._current);\n };\n })(this));\n if (this._current !== null) {\n this.showStep(this._current);\n }\n this._inited = true;\n return this;\n };\n\n Tour.prototype.start = function(force) {\n var promise;\n if (force == null) {\n force = false;\n }\n if (!this._inited) {\n this.init(force);\n }\n if (this._current === null) {\n promise = this._makePromise(this._options.onStart != null ? this._options.onStart(this) : void 0);\n this._callOnPromiseDone(promise, this.showStep, 0);\n }\n return this;\n };\n\n Tour.prototype.next = function() {\n var promise;\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, this._showNextStep);\n };\n\n Tour.prototype.prev = function() {\n var promise;\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, this._showPrevStep);\n };\n\n Tour.prototype.goTo = function(i) {\n var promise;\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, this.showStep, i);\n };\n\n Tour.prototype.end = function() {\n var endHelper, promise;\n endHelper = (function(_this) {\n return function(e) {\n $(document).off(\"click.tour-\" + _this._options.name);\n $(document).off(\"keyup.tour-\" + _this._options.name);\n $(window).off(\"resize.tour-\" + _this._options.name);\n _this._setState('end', 'yes');\n _this._inited = false;\n _this._force = false;\n _this._clearTimer();\n if (_this._options.onEnd != null) {\n return _this._options.onEnd(_this);\n }\n };\n })(this);\n promise = this.hideStep(this._current);\n return this._callOnPromiseDone(promise, endHelper);\n };\n\n Tour.prototype.ended = function() {\n return !this._force && !!this._getState('end');\n };\n\n Tour.prototype.restart = function() {\n this._removeState('current_step');\n this._removeState('end');\n this._removeState('redirect_to');\n return this.start();\n };\n\n Tour.prototype.pause = function() {\n var step;\n step = this.getStep(this._current);\n if (!(step && step.duration)) {\n return this;\n }\n this._paused = true;\n this._duration -= new Date().getTime() - this._start;\n window.clearTimeout(this._timer);\n this._debug(\"Paused/Stopped step \" + (this._current + 1) + \" timer (\" + this._duration + \" remaining).\");\n if (step.onPause != null) {\n return step.onPause(this, this._duration);\n }\n };\n\n Tour.prototype.resume = function() {\n var step;\n step = this.getStep(this._current);\n if (!(step && step.duration)) {\n return this;\n }\n this._paused = false;\n this._start = new Date().getTime();\n this._duration = this._duration || step.duration;\n this._timer = window.setTimeout((function(_this) {\n return function() {\n if (_this._isLast()) {\n return _this.next();\n } else {\n return _this.end();\n }\n };\n })(this), this._duration);\n this._debug(\"Started step \" + (this._current + 1) + \" timer with duration \" + this._duration);\n if ((step.onResume != null) && this._duration !== step.duration) {\n return step.onResume(this, this._duration);\n }\n };\n\n Tour.prototype.hideStep = function(i) {\n var hideStepHelper, promise, step;\n step = this.getStep(i);\n if (!step) {\n return;\n }\n this._clearTimer();\n promise = this._makePromise(step.onHide != null ? step.onHide(this, i) : void 0);\n hideStepHelper = (function(_this) {\n return function(e) {\n var $element;\n $element = $(step.element);\n if (!($element.data('bs.popover') || $element.data('popover'))) {\n $element = $('body');\n }\n $element.popover('destroy').removeClass(\"tour-\" + _this._options.name + \"-element tour-\" + _this._options.name + \"-\" + i + \"-element\");\n $element.removeData('bs.popover');\n if (step.reflex) {\n $(step.reflexElement).removeClass('tour-step-element-reflex').off(\"\" + (_this._reflexEvent(step.reflex)) + \".tour-\" + _this._options.name);\n }\n if (step.backdrop) {\n _this._hideBackdrop();\n }\n if (step.onHidden != null) {\n return step.onHidden(_this);\n }\n };\n })(this);\n this._callOnPromiseDone(promise, hideStepHelper);\n return promise;\n };\n\n Tour.prototype.showStep = function(i) {\n var promise, showStepHelper, skipToPrevious, step;\n if (this.ended()) {\n this._debug('Tour ended, showStep prevented.');\n return this;\n }\n step = this.getStep(i);\n if (!step) {\n return;\n }\n skipToPrevious = i < this._current;\n promise = this._makePromise(step.onShow != null ? step.onShow(this, i) : void 0);\n showStepHelper = (function(_this) {\n return function(e) {\n var path, showPopoverAndOverlay;\n _this.setCurrentStep(i);\n path = (function() {\n switch ({}.toString.call(step.path)) {\n case '[object Function]':\n return step.path();\n case '[object String]':\n return this._options.basePath + step.path;\n default:\n return step.path;\n }\n }).call(_this);\n if (_this._isRedirect(step.host, path, document.location)) {\n _this._redirect(step, i, path);\n if (!_this._isJustPathHashDifferent(step.host, path, document.location)) {\n return;\n }\n }\n if (_this._isOrphan(step)) {\n if (step.orphan === false) {\n _this._debug(\"Skip the orphan step \" + (_this._current + 1) + \".\\nOrphan option is false and the element does not exist or is hidden.\");\n if (skipToPrevious) {\n _this._showPrevStep();\n } else {\n _this._showNextStep();\n }\n return;\n }\n _this._debug(\"Show the orphan step \" + (_this._current + 1) + \". Orphans option is true.\");\n }\n if (step.backdrop) {\n _this._showBackdrop(step);\n }\n showPopoverAndOverlay = function() {\n if (_this.getCurrentStep() !== i || _this.ended()) {\n return;\n }\n if ((step.element != null) && step.backdrop) {\n _this._showOverlayElement(step);\n }\n _this._showPopover(step, i);\n if (step.onShown != null) {\n step.onShown(_this);\n }\n return _this._debug(\"Step \" + (_this._current + 1) + \" of \" + _this._options.steps.length);\n };\n if (step.autoscroll) {\n _this._scrollIntoView(step.element, showPopoverAndOverlay);\n } else {\n showPopoverAndOverlay();\n }\n if (step.duration) {\n return _this.resume();\n }\n };\n })(this);\n if (step.delay) {\n this._debug(\"Wait \" + step.delay + \" milliseconds to show the step \" + (this._current + 1));\n window.setTimeout((function(_this) {\n return function() {\n return _this._callOnPromiseDone(promise, showStepHelper);\n };\n })(this), step.delay);\n } else {\n this._callOnPromiseDone(promise, showStepHelper);\n }\n return promise;\n };\n\n Tour.prototype.getCurrentStep = function() {\n return this._current;\n };\n\n Tour.prototype.setCurrentStep = function(value) {\n if (value != null) {\n this._current = value;\n this._setState('current_step', value);\n } else {\n this._current = this._getState('current_step');\n this._current = this._current === null ? null : parseInt(this._current, 10);\n }\n return this;\n };\n\n Tour.prototype.redraw = function() {\n return this._showOverlayElement(this.getStep(this.getCurrentStep()).element, true);\n };\n\n Tour.prototype._setState = function(key, value) {\n var e, keyName;\n if (this._options.storage) {\n keyName = \"\" + this._options.name + \"_\" + key;\n try {\n this._options.storage.setItem(keyName, value);\n } catch (_error) {\n e = _error;\n if (e.code === DOMException.QUOTA_EXCEEDED_ERR) {\n this._debug('LocalStorage quota exceeded. State storage failed.');\n }\n }\n return this._options.afterSetState(keyName, value);\n } else {\n if (this._state == null) {\n this._state = {};\n }\n return this._state[key] = value;\n }\n };\n\n Tour.prototype._removeState = function(key) {\n var keyName;\n if (this._options.storage) {\n keyName = \"\" + this._options.name + \"_\" + key;\n this._options.storage.removeItem(keyName);\n return this._options.afterRemoveState(keyName);\n } else {\n if (this._state != null) {\n return delete this._state[key];\n }\n }\n };\n\n Tour.prototype._getState = function(key) {\n var keyName, value;\n if (this._options.storage) {\n keyName = \"\" + this._options.name + \"_\" + key;\n value = this._options.storage.getItem(keyName);\n } else {\n if (this._state != null) {\n value = this._state[key];\n }\n }\n if (value === void 0 || value === 'null') {\n value = null;\n }\n this._options.afterGetState(key, value);\n return value;\n };\n\n Tour.prototype._showNextStep = function() {\n var promise, showNextStepHelper, step;\n step = this.getStep(this._current);\n showNextStepHelper = (function(_this) {\n return function(e) {\n return _this.showStep(step.next);\n };\n })(this);\n promise = this._makePromise(step.onNext != null ? step.onNext(this) : void 0);\n return this._callOnPromiseDone(promise, showNextStepHelper);\n };\n\n Tour.prototype._showPrevStep = function() {\n var promise, showPrevStepHelper, step;\n step = this.getStep(this._current);\n showPrevStepHelper = (function(_this) {\n return function(e) {\n return _this.showStep(step.prev);\n };\n })(this);\n promise = this._makePromise(step.onPrev != null ? step.onPrev(this) : void 0);\n return this._callOnPromiseDone(promise, showPrevStepHelper);\n };\n\n Tour.prototype._debug = function(text) {\n if (this._options.debug) {\n return window.console.log(\"Bootstrap Tour '\" + this._options.name + \"' | \" + text);\n }\n };\n\n Tour.prototype._isRedirect = function(host, path, location) {\n var currentPath;\n if (host !== '') {\n if (this._isHostDifferent(host, location.href)) {\n return true;\n }\n }\n currentPath = [location.pathname, location.search, location.hash].join('');\n return (path != null) && path !== '' && (({}.toString.call(path) === '[object RegExp]' && !path.test(currentPath)) || ({}.toString.call(path) === '[object String]' && this._isPathDifferent(path, currentPath)));\n };\n\n Tour.prototype._isHostDifferent = function(host, currentURL) {\n return this._getProtocol(host) !== this._getProtocol(currentURL) || this._getHost(host) !== this._getHost(currentURL);\n };\n\n Tour.prototype._isPathDifferent = function(path, currentPath) {\n return this._getPath(path) !== this._getPath(currentPath) || !this._equal(this._getQuery(path), this._getQuery(currentPath)) || !this._equal(this._getHash(path), this._getHash(currentPath));\n };\n\n Tour.prototype._isJustPathHashDifferent = function(host, path, location) {\n var currentPath;\n if (host !== '') {\n if (this._isHostDifferent(host, location.href)) {\n return false;\n }\n }\n currentPath = [location.pathname, location.search, location.hash].join('');\n if ({}.toString.call(path) === '[object String]') {\n return this._getPath(path) === this._getPath(currentPath) && this._equal(this._getQuery(path), this._getQuery(currentPath)) && !this._equal(this._getHash(path), this._getHash(currentPath));\n }\n return false;\n };\n\n Tour.prototype._redirect = function(step, i, path) {\n if ($.isFunction(step.redirect)) {\n return step.redirect.call(this, path);\n } else if (step.redirect === true) {\n this._debug(\"Redirect to \" + step.host + path);\n if (this._getState('redirect_to') === (\"\" + i)) {\n this._debug(\"Error redirection loop to \" + path);\n this._removeState('redirect_to');\n if (step.onRedirectError != null) {\n return step.onRedirectError(this);\n }\n } else {\n this._setState('redirect_to', \"\" + i);\n return document.location.href = \"\" + step.host + path;\n }\n }\n };\n\n Tour.prototype._isOrphan = function(step) {\n return (step.element == null) || !$(step.element).length || $(step.element).is(':hidden') && ($(step.element)[0].namespaceURI !== 'http://www.w3.org/2000/svg');\n };\n\n Tour.prototype._isLast = function() {\n return this._current < this._options.steps.length - 1;\n };\n\n Tour.prototype._showPopover = function(step, i) {\n var $element, $tip, isOrphan, options, shouldAddSmart;\n $(\".tour-\" + this._options.name).remove();\n options = $.extend({}, this._options);\n isOrphan = this._isOrphan(step);\n step.template = this._template(step, i);\n if (isOrphan) {\n step.element = 'body';\n step.placement = 'top';\n }\n $element = $(step.element);\n $element.addClass(\"tour-\" + this._options.name + \"-element tour-\" + this._options.name + \"-\" + i + \"-element\");\n if (step.options) {\n $.extend(options, step.options);\n }\n if (step.reflex && !isOrphan) {\n $(step.reflexElement).addClass('tour-step-element-reflex').off(\"\" + (this._reflexEvent(step.reflex)) + \".tour-\" + this._options.name).on(\"\" + (this._reflexEvent(step.reflex)) + \".tour-\" + this._options.name, (function(_this) {\n return function() {\n if (_this._isLast()) {\n return _this.next();\n } else {\n return _this.end();\n }\n };\n })(this));\n }\n shouldAddSmart = step.smartPlacement === true && step.placement.search(/auto/i) === -1;\n $element.popover({\n placement: shouldAddSmart ? \"auto \" + step.placement : step.placement,\n trigger: 'manual',\n title: step.title,\n content: step.content,\n html: true,\n animation: step.animation,\n container: step.container,\n template: step.template,\n selector: step.element\n }).popover('show');\n $tip = $element.data('bs.popover') ? $element.data('bs.popover').tip() : $element.data('popover').tip();\n $tip.attr('id', step.id);\n this._reposition($tip, step);\n if (isOrphan) {\n return this._center($tip);\n }\n };\n\n Tour.prototype._template = function(step, i) {\n var $navigation, $next, $prev, $resume, $template, template;\n template = step.template;\n if (this._isOrphan(step) && {}.toString.call(step.orphan) !== '[object Boolean]') {\n template = step.orphan;\n }\n $template = $.isFunction(template) ? $(template(i, step)) : $(template);\n $navigation = $template.find('.popover-navigation');\n $prev = $navigation.find('[data-role=\"prev\"]');\n $next = $navigation.find('[data-role=\"next\"]');\n $resume = $navigation.find('[data-role=\"pause-resume\"]');\n if (this._isOrphan(step)) {\n $template.addClass('orphan');\n }\n $template.addClass(\"tour-\" + this._options.name + \" tour-\" + this._options.name + \"-\" + i);\n if (step.reflex) {\n $template.addClass(\"tour-\" + this._options.name + \"-reflex\");\n }\n if (step.prev < 0) {\n $prev.addClass('disabled');\n $prev.prop('disabled', true);\n }\n if (step.next < 0) {\n $next.addClass('disabled');\n $next.prop('disabled', true);\n }\n if (!step.duration) {\n $resume.remove();\n }\n return $template.clone().wrap('
    ').parent().html();\n };\n\n Tour.prototype._reflexEvent = function(reflex) {\n if ({}.toString.call(reflex) === '[object Boolean]') {\n return 'click';\n } else {\n return reflex;\n }\n };\n\n Tour.prototype._reposition = function($tip, step) {\n var offsetBottom, offsetHeight, offsetRight, offsetWidth, originalLeft, originalTop, tipOffset;\n offsetWidth = $tip[0].offsetWidth;\n offsetHeight = $tip[0].offsetHeight;\n tipOffset = $tip.offset();\n originalLeft = tipOffset.left;\n originalTop = tipOffset.top;\n offsetBottom = $(document).outerHeight() - tipOffset.top - $tip.outerHeight();\n if (offsetBottom < 0) {\n tipOffset.top = tipOffset.top + offsetBottom;\n }\n offsetRight = $('html').outerWidth() - tipOffset.left - $tip.outerWidth();\n if (offsetRight < 0) {\n tipOffset.left = tipOffset.left + offsetRight;\n }\n if (tipOffset.top < 0) {\n tipOffset.top = 0;\n }\n if (tipOffset.left < 0) {\n tipOffset.left = 0;\n }\n $tip.offset(tipOffset);\n if (step.placement === 'bottom' || step.placement === 'top') {\n if (originalLeft !== tipOffset.left) {\n return this._replaceArrow($tip, (tipOffset.left - originalLeft) * 2, offsetWidth, 'left');\n }\n } else {\n if (originalTop !== tipOffset.top) {\n return this._replaceArrow($tip, (tipOffset.top - originalTop) * 2, offsetHeight, 'top');\n }\n }\n };\n\n Tour.prototype._center = function($tip) {\n return $tip.css('top', $(window).outerHeight() / 2 - $tip.outerHeight() / 2);\n };\n\n Tour.prototype._replaceArrow = function($tip, delta, dimension, position) {\n return $tip.find('.arrow').css(position, delta ? 50 * (1 - delta / dimension) + '%' : '');\n };\n\n Tour.prototype._scrollIntoView = function(element, callback) {\n var $element, $window, counter, offsetTop, scrollTop, windowHeight;\n $element = $(element);\n if (!$element.length) {\n return callback();\n }\n $window = $(window);\n offsetTop = $element.offset().top;\n windowHeight = $window.height();\n scrollTop = Math.max(0, offsetTop - (windowHeight / 2));\n this._debug(\"Scroll into view. ScrollTop: \" + scrollTop + \". Element offset: \" + offsetTop + \". Window height: \" + windowHeight + \".\");\n counter = 0;\n return $('body, html').stop(true, true).animate({\n scrollTop: Math.ceil(scrollTop)\n }, (function(_this) {\n return function() {\n if (++counter === 2) {\n callback();\n return _this._debug(\"Scroll into view.\\nAnimation end element offset: \" + ($element.offset().top) + \".\\nWindow height: \" + ($window.height()) + \".\");\n }\n };\n })(this));\n };\n\n Tour.prototype._onResize = function(callback, timeout) {\n return $(window).on(\"resize.tour-\" + this._options.name, function() {\n clearTimeout(timeout);\n return timeout = setTimeout(callback, 100);\n });\n };\n\n Tour.prototype._initMouseNavigation = function() {\n var _this;\n _this = this;\n return $(document).off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\").off(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\").on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='next']\", (function(_this) {\n return function(e) {\n e.preventDefault();\n return _this.next();\n };\n })(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='prev']\", (function(_this) {\n return function(e) {\n e.preventDefault();\n return _this.prev();\n };\n })(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='end']\", (function(_this) {\n return function(e) {\n e.preventDefault();\n return _this.end();\n };\n })(this)).on(\"click.tour-\" + this._options.name, \".popover.tour-\" + this._options.name + \" *[data-role='pause-resume']\", function(e) {\n var $this;\n e.preventDefault();\n $this = $(this);\n $this.text(_this._paused ? $this.data('pause-text') : $this.data('resume-text'));\n if (_this._paused) {\n return _this.resume();\n } else {\n return _this.pause();\n }\n });\n };\n\n Tour.prototype._initKeyboardNavigation = function() {\n if (!this._options.keyboard) {\n return;\n }\n return $(document).on(\"keyup.tour-\" + this._options.name, (function(_this) {\n return function(e) {\n if (!e.which) {\n return;\n }\n switch (e.which) {\n case 39:\n e.preventDefault();\n if (_this._isLast()) {\n return _this.next();\n } else {\n return _this.end();\n }\n break;\n case 37:\n e.preventDefault();\n if (_this._current > 0) {\n return _this.prev();\n }\n break;\n case 27:\n e.preventDefault();\n return _this.end();\n }\n };\n })(this));\n };\n\n Tour.prototype._makePromise = function(result) {\n if (result && $.isFunction(result.then)) {\n return result;\n } else {\n return null;\n }\n };\n\n Tour.prototype._callOnPromiseDone = function(promise, cb, arg) {\n if (promise) {\n return promise.then((function(_this) {\n return function(e) {\n return cb.call(_this, arg);\n };\n })(this));\n } else {\n return cb.call(this, arg);\n }\n };\n\n Tour.prototype._showBackdrop = function(step) {\n if (this.backdrop.backgroundShown) {\n return;\n }\n this.backdrop = $('
    ', {\n \"class\": 'tour-backdrop'\n });\n this.backdrop.backgroundShown = true;\n return $(step.backdropContainer).append(this.backdrop);\n };\n\n Tour.prototype._hideBackdrop = function() {\n this._hideOverlayElement();\n return this._hideBackground();\n };\n\n Tour.prototype._hideBackground = function() {\n if (this.backdrop) {\n this.backdrop.remove();\n this.backdrop.overlay = null;\n return this.backdrop.backgroundShown = false;\n }\n };\n\n Tour.prototype._showOverlayElement = function(step, force) {\n var $element, elementData;\n $element = $(step.element);\n if (!$element || $element.length === 0 || this.backdrop.overlayElementShown && !force) {\n return;\n }\n if (!this.backdrop.overlayElementShown) {\n this.backdrop.$element = $element.addClass('tour-step-backdrop');\n this.backdrop.$background = $('
    ', {\n \"class\": 'tour-step-background'\n });\n this.backdrop.$background.appendTo(step.backdropContainer);\n this.backdrop.overlayElementShown = true;\n }\n elementData = {\n width: $element.innerWidth(),\n height: $element.innerHeight(),\n offset: $element.offset()\n };\n if (step.backdropPadding) {\n elementData = this._applyBackdropPadding(step.backdropPadding, elementData);\n }\n return this.backdrop.$background.width(elementData.width).height(elementData.height).offset(elementData.offset);\n };\n\n Tour.prototype._hideOverlayElement = function() {\n if (!this.backdrop.overlayElementShown) {\n return;\n }\n this.backdrop.$element.removeClass('tour-step-backdrop');\n this.backdrop.$background.remove();\n this.backdrop.$element = null;\n this.backdrop.$background = null;\n return this.backdrop.overlayElementShown = false;\n };\n\n Tour.prototype._applyBackdropPadding = function(padding, data) {\n if (typeof padding === 'object') {\n if (padding.top == null) {\n padding.top = 0;\n }\n if (padding.right == null) {\n padding.right = 0;\n }\n if (padding.bottom == null) {\n padding.bottom = 0;\n }\n if (padding.left == null) {\n padding.left = 0;\n }\n data.offset.top = data.offset.top - padding.top;\n data.offset.left = data.offset.left - padding.left;\n data.width = data.width + padding.left + padding.right;\n data.height = data.height + padding.top + padding.bottom;\n } else {\n data.offset.top = data.offset.top - padding;\n data.offset.left = data.offset.left - padding;\n data.width = data.width + (padding * 2);\n data.height = data.height + (padding * 2);\n }\n return data;\n };\n\n Tour.prototype._clearTimer = function() {\n window.clearTimeout(this._timer);\n this._timer = null;\n return this._duration = null;\n };\n\n Tour.prototype._getProtocol = function(url) {\n url = url.split('://');\n if (url.length > 1) {\n return url[0];\n } else {\n return 'http';\n }\n };\n\n Tour.prototype._getHost = function(url) {\n url = url.split('//');\n url = url.length > 1 ? url[1] : url[0];\n return url.split('/')[0];\n };\n\n Tour.prototype._getPath = function(path) {\n return path.replace(/\\/?$/, '').split('?')[0].split('#')[0];\n };\n\n Tour.prototype._getQuery = function(path) {\n return this._getParams(path, '?');\n };\n\n Tour.prototype._getHash = function(path) {\n return this._getParams(path, '#');\n };\n\n Tour.prototype._getParams = function(path, start) {\n var param, params, paramsObject, _i, _len;\n params = path.split(start);\n if (params.length === 1) {\n return {};\n }\n params = params[1].split('&');\n paramsObject = {};\n for (_i = 0, _len = params.length; _i < _len; _i++) {\n param = params[_i];\n param = param.split('=');\n paramsObject[param[0]] = param[1] || '';\n }\n return paramsObject;\n };\n\n Tour.prototype._equal = function(obj1, obj2) {\n var k, v;\n if ({}.toString.call(obj1) === '[object Object]' && {}.toString.call(obj2) === '[object Object]') {\n for (k in obj1) {\n v = obj1[k];\n if (obj2[k] !== v) {\n return false;\n }\n }\n for (k in obj2) {\n v = obj2[k];\n if (obj1[k] !== v) {\n return false;\n }\n }\n return true;\n }\n return obj1 === obj2;\n };\n\n return Tour;\n\n })();\n return window.Tour = Tour;\n})(jQuery, window);\n\n\n\n// WEBPACK FOOTER //\n// ./galaxy/scripts/libs/bootstrap-tour.js","/*! jQuery UI - v1.9.1 - 2012-10-29\n* http://jqueryui.com\n* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.autocomplete.js, jquery.ui.button.js, jquery.ui.menu.js, jquery.ui.slider.js\n* Copyright (c) 2012 jQuery Foundation and other contributors Licensed MIT */\n\n(function(e,t){function i(t,n){var r,i,o,u=t.nodeName.toLowerCase();return\"area\"===u?(r=t.parentNode,i=r.name,!t.href||!i||r.nodeName.toLowerCase()!==\"map\"?!1:(o=e(\"img[usemap=#\"+i+\"]\")[0],!!o&&s(o))):(/input|select|textarea|button|object/.test(u)?!t.disabled:\"a\"===u?t.href||n:n)&&s(t)}function s(t){return e.expr.filters.visible(t)&&!e(t).parents().andSelf().filter(function(){return e.css(this,\"visibility\")===\"hidden\"}).length}var n=0,r=/^ui-id-\\d+$/;e.ui=e.ui||{};if(e.ui.version)return;e.extend(e.ui,{version:\"1.9.1\",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({_focus:e.fn.focus,focus:function(t,n){return typeof t==\"number\"?this.each(function(){var r=this;setTimeout(function(){e(r).focus(),n&&n.call(r)},t)}):this._focus.apply(this,arguments)},scrollParent:function(){var t;return e.ui.ie&&/(static|relative)/.test(this.css(\"position\"))||/absolute/.test(this.css(\"position\"))?t=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,\"position\"))&&/(auto|scroll)/.test(e.css(this,\"overflow\")+e.css(this,\"overflow-y\")+e.css(this,\"overflow-x\"))}).eq(0):t=this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,\"overflow\")+e.css(this,\"overflow-y\")+e.css(this,\"overflow-x\"))}).eq(0),/fixed/.test(this.css(\"position\"))||!t.length?e(document):t},zIndex:function(n){if(n!==t)return this.css(\"zIndex\",n);if(this.length){var r=e(this[0]),i,s;while(r.length&&r[0]!==document){i=r.css(\"position\");if(i===\"absolute\"||i===\"relative\"||i===\"fixed\"){s=parseInt(r.css(\"zIndex\"),10);if(!isNaN(s)&&s!==0)return s}r=r.parent()}}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id=\"ui-id-\"+ ++n)})},removeUniqueId:function(){return this.each(function(){r.test(this.id)&&e(this).removeAttr(\"id\")})}}),e(\"\").outerWidth(1).jquery||e.each([\"Width\",\"Height\"],function(n,r){function u(t,n,r,s){return e.each(i,function(){n-=parseFloat(e.css(t,\"padding\"+this))||0,r&&(n-=parseFloat(e.css(t,\"border\"+this+\"Width\"))||0),s&&(n-=parseFloat(e.css(t,\"margin\"+this))||0)}),n}var i=r===\"Width\"?[\"Left\",\"Right\"]:[\"Top\",\"Bottom\"],s=r.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn[\"inner\"+r]=function(n){return n===t?o[\"inner\"+r].call(this):this.each(function(){e(this).css(s,u(this,n)+\"px\")})},e.fn[\"outer\"+r]=function(t,n){return typeof t!=\"number\"?o[\"outer\"+r].call(this,t):this.each(function(){e(this).css(s,u(this,t,!0,n)+\"px\")})}}),e.extend(e.expr[\":\"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,\"tabindex\")))},tabbable:function(t){var n=e.attr(t,\"tabindex\"),r=isNaN(n);return(r||n>=0)&&i(t,!r)}}),e(function(){var t=document.body,n=t.appendChild(n=document.createElement(\"div\"));n.offsetHeight,e.extend(n.style,{minHeight:\"100px\",height:\"auto\",padding:0,borderWidth:0}),e.support.minHeight=n.offsetHeight===100,e.support.selectstart=\"onselectstart\"in n,t.removeChild(n).style.display=\"none\"}),function(){var t=/msie ([\\w.]+)/.exec(navigator.userAgent.toLowerCase())||[];e.ui.ie=t.length?!0:!1,e.ui.ie6=parseFloat(t[1],10)===6}(),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?\"selectstart\":\"mousedown\")+\".ui-disableSelection\",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(\".ui-disableSelection\")}}),e.extend(e.ui,{plugin:{add:function(t,n,r){var i,s=e.ui[t].prototype;for(i in r)s.plugins[i]=s.plugins[i]||[],s.plugins[i].push([n,r[i]])},call:function(e,t,n){var r,i=e.plugins[t];if(!i||!e.element[0].parentNode||e.element[0].parentNode.nodeType===11)return;for(r=0;r0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)},isOverAxis:function(e,t,n){return e>t&&e\",options:{disabled:!1,create:null},_createWidget:function(t,r){r=e(r||this.defaultElement||this)[0],this.element=e(r),this.uuid=n++,this.eventNamespace=\".\"+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),r!==this&&(e.data(r,this.widgetName,this),e.data(r,this.widgetFullName,this),this._on(this.element,{remove:function(e){e.target===r&&this.destroy()}}),this.document=e(r.style?r.ownerDocument:r.document||r),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger(\"create\",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr(\"aria-disabled\").removeClass(this.widgetFullName+\"-disabled \"+\"ui-state-disabled\"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass(\"ui-state-hover\"),this.focusable.removeClass(\"ui-state-focus\")},_destroy:e.noop,widget:function(){return this.element},option:function(n,r){var i=n,s,o,u;if(arguments.length===0)return e.widget.extend({},this.options);if(typeof n==\"string\"){i={},s=n.split(\".\"),n=s.shift();if(s.length){o=i[n]=e.widget.extend({},this.options[n]);for(u=0;u=9||!!t.button?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return e(document).unbind(\"mousemove.\"+this.widgetName,this._mouseMoveDelegate).unbind(\"mouseup.\"+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+\".preventClickEvent\",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(e){return this.mouseDelayMet},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return!0}})})(jQuery);(function(e,t){function h(e,t,n){return[parseInt(e[0],10)*(l.test(e[0])?t/100:1),parseInt(e[1],10)*(l.test(e[1])?n/100:1)]}function p(t,n){return parseInt(e.css(t,n),10)||0}e.ui=e.ui||{};var n,r=Math.max,i=Math.abs,s=Math.round,o=/left|center|right/,u=/top|center|bottom/,a=/[\\+\\-]\\d+%?/,f=/^\\w+/,l=/%$/,c=e.fn.position;e.position={scrollbarWidth:function(){if(n!==t)return n;var r,i,s=e(\"
    \"),o=s.children()[0];return e(\"body\").append(s),r=o.offsetWidth,s.css(\"overflow\",\"scroll\"),i=o.offsetWidth,r===i&&(i=s[0].clientWidth),s.remove(),n=r-i},getScrollInfo:function(t){var n=t.isWindow?\"\":t.element.css(\"overflow-x\"),r=t.isWindow?\"\":t.element.css(\"overflow-y\"),i=n===\"scroll\"||n===\"auto\"&&t.width0?\"right\":\"center\",vertical:u<0?\"top\":o>0?\"bottom\":\"middle\"};lr(i(o),i(u))?h.important=\"horizontal\":h.important=\"vertical\",t.using.call(this,e,h)}),a.offset(e.extend(C,{using:u}))})},e.ui.position={fit:{left:function(e,t){var n=t.within,i=n.isWindow?n.scrollLeft:n.offset.left,s=n.width,o=e.left-t.collisionPosition.marginLeft,u=i-o,a=o+t.collisionWidth-s-i,f;t.collisionWidth>s?u>0&&a<=0?(f=e.left+u+t.collisionWidth-s-i,e.left+=u-f):a>0&&u<=0?e.left=i:u>a?e.left=i+s-t.collisionWidth:e.left=i:u>0?e.left+=u:a>0?e.left-=a:e.left=r(e.left-o,e.left)},top:function(e,t){var n=t.within,i=n.isWindow?n.scrollTop:n.offset.top,s=t.within.height,o=e.top-t.collisionPosition.marginTop,u=i-o,a=o+t.collisionHeight-s-i,f;t.collisionHeight>s?u>0&&a<=0?(f=e.top+u+t.collisionHeight-s-i,e.top+=u-f):a>0&&u<=0?e.top=i:u>a?e.top=i+s-t.collisionHeight:e.top=i:u>0?e.top+=u:a>0?e.top-=a:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var n=t.within,r=n.offset.left+n.scrollLeft,s=n.width,o=n.isWindow?n.scrollLeft:n.offset.left,u=e.left-t.collisionPosition.marginLeft,a=u-o,f=u+t.collisionWidth-s-o,l=t.my[0]===\"left\"?-t.elemWidth:t.my[0]===\"right\"?t.elemWidth:0,c=t.at[0]===\"left\"?t.targetWidth:t.at[0]===\"right\"?-t.targetWidth:0,h=-2*t.offset[0],p,d;if(a<0){p=e.left+l+c+h+t.collisionWidth-s-r;if(p<0||p0){d=e.left-t.collisionPosition.marginLeft+l+c+h-o;if(d>0||i(d)a&&(v<0||v0&&(d=e.top-t.collisionPosition.marginTop+c+h+p-o,e.top+c+h+p>f&&(d>0||i(d)10&&i<11,t.innerHTML=\"\",n.removeChild(t)}(),e.uiBackCompat!==!1&&function(e){var n=e.fn.position;e.fn.position=function(r){if(!r||!r.offset)return n.call(this,r);var i=r.offset.split(\" \"),s=r.at.split(\" \");return i.length===1&&(i[1]=i[0]),/^\\d/.test(i[0])&&(i[0]=\"+\"+i[0]),/^\\d/.test(i[1])&&(i[1]=\"+\"+i[1]),s.length===1&&(/left|center|right/.test(s[0])?s[1]=\"center\":(s[1]=s[0],s[0]=\"center\")),n.call(this,e.extend(r,{at:s[0]+i[0]+\" \"+s[1]+i[1],offset:t}))}}(jQuery)})(jQuery);(function(e,t){var n=0;e.widget(\"ui.autocomplete\",{version:\"1.9.1\",defaultElement:\"\",options:{appendTo:\"body\",autoFocus:!1,delay:300,minLength:1,position:{my:\"left top\",at:\"left bottom\",collision:\"none\"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},pending:0,_create:function(){var t,n,r;this.isMultiLine=this._isMultiLine(),this.valueMethod=this.element[this.element.is(\"input,textarea\")?\"val\":\"text\"],this.isNewMenu=!0,this.element.addClass(\"ui-autocomplete-input\").attr(\"autocomplete\",\"off\"),this._on(this.element,{keydown:function(i){if(this.element.prop(\"readOnly\")){t=!0,r=!0,n=!0;return}t=!1,r=!1,n=!1;var s=e.ui.keyCode;switch(i.keyCode){case s.PAGE_UP:t=!0,this._move(\"previousPage\",i);break;case s.PAGE_DOWN:t=!0,this._move(\"nextPage\",i);break;case s.UP:t=!0,this._keyEvent(\"previous\",i);break;case s.DOWN:t=!0,this._keyEvent(\"next\",i);break;case s.ENTER:case s.NUMPAD_ENTER:this.menu.active&&(t=!0,i.preventDefault(),this.menu.select(i));break;case s.TAB:this.menu.active&&this.menu.select(i);break;case s.ESCAPE:this.menu.element.is(\":visible\")&&(this._value(this.term),this.close(i),i.preventDefault());break;default:n=!0,this._searchTimeout(i)}},keypress:function(r){if(t){t=!1,r.preventDefault();return}if(n)return;var i=e.ui.keyCode;switch(r.keyCode){case i.PAGE_UP:this._move(\"previousPage\",r);break;case i.PAGE_DOWN:this._move(\"nextPage\",r);break;case i.UP:this._keyEvent(\"previous\",r);break;case i.DOWN:this._keyEvent(\"next\",r)}},input:function(e){if(r){r=!1,e.preventDefault();return}this._searchTimeout(e)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){if(this.cancelBlur){delete this.cancelBlur;return}clearTimeout(this.searching),this.close(e),this._change(e)}}),this._initSource(),this.menu=e(\"
      \").addClass(\"ui-autocomplete\").appendTo(this.document.find(this.options.appendTo||\"body\")[0]).menu({input:e(),role:null}).zIndex(this.element.zIndex()+1).hide().data(\"menu\"),this._on(this.menu.element,{mousedown:function(t){t.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur});var n=this.menu.element[0];e(t.target).closest(\".ui-menu-item\").length||this._delay(function(){var t=this;this.document.one(\"mousedown\",function(r){r.target!==t.element[0]&&r.target!==n&&!e.contains(n,r.target)&&t.close()})})},menufocus:function(t,n){if(this.isNewMenu){this.isNewMenu=!1;if(t.originalEvent&&/^mouse/.test(t.originalEvent.type)){this.menu.blur(),this.document.one(\"mousemove\",function(){e(t.target).trigger(t.originalEvent)});return}}var r=n.item.data(\"ui-autocomplete-item\")||n.item.data(\"item.autocomplete\");!1!==this._trigger(\"focus\",t,{item:r})?t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(r.value):this.liveRegion.text(r.value)},menuselect:function(e,t){var n=t.item.data(\"ui-autocomplete-item\")||t.item.data(\"item.autocomplete\"),r=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=r,this._delay(function(){this.previous=r,this.selectedItem=n})),!1!==this._trigger(\"select\",e,{item:n})&&this._value(n.value),this.term=this._value(),this.close(e),this.selectedItem=n}}),this.liveRegion=e(\"\",{role:\"status\",\"aria-live\":\"polite\"}).addClass(\"ui-helper-hidden-accessible\").insertAfter(this.element),e.fn.bgiframe&&this.menu.element.bgiframe(),this._on(this.window,{beforeunload:function(){this.element.removeAttr(\"autocomplete\")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeClass(\"ui-autocomplete-input\").removeAttr(\"autocomplete\"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),e===\"source\"&&this._initSource(),e===\"appendTo\"&&this.menu.element.appendTo(this.document.find(t||\"body\")[0]),e===\"disabled\"&&t&&this.xhr&&this.xhr.abort()},_isMultiLine:function(){return this.element.is(\"textarea\")?!0:this.element.is(\"input\")?!1:this.element.prop(\"isContentEditable\")},_initSource:function(){var t,n,r=this;e.isArray(this.options.source)?(t=this.options.source,this.source=function(n,r){r(e.ui.autocomplete.filter(t,n.term))}):typeof this.options.source==\"string\"?(n=this.options.source,this.source=function(t,i){r.xhr&&r.xhr.abort(),r.xhr=e.ajax({url:n,data:t,dataType:\"json\",success:function(e){i(e)},error:function(){i([])}})}):this.source=this.options.source},_searchTimeout:function(e){clearTimeout(this.searching),this.searching=this._delay(function(){this.term!==this._value()&&(this.selectedItem=null,this.search(null,e))},this.options.delay)},search:function(e,t){e=e!=null?e:this._value(),this.term=this._value();if(e.length\").append(e(\"\").text(n.label)).appendTo(t)},_move:function(e,t){if(!this.menu.element.is(\":visible\")){this.search(null,t);return}if(this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)){this._value(this.term),this.menu.blur();return}this.menu[e](t)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){if(!this.isMultiLine||this.menu.element.is(\":visible\"))this._move(e,t),t.preventDefault()}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\\-\\[\\]{}()*+?.,\\\\\\^$|#\\s]/g,\"\\\\$&\")},filter:function(t,n){var r=new RegExp(e.ui.autocomplete.escapeRegex(n),\"i\");return e.grep(t,function(e){return r.test(e.label||e.value||e)})}}),e.widget(\"ui.autocomplete\",e.ui.autocomplete,{options:{messages:{noResults:\"No search results.\",results:function(e){return e+(e>1?\" results are\":\" result is\")+\" available, use up and down arrow keys to navigate.\"}}},__response:function(e){var t;this._superApply(arguments);if(this.options.disabled||this.cancelSearch)return;e&&e.length?t=this.options.messages.results(e.length):t=this.options.messages.noResults,this.liveRegion.text(t)}})})(jQuery);(function(e,t){var n,r,i,s,o=\"ui-button ui-widget ui-state-default ui-corner-all\",u=\"ui-state-hover ui-state-active \",a=\"ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only\",f=function(){var t=e(this).find(\":ui-button\");setTimeout(function(){t.button(\"refresh\")},1)},l=function(t){var n=t.name,r=t.form,i=e([]);return n&&(r?i=e(r).find(\"[name='\"+n+\"']\"):i=e(\"[name='\"+n+\"']\",t.ownerDocument).filter(function(){return!this.form})),i};e.widget(\"ui.button\",{version:\"1.9.1\",defaultElement:\"