diff options
author | Yuchen Pei <hi@ypei.me> | 2022-09-19 11:22:21 +1000 |
---|---|---|
committer | Yuchen Pei <hi@ypei.me> | 2022-09-19 11:22:21 +1000 |
commit | ef1b927861f9a949aed20341144ffb5bfd42f038 (patch) | |
tree | 48bd4688928546bedc6504aad76bf6e0327fcef9 /javascript | |
parent | 117850d8f659517cb818a857dc04c8f5157795c4 (diff) |
Removing the web client
Diffstat (limited to 'javascript')
130 files changed, 0 insertions, 26738 deletions
diff --git a/javascript/.ember-cli b/javascript/.ember-cli deleted file mode 100644 index 59bb55f..0000000 --- a/javascript/.ember-cli +++ /dev/null @@ -1,9 +0,0 @@ -{ - /** - Ember CLI sends analytics information by default. The data is completely - anonymous, but there are times when you might want to disable this behavior. - - Setting `disableAnalytics` to true will prevent any data from being sent. - */ - "disableAnalytics": true -} diff --git a/javascript/.eslintrc.js b/javascript/.eslintrc.js deleted file mode 100644 index 56940e4..0000000 --- a/javascript/.eslintrc.js +++ /dev/null @@ -1,15 +0,0 @@ -module.exports = { - root: true, - parserOptions: { - ecmaVersion: 2017, - sourceType: 'module' - }, - extends: 'eslint:recommended', - env: { - browser: true - }, - rules: { - 'no-console':0, - "no-useless-escape": 0 - } -}; diff --git a/javascript/.gitignore b/javascript/.gitignore deleted file mode 100644 index 20b90e3..0000000 --- a/javascript/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -# compiled output -/dist -/tmp - -# dependencies -/node_modules -/bower_components - -# misc -/.sass-cache -/connect.lock -/coverage/* -/libpeerconnection.log -npm-debug.log -testem.log diff --git a/javascript/.watchmanconfig b/javascript/.watchmanconfig deleted file mode 100644 index e7834e3..0000000 --- a/javascript/.watchmanconfig +++ /dev/null @@ -1,3 +0,0 @@ -{ - "ignore_dirs": ["tmp", "dist"] -} diff --git a/javascript/README.md b/javascript/README.md deleted file mode 100644 index d73ef9e..0000000 --- a/javascript/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# haskell-code-explorer - -## Prerequisites -* [Node.js](https://nodejs.org/) (with NPM) -* [Ember CLI](https://ember-cli.com/) -* [bower](https://bower.io/) - -## Installation -* `cd haskell-code-explorer/javascript` -* `npm install` -* `bower install` - -## Running / Development -* Start haskell-code-server on port 8080 -* `ember server --port=4200 --proxy=http://localhost:8080` -* Visit your app at [http://localhost:4200](http://localhost:4200). - -To test the app with real-world data : -* ember server --proxy=https://haskell-code-explorer.mfix.io/ - -## Running Tests -* `ember server --port=4200` -* Open [http://localhost:4200/tests](http://localhost:4200/tests) in a browser - -## Building -* `ember build --environment production` diff --git a/javascript/app/app.js b/javascript/app/app.js deleted file mode 100644 index 4f3fd63..0000000 --- a/javascript/app/app.js +++ /dev/null @@ -1,15 +0,0 @@ -import Ember from 'ember'; -import Resolver from 'ember-resolver'; -import loadInitializers from 'ember-load-initializers'; -import config from './config/environment'; - -var App; - -App = Ember.Application.extend({ - modulePrefix: config.modulePrefix, - Resolver: Resolver -}); - -loadInitializers(App, config.modulePrefix); - -export default App; diff --git a/javascript/app/components/.gitkeep b/javascript/app/components/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/javascript/app/components/.gitkeep +++ /dev/null diff --git a/javascript/app/components/bottom-panel.js b/javascript/app/components/bottom-panel.js deleted file mode 100644 index 6415d0e..0000000 --- a/javascript/app/components/bottom-panel.js +++ /dev/null @@ -1,52 +0,0 @@ -import Ember from 'ember'; - -function show(component) { - const height = Math.floor(component.$containerElement.height() /2); - component.$().css({ - "display":"block", - "top" : height+"px" - }); - component.$topPanelElement.css({ - "height":height+"px" - }); -} - -function hide(component) { - const height = Math.floor(component.$containerElement.height()/2); - component.$().css({ - "display":"none", - "height":height+"px" - }); - component.$topPanelElement.css({ - "height":"100%" - }); -} - -export default Ember.Component.extend({ - classNames:["bottom-panel"], - didInsertElement : function () { - this._super(...arguments); - this.$topPanelElement = Ember.$(this.get('topPanelElementId')); - this.$containerElement = Ember.$(this.get('containerElementId')); - Ember.run.next(this,() => { - Ember.$(this.element).resizable({ - handles:"n", - maxHeight:700, - minHeight:200, - resize: (event,ui) => { - Ember.run.next(this,() => { - this.$topPanelElement.css({"height": this.$containerElement.height() - ui.size.height}); - }); - } - }); - }); - }, - visibilityObserver : Ember.observer('visible',function () { - this.get('visible') ? show(this) : hide(this); - }), - actions : { - close () { - this.set('visible',false); - } - } -}); diff --git a/javascript/app/components/expression-info.js b/javascript/app/components/expression-info.js deleted file mode 100644 index d403c49..0000000 --- a/javascript/app/components/expression-info.js +++ /dev/null @@ -1,3 +0,0 @@ -import Ember from 'ember'; -export default Ember.Component.extend({ -}); diff --git a/javascript/app/components/file-tree.js b/javascript/app/components/file-tree.js deleted file mode 100644 index f78ba1d..0000000 --- a/javascript/app/components/file-tree.js +++ /dev/null @@ -1,118 +0,0 @@ -import Ember from 'ember'; - -const directoryTreeToJsTree = function (packageId,directoryTree) { - return directoryTree.contents.map((node) => { - const jsTreeNode = {}; - jsTreeNode.text = node.name; - jsTreeNode.data = node; - if(node.path) { - jsTreeNode.id = node.path; - jsTreeNode.a_attr = {href:"/package/" + packageId + "/show/" + node.path}; - } - if(node.tag === "Dir") { - jsTreeNode.children = directoryTreeToJsTree(packageId,node); - jsTreeNode.state = {"opened" : containsHaskellModule(node)}; - } else { - if(node.isHaskellModule) { - jsTreeNode.icon = "/assets/haskell.ico"; - jsTreeNode.isHaskellModule = true; - } else { - jsTreeNode.icon = "jstree-file"; - jsTreeNode.isHaskellModule = false; - } - } - return jsTreeNode; - }); -}; - -const containsHaskellModule = function(node) { - return node.contents.some((n) => { - if(n.tag === "File") { - return n.isHaskellModule; - } else { - return containsHaskellModule(n); - } - }); -} - -const fileExtension = function (filename) { - const idx = filename.lastIndexOf('.'); - return (idx < 1) ? "" : filename.substr(idx + 1); -} - -export default Ember.Component.extend({ - query: null, - sortType: "alphabetical", - sortTypeObserver : Ember.observer('sortType',function() { - Ember.run.next(this,() => { - this.jstree.refresh(); - }); - }), - didInsertElement : function () { - this._super(...arguments); - const element = this.element.getElementsByClassName('file-tree')[0]; - const component = this; - - const jstreeElement = Ember.$(element).jstree({ - 'core' : { - 'data' : directoryTreeToJsTree(this.get('packageId'),this.get('directoryTree')) - }, - "plugins" : [ - "search", - "sort" - ], - "search": { - "case_insensitive": true, - "show_only_matches" : true, - "show_only_matches_children": true - }, - 'sort' : function (a,b) { - const node1 = this.get_node(a).data; - const node2 = this.get_node(b).data; - if(component.get("sortType") === "alphabetical") { - return node1.name.localeCompare(node2.name); - } else { - const extendedName1 = (node1.tag === "Dir" ? "0" : "1") + fileExtension(node1.name) + node1.name; - const extendedName2 = (node2.tag === "Dir" ? "0" : "1") + fileExtension(node2.name) + node2.name; - return extendedName1.localeCompare(extendedName2); - } - } - }); - - jstreeElement.on("select_node.jstree",(event,data) => { - const file = data.node.data; - if(file.tag != "Dir") { - this.sendAction('openFile',file.path); - } - }); - - const jstree = jstreeElement.jstree(true); - - if(this.get('currentFile')) { - jstree.select_node(this.get('currentFile')); - const node = jstree.get_node(this.get('currentFile'),true)[0]; - if(node) { - node.scrollIntoView(); - } - } - this.jstree = jstree; - }, - currentFileObserver : Ember.observer('currentFile',function() { - Ember.run.next(() => { - this.jstree.deselect_all(); - this.jstree.select_node(this.get('currentFile')); - }); - }), - queryObserver : Ember.observer('query',function() { - if(this.get('query')) { - this.jstree.search(this.get('query')); - } else { - this.jstree.clear_search(); - } - }), - actions : { - hide() { - this.get('hide')(); - } - } -}); diff --git a/javascript/app/components/haskell-module.js b/javascript/app/components/haskell-module.js deleted file mode 100644 index 187e6c5..0000000 --- a/javascript/app/components/haskell-module.js +++ /dev/null @@ -1,520 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; -import {initializeLineSelection} from '../utils/line-selection'; -import {addLinksToLanguageExtensionsDocs} from '../utils/language-extensions'; - -function compareLocations (p1,p2) { - if(p1.line === p2.line) { - if(p1.column === p2.column) { - return 0; - } else if(p1.column > p2.column) { - return 1; - } else { - return -1; - } - } else if(p1.line > p2.line) { - return 1; - } else { - return -1; - } -} - -function buildSrcSpan(sourceCodeLines,start,end) { - if(sourceCodeLines[start.line] && sourceCodeLines[end.line]) { - if(start.line === end.line) { - return sourceCodeLines[start.line].slice(start.column-1,end.column-1); - } else { - const firstLine = sourceCodeLines[start.line]; - let middleLines = []; - for(let i = start.line + 1; i < end.line;i ++) { - middleLines.push(sourceCodeLines[i]); - } - const lastLine = sourceCodeLines[end.line]; - const minOffset = Math.min(start.column, - (middleLines.concat([lastLine])) - .map((line) => line.search(/\S/)) - .reduce((min,value) => Math.min(min,value))); - return firstLine.slice(start.column-1,firstLine.length) + "\n" - + middleLines.map((line) => line.slice(minOffset,line.length)).join("\n") - + (middleLines.length ? "\n" : "") + lastLine.slice(minOffset,end.column-1); - } - } else { - return null; - } -} - -function modifyClass(element,on) { - if(on) { - element.classList.add('highlighted-identifier'); - } else { - element.classList.remove('highlighted-identifier'); - } -} - -function highlightIdentifiers(parentElement,identifierElement,on) { - if(identifierElement.id) { - const identifiers = Array.prototype.slice.call(parentElement.querySelectorAll("span[id='"+identifierElement.id+"']")); - identifiers.forEach((identifier) => { - modifyClass(identifier,on); - }); - } else { - modifyClass(identifierElement,on);//Literal - } -} - -//divident is a string -//divident may have any number of digits -function modulo(divident, divisor) { - return Array.from(divident).map(c => parseInt(c)) - .reduce((acc, value) => { - return (acc * 10 + value) % divisor; - },0); -} - -function isDefinedInCurrentModule(moduleName,modulePath,identifierInfo) { - return (identifierInfo.sort === "External") && - (identifierInfo.locationInfo.modulePath === modulePath - || identifierInfo.locationInfo.moduleName === moduleName) -} - -function identifierStyle(identifierElement, - identifiers, - occurrences, - path, - colorTheme, - moduleName) { - const idOcc = occurrences[identifierElement.dataset.occurrence]; - - let color = colorTheme.defaultColor; - let fontWeight; - - if(idOcc) { - if(idOcc.sort.tag === 'TypeId') { - color = colorTheme.typeColor; - } else if(idOcc.description === "HsLit" || - idOcc.description === "HsOverLit"|| - idOcc.description === "LitPat" || - idOcc.description === "NPat" || - idOcc.description === "NPlusKPat" || - idOcc.description === "OverLit") { - color = colorTheme.literalColor; - } else { - const idInfo = identifiers[identifierElement.dataset.identifier]; - if(idInfo) { - if(isDefinedInCurrentModule(moduleName,path,idInfo)) { - color = colorTheme.topLevelIdFromCurrentModule; - } else if(idInfo.sort === "Internal" && idInfo.locationInfo.tag === "ExactLocation") { - const colorNumber = modulo(identifierElement.id,colorTheme.localIdentifierColor.length); - color = colorTheme.localIdentifierColor[colorNumber]; - fontWeight = "bold"; - } - } - } - } - - return "color:"+color+";" - +(fontWeight ? "font-weight:" + fontWeight : "")+";" - +(idOcc.isBinder ? "text-decoration:underline;" : ""); -} - -function initializeIdentifiers (sourceCodeContainerElement,component) { - const identifierElements = Array.prototype.slice.call(sourceCodeContainerElement.querySelectorAll("span.identifier")); - if(identifierElements.length > 0) { - const timeout = 250;//milliseconds - let timer = null; - - identifierElements.forEach((identifierElement) => { - - const cssText = identifierStyle(identifierElement, - component.get('identifiers'), - component.get('occurrences'), - component.get('path'), - component.get('colorTheme'), - component.get('name')); - - identifierElement.style.cssText = cssText; - - //go to definition - identifierElement.onmouseup = (event) => { - if(timer) { - clearTimeout(timer); - } - - if(!window.getSelection().isCollapsed) { - return; - } - - const identifierInfo = component.get('identifiers')[identifierElement.dataset.identifier]; - const idOccurrenceInfo = component.get('occurrences')[identifierElement.dataset.occurrence]; - - const currentLineNumber = parseInt(identifierElement.parentNode.dataset.line); - - if(idOccurrenceInfo.sort.tag === "ModuleId") { - goToDefinition(component.get('store'), - idOccurrenceInfo.sort.contents, - event.which, - currentLineNumber); - } - else { - if(identifierInfo && (event.which === 1 || event.which === 2)) { - if(!idOccurrenceInfo.isBinder) { - goToDefinition(component.get('store'), - identifierInfo.locationInfo, - event.which, - currentLineNumber); - } else { - if(identifierInfo.sort === "External") { - component.get('findReferences')(component.get('packageId'), - identifierInfo.externalId, - identifierInfo.demangledOccName, - identifierInfo.locationInfo); - - } - } - } - } - } - identifierElement.onmouseover = () => { - highlightIdentifiers(sourceCodeContainerElement,identifierElement,true); - if(timer) { - clearTimeout(timer); - } - timer = setTimeout(() => { - Ember.run.next(component,() => { - const identifierInfo = component.get('identifiers')[identifierElement.dataset.identifier]; - const identifierOccurrence = component.get('occurrences')[identifierElement.dataset.occurrence]; - console.log(identifierOccurrence); - console.log(identifierInfo); - - component.set('selectedIdentifier',identifierElement); - component.set('currentLineNumber',parseInt(identifierElement.parentNode.dataset.line) || 1); - component.set('identifierInfo',identifierInfo); - component.set('identifierOccurrence',identifierOccurrence); - component.set('hasSelectedExpression',false); - component.set('isHoveredOverIdentifier',true); - - }); - },timeout); - }; - - identifierElement.onmouseout = () => { - highlightIdentifiers(sourceCodeContainerElement,identifierElement,false); - - if(timer) { - clearTimeout(timer); - } - - timer = setTimeout (() => { - Ember.run.next(component,() => { - component.set('isHoveredOverIdentifier',false); - }); - },timeout); - }; - }); - component.timer = timer; - } -} - - - -function contains (node, other) { - return node === other || !!(node.compareDocumentPosition(other) & 16); -} - -function initializeExpressionInfo(sourceCodeContainerElement,component) { - const lineElements = Array.prototype.slice.call(sourceCodeContainerElement.querySelectorAll("td.line-content")); - if(lineElements.length > 0) { - - //Line numbers start with 1 - let sourceCodeLines = [""]; - - lineElements.forEach((el) => { - sourceCodeLines.push(el.textContent); - }); - - const allowedNodeNames = ["#text","SPAN","TD"]; - let isLoading = false; - let shouldWait = false; - const timeout = 400;//milliseconds - - const onmouseup = function() { - Ember.run.next(() => { - if(isLoading || shouldWait) { - return; - } - shouldWait = true; - setTimeout(() => {shouldWait = false;},timeout); - - component.set('hasSelectedExpression',false); - - const selection = window.getSelection(); - - //Selection of multiple lines inside a table doesn't work in Firefox - //https://bugzilla.mozilla.org/show_bug.cgi?id=365900 - - if(!(selection.anchorNode && selection.focusNode) - || !contains(sourceCodeContainerElement,selection.anchorNode) - || !contains(sourceCodeContainerElement,selection.focusNode) - || (allowedNodeNames.indexOf(selection.anchorNode.nodeName) === -1) - || (allowedNodeNames.indexOf(selection.focusNode.nodeName) === -1) - || selection.isCollapsed) { - return; - } - - // Detects whether the selection is backwards - const detectionRange = document.createRange(); - detectionRange.setStart(selection.anchorNode, selection.anchorOffset); - detectionRange.setEnd(selection.focusNode, selection.focusOffset); - const isBackward = detectionRange.collapsed; - - let startNode,startNodeOffset,endNode,endNodeOffset; - - if(isBackward) { - startNode = selection.focusNode; - startNodeOffset = selection.focusOffset; - endNode = selection.anchorNode; - endNodeOffset = selection.anchorOffset; - } else { - startNode = selection.anchorNode; - startNodeOffset = selection.anchorOffset; - endNode = selection.focusNode; - endNodeOffset = selection.focusOffset; - } - - let lineStart,columnStart,lineEnd,columnEnd; - let infoWindowTargetElement; - - - //HTML inside source code container : - //<tr><td><span data-start="1" date-end="3">abc</span><span>...</span></td></tr> - //<tr>...</tr> - if(startNode.nodeName === "#text") { - const parent = startNode.parentNode;//<span> - columnStart = parseInt(parent.dataset.start) + startNodeOffset; - lineStart = parseInt(parent.parentNode.dataset.line); - - if(startNodeOffset === startNode.textContent.length && parent.nextSibling === null) { - const tr = startNode.parentNode.parentNode.parentNode;// span -> td -> tr - - //Skipping empty lines - let nextLine = tr.nextSibling; - while(nextLine.children[1].textContent === "") { - nextLine = nextLine.nextSibling; - } - infoWindowTargetElement = nextLine.children[1].children[0]; - - } else { - if(!(startNodeOffset === 0) && (parent.nextSibling)) { - infoWindowTargetElement = parent.nextSibling; - } else { - infoWindowTargetElement = parent; - } - } - } else if(startNode.nodeName === "SPAN") { - columnStart = 1; - lineStart = parseInt(startNode.parentNode.dataset.line); - - const tr = startNode.parentNode.parentNode; // td -> tr - let nextLine = tr.nextSibling; - while(nextLine.children[1].textContent === "") { - nextLine = nextLine.nextSibling; - } - infoWindowTargetElement = nextLine.children[1].children[0]; - - } else if(startNode.nodeName === "TD") { - if(startNodeOffset > 0) { - const child = startNode.children[startNodeOffset-1]; - columnStart = parseInt(child.dataset.start); - } else { - columnStart = 1; - } - lineStart = parseInt(startNode.id.slice(2)); - infoWindowTargetElement = startNode.children[0]; - } - - if(endNode.nodeName === "#text") { - columnEnd = parseInt(endNode.parentNode.dataset.start) + endNodeOffset; - lineEnd = parseInt(endNode.parentNode.parentNode.dataset.line); - } else if(endNode.nodeName === "SPAN") { - columnEnd = 1; - lineEnd = parseInt(endNode.parentNode.dataset.line); - } else if(endNode.nodeName === "TD"){ - if(endNodeOffset > 0) { - const child = endNode.children[endNodeOffset-1]; - columnEnd = parseInt(child.dataset.start); - } else { - columnEnd = 1; - } - lineEnd = parseInt(endNode.id.slice(2)); - } - - const loadExprPromise = component.get('store').loadExpressions( - component.get('packageId'), - component.get('path'), - lineStart, - columnStart, - lineEnd, - columnEnd); - isLoading = true; - - loadExprPromise.then((expressions) => { - Ember.run.next(() => { - if(expressions && expressions.length > 0) { - expressions.sort(function(expr1,expr2) { - if( compareLocations(expr1.srcSpan.start,expr2.srcSpan.start) <= 0 - && compareLocations(expr1.srcSpan.end,expr2.srcSpan.end) >= 0 ) { - return -1; - } else { - return 1; - } - }); - - const expressionsWithSourceCode = expressions.reduce((result,expression) => { - const object = Ember.copy(expression); - const srcSpan = buildSrcSpan(sourceCodeLines, - expression.srcSpan.start, - expression.srcSpan.end); - if(srcSpan) { - object.sourceCode = srcSpan; - return result.concat(object); - } else { - return result; - } - },[]); - - if(expressionsWithSourceCode.length > 0) { - component.set('selectedIdentifier',infoWindowTargetElement); - component.set('expressions',expressionsWithSourceCode); - component.set('currentLineNumber',parseInt(infoWindowTargetElement.parentNode.dataset.line) || 1); - component.set('hasSelectedExpression',true); - - } - } - isLoading = false; - }); - }); - }); - }; - - sourceCodeContainerElement.addEventListener('mouseup',onmouseup); - component._onmouseup = onmouseup; - } -} - -export default Ember.Component.extend({ - store : Ember.inject.service('store'), - selectedIdentifier : null, - isHoveredOverIdentifier : false, - hasSelectedExpression : false, - showDeclarations : true, - showDeclarationsLabel : Ember.computed('showDeclarations',function () { - return this.get('showDeclarations') ? "Hide" : "Show"; - }), - queryObserver : Ember.observer("query",function() { - Ember.run.debounce(this, () => { - const regExp = new RegExp(this.get('query'),"i"); - const filteredDeclarations = this.get('declarations').filter((d) => d.name.search(regExp) != -1); - Ember.run.next(() => { - this.set('filteredDeclarations',filteredDeclarations); - }); - }, 300); - }), - identifierLocationInfo : Ember.computed('identifierInfo','identifierOccurrence',function() { - const idOcc = this.get('identifierOccurrence'); - const idInfo = this.get('identifierInfo'); - if(idOcc) { - if(idOcc.sort.tag === "ModuleId") { - return idOcc.sort.contents; - } else { - if(idInfo) { - return idInfo.locationInfo; - } else { - return null; - } - } - } - }), - themeObserver : Ember.observer('colorTheme',function() { - Ember.run.next(this,() => { - this.cleanup(); - this.didInsertElement(); - }); - }), - fileObserver : Ember.observer('path',function() { - Ember.run.next(this,() => { - this.cleanup(); - this.didInsertElement(); - }); - }), - cleanup() { - if(this.timer) { - clearTimeout(this.timer); - } - if(this._onhashchange) { - window.removeEventListener('hashchange',this._onhashchange); - } - if(this._onkeydown) { - document.removeEventListener('keydown',this._onkeydown); - } - if(this._onkeyup) { - document.removeEventListener('keyup',this._onkeyup); - } - if(this._onmouseup) { - this.sourceCodeContainerElement.removeEventListener('mouseup',this._onmouseup); - } - this.set('selectedIdentifier',null); - this.set('isHoveredOverIdentifier',false); - this.set('hasSelectedExpression',false); - this.set('showDeclarations',true); - }, - didReceiveAttrs() { - this.set('filteredDeclarations',this.get('declarations')); - }, - didInsertElement() { - this._super(...arguments); - const sourceCodeContainerElement = this.element.querySelector('.source-code-container'); - sourceCodeContainerElement.innerHTML = this.get('html'); - this.sourceCodeContainerElement = sourceCodeContainerElement; - - // Add links to Haskell language extensions docs - const lines = this.sourceCodeContainerElement.querySelectorAll("tr > td:nth-child(2)"); - const lineCount = lines.length; - let i = 0; - while(i < lineCount) { - const line = lines.item(i); - const lineText = line.textContent; - if(lineText) { - // A file-header pragma must precede the module keyword in the file. - if(lineText.indexOf("module ") === 0) { - break; - } else { - line.innerHTML = addLinksToLanguageExtensionsDocs(lineText); - } - } - i = i + 1; - } - - this.element.parentNode.scrollTop = 0; - const declarations = this.element.querySelector('.declarations-content'); - this.set('query',''); - if(declarations) { - declarations.scrollTop = 0; - } - Ember.run.next(this,() => { - initializeIdentifiers(sourceCodeContainerElement,this); - initializeLineSelection(sourceCodeContainerElement,this); - initializeExpressionInfo(sourceCodeContainerElement,this); - }); - }, - willDestroyElement() { - this.cleanup(); - }, - actions : { - goToLine(lineNumber) { - window.location.hash = "L"+lineNumber; - }, - toggleShowDeclarations() { - this.toggleProperty('showDeclarations'); - } - } -}); diff --git a/javascript/app/components/identifier-info.js b/javascript/app/components/identifier-info.js deleted file mode 100644 index 79c35c6..0000000 --- a/javascript/app/components/identifier-info.js +++ /dev/null @@ -1,73 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; - -export default Ember.Component.extend({ - store : Ember.inject.service('store'), - downloadedDocumentation : null, - didInsertElement () { - const onmouseup = (event) => { - if(event.target.dataset.location) { - let location; - try { - location = JSON.parse(event.target.dataset.location); - } catch (e) { - console.log(e); - } - if(location) { - goToDefinition(this.get('store'),location,event.which,this.get('currentLineNumber')); - } - } - }; - this.element.addEventListener('mouseup',onmouseup); - this._onmouseup = onmouseup; - }, - willDestroyElement : function () { - if(this._onmouseup) { - this.element.removeEventListener('mouseup',this._onmouseup); - } - }, - //Naughty record selectors : - //https://github.com/ghc/ghc/blob/ced2cb5e8fbf4493488d1c336da7b00d174923ce/compiler/typecheck/TcTyDecls.hs#L940-L961 - isNaughtyRecSel : Ember.computed('identifierInfo',function () { - const idInfo = this.get('identifierInfo'); - return idInfo ? (idInfo.details === "RecSelIdNaughty") : false; - }), - isExternalIdentifier : Ember.computed('identifierInfo',function () { - const idInfo = this.get('identifierInfo'); - return idInfo ? (idInfo.sort === "External") : false; - }), - identifierObserver : Ember.observer('identifierInfo',function () { - this.set("downloadedDocumentation",""); - const idInfo = this.get('identifierInfo'); - if(idInfo) { - const locationInfo = idInfo.locationInfo; - if(locationInfo.tag === "ApproximateLocation") { - const packageId = locationInfo.packageId.name + "-" + locationInfo.packageId.version; - const currentIdentifier = idInfo; - - this.get('store').loadDefinitionSite(packageId, - locationInfo.moduleName, - locationInfo.componentId, - locationInfo.entity, - locationInfo.name) - .then((definitionSite) => { - Ember.run.next(this,() => { - if(currentIdentifier === this.get('identifierInfo')) { - this.set('downloadedDocumentation',definitionSite.documentation); - }}) - }).catch(() => { - this.get('store').loadHoogleDocs(packageId, - locationInfo.moduleName, - locationInfo.entity, - locationInfo.name) - .then((hoogleDocs) => { - Ember.run.next(this,() => { - if(currentIdentifier === this.get('identifierInfo')) { - this.set('downloadedDocumentation',hoogleDocs); - }}); - }); - }); - } - } - }) -}); diff --git a/javascript/app/components/identifier-name.js b/javascript/app/components/identifier-name.js deleted file mode 100644 index 4b01b03..0000000 --- a/javascript/app/components/identifier-name.js +++ /dev/null @@ -1,61 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; - -export default Ember.Component.extend({ - store : Ember.inject.service('store'), - name : Ember.computed('identifierElement',function() { - const element = this.get('identifierElement'); - if(element) { - return element.innerText; - } - }), - style : Ember.computed('identifierElement',function() { - const element = this.get('identifierElement'); - if(element) { - return new Ember.String.htmlSafe("color:"+element.style.color); - } - }), - locationInfo : Ember.computed('identifierInfo','identifierOccurrence',function() { - if(this.get('identifierOccurrence.sort.tag') === "ModuleId") { - return this.get('identifierOccurrence.sort.contents'); - } else { - return this.get('identifierInfo.locationInfo'); - } - }), - location : Ember.computed('locationInfo',function() { - const loc = this.get('locationInfo'); - if(loc) { - if(loc.tag === "ExactLocation") { - return loc.modulePath; - } else if(loc.tag === "ApproximateLocation") { - if(loc.entity === "Mod") { - return loc.packageId.name + "-" + loc.packageId.version; - } else { - return loc.packageId.name + "-" + loc.packageId.version + " " + loc.moduleName; - } - } else { - return loc.contents; - } - } else { - return ""; - } - }), - isExternalIdentifier : Ember.computed('identifierInfo',function () { - return (this.get('identifierInfo.sort') === "External"); - }), - actions : { - goToDefinition (event) { - goToDefinition(this.get('store'), - this.get('locationInfo'), - event.which, - this.get('currentLineNumber')); - return false; - }, - findReferences (identifierInfo,currentPackageId) { - this.get('findReferences')(currentPackageId, - identifierInfo.externalId, - identifierInfo.demangledOccName, - identifierInfo.locationInfo); - } - } -}); diff --git a/javascript/app/components/infinite-list.js b/javascript/app/components/infinite-list.js deleted file mode 100644 index 02e1943..0000000 --- a/javascript/app/components/infinite-list.js +++ /dev/null @@ -1,50 +0,0 @@ -import Component from '@ember/component'; -import { run } from '@ember/runloop'; -import { observer } from '@ember/object'; - -let pageNumber; -let updating = false; - -function initialize(component) { - component.set('renderedElements',component.get('elements').slice(0,component.get('perPage'))); - pageNumber = 1; -} - -export default Component.extend({ - renderedElements : [], - init() { - this._super(...arguments); - initialize(this); - }, - elementsObserver : observer('elements',function() { - initialize(this); - const containerElement = document.getElementById(this.get('containerElementId')); - if(containerElement) { - containerElement.scrollTop = 0; - } - }), - didInsertElement() { - const containerElement = document.getElementById(this.get('containerElementId')); - if(containerElement) { - const component = this; - containerElement.onscroll = function() { - const perPage = component.get('perPage'); - const elements = component.get('elements'); - - if(!updating && - (pageNumber * perPage < elements.length) && - (containerElement.scrollTop + containerElement.offsetHeight - > component.element.offsetHeight - 100)) { - - updating = true; - run.next(component,() => { - const newElements = elements.slice(pageNumber * perPage,(pageNumber + 1) * perPage); - component.get('renderedElements').pushObjects(newElements); - pageNumber ++; - updating = false; - }); - } - } - } - } -}); diff --git a/javascript/app/components/info-window.js b/javascript/app/components/info-window.js deleted file mode 100644 index da669f1..0000000 --- a/javascript/app/components/info-window.js +++ /dev/null @@ -1,144 +0,0 @@ -import Ember from 'ember'; - -let resizing = false; -let dragging = false; - -function updatePosition(component) { - const targetElement = component.get('targetElement'); - if(targetElement) { - const infoWindowHeight = component.element.offsetHeight; - const targetElementHeight = targetElement.offsetHeight; - - const parent = targetElement.parentNode;//<td> element - const containerElement = document.querySelector("#" + component.get('containerElementId')); - - //getBoundingClientRect() returns the smallest rectangle which contains - //the entire element, with read-only left, top, right, bottom, x, y, width, - //and height properties describing the overall border-box in pixels. Properties - //other than width and height are relative to the top-left of the *viewport*. - const targetTopViewport = targetElement.getBoundingClientRect().top; - - let containerTopViewport; - if (containerElement) { - containerTopViewport = containerElement.getBoundingClientRect().top; - } else { - containerTopViewport = 0; - } - - let infoWindowTop; - if(targetTopViewport < infoWindowHeight + containerTopViewport) { - //offsetTop is the number of pixels from the top of the closest relatively - //positioned parent element. - infoWindowTop = targetElement.offsetTop + parent.offsetTop - + targetElementHeight + 10 + "px"; - } else { - infoWindowTop = targetElement.offsetTop + parent.offsetTop - - infoWindowHeight + "px"; - } - - const infoWindowLeft = targetElement.offsetLeft + parent.offsetLeft + "px"; - - component.$().css({ - top:infoWindowTop, - left:infoWindowLeft - }); - } else { - component.set('isPinned',false); - } -} - -export default Ember.Component.extend({ - classNames : ["info-window-container"], - attributeBindings: ['hidden'], - isPinned : false, - isFocused: false, - didInsertElement () { - const component = this; - - const $headerElement = Ember.$(component.element.querySelector(".info-window-header")); - const $contentElement = Ember.$(component.element.querySelector(".info-window-content")); - const $infoWindowElement = Ember.$(component.element.querySelector(".info-window")); - const $infoWindowContainerElement = Ember.$(component.element); - - this.$headerElement = $headerElement; - this.$contentElement = $contentElement; - - this.$().resizable({ - handles: "n,w", - minHeight: 80, - minWidth: 400, - start: function() { - resizing = true; - }, - stop: function() { - resizing = false; - }, - resize : function() { - const containerHeight = $infoWindowContainerElement.height(); - $infoWindowElement.css({ - "height": containerHeight + 2 + "px" - }); - $contentElement.css({ - "max-height":(containerHeight - $headerElement.outerHeight(true)) + "px" - }); - } - }); - this.$().draggable({ - containment:"#" + this.get('containerElementId'), - handle: $headerElement, - start: function() { - dragging = true; - }, - stop: function() { - dragging = false; - } - }); - }, - mouseEnter () { - if(!this.get('hasSelectedExpression')) { - this.set('isFocused',true); - } - }, - mouseLeave (event) { - //Workaround for a bug in Chrome - const element = document.elementFromPoint(event.clientX,event.clientY); - if(element && element.classList.contains('link')) { - return; - } - if(!resizing - && !dragging - && !this.get('isPinned') - && !this.get('hasSelectedExpression')) { - this.set('isFocused',false); - } - }, - hidden : Ember.computed('isHoveredOverIdentifier', - 'isFocused', - 'hasSelectedExpression', - 'isPinned', function() { - if (this.$contentElement) { - this.$contentElement.scrollTop(0); - } - if (this.get('isPinned') - || this.get('isFocused') - || this.get('isHoveredOverIdentifier') - || this.get('hasSelectedExpression')) { - return false; - } else { - return true; - } - }), - didUpdate() { - updatePosition(this); - }, - actions : { - close() { - this.set('isPinned',false); - this.set('isFocused',false); - this.set('hasSelectedExpression',false); - }, - pin() { - this.toggleProperty('isPinned'); - } - } -}); diff --git a/javascript/app/components/input-with-autocomplete.js b/javascript/app/components/input-with-autocomplete.js deleted file mode 100644 index 5960c46..0000000 --- a/javascript/app/components/input-with-autocomplete.js +++ /dev/null @@ -1,136 +0,0 @@ -import Ember from 'ember'; -export default Ember.Component.extend({ - store : Ember.inject.service('store'), - highlightedItemIndex: -1, - items : [], - query: null, - didInsertElement() { - const $input = Ember.$(this.element).find(".search-input"); - const $autocompleteContainer = Ember.$(this.element).find(".autocomplete-container"); - this.$input = $input; - this.$autocompleteContainer = $autocompleteContainer; - const width = $input.width() + 300; - $autocompleteContainer.css({ - "width" : width+"px", - "top" : $input.outerHeight() - }); - $input.keyup((e) => { - if(e.which === 13) { - this.onEnter(); - } else if(e.which === 27) { - this.onEsc(); - } else if(e.which === 40) { - this.onDown(); - } else if(e.which === 38) { - this.onUp(); - } - }); - $input.focusin(() => { - this.showAutocompleteList(); - }); - $input.focusout(() => { - //Timeout is needed to make sure that click event fires - Ember.run.later((() => { - this.hideAutocompleteList(); - }), 100); - }); - }, - willDestroyElement() { - this._super(...arguments); - this.$input.off('keyup'); - this.$input.off('focusin'); - this.$input.off('focusout'); - }, - onEnter() { - if(this.get('highlightedItemIndex') !== -1) { - const item = this.get('items')[this.get('highlightedItemIndex')]; - if(item) { - this.hideAutocompleteList(); - this.get('selectItem')(item); - } - } else { - this.hideAutocompleteList(); - this.get('onSubmit')(this.get('query')); - } - }, - onEsc() { - this.hideAutocompleteList(); - }, - onDown() { - this.showAutocompleteList(); - const index = this.get('highlightedItemIndex'); - const items = this.get('items'); - const itemsCount = items.length; - if(itemsCount > 0) { - if(index !== -1) { - if(index === itemsCount - 1) { - this.set('highlightedItemIndex',0); - } else { - this.set('highlightedItemIndex',index+1); - } - } else { - this.set('highlightedItemIndex',0); - } - } - }, - onUp() { - this.showAutocompleteList(); - const index = this.get('highlightedItemIndex'); - const items = this.get('items'); - const itemsCount = items.length; - if(itemsCount > 0) { - if(index !== -1) { - if(index === 0) { - this.set('highlightedItemIndex',itemsCount - 1); - } else { - this.set('highlightedItemIndex',index - 1); - } - } else { - this.set('highlightedItemIndex',itemsCount - 1); - } - } - }, - hideAutocompleteList() { - this.set('highlightedItemIndex',-1); - this.$autocompleteContainer.css({ - "display":"none", - }); - }, - showAutocompleteList() { - if(this.get('query') !== "") { - this.$autocompleteContainer.css({ - "display":"block" - }); - } - }, - searchUrlObserver : Ember.observer('createSearchUrlFunction',function() { - this.notifyPropertyChange('query'); - }), - queryObserver : Ember.observer("query",function() { - if(this.get('query')) { - const perPage = this.get('maxItems') ? this.get('maxItems') : 10; - const url = this.get('createSearchUrlFunction')(this.get('query')) + "?per_page=" + perPage; - Ember.run.debounce(this, () => { - this.get('store').loadFromUrlPaginated(url).then((result) => { - Ember.run.next(() => { - this.set('items',result.items); - }); - }); - }, 400); - this.showAutocompleteList(); - } else { - this.hideAutocompleteList(); - this.set('items',[]); - } - }), - actions : { - onSubmit() { - this.hideAutocompleteList(); - this.get('onSubmit')(this.get('query')); - }, - goToDefinition (item) { - this.hideAutocompleteList(); - this.get('selectItem')(item); - } - } -}); diff --git a/javascript/app/components/instance-info.js b/javascript/app/components/instance-info.js deleted file mode 100644 index 339d415..0000000 --- a/javascript/app/components/instance-info.js +++ /dev/null @@ -1,21 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; - -export default Ember.Component.extend({ - store : Ember.inject.service('store'), - style : Ember.computed('nestedLevel',function() { - return new Ember.String.htmlSafe("margin-left :" + this.get('nestedLevel') * 10 + "px"); - }), - nextNestedLevel : Ember.computed('nestedLevel',function () { - return this.get('nestedLevel') + 1; - }), - actions : { - goToDefinition (event) { - goToDefinition(this.get('store'), - this.get('instance.location'), - event.which, - this.get('currentLineNumber')); - return false; - } - } -}); diff --git a/javascript/app/components/paginated-list.js b/javascript/app/components/paginated-list.js deleted file mode 100644 index d4b6609..0000000 --- a/javascript/app/components/paginated-list.js +++ /dev/null @@ -1,48 +0,0 @@ -import Ember from 'ember'; -function loadItems(store,component,url) { - store.loadFromUrlPaginated(url).then((result) => { - Ember.run.next(() => { - component.set('total',result.total); - component.set('items',result.items); - component.set('first',result.linkHeader.first); - component.set('next',result.linkHeader.next); - component.set('prev',result.linkHeader.prev); - component.set('last',result.linkHeader.last); - - const pageMatch = url.match(/(&|\?)page=(\d+)/); - const perPageMatch = url.match(/(&|\?)per_page=(\d+)/); - - const page = pageMatch ? pageMatch[2] : 1; - const perPage = perPageMatch ? perPageMatch[2] : 20; - - if(result.linkHeader.next || result.linkHeader.prev) { - component.set('firstItemOnPage',(page - 1) * perPage + 1); - if(!result.linkHeader.last) { - component.set('lastItemOnPage',result.total); - } else { - component.set('lastItemOnPage',page * perPage); - } - } - }); - }); -} - -export default Ember.Component.extend({ - store : Ember.inject.service('store'), - init() { - this._super(...arguments); - if(this.get('url')) { - loadItems(this.get('store'),this,this.get('url')); - } - }, - urlObserver : Ember.observer('url',function () { - loadItems(this.get('store'),this,this.get('url')); - this.element.querySelector(".paginated-list-content").scrollTop = 0; - }), - actions : { - update(url) { - this.element.querySelector(".paginated-list-content").scrollTop = 0; - loadItems(this.get('store'),this,url); - } - } -}); diff --git a/javascript/app/components/resizable-panel.js b/javascript/app/components/resizable-panel.js deleted file mode 100644 index fe51ade..0000000 --- a/javascript/app/components/resizable-panel.js +++ /dev/null @@ -1,76 +0,0 @@ -import Ember from 'ember'; - -function hide (component,byUser) { - component.$alsoResizeElement.css({left: 0}); - component.$().css({width:0}); - component.set('hidden',true); - component.$(".show-left-panel-button").show(); - if(byUser) { - component.set('hiddenByUser',true); - } -} - -function show (component,byUser) { - component.$alsoResizeElement.css({left: 300}); - component.$().css({width:300}); - component.set('hidden',false); - component.$(".show-left-panel-button").hide(); - if(byUser) { - component.set('hiddenByUser',false); - } -} - -export default Ember.Component.extend({ - hidden:false, - hiddenByUser:false, - didInsertElement : function () { - this._super(...arguments); - Ember.run.next(this,() => { - const onresize = () => { - if(!this.get('hiddenByUser')) { - const width = window.innerWidth; - if(!this.get('hidden') && width < 700) { - hide(this,false); - } else if(this.get('hidden') && width > 700) { - show(this,false); - } - } - }; - this._onresize = onresize; - window.addEventListener('resize', onresize); - const $alsoResizeElement = Ember.$(this.get('alsoResizeElementId')); - Ember.$(this.element).resizable({ - maxWidth: 800, - minWidth: 200, - handles: 'e', - resize: (event,ui) => { - Ember.run.next(this,() => { - $alsoResizeElement.css({left: ui.size.width}); - }); - } - }); - this.$alsoResizeElement = $alsoResizeElement; - if(window.innerWidth < 700) { - this.set('hidden',true); - hide(this,false); - } - }); - }, - hideButtonLabel : Ember.computed('hidden',function() { - return this.get('hidden') ? ">" : "<"; - }), - willDestroyElement() { - if(this._onresize) { - window.removeEventListener('resize',this._onresize); - } - }, - actions : { - hide() { - if(this.get('hidden')) { - show(this,true); - } else { - hide(this,true); - } - } - } -}); diff --git a/javascript/app/components/text-file.js b/javascript/app/components/text-file.js deleted file mode 100644 index 2239571..0000000 --- a/javascript/app/components/text-file.js +++ /dev/null @@ -1,67 +0,0 @@ -/* global showdown */ -import Ember from 'ember'; -import {initializeLineSelection} from '../utils/line-selection'; - -function escapeHtml(text) { - return text.replace(/[\"&<>]/g, function (a) { - return { '"': '"', '&': '&', '<': '<', '>': '>' }[a]; - }); -} - -function addLineNumbers (text) { - const start = "<table class='source-code'><tbody>"; - const end = "</tbody></table>"; - let lineNumber = 0; - const lines = text.split("\n").map((line) => { - lineNumber ++; - const lineNumberHtml = "<td id='LN"+lineNumber+"' class='line-number'>"+lineNumber+"</td>"; - const lineContentHtml = "<td id='LC"+lineNumber+"' class='line-content'>"+escapeHtml(line)+"</td>"; - return "<tr>"+ lineNumberHtml + lineContentHtml + "</tr>"; - }).join(""); - return start + lines + end; -} - -const markdownExtensions = ["markdown", "mdown", "mkdn", "mkd", "md"]; - -export default Ember.Component.extend({ - isMarkdown : Ember.computed('path',function() { - const maybeExtension = this.get('path').split('.').pop(); - return markdownExtensions.any((extension) => (maybeExtension === extension)); - }), - html : Ember.computed('path','isMarkdown',function() { - if(this.get('isMarkdown')) { - return this.markdownConverter.makeHtml(this.get('text')); - } else { - return addLineNumbers(this.get('text')); - } - }), - init() { - this._super(...arguments); - this.markdownConverter = new showdown.Converter(); - }, - didInsertElement() { - const sourceCodeContainerElement = this.element.querySelector('.source-code-container'); - initializeLineSelection(sourceCodeContainerElement,this); - this.element.parentNode.scrollTop = 0; - }, - willDestroyElement : function () { - this.cleanup(); - }, - cleanup() { - if(this._onhashchange) { - window.removeEventListener('hashchange',this._onhashchange); - } - if(this._onkeydown) { - document.removeEventListener('keydown',this._onkeydown); - } - if(this._onkeyup) { - document.removeEventListener('keyup',this._onkeyup); - } - }, - pathObserver : Ember.observer('path',function() { - Ember.run.next(this,() => { - this.cleanup(); - this.didInsertElement(); - }); - }) -}); diff --git a/javascript/app/components/type-component.js b/javascript/app/components/type-component.js deleted file mode 100644 index c19facc..0000000 --- a/javascript/app/components/type-component.js +++ /dev/null @@ -1,29 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; - -export default Ember.Component.extend({ - store : Ember.inject.service('store'), - tagName : 'span', - classNames: ["type-component"], - contextMenu() {//right mouse button click to show kind of a type constructor or type variable - if(this.get('identifiers') && this.get('internalId')) { - this.set('expanded',true); - } - return false; - }, - linkClass : Ember.computed('identifierInfo',function() { - return this.get('identifierInfo') ? "link" : ""; - }), - identifierInfo : Ember.computed('internalId',function() { - return this.get('internalId') ? this.get('identifiers')[this.get('internalId')] : null; - }), - actions : { - onmouseup (event) { - if(this.get('identifierInfo') && (event.which !== 3 )) { - const locationInfo = this.get('identifierInfo').locationInfo; - goToDefinition(this.get('store'),locationInfo,event.which,this.get('currentLineNumber')); - return false; - } - } - } -}); diff --git a/javascript/app/components/type-signature-text.js b/javascript/app/components/type-signature-text.js deleted file mode 100644 index ce33607..0000000 --- a/javascript/app/components/type-signature-text.js +++ /dev/null @@ -1,4 +0,0 @@ -import Ember from 'ember'; -export default Ember.Component.extend({ - tagName : "span" -}); diff --git a/javascript/app/components/type-signature.js b/javascript/app/components/type-signature.js deleted file mode 100644 index 8e7545f..0000000 --- a/javascript/app/components/type-signature.js +++ /dev/null @@ -1,23 +0,0 @@ -import Ember from 'ember'; -export default Ember.Component.extend({ - tagName : "span", - expandTypeSynonyms: false, - expandTypeSynonymsLabel : Ember.computed('expandTypeSynonyms',function() { - return this.get('expandTypeSynonyms') ? "Show type synonyms" : "Expand type synonyms"; - }), - components : Ember.computed('type','expandTypeSynonyms',function() { - if(this.get('expandTypeSynonyms') && this.get('type.componentsExpanded')) { - return this.get('type.componentsExpanded'); - } else { - return this.get('type.components'); - } - }), - typeObserver : Ember.observer('type',function() { - this.set('expandTypeSynonyms',false); - }), - actions : { - toggleExpandTypeSynonyms () { - this.toggleProperty('expandTypeSynonyms'); - } - } -}); diff --git a/javascript/app/controllers/application.js b/javascript/app/controllers/application.js deleted file mode 100644 index 2936011..0000000 --- a/javascript/app/controllers/application.js +++ /dev/null @@ -1,21 +0,0 @@ -import {updateColorThemeCss,themes} from '../utils/color-themes'; -import Ember from 'ember'; - -export default Ember.Controller.extend({ - settings : Ember.inject.service('settings'), - themes: Object.values(themes), - init() { - this._super(...arguments); - updateColorThemeCss(this.get('settings').get('colorTheme')); - }, - currentTheme: Ember.computed('settings',function() { - return this.get('settings.colorTheme.id'); - }), - actions : { - themeChanged (themeId) { - const theme = themes[themeId]; - this.get('settings').set('colorTheme',theme); - updateColorThemeCss(theme); - } - } -}); diff --git a/javascript/app/controllers/package.js b/javascript/app/controllers/package.js deleted file mode 100644 index d986835..0000000 --- a/javascript/app/controllers/package.js +++ /dev/null @@ -1,39 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; -import {urls} from '../utils/api-urls'; - -export default Ember.Controller.extend({ - store : Ember.inject.service('store'), - currentFile : null, - loadItemsFunction : null, - query : null, - searchMode : "currentPackage", - createSearchUrlFunction : Ember.computed("searchMode","model",function() { - const packageId = this.get('model.id'); - if(this.get('searchMode') === "currentPackage") { - return (query) => urls.identifierSearchUrl(packageId,query); - } else { - return (query) => urls.globalIdentifiersUrl(query); - } - }), - actions : { - searchIdentifier (query) { - if(query) { - this.set('currentFile',null); - document.title = this.get('model.id'); - if(this.get('searchMode') === "currentPackage") { - this.transitionToRoute('package.search',query); - } else { - this.transitionToRoute('search',query); - } - } - }, - showIdentifier (identifierInfo) { - goToDefinition(this.get('store'), - identifierInfo.locationInfo, - 1,//left mouse button - null); - return false; - } - } -}); diff --git a/javascript/app/controllers/package/index.js b/javascript/app/controllers/package/index.js deleted file mode 100644 index dabb196..0000000 --- a/javascript/app/controllers/package/index.js +++ /dev/null @@ -1,14 +0,0 @@ -import Ember from 'ember'; -export default Ember.Controller.extend({ - modulesFiltered : Ember.computed('model','query',function () { - const query = this.get('query'); - const modules = Object.keys(this.get('model.modules')).sort(); - if(query) { - const regExp = new RegExp(query,"i"); - return modules.filter((p) => p.search(regExp) != -1); - } else { - return modules; - } - }) -}); - diff --git a/javascript/app/controllers/package/search.js b/javascript/app/controllers/package/search.js deleted file mode 100644 index 159b79a..0000000 --- a/javascript/app/controllers/package/search.js +++ /dev/null @@ -1,15 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../../utils/go-to-definition'; - -export default Ember.Controller.extend({ - store : Ember.inject.service('store'), - actions : { - goToDefinition (locationInfo,event) { - goToDefinition(this.get('store'), - locationInfo, - event.which, - null); - return false; - } - } -}); diff --git a/javascript/app/controllers/package/show/file.js b/javascript/app/controllers/package/show/file.js deleted file mode 100644 index b046bc2..0000000 --- a/javascript/app/controllers/package/show/file.js +++ /dev/null @@ -1,9 +0,0 @@ -import Ember from 'ember'; -export default Ember.Controller.extend({ - settings : Ember.inject.service('settings'), - actions : { - findReferences(packageId,externalId,occName,locationInfo) { - this.send('updateReferences',packageId,externalId,occName,locationInfo); - } - } -}); diff --git a/javascript/app/controllers/packages.js b/javascript/app/controllers/packages.js deleted file mode 100644 index 5c34eb2..0000000 --- a/javascript/app/controllers/packages.js +++ /dev/null @@ -1,30 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; - -export default Ember.Controller.extend({ - store : Ember.inject.service('store'), - queryObserver : Ember.observer("query",function() { - Ember.run.debounce(this, () => { - const regExp = new RegExp(this.get('query'),"i"); - const packages = this.get('model').filter((p) => p.name.search(regExp) != -1); - Ember.run.next(() => { - this.set('packages',packages); - }); - }, 300); - }), - actions: { - searchIdentifier (query) { - if(query) { - document.title = "Haskell code explorer"; - this.transitionToRoute('search',query); - } - }, - showIdentifier (identifierInfo) { - goToDefinition(this.get('store'), - identifierInfo.locationInfo, - 1,//left mouse button - null); - return false; - } - } -}); diff --git a/javascript/app/controllers/search.js b/javascript/app/controllers/search.js deleted file mode 100644 index 7ba7d92..0000000 --- a/javascript/app/controllers/search.js +++ /dev/null @@ -1,28 +0,0 @@ -import Ember from 'ember'; -import {goToDefinition} from '../utils/go-to-definition'; - -export default Ember.Controller.extend({ - store : Ember.inject.service('store'), - actions : { - goToDefinition (locationInfo,event) { - goToDefinition(this.get('store'), - locationInfo, - event.which, - null); - return false; - }, - searchIdentifier (query) { - if(query) { - document.title = "Haskell code explorer"; - this.transitionToRoute('search',query); - } - }, - showIdentifier (identifierInfo) { - goToDefinition(this.get('store'), - identifierInfo.locationInfo, - 1,//left mouse button - null); - return false; - } - } -}); diff --git a/javascript/app/helpers/.gitkeep b/javascript/app/helpers/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/javascript/app/helpers/.gitkeep +++ /dev/null diff --git a/javascript/app/index.html b/javascript/app/index.html deleted file mode 100644 index 2be0d64..0000000 --- a/javascript/app/index.html +++ /dev/null @@ -1,22 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="utf-8"> - <meta http-equiv="X-UA-Compatible" content="IE=edge"> - <title>Haskell Code Explorer</title> - <meta name="description" content="Haskell Code Explorer"> - <meta name="google" content="notranslate"> - <meta name="viewport" content="width=device-width, initial-scale=0.6"> - {{content-for 'head'}} - <link rel="stylesheet" href="/assets/vendor.css"> - <link rel="stylesheet" href="/assets/haskell-code-explorer.css"> - {{content-for 'head-footer'}} - </head> - <body> - {{content-for 'body'}} - <script pace-src="/assets/vendor.js"></script> - <script pace-src="/assets/haskell-code-explorer.js"></script> - {{content-for 'body-footer'}} - <noscript>You need to enable JavaScript to run this app.</noscript> - </body> -</html> diff --git a/javascript/app/router.js b/javascript/app/router.js deleted file mode 100644 index 7b8df63..0000000 --- a/javascript/app/router.js +++ /dev/null @@ -1,21 +0,0 @@ -import Ember from 'ember'; -import config from './config/environment'; - -var Router = Ember.Router.extend({ - location: config.locationType -}); - -Router.map(function() { - this.route('packages',{path:''}); - this.route('search',{path:'/search/:query'}); - this.route('package', {path:'/package/:packageId'}, function() { - this.route('show',function() { - this.route('file', {path:'*filePath'}, function() { - }); - }); - this.route('search',{path:'/search/:query'}); - }); - this.route('bad-url', { path: '/*badurl' }); -}); - -export default Router; diff --git a/javascript/app/routes/application.js b/javascript/app/routes/application.js deleted file mode 100644 index 279bd32..0000000 --- a/javascript/app/routes/application.js +++ /dev/null @@ -1,3 +0,0 @@ -import Ember from 'ember'; -export default Ember.Route.extend({ -}); diff --git a/javascript/app/routes/package.js b/javascript/app/routes/package.js deleted file mode 100644 index 6abc603..0000000 --- a/javascript/app/routes/package.js +++ /dev/null @@ -1,49 +0,0 @@ -import Ember from 'ember'; -import {urls} from '../utils/api-urls'; - -export default Ember.Route.extend({ - store : Ember.inject.service('store'), - model (params) { - return this.get('store').loadPackage(params.packageId) - .catch((e) => {console.log(e);this.transitionTo("/package-not-found");}); - }, - setupController(controller, model) { - this._super(controller, model); - controller.set('bottomPanelVisible',false); - }, - actions : { - openFile (filePath) { - this.transitionTo('package.show.file',filePath); - }, - fileOpened (filePath) { - if(this.get('controller')) { - this.set('controller.currentFile',filePath); - } - }, - updateReferences(packageId,externalId,occName,locationInfo,noScrollIntoView) { - this.get('store').loadGlobalReferences(externalId).then((refs) => { - Ember.run.next(this,() => { - this.set('controller.globalReferences',refs); - if(!noScrollIntoView) { - Ember.run.schedule('afterRender', () => { - const element = document.getElementById('references-package-'+packageId); - if(element) { - element.scrollIntoView(); - } - }); - } - }); - }); - this.set('controller.packageId',packageId); - this.set('controller.externalId',externalId); - this.set('controller.occName',occName); - this.set('controller.locationInfo',locationInfo); - this.set('controller.bottomPanelVisible',true); - this.set('controller.referencesUrl',urls.referencesUrl(packageId,externalId)+"?per_page=50"); - }, - didTransition() { - document.title = this.currentModel.id; - return true; - } - } -}); diff --git a/javascript/app/routes/package/index.js b/javascript/app/routes/package/index.js deleted file mode 100644 index 15ff8a5..0000000 --- a/javascript/app/routes/package/index.js +++ /dev/null @@ -1,7 +0,0 @@ -import Ember from 'ember'; - -export default Ember.Route.extend({ - afterModel : function (model,transition) { - transition.send("fileOpened",null); - } -}); diff --git a/javascript/app/routes/package/search.js b/javascript/app/routes/package/search.js deleted file mode 100644 index 058f9ec..0000000 --- a/javascript/app/routes/package/search.js +++ /dev/null @@ -1,36 +0,0 @@ -import Ember from 'ember'; -import {urls} from '../../utils/api-urls'; -import {goToDefinition} from '../../utils/go-to-definition'; - -export default Ember.Route.extend({ - store : Ember.inject.service('store'), - model (params) { - return { - query: params.query, - url: urls.identifierSearchUrl(this.modelFor('package').id,params.query)+"?per_page=20" - }; - }, - afterModel () { - const onmouseup = (event) => { - // This makes links in documentation clickable - if(event.target.dataset.location) { - let location; - try { - location = JSON.parse(event.target.dataset.location); - } catch (e) { - console.log(e); - } - if(location) { - goToDefinition(this.get('store'),location,event.which); - } - } - }; - this._onmouseup = onmouseup; - document.addEventListener('mouseup',onmouseup); - }, - deactivate() { - if(this._onmouseup) { - document.removeEventListener('mouseup',this._onmouseup); - } - } -}); diff --git a/javascript/app/routes/package/show/file.js b/javascript/app/routes/package/show/file.js deleted file mode 100644 index 568d288..0000000 --- a/javascript/app/routes/package/show/file.js +++ /dev/null @@ -1,27 +0,0 @@ -import Ember from 'ember'; - -export default Ember.Route.extend({ - store : Ember.inject.service(), - model : function (params) { - const packageInfo = this.modelFor('package'); - if(packageInfo.modules[params.filePath]) { - return this.get('store').loadHaskellModule(packageInfo.id,params.filePath) - .catch((e) => {console.log(e);this.transitionTo("/not-found");}); - } else { - return this.get('store').loadFile(packageInfo.id,params.filePath) - .then((result) => { - document.title = packageInfo.id; - return result; - }) - .catch((e) => {console.log(e);this.transitionTo("/not-found");}); - } - }, - afterModel (model) { - document.title = model.id + " - " + this.modelFor('package').id; - }, - actions : { - didTransition : function () { - this.send("fileOpened",this.currentModel.id); - } - } -}); diff --git a/javascript/app/routes/package/show/index.js b/javascript/app/routes/package/show/index.js deleted file mode 100644 index 15ff8a5..0000000 --- a/javascript/app/routes/package/show/index.js +++ /dev/null @@ -1,7 +0,0 @@ -import Ember from 'ember'; - -export default Ember.Route.extend({ - afterModel : function (model,transition) { - transition.send("fileOpened",null); - } -}); diff --git a/javascript/app/routes/packages.js b/javascript/app/routes/packages.js deleted file mode 100644 index 34a454d..0000000 --- a/javascript/app/routes/packages.js +++ /dev/null @@ -1,19 +0,0 @@ -import Ember from 'ember'; -import {urls} from '../utils/api-urls'; -import config from '../config/environment'; - -export default Ember.Route.extend({ - model () { - return Ember.$.getJSON(urls.packagesUrl); - }, - setupController(controller, model) { - this._super(controller, model); - controller.set('packages',model); - controller.set('createSearchUrlFunction',(query) => { - return urls.globalIdentifiersUrl(query); - }); - }, - afterModel () { - document.title = config.APP.title; - } -}); diff --git a/javascript/app/routes/search.js b/javascript/app/routes/search.js deleted file mode 100644 index 3ad8905..0000000 --- a/javascript/app/routes/search.js +++ /dev/null @@ -1,42 +0,0 @@ -import Ember from 'ember'; -import {urls} from '../utils/api-urls'; -import {goToDefinition} from '../utils/go-to-definition'; - -export default Ember.Route.extend({ - store : Ember.inject.service('store'), - model (params) { - return { - query: params.query, - url: urls.globalIdentifiersUrl(params.query)+"?per_page=20" - }; - }, - setupController(controller, model) { - this._super(controller, model); - controller.set('createSearchUrlFunction',(query) => { - return urls.globalIdentifiersUrl(query); - }); - }, - afterModel () { - const onmouseup = (event) => { - // This makes links in documentation clickable - if(event.target.dataset.location) { - let location; - try { - location = JSON.parse(event.target.dataset.location); - } catch (e) { - console.log(e); - } - if(location) { - goToDefinition(this.get('store'),location,event.which); - } - } - }; - this._onmouseup = onmouseup; - document.addEventListener('mouseup',onmouseup); - }, - deactivate() { - if(this._onmouseup) { - document.removeEventListener('mouseup',this._onmouseup); - } - } -}); diff --git a/javascript/app/services/settings.js b/javascript/app/services/settings.js deleted file mode 100644 index 8080890..0000000 --- a/javascript/app/services/settings.js +++ /dev/null @@ -1,21 +0,0 @@ -import Ember from 'ember'; -import {themes} from '../utils/color-themes'; - -export default Ember.Service.extend({ - init() { - this._super(...arguments); - if(localStorage) { - const colorThemeId = localStorage.getItem("colorThemeId"); - const colorTheme = themes[colorThemeId]; - if(colorThemeId) { - this.set('colorTheme',colorTheme); - } - } - }, - colorTheme : themes["darkTheme"], - settingsObserver : Ember.observer("colorTheme",function() { - if(localStorage) { - localStorage.setItem("colorThemeId",this.get('colorTheme').id); - } - }) -}); diff --git a/javascript/app/services/store.js b/javascript/app/services/store.js deleted file mode 100644 index 39a6f74..0000000 --- a/javascript/app/services/store.js +++ /dev/null @@ -1,168 +0,0 @@ -import Ember from 'ember'; -import RSVP from 'rsvp'; -import {urls} from '../utils/api-urls'; - - -//******************************************************************************** -//https://coderwall.com/p/zrlulq/parsing-a-link-header-in-javascript -function unquote(value) { - if (value.charAt(0) == '"' && value.charAt(value.length - 1) == '"') { - return value.substring(1, value.length - 1); - } else { - return value; - } -} - -function parseLinkHeader(header) { - if(!header) {return {}} - var linkexp = /<[^>]*>\s*(\s*;\s*[^\(\)<>@,;:"\/\[\]\?={} \t]+=(([^\(\)<>@,;:"\/\[\]\?={} \t]+)|("[^"]*")))*(,|$)/g; - var paramexp = /[^\(\)<>@,;:"\/\[\]\?={} \t]+=(([^\(\)<>@,;:"\/\[\]\?={} \t]+)|("[^"]*"))/g; - - var matches = header.match(linkexp); - var rels = new Object(); - for (let i = 0; i < matches.length; i++) { - var split = matches[i].split('>'); - var href = split[0].substring(1); - var ps = split[1]; - var link = new Object(); - link.href = href; - var s = ps.match(paramexp); - for (let j = 0; j < s.length; j++) { - var p = s[j]; - var paramsplit = p.split('='); - var name = paramsplit[0]; - link[name] = unquote(paramsplit[1]); - } - - if (link.rel != undefined) { - rels[link.rel] = link; - } - } - return rels; -} -//******************************************************************************** - - -export default Ember.Service.extend({ - init() { - this.packages = {}; - this.files = {}; - this.haskellModules = {}; - this.definitionSites = {}; - this.modulePaths = {}; - this.expressions = {}; - this.references = {}; - this.globalReferences = {}; - this.hoogleDocs = {}; - }, - loadPackage(packageId) { - const packageInfo = this.packages[packageId]; - if(packageInfo) { - return new RSVP.Promise((resolve) => {resolve(packageInfo);}); - } else { - const url = urls.packageInfoUrl(packageId); - return Ember.$.getJSON(url).then((packageInfo) => { - this.packages[packageId] = packageInfo; - return packageInfo; - }); - } - }, - loadFile(packageId,filePath) { - const fileId = packageId + "/" + filePath; - const file = this.files[fileId]; - if(file) { - return new RSVP.Promise((resolve) => {resolve(file);}); - } else { - const url = urls.fileUrl(packageId,filePath); - return Ember.$.get({url:url,dataType:"text"}).then((text) => { - const file = {}; - file.text = text; - file.packageId = packageId; - file.isHaskellModule = false; - file.id = filePath; - this.files[fileId] = file; - return file; - }); - } - }, - loadHaskellModule(packageId,filePath) { - const moduleId = packageId + "/" + filePath ; - const module = this.haskellModules[moduleId]; - if(module) { - return new RSVP.Promise((resolve)=>{resolve(module);}); - } else { - const url = urls.haskellModuleUrl(packageId,filePath); - return Ember.$.getJSON(url).then((module) => { - module.packageId = packageId; - module.isHaskellModule = true; - this.haskellModules[moduleId] = module; - return module; - }); - } - }, - loadDefinitionSite(packageId,moduleName,componentId,entity,name) { - const id = packageId + "/"+ componentId + "/" + moduleName + "/" + entity + "/" + name; - const definitionSite = this.definitionSites[id]; - if(definitionSite) { - return new RSVP.Promise((resolve)=>{resolve(definitionSite);}); - } else { - const url = urls.identifierDefinitionSiteUrl(packageId,moduleName,componentId,entity,name); - return Ember.$.getJSON(url).then((definitionSite) => { - this.definitionSites[id] = definitionSite; - return definitionSite; - }); - } - }, - loadExpressions(packageId,modulePath,lineStart,columnStart,lineEnd,columnEnd) { - const id = packageId + "/" + encodeURIComponent(modulePath) - + "/" + lineStart + "/" + columnStart + "/" + lineEnd + "/" + columnEnd; - const exprs = this.expressions[id]; - if(exprs) { - return new RSVP.Promise((resolve)=>{resolve(exprs);}); - } else { - const url = urls.expressionsUrl(packageId,modulePath,lineStart,columnStart,lineEnd,columnEnd); - return Ember.$.getJSON(url).then((exprs) => { - this.expressions[id] = exprs; - return exprs; - }); - } - }, - loadFromUrlPaginated(url) { - return Ember.$.getJSON(url).then((items,textStatus,jqXHR) => { - const linkHeaderText = jqXHR.getResponseHeader('Link'); - const totalCountHeaderText = jqXHR.getResponseHeader('x-total-count'); - const linkHeader = parseLinkHeader(linkHeaderText); - const total = parseInt(totalCountHeaderText); - return { - items:items, - total:total, - linkHeader:linkHeader - }; - }); - }, - loadGlobalReferences(externalId) { - const globalReferences = this.globalReferences[externalId]; - if(globalReferences) { - return new RSVP.Promise((resolve) => {resolve(globalReferences);}); - } else { - const url = urls.globalReferencesUrl(externalId); - return Ember.$.getJSON(url).then((refs) => { - this.globalReferences[externalId] = refs; - return refs; - }); - } - }, - loadHoogleDocs(packageId,moduleName,entity,name) { - const id = packageId + "/" + moduleName + "/" + entity + "/" + name; - const hoogleDoc = this.hoogleDocs[id]; - if(hoogleDoc) { - return new RSVP.Promise((resolve)=>{resolve(hoogleDoc);}); - } else { - const url = urls.hoogleDocsUrl(packageId,moduleName,entity,name); - return Ember.$.getJSON(url).then((hoogleDoc) => { - this.hoogleDocs[id] = hoogleDoc; - return hoogleDoc; - }); - } - } -}); diff --git a/javascript/app/styles/app.scss b/javascript/app/styles/app.scss deleted file mode 100644 index 68fbe2a..0000000 --- a/javascript/app/styles/app.scss +++ /dev/null @@ -1,589 +0,0 @@ -@import "ember-cli-bootstrap-4/bootstrap"; - -body { - font-size:14px; -} - -a, a:visited, a:focus, a:active, a:hover{ - outline:0 none; -} - -a.selected { - text-decoration:underline; -} - -input:focus{ - outline:none; -} - -p { - margin-top:1rem; -} - -.ember-radio-button { - cursor:pointer; -} - -label { - margin-bottom:0px; -} - -ul { - list-style: none; - padding : 0; -} - -ol { - list-style: none; - padding : 0; -} - -li { - list-style: none; -} - -.documentation { - margin-top:10px; - li { - list-style: disc outside none; - } - ul { - padding-left:15px; - } - ol { - padding-left:15px; - } -} - -.flex-container { - display:flex; - flex-direction:column; - height:100%; - width:100%; -} - -.absolute-container { - position:absolute; - top:0; - bottom:0; - left:0; - right:0; -} - -.header { - flex: none; - padding:5px; - img { - float:left; - } -} - -.header-item { - display:inline-block; - margin-top:5px; - font-size : 1rem; - margin-right: 40px; - white-space: nowrap; - @media screen and (max-width: 700px) { - margin-right: 10px; - margin-left: 10px; - } -} - -.content { - flex: auto; - position:relative; - overflow:auto; -} - -.packages { - flex:auto; - overflow-y:auto; - li { - margin-bottom: 5px; - } - a { - margin-right:5px; - } -} - -.package-content { - flex:auto; - position:relative; -} - -.package-header { - padding:5px; -} - -.package-header-input { - display:inline-block; - margin-right:10px; -} - -.package-modules { - margin-left:10px; -} - -.module-name { - font-size:0.7rem; -} - -.package-search-form { - max-width:500px; - margin-bottom:10px; - margin-top:20px; -} - -.global-identifier-search-form { - max-width:500px; - margin-top:20px; -} - -.package-header-filename { - white-space: nowrap; - margin-left: 35px; -} - -.package-header-package-name { - margin-right:10px; - font-size:17px; -} - -.module-search-input { - max-width:500px; - margin:5px; -} - -ul.modules { - position:absolute; - top:50px; - bottom:0px; - margin:0px; - padding-left:15px; - left:0px; - right:0px; - display:flex; - flex-direction: column; - flex-wrap: wrap; - li { - margin-right: 10px; - } - overflow-x:auto; -} - -.left-panel { - position: absolute; - bottom : 0; - top : 0; - left : 0; - width : 300px; -} - -.show-left-panel-button { - position:absolute; - top:0px; - right:-20px; - z-index:2; - width:20px; - height:20px; - text-align:center; - vertical-align:middle; - a { - text-decoration:none; - } - opacity:0.6; - display:none; -} - -.show-left-panel-button:hover { - opacity:1; - cursor:pointer; -} - -.hide-file-tree { - position: relative; - top: 8px; - left: 3px; -} - -.hide-declarations { - margin:7px; -} - -.right-panel { - position: absolute; - bottom : 0; - top : 0; - right : 0; - left : 300px; - overflow-x: auto; - overflow-y: auto; -} - -.file-tree-container { - overflow-x: hidden; - overflow-y: auto; - position: absolute; - bottom : 0; - top : 0; - left: 0; - right: 0; -} - -.file-container { - position: absolute; - bottom : 0px; - top : 0; - right : 0; - left : 0; - overflow-x: auto; - overflow-y: auto; -} - -.bottom-panel { - display:none; - position: absolute; - bottom : 0; - right : 0; - left : 0; - overflow-x: auto; - overflow-y: auto; - z-index:4; -} - -.bottom-panel-header { - position: absolute; - top: 0; - right : 0; - left : 0; - height: 35px; - padding: 5px; -} - -.bottom-panel-content { - position: absolute; - bottom : 0; - top : 35px; - right : 0; - left : 0; - overflow-x: auto; - overflow-y: auto; -} - -.bottom-panel-header-options { - float:right; -} - -.bottom-panel-header-content { - white-space:nowrap; -} - -.highlighted-identifier { - border-radius: 3px; - box-shadow: 0 0 0 1px #B4B4B4; -} - -.identifier { - cursor:pointer; -} - -td.line-number { - cursor:pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - width: 1%; - min-width: 60px; - text-align: left; - padding-left:10px; - opacity: 0.8; -} - -td.line-number:hover { - opacity : 1; -} - -td.line-content { - padding-left:5px; - -} - -$source-code-font:Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif; - -.source-code { - font-family: $source-code-font; - white-space:pre; - line-height:1.25; - tab-size: 4; -} - -.break-word { - word-wrap:break-word; -} - -code,pre { - font-family: $source-code-font !important; - white-space:pre; - line-height:1.25; - font-size:100%; - color : unset; -} - -.source-code-font { - font-family: $source-code-font; - line-height:1.25; -} - -.source-code-snippet { - padding: 4px; - text-decoration:none !important; - display:block; -} - -.source-code-snippet > b { - border-radius: 3px; - border: 1px solid #B4B4B4; - margin: -1px; -} - -.source-code-snippet:hover { - text-decoration:none; -} - -.source-code-container { - margin : 5px; -} - -.declarations { - position:fixed; - top:150px; - right:15px; - width: 450px; - z-index:1; - div { - margin : 5px; - } -} - -.declarations-header { - opacity:0.9; - height:50px; -} - -.declarations-content { - opacity:0.9; - position:absolute; - top:50px; - left:0px; - right:0px; - max-height:500px; - overflow-y:auto; - overflow-x:hidden; -} - -@media screen and (max-width: 1500px) { - .declarations { - display:none; - } -} - -.info-window-container { - position:absolute; - width:750px; - z-index:10; -} - -.info-window-header { - margin:5px; - width: 100%; - cursor: move; - cursor: grab; - cursor: -moz-grab; - cursor: -webkit-grab; -} - -.info-window-content { - max-height:200px; - overflow-x:auto; - overflow-y:auto; -} - -.info-window-options { - margin-right:10px; - margin-left:10px; - float:right; -} - - -.ui-draggable-dragging .info-window-header { - cursor: grabbing; - cursor: -moz-grabbing; - cursor: -webkit-grabbing; -} - -span.link { - cursor:pointer; - white-space:nowrap; -} - -span.link:hover { - text-decoration:underline; -} - -.ui-resizable-n { - height: 13px !important;; -} - -.ui-resizable-w { - width: 13px !important;; -} - -.type-info { - padding-top: 5px; - padding-bottom: 5px; -} - -.type-component { - display: inline-block; -} - -dd { - margin-left: 1em; -} - -.autocomplete-container { - position:absolute; - z-index:10; - display:none; - left:0px; -} - -ul.autocomplete-items { - li { - cursor:pointer; - max-height: 200px; - overflow: hidden; - } -} - -.autocomplete-item { - padding:5px; -} - -.file-tree-header { - position:absolute; - top:0; - left:0; - right:0; - height:65px; - margin:5px; -} - -.file-tree-content { - position:absolute; - top:70px; - left:0; - right:0; - bottom:0; - overflow-x:auto; - overflow-x:auto; -} - -button { - color:black; -} - -.paginated-list-header { - position:absolute; - top:0px; - left:0px; - right:0px; - height:40px; - padding: 5px; - white-space:nowrap; -} - -.paginated-list-content { - position:absolute; - top:40px; - bottom:0px; - left:0px; - right:0px; - overflow:auto; -} - -.pagination-button { - font-size: 10px; -} - -.search-results-header { - position:absolute; - top:0px; - left:0px; - right:0px; - height:35px; - padding: 5px; - white-space:nowrap; -} - -.search-results-content { - position:absolute; - top:35px; - bottom:0px; - left:0px; - right:0px; -} - -.global-search-results-content { - position:absolute; - top:80px; - bottom:0px; - left:0px; - right:0px; -} - -.search-result { - padding:5px; -} - -.expression { - margin-bottom:15px; -} - -.expressions { - margin:5px; -} - -.file-name { - margin-left:5px; -} - -.identifier-info { - margin:5px; -} - -.identifier-module { - margin-top:10px; -} - -.identifier-menu-item { - margin-right:10px; -} - -.references-packages { - position:absolute; - width:230px; - top:0px; - bottom:0px; - overflow:auto; - padding:5px; -} -.references { - position:absolute; - left:230px; - top:0px; - bottom:0px; - right:0px; -} diff --git a/javascript/app/templates/application.hbs b/javascript/app/templates/application.hbs deleted file mode 100644 index bd64fdb..0000000 --- a/javascript/app/templates/application.hbs +++ /dev/null @@ -1,26 +0,0 @@ -<div class="absolute-container"> - <div class="flex-container"> - <div class="header"> - <img src="/assets/haskell.ico"> - <div class="container"> - <span class="header-item">{{#link-to 'packages'}}Haskell packages{{/link-to}}</span> - <span class="header-item"><a target="_blank" href="https://github.com/alexwl/haskell-code-explorer">About</a></span> - <span class="header-item"> - {{#each themes as |theme|}} - {{#radio-button - value=theme.id - groupValue=currentTheme - changed="themeChanged"}} - <span>{{theme.name}}</span> - {{/radio-button}} - {{/each}} - </span> - </div> - </div> - <div class="content"> - <div class="absolute-container"> - {{outlet}} - </div> - </div> - </div> -</div> diff --git a/javascript/app/templates/bad-url.hbs b/javascript/app/templates/bad-url.hbs deleted file mode 100644 index b7df9c5..0000000 --- a/javascript/app/templates/bad-url.hbs +++ /dev/null @@ -1,6 +0,0 @@ -<div class="container"> - <div style="margin-top:10px"> - <h1>Not found</h1> - <div><a href="/">Main page</a></div> - </div> -</div> diff --git a/javascript/app/templates/components/.gitkeep b/javascript/app/templates/components/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/javascript/app/templates/components/.gitkeep +++ /dev/null diff --git a/javascript/app/templates/components/bottom-panel.hbs b/javascript/app/templates/components/bottom-panel.hbs deleted file mode 100644 index 26b1919..0000000 --- a/javascript/app/templates/components/bottom-panel.hbs +++ /dev/null @@ -1,9 +0,0 @@ -<div class="bottom-panel-header"> - <span class="bottom-panel-header-content">{{yield "header"}}</span> - <span class="bottom-panel-header-options"> - <a href="#" {{action "close"}}>Close</a> - </span> -</div> -<div class="bottom-panel-content"> - {{yield "body"}} -</div> diff --git a/javascript/app/templates/components/expression-info.hbs b/javascript/app/templates/components/expression-info.hbs deleted file mode 100644 index 509fb24..0000000 --- a/javascript/app/templates/components/expression-info.hbs +++ /dev/null @@ -1,8 +0,0 @@ -<div class="expressions"> - {{#each expressions as |expression|}} - <div class="expression"> - <span class="source-code">{{expression.sourceCode}}</span> - <br/>:: {{type-signature type=expression.info.exprType identifiers=identifiers currentLineNumber=currentLineNumber}} - </div> - {{/each}} -</div> diff --git a/javascript/app/templates/components/file-tree.hbs b/javascript/app/templates/components/file-tree.hbs deleted file mode 100644 index 3559efe..0000000 --- a/javascript/app/templates/components/file-tree.hbs +++ /dev/null @@ -1,20 +0,0 @@ -<div class="file-tree-header"> - <div class="input-group"> - {{input class="form-control" value=query placeholder="Filename"}}<a class="hide-file-tree" href="#" {{action "hide"}}>Hide</a> - </div> - <div> - {{#radio-button - value="alphabetical" - groupValue=sortType}} - <span>Sort by name</span> - {{/radio-button}} - {{#radio-button - value="type" - groupValue=sortType}} - <span>Sort by type</span> - {{/radio-button}} - </div> -</div> -<div class="file-tree-content"> - <div class="file-tree"></div> -</div> diff --git a/javascript/app/templates/components/haskell-module.hbs b/javascript/app/templates/components/haskell-module.hbs deleted file mode 100644 index 6f1d0f5..0000000 --- a/javascript/app/templates/components/haskell-module.hbs +++ /dev/null @@ -1,57 +0,0 @@ -<div class="source-code-container"></div> -{{#if declarations}} - <div class="declarations"> - <div class="declarations-header"> - <div class="input-group"> - {{input class="form-control" value=query placeholder="Identifier"}}<a class="hide-declarations" href="#" {{action "toggleShowDeclarations"}}>{{showDeclarationsLabel}}</a> - </div> - </div> - {{#if showDeclarations}} - <div id="declarations-content" class="declarations-content"> - <ul> - {{#infinite-list containerElementId="declarations-content" elements=filteredDeclarations perPage=30 as |declaration|}} - <li class="declaration"> - <div class="declaration"> - <a {{action "goToLine" declaration.lineNumber}} href="#"><span class="source-code-font">{{declaration.name}}{{#if declaration.declType}} :: {{type-signature-text components=declaration.declType.components}}{{/if}}</span> - </a><span>{{#unless declaration.isExported}}<i>(not exported)</i>{{/unless}}</span> - </div> - </li> - {{/infinite-list}} - </ul> - </div> - {{/if}} - </div> -{{/if}} -{{#info-window - targetElement=selectedIdentifier - isHoveredOverIdentifier=isHoveredOverIdentifier - hasSelectedExpression=hasSelectedExpression - containerElementId="right-panel" as |section|}} - {{#if (eq section "header")}} - {{#if hasSelectedExpression}} - <div>Selected expressions</div> - {{else}} - {{identifier-name - identifierInfo=identifierInfo - identifierOccurrence=identifierOccurrence - identifierElement=selectedIdentifier - currentPackageId=packageId - isBinder=identifierOccurrence.isBinder - currentLineNumber=currentLineNumber - findReferences=findReferences}} - {{/if}} - {{else}} - {{#unless hasSelectedExpression}} - {{identifier-info - identifierInfo=identifierInfo - identifierOccurrence=identifierOccurrence - identifiers=identifiers - currentLineNumber=currentLineNumber}} - {{else}} - {{expression-info - expressions=expressions - identifiers=identifiers - currentLineNumber=currentLineNumber}} - {{/unless}} - {{/if}} -{{/info-window}} diff --git a/javascript/app/templates/components/identifier-info.hbs b/javascript/app/templates/components/identifier-info.hbs deleted file mode 100644 index 7146a2e..0000000 --- a/javascript/app/templates/components/identifier-info.hbs +++ /dev/null @@ -1,39 +0,0 @@ -{{#if (or identifierInfo identifierOccurrence.idOccType)}} - <div class="identifier-info"> - {{#if identifierInfo}} - {{#if isNaughtyRecSel}} - <i>This record selector can never be called because its type mentions a type variable that isn't in the result type of the constructor</i> - {{else}} - {{type-signature - type=identifierInfo.idType - identifiers=identifiers - currentLineNumber=currentLineNumber}} - {{/if}} - {{/if}} - {{#if (and identifierInfo identifierOccurrence identifierOccurrence.idOccType)}} - <div style="height:10px"></div> - {{/if}} - {{#if (and identifierOccurrence identifierOccurrence.idOccType)}} - {{type-signature - type=identifierOccurrence.idOccType - identifiers=identifiers - currentLineNumber=currentLineNumber}} - {{/if}} - <div class="documentation"> - {{{identifierInfo.doc}}} - {{{downloadedDocumentation}}} - </div> - {{#if identifierOccurrence.instanceResolution}} - <div style="height:10px"></div> - {{/if}} - <div> - {{#if identifierOccurrence.instanceResolution}} - {{instance-info - instance=identifierOccurrence.instanceResolution - identifiers=identifiers - nestedLevel=0 - currentLineNumber=currentLineNumber}} - {{/if}} - </div> - </div> -{{/if}} diff --git a/javascript/app/templates/components/identifier-name.hbs b/javascript/app/templates/components/identifier-name.hbs deleted file mode 100644 index 4f7b764..0000000 --- a/javascript/app/templates/components/identifier-name.hbs +++ /dev/null @@ -1,12 +0,0 @@ -<div> - <span class="source-code-font break-word identifier-menu-item" style={{style}}>{{#if identifierInfo.demangledOccName}}{{identifierInfo.demangledOccName}}{{else}}{{name}}{{/if}}</span> - {{#unless isBinder}} - {{#if location}} - <span class="identifier-menu-item">{{location}}</span> - <span class="link identifier-menu-item" onmouseup={{action "goToDefinition"}}>Go to definition</span> - {{/if}} - {{/unless}} - {{#if isExternalIdentifier}} - <span class="link identifier-menu-item" onmouseup={{action "findReferences" identifierInfo currentPackageId}}>Find references</span> - {{/if}} -</div> diff --git a/javascript/app/templates/components/infinite-list.hbs b/javascript/app/templates/components/infinite-list.hbs deleted file mode 100644 index ab103d4..0000000 --- a/javascript/app/templates/components/infinite-list.hbs +++ /dev/null @@ -1,3 +0,0 @@ -{{#each renderedElements as |element|}} - {{yield element}} -{{/each}} diff --git a/javascript/app/templates/components/info-window.hbs b/javascript/app/templates/components/info-window.hbs deleted file mode 100644 index 003e2c5..0000000 --- a/javascript/app/templates/components/info-window.hbs +++ /dev/null @@ -1,12 +0,0 @@ -<div class="info-window"> - <div class="info-window-header"> - <div class="info-window-options"> - <a href="#" {{action "pin"}}>{{#if isPinned}}Unpin{{else}}Pin{{/if}}</a> - <a href="#" {{action "close"}}>Close</a> - </div> - {{yield "header"}} - </div> - <div class="info-window-content"> - {{yield "body"}} - </div> -</div> diff --git a/javascript/app/templates/components/input-with-autocomplete.hbs b/javascript/app/templates/components/input-with-autocomplete.hbs deleted file mode 100644 index 1a73c07..0000000 --- a/javascript/app/templates/components/input-with-autocomplete.hbs +++ /dev/null @@ -1,19 +0,0 @@ -<div class="input-group"> - {{input class="form-control search-input" value=query placeholder=placeholder}} - <div class="autocomplete-container"> - {{# if items}} - <ul class="autocomplete-items"> - {{#each items as |item index|}} - <li class="{{if (eq index highlightedItemIndex) "highlighted"}}" onclick={{action "goToDefinition" item}}> - <div class="autocomplete-item"> - {{yield item}} - </div> - </li> - {{/each}} - </ul> - {{/if}} - </div> - <div class="input-group-append"> - <button id="search-input" class="btn btn-outline-secondary" {{action "onSubmit" query}}>{{searchButtonText}}</button> - </div> -</div> diff --git a/javascript/app/templates/components/instance-info.hbs b/javascript/app/templates/components/instance-info.hbs deleted file mode 100644 index b5c2fdf..0000000 --- a/javascript/app/templates/components/instance-info.hbs +++ /dev/null @@ -1,10 +0,0 @@ -{{#if instance}} - <div style={{style}}> - <span class="source-code-font"> - instance {{type-signature type=instance.instanceType identifiers=identifiers currentLineNumber=currentLineNumber noExpand=true}}</span> - (<span class="link" onclick={{action "goToDefinition"}}>Go to definition</span>) - {{#each instance.instances as |inst|}} - {{instance-info instance=inst identifiers=identifiers nestedLevel=nextNestedLevel currentLineNumber=currentLineNumber}} - {{/each}} - </div> -{{/if}} diff --git a/javascript/app/templates/components/paginated-list.hbs b/javascript/app/templates/components/paginated-list.hbs deleted file mode 100644 index 5184e07..0000000 --- a/javascript/app/templates/components/paginated-list.hbs +++ /dev/null @@ -1,17 +0,0 @@ -<div class="paginated-list-header"> - <span>Found {{total}} {{{foundWhere}}}</span> - {{#if (or next prev)}} - - - <span> - {{#if first}}<button class="btn btn-outline-secondary btn-sm" {{action "update" first.href}}><<</button>{{/if}} - {{#if prev}}<button button class="btn btn-outline-secondary btn-sm" {{action "update" prev.href}}><</button>{{/if}} - {{firstItemOnPage}} - {{lastItemOnPage}} - {{#if next}}<button button class="btn btn-outline-secondary btn-sm" {{action "update" next.href}}>></button>{{/if}} - {{#if last}}<button button class="btn btn-outline-secondary btn-sm" {{action "update" last.href}}>>></button>{{/if}} - </span> - {{/if}} -</div> -<div class="paginated-list-content"> - {{yield items}} -</div> diff --git a/javascript/app/templates/components/resizable-panel.hbs b/javascript/app/templates/components/resizable-panel.hbs deleted file mode 100644 index 0fd3aa7..0000000 --- a/javascript/app/templates/components/resizable-panel.hbs +++ /dev/null @@ -1,5 +0,0 @@ -<div class="absolute-container">{{yield (action "hide")}} - <div onclick={{action "hide"}} class="show-left-panel-button"> - {{{hideButtonLabel}}} - </div> -</div> diff --git a/javascript/app/templates/components/text-file.hbs b/javascript/app/templates/components/text-file.hbs deleted file mode 100644 index 6a50453..0000000 --- a/javascript/app/templates/components/text-file.hbs +++ /dev/null @@ -1,3 +0,0 @@ -<div class="source-code-container"> -{{{html}}} -</div> diff --git a/javascript/app/templates/components/type-component.hbs b/javascript/app/templates/components/type-component.hbs deleted file mode 100644 index 775324e..0000000 --- a/javascript/app/templates/components/type-component.hbs +++ /dev/null @@ -1,3 +0,0 @@ -{{#if (and expanded identifierInfo)}}({{/if}} -<span class="source-code {{linkClass}}" onmouseup={{action "onmouseup"}}>{{occName}}</span> -{{#if (and expanded identifierInfo)}} :: {{type-signature type=identifierInfo.idType identifiers=identifiers noExpand=true}}){{/if}} diff --git a/javascript/app/templates/components/type-signature-text.hbs b/javascript/app/templates/components/type-signature-text.hbs deleted file mode 100644 index 505a466..0000000 --- a/javascript/app/templates/components/type-signature-text.hbs +++ /dev/null @@ -1,2 +0,0 @@ -{{!-- No newlines to get rid of spaces between spans --}} -{{#each components as |typeComponent|}}{{#if (eq typeComponent.tag "Text")}}{{typeComponent.contents}}{{else}}{{typeComponent.name}}{{/if}}{{/each}} diff --git a/javascript/app/templates/components/type-signature.hbs b/javascript/app/templates/components/type-signature.hbs deleted file mode 100644 index 249f1b8..0000000 --- a/javascript/app/templates/components/type-signature.hbs +++ /dev/null @@ -1,10 +0,0 @@ -{{!-- No newlines to get rid of spaces between spans --}} -{{#each components as |typeComponent|}}{{#if (eq typeComponent.tag "Text")}}<span class="source-code">{{typeComponent.contents}}</span>{{else}}{{type-component occName=typeComponent.name internalId=typeComponent.internalId identifiers=identifiers currentLineNumber=currentLineNumber}}{{/if}}{{/each}} -{{#unless noExpand}} - {{#if type.componentsExpanded}} - <div style="margin-top:5px"> - <button class="btn btn-outline-secondary btn-sm" {{action "toggleExpandTypeSynonyms"}}>{{expandTypeSynonymsLabel}} - </button> - </div> - {{/if}} -{{/unless}} diff --git a/javascript/app/templates/package.hbs b/javascript/app/templates/package.hbs deleted file mode 100644 index d26ce34..0000000 --- a/javascript/app/templates/package.hbs +++ /dev/null @@ -1,87 +0,0 @@ -<div class="flex-container"> - <div class="package-header"> - <span class="package-header-package-name">{{#link-to 'package' model}}{{model.id}}{{/link-to}}</span> - <span class="package-header-input"> - {{#input-with-autocomplete - onSubmit=(action 'searchIdentifier') - createSearchUrlFunction=createSearchUrlFunction - maxItems=10 - selectItem=(action 'showIdentifier') - searchButtonText="Search" - placeholder="Identifier" as |identifier|}} - <span class="source-code-font">{{identifier.demangledOccName}} :: {{type-signature-text components=identifier.idType.components}}</span> - <div class="module-name"> - <b>{{identifier.locationInfo.packageId.name}}-{{identifier.locationInfo.packageId.version}}</b> - {{#if identifier.locationInfo.modulePath}} - {{identifier.locationInfo.modulePath}} - {{else}} - {{identifier.locationInfo.moduleName}} - {{/if}} - </div> - {{/input-with-autocomplete}} - </span> - {{#radio-button - value="currentPackage" - groupValue=searchMode}} - <span>in {{model.id}}</span> - {{/radio-button}} - {{#radio-button - value="allPackages" - groupValue=searchMode}} - <span>in all packages</span> - {{/radio-button}} - {{#if currentFile}} - <span class="package-header-filename"> - {{currentFile}} - </span> - {{/if}} - </div> - <div class="package-content"> - {{#resizable-panel class="left-panel" alsoResizeElementId="#right-panel" as |hide|}} - <div class="file-tree-container"> - {{file-tree directoryTree=model.directoryTree openFile="openFile" currentFile=currentFile packageId=model.id hide=hide}} - </div> - {{/resizable-panel}} - <div id="right-panel" class="right-panel"> - <div id="file-container" class="file-container"> - {{outlet}} - </div> - {{#bottom-panel visible=bottomPanelVisible topPanelElementId="#file-container" containerElementId="#right-panel" as |section|}} - {{#if (eq section "header")}} - References to <b><span class="source-code">{{occName}}</span></b> - {{#if locationInfo.packageId}} - (defined in <b>{{locationInfo.packageId.name}}-{{locationInfo.packageId.version}}</b> / <b>{{locationInfo.moduleName}}</b>) - {{/if}} - {{else}} - <div id="references-packages" class="references-packages"> - {{#if globalReferences}} - <span> - {{#each globalReferences as |ref|}} - <div> - <a id="references-package-{{ref.packageId}}" class="{{if (eq ref.packageId packageId) 'selected'}}" href="#" {{action "updateReferences" ref.packageId externalId occName locationInfo true}}> - {{ref.packageId}} - </a> ({{ref.count}}) - </div> - {{/each}} - </span> - {{/if}} - </div> - <div class="references"> - {{#paginated-list url=referencesUrl foundWhere=(concat "in <b>" packageId "</b>") as |files|}} - <ul> - {{#each files as |file|}} - <li> - <div class="file-name"><a href="/package/{{packageId}}/show/{{file.name}}">{{file.name}}</a></div> - {{#each file.references as |reference|}} - <a class="source-code source-code-snippet" href="/package/{{packageId}}/show/{{file.name}}#L{{reference.idSrcSpan.line}}">{{{reference.sourceCodeHtml}}}</a> - {{/each}} - </li> - {{/each}} - </ul> - {{/paginated-list}} - </div> - {{/if}} - {{/bottom-panel}} - </div> - </div> -</div> diff --git a/javascript/app/templates/package/index.hbs b/javascript/app/templates/package/index.hbs deleted file mode 100644 index 06ccd0d..0000000 --- a/javascript/app/templates/package/index.hbs +++ /dev/null @@ -1,12 +0,0 @@ -<div class="package-modules"> - <div class="module-search-input"> - {{input class="form-control" type="text" value=query placeholder="Module name"}} - </div> - <ul class="modules"> - {{#each modulesFiltered as |module|}} - <li> - <a href="/package/{{model.id}}/show/{{module}}">{{module}}</a> - </li> - {{/each}} - </ul> -</div> diff --git a/javascript/app/templates/package/search.hbs b/javascript/app/templates/package/search.hbs deleted file mode 100644 index 37b3992..0000000 --- a/javascript/app/templates/package/search.hbs +++ /dev/null @@ -1,21 +0,0 @@ -<div class="search-results-header"> - Query : {{model.query}} -</div> -<div class="search-results-content"> - {{#paginated-list url=model.url as |identifiers|}} - <ul> - {{#each identifiers as |identifier|}} - <li class="search-result"> - <span class="source-code" ><b>{{identifier.demangledOccName}}</b> :: {{type-signature-text components=identifier.idType.components}}</span> - <div><a href="#" onmouseup={{action "goToDefinition" identifier.locationInfo}}>Go to definition</a></div> - <div class="identifier-module"> - {{#if identifier.locationInfo.modulePath}} - Defined in <a href="/package/{{identifier.locationInfo.packageId.name}}-{{identifier.locationInfo.packageId.version}}/show/{{identifier.locationInfo.modulePath}}">{{identifier.locationInfo.modulePath}}</a> - {{/if}} - </div> - <div>{{{identifier.doc}}}</div> - </li> - {{/each}} - </ul> - {{/paginated-list}} -</div> diff --git a/javascript/app/templates/package/show.hbs b/javascript/app/templates/package/show.hbs deleted file mode 100644 index c24cd68..0000000 --- a/javascript/app/templates/package/show.hbs +++ /dev/null @@ -1 +0,0 @@ -{{outlet}} diff --git a/javascript/app/templates/package/show/file.hbs b/javascript/app/templates/package/show/file.hbs deleted file mode 100644 index 0d356e5..0000000 --- a/javascript/app/templates/package/show/file.hbs +++ /dev/null @@ -1,16 +0,0 @@ -{{#if model.isHaskellModule}} - {{haskell-module - path=model.id - name=model.name - packageId=model.packageId - componentId=model.componentId - html=model.sourceCodeHtml - identifiers=model.identifiers - occurrences=model.occurrences - colorTheme=settings.colorTheme - declarations=model.declarations - findReferences=(action "findReferences") - }} -{{else}} - {{text-file text=model.text path=model.id}} -{{/if}} diff --git a/javascript/app/templates/packages.hbs b/javascript/app/templates/packages.hbs deleted file mode 100644 index 80464e6..0000000 --- a/javascript/app/templates/packages.hbs +++ /dev/null @@ -1,46 +0,0 @@ -<div class="flex-container container"> - <div> - <div class="global-identifier-search-form"> - {{#input-with-autocomplete - onSubmit=(action 'searchIdentifier') - createSearchUrlFunction=createSearchUrlFunction - maxItems=10 - selectItem=(action 'showIdentifier') - searchButtonText="Search in all packages" - placeholder="Haskell identifier" as |identifier|}} - <span class="source-code-font">{{identifier.demangledOccName}} :: {{type-signature-text components=identifier.idType.components}}</span> - <div class="module-name"> - <b>{{identifier.locationInfo.packageId.name}}-{{identifier.locationInfo.packageId.version}}</b> - {{#if identifier.locationInfo.modulePath}} - {{identifier.locationInfo.modulePath}} - {{else}} - {{identifier.locationInfo.moduleName}} - {{/if}} - </div> - {{/input-with-autocomplete}} - </div> - </div> - <div> - <div class="package-search-form"> - {{input class="form-control" type="text" value=query placeholder="Package name"}} - <span>Number of packages : {{packages.length}}</span> - </div> - </div> - <div id="packages" class="packages"> - <ul> - {{#infinite-list containerElementId="packages" elements=packages perPage=80 as |package|}} - <li> - {{#each package.versions as |version index|}} - {{#link-to 'package' (concat package.name "-" version)}} - {{#if (gt index 0)}} - {{version}} - {{else}} - {{package.name}}-{{version}} - {{/if}} - {{/link-to}} - {{/each}} - </li> - {{/infinite-list}} - </ul> - </div> -</div> diff --git a/javascript/app/templates/search.hbs b/javascript/app/templates/search.hbs deleted file mode 100644 index 5a36913..0000000 --- a/javascript/app/templates/search.hbs +++ /dev/null @@ -1,48 +0,0 @@ -<div class="flex-container container"> - <div style="position:relative;height:100%"> - <div class="absolute-container"> - <div class="global-identifier-search-form"> - {{#input-with-autocomplete - onSubmit=(action 'searchIdentifier') - createSearchUrlFunction=createSearchUrlFunction - maxItems=10 - selectItem=(action 'showIdentifier') - searchButtonText="Search in all packages" - placeholder="Haskell identifier" as |identifier|}} - <span class="source-code-font">{{identifier.demangledOccName}} :: {{type-signature-text components=identifier.idType.components}}</span> - <div class="module-name"> - <b>{{identifier.locationInfo.packageId.name}}-{{identifier.locationInfo.packageId.version}}</b> - {{#if identifier.locationInfo.modulePath}} - {{identifier.locationInfo.modulePath}} - {{else}} - {{identifier.locationInfo.moduleName}} - {{/if}} - </div> - {{/input-with-autocomplete}} - </div> - <div> - Query : {{model.query}} - </div> - <div class="global-search-results-content"> - {{#paginated-list url=model.url as |identifiers|}} - <ul> - {{#each identifiers as |identifier|}} - <li class="search-result"> - <span class="source-code" ><b>{{identifier.demangledOccName}}</b> :: {{type-signature-text components=identifier.idType.components}}</span> - <div><a href="#" onmouseup={{action "goToDefinition" identifier.locationInfo}}>Go to definition</a></div> - <div class="identifier-module"> - {{#if identifier.locationInfo.modulePath}} - Defined in <b> {{identifier.locationInfo.packageId.name}}-{{identifier.locationInfo.packageId.version}} </b> <a href="/package/{{identifier.locationInfo.packageId.name}}-{{identifier.locationInfo.packageId.version}}/show/{{identifier.locationInfo.modulePath}}">{{identifier.locationInfo.modulePath}}</a> - {{else}} - Defined in <b> {{identifier.locationInfo.packageId.name}}-{{identifier.locationInfo.packageId.version}} </b> {{identifier.locationInfo.moduleName}} - {{/if}} - </div> - <div>{{{identifier.doc}}}</div> - </li> - {{/each}} - </ul> - {{/paginated-list}} - </div> - </div> - </div> -</div> diff --git a/javascript/app/utils/api-urls.js b/javascript/app/utils/api-urls.js deleted file mode 100644 index 5280720..0000000 --- a/javascript/app/utils/api-urls.js +++ /dev/null @@ -1,53 +0,0 @@ -import config from '../config/environment'; - -// "." and ".." is a special case because of the Path Segment Normalization: -// https://tools.ietf.org/html/rfc3986#section-6.2.2.3 -// The segments “..” and “.” can be removed from a URL by a browser. -// https://stackoverflow.com/questions/3856693/a-url-resource-that-is-a-dot-2e -function fixDots(string) { - if(string === ".") { - return "%20%2E"; - } - else if(string === "..") { - return "%20%2E%2E"; - } else { - return string.replace(/\./g, '%2E'); - } -} - -export const urls = { - packageInfoUrl : function(packageId) { - return config.APP.staticUrlPrefix+"/"+packageId+"/"+config.APP.haskellCodeExplorerDirectory+"/packageInfo.json"; - }, - fileUrl : function(packageId,filePath) { - return config.APP.staticUrlPrefix+"/"+packageId+"/"+filePath; - }, - haskellModuleUrl : function (packageId,filePath) { - return config.APP.staticUrlPrefix+"/"+packageId+"/"+config.APP.haskellCodeExplorerDirectory+"/"+encodeURIComponent(encodeURIComponent(filePath))+ ".json"; - }, - packagesUrl : config.APP.apiUrlPrefix + "/packages", - identifierDefinitionSiteUrl : function(packageId,moduleName,componentId,entity,name) { - return config.APP.apiUrlPrefix + "/definitionSite/" + packageId+"/"+componentId+"/"+moduleName+"/"+entity+"/"+fixDots(encodeURIComponent(name)); - }, - modulePathUrl : function (packageId,moduleName,componentId) { - return config.APP.apiUrlPrefix + "/modulePath/"+packageId+"/"+componentId+"/"+moduleName; - }, - expressionsUrl : function (packageId,modulePath,lineStart,columnStart,lineEnd,columnEnd) { - return config.APP.apiUrlPrefix + "/expressions/"+packageId+"/"+encodeURIComponent(modulePath) +"/"+lineStart+"/"+columnStart+"/"+lineEnd+"/"+columnEnd; - }, - referencesUrl : function (packageId,externalId) { - return config.APP.apiUrlPrefix + "/references/"+packageId+"/"+encodeURIComponent(externalId); - }, - identifierSearchUrl : function (packageId,query) { - return config.APP.apiUrlPrefix + "/identifiers/"+packageId+"/"+fixDots(encodeURIComponent(query)); - }, - globalReferencesUrl : function (externalId) { - return config.APP.apiUrlPrefix + "/globalReferences/"+encodeURIComponent(externalId); - }, - globalIdentifiersUrl : function (query) { - return config.APP.apiUrlPrefix + "/globalIdentifiers/"+fixDots(encodeURIComponent(query)); - }, - hoogleDocsUrl : function (packageId,moduleName,entity,name) { - return config.APP.apiUrlPrefix + "/hoogleDocs/"+packageId+"/"+encodeURIComponent(moduleName)+"/"+entity+"/"+fixDots(encodeURIComponent(name)); - } -} diff --git a/javascript/app/utils/color-themes.js b/javascript/app/utils/color-themes.js deleted file mode 100644 index 49eda64..0000000 --- a/javascript/app/utils/color-themes.js +++ /dev/null @@ -1,191 +0,0 @@ -function colorThemeToCss(colorTheme) { - const css = ` - body { - color: ${colorTheme.defaultColor} !important; - background-color: ${colorTheme.backgroundColor} !important; - } - input { - color: ${colorTheme.defaultColor} !important; - background-color: ${colorTheme.backgroundColor} !important; - border-color: ${colorTheme.borderColor} !important; - } - .package-content { - border-top: 1px solid ${colorTheme.borderColor} !important; - } - .header a { - color : ${colorTheme.menuLinkColor} !important; - } - a { - color: ${colorTheme.typeColor} !important; - } - span.link { - color: ${colorTheme.typeColor} !important; - } - .header { - background-color: ${colorTheme.menuColor} !important; - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - .declarations-content { - background-color: ${colorTheme.navigationPanelColor} !important; - border: 1px solid ${colorTheme.borderColor} !important; - } - .declarations-header { - background-color: ${colorTheme.navigationPanelColor} !important; - border: 1px solid ${colorTheme.borderColor} !important; - } - li.declaration { - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - .left-panel { - background-color: ${colorTheme.navigationPanelColor} !important; - border-right: 1px solid ${colorTheme.borderColor} !important; - } - .show-left-panel-button { - background-color: ${colorTheme.navigationPanelColor} !important; - border-right:1px solid ${colorTheme.borderColor} !important; - border-bottom:1px solid ${colorTheme.borderColor} !important; - } - .right-panel { - background-color: ${colorTheme.backgroundColor} !important; - } - a.jstree-anchor { - color: ${colorTheme.defaultColor} !important; - } - .declaration > a { - color: ${colorTheme.defaultColor} !important; - } - .highlighted-line { - background : ${colorTheme.highlightedLineColor} !important; - } - table.source-code { - background-color: ${colorTheme.backgroundColor} !important; - color: ${colorTheme.defaultColor} !important; - } - .jstree-clicked { - background-color: ${colorTheme.backgroundColor} !important; - } - .jstree-hovered { - background-color: ${colorTheme.backgroundColor} !important; - } - ul.autocomplete-items { - background-color: ${colorTheme.backgroundColor} !important; - border-top: 1px solid ${colorTheme.borderColor} !important; - border-left: 1px solid ${colorTheme.borderColor} !important; - border-right: 1px solid ${colorTheme.borderColor} !important; - } - ul.autocomplete-items > li { - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - ul.autocomplete-items > li:hover { - background-color: ${colorTheme.highlightedLineColor} !important; - } - ul.autocomplete-items > li.highlighted { - background-color: ${colorTheme.highlightedLineColor} !important; - } - .source-code-snippet { - color: ${colorTheme.defaultColor} !important; - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - .source-code-snippet:hover { - background-color: ${colorTheme.highlightedLineColor} !important; - } - .bottom-panel { - background-color: ${colorTheme.backgroundColor} !important; - border-top: 1px solid ${colorTheme.borderColor} !important; - } - .bottom-panel-header { - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - .paginated-list-header { - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - li.search-result { - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - .search-results-header { - border-bottom: 1px solid ${colorTheme.borderColor} !important; - } - .info-window-content { - border-top: 1px solid ${colorTheme.borderColor} !important; - } - .info-window { - border: 1px solid ${colorTheme.borderColor} !important; - background-color:${colorTheme.infoWindowColor} !important; - color: ${colorTheme.defaultColor} !important; - } - .type-info { - border-top: 1px solid ${colorTheme.borderColor} !important; - } - .references-packages { - border-right:1px solid ${colorTheme.borderColor} !important; - }`; - return css; -} - -const darkTheme = { - id: "darkTheme", - name: "Dark theme", - description: "Dark theme (Monokai based)", - defaultColor: "#F8F8F2", - backgroundColor: "#272822", - typeColor: "#66D9EF", - literalColor: "#E6DB74", - topLevelIdFromCurrentModule : "#A6E22E", - localIdentifierColor: ["#F0A3FF","#0075DC","#993F00", - "#2BCE48","#FFCC99","#808080","#94FFB5","#8F7C00", - "#C20088","#FFA405","#FFA8BB","#426600","#FF0010", - "#5EF1F2","#00998F","#E0FF66","#FFFF80", - "#FFFF00","#FF5005"], - menuColor: "#3c3b37", - menuLinkColor : "#F8F8F2", - infoWindowColor: "#3c3b37", - navigationPanelColor: "#3c3b37", - linkColor : "#0366d6", - borderColor: "#535557", - highlightedLineColor: "#4a4a4a" -}; - -const lightTheme = { - id: "lightTheme", - name: "Light theme", - description: "Light theme (Github based)", - defaultColor: "#24292e", - backgroundColor: "#ffffff", - typeColor: "#005cc5", - literalColor: "#032f62", - topLevelIdFromCurrentModule : "#6f42c1", - localIdentifierColor: ["#005C31", - "#2BCE48","#808080","#8F7C00", - "#C20088","#FFA405","#ffa8bb","#426600","#FF0010", - "#09d7d8","#00998F","#990000","#FF5005"], - menuColor: "#f2f4f8", - menuLinkColor : "#24292e", - infoWindowColor: "#f2f4f8", - navigationPanelColor: "#f2f4f8", - linkColor : "#0366d6", - borderColor: "#e1e4e8", - highlightedLineColor: "#eaeaea" -}; - -function updateColorThemeCss (colorTheme) { - const newStyle = document.createElement('style'); - newStyle.type = 'text/css'; - newStyle.innerHTML = colorThemeToCss(colorTheme); - newStyle.id = 'color-theme'; - const oldStyle = document.querySelector("style#color-theme"); - if(oldStyle) { - oldStyle.parentElement.removeChild(oldStyle); - } - document.getElementsByTagName('head')[0].appendChild(newStyle); -} - -const themes = { - darkTheme: darkTheme, - lightTheme: lightTheme -}; - -export { - updateColorThemeCss, - colorThemeToCss, - themes -} diff --git a/javascript/app/utils/go-to-definition.js b/javascript/app/utils/go-to-definition.js deleted file mode 100644 index 59b5dba..0000000 --- a/javascript/app/utils/go-to-definition.js +++ /dev/null @@ -1,89 +0,0 @@ -function exactLocationToUrl(exactLocation) { - const modulePath = exactLocation.modulePath; - const packageId = exactLocation.packageId.name + "-" + exactLocation.packageId.version; - let hash = ""; - if(exactLocation.startLine != 1) { - hash = "#L" + exactLocation.startLine; - } - return "/package/"+packageId+"/show/"+modulePath+hash; -} - -function hackageUrl(packageId,locationInfo) { - let hash = ""; - if (locationInfo.entity !== "Mod") { - hash = "#" + encodeURIComponent(locationInfo.name); - } - return "https://hackage.haskell.org/package/"+packageId+"/docs/src/"+locationInfo.moduleName+".html"+hash; -} - -function openUrl(buttonId,url) { - if(buttonId === 2) {//middle mouse button - window.open(url, '_blank'); - } else if(buttonId == 1) {//left mouse button - window.location = url; - } - return false; -} - -function saveCurrentLocation(currentLineNumber) { - if(currentLineNumber) { - const url = window.location.origin + window.location.pathname + "#L" + currentLineNumber; - if(location.href != url) { - window.location.hash = "#L" + currentLineNumber; - } - } -} - -function goToDefinition(store,locationInfo,buttonId,currentLineNumber) { - if(locationInfo.tag === "ExactLocation") { - const url = exactLocationToUrl(locationInfo); - if(locationInfo.startLine !== currentLineNumber) { - saveCurrentLocation(currentLineNumber); - } - openUrl(buttonId,url); - } else if((locationInfo.tag === "ApproximateLocation") && - (locationInfo.moduleName.indexOf("Paths_") !== 0)) { - const packageId = locationInfo.packageId.name+"-"+locationInfo.packageId.version; - if(locationInfo.entity === "Mod") { - store.loadDefinitionSite(packageId, - locationInfo.moduleName, - locationInfo.componentId, - locationInfo.entity, - locationInfo.moduleName) - .then((defSite) => { - const packageId = defSite.location.packageId.name + "-" + defSite.location.packageId.version; - openUrl(buttonId,"/package/" + packageId + "/show/" + defSite.location.modulePath); - }).catch(() => { - openUrl(buttonId,hackageUrl(packageId,locationInfo)); - }); - } else { - store.loadDefinitionSite(packageId, - locationInfo.moduleName, - locationInfo.componentId, - locationInfo.entity, - locationInfo.name) - .then((definitionSite) => { - if(definitionSite.location.tag === "ExactLocation") { - const url = exactLocationToUrl(definitionSite.location); - if(locationInfo.startLine !== currentLineNumber) { - saveCurrentLocation(currentLineNumber); - } - openUrl(buttonId,url); - } else { - saveCurrentLocation(currentLineNumber); - openUrl(buttonId,hackageUrl(packageId,locationInfo)); - } - }).catch((e) => { - console.log(e); - saveCurrentLocation(currentLineNumber); - openUrl(buttonId,hackageUrl(packageId,locationInfo)); - }); - } - } else { - alert('No location info'); - } -} - -export { - goToDefinition,openUrl -} diff --git a/javascript/app/utils/language-extensions.js b/javascript/app/utils/language-extensions.js deleted file mode 100644 index f5e8b41..0000000 --- a/javascript/app/utils/language-extensions.js +++ /dev/null @@ -1,513 +0,0 @@ -const extensions = { - "AllowAmbiguousTypes": { - "description": "Allow the user to write ambiguous types, and the type inference engine to infer them.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XAllowAmbiguousTypes" - }, - "ApplicativeDo": { - "description": "Allows do-notation for types that are Applicative as well as Monad. When enabled, desugaring do notation tries to use (*) and fmap and join as far as possible.", - "link": "https://ghc.haskell.org/trac/ghc/wiki/ApplicativeDo#Summary" - }, - "Arrows": { - "description": "Enable arrow notation.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XArrows" - }, - "AutoDeriveTypeable": { - "description": "(deprecated) Deprecated in favour of DeriveDataTypeable.", - "link": "https://haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#auto-derive-typeable" - }, - "BangPatterns": { - "description": "Enable a form of pattern which forces evaluation before an attempted match, and a form of strict let/where binding.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XBangPatterns" - }, - "BinaryLiterals": { - "description": "Allow the use of binary integer literal syntax (e.g. 0b11001001 to denote 201).", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XBinaryLiterals" - }, - "BlockArguments": { - "description": "Allow do blocks etc. in argument position.", - "link":"https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0010-block-arguments.rst#blockarguments-extension" - }, - "CApiFFI": { - "description": "Allow use of CAPI FFI calling convention (foreign import capi).", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/ffi-chap.html#the-capi-calling-convention" - }, - "CPP": { - "description": "Run the C preprocessor on Haskell source code.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#language-pragma" - }, - "ConstrainedClassMethods": { - "description": "Allow a class method's type to place additional constraints on a class type variable.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XConstrainedClassMethods" - }, - "ConstraintKinds": { - "description": "Allow type classimplicit parameterequality constraints to be used as types with the special kind constraint. Also generalise the (ctxt => ty) syntax so that any type of kind constraint can occur before the arrow.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XConstraintKinds" - }, - "DataKinds": { - "description": "Enable datatype promotion.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDataKinds" - }, - "DatatypeContexts": { - "description": "Allow contexts to be put on datatypes, e.g. the Eq a in data Eq a => Set a = NilSet | ConsSet a (Set a).", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDatatypeContexts" - }, - "DefaultSignatures": { - "description": "Enable support for default signatures.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDefaultSignatures" - }, - "DeriveAnyClass": { - "description": "Enable deriving for any class.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveAnyClass" - }, - "DeriveDataTypeable": { - "description": "Enable deriving for classes Typeable and Data.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveDataTypeable" - }, - "DeriveFoldable": { - "description": "Enable deriving for the Foldable class.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveFoldable" - }, - "DeriveFunctor": { - "description": "Enable deriving for the Functor class.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveFunctor" - }, - "DeriveGeneric": { - "description": "Enable deriving for Generic and Generic1.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveGeneric" - }, - "DeriveLift": { - "description": "Enable deriving for the Lift class.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveLift" - }, - "DeriveTraversable": { - "description": "Enable deriving for the Traversable class.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveTraversable" - }, - "DerivingStrategies": { - "description": "Allow multiple deriving clauses, each optionally qualified with a strategy.", - "link":"https://ghc.haskell.org/trac/ghc/wiki/Commentary/Compiler/DerivingStrategies" - }, - "DisambiguateRecordFields": { - "description": "Allow a record field name to be disambiguated by the type of the record it's in.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDisambiguateRecordFields" - }, - "DoAndIfThenElse": { - "description": "Improve the layout rule when if expressions are used in a do block.", - "link":"https://prime.haskell.org/wiki/DoAndIfThenElse" - }, - "DoRec": { - "description": "(deprecated) Deprecated in favour of RecursiveDo.", - "link": "http://hackage.haskell.org/package/Cabal-2.4.1.0/docs/Language-Haskell-Extension.html#v:RecursiveDo" - }, - "DuplicateRecordFields": { - "description": "Allow records to use duplicated field labels for accessors.", - "link": "https://ghc.haskell.org/trac/ghc/wiki/Records/OverloadedRecordFields/DuplicateRecordFields" - }, - "EmptyCase": { - "description": "Enable case expressions that have no alternatives. Also applies to lambda-case expressions if they are enabled.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XEmptyCase" - }, - "EmptyDataDecls": { - "description": "Allow data type declarations with no constructors.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XEmptyDataDecls" - }, - "ExistentialQuantification": { - "description": "Allow existentially-quantified data constructors.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XExistentialQuantification" - }, - "ExplicitForAll": { - "description": "Make forall a keyword in types, which can be used to give the generalisation explicitly.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XExplicitForAll" - }, - "ExplicitNamespaces": { - "description": "Enable explicit namespaces in module import/export lists.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XExplicitNamespaces" - }, - "ExtendedDefaultRules": { - "description": "Allow default instantiation of polymorphic types in more situations.", - "link": "http://downloads.haskell.org/~ghc/latest/docs/html/users_guide/ghci.html#type-defaulting-in-ghci" - }, - "ExtensibleRecords": { - "description": "Enable the \"Trex\" extensible records system.", - "link": "http://haskell.org/hugs/pages/users_guide/hugs-only.html#TREX" - }, - "FlexibleContexts": { - "description": "Relax some restrictions on the form of the context of a type signature.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XFlexibleContexts" - }, - "FlexibleInstances": { - "description": "Relax some restrictions on the form of the context of an instance declaration.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XFlexibleInstances" - }, - "ForeignFunctionInterface": { - "description": "Enable the Foreign Function Interface. In GHC, implements the standard Haskell 98 Foreign Function Interface Addendum, plus some GHC-specific extensions.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#language-pragma" - }, - "FunctionalDependencies": { - "description": "Allow a specification attached to a multi-parameter type class which indicates that some parameters are entirely determined by others. The implementation will check that this property holds for the declared instances, and will use this property to reduce ambiguity in instance resolution.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XFunctionalDependencies" - }, - "GADTSyntax": { - "description": "Enable GADT syntax for declaring ordinary algebraic datatypes.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XGADTSyntax" - }, - "GADTs": { - "description": "Enable generalized algebraic data types, in which type variables may be instantiated on a per-constructor basis. Implies GADTSyntax.", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#generalised-algebraic-data-types-gadts" - }, - "GHCForeignImportPrim": { - "description": "Allow GHC primops, written in C--, to be imported into a Haskell file.", - "link":"https://ghc.haskell.org/trac/ghc/wiki/Commentary/PrimOps" - }, - "GeneralizedNewtypeDeriving": { - "description": "Allow a type declared with newtype to use deriving for any class with an instance for the underlying type.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XGeneralizedNewtypeDeriving" - }, - "Generics": { - "description": "(deprecated) Enable generic type classes, with default instances defined in terms of the algebraic structure of a type.", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#generic-classes" - }, - "HereDocuments": { - "description": "Enable an alternate syntax for string literals, with string templating.", - "link": "http://haskell.org/hugs/pages/users_guide/here-documents.html" - }, - "HexFloatLiterals": { - "description": "Allow use of hexadecimal literal notation for floating-point values.", - "link":"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#hex-float-literals" - }, - "ImplicitParams": { - "description": "Enable implicit function parameters with dynamic scope.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XImplicitParams" - }, - "ImplicitPrelude": { - "description": "Enable the implicit importing of the module Prelude. When disabled, when desugaring certain built-in syntax into ordinary identifiers, use whatever is in scope rather than the Prelude -- version.", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#rebindable-syntax-and-the-implicit-prelude-import" - }, - "ImpredicativeTypes": { - "description": "(deprecated) Allow a type variable to be instantiated at a polymorphic type.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XImpredicativeTypes" - }, - "IncoherentInstances": { - "description": "Implies OverlappingInstances. Allow the implementation to choose an instance even when it is possible that further instantiation of types will lead to a more specific instance being applicable.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XIncoherentInstances" - }, - "InstanceSigs": { - "description": "Allow type signatures to be specified in instance declarations.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XInstanceSigs" - }, - "InterruptibleFFI": { - "description": "Enable interruptible FFI.", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/ffi-chap.html#interruptible-foreign-calls" - }, - "KindSignatures": { - "description": "Allow an explicit kind signature giving the kind of types over which a type variable ranges.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XKindSignatures" - }, - "LambdaCase": { - "description": "Enable support lambda-case expressions.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XLambdaCase" - }, - "LiberalTypeSynonyms": { - "description": "Defer validity checking of types until after expanding type synonyms, relaxing the constraints on how synonyms may be used.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XLiberalTypeSynonyms" - }, - "MagicHash": { - "description": "Allow the character # as a postfix modifier on identifiers. Also enables literal syntax for unboxed values.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMagicHash" - }, - "MonadComprehensions": { - "description": "Enable monad comprehensions, which generalise the list comprehension syntax to work for any monad.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMonadComprehensions" - }, - "MonadFailDesugaring": { - "description": "A temporary extension to help library authors check if their code will compile with the new planned desugaring of fail.", - "link":"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-MonadFailDesugaring" - }, - "MonoLocalBinds": { - "description": "Local (let and where) bindings are monomorphic.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMonoLocalBinds" - }, - "MonoPatBinds": { - "description": "(deprecated) Has no effect.", - "link": "https://downloads.haskell.org/~ghc/7.6.3/docs/html/users_guide/monomorphism.html" - }, - "MonomorphismRestriction": { - "description": "Enable the dreaded monomorphism restriction.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNoMonomorphismRestriction" - }, - "MultiParamTypeClasses": { - "description": "Allow multiple parameters in a type class.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMultiParamTypeClasses" - }, - "MultiWayIf": { - "description": "Enable support for multi-way if-expressions.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMultiWayIf" - }, - "NPlusKPatterns": { - "description": "Support for patterns of the form n + k, where k is an integer literal.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNPlusKPatterns" - }, - "NamedFieldPuns": { - "description": "Enable syntax for implicitly binding local names corresponding to the field names of a record. Puns bind specific names, unlike RecordWildCards.", - "link": "https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#extension-NamedFieldPuns" - }, - "NamedWildCards": { - "description": "Allow named placeholders written with a leading underscore inside type signatures. Wildcards with the same name unify to the same type.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNamedWildCards" - }, - "NegativeLiterals": { - "description": "Desugars negative literals directly (without using negate).", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNegativeLiterals" - }, - "NewQualifiedOperators": { - "description": "(deprecated) Change the syntax for qualified infix operators.", - "link": "http://www.haskell.org/ghc/docs/6.12.3/html/users_guide/syntax-extns.html#new-qualified-operators" - }, - "NondecreasingIndentation": { - "description": "Enable non-decreasing indentation for do blocks.", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/bugs.html#context-free-syntax" - }, - "NullaryTypeClasses": { - "description": "Enable support for type classes with no type parameter.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNullaryTypeClasses" - }, - "NumDecimals": { - "description": "Allow the use of floating literal syntax for all instances of Num, including Int and Integer.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNumDecimals" - }, - "NumericUnderscores": { - "description": "Allow use of underscores in numeric literals.", - "link": "https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-NumericUnderscores" - }, - "OverlappingInstances": { - "description": "Allow overlapping class instances, provided there is a unique most specific instance for each use.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XOverlappingInstances" - }, - "OverloadedLabels": { - "description": "Allows use of the #label syntax.", - "link":"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-OverloadedLabels" - }, - "OverloadedLists": { - "description": "Enable overloading of list literals, arithmetic sequences and list patterns using the IsList type class.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XOverloadedLists" - }, - "OverloadedStrings": { - "description": "Enable overloading of string literals using a type class, much like integer literals.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XOverloadedStrings" - }, - "PackageImports": { - "description": "Allow imports to be qualified by the package name the module is intended to be imported from, e.g.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPackageImports" - }, - "ParallelArrays": { - "description": "Enable parallel arrays syntax ([:, :]) for Data Parallel Haskell.", - "link": "http://www.haskell.org/haskellwiki/GHC/Data_Parallel_Haskell" - }, - "ParallelListComp": { - "description": "Provide syntax for writing list comprehensions which iterate over several lists together, like the zipWith family of functions.", - "link": "https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-ParallelListComp" - }, - "PartialTypeSignatures": { - "description": "Allow anonymous placeholders (underscore) inside type signatures. The type inference engine will generate a message describing the type inferred at the hole's location.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPartialTypeSignatures" - }, - "PatternGuards": { - "description": "Enable a form of guard which matches a pattern and binds variables.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPatternGuards" - }, - "PatternSynonyms": { - "description": "Allow giving names to and abstracting over patterns.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPatternSynonyms" - }, - "PolyKinds": { - "description": "Enable kind polymorphism.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPolyKinds" - }, - "PostfixOperators": { - "description": "Relax the interpretation of left operator sections to allow unary postfix operators.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPostfixOperators" - }, - "QuantifiedConstraints": { - "description": "Allow forall in constraints.", - "link":"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-QuantifiedConstraints" - }, - "QuasiQuotes": { - "description": "Enable quasi-quotation, a mechanism for defining new concrete syntax for expressions and patterns.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XQuasiQuotes" - }, - "Rank2Types": { - "description": "(deprecated) A synonym for RankNTypes.", - "link": "https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#arbitrary-rank-polymorphism" - }, - "RankNTypes": { - "description": "Allow a universally-quantified type to occur on the left of a function arrow.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRankNTypes" - }, - "RebindableSyntax": { - "description": "Makes much of the Haskell sugar be desugared into calls to the function with a particular name that is in scope.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRebindableSyntax" - }, - "RecordPuns": { - "description": "Deprecated, use NamedFieldPuns instead.", - "link": "https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#record-puns" - }, - "RecordWildCards": { - "description": "Enable syntax for implicitly binding local names corresponding to the field names of a record. A wildcard binds all unmentioned names, unlike NamedFieldPuns.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRecordWildCards" - }, - "RecursiveDo": { - "description": "Allow recursive bindings in do blocks, using the rec keyword, or mdo, a variant of do.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRecursiveDo" - }, - "RegularPatterns": { - "description": "Allow regular pattern matching over lists, as discussed in the paper \"Regular Expression Patterns\" by Niklas Broberg, Andreas Farre and Josef Svenningsson, from ICFP '04.", - "link":"https://stackoverflow.com/questions/37224366/how-to-resolve-an-unsupported-extension-regularpatterns-error" - }, - "RelaxedPolyRec": { - "description": "Relax the requirements on mutually-recursive polymorphic functions.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRelaxedPolyRec" - }, - "RestrictedTypeSynonyms": { - "description": "Enable type synonyms which are transparent in some definitions and opaque elsewhere, as a way of implementing abstract datatypes.", - "link": "http://haskell.org/hugs/pages/users_guide/restricted-synonyms.html" - }, - "RoleAnnotations": { - "description": "Enable explicit role annotations, like in (type role Foo representational representational).", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRoleAnnotations" - }, - "Safe": { - "description": "Compile a module in the Safe, Safe Haskell mode -- a restricted form of the Haskell language to ensure type safety.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/safe_haskell.html#ghc-flag--XSafe" - }, - "SafeImports": { - "description": "Allow imports to be qualified with a safe keyword that requires the imported module be trusted as according to the Safe Haskell definition of trust.", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#safe-imports" - }, - "ScopedTypeVariables": { - "description": "Cause a type variable in a signature, which has an explicit forall quantifier, to scope over the definition of the accompanying value declaration.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XScopedTypeVariables" - }, - "StandaloneDeriving": { - "description": "Allow a standalone declaration which invokes the type class deriving mechanism.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XStandaloneDeriving" - }, - "StarIsType": { - "description": "Have * refer to Type.", - "link":"https://ghc.haskell.org/trac/ghc/wiki/Migration/8.6#StarIsType" - - }, - "StaticPointers": { - "description": "Enable support for 'static pointers' (and the static keyword) to refer to globally stable names, even across different programs.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XStaticPointers" - }, - "Strict": { - "description": "Switches all pattern bindings to be strict by default (as if they had a bang using BangPatterns), ordinary patterns are recovered using ~. Implies StrictData.", - "link": "https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#ghc-flag--XStrict" - }, - "StrictData": { - "description": "Switches data type declarations to be strict by default (as if they had a bang using BangPatterns), and allow opt-in field laziness using ~.", - "link": "https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#ghc-flag--XStrictData" - }, - "TemplateHaskell": { - "description": "Enable Template Haskell, a system for compile-time metaprogramming.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTemplateHaskell" - }, - "TemplateHaskellQuotes": { - "description": "A subset of TemplateHaskell including only quoting.", - "link": "https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-TemplateHaskellQuotes" - }, - "TraditionalRecordSyntax": { - "description": "Enable traditional record syntax (as supported by Haskell 98)", - "link": "https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#traditional-record-syntax" - }, - "TransformListComp": { - "description": "Enable generalized list comprehensions, supporting operations such as sorting and grouping.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTransformListComp" - }, - "Trustworthy": { - "description": "Compile a module in the Trustworthy, Safe Haskell mode -- no restrictions apply but the module is marked as trusted as long as the package the module resides in is trusted.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/safe_haskell.html#ghc-flag--XTrustworthy" - }, - "TupleSections": { - "description": "Enable the use of tuple sections, e.g. (, True) desugars into x -> (x, True).", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTupleSections" - }, - "TypeApplications": { - "description": "Enable explicit type applications with the syntax id @Int.", - "link":"https://ghc.haskell.org/trac/ghc/wiki/TypeApplication" - }, - "TypeFamilies": { - "description": "Allow data types and type synonyms which are indexed by types, i.e. ad-hoc polymorphism for types.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeFamilies" - }, - "TypeFamilyDependencies": { - "description": "Allow functional dependency annotations on type families to declare them as injective.", - "link": "https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-TypeFamilyDependencies" - }, - "TypeInType": { - "description": "Dissolve the distinction between types and kinds, allowing the compiler to reason about kind equality and therefore enabling GADTs to be promoted to the type-level.", - "link":"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#kind-polymorphism" - }, - "TypeOperators": { - "description": "Allow the name of a type constructor, type class, or type variable to be an infix operator. * https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeOperators", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeOperators" - }, - "TypeSynonymInstances": { - "description": "Allow type synonyms in instance heads.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeSynonymInstances" - }, - "UnboxedSums": { - "description": "Enable the use of unboxed sum syntax.", - "link": "https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-UnboxedSums" - }, - "UnboxedTuples": { - "description": "Enable unboxed tuples.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XUnboxedTuples" - }, - "UndecidableInstances": { - "description": "Ignore structural rules guaranteeing the termination of class instance resolution. Termination is guaranteed by a fixed-depth recursion stack, and compilation may fail if this depth is exceeded.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XUndecidableInstances" - }, - "UndecidableSuperClasses": { - "description": "Allow recursive (and therefore undecideable) super-class relationships.", - "link": "https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#undecidable-or-recursive-superclasses" - }, - "UnicodeSyntax": { - "description": "Allow certain Unicode characters to stand for certain ASCII character sequences, e.g. keywords and punctuation.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XUnicodeSyntax" - }, - "UnliftedFFITypes": { - "description": "Allow the use of unboxed types as foreign types, e.g. in foreign import and foreign export.", - "link": "https://ghc.haskell.org/trac/ghc/wiki/Commentary/PrimOps#Foreignout-of-linePrimOpsandforeignimportprim" - }, - "Unsafe": { - "description": "Compile a module in the Unsafe, Safe Haskell mode so that modules compiled using Safe, Safe Haskell mode can't import it.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/safe_haskell.html#ghc-flag--XUnsafe" - }, - "ViewPatterns": { - "description": "Enable view patterns, which match a value by applying a function and matching on the result.", - "link": "https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XViewPatterns" - }, - "XmlSyntax": { - "description": "Allow concrete XML syntax to be used in expressions and patterns, as per the Haskell Server Pages extension language: http://www.haskell.org/haskellwiki/HSP. The ideas behind it are discussed in the paper \"Haskell Server Pages through Dynamic Loading\" by Niklas Broberg, from Haskell Workshop '05.", - "link": "http://www.haskell.org/haskellwiki/HSP" - } -}; - - -const regexp = new RegExp(Object.keys(extensions).join("|"),"g"); - -function addLinksToLanguageExtensionsDocs(string) { - return string.replace(regexp, function(match) { - const extension = extensions[match]; - if(extensions) { - return "<a target='_blank' title='"+extension.description+"' href='"+extension.link+"'>"+match+"</a>"; - } else { - return match; - } - }); -} - -export { - addLinksToLanguageExtensionsDocs -} diff --git a/javascript/app/utils/line-selection.js b/javascript/app/utils/line-selection.js deleted file mode 100644 index d2e55e3..0000000 --- a/javascript/app/utils/line-selection.js +++ /dev/null @@ -1,111 +0,0 @@ -function initializeLineSelection(sourceCodeContainerElement,component) { - const lineNumbers = Array.prototype.slice.call(sourceCodeContainerElement.querySelectorAll("td.line-number")); - if(lineNumbers.length > 0) { - const onhashchange = function () { - highlightSelectedLines(sourceCodeContainerElement); - } - window.addEventListener("hashchange",onhashchange); - component._onhashchange = onhashchange; - - let shiftPressed; - const onkeydown = function (event) { - if(event.keyCode === 16) { shiftPressed = true; } - }; - const onkeyup = function (event) { - if(event.keyCode === 16) { shiftPressed = false; } - }; - - document.addEventListener('keydown',onkeydown); - document.addEventListener('keyup',onkeyup); - component._onkeydown = onkeydown; - component._onkeyup = onkeyup; - - let selectedLine1,selectedLine2; - lineNumbers.forEach((lineNumberElement) => { - lineNumberElement.onclick = function() { - const number = parseInt(this.textContent); - if(shiftPressed && selectedLine1) { - if(selectedLine1 != number) { - selectedLine2 = number; - if(selectedLine1 < selectedLine2) { - highlightLines(sourceCodeContainerElement,selectedLine1,selectedLine2); - window.location.hash = "L"+selectedLine1+"-L"+selectedLine2; - } else { - highlightLines(sourceCodeContainerElement,selectedLine2,selectedLine1); - window.location.hash = "L"+selectedLine2+"-L"+selectedLine1; - } - } - } else { - selectedLine1 = number; - selectedLine2 = null; - highlightLines(sourceCodeContainerElement,selectedLine1,selectedLine1); - window.location.hash = "L"+number; - } - } - }); - const lines = highlightSelectedLines(sourceCodeContainerElement); - if(lines.length) { - selectedLine1 = lines[0]; - selectedLine2 = lines[1]; - } - } -} - -function highlightSelectedLines (sourceCodeContainerElement) { - const lineInfo = window.location.hash.slice(1); - if(lineInfo) { - if(lineInfo.includes('-')) { - const lines = lineInfo.split("-"); - const lineNumber1 = parseInt(lines[0].substring(1)); - const lineNumber2 = parseInt(lines[1].substring(1)); - if(lineNumber1 && lineNumber2 && lineNumber1 <= lineNumber2) { - highlightLines(sourceCodeContainerElement,lineNumber1,lineNumber2); - const line = sourceCodeContainerElement.querySelector("td#LC"+lineNumber1); - if(line) { - scrollLineIntoView(line,sourceCodeContainerElement); - } - return [lineNumber1,lineNumber2]; - } - } else { - const lineNumber = parseInt(lineInfo.substring(1)); - if(lineNumber) { - highlightLines(sourceCodeContainerElement,lineNumber,lineNumber); - const line = sourceCodeContainerElement.querySelector("td#LC"+lineNumber); - if(line) { - scrollLineIntoView(line,sourceCodeContainerElement); - } - return [lineNumber]; - } - } - } else { - highlightLines(sourceCodeContainerElement,0,0); - return []; - } -} - -function scrollLineIntoView(lineElement,sourceCodeContainerElement) { - lineElement.parentNode.scrollIntoView(); - const container = sourceCodeContainerElement.parentNode.parentNode; - const windowHeight = container.offsetHeight; - const fullHeight = sourceCodeContainerElement.offsetHeight; - - if(fullHeight - container.scrollTop > windowHeight) { - container.scrollTop = container.scrollTop - (windowHeight/2 - 20); - } -} - -function highlightLines(parentElement,startLine,endLine) { - const lineElements = Array.prototype.slice.call(parentElement.querySelectorAll("td.line-content")); - lineElements.forEach((lineElement) => { - const number = parseInt(lineElement.id.substring(2)); //<td "id"="LC10">...</td> - if(number >= startLine && number <= endLine) { - lineElement.classList.add('highlighted-line'); - } else { - lineElement.classList.remove('highlighted-line'); - } - }); -} - -export { - initializeLineSelection,highlightLines,highlightSelectedLines -} diff --git a/javascript/bower.json b/javascript/bower.json deleted file mode 100644 index 9b3b4a5..0000000 --- a/javascript/bower.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "haskell-code-explorer", - "dependencies": { - "pace": "^1.0.2" - } -} diff --git a/javascript/config/environment.js b/javascript/config/environment.js deleted file mode 100644 index 250c03f..0000000 --- a/javascript/config/environment.js +++ /dev/null @@ -1,64 +0,0 @@ -/* eslint-env node */ -'use strict'; - -module.exports = function(environment) { - let ENV = { - modulePrefix: 'haskell-code-explorer', - environment, - rootURL: '/', - locationType: 'auto', - EmberENV: { - FEATURES: { - // Here you can enable experimental features on an ember canary build - // e.g. 'with-controller': true - }, - EXTEND_PROTOTYPES: { - // Prevent Ember Data from overriding Date.parse. - Date: false - } - }, - pace: { - theme: 'minimal', - color: 'silver', - target: 'body', - elements: { - checkInterval: 100, - selectors: ['body', '.ember-view'] - }, - ajax: false - }, - APP: { - staticUrlPrefix: "/files", - apiUrlPrefix: "/api", - haskellCodeExplorerDirectory: ".haskell-code-explorer", - title: "Haskell Code Explorer" - } - }; - - if (environment === 'development') { - // ENV.APP.LOG_RESOLVER = true; - // ENV.APP.LOG_ACTIVE_GENERATION = true; - // ENV.APP.LOG_TRANSITIONS = true; - // ENV.APP.LOG_TRANSITIONS_INTERNAL = true; - // ENV.APP.LOG_VIEW_LOOKUPS = true; - } - - if (environment === 'test') { - // Testem prefers this... - ENV.locationType = 'none'; - - // keep test console output quieter - ENV.APP.LOG_ACTIVE_GENERATION = false; - ENV.APP.LOG_VIEW_LOOKUPS = false; - - ENV.APP.autoboot = false; - - ENV.APP.rootElement = '#ember-testing'; - } - - if (environment === 'production') { - - } - - return ENV; -}; diff --git a/javascript/config/targets.js b/javascript/config/targets.js deleted file mode 100644 index df7664c..0000000 --- a/javascript/config/targets.js +++ /dev/null @@ -1,9 +0,0 @@ -/* eslint-env node */ -module.exports = { - browsers: [ - 'ie 9', - 'last 1 Chrome versions', - 'last 1 Firefox versions', - 'last 1 Safari versions' - ] -}; diff --git a/javascript/ember-cli-build.js b/javascript/ember-cli-build.js deleted file mode 100644 index 8a2f7bc..0000000 --- a/javascript/ember-cli-build.js +++ /dev/null @@ -1,21 +0,0 @@ -/* eslint-env node */ -'use strict'; - -const EmberApp = require('ember-cli/lib/broccoli/ember-app'); - -module.exports = function(defaults) { - let app = new EmberApp(defaults, { - 'ember-cli-bootstrap-4': { - js: null - }, - 'ember-cli-babel': { - includePolyfill: true - } - }); - app.import('vendor/jquery-ui-1.12.1.custom/jquery-ui.min.js')// only draggable and resizable - app.import('vendor/jquery-ui-1.12.1.custom/jquery-ui.structure.min.css') - app.import('node_modules/jstree/dist/jstree.min.js'); - app.import('node_modules/jstree/dist/themes/default/style.min.css'); - app.import('node_modules/showdown/dist/showdown.min.js'); - return app.toTree(); -}; diff --git a/javascript/package.json b/javascript/package.json deleted file mode 100644 index 5db5645..0000000 --- a/javascript/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "haskell-code-explorer", - "version": "0.0.1", - "description": "Haskell Code Explorer", - "private": false, - "license": "MIT", - "author": "alexwl", - "directories": { - "doc": "doc", - "test": "tests" - }, - "repository": "", - "scripts": { - "build": "ember build --environment=production", - "release": "ember build --environment=production --output-path=release", - "start": "ember server" - }, - "devDependencies": { - "broccoli-asset-rev": "^2.4.5", - "ember-cli": "^3.2.0", - "ember-cli-app-version": "^3.0.0", - "ember-cli-babel": "^6.12.0", - "ember-cli-bootstrap-4": "^0.5.6", - "ember-cli-dependency-checker": "^1.3.0", - "ember-cli-eslint": "^4.2.1", - "ember-cli-htmlbars": "^2.0.1", - "ember-cli-htmlbars-inline-precompile": "^1.0.0", - "ember-cli-inject-live-reload": "^1.4.1", - "ember-cli-pace": "^0.1.0", - "ember-cli-qunit": "^4.1.1", - "ember-cli-sass": "^7.1.7", - "ember-cli-shims": "^1.1.0", - "ember-cli-sri": "^2.1.0", - "ember-cli-uglify": "^1.2.0", - "ember-export-application-global": "^2.0.0", - "ember-load-initializers": "^1.0.0", - "ember-radio-button": "^1.1.1", - "ember-resolver": "^4.0.0", - "ember-sinon": "^1.0.1", - "ember-sinon-qunit": "^2.0.0", - "ember-source": "3.2.0", - "ember-truth-helpers": "^2.0.0", - "express": "^4.16.2", - "glob": "^4.5.3", - "jstree": "3.3.9", - "loader.js": "^4.2.3", - "morgan": "^1.9.0", - "showdown": "^1.8.6" - }, - "engines": { - "node": "^4.5 || 6.* || >= 7.*" - } -} diff --git a/javascript/public/assets/32px.png b/javascript/public/assets/32px.png Binary files differdeleted file mode 100644 index d6fd721..0000000 --- a/javascript/public/assets/32px.png +++ /dev/null diff --git a/javascript/public/assets/40px.png b/javascript/public/assets/40px.png Binary files differdeleted file mode 100644 index 4fc88e4..0000000 --- a/javascript/public/assets/40px.png +++ /dev/null diff --git a/javascript/public/assets/favicon.ico b/javascript/public/assets/favicon.ico Binary files differdeleted file mode 100644 index 37816fd..0000000 --- a/javascript/public/assets/favicon.ico +++ /dev/null diff --git a/javascript/public/assets/haskell.ico b/javascript/public/assets/haskell.ico Binary files differdeleted file mode 100644 index 37816fd..0000000 --- a/javascript/public/assets/haskell.ico +++ /dev/null diff --git a/javascript/public/assets/throbber.gif b/javascript/public/assets/throbber.gif Binary files differdeleted file mode 100644 index cd75035..0000000 --- a/javascript/public/assets/throbber.gif +++ /dev/null diff --git a/javascript/public/robots.txt b/javascript/public/robots.txt deleted file mode 100644 index f591645..0000000 --- a/javascript/public/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# http://www.robotstxt.org -User-agent: * -Disallow: diff --git a/javascript/release/assets/32px-eebaf260766f5e0e773f53d3ea4f3e4d.png b/javascript/release/assets/32px-eebaf260766f5e0e773f53d3ea4f3e4d.png Binary files differdeleted file mode 100644 index d6fd721..0000000 --- a/javascript/release/assets/32px-eebaf260766f5e0e773f53d3ea4f3e4d.png +++ /dev/null diff --git a/javascript/release/assets/40px-51286e68b083696edaf4f9fc577e2a2d.png b/javascript/release/assets/40px-51286e68b083696edaf4f9fc577e2a2d.png Binary files differdeleted file mode 100644 index 4fc88e4..0000000 --- a/javascript/release/assets/40px-51286e68b083696edaf4f9fc577e2a2d.png +++ /dev/null diff --git a/javascript/release/assets/favicon.ico b/javascript/release/assets/favicon.ico Binary files differdeleted file mode 100644 index 37816fd..0000000 --- a/javascript/release/assets/favicon.ico +++ /dev/null diff --git a/javascript/release/assets/haskell-code-explorer-3325784c864ca6662b97be678eeea861.js b/javascript/release/assets/haskell-code-explorer-3325784c864ca6662b97be678eeea861.js deleted file mode 100644 index d66565a..0000000 --- a/javascript/release/assets/haskell-code-explorer-3325784c864ca6662b97be678eeea861.js +++ /dev/null @@ -1,224 +0,0 @@ -"use strict" -define("haskell-code-explorer/app",["exports","ember-resolver","ember-load-initializers","haskell-code-explorer/config/environment"],function(e,t,n,o){Object.defineProperty(e,"__esModule",{value:!0}) -var s -s=Ember.Application.extend({modulePrefix:o.default.modulePrefix,Resolver:t.default}),(0,n.default)(s,o.default.modulePrefix),e.default=s}),define("haskell-code-explorer/components/bottom-panel",["exports"],function(e){function t(e){var t=Math.floor(e.$containerElement.height()/2) -e.$().css({display:"block",top:t+"px"}),e.$topPanelElement.css({height:t+"px"})}function n(e){var t=Math.floor(e.$containerElement.height()/2) -e.$().css({display:"none",height:t+"px"}),e.$topPanelElement.css({height:"100%"})}Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({classNames:["bottom-panel"],didInsertElement:function(){var e=this -this._super.apply(this,arguments),this.$topPanelElement=Ember.$(this.get("topPanelElementId")),this.$containerElement=Ember.$(this.get("containerElementId")),Ember.run.next(this,function(){Ember.$(e.element).resizable({handles:"n",maxHeight:700,minHeight:200,resize:function(t,n){Ember.run.next(e,function(){e.$topPanelElement.css({height:e.$containerElement.height()-n.size.height})})}})})},visibilityObserver:Ember.observer("visible",function(){this.get("visible")?t(this):n(this)}),actions:{close:function(){this.set("visible",!1)}}})}),define("haskell-code-explorer/components/expression-info",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({})}),define("haskell-code-explorer/components/file-tree",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}) -var t=function e(t,o){return o.contents.map(function(o){var s={} -return s.text=o.name,s.data=o,o.path&&(s.id=o.path,s.a_attr={href:"/package/"+t+"/show/"+o.path}),"Dir"===o.tag?(s.children=e(t,o),s.state={opened:n(o)}):o.isHaskellModule?(s.icon="/assets/haskell.ico",s.isHaskellModule=!0):(s.icon="jstree-file",s.isHaskellModule=!1),s})},n=function e(t){return t.contents.some(function(t){return"File"===t.tag?t.isHaskellModule:e(t)})},o=function(e){var t=e.lastIndexOf(".") -return t<1?"":e.substr(t+1)} -e.default=Ember.Component.extend({query:null,sortType:"alphabetical",sortTypeObserver:Ember.observer("sortType",function(){var e=this -Ember.run.next(this,function(){e.jstree.refresh()})}),didInsertElement:function(){var e=this -this._super.apply(this,arguments) -var n=this.element.getElementsByClassName("file-tree")[0],s=this,l=Ember.$(n).jstree({core:{data:t(this.get("packageId"),this.get("directoryTree"))},plugins:["search","sort"],search:{case_insensitive:!0,show_only_matches:!0,show_only_matches_children:!0},sort:function(e,t){var n=this.get_node(e).data,l=this.get_node(t).data -if("alphabetical"===s.get("sortType"))return n.name.localeCompare(l.name) -var i=("Dir"===n.tag?"0":"1")+o(n.name)+n.name,r=("Dir"===l.tag?"0":"1")+o(l.name)+l.name -return i.localeCompare(r)}}) -l.on("select_node.jstree",function(t,n){var o=n.node.data -"Dir"!=o.tag&&e.sendAction("openFile",o.path)}) -var i=l.jstree(!0) -if(this.get("currentFile")){i.select_node(this.get("currentFile")) -var r=i.get_node(this.get("currentFile"),!0)[0] -r&&r.scrollIntoView()}this.jstree=i},currentFileObserver:Ember.observer("currentFile",function(){var e=this -Ember.run.next(function(){e.jstree.deselect_all(),e.jstree.select_node(e.get("currentFile"))})}),queryObserver:Ember.observer("query",function(){this.get("query")?this.jstree.search(this.get("query")):this.jstree.clear_search()}),actions:{hide:function(){this.get("hide")()}}})}),define("haskell-code-explorer/components/haskell-module",["exports","haskell-code-explorer/utils/go-to-definition","haskell-code-explorer/utils/line-selection","haskell-code-explorer/utils/language-extensions"],function(e,t,n,o){function s(e,t){return e.line===t.line?e.column===t.column?0:e.column>t.column?1:-1:e.line>t.line?1:-1}function l(e,t,n){if(e[t.line]&&e[n.line]){if(t.line===n.line)return e[t.line].slice(t.column-1,n.column-1) -for(var o=e[t.line],s=[],l=t.line+1;l<n.line;l++)s.push(e[l]) -var i=e[n.line],r=Math.min(t.column,s.concat([i]).map(function(e){return e.search(/\S/)}).reduce(function(e,t){return Math.min(e,t)})) -return o.slice(t.column-1,o.length)+"\n"+s.map(function(e){return e.slice(r,e.length)}).join("\n")+(s.length?"\n":"")+i.slice(r,n.column-1)}return null}function i(e,t){t?e.classList.add("highlighted-identifier"):e.classList.remove("highlighted-identifier")}function r(e,t,n){if(t.id){Array.prototype.slice.call(e.querySelectorAll("span[id='"+t.id+"']")).forEach(function(e){i(e,n)})}else i(t,n)}function a(e,t){return Array.from(e).map(function(e){return parseInt(e)}).reduce(function(e,n){return(10*e+n)%t},0)}function c(e,t,n){return"External"===n.sort&&(n.locationInfo.modulePath===t||n.locationInfo.moduleName===e)}function d(e,t,n,o,s,l){var i=n[e.dataset.occurrence],r=s.defaultColor,d=void 0 -if(i)if("TypeId"===i.sort.tag)r=s.typeColor -else if("HsLit"===i.description||"HsOverLit"===i.description||"LitPat"===i.description||"NPat"===i.description||"NPlusKPat"===i.description||"OverLit"===i.description)r=s.literalColor -else{var u=t[e.dataset.identifier] -if(u)if(c(l,o,u))r=s.topLevelIdFromCurrentModule -else if("Internal"===u.sort&&"ExactLocation"===u.locationInfo.tag){var p=a(e.id,s.localIdentifierColor.length) -r=s.localIdentifierColor[p],d="bold"}}return"color:"+r+";"+(d?"font-weight:"+d:"")+";"+(i.isBinder?"text-decoration:underline;":"")}function u(e,n){var o=Array.prototype.slice.call(e.querySelectorAll("span.identifier")) -if(o.length>0){var s=null -o.forEach(function(o){var l=d(o,n.get("identifiers"),n.get("occurrences"),n.get("path"),n.get("colorTheme"),n.get("name")) -o.style.cssText=l,o.onmouseup=function(e){if(s&&clearTimeout(s),window.getSelection().isCollapsed){var l=n.get("identifiers")[o.dataset.identifier],i=n.get("occurrences")[o.dataset.occurrence],r=parseInt(o.parentNode.dataset.line) -"ModuleId"===i.sort.tag?(0,t.goToDefinition)(n.get("store"),i.sort.contents,e.which,r):!l||1!==e.which&&2!==e.which||(i.isBinder?"External"===l.sort&&n.get("findReferences")(n.get("packageId"),l.externalId,l.demangledOccName,l.locationInfo):(0,t.goToDefinition)(n.get("store"),l.locationInfo,e.which,r))}},o.onmouseover=function(){r(e,o,!0),s&&clearTimeout(s),s=setTimeout(function(){Ember.run.next(n,function(){var e=n.get("identifiers")[o.dataset.identifier],t=n.get("occurrences")[o.dataset.occurrence] -console.log(t),console.log(e),n.set("selectedIdentifier",o),n.set("currentLineNumber",parseInt(o.parentNode.dataset.line)||1),n.set("identifierInfo",e),n.set("identifierOccurrence",t),n.set("hasSelectedExpression",!1),n.set("isHoveredOverIdentifier",!0)})},250)},o.onmouseout=function(){r(e,o,!1),s&&clearTimeout(s),s=setTimeout(function(){Ember.run.next(n,function(){n.set("isHoveredOverIdentifier",!1)})},250)}}),n.timer=s}}function p(e,t){return e===t||!!(16&e.compareDocumentPosition(t))}function h(e,t){var n=Array.prototype.slice.call(e.querySelectorAll("td.line-content")) -if(n.length>0){var o=[""] -n.forEach(function(e){o.push(e.textContent)}) -var i=["#text","SPAN","TD"],r=!1,a=!1,c=function(){Ember.run.next(function(){if(!r&&!a){a=!0,setTimeout(function(){a=!1},400),t.set("hasSelectedExpression",!1) -var n=window.getSelection() -if(n.anchorNode&&n.focusNode&&p(e,n.anchorNode)&&p(e,n.focusNode)&&-1!==i.indexOf(n.anchorNode.nodeName)&&-1!==i.indexOf(n.focusNode.nodeName)&&!n.isCollapsed){var c=document.createRange() -c.setStart(n.anchorNode,n.anchorOffset),c.setEnd(n.focusNode,n.focusOffset) -var d=c.collapsed,u=void 0,h=void 0,m=void 0,f=void 0 -d?(u=n.focusNode,h=n.focusOffset,m=n.anchorNode,f=n.anchorOffset):(u=n.anchorNode,h=n.anchorOffset,m=n.focusNode,f=n.focusOffset) -var g=void 0,b=void 0,k=void 0,x=void 0,y=void 0 -if("#text"===u.nodeName){var w=u.parentNode -if(b=parseInt(w.dataset.start)+h,g=parseInt(w.parentNode.dataset.line),h===u.textContent.length&&null===w.nextSibling){for(var v=u.parentNode.parentNode.parentNode,_=v.nextSibling;""===_.children[1].textContent;)_=_.nextSibling -y=_.children[1].children[0]}else y=0!==h&&w.nextSibling?w.nextSibling:w}else if("SPAN"===u.nodeName){b=1,g=parseInt(u.parentNode.dataset.line) -for(var E=u.parentNode.parentNode,I=E.nextSibling;""===I.children[1].textContent;)I=I.nextSibling -y=I.children[1].children[0]}else if("TD"===u.nodeName){if(h>0){var P=u.children[h-1] -b=parseInt(P.dataset.start)}else b=1 -g=parseInt(u.id.slice(2)),y=u.children[0]}if("#text"===m.nodeName)x=parseInt(m.parentNode.dataset.start)+f,k=parseInt(m.parentNode.parentNode.dataset.line) -else if("SPAN"===m.nodeName)x=1,k=parseInt(m.parentNode.dataset.line) -else if("TD"===m.nodeName){if(f>0){var C=m.children[f-1] -x=parseInt(C.dataset.start)}else x=1 -k=parseInt(m.id.slice(2))}var T=t.get("store").loadExpressions(t.get("packageId"),t.get("path"),g,b,k,x) -r=!0,T.then(function(e){Ember.run.next(function(){if(e&&e.length>0){e.sort(function(e,t){return s(e.srcSpan.start,t.srcSpan.start)<=0&&s(e.srcSpan.end,t.srcSpan.end)>=0?-1:1}) -var n=e.reduce(function(e,t){var n=Ember.copy(t),s=l(o,t.srcSpan.start,t.srcSpan.end) -return s?(n.sourceCode=s,e.concat(n)):e},[]) -n.length>0&&(t.set("selectedIdentifier",y),t.set("expressions",n),t.set("currentLineNumber",parseInt(y.parentNode.dataset.line)||1),t.set("hasSelectedExpression",!0))}r=!1})})}}})} -e.addEventListener("mouseup",c),t._onmouseup=c}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({store:Ember.inject.service("store"),selectedIdentifier:null,isHoveredOverIdentifier:!1,hasSelectedExpression:!1,showDeclarations:!0,showDeclarationsLabel:Ember.computed("showDeclarations",function(){return this.get("showDeclarations")?"Hide":"Show"}),queryObserver:Ember.observer("query",function(){var e=this -Ember.run.debounce(this,function(){var t=new RegExp(e.get("query"),"i"),n=e.get("declarations").filter(function(e){return-1!=e.name.search(t)}) -Ember.run.next(function(){e.set("filteredDeclarations",n)})},300)}),identifierLocationInfo:Ember.computed("identifierInfo","identifierOccurrence",function(){var e=this.get("identifierOccurrence"),t=this.get("identifierInfo") -if(e)return"ModuleId"===e.sort.tag?e.sort.contents:t?t.locationInfo:null}),themeObserver:Ember.observer("colorTheme",function(){var e=this -Ember.run.next(this,function(){e.cleanup(),e.didInsertElement()})}),fileObserver:Ember.observer("path",function(){var e=this -Ember.run.next(this,function(){e.cleanup(),e.didInsertElement()})}),cleanup:function(){this.timer&&clearTimeout(this.timer),this._onhashchange&&window.removeEventListener("hashchange",this._onhashchange),this._onkeydown&&document.removeEventListener("keydown",this._onkeydown),this._onkeyup&&document.removeEventListener("keyup",this._onkeyup),this._onmouseup&&this.sourceCodeContainerElement.removeEventListener("mouseup",this._onmouseup),this.set("selectedIdentifier",null),this.set("isHoveredOverIdentifier",!1),this.set("hasSelectedExpression",!1),this.set("showDeclarations",!0)},didReceiveAttrs:function(){this.set("filteredDeclarations",this.get("declarations"))},didInsertElement:function(){var e=this -this._super.apply(this,arguments) -var t=this.element.querySelector(".source-code-container") -t.innerHTML=this.get("html"),this.sourceCodeContainerElement=t -for(var s=this.sourceCodeContainerElement.querySelectorAll("tr > td:nth-child(2)"),l=s.length,i=0;i<l;){var r=s.item(i),a=r.textContent -if(a){if(0===a.indexOf("module "))break -r.innerHTML=(0,o.addLinksToLanguageExtensionsDocs)(a)}i+=1}this.element.parentNode.scrollTop=0 -var c=this.element.querySelector(".declarations-content") -this.set("query",""),c&&(c.scrollTop=0),Ember.run.next(this,function(){u(t,e),(0,n.initializeLineSelection)(t,e),h(t,e)})},willDestroyElement:function(){this.cleanup()},actions:{goToLine:function(e){window.location.hash="L"+e},toggleShowDeclarations:function(){this.toggleProperty("showDeclarations")}}})}),define("haskell-code-explorer/components/identifier-info",["exports","haskell-code-explorer/utils/go-to-definition"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({store:Ember.inject.service("store"),downloadedDocumentation:null,didInsertElement:function(){var e=this,n=function(n){if(n.target.dataset.location){var o=void 0 -try{o=JSON.parse(n.target.dataset.location)}catch(e){console.log(e)}o&&(0,t.goToDefinition)(e.get("store"),o,n.which,e.get("currentLineNumber"))}} -this.element.addEventListener("mouseup",n),this._onmouseup=n},willDestroyElement:function(){this._onmouseup&&this.element.removeEventListener("mouseup",this._onmouseup)},isNaughtyRecSel:Ember.computed("identifierInfo",function(){var e=this.get("identifierInfo") -return!!e&&"RecSelIdNaughty"===e.details}),isExternalIdentifier:Ember.computed("identifierInfo",function(){var e=this.get("identifierInfo") -return!!e&&"External"===e.sort}),identifierObserver:Ember.observer("identifierInfo",function(){var e=this -this.set("downloadedDocumentation","") -var t=this.get("identifierInfo") -if(t){var n=t.locationInfo -if("ApproximateLocation"===n.tag){var o=n.packageId.name+"-"+n.packageId.version,s=t -this.get("store").loadDefinitionSite(o,n.moduleName,n.componentId,n.entity,n.name).then(function(t){Ember.run.next(e,function(){s===e.get("identifierInfo")&&e.set("downloadedDocumentation",t.documentation)})}).catch(function(){e.get("store").loadHoogleDocs(o,n.moduleName,n.entity,n.name).then(function(t){Ember.run.next(e,function(){s===e.get("identifierInfo")&&e.set("downloadedDocumentation",t)})})})}}})})}),define("haskell-code-explorer/components/identifier-name",["exports","haskell-code-explorer/utils/go-to-definition"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({store:Ember.inject.service("store"),name:Ember.computed("identifierElement",function(){var e=this.get("identifierElement") -if(e)return e.innerText}),style:Ember.computed("identifierElement",function(){var e=this.get("identifierElement") -if(e)return new Ember.String.htmlSafe("color:"+e.style.color)}),locationInfo:Ember.computed("identifierInfo","identifierOccurrence",function(){return"ModuleId"===this.get("identifierOccurrence.sort.tag")?this.get("identifierOccurrence.sort.contents"):this.get("identifierInfo.locationInfo")}),location:Ember.computed("locationInfo",function(){var e=this.get("locationInfo") -return e?"ExactLocation"===e.tag?e.modulePath:"ApproximateLocation"===e.tag?"Mod"===e.entity?e.packageId.name+"-"+e.packageId.version:e.packageId.name+"-"+e.packageId.version+" "+e.moduleName:e.contents:""}),isExternalIdentifier:Ember.computed("identifierInfo",function(){return"External"===this.get("identifierInfo.sort")}),actions:{goToDefinition:function(e){return(0,t.goToDefinition)(this.get("store"),this.get("locationInfo"),e.which,this.get("currentLineNumber")),!1},findReferences:function(e,t){this.get("findReferences")(t,e.externalId,e.demangledOccName,e.locationInfo)}}})}),define("haskell-code-explorer/components/infinite-list",["exports"],function(e){function t(e){e.set("renderedElements",e.get("elements").slice(0,e.get("perPage"))),n=1}Object.defineProperty(e,"__esModule",{value:!0}) -var n=void 0,o=!1 -e.default=Ember.Component.extend({renderedElements:[],init:function(){this._super.apply(this,arguments),t(this)},elementsObserver:Ember.observer("elements",function(){t(this) -var e=document.getElementById(this.get("containerElementId")) -e&&(e.scrollTop=0)}),didInsertElement:function(){var e=document.getElementById(this.get("containerElementId")) -if(e){var t=this -e.onscroll=function(){var s=t.get("perPage"),l=t.get("elements") -!o&&n*s<l.length&&e.scrollTop+e.offsetHeight>t.element.offsetHeight-100&&(o=!0,Ember.run.next(t,function(){var e=l.slice(n*s,(n+1)*s) -t.get("renderedElements").pushObjects(e),n++,o=!1}))}}}})}),define("haskell-code-explorer/components/info-window",["exports"],function(e){function t(e){var t=e.get("targetElement") -if(t){var n=e.element.offsetHeight,o=t.offsetHeight,s=t.parentNode,l=document.querySelector("#"+e.get("containerElementId")),i=t.getBoundingClientRect().top,r=void 0 -r=l?l.getBoundingClientRect().top:0 -var a=void 0 -a=i<n+r?t.offsetTop+s.offsetTop+o+10+"px":t.offsetTop+s.offsetTop-n+"px" -var c=t.offsetLeft+s.offsetLeft+"px" -e.$().css({top:a,left:c})}else e.set("isPinned",!1)}Object.defineProperty(e,"__esModule",{value:!0}) -var n=!1,o=!1 -e.default=Ember.Component.extend({classNames:["info-window-container"],attributeBindings:["hidden"],isPinned:!1,isFocused:!1,didInsertElement:function(){var e=this,t=Ember.$(e.element.querySelector(".info-window-header")),s=Ember.$(e.element.querySelector(".info-window-content")),l=Ember.$(e.element.querySelector(".info-window")),i=Ember.$(e.element) -this.$headerElement=t,this.$contentElement=s,this.$().resizable({handles:"n,w",minHeight:80,minWidth:400,start:function(){n=!0},stop:function(){n=!1},resize:function(){var e=i.height() -l.css({height:e+2+"px"}),s.css({"max-height":e-t.outerHeight(!0)+"px"})}}),this.$().draggable({containment:"#"+this.get("containerElementId"),handle:t,start:function(){o=!0},stop:function(){o=!1}})},mouseEnter:function(){this.get("hasSelectedExpression")||this.set("isFocused",!0)},mouseLeave:function(e){var t=document.elementFromPoint(e.clientX,e.clientY) -t&&t.classList.contains("link")||n||o||this.get("isPinned")||this.get("hasSelectedExpression")||this.set("isFocused",!1)},hidden:Ember.computed("isHoveredOverIdentifier","isFocused","hasSelectedExpression","isPinned",function(){return this.$contentElement&&this.$contentElement.scrollTop(0),!(this.get("isPinned")||this.get("isFocused")||this.get("isHoveredOverIdentifier")||this.get("hasSelectedExpression"))}),didUpdate:function(){t(this)},actions:{close:function(){this.set("isPinned",!1),this.set("isFocused",!1),this.set("hasSelectedExpression",!1)},pin:function(){this.toggleProperty("isPinned")}}})}),define("haskell-code-explorer/components/input-with-autocomplete",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({store:Ember.inject.service("store"),highlightedItemIndex:-1,items:[],query:null,didInsertElement:function(){var e=this,t=Ember.$(this.element).find(".search-input"),n=Ember.$(this.element).find(".autocomplete-container") -this.$input=t,this.$autocompleteContainer=n -var o=t.width()+300 -n.css({width:o+"px",top:t.outerHeight()}),t.keyup(function(t){13===t.which?e.onEnter():27===t.which?e.onEsc():40===t.which?e.onDown():38===t.which&&e.onUp()}),t.focusin(function(){e.showAutocompleteList()}),t.focusout(function(){Ember.run.later(function(){e.hideAutocompleteList()},100)})},willDestroyElement:function(){this._super.apply(this,arguments),this.$input.off("keyup"),this.$input.off("focusin"),this.$input.off("focusout")},onEnter:function(){if(-1!==this.get("highlightedItemIndex")){var e=this.get("items")[this.get("highlightedItemIndex")] -e&&(this.hideAutocompleteList(),this.get("selectItem")(e))}else this.hideAutocompleteList(),this.get("onSubmit")(this.get("query"))},onEsc:function(){this.hideAutocompleteList()},onDown:function(){this.showAutocompleteList() -var e=this.get("highlightedItemIndex"),t=this.get("items"),n=t.length -n>0&&(-1!==e?e===n-1?this.set("highlightedItemIndex",0):this.set("highlightedItemIndex",e+1):this.set("highlightedItemIndex",0))},onUp:function(){this.showAutocompleteList() -var e=this.get("highlightedItemIndex"),t=this.get("items"),n=t.length -n>0&&(-1!==e?0===e?this.set("highlightedItemIndex",n-1):this.set("highlightedItemIndex",e-1):this.set("highlightedItemIndex",n-1))},hideAutocompleteList:function(){this.set("highlightedItemIndex",-1),this.$autocompleteContainer.css({display:"none"})},showAutocompleteList:function(){""!==this.get("query")&&this.$autocompleteContainer.css({display:"block"})},searchUrlObserver:Ember.observer("createSearchUrlFunction",function(){this.notifyPropertyChange("query")}),queryObserver:Ember.observer("query",function(){var e=this -if(this.get("query")){var t=this.get("maxItems")?this.get("maxItems"):10,n=this.get("createSearchUrlFunction")(this.get("query"))+"?per_page="+t -Ember.run.debounce(this,function(){e.get("store").loadFromUrlPaginated(n).then(function(t){Ember.run.next(function(){e.set("items",t.items)})})},400),this.showAutocompleteList()}else this.hideAutocompleteList(),this.set("items",[])}),actions:{onSubmit:function(){this.hideAutocompleteList(),this.get("onSubmit")(this.get("query"))},goToDefinition:function(e){this.hideAutocompleteList(),this.get("selectItem")(e)}}})}),define("haskell-code-explorer/components/instance-info",["exports","haskell-code-explorer/utils/go-to-definition"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({store:Ember.inject.service("store"),style:Ember.computed("nestedLevel",function(){return new Ember.String.htmlSafe("margin-left :"+10*this.get("nestedLevel")+"px")}),nextNestedLevel:Ember.computed("nestedLevel",function(){return this.get("nestedLevel")+1}),actions:{goToDefinition:function(e){return(0,t.goToDefinition)(this.get("store"),this.get("instance.location"),e.which,this.get("currentLineNumber")),!1}}})}),define("haskell-code-explorer/components/labeled-radio-button",["exports","ember-radio-button/components/labeled-radio-button"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})}),define("haskell-code-explorer/components/paginated-list",["exports"],function(e){function t(e,t,n){e.loadFromUrlPaginated(n).then(function(e){Ember.run.next(function(){t.set("total",e.total),t.set("items",e.items),t.set("first",e.linkHeader.first),t.set("next",e.linkHeader.next),t.set("prev",e.linkHeader.prev),t.set("last",e.linkHeader.last) -var o=n.match(/(&|\?)page=(\d+)/),s=n.match(/(&|\?)per_page=(\d+)/),l=o?o[2]:1,i=s?s[2]:20;(e.linkHeader.next||e.linkHeader.prev)&&(t.set("firstItemOnPage",(l-1)*i+1),e.linkHeader.last?t.set("lastItemOnPage",l*i):t.set("lastItemOnPage",e.total))})})}Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({store:Ember.inject.service("store"),init:function(){this._super.apply(this,arguments),this.get("url")&&t(this.get("store"),this,this.get("url"))},urlObserver:Ember.observer("url",function(){t(this.get("store"),this,this.get("url")),this.element.querySelector(".paginated-list-content").scrollTop=0}),actions:{update:function(e){this.element.querySelector(".paginated-list-content").scrollTop=0,t(this.get("store"),this,e)}}})}),define("haskell-code-explorer/components/radio-button-input",["exports","ember-radio-button/components/radio-button-input"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})}),define("haskell-code-explorer/components/radio-button",["exports","ember-radio-button/components/radio-button"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})}),define("haskell-code-explorer/components/resizable-panel",["exports"],function(e){function t(e,t){e.$alsoResizeElement.css({left:0}),e.$().css({width:0}),e.set("hidden",!0),e.$(".show-left-panel-button").show(),t&&e.set("hiddenByUser",!0)}function n(e,t){e.$alsoResizeElement.css({left:300}),e.$().css({width:300}),e.set("hidden",!1),e.$(".show-left-panel-button").hide(),t&&e.set("hiddenByUser",!1)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({hidden:!1,hiddenByUser:!1,didInsertElement:function(){var e=this -this._super.apply(this,arguments),Ember.run.next(this,function(){var o=function(){if(!e.get("hiddenByUser")){var o=window.innerWidth -!e.get("hidden")&&o<700?t(e,!1):e.get("hidden")&&o>700&&n(e,!1)}} -e._onresize=o,window.addEventListener("resize",o) -var s=Ember.$(e.get("alsoResizeElementId")) -Ember.$(e.element).resizable({maxWidth:800,minWidth:200,handles:"e",resize:function(t,n){Ember.run.next(e,function(){s.css({left:n.size.width})})}}),e.$alsoResizeElement=s,window.innerWidth<700&&(e.set("hidden",!0),t(e,!1))})},hideButtonLabel:Ember.computed("hidden",function(){return this.get("hidden")?">":"<"}),willDestroyElement:function(){this._onresize&&window.removeEventListener("resize",this._onresize)},actions:{hide:function(){this.get("hidden")?n(this,!0):t(this,!0)}}})}),define("haskell-code-explorer/components/text-file",["exports","haskell-code-explorer/utils/line-selection"],function(e,t){function n(e){return e.replace(/[\"&<>]/g,function(e){return{'"':""","&":"&","<":"<",">":">"}[e]})}function o(e){var t=0 -return"<table class='source-code'><tbody>"+e.split("\n").map(function(e){return"<tr><td id='LN"+ ++t+"' class='line-number'>"+t+"</td><td id='LC"+t+"' class='line-content'>"+n(e)+"</td></tr>"}).join("")+"</tbody></table>"}Object.defineProperty(e,"__esModule",{value:!0}) -var s=["markdown","mdown","mkdn","mkd","md"] -e.default=Ember.Component.extend({isMarkdown:Ember.computed("path",function(){var e=this.get("path").split(".").pop() -return s.any(function(t){return e===t})}),html:Ember.computed("path","isMarkdown",function(){return this.get("isMarkdown")?this.markdownConverter.makeHtml(this.get("text")):o(this.get("text"))}),init:function(){this._super.apply(this,arguments),this.markdownConverter=new showdown.Converter},didInsertElement:function(){var e=this.element.querySelector(".source-code-container");(0,t.initializeLineSelection)(e,this),this.element.parentNode.scrollTop=0},willDestroyElement:function(){this.cleanup()},cleanup:function(){this._onhashchange&&window.removeEventListener("hashchange",this._onhashchange),this._onkeydown&&document.removeEventListener("keydown",this._onkeydown),this._onkeyup&&document.removeEventListener("keyup",this._onkeyup)},pathObserver:Ember.observer("path",function(){var e=this -Ember.run.next(this,function(){e.cleanup(),e.didInsertElement()})})})}),define("haskell-code-explorer/components/type-component",["exports","haskell-code-explorer/utils/go-to-definition"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({store:Ember.inject.service("store"),tagName:"span",classNames:["type-component"],contextMenu:function(){return this.get("identifiers")&&this.get("internalId")&&this.set("expanded",!0),!1},linkClass:Ember.computed("identifierInfo",function(){return this.get("identifierInfo")?"link":""}),identifierInfo:Ember.computed("internalId",function(){return this.get("internalId")?this.get("identifiers")[this.get("internalId")]:null}),actions:{onmouseup:function(e){if(this.get("identifierInfo")&&3!==e.which){var n=this.get("identifierInfo").locationInfo -return(0,t.goToDefinition)(this.get("store"),n,e.which,this.get("currentLineNumber")),!1}}}})}),define("haskell-code-explorer/components/type-signature-text",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({tagName:"span"})}),define("haskell-code-explorer/components/type-signature",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({tagName:"span",expandTypeSynonyms:!1,expandTypeSynonymsLabel:Ember.computed("expandTypeSynonyms",function(){return this.get("expandTypeSynonyms")?"Show type synonyms":"Expand type synonyms"}),components:Ember.computed("type","expandTypeSynonyms",function(){return this.get("expandTypeSynonyms")&&this.get("type.componentsExpanded")?this.get("type.componentsExpanded"):this.get("type.components")}),typeObserver:Ember.observer("type",function(){this.set("expandTypeSynonyms",!1)}),actions:{toggleExpandTypeSynonyms:function(){this.toggleProperty("expandTypeSynonyms")}}})}),define("haskell-code-explorer/controllers/application",["exports","haskell-code-explorer/utils/color-themes"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Controller.extend({settings:Ember.inject.service("settings"),themes:Object.values(t.themes),init:function(){this._super.apply(this,arguments),(0,t.updateColorThemeCss)(this.get("settings").get("colorTheme"))},currentTheme:Ember.computed("settings",function(){return this.get("settings.colorTheme.id")}),actions:{themeChanged:function(e){var n=t.themes[e] -this.get("settings").set("colorTheme",n),(0,t.updateColorThemeCss)(n)}}})}),define("haskell-code-explorer/controllers/package",["exports","haskell-code-explorer/utils/go-to-definition","haskell-code-explorer/utils/api-urls"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Controller.extend({store:Ember.inject.service("store"),currentFile:null,loadItemsFunction:null,query:null,searchMode:"currentPackage",createSearchUrlFunction:Ember.computed("searchMode","model",function(){var e=this.get("model.id") -return"currentPackage"===this.get("searchMode")?function(t){return n.urls.identifierSearchUrl(e,t)}:function(e){return n.urls.globalIdentifiersUrl(e)}}),actions:{searchIdentifier:function(e){e&&(this.set("currentFile",null),document.title=this.get("model.id"),"currentPackage"===this.get("searchMode")?this.transitionToRoute("package.search",e):this.transitionToRoute("search",e))},showIdentifier:function(e){return(0,t.goToDefinition)(this.get("store"),e.locationInfo,1,null),!1}}})}),define("haskell-code-explorer/controllers/package/index",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Controller.extend({modulesFiltered:Ember.computed("model","query",function(){var e=this.get("query"),t=Object.keys(this.get("model.modules")).sort() -if(e){var n=new RegExp(e,"i") -return t.filter(function(e){return-1!=e.search(n)})}return t})})}),define("haskell-code-explorer/controllers/package/search",["exports","haskell-code-explorer/utils/go-to-definition"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Controller.extend({store:Ember.inject.service("store"),actions:{goToDefinition:function(e,n){return(0,t.goToDefinition)(this.get("store"),e,n.which,null),!1}}})}),define("haskell-code-explorer/controllers/package/show/file",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Controller.extend({settings:Ember.inject.service("settings"),actions:{findReferences:function(e,t,n,o){this.send("updateReferences",e,t,n,o)}}})}),define("haskell-code-explorer/controllers/packages",["exports","haskell-code-explorer/utils/go-to-definition"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Controller.extend({store:Ember.inject.service("store"),queryObserver:Ember.observer("query",function(){var e=this -Ember.run.debounce(this,function(){var t=new RegExp(e.get("query"),"i"),n=e.get("model").filter(function(e){return-1!=e.name.search(t)}) -Ember.run.next(function(){e.set("packages",n)})},300)}),actions:{searchIdentifier:function(e){e&&(document.title="Haskell code explorer",this.transitionToRoute("search",e))},showIdentifier:function(e){return(0,t.goToDefinition)(this.get("store"),e.locationInfo,1,null),!1}}})}),define("haskell-code-explorer/controllers/search",["exports","haskell-code-explorer/utils/go-to-definition"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Controller.extend({store:Ember.inject.service("store"),actions:{goToDefinition:function(e,n){return(0,t.goToDefinition)(this.get("store"),e,n.which,null),!1},searchIdentifier:function(e){e&&(document.title="Haskell code explorer",this.transitionToRoute("search",e))},showIdentifier:function(e){return(0,t.goToDefinition)(this.get("store"),e.locationInfo,1,null),!1}}})}),define("haskell-code-explorer/helpers/and",["exports","ember-truth-helpers/helpers/and"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"and",{enumerable:!0,get:function(){return t.and}})}),define("haskell-code-explorer/helpers/app-version",["exports","haskell-code-explorer/config/environment","ember-cli-app-version/utils/regexp"],function(e,t,n){function o(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{} -return t.hideSha?s.match(n.versionRegExp)[0]:t.hideVersion?s.match(n.shaRegExp)[0]:s}Object.defineProperty(e,"__esModule",{value:!0}),e.appVersion=o -var s=t.default.APP.version -e.default=Ember.Helper.helper(o)}),define("haskell-code-explorer/helpers/eq",["exports","ember-truth-helpers/helpers/equal"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"equal",{enumerable:!0,get:function(){return t.equal}})}) -define("haskell-code-explorer/helpers/gt",["exports","ember-truth-helpers/helpers/gt"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"gt",{enumerable:!0,get:function(){return t.gt}})}),define("haskell-code-explorer/helpers/gte",["exports","ember-truth-helpers/helpers/gte"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"gte",{enumerable:!0,get:function(){return t.gte}})}),define("haskell-code-explorer/helpers/is-array",["exports","ember-truth-helpers/helpers/is-array"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"isArray",{enumerable:!0,get:function(){return t.isArray}})}),define("haskell-code-explorer/helpers/is-equal",["exports","ember-truth-helpers/helpers/is-equal"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"isEqual",{enumerable:!0,get:function(){return t.isEqual}})}),define("haskell-code-explorer/helpers/lt",["exports","ember-truth-helpers/helpers/lt"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"lt",{enumerable:!0,get:function(){return t.lt}})}),define("haskell-code-explorer/helpers/lte",["exports","ember-truth-helpers/helpers/lte"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"lte",{enumerable:!0,get:function(){return t.lte}})}),define("haskell-code-explorer/helpers/not-eq",["exports","ember-truth-helpers/helpers/not-equal"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"notEq",{enumerable:!0,get:function(){return t.notEq}})}),define("haskell-code-explorer/helpers/not",["exports","ember-truth-helpers/helpers/not"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"not",{enumerable:!0,get:function(){return t.not}})}),define("haskell-code-explorer/helpers/or",["exports","ember-truth-helpers/helpers/or"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"or",{enumerable:!0,get:function(){return t.or}})}),define("haskell-code-explorer/helpers/xor",["exports","ember-truth-helpers/helpers/xor"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"xor",{enumerable:!0,get:function(){return t.xor}})}),define("haskell-code-explorer/initializers/app-version",["exports","ember-cli-app-version/initializer-factory","haskell-code-explorer/config/environment"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}) -var o=void 0,s=void 0 -n.default.APP&&(o=n.default.APP.name,s=n.default.APP.version),e.default={name:"App Version",initialize:(0,t.default)(o,s)}}),define("haskell-code-explorer/initializers/container-debug-adapter",["exports","ember-resolver/resolvers/classic/container-debug-adapter"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"container-debug-adapter",initialize:function(){var e=arguments[1]||arguments[0] -e.register("container-debug-adapter:main",t.default),e.inject("container-debug-adapter:main","namespace","application:main")}}}),define("haskell-code-explorer/initializers/export-application-global",["exports","haskell-code-explorer/config/environment"],function(e,t){function n(){var e=arguments[1]||arguments[0] -if(!1!==t.default.exportApplicationGlobal){var n -if("undefined"!=typeof window)n=window -else if("undefined"!=typeof global)n=global -else{if("undefined"==typeof self)return -n=self}var o,s=t.default.exportApplicationGlobal -o="string"==typeof s?s:Ember.String.classify(t.default.modulePrefix),n[o]||(n[o]=e,e.reopen({willDestroy:function(){this._super.apply(this,arguments),delete n[o]}}))}}Object.defineProperty(e,"__esModule",{value:!0}),e.initialize=n,e.default={name:"export-application-global",initialize:n}}),define("haskell-code-explorer/router",["exports","haskell-code-explorer/config/environment"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}) -var n=Ember.Router.extend({location:t.default.locationType}) -n.map(function(){this.route("packages",{path:""}),this.route("search",{path:"/search/:query"}),this.route("package",{path:"/package/:packageId"},function(){this.route("show",function(){this.route("file",{path:"*filePath"},function(){})}),this.route("search",{path:"/search/:query"})}),this.route("bad-url",{path:"/*badurl"})}),e.default=n}),define("haskell-code-explorer/routes/application",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({})}),define("haskell-code-explorer/routes/package",["exports","haskell-code-explorer/utils/api-urls"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({store:Ember.inject.service("store"),model:function(e){var t=this -return this.get("store").loadPackage(e.packageId).catch(function(e){console.log(e),t.transitionTo("/package-not-found")})},setupController:function(e,t){this._super(e,t),e.set("bottomPanelVisible",!1)},actions:{openFile:function(e){this.transitionTo("package.show.file",e)},fileOpened:function(e){this.get("controller")&&this.set("controller.currentFile",e)},updateReferences:function(e,n,o,s,l){var i=this -this.get("store").loadGlobalReferences(n).then(function(t){Ember.run.next(i,function(){i.set("controller.globalReferences",t),l||Ember.run.schedule("afterRender",function(){var t=document.getElementById("references-package-"+e) -t&&t.scrollIntoView()})})}),this.set("controller.packageId",e),this.set("controller.externalId",n),this.set("controller.occName",o),this.set("controller.locationInfo",s),this.set("controller.bottomPanelVisible",!0),this.set("controller.referencesUrl",t.urls.referencesUrl(e,n)+"?per_page=50")},didTransition:function(){return document.title=this.currentModel.id,!0}}})}),define("haskell-code-explorer/routes/package/index",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({afterModel:function(e,t){t.send("fileOpened",null)}})}),define("haskell-code-explorer/routes/package/search",["exports","haskell-code-explorer/utils/api-urls","haskell-code-explorer/utils/go-to-definition"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({store:Ember.inject.service("store"),model:function(e){return{query:e.query,url:t.urls.identifierSearchUrl(this.modelFor("package").id,e.query)+"?per_page=20"}},afterModel:function(){var e=this,t=function(t){if(t.target.dataset.location){var o=void 0 -try{o=JSON.parse(t.target.dataset.location)}catch(e){console.log(e)}o&&(0,n.goToDefinition)(e.get("store"),o,t.which)}} -this._onmouseup=t,document.addEventListener("mouseup",t)},deactivate:function(){this._onmouseup&&document.removeEventListener("mouseup",this._onmouseup)}})}),define("haskell-code-explorer/routes/package/show/file",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({store:Ember.inject.service(),model:function(e){var t=this,n=this.modelFor("package") -return n.modules[e.filePath]?this.get("store").loadHaskellModule(n.id,e.filePath).catch(function(e){console.log(e),t.transitionTo("/not-found")}):this.get("store").loadFile(n.id,e.filePath).then(function(e){return document.title=n.id,e}).catch(function(e){console.log(e),t.transitionTo("/not-found")})},afterModel:function(e){document.title=e.id+" - "+this.modelFor("package").id},actions:{didTransition:function(){this.send("fileOpened",this.currentModel.id)}}})}),define("haskell-code-explorer/routes/package/show/index",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({afterModel:function(e,t){t.send("fileOpened",null)}})}),define("haskell-code-explorer/routes/packages",["exports","haskell-code-explorer/utils/api-urls","haskell-code-explorer/config/environment"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({model:function(){return Ember.$.getJSON(t.urls.packagesUrl)},setupController:function(e,n){this._super(e,n),e.set("packages",n),e.set("createSearchUrlFunction",function(e){return t.urls.globalIdentifiersUrl(e)})},afterModel:function(){document.title=n.default.APP.title}})}),define("haskell-code-explorer/routes/search",["exports","haskell-code-explorer/utils/api-urls","haskell-code-explorer/utils/go-to-definition"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Route.extend({store:Ember.inject.service("store"),model:function(e){return{query:e.query,url:t.urls.globalIdentifiersUrl(e.query)+"?per_page=20"}},setupController:function(e,n){this._super(e,n),e.set("createSearchUrlFunction",function(e){return t.urls.globalIdentifiersUrl(e)})},afterModel:function(){var e=this,t=function(t){if(t.target.dataset.location){var o=void 0 -try{o=JSON.parse(t.target.dataset.location)}catch(e){console.log(e)}o&&(0,n.goToDefinition)(e.get("store"),o,t.which)}} -this._onmouseup=t,document.addEventListener("mouseup",t)},deactivate:function(){this._onmouseup&&document.removeEventListener("mouseup",this._onmouseup)}})}),define("haskell-code-explorer/services/settings",["exports","haskell-code-explorer/utils/color-themes"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Service.extend({init:function(){if(this._super.apply(this,arguments),localStorage){var e=localStorage.getItem("colorThemeId"),n=t.themes[e] -e&&this.set("colorTheme",n)}},colorTheme:t.themes.darkTheme,settingsObserver:Ember.observer("colorTheme",function(){localStorage&&localStorage.setItem("colorThemeId",this.get("colorTheme").id)})})}),define("haskell-code-explorer/services/store",["exports","haskell-code-explorer/utils/api-urls"],function(e,t){function n(e){return'"'==e.charAt(0)&&'"'==e.charAt(e.length-1)?e.substring(1,e.length-1):e}function o(e){if(!e)return{} -for(var t=/<[^>]*>\s*(\s*;\s*[^\(\)<>@,;:"\/\[\]\?={} \t]+=(([^\(\)<>@,;:"\/\[\]\?={} \t]+)|("[^"]*")))*(,|$)/g,o=/[^\(\)<>@,;:"\/\[\]\?={} \t]+=(([^\(\)<>@,;:"\/\[\]\?={} \t]+)|("[^"]*"))/g,s=e.match(t),l=new Object,i=0;i<s.length;i++){var r=s[i].split(">"),a=r[0].substring(1),c=r[1],d=new Object -d.href=a -for(var u=c.match(o),p=0;p<u.length;p++){var h=u[p],m=h.split("=") -d[m[0]]=n(m[1])}void 0!=d.rel&&(l[d.rel]=d)}return l}Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Service.extend({init:function(){this.packages={},this.files={},this.haskellModules={},this.definitionSites={},this.modulePaths={},this.expressions={},this.references={},this.globalReferences={},this.hoogleDocs={}},loadPackage:function(e){var n=this,o=this.packages[e] -if(o)return new Ember.RSVP.Promise(function(e){e(o)}) -var s=t.urls.packageInfoUrl(e) -return Ember.$.getJSON(s).then(function(t){return n.packages[e]=t,t})},loadFile:function(e,n){var o=this,s=e+"/"+n,l=this.files[s] -if(l)return new Ember.RSVP.Promise(function(e){e(l)}) -var i=t.urls.fileUrl(e,n) -return Ember.$.get({url:i,dataType:"text"}).then(function(t){var l={} -return l.text=t,l.packageId=e,l.isHaskellModule=!1,l.id=n,o.files[s]=l,l})},loadHaskellModule:function(e,n){var o=this,s=e+"/"+n,l=this.haskellModules[s] -if(l)return new Ember.RSVP.Promise(function(e){e(l)}) -var i=t.urls.haskellModuleUrl(e,n) -return Ember.$.getJSON(i).then(function(t){return t.packageId=e,t.isHaskellModule=!0,o.haskellModules[s]=t,t})},loadDefinitionSite:function(e,n,o,s,l){var i=this,r=e+"/"+o+"/"+n+"/"+s+"/"+l,a=this.definitionSites[r] -if(a)return new Ember.RSVP.Promise(function(e){e(a)}) -var c=t.urls.identifierDefinitionSiteUrl(e,n,o,s,l) -return Ember.$.getJSON(c).then(function(e){return i.definitionSites[r]=e,e})},loadExpressions:function(e,n,o,s,l,i){var r=this,a=e+"/"+encodeURIComponent(n)+"/"+o+"/"+s+"/"+l+"/"+i,c=this.expressions[a] -if(c)return new Ember.RSVP.Promise(function(e){e(c)}) -var d=t.urls.expressionsUrl(e,n,o,s,l,i) -return Ember.$.getJSON(d).then(function(e){return r.expressions[a]=e,e})},loadFromUrlPaginated:function(e){return Ember.$.getJSON(e).then(function(e,t,n){var s=n.getResponseHeader("Link"),l=n.getResponseHeader("x-total-count"),i=o(s) -return{items:e,total:parseInt(l),linkHeader:i}})},loadGlobalReferences:function(e){var n=this,o=this.globalReferences[e] -if(o)return new Ember.RSVP.Promise(function(e){e(o)}) -var s=t.urls.globalReferencesUrl(e) -return Ember.$.getJSON(s).then(function(t){return n.globalReferences[e]=t,t})},loadHoogleDocs:function(e,n,o,s){var l=this,i=e+"/"+n+"/"+o+"/"+s,r=this.hoogleDocs[i] -if(r)return new Ember.RSVP.Promise(function(e){e(r)}) -var a=t.urls.hoogleDocsUrl(e,n,o,s) -return Ember.$.getJSON(a).then(function(e){return l.hoogleDocs[i]=e,e})}})}),define("haskell-code-explorer/templates/application",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"VFOlgxX7",block:'{"symbols":["theme"],"statements":[[6,"div"],[10,"class","absolute-container"],[8],[0,"\\n "],[6,"div"],[10,"class","flex-container"],[8],[0,"\\n "],[6,"div"],[10,"class","header"],[8],[0,"\\n "],[6,"img"],[10,"src","/assets/haskell.ico"],[8],[9],[0,"\\n "],[6,"div"],[10,"class","container"],[8],[0,"\\n "],[6,"span"],[10,"class","header-item"],[8],[4,"link-to",["packages"],null,{"statements":[[0,"Haskell packages"]],"parameters":[]},null],[9],[0,"\\n "],[6,"span"],[10,"class","header-item"],[8],[6,"a"],[10,"target","_blank"],[10,"href","https://github.com/alexwl/haskell-code-explorer"],[8],[0,"About"],[9],[9],[0,"\\n "],[6,"span"],[10,"class","header-item"],[8],[0,"\\n"],[4,"each",[[22,["themes"]]],null,{"statements":[[4,"radio-button",null,[["value","groupValue","changed"],[[21,1,["id"]],[22,["currentTheme"]],"themeChanged"]],{"statements":[[0," "],[6,"span"],[8],[1,[21,1,["name"]],false],[9],[0,"\\n"]],"parameters":[]},null]],"parameters":[1]},null],[0," "],[9],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n "],[6,"div"],[10,"class","content"],[8],[0,"\\n "],[6,"div"],[10,"class","absolute-container"],[8],[0,"\\n "],[1,[20,"outlet"],false],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/application.hbs"}})}),define("haskell-code-explorer/templates/bad-url",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"5j5yigKR",block:'{"symbols":[],"statements":[[6,"div"],[10,"class","container"],[8],[0,"\\n "],[6,"div"],[10,"style","margin-top:10px"],[8],[0,"\\n "],[6,"h1"],[8],[0,"Not found"],[9],[0,"\\n "],[6,"div"],[8],[6,"a"],[10,"href","/"],[8],[0,"Main page"],[9],[9],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/bad-url.hbs"}})}),define("haskell-code-explorer/templates/components/bottom-panel",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"npSIWyPX",block:'{"symbols":["&default"],"statements":[[6,"div"],[10,"class","bottom-panel-header"],[8],[0,"\\n "],[6,"span"],[10,"class","bottom-panel-header-content"],[8],[13,1,["header"]],[9],[0,"\\n "],[6,"span"],[10,"class","bottom-panel-header-options"],[8],[0,"\\n "],[6,"a"],[10,"href","#"],[3,"action",[[21,0,[]],"close"]],[8],[0,"Close"],[9],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"],[6,"div"],[10,"class","bottom-panel-content"],[8],[0,"\\n "],[13,1,["body"]],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/bottom-panel.hbs"}})}),define("haskell-code-explorer/templates/components/expression-info",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"3orLnFsH",block:'{"symbols":["expression"],"statements":[[6,"div"],[10,"class","expressions"],[8],[0,"\\n"],[4,"each",[[22,["expressions"]]],null,{"statements":[[0," "],[6,"div"],[10,"class","expression"],[8],[0,"\\n "],[6,"span"],[10,"class","source-code"],[8],[1,[21,1,["sourceCode"]],false],[9],[0,"\\n "],[6,"br"],[8],[9],[0,":: "],[1,[26,"type-signature",null,[["type","identifiers","currentLineNumber"],[[21,1,["info","exprType"]],[22,["identifiers"]],[22,["currentLineNumber"]]]]],false],[0,"\\n "],[9],[0,"\\n"]],"parameters":[1]},null],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/expression-info.hbs"}})}),define("haskell-code-explorer/templates/components/file-tree",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"dsx0INhr",block:'{"symbols":[],"statements":[[6,"div"],[10,"class","file-tree-header"],[8],[0,"\\n "],[6,"div"],[10,"class","input-group"],[8],[0,"\\n "],[1,[26,"input",null,[["class","value","placeholder"],["form-control",[22,["query"]],"Filename"]]],false],[6,"a"],[10,"class","hide-file-tree"],[10,"href","#"],[3,"action",[[21,0,[]],"hide"]],[8],[0,"Hide"],[9],[0,"\\n "],[9],[0,"\\n "],[6,"div"],[8],[0,"\\n"],[4,"radio-button",null,[["value","groupValue"],["alphabetical",[22,["sortType"]]]],{"statements":[[0," "],[6,"span"],[8],[0,"Sort by name"],[9],[0,"\\n"]],"parameters":[]},null],[4,"radio-button",null,[["value","groupValue"],["type",[22,["sortType"]]]],{"statements":[[0," "],[6,"span"],[8],[0,"Sort by type"],[9],[0,"\\n"]],"parameters":[]},null],[0," "],[9],[0,"\\n"],[9],[0,"\\n"],[6,"div"],[10,"class","file-tree-content"],[8],[0,"\\n "],[6,"div"],[10,"class","file-tree"],[8],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/file-tree.hbs"}})}),define("haskell-code-explorer/templates/components/haskell-module",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"olqhNo84",block:'{"symbols":["section","declaration"],"statements":[[6,"div"],[10,"class","source-code-container"],[8],[9],[0,"\\n"],[4,"if",[[22,["declarations"]]],null,{"statements":[[0," "],[6,"div"],[10,"class","declarations"],[8],[0,"\\n "],[6,"div"],[10,"class","declarations-header"],[8],[0,"\\n "],[6,"div"],[10,"class","input-group"],[8],[0,"\\n "],[1,[26,"input",null,[["class","value","placeholder"],["form-control",[22,["query"]],"Identifier"]]],false],[6,"a"],[10,"class","hide-declarations"],[10,"href","#"],[3,"action",[[21,0,[]],"toggleShowDeclarations"]],[8],[1,[20,"showDeclarationsLabel"],false],[9],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n"],[4,"if",[[22,["showDeclarations"]]],null,{"statements":[[0," "],[6,"div"],[10,"id","declarations-content"],[10,"class","declarations-content"],[8],[0,"\\n "],[6,"ul"],[8],[0,"\\n"],[4,"infinite-list",null,[["containerElementId","elements","perPage"],["declarations-content",[22,["filteredDeclarations"]],30]],{"statements":[[0," "],[6,"li"],[10,"class","declaration"],[8],[0,"\\n "],[6,"div"],[10,"class","declaration"],[8],[0,"\\n "],[6,"a"],[10,"href","#"],[3,"action",[[21,0,[]],"goToLine",[21,2,["lineNumber"]]]],[8],[6,"span"],[10,"class","source-code-font"],[8],[1,[21,2,["name"]],false],[4,"if",[[21,2,["declType"]]],null,{"statements":[[0," :: "],[1,[26,"type-signature-text",null,[["components"],[[21,2,["declType","components"]]]]],false]],"parameters":[]},null],[9],[0,"\\n "],[9],[6,"span"],[8],[4,"unless",[[21,2,["isExported"]]],null,{"statements":[[6,"i"],[8],[0,"(not exported)"],[9]],"parameters":[]},null],[9],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[2]},null],[0," "],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[]},null],[0," "],[9],[0,"\\n"]],"parameters":[]},null],[4,"info-window",null,[["targetElement","isHoveredOverIdentifier","hasSelectedExpression","containerElementId"],[[22,["selectedIdentifier"]],[22,["isHoveredOverIdentifier"]],[22,["hasSelectedExpression"]],"right-panel"]],{"statements":[[4,"if",[[26,"eq",[[21,1,[]],"header"],null]],null,{"statements":[[4,"if",[[22,["hasSelectedExpression"]]],null,{"statements":[[0," "],[6,"div"],[8],[0,"Selected expressions"],[9],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[26,"identifier-name",null,[["identifierInfo","identifierOccurrence","identifierElement","currentPackageId","isBinder","currentLineNumber","findReferences"],[[22,["identifierInfo"]],[22,["identifierOccurrence"]],[22,["selectedIdentifier"]],[22,["packageId"]],[22,["identifierOccurrence","isBinder"]],[22,["currentLineNumber"]],[22,["findReferences"]]]]],false],[0,"\\n"]],"parameters":[]}]],"parameters":[]},{"statements":[[4,"unless",[[22,["hasSelectedExpression"]]],null,{"statements":[[0," "],[1,[26,"identifier-info",null,[["identifierInfo","identifierOccurrence","identifiers","currentLineNumber"],[[22,["identifierInfo"]],[22,["identifierOccurrence"]],[22,["identifiers"]],[22,["currentLineNumber"]]]]],false],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[26,"expression-info",null,[["expressions","identifiers","currentLineNumber"],[[22,["expressions"]],[22,["identifiers"]],[22,["currentLineNumber"]]]]],false],[0,"\\n"]],"parameters":[]}]],"parameters":[]}]],"parameters":[1]},null]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/haskell-module.hbs"}})}) -define("haskell-code-explorer/templates/components/identifier-info",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"zMkGyYS+",block:'{"symbols":[],"statements":[[4,"if",[[26,"or",[[22,["identifierInfo"]],[22,["identifierOccurrence","idOccType"]]],null]],null,{"statements":[[0," "],[6,"div"],[10,"class","identifier-info"],[8],[0,"\\n"],[4,"if",[[22,["identifierInfo"]]],null,{"statements":[[4,"if",[[22,["isNaughtyRecSel"]]],null,{"statements":[[0," "],[6,"i"],[8],[0,"This record selector can never be called because its type mentions a type variable that isn\'t in the result type of the constructor"],[9],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[26,"type-signature",null,[["type","identifiers","currentLineNumber"],[[22,["identifierInfo","idType"]],[22,["identifiers"]],[22,["currentLineNumber"]]]]],false],[0,"\\n"]],"parameters":[]}]],"parameters":[]},null],[4,"if",[[26,"and",[[22,["identifierInfo"]],[22,["identifierOccurrence"]],[22,["identifierOccurrence","idOccType"]]],null]],null,{"statements":[[0," "],[6,"div"],[10,"style","height:10px"],[8],[9],[0,"\\n"]],"parameters":[]},null],[4,"if",[[26,"and",[[22,["identifierOccurrence"]],[22,["identifierOccurrence","idOccType"]]],null]],null,{"statements":[[0," "],[1,[26,"type-signature",null,[["type","identifiers","currentLineNumber"],[[22,["identifierOccurrence","idOccType"]],[22,["identifiers"]],[22,["currentLineNumber"]]]]],false],[0,"\\n"]],"parameters":[]},null],[0," "],[6,"div"],[10,"class","documentation"],[8],[0,"\\n "],[1,[22,["identifierInfo","doc"]],true],[0,"\\n "],[1,[20,"downloadedDocumentation"],true],[0,"\\n "],[9],[0,"\\n"],[4,"if",[[22,["identifierOccurrence","instanceResolution"]]],null,{"statements":[[0," "],[6,"div"],[10,"style","height:10px"],[8],[9],[0,"\\n"]],"parameters":[]},null],[0," "],[6,"div"],[8],[0,"\\n"],[4,"if",[[22,["identifierOccurrence","instanceResolution"]]],null,{"statements":[[0," "],[1,[26,"instance-info",null,[["instance","identifiers","nestedLevel","currentLineNumber"],[[22,["identifierOccurrence","instanceResolution"]],[22,["identifiers"]],0,[22,["currentLineNumber"]]]]],false],[0,"\\n"]],"parameters":[]},null],[0," "],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[]},null]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/identifier-info.hbs"}})}),define("haskell-code-explorer/templates/components/identifier-name",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"poprRbXj",block:'{"symbols":[],"statements":[[6,"div"],[8],[0,"\\n "],[6,"span"],[10,"class","source-code-font break-word identifier-menu-item"],[11,"style",[20,"style"]],[8],[4,"if",[[22,["identifierInfo","demangledOccName"]]],null,{"statements":[[1,[22,["identifierInfo","demangledOccName"]],false]],"parameters":[]},{"statements":[[1,[20,"name"],false]],"parameters":[]}],[9],[0,"\\n"],[4,"unless",[[22,["isBinder"]]],null,{"statements":[[4,"if",[[22,["location"]]],null,{"statements":[[0," "],[6,"span"],[10,"class","identifier-menu-item"],[8],[1,[20,"location"],false],[9],[0,"\\n "],[6,"span"],[10,"class","link identifier-menu-item"],[11,"onmouseup",[26,"action",[[21,0,[]],"goToDefinition"],null]],[8],[0,"Go to definition"],[9],[0,"\\n"]],"parameters":[]},null]],"parameters":[]},null],[4,"if",[[22,["isExternalIdentifier"]]],null,{"statements":[[0," "],[6,"span"],[10,"class","link identifier-menu-item"],[11,"onmouseup",[26,"action",[[21,0,[]],"findReferences",[22,["identifierInfo"]],[22,["currentPackageId"]]],null]],[8],[0,"Find references"],[9],[0,"\\n"]],"parameters":[]},null],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/identifier-name.hbs"}})}),define("haskell-code-explorer/templates/components/infinite-list",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"AVFRMQuE",block:'{"symbols":["element","&default"],"statements":[[4,"each",[[22,["renderedElements"]]],null,{"statements":[[0," "],[13,2,[[21,1,[]]]],[0,"\\n"]],"parameters":[1]},null]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/infinite-list.hbs"}})}),define("haskell-code-explorer/templates/components/info-window",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"Xi4+uOqU",block:'{"symbols":["&default"],"statements":[[6,"div"],[10,"class","info-window"],[8],[0,"\\n "],[6,"div"],[10,"class","info-window-header"],[8],[0,"\\n "],[6,"div"],[10,"class","info-window-options"],[8],[0,"\\n "],[6,"a"],[10,"href","#"],[3,"action",[[21,0,[]],"pin"]],[8],[4,"if",[[22,["isPinned"]]],null,{"statements":[[0,"Unpin"]],"parameters":[]},{"statements":[[0,"Pin"]],"parameters":[]}],[9],[0,"\\n "],[6,"a"],[10,"href","#"],[3,"action",[[21,0,[]],"close"]],[8],[0,"Close"],[9],[0,"\\n "],[9],[0,"\\n "],[13,1,["header"]],[0,"\\n "],[9],[0,"\\n "],[6,"div"],[10,"class","info-window-content"],[8],[0,"\\n "],[13,1,["body"]],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/info-window.hbs"}})}),define("haskell-code-explorer/templates/components/input-with-autocomplete",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"asEzRTQH",block:'{"symbols":["item","index","&default"],"statements":[[6,"div"],[10,"class","input-group"],[8],[0,"\\n "],[1,[26,"input",null,[["class","value","placeholder"],["form-control search-input",[22,["query"]],[22,["placeholder"]]]]],false],[0,"\\n "],[6,"div"],[10,"class","autocomplete-container"],[8],[0,"\\n"],[4,"if",[[22,["items"]]],null,{"statements":[[0," "],[6,"ul"],[10,"class","autocomplete-items"],[8],[0,"\\n"],[4,"each",[[22,["items"]]],null,{"statements":[[0," "],[6,"li"],[11,"class",[27,[[26,"if",[[26,"eq",[[21,2,[]],[22,["highlightedItemIndex"]]],null],"highlighted"],null]]]],[11,"onclick",[26,"action",[[21,0,[]],"goToDefinition",[21,1,[]]],null]],[8],[0,"\\n "],[6,"div"],[10,"class","autocomplete-item"],[8],[0,"\\n "],[13,3,[[21,1,[]]]],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[1,2]},null],[0," "],[9],[0,"\\n"]],"parameters":[]},null],[0," "],[9],[0,"\\n "],[6,"div"],[10,"class","input-group-append"],[8],[0,"\\n "],[6,"button"],[10,"id","search-input"],[10,"class","btn btn-outline-secondary"],[3,"action",[[21,0,[]],"onSubmit",[22,["query"]]]],[8],[1,[20,"searchButtonText"],false],[9],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/input-with-autocomplete.hbs"}})}),define("haskell-code-explorer/templates/components/instance-info",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"uCPSf7BD",block:'{"symbols":["inst"],"statements":[[4,"if",[[22,["instance"]]],null,{"statements":[[0," "],[6,"div"],[11,"style",[20,"style"]],[8],[0,"\\n "],[6,"span"],[10,"class","source-code-font"],[8],[0,"\\n instance "],[1,[26,"type-signature",null,[["type","identifiers","currentLineNumber","noExpand"],[[22,["instance","instanceType"]],[22,["identifiers"]],[22,["currentLineNumber"]],true]]],false],[9],[0,"\\n ("],[6,"span"],[10,"class","link"],[11,"onclick",[26,"action",[[21,0,[]],"goToDefinition"],null]],[8],[0,"Go to definition"],[9],[0,")\\n"],[4,"each",[[22,["instance","instances"]]],null,{"statements":[[0," "],[1,[26,"instance-info",null,[["instance","identifiers","nestedLevel","currentLineNumber"],[[21,1,[]],[22,["identifiers"]],[22,["nextNestedLevel"]],[22,["currentLineNumber"]]]]],false],[0,"\\n"]],"parameters":[1]},null],[0," "],[9],[0,"\\n"]],"parameters":[]},null]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/instance-info.hbs"}})}),define("haskell-code-explorer/templates/components/paginated-list",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"RRShkwZE",block:'{"symbols":["&default"],"statements":[[6,"div"],[10,"class","paginated-list-header"],[8],[0,"\\n "],[6,"span"],[8],[0,"Found "],[1,[20,"total"],false],[0," "],[1,[20,"foundWhere"],true],[9],[0,"\\n"],[4,"if",[[26,"or",[[22,["next"]],[22,["prev"]]],null]],null,{"statements":[[0," \\n \\n "],[6,"span"],[8],[0,"\\n "],[4,"if",[[22,["first"]]],null,{"statements":[[6,"button"],[10,"class","btn btn-outline-secondary btn-sm"],[3,"action",[[21,0,[]],"update",[22,["first","href"]]]],[8],[0,"<<"],[9]],"parameters":[]},null],[0,"\\n "],[4,"if",[[22,["prev"]]],null,{"statements":[[6,"button"],[10,"button",""],[10,"class","btn btn-outline-secondary btn-sm"],[3,"action",[[21,0,[]],"update",[22,["prev","href"]]]],[8],[0,"<"],[9]],"parameters":[]},null],[0,"\\n "],[1,[20,"firstItemOnPage"],false],[0," - "],[1,[20,"lastItemOnPage"],false],[0,"\\n "],[4,"if",[[22,["next"]]],null,{"statements":[[6,"button"],[10,"button",""],[10,"class","btn btn-outline-secondary btn-sm"],[3,"action",[[21,0,[]],"update",[22,["next","href"]]]],[8],[0,">"],[9]],"parameters":[]},null],[0,"\\n "],[4,"if",[[22,["last"]]],null,{"statements":[[6,"button"],[10,"button",""],[10,"class","btn btn-outline-secondary btn-sm"],[3,"action",[[21,0,[]],"update",[22,["last","href"]]]],[8],[0,">>"],[9]],"parameters":[]},null],[0,"\\n "],[9],[0,"\\n"]],"parameters":[]},null],[9],[0,"\\n"],[6,"div"],[10,"class","paginated-list-content"],[8],[0,"\\n "],[13,1,[[22,["items"]]]],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/paginated-list.hbs"}})}),define("haskell-code-explorer/templates/components/resizable-panel",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"tpKUpnLR",block:'{"symbols":["&default"],"statements":[[6,"div"],[10,"class","absolute-container"],[8],[13,1,[[26,"action",[[21,0,[]],"hide"],null]]],[0,"\\n "],[6,"div"],[11,"onclick",[26,"action",[[21,0,[]],"hide"],null]],[10,"class","show-left-panel-button"],[8],[0,"\\n "],[1,[20,"hideButtonLabel"],true],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/resizable-panel.hbs"}})}),define("haskell-code-explorer/templates/components/text-file",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"yYFMOyZb",block:'{"symbols":[],"statements":[[6,"div"],[10,"class","source-code-container"],[8],[0,"\\n"],[1,[20,"html"],true],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/text-file.hbs"}})}),define("haskell-code-explorer/templates/components/type-component",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"nSuhY152",block:'{"symbols":[],"statements":[[4,"if",[[26,"and",[[22,["expanded"]],[22,["identifierInfo"]]],null]],null,{"statements":[[0,"("]],"parameters":[]},null],[0,"\\n"],[6,"span"],[11,"class",[27,["source-code ",[20,"linkClass"]]]],[11,"onmouseup",[26,"action",[[21,0,[]],"onmouseup"],null]],[8],[1,[20,"occName"],false],[9],[0,"\\n"],[4,"if",[[26,"and",[[22,["expanded"]],[22,["identifierInfo"]]],null]],null,{"statements":[[0," :: "],[1,[26,"type-signature",null,[["type","identifiers","noExpand"],[[22,["identifierInfo","idType"]],[22,["identifiers"]],true]]],false],[0,")"]],"parameters":[]},null],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/type-component.hbs"}})}),define("haskell-code-explorer/templates/components/type-signature-text",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"+rUvtMa3",block:'{"symbols":["typeComponent"],"statements":[[4,"each",[[22,["components"]]],null,{"statements":[[4,"if",[[26,"eq",[[21,1,["tag"]],"Text"],null]],null,{"statements":[[1,[21,1,["contents"]],false]],"parameters":[]},{"statements":[[1,[21,1,["name"]],false]],"parameters":[]}]],"parameters":[1]},null],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/type-signature-text.hbs"}})}),define("haskell-code-explorer/templates/components/type-signature",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"SdJzinj9",block:'{"symbols":["typeComponent"],"statements":[[4,"each",[[22,["components"]]],null,{"statements":[[4,"if",[[26,"eq",[[21,1,["tag"]],"Text"],null]],null,{"statements":[[6,"span"],[10,"class","source-code"],[8],[1,[21,1,["contents"]],false],[9]],"parameters":[]},{"statements":[[1,[26,"type-component",null,[["occName","internalId","identifiers","currentLineNumber"],[[21,1,["name"]],[21,1,["internalId"]],[22,["identifiers"]],[22,["currentLineNumber"]]]]],false]],"parameters":[]}]],"parameters":[1]},null],[0,"\\n"],[4,"unless",[[22,["noExpand"]]],null,{"statements":[[4,"if",[[22,["type","componentsExpanded"]]],null,{"statements":[[0," "],[6,"div"],[10,"style","margin-top:5px"],[8],[0,"\\n "],[6,"button"],[10,"class","btn btn-outline-secondary btn-sm"],[3,"action",[[21,0,[]],"toggleExpandTypeSynonyms"]],[8],[1,[20,"expandTypeSynonymsLabel"],false],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[]},null]],"parameters":[]},null]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/components/type-signature.hbs"}})}),define("haskell-code-explorer/templates/package",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"VYY6w03q",block:'{"symbols":["section","files","file","reference","ref","hide","identifier"],"statements":[[6,"div"],[10,"class","flex-container"],[8],[0,"\\n "],[6,"div"],[10,"class","package-header"],[8],[0,"\\n "],[6,"span"],[10,"class","package-header-package-name"],[8],[4,"link-to",["package",[22,["model"]]],null,{"statements":[[1,[22,["model","id"]],false]],"parameters":[]},null],[9],[0,"\\n "],[6,"span"],[10,"class","package-header-input"],[8],[0,"\\n"],[4,"input-with-autocomplete",null,[["onSubmit","createSearchUrlFunction","maxItems","selectItem","searchButtonText","placeholder"],[[26,"action",[[21,0,[]],"searchIdentifier"],null],[22,["createSearchUrlFunction"]],10,[26,"action",[[21,0,[]],"showIdentifier"],null],"Search","Identifier"]],{"statements":[[0," "],[6,"span"],[10,"class","source-code-font"],[8],[1,[21,7,["demangledOccName"]],false],[0," :: "],[1,[26,"type-signature-text",null,[["components"],[[21,7,["idType","components"]]]]],false],[9],[0,"\\n "],[6,"div"],[10,"class","module-name"],[8],[0,"\\n "],[6,"b"],[8],[1,[21,7,["locationInfo","packageId","name"]],false],[0,"-"],[1,[21,7,["locationInfo","packageId","version"]],false],[9],[0,"\\n"],[4,"if",[[21,7,["locationInfo","modulePath"]]],null,{"statements":[[0," "],[1,[21,7,["locationInfo","modulePath"]],false],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[21,7,["locationInfo","moduleName"]],false],[0,"\\n"]],"parameters":[]}],[0," "],[9],[0,"\\n"]],"parameters":[7]},null],[0," "],[9],[0,"\\n"],[4,"radio-button",null,[["value","groupValue"],["currentPackage",[22,["searchMode"]]]],{"statements":[[0," "],[6,"span"],[8],[0,"in "],[1,[22,["model","id"]],false],[9],[0,"\\n"]],"parameters":[]},null],[4,"radio-button",null,[["value","groupValue"],["allPackages",[22,["searchMode"]]]],{"statements":[[0," "],[6,"span"],[8],[0,"in all packages"],[9],[0,"\\n"]],"parameters":[]},null],[4,"if",[[22,["currentFile"]]],null,{"statements":[[0," "],[6,"span"],[10,"class","package-header-filename"],[8],[0,"\\n "],[1,[20,"currentFile"],false],[0,"\\n "],[9],[0,"\\n"]],"parameters":[]},null],[0," "],[9],[0,"\\n "],[6,"div"],[10,"class","package-content"],[8],[0,"\\n"],[4,"resizable-panel",null,[["class","alsoResizeElementId"],["left-panel","#right-panel"]],{"statements":[[0," "],[6,"div"],[10,"class","file-tree-container"],[8],[0,"\\n "],[1,[26,"file-tree",null,[["directoryTree","openFile","currentFile","packageId","hide"],[[22,["model","directoryTree"]],"openFile",[22,["currentFile"]],[22,["model","id"]],[21,6,[]]]]],false],[0,"\\n "],[9],[0,"\\n"]],"parameters":[6]},null],[0," "],[6,"div"],[10,"id","right-panel"],[10,"class","right-panel"],[8],[0,"\\n "],[6,"div"],[10,"id","file-container"],[10,"class","file-container"],[8],[0,"\\n "],[1,[20,"outlet"],false],[0,"\\n "],[9],[0,"\\n"],[4,"bottom-panel",null,[["visible","topPanelElementId","containerElementId"],[[22,["bottomPanelVisible"]],"#file-container","#right-panel"]],{"statements":[[4,"if",[[26,"eq",[[21,1,[]],"header"],null]],null,{"statements":[[0," References to "],[6,"b"],[8],[6,"span"],[10,"class","source-code"],[8],[1,[20,"occName"],false],[9],[9],[0,"\\n"],[4,"if",[[22,["locationInfo","packageId"]]],null,{"statements":[[0," (defined in "],[6,"b"],[8],[1,[22,["locationInfo","packageId","name"]],false],[0,"-"],[1,[22,["locationInfo","packageId","version"]],false],[9],[0," / "],[6,"b"],[8],[1,[22,["locationInfo","moduleName"]],false],[9],[0,")\\n"]],"parameters":[]},null]],"parameters":[]},{"statements":[[0," "],[6,"div"],[10,"id","references-packages"],[10,"class","references-packages"],[8],[0,"\\n"],[4,"if",[[22,["globalReferences"]]],null,{"statements":[[0," "],[6,"span"],[8],[0,"\\n"],[4,"each",[[22,["globalReferences"]]],null,{"statements":[[0," "],[6,"div"],[8],[0,"\\n "],[6,"a"],[11,"id",[27,["references-package-",[21,5,["packageId"]]]]],[11,"class",[27,[[26,"if",[[26,"eq",[[21,5,["packageId"]],[22,["packageId"]]],null],"selected"],null]]]],[10,"href","#"],[3,"action",[[21,0,[]],"updateReferences",[21,5,["packageId"]],[22,["externalId"]],[22,["occName"]],[22,["locationInfo"]],true]],[8],[0,"\\n "],[1,[21,5,["packageId"]],false],[0,"\\n "],[9],[0," ("],[1,[21,5,["count"]],false],[0,")\\n "],[9],[0,"\\n"]],"parameters":[5]},null],[0," "],[9],[0,"\\n"]],"parameters":[]},null],[0," "],[9],[0,"\\n "],[6,"div"],[10,"class","references"],[8],[0,"\\n"],[4,"paginated-list",null,[["url","foundWhere"],[[22,["referencesUrl"]],[26,"concat",["in <b>",[22,["packageId"]],"</b>"],null]]],{"statements":[[0," "],[6,"ul"],[8],[0,"\\n"],[4,"each",[[21,2,[]]],null,{"statements":[[0," "],[6,"li"],[8],[0,"\\n "],[6,"div"],[10,"class","file-name"],[8],[6,"a"],[11,"href",[27,["/package/",[20,"packageId"],"/show/",[21,3,["name"]]]]],[8],[1,[21,3,["name"]],false],[9],[9],[0,"\\n"],[4,"each",[[21,3,["references"]]],null,{"statements":[[0," "],[6,"a"],[10,"class","source-code source-code-snippet"],[11,"href",[27,["/package/",[20,"packageId"],"/show/",[21,3,["name"]],"#L",[21,4,["idSrcSpan","line"]]]]],[8],[1,[21,4,["sourceCodeHtml"]],true],[9],[0,"\\n"]],"parameters":[4]},null],[0," "],[9],[0,"\\n"]],"parameters":[3]},null],[0," "],[9],[0,"\\n"]],"parameters":[2]},null],[0," "],[9],[0,"\\n"]],"parameters":[]}]],"parameters":[1]},null],[0," "],[9],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/package.hbs"}})}),define("haskell-code-explorer/templates/package/index",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"O2wWOYbc",block:'{"symbols":["module"],"statements":[[6,"div"],[10,"class","package-modules"],[8],[0,"\\n "],[6,"div"],[10,"class","module-search-input"],[8],[0,"\\n "],[1,[26,"input",null,[["class","type","value","placeholder"],["form-control","text",[22,["query"]],"Module name"]]],false],[0,"\\n "],[9],[0,"\\n "],[6,"ul"],[10,"class","modules"],[8],[0,"\\n"],[4,"each",[[22,["modulesFiltered"]]],null,{"statements":[[0," "],[6,"li"],[8],[0,"\\n "],[6,"a"],[11,"href",[27,["/package/",[22,["model","id"]],"/show/",[21,1,[]]]]],[8],[1,[21,1,[]],false],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[1]},null],[0," "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/package/index.hbs"}})}),define("haskell-code-explorer/templates/package/search",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"t4+evzG+",block:'{"symbols":["identifiers","identifier"],"statements":[[6,"div"],[10,"class","search-results-header"],[8],[0,"\\n Query : "],[1,[22,["model","query"]],false],[0,"\\n"],[9],[0,"\\n"],[6,"div"],[10,"class","search-results-content"],[8],[0,"\\n"],[4,"paginated-list",null,[["url"],[[22,["model","url"]]]],{"statements":[[0," "],[6,"ul"],[8],[0,"\\n"],[4,"each",[[21,1,[]]],null,{"statements":[[0," "],[6,"li"],[10,"class","search-result"],[8],[0,"\\n "],[6,"span"],[10,"class","source-code"],[8],[6,"b"],[8],[1,[21,2,["demangledOccName"]],false],[9],[0," :: "],[1,[26,"type-signature-text",null,[["components"],[[21,2,["idType","components"]]]]],false],[9],[0,"\\n "],[6,"div"],[8],[6,"a"],[10,"href","#"],[11,"onmouseup",[26,"action",[[21,0,[]],"goToDefinition",[21,2,["locationInfo"]]],null]],[8],[0,"Go to definition"],[9],[9],[0,"\\n "],[6,"div"],[10,"class","identifier-module"],[8],[0,"\\n"],[4,"if",[[21,2,["locationInfo","modulePath"]]],null,{"statements":[[0," Defined in "],[6,"a"],[11,"href",[27,["/package/",[21,2,["locationInfo","packageId","name"]],"-",[21,2,["locationInfo","packageId","version"]],"/show/",[21,2,["locationInfo","modulePath"]]]]],[8],[1,[21,2,["locationInfo","modulePath"]],false],[9],[0,"\\n"]],"parameters":[]},null],[0," "],[9],[0,"\\n "],[6,"div"],[8],[1,[21,2,["doc"]],true],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[2]},null],[0," "],[9],[0,"\\n"]],"parameters":[1]},null],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/package/search.hbs"}})}),define("haskell-code-explorer/templates/package/show",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"aR1d98il",block:'{"symbols":[],"statements":[[1,[20,"outlet"],false],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/package/show.hbs"}})}),define("haskell-code-explorer/templates/package/show/file",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"n+gY0z10",block:'{"symbols":[],"statements":[[4,"if",[[22,["model","isHaskellModule"]]],null,{"statements":[[0," "],[1,[26,"haskell-module",null,[["path","name","packageId","componentId","html","identifiers","occurrences","colorTheme","declarations","findReferences"],[[22,["model","id"]],[22,["model","name"]],[22,["model","packageId"]],[22,["model","componentId"]],[22,["model","sourceCodeHtml"]],[22,["model","identifiers"]],[22,["model","occurrences"]],[22,["settings","colorTheme"]],[22,["model","declarations"]],[26,"action",[[21,0,[]],"findReferences"],null]]]],false],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[26,"text-file",null,[["text","path"],[[22,["model","text"]],[22,["model","id"]]]]],false],[0,"\\n"]],"parameters":[]}]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/package/show/file.hbs"}})}),define("haskell-code-explorer/templates/packages",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"mEyAL/ia",block:'{"symbols":["package","version","index","identifier"],"statements":[[6,"div"],[10,"class","flex-container container"],[8],[0,"\\n "],[6,"div"],[8],[0,"\\n "],[6,"div"],[10,"class","global-identifier-search-form"],[8],[0,"\\n"],[4,"input-with-autocomplete",null,[["onSubmit","createSearchUrlFunction","maxItems","selectItem","searchButtonText","placeholder"],[[26,"action",[[21,0,[]],"searchIdentifier"],null],[22,["createSearchUrlFunction"]],10,[26,"action",[[21,0,[]],"showIdentifier"],null],"Search in all packages","Haskell identifier"]],{"statements":[[0," "],[6,"span"],[10,"class","source-code-font"],[8],[1,[21,4,["demangledOccName"]],false],[0," :: "],[1,[26,"type-signature-text",null,[["components"],[[21,4,["idType","components"]]]]],false],[9],[0,"\\n "],[6,"div"],[10,"class","module-name"],[8],[0,"\\n "],[6,"b"],[8],[1,[21,4,["locationInfo","packageId","name"]],false],[0,"-"],[1,[21,4,["locationInfo","packageId","version"]],false],[9],[0,"\\n"],[4,"if",[[21,4,["locationInfo","modulePath"]]],null,{"statements":[[0," "],[1,[21,4,["locationInfo","modulePath"]],false],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[21,4,["locationInfo","moduleName"]],false],[0,"\\n"]],"parameters":[]}],[0," "],[9],[0,"\\n"]],"parameters":[4]},null],[0," "],[9],[0,"\\n "],[9],[0,"\\n "],[6,"div"],[8],[0,"\\n "],[6,"div"],[10,"class","package-search-form"],[8],[0,"\\n "],[1,[26,"input",null,[["class","type","value","placeholder"],["form-control","text",[22,["query"]],"Package name"]]],false],[0,"\\n "],[6,"span"],[8],[0,"Number of packages : "],[1,[22,["packages","length"]],false],[9],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n "],[6,"div"],[10,"id","packages"],[10,"class","packages"],[8],[0,"\\n "],[6,"ul"],[8],[0,"\\n"],[4,"infinite-list",null,[["containerElementId","elements","perPage"],["packages",[22,["packages"]],80]],{"statements":[[0," "],[6,"li"],[8],[0,"\\n"],[4,"each",[[21,1,["versions"]]],null,{"statements":[[4,"link-to",["package",[26,"concat",[[21,1,["name"]],"-",[21,2,[]]],null]],null,{"statements":[[4,"if",[[26,"gt",[[21,3,[]],0],null]],null,{"statements":[[0," "],[1,[21,2,[]],false],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[21,1,["name"]],false],[0,"-"],[1,[21,2,[]],false],[0,"\\n"]],"parameters":[]}]],"parameters":[]},null]],"parameters":[2,3]},null],[0," "],[9],[0,"\\n"]],"parameters":[1]},null],[0," "],[9],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/packages.hbs"}})}),define("haskell-code-explorer/templates/search",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.HTMLBars.template({id:"OGWU6vcF",block:'{"symbols":["identifiers","identifier","identifier"],"statements":[[6,"div"],[10,"class","flex-container container"],[8],[0,"\\n "],[6,"div"],[10,"style","position:relative;height:100%"],[8],[0,"\\n "],[6,"div"],[10,"class","absolute-container"],[8],[0,"\\n "],[6,"div"],[10,"class","global-identifier-search-form"],[8],[0,"\\n"],[4,"input-with-autocomplete",null,[["onSubmit","createSearchUrlFunction","maxItems","selectItem","searchButtonText","placeholder"],[[26,"action",[[21,0,[]],"searchIdentifier"],null],[22,["createSearchUrlFunction"]],10,[26,"action",[[21,0,[]],"showIdentifier"],null],"Search in all packages","Haskell identifier"]],{"statements":[[0," "],[6,"span"],[10,"class","source-code-font"],[8],[1,[21,3,["demangledOccName"]],false],[0," :: "],[1,[26,"type-signature-text",null,[["components"],[[21,3,["idType","components"]]]]],false],[9],[0,"\\n "],[6,"div"],[10,"class","module-name"],[8],[0,"\\n "],[6,"b"],[8],[1,[21,3,["locationInfo","packageId","name"]],false],[0,"-"],[1,[21,3,["locationInfo","packageId","version"]],false],[9],[0,"\\n"],[4,"if",[[21,3,["locationInfo","modulePath"]]],null,{"statements":[[0," "],[1,[21,3,["locationInfo","modulePath"]],false],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[21,3,["locationInfo","moduleName"]],false],[0,"\\n"]],"parameters":[]}],[0," "],[9],[0,"\\n"]],"parameters":[3]},null],[0," "],[9],[0,"\\n "],[6,"div"],[8],[0,"\\n Query : "],[1,[22,["model","query"]],false],[0,"\\n "],[9],[0,"\\n "],[6,"div"],[10,"class","global-search-results-content"],[8],[0,"\\n"],[4,"paginated-list",null,[["url"],[[22,["model","url"]]]],{"statements":[[0," "],[6,"ul"],[8],[0,"\\n"],[4,"each",[[21,1,[]]],null,{"statements":[[0," "],[6,"li"],[10,"class","search-result"],[8],[0,"\\n "],[6,"span"],[10,"class","source-code"],[8],[6,"b"],[8],[1,[21,2,["demangledOccName"]],false],[9],[0," :: "],[1,[26,"type-signature-text",null,[["components"],[[21,2,["idType","components"]]]]],false],[9],[0,"\\n "],[6,"div"],[8],[6,"a"],[10,"href","#"],[11,"onmouseup",[26,"action",[[21,0,[]],"goToDefinition",[21,2,["locationInfo"]]],null]],[8],[0,"Go to definition"],[9],[9],[0,"\\n "],[6,"div"],[10,"class","identifier-module"],[8],[0,"\\n"],[4,"if",[[21,2,["locationInfo","modulePath"]]],null,{"statements":[[0," Defined in "],[6,"b"],[8],[0," "],[1,[21,2,["locationInfo","packageId","name"]],false],[0,"-"],[1,[21,2,["locationInfo","packageId","version"]],false],[0," "],[9],[0," "],[6,"a"],[11,"href",[27,["/package/",[21,2,["locationInfo","packageId","name"]],"-",[21,2,["locationInfo","packageId","version"]],"/show/",[21,2,["locationInfo","modulePath"]]]]],[8],[1,[21,2,["locationInfo","modulePath"]],false],[9],[0,"\\n"]],"parameters":[]},{"statements":[[0," Defined in "],[6,"b"],[8],[0," "],[1,[21,2,["locationInfo","packageId","name"]],false],[0,"-"],[1,[21,2,["locationInfo","packageId","version"]],false],[0," "],[9],[0," "],[1,[21,2,["locationInfo","moduleName"]],false],[0,"\\n"]],"parameters":[]}],[0," "],[9],[0,"\\n "],[6,"div"],[8],[1,[21,2,["doc"]],true],[9],[0,"\\n "],[9],[0,"\\n"]],"parameters":[2]},null],[0," "],[9],[0,"\\n"]],"parameters":[1]},null],[0," "],[9],[0,"\\n "],[9],[0,"\\n "],[9],[0,"\\n"],[9],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"haskell-code-explorer/templates/search.hbs"}})}),define("haskell-code-explorer/utils/api-urls",["exports","haskell-code-explorer/config/environment"],function(e,t){function n(e){return"."===e?"%20%2E":".."===e?"%20%2E%2E":e.replace(/\./g,"%2E")}Object.defineProperty(e,"__esModule",{value:!0}),e.urls=void 0 -e.urls={packageInfoUrl:function(e){return t.default.APP.staticUrlPrefix+"/"+e+"/"+t.default.APP.haskellCodeExplorerDirectory+"/packageInfo.json"},fileUrl:function(e,n){return t.default.APP.staticUrlPrefix+"/"+e+"/"+n},haskellModuleUrl:function(e,n){return t.default.APP.staticUrlPrefix+"/"+e+"/"+t.default.APP.haskellCodeExplorerDirectory+"/"+encodeURIComponent(encodeURIComponent(n))+".json"},packagesUrl:t.default.APP.apiUrlPrefix+"/packages",identifierDefinitionSiteUrl:function(e,o,s,l,i){return t.default.APP.apiUrlPrefix+"/definitionSite/"+e+"/"+s+"/"+o+"/"+l+"/"+n(encodeURIComponent(i))},modulePathUrl:function(e,n,o){return t.default.APP.apiUrlPrefix+"/modulePath/"+e+"/"+o+"/"+n},expressionsUrl:function(e,n,o,s,l,i){return t.default.APP.apiUrlPrefix+"/expressions/"+e+"/"+encodeURIComponent(n)+"/"+o+"/"+s+"/"+l+"/"+i},referencesUrl:function(e,n){return t.default.APP.apiUrlPrefix+"/references/"+e+"/"+encodeURIComponent(n)},identifierSearchUrl:function(e,o){return t.default.APP.apiUrlPrefix+"/identifiers/"+e+"/"+n(encodeURIComponent(o))},globalReferencesUrl:function(e){return t.default.APP.apiUrlPrefix+"/globalReferences/"+encodeURIComponent(e)},globalIdentifiersUrl:function(e){return t.default.APP.apiUrlPrefix+"/globalIdentifiers/"+n(encodeURIComponent(e))},hoogleDocsUrl:function(e,o,s,l){return t.default.APP.apiUrlPrefix+"/hoogleDocs/"+e+"/"+encodeURIComponent(o)+"/"+s+"/"+n(encodeURIComponent(l))}}}),define("haskell-code-explorer/utils/color-themes",["exports"],function(e){function t(e){return"\n body {\n color: "+e.defaultColor+" !important;\n background-color: "+e.backgroundColor+" !important;\n }\n input {\n color: "+e.defaultColor+" !important;\n background-color: "+e.backgroundColor+" !important;\n border-color: "+e.borderColor+" !important;\n }\n .package-content {\n border-top: 1px solid "+e.borderColor+" !important;\n }\n .header a {\n color : "+e.menuLinkColor+" !important;\n }\n a {\n color: "+e.typeColor+" !important;\n }\n span.link {\n color: "+e.typeColor+" !important;\n }\n .header {\n background-color: "+e.menuColor+" !important;\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n .declarations-content {\n background-color: "+e.navigationPanelColor+" !important;\n border: 1px solid "+e.borderColor+" !important;\n }\n .declarations-header {\n background-color: "+e.navigationPanelColor+" !important;\n border: 1px solid "+e.borderColor+" !important;\n }\n li.declaration {\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n .left-panel {\n background-color: "+e.navigationPanelColor+" !important;\n border-right: 1px solid "+e.borderColor+" !important;\n }\n .show-left-panel-button {\n background-color: "+e.navigationPanelColor+" !important;\n border-right:1px solid "+e.borderColor+" !important;\n border-bottom:1px solid "+e.borderColor+" !important;\n }\n .right-panel {\n background-color: "+e.backgroundColor+" !important;\n }\n a.jstree-anchor {\n color: "+e.defaultColor+" !important;\n }\n .declaration > a {\n color: "+e.defaultColor+" !important;\n }\n .highlighted-line {\n background : "+e.highlightedLineColor+" !important;\n }\n table.source-code {\n background-color: "+e.backgroundColor+" !important;\n color: "+e.defaultColor+" !important;\n }\n .jstree-clicked {\n background-color: "+e.backgroundColor+" !important;\n }\n .jstree-hovered {\n background-color: "+e.backgroundColor+" !important;\n }\n ul.autocomplete-items {\n background-color: "+e.backgroundColor+" !important;\n border-top: 1px solid "+e.borderColor+" !important;\n border-left: 1px solid "+e.borderColor+" !important;\n border-right: 1px solid "+e.borderColor+" !important;\n }\n ul.autocomplete-items > li {\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n ul.autocomplete-items > li:hover {\n background-color: "+e.highlightedLineColor+" !important;\n }\n ul.autocomplete-items > li.highlighted {\n background-color: "+e.highlightedLineColor+" !important;\n }\n .source-code-snippet {\n color: "+e.defaultColor+" !important;\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n .source-code-snippet:hover {\n background-color: "+e.highlightedLineColor+" !important;\n }\n .bottom-panel {\n background-color: "+e.backgroundColor+" !important;\n border-top: 1px solid "+e.borderColor+" !important;\n }\n .bottom-panel-header {\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n .paginated-list-header {\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n li.search-result {\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n .search-results-header {\n border-bottom: 1px solid "+e.borderColor+" !important;\n }\n .info-window-content {\n border-top: 1px solid "+e.borderColor+" !important;\n }\n .info-window {\n border: 1px solid "+e.borderColor+" !important;\n background-color:"+e.infoWindowColor+" !important;\n color: "+e.defaultColor+" !important;\n }\n .type-info {\n border-top: 1px solid "+e.borderColor+" !important;\n }\n .references-packages {\n border-right:1px solid "+e.borderColor+" !important;\n }"}function n(e){var n=document.createElement("style") -n.type="text/css",n.innerHTML=t(e),n.id="color-theme" -var o=document.querySelector("style#color-theme") -o&&o.parentElement.removeChild(o),document.getElementsByTagName("head")[0].appendChild(n)}Object.defineProperty(e,"__esModule",{value:!0}) -var o={id:"darkTheme",name:"Dark theme",description:"Dark theme (Monokai based)",defaultColor:"#F8F8F2",backgroundColor:"#272822",typeColor:"#66D9EF",literalColor:"#E6DB74",topLevelIdFromCurrentModule:"#A6E22E",localIdentifierColor:["#F0A3FF","#0075DC","#993F00","#2BCE48","#FFCC99","#808080","#94FFB5","#8F7C00","#C20088","#FFA405","#FFA8BB","#426600","#FF0010","#5EF1F2","#00998F","#E0FF66","#FFFF80","#FFFF00","#FF5005"],menuColor:"#3c3b37",menuLinkColor:"#F8F8F2",infoWindowColor:"#3c3b37",navigationPanelColor:"#3c3b37",linkColor:"#0366d6",borderColor:"#535557",highlightedLineColor:"#4a4a4a"},s={id:"lightTheme",name:"Light theme",description:"Light theme (Github based)",defaultColor:"#24292e",backgroundColor:"#ffffff",typeColor:"#005cc5",literalColor:"#032f62",topLevelIdFromCurrentModule:"#6f42c1",localIdentifierColor:["#005C31","#2BCE48","#808080","#8F7C00","#C20088","#FFA405","#ffa8bb","#426600","#FF0010","#09d7d8","#00998F","#990000","#FF5005"],menuColor:"#f2f4f8",menuLinkColor:"#24292e",infoWindowColor:"#f2f4f8",navigationPanelColor:"#f2f4f8",linkColor:"#0366d6",borderColor:"#e1e4e8",highlightedLineColor:"#eaeaea"},l={darkTheme:o,lightTheme:s} -e.updateColorThemeCss=n,e.colorThemeToCss=t,e.themes=l}),define("haskell-code-explorer/utils/go-to-definition",["exports"],function(e){function t(e){var t=e.modulePath,n=e.packageId.name+"-"+e.packageId.version,o="" -return 1!=e.startLine&&(o="#L"+e.startLine),"/package/"+n+"/show/"+t+o}function n(e,t){var n="" -return"Mod"!==t.entity&&(n="#"+encodeURIComponent(t.name)),"https://hackage.haskell.org/package/"+e+"/docs/src/"+t.moduleName+".html"+n}function o(e,t){return 2===e?window.open(t,"_blank"):1==e&&(window.location=t),!1}function s(e){if(e){var t=window.location.origin+window.location.pathname+"#L"+e -location.href!=t&&(window.location.hash="#L"+e)}}function l(e,l,i,r){if("ExactLocation"===l.tag){var a=t(l) -l.startLine!==r&&s(r),o(i,a)}else if("ApproximateLocation"===l.tag&&0!==l.moduleName.indexOf("Paths_")){var c=l.packageId.name+"-"+l.packageId.version -"Mod"===l.entity?e.loadDefinitionSite(c,l.moduleName,l.componentId,l.entity,l.moduleName).then(function(e){var t=e.location.packageId.name+"-"+e.location.packageId.version -o(i,"/package/"+t+"/show/"+e.location.modulePath)}).catch(function(){o(i,n(c,l))}):e.loadDefinitionSite(c,l.moduleName,l.componentId,l.entity,l.name).then(function(e){if("ExactLocation"===e.location.tag){var a=t(e.location) -l.startLine!==r&&s(r),o(i,a)}else s(r),o(i,n(c,l))}).catch(function(e){console.log(e),s(r),o(i,n(c,l))})}else alert("No location info")}Object.defineProperty(e,"__esModule",{value:!0}),e.goToDefinition=l,e.openUrl=o}),define("haskell-code-explorer/utils/language-extensions",["exports"],function(e){function t(e){return e.replace(o,function(e){var t=n[e] -return n?"<a target='_blank' title='"+t.description+"' href='"+t.link+"'>"+e+"</a>":e})}Object.defineProperty(e,"__esModule",{value:!0}) -var n={AllowAmbiguousTypes:{description:"Allow the user to write ambiguous types, and the type inference engine to infer them.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XAllowAmbiguousTypes"},ApplicativeDo:{description:"Allows do-notation for types that are Applicative as well as Monad. When enabled, desugaring do notation tries to use (*) and fmap and join as far as possible.",link:"https://ghc.haskell.org/trac/ghc/wiki/ApplicativeDo#Summary"},Arrows:{description:"Enable arrow notation.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XArrows"},AutoDeriveTypeable:{description:"(deprecated) Deprecated in favour of DeriveDataTypeable.",link:"https://haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#auto-derive-typeable"},BangPatterns:{description:"Enable a form of pattern which forces evaluation before an attempted match, and a form of strict let/where binding.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XBangPatterns"},BinaryLiterals:{description:"Allow the use of binary integer literal syntax (e.g. 0b11001001 to denote 201).",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XBinaryLiterals"},BlockArguments:{description:"Allow do blocks etc. in argument position.",link:"https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0010-block-arguments.rst#blockarguments-extension"},CApiFFI:{description:"Allow use of CAPI FFI calling convention (foreign import capi).",link:"https://haskell.org/ghc/docs/latest/html/users_guide/ffi-chap.html#the-capi-calling-convention"},CPP:{description:"Run the C preprocessor on Haskell source code.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#language-pragma"},ConstrainedClassMethods:{description:"Allow a class method's type to place additional constraints on a class type variable.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XConstrainedClassMethods"},ConstraintKinds:{description:"Allow type classimplicit parameterequality constraints to be used as types with the special kind constraint. Also generalise the (ctxt => ty) syntax so that any type of kind constraint can occur before the arrow.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XConstraintKinds"},DataKinds:{description:"Enable datatype promotion.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDataKinds"},DatatypeContexts:{description:"Allow contexts to be put on datatypes, e.g. the Eq a in data Eq a => Set a = NilSet | ConsSet a (Set a).",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDatatypeContexts"},DefaultSignatures:{description:"Enable support for default signatures.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDefaultSignatures"},DeriveAnyClass:{description:"Enable deriving for any class.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveAnyClass"},DeriveDataTypeable:{description:"Enable deriving for classes Typeable and Data.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveDataTypeable"},DeriveFoldable:{description:"Enable deriving for the Foldable class.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveFoldable"},DeriveFunctor:{description:"Enable deriving for the Functor class.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveFunctor"},DeriveGeneric:{description:"Enable deriving for Generic and Generic1.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveGeneric"},DeriveLift:{description:"Enable deriving for the Lift class.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveLift"},DeriveTraversable:{description:"Enable deriving for the Traversable class.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDeriveTraversable"},DerivingStrategies:{description:"Allow multiple deriving clauses, each optionally qualified with a strategy.",link:"https://ghc.haskell.org/trac/ghc/wiki/Commentary/Compiler/DerivingStrategies"},DisambiguateRecordFields:{description:"Allow a record field name to be disambiguated by the type of the record it's in.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XDisambiguateRecordFields"},DoAndIfThenElse:{description:"Improve the layout rule when if expressions are used in a do block.",link:"https://prime.haskell.org/wiki/DoAndIfThenElse"},DoRec:{description:"(deprecated) Deprecated in favour of RecursiveDo.",link:"http://hackage.haskell.org/package/Cabal-2.4.1.0/docs/Language-Haskell-Extension.html#v:RecursiveDo"},DuplicateRecordFields:{description:"Allow records to use duplicated field labels for accessors.",link:"https://ghc.haskell.org/trac/ghc/wiki/Records/OverloadedRecordFields/DuplicateRecordFields"},EmptyCase:{description:"Enable case expressions that have no alternatives. Also applies to lambda-case expressions if they are enabled.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XEmptyCase"},EmptyDataDecls:{description:"Allow data type declarations with no constructors.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XEmptyDataDecls"},ExistentialQuantification:{description:"Allow existentially-quantified data constructors.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XExistentialQuantification"},ExplicitForAll:{description:"Make forall a keyword in types, which can be used to give the generalisation explicitly.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XExplicitForAll"},ExplicitNamespaces:{description:"Enable explicit namespaces in module import/export lists.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XExplicitNamespaces"},ExtendedDefaultRules:{description:"Allow default instantiation of polymorphic types in more situations.",link:"http://downloads.haskell.org/~ghc/latest/docs/html/users_guide/ghci.html#type-defaulting-in-ghci"},ExtensibleRecords:{description:'Enable the "Trex" extensible records system.',link:"http://haskell.org/hugs/pages/users_guide/hugs-only.html#TREX"},FlexibleContexts:{description:"Relax some restrictions on the form of the context of a type signature.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XFlexibleContexts"},FlexibleInstances:{description:"Relax some restrictions on the form of the context of an instance declaration.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XFlexibleInstances"},ForeignFunctionInterface:{description:"Enable the Foreign Function Interface. In GHC, implements the standard Haskell 98 Foreign Function Interface Addendum, plus some GHC-specific extensions.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#language-pragma"},FunctionalDependencies:{description:"Allow a specification attached to a multi-parameter type class which indicates that some parameters are entirely determined by others. The implementation will check that this property holds for the declared instances, and will use this property to reduce ambiguity in instance resolution.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XFunctionalDependencies"},GADTSyntax:{description:"Enable GADT syntax for declaring ordinary algebraic datatypes.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XGADTSyntax"},GADTs:{description:"Enable generalized algebraic data types, in which type variables may be instantiated on a per-constructor basis. Implies GADTSyntax.",link:"https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#generalised-algebraic-data-types-gadts"},GHCForeignImportPrim:{description:"Allow GHC primops, written in C--, to be imported into a Haskell file.",link:"https://ghc.haskell.org/trac/ghc/wiki/Commentary/PrimOps"},GeneralizedNewtypeDeriving:{description:"Allow a type declared with newtype to use deriving for any class with an instance for the underlying type.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XGeneralizedNewtypeDeriving"},Generics:{description:"(deprecated) Enable generic type classes, with default instances defined in terms of the algebraic structure of a type.",link:"https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#generic-classes"},HereDocuments:{description:"Enable an alternate syntax for string literals, with string templating.",link:"http://haskell.org/hugs/pages/users_guide/here-documents.html"},HexFloatLiterals:{description:"Allow use of hexadecimal literal notation for floating-point values.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#hex-float-literals"},ImplicitParams:{description:"Enable implicit function parameters with dynamic scope.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XImplicitParams"},ImplicitPrelude:{description:"Enable the implicit importing of the module Prelude. When disabled, when desugaring certain built-in syntax into ordinary identifiers, use whatever is in scope rather than the Prelude -- version.",link:"https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#rebindable-syntax-and-the-implicit-prelude-import"},ImpredicativeTypes:{description:"(deprecated) Allow a type variable to be instantiated at a polymorphic type.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XImpredicativeTypes"},IncoherentInstances:{description:"Implies OverlappingInstances. Allow the implementation to choose an instance even when it is possible that further instantiation of types will lead to a more specific instance being applicable.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XIncoherentInstances"},InstanceSigs:{description:"Allow type signatures to be specified in instance declarations.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XInstanceSigs"},InterruptibleFFI:{description:"Enable interruptible FFI.",link:"https://haskell.org/ghc/docs/latest/html/users_guide/ffi-chap.html#interruptible-foreign-calls"},KindSignatures:{description:"Allow an explicit kind signature giving the kind of types over which a type variable ranges.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XKindSignatures"},LambdaCase:{description:"Enable support lambda-case expressions.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XLambdaCase"},LiberalTypeSynonyms:{description:"Defer validity checking of types until after expanding type synonyms, relaxing the constraints on how synonyms may be used.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XLiberalTypeSynonyms"},MagicHash:{description:"Allow the character # as a postfix modifier on identifiers. Also enables literal syntax for unboxed values.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMagicHash"},MonadComprehensions:{description:"Enable monad comprehensions, which generalise the list comprehension syntax to work for any monad.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMonadComprehensions"},MonadFailDesugaring:{description:"A temporary extension to help library authors check if their code will compile with the new planned desugaring of fail.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-MonadFailDesugaring"},MonoLocalBinds:{description:"Local (let and where) bindings are monomorphic.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMonoLocalBinds"},MonoPatBinds:{description:"(deprecated) Has no effect.",link:"https://downloads.haskell.org/~ghc/7.6.3/docs/html/users_guide/monomorphism.html"},MonomorphismRestriction:{description:"Enable the dreaded monomorphism restriction.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNoMonomorphismRestriction"},MultiParamTypeClasses:{description:"Allow multiple parameters in a type class.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMultiParamTypeClasses"},MultiWayIf:{description:"Enable support for multi-way if-expressions.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XMultiWayIf"},NPlusKPatterns:{description:"Support for patterns of the form n + k, where k is an integer literal.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNPlusKPatterns"},NamedFieldPuns:{description:"Enable syntax for implicitly binding local names corresponding to the field names of a record. Puns bind specific names, unlike RecordWildCards.",link:"https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#extension-NamedFieldPuns"},NamedWildCards:{description:"Allow named placeholders written with a leading underscore inside type signatures. Wildcards with the same name unify to the same type.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNamedWildCards"},NegativeLiterals:{description:"Desugars negative literals directly (without using negate).",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNegativeLiterals"},NewQualifiedOperators:{description:"(deprecated) Change the syntax for qualified infix operators.",link:"http://www.haskell.org/ghc/docs/6.12.3/html/users_guide/syntax-extns.html#new-qualified-operators"},NondecreasingIndentation:{description:"Enable non-decreasing indentation for do blocks.",link:"https://haskell.org/ghc/docs/latest/html/users_guide/bugs.html#context-free-syntax"},NullaryTypeClasses:{description:"Enable support for type classes with no type parameter.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNullaryTypeClasses"},NumDecimals:{description:"Allow the use of floating literal syntax for all instances of Num, including Int and Integer.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XNumDecimals"},NumericUnderscores:{description:"Allow use of underscores in numeric literals.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-NumericUnderscores"},OverlappingInstances:{description:"Allow overlapping class instances, provided there is a unique most specific instance for each use.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XOverlappingInstances"},OverloadedLabels:{description:"Allows use of the #label syntax.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-OverloadedLabels"},OverloadedLists:{description:"Enable overloading of list literals, arithmetic sequences and list patterns using the IsList type class.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XOverloadedLists"},OverloadedStrings:{description:"Enable overloading of string literals using a type class, much like integer literals.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XOverloadedStrings"},PackageImports:{description:"Allow imports to be qualified by the package name the module is intended to be imported from, e.g.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPackageImports"},ParallelArrays:{description:"Enable parallel arrays syntax ([:, :]) for Data Parallel Haskell.",link:"http://www.haskell.org/haskellwiki/GHC/Data_Parallel_Haskell"},ParallelListComp:{description:"Provide syntax for writing list comprehensions which iterate over several lists together, like the zipWith family of functions.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-ParallelListComp"},PartialTypeSignatures:{description:"Allow anonymous placeholders (underscore) inside type signatures. The type inference engine will generate a message describing the type inferred at the hole's location.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPartialTypeSignatures"},PatternGuards:{description:"Enable a form of guard which matches a pattern and binds variables.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPatternGuards"},PatternSynonyms:{description:"Allow giving names to and abstracting over patterns.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPatternSynonyms"},PolyKinds:{description:"Enable kind polymorphism.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPolyKinds"},PostfixOperators:{description:"Relax the interpretation of left operator sections to allow unary postfix operators.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XPostfixOperators"},QuantifiedConstraints:{description:"Allow forall in constraints.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-QuantifiedConstraints"},QuasiQuotes:{description:"Enable quasi-quotation, a mechanism for defining new concrete syntax for expressions and patterns.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XQuasiQuotes"},Rank2Types:{description:"(deprecated) A synonym for RankNTypes.",link:"https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#arbitrary-rank-polymorphism"},RankNTypes:{description:"Allow a universally-quantified type to occur on the left of a function arrow.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRankNTypes"},RebindableSyntax:{description:"Makes much of the Haskell sugar be desugared into calls to the function with a particular name that is in scope.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRebindableSyntax"},RecordPuns:{description:"Deprecated, use NamedFieldPuns instead.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#record-puns"},RecordWildCards:{description:"Enable syntax for implicitly binding local names corresponding to the field names of a record. A wildcard binds all unmentioned names, unlike NamedFieldPuns.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRecordWildCards"},RecursiveDo:{description:"Allow recursive bindings in do blocks, using the rec keyword, or mdo, a variant of do.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRecursiveDo"},RegularPatterns:{description:'Allow regular pattern matching over lists, as discussed in the paper "Regular Expression Patterns" by Niklas Broberg, Andreas Farre and Josef Svenningsson, from ICFP \'04.',link:"https://stackoverflow.com/questions/37224366/how-to-resolve-an-unsupported-extension-regularpatterns-error"},RelaxedPolyRec:{description:"Relax the requirements on mutually-recursive polymorphic functions.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRelaxedPolyRec"},RestrictedTypeSynonyms:{description:"Enable type synonyms which are transparent in some definitions and opaque elsewhere, as a way of implementing abstract datatypes.",link:"http://haskell.org/hugs/pages/users_guide/restricted-synonyms.html"},RoleAnnotations:{description:"Enable explicit role annotations, like in (type role Foo representational representational).",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XRoleAnnotations"},Safe:{description:"Compile a module in the Safe, Safe Haskell mode -- a restricted form of the Haskell language to ensure type safety.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/safe_haskell.html#ghc-flag--XSafe"},SafeImports:{description:"Allow imports to be qualified with a safe keyword that requires the imported module be trusted as according to the Safe Haskell definition of trust.",link:"https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#safe-imports"},ScopedTypeVariables:{description:"Cause a type variable in a signature, which has an explicit forall quantifier, to scope over the definition of the accompanying value declaration.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XScopedTypeVariables"},StandaloneDeriving:{description:"Allow a standalone declaration which invokes the type class deriving mechanism.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XStandaloneDeriving"},StarIsType:{description:"Have * refer to Type.",link:"https://ghc.haskell.org/trac/ghc/wiki/Migration/8.6#StarIsType"},StaticPointers:{description:"Enable support for 'static pointers' (and the static keyword) to refer to globally stable names, even across different programs.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XStaticPointers"},Strict:{description:"Switches all pattern bindings to be strict by default (as if they had a bang using BangPatterns), ordinary patterns are recovered using ~. Implies StrictData.",link:"https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#ghc-flag--XStrict"},StrictData:{description:"Switches data type declarations to be strict by default (as if they had a bang using BangPatterns), and allow opt-in field laziness using ~.",link:"https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#ghc-flag--XStrictData"},TemplateHaskell:{description:"Enable Template Haskell, a system for compile-time metaprogramming.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTemplateHaskell"},TemplateHaskellQuotes:{description:"A subset of TemplateHaskell including only quoting.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-TemplateHaskellQuotes"},TraditionalRecordSyntax:{description:"Enable traditional record syntax (as supported by Haskell 98)",link:"https://haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#traditional-record-syntax"},TransformListComp:{description:"Enable generalized list comprehensions, supporting operations such as sorting and grouping.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTransformListComp"},Trustworthy:{description:"Compile a module in the Trustworthy, Safe Haskell mode -- no restrictions apply but the module is marked as trusted as long as the package the module resides in is trusted.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/safe_haskell.html#ghc-flag--XTrustworthy"},TupleSections:{description:"Enable the use of tuple sections, e.g. (, True) desugars into x -> (x, True).",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTupleSections"},TypeApplications:{description:"Enable explicit type applications with the syntax id @Int.",link:"https://ghc.haskell.org/trac/ghc/wiki/TypeApplication"},TypeFamilies:{description:"Allow data types and type synonyms which are indexed by types, i.e. ad-hoc polymorphism for types.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeFamilies"},TypeFamilyDependencies:{description:"Allow functional dependency annotations on type families to declare them as injective.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-TypeFamilyDependencies"},TypeInType:{description:"Dissolve the distinction between types and kinds, allowing the compiler to reason about kind equality and therefore enabling GADTs to be promoted to the type-level.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#kind-polymorphism"},TypeOperators:{description:"Allow the name of a type constructor, type class, or type variable to be an infix operator. * https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeOperators",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeOperators"},TypeSynonymInstances:{description:"Allow type synonyms in instance heads.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XTypeSynonymInstances"},UnboxedSums:{description:"Enable the use of unboxed sum syntax.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#extension-UnboxedSums"},UnboxedTuples:{description:"Enable unboxed tuples.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XUnboxedTuples"},UndecidableInstances:{description:"Ignore structural rules guaranteeing the termination of class instance resolution. Termination is guaranteed by a fixed-depth recursion stack, and compilation may fail if this depth is exceeded.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XUndecidableInstances"},UndecidableSuperClasses:{description:"Allow recursive (and therefore undecideable) super-class relationships.",link:"https://downloads.haskell.org/~ghc/master/users-guide/glasgow_exts.html#undecidable-or-recursive-superclasses"},UnicodeSyntax:{description:"Allow certain Unicode characters to stand for certain ASCII character sequences, e.g. keywords and punctuation.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XUnicodeSyntax"},UnliftedFFITypes:{description:"Allow the use of unboxed types as foreign types, e.g. in foreign import and foreign export.",link:"https://ghc.haskell.org/trac/ghc/wiki/Commentary/PrimOps#Foreignout-of-linePrimOpsandforeignimportprim"},Unsafe:{description:"Compile a module in the Unsafe, Safe Haskell mode so that modules compiled using Safe, Safe Haskell mode can't import it.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/safe_haskell.html#ghc-flag--XUnsafe"},ViewPatterns:{description:"Enable view patterns, which match a value by applying a function and matching on the result.",link:"https://www.haskell.org/ghc/docs/latest/html/users_guide/glasgow_exts.html#ghc-flag--XViewPatterns"},XmlSyntax:{description:'Allow concrete XML syntax to be used in expressions and patterns, as per the Haskell Server Pages extension language: http://www.haskell.org/haskellwiki/HSP. The ideas behind it are discussed in the paper "Haskell Server Pages through Dynamic Loading" by Niklas Broberg, from Haskell Workshop \'05.',link:"http://www.haskell.org/haskellwiki/HSP"}},o=new RegExp(Object.keys(n).join("|"),"g") -e.addLinksToLanguageExtensionsDocs=t}),define("haskell-code-explorer/utils/line-selection",["exports"],function(e){function t(e,t){var o=Array.prototype.slice.call(e.querySelectorAll("td.line-number")) -if(o.length>0){var l=function(){n(e)} -window.addEventListener("hashchange",l),t._onhashchange=l -var i=void 0,r=function(e){16===e.keyCode&&(i=!0)},a=function(e){16===e.keyCode&&(i=!1)} -document.addEventListener("keydown",r),document.addEventListener("keyup",a),t._onkeydown=r,t._onkeyup=a -var c=void 0,d=void 0 -o.forEach(function(t){t.onclick=function(){var t=parseInt(this.textContent) -i&&c?c!=t&&(d=t,c<d?(s(e,c,d),window.location.hash="L"+c+"-L"+d):(s(e,d,c),window.location.hash="L"+d+"-L"+c)):(c=t,d=null,s(e,c,c),window.location.hash="L"+t)}}) -var u=n(e) -u.length&&(c=u[0],d=u[1])}}function n(e){var t=window.location.hash.slice(1) -if(!t)return s(e,0,0),[] -if(t.includes("-")){var n=t.split("-"),l=parseInt(n[0].substring(1)),i=parseInt(n[1].substring(1)) -if(l&&i&&l<=i){s(e,l,i) -var r=e.querySelector("td#LC"+l) -return r&&o(r,e),[l,i]}}else{var a=parseInt(t.substring(1)) -if(a){s(e,a,a) -var c=e.querySelector("td#LC"+a) -return c&&o(c,e),[a]}}}function o(e,t){e.parentNode.scrollIntoView() -var n=t.parentNode.parentNode,o=n.offsetHeight -t.offsetHeight-n.scrollTop>o&&(n.scrollTop=n.scrollTop-(o/2-20))}function s(e,t,n){Array.prototype.slice.call(e.querySelectorAll("td.line-content")).forEach(function(e){var o=parseInt(e.id.substring(2)) -o>=t&&o<=n?e.classList.add("highlighted-line"):e.classList.remove("highlighted-line")})}Object.defineProperty(e,"__esModule",{value:!0}),e.initializeLineSelection=t,e.highlightLines=s,e.highlightSelectedLines=n}),define("haskell-code-explorer/config/environment",[],function(){try{var e="haskell-code-explorer/config/environment",t=document.querySelector('meta[name="'+e+'"]').getAttribute("content"),n=JSON.parse(unescape(t)),o={default:n} -return Object.defineProperty(o,"__esModule",{value:!0}),o}catch(t){throw new Error('Could not read config from meta tag with name "'+e+'".')}}),runningTests||require("haskell-code-explorer/app").default.create({staticUrlPrefix:"/files",apiUrlPrefix:"/api",haskellCodeExplorerDirectory:".haskell-code-explorer",title:"Haskell Code Explorer",name:"haskell-code-explorer",version:"0.0.1+571363af"}) diff --git a/javascript/release/assets/haskell-code-explorer-717832df8786392c9b8a9bd8010463d2.css b/javascript/release/assets/haskell-code-explorer-717832df8786392c9b8a9bd8010463d2.css deleted file mode 100644 index 91d1666..0000000 --- a/javascript/release/assets/haskell-code-explorer-717832df8786392c9b8a9bd8010463d2.css +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Bootstrap v4.0.0 (https://getbootstrap.com) - * Copyright 2011-2018 The Bootstrap Authors - * Copyright 2011-2018 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */dd,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem}dl,ol,pre,ul{margin-top:0}address,dl,ol,p,pre,ul{margin-bottom:1rem}body,caption{text-align:left}pre,textarea{overflow:auto}article,aside,dialog,figcaption,figure,footer,header,hgroup,legend,main,nav,section{display:block}address,legend{line-height:inherit}progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible}.btn-outline-danger,.btn-outline-dark,.btn-outline-info,.btn-outline-light,.btn-outline-primary,.btn-outline-success,.btn-outline-warning,.btn:not(:disabled):not(.disabled).active,.btn:not(:disabled):not(.disabled):active{background-image:none}.dropdown-menu,.nav,.navbar-nav{list-style:none}:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-weight:400;line-height:1.5;color:#212529;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}h1,h2,h3,h4,h5,h6{margin-top:0}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0}.btn:not(:disabled):not(.disabled),.navbar-toggler:not(:disabled):not(.disabled),.page-link:not(:disabled):not(.disabled),summary{cursor:pointer}address{font-style:normal}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}blockquote,figure{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]),a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-size:1em}pre{-ms-overflow-style:scrollbar}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;caption-side:bottom}th{text-align:inherit}label,output{display:inline-block}button{border-radius:0}button:focus{outline:dotted 1px;outline:-webkit-focus-ring-color auto 5px}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[type=submit],[type=reset],button,html [type=button]{-webkit-appearance:button}[type=submit]::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;color:inherit;white-space:normal}.badge,.btn,.dropdown-header,.dropdown-item,.input-group-text,.navbar-brand{white-space:nowrap}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}.display-1,.display-2,.display-3,.display-4{line-height:1.2}summary{display:list-item}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.2;color:inherit}.blockquote,hr{margin-bottom:1rem}.display-1,.display-2,.display-3,.display-4,.lead{font-weight:300}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem}.display-1{font-size:6rem}.display-2{font-size:5.5rem}.display-3{font-size:4.5rem}.display-4{font-size:3.5rem}hr{box-sizing:content-box;height:0;margin-top:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014 \00A0"}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}a>code,pre code{color:inherit}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}code{word-break:break-word}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}.container,.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto;width:100%}.btn,.btn-link,.dropdown-item{font-weight:400}pre{display:block}pre code{font-size:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;max-width:100%}.col-auto{flex:0 0 auto;width:auto;max-width:none}.col-1{flex:0 0 8.33333%;max-width:8.33333%}.col-2{flex:0 0 16.66667%;max-width:16.66667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.33333%;max-width:33.33333%}.col-5{flex:0 0 41.66667%;max-width:41.66667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.33333%;max-width:58.33333%}.col-8{flex:0 0 66.66667%;max-width:66.66667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.33333%;max-width:83.33333%}.col-11{flex:0 0 91.66667%;max-width:91.66667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:none}.col-sm-1{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.33333%;max-width:33.33333%}.col-sm-5{flex:0 0 41.66667%;max-width:41.66667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.33333%;max-width:58.33333%}.col-sm-8{flex:0 0 66.66667%;max-width:66.66667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.33333%;max-width:83.33333%}.col-sm-11{flex:0 0 91.66667%;max-width:91.66667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.col-md-auto{flex:0 0 auto;width:auto;max-width:none}.col-md-1{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2{flex:0 0 16.66667%;max-width:16.66667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.33333%;max-width:33.33333%}.col-md-5{flex:0 0 41.66667%;max-width:41.66667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.33333%;max-width:58.33333%}.col-md-8{flex:0 0 66.66667%;max-width:66.66667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.33333%;max-width:83.33333%}.col-md-11{flex:0 0 91.66667%;max-width:91.66667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:none}.col-lg-1{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.33333%;max-width:33.33333%}.col-lg-5{flex:0 0 41.66667%;max-width:41.66667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}.col-lg-8{flex:0 0 66.66667%;max-width:66.66667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.33333%;max-width:83.33333%}.col-lg-11{flex:0 0 91.66667%;max-width:91.66667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:none}.col-xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.33333%;max-width:33.33333%}.col-xl-5{flex:0 0 41.66667%;max-width:41.66667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.33333%;max-width:58.33333%}.col-xl-8{flex:0 0 66.66667%;max-width:66.66667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.33333%;max-width:83.33333%}.col-xl-11{flex:0 0 91.66667%;max-width:91.66667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}}.table{width:100%;max-width:100%;margin-bottom:1rem;background-color:transparent}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table .table{background-color:#fff}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#212529;border-color:#32383e}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#212529}.table-dark td,.table-dark th,.table-dark thead th{border-color:#32383e}.table-dark.table-bordered,.table-responsive>.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.collapsing,.modal,.modal-open,.progress{overflow:hidden}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:not([size]):not([multiple]){height:calc(2.25rem + 2px)}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;background-color:transparent;border:solid transparent;border-width:1px 0}.custom-file-input.is-valid~.custom-file-label,.custom-select.is-valid,.form-control.is-valid,.was-validated .custom-file-input:valid~.custom-file-label,.was-validated .custom-select:valid,.was-validated .form-control:valid{border-color:#28a745}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm,.input-group-lg>.form-control-plaintext.form-control,.input-group-lg>.input-group-append>.form-control-plaintext.btn,.input-group-lg>.input-group-append>.form-control-plaintext.input-group-text,.input-group-lg>.input-group-prepend>.form-control-plaintext.btn,.input-group-lg>.input-group-prepend>.form-control-plaintext.input-group-text,.input-group-sm>.form-control-plaintext.form-control,.input-group-sm>.input-group-append>.form-control-plaintext.btn,.input-group-sm>.input-group-append>.form-control-plaintext.input-group-text,.input-group-sm>.input-group-prepend>.form-control-plaintext.btn,.input-group-sm>.input-group-prepend>.form-control-plaintext.input-group-text{padding-right:0;padding-left:0}.form-control-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-sm>.input-group-append>select.btn:not([size]):not([multiple]),.input-group-sm>.input-group-append>select.input-group-text:not([size]):not([multiple]),.input-group-sm>.input-group-prepend>select.btn:not([size]):not([multiple]),.input-group-sm>.input-group-prepend>select.input-group-text:not([size]):not([multiple]),.input-group-sm>select.form-control:not([size]):not([multiple]),select.form-control-sm:not([size]):not([multiple]){height:calc(1.8125rem + 2px)}.form-control-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-lg>.input-group-append>select.btn:not([size]):not([multiple]),.input-group-lg>.input-group-append>select.input-group-text:not([size]):not([multiple]),.input-group-lg>.input-group-prepend>select.btn:not([size]):not([multiple]),.input-group-lg>.input-group-prepend>select.input-group-text:not([size]):not([multiple]),.input-group-lg>select.form-control:not([size]):not([multiple]),select.form-control-lg:not([size]):not([multiple]){height:calc(2.875rem + 2px)}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:inline-flex;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.invalid-tooltip,.valid-tooltip{position:absolute;z-index:5;max-width:100%;padding:.5rem;line-height:1;border-radius:.2rem;top:100%}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{display:none;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(40,167,69,.8)}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip,.was-validated .custom-select:valid~.valid-feedback,.was-validated .custom-select:valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.form-check-input.is-valid~.form-check-label,.was-validated .custom-control-input:valid~.custom-control-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.custom-select.is-valid:focus,.form-control.is-valid:focus,.was-validated .custom-select:valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{background-color:#71dd8a}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(40,167,69,.25)}.custom-file-input.is-valid~.custom-file-label::before,.was-validated .custom-file-input:valid~.custom-file-label::before{border-color:inherit}.custom-file-input.is-invalid~.custom-file-label,.custom-select.is-invalid,.form-control.is-invalid,.was-validated .custom-file-input:invalid~.custom-file-label,.was-validated .custom-select:invalid,.was-validated .form-control:invalid{border-color:#dc3545}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{display:none;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(220,53,69,.8)}.collapsing,.dropdown,.dropup{position:relative}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip,.was-validated .custom-select:invalid~.invalid-feedback,.was-validated .custom-select:invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.form-check-input.is-invalid~.form-check-label,.was-validated .custom-control-input:invalid~.custom-control-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.custom-select.is-invalid:focus,.form-control.is-invalid:focus,.was-validated .custom-select:invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{background-color:#efa2a9}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(220,53,69,.25)}.custom-file-input.is-invalid~.custom-file-label::before,.was-validated .custom-file-input:invalid~.custom-file-label::before{border-color:inherit}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:flex;flex-flow:row wrap;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:flex;align-items:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:flex;flex:0 0 auto;flex-flow:row wrap;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .input-group{width:auto}.form-inline .form-check{display:flex;align-items:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn-block,input[type=submit].btn-block,input[type=button].btn-block,input[type=reset].btn-block{width:100%}.btn{display:inline-block;text-align:center;vertical-align:middle;user-select:none;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.btn:focus,.btn:hover{text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn-primary.focus,.btn-primary:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn.disabled,.btn:disabled{opacity:.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-success.focus,.btn-success:focus,.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-info.focus,.btn-info:focus,.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-warning.focus,.btn-warning:focus,.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-danger.focus,.btn-danger:focus,.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-light.focus,.btn-light:focus,.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-dark.focus,.btn-dark:focus,.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-outline-primary.focus,.btn-outline-primary:focus,.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary{color:#007bff;background-color:transparent;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-secondary.focus,.btn-outline-secondary:focus,.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary{color:#6c757d;background-color:transparent;background-image:none;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-success.focus,.btn-outline-success:focus,.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success{color:#28a745;background-color:transparent;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-info.focus,.btn-outline-info:focus,.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info{color:#17a2b8;background-color:transparent;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-warning.focus,.btn-outline-warning:focus,.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning{color:#ffc107;background-color:transparent;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-danger.focus,.btn-outline-danger:focus,.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger{color:#dc3545;background-color:transparent;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-light.focus,.btn-outline-light:focus,.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light{color:#f8f9fa;background-color:transparent;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-dark.focus,.btn-outline-dark:focus,.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark{color:#343a40;background-color:transparent;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-link,.btn-link:hover{background-color:transparent}.btn-link.focus,.btn-link:focus,.btn-link:hover{text-decoration:underline;border-color:transparent}.btn-link{color:#007bff}.btn-link:hover{color:#0056b3}.btn-link.focus,.btn-link:focus{box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block}.btn-block+.btn-block{margin-top:.5rem}.dropdown-toggle::after,.dropup .dropdown-toggle::after{width:0;height:0;vertical-align:.255em;content:""}.fade{opacity:0;transition:opacity .15s linear}.fade.show{opacity:1}.collapse{display:none}.collapse.show{display:block}tr.collapse.show{display:table-row}tbody.collapse.show{display:table-row-group}.collapsing{height:0;transition:height .35s ease}.dropdown-toggle::after{display:inline-block;margin-left:.255em;border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropup .dropdown-menu{margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropleft .dropdown-toggle::before,.dropright .dropdown-toggle::after{width:0;content:"";border-top:.3em solid transparent;border-bottom:.3em solid transparent;height:0}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;border-left:.3em solid;vertical-align:0}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-menu{margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;border-right:.3em solid;vertical-align:0}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn,.custom-control-label,.custom-file,.dropdown-header,.input-group-text,.nav{margin-bottom:0}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;color:#212529;text-align:inherit;background-color:transparent;border:0}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::before,.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child),.input-group>.custom-file:not(:first-child) .custom-file-label,.input-group>.custom-file:not(:first-child) .custom-file-label::before,.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;font-size:.875rem;color:#6c757d}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:0 1 auto}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group,.btn-group-vertical .btn+.btn,.btn-group-vertical .btn+.btn-group,.btn-group-vertical .btn-group+.btn,.btn-group-vertical .btn-group+.btn-group{margin-left:-1px}.btn-group>.btn:first-child,.dropdown-toggle-split::after{margin-left:0}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical .btn,.btn-group-vertical .btn-group{width:100%}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.input-group-append,.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text,.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control{margin-left:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control{position:relative;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file:focus,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file{display:flex;align-items:center}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-prepend{margin-right:-1px}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.nav,.navbar{flex-wrap:wrap}.input-group-text input[type=radio],.input-group-text input[type=checkbox]{margin-top:0}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-label::after,.custom-control-label::before{position:absolute;top:.25rem;display:block;width:1rem;height:1rem;content:"";left:0}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:active~.custom-control-label::before{color:#fff;background-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label::before{pointer-events:none;user-select:none;background-color:#dee2e6}.custom-checkbox .custom-control-input:checked~.custom-control-label::before,.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{background-color:#007bff}.custom-control-label::after{background-repeat:no-repeat;background-position:center center;background-size:50% 50%}.custom-file,.custom-select{display:inline-block;width:100%}.custom-file-input:lang(en)~.custom-file-label::after,.custom-file-label::after{content:"Browse"}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before,.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::before{background-color:#007bff}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{height:calc(2.25rem + 2px);padding:.375rem 1.75rem .375rem .75rem;line-height:1.5;color:#495057;vertical-align:middle;background:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center no-repeat #fff;background-size:8px 10px;border:1px solid #ced4da;border-radius:.25rem;appearance:none}.custom-select-lg,.custom-select-sm{padding-top:.375rem;padding-bottom:.375rem}.custom-file-input:focus~.custom-file-control::before,.custom-select:focus{border-color:#80bdff}.custom-select:focus{outline:0;box-shadow:inset 0 1px 2px rgba(0,0,0,.075),0 0 5px rgba(128,189,255,.5)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{opacity:0}.custom-select-sm{height:calc(1.8125rem + 2px);font-size:75%}.custom-select-lg{height:calc(2.875rem + 2px);font-size:125%}.custom-file,.custom-file-input,.custom-file-label{height:calc(2.25rem + 2px)}.custom-file{position:relative}.custom-file-input{position:relative;z-index:2;width:100%;margin:0;opacity:0}.custom-file-label,.custom-file-label::after{position:absolute;top:0;padding:.375rem .75rem;line-height:1.5;color:#495057;right:0}.custom-file-input:focus~.custom-file-control{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-label{left:0;z-index:1;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{bottom:0;z-index:3;display:block;height:calc(calc(2.25rem + 2px) - 1px * 2);background-color:#e9ecef;border-left:1px solid #ced4da;border-radius:0 .25rem .25rem 0}.nav{display:flex;padding-left:0}.nav-link,.navbar{padding:.5rem 1rem}.nav-link{display:block}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;align-items:center;justify-content:space-between}.navbar>.container,.navbar>.container-fluid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:center center no-repeat;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .dropup .dropdown-menu{top:auto;bottom:100%}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .dropup .dropdown-menu{top:auto;bottom:100%}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .dropup .dropdown-menu{top:auto;bottom:100%}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .dropup .dropdown-menu{top:auto;bottom:100%}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .dropdown-menu-right{right:0;left:auto}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .dropup .dropdown-menu{top:auto;bottom:100%}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.modal-content,.popover{background-clip:padding-box}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{flex:1 1 auto;padding:1.25rem}.card-footer,.card-header{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03)}.card-title{margin-bottom:.75rem}.card-header,.card-subtitle,.card-text:last-child{margin-bottom:0}.card-subtitle{margin-top:-.375rem}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header-pills,.card-header-tabs{margin-right:-.625rem;margin-left:-.625rem}.card-header{border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-bottom:-.75rem;border-bottom:0}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.alert,.btn .badge,.page-link{position:relative}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:flex;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:flex;flex:1 0 0%;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:flex;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:first-child .card-header,.card-group>.card:first-child .card-img-top{border-top-right-radius:0}.card-group>.card:first-child .card-footer,.card-group>.card:first-child .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:last-child .card-header,.card-group>.card:last-child .card-img-top{border-top-left-radius:0}.card-group>.card:last-child .card-footer,.card-group>.card:last-child .card-img-bottom{border-bottom-left-radius:0}.card-group>.card:only-child{border-radius:.25rem}.card-group>.card:only-child .card-header,.card-group>.card:only-child .card-img-top{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-group>.card:only-child .card-footer,.card-group>.card:only-child .card-img-bottom{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-group>.card:not(:first-child):not(:last-child):not(:only-child),.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-footer,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-header,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-top{border-radius:0}.card-columns{column-count:3;column-gap:1.25rem}.card-columns .card{display:inline-block;width:100%}}.breadcrumb,.pagination{border-radius:.25rem;list-style:none}.card-columns .card{margin-bottom:.75rem}.breadcrumb{display:flex;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;background-color:#e9ecef}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;padding-left:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0}.page-link,.popover-body,.popover-header{padding:.5rem .75rem}.page-link{display:block;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.close:not(:disabled):not(.disabled),.ember-radio-button,.identifier,td.line-number{cursor:pointer}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.badge,.close{font-weight:700;line-height:1}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;text-align:center;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}.badge-primary[href]:focus,.badge-primary[href]:hover{color:#fff;text-decoration:none;background-color:#0062cc}.badge-secondary{color:#fff;background-color:#6c757d}.badge-secondary[href]:focus,.badge-secondary[href]:hover{color:#fff;text-decoration:none;background-color:#545b62}.badge-success{color:#fff;background-color:#28a745}.badge-success[href]:focus,.badge-success[href]:hover{color:#fff;text-decoration:none;background-color:#1e7e34}.badge-info{color:#fff;background-color:#17a2b8}.badge-info[href]:focus,.badge-info[href]:hover{color:#fff;text-decoration:none;background-color:#117a8b}.badge-warning{color:#212529;background-color:#ffc107}.badge-warning[href]:focus,.badge-warning[href]:hover{color:#212529;text-decoration:none;background-color:#d39e00}.badge-danger{color:#fff;background-color:#dc3545}.badge-danger[href]:focus,.badge-danger[href]:hover{color:#fff;text-decoration:none;background-color:#bd2130}.badge-light{color:#212529;background-color:#f8f9fa}.badge-light[href]:focus,.badge-light[href]:hover{color:#212529;text-decoration:none;background-color:#dae0e5}.badge-dark{color:#fff;background-color:#343a40}.badge-dark[href]:focus,.badge-dark[href]:hover{color:#fff;text-decoration:none;background-color:#1d2124}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:flex;height:1rem;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:flex;flex-direction:column;justify-content:center;color:#fff;text-align:center;background-color:#007bff;transition:width .6s ease}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}.media{display:flex;align-items:flex-start}.media-body{flex:1}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item:focus,.list-group-item:hover{z-index:1;text-decoration:none}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.popover,.tooltip{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-style:normal;font-weight:400;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;text-decoration:none;word-wrap:break-word}.modal-title,.popover,.tooltip{line-height:1.5}.popover,.text-hide,.tooltip{text-shadow:none}.close:focus,.close:hover{color:#000;text-decoration:none;opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;outline:0}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-25%)}.modal.show .modal-dialog{transform:translate(0,0)}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - (.5rem * 2))}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #e9ecef;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;align-items:center;justify-content:flex-end;padding:1rem;border-top:1px solid #e9ecef}.popover,.popover .arrow,.popover .arrow::after,.popover .arrow::before,.tooltip,.tooltip .arrow{position:absolute;display:block}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-centered{min-height:calc(100% - (1.75rem * 2))}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg{max-width:800px}}.tooltip{z-index:1070;margin:0;text-align:left;text-align:start;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{top:0;left:0;z-index:1060;max-width:276px;text-align:left;text-align:start;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top] .arrow,.bs-popover-top .arrow{bottom:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::after,.bs-popover-top .arrow::before{border-width:.5rem .5rem 0}.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::before{bottom:0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-top .arrow::after{bottom:1px;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right] .arrow,.bs-popover-right .arrow{left:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::after,.bs-popover-right .arrow::before{border-width:.5rem .5rem .5rem 0}.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::before{left:0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-right .arrow::after{left:1px;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom] .arrow,.bs-popover-bottom .arrow{top:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::after,.bs-popover-bottom .arrow::before{border-width:0 .5rem .5rem}.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::before{top:0;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-bottom .arrow::after{top:1px;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.carousel,.carousel-inner,.carousel-item{position:relative}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left] .arrow,.bs-popover-left .arrow{right:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::after,.bs-popover-left .arrow::before{border-width:.5rem 0 .5rem .5rem}.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::before{right:0;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-left .arrow::after{right:1px;border-left-color:#fff}.popover-header{margin-bottom:0;font-size:1rem;color:inherit;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{color:#212529}.carousel-inner{width:100%;overflow:hidden}.carousel-item{display:none;align-items:center;width:100%;transition:transform .6s ease;backface-visibility:hidden;perspective:1000px}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.carousel-item-next,.carousel-item-prev{position:absolute;top:0}.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{transform:translateX(0)}@supports (transform-style:preserve-3d){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{transform:translate3d(0,0,0)}}.active.carousel-item-right,.carousel-item-next{transform:translateX(100%)}@supports (transform-style:preserve-3d){.active.carousel-item-right,.carousel-item-next{transform:translate3d(100%,0,0)}}.active.carousel-item-left,.carousel-item-prev{transform:translateX(-100%)}@supports (transform-style:preserve-3d){.active.carousel-item-left,.carousel-item-prev{transform:translate3d(-100%,0,0)}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:center center no-repeat;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:10px;left:0;z-index:15;display:flex;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{position:relative;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;background-color:rgba(255,255,255,.5)}.carousel-indicators li::after,.carousel-indicators li::before{left:0;display:inline-block;height:10px;position:absolute;content:"";width:100%}.carousel-indicators li::before{top:-10px}.carousel-indicators li::after{bottom:-10px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-left,.rounded-top{border-top-left-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded{border-radius:.25rem!important}.rounded-circle{border-radius:50%!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.85714%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-bottom,.fixed-top{position:fixed;z-index:1030;right:0;left:0}.fixed-top{top:0}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;clip-path:none}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}.text-justify{text-align:justify!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.right-panel,ul.modules{bottom:0;overflow-x:auto}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0062cc!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#545b62!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#1e7e34!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#117a8b!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#d39e00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#bd2130!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#dae0e5!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#1d2124!important}.text-muted{color:#6c757d!important}.text-hide{font:0/0 a;color:transparent;background-color:transparent;border:0}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{blockquote,img,pre,tr{page-break-inside:avoid}*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #999}thead{display:table-header-group}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}.bottom-panel-header-content,.header-item{white-space:nowrap}body{font-size:14px}a,a:active,a:focus,a:hover,a:visited{outline:0}a.selected{text-decoration:underline}input:focus{outline:0}p{margin-top:1rem}label{margin-bottom:0}ol,ul{list-style:none;padding:0}li{list-style:none}.documentation{margin-top:10px}.documentation li{list-style:disc}.documentation ol,.documentation ul{padding-left:15px}.header,.package-header{padding:5px}.flex-container{display:flex;flex-direction:column;height:100%;width:100%}.absolute-container{position:absolute;top:0;bottom:0;left:0;right:0}.header{flex:none}.header img{float:left}.header-item{display:inline-block;margin-top:5px;font-size:1rem;margin-right:40px}.global-identifier-search-form,.package-search-form{margin-top:20px;max-width:500px}@media screen and (max-width:700px){.header-item{margin-right:10px;margin-left:10px}}.content{flex:auto;position:relative;overflow:auto}.packages{flex:auto;overflow-y:auto}.packages li{margin-bottom:5px}.packages a{margin-right:5px}.package-content{flex:auto;position:relative}.package-header-input{display:inline-block;margin-right:10px}.package-modules{margin-left:10px}.module-name{font-size:.7rem}.package-search-form{margin-bottom:10px}.package-header-filename{white-space:nowrap;margin-left:35px}.package-header-package-name{margin-right:10px;font-size:17px}.module-search-input{max-width:500px;margin:5px}ul.modules{position:absolute;top:50px;margin:0;padding-left:15px;left:0;right:0;display:flex;flex-direction:column;flex-wrap:wrap}ul.modules li{margin-right:10px}.left-panel{position:absolute;bottom:0;top:0;left:0;width:300px}.show-left-panel-button{position:absolute;top:0;right:-20px;z-index:2;width:20px;height:20px;text-align:center;vertical-align:middle;opacity:.6;display:none}.show-left-panel-button a{text-decoration:none}.show-left-panel-button:hover{opacity:1;cursor:pointer}.hide-file-tree{position:relative;top:8px;left:3px}.hide-declarations{margin:7px}.right-panel{position:absolute;top:0;right:0;left:300px;overflow-y:auto}.file-tree-container{overflow-x:hidden;overflow-y:auto;position:absolute;bottom:0;top:0;left:0;right:0}.bottom-panel,.bottom-panel-content,.file-container{position:absolute;right:0;overflow-x:auto;overflow-y:auto;bottom:0;left:0}.file-container{top:0}.bottom-panel{display:none;z-index:4}.bottom-panel-header{position:absolute;top:0;right:0;left:0;height:35px;padding:5px}.bottom-panel-content{top:35px}.bottom-panel-header-options{float:right}.source-code,code,pre{white-space:pre;line-height:1.25}.highlighted-identifier{border-radius:3px;box-shadow:0 0 0 1px #B4B4B4}td.line-number{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:1%;min-width:60px;text-align:left;padding-left:10px;opacity:.8}td.line-number:hover{opacity:1}td.line-content{padding-left:5px}.source-code{font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;tab-size:4}.break-word{word-wrap:break-word}code,pre{font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif!important;font-size:100%;color:unset}.source-code-font{font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;line-height:1.25}.source-code-snippet{padding:4px;text-decoration:none!important;display:block}.source-code-snippet>b{border-radius:3px;border:1px solid #B4B4B4;margin:-1px}.declarations div,.source-code-container{margin:5px}.source-code-snippet:hover{text-decoration:none}.declarations{position:fixed;top:150px;right:15px;width:450px;z-index:1}.declarations-header{opacity:.9;height:50px}.declarations-content{opacity:.9;position:absolute;top:50px;left:0;right:0;max-height:500px;overflow-y:auto;overflow-x:hidden}@media screen and (max-width:1500px){.declarations{display:none}}.info-window-container{position:absolute;width:750px;z-index:10}.info-window-header{margin:5px;width:100%;cursor:move;cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.info-window-content{max-height:200px;overflow-x:auto;overflow-y:auto}.info-window-options{margin-right:10px;margin-left:10px;float:right}.ui-draggable-dragging .info-window-header{cursor:grabbing;cursor:-moz-grabbing;cursor:-webkit-grabbing}span.link{cursor:pointer;white-space:nowrap}span.link:hover{text-decoration:underline}.ui-resizable-n{height:13px!important}.ui-resizable-w{width:13px!important}.type-info{padding-top:5px;padding-bottom:5px}.type-component{display:inline-block}dd{margin-left:1em}.autocomplete-container{position:absolute;z-index:10;display:none;left:0}ul.autocomplete-items li{cursor:pointer;max-height:200px;overflow:hidden}.autocomplete-item{padding:5px}.file-tree-header{position:absolute;top:0;left:0;right:0;height:65px;margin:5px}.file-tree-content{position:absolute;top:70px;left:0;right:0;bottom:0;overflow-x:auto}button{color:#000}.paginated-list-header{position:absolute;top:0;left:0;right:0;height:40px;padding:5px;white-space:nowrap}.paginated-list-content{position:absolute;top:40px;bottom:0;left:0;right:0;overflow:auto}.pagination-button{font-size:10px}.search-results-header{position:absolute;top:0;left:0;right:0;height:35px;padding:5px;white-space:nowrap}.search-results-content{position:absolute;top:35px;bottom:0;left:0;right:0}.global-search-results-content{position:absolute;top:80px;bottom:0;left:0;right:0}.references,.references-packages{position:absolute;top:0;bottom:0}.search-result{padding:5px}.expression{margin-bottom:15px}.expressions,.identifier-info{margin:5px}.file-name{margin-left:5px}.identifier-module{margin-top:10px}.identifier-menu-item{margin-right:10px}.references-packages{width:230px;overflow:auto;padding:5px}.references{left:230px;right:0}
\ No newline at end of file diff --git a/javascript/release/assets/haskell.ico b/javascript/release/assets/haskell.ico Binary files differdeleted file mode 100644 index 37816fd..0000000 --- a/javascript/release/assets/haskell.ico +++ /dev/null diff --git a/javascript/release/assets/throbber-62be6ed2b189444b472b8000dc187240.gif b/javascript/release/assets/throbber-62be6ed2b189444b472b8000dc187240.gif Binary files differdeleted file mode 100644 index cd75035..0000000 --- a/javascript/release/assets/throbber-62be6ed2b189444b472b8000dc187240.gif +++ /dev/null diff --git a/javascript/release/assets/vendor-b97a1e7d03d00bb4514dc45da44b51ff.js b/javascript/release/assets/vendor-b97a1e7d03d00bb4514dc45da44b51ff.js deleted file mode 100644 index e0cf922..0000000 --- a/javascript/release/assets/vendor-b97a1e7d03d00bb4514dc45da44b51ff.js +++ /dev/null @@ -1,5059 +0,0 @@ -function createDeprecatedModule(e){define(e,["exports","ember-resolver/resolver","ember"],function(t,n,r){r.default.deprecate("Usage of `"+e+"` module is deprecated, please update to `ember-resolver`.",!1,{id:"ember-resolver.legacy-shims",until:"3.0.0"}),t.default=n.default})}window.EmberENV={FEATURES:{},EXTEND_PROTOTYPES:{Date:!1}} -var runningTests=!1,loader,define,requireModule,require,requirejs;(function(e){"use strict" -function t(){var e=Object.create(null) -return e.__=void 0,delete e.__,e}function n(e){throw new Error("an unsupported module was defined, expected `define(id, deps, module)` instead got: `"+e+"` arguments to define`")}function r(e,t,n,r){this.uuid=p++,this.id=e,this.deps=!t.length&&n.length?f:t,this.module={exports:{}},this.callback=n,this.hasExportsAsDep=!1,this.isAlias=r,this.reified=new Array(t.length),this.state="new"}function i(){}function o(e){this.id=e}function s(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}function a(e,t,n){for(var r=h[e]||h[e+"/index"];r&&r.isAlias;)r=h[r.id] -return r||s(e,t),n&&"pending"!==r.state&&"finalized"!==r.state&&(r.findDeps(n),n.push(r)),r}function u(e,t){if("."!==e.charAt(0))return e -for(var n=e.split("/"),r=t.split("/"),i=r.slice(0,-1),o=0,s=n.length;o<s;o++){var a=n[o] -if(".."===a){if(0===i.length)throw new Error("Cannot access parent module of root") -i.pop()}else{if("."===a)continue -i.push(a)}}return i.join("/")}function c(e){return!(!h[e]&&!h[e+"/index"])}var l={loader:loader,define:define,requireModule:requireModule,require:require,requirejs:requirejs} -requirejs=require=requireModule=function(e){for(var t=[],n=a(e,"(require)",t),r=t.length-1;r>=0;r--)t[r].exports() -return n.module.exports},loader={noConflict:function(t){var n,r -for(n in t)t.hasOwnProperty(n)&&l.hasOwnProperty(n)&&(r=t[n],e[r]=e[n],e[n]=l[n])},makeDefaultExport:!0} -var h=t(),d=t(),p=0,f=["require","exports","module"] -r.prototype.makeDefaultExport=function(){var e=this.module.exports -null===e||"object"!=typeof e&&"function"!=typeof e||void 0!==e.default||!Object.isExtensible(e)||(e.default=e)},r.prototype.exports=function(){if("finalized"===this.state||"reifying"===this.state)return this.module.exports -loader.wrapModules&&(this.callback=loader.wrapModules(this.id,this.callback)),this.reify() -var e=this.callback.apply(this,this.reified) -return this.reified.length=0,this.state="finalized",this.hasExportsAsDep&&void 0===e||(this.module.exports=e),loader.makeDefaultExport&&this.makeDefaultExport(),this.module.exports},r.prototype.unsee=function(){this.state="new",this.module={exports:{}}},r.prototype.reify=function(){if("reified"!==this.state){this.state="reifying" -try{this.reified=this._reify(),this.state="reified"}finally{"reifying"===this.state&&(this.state="errored")}}},r.prototype._reify=function(){for(var e=this.reified.slice(),t=0;t<e.length;t++){var n=e[t] -e[t]=n.exports?n.exports:n.module.exports()}return e},r.prototype.findDeps=function(e){if("new"===this.state){this.state="pending" -for(var t=this.deps,n=0;n<t.length;n++){var r=t[n],i=this.reified[n]={exports:void 0,module:void 0} -"exports"===r?(this.hasExportsAsDep=!0,i.exports=this.module.exports):"require"===r?i.exports=this.makeRequire():"module"===r?i.exports=this.module:i.module=a(u(r,this.id),this.id,e)}}},r.prototype.makeRequire=function(){var e=this.id,t=function(t){return require(u(t,e))} -return t.default=t,t.moduleId=e,t.has=function(t){return c(u(t,e))},t},define=function(e,t,i){var s=h[e] -s&&"new"!==s.state||(arguments.length<2&&n(arguments.length),Array.isArray(t)||(i=t,t=[]),h[e]=i instanceof o?new r(i.id,t,i,!0):new r(e,t,i,!1))},define.exports=function(e,t){var n=h[e] -if(!n||"new"===n.state)return n=new r(e,[],i,null),n.module.exports=t,n.state="finalized",h[e]=n,n},define.alias=function(e,t){return 2===arguments.length?define(t,new o(e)):new o(e)},requirejs.entries=requirejs._eak_seen=h,requirejs.has=c,requirejs.unsee=function(e){a(e,"(unsee)",!1).unsee()},requirejs.clear=function(){requirejs.entries=requirejs._eak_seen=h=t(),d=t()},define("foo",function(){}),define("foo/bar",[],function(){}),define("foo/asdf",["module","exports","require"],function(e,t,n){n.has("foo/bar")&&n("foo/bar")}),define("foo/baz",[],define.alias("foo")),define("foo/quz",define.alias("foo")),define.alias("foo","foo/qux"),define("foo/bar",["foo","./quz","./baz","./asdf","./bar","../foo"],function(){}),define("foo/main",["foo/bar"],function(){}),define.exports("foo/exports",{}),require("foo/exports"),require("foo/main"),require.unsee("foo/bar"),requirejs.clear(),"object"==typeof exports&&"object"==typeof module&&module.exports&&(module.exports={require:require,define:define})})(this),function e(t,n,r){function i(s,a){if(!n[s]){if(!t[s]){var u="function"==typeof require&&require -if(!a&&u)return u(s,!0) -if(o)return o(s,!0) -var c=new Error("Cannot find module '"+s+"'") -throw c.code="MODULE_NOT_FOUND",c}var l=n[s]={exports:{}} -t[s][0].call(l.exports,function(e){var n=t[s][1][e] -return i(n||e)},l,l.exports,e,t,n,r)}return n[s].exports}for(var o="function"==typeof require&&require,s=0;s<r.length;s++)i(r[s]) -return i}({1:[function(e,t,n){(function(t){"use strict" -function n(e,t,n){e[t]||Object[r](e,t,{writable:!0,configurable:!0,value:n})}if(e(327),e(328),e(2),t._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed") -t._babelPolyfill=!0 -var r="defineProperty" -n(String.prototype,"padLeft","".padStart),n(String.prototype,"padRight","".padEnd),"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill".split(",").forEach(function(e){[][e]&&n(Array,e,Function.call.bind([][e]))})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2,327:327,328:328}],2:[function(e,t,n){e(130),t.exports=e(23).RegExp.escape},{130:130,23:23}],3:[function(e,t,n){t.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!") -return e}},{}],4:[function(e,t,n){var r=e(18) -t.exports=function(e,t){if("number"!=typeof e&&"Number"!=r(e))throw TypeError(t) -return+e}},{18:18}],5:[function(e,t,n){var r=e(128)("unscopables"),i=Array.prototype -void 0==i[r]&&e(42)(i,r,{}),t.exports=function(e){i[r][e]=!0}},{128:128,42:42}],6:[function(e,t,n){t.exports=function(e,t,n,r){if(!(e instanceof t)||void 0!==r&&r in e)throw TypeError(n+": incorrect invocation!") -return e}},{}],7:[function(e,t,n){var r=e(51) -t.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!") -return e}},{51:51}],8:[function(e,t,n){"use strict" -var r=e(119),i=e(114),o=e(118) -t.exports=[].copyWithin||function(e,t){var n=r(this),s=o(n.length),a=i(e,s),u=i(t,s),c=arguments.length>2?arguments[2]:void 0,l=Math.min((void 0===c?s:i(c,s))-u,s-a),h=1 -for(u<a&&a<u+l&&(h=-1,u+=l-1,a+=l-1);l-- >0;)u in n?n[a]=n[u]:delete n[a],a+=h,u+=h -return n}},{114:114,118:118,119:119}],9:[function(e,t,n){"use strict" -var r=e(119),i=e(114),o=e(118) -t.exports=function(e){for(var t=r(this),n=o(t.length),s=arguments.length,a=i(s>1?arguments[1]:void 0,n),u=s>2?arguments[2]:void 0,c=void 0===u?n:i(u,n);c>a;)t[a++]=e -return t}},{114:114,118:118,119:119}],10:[function(e,t,n){var r=e(39) -t.exports=function(e,t){var n=[] -return r(e,!1,n.push,n,t),n}},{39:39}],11:[function(e,t,n){var r=e(117),i=e(118),o=e(114) -t.exports=function(e){return function(t,n,s){var a,u=r(t),c=i(u.length),l=o(s,c) -if(e&&n!=n){for(;c>l;)if((a=u[l++])!=a)return!0}else for(;c>l;l++)if((e||l in u)&&u[l]===n)return e||l||0 -return!e&&-1}}},{114:114,117:117,118:118}],12:[function(e,t,n){var r=e(25),i=e(47),o=e(119),s=e(118),a=e(15) -t.exports=function(e,t){var n=1==e,u=2==e,c=3==e,l=4==e,h=6==e,d=5==e||h,p=t||a -return function(t,a,f){for(var g,m,v=o(t),y=i(v),b=r(a,f,3),C=s(y.length),A=0,_=n?p(t,C):u?p(t,0):void 0;C>A;A++)if((d||A in y)&&(g=y[A],m=b(g,A,v),e))if(n)_[A]=m -else if(m)switch(e){case 3:return!0 -case 5:return g -case 6:return A -case 2:_.push(g)}else if(l)return!1 -return h?-1:c||l?l:_}}},{118:118,119:119,15:15,25:25,47:47}],13:[function(e,t,n){var r=e(3),i=e(119),o=e(47),s=e(118) -t.exports=function(e,t,n,a,u){r(t) -var c=i(e),l=o(c),h=s(c.length),d=u?h-1:0,p=u?-1:1 -if(n<2)for(;;){if(d in l){a=l[d],d+=p -break}if(d+=p,u?d<0:h<=d)throw TypeError("Reduce of empty array with no initial value")}for(;u?d>=0:h>d;d+=p)d in l&&(a=t(a,l[d],d,c)) -return a}},{118:118,119:119,3:3,47:47}],14:[function(e,t,n){var r=e(51),i=e(49),o=e(128)("species") -t.exports=function(e){var t -return i(e)&&(t=e.constructor,"function"!=typeof t||t!==Array&&!i(t.prototype)||(t=void 0),r(t)&&null===(t=t[o])&&(t=void 0)),void 0===t?Array:t}},{128:128,49:49,51:51}],15:[function(e,t,n){var r=e(14) -t.exports=function(e,t){return new(r(e))(t)}},{14:14}],16:[function(e,t,n){"use strict" -var r=e(3),i=e(51),o=e(46),s=[].slice,a={},u=function(e,t,n){if(!(t in a)){for(var r=[],i=0;i<t;i++)r[i]="a["+i+"]" -a[t]=Function("F,a","return new F("+r.join(",")+")")}return a[t](e,n)} -t.exports=Function.bind||function(e){var t=r(this),n=s.call(arguments,1),a=function(){var r=n.concat(s.call(arguments)) -return this instanceof a?u(t,r.length,r):o(t,r,e)} -return i(t.prototype)&&(a.prototype=t.prototype),a}},{3:3,46:46,51:51}],17:[function(e,t,n){var r=e(18),i=e(128)("toStringTag"),o="Arguments"==r(function(){return arguments}()),s=function(e,t){try{return e[t]}catch(e){}} -t.exports=function(e){var t,n,a -return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=s(t=Object(e),i))?n:o?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},{128:128,18:18}],18:[function(e,t,n){var r={}.toString -t.exports=function(e){return r.call(e).slice(8,-1)}},{}],19:[function(e,t,n){"use strict" -var r=e(72).f,i=e(71),o=e(93),s=e(25),a=e(6),u=e(39),c=e(55),l=e(57),h=e(100),d=e(29),p=e(66).fastKey,f=e(125),g=d?"_s":"size",m=function(e,t){var n,r=p(t) -if("F"!==r)return e._i[r] -for(n=e._f;n;n=n.n)if(n.k==t)return n} -t.exports={getConstructor:function(e,t,n,c){var l=e(function(e,r){a(e,l,t,"_i"),e._t=t,e._i=i(null),e._f=void 0,e._l=void 0,e[g]=0,void 0!=r&&u(r,n,e[c],e)}) -return o(l.prototype,{clear:function(){for(var e=f(this,t),n=e._i,r=e._f;r;r=r.n)r.r=!0,r.p&&(r.p=r.p.n=void 0),delete n[r.i] -e._f=e._l=void 0,e[g]=0},delete:function(e){var n=f(this,t),r=m(n,e) -if(r){var i=r.n,o=r.p -delete n._i[r.i],r.r=!0,o&&(o.n=i),i&&(i.p=o),n._f==r&&(n._f=i),n._l==r&&(n._l=o),n[g]--}return!!r},forEach:function(e){f(this,t) -for(var n,r=s(e,arguments.length>1?arguments[1]:void 0,3);n=n?n.n:this._f;)for(r(n.v,n.k,this);n&&n.r;)n=n.p},has:function(e){return!!m(f(this,t),e)}}),d&&r(l.prototype,"size",{get:function(){return f(this,t)[g]}}),l},def:function(e,t,n){var r,i,o=m(e,t) -return o?o.v=n:(e._l=o={i:i=p(t,!0),k:t,v:n,p:r=e._l,n:void 0,r:!1},e._f||(e._f=o),r&&(r.n=o),e[g]++,"F"!==i&&(e._i[i]=o)),e},getEntry:m,setStrong:function(e,t,n){c(e,t,function(e,n){this._t=f(e,t),this._k=n,this._l=void 0},function(){for(var e=this,t=e._k,n=e._l;n&&n.r;)n=n.p -return e._t&&(e._l=n=n?n.n:e._t._f)?"keys"==t?l(0,n.k):"values"==t?l(0,n.v):l(0,[n.k,n.v]):(e._t=void 0,l(1))},n?"entries":"values",!n,!0),h(t)}}},{100:100,125:125,25:25,29:29,39:39,55:55,57:57,6:6,66:66,71:71,72:72,93:93}],20:[function(e,t,n){var r=e(17),i=e(10) -t.exports=function(e){return function(){if(r(this)!=e)throw TypeError(e+"#toJSON isn't generic") -return i(this)}}},{10:10,17:17}],21:[function(e,t,n){"use strict" -var r=e(93),i=e(66).getWeak,o=e(7),s=e(51),a=e(6),u=e(39),c=e(12),l=e(41),h=e(125),d=c(5),p=c(6),f=0,g=function(e){return e._l||(e._l=new m)},m=function(){this.a=[]},v=function(e,t){return d(e.a,function(e){return e[0]===t})} -m.prototype={get:function(e){var t=v(this,e) -if(t)return t[1]},has:function(e){return!!v(this,e)},set:function(e,t){var n=v(this,e) -n?n[1]=t:this.a.push([e,t])},delete:function(e){var t=p(this.a,function(t){return t[0]===e}) -return~t&&this.a.splice(t,1),!!~t}},t.exports={getConstructor:function(e,t,n,o){var c=e(function(e,r){a(e,c,t,"_i"),e._t=t,e._i=f++,e._l=void 0,void 0!=r&&u(r,n,e[o],e)}) -return r(c.prototype,{delete:function(e){if(!s(e))return!1 -var n=i(e) -return!0===n?g(h(this,t)).delete(e):n&&l(n,this._i)&&delete n[this._i]},has:function(e){if(!s(e))return!1 -var n=i(e) -return!0===n?g(h(this,t)).has(e):n&&l(n,this._i)}}),c},def:function(e,t,n){var r=i(o(t),!0) -return!0===r?g(e).set(t,n):r[e._i]=n,e},ufstore:g}},{12:12,125:125,39:39,41:41,51:51,6:6,66:66,7:7,93:93}],22:[function(e,t,n){"use strict" -var r=e(40),i=e(33),o=e(94),s=e(93),a=e(66),u=e(39),c=e(6),l=e(51),h=e(35),d=e(56),p=e(101),f=e(45) -t.exports=function(e,t,n,g,m,v){var y=r[e],b=y,C=m?"set":"add",A=b&&b.prototype,_={},I=function(e){var t=A[e] -o(A,e,"delete"==e?function(e){return!(v&&!l(e))&&t.call(this,0===e?0:e)}:"has"==e?function(e){return!(v&&!l(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return v&&!l(e)?void 0:t.call(this,0===e?0:e)}:"add"==e?function(e){return t.call(this,0===e?0:e),this}:function(e,n){return t.call(this,0===e?0:e,n),this})} -if("function"==typeof b&&(v||A.forEach&&!h(function(){(new b).entries().next()}))){var w=new b,x=w[C](v?{}:-0,1)!=w,k=h(function(){w.has(1)}),j=d(function(e){new b(e)}),E=!v&&h(function(){for(var e=new b,t=5;t--;)e[C](t,t) -return!e.has(-0)}) -j||(b=t(function(t,n){c(t,b,e) -var r=f(new y,t,b) -return void 0!=n&&u(n,m,r[C],r),r}),b.prototype=A,A.constructor=b),(k||E)&&(I("delete"),I("has"),m&&I("get")),(E||x)&&I(C),v&&A.clear&&delete A.clear}else b=g.getConstructor(t,e,m,C),s(b.prototype,n),a.NEED=!0 -return p(b,e),_[e]=b,i(i.G+i.W+i.F*(b!=y),_),v||g.setStrong(b,e,m),b}},{101:101,33:33,35:35,39:39,40:40,45:45,51:51,56:56,6:6,66:66,93:93,94:94}],23:[function(e,t,n){var r=t.exports={version:"2.5.0"} -"number"==typeof __e&&(__e=r)},{}],24:[function(e,t,n){"use strict" -var r=e(72),i=e(92) -t.exports=function(e,t,n){t in e?r.f(e,t,i(0,n)):e[t]=n}},{72:72,92:92}],25:[function(e,t,n){var r=e(3) -t.exports=function(e,t,n){if(r(e),void 0===t)return e -switch(n){case 1:return function(n){return e.call(t,n)} -case 2:return function(n,r){return e.call(t,n,r)} -case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},{3:3}],26:[function(e,t,n){"use strict" -var r=e(35),i=Date.prototype.getTime,o=Date.prototype.toISOString,s=function(e){return e>9?e:"0"+e} -t.exports=r(function(){return"0385-07-25T07:06:39.999Z"!=o.call(new Date(-5e13-1))})||!r(function(){o.call(new Date(NaN))})?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value") -var e=this,t=e.getUTCFullYear(),n=e.getUTCMilliseconds(),r=t<0?"-":t>9999?"+":"" -return r+("00000"+Math.abs(t)).slice(r?-6:-4)+"-"+s(e.getUTCMonth()+1)+"-"+s(e.getUTCDate())+"T"+s(e.getUTCHours())+":"+s(e.getUTCMinutes())+":"+s(e.getUTCSeconds())+"."+(n>99?n:"0"+s(n))+"Z"}:o},{35:35}],27:[function(e,t,n){"use strict" -var r=e(7),i=e(120) -t.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint") -return i(r(this),"number"!=e)}},{120:120,7:7}],28:[function(e,t,n){t.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e) -return e}},{}],29:[function(e,t,n){t.exports=!e(35)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{35:35}],30:[function(e,t,n){var r=e(51),i=e(40).document,o=r(i)&&r(i.createElement) -t.exports=function(e){return o?i.createElement(e):{}}},{40:40,51:51}],31:[function(e,t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},{}],32:[function(e,t,n){var r=e(81),i=e(78),o=e(82) -t.exports=function(e){var t=r(e),n=i.f -if(n)for(var s,a=n(e),u=o.f,c=0;a.length>c;)u.call(e,s=a[c++])&&t.push(s) -return t}},{78:78,81:81,82:82}],33:[function(e,t,n){var r=e(40),i=e(23),o=e(42),s=e(94),a=e(25),u=function(e,t,n){var c,l,h,d,p=e&u.F,f=e&u.G,g=e&u.S,m=e&u.P,v=e&u.B,y=f?r:g?r[t]||(r[t]={}):(r[t]||{}).prototype,b=f?i:i[t]||(i[t]={}),C=b.prototype||(b.prototype={}) -f&&(n=t) -for(c in n)l=!p&&y&&void 0!==y[c],h=(l?y:n)[c],d=v&&l?a(h,r):m&&"function"==typeof h?a(Function.call,h):h,y&&s(y,c,h,e&u.U),b[c]!=h&&o(b,c,d),m&&C[c]!=h&&(C[c]=h)} -r.core=i,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},{23:23,25:25,40:40,42:42,94:94}],34:[function(e,t,n){var r=e(128)("match") -t.exports=function(e){var t=/./ -try{"/./"[e](t)}catch(n){try{return t[r]=!1,!"/./"[e](t)}catch(e){}}return!0}},{128:128}],35:[function(e,t,n){t.exports=function(e){try{return!!e()}catch(e){return!0}}},{}],36:[function(e,t,n){"use strict" -var r=e(42),i=e(94),o=e(35),s=e(28),a=e(128) -t.exports=function(e,t,n){var u=a(e),c=n(s,u,""[e]),l=c[0],h=c[1] -o(function(){var t={} -return t[u]=function(){return 7},7!=""[e](t)})&&(i(String.prototype,e,l),r(RegExp.prototype,u,2==t?function(e,t){return h.call(e,this,t)}:function(e){return h.call(e,this)}))}},{128:128,28:28,35:35,42:42,94:94}],37:[function(e,t,n){"use strict" -var r=e(7) -t.exports=function(){var e=r(this),t="" -return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},{7:7}],38:[function(e,t,n){"use strict" -function r(e,t,n,c,l,h,d,p){for(var f,g,m=l,v=0,y=!!d&&a(d,p,3);v<c;){if(v in n){if(f=y?y(n[v],v,t):n[v],g=!1,o(f)&&(g=f[u],g=void 0!==g?!!g:i(f)),g&&h>0)m=r(e,t,f,s(f.length),m,h-1)-1 -else{if(m>=9007199254740991)throw TypeError() -e[m]=f}m++}v++}return m}var i=e(49),o=e(51),s=e(118),a=e(25),u=e(128)("isConcatSpreadable") -t.exports=r},{118:118,128:128,25:25,49:49,51:51}],39:[function(e,t,n){var r=e(25),i=e(53),o=e(48),s=e(7),a=e(118),u=e(129),c={},l={},n=t.exports=function(e,t,n,h,d){var p,f,g,m,v=d?function(){return e}:u(e),y=r(n,h,t?2:1),b=0 -if("function"!=typeof v)throw TypeError(e+" is not iterable!") -if(o(v)){for(p=a(e.length);p>b;b++)if((m=t?y(s(f=e[b])[0],f[1]):y(e[b]))===c||m===l)return m}else for(g=v.call(e);!(f=g.next()).done;)if((m=i(g,y,f.value,t))===c||m===l)return m} -n.BREAK=c,n.RETURN=l},{118:118,129:129,25:25,48:48,53:53,7:7}],40:[function(e,t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")() -"number"==typeof __g&&(__g=r)},{}],41:[function(e,t,n){var r={}.hasOwnProperty -t.exports=function(e,t){return r.call(e,t)}},{}],42:[function(e,t,n){var r=e(72),i=e(92) -t.exports=e(29)?function(e,t,n){return r.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},{29:29,72:72,92:92}],43:[function(e,t,n){var r=e(40).document -t.exports=r&&r.documentElement},{40:40}],44:[function(e,t,n){t.exports=!e(29)&&!e(35)(function(){return 7!=Object.defineProperty(e(30)("div"),"a",{get:function(){return 7}}).a})},{29:29,30:30,35:35}],45:[function(e,t,n){var r=e(51),i=e(99).set -t.exports=function(e,t,n){var o,s=t.constructor -return s!==n&&"function"==typeof s&&(o=s.prototype)!==n.prototype&&r(o)&&i&&i(e,o),e}},{51:51,99:99}],46:[function(e,t,n){t.exports=function(e,t,n){var r=void 0===n -switch(t.length){case 0:return r?e():e.call(n) -case 1:return r?e(t[0]):e.call(n,t[0]) -case 2:return r?e(t[0],t[1]):e.call(n,t[0],t[1]) -case 3:return r?e(t[0],t[1],t[2]):e.call(n,t[0],t[1],t[2]) -case 4:return r?e(t[0],t[1],t[2],t[3]):e.call(n,t[0],t[1],t[2],t[3])}return e.apply(n,t)}},{}],47:[function(e,t,n){var r=e(18) -t.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},{18:18}],48:[function(e,t,n){var r=e(58),i=e(128)("iterator"),o=Array.prototype -t.exports=function(e){return void 0!==e&&(r.Array===e||o[i]===e)}},{128:128,58:58}],49:[function(e,t,n){var r=e(18) -t.exports=Array.isArray||function(e){return"Array"==r(e)}},{18:18}],50:[function(e,t,n){var r=e(51),i=Math.floor -t.exports=function(e){return!r(e)&&isFinite(e)&&i(e)===e}},{51:51}],51:[function(e,t,n){t.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},{}],52:[function(e,t,n){var r=e(51),i=e(18),o=e(128)("match") -t.exports=function(e){var t -return r(e)&&(void 0!==(t=e[o])?!!t:"RegExp"==i(e))}},{128:128,18:18,51:51}],53:[function(e,t,n){var r=e(7) -t.exports=function(e,t,n,i){try{return i?t(r(n)[0],n[1]):t(n)}catch(t){var o=e.return -throw void 0!==o&&r(o.call(e)),t}}},{7:7}],54:[function(e,t,n){"use strict" -var r=e(71),i=e(92),o=e(101),s={} -e(42)(s,e(128)("iterator"),function(){return this}),t.exports=function(e,t,n){e.prototype=r(s,{next:i(1,n)}),o(e,t+" Iterator")}},{101:101,128:128,42:42,71:71,92:92}],55:[function(e,t,n){"use strict" -var r=e(60),i=e(33),o=e(94),s=e(42),a=e(41),u=e(58),c=e(54),l=e(101),h=e(79),d=e(128)("iterator"),p=!([].keys&&"next"in[].keys()),f=function(){return this} -t.exports=function(e,t,n,g,m,v,y){c(n,t,g) -var b,C,A,_=function(e){if(!p&&e in k)return k[e] -switch(e){case"keys":case"values":return function(){return new n(this,e)}}return function(){return new n(this,e)}},I=t+" Iterator",w="values"==m,x=!1,k=e.prototype,j=k[d]||k["@@iterator"]||m&&k[m],E=j||_(m),S=m?w?_("entries"):E:void 0,T="Array"==t?k.entries||j:j -if(T&&(A=h(T.call(new e)))!==Object.prototype&&A.next&&(l(A,I,!0),r||a(A,d)||s(A,d,f)),w&&j&&"values"!==j.name&&(x=!0,E=function(){return j.call(this)}),r&&!y||!p&&!x&&k[d]||s(k,d,E),u[t]=E,u[I]=f,m)if(b={values:w?E:_("values"),keys:v?E:_("keys"),entries:S},y)for(C in b)C in k||o(k,C,b[C]) -else i(i.P+i.F*(p||x),t,b) -return b}},{101:101,128:128,33:33,41:41,42:42,54:54,58:58,60:60,79:79,94:94}],56:[function(e,t,n){var r=e(128)("iterator"),i=!1 -try{var o=[7][r]() -o.return=function(){i=!0},Array.from(o,function(){throw 2})}catch(e){}t.exports=function(e,t){if(!t&&!i)return!1 -var n=!1 -try{var o=[7],s=o[r]() -s.next=function(){return{done:n=!0}},o[r]=function(){return s},e(o)}catch(e){}return n}},{128:128}],57:[function(e,t,n){t.exports=function(e,t){return{value:t,done:!!e}}},{}],58:[function(e,t,n){t.exports={}},{}],59:[function(e,t,n){var r=e(81),i=e(117) -t.exports=function(e,t){for(var n,o=i(e),s=r(o),a=s.length,u=0;a>u;)if(o[n=s[u++]]===t)return n}},{117:117,81:81}],60:[function(e,t,n){t.exports=!1},{}],61:[function(e,t,n){var r=Math.expm1 -t.exports=!r||r(10)>22025.465794806718||r(10)<22025.465794806718||-2e-17!=r(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:Math.exp(e)-1}:r},{}],62:[function(e,t,n){var r=e(65),i=Math.pow,o=i(2,-52),s=i(2,-23),a=i(2,127)*(2-s),u=i(2,-126),c=function(e){return e+1/o-1/o} -t.exports=Math.fround||function(e){var t,n,i=Math.abs(e),l=r(e) -return i<u?l*c(i/u/s)*u*s:(t=(1+s/o)*i,n=t-(t-i),n>a||n!=n?l*(1/0):l*n)}},{65:65}],63:[function(e,t,n){t.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:Math.log(1+e)}},{}],64:[function(e,t,n){t.exports=Math.scale||function(e,t,n,r,i){return 0===arguments.length||e!=e||t!=t||n!=n||r!=r||i!=i?NaN:e===1/0||e===-1/0?e:(e-t)*(i-r)/(n-t)+r}},{}],65:[function(e,t,n){t.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},{}],66:[function(e,t,n){var r=e(124)("meta"),i=e(51),o=e(41),s=e(72).f,a=0,u=Object.isExtensible||function(){return!0},c=!e(35)(function(){return u(Object.preventExtensions({}))}),l=function(e){s(e,r,{value:{i:"O"+ ++a,w:{}}})},h=function(e,t){if(!i(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e -if(!o(e,r)){if(!u(e))return"F" -if(!t)return"E" -l(e)}return e[r].i},d=function(e,t){if(!o(e,r)){if(!u(e))return!0 -if(!t)return!1 -l(e)}return e[r].w},p=function(e){return c&&f.NEED&&u(e)&&!o(e,r)&&l(e),e},f=t.exports={KEY:r,NEED:!1,fastKey:h,getWeak:d,onFreeze:p}},{124:124,35:35,41:41,51:51,72:72}],67:[function(e,t,n){var r=e(160),i=e(33),o=e(103)("metadata"),s=o.store||(o.store=new(e(266))),a=function(e,t,n){var i=s.get(e) -if(!i){if(!n)return -s.set(e,i=new r)}var o=i.get(t) -if(!o){if(!n)return -i.set(t,o=new r)}return o},u=function(e,t,n){var r=a(t,n,!1) -return void 0!==r&&r.has(e)},c=function(e,t,n){var r=a(t,n,!1) -return void 0===r?void 0:r.get(e)},l=function(e,t,n,r){a(n,r,!0).set(e,t)},h=function(e,t){var n=a(e,t,!1),r=[] -return n&&n.forEach(function(e,t){r.push(t)}),r},d=function(e){return void 0===e||"symbol"==typeof e?e:String(e)},p=function(e){i(i.S,"Reflect",e)} -t.exports={store:s,map:a,has:u,get:c,set:l,keys:h,key:d,exp:p}},{103:103,160:160,266:266,33:33}],68:[function(e,t,n){var r=e(40),i=e(113).set,o=r.MutationObserver||r.WebKitMutationObserver,s=r.process,a=r.Promise,u="process"==e(18)(s) -t.exports=function(){var e,t,n,c=function(){var r,i -for(u&&(r=s.domain)&&r.exit();e;){i=e.fn,e=e.next -try{i()}catch(r){throw e?n():t=void 0,r}}t=void 0,r&&r.enter()} -if(u)n=function(){s.nextTick(c)} -else if(o){var l=!0,h=document.createTextNode("") -new o(c).observe(h,{characterData:!0}),n=function(){h.data=l=!l}}else if(a&&a.resolve){var d=a.resolve() -n=function(){d.then(c)}}else n=function(){i.call(r,c)} -return function(r){var i={fn:r,next:void 0} -t&&(t.next=i),e||(e=i,n()),t=i}}},{113:113,18:18,40:40}],69:[function(e,t,n){"use strict" -function r(e){var t,n -this.promise=new e(function(e,r){if(void 0!==t||void 0!==n)throw TypeError("Bad Promise constructor") -t=e,n=r}),this.resolve=i(t),this.reject=i(n)}var i=e(3) -t.exports.f=function(e){return new r(e)}},{3:3}],70:[function(e,t,n){"use strict" -var r=e(81),i=e(78),o=e(82),s=e(119),a=e(47),u=Object.assign -t.exports=!u||e(35)(function(){var e={},t={},n=Symbol(),r="abcdefghijklmnopqrst" -return e[n]=7,r.split("").forEach(function(e){t[e]=e}),7!=u({},e)[n]||Object.keys(u({},t)).join("")!=r})?function(e,t){for(var n=s(e),u=arguments.length,c=1,l=i.f,h=o.f;u>c;)for(var d,p=a(arguments[c++]),f=l?r(p).concat(l(p)):r(p),g=f.length,m=0;g>m;)h.call(p,d=f[m++])&&(n[d]=p[d]) -return n}:u},{119:119,35:35,47:47,78:78,81:81,82:82}],71:[function(e,t,n){var r=e(7),i=e(73),o=e(31),s=e(102)("IE_PROTO"),a=function(){},u=function(){var t,n=e(30)("iframe"),r=o.length -for(n.style.display="none",e(43).appendChild(n),n.src="javascript:",t=n.contentWindow.document,t.open(),t.write("<script>document.F=Object<\/script>"),t.close(),u=t.F;r--;)delete u.prototype[o[r]] -return u()} -t.exports=Object.create||function(e,t){var n -return null!==e?(a.prototype=r(e),n=new a,a.prototype=null,n[s]=e):n=u(),void 0===t?n:i(n,t)}},{102:102,30:30,31:31,43:43,7:7,73:73}],72:[function(e,t,n){var r=e(7),i=e(44),o=e(120),s=Object.defineProperty -n.f=e(29)?Object.defineProperty:function(e,t,n){if(r(e),t=o(t,!0),r(n),i)try{return s(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!") -return"value"in n&&(e[t]=n.value),e}},{120:120,29:29,44:44,7:7}],73:[function(e,t,n){var r=e(72),i=e(7),o=e(81) -t.exports=e(29)?Object.defineProperties:function(e,t){i(e) -for(var n,s=o(t),a=s.length,u=0;a>u;)r.f(e,n=s[u++],t[n]) -return e}},{29:29,7:7,72:72,81:81}],74:[function(e,t,n){"use strict" -t.exports=e(60)||!e(35)(function(){var t=Math.random() -__defineSetter__.call(null,t,function(){}),delete e(40)[t]})},{35:35,40:40,60:60}],75:[function(e,t,n){var r=e(82),i=e(92),o=e(117),s=e(120),a=e(41),u=e(44),c=Object.getOwnPropertyDescriptor -n.f=e(29)?c:function(e,t){if(e=o(e),t=s(t,!0),u)try{return c(e,t)}catch(e){}if(a(e,t))return i(!r.f.call(e,t),e[t])}},{117:117,120:120,29:29,41:41,44:44,82:82,92:92}],76:[function(e,t,n){var r=e(117),i=e(77).f,o={}.toString,s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],a=function(e){try{return i(e)}catch(e){return s.slice()}} -t.exports.f=function(e){return s&&"[object Window]"==o.call(e)?a(e):i(r(e))}},{117:117,77:77}],77:[function(e,t,n){var r=e(80),i=e(31).concat("length","prototype") -n.f=Object.getOwnPropertyNames||function(e){return r(e,i)}},{31:31,80:80}],78:[function(e,t,n){n.f=Object.getOwnPropertySymbols},{}],79:[function(e,t,n){var r=e(41),i=e(119),o=e(102)("IE_PROTO"),s=Object.prototype -t.exports=Object.getPrototypeOf||function(e){return e=i(e),r(e,o)?e[o]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?s:null}},{102:102,119:119,41:41}],80:[function(e,t,n){var r=e(41),i=e(117),o=e(11)(!1),s=e(102)("IE_PROTO") -t.exports=function(e,t){var n,a=i(e),u=0,c=[] -for(n in a)n!=s&&r(a,n)&&c.push(n) -for(;t.length>u;)r(a,n=t[u++])&&(~o(c,n)||c.push(n)) -return c}},{102:102,11:11,117:117,41:41}],81:[function(e,t,n){var r=e(80),i=e(31) -t.exports=Object.keys||function(e){return r(e,i)}},{31:31,80:80}],82:[function(e,t,n){n.f={}.propertyIsEnumerable},{}],83:[function(e,t,n){var r=e(33),i=e(23),o=e(35) -t.exports=function(e,t){var n=(i.Object||{})[e]||Object[e],s={} -s[e]=t(n),r(r.S+r.F*o(function(){n(1)}),"Object",s)}},{23:23,33:33,35:35}],84:[function(e,t,n){var r=e(81),i=e(117),o=e(82).f -t.exports=function(e){return function(t){for(var n,s=i(t),a=r(s),u=a.length,c=0,l=[];u>c;)o.call(s,n=a[c++])&&l.push(e?[n,s[n]]:s[n]) -return l}}},{117:117,81:81,82:82}],85:[function(e,t,n){var r=e(77),i=e(78),o=e(7),s=e(40).Reflect -t.exports=s&&s.ownKeys||function(e){var t=r.f(o(e)),n=i.f -return n?t.concat(n(e)):t}},{40:40,7:7,77:77,78:78}],86:[function(e,t,n){var r=e(40).parseFloat,i=e(111).trim -t.exports=1/r(e(112)+"-0")!=-1/0?function(e){var t=i(String(e),3),n=r(t) -return 0===n&&"-"==t.charAt(0)?-0:n}:r},{111:111,112:112,40:40}],87:[function(e,t,n){var r=e(40).parseInt,i=e(111).trim,o=e(112),s=/^[-+]?0[xX]/ -t.exports=8!==r(o+"08")||22!==r(o+"0x16")?function(e,t){var n=i(String(e),3) -return r(n,t>>>0||(s.test(n)?16:10))}:r},{111:111,112:112,40:40}],88:[function(e,t,n){"use strict" -var r=e(89),i=e(46),o=e(3) -t.exports=function(){for(var e=o(this),t=arguments.length,n=Array(t),s=0,a=r._,u=!1;t>s;)(n[s]=arguments[s++])===a&&(u=!0) -return function(){var r,o=this,s=arguments.length,c=0,l=0 -if(!u&&!s)return i(e,n,o) -if(r=n.slice(),u)for(;t>c;c++)r[c]===a&&(r[c]=arguments[l++]) -for(;s>l;)r.push(arguments[l++]) -return i(e,r,o)}}},{3:3,46:46,89:89}],89:[function(e,t,n){t.exports=e(40)},{40:40}],90:[function(e,t,n){t.exports=function(e){try{return{e:!1,v:e()}}catch(e){return{e:!0,v:e}}}},{}],91:[function(e,t,n){var r=e(69) -t.exports=function(e,t){var n=r.f(e) -return(0,n.resolve)(t),n.promise}},{69:69}],92:[function(e,t,n){t.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},{}],93:[function(e,t,n){var r=e(94) -t.exports=function(e,t,n){for(var i in t)r(e,i,t[i],n) -return e}},{94:94}],94:[function(e,t,n){var r=e(40),i=e(42),o=e(41),s=e(124)("src"),a=Function.toString,u=(""+a).split("toString") -e(23).inspectSource=function(e){return a.call(e)},(t.exports=function(e,t,n,a){var c="function"==typeof n -c&&(o(n,"name")||i(n,"name",t)),e[t]!==n&&(c&&(o(n,s)||i(n,s,e[t]?""+e[t]:u.join(String(t)))),e===r?e[t]=n:a?e[t]?e[t]=n:i(e,t,n):(delete e[t],i(e,t,n)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[s]||a.call(this)})},{124:124,23:23,40:40,41:41,42:42}],95:[function(e,t,n){t.exports=function(e,t){var n=t===Object(t)?function(e){return t[e]}:t -return function(t){return String(t).replace(e,n)}}},{}],96:[function(e,t,n){t.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},{}],97:[function(e,t,n){"use strict" -var r=e(33),i=e(3),o=e(25),s=e(39) -t.exports=function(e){r(r.S,e,{from:function(e){var t,n,r,a,u=arguments[1] -return i(this),t=void 0!==u,t&&i(u),void 0==e?new this:(n=[],t?(r=0,a=o(u,arguments[2],2),s(e,!1,function(e){n.push(a(e,r++))})):s(e,!1,n.push,n),new this(n))}})}},{25:25,3:3,33:33,39:39}],98:[function(e,t,n){"use strict" -var r=e(33) -t.exports=function(e){r(r.S,e,{of:function(){for(var e=arguments.length,t=Array(e);e--;)t[e]=arguments[e] -return new this(t)}})}},{33:33}],99:[function(e,t,n){var r=e(51),i=e(7),o=function(e,t){if(i(e),!r(t)&&null!==t)throw TypeError(t+": can't set as prototype!")} -t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,n,r){try{r=e(25)(Function.call,e(75).f(Object.prototype,"__proto__").set,2),r(t,[]),n=!(t instanceof Array)}catch(e){n=!0}return function(e,t){return o(e,t),n?e.__proto__=t:r(e,t),e}}({},!1):void 0),check:o}},{25:25,51:51,7:7,75:75}],100:[function(e,t,n){"use strict" -var r=e(40),i=e(72),o=e(29),s=e(128)("species") -t.exports=function(e){var t=r[e] -o&&t&&!t[s]&&i.f(t,s,{configurable:!0,get:function(){return this}})}},{128:128,29:29,40:40,72:72}],101:[function(e,t,n){var r=e(72).f,i=e(41),o=e(128)("toStringTag") -t.exports=function(e,t,n){e&&!i(e=n?e:e.prototype,o)&&r(e,o,{configurable:!0,value:t})}},{128:128,41:41,72:72}],102:[function(e,t,n){var r=e(103)("keys"),i=e(124) -t.exports=function(e){return r[e]||(r[e]=i(e))}},{103:103,124:124}],103:[function(e,t,n){var r=e(40),i=r["__core-js_shared__"]||(r["__core-js_shared__"]={}) -t.exports=function(e){return i[e]||(i[e]={})}},{40:40}],104:[function(e,t,n){var r=e(7),i=e(3),o=e(128)("species") -t.exports=function(e,t){var n,s=r(e).constructor -return void 0===s||void 0==(n=r(s)[o])?t:i(n)}},{128:128,3:3,7:7}],105:[function(e,t,n){"use strict" -var r=e(35) -t.exports=function(e,t){return!!e&&r(function(){t?e.call(null,function(){},1):e.call(null)})}},{35:35}],106:[function(e,t,n){var r=e(116),i=e(28) -t.exports=function(e){return function(t,n){var o,s,a=String(i(t)),u=r(n),c=a.length -return u<0||u>=c?e?"":void 0:(o=a.charCodeAt(u),o<55296||o>56319||u+1===c||(s=a.charCodeAt(u+1))<56320||s>57343?e?a.charAt(u):o:e?a.slice(u,u+2):s-56320+(o-55296<<10)+65536)}}},{116:116,28:28}],107:[function(e,t,n){var r=e(52),i=e(28) -t.exports=function(e,t,n){if(r(t))throw TypeError("String#"+n+" doesn't accept regex!") -return String(i(e))}},{28:28,52:52}],108:[function(e,t,n){var r=e(33),i=e(35),o=e(28),s=/"/g,a=function(e,t,n,r){var i=String(o(e)),a="<"+t -return""!==n&&(a+=" "+n+'="'+String(r).replace(s,""")+'"'),a+">"+i+"</"+t+">"} -t.exports=function(e,t){var n={} -n[e]=t(a),r(r.P+r.F*i(function(){var t=""[e]('"') -return t!==t.toLowerCase()||t.split('"').length>3}),"String",n)}},{28:28,33:33,35:35}],109:[function(e,t,n){var r=e(118),i=e(110),o=e(28) -t.exports=function(e,t,n,s){var a=String(o(e)),u=a.length,c=void 0===n?" ":String(n),l=r(t) -if(l<=u||""==c)return a -var h=l-u,d=i.call(c,Math.ceil(h/c.length)) -return d.length>h&&(d=d.slice(0,h)),s?d+a:a+d}},{110:110,118:118,28:28}],110:[function(e,t,n){"use strict" -var r=e(116),i=e(28) -t.exports=function(e){var t=String(i(this)),n="",o=r(e) -if(o<0||o==1/0)throw RangeError("Count can't be negative") -for(;o>0;(o>>>=1)&&(t+=t))1&o&&(n+=t) -return n}},{116:116,28:28}],111:[function(e,t,n){var r=e(33),i=e(28),o=e(35),s=e(112),a="["+s+"]",u="
",c=RegExp("^"+a+a+"*"),l=RegExp(a+a+"*$"),h=function(e,t,n){var i={},a=o(function(){return!!s[e]()||u[e]()!=u}),c=i[e]=a?t(d):s[e] -n&&(i[n]=c),r(r.P+r.F*a,"String",i)},d=h.trim=function(e,t){return e=String(i(e)),1&t&&(e=e.replace(c,"")),2&t&&(e=e.replace(l,"")),e} -t.exports=h},{112:112,28:28,33:33,35:35}],112:[function(e,t,n){t.exports="\t\n\v\f\r \u2028\u2029\ufeff"},{}],113:[function(e,t,n){var r,i,o,s=e(25),a=e(46),u=e(43),c=e(30),l=e(40),h=l.process,d=l.setImmediate,p=l.clearImmediate,f=l.MessageChannel,g=l.Dispatch,m=0,v={},y=function(){var e=+this -if(v.hasOwnProperty(e)){var t=v[e] -delete v[e],t()}},b=function(e){y.call(e.data)} -d&&p||(d=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]) -return v[++m]=function(){a("function"==typeof e?e:Function(e),t)},r(m),m},p=function(e){delete v[e]},"process"==e(18)(h)?r=function(e){h.nextTick(s(y,e,1))}:g&&g.now?r=function(e){g.now(s(y,e,1))}:f?(i=new f,o=i.port2,i.port1.onmessage=b,r=s(o.postMessage,o,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(r=function(e){l.postMessage(e+"","*")},l.addEventListener("message",b,!1)):r="onreadystatechange"in c("script")?function(e){u.appendChild(c("script")).onreadystatechange=function(){u.removeChild(this),y.call(e)}}:function(e){setTimeout(s(y,e,1),0)}),t.exports={set:d,clear:p}},{18:18,25:25,30:30,40:40,43:43,46:46}],114:[function(e,t,n){var r=e(116),i=Math.max,o=Math.min -t.exports=function(e,t){return e=r(e),e<0?i(e+t,0):o(e,t)}},{116:116}],115:[function(e,t,n){var r=e(116),i=e(118) -t.exports=function(e){if(void 0===e)return 0 -var t=r(e),n=i(t) -if(t!==n)throw RangeError("Wrong length!") -return n}},{116:116,118:118}],116:[function(e,t,n){var r=Math.ceil,i=Math.floor -t.exports=function(e){return isNaN(e=+e)?0:(e>0?i:r)(e)}},{}],117:[function(e,t,n){var r=e(47),i=e(28) -t.exports=function(e){return r(i(e))}},{28:28,47:47}],118:[function(e,t,n){var r=e(116),i=Math.min -t.exports=function(e){return e>0?i(r(e),9007199254740991):0}},{116:116}],119:[function(e,t,n){var r=e(28) -t.exports=function(e){return Object(r(e))}},{28:28}],120:[function(e,t,n){var r=e(51) -t.exports=function(e,t){if(!r(e))return e -var n,i -if(t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i -if("function"==typeof(n=e.valueOf)&&!r(i=n.call(e)))return i -if(!t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i -throw TypeError("Can't convert object to primitive value")}},{51:51}],121:[function(e,t,n){"use strict" -if(e(29)){var r=e(60),i=e(40),o=e(35),s=e(33),a=e(123),u=e(122),c=e(25),l=e(6),h=e(92),d=e(42),p=e(93),f=e(116),g=e(118),m=e(115),v=e(114),y=e(120),b=e(41),C=e(17),A=e(51),_=e(119),I=e(48),w=e(71),x=e(79),k=e(77).f,j=e(129),E=e(124),S=e(128),T=e(12),P=e(11),O=e(104),R=e(141),N=e(58),M=e(56),L=e(100),D=e(9),z=e(8),F=e(72),B=e(75),H=F.f,U=B.f,q=i.RangeError,V=i.TypeError,W=i.Uint8Array,G=Array.prototype,Y=u.ArrayBuffer,K=u.DataView,Q=T(0),Z=T(2),X=T(3),J=T(4),$=T(5),ee=T(6),te=P(!0),ne=P(!1),re=R.values,ie=R.keys,oe=R.entries,se=G.lastIndexOf,ae=G.reduce,ue=G.reduceRight,ce=G.join,le=G.sort,he=G.slice,de=G.toString,pe=G.toLocaleString,fe=S("iterator"),ge=S("toStringTag"),me=E("typed_constructor"),ve=E("def_constructor"),ye=a.CONSTR,be=a.TYPED,Ce=a.VIEW,Ae=T(1,function(e,t){return ke(O(e,e[ve]),t)}),_e=o(function(){return 1===new W(new Uint16Array([1]).buffer)[0]}),Ie=!!W&&!!W.prototype.set&&o(function(){new W(1).set({})}),we=function(e,t){var n=f(e) -if(n<0||n%t)throw q("Wrong offset!") -return n},xe=function(e){if(A(e)&&be in e)return e -throw V(e+" is not a typed array!")},ke=function(e,t){if(!(A(e)&&me in e))throw V("It is not a typed array constructor!") -return new e(t)},je=function(e,t){return Ee(O(e,e[ve]),t)},Ee=function(e,t){for(var n=0,r=t.length,i=ke(e,r);r>n;)i[n]=t[n++] -return i},Se=function(e,t,n){H(e,t,{get:function(){return this._d[n]}})},Te=function(e){var t,n,r,i,o,s,a=_(e),u=arguments.length,l=u>1?arguments[1]:void 0,h=void 0!==l,d=j(a) -if(void 0!=d&&!I(d)){for(s=d.call(a),r=[],t=0;!(o=s.next()).done;t++)r.push(o.value) -a=r}for(h&&u>2&&(l=c(l,arguments[2],2)),t=0,n=g(a.length),i=ke(this,n);n>t;t++)i[t]=h?l(a[t],t):a[t] -return i},Pe=function(){for(var e=0,t=arguments.length,n=ke(this,t);t>e;)n[e]=arguments[e++] -return n},Oe=!!W&&o(function(){pe.call(new W(1))}),Re=function(){return pe.apply(Oe?he.call(xe(this)):xe(this),arguments)},Ne={copyWithin:function(e,t){return z.call(xe(this),e,t,arguments.length>2?arguments[2]:void 0)},every:function(e){return J(xe(this),e,arguments.length>1?arguments[1]:void 0)},fill:function(e){return D.apply(xe(this),arguments)},filter:function(e){return je(this,Z(xe(this),e,arguments.length>1?arguments[1]:void 0))},find:function(e){return $(xe(this),e,arguments.length>1?arguments[1]:void 0)},findIndex:function(e){return ee(xe(this),e,arguments.length>1?arguments[1]:void 0)},forEach:function(e){Q(xe(this),e,arguments.length>1?arguments[1]:void 0)},indexOf:function(e){return ne(xe(this),e,arguments.length>1?arguments[1]:void 0)},includes:function(e){return te(xe(this),e,arguments.length>1?arguments[1]:void 0)},join:function(e){return ce.apply(xe(this),arguments)},lastIndexOf:function(e){return se.apply(xe(this),arguments)},map:function(e){return Ae(xe(this),e,arguments.length>1?arguments[1]:void 0)},reduce:function(e){return ae.apply(xe(this),arguments)},reduceRight:function(e){return ue.apply(xe(this),arguments)},reverse:function(){for(var e,t=this,n=xe(t).length,r=Math.floor(n/2),i=0;i<r;)e=t[i],t[i++]=t[--n],t[n]=e -return t},some:function(e){return X(xe(this),e,arguments.length>1?arguments[1]:void 0)},sort:function(e){return le.call(xe(this),e)},subarray:function(e,t){var n=xe(this),r=n.length,i=v(e,r) -return new(O(n,n[ve]))(n.buffer,n.byteOffset+i*n.BYTES_PER_ELEMENT,g((void 0===t?r:v(t,r))-i))}},Me=function(e,t){return je(this,he.call(xe(this),e,t))},Le=function(e){xe(this) -var t=we(arguments[1],1),n=this.length,r=_(e),i=g(r.length),o=0 -if(i+t>n)throw q("Wrong length!") -for(;o<i;)this[t+o]=r[o++]},De={entries:function(){return oe.call(xe(this))},keys:function(){return ie.call(xe(this))},values:function(){return re.call(xe(this))}},ze=function(e,t){return A(e)&&e[be]&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},Fe=function(e,t){return ze(e,t=y(t,!0))?h(2,e[t]):U(e,t)},Be=function(e,t,n){return!(ze(e,t=y(t,!0))&&A(n)&&b(n,"value"))||b(n,"get")||b(n,"set")||n.configurable||b(n,"writable")&&!n.writable||b(n,"enumerable")&&!n.enumerable?H(e,t,n):(e[t]=n.value,e)} -ye||(B.f=Fe,F.f=Be),s(s.S+s.F*!ye,"Object",{getOwnPropertyDescriptor:Fe,defineProperty:Be}),o(function(){de.call({})})&&(de=pe=function(){return ce.call(this)}) -var He=p({},Ne) -p(He,De),d(He,fe,De.values),p(He,{slice:Me,set:Le,constructor:function(){},toString:de,toLocaleString:Re}),Se(He,"buffer","b"),Se(He,"byteOffset","o"),Se(He,"byteLength","l"),Se(He,"length","e"),H(He,ge,{get:function(){return this[be]}}),t.exports=function(e,t,n,u){u=!!u -var c=e+(u?"Clamped":"")+"Array",h="get"+e,p="set"+e,f=i[c],v=f||{},y=f&&x(f),b=!f||!a.ABV,_={},I=f&&f.prototype,j=function(e,n){var r=e._d -return r.v[h](n*t+r.o,_e)},E=function(e,n,r){var i=e._d -u&&(r=(r=Math.round(r))<0?0:r>255?255:255&r),i.v[p](n*t+i.o,r,_e)},S=function(e,t){H(e,t,{get:function(){return j(this,t)},set:function(e){return E(this,t,e)},enumerable:!0})} -b?(f=n(function(e,n,r,i){l(e,f,c,"_d") -var o,s,a,u,h=0,p=0 -if(A(n)){if(!(n instanceof Y||"ArrayBuffer"==(u=C(n))||"SharedArrayBuffer"==u))return be in n?Ee(f,n):Te.call(f,n) -o=n,p=we(r,t) -var v=n.byteLength -if(void 0===i){if(v%t)throw q("Wrong length!") -if((s=v-p)<0)throw q("Wrong length!")}else if((s=g(i)*t)+p>v)throw q("Wrong length!") -a=s/t}else a=m(n),s=a*t,o=new Y(s) -for(d(e,"_d",{b:o,o:p,l:s,e:a,v:new K(o)});h<a;)S(e,h++)}),I=f.prototype=w(He),d(I,"constructor",f)):o(function(){f(1)})&&o(function(){new f(-1)})&&M(function(e){new f,new f(null),new f(1.5),new f(e)},!0)||(f=n(function(e,n,r,i){l(e,f,c) -var o -return A(n)?n instanceof Y||"ArrayBuffer"==(o=C(n))||"SharedArrayBuffer"==o?void 0!==i?new v(n,we(r,t),i):void 0!==r?new v(n,we(r,t)):new v(n):be in n?Ee(f,n):Te.call(f,n):new v(m(n))}),Q(y!==Function.prototype?k(v).concat(k(y)):k(v),function(e){e in f||d(f,e,v[e])}),f.prototype=I,r||(I.constructor=f)) -var T=I[fe],P=!!T&&("values"==T.name||void 0==T.name),O=De.values -d(f,me,!0),d(I,be,c),d(I,Ce,!0),d(I,ve,f),(u?new f(1)[ge]==c:ge in I)||H(I,ge,{get:function(){return c}}),_[c]=f,s(s.G+s.W+s.F*(f!=v),_),s(s.S,c,{BYTES_PER_ELEMENT:t}),s(s.S+s.F*o(function(){v.of.call(f,1)}),c,{from:Te,of:Pe}),"BYTES_PER_ELEMENT"in I||d(I,"BYTES_PER_ELEMENT",t),s(s.P,c,Ne),L(c),s(s.P+s.F*Ie,c,{set:Le}),s(s.P+s.F*!P,c,De),r||I.toString==de||(I.toString=de),s(s.P+s.F*o(function(){new f(1).slice()}),c,{slice:Me}),s(s.P+s.F*(o(function(){return[1,2].toLocaleString()!=new f([1,2]).toLocaleString()})||!o(function(){I.toLocaleString.call([1,2])})),c,{toLocaleString:Re}),N[c]=P?T:O,r||P||d(I,fe,O)}}else t.exports=function(){}},{100:100,104:104,11:11,114:114,115:115,116:116,118:118,119:119,12:12,120:120,122:122,123:123,124:124,128:128,129:129,141:141,17:17,25:25,29:29,33:33,35:35,40:40,41:41,42:42,48:48,51:51,56:56,58:58,6:6,60:60,71:71,72:72,75:75,77:77,79:79,8:8,9:9,92:92,93:93}],122:[function(e,t,n){"use strict" -function r(e,t,n){var r,i,o,s=Array(n),a=8*n-t-1,u=(1<<a)-1,c=u>>1,l=23===t?z(2,-24)-z(2,-77):0,h=0,d=e<0||0===e&&1/e<0?1:0 -for(e=D(e),e!=e||e===M?(i=e!=e?1:0,r=u):(r=F(B(e)/H),e*(o=z(2,-r))<1&&(r--,o*=2),e+=r+c>=1?l/o:l*z(2,1-c),e*o>=2&&(r++,o/=2),r+c>=u?(i=0,r=u):r+c>=1?(i=(e*o-1)*z(2,t),r+=c):(i=e*z(2,c-1)*z(2,t),r=0));t>=8;s[h++]=255&i,i/=256,t-=8);for(r=r<<t|i,a+=t;a>0;s[h++]=255&r,r/=256,a-=8);return s[--h]|=128*d,s}function i(e,t,n){var r,i=8*n-t-1,o=(1<<i)-1,s=o>>1,a=i-7,u=n-1,c=e[u--],l=127&c -for(c>>=7;a>0;l=256*l+e[u],u--,a-=8);for(r=l&(1<<-a)-1,l>>=-a,a+=t;a>0;r=256*r+e[u],u--,a-=8);if(0===l)l=1-s -else{if(l===o)return r?NaN:c?-M:M -r+=z(2,t),l-=s}return(c?-1:1)*r*z(2,l-t)}function o(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]}function s(e){return[255&e]}function a(e){return[255&e,e>>8&255]}function u(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]}function c(e){return r(e,52,8)}function l(e){return r(e,23,4)}function h(e,t,n){k(e[S],t,{get:function(){return this[n]}})}function d(e,t,n,r){var i=+n,o=w(i) -if(o+t>e[q])throw N(T) -var s=e[U]._b,a=o+e[V],u=s.slice(a,a+t) -return r?u:u.reverse()}function p(e,t,n,r,i,o){var s=+n,a=w(s) -if(a+t>e[q])throw N(T) -for(var u=e[U]._b,c=a+e[V],l=r(+i),h=0;h<t;h++)u[c+h]=l[o?h:t-h-1]}var f=e(40),g=e(29),m=e(60),v=e(123),y=e(42),b=e(93),C=e(35),A=e(6),_=e(116),I=e(118),w=e(115),x=e(77).f,k=e(72).f,j=e(9),E=e(101),S="prototype",T="Wrong index!",P=f.ArrayBuffer,O=f.DataView,R=f.Math,N=f.RangeError,M=f.Infinity,L=P,D=R.abs,z=R.pow,F=R.floor,B=R.log,H=R.LN2,U=g?"_b":"buffer",q=g?"_l":"byteLength",V=g?"_o":"byteOffset" -if(v.ABV){if(!C(function(){P(1)})||!C(function(){new P(-1)})||C(function(){return new P,new P(1.5),new P(NaN),"ArrayBuffer"!=P.name})){P=function(e){return A(this,P),new L(w(e))} -for(var W,G=P[S]=L[S],Y=x(L),K=0;Y.length>K;)(W=Y[K++])in P||y(P,W,L[W]) -m||(G.constructor=P)}var Q=new O(new P(2)),Z=O[S].setInt8 -Q.setInt8(0,2147483648),Q.setInt8(1,2147483649),!Q.getInt8(0)&&Q.getInt8(1)||b(O[S],{setInt8:function(e,t){Z.call(this,e,t<<24>>24)},setUint8:function(e,t){Z.call(this,e,t<<24>>24)}},!0)}else P=function(e){A(this,P,"ArrayBuffer") -var t=w(e) -this._b=j.call(Array(t),0),this[q]=t},O=function(e,t,n){A(this,O,"DataView"),A(e,P,"DataView") -var r=e[q],i=_(t) -if(i<0||i>r)throw N("Wrong offset!") -if(n=void 0===n?r-i:I(n),i+n>r)throw N("Wrong length!") -this[U]=e,this[V]=i,this[q]=n},g&&(h(P,"byteLength","_l"),h(O,"buffer","_b"),h(O,"byteLength","_l"),h(O,"byteOffset","_o")),b(O[S],{getInt8:function(e){return d(this,1,e)[0]<<24>>24},getUint8:function(e){return d(this,1,e)[0]},getInt16:function(e){var t=d(this,2,e,arguments[1]) -return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=d(this,2,e,arguments[1]) -return t[1]<<8|t[0]},getInt32:function(e){return o(d(this,4,e,arguments[1]))},getUint32:function(e){return o(d(this,4,e,arguments[1]))>>>0},getFloat32:function(e){return i(d(this,4,e,arguments[1]),23,4)},getFloat64:function(e){return i(d(this,8,e,arguments[1]),52,8)},setInt8:function(e,t){p(this,1,e,s,t)},setUint8:function(e,t){p(this,1,e,s,t)},setInt16:function(e,t){p(this,2,e,a,t,arguments[2])},setUint16:function(e,t){p(this,2,e,a,t,arguments[2])},setInt32:function(e,t){p(this,4,e,u,t,arguments[2])},setUint32:function(e,t){p(this,4,e,u,t,arguments[2])},setFloat32:function(e,t){p(this,4,e,l,t,arguments[2])},setFloat64:function(e,t){p(this,8,e,c,t,arguments[2])}}) -E(P,"ArrayBuffer"),E(O,"DataView"),y(O[S],v.VIEW,!0),n.ArrayBuffer=P,n.DataView=O},{101:101,115:115,116:116,118:118,123:123,29:29,35:35,40:40,42:42,6:6,60:60,72:72,77:77,9:9,93:93}],123:[function(e,t,n){for(var r,i=e(40),o=e(42),s=e(124),a=s("typed_array"),u=s("view"),c=!(!i.ArrayBuffer||!i.DataView),l=c,h=0,d="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");h<9;)(r=i[d[h++]])?(o(r.prototype,a,!0),o(r.prototype,u,!0)):l=!1 -t.exports={ABV:c,CONSTR:l,TYPED:a,VIEW:u}},{124:124,40:40,42:42}],124:[function(e,t,n){var r=0,i=Math.random() -t.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++r+i).toString(36))}},{}],125:[function(e,t,n){var r=e(51) -t.exports=function(e,t){if(!r(e)||e._t!==t)throw TypeError("Incompatible receiver, "+t+" required!") -return e}},{51:51}],126:[function(e,t,n){var r=e(40),i=e(23),o=e(60),s=e(127),a=e(72).f -t.exports=function(e){var t=i.Symbol||(i.Symbol=o?{}:r.Symbol||{}) -"_"==e.charAt(0)||e in t||a(t,e,{value:s.f(e)})}},{127:127,23:23,40:40,60:60,72:72}],127:[function(e,t,n){n.f=e(128)},{128:128}],128:[function(e,t,n){var r=e(103)("wks"),i=e(124),o=e(40).Symbol,s="function"==typeof o;(t.exports=function(e){return r[e]||(r[e]=s&&o[e]||(s?o:i)("Symbol."+e))}).store=r},{103:103,124:124,40:40}],129:[function(e,t,n){var r=e(17),i=e(128)("iterator"),o=e(58) -t.exports=e(23).getIteratorMethod=function(e){if(void 0!=e)return e[i]||e["@@iterator"]||o[r(e)]}},{128:128,17:17,23:23,58:58}],130:[function(e,t,n){var r=e(33),i=e(95)(/[\\^$*+?.()|[\]{}]/g,"\\$&") -r(r.S,"RegExp",{escape:function(e){return i(e)}})},{33:33,95:95}],131:[function(e,t,n){var r=e(33) -r(r.P,"Array",{copyWithin:e(8)}),e(5)("copyWithin")},{33:33,5:5,8:8}],132:[function(e,t,n){"use strict" -var r=e(33),i=e(12)(4) -r(r.P+r.F*!e(105)([].every,!0),"Array",{every:function(e){return i(this,e,arguments[1])}})},{105:105,12:12,33:33}],133:[function(e,t,n){var r=e(33) -r(r.P,"Array",{fill:e(9)}),e(5)("fill")},{33:33,5:5,9:9}],134:[function(e,t,n){"use strict" -var r=e(33),i=e(12)(2) -r(r.P+r.F*!e(105)([].filter,!0),"Array",{filter:function(e){return i(this,e,arguments[1])}})},{105:105,12:12,33:33}],135:[function(e,t,n){"use strict" -var r=e(33),i=e(12)(6),o="findIndex",s=!0 -o in[]&&Array(1)[o](function(){s=!1}),r(r.P+r.F*s,"Array",{findIndex:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}}),e(5)(o)},{12:12,33:33,5:5}],136:[function(e,t,n){"use strict" -var r=e(33),i=e(12)(5),o=!0 -"find"in[]&&Array(1).find(function(){o=!1}),r(r.P+r.F*o,"Array",{find:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}}),e(5)("find")},{12:12,33:33,5:5}],137:[function(e,t,n){"use strict" -var r=e(33),i=e(12)(0),o=e(105)([].forEach,!0) -r(r.P+r.F*!o,"Array",{forEach:function(e){return i(this,e,arguments[1])}})},{105:105,12:12,33:33}],138:[function(e,t,n){"use strict" -var r=e(25),i=e(33),o=e(119),s=e(53),a=e(48),u=e(118),c=e(24),l=e(129) -i(i.S+i.F*!e(56)(function(e){Array.from(e)}),"Array",{from:function(e){var t,n,i,h,d=o(e),p="function"==typeof this?this:Array,f=arguments.length,g=f>1?arguments[1]:void 0,m=void 0!==g,v=0,y=l(d) -if(m&&(g=r(g,f>2?arguments[2]:void 0,2)),void 0==y||p==Array&&a(y))for(t=u(d.length),n=new p(t);t>v;v++)c(n,v,m?g(d[v],v):d[v]) -else for(h=y.call(d),n=new p;!(i=h.next()).done;v++)c(n,v,m?s(h,g,[i.value,v],!0):i.value) -return n.length=v,n}})},{118:118,119:119,129:129,24:24,25:25,33:33,48:48,53:53,56:56}],139:[function(e,t,n){"use strict" -var r=e(33),i=e(11)(!1),o=[].indexOf,s=!!o&&1/[1].indexOf(1,-0)<0 -r(r.P+r.F*(s||!e(105)(o)),"Array",{indexOf:function(e){return s?o.apply(this,arguments)||0:i(this,e,arguments[1])}})},{105:105,11:11,33:33}],140:[function(e,t,n){var r=e(33) -r(r.S,"Array",{isArray:e(49)})},{33:33,49:49}],141:[function(e,t,n){"use strict" -var r=e(5),i=e(57),o=e(58),s=e(117) -t.exports=e(55)(Array,"Array",function(e,t){this._t=s(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++ -return!e||n>=e.length?(this._t=void 0,i(1)):"keys"==t?i(0,n):"values"==t?i(0,e[n]):i(0,[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},{117:117,5:5,55:55,57:57,58:58}],142:[function(e,t,n){"use strict" -var r=e(33),i=e(117),o=[].join -r(r.P+r.F*(e(47)!=Object||!e(105)(o)),"Array",{join:function(e){return o.call(i(this),void 0===e?",":e)}})},{105:105,117:117,33:33,47:47}],143:[function(e,t,n){"use strict" -var r=e(33),i=e(117),o=e(116),s=e(118),a=[].lastIndexOf,u=!!a&&1/[1].lastIndexOf(1,-0)<0 -r(r.P+r.F*(u||!e(105)(a)),"Array",{lastIndexOf:function(e){if(u)return a.apply(this,arguments)||0 -var t=i(this),n=s(t.length),r=n-1 -for(arguments.length>1&&(r=Math.min(r,o(arguments[1]))),r<0&&(r=n+r);r>=0;r--)if(r in t&&t[r]===e)return r||0 -return-1}})},{105:105,116:116,117:117,118:118,33:33}],144:[function(e,t,n){"use strict" -var r=e(33),i=e(12)(1) -r(r.P+r.F*!e(105)([].map,!0),"Array",{map:function(e){return i(this,e,arguments[1])}})},{105:105,12:12,33:33}],145:[function(e,t,n){"use strict" -var r=e(33),i=e(24) -r(r.S+r.F*e(35)(function(){function e(){}return!(Array.of.call(e)instanceof e)}),"Array",{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);t>e;)i(n,e,arguments[e++]) -return n.length=t,n}})},{24:24,33:33,35:35}],146:[function(e,t,n){"use strict" -var r=e(33),i=e(13) -r(r.P+r.F*!e(105)([].reduceRight,!0),"Array",{reduceRight:function(e){return i(this,e,arguments.length,arguments[1],!0)}})},{105:105,13:13,33:33}],147:[function(e,t,n){"use strict" -var r=e(33),i=e(13) -r(r.P+r.F*!e(105)([].reduce,!0),"Array",{reduce:function(e){return i(this,e,arguments.length,arguments[1],!1)}})},{105:105,13:13,33:33}],148:[function(e,t,n){"use strict" -var r=e(33),i=e(43),o=e(18),s=e(114),a=e(118),u=[].slice -r(r.P+r.F*e(35)(function(){i&&u.call(i)}),"Array",{slice:function(e,t){var n=a(this.length),r=o(this) -if(t=void 0===t?n:t,"Array"==r)return u.call(this,e,t) -for(var i=s(e,n),c=s(t,n),l=a(c-i),h=Array(l),d=0;d<l;d++)h[d]="String"==r?this.charAt(i+d):this[i+d] -return h}})},{114:114,118:118,18:18,33:33,35:35,43:43}],149:[function(e,t,n){"use strict" -var r=e(33),i=e(12)(3) -r(r.P+r.F*!e(105)([].some,!0),"Array",{some:function(e){return i(this,e,arguments[1])}})},{105:105,12:12,33:33}],150:[function(e,t,n){"use strict" -var r=e(33),i=e(3),o=e(119),s=e(35),a=[].sort,u=[1,2,3] -r(r.P+r.F*(s(function(){u.sort(void 0)})||!s(function(){u.sort(null)})||!e(105)(a)),"Array",{sort:function(e){return void 0===e?a.call(o(this)):a.call(o(this),i(e))}})},{105:105,119:119,3:3,33:33,35:35}],151:[function(e,t,n){e(100)("Array")},{100:100}],152:[function(e,t,n){var r=e(33) -r(r.S,"Date",{now:function(){return(new Date).getTime()}})},{33:33}],153:[function(e,t,n){var r=e(33),i=e(26) -r(r.P+r.F*(Date.prototype.toISOString!==i),"Date",{toISOString:i})},{26:26,33:33}],154:[function(e,t,n){"use strict" -var r=e(33),i=e(119),o=e(120) -r(r.P+r.F*e(35)(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}),"Date",{toJSON:function(e){var t=i(this),n=o(t) -return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},{119:119,120:120,33:33,35:35}],155:[function(e,t,n){var r=e(128)("toPrimitive"),i=Date.prototype -r in i||e(42)(i,r,e(27))},{128:128,27:27,42:42}],156:[function(e,t,n){var r=Date.prototype,i=r.toString,o=r.getTime -new Date(NaN)+""!="Invalid Date"&&e(94)(r,"toString",function(){var e=o.call(this) -return e===e?i.call(this):"Invalid Date"})},{94:94}],157:[function(e,t,n){var r=e(33) -r(r.P,"Function",{bind:e(16)})},{16:16,33:33}],158:[function(e,t,n){"use strict" -var r=e(51),i=e(79),o=e(128)("hasInstance"),s=Function.prototype -o in s||e(72).f(s,o,{value:function(e){if("function"!=typeof this||!r(e))return!1 -if(!r(this.prototype))return e instanceof this -for(;e=i(e);)if(this.prototype===e)return!0 -return!1}})},{128:128,51:51,72:72,79:79}],159:[function(e,t,n){var r=e(72).f,i=Function.prototype,o=/^\s*function ([^ (]*)/ -"name"in i||e(29)&&r(i,"name",{configurable:!0,get:function(){try{return(""+this).match(o)[1]}catch(e){return""}}})},{29:29,72:72}],160:[function(e,t,n){"use strict" -var r=e(19),i=e(125) -t.exports=e(22)("Map",function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}},{get:function(e){var t=r.getEntry(i(this,"Map"),e) -return t&&t.v},set:function(e,t){return r.def(i(this,"Map"),0===e?0:e,t)}},r,!0)},{125:125,19:19,22:22}],161:[function(e,t,n){var r=e(33),i=e(63),o=Math.sqrt,s=Math.acosh -r(r.S+r.F*!(s&&710==Math.floor(s(Number.MAX_VALUE))&&s(1/0)==1/0),"Math",{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?Math.log(e)+Math.LN2:i(e-1+o(e-1)*o(e+1))}})},{33:33,63:63}],162:[function(e,t,n){function r(e){return isFinite(e=+e)&&0!=e?e<0?-r(-e):Math.log(e+Math.sqrt(e*e+1)):e}var i=e(33),o=Math.asinh -i(i.S+i.F*!(o&&1/o(0)>0),"Math",{asinh:r})},{33:33}],163:[function(e,t,n){var r=e(33),i=Math.atanh -r(r.S+r.F*!(i&&1/i(-0)<0),"Math",{atanh:function(e){return 0==(e=+e)?e:Math.log((1+e)/(1-e))/2}})},{33:33}],164:[function(e,t,n){var r=e(33),i=e(65) -r(r.S,"Math",{cbrt:function(e){return i(e=+e)*Math.pow(Math.abs(e),1/3)}})},{33:33,65:65}],165:[function(e,t,n){var r=e(33) -r(r.S,"Math",{clz32:function(e){return(e>>>=0)?31-Math.floor(Math.log(e+.5)*Math.LOG2E):32}})},{33:33}],166:[function(e,t,n){var r=e(33),i=Math.exp -r(r.S,"Math",{cosh:function(e){return(i(e=+e)+i(-e))/2}})},{33:33}],167:[function(e,t,n){var r=e(33),i=e(61) -r(r.S+r.F*(i!=Math.expm1),"Math",{expm1:i})},{33:33,61:61}],168:[function(e,t,n){var r=e(33) -r(r.S,"Math",{fround:e(62)})},{33:33,62:62}],169:[function(e,t,n){var r=e(33),i=Math.abs -r(r.S,"Math",{hypot:function(e,t){for(var n,r,o=0,s=0,a=arguments.length,u=0;s<a;)n=i(arguments[s++]),u<n?(r=u/n,o=o*r*r+1,u=n):n>0?(r=n/u,o+=r*r):o+=n -return u===1/0?1/0:u*Math.sqrt(o)}})},{33:33}],170:[function(e,t,n){var r=e(33),i=Math.imul -r(r.S+r.F*e(35)(function(){return-5!=i(4294967295,5)||2!=i.length}),"Math",{imul:function(e,t){var n=+e,r=+t,i=65535&n,o=65535&r -return 0|i*o+((65535&n>>>16)*o+i*(65535&r>>>16)<<16>>>0)}})},{33:33,35:35}],171:[function(e,t,n){var r=e(33) -r(r.S,"Math",{log10:function(e){return Math.log(e)*Math.LOG10E}})},{33:33}],172:[function(e,t,n){var r=e(33) -r(r.S,"Math",{log1p:e(63)})},{33:33,63:63}],173:[function(e,t,n){var r=e(33) -r(r.S,"Math",{log2:function(e){return Math.log(e)/Math.LN2}})},{33:33}],174:[function(e,t,n){var r=e(33) -r(r.S,"Math",{sign:e(65)})},{33:33,65:65}],175:[function(e,t,n){var r=e(33),i=e(61),o=Math.exp -r(r.S+r.F*e(35)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function(e){return Math.abs(e=+e)<1?(i(e)-i(-e))/2:(o(e-1)-o(-e-1))*(Math.E/2)}})},{33:33,35:35,61:61}],176:[function(e,t,n){var r=e(33),i=e(61),o=Math.exp -r(r.S,"Math",{tanh:function(e){var t=i(e=+e),n=i(-e) -return t==1/0?1:n==1/0?-1:(t-n)/(o(e)+o(-e))}})},{33:33,61:61}],177:[function(e,t,n){var r=e(33) -r(r.S,"Math",{trunc:function(e){return(e>0?Math.floor:Math.ceil)(e)}})},{33:33}],178:[function(e,t,n){"use strict" -var r=e(40),i=e(41),o=e(18),s=e(45),a=e(120),u=e(35),c=e(77).f,l=e(75).f,h=e(72).f,d=e(111).trim,p=r.Number,f=p,g=p.prototype,m="Number"==o(e(71)(g)),v="trim"in String.prototype,y=function(e){var t=a(e,!1) -if("string"==typeof t&&t.length>2){t=v?t.trim():d(t,3) -var n,r,i,o=t.charCodeAt(0) -if(43===o||45===o){if(88===(n=t.charCodeAt(2))||120===n)return NaN}else if(48===o){switch(t.charCodeAt(1)){case 66:case 98:r=2,i=49 -break -case 79:case 111:r=8,i=55 -break -default:return+t}for(var s,u=t.slice(2),c=0,l=u.length;c<l;c++)if((s=u.charCodeAt(c))<48||s>i)return NaN -return parseInt(u,r)}}return+t} -if(!p(" 0o1")||!p("0b1")||p("+0x1")){p=function(e){var t=arguments.length<1?0:e,n=this -return n instanceof p&&(m?u(function(){g.valueOf.call(n)}):"Number"!=o(n))?s(new f(y(t)),n,p):y(t)} -for(var b,C=e(29)?c(f):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),A=0;C.length>A;A++)i(f,b=C[A])&&!i(p,b)&&h(p,b,l(f,b)) -p.prototype=g,g.constructor=p,e(94)(r,"Number",p)}},{111:111,120:120,18:18,29:29,35:35,40:40,41:41,45:45,71:71,72:72,75:75,77:77,94:94}],179:[function(e,t,n){var r=e(33) -r(r.S,"Number",{EPSILON:Math.pow(2,-52)})},{33:33}],180:[function(e,t,n){var r=e(33),i=e(40).isFinite -r(r.S,"Number",{isFinite:function(e){return"number"==typeof e&&i(e)}})},{33:33,40:40}],181:[function(e,t,n){var r=e(33) -r(r.S,"Number",{isInteger:e(50)})},{33:33,50:50}],182:[function(e,t,n){var r=e(33) -r(r.S,"Number",{isNaN:function(e){return e!=e}})},{33:33}],183:[function(e,t,n){var r=e(33),i=e(50),o=Math.abs -r(r.S,"Number",{isSafeInteger:function(e){return i(e)&&o(e)<=9007199254740991}})},{33:33,50:50}],184:[function(e,t,n){var r=e(33) -r(r.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},{33:33}],185:[function(e,t,n){var r=e(33) -r(r.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},{33:33}],186:[function(e,t,n){var r=e(33),i=e(86) -r(r.S+r.F*(Number.parseFloat!=i),"Number",{parseFloat:i})},{33:33,86:86}],187:[function(e,t,n){var r=e(33),i=e(87) -r(r.S+r.F*(Number.parseInt!=i),"Number",{parseInt:i})},{33:33,87:87}],188:[function(e,t,n){"use strict" -var r=e(33),i=e(116),o=e(4),s=e(110),a=1..toFixed,u=Math.floor,c=[0,0,0,0,0,0],l="Number.toFixed: incorrect invocation!",h=function(e,t){for(var n=-1,r=t;++n<6;)r+=e*c[n],c[n]=r%1e7,r=u(r/1e7)},d=function(e){for(var t=6,n=0;--t>=0;)n+=c[t],c[t]=u(n/e),n=n%e*1e7},p=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==c[e]){var n=String(c[e]) -t=""===t?n:t+s.call("0",7-n.length)+n}return t},f=function(e,t,n){return 0===t?n:t%2==1?f(e,t-1,n*e):f(e*e,t/2,n)},g=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096 -for(;n>=2;)t+=1,n/=2 -return t} -r(r.P+r.F*(!!a&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!e(35)(function(){a.call({})})),"Number",{toFixed:function(e){var t,n,r,a,u=o(this,l),c=i(e),m="",v="0" -if(c<0||c>20)throw RangeError(l) -if(u!=u)return"NaN" -if(u<=-1e21||u>=1e21)return String(u) -if(u<0&&(m="-",u=-u),u>1e-21)if(t=g(u*f(2,69,1))-69,n=t<0?u*f(2,-t,1):u/f(2,t,1),n*=4503599627370496,(t=52-t)>0){for(h(0,n),r=c;r>=7;)h(1e7,0),r-=7 -for(h(f(10,r,1),0),r=t-1;r>=23;)d(1<<23),r-=23 -d(1<<r),h(1,1),d(2),v=p()}else h(0,n),h(1<<-t,0),v=p()+s.call("0",c) -return c>0?(a=v.length,v=m+(a<=c?"0."+s.call("0",c-a)+v:v.slice(0,a-c)+"."+v.slice(a-c))):v=m+v,v}})},{110:110,116:116,33:33,35:35,4:4}],189:[function(e,t,n){"use strict" -var r=e(33),i=e(35),o=e(4),s=1..toPrecision -r(r.P+r.F*(i(function(){return"1"!==s.call(1,void 0)})||!i(function(){s.call({})})),"Number",{toPrecision:function(e){var t=o(this,"Number#toPrecision: incorrect invocation!") -return void 0===e?s.call(t):s.call(t,e)}})},{33:33,35:35,4:4}],190:[function(e,t,n){var r=e(33) -r(r.S+r.F,"Object",{assign:e(70)})},{33:33,70:70}],191:[function(e,t,n){var r=e(33) -r(r.S,"Object",{create:e(71)})},{33:33,71:71}],192:[function(e,t,n){var r=e(33) -r(r.S+r.F*!e(29),"Object",{defineProperties:e(73)})},{29:29,33:33,73:73}],193:[function(e,t,n){var r=e(33) -r(r.S+r.F*!e(29),"Object",{defineProperty:e(72).f})},{29:29,33:33,72:72}],194:[function(e,t,n){var r=e(51),i=e(66).onFreeze -e(83)("freeze",function(e){return function(t){return e&&r(t)?e(i(t)):t}})},{51:51,66:66,83:83}],195:[function(e,t,n){var r=e(117),i=e(75).f -e(83)("getOwnPropertyDescriptor",function(){return function(e,t){return i(r(e),t)}})},{117:117,75:75,83:83}],196:[function(e,t,n){e(83)("getOwnPropertyNames",function(){return e(76).f})},{76:76,83:83}],197:[function(e,t,n){var r=e(119),i=e(79) -e(83)("getPrototypeOf",function(){return function(e){return i(r(e))}})},{119:119,79:79,83:83}],198:[function(e,t,n){var r=e(51) -e(83)("isExtensible",function(e){return function(t){return!!r(t)&&(!e||e(t))}})},{51:51,83:83}],199:[function(e,t,n){var r=e(51) -e(83)("isFrozen",function(e){return function(t){return!r(t)||!!e&&e(t)}})},{51:51,83:83}],200:[function(e,t,n){var r=e(51) -e(83)("isSealed",function(e){return function(t){return!r(t)||!!e&&e(t)}})},{51:51,83:83}],201:[function(e,t,n){var r=e(33) -r(r.S,"Object",{is:e(96)})},{33:33,96:96}],202:[function(e,t,n){var r=e(119),i=e(81) -e(83)("keys",function(){return function(e){return i(r(e))}})},{119:119,81:81,83:83}],203:[function(e,t,n){var r=e(51),i=e(66).onFreeze -e(83)("preventExtensions",function(e){return function(t){return e&&r(t)?e(i(t)):t}})},{51:51,66:66,83:83}],204:[function(e,t,n){var r=e(51),i=e(66).onFreeze -e(83)("seal",function(e){return function(t){return e&&r(t)?e(i(t)):t}})},{51:51,66:66,83:83}],205:[function(e,t,n){var r=e(33) -r(r.S,"Object",{setPrototypeOf:e(99).set})},{33:33,99:99}],206:[function(e,t,n){"use strict" -var r=e(17),i={} -i[e(128)("toStringTag")]="z",i+""!="[object z]"&&e(94)(Object.prototype,"toString",function(){return"[object "+r(this)+"]"},!0)},{128:128,17:17,94:94}],207:[function(e,t,n){var r=e(33),i=e(86) -r(r.G+r.F*(parseFloat!=i),{parseFloat:i})},{33:33,86:86}],208:[function(e,t,n){var r=e(33),i=e(87) -r(r.G+r.F*(parseInt!=i),{parseInt:i})},{33:33,87:87}],209:[function(e,t,n){"use strict" -var r,i,o,s,a=e(60),u=e(40),c=e(25),l=e(17),h=e(33),d=e(51),p=e(3),f=e(6),g=e(39),m=e(104),v=e(113).set,y=e(68)(),b=e(69),C=e(90),A=e(91),_=u.TypeError,I=u.process,w=u.Promise,x="process"==l(I),k=function(){},j=i=b.f,E=!!function(){try{var t=w.resolve(1),n=(t.constructor={})[e(128)("species")]=function(e){e(k,k)} -return(x||"function"==typeof PromiseRejectionEvent)&&t.then(k)instanceof n}catch(e){}}(),S=a?function(e,t){return e===t||e===w&&t===s}:function(e,t){return e===t},T=function(e){var t -return!(!d(e)||"function"!=typeof(t=e.then))&&t},P=function(e,t){if(!e._n){e._n=!0 -var n=e._c -y(function(){for(var r=e._v,i=1==e._s,o=0;n.length>o;)(function(t){var n,o,s=i?t.ok:t.fail,a=t.resolve,u=t.reject,c=t.domain -try{s?(i||(2==e._h&&N(e),e._h=1),!0===s?n=r:(c&&c.enter(),n=s(r),c&&c.exit()),n===t.promise?u(_("Promise-chain cycle")):(o=T(n))?o.call(n,a,u):a(n)):u(r)}catch(e){u(e)}})(n[o++]) -e._c=[],e._n=!1,t&&!e._h&&O(e)})}},O=function(e){v.call(u,function(){var t,n,r,i=e._v,o=R(e) -if(o&&(t=C(function(){x?I.emit("unhandledRejection",i,e):(n=u.onunhandledrejection)?n({promise:e,reason:i}):(r=u.console)&&r.error&&r.error("Unhandled promise rejection",i)}),e._h=x||R(e)?2:1),e._a=void 0,o&&t.e)throw t.v})},R=function(e){if(1==e._h)return!1 -for(var t,n=e._a||e._c,r=0;n.length>r;)if(t=n[r++],t.fail||!R(t.promise))return!1 -return!0},N=function(e){v.call(u,function(){var t -x?I.emit("rejectionHandled",e):(t=u.onrejectionhandled)&&t({promise:e,reason:e._v})})},M=function(e){var t=this -t._d||(t._d=!0,t=t._w||t,t._v=e,t._s=2,t._a||(t._a=t._c.slice()),P(t,!0))},L=function(e){var t,n=this -if(!n._d){n._d=!0,n=n._w||n -try{if(n===e)throw _("Promise can't be resolved itself");(t=T(e))?y(function(){var r={_w:n,_d:!1} -try{t.call(e,c(L,r,1),c(M,r,1))}catch(e){M.call(r,e)}}):(n._v=e,n._s=1,P(n,!1))}catch(e){M.call({_w:n,_d:!1},e)}}} -E||(w=function(e){f(this,w,"Promise","_h"),p(e),r.call(this) -try{e(c(L,this,1),c(M,this,1))}catch(e){M.call(this,e)}},r=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},r.prototype=e(93)(w.prototype,{then:function(e,t){var n=j(m(this,w)) -return n.ok="function"!=typeof e||e,n.fail="function"==typeof t&&t,n.domain=x?I.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&P(this,!1),n.promise},catch:function(e){return this.then(void 0,e)}}),o=function(){var e=new r -this.promise=e,this.resolve=c(L,e,1),this.reject=c(M,e,1)},b.f=j=function(e){return S(w,e)?new o(e):i(e)}),h(h.G+h.W+h.F*!E,{Promise:w}),e(101)(w,"Promise"),e(100)("Promise"),s=e(23).Promise,h(h.S+h.F*!E,"Promise",{reject:function(e){var t=j(this) -return(0,t.reject)(e),t.promise}}),h(h.S+h.F*(a||!E),"Promise",{resolve:function(e){return e instanceof w&&S(e.constructor,this)?e:A(this,e)}}),h(h.S+h.F*!(E&&e(56)(function(e){w.all(e).catch(k)})),"Promise",{all:function(e){var t=this,n=j(t),r=n.resolve,i=n.reject,o=C(function(){var n=[],o=0,s=1 -g(e,!1,function(e){var a=o++,u=!1 -n.push(void 0),s++,t.resolve(e).then(function(e){u||(u=!0,n[a]=e,--s||r(n))},i)}),--s||r(n)}) -return o.e&&i(o.v),n.promise},race:function(e){var t=this,n=j(t),r=n.reject,i=C(function(){g(e,!1,function(e){t.resolve(e).then(n.resolve,r)})}) -return i.e&&r(i.v),n.promise}})},{100:100,101:101,104:104,113:113,128:128,17:17,23:23,25:25,3:3,33:33,39:39,40:40,51:51,56:56,6:6,60:60,68:68,69:69,90:90,91:91,93:93}],210:[function(e,t,n){var r=e(33),i=e(3),o=e(7),s=(e(40).Reflect||{}).apply,a=Function.apply -r(r.S+r.F*!e(35)(function(){s(function(){})}),"Reflect",{apply:function(e,t,n){var r=i(e),u=o(n) -return s?s(r,t,u):a.call(r,t,u)}})},{3:3,33:33,35:35,40:40,7:7}],211:[function(e,t,n){var r=e(33),i=e(71),o=e(3),s=e(7),a=e(51),u=e(35),c=e(16),l=(e(40).Reflect||{}).construct,h=u(function(){function e(){}return!(l(function(){},[],e)instanceof e)}),d=!u(function(){l(function(){})}) -r(r.S+r.F*(h||d),"Reflect",{construct:function(e,t){o(e),s(t) -var n=arguments.length<3?e:o(arguments[2]) -if(d&&!h)return l(e,t,n) -if(e==n){switch(t.length){case 0:return new e -case 1:return new e(t[0]) -case 2:return new e(t[0],t[1]) -case 3:return new e(t[0],t[1],t[2]) -case 4:return new e(t[0],t[1],t[2],t[3])}var r=[null] -return r.push.apply(r,t),new(c.apply(e,r))}var u=n.prototype,p=i(a(u)?u:Object.prototype),f=Function.apply.call(e,p,t) -return a(f)?f:p}})},{16:16,3:3,33:33,35:35,40:40,51:51,7:7,71:71}],212:[function(e,t,n){var r=e(72),i=e(33),o=e(7),s=e(120) -i(i.S+i.F*e(35)(function(){Reflect.defineProperty(r.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(e,t,n){o(e),t=s(t,!0),o(n) -try{return r.f(e,t,n),!0}catch(e){return!1}}})},{120:120,33:33,35:35,7:7,72:72}],213:[function(e,t,n){var r=e(33),i=e(75).f,o=e(7) -r(r.S,"Reflect",{deleteProperty:function(e,t){var n=i(o(e),t) -return!(n&&!n.configurable)&&delete e[t]}})},{33:33,7:7,75:75}],214:[function(e,t,n){"use strict" -var r=e(33),i=e(7),o=function(e){this._t=i(e),this._i=0 -var t,n=this._k=[] -for(t in e)n.push(t)} -e(54)(o,"Object",function(){var e,t=this,n=t._k -do{if(t._i>=n.length)return{value:void 0,done:!0}}while(!((e=n[t._i++])in t._t)) -return{value:e,done:!1}}),r(r.S,"Reflect",{enumerate:function(e){return new o(e)}})},{33:33,54:54,7:7}],215:[function(e,t,n){var r=e(75),i=e(33),o=e(7) -i(i.S,"Reflect",{getOwnPropertyDescriptor:function(e,t){return r.f(o(e),t)}})},{33:33,7:7,75:75}],216:[function(e,t,n){var r=e(33),i=e(79),o=e(7) -r(r.S,"Reflect",{getPrototypeOf:function(e){return i(o(e))}})},{33:33,7:7,79:79}],217:[function(e,t,n){function r(e,t){var n,a,l=arguments.length<3?e:arguments[2] -return c(e)===l?e[t]:(n=i.f(e,t))?s(n,"value")?n.value:void 0!==n.get?n.get.call(l):void 0:u(a=o(e))?r(a,t,l):void 0}var i=e(75),o=e(79),s=e(41),a=e(33),u=e(51),c=e(7) -a(a.S,"Reflect",{get:r})},{33:33,41:41,51:51,7:7,75:75,79:79}],218:[function(e,t,n){var r=e(33) -r(r.S,"Reflect",{has:function(e,t){return t in e}})},{33:33}],219:[function(e,t,n){var r=e(33),i=e(7),o=Object.isExtensible -r(r.S,"Reflect",{isExtensible:function(e){return i(e),!o||o(e)}})},{33:33,7:7}],220:[function(e,t,n){var r=e(33) -r(r.S,"Reflect",{ownKeys:e(85)})},{33:33,85:85}],221:[function(e,t,n){var r=e(33),i=e(7),o=Object.preventExtensions -r(r.S,"Reflect",{preventExtensions:function(e){i(e) -try{return o&&o(e),!0}catch(e){return!1}}})},{33:33,7:7}],222:[function(e,t,n){var r=e(33),i=e(99) -i&&r(r.S,"Reflect",{setPrototypeOf:function(e,t){i.check(e,t) -try{return i.set(e,t),!0}catch(e){return!1}}})},{33:33,99:99}],223:[function(e,t,n){function r(e,t,n){var u,d,p=arguments.length<4?e:arguments[3],f=o.f(l(e),t) -if(!f){if(h(d=s(e)))return r(d,t,n,p) -f=c(0)}return a(f,"value")?!(!1===f.writable||!h(p))&&(u=o.f(p,t)||c(0),u.value=n,i.f(p,t,u),!0):void 0!==f.set&&(f.set.call(p,n),!0)}var i=e(72),o=e(75),s=e(79),a=e(41),u=e(33),c=e(92),l=e(7),h=e(51) -u(u.S,"Reflect",{set:r})},{33:33,41:41,51:51,7:7,72:72,75:75,79:79,92:92}],224:[function(e,t,n){var r=e(40),i=e(45),o=e(72).f,s=e(77).f,a=e(52),u=e(37),c=r.RegExp,l=c,h=c.prototype,d=/a/g,p=/a/g,f=new c(d)!==d -if(e(29)&&(!f||e(35)(function(){return p[e(128)("match")]=!1,c(d)!=d||c(p)==p||"/a/i"!=c(d,"i")}))){c=function(e,t){var n=this instanceof c,r=a(e),o=void 0===t -return!n&&r&&e.constructor===c&&o?e:i(f?new l(r&&!o?e.source:e,t):l((r=e instanceof c)?e.source:e,r&&o?u.call(e):t),n?this:h,c)} -for(var g=s(l),m=0;g.length>m;)(function(e){e in c||o(c,e,{configurable:!0,get:function(){return l[e]},set:function(t){l[e]=t}})})(g[m++]) -h.constructor=c,c.prototype=h,e(94)(r,"RegExp",c)}e(100)("RegExp")},{100:100,128:128,29:29,35:35,37:37,40:40,45:45,52:52,72:72,77:77,94:94}],225:[function(e,t,n){e(29)&&"g"!=/./g.flags&&e(72).f(RegExp.prototype,"flags",{configurable:!0,get:e(37)})},{29:29,37:37,72:72}],226:[function(e,t,n){e(36)("match",1,function(e,t,n){return[function(n){"use strict" -var r=e(this),i=void 0==n?void 0:n[t] -return void 0!==i?i.call(n,r):new RegExp(n)[t](String(r))},n]})},{36:36}],227:[function(e,t,n){e(36)("replace",2,function(e,t,n){return[function(r,i){"use strict" -var o=e(this),s=void 0==r?void 0:r[t] -return void 0!==s?s.call(r,o,i):n.call(String(o),r,i)},n]})},{36:36}],228:[function(e,t,n){e(36)("search",1,function(e,t,n){return[function(n){"use strict" -var r=e(this),i=void 0==n?void 0:n[t] -return void 0!==i?i.call(n,r):new RegExp(n)[t](String(r))},n]})},{36:36}],229:[function(e,t,n){e(36)("split",2,function(t,n,r){"use strict" -var i=e(52),o=r,s=[].push,a="length" -if("c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1)[a]||2!="ab".split(/(?:ab)*/)[a]||4!=".".split(/(.?)(.?)/)[a]||".".split(/()()/)[a]>1||"".split(/.?/)[a]){var u=void 0===/()??/.exec("")[1] -r=function(e,t){var n=String(this) -if(void 0===e&&0===t)return[] -if(!i(e))return o.call(n,e,t) -var r,c,l,h,d,p=[],f=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),g=0,m=void 0===t?4294967295:t>>>0,v=new RegExp(e.source,f+"g") -for(u||(r=new RegExp("^"+v.source+"$(?!\\s)",f));(c=v.exec(n))&&!((l=c.index+c[0][a])>g&&(p.push(n.slice(g,c.index)),!u&&c[a]>1&&c[0].replace(r,function(){for(d=1;d<arguments[a]-2;d++)void 0===arguments[d]&&(c[d]=void 0)}),c[a]>1&&c.index<n[a]&&s.apply(p,c.slice(1)),h=c[0][a],g=l,p[a]>=m));)v.lastIndex===c.index&&v.lastIndex++ -return g===n[a]?!h&&v.test("")||p.push(""):p.push(n.slice(g)),p[a]>m?p.slice(0,m):p}}else"0".split(void 0,0)[a]&&(r=function(e,t){return void 0===e&&0===t?[]:o.call(this,e,t)}) -return[function(e,i){var o=t(this),s=void 0==e?void 0:e[n] -return void 0!==s?s.call(e,o,i):r.call(String(o),e,i)},r]})},{36:36,52:52}],230:[function(e,t,n){"use strict" -e(225) -var r=e(7),i=e(37),o=e(29),s=/./.toString,a=function(t){e(94)(RegExp.prototype,"toString",t,!0)} -e(35)(function(){return"/a/b"!=s.call({source:"a",flags:"b"})})?a(function(){var e=r(this) -return"/".concat(e.source,"/","flags"in e?e.flags:!o&&e instanceof RegExp?i.call(e):void 0)}):"toString"!=s.name&&a(function(){return s.call(this)})},{225:225,29:29,35:35,37:37,7:7,94:94}],231:[function(e,t,n){"use strict" -var r=e(19),i=e(125) -t.exports=e(22)("Set",function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}},{add:function(e){return r.def(i(this,"Set"),e=0===e?0:e,e)}},r)},{125:125,19:19,22:22}],232:[function(e,t,n){"use strict" -e(108)("anchor",function(e){return function(t){return e(this,"a","name",t)}})},{108:108}],233:[function(e,t,n){"use strict" -e(108)("big",function(e){return function(){return e(this,"big","","")}})},{108:108}],234:[function(e,t,n){"use strict" -e(108)("blink",function(e){return function(){return e(this,"blink","","")}})},{108:108}],235:[function(e,t,n){"use strict" -e(108)("bold",function(e){return function(){return e(this,"b","","")}})},{108:108}],236:[function(e,t,n){"use strict" -var r=e(33),i=e(106)(!1) -r(r.P,"String",{codePointAt:function(e){return i(this,e)}})},{106:106,33:33}],237:[function(e,t,n){"use strict" -var r=e(33),i=e(118),o=e(107),s="".endsWith -r(r.P+r.F*e(34)("endsWith"),"String",{endsWith:function(e){var t=o(this,e,"endsWith"),n=arguments.length>1?arguments[1]:void 0,r=i(t.length),a=void 0===n?r:Math.min(i(n),r),u=String(e) -return s?s.call(t,u,a):t.slice(a-u.length,a)===u}})},{107:107,118:118,33:33,34:34}],238:[function(e,t,n){"use strict" -e(108)("fixed",function(e){return function(){return e(this,"tt","","")}})},{108:108}],239:[function(e,t,n){"use strict" -e(108)("fontcolor",function(e){return function(t){return e(this,"font","color",t)}})},{108:108}],240:[function(e,t,n){"use strict" -e(108)("fontsize",function(e){return function(t){return e(this,"font","size",t)}})},{108:108}],241:[function(e,t,n){var r=e(33),i=e(114),o=String.fromCharCode,s=String.fromCodePoint -r(r.S+r.F*(!!s&&1!=s.length),"String",{fromCodePoint:function(e){for(var t,n=[],r=arguments.length,s=0;r>s;){if(t=+arguments[s++],i(t,1114111)!==t)throw RangeError(t+" is not a valid code point") -n.push(t<65536?o(t):o(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},{114:114,33:33}],242:[function(e,t,n){"use strict" -var r=e(33),i=e(107) -r(r.P+r.F*e(34)("includes"),"String",{includes:function(e){return!!~i(this,e,"includes").indexOf(e,arguments.length>1?arguments[1]:void 0)}})},{107:107,33:33,34:34}],243:[function(e,t,n){"use strict" -e(108)("italics",function(e){return function(){return e(this,"i","","")}})},{108:108}],244:[function(e,t,n){"use strict" -var r=e(106)(!0) -e(55)(String,"String",function(e){this._t=String(e),this._i=0},function(){var e,t=this._t,n=this._i -return n>=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})})},{106:106,55:55}],245:[function(e,t,n){"use strict" -e(108)("link",function(e){return function(t){return e(this,"a","href",t)}})},{108:108}],246:[function(e,t,n){var r=e(33),i=e(117),o=e(118) -r(r.S,"String",{raw:function(e){for(var t=i(e.raw),n=o(t.length),r=arguments.length,s=[],a=0;n>a;)s.push(String(t[a++])),a<r&&s.push(String(arguments[a])) -return s.join("")}})},{117:117,118:118,33:33}],247:[function(e,t,n){var r=e(33) -r(r.P,"String",{repeat:e(110)})},{110:110,33:33}],248:[function(e,t,n){"use strict" -e(108)("small",function(e){return function(){return e(this,"small","","")}})},{108:108}],249:[function(e,t,n){"use strict" -var r=e(33),i=e(118),o=e(107),s="".startsWith -r(r.P+r.F*e(34)("startsWith"),"String",{startsWith:function(e){var t=o(this,e,"startsWith"),n=i(Math.min(arguments.length>1?arguments[1]:void 0,t.length)),r=String(e) -return s?s.call(t,r,n):t.slice(n,n+r.length)===r}})},{107:107,118:118,33:33,34:34}],250:[function(e,t,n){"use strict" -e(108)("strike",function(e){return function(){return e(this,"strike","","")}})},{108:108}],251:[function(e,t,n){"use strict" -e(108)("sub",function(e){return function(){return e(this,"sub","","")}})},{108:108}],252:[function(e,t,n){"use strict" -e(108)("sup",function(e){return function(){return e(this,"sup","","")}})},{108:108}],253:[function(e,t,n){"use strict" -e(111)("trim",function(e){return function(){return e(this,3)}})},{111:111}],254:[function(e,t,n){"use strict" -var r=e(40),i=e(41),o=e(29),s=e(33),a=e(94),u=e(66).KEY,c=e(35),l=e(103),h=e(101),d=e(124),p=e(128),f=e(127),g=e(126),m=e(59),v=e(32),y=e(49),b=e(7),C=e(117),A=e(120),_=e(92),I=e(71),w=e(76),x=e(75),k=e(72),j=e(81),E=x.f,S=k.f,T=w.f,P=r.Symbol,O=r.JSON,R=O&&O.stringify,N=p("_hidden"),M=p("toPrimitive"),L={}.propertyIsEnumerable,D=l("symbol-registry"),z=l("symbols"),F=l("op-symbols"),B=Object.prototype,H="function"==typeof P,U=r.QObject,q=!U||!U.prototype||!U.prototype.findChild,V=o&&c(function(){return 7!=I(S({},"a",{get:function(){return S(this,"a",{value:7}).a}})).a})?function(e,t,n){var r=E(B,t) -r&&delete B[t],S(e,t,n),r&&e!==B&&S(B,t,r)}:S,W=function(e){var t=z[e]=I(P.prototype) -return t._k=e,t},G=H&&"symbol"==typeof P.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof P},Y=function(e,t,n){return e===B&&Y(F,t,n),b(e),t=A(t,!0),b(n),i(z,t)?(n.enumerable?(i(e,N)&&e[N][t]&&(e[N][t]=!1),n=I(n,{enumerable:_(0,!1)})):(i(e,N)||S(e,N,_(1,{})),e[N][t]=!0),V(e,t,n)):S(e,t,n)},K=function(e,t){b(e) -for(var n,r=v(t=C(t)),i=0,o=r.length;o>i;)Y(e,n=r[i++],t[n]) -return e},Q=function(e,t){return void 0===t?I(e):K(I(e),t)},Z=function(e){var t=L.call(this,e=A(e,!0)) -return!(this===B&&i(z,e)&&!i(F,e))&&(!(t||!i(this,e)||!i(z,e)||i(this,N)&&this[N][e])||t)},X=function(e,t){if(e=C(e),t=A(t,!0),e!==B||!i(z,t)||i(F,t)){var n=E(e,t) -return!n||!i(z,t)||i(e,N)&&e[N][t]||(n.enumerable=!0),n}},J=function(e){for(var t,n=T(C(e)),r=[],o=0;n.length>o;)i(z,t=n[o++])||t==N||t==u||r.push(t) -return r},$=function(e){for(var t,n=e===B,r=T(n?F:C(e)),o=[],s=0;r.length>s;)!i(z,t=r[s++])||n&&!i(B,t)||o.push(z[t]) -return o} -H||(P=function(){if(this instanceof P)throw TypeError("Symbol is not a constructor!") -var e=d(arguments.length>0?arguments[0]:void 0),t=function(n){this===B&&t.call(F,n),i(this,N)&&i(this[N],e)&&(this[N][e]=!1),V(this,e,_(1,n))} -return o&&q&&V(B,e,{configurable:!0,set:t}),W(e)},a(P.prototype,"toString",function(){return this._k}),x.f=X,k.f=Y,e(77).f=w.f=J,e(82).f=Z,e(78).f=$,o&&!e(60)&&a(B,"propertyIsEnumerable",Z,!0),f.f=function(e){return W(p(e))}),s(s.G+s.W+s.F*!H,{Symbol:P}) -for(var ee="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),te=0;ee.length>te;)p(ee[te++]) -for(var ne=j(p.store),re=0;ne.length>re;)g(ne[re++]) -s(s.S+s.F*!H,"Symbol",{for:function(e){return i(D,e+="")?D[e]:D[e]=P(e)},keyFor:function(e){if(G(e))return m(D,e) -throw TypeError(e+" is not a symbol!")},useSetter:function(){q=!0},useSimple:function(){q=!1}}),s(s.S+s.F*!H,"Object",{create:Q,defineProperty:Y,defineProperties:K,getOwnPropertyDescriptor:X,getOwnPropertyNames:J,getOwnPropertySymbols:$}),O&&s(s.S+s.F*(!H||c(function(){var e=P() -return"[null]"!=R([e])||"{}"!=R({a:e})||"{}"!=R(Object(e))})),"JSON",{stringify:function(e){if(void 0!==e&&!G(e)){for(var t,n,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]) -return t=r[1],"function"==typeof t&&(n=t),!n&&y(t)||(t=function(e,t){if(n&&(t=n.call(this,e,t)),!G(t))return t}),r[1]=t,R.apply(O,r)}}}),P.prototype[M]||e(42)(P.prototype,M,P.prototype.valueOf),h(P,"Symbol"),h(Math,"Math",!0),h(r.JSON,"JSON",!0)},{101:101,103:103,117:117,120:120,124:124,126:126,127:127,128:128,29:29,32:32,33:33,35:35,40:40,41:41,42:42,49:49,59:59,60:60,66:66,7:7,71:71,72:72,75:75,76:76,77:77,78:78,81:81,82:82,92:92,94:94}],255:[function(e,t,n){"use strict" -var r=e(33),i=e(123),o=e(122),s=e(7),a=e(114),u=e(118),c=e(51),l=e(40).ArrayBuffer,h=e(104),d=o.ArrayBuffer,p=o.DataView,f=i.ABV&&l.isView,g=d.prototype.slice,m=i.VIEW -r(r.G+r.W+r.F*(l!==d),{ArrayBuffer:d}),r(r.S+r.F*!i.CONSTR,"ArrayBuffer",{isView:function(e){return f&&f(e)||c(e)&&m in e}}),r(r.P+r.U+r.F*e(35)(function(){return!new d(2).slice(1,void 0).byteLength}),"ArrayBuffer",{slice:function(e,t){if(void 0!==g&&void 0===t)return g.call(s(this),e) -for(var n=s(this).byteLength,r=a(e,n),i=a(void 0===t?n:t,n),o=new(h(this,d))(u(i-r)),c=new p(this),l=new p(o),f=0;r<i;)l.setUint8(f++,c.getUint8(r++)) -return o}}),e(100)("ArrayBuffer")},{100:100,104:104,114:114,118:118,122:122,123:123,33:33,35:35,40:40,51:51,7:7}],256:[function(e,t,n){var r=e(33) -r(r.G+r.W+r.F*!e(123).ABV,{DataView:e(122).DataView})},{122:122,123:123,33:33}],257:[function(e,t,n){e(121)("Float32",4,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],258:[function(e,t,n){e(121)("Float64",8,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],259:[function(e,t,n){e(121)("Int16",2,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],260:[function(e,t,n){e(121)("Int32",4,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],261:[function(e,t,n){e(121)("Int8",1,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],262:[function(e,t,n){e(121)("Uint16",2,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],263:[function(e,t,n){e(121)("Uint32",4,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],264:[function(e,t,n){e(121)("Uint8",1,function(e){return function(t,n,r){return e(this,t,n,r)}})},{121:121}],265:[function(e,t,n){e(121)("Uint8",1,function(e){return function(t,n,r){return e(this,t,n,r)}},!0)},{121:121}],266:[function(e,t,n){"use strict" -var r,i=e(12)(0),o=e(94),s=e(66),a=e(70),u=e(21),c=e(51),l=e(35),h=e(125),d=s.getWeak,p=Object.isExtensible,f=u.ufstore,g={},m=function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}},v={get:function(e){if(c(e)){var t=d(e) -return!0===t?f(h(this,"WeakMap")).get(e):t?t[this._i]:void 0}},set:function(e,t){return u.def(h(this,"WeakMap"),e,t)}},y=t.exports=e(22)("WeakMap",m,v,u,!0,!0) -l(function(){return 7!=(new y).set((Object.freeze||Object)(g),7).get(g)})&&(r=u.getConstructor(m,"WeakMap"),a(r.prototype,v),s.NEED=!0,i(["delete","has","get","set"],function(e){var t=y.prototype,n=t[e] -o(t,e,function(t,i){if(c(t)&&!p(t)){this._f||(this._f=new r) -var o=this._f[e](t,i) -return"set"==e?this:o}return n.call(this,t,i)})}))},{12:12,125:125,21:21,22:22,35:35,51:51,66:66,70:70,94:94}],267:[function(e,t,n){"use strict" -var r=e(21),i=e(125) -e(22)("WeakSet",function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}},{add:function(e){return r.def(i(this,"WeakSet"),e,!0)}},r,!1,!0)},{125:125,21:21,22:22}],268:[function(e,t,n){"use strict" -var r=e(33),i=e(38),o=e(119),s=e(118),a=e(3),u=e(15) -r(r.P,"Array",{flatMap:function(e){var t,n,r=o(this) -return a(e),t=s(r.length),n=u(r,0),i(n,r,r,t,0,1,e,arguments[1]),n}}),e(5)("flatMap")},{118:118,119:119,15:15,3:3,33:33,38:38,5:5}],269:[function(e,t,n){"use strict" -var r=e(33),i=e(38),o=e(119),s=e(118),a=e(116),u=e(15) -r(r.P,"Array",{flatten:function(){var e=arguments[0],t=o(this),n=s(t.length),r=u(t,0) -return i(r,t,t,n,0,void 0===e?1:a(e)),r}}),e(5)("flatten")},{116:116,118:118,119:119,15:15,33:33,38:38,5:5}],270:[function(e,t,n){"use strict" -var r=e(33),i=e(11)(!0) -r(r.P,"Array",{includes:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}}),e(5)("includes")},{11:11,33:33,5:5}],271:[function(e,t,n){var r=e(33),i=e(68)(),o=e(40).process,s="process"==e(18)(o) -r(r.G,{asap:function(e){var t=s&&o.domain -i(t?t.bind(e):e)}})},{18:18,33:33,40:40,68:68}],272:[function(e,t,n){var r=e(33),i=e(18) -r(r.S,"Error",{isError:function(e){return"Error"===i(e)}})},{18:18,33:33}],273:[function(e,t,n){var r=e(33) -r(r.G,{global:e(40)})},{33:33,40:40}],274:[function(e,t,n){e(97)("Map")},{97:97}],275:[function(e,t,n){e(98)("Map")},{98:98}],276:[function(e,t,n){var r=e(33) -r(r.P+r.R,"Map",{toJSON:e(20)("Map")})},{20:20,33:33}],277:[function(e,t,n){var r=e(33) -r(r.S,"Math",{clamp:function(e,t,n){return Math.min(n,Math.max(t,e))}})},{33:33}],278:[function(e,t,n){var r=e(33) -r(r.S,"Math",{DEG_PER_RAD:Math.PI/180})},{33:33}],279:[function(e,t,n){var r=e(33),i=180/Math.PI -r(r.S,"Math",{degrees:function(e){return e*i}})},{33:33}],280:[function(e,t,n){var r=e(33),i=e(64),o=e(62) -r(r.S,"Math",{fscale:function(e,t,n,r,s){return o(i(e,t,n,r,s))}})},{33:33,62:62,64:64}],281:[function(e,t,n){var r=e(33) -r(r.S,"Math",{iaddh:function(e,t,n,r){var i=e>>>0,o=t>>>0,s=n>>>0 -return o+(r>>>0)+((i&s|(i|s)&~(i+s>>>0))>>>31)|0}})},{33:33}],282:[function(e,t,n){var r=e(33) -r(r.S,"Math",{imulh:function(e,t){var n=+e,r=+t,i=65535&n,o=65535&r,s=n>>16,a=r>>16,u=(s*o>>>0)+(i*o>>>16) -return s*a+(u>>16)+((i*a>>>0)+(65535&u)>>16)}})},{33:33}],283:[function(e,t,n){var r=e(33) -r(r.S,"Math",{isubh:function(e,t,n,r){var i=e>>>0,o=t>>>0,s=n>>>0 -return o-(r>>>0)-((~i&s|~(i^s)&i-s>>>0)>>>31)|0}})},{33:33}],284:[function(e,t,n){var r=e(33) -r(r.S,"Math",{RAD_PER_DEG:180/Math.PI})},{33:33}],285:[function(e,t,n){var r=e(33),i=Math.PI/180 -r(r.S,"Math",{radians:function(e){return e*i}})},{33:33}],286:[function(e,t,n){var r=e(33) -r(r.S,"Math",{scale:e(64)})},{33:33,64:64}],287:[function(e,t,n){var r=e(33) -r(r.S,"Math",{signbit:function(e){return(e=+e)!=e?e:0==e?1/e==1/0:e>0}})},{33:33}],288:[function(e,t,n){var r=e(33) -r(r.S,"Math",{umulh:function(e,t){var n=+e,r=+t,i=65535&n,o=65535&r,s=n>>>16,a=r>>>16,u=(s*o>>>0)+(i*o>>>16) -return s*a+(u>>>16)+((i*a>>>0)+(65535&u)>>>16)}})},{33:33}],289:[function(e,t,n){"use strict" -var r=e(33),i=e(119),o=e(3),s=e(72) -e(29)&&r(r.P+e(74),"Object",{__defineGetter__:function(e,t){s.f(i(this),e,{get:o(t),enumerable:!0,configurable:!0})}})},{119:119,29:29,3:3,33:33,72:72,74:74}],290:[function(e,t,n){"use strict" -var r=e(33),i=e(119),o=e(3),s=e(72) -e(29)&&r(r.P+e(74),"Object",{__defineSetter__:function(e,t){s.f(i(this),e,{set:o(t),enumerable:!0,configurable:!0})}})},{119:119,29:29,3:3,33:33,72:72,74:74}],291:[function(e,t,n){var r=e(33),i=e(84)(!0) -r(r.S,"Object",{entries:function(e){return i(e)}})},{33:33,84:84}],292:[function(e,t,n){var r=e(33),i=e(85),o=e(117),s=e(75),a=e(24) -r(r.S,"Object",{getOwnPropertyDescriptors:function(e){for(var t,n,r=o(e),u=s.f,c=i(r),l={},h=0;c.length>h;)void 0!==(n=u(r,t=c[h++]))&&a(l,t,n) -return l}})},{117:117,24:24,33:33,75:75,85:85}],293:[function(e,t,n){"use strict" -var r=e(33),i=e(119),o=e(120),s=e(79),a=e(75).f -e(29)&&r(r.P+e(74),"Object",{__lookupGetter__:function(e){var t,n=i(this),r=o(e,!0) -do{if(t=a(n,r))return t.get}while(n=s(n))}})},{119:119,120:120,29:29,33:33,74:74,75:75,79:79}],294:[function(e,t,n){"use strict" -var r=e(33),i=e(119),o=e(120),s=e(79),a=e(75).f -e(29)&&r(r.P+e(74),"Object",{__lookupSetter__:function(e){var t,n=i(this),r=o(e,!0) -do{if(t=a(n,r))return t.set}while(n=s(n))}})},{119:119,120:120,29:29,33:33,74:74,75:75,79:79}],295:[function(e,t,n){var r=e(33),i=e(84)(!1) -r(r.S,"Object",{values:function(e){return i(e)}})},{33:33,84:84}],296:[function(e,t,n){"use strict" -var r=e(33),i=e(40),o=e(23),s=e(68)(),a=e(128)("observable"),u=e(3),c=e(7),l=e(6),h=e(93),d=e(42),p=e(39),f=p.RETURN,g=function(e){return null==e?void 0:u(e)},m=function(e){var t=e._c -t&&(e._c=void 0,t())},v=function(e){return void 0===e._o},y=function(e){v(e)||(e._o=void 0,m(e))},b=function(e,t){c(e),this._c=void 0,this._o=e,e=new C(this) -try{var n=t(e),r=n -null!=n&&("function"==typeof n.unsubscribe?n=function(){r.unsubscribe()}:u(n),this._c=n)}catch(t){return void e.error(t)}v(this)&&m(this)} -b.prototype=h({},{unsubscribe:function(){y(this)}}) -var C=function(e){this._s=e} -C.prototype=h({},{next:function(e){var t=this._s -if(!v(t)){var n=t._o -try{var r=g(n.next) -if(r)return r.call(n,e)}catch(e){try{y(t)}finally{throw e}}}},error:function(e){var t=this._s -if(v(t))throw e -var n=t._o -t._o=void 0 -try{var r=g(n.error) -if(!r)throw e -e=r.call(n,e)}catch(e){try{m(t)}finally{throw e}}return m(t),e},complete:function(e){var t=this._s -if(!v(t)){var n=t._o -t._o=void 0 -try{var r=g(n.complete) -e=r?r.call(n,e):void 0}catch(e){try{m(t)}finally{throw e}}return m(t),e}}}) -var A=function(e){l(this,A,"Observable","_f")._f=u(e)} -h(A.prototype,{subscribe:function(e){return new b(e,this._f)},forEach:function(e){var t=this -return new(o.Promise||i.Promise)(function(n,r){u(e) -var i=t.subscribe({next:function(t){try{return e(t)}catch(e){r(e),i.unsubscribe()}},error:r,complete:n})})}}),h(A,{from:function(e){var t="function"==typeof this?this:A,n=g(c(e)[a]) -if(n){var r=c(n.call(e)) -return r.constructor===t?r:new t(function(e){return r.subscribe(e)})}return new t(function(t){var n=!1 -return s(function(){if(!n){try{if(p(e,!1,function(e){if(t.next(e),n)return f})===f)return}catch(e){if(n)throw e -return void t.error(e)}t.complete()}}),function(){n=!0}})},of:function(){for(var e=0,t=arguments.length,n=Array(t);e<t;)n[e]=arguments[e++] -return new("function"==typeof this?this:A)(function(e){var t=!1 -return s(function(){if(!t){for(var r=0;r<n.length;++r)if(e.next(n[r]),t)return -e.complete()}}),function(){t=!0}})}}),d(A.prototype,a,function(){return this}),r(r.G,{Observable:A}),e(100)("Observable")},{100:100,128:128,23:23,3:3,33:33,39:39,40:40,42:42,6:6,68:68,7:7,93:93}],297:[function(e,t,n){"use strict" -var r=e(33),i=e(23),o=e(40),s=e(104),a=e(91) -r(r.P+r.R,"Promise",{finally:function(e){var t=s(this,i.Promise||o.Promise),n="function"==typeof e -return this.then(n?function(n){return a(t,e()).then(function(){return n})}:e,n?function(n){return a(t,e()).then(function(){throw n})}:e)}})},{104:104,23:23,33:33,40:40,91:91}],298:[function(e,t,n){"use strict" -var r=e(33),i=e(69),o=e(90) -r(r.S,"Promise",{try:function(e){var t=i.f(this),n=o(e) -return(n.e?t.reject:t.resolve)(n.v),t.promise}})},{33:33,69:69,90:90}],299:[function(e,t,n){var r=e(67),i=e(7),o=r.key,s=r.set -r.exp({defineMetadata:function(e,t,n,r){s(e,t,i(n),o(r))}})},{67:67,7:7}],300:[function(e,t,n){var r=e(67),i=e(7),o=r.key,s=r.map,a=r.store -r.exp({deleteMetadata:function(e,t){var n=arguments.length<3?void 0:o(arguments[2]),r=s(i(t),n,!1) -if(void 0===r||!r.delete(e))return!1 -if(r.size)return!0 -var u=a.get(t) -return u.delete(n),!!u.size||a.delete(t)}})},{67:67,7:7}],301:[function(e,t,n){var r=e(231),i=e(10),o=e(67),s=e(7),a=e(79),u=o.keys,c=o.key,l=function(e,t){var n=u(e,t),o=a(e) -if(null===o)return n -var s=l(o,t) -return s.length?n.length?i(new r(n.concat(s))):s:n} -o.exp({getMetadataKeys:function(e){return l(s(e),arguments.length<2?void 0:c(arguments[1]))}})},{10:10,231:231,67:67,7:7,79:79}],302:[function(e,t,n){var r=e(67),i=e(7),o=e(79),s=r.has,a=r.get,u=r.key,c=function(e,t,n){if(s(e,t,n))return a(e,t,n) -var r=o(t) -return null!==r?c(e,r,n):void 0} -r.exp({getMetadata:function(e,t){return c(e,i(t),arguments.length<3?void 0:u(arguments[2]))}})},{67:67,7:7,79:79}],303:[function(e,t,n){var r=e(67),i=e(7),o=r.keys,s=r.key -r.exp({getOwnMetadataKeys:function(e){return o(i(e),arguments.length<2?void 0:s(arguments[1]))}})},{67:67,7:7}],304:[function(e,t,n){var r=e(67),i=e(7),o=r.get,s=r.key -r.exp({getOwnMetadata:function(e,t){return o(e,i(t),arguments.length<3?void 0:s(arguments[2]))}})},{67:67,7:7}],305:[function(e,t,n){var r=e(67),i=e(7),o=e(79),s=r.has,a=r.key,u=function(e,t,n){if(s(e,t,n))return!0 -var r=o(t) -return null!==r&&u(e,r,n)} -r.exp({hasMetadata:function(e,t){return u(e,i(t),arguments.length<3?void 0:a(arguments[2]))}})},{67:67,7:7,79:79}],306:[function(e,t,n){var r=e(67),i=e(7),o=r.has,s=r.key -r.exp({hasOwnMetadata:function(e,t){return o(e,i(t),arguments.length<3?void 0:s(arguments[2]))}})},{67:67,7:7}],307:[function(e,t,n){var r=e(67),i=e(7),o=e(3),s=r.key,a=r.set -r.exp({metadata:function(e,t){return function(n,r){a(e,t,(void 0!==r?i:o)(n),s(r))}}})},{3:3,67:67,7:7}],308:[function(e,t,n){e(97)("Set")},{97:97}],309:[function(e,t,n){e(98)("Set")},{98:98}],310:[function(e,t,n){var r=e(33) -r(r.P+r.R,"Set",{toJSON:e(20)("Set")})},{20:20,33:33}],311:[function(e,t,n){"use strict" -var r=e(33),i=e(106)(!0) -r(r.P,"String",{at:function(e){return i(this,e)}})},{106:106,33:33}],312:[function(e,t,n){"use strict" -var r=e(33),i=e(28),o=e(118),s=e(52),a=e(37),u=RegExp.prototype,c=function(e,t){this._r=e,this._s=t} -e(54)(c,"RegExp String",function(){var e=this._r.exec(this._s) -return{value:e,done:null===e}}),r(r.P,"String",{matchAll:function(e){if(i(this),!s(e))throw TypeError(e+" is not a regexp!") -var t=String(this),n="flags"in u?String(e.flags):a.call(e),r=new RegExp(e.source,~n.indexOf("g")?n:"g"+n) -return r.lastIndex=o(e.lastIndex),new c(r,t)}})},{118:118,28:28,33:33,37:37,52:52,54:54}],313:[function(e,t,n){"use strict" -var r=e(33),i=e(109) -r(r.P,"String",{padEnd:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0,!1)}})},{109:109,33:33}],314:[function(e,t,n){"use strict" -var r=e(33),i=e(109) -r(r.P,"String",{padStart:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0,!0)}})},{109:109,33:33}],315:[function(e,t,n){"use strict" -e(111)("trimLeft",function(e){return function(){return e(this,1)}},"trimStart")},{111:111}],316:[function(e,t,n){"use strict" -e(111)("trimRight",function(e){return function(){return e(this,2)}},"trimEnd")},{111:111}],317:[function(e,t,n){e(126)("asyncIterator")},{126:126}],318:[function(e,t,n){e(126)("observable")},{126:126}],319:[function(e,t,n){var r=e(33) -r(r.S,"System",{global:e(40)})},{33:33,40:40}],320:[function(e,t,n){e(97)("WeakMap")},{97:97}],321:[function(e,t,n){e(98)("WeakMap")},{98:98}],322:[function(e,t,n){e(97)("WeakSet")},{97:97}],323:[function(e,t,n){e(98)("WeakSet")},{98:98}],324:[function(e,t,n){for(var r=e(141),i=e(81),o=e(94),s=e(40),a=e(42),u=e(58),c=e(128),l=c("iterator"),h=c("toStringTag"),d=u.Array,p={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},f=i(p),g=0;g<f.length;g++){var m,v=f[g],y=p[v],b=s[v],C=b&&b.prototype -if(C&&(C[l]||a(C,l,d),C[h]||a(C,h,v),u[v]=d,y))for(m in r)C[m]||o(C,m,r[m],!0)}},{128:128,141:141,40:40,42:42,58:58,81:81,94:94}],325:[function(e,t,n){var r=e(33),i=e(113) -r(r.G+r.B,{setImmediate:i.set,clearImmediate:i.clear})},{113:113,33:33}],326:[function(e,t,n){var r=e(40),i=e(33),o=e(46),s=e(88),a=r.navigator,u=!!a&&/MSIE .\./.test(a.userAgent),c=function(e){return u?function(t,n){return e(o(s,[].slice.call(arguments,2),"function"==typeof t?t:Function(t)),n)}:e} -i(i.G+i.B+i.F*u,{setTimeout:c(r.setTimeout),setInterval:c(r.setInterval)})},{33:33,40:40,46:46,88:88}],327:[function(e,t,n){e(254),e(191),e(193),e(192),e(195),e(197),e(202),e(196),e(194),e(204),e(203),e(199),e(200),e(198),e(190),e(201),e(205),e(206),e(157),e(159),e(158),e(208),e(207),e(178),e(188),e(189),e(179),e(180),e(181),e(182) -e(183),e(184),e(185),e(186),e(187),e(161),e(162),e(163),e(164),e(165),e(166),e(167),e(168),e(169),e(170),e(171),e(172),e(173),e(174),e(175),e(176),e(177),e(241),e(246),e(253),e(244),e(236),e(237),e(242),e(247) -e(249),e(232),e(233),e(234),e(235),e(238),e(239),e(240),e(243),e(245),e(248),e(250),e(251),e(252),e(152),e(154),e(153),e(156),e(155),e(140),e(138),e(145),e(142),e(148),e(150),e(137),e(144),e(134),e(149),e(132) -e(147),e(146),e(139),e(143),e(131),e(133),e(136),e(135),e(151),e(141),e(224),e(230),e(225),e(226),e(227),e(228),e(229),e(209),e(160),e(231),e(266),e(267),e(255),e(256),e(261),e(264),e(265),e(259),e(262),e(260) -e(263),e(257),e(258),e(210),e(211),e(212),e(213),e(214),e(217),e(215),e(216),e(218),e(219),e(220),e(221),e(223),e(222),e(270),e(268),e(269),e(311),e(314),e(313),e(315),e(316),e(312),e(317),e(318),e(292),e(295) -e(291),e(289),e(290),e(293),e(294),e(276),e(310),e(275),e(309),e(321),e(323),e(274),e(308),e(320),e(322),e(273),e(319),e(272),e(277),e(278),e(279),e(280),e(281),e(283),e(282),e(284),e(285),e(286),e(288),e(287) -e(297),e(298),e(299),e(300),e(302),e(301),e(304),e(303),e(305),e(306),e(307),e(271),e(296),e(326),e(325),e(324),t.exports=e(23)},{131:131,132:132,133:133,134:134,135:135,136:136,137:137,138:138,139:139,140:140,141:141,142:142,143:143,144:144,145:145,146:146,147:147,148:148,149:149,150:150,151:151,152:152,153:153,154:154,155:155,156:156,157:157,158:158,159:159,160:160,161:161,162:162,163:163,164:164,165:165,166:166,167:167,168:168,169:169,170:170,171:171,172:172,173:173,174:174,175:175,176:176,177:177,178:178,179:179,180:180,181:181,182:182,183:183,184:184,185:185,186:186,187:187,188:188,189:189,190:190,191:191,192:192,193:193,194:194,195:195,196:196,197:197,198:198,199:199,200:200,201:201,202:202,203:203,204:204,205:205,206:206,207:207,208:208,209:209,210:210,211:211,212:212,213:213,214:214,215:215,216:216,217:217,218:218,219:219,220:220,221:221,222:222,223:223,224:224,225:225,226:226,227:227,228:228,229:229,23:23,230:230,231:231,232:232,233:233,234:234,235:235,236:236,237:237,238:238,239:239,240:240,241:241,242:242,243:243,244:244,245:245,246:246,247:247,248:248,249:249,250:250,251:251,252:252,253:253,254:254,255:255,256:256,257:257,258:258,259:259,260:260,261:261,262:262,263:263,264:264,265:265,266:266,267:267,268:268,269:269,270:270,271:271,272:272,273:273,274:274,275:275,276:276,277:277,278:278,279:279,280:280,281:281,282:282,283:283,284:284,285:285,286:286,287:287,288:288,289:289,290:290,291:291,292:292,293:293,294:294,295:295,296:296,297:297,298:298,299:299,300:300,301:301,302:302,303:303,304:304,305:305,306:306,307:307,308:308,309:309,310:310,311:311,312:312,313:313,314:314,315:315,316:316,317:317,318:318,319:319,320:320,321:321,322:322,323:323,324:324,325:325,326:326}],328:[function(e,t,n){(function(e){!function(e){"use strict" -function n(e,t,n,r){var o=t&&t.prototype instanceof i?t:i,s=Object.create(o.prototype),a=new p(r||[]) -return s._invoke=c(e,n,a),s}function r(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function i(){}function o(){}function s(){}function a(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function u(t){function n(e,i,o,s){var a=r(t[e],t,i) -if("throw"!==a.type){var u=a.arg,c=u.value -return c&&"object"==typeof c&&y.call(c,"__await")?Promise.resolve(c.__await).then(function(e){n("next",e,o,s)},function(e){n("throw",e,o,s)}):Promise.resolve(c).then(function(e){u.value=e,o(u)},s)}s(a.arg)}function i(e,t){function r(){return new Promise(function(r,i){n(e,t,r,i)})}return o=o?o.then(r,r):r()}"object"==typeof e.process&&e.process.domain&&(n=e.process.domain.bind(n)) -var o -this._invoke=i}function c(e,t,n){var i=x -return function(o,s){if(i===j)throw new Error("Generator is already running") -if(i===E){if("throw"===o)throw s -return g()}for(n.method=o,n.arg=s;;){var a=n.delegate -if(a){var u=l(a,n) -if(u){if(u===S)continue -return u}}if("next"===n.method)n.sent=n._sent=n.arg -else if("throw"===n.method){if(i===x)throw i=E,n.arg -n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg) -i=j -var c=r(e,t,n) -if("normal"===c.type){if(i=n.done?E:k,c.arg===S)continue -return{value:c.arg,done:n.done}}"throw"===c.type&&(i=E,n.method="throw",n.arg=c.arg)}}}function l(e,t){var n=e.iterator[t.method] -if(n===m){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=m,l(e,t),"throw"===t.method))return S -t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return S}var i=r(n,e.iterator,t.arg) -if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,S -var o=i.arg -return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=m),t.delegate=null,S):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,S)}function h(e){var t={tryLoc:e[0]} -1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function d(e){var t=e.completion||{} -t.type="normal",delete t.arg,e.completion=t}function p(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(h,this),this.reset(!0)}function f(e){if(e){var t=e[C] -if(t)return t.call(e) -if("function"==typeof e.next)return e -if(!isNaN(e.length)){var n=-1,r=function t(){for(;++n<e.length;)if(y.call(e,n))return t.value=e[n],t.done=!1,t -return t.value=m,t.done=!0,t} -return r.next=r}}return{next:g}}function g(){return{value:m,done:!0}}var m,v=Object.prototype,y=v.hasOwnProperty,b="function"==typeof Symbol?Symbol:{},C=b.iterator||"@@iterator",A=b.asyncIterator||"@@asyncIterator",_=b.toStringTag||"@@toStringTag",I="object"==typeof t,w=e.regeneratorRuntime -if(w)return void(I&&(t.exports=w)) -w=e.regeneratorRuntime=I?t.exports:{},w.wrap=n -var x="suspendedStart",k="suspendedYield",j="executing",E="completed",S={},T={} -T[C]=function(){return this} -var P=Object.getPrototypeOf,O=P&&P(P(f([]))) -O&&O!==v&&y.call(O,C)&&(T=O) -var R=s.prototype=i.prototype=Object.create(T) -o.prototype=R.constructor=s,s.constructor=o,s[_]=o.displayName="GeneratorFunction",w.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor -return!!t&&(t===o||"GeneratorFunction"===(t.displayName||t.name))},w.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,s):(e.__proto__=s,_ in e||(e[_]="GeneratorFunction")),e.prototype=Object.create(R),e},w.awrap=function(e){return{__await:e}},a(u.prototype),u.prototype[A]=function(){return this},w.AsyncIterator=u,w.async=function(e,t,r,i){var o=new u(n(e,t,r,i)) -return w.isGeneratorFunction(t)?o:o.next().then(function(e){return e.done?e.value:o.next()})},a(R),R[_]="Generator",R[C]=function(){return this},R.toString=function(){return"[object Generator]"},w.keys=function(e){var t=[] -for(var n in e)t.push(n) -return t.reverse(),function n(){for(;t.length;){var r=t.pop() -if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},w.values=f,p.prototype={constructor:p,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=m,this.done=!1,this.delegate=null,this.method="next",this.arg=m,this.tryEntries.forEach(d),!e)for(var t in this)"t"===t.charAt(0)&&y.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=m)},stop:function(){this.done=!0 -var e=this.tryEntries[0],t=e.completion -if("throw"===t.type)throw t.arg -return this.rval},dispatchException:function(e){function t(t,r){return o.type="throw",o.arg=e,n.next=t,r&&(n.method="next",n.arg=m),!!r}if(this.done)throw e -for(var n=this,r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],o=i.completion -if("root"===i.tryLoc)return t("end") -if(i.tryLoc<=this.prev){var s=y.call(i,"catchLoc"),a=y.call(i,"finallyLoc") -if(s&&a){if(this.prev<i.catchLoc)return t(i.catchLoc,!0) -if(this.prev<i.finallyLoc)return t(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return t(i.catchLoc,!0)}else{if(!a)throw new Error("try statement without catch or finally") -if(this.prev<i.finallyLoc)return t(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n] -if(r.tryLoc<=this.prev&&y.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r -break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null) -var o=i?i.completion:{} -return o.type=e,o.arg=t,i?(this.method="next",this.next=i.finallyLoc,S):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg -return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),S},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t] -if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),d(n),S}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t] -if(n.tryLoc===e){var r=n.completion -if("throw"===r.type){var i=r.arg -d(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:f(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=m),S}}}("object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]),function(e,t){"use strict" -"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document") -return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict" -function n(e,t,n){t=t||se -var r,i=t.createElement("script") -if(i.text=e,n)for(r in Ce)n[r]&&(i[r]=n[r]) -t.head.appendChild(i).parentNode.removeChild(i)}function r(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?de[pe.call(e)]||"object":typeof e}function i(e){var t=!!e&&"length"in e&&e.length,n=r(e) -return!ye(e)&&!be(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function o(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}function s(e,t,n){return ye(t)?Ae.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?Ae.grep(e,function(e){return e===t!==n}):"string"!=typeof t?Ae.grep(e,function(e){return he.call(t,e)>-1!==n}):Ae.filter(t,e,n)}function a(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function u(e){var t={} -return Ae.each(e.match(Oe)||[],function(e,n){t[n]=!0}),t}function c(e){return e}function l(e){throw e}function h(e,t,n,r){var i -try{e&&ye(i=e.promise)?i.call(e).done(t).fail(n):e&&ye(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}function d(){se.removeEventListener("DOMContentLoaded",d),e.removeEventListener("load",d),Ae.ready()}function p(e,t){return t.toUpperCase()}function f(e){return e.replace(Le,"ms-").replace(De,p)}function g(){this.expando=Ae.expando+g.uid++}function m(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:He.test(e)?JSON.parse(e):e)}function v(e,t,n){var r -if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Ue,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n=m(n)}catch(e){}Be.set(e,t,n)}else n=void 0 -return n}function y(e,t,n,r){var i,o,s=20,a=r?function(){return r.cur()}:function(){return Ae.css(e,t,"")},u=a(),c=n&&n[3]||(Ae.cssNumber[t]?"":"px"),l=(Ae.cssNumber[t]||"px"!==c&&+u)&&Ve.exec(Ae.css(e,t)) -if(l&&l[3]!==c){for(u/=2,c=c||l[3],l=+u||1;s--;)Ae.style(e,t,l+c),(1-o)*(1-(o=a()/u||.5))<=0&&(s=0),l/=o -l*=2,Ae.style(e,t,l+c),n=n||[]}return n&&(l=+l||+u||0,i=n[1]?l+(n[1]+1)*n[2]:+n[2],r&&(r.unit=c,r.start=l,r.end=i)),i}function b(e){var t,n=e.ownerDocument,r=e.nodeName,i=Ke[r] -return i||(t=n.body.appendChild(n.createElement(r)),i=Ae.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),Ke[r]=i,i)}function C(e,t){for(var n,r,i=[],o=0,s=e.length;o<s;o++)r=e[o],r.style&&(n=r.style.display,t?("none"===n&&(i[o]=Fe.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&Ge(r)&&(i[o]=b(r))):"none"!==n&&(i[o]="none",Fe.set(r,"display",n))) -for(o=0;o<s;o++)null!=i[o]&&(e[o].style.display=i[o]) -return e}function A(e,t){var n -return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&o(e,t)?Ae.merge([e],n):n}function _(e,t){for(var n=0,r=e.length;n<r;n++)Fe.set(e[n],"globalEval",!t||Fe.get(t[n],"globalEval"))}function I(e,t,n,i,o){for(var s,a,u,c,l,h,d=t.createDocumentFragment(),p=[],f=0,g=e.length;f<g;f++)if((s=e[f])||0===s)if("object"===r(s))Ae.merge(p,s.nodeType?[s]:s) -else if($e.test(s)){for(a=a||d.appendChild(t.createElement("div")),u=(Ze.exec(s)||["",""])[1].toLowerCase(),c=Je[u]||Je._default,a.innerHTML=c[1]+Ae.htmlPrefilter(s)+c[2],h=c[0];h--;)a=a.lastChild -Ae.merge(p,a.childNodes),a=d.firstChild,a.textContent=""}else p.push(t.createTextNode(s)) -for(d.textContent="",f=0;s=p[f++];)if(i&&Ae.inArray(s,i)>-1)o&&o.push(s) -else if(l=Ae.contains(s.ownerDocument,s),a=A(d.appendChild(s),"script"),l&&_(a),n)for(h=0;s=a[h++];)Xe.test(s.type||"")&&n.push(s) -return d}function w(){return!0}function x(){return!1}function k(){try{return se.activeElement}catch(e){}}function j(e,t,n,r,i,o){var s,a -if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0) -for(a in t)j(e,a,n,r,t[a],o) -return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=x -else if(!i)return e -return 1===o&&(s=i,i=function(e){return Ae().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=Ae.guid++)),e.each(function(){Ae.event.add(this,t,i,r,n)})}function E(e,t){return o(e,"table")&&o(11!==t.nodeType?t:t.firstChild,"tr")?Ae(e).children("tbody")[0]||e:e}function S(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function T(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function P(e,t){var n,r,i,o,s,a,u,c -if(1===t.nodeType){if(Fe.hasData(e)&&(o=Fe.access(e),s=Fe.set(t,o),c=o.events)){delete s.handle,s.events={} -for(i in c)for(n=0,r=c[i].length;n<r;n++)Ae.event.add(t,i,c[i][n])}Be.hasData(e)&&(a=Be.access(e),u=Ae.extend({},a),Be.set(t,u))}}function O(e,t){var n=t.nodeName.toLowerCase() -"input"===n&&Qe.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function R(e,t,r,i){t=ce.apply([],t) -var o,s,a,u,c,l,h=0,d=e.length,p=d-1,f=t[0],g=ye(f) -if(g||d>1&&"string"==typeof f&&!ve.checkClone&&st.test(f))return e.each(function(n){var o=e.eq(n) -g&&(t[0]=f.call(this,n,o.html())),R(o,t,r,i)}) -if(d&&(o=I(t,e[0].ownerDocument,!1,e,i),s=o.firstChild,1===o.childNodes.length&&(o=s),s||i)){for(a=Ae.map(A(o,"script"),S),u=a.length;h<d;h++)c=o,h!==p&&(c=Ae.clone(c,!0,!0),u&&Ae.merge(a,A(c,"script"))),r.call(e[h],c,h) -if(u)for(l=a[a.length-1].ownerDocument,Ae.map(a,T),h=0;h<u;h++)c=a[h],Xe.test(c.type||"")&&!Fe.access(c,"globalEval")&&Ae.contains(l,c)&&(c.src&&"module"!==(c.type||"").toLowerCase()?Ae._evalUrl&&Ae._evalUrl(c.src):n(c.textContent.replace(at,""),l,c))}return e}function N(e,t,n){for(var r,i=t?Ae.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||Ae.cleanData(A(r)),r.parentNode&&(n&&Ae.contains(r.ownerDocument,r)&&_(A(r,"script")),r.parentNode.removeChild(r)) -return e}function M(e,t,n){var r,i,o,s,a=e.style -return n=n||ct(e),n&&(s=n.getPropertyValue(t)||n[t],""!==s||Ae.contains(e.ownerDocument,e)||(s=Ae.style(e,t)),!ve.pixelBoxStyles()&&ut.test(s)&<.test(t)&&(r=a.width,i=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=s,s=n.width,a.width=r,a.minWidth=i,a.maxWidth=o)),void 0!==s?s+"":s}function L(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function D(e){if(e in mt)return e -for(var t=e[0].toUpperCase()+e.slice(1),n=gt.length;n--;)if((e=gt[n]+t)in mt)return e}function z(e){var t=Ae.cssProps[e] -return t||(t=Ae.cssProps[e]=D(e)||e),t}function F(e,t,n){var r=Ve.exec(t) -return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function B(e,t,n,r,i,o){var s="width"===t?1:0,a=0,u=0 -if(n===(r?"border":"content"))return 0 -for(;s<4;s+=2)"margin"===n&&(u+=Ae.css(e,n+We[s],!0,i)),r?("content"===n&&(u-=Ae.css(e,"padding"+We[s],!0,i)),"margin"!==n&&(u-=Ae.css(e,"border"+We[s]+"Width",!0,i))):(u+=Ae.css(e,"padding"+We[s],!0,i),"padding"!==n?u+=Ae.css(e,"border"+We[s]+"Width",!0,i):a+=Ae.css(e,"border"+We[s]+"Width",!0,i)) -return!r&&o>=0&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-a-.5))),u}function H(e,t,n){var r=ct(e),i=M(e,t,r),o="border-box"===Ae.css(e,"boxSizing",!1,r),s=o -if(ut.test(i)){if(!n)return i -i="auto"}return s=s&&(ve.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===Ae.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],s=!0),(i=parseFloat(i)||0)+B(e,t,n||(o?"border":"content"),s,r,i)+"px"}function U(e,t,n,r,i){return new U.prototype.init(e,t,n,r,i)}function q(){yt&&(!1===se.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(q):e.setTimeout(q,Ae.fx.interval),Ae.fx.tick())}function V(){return e.setTimeout(function(){vt=void 0}),vt=Date.now()}function W(e,t){var n,r=0,i={height:e} -for(t=t?1:0;r<4;r+=2-t)n=We[r],i["margin"+n]=i["padding"+n]=e -return t&&(i.opacity=i.width=e),i}function G(e,t,n){for(var r,i=(Q.tweeners[t]||[]).concat(Q.tweeners["*"]),o=0,s=i.length;o<s;o++)if(r=i[o].call(n,t,e))return r}function Y(e,t,n){var r,i,o,s,a,u,c,l,h="width"in t||"height"in t,d=this,p={},f=e.style,g=e.nodeType&&Ge(e),m=Fe.get(e,"fxshow") -n.queue||(s=Ae._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,a=s.empty.fire,s.empty.fire=function(){s.unqueued||a()}),s.unqueued++,d.always(function(){d.always(function(){s.unqueued--,Ae.queue(e,"fx").length||s.empty.fire()})})) -for(r in t)if(i=t[r],bt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!m||void 0===m[r])continue -g=!0}p[r]=m&&m[r]||Ae.style(e,r)}if((u=!Ae.isEmptyObject(t))||!Ae.isEmptyObject(p)){h&&1===e.nodeType&&(n.overflow=[f.overflow,f.overflowX,f.overflowY],c=m&&m.display,null==c&&(c=Fe.get(e,"display")),l=Ae.css(e,"display"),"none"===l&&(c?l=c:(C([e],!0),c=e.style.display||c,l=Ae.css(e,"display"),C([e]))),("inline"===l||"inline-block"===l&&null!=c)&&"none"===Ae.css(e,"float")&&(u||(d.done(function(){f.display=c}),null==c&&(l=f.display,c="none"===l?"":l)),f.display="inline-block")),n.overflow&&(f.overflow="hidden",d.always(function(){f.overflow=n.overflow[0],f.overflowX=n.overflow[1],f.overflowY=n.overflow[2]})),u=!1 -for(r in p)u||(m?"hidden"in m&&(g=m.hidden):m=Fe.access(e,"fxshow",{display:c}),o&&(m.hidden=!g),g&&C([e],!0),d.done(function(){g||C([e]),Fe.remove(e,"fxshow") -for(r in p)Ae.style(e,r,p[r])})),u=G(g?m[r]:0,r,d),r in m||(m[r]=u.start,g&&(u.end=u.start,u.start=0))}}function K(e,t){var n,r,i,o,s -for(n in e)if(r=f(n),i=t[r],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(s=Ae.cssHooks[r])&&"expand"in s){o=s.expand(o),delete e[r] -for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function Q(e,t,n){var r,i,o=0,s=Q.prefilters.length,a=Ae.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1 -for(var t=vt||V(),n=Math.max(0,c.startTime+c.duration-t),r=n/c.duration||0,o=1-r,s=0,u=c.tweens.length;s<u;s++)c.tweens[s].run(o) -return a.notifyWith(e,[c,o,n]),o<1&&u?n:(u||a.notifyWith(e,[c,1,0]),a.resolveWith(e,[c]),!1)},c=a.promise({elem:e,props:Ae.extend({},t),opts:Ae.extend(!0,{specialEasing:{},easing:Ae.easing._default},n),originalProperties:t,originalOptions:n,startTime:vt||V(),duration:n.duration,tweens:[],createTween:function(t,n){var r=Ae.Tween(e,c.opts,t,n,c.opts.specialEasing[t]||c.opts.easing) -return c.tweens.push(r),r},stop:function(t){var n=0,r=t?c.tweens.length:0 -if(i)return this -for(i=!0;n<r;n++)c.tweens[n].run(1) -return t?(a.notifyWith(e,[c,1,0]),a.resolveWith(e,[c,t])):a.rejectWith(e,[c,t]),this}}),l=c.props -for(K(l,c.opts.specialEasing);o<s;o++)if(r=Q.prefilters[o].call(c,e,l,c.opts))return ye(r.stop)&&(Ae._queueHooks(c.elem,c.opts.queue).stop=r.stop.bind(r)),r -return Ae.map(l,G,c),ye(c.opts.start)&&c.opts.start.call(e,c),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always),Ae.fx.timer(Ae.extend(u,{elem:e,anim:c,queue:c.opts.queue})),c}function Z(e){return(e.match(Oe)||[]).join(" ")}function X(e){return e.getAttribute&&e.getAttribute("class")||""}function J(e){return Array.isArray(e)?e:"string"==typeof e?e.match(Oe)||[]:[]}function $(e,t,n,i){var o -if(Array.isArray(t))Ae.each(t,function(t,r){n||Pt.test(e)?i(e,r):$(e+"["+("object"==typeof r&&null!=r?t:"")+"]",r,n,i)}) -else if(n||"object"!==r(t))i(e,t) -else for(o in t)$(e+"["+o+"]",t[o],n,i)}function ee(e){return function(t,n){"string"!=typeof t&&(n=t,t="*") -var r,i=0,o=t.toLowerCase().match(Oe)||[] -if(ye(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function te(e,t,n,r){function i(a){var u -return o[a]=!0,Ae.each(e[a]||[],function(e,a){var c=a(t,n,r) -return"string"!=typeof c||s||o[c]?s?!(u=c):void 0:(t.dataTypes.unshift(c),i(c),!1)}),u}var o={},s=e===qt -return i(t.dataTypes[0])||!o["*"]&&i("*")}function ne(e,t){var n,r,i=Ae.ajaxSettings.flatOptions||{} -for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]) -return r&&Ae.extend(!0,e,r),e}function re(e,t,n){for(var r,i,o,s,a=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type")) -if(r)for(i in a)if(a[i]&&a[i].test(r)){u.unshift(i) -break}if(u[0]in n)o=u[0] -else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i -break}s||(s=i)}o=o||s}if(o)return o!==u[0]&&u.unshift(o),n[o]}function ie(e,t,n,r){var i,o,s,a,u,c={},l=e.dataTypes.slice() -if(l[1])for(s in e.converters)c[s.toLowerCase()]=e.converters[s] -for(o=l.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=l.shift())if("*"===o)o=u -else if("*"!==u&&u!==o){if(!(s=c[u+" "+o]||c["* "+o]))for(i in c)if(a=i.split(" "),a[1]===o&&(s=c[u+" "+a[0]]||c["* "+a[0]])){!0===s?s=c[i]:!0!==c[i]&&(o=a[0],l.unshift(a[1])) -break}if(!0!==s)if(s&&e.throws)t=s(t) -else try{t=s(t)}catch(e){return{state:"parsererror",error:s?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}var oe=[],se=e.document,ae=Object.getPrototypeOf,ue=oe.slice,ce=oe.concat,le=oe.push,he=oe.indexOf,de={},pe=de.toString,fe=de.hasOwnProperty,ge=fe.toString,me=ge.call(Object),ve={},ye=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},be=function(e){return null!=e&&e===e.window},Ce={type:!0,src:!0,noModule:!0},Ae=function(e,t){return new Ae.fn.init(e,t)},_e=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g -Ae.fn=Ae.prototype={jquery:"3.3.1",constructor:Ae,length:0,toArray:function(){return ue.call(this)},get:function(e){return null==e?ue.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=Ae.merge(this.constructor(),e) -return t.prevObject=this,t},each:function(e){return Ae.each(this,e)},map:function(e){return this.pushStack(Ae.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ue.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0) -return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:le,sort:oe.sort,splice:oe.splice},Ae.extend=Ae.fn.extend=function(){var e,t,n,r,i,o,s=arguments[0]||{},a=1,u=arguments.length,c=!1 -for("boolean"==typeof s&&(c=s,s=arguments[a]||{},a++),"object"==typeof s||ye(s)||(s={}),a===u&&(s=this,a--);a<u;a++)if(null!=(e=arguments[a]))for(t in e)n=s[t],r=e[t],s!==r&&(c&&r&&(Ae.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&Ae.isPlainObject(n)?n:{},s[t]=Ae.extend(c,o,r)):void 0!==r&&(s[t]=r)) -return s},Ae.extend({expando:"jQuery"+("3.3.1"+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n -return!(!e||"[object Object]"!==pe.call(e))&&(!(t=ae(e))||"function"==typeof(n=fe.call(t,"constructor")&&t.constructor)&&ge.call(n)===me)},isEmptyObject:function(e){var t -for(t in e)return!1 -return!0},globalEval:function(e){n(e)},each:function(e,t){var n,r=0 -if(i(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break -return e},trim:function(e){return null==e?"":(e+"").replace(_e,"")},makeArray:function(e,t){var n=t||[] -return null!=e&&(i(Object(e))?Ae.merge(n,"string"==typeof e?[e]:e):le.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:he.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r] -return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,s=!n;i<o;i++)!t(e[i],i)!==s&&r.push(e[i]) -return r},map:function(e,t,n){var r,o,s=0,a=[] -if(i(e))for(r=e.length;s<r;s++)null!=(o=t(e[s],s,n))&&a.push(o) -else for(s in e)null!=(o=t(e[s],s,n))&&a.push(o) -return ce.apply([],a)},guid:1,support:ve}),"function"==typeof Symbol&&(Ae.fn[Symbol.iterator]=oe[Symbol.iterator]),Ae.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){de["[object "+t+"]"]=t.toLowerCase()}) -var Ie=function(e){function t(e,t,n,r){var i,o,s,a,u,l,d,p=t&&t.ownerDocument,f=t?t.nodeType:9 -if(n=n||[],"string"!=typeof e||!e||1!==f&&9!==f&&11!==f)return n -if(!r&&((t?t.ownerDocument||t:F)!==P&&T(t),t=t||P,R)){if(11!==f&&(u=ge.exec(e)))if(i=u[1]){if(9===f){if(!(s=t.getElementById(i)))return n -if(s.id===i)return n.push(s),n}else if(p&&(s=p.getElementById(i))&&D(t,s)&&s.id===i)return n.push(s),n}else{if(u[2])return Z.apply(n,t.getElementsByTagName(e)),n -if((i=u[3])&&C.getElementsByClassName&&t.getElementsByClassName)return Z.apply(n,t.getElementsByClassName(i)),n}if(C.qsa&&!V[e+" "]&&(!N||!N.test(e))){if(1!==f)p=t,d=e -else if("object"!==t.nodeName.toLowerCase()){for((a=t.getAttribute("id"))?a=a.replace(be,Ce):t.setAttribute("id",a=z),l=w(e),o=l.length;o--;)l[o]="#"+a+" "+h(l[o]) -d=l.join(","),p=me.test(e)&&c(t.parentNode)||t}if(d)try{return Z.apply(n,p.querySelectorAll(d)),n}catch(e){}finally{a===z&&t.removeAttribute("id")}}}return k(e.replace(oe,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>A.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[] -return e}function r(e){return e[z]=!0,e}function i(e){var t=P.createElement("fieldset") -try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)A.attrHandle[n[r]]=t}function s(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex -if(r)return r -if(n)for(;n=n.nextSibling;)if(n===t)return-1 -return e?1:-1}function a(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&_e(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function u(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),s=o.length;s--;)n[i=o[s]]&&(n[i]=!(r[i]=n[i]))})})}function c(e){return e&&void 0!==e.getElementsByTagName&&e}function l(){}function h(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value -return r}function d(e,t,n){var r=t.dir,i=t.next,o=i||r,s=n&&"parentNode"===o,a=H++ -return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||s)return e(t,n,i) -return!1}:function(t,n,u){var c,l,h,d=[B,a] -if(u){for(;t=t[r];)if((1===t.nodeType||s)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||s)if(h=t[z]||(t[z]={}),l=h[t.uniqueID]||(h[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t -else{if((c=l[o])&&c[0]===B&&c[1]===a)return d[2]=c[2] -if(l[o]=d,d[2]=e(t,n,u))return!0}return!1}}function p(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1 -return!0}:e[0]}function f(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r) -return r}function g(e,t,n,r,i){for(var o,s=[],a=0,u=e.length,c=null!=t;a<u;a++)(o=e[a])&&(n&&!n(o,r,i)||(s.push(o),c&&t.push(a))) -return s}function m(e,t,n,i,o,s){return i&&!i[z]&&(i=m(i)),o&&!o[z]&&(o=m(o,s)),r(function(r,s,a,u){var c,l,h,d=[],p=[],m=s.length,v=r||f(t||"*",a.nodeType?[a]:a,[]),y=!e||!r&&t?v:g(v,d,e,a,u),b=n?o||(r?e:m||i)?[]:s:y -if(n&&n(y,b,a,u),i)for(c=g(b,p),i(c,[],a,u),l=c.length;l--;)(h=c[l])&&(b[p[l]]=!(y[p[l]]=h)) -if(r){if(o||e){if(o){for(c=[],l=b.length;l--;)(h=b[l])&&c.push(y[l]=h) -o(null,b=[],c,u)}for(l=b.length;l--;)(h=b[l])&&(c=o?J(r,h):d[l])>-1&&(r[c]=!(s[c]=h))}}else b=g(b===s?b.splice(m,b.length):b),o?o(null,s,b,u):Z.apply(s,b)})}function v(e){for(var t,n,r,i=e.length,o=A.relative[e[0].type],s=o||A.relative[" "],a=o?1:0,u=d(function(e){return e===t},s,!0),c=d(function(e){return J(t,e)>-1},s,!0),l=[function(e,n,r){var i=!o&&(r||n!==j)||((t=n).nodeType?u(e,n,r):c(e,n,r)) -return t=null,i}];a<i;a++)if(n=A.relative[e[a].type])l=[d(p(l),n)] -else{if(n=A.filter[e[a].type].apply(null,e[a].matches),n[z]){for(r=++a;r<i&&!A.relative[e[r].type];r++);return m(a>1&&p(l),a>1&&h(e.slice(0,a-1).concat({value:" "===e[a-2].type?"*":""})).replace(oe,"$1"),n,a<r&&v(e.slice(a,r)),r<i&&v(e=e.slice(r)),r<i&&h(e))}l.push(n)}return p(l)}function y(e,n){var i=n.length>0,o=e.length>0,s=function(r,s,a,u,c){var l,h,d,p=0,f="0",m=r&&[],v=[],y=j,b=r||o&&A.find.TAG("*",c),C=B+=null==y?1:Math.random()||.1,_=b.length -for(c&&(j=s===P||s||c);f!==_&&null!=(l=b[f]);f++){if(o&&l){for(h=0,s||l.ownerDocument===P||(T(l),a=!R);d=e[h++];)if(d(l,s||P,a)){u.push(l) -break}c&&(B=C)}i&&((l=!d&&l)&&p--,r&&m.push(l))}if(p+=f,i&&f!==p){for(h=0;d=n[h++];)d(m,v,s,a) -if(r){if(p>0)for(;f--;)m[f]||v[f]||(v[f]=K.call(u)) -v=g(v)}Z.apply(u,v),c&&!r&&v.length>0&&p+n.length>1&&t.uniqueSort(u)}return c&&(B=C,j=y),m} -return i?r(s):s}var b,C,A,_,I,w,x,k,j,E,S,T,P,O,R,N,M,L,D,z="sizzle"+1*new Date,F=e.document,B=0,H=0,U=n(),q=n(),V=n(),W=function(e,t){return e===t&&(S=!0),0},G={}.hasOwnProperty,Y=[],K=Y.pop,Q=Y.push,Z=Y.push,X=Y.slice,J=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n -return-1},$="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ee="[\\x20\\t\\r\\n\\f]",te="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",ne="\\["+ee+"*("+te+")(?:"+ee+"*([*^$|!~]?=)"+ee+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+te+"))|)"+ee+"*\\]",re=":("+te+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ne+")*)|.*)\\)|)",ie=new RegExp(ee+"+","g"),oe=new RegExp("^"+ee+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ee+"+$","g"),se=new RegExp("^"+ee+"*,"+ee+"*"),ae=new RegExp("^"+ee+"*([>+~]|"+ee+")"+ee+"*"),ue=new RegExp("="+ee+"*([^\\]'\"]*?)"+ee+"*\\]","g"),ce=new RegExp(re),le=new RegExp("^"+te+"$"),he={ID:new RegExp("^#("+te+")"),CLASS:new RegExp("^\\.("+te+")"),TAG:new RegExp("^("+te+"|[*])"),ATTR:new RegExp("^"+ne),PSEUDO:new RegExp("^"+re),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ee+"*(even|odd|(([+-]|)(\\d*)n|)"+ee+"*(?:([+-]|)"+ee+"*(\\d+)|))"+ee+"*\\)|)","i"),bool:new RegExp("^(?:"+$+")$","i"),needsContext:new RegExp("^"+ee+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ee+"*((?:-\\d)?\\d*)"+ee+"*\\)|)(?=[^-]|$)","i")},de=/^(?:input|select|textarea|button)$/i,pe=/^h\d$/i,fe=/^[^{]+\{\s*\[native \w/,ge=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,me=/[+~]/,ve=new RegExp("\\\\([\\da-f]{1,6}"+ee+"?|("+ee+")|.)","ig"),ye=function(e,t,n){var r="0x"+t-65536 -return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},be=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,Ce=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},Ae=function(){T()},_e=d(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"}) -try{Z.apply(Y=X.call(F.childNodes),F.childNodes),Y[F.childNodes.length].nodeType}catch(e){Z={apply:Y.length?function(e,t){Q.apply(e,X.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}C=t.support={},I=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement -return!!t&&"HTML"!==t.nodeName},T=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:F -return r!==P&&9===r.nodeType&&r.documentElement?(P=r,O=P.documentElement,R=!I(P),F!==P&&(n=P.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",Ae,!1):n.attachEvent&&n.attachEvent("onunload",Ae)),C.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),C.getElementsByTagName=i(function(e){return e.appendChild(P.createComment("")),!e.getElementsByTagName("*").length}),C.getElementsByClassName=fe.test(P.getElementsByClassName),C.getById=i(function(e){return O.appendChild(e).id=z,!P.getElementsByName||!P.getElementsByName(z).length}),C.getById?(A.filter.ID=function(e){var t=e.replace(ve,ye) -return function(e){return e.getAttribute("id")===t}},A.find.ID=function(e,t){if(void 0!==t.getElementById&&R){var n=t.getElementById(e) -return n?[n]:[]}}):(A.filter.ID=function(e){var t=e.replace(ve,ye) -return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id") -return n&&n.value===t}},A.find.ID=function(e,t){if(void 0!==t.getElementById&&R){var n,r,i,o=t.getElementById(e) -if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o] -for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),A.find.TAG=C.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):C.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e) -if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n) -return r}return o},A.find.CLASS=C.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&R)return t.getElementsByClassName(e)},M=[],N=[],(C.qsa=fe.test(P.querySelectorAll))&&(i(function(e){O.appendChild(e).innerHTML="<a id='"+z+"'></a><select id='"+z+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&N.push("[*^$]="+ee+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||N.push("\\["+ee+"*(?:value|"+$+")"),e.querySelectorAll("[id~="+z+"-]").length||N.push("~="),e.querySelectorAll(":checked").length||N.push(":checked"),e.querySelectorAll("a#"+z+"+*").length||N.push(".#.+[+~]")}),i(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>" -var t=P.createElement("input") -t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&N.push("name"+ee+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&N.push(":enabled",":disabled"),O.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&N.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),N.push(",.*:")})),(C.matchesSelector=fe.test(L=O.matches||O.webkitMatchesSelector||O.mozMatchesSelector||O.oMatchesSelector||O.msMatchesSelector))&&i(function(e){C.disconnectedMatch=L.call(e,"*"),L.call(e,"[s!='']:x"),M.push("!=",re)}),N=N.length&&new RegExp(N.join("|")),M=M.length&&new RegExp(M.join("|")),t=fe.test(O.compareDocumentPosition),D=t||fe.test(O.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode -return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0 -return!1},W=t?function(e,t){if(e===t)return S=!0,0 -var n=!e.compareDocumentPosition-!t.compareDocumentPosition -return n||(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!C.sortDetached&&t.compareDocumentPosition(e)===n?e===P||e.ownerDocument===F&&D(F,e)?-1:t===P||t.ownerDocument===F&&D(F,t)?1:E?J(E,e)-J(E,t):0:4&n?-1:1)}:function(e,t){if(e===t)return S=!0,0 -var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],u=[t] -if(!i||!o)return e===P?-1:t===P?1:i?-1:o?1:E?J(E,e)-J(E,t):0 -if(i===o)return s(e,t) -for(n=e;n=n.parentNode;)a.unshift(n) -for(n=t;n=n.parentNode;)u.unshift(n) -for(;a[r]===u[r];)r++ -return r?s(a[r],u[r]):a[r]===F?-1:u[r]===F?1:0},P):P},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==P&&T(e),n=n.replace(ue,"='$1']"),C.matchesSelector&&R&&!V[n+" "]&&(!M||!M.test(n))&&(!N||!N.test(n)))try{var r=L.call(e,n) -if(r||C.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return t(n,P,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==P&&T(e),D(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==P&&T(e) -var n=A.attrHandle[t.toLowerCase()],r=n&&G.call(A.attrHandle,t.toLowerCase())?n(e,t,!R):void 0 -return void 0!==r?r:C.attributes||!R?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(be,Ce)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0 -if(S=!C.detectDuplicates,E=!C.sortStable&&e.slice(0),e.sort(W),S){for(;t=e[i++];)t===e[i]&&(r=n.push(i)) -for(;r--;)e.splice(n[r],1)}return E=null,e},_=t.getText=function(e){var t,n="",r=0,i=e.nodeType -if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent -for(e=e.firstChild;e;e=e.nextSibling)n+=_(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=_(t) -return n},A=t.selectors={cacheLength:50,createPseudo:r,match:he,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(ve,ye),e[3]=(e[3]||e[4]||e[5]||"").replace(ve,ye),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2] -return he.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&ce.test(n)&&(t=w(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(ve,ye).toLowerCase() -return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=U[e+" "] -return t||(t=new RegExp("(^|"+ee+")"+e+"("+ee+"|$)"))&&U(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e) -return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(ie," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),s="last"!==e.slice(-4),a="of-type"===t -return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var c,l,h,d,p,f,g=o!==s?"nextSibling":"previousSibling",m=t.parentNode,v=a&&t.nodeName.toLowerCase(),y=!u&&!a,b=!1 -if(m){if(o){for(;g;){for(d=t;d=d[g];)if(a?d.nodeName.toLowerCase()===v:1===d.nodeType)return!1 -f=g="only"===e&&!f&&"nextSibling"}return!0}if(f=[s?m.firstChild:m.lastChild],s&&y){for(d=m,h=d[z]||(d[z]={}),l=h[d.uniqueID]||(h[d.uniqueID]={}),c=l[e]||[],p=c[0]===B&&c[1],b=p&&c[2],d=p&&m.childNodes[p];d=++p&&d&&d[g]||(b=p=0)||f.pop();)if(1===d.nodeType&&++b&&d===t){l[e]=[B,p,b] -break}}else if(y&&(d=t,h=d[z]||(d[z]={}),l=h[d.uniqueID]||(h[d.uniqueID]={}),c=l[e]||[],p=c[0]===B&&c[1],b=p),!1===b)for(;(d=++p&&d&&d[g]||(b=p=0)||f.pop())&&((a?d.nodeName.toLowerCase()!==v:1!==d.nodeType)||!++b||(y&&(h=d[z]||(d[z]={}),l=h[d.uniqueID]||(h[d.uniqueID]={}),l[e]=[B,b]),d!==t)););return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,n){var i,o=A.pseudos[e]||A.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e) -return o[z]?o(n):o.length>1?(i=[e,e,"",n],A.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),s=i.length;s--;)r=J(e,i[s]),e[r]=!(t[r]=i[s])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=x(e.replace(oe,"$1")) -return i[z]?r(function(e,t,n,r){for(var o,s=i(e,null,r,[]),a=e.length;a--;)(o=s[a])&&(e[a]=!(t[a]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(ve,ye),function(t){return(t.textContent||t.innerText||_(t)).indexOf(e)>-1}}),lang:r(function(e){return le.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(ve,ye).toLowerCase(),function(t){var n -do{if(n=R?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType) -return!1}}),target:function(t){var n=e.location&&e.location.hash -return n&&n.slice(1)===t.id},root:function(e){return e===O},focus:function(e){return e===P.activeElement&&(!P.hasFocus||P.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:a(!1),disabled:a(!0),checked:function(e){var t=e.nodeName.toLowerCase() -return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1 -return!0},parent:function(e){return!A.pseudos.empty(e)},header:function(e){return pe.test(e.nodeName)},input:function(e){return de.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase() -return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t -return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:u(function(){return[0]}),last:u(function(e,t){return[t-1]}),eq:u(function(e,t,n){return[n<0?n+t:n]}),even:u(function(e,t){for(var n=0;n<t;n+=2)e.push(n) -return e}),odd:u(function(e,t){for(var n=1;n<t;n+=2)e.push(n) -return e}),lt:u(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r) -return e}),gt:u(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r) -return e})}},A.pseudos.nth=A.pseudos.eq -for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})A.pseudos[b]=function(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}(b) -for(b in{submit:!0,reset:!0})A.pseudos[b]=function(e){return function(t){var n=t.nodeName.toLowerCase() -return("input"===n||"button"===n)&&t.type===e}}(b) -return l.prototype=A.filters=A.pseudos,A.setFilters=new l,w=t.tokenize=function(e,n){var r,i,o,s,a,u,c,l=q[e+" "] -if(l)return n?0:l.slice(0) -for(a=e,u=[],c=A.preFilter;a;){r&&!(i=se.exec(a))||(i&&(a=a.slice(i[0].length)||a),u.push(o=[])),r=!1,(i=ae.exec(a))&&(r=i.shift(),o.push({value:r,type:i[0].replace(oe," ")}),a=a.slice(r.length)) -for(s in A.filter)!(i=he[s].exec(a))||c[s]&&!(i=c[s](i))||(r=i.shift(),o.push({value:r,type:s,matches:i}),a=a.slice(r.length)) -if(!r)break}return n?a.length:a?t.error(e):q(e,u).slice(0)},x=t.compile=function(e,t){var n,r=[],i=[],o=V[e+" "] -if(!o){for(t||(t=w(e)),n=t.length;n--;)o=v(t[n]),o[z]?r.push(o):i.push(o) -o=V(e,y(i,r)),o.selector=e}return o},k=t.select=function(e,t,n,r){var i,o,s,a,u,l="function"==typeof e&&e,d=!r&&w(e=l.selector||e) -if(n=n||[],1===d.length){if(o=d[0]=d[0].slice(0),o.length>2&&"ID"===(s=o[0]).type&&9===t.nodeType&&R&&A.relative[o[1].type]){if(!(t=(A.find.ID(s.matches[0].replace(ve,ye),t)||[])[0]))return n -l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=he.needsContext.test(e)?0:o.length;i--&&(s=o[i],!A.relative[a=s.type]);)if((u=A.find[a])&&(r=u(s.matches[0].replace(ve,ye),me.test(o[0].type)&&c(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&h(o)))return Z.apply(n,r),n -break}}return(l||x(e,d))(r,t,!R,n,!t||me.test(e)&&c(t.parentNode)||t),n},C.sortStable=z.split("").sort(W).join("")===z,C.detectDuplicates=!!S,T(),C.sortDetached=i(function(e){return 1&e.compareDocumentPosition(P.createElement("fieldset"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),C.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o($,function(e,t,n){var r -if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e) -Ae.find=Ie,Ae.expr=Ie.selectors,Ae.expr[":"]=Ae.expr.pseudos,Ae.uniqueSort=Ae.unique=Ie.uniqueSort,Ae.text=Ie.getText,Ae.isXMLDoc=Ie.isXML,Ae.contains=Ie.contains,Ae.escapeSelector=Ie.escape -var we=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&Ae(e).is(n))break -r.push(e)}return r},xe=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e) -return n},ke=Ae.expr.match.needsContext,je=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i -Ae.filter=function(e,t,n){var r=t[0] -return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?Ae.find.matchesSelector(r,e)?[r]:[]:Ae.find.matches(e,Ae.grep(t,function(e){return 1===e.nodeType}))},Ae.fn.extend({find:function(e){var t,n,r=this.length,i=this -if("string"!=typeof e)return this.pushStack(Ae(e).filter(function(){for(t=0;t<r;t++)if(Ae.contains(i[t],this))return!0})) -for(n=this.pushStack([]),t=0;t<r;t++)Ae.find(e,i[t],n) -return r>1?Ae.uniqueSort(n):n},filter:function(e){return this.pushStack(s(this,e||[],!1))},not:function(e){return this.pushStack(s(this,e||[],!0))},is:function(e){return!!s(this,"string"==typeof e&&ke.test(e)?Ae(e):e||[],!1).length}}) -var Ee,Se=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(Ae.fn.init=function(e,t,n){var r,i -if(!e)return this -if(n=n||Ee,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:Se.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e) -if(r[1]){if(t=t instanceof Ae?t[0]:t,Ae.merge(this,Ae.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:se,!0)),je.test(r[1])&&Ae.isPlainObject(t))for(r in t)ye(this[r])?this[r](t[r]):this.attr(r,t[r]) -return this}return i=se.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):ye(e)?void 0!==n.ready?n.ready(e):e(Ae):Ae.makeArray(e,this)}).prototype=Ae.fn,Ee=Ae(se) -var Te=/^(?:parents|prev(?:Until|All))/,Pe={children:!0,contents:!0,next:!0,prev:!0} -Ae.fn.extend({has:function(e){var t=Ae(e,this),n=t.length -return this.filter(function(){for(var e=0;e<n;e++)if(Ae.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],s="string"!=typeof e&&Ae(e) -if(!ke.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(s?s.index(n)>-1:1===n.nodeType&&Ae.find.matchesSelector(n,e))){o.push(n) -break}return this.pushStack(o.length>1?Ae.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?he.call(Ae(e),this[0]):he.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(Ae.uniqueSort(Ae.merge(this.get(),Ae(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),Ae.each({parent:function(e){var t=e.parentNode -return t&&11!==t.nodeType?t:null},parents:function(e){return we(e,"parentNode")},parentsUntil:function(e,t,n){return we(e,"parentNode",n)},next:function(e){return a(e,"nextSibling")},prev:function(e){return a(e,"previousSibling")},nextAll:function(e){return we(e,"nextSibling")},prevAll:function(e){return we(e,"previousSibling")},nextUntil:function(e,t,n){return we(e,"nextSibling",n)},prevUntil:function(e,t,n){return we(e,"previousSibling",n)},siblings:function(e){return xe((e.parentNode||{}).firstChild,e)},children:function(e){return xe(e.firstChild)},contents:function(e){return o(e,"iframe")?e.contentDocument:(o(e,"template")&&(e=e.content||e),Ae.merge([],e.childNodes))}},function(e,t){Ae.fn[e]=function(n,r){var i=Ae.map(this,t,n) -return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=Ae.filter(r,i)),this.length>1&&(Pe[e]||Ae.uniqueSort(i),Te.test(e)&&i.reverse()),this.pushStack(i)}}) -var Oe=/[^\x20\t\r\n\f]+/g -Ae.Callbacks=function(e){e="string"==typeof e?u(e):Ae.extend({},e) -var t,n,i,o,s=[],a=[],c=-1,l=function(){for(o=o||e.once,i=t=!0;a.length;c=-1)for(n=a.shift();++c<s.length;)!1===s[c].apply(n[0],n[1])&&e.stopOnFalse&&(c=s.length,n=!1) -e.memory||(n=!1),t=!1,o&&(s=n?[]:"")},h={add:function(){return s&&(n&&!t&&(c=s.length-1,a.push(n)),function t(n){Ae.each(n,function(n,i){ye(i)?e.unique&&h.has(i)||s.push(i):i&&i.length&&"string"!==r(i)&&t(i)})}(arguments),n&&!t&&l()),this},remove:function(){return Ae.each(arguments,function(e,t){for(var n;(n=Ae.inArray(t,s,n))>-1;)s.splice(n,1),n<=c&&c--}),this},has:function(e){return e?Ae.inArray(e,s)>-1:s.length>0},empty:function(){return s&&(s=[]),this},disable:function(){return o=a=[],s=n="",this},disabled:function(){return!s},lock:function(){return o=a=[],n||t||(s=n=""),this},locked:function(){return!!o},fireWith:function(e,n){return o||(n=n||[],n=[e,n.slice?n.slice():n],a.push(n),t||l()),this},fire:function(){return h.fireWith(this,arguments),this},fired:function(){return!!i}} -return h},Ae.extend({Deferred:function(t){var n=[["notify","progress",Ae.Callbacks("memory"),Ae.Callbacks("memory"),2],["resolve","done",Ae.Callbacks("once memory"),Ae.Callbacks("once memory"),0,"resolved"],["reject","fail",Ae.Callbacks("once memory"),Ae.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments -return Ae.Deferred(function(t){Ae.each(n,function(n,r){var i=ye(e[r[4]])&&e[r[4]] -o[r[1]](function(){var e=i&&i.apply(this,arguments) -e&&ye(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){function o(t,n,r,i){return function(){var a=this,u=arguments,h=function(){var e,h -if(!(t<s)){if((e=r.apply(a,u))===n.promise())throw new TypeError("Thenable self-resolution") -h=e&&("object"==typeof e||"function"==typeof e)&&e.then,ye(h)?i?h.call(e,o(s,n,c,i),o(s,n,l,i)):(s++,h.call(e,o(s,n,c,i),o(s,n,l,i),o(s,n,c,n.notifyWith))):(r!==c&&(a=void 0,u=[e]),(i||n.resolveWith)(a,u))}},d=i?h:function(){try{h()}catch(e){Ae.Deferred.exceptionHook&&Ae.Deferred.exceptionHook(e,d.stackTrace),t+1>=s&&(r!==l&&(a=void 0,u=[e]),n.rejectWith(a,u))}} -t?d():(Ae.Deferred.getStackHook&&(d.stackTrace=Ae.Deferred.getStackHook()),e.setTimeout(d))}}var s=0 -return Ae.Deferred(function(e){n[0][3].add(o(0,e,ye(i)?i:c,e.notifyWith)),n[1][3].add(o(0,e,ye(t)?t:c)),n[2][3].add(o(0,e,ye(r)?r:l))}).promise()},promise:function(e){return null!=e?Ae.extend(e,i):i}},o={} -return Ae.each(n,function(e,t){var s=t[2],a=t[5] -i[t[1]]=s.add,a&&s.add(function(){r=a},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),s.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=s.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=ue.call(arguments),o=Ae.Deferred(),s=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?ue.call(arguments):n,--t||o.resolveWith(r,i)}} -if(t<=1&&(h(e,o.done(s(n)).resolve,o.reject,!t),"pending"===o.state()||ye(i[n]&&i[n].then)))return o.then() -for(;n--;)h(i[n],s(n),o.reject) -return o.promise()}}) -var Re=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/ -Ae.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&Re.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},Ae.readyException=function(t){e.setTimeout(function(){throw t})} -var Ne=Ae.Deferred() -Ae.fn.ready=function(e){return Ne.then(e).catch(function(e){Ae.readyException(e)}),this},Ae.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--Ae.readyWait:Ae.isReady)||(Ae.isReady=!0,!0!==e&&--Ae.readyWait>0||Ne.resolveWith(se,[Ae]))}}),Ae.ready.then=Ne.then,"complete"===se.readyState||"loading"!==se.readyState&&!se.documentElement.doScroll?e.setTimeout(Ae.ready):(se.addEventListener("DOMContentLoaded",d),e.addEventListener("load",d)) -var Me=function(e,t,n,i,o,s,a){var u=0,c=e.length,l=null==n -if("object"===r(n)){o=!0 -for(u in n)Me(e,t,u,n[u],!0,s,a)}else if(void 0!==i&&(o=!0,ye(i)||(a=!0),l&&(a?(t.call(e,i),t=null):(l=t,t=function(e,t,n){return l.call(Ae(e),n)})),t))for(;u<c;u++)t(e[u],n,a?i:i.call(e[u],u,t(e[u],n))) -return o?e:l?t.call(e):c?t(e[0],n):s},Le=/^-ms-/,De=/-([a-z])/g,ze=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType} -g.uid=1,g.prototype={cache:function(e){var t=e[this.expando] -return t||(t={},ze(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e) -if("string"==typeof t)i[f(t)]=n -else for(r in t)i[f(r)]=t[r] -return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][f(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando] -if(void 0!==r){if(void 0!==t){Array.isArray(t)?t=t.map(f):(t=f(t),t=t in r?[t]:t.match(Oe)||[]),n=t.length -for(;n--;)delete r[t[n]]}(void 0===t||Ae.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando] -return void 0!==t&&!Ae.isEmptyObject(t)}} -var Fe=new g,Be=new g,He=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Ue=/[A-Z]/g -Ae.extend({hasData:function(e){return Be.hasData(e)||Fe.hasData(e)},data:function(e,t,n){return Be.access(e,t,n)},removeData:function(e,t){Be.remove(e,t)},_data:function(e,t,n){return Fe.access(e,t,n)},_removeData:function(e,t){Fe.remove(e,t)}}),Ae.fn.extend({data:function(e,t){var n,r,i,o=this[0],s=o&&o.attributes -if(void 0===e){if(this.length&&(i=Be.get(o),1===o.nodeType&&!Fe.get(o,"hasDataAttrs"))){for(n=s.length;n--;)s[n]&&(r=s[n].name,0===r.indexOf("data-")&&(r=f(r.slice(5)),v(o,r,i[r]))) -Fe.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){Be.set(this,e)}):Me(this,function(t){var n -if(o&&void 0===t){if(void 0!==(n=Be.get(o,e)))return n -if(void 0!==(n=v(o,e)))return n}else this.each(function(){Be.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Be.remove(this,e)})}}),Ae.extend({queue:function(e,t,n){var r -if(e)return t=(t||"fx")+"queue",r=Fe.get(e,t),n&&(!r||Array.isArray(n)?r=Fe.access(e,t,Ae.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx" -var n=Ae.queue(e,t),r=n.length,i=n.shift(),o=Ae._queueHooks(e,t),s=function(){Ae.dequeue(e,t)} -"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,s,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks" -return Fe.get(e,n)||Fe.access(e,n,{empty:Ae.Callbacks("once memory").add(function(){Fe.remove(e,[t+"queue",n])})})}}),Ae.fn.extend({queue:function(e,t){var n=2 -return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?Ae.queue(this[0],e):void 0===t?this:this.each(function(){var n=Ae.queue(this,e,t) -Ae._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&Ae.dequeue(this,e)})},dequeue:function(e){return this.each(function(){Ae.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=Ae.Deferred(),o=this,s=this.length,a=function(){--r||i.resolveWith(o,[o])} -for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";s--;)(n=Fe.get(o[s],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(a)) -return a(),i.promise(t)}}) -var qe=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Ve=new RegExp("^(?:([+-])=|)("+qe+")([a-z%]*)$","i"),We=["Top","Right","Bottom","Left"],Ge=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&Ae.contains(e.ownerDocument,e)&&"none"===Ae.css(e,"display")},Ye=function(e,t,n,r){var i,o,s={} -for(o in t)s[o]=e.style[o],e.style[o]=t[o] -i=n.apply(e,r||[]) -for(o in t)e.style[o]=s[o] -return i},Ke={} -Ae.fn.extend({show:function(){return C(this,!0)},hide:function(){return C(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Ge(this)?Ae(this).show():Ae(this).hide()})}}) -var Qe=/^(?:checkbox|radio)$/i,Ze=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,Xe=/^$|^module$|\/(?:java|ecma)script/i,Je={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]} -Je.optgroup=Je.option,Je.tbody=Je.tfoot=Je.colgroup=Je.caption=Je.thead,Je.th=Je.td -var $e=/<|&#?\w+;/;(function(){var e=se.createDocumentFragment(),t=e.appendChild(se.createElement("div")),n=se.createElement("input") -n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),ve.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",ve.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue})() -var et=se.documentElement,tt=/^key/,nt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,rt=/^([^.]*)(?:\.(.+)|)/ -Ae.event={global:{},add:function(e,t,n,r,i){var o,s,a,u,c,l,h,d,p,f,g,m=Fe.get(e) -if(m)for(n.handler&&(o=n,n=o.handler,i=o.selector),i&&Ae.find.matchesSelector(et,i),n.guid||(n.guid=Ae.guid++),(u=m.events)||(u=m.events={}),(s=m.handle)||(s=m.handle=function(t){return void 0!==Ae&&Ae.event.triggered!==t.type?Ae.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Oe)||[""],c=t.length;c--;)a=rt.exec(t[c])||[],p=g=a[1],f=(a[2]||"").split(".").sort(),p&&(h=Ae.event.special[p]||{},p=(i?h.delegateType:h.bindType)||p,h=Ae.event.special[p]||{},l=Ae.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&Ae.expr.match.needsContext.test(i),namespace:f.join(".")},o),(d=u[p])||(d=u[p]=[],d.delegateCount=0,h.setup&&!1!==h.setup.call(e,r,f,s)||e.addEventListener&&e.addEventListener(p,s)),h.add&&(h.add.call(e,l),l.handler.guid||(l.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,l):d.push(l),Ae.event.global[p]=!0)},remove:function(e,t,n,r,i){var o,s,a,u,c,l,h,d,p,f,g,m=Fe.hasData(e)&&Fe.get(e) -if(m&&(u=m.events)){for(t=(t||"").match(Oe)||[""],c=t.length;c--;)if(a=rt.exec(t[c])||[],p=g=a[1],f=(a[2]||"").split(".").sort(),p){for(h=Ae.event.special[p]||{},p=(r?h.delegateType:h.bindType)||p,d=u[p]||[],a=a[2]&&new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=d.length;o--;)l=d[o],!i&&g!==l.origType||n&&n.guid!==l.guid||a&&!a.test(l.namespace)||r&&r!==l.selector&&("**"!==r||!l.selector)||(d.splice(o,1),l.selector&&d.delegateCount--,h.remove&&h.remove.call(e,l)) -s&&!d.length&&(h.teardown&&!1!==h.teardown.call(e,f,m.handle)||Ae.removeEvent(e,p,m.handle),delete u[p])}else for(p in u)Ae.event.remove(e,p+t[c],n,r,!0) -Ae.isEmptyObject(u)&&Fe.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,s,a=Ae.event.fix(e),u=new Array(arguments.length),c=(Fe.get(this,"events")||{})[a.type]||[],l=Ae.event.special[a.type]||{} -for(u[0]=a,t=1;t<arguments.length;t++)u[t]=arguments[t] -if(a.delegateTarget=this,!l.preDispatch||!1!==l.preDispatch.call(this,a)){for(s=Ae.event.handlers.call(this,a,c),t=0;(i=s[t++])&&!a.isPropagationStopped();)for(a.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!a.isImmediatePropagationStopped();)a.rnamespace&&!a.rnamespace.test(o.namespace)||(a.handleObj=o,a.data=o.data,void 0!==(r=((Ae.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(a.result=r)&&(a.preventDefault(),a.stopPropagation())) -return l.postDispatch&&l.postDispatch.call(this,a),a.result}},handlers:function(e,t){var n,r,i,o,s,a=[],u=t.delegateCount,c=e.target -if(u&&c.nodeType&&!("click"===e.type&&e.button>=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==e.type||!0!==c.disabled)){for(o=[],s={},n=0;n<u;n++)r=t[n],i=r.selector+" ",void 0===s[i]&&(s[i]=r.needsContext?Ae(i,this).index(c)>-1:Ae.find(i,this,null,[c]).length),s[i]&&o.push(r) -o.length&&a.push({elem:c,handlers:o})}return c=this,u<t.length&&a.push({elem:c,handlers:t.slice(u)}),a},addProp:function(e,t){Object.defineProperty(Ae.Event.prototype,e,{enumerable:!0,configurable:!0,get:ye(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[Ae.expando]?e:new Ae.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==k()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===k()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&o(this,"input"))return this.click(),!1},_default:function(e){return o(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},Ae.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},Ae.Event=function(e,t){if(!(this instanceof Ae.Event))return new Ae.Event(e,t) -e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?w:x,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&Ae.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[Ae.expando]=!0},Ae.Event.prototype={constructor:Ae.Event,isDefaultPrevented:x,isPropagationStopped:x,isImmediatePropagationStopped:x,isSimulated:!1,preventDefault:function(){var e=this.originalEvent -this.isDefaultPrevented=w,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent -this.isPropagationStopped=w,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent -this.isImmediatePropagationStopped=w,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},Ae.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button -return null==e.which&&tt.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&nt.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},Ae.event.addProp),Ae.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){Ae.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj -return i&&(i===r||Ae.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),Ae.fn.extend({on:function(e,t,n,r){return j(this,e,t,n,r)},one:function(e,t,n,r){return j(this,e,t,n,r,1)},off:function(e,t,n){var r,i -if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,Ae(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this -if("object"==typeof e){for(i in e)this.off(i,t,e[i]) -return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=x),this.each(function(){Ae.event.remove(this,e,n,t)})}}) -var it=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,ot=/<script|<style|<link/i,st=/checked\s*(?:[^=]|=\s*.checked.)/i,at=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g -Ae.extend({htmlPrefilter:function(e){return e.replace(it,"<$1></$2>")},clone:function(e,t,n){var r,i,o,s,a=e.cloneNode(!0),u=Ae.contains(e.ownerDocument,e) -if(!(ve.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||Ae.isXMLDoc(e)))for(s=A(a),o=A(e),r=0,i=o.length;r<i;r++)O(o[r],s[r]) -if(t)if(n)for(o=o||A(e),s=s||A(a),r=0,i=o.length;r<i;r++)P(o[r],s[r]) -else P(e,a) -return s=A(a,"script"),s.length>0&&_(s,!u&&A(e,"script")),a},cleanData:function(e){for(var t,n,r,i=Ae.event.special,o=0;void 0!==(n=e[o]);o++)if(ze(n)){if(t=n[Fe.expando]){if(t.events)for(r in t.events)i[r]?Ae.event.remove(n,r):Ae.removeEvent(n,r,t.handle) -n[Fe.expando]=void 0}n[Be.expando]&&(n[Be.expando]=void 0)}}}),Ae.fn.extend({detach:function(e){return N(this,e,!0)},remove:function(e){return N(this,e)},text:function(e){return Me(this,function(e){return void 0===e?Ae.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return R(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){E(this,e).appendChild(e)}})},prepend:function(){return R(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=E(this,e) -t.insertBefore(e,t.firstChild)}})},before:function(){return R(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return R(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(Ae.cleanData(A(e,!1)),e.textContent="") -return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return Ae.clone(this,e,t)})},html:function(e){return Me(this,function(e){var t=this[0]||{},n=0,r=this.length -if(void 0===e&&1===t.nodeType)return t.innerHTML -if("string"==typeof e&&!ot.test(e)&&!Je[(Ze.exec(e)||["",""])[1].toLowerCase()]){e=Ae.htmlPrefilter(e) -try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(Ae.cleanData(A(t,!1)),t.innerHTML=e) -t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[] -return R(this,arguments,function(t){var n=this.parentNode -Ae.inArray(this,e)<0&&(Ae.cleanData(A(this)),n&&n.replaceChild(t,this))},e)}}),Ae.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){Ae.fn[e]=function(e){for(var n,r=[],i=Ae(e),o=i.length-1,s=0;s<=o;s++)n=s===o?this:this.clone(!0),Ae(i[s])[t](n),le.apply(r,n.get()) -return this.pushStack(r)}}) -var ut=new RegExp("^("+qe+")(?!px)[a-z%]+$","i"),ct=function(t){var n=t.ownerDocument.defaultView -return n&&n.opener||(n=e),n.getComputedStyle(t)},lt=new RegExp(We.join("|"),"i");(function(){function t(){if(c){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",c.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",et.appendChild(u).appendChild(c) -var t=e.getComputedStyle(c) -r="1%"!==t.top,a=12===n(t.marginLeft),c.style.right="60%",s=36===n(t.right),i=36===n(t.width),c.style.position="absolute",o=36===c.offsetWidth||"absolute",et.removeChild(u),c=null}}function n(e){return Math.round(parseFloat(e))}var r,i,o,s,a,u=se.createElement("div"),c=se.createElement("div") -c.style&&(c.style.backgroundClip="content-box",c.cloneNode(!0).style.backgroundClip="",ve.clearCloneStyle="content-box"===c.style.backgroundClip,Ae.extend(ve,{boxSizingReliable:function(){return t(),i},pixelBoxStyles:function(){return t(),s},pixelPosition:function(){return t(),r},reliableMarginLeft:function(){return t(),a},scrollboxSize:function(){return t(),o}}))})() -var ht=/^(none|table(?!-c[ea]).+)/,dt=/^--/,pt={position:"absolute",visibility:"hidden",display:"block"},ft={letterSpacing:"0",fontWeight:"400"},gt=["Webkit","Moz","ms"],mt=se.createElement("div").style -Ae.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=M(e,"opacity") -return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,s,a=f(t),u=dt.test(t),c=e.style -if(u||(t=z(a)),s=Ae.cssHooks[t]||Ae.cssHooks[a],void 0===n)return s&&"get"in s&&void 0!==(i=s.get(e,!1,r))?i:c[t] -o=typeof n,"string"===o&&(i=Ve.exec(n))&&i[1]&&(n=y(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(Ae.cssNumber[a]?"":"px")),ve.clearCloneStyle||""!==n||0!==t.indexOf("background")||(c[t]="inherit"),s&&"set"in s&&void 0===(n=s.set(e,n,r))||(u?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var i,o,s,a=f(t) -return dt.test(t)||(t=z(a)),s=Ae.cssHooks[t]||Ae.cssHooks[a],s&&"get"in s&&(i=s.get(e,!0,n)),void 0===i&&(i=M(e,t,r)),"normal"===i&&t in ft&&(i=ft[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),Ae.each(["height","width"],function(e,t){Ae.cssHooks[t]={get:function(e,n,r){if(n)return!ht.test(Ae.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?H(e,t,r):Ye(e,pt,function(){return H(e,t,r)})},set:function(e,n,r){var i,o=ct(e),s="border-box"===Ae.css(e,"boxSizing",!1,o),a=r&&B(e,t,r,s,o) -return s&&ve.scrollboxSize()===o.position&&(a-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-B(e,t,"border",!1,o)-.5)),a&&(i=Ve.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=Ae.css(e,t)),F(e,n,a)}}}),Ae.cssHooks.marginLeft=L(ve.reliableMarginLeft,function(e,t){if(t)return(parseFloat(M(e,"marginLeft"))||e.getBoundingClientRect().left-Ye(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),Ae.each({margin:"",padding:"",border:"Width"},function(e,t){Ae.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+We[r]+t]=o[r]||o[r-2]||o[0] -return i}},"margin"!==e&&(Ae.cssHooks[e+t].set=F)}),Ae.fn.extend({css:function(e,t){return Me(this,function(e,t,n){var r,i,o={},s=0 -if(Array.isArray(t)){for(r=ct(e),i=t.length;s<i;s++)o[t[s]]=Ae.css(e,t[s],!1,r) -return o}return void 0!==n?Ae.style(e,t,n):Ae.css(e,t)},e,t,arguments.length>1)}}),Ae.Tween=U,U.prototype={constructor:U,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||Ae.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(Ae.cssNumber[n]?"":"px")},cur:function(){var e=U.propHooks[this.prop] -return e&&e.get?e.get(this):U.propHooks._default.get(this)},run:function(e){var t,n=U.propHooks[this.prop] -return this.options.duration?this.pos=t=Ae.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):U.propHooks._default.set(this),this}},U.prototype.init.prototype=U.prototype,U.propHooks={_default:{get:function(e){var t -return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=Ae.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){Ae.fx.step[e.prop]?Ae.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[Ae.cssProps[e.prop]]&&!Ae.cssHooks[e.prop]?e.elem[e.prop]=e.now:Ae.style(e.elem,e.prop,e.now+e.unit)}}},U.propHooks.scrollTop=U.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},Ae.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},Ae.fx=U.prototype.init,Ae.fx.step={} -var vt,yt,bt=/^(?:toggle|show|hide)$/,Ct=/queueHooks$/ -Ae.Animation=Ae.extend(Q,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t) -return y(n.elem,e,Ve.exec(t),n),n}]},tweener:function(e,t){ye(e)?(t=e,e=["*"]):e=e.match(Oe) -for(var n,r=0,i=e.length;r<i;r++)n=e[r],Q.tweeners[n]=Q.tweeners[n]||[],Q.tweeners[n].unshift(t)},prefilters:[Y],prefilter:function(e,t){t?Q.prefilters.unshift(e):Q.prefilters.push(e)}}),Ae.speed=function(e,t,n){var r=e&&"object"==typeof e?Ae.extend({},e):{complete:n||!n&&t||ye(e)&&e,duration:e,easing:n&&t||t&&!ye(t)&&t} -return Ae.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in Ae.fx.speeds?r.duration=Ae.fx.speeds[r.duration]:r.duration=Ae.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){ye(r.old)&&r.old.call(this),r.queue&&Ae.dequeue(this,r.queue)},r},Ae.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Ge).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=Ae.isEmptyObject(e),o=Ae.speed(t,n,r),s=function(){var t=Q(this,Ae.extend({},e),o);(i||Fe.get(this,"finish"))&&t.stop(!0)} -return s.finish=s,i||!1===o.queue?this.each(s):this.queue(o.queue,s)},stop:function(e,t,n){var r=function(e){var t=e.stop -delete e.stop,t(n)} -return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&!1!==e&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=Ae.timers,s=Fe.get(this) -if(i)s[i]&&s[i].stop&&r(s[i]) -else for(i in s)s[i]&&s[i].stop&&Ct.test(i)&&r(s[i]) -for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1)) -!t&&n||Ae.dequeue(this,e)})},finish:function(e){return!1!==e&&(e=e||"fx"),this.each(function(){var t,n=Fe.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=Ae.timers,s=r?r.length:0 -for(n.finish=!0,Ae.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1)) -for(t=0;t<s;t++)r[t]&&r[t].finish&&r[t].finish.call(this) -delete n.finish})}}),Ae.each(["toggle","show","hide"],function(e,t){var n=Ae.fn[t] -Ae.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(W(t,!0),e,r,i)}}),Ae.each({slideDown:W("show"),slideUp:W("hide"),slideToggle:W("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){Ae.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),Ae.timers=[],Ae.fx.tick=function(){var e,t=0,n=Ae.timers -for(vt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1) -n.length||Ae.fx.stop(),vt=void 0},Ae.fx.timer=function(e){Ae.timers.push(e),Ae.fx.start()},Ae.fx.interval=13,Ae.fx.start=function(){yt||(yt=!0,q())},Ae.fx.stop=function(){yt=null},Ae.fx.speeds={slow:600,fast:200,_default:400},Ae.fn.delay=function(t,n){return t=Ae.fx?Ae.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t) -r.stop=function(){e.clearTimeout(i)}})},function(){var e=se.createElement("input"),t=se.createElement("select"),n=t.appendChild(se.createElement("option")) -e.type="checkbox",ve.checkOn=""!==e.value,ve.optSelected=n.selected,e=se.createElement("input"),e.value="t",e.type="radio",ve.radioValue="t"===e.value}() -var At,_t=Ae.expr.attrHandle -Ae.fn.extend({attr:function(e,t){return Me(this,Ae.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){Ae.removeAttr(this,e)})}}),Ae.extend({attr:function(e,t,n){var r,i,o=e.nodeType -if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?Ae.prop(e,t,n):(1===o&&Ae.isXMLDoc(e)||(i=Ae.attrHooks[t.toLowerCase()]||(Ae.expr.match.bool.test(t)?At:void 0)),void 0!==n?null===n?void Ae.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=Ae.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!ve.radioValue&&"radio"===t&&o(e,"input")){var n=e.value -return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(Oe) -if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),At={set:function(e,t,n){return!1===t?Ae.removeAttr(e,n):e.setAttribute(n,n),n}},Ae.each(Ae.expr.match.bool.source.match(/\w+/g),function(e,t){var n=_t[t]||Ae.find.attr -_t[t]=function(e,t,r){var i,o,s=t.toLowerCase() -return r||(o=_t[s],_t[s]=i,i=null!=n(e,t,r)?s:null,_t[s]=o),i}}) -var It=/^(?:input|select|textarea|button)$/i,wt=/^(?:a|area)$/i -Ae.fn.extend({prop:function(e,t){return Me(this,Ae.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[Ae.propFix[e]||e]})}}),Ae.extend({prop:function(e,t,n){var r,i,o=e.nodeType -if(3!==o&&8!==o&&2!==o)return 1===o&&Ae.isXMLDoc(e)||(t=Ae.propFix[t]||t,i=Ae.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=Ae.find.attr(e,"tabindex") -return t?parseInt(t,10):It.test(e.nodeName)||wt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),ve.optSelected||(Ae.propHooks.selected={get:function(e){var t=e.parentNode -return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode -t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),Ae.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){Ae.propFix[this.toLowerCase()]=this}),Ae.fn.extend({addClass:function(e){var t,n,r,i,o,s,a,u=0 -if(ye(e))return this.each(function(t){Ae(this).addClass(e.call(this,t,X(this)))}) -if(t=J(e),t.length)for(;n=this[u++];)if(i=X(n),r=1===n.nodeType&&" "+Z(i)+" "){for(s=0;o=t[s++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ") -a=Z(r),i!==a&&n.setAttribute("class",a)}return this},removeClass:function(e){var t,n,r,i,o,s,a,u=0 -if(ye(e))return this.each(function(t){Ae(this).removeClass(e.call(this,t,X(this)))}) -if(!arguments.length)return this.attr("class","") -if(t=J(e),t.length)for(;n=this[u++];)if(i=X(n),r=1===n.nodeType&&" "+Z(i)+" "){for(s=0;o=t[s++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ") -a=Z(r),i!==a&&n.setAttribute("class",a)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e) -return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):ye(e)?this.each(function(n){Ae(this).toggleClass(e.call(this,n,X(this),t),t)}):this.each(function(){var t,i,o,s -if(r)for(i=0,o=Ae(this),s=J(e);t=s[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t) -else void 0!==e&&"boolean"!==n||(t=X(this),t&&Fe.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Fe.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0 -for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+Z(X(n))+" ").indexOf(t)>-1)return!0 -return!1}}) -var xt=/\r/g -Ae.fn.extend({val:function(e){var t,n,r,i=this[0] -{if(arguments.length)return r=ye(e),this.each(function(n){var i -1===this.nodeType&&(i=r?e.call(this,n,Ae(this).val()):e,null==i?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=Ae.map(i,function(e){return null==e?"":e+""})),(t=Ae.valHooks[this.type]||Ae.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))}) -if(i)return(t=Ae.valHooks[i.type]||Ae.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(xt,""):null==n?"":n)}}}),Ae.extend({valHooks:{option:{get:function(e){var t=Ae.find.attr(e,"value") -return null!=t?t:Z(Ae.text(e))}},select:{get:function(e){var t,n,r,i=e.options,s=e.selectedIndex,a="select-one"===e.type,u=a?null:[],c=a?s+1:i.length -for(r=s<0?c:a?s:0;r<c;r++)if(n=i[r],(n.selected||r===s)&&!n.disabled&&(!n.parentNode.disabled||!o(n.parentNode,"optgroup"))){if(t=Ae(n).val(),a)return t -u.push(t)}return u},set:function(e,t){for(var n,r,i=e.options,o=Ae.makeArray(t),s=i.length;s--;)r=i[s],(r.selected=Ae.inArray(Ae.valHooks.option.get(r),o)>-1)&&(n=!0) -return n||(e.selectedIndex=-1),o}}}}),Ae.each(["radio","checkbox"],function(){Ae.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=Ae.inArray(Ae(e).val(),t)>-1}},ve.checkOn||(Ae.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),ve.focusin="onfocusin"in e -var kt=/^(?:focusinfocus|focusoutblur)$/,jt=function(e){e.stopPropagation()} -Ae.extend(Ae.event,{trigger:function(t,n,r,i){var o,s,a,u,c,l,h,d,p=[r||se],f=fe.call(t,"type")?t.type:t,g=fe.call(t,"namespace")?t.namespace.split("."):[] -if(s=d=a=r=r||se,3!==r.nodeType&&8!==r.nodeType&&!kt.test(f+Ae.event.triggered)&&(f.indexOf(".")>-1&&(g=f.split("."),f=g.shift(),g.sort()),c=f.indexOf(":")<0&&"on"+f,t=t[Ae.expando]?t:new Ae.Event(f,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=g.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:Ae.makeArray(n,[t]),h=Ae.event.special[f]||{},i||!h.trigger||!1!==h.trigger.apply(r,n))){if(!i&&!h.noBubble&&!be(r)){for(u=h.delegateType||f,kt.test(u+f)||(s=s.parentNode);s;s=s.parentNode)p.push(s),a=s -a===(r.ownerDocument||se)&&p.push(a.defaultView||a.parentWindow||e)}for(o=0;(s=p[o++])&&!t.isPropagationStopped();)d=s,t.type=o>1?u:h.bindType||f,l=(Fe.get(s,"events")||{})[t.type]&&Fe.get(s,"handle"),l&&l.apply(s,n),(l=c&&s[c])&&l.apply&&ze(s)&&(t.result=l.apply(s,n),!1===t.result&&t.preventDefault()) -return t.type=f,i||t.isDefaultPrevented()||h._default&&!1!==h._default.apply(p.pop(),n)||!ze(r)||c&&ye(r[f])&&!be(r)&&(a=r[c],a&&(r[c]=null),Ae.event.triggered=f,t.isPropagationStopped()&&d.addEventListener(f,jt),r[f](),t.isPropagationStopped()&&d.removeEventListener(f,jt),Ae.event.triggered=void 0,a&&(r[c]=a)),t.result}},simulate:function(e,t,n){var r=Ae.extend(new Ae.Event,n,{type:e,isSimulated:!0}) -Ae.event.trigger(r,null,t)}}),Ae.fn.extend({trigger:function(e,t){return this.each(function(){Ae.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0] -if(n)return Ae.event.trigger(e,t,n,!0)}}),ve.focusin||Ae.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){Ae.event.simulate(t,e.target,Ae.event.fix(e))} -Ae.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=Fe.access(r,t) -i||r.addEventListener(e,n,!0),Fe.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=Fe.access(r,t)-1 -i?Fe.access(r,t,i):(r.removeEventListener(e,n,!0),Fe.remove(r,t))}}}) -var Et=e.location,St=Date.now(),Tt=/\?/ -Ae.parseXML=function(t){var n -if(!t||"string"!=typeof t)return null -try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||Ae.error("Invalid XML: "+t),n} -var Pt=/\[\]$/,Ot=/\r?\n/g,Rt=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i -Ae.param=function(e,t){var n,r=[],i=function(e,t){var n=ye(t)?t():t -r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)} -if(Array.isArray(e)||e.jquery&&!Ae.isPlainObject(e))Ae.each(e,function(){i(this.name,this.value)}) -else for(n in e)$(n,e[n],t,i) -return r.join("&")},Ae.fn.extend({serialize:function(){return Ae.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=Ae.prop(this,"elements") -return e?Ae.makeArray(e):this}).filter(function(){var e=this.type -return this.name&&!Ae(this).is(":disabled")&&Nt.test(this.nodeName)&&!Rt.test(e)&&(this.checked||!Qe.test(e))}).map(function(e,t){var n=Ae(this).val() -return null==n?null:Array.isArray(n)?Ae.map(n,function(e){return{name:t.name,value:e.replace(Ot,"\r\n")}}):{name:t.name,value:n.replace(Ot,"\r\n")}}).get()}}) -var Mt=/%20/g,Lt=/#.*$/,Dt=/([?&])_=[^&]*/,zt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Bt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ut={},qt={},Vt="*/".concat("*"),Wt=se.createElement("a") -Wt.href=Et.href,Ae.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Et.href,type:"GET",isLocal:Ft.test(Et.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Vt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":Ae.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?ne(ne(e,Ae.ajaxSettings),t):ne(Ae.ajaxSettings,e)},ajaxPrefilter:ee(Ut),ajaxTransport:ee(qt),ajax:function(t,n){function r(t,n,r,a){var c,d,p,C,A,_=n -l||(l=!0,u&&e.clearTimeout(u),i=void 0,s=a||"",I.readyState=t>0?4:0,c=t>=200&&t<300||304===t,r&&(C=re(f,I,r)),C=ie(f,C,I,c),c?(f.ifModified&&(A=I.getResponseHeader("Last-Modified"),A&&(Ae.lastModified[o]=A),(A=I.getResponseHeader("etag"))&&(Ae.etag[o]=A)),204===t||"HEAD"===f.type?_="nocontent":304===t?_="notmodified":(_=C.state,d=C.data,p=C.error,c=!p)):(p=_,!t&&_||(_="error",t<0&&(t=0))),I.status=t,I.statusText=(n||_)+"",c?v.resolveWith(g,[d,_,I]):v.rejectWith(g,[I,_,p]),I.statusCode(b),b=void 0,h&&m.trigger(c?"ajaxSuccess":"ajaxError",[I,f,c?d:p]),y.fireWith(g,[I,_]),h&&(m.trigger("ajaxComplete",[I,f]),--Ae.active||Ae.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{} -var i,o,s,a,u,c,l,h,d,p,f=Ae.ajaxSetup({},n),g=f.context||f,m=f.context&&(g.nodeType||g.jquery)?Ae(g):Ae.event,v=Ae.Deferred(),y=Ae.Callbacks("once memory"),b=f.statusCode||{},C={},A={},_="canceled",I={readyState:0,getResponseHeader:function(e){var t -if(l){if(!a)for(a={};t=zt.exec(s);)a[t[1].toLowerCase()]=t[2] -t=a[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return l?s:null},setRequestHeader:function(e,t){return null==l&&(e=A[e.toLowerCase()]=A[e.toLowerCase()]||e,C[e]=t),this},overrideMimeType:function(e){return null==l&&(f.mimeType=e),this},statusCode:function(e){var t -if(e)if(l)I.always(e[I.status]) -else for(t in e)b[t]=[b[t],e[t]] -return this},abort:function(e){var t=e||_ -return i&&i.abort(t),r(0,t),this}} -if(v.promise(I),f.url=((t||f.url||Et.href)+"").replace(Ht,Et.protocol+"//"),f.type=n.method||n.type||f.method||f.type,f.dataTypes=(f.dataType||"*").toLowerCase().match(Oe)||[""],null==f.crossDomain){c=se.createElement("a") -try{c.href=f.url,c.href=c.href,f.crossDomain=Wt.protocol+"//"+Wt.host!=c.protocol+"//"+c.host}catch(e){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!=typeof f.data&&(f.data=Ae.param(f.data,f.traditional)),te(Ut,f,n,I),l)return I -h=Ae.event&&f.global,h&&0==Ae.active++&&Ae.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Bt.test(f.type),o=f.url.replace(Lt,""),f.hasContent?f.data&&f.processData&&0===(f.contentType||"").indexOf("application/x-www-form-urlencoded")&&(f.data=f.data.replace(Mt,"+")):(p=f.url.slice(o.length),f.data&&(f.processData||"string"==typeof f.data)&&(o+=(Tt.test(o)?"&":"?")+f.data,delete f.data),!1===f.cache&&(o=o.replace(Dt,"$1"),p=(Tt.test(o)?"&":"?")+"_="+St+++p),f.url=o+p),f.ifModified&&(Ae.lastModified[o]&&I.setRequestHeader("If-Modified-Since",Ae.lastModified[o]),Ae.etag[o]&&I.setRequestHeader("If-None-Match",Ae.etag[o])),(f.data&&f.hasContent&&!1!==f.contentType||n.contentType)&&I.setRequestHeader("Content-Type",f.contentType),I.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+Vt+"; q=0.01":""):f.accepts["*"]) -for(d in f.headers)I.setRequestHeader(d,f.headers[d]) -if(f.beforeSend&&(!1===f.beforeSend.call(g,I,f)||l))return I.abort() -if(_="abort",y.add(f.complete),I.done(f.success),I.fail(f.error),i=te(qt,f,n,I)){if(I.readyState=1,h&&m.trigger("ajaxSend",[I,f]),l)return I -f.async&&f.timeout>0&&(u=e.setTimeout(function(){I.abort("timeout")},f.timeout)) -try{l=!1,i.send(C,r)}catch(e){if(l)throw e -r(-1,e)}}else r(-1,"No Transport") -return I},getJSON:function(e,t,n){return Ae.get(e,t,n,"json")},getScript:function(e,t){return Ae.get(e,void 0,t,"script")}}),Ae.each(["get","post"],function(e,t){Ae[t]=function(e,n,r,i){return ye(n)&&(i=i||r,r=n,n=void 0),Ae.ajax(Ae.extend({url:e,type:t,dataType:i,data:n,success:r},Ae.isPlainObject(e)&&e))}}),Ae._evalUrl=function(e){return Ae.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},Ae.fn.extend({wrapAll:function(e){var t -return this[0]&&(ye(e)&&(e=e.call(this[0])),t=Ae(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild -return e}).append(this)),this},wrapInner:function(e){return ye(e)?this.each(function(t){Ae(this).wrapInner(e.call(this,t))}):this.each(function(){var t=Ae(this),n=t.contents() -n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=ye(e) -return this.each(function(n){Ae(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){Ae(this).replaceWith(this.childNodes)}),this}}),Ae.expr.pseudos.hidden=function(e){return!Ae.expr.pseudos.visible(e)},Ae.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},Ae.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}} -var Gt={0:200,1223:204},Yt=Ae.ajaxSettings.xhr() -ve.cors=!!Yt&&"withCredentials"in Yt,ve.ajax=Yt=!!Yt,Ae.ajaxTransport(function(t){var n,r -if(ve.cors||Yt&&!t.crossDomain)return{send:function(i,o){var s,a=t.xhr() -if(a.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(s in t.xhrFields)a[s]=t.xhrFields[s] -t.mimeType&&a.overrideMimeType&&a.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest") -for(s in i)a.setRequestHeader(s,i[s]) -n=function(e){return function(){n&&(n=r=a.onload=a.onerror=a.onabort=a.ontimeout=a.onreadystatechange=null,"abort"===e?a.abort():"error"===e?"number"!=typeof a.status?o(0,"error"):o(a.status,a.statusText):o(Gt[a.status]||a.status,a.statusText,"text"!==(a.responseType||"text")||"string"!=typeof a.responseText?{binary:a.response}:{text:a.responseText},a.getAllResponseHeaders()))}},a.onload=n(),r=a.onerror=a.ontimeout=n("error"),void 0!==a.onabort?a.onabort=r:a.onreadystatechange=function(){4===a.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort") -try{a.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),Ae.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),Ae.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return Ae.globalEval(e),e}}}),Ae.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),Ae.ajaxTransport("script",function(e){if(e.crossDomain){var t,n -return{send:function(r,i){t=Ae("<script>").prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),se.head.appendChild(t[0])},abort:function(){n&&n()}}}}) -var Kt=[],Qt=/(=)\?(?=&|$)|\?\?/ -Ae.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||Ae.expando+"_"+St++ -return this[e]=!0,e}}),Ae.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,s,a=!1!==t.jsonp&&(Qt.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&Qt.test(t.data)&&"data") -if(a||"jsonp"===t.dataTypes[0])return i=t.jsonpCallback=ye(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,a?t[a]=t[a].replace(Qt,"$1"+i):!1!==t.jsonp&&(t.url+=(Tt.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return s||Ae.error(i+" was not called"),s[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){s=arguments},r.always(function(){void 0===o?Ae(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Kt.push(i)),s&&ye(o)&&o(s[0]),s=o=void 0}),"script"}),ve.createHTMLDocument=function(){var e=se.implementation.createHTMLDocument("").body -return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),Ae.parseHTML=function(e,t,n){if("string"!=typeof e)return[] -"boolean"==typeof t&&(n=t,t=!1) -var r,i,o -return t||(ve.createHTMLDocument?(t=se.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=se.location.href,t.head.appendChild(r)):t=se),i=je.exec(e),o=!n&&[],i?[t.createElement(i[1])]:(i=I([e],t,o),o&&o.length&&Ae(o).remove(),Ae.merge([],i.childNodes))},Ae.fn.load=function(e,t,n){var r,i,o,s=this,a=e.indexOf(" ") -return a>-1&&(r=Z(e.slice(a)),e=e.slice(0,a)),ye(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),s.length>0&&Ae.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,s.html(r?Ae("<div>").append(Ae.parseHTML(e)).find(r):e)}).always(n&&function(e,t){s.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},Ae.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){Ae.fn[t]=function(e){return this.on(t,e)}}),Ae.expr.pseudos.animated=function(e){return Ae.grep(Ae.timers,function(t){return e===t.elem}).length},Ae.offset={setOffset:function(e,t,n){var r,i,o,s,a,u,c,l=Ae.css(e,"position"),h=Ae(e),d={} -"static"===l&&(e.style.position="relative"),a=h.offset(),o=Ae.css(e,"top"),u=Ae.css(e,"left"),c=("absolute"===l||"fixed"===l)&&(o+u).indexOf("auto")>-1,c?(r=h.position(),s=r.top,i=r.left):(s=parseFloat(o)||0,i=parseFloat(u)||0),ye(t)&&(t=t.call(e,n,Ae.extend({},a))),null!=t.top&&(d.top=t.top-a.top+s),null!=t.left&&(d.left=t.left-a.left+i),"using"in t?t.using.call(e,d):h.css(d)}},Ae.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){Ae.offset.setOffset(this,e,t)}) -var t,n,r=this[0] -if(r)return r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0} -if("fixed"===Ae.css(r,"position"))t=r.getBoundingClientRect() -else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===Ae.css(e,"position");)e=e.parentNode -e&&e!==r&&1===e.nodeType&&(i=Ae(e).offset(),i.top+=Ae.css(e,"borderTopWidth",!0),i.left+=Ae.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-Ae.css(r,"marginTop",!0),left:t.left-i.left-Ae.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===Ae.css(e,"position");)e=e.offsetParent -return e||et})}}),Ae.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t -Ae.fn[e]=function(r){return Me(this,function(e,r,i){var o -if(be(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r] -o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),Ae.each(["top","left"],function(e,t){Ae.cssHooks[t]=L(ve.pixelPosition,function(e,n){if(n)return n=M(e,t),ut.test(n)?Ae(e).position()[t]+"px":n})}),Ae.each({Height:"height",Width:"width"},function(e,t){Ae.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){Ae.fn[r]=function(i,o){var s=arguments.length&&(n||"boolean"!=typeof i),a=n||(!0===i||!0===o?"margin":"border") -return Me(this,function(t,n,i){var o -return be(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?Ae.css(t,n,a):Ae.style(t,n,i,a)},t,s?i:void 0,s)}})}),Ae.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){Ae.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),Ae.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),Ae.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),Ae.proxy=function(e,t){var n,r,i -if("string"==typeof t&&(n=e[t],t=e,e=n),ye(e))return r=ue.call(arguments,2),i=function(){return e.apply(t||this,r.concat(ue.call(arguments)))},i.guid=e.guid=e.guid||Ae.guid++,i},Ae.holdReady=function(e){e?Ae.readyWait++:Ae.ready(!0)},Ae.isArray=Array.isArray,Ae.parseJSON=JSON.parse,Ae.nodeName=o,Ae.isFunction=ye,Ae.isWindow=be,Ae.camelCase=f,Ae.type=r,Ae.now=Date.now,Ae.isNumeric=function(e){var t=Ae.type(e) -return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return Ae}) -var Zt=e.jQuery,Xt=e.$ -return Ae.noConflict=function(t){return e.$===Ae&&(e.$=Xt),t&&e.jQuery===Ae&&(e.jQuery=Zt),Ae},t||(e.jQuery=e.$=Ae),Ae}),function(){var e,t,n -mainContext=this,function(){function r(e,t){throw t?new Error("Could not find module "+e+" required by: "+t):new Error("Could not find module "+e)}function i(e,n){var a=e,u=o[a] -u||(a+="/index",u=o[a]) -var c=s[a] -if(void 0!==c)return c -c=s[a]={},u||r(e,n) -for(var l=u.deps,h=u.callback,d=new Array(l.length),p=0;p<l.length;p++)"exports"===l[p]?d[p]=c:"require"===l[p]?d[p]=t:d[p]=i(l[p],a) -return h.apply(this,d),c}if("undefined"==typeof window&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)||(n=this.Ember=this.Ember||{}),void 0===n&&(n={}),void 0===n.__loader){var o={},s={} -e=function(e,t,n){var r={} -n?(r.deps=t,r.callback=n):(r.deps=[],r.callback=t),o[e]=r},t=function(e){return i(e,null)},t.default=t,t.has=function(e){return!!o[e]||!!o[e+"/index"]},t._eak_seen=o,n.__loader={define:e,require:t,registry:o}}else e=n.__loader.define,t=n.__loader.require}(),e("@glimmer/encoder",["exports"],function(e){"use strict" -e.InstructionEncoder=void 0 -var t=function(){function e(e){this.buffer=e,this.typePos=0,this.size=0}return e.prototype.encode=function(e,t){var n,r -if(e>255)throw new Error("Opcode type over 8-bits. Got "+e+".") -for(this.buffer.push(e|t|arguments.length-2<<8),this.typePos=this.buffer.length-1,n=2;n<arguments.length;n++){if("number"==typeof(r=arguments[n])&&r>65535)throw new Error("Operand over 16-bits. Got "+r+".") -this.buffer.push(r)}this.size=this.buffer.length},e.prototype.patch=function(e,t){if(-1!==this.buffer[e+1])throw new Error("Trying to patch operand in populated slot instead of a reserved slot.") -this.buffer[e+1]=t},e.prototype.patchWith=function(e,t,n){if(-1!==this.buffer[e+1])throw new Error("Trying to patch operand in populated slot instead of a reserved slot.") -this.buffer[e+1]=t,this.buffer[e+2]=n},e}() -e.InstructionEncoder=t}),e("@glimmer/low-level",["exports"],function(e){"use strict" -function t(e){switch(7&e){case 0:return e>>3 -case 4:return-(e>>3) -default:throw new Error("unreachable")}}function n(e){return e<0?Math.abs(e)<<3|4:e<<3|0}e.Stack=e.Storage=void 0 -var r=function(){function e(){this.array=[],this.next=0}return e.prototype.add=function(e){var t,n=this.next,r=this.array -return n===r.length?this.next++:(t=r[n],this.next=t),this.array[n]=e,n},e.prototype.deref=function(e){return this.array[e]},e.prototype.drop=function(e){this.array[e]=this.next,this.next=e},e}(),i=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[] -this.vec=e}return e.prototype.clone=function(){return new e(this.vec.slice())},e.prototype.sliceFrom=function(t){return new e(this.vec.slice(t))},e.prototype.slice=function(t,n){return new e(this.vec.slice(t,n))},e.prototype.copy=function(e,t){this.vec[t]=this.vec[e]},e.prototype.writeRaw=function(e,t){this.vec[e]=t},e.prototype.writeSmi=function(e,t){this.vec[e]=n(t)},e.prototype.getRaw=function(e){return this.vec[e]},e.prototype.getSmi=function(e){return t(this.vec[e])},e.prototype.reset=function(){this.vec.length=0},e.prototype.len=function(){return this.vec.length},e}() -e.Storage=r,e.Stack=i}),e("@glimmer/node",["exports","ember-babel","@glimmer/runtime"],function(e,t,n){"use strict" -function r(e){var t=e.element,n=e.nextSibling -return null===n?t.lastChild:n.previousSibling}e.serializeBuilder=e.NodeDOMTreeConstruction=void 0 -var i=function(e){function r(n){return(0,t.possibleConstructorReturn)(this,e.call(this,n))}return(0,t.inherits)(r,e),r.prototype.setupUselessElement=function(){},r.prototype.insertHTMLBefore=function(e,t,r){var i=t?t.previousSibling:e.lastChild,o=this.document.createRawHTMLSection(r) -e.insertBefore(o,t) -var s=i?i.nextSibling:e.firstChild,a=t?t.previousSibling:e.lastChild -return new n.ConcreteBounds(e,s,a)},r.prototype.createElement=function(e){return this.document.createElement(e)},r.prototype.setAttribute=function(e,t,n){e.setAttribute(t,n)},r}(n.DOMTreeConstruction),o=function(e){function i(){var n=(0,t.possibleConstructorReturn)(this,e.apply(this,arguments)) -return n.serializeBlockDepth=0,n}return(0,t.inherits)(i,e),i.prototype.__openBlock=function(){var t=this.serializeBlockDepth++ -this.__appendComment("%+b:"+t+"%"),e.prototype.__openBlock.call(this)},i.prototype.__closeBlock=function(){e.prototype.__closeBlock.call(this),this.__appendComment("%-b:"+--this.serializeBlockDepth+"%")},i.prototype.__appendHTML=function(t){var r,i=this.__appendComment("%glmr%") -"TABLE"===this.element.tagName&&(r=t.indexOf("<"))>-1&&"tr"===t.slice(r+1,r+3)&&(t="<tbody>"+t+"</tbody>"),""===t?this.__appendComment("% %"):e.prototype.__appendHTML.call(this,t) -var o=this.__appendComment("%glmr%") -return new n.ConcreteBounds(this.element,i,o)},i.prototype.__appendText=function(t){var n=r(this) -return""===t?this.__appendComment("% %"):(n&&3===n.nodeType&&this.__appendComment("%|%"),e.prototype.__appendText.call(this,t))},i.prototype.closeElement=function(){!0===this.element.needsExtraClose&&(this.element.needsExtraClose=!1,e.prototype.closeElement.call(this)),e.prototype.closeElement.call(this)},i.prototype.openElement=function(t){return"tr"===t&&"TBODY"!==this.element.tagName&&(this.openElement("tbody"),this.constructing.needsExtraClose=!0,this.flushElement()),e.prototype.openElement.call(this,t)},i.prototype.pushRemoteElement=function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=this.dom,o=i.createElement("script") -o.setAttribute("glmr",n),i.insertBefore(t,o,r),e.prototype.pushRemoteElement.call(this,t,n,r)},i}(n.NewElementBuilder) -e.NodeDOMTreeConstruction=i,e.serializeBuilder=function(e,t){return o.forInitialRender(e,t)}}),e("@glimmer/opcode-compiler",["exports","ember-utils","ember-babel","@glimmer/util","@glimmer/vm","@glimmer/wire-format","@glimmer/encoder","@glimmer/program"],function(e,t,n,r,i,o,s,a){"use strict" -function u(){if(b)return b -var e=b=new y -e.add(m.Text,function(e,t){t.text(e[1])}),e.add(m.Comment,function(e,t){t.comment(e[1])}),e.add(m.CloseElement,function(e,t){t.closeElement()}),e.add(m.FlushElement,function(e,t){t.flushElement()}),e.add(m.Modifier,function(e,t){var n=t.referrer,r=e[1],i=e[2],o=e[3],s=t.compiler.resolveModifier(r,n) -if(null===s)throw new Error("Compile Error "+r+" is not a modifier: Helpers may not be used in the element form.") -t.modifier(s,i,o)}),e.add(m.StaticAttr,function(e,t){var n=e[1],r=e[2],i=e[3] -t.staticAttr(n,i,r)}),e.add(m.DynamicAttr,function(e,t){c(e,!1,t)}),e.add(m.TrustingAttr,function(e,t){c(e,!0,t)}),e.add(m.OpenElement,function(e,t){t.openPrimitiveElement(e[1])}),e.add(m.OpenSplattedElement,function(e,t){t.setComponentAttrs(!0),t.putComponentOperations(),t.openPrimitiveElement(e[1])}),e.add(m.Component,function(e,t){var n,i,o,s=e[1],a=e[2],u=e[3],c=e[4],l=t.referrer,h=t.compiler.resolveLayoutForTag(s,l),d=h.handle,p=h.capabilities,f=h.compilable -if(null===d||null===p)throw new Error("Compile Error: Cannot find component "+s) -n=[[m.ClientSideStatement,g.SetComponentAttrs,!0]].concat(a,[[m.ClientSideStatement,g.SetComponentAttrs,!1]]),i=t.inlineBlock({statements:n,parameters:r.EMPTY_ARRAY}),o=t.template(c),f?(t.pushComponentDefinition(d),t.invokeStaticComponent(p,f,i,null,u,!1,o&&o)):(t.pushComponentDefinition(d),t.invokeComponent(p,i,null,u,!1,o&&o))}),e.add(m.Partial,function(e,t){var n=e[1],r=e[2],i=t.referrer -t.replayableIf({args:function(){return t.expr(n),t.dup(),2},ifTrue:function(){t.invokePartial(i,t.evalSymbols(),r),t.popScope(),t.popFrame()}})}),e.add(m.Yield,function(e,t){var n=e[1],r=e[2] -t.yield(n,r)}),e.add(m.AttrSplat,function(e,t){var n=e[1] -t.yield(n,[]),t.didCreateElement(i.Register.s0),t.setComponentAttrs(!1)}),e.add(m.Debugger,function(e,t){var n=e[1] -t.debugger(t.evalSymbols(),n)}),e.add(m.ClientSideStatement,function(e,n){t.compile(e,n)}),e.add(m.Append,function(e,t){var n=e[1],r=e[2] -!0!==(t.compileInline(e)||n)&&t.guardedAppend(n,r)}),e.add(m.Block,function(e,t){var n=e[1],r=e[2],i=e[3],o=e[4],s=e[5],a=t.template(o),u=t.template(s) -t.compileBlock(n,r,i,a&&a,u&&u)}) -var t=new y(1) -return t.add(g.OpenComponentElement,function(e,t){t.putComponentOperations(),t.openPrimitiveElement(e[2])}),t.add(g.DidCreateElement,function(e,t){t.didCreateElement(i.Register.s0)}),t.add(g.SetComponentAttrs,function(e,t){t.setComponentAttrs(e[2])}),t.add(g.Debugger,function(){}),t.add(g.DidRenderLayout,function(e,t){t.didRenderLayout(i.Register.s0)}),e}function c(e,t,n){var r=e[1],i=e[2],o=e[3] -n.expr(i),o?n.dynamicAttr(r,o,t):n.dynamicAttr(r,null,t)}function l(){if(C)return C -var e=C=new y -return e.add(m.Unknown,function(e,t){var n=t.compiler,r=t.referrer,i=t.containingLayout.asPartial,o=e[1],s=n.resolveHelper(o,r) -null!==s?t.helper(s,null,null):i?t.resolveMaybeLocal(o):(t.getVariable(0),t.getProperty(o))}),e.add(m.Concat,function(e,t){var n,r=e[1] -for(n=0;n<r.length;n++)t.expr(r[n]) -t.concat(r.length)}),e.add(m.Helper,function(e,t){var n,r,i=t.compiler,o=t.referrer,s=e[1],a=e[2],u=e[3] -if("component"===s)return n=a[0],r=a.slice(1),void t.curryComponent(n,r,u,!0) -var c=i.resolveHelper(s,o) -if(null===c)throw new Error("Compile Error: "+s+" is not a helper") -t.helper(c,a,u)}),e.add(m.Get,function(e,t){var n,r=e[1],i=e[2] -for(t.getVariable(r),n=0;n<i.length;n++)t.getProperty(i[n])}),e.add(m.MaybeLocal,function(e,t){var n,r,i=e[1] -for(t.containingLayout.asPartial?(n=i[0],i=i.slice(1),t.resolveMaybeLocal(n)):t.getVariable(0),r=0;r<i.length;r++)t.getProperty(i[r])}),e.add(m.Undefined,function(e,t){return t.pushPrimitiveReference(void 0)}),e.add(m.HasBlock,function(e,t){t.hasBlock(e[1])}),e.add(m.HasBlockParams,function(e,t){t.hasBlockParams(e[1])}),e}function h(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new A,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new _ -return e.add("if",function(e,t,n,r,i){if(!e||1!==e.length)throw new Error("SYNTAX ERROR: #if requires a single argument") -i.replayableIf({args:function(){return i.expr(e[0]),i.toBoolean(),1},ifTrue:function(){i.invokeStaticBlock(n)},ifFalse:function(){r&&i.invokeStaticBlock(r)}})}),e.add("unless",function(e,t,n,r,i){if(!e||1!==e.length)throw new Error("SYNTAX ERROR: #unless requires a single argument") -i.replayableIf({args:function(){return i.expr(e[0]),i.toBoolean(),1},ifTrue:function(){r&&i.invokeStaticBlock(r)},ifFalse:function(){i.invokeStaticBlock(n)}})}),e.add("with",function(e,t,n,r,i){if(!e||1!==e.length)throw new Error("SYNTAX ERROR: #with requires a single argument") -i.replayableIf({args:function(){return i.expr(e[0]),i.dup(),i.toBoolean(),2},ifTrue:function(){i.invokeStaticBlock(n,1)},ifFalse:function(){r&&i.invokeStaticBlock(r)}})}),e.add("each",function(e,t,n,r,o){o.replayable({args:function(){return t&&"key"===t[0][0]?o.expr(t[1][0]):o.pushPrimitiveReference(null),o.expr(e[0]),2},body:function(){o.putIterator(),o.jumpUnless("ELSE"),o.pushFrame(),o.dup(i.Register.fp,1),o.returnTo("ITER"),o.enterList("BODY"),o.label("ITER"),o.iterate("BREAK"),o.label("BODY"),o.invokeStaticBlock(n,2),o.pop(2),o.jump("FINALLY"),o.label("BREAK"),o.exitList(),o.popFrame(),o.jump("FINALLY"),o.label("ELSE"),r&&o.invokeStaticBlock(r)}})}),e.add("in-element",function(e,t,n,r,i){if(!e||1!==e.length)throw new Error("SYNTAX ERROR: #in-element requires a single argument") -i.replayableIf({args:function(){var n,r,o=t[0],s=t[1] -for(n=0;n<o.length;n++){if("nextSibling"!==(r=o[n])&&"guid"!==r)throw new Error("SYNTAX ERROR: #in-element does not take a `"+o[0]+"` option") -i.expr(s[n])}return i.expr(e[0]),i.dup(),4},ifTrue:function(){i.pushRemoteElement(),i.invokeStaticBlock(n),i.popRemoteElement()}})}),e.add("-with-dynamic-vars",function(e,t,n,r,i){var o,s -t?(o=t[0],s=t[1],i.compileParams(s),i.pushDynamicScope(),i.bindDynamicScope(o),i.invokeStaticBlock(n),i.popDynamicScope()):i.invokeStaticBlock(n)}),e.add("component",function(e,t,n,r,i){var o=e[0] -if("string"!=typeof o||!i.staticComponentHelper(e[0],t,n)){var s=e[0],a=e.slice(1) -i.dynamicComponent(s,a,t,!0,n,r)}}),t.add("component",function(e,t,n,r){var i=t&&t[0] -if("string"==typeof i&&r.staticComponentHelper(i,n,null))return!0 -var o=t[0],s=t.slice(1) -return r.dynamicComponent(o,s,n,!0,null,null),!0}),{blocks:e,inlines:t}}function d(e,t){var n,r=u() -for(n=0;n<e.length;n++)r.compile(e[n],t) -return t.commit()}function p(e,t){return new w(t,{block:{statements:e.block.statements,parameters:r.EMPTY_ARRAY},containingLayout:e})}function f(e){var t=e.id,n=e.meta,i=e.block,o=void 0,s=t||"client-"+L++ -return{id:s,meta:n,create:function(e,t){var a=t?(0,r.assign)({},t,n):n -return o||(o=JSON.parse(i)),new D(e,{id:s,block:o,referrer:a})}}}e.AbstractCompiler=e.compile=e.LazyCompiler=e.PLACEHOLDER_HANDLE=e.WrappedBuilder=e.logOpcode=e.debugSlice=e.debug=e.templateFactory=e.PartialDefinition=e.StdOpcodeBuilder=e.OpcodeBuilder=e.EagerOpcodeBuilder=e.LazyOpcodeBuilder=e.CompilableProgram=e.CompilableBlock=e.Macros=e.ATTRS_BLOCK=void 0 -var g;(function(e){e[e.OpenComponentElement=0]="OpenComponentElement",e[e.DidCreateElement=1]="DidCreateElement",e[e.SetComponentAttrs=2]="SetComponentAttrs",e[e.DidRenderLayout=3]="DidRenderLayout",e[e.Debugger=4]="Debugger"})(g||(g={})) -var m=o.Ops,v="&attrs",y=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0 -this.offset=e,this.names=(0,r.dict)(),this.funcs=[]}return e.prototype.add=function(e,t){this.funcs.push(t),this.names[e]=this.funcs.length-1},e.prototype.compile=function(e,t){var n=e[this.offset],r=this.names[n];(0,this.funcs[r])(e,t)},e}(),b=void 0,C=void 0,A=function(){function e(){this.names=(0,r.dict)(),this.funcs=[]}return e.prototype.add=function(e,t){this.funcs.push(t),this.names[e]=this.funcs.length-1},e.prototype.addMissing=function(e){this.missing=e},e.prototype.compile=function(e,t,n,r,i,o){var s=this.names[e] -void 0===s?(0,this.missing)(e,t,n,r,i,o):(0,this.funcs[s])(t,n,r,i,o)},e}(),_=function(){function e(){this.names=(0,r.dict)(),this.funcs=[]}return e.prototype.add=function(e,t){this.funcs.push(t),this.names[e]=this.funcs.length-1},e.prototype.addMissing=function(e){this.missing=e},e.prototype.compile=function(e,t){var n,r,i,o,s=e[1] -if(!Array.isArray(s))return["expr",s] -var a=void 0,u=void 0,c=void 0 -if(s[0]===m.Helper)a=s[1],u=s[2],c=s[3] -else{if(s[0]!==m.Unknown)return["expr",s] -a=s[1],u=c=null}var l=this.names[a] -return void 0===l&&this.missing?(n=this.missing,r=n(a,u,c,t),!1===r?["expr",s]:r):void 0!==l?(i=this.funcs[l],o=i(a,u,c,t),!1===o?["expr",s]:o):["expr",s]},e}(),I=function(){function e(e,t){this.compiler=e,this.layout=t,this.compiled=null}return e.prototype.compile=function(){if(null!==this.compiled)return this.compiled -this.compiled=-1 -var e=this.layout.block.statements -return this.compiled=this.compiler.add(e,this.layout)},(0,n.createClass)(e,[{key:"symbolTable",get:function(){return this.layout.block}}]),e}(),w=function(){function e(e,t){this.compiler=e,this.parsed=t,this.compiled=null}return e.prototype.compile=function(){if(null!==this.compiled)return this.compiled -this.compiled=-1 -var e=this.parsed,t=e.block.statements,n=e.containingLayout -return this.compiled=this.compiler.add(t,n)},(0,n.createClass)(e,[{key:"symbolTable",get:function(){return this.parsed.block}}]),e}(),x=function(){function e(e,t,n){this.main=e,this.trustingGuardedAppend=t,this.cautiousGuardedAppend=n}return e.compile=function(t){return new e(this.std(t,function(e){return e.main()}),this.std(t,function(e){return e.stdAppend(!0)}),this.std(t,function(e){return e.stdAppend(!1)}))},e.std=function(e,t){return T.build(e,t)},e.prototype.getAppend=function(e){return e?this.trustingGuardedAppend:this.cautiousGuardedAppend},e}(),k=function(){function e(e,t,n){this.macros=e,this.program=t,this.resolver=n,this.initialize()}return e.prototype.initialize=function(){this.stdLib=x.compile(this)},e.prototype.compileInline=function(e,t){return this.macros.inlines.compile(e,t)},e.prototype.compileBlock=function(e,t,n,r,i,o){this.macros.blocks.compile(e,t,n,r,i,o)},e.prototype.add=function(e,t){return d(e,this.builderFor(t))},e.prototype.commit=function(e,t){var n,r,i=this.program.heap,o=i.malloc() -for(n=0;n<t.length;n++)r=t[n],"function"==typeof r?i.pushPlaceholder(r):i.push(r) -return i.finishMalloc(o,e),o},e.prototype.resolveLayoutForTag=function(e,t){var n=this.resolver,r=n.lookupComponentDefinition(e,t) -return null===r?{handle:null,capabilities:null,compilable:null}:this.resolveLayoutForHandle(r)},e.prototype.resolveLayoutForHandle=function(e){var t=this.resolver,n=t.getCapabilities(e),r=null -return n.dynamicLayout||(r=t.getLayout(e)),{handle:e,capabilities:n,compilable:r}},e.prototype.resolveModifier=function(e,t){return this.resolver.lookupModifier(e,t)},e.prototype.resolveHelper=function(e,t){return this.resolver.lookupHelper(e,t)},(0,n.createClass)(e,[{key:"constants",get:function(){return this.program.constants}}]),e}(),j=function(){function e(e,t){this.compiler=e,this.layout=t,this.compiled=null -var n=t.block -this.symbolTable={hasEval:n.hasEval,symbols:n.symbols.concat([v])}}return e.prototype.compile=function(){if(null!==this.compiled)return this.compiled -var e=this.compiler,t=this.layout,n=e.builderFor(t) -n.startLabels(),n.fetch(i.Register.s1),n.getComponentTagName(i.Register.s0),n.primitiveReference(),n.dup(),n.load(i.Register.s1),n.jumpUnless("BODY"),n.fetch(i.Register.s1),n.putComponentOperations(),n.openDynamicElement(),n.didCreateElement(i.Register.s0),n.flushElement(),n.label("BODY"),n.invokeStaticBlock(p(t,e)),n.fetch(i.Register.s1),n.jumpUnless("END"),n.closeElement(),n.label("END"),n.load(i.Register.s1),n.stopLabels() -var r=n.commit() -return this.compiled=r},e}(),E=function(){function e(e){this.builder=e}return e.prototype.static=function(e,t){var n,r,i,o=t[0],s=t[1],a=t[2],u=t[3],c=this.builder -null!==e&&(n=c.compiler.resolveLayoutForHandle(e),r=n.capabilities,i=n.compilable,i?(c.pushComponentDefinition(e),c.invokeStaticComponent(r,i,null,o,s,!1,a,u)):(c.pushComponentDefinition(e),c.invokeComponent(r,null,o,s,!1,a,u)))},e}(),S=function(){function e(){this.labels=(0,r.dict)(),this.targets=[]}return e.prototype.label=function(e,t){this.labels[e]=t},e.prototype.target=function(e,t){this.targets.push({at:e,target:t})},e.prototype.patch=function(e){var t,n,r,i,o,s=this.targets,a=this.labels -for(t=0;t<s.length;t++)n=s[t],r=n.at,i=n.target,o=a[i]-r,e.patch(r,o)},e}(),T=function(){function e(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0 -this.size=t,this.encoder=new s.InstructionEncoder([]),this.labelsStack=new r.Stack,this.compiler=e}return e.build=function(t,n){var r=new e(t) -return n(r),r.commit()},e.prototype.push=function(e){switch(arguments.length){case 1:return this.encoder.encode(e,0) -case 2:return this.encoder.encode(e,0,arguments[1]) -case 3:return this.encoder.encode(e,0,arguments[1],arguments[2]) -default:return this.encoder.encode(e,0,arguments[1],arguments[2],arguments[3])}},e.prototype.pushMachine=function(e){switch(arguments.length){case 1:return this.encoder.encode(e,1024) -case 2:return this.encoder.encode(e,1024,arguments[1]) -case 3:return this.encoder.encode(e,1024,arguments[1],arguments[2]) -default:return this.encoder.encode(e,1024,arguments[1],arguments[2],arguments[3])}},e.prototype.commit=function(){return this.pushMachine(24),this.compiler.commit(this.size,this.encoder.buffer)},e.prototype.reserve=function(e){this.encoder.encode(e,0,-1)},e.prototype.reserveWithOperand=function(e,t){this.encoder.encode(e,0,-1,t)},e.prototype.reserveMachine=function(e){this.encoder.encode(e,1024,-1)},e.prototype.main=function(){this.push(68,i.Register.s0),this.invokePreparedComponent(!1,!1,!0)},e.prototype.appendHTML=function(){this.push(28)},e.prototype.appendSafeHTML=function(){this.push(29)},e.prototype.appendDocumentFragment=function(){this.push(30)},e.prototype.appendNode=function(){this.push(31)},e.prototype.appendText=function(){this.push(32)},e.prototype.beginComponentTransaction=function(){this.push(91)},e.prototype.commitComponentTransaction=function(){this.push(92)},e.prototype.pushDynamicScope=function(){this.push(44)},e.prototype.popDynamicScope=function(){this.push(45)},e.prototype.pushRemoteElement=function(){this.push(41)},e.prototype.popRemoteElement=function(){this.push(42)},e.prototype.pushRootScope=function(e,t){this.push(20,e,t?1:0)},e.prototype.pushVirtualRootScope=function(e){this.push(21,e)},e.prototype.pushChildScope=function(){this.push(22)},e.prototype.popScope=function(){this.push(23)},e.prototype.prepareArgs=function(e){this.push(79,e)},e.prototype.createComponent=function(e,t){this.push(81,0|t,e)},e.prototype.registerComponentDestructor=function(e){this.push(82,e)},e.prototype.putComponentOperations=function(){this.push(83)},e.prototype.getComponentSelf=function(e){this.push(84,e)},e.prototype.getComponentTagName=function(e){this.push(85,e)},e.prototype.getComponentLayout=function(e){this.push(86,e)},e.prototype.setupForEval=function(e){this.push(87,e)},e.prototype.invokeComponentLayout=function(e){this.push(90,e)},e.prototype.didCreateElement=function(e){this.push(93,e)},e.prototype.didRenderLayout=function(e){this.push(94,e)},e.prototype.pushFrame=function(){this.pushMachine(57)},e.prototype.popFrame=function(){this.pushMachine(58)},e.prototype.pushSmallFrame=function(){this.pushMachine(59)},e.prototype.popSmallFrame=function(){this.pushMachine(60)},e.prototype.invokeVirtual=function(){this.pushMachine(49)},e.prototype.invokeYield=function(){this.push(51)},e.prototype.toBoolean=function(){this.push(63)},e.prototype.invokePreparedComponent=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null -this.beginComponentTransaction(),this.pushDynamicScope(),this.createComponent(i.Register.s0,e),r&&r(),this.registerComponentDestructor(i.Register.s0),this.getComponentSelf(i.Register.s0),this.pushVirtualRootScope(i.Register.s0),this.setVariable(0),this.setupForEval(i.Register.s0),n&&this.setNamedVariables(i.Register.s0),t&&this.setBlocks(i.Register.s0),this.pop(),this.invokeComponentLayout(i.Register.s0),this.didRenderLayout(i.Register.s0),this.popFrame(),this.popScope(),this.popDynamicScope(),this.commitComponentTransaction()},e.prototype.compileInline=function(e){return this.compiler.compileInline(e,this)},e.prototype.compileBlock=function(e,t,n,r,i){this.compiler.compileBlock(e,t,n,r,i,this)},e.prototype.label=function(e){this.labels.label(e,this.nextPos)},e.prototype.startLabels=function(){this.labelsStack.push(new S)},e.prototype.stopLabels=function(){this.labelsStack.pop().patch(this.encoder)},e.prototype.pushCurriedComponent=function(){this.push(74)},e.prototype.pushDynamicComponentInstance=function(){this.push(73)},e.prototype.openDynamicElement=function(){this.push(34)},e.prototype.flushElement=function(){this.push(38)},e.prototype.closeElement=function(){this.push(39)},e.prototype.putIterator=function(){this.push(66)},e.prototype.enterList=function(e){this.reserve(64),this.labels.target(this.pos,e)},e.prototype.exitList=function(){this.push(65)},e.prototype.iterate=function(e){this.reserve(67),this.labels.target(this.pos,e)},e.prototype.setNamedVariables=function(e){this.push(2,e)},e.prototype.setBlocks=function(e){this.push(3,e)},e.prototype.setVariable=function(e){this.push(4,e)},e.prototype.setBlock=function(e){this.push(5,e)},e.prototype.getVariable=function(e){this.push(6,e)},e.prototype.getBlock=function(e){this.push(8,e)},e.prototype.hasBlock=function(e){this.push(9,e)},e.prototype.concat=function(e){this.push(11,e)},e.prototype.load=function(e){this.push(18,e)},e.prototype.fetch=function(e){this.push(19,e)},e.prototype.dup=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.Register.sp,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0 -return this.push(16,e,t)},e.prototype.pop=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1 -return this.push(17,e)},e.prototype.returnTo=function(e){this.reserveMachine(25),this.labels.target(this.pos,e)},e.prototype.primitiveReference=function(){this.push(14)},e.prototype.reifyU32=function(){this.push(15)},e.prototype.enter=function(e){this.push(61,e)},e.prototype.exit=function(){this.push(62)},e.prototype.return=function(){this.pushMachine(24)},e.prototype.jump=function(e){this.reserveMachine(52),this.labels.target(this.pos,e)},e.prototype.jumpIf=function(e){this.reserve(53),this.labels.target(this.pos,e)},e.prototype.jumpUnless=function(e){this.reserve(54),this.labels.target(this.pos,e)},e.prototype.jumpEq=function(e,t){this.reserveWithOperand(55,e),this.labels.target(this.pos,t)},e.prototype.assertSame=function(){this.push(56)},e.prototype.pushEmptyArgs=function(){this.push(77)},e.prototype.switch=function(e,t){function n(e,t){s.push({match:e,callback:t,label:"CLAUSE"+a++})}var r,i,o=this,s=[],a=0 -for(t(n),this.enter(2),this.assertSame(),this.reifyU32(),this.startLabels(),s.slice(0,-1).forEach(function(e){return o.jumpEq(e.match,e.label)}),r=s.length-1;r>=0;r--)i=s[r],this.label(i.label),this.pop(2),i.callback(),0!==r&&this.jump("END") -this.label("END"),this.stopLabels(),this.exit()},e.prototype.stdAppend=function(e){var t=this -this.switch(this.contentType(),function(n){n(1,function(){e?(t.assertSame(),t.appendHTML()):t.appendText()}),n(0,function(){t.pushCurriedComponent(),t.pushDynamicComponentInstance(),t.invokeBareComponent()}),n(3,function(){t.assertSame(),t.appendSafeHTML()}),n(4,function(){t.assertSame(),t.appendDocumentFragment()}),n(5,function(){t.assertSame(),t.appendNode()})})},e.prototype.populateLayout=function(e){this.push(89,e)},e.prototype.invokeBareComponent=function(){var e=this -this.fetch(i.Register.s0),this.dup(i.Register.sp,1),this.load(i.Register.s0),this.pushFrame(),this.pushEmptyArgs(),this.prepareArgs(i.Register.s0),this.invokePreparedComponent(!1,!1,!0,function(){e.getComponentLayout(i.Register.s0),e.populateLayout(i.Register.s0)}),this.load(i.Register.s0)},e.prototype.isComponent=function(){this.push(69)},e.prototype.contentType=function(){this.push(70)},e.prototype.pushBlockScope=function(){this.push(47)},(0,n.createClass)(e,[{key:"pos",get:function(){return this.encoder.typePos}},{key:"nextPos",get:function(){return this.encoder.size}},{key:"labels",get:function(){return this.labelsStack.current}}]),e}(),P=function(e){function t(t,r){var i=(0,n.possibleConstructorReturn)(this,e.call(this,t,r?r.block.symbols.length:0)) -return i.containingLayout=r,i.component=new E(i),i.expressionCompiler=l(),i.isComponentAttrs=!1,i.constants=t.constants,i.stdLib=t.stdLib,i}return(0,n.inherits)(t,e),t.prototype.setComponentAttrs=function(e){this.isComponentAttrs=e},t.prototype.expr=function(e){Array.isArray(e)?this.expressionCompiler.compile(e,this):this.pushPrimitiveReference(e)},t.prototype.pushArgs=function(e,t){var n=this.constants.stringArray(e) -this.push(76,n,t)},t.prototype.pushYieldableBlock=function(e){this.pushSymbolTable(e&&e.symbolTable),this.pushBlockScope(),this.pushBlock(e)},t.prototype.curryComponent=function(e,t,n,r){var o=this.containingLayout.referrer -this.pushFrame(),this.compileArgs(t,n,null,r),this.push(80),this.expr(e),this.push(71,this.constants.serializable(o)),this.popFrame(),this.fetch(i.Register.v0)},t.prototype.pushSymbolTable=function(e){var t -e?(t=this.constants.serializable(e),this.push(48,t)):this.primitive(null)},t.prototype.invokeComponent=function(e,t,n,r,o,s){var a=this,u=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,c=arguments[7] -this.fetch(i.Register.s0),this.dup(i.Register.sp,1),this.load(i.Register.s0),this.pushFrame() -var l=!0===e||e.prepareArgs||!(!r||0===r[0].length) -this.compileArgs(n,r,{main:s,else:u,attrs:t},o),this.prepareArgs(i.Register.s0),this.invokePreparedComponent(null!==s,!!(s||u||t),l,function(){c?(a.pushSymbolTable(c.symbolTable),a.pushLayout(c),a.resolveLayout()):a.getComponentLayout(i.Register.s0),a.populateLayout(i.Register.s0)}),this.load(i.Register.s0)},t.prototype.invokeStaticComponent=function(e,t,n,o,s,a,u){var c,l,h,d,p,f,g,m,y,b,C,A=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,_=t.symbolTable -if(_.hasEval||e.prepareArgs)return void this.invokeComponent(e,n,o,s,a,u,A,t) -this.fetch(i.Register.s0),this.dup(i.Register.sp,1),this.load(i.Register.s0) -var I=_.symbols -e.createArgs&&(this.pushFrame(),this.compileArgs(null,s,null,a)),this.beginComponentTransaction(),e.dynamicScope&&this.pushDynamicScope(),e.createInstance&&this.createComponent(i.Register.s0,null!==u),e.createArgs&&this.popFrame(),this.pushFrame(),this.registerComponentDestructor(i.Register.s0) -var w=[] -for(this.getComponentSelf(i.Register.s0),w.push({symbol:0,isBlock:!1}),c=0;c<I.length;c++)switch(l=I[c],l.charAt(0)){case"&":if(h=null,"&default"===l)h=u -else if("&inverse"===l)h=A -else{if(l!==v)throw(0,r.unreachable)() -h=n}h?(this.pushYieldableBlock(h),w.push({symbol:c+1,isBlock:!0})):(this.pushYieldableBlock(null),w.push({symbol:c+1,isBlock:!0})) -break -case"@":if(!s)break -d=s[0],p=s[1],f=l,a&&(f=l.slice(1)),g=d.indexOf(f),-1!==g&&(this.expr(p[g]),w.push({symbol:c+1,isBlock:!1}))}for(this.pushRootScope(I.length+1,!!(u||A||n)),m=w.length-1;m>=0;m--)y=w[m],b=y.symbol,C=y.isBlock,C?this.setBlock(b):this.setVariable(b) -this.invokeStatic(t),e.createInstance&&this.didRenderLayout(i.Register.s0),this.popFrame(),this.popScope(),e.dynamicScope&&this.popDynamicScope(),this.commitComponentTransaction(),this.load(i.Register.s0)},t.prototype.dynamicComponent=function(e,t,n,r,i){var o=this,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null -this.replayable({args:function(){return o.expr(e),o.dup(),2},body:function(){o.jumpUnless("ELSE"),o.resolveDynamicComponent(o.containingLayout.referrer),o.pushDynamicComponentInstance(),o.invokeComponent(!0,null,t,n,r,i,s),o.label("ELSE")}})},t.prototype.yield=function(e,t){this.compileArgs(t,null,null,!1),this.getBlock(e),this.resolveBlock(),this.invokeYield(),this.popScope(),this.popFrame()},t.prototype.guardedAppend=function(e,t){this.pushFrame(),this.expr(e),this.pushMachine(50,this.stdLib.getAppend(t)),this.popFrame()},t.prototype.invokeStaticBlock=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=e.symbolTable.parameters,o=r.length,s=Math.min(n,o) -if(this.pushFrame(),s)for(this.pushChildScope(),t=0;t<s;t++)this.dup(i.Register.fp,n-t),this.setVariable(r[t]) -this.pushBlock(e),this.resolveBlock(),this.invokeVirtual(),s&&this.popScope(),this.popFrame()},t.prototype.string=function(e){return this.constants.string(e)},t.prototype.names=function(e){var t,n,r=[] -for(t=0;t<e.length;t++)n=e[t],r[t]=this.constants.string(n) -return this.constants.array(r)},t.prototype.symbols=function(e){return this.constants.array(e)},t.prototype.primitive=function(e){var t=0,n=void 0 -switch(typeof e){case"number":e%1==0?e>-1?n=e:(n=this.constants.number(e),t=4):(n=this.constants.number(e),t=1) -break -case"string":n=this.string(e),t=2 -break -case"boolean":n=0|e,t=3 -break -case"object":n=2,t=3 -break -case"undefined":n=3,t=3 -break -default:throw new Error("Invalid primitive passed to pushPrimitive")}var r=this.sizeImmediate(n<<3|t,n) -this.push(13,r)},t.prototype.sizeImmediate=function(e,t){return e>=65535||e<0?this.constants.number(t)<<3|5:e},t.prototype.pushPrimitiveReference=function(e){this.primitive(e),this.primitiveReference()},t.prototype.pushComponentDefinition=function(e){this.push(72,this.constants.handle(e))},t.prototype.resolveDynamicComponent=function(e){this.push(75,this.constants.serializable(e))},t.prototype.staticComponentHelper=function(e,t,n){var r,i=this.compiler.resolveLayoutForTag(e,this.referrer),o=i.handle,s=i.capabilities,a=i.compilable -if(null!==o&&null!==s&&a){if(t)for(r=0;r<t.length;r+=2)t[r][0]="@"+t[r][0] -return this.pushComponentDefinition(o),this.invokeStaticComponent(s,a,null,null,t,!1,n&&n),!0}return!1},t.prototype.invokePartial=function(e,t,n){var r=this.constants.serializable(e),i=this.constants.stringArray(t),o=this.constants.array(n) -this.push(95,r,i,o)},t.prototype.resolveMaybeLocal=function(e){this.push(96,this.string(e))},t.prototype.debugger=function(e,t){this.push(97,this.constants.stringArray(e),this.constants.array(t))},t.prototype.text=function(e){this.push(26,this.constants.string(e))},t.prototype.openPrimitiveElement=function(e){this.push(33,this.constants.string(e))},t.prototype.modifier=function(e,t,n){this.pushFrame(),this.compileArgs(t,n,null,!0),this.push(40,this.constants.handle(e)),this.popFrame()},t.prototype.comment=function(e){var t=this.constants.string(e) -this.push(27,t)},t.prototype.dynamicAttr=function(e,t,n){var r=this.constants.string(e),i=t?this.constants.string(t):0 -this.isComponentAttrs?this.push(37,r,!0===n?1:0,i):this.push(36,r,!0===n?1:0,i)},t.prototype.staticAttr=function(e,t,n){var r,i=this.constants.string(e),o=t?this.constants.string(t):0 -this.isComponentAttrs?(this.pushPrimitiveReference(n),this.push(37,i,1,o)):(r=this.constants.string(n),this.push(35,i,r,o))},t.prototype.hasBlockParams=function(e){this.getBlock(e),this.resolveBlock(),this.push(10)},t.prototype.getProperty=function(e){this.push(7,this.string(e))},t.prototype.helper=function(e,t,n){this.pushFrame(),this.compileArgs(t,n,null,!0),this.push(1,this.constants.handle(e)),this.popFrame(),this.fetch(i.Register.v0)},t.prototype.bindDynamicScope=function(e){this.push(43,this.names(e))},t.prototype.replayable=function(e){var t=e.args,n=e.body -this.startLabels(),this.pushFrame(),this.returnTo("ENDINITIAL") -var r=t() -this.enter(r),n(),this.label("FINALLY"),this.exit(),this.return(),this.label("ENDINITIAL"),this.popFrame(),this.stopLabels()},t.prototype.replayableIf=function(e){var t=this,n=e.args,r=e.ifTrue,i=e.ifFalse -this.replayable({args:n,body:function(){t.jumpUnless("ELSE"),r(),t.jump("FINALLY"),t.label("ELSE"),i&&i()}})},t.prototype.inlineBlock=function(e){return new w(this.compiler,{block:e,containingLayout:this.containingLayout})},t.prototype.evalSymbols=function(){var e=this.containingLayout.block -return e.hasEval?e.symbols:null},t.prototype.compileParams=function(e){var t -if(!e)return 0 -for(t=0;t<e.length;t++)this.expr(e[t]) -return e.length},t.prototype.compileArgs=function(e,t,n,i){n&&(this.pushYieldableBlock(n.main),this.pushYieldableBlock(n.else),this.pushYieldableBlock(n.attrs)) -var o,s,a=this.compileParams(e),u=a<<4 -i&&(u|=8),n&&(u|=7) -var c=r.EMPTY_ARRAY -if(t)for(c=t[0],o=t[1],s=0;s<o.length;s++)this.expr(o[s]) -this.pushArgs(c,u)},t.prototype.template=function(e){return e?this.inlineBlock(e):null},(0,n.createClass)(t,[{key:"referrer",get:function(){return this.containingLayout&&this.containingLayout.referrer}}]),t}(T),O=function(e){function t(){return(0,n.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,n.inherits)(t,e),t.prototype.pushBlock=function(e){e?this.pushOther(e):this.primitive(null)},t.prototype.resolveBlock=function(){this.push(46)},t.prototype.pushLayout=function(e){e?this.pushOther(e):this.primitive(null)},t.prototype.resolveLayout=function(){this.push(46)},t.prototype.invokeStatic=function(e){this.pushOther(e),this.push(46),this.pushMachine(49)},t.prototype.pushOther=function(e){this.push(12,this.other(e))},t.prototype.other=function(e){return this.constants.other(e)},t}(P),R=function(e){function t(){return(0,n.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,n.inherits)(t,e),t.prototype.pushBlock=function(e){var t=e?e.compile():null -this.primitive(t)},t.prototype.resolveBlock=function(){},t.prototype.pushLayout=function(e){e?this.primitive(e.compile()):this.primitive(null)},t.prototype.resolveLayout=function(){},t.prototype.invokeStatic=function(e){var t=e.compile();-1===t?this.pushMachine(50,function(){return e.compile()}):this.pushMachine(50,t)},t}(P),N=function(e){function t(t,r,i){var o=new a.LazyConstants(r),s=new a.Program(o) -return(0,n.possibleConstructorReturn)(this,e.call(this,i,s,t))}return(0,n.inherits)(t,e),t.prototype.builderFor=function(e){return new O(this,e)},t}(k),M=function(){function e(e,t){this.name=e,this.template=t}return e.prototype.getPartial=function(){var e=this.template.asPartial(),t=e.compile() -return{symbolTable:e.symbolTable,handle:t}},e}(),L=0,D=function(){function e(e,t){this.compiler=e,this.parsedLayout=t,this.layout=null,this.partial=null,this.wrappedLayout=null -var n=t.block -this.symbols=n.symbols,this.hasEval=n.hasEval,this.referrer=t.referrer,this.id=t.id||"client-"+L++}return e.prototype.asLayout=function(){return this.layout?this.layout:this.layout=new I(this.compiler,(0,t.assign)({},this.parsedLayout,{asPartial:!1}))},e.prototype.asPartial=function(){return this.partial?this.partial:this.layout=new I(this.compiler,(0,t.assign)({},this.parsedLayout,{asPartial:!0}))},e.prototype.asWrappedLayout=function(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new j(this.compiler,(0,t.assign)({},this.parsedLayout,{asPartial:!1}))},e}() -e.ATTRS_BLOCK=v,e.Macros=function(){var e=h(),t=e.blocks,n=e.inlines -this.blocks=t,this.inlines=n},e.CompilableBlock=w,e.CompilableProgram=I,e.LazyOpcodeBuilder=O,e.EagerOpcodeBuilder=R,e.OpcodeBuilder=P,e.StdOpcodeBuilder=T,e.PartialDefinition=M,e.templateFactory=f,e.debug=function(e,t,n){for(i=arguments.length,o=Array(i>3?i-3:0),s=3;s<i;s++)o[s-3]=arguments[s] -var i,o,s -throw(0,r.unreachable)("Missing Opcode Metadata for "+n)},e.debugSlice=function(){},e.logOpcode=function(e,t){var n,r=e -return t&&(n=Object.keys(t).map(function(e){return" "+e+"="+void t[e]}).join(""),r+=n),"("+r+")"},e.WrappedBuilder=j,e.PLACEHOLDER_HANDLE=-1,e.LazyCompiler=N,e.compile=d,e.AbstractCompiler=k}),e("@glimmer/program",["exports","ember-babel","@glimmer/util"],function(e,t){"use strict" -function n(e,t,n){return e|t<<16|n<<30}function r(e,t){return e|t<<30}function i(e,t,n){if(void 0!==e.slice)return e.slice(t,n) -for(var r=new Uint16Array(n);t<n;t++)r[t]=e[t] -return r}e.Opcode=e.Program=e.RuntimeProgram=e.WriteOnlyProgram=e.Heap=e.LazyConstants=e.Constants=e.RuntimeConstants=e.WriteOnlyConstants=e.WELL_KNOWN_EMPTY_ARRAY_POSITION=void 0 -var o={},s=Object.freeze([]),a=function(){function e(){this.strings=[],this.arrays=[s],this.tables=[],this.handles=[],this.resolved=[],this.numbers=[]}return e.prototype.string=function(e){var t=this.strings.indexOf(e) -return t>-1?t:this.strings.push(e)-1},e.prototype.stringArray=function(e){var t,n=new Array(e.length) -for(t=0;t<e.length;t++)n[t]=this.string(e[t]) -return this.array(n)},e.prototype.array=function(e){if(0===e.length)return 0 -var t=this.arrays.indexOf(e) -return t>-1?t:this.arrays.push(e)-1},e.prototype.handle=function(e){var t=this.handles.indexOf(e) -return t>-1?t:(this.resolved.push(o),this.handles.push(e)-1)},e.prototype.serializable=function(e){var t=JSON.stringify(e),n=this.strings.indexOf(t) -return n>-1?n:this.strings.push(t)-1},e.prototype.number=function(e){var t=this.numbers.indexOf(e) -return t>-1?t:this.numbers.push(e)-1},e.prototype.toPool=function(){return{strings:this.strings,arrays:this.arrays,handles:this.handles,numbers:this.numbers}},e}(),u=function(){function e(e,t){this.resolver=e,this.strings=t.strings,this.arrays=t.arrays,this.handles=t.handles,this.resolved=this.handles.map(function(){return o}),this.numbers=t.numbers}return e.prototype.getString=function(e){return this.strings[e]},e.prototype.getNumber=function(e){return this.numbers[e]},e.prototype.getStringArray=function(e){var t,n,r=this.getArray(e),i=new Array(r.length) -for(t=0;t<r.length;t++)n=r[t],i[t]=this.getString(n) -return i},e.prototype.getArray=function(e){return this.arrays[e]},e.prototype.resolveHandle=function(e){var t,n=this.resolved[e] -return n===o&&(t=this.handles[e],n=this.resolved[e]=this.resolver.resolve(t)),n},e.prototype.getSerializable=function(e){return JSON.parse(this.strings[e])},e}(),c=function(e){function n(n,r){var i=(0,t.possibleConstructorReturn)(this,e.call(this)) -return i.resolver=n,r&&(i.strings=r.strings,i.arrays=r.arrays,i.handles=r.handles,i.resolved=i.handles.map(function(){return o}),i.numbers=r.numbers),i}return(0,t.inherits)(n,e),n.prototype.getNumber=function(e){return this.numbers[e]},n.prototype.getString=function(e){return this.strings[e]},n.prototype.getStringArray=function(e){var t,n,r=this.getArray(e),i=new Array(r.length) -for(t=0;t<r.length;t++)n=r[t],i[t]=this.getString(n) -return i},n.prototype.getArray=function(e){return this.arrays[e]},n.prototype.resolveHandle=function(e){var t,n=this.resolved[e] -return n===o&&(t=this.handles[e],n=this.resolved[e]=this.resolver.resolve(t)),n},n.prototype.getSerializable=function(e){return JSON.parse(this.strings[e])},n}(a),l=function(e){function n(){var n=(0,t.possibleConstructorReturn)(this,e.apply(this,arguments)) -return n.others=[],n.serializables=[],n}return(0,t.inherits)(n,e),n.prototype.serializable=function(e){var t=this.serializables.indexOf(e) -return t>-1?t:this.serializables.push(e)-1},n.prototype.getSerializable=function(e){return this.serializables[e]},n.prototype.getOther=function(e){return this.others[e-1]},n.prototype.other=function(e){return this.others.push(e)},n}(c),h=function(){function e(e){this.heap=e,this.offset=0}return(0,t.createClass)(e,[{key:"size",get:function(){return 1+((768&this.heap.getbyaddr(this.offset))>>8)}},{key:"isMachine",get:function(){return 1024&this.heap.getbyaddr(this.offset)}},{key:"type",get:function(){return 255&this.heap.getbyaddr(this.offset)}},{key:"op1",get:function(){return this.heap.getbyaddr(this.offset+1)}},{key:"op2",get:function(){return this.heap.getbyaddr(this.offset+2)}},{key:"op3",get:function(){return this.heap.getbyaddr(this.offset+3)}}]),e}(),d=1048576,p=function(){function e(e){var t,n,r -this.placeholders=[],this.offset=0,this.handle=0,this.capacity=d,e?(t=e.buffer,n=e.table,r=e.handle,this.heap=new Uint16Array(t),this.table=n,this.offset=this.heap.length,this.handle=r,this.capacity=0):(this.heap=new Uint16Array(d),this.table=[])}return e.prototype.push=function(e){this.sizeCheck(),this.heap[this.offset++]=e},e.prototype.sizeCheck=function(){var e -0===this.capacity&&(e=i(this.heap,0,this.offset),this.heap=new Uint16Array(e.length+d),this.heap.set(e,0),this.capacity=d),this.capacity--},e.prototype.getbyaddr=function(e){return this.heap[e]},e.prototype.setbyaddr=function(e,t){this.heap[e]=t},e.prototype.malloc=function(){this.table.push(this.offset,0) -var e=this.handle -return this.handle+=2,e},e.prototype.finishMalloc=function(e,t){var r=this.table[e],i=this.offset,o=n(i-r,t,0) -this.table[e+1]=o},e.prototype.size=function(){return this.offset},e.prototype.getaddr=function(e){return this.table[e]},e.prototype.gethandle=function(e){this.table.push(e,n(0,0,3)) -var t=this.handle -return this.handle+=2,t},e.prototype.sizeof=function(){return-1},e.prototype.scopesizeof=function(e){return(1073676288&this.table[e+1])>>16},e.prototype.free=function(e){var t=this.table[e+1] -this.table[e+1]=r(t,1)},e.prototype.compact=function(){var e,t,n,i,o,s,a=0,u=this.table,c=this.table.length,l=this.heap -for(e=0;e<c;e+=2)if(t=u[e],n=u[e+1],i=65535&n,2!==(o=-1&n))if(1===o)u[e+1]=r(n,2),a+=i -else if(0===o){for(s=t;s<=e+i;s++)l[s-a]=l[s] -u[e]=t-a}else 3===o&&(u[e]=t-a) -this.offset=this.offset-a},e.prototype.pushPlaceholder=function(e){this.sizeCheck() -var t=this.offset++ -this.heap[t]=65535,this.placeholders.push([t,e])},e.prototype.patchPlaceholders=function(){var e,t,n,r,i=this.placeholders -for(e=0;e<i.length;e++)t=i[e],n=t[0],r=t[1],this.setbyaddr(n,r())},e.prototype.capture=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.offset -this.patchPlaceholders() -var t=i(this.heap,0,e).buffer -return{handle:this.handle,table:this.table,buffer:t}},e}(),f=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new a,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new p -this.constants=e,this.heap=t,this._opcode=new h(this.heap)}return e.prototype.opcode=function(e){return this._opcode.offset=e,this._opcode},e}(),g=function(){function e(e,t){this.constants=e,this.heap=t,this._opcode=new h(this.heap)}return e.hydrate=function(t,n,r){var i=new p(t) -return new e(new u(r,n),i)},e.prototype.opcode=function(e){return this._opcode.offset=e,this._opcode},e}(),m=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n}(f) -e.WELL_KNOWN_EMPTY_ARRAY_POSITION=0,e.WriteOnlyConstants=a,e.RuntimeConstants=u,e.Constants=c,e.LazyConstants=l,e.Heap=p,e.WriteOnlyProgram=f,e.RuntimeProgram=g,e.Program=m,e.Opcode=h}),e("@glimmer/reference",["exports","ember-babel","@glimmer/util"],function(e,t,n){"use strict" -function r(e){var t=u.length -u.push(function(e){return e.value()}),c.push(function(e,t){return e.validate(t)}),e.id=t}function i(){f++}function o(e){switch(e.length){case 0:return h -case 1:return e[0] -case 2:return v.create(e[0],e[1]) -default:return y.create(e)}}e.isModified=e.ReferenceCache=e.map=e.CachedReference=e.UpdatableTag=e.CachedTag=e.combine=e.combineSlice=e.combineTagged=e.DirtyableTag=e.bump=e.isConstTag=e.isConst=e.CURRENT_TAG=e.VOLATILE_TAG=e.CONSTANT_TAG=e.TagWrapper=e.RevisionTag=e.VOLATILE=e.INITIAL=e.CONSTANT=e.IteratorSynchronizer=e.ReferenceIterator=e.IterationArtifacts=e.ListItem=e.ConstReference=void 0 -var s=1,a=function(){function e(){}return e.prototype.validate=function(e){return this.value()===e},e}() -a.id=0 -var u=[],c=[],l=function(){function e(e,t){this.type=e,this.inner=t}return e.prototype.value=function(){return(0,u[this.type])(this.inner)},e.prototype.validate=function(e){return(0,c[this.type])(this.inner,e)},e}() -u.push(function(){return 0}),c.push(function(e,t){return 0===t}) -var h=new l(0,null) -u.push(function(){return NaN}),c.push(function(e,t){return NaN===t}) -var d=new l(1,null) -u.push(function(){return f}),c.push(function(e,t){return t===f}) -var p=new l(2,null),f=s,g=function(e){function n(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,r=(0,t.possibleConstructorReturn)(this,e.call(this)) -return r.revision=n,r}return(0,t.inherits)(n,e),n.create=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f -return new l(this.id,new n(e))},n.prototype.value=function(){return this.revision},n.prototype.dirty=function(){this.revision=++f},n}(a) -r(g) -var m=function(e){function n(){var n=(0,t.possibleConstructorReturn)(this,e.apply(this,arguments)) -return n.lastChecked=null,n.lastValue=null,n}return(0,t.inherits)(n,e),n.prototype.value=function(){var e=this.lastChecked -this.lastValue -return e!==f&&(this.lastChecked=f,this.lastValue=this.compute()),this.lastValue},n.prototype.invalidate=function(){this.lastChecked=null},n}(a),v=function(e){function n(n,r){var i=(0,t.possibleConstructorReturn)(this,e.call(this)) -return i.first=n,i.second=r,i}return(0,t.inherits)(n,e),n.create=function(e,t){return new l(this.id,new n(e,t))},n.prototype.compute=function(){return Math.max(this.first.value(),this.second.value())},n}(m) -r(v) -var y=function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this)) -return r.tags=n,r}return(0,t.inherits)(n,e),n.create=function(e){return new l(this.id,new n(e))},n.prototype.compute=function(){var e,t,n=this.tags,r=-1 -for(e=0;e<n.length;e++)t=n[e].value(),r=Math.max(t,r) -return r},n}(m) -r(y) -var b=function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this)) -return r.tag=n,r.lastUpdated=s,r}return(0,t.inherits)(n,e),n.create=function(e){return new l(this.id,new n(e))},n.prototype.compute=function(){return Math.max(this.lastUpdated,this.tag.value())},n.prototype.update=function(e){e!==this.tag&&(this.tag=e,this.lastUpdated=f,this.invalidate())},n}(m) -r(b) -var C,A=function(){function e(){this.lastRevision=null,this.lastValue=null}return e.prototype.value=function(){var e=this.tag,t=this.lastRevision,n=this.lastValue -return null!==t&&e.validate(t)||(n=this.lastValue=this.compute(),this.lastRevision=e.value()),n},e.prototype.invalidate=function(){this.lastRevision=null},e}(),_=function(e){function n(n,r){var i=(0,t.possibleConstructorReturn)(this,e.call(this)) -return i.tag=n.tag,i.reference=n,i.mapper=r,i}return(0,t.inherits)(n,e),n.prototype.compute=function(){var e=this.reference -return(0,this.mapper)(e.value())},n}(A),I=function(){function e(e){this.lastValue=null,this.lastRevision=null,this.initialized=!1,this.tag=e.tag,this.reference=e}return e.prototype.peek=function(){return this.initialized?this.lastValue:this.initialize()},e.prototype.revalidate=function(){if(!this.initialized)return this.initialize() -var e=this.reference,t=this.lastRevision,n=e.tag -if(n.validate(t))return w -this.lastRevision=n.value() -var r=this.lastValue,i=e.value() -return i===r?w:(this.lastValue=i,i)},e.prototype.initialize=function(){var e=this.reference,t=this.lastValue=e.value() -return this.lastRevision=e.tag.value(),this.initialized=!0,t},e}(),w="adb3b78e-3d22-4e4b-877a-6317c2c5c145",x=function(){function e(e){this.inner=e,this.tag=h}return e.prototype.value=function(){return this.inner},e}(),k=function(e){function n(n,r){var i=(0,t.possibleConstructorReturn)(this,e.call(this,n.valueReferenceFor(r))) -return i.retained=!1,i.seen=!1,i.key=r.key,i.iterable=n,i.memo=n.memoReferenceFor(r),i}return(0,t.inherits)(n,e),n.prototype.update=function(e){this.retained=!0,this.iterable.updateValueReference(this.value,e),this.iterable.updateMemoReference(this.memo,e)},n.prototype.shouldRemove=function(){return!this.retained},n.prototype.reset=function(){this.retained=!1,this.seen=!1},n}(n.ListNode),j=function(){function e(e){this.iterator=null,this.map=(0,n.dict)(),this.list=new n.LinkedList,this.tag=e.tag,this.iterable=e}return e.prototype.isEmpty=function(){return(this.iterator=this.iterable.iterate()).isEmpty()},e.prototype.iterate=function(){var e=void 0 -return e=null===this.iterator?this.iterable.iterate():this.iterator,this.iterator=null,e},e.prototype.has=function(e){return!!this.map[e]},e.prototype.get=function(e){return this.map[e]},e.prototype.wasSeen=function(e){var t=this.map[e] -return void 0!==t&&t.seen},e.prototype.append=function(e){var t=this.map,n=this.list,r=this.iterable,i=t[e.key]=new k(r,e) -return n.append(i),i},e.prototype.insertBefore=function(e,t){var n=this.map,r=this.list,i=this.iterable,o=n[e.key]=new k(i,e) -return o.retained=!0,r.insertBefore(o,t),o},e.prototype.move=function(e,t){var n=this.list -e.retained=!0,n.remove(e),n.insertBefore(e,t)},e.prototype.remove=function(e){this.list.remove(e),delete this.map[e.key]},e.prototype.nextNode=function(e){return this.list.nextNode(e)},e.prototype.head=function(){return this.list.head()},e}(),E=function(){function e(e){this.iterator=null -var t=new j(e) -this.artifacts=t}return e.prototype.next=function(){var e=this.artifacts,t=this.iterator=this.iterator||e.iterate(),n=t.next() -return null===n?null:e.append(n)},e}();(function(e){e[e.Append=0]="Append",e[e.Prune=1]="Prune",e[e.Done=2]="Done"})(C||(C={})) -var S=function(){function e(e){var t=e.target,n=e.artifacts -this.target=t,this.artifacts=n,this.iterator=n.iterate(),this.current=n.head()}return e.prototype.sync=function(){for(var e=C.Append;;)switch(e){case C.Append:e=this.nextAppend() -break -case C.Prune:e=this.nextPrune() -break -case C.Done:return void this.nextDone()}},e.prototype.advanceToKey=function(e){for(var t=this.current,n=this.artifacts,r=t;null!==r&&r.key!==e;)r.seen=!0,r=n.nextNode(r) -null!==r&&(this.current=n.nextNode(r))},e.prototype.nextAppend=function(){var e=this.iterator,t=this.current,n=this.artifacts,r=e.next() -if(null===r)return this.startPrune() -var i=r.key -return null!==t&&t.key===i?this.nextRetain(r):n.has(i)?this.nextMove(r):this.nextInsert(r),C.Append},e.prototype.nextRetain=function(e){var t=this.artifacts,n=this.current -n=n,n.update(e),this.current=t.nextNode(n),this.target.retain(e.key,n.value,n.memo)},e.prototype.nextMove=function(e){var t=this.current,n=this.artifacts,r=this.target,i=e.key,o=n.get(e.key) -o.update(e),n.wasSeen(e.key)?(n.move(o,t),r.move(o.key,o.value,o.memo,t?t.key:null)):this.advanceToKey(i)},e.prototype.nextInsert=function(e){var t=this.artifacts,n=this.target,r=this.current,i=t.insertBefore(e,r) -n.insert(i.key,i.value,i.memo,r?r.key:null)},e.prototype.startPrune=function(){return this.current=this.artifacts.head(),C.Prune},e.prototype.nextPrune=function(){var e=this.artifacts,t=this.target,n=this.current -if(null===n)return C.Done -var r=n -return this.current=e.nextNode(r),r.shouldRemove()?(e.remove(r),t.delete(r.key)):r.reset(),C.Prune},e.prototype.nextDone=function(){this.target.done()},e}() -e.ConstReference=x,e.ListItem=k,e.IterationArtifacts=j,e.ReferenceIterator=E,e.IteratorSynchronizer=S,e.CONSTANT=0,e.INITIAL=s,e.VOLATILE=NaN,e.RevisionTag=a,e.TagWrapper=l,e.CONSTANT_TAG=h,e.VOLATILE_TAG=d,e.CURRENT_TAG=p,e.isConst=function(e){return e.tag===h},e.isConstTag=function(e){return e===h},e.bump=i,e.DirtyableTag=g,e.combineTagged=function(e){var t,n,r,i=[] -for(t=0,n=e.length;t<n;t++){if((r=e[t].tag)===d)return d -r!==h&&i.push(r)}return o(i)},e.combineSlice=function(e){for(var t,n=[],r=e.head();null!==r;){if((t=r.tag)===d)return d -t!==h&&n.push(t),r=e.nextNode(r)}return o(n)},e.combine=function(e){var t,n,r,i=[] -for(t=0,n=e.length;t<n;t++){if((r=e[t])===d)return d -r!==h&&i.push(r)}return o(i)},e.CachedTag=m,e.UpdatableTag=b,e.CachedReference=A,e.map=function(e,t){return new _(e,t)},e.ReferenceCache=I,e.isModified=function(e){return e!==w}}),e("@glimmer/runtime",["exports","ember-babel","@glimmer/util","@glimmer/reference","@glimmer/vm","@glimmer/low-level"],function(e,t,n,r,i,o){"use strict" -function s(e){return"function"!=typeof e.toString?"":String(e)}function a(e){return!(!e||!e[Ae])}function u(e){return e&&e[Ae]}function c(e){return h(e)?"":String(e)}function l(e){return g(e)||h(e)||"boolean"==typeof e||"number"==typeof e}function h(e){return null===e||void 0===e||"function"!=typeof e.toString}function d(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function p(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function f(e){return p(e)&&11===e.nodeType}function g(e){return"string"==typeof e}function m(e,t,n){return e.lookupComponentDefinition(t,n)}function v(e){return 0|(e.dynamicLayout?1:0)|(e.dynamicTag?2:0)|(e.prepareArgs?4:0)|(e.createArgs?8:0)|(e.attributeHook?16:0)|(e.elementHook?32:0)|(e.dynamicScope?64:0)|(e.createCaller?128:0)|(e.updateHook?256:0)|(e.createInstance?512:0)}function y(e,t){return!!(e&t)}function b(e,t,n){var r=e.definition=t.unwrap(n),i=r.manager,o=r.state -return e.manager=i,e.capabilities=v(i.getCapabilities(o)),r}function C(e){return!1===y(e,1)}function A(e){return!0===y(e,1)}function _(e,t,n,r,i){var o=n.table.symbols.indexOf(e),s=r.get(t);-1!==o&&i.scope().bindBlock(o+1,s),n.lookup&&(n.lookup[e]=s)}function I(e,t){console.info("Use `context`, and `get(<path>)` to debug this template."),t("this")}function w(e,t,n){return new He(e,t,n)}function x(e,t){return new Ue(e,t)}function k(e,t){for(var n,r=e.parentElement(),i=e.firstNode(),o=e.lastNode(),s=i;s;){if(n=s.nextSibling,r.insertBefore(s,t),s===o)return n -s=n}return null}function j(e){for(var t,n=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r;o;){if(t=o.nextSibling,n.removeChild(o),o===i)return t -o=t}return null}function E(e,n,r){if(!e)return n -if(!T(e,r))return n -var i=e.createElement("div") -return function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.insertHTMLBefore=function(t,n,o){return null===o||""===o?e.prototype.insertHTMLBefore.call(this,t,n,o):t.namespaceURI!==r?e.prototype.insertHTMLBefore.call(this,t,n,o):S(t,i,o,n)},n}(n)}function S(e,t,n,r){t.innerHTML="<svg>"+n+"</svg>" -var i=R(t.firstChild,e,r),o=i[0],s=i[1] -return new He(e,o,s)}function T(e,t){var n=e.createElementNS(t,"svg") -try{n.insertAdjacentHTML("beforeend","<circle></circle>")}catch(e){}finally{return 1!==n.childNodes.length||"http://www.w3.org/2000/svg"!==n.firstChild.namespaceURI}}function P(e,n){return e&&O(e)?function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this,n)) -return r.uselessComment=n.createComment(""),r}return(0,t.inherits)(n,e),n.prototype.insertHTMLBefore=function(t,n,r){if(null===r)return e.prototype.insertHTMLBefore.call(this,t,n,r) -var i=!1,o=n?n.previousSibling:t.lastChild -o&&o instanceof Text&&(i=!0,t.insertBefore(this.uselessComment,n)) -var s=e.prototype.insertHTMLBefore.call(this,t,n,r) -return i&&t.removeChild(this.uselessComment),s},n}(n):n}function O(e){var t=e.createElement("div") -return t.innerHTML="first",t.insertAdjacentHTML("beforeend","second"),2!==t.childNodes.length}function R(e,t,n){for(var r=e.firstChild,i=null,o=r;o;)i=o,o=o.nextSibling,t.insertBefore(i,n) -return[r,i]}function N(e,t,n,r){var i=t,o=n,s=o?o.previousSibling:i.lastChild,a=void 0 -if(null===r||""===r)return new He(i,null,null) -null===o?(i.insertAdjacentHTML("beforeend",r),a=i.lastChild):o instanceof HTMLElement?(o.insertAdjacentHTML("beforebegin",r),a=o.previousSibling):(i.insertBefore(e,o),e.insertAdjacentHTML("beforebegin",r),a=e.previousSibling,i.removeChild(e)) -var u=s?s.nextSibling:i.firstChild -return new He(i,u,a)}function M(e,t){return-1!==e.indexOf(t)}function L(e,t){return(null===e||M(tt,e))&&M(rt,t)}function D(e,t){return null!==e&&(M(nt,e)&&M(it,t))}function z(e,t){return L(e,t)||D(e,t)}function F(e,t,n,r){var i,o=null -if(null===r||void 0===r)return r -if(d(r))return r.toHTML() -o=t?t.tagName.toUpperCase():null -var s=c(r) -return L(o,n)&&(i=e.protocolForURL(s),M(et,i))?"unsafe:"+s:D(o,n)?"unsafe:"+s:s}function B(e,t){var n,r=void 0,i=void 0 -return t in e?(i=t,r="prop"):(n=t.toLowerCase(),n in e?(r="prop",i=n):(r="attr",i=t)),"prop"!==r||"style"!==i.toLowerCase()&&!H(e.tagName,i)||(r="attr"),{normalized:i,type:r}}function H(e,t){var n=ot[e.toUpperCase()] -return n&&n[t.toLowerCase()]||!1}function U(e,t,n){var r=e.tagName,i=e.namespaceURI,o={element:e,name:t,namespace:n} -if(i===qe)return q(r,t,o) -var s=B(e,t),a=s.type,u=s.normalized -return"attr"===a?q(r,u,o):V(r,u,o)}function q(e,t,n){return z(e,t)?new lt(n):new at(n)}function V(e,t,n){return z(e,t)?new ct(t,n):G(e,t)?new ht(t,n):W(e,t)?new dt(t,n):new ut(t,n)}function W(e,t){return"OPTION"===e&&"selected"===t}function G(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}function Y(e){return!1===e||void 0===e||null===e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}function K(e){if(null===e||void 0===e)return!0 -switch(typeof e){case"boolean":case"undefined":return!0 -case"number":return e%1==0&&!(Math.abs(e)>xt) -default:return!1}}function Q(e){return e<0?Math.abs(e)<<3|4:e<<3|0}function Z(e){switch(typeof e){case"number":return Q(e) -case"boolean":return e?11:3 -case"object":return 19 -case"undefined":return 27 -default:throw(0,n.unreachable)()}}function X(e){switch(7&e){case 0:return e>>3 -case 4:return-(e>>3) -default:throw(0,n.unreachable)()}}function J(e){switch(e){case 3:return!1 -case 11:return!0 -case 19:return null -case 27:return -default:return X(e)}}function $(e){return 3===e.nodeType}function ee(e){return 8===e.nodeType}function te(e){var t=e.nodeValue.match(/^%\+b:(\d+)%$/) -return t&&t[1]?Number(t[1]):null}function ne(e){var t=e.nodeValue.match(/^%\-b:(\d+)%$/) -return t&&t[1]?Number(t[1]):null}function re(e){return 1===e.nodeType}function ie(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function oe(e){return 8===e.nodeType&&"%|%"===e.nodeValue}function se(e){return 8===e.nodeType&&"% %"===e.nodeValue}function ae(e,t){return e.namespaceURI===qe?e.tagName===t:e.tagName===t.toUpperCase()}function ue(e,t){var n,r -for(n=0;n<e.length;n++)if(r=e[n],r.name===t)return r}e.hasCapability=e.capabilityFlagsFrom=e.Cursor=e.ConcreteBounds=e.RehydrateBuilder=e.rehydrationBuilder=e.clientBuilder=e.NewElementBuilder=e.normalizeProperty=e.insertHTMLBefore=e.isWhitespace=e.DOMTreeConstruction=e.IDOMChanges=e.SVG_NAMESPACE=e.DOMChanges=e.curry=e.isCurriedComponentDefinition=e.CurriedComponentDefinition=e.MINIMAL_CAPABILITIES=e.DEFAULT_CAPABILITIES=e.DefaultEnvironment=e.Environment=e.Scope=e.EMPTY_ARGS=e.DynamicAttribute=e.SimpleDynamicAttribute=e.RenderResult=e.UpdatingVM=e.LowLevelVM=e.getDynamicVar=e.resetDebuggerCallback=e.setDebuggerCallback=e.ConditionalReference=e.PrimitiveReference=e.UNDEFINED_REFERENCE=e.NULL_REFERENCE=e.renderMain=void 0 -var ce=function(){function e(){this.evaluateOpcode=(0,n.fillNulls)(98).slice()}return e.prototype.add=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"syscall" -this.evaluateOpcode[e]={syscall:"syscall"===n,evaluate:t}},e.prototype.debugBefore=function(){return{sp:void 0,state:void 0}},e.prototype.debugAfter=function(e,t,n,r){r.sp,r.state},e.prototype.evaluate=function(e,t,n){var r=this.evaluateOpcode[n] -r.syscall?r.evaluate(e,t):r.evaluate(e.inner,t)},e}(),le=new ce,he=function(e){function n(){var n=(0,t.possibleConstructorReturn)(this,e.apply(this,arguments)) -return n.next=null,n.prev=null,n}return(0,t.inherits)(n,e),n}(function(){(0,n.initializeGuid)(this)}),de=function(e){function n(n){return(0,t.possibleConstructorReturn)(this,e.call(this,n))}return(0,t.inherits)(n,e),n.create=function(e){return void 0===e?ge:null===e?me:!0===e?ve:!1===e?ye:"number"==typeof e?new fe(e):new pe(e)},n.prototype.get=function(){return ge},n}(r.ConstReference),pe=function(e){function n(){var n=(0,t.possibleConstructorReturn)(this,e.apply(this,arguments)) -return n.lengthReference=null,n}return(0,t.inherits)(n,e),n.prototype.get=function(t){var n -return"length"===t?(n=this.lengthReference,null===n&&(n=this.lengthReference=new fe(this.inner.length)),n):e.prototype.get.call(this,t)},n}(de),fe=function(e){function n(n){return(0,t.possibleConstructorReturn)(this,e.call(this,n))}return(0,t.inherits)(n,e),n}(de),ge=new fe(void 0),me=new fe(null),ve=new fe(!0),ye=new fe(!1),be=function(){function e(e){this.inner=e,this.tag=e.tag}return e.prototype.value=function(){return this.toBool(this.inner.value())},e.prototype.toBool=function(e){return!!e},e}(),Ce=function(e){function n(n){var i=(0,t.possibleConstructorReturn)(this,e.call(this)) -return i.parts=n,i.tag=(0,r.combineTagged)(n),i}return(0,t.inherits)(n,e),n.prototype.compute=function(){var e,t,n=new Array -for(e=0;e<this.parts.length;e++)null!==(t=this.parts[e].value())&&void 0!==t&&(n[e]=s(t)) -return n.length>0?n.join(""):null},n}(r.CachedReference) -le.add(1,function(e,t){var n=t.op1,r=e.stack,o=e.constants.resolveHandle(n),s=r.pop(),a=o(e,s) -e.loadValue(i.Register.v0,a)}),le.add(6,function(e,t){var n=t.op1,r=e.referenceForSymbol(n) -e.stack.push(r)}),le.add(4,function(e,t){var n=t.op1,r=e.stack.pop() -e.scope().bindSymbol(n,r)}),le.add(5,function(e,t){var n=t.op1,r=e.stack.pop(),i=e.stack.pop(),o=e.stack.pop(),s=o?[r,i,o]:null -e.scope().bindBlock(n,s)}),le.add(96,function(e,t){var n=t.op1,r=e.constants.getString(n),i=e.scope().getPartialMap(),o=i[r] -void 0===o&&(o=e.getSelf().get(r)),e.stack.push(o)}),le.add(20,function(e,t){var n=t.op1,r=t.op2 -e.pushRootScope(n,!!r)}),le.add(7,function(e,t){var n=t.op1,r=e.constants.getString(n),i=e.stack.pop() -e.stack.push(i.get(r))}),le.add(8,function(e,t){var n=t.op1,r=e.stack,i=e.scope().getBlock(n) -i?(r.push(i[2]),r.push(i[1]),r.push(i[0])):(r.push(null),r.push(null),r.push(null))}),le.add(9,function(e,t){var n=t.op1,r=!!e.scope().getBlock(n) -e.stack.push(r?ve:ye)}),le.add(10,function(e){e.stack.pop(),e.stack.pop() -var t=e.stack.pop(),n=t&&t.parameters.length -e.stack.push(n?ve:ye)}),le.add(11,function(e,t){var n,r,i=t.op1,o=new Array(i) -for(n=i;n>0;n--)r=n-1,o[r]=e.stack.pop() -e.stack.push(new Ce(o))}) -var Ae="CURRIED COMPONENT DEFINITION [id=6f00feb9-a0ef-4547-99ea-ac328f80acea]",_e=function(){function e(e,t){this.inner=e,this.args=t,this[Ae]=!0}return e.prototype.unwrap=function(e){e.realloc(this.offset) -for(var t,n,r,i=this;;){if(t=i,n=t.args,r=t.inner,n&&(e.positional.prepend(n.positional),e.named.merge(n.named)),!a(r))return r -i=r}},(0,t.createClass)(e,[{key:"offset",get:function(){var e=this.inner,t=this.args,n=t?t.positional.length:0 -return a(e)?n+e.offset:n}}]),e}(),Ie=function(e){function n(n,r,i){var o=(0,t.possibleConstructorReturn)(this,e.call(this)) -return o.node=n,o.reference=r,o.lastValue=i,o.type="dynamic-text",o.tag=r.tag,o.lastRevision=o.tag.value(),o}return(0,t.inherits)(n,e),n.prototype.evaluate=function(){var e=this.reference,t=this.tag -t.validate(this.lastRevision)||(this.lastRevision=t.value(),this.update(e.value()))},n.prototype.update=function(e){var t,n=this.lastValue -if(e!==n){var r=void 0 -r=h(e)?"":g(e)?e:String(e),r!==n&&(t=this.node,t.nodeValue=this.lastValue=r)}},n}(he),we=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.create=function(e){return new n(e)},n.prototype.toBool=function(e){return a(e)},n}(be),xe=function(){function e(e){this.inner=e,this.tag=e.tag}return e.prototype.value=function(){var e=this.inner.value() -return l(e)?1:u(e)?0:d(e)?3:f(e)?4:p(e)?5:1},e}() -le.add(28,function(e){var t=e.stack.pop(),n=t.value(),r=h(n)?"":String(n) -e.elements().appendDynamicHTML(r)}),le.add(29,function(e){var t=e.stack.pop(),n=t.value().toHTML(),r=h(n)?"":n -e.elements().appendDynamicHTML(r)}),le.add(32,function(e){var t=e.stack.pop(),n=t.value(),i=h(n)?"":String(n),o=e.elements().appendDynamicText(i);(0,r.isConst)(t)||e.updateWith(new Ie(o,t,i))}),le.add(30,function(e){var t=e.stack.pop(),n=t.value() -e.elements().appendDynamicFragment(n)}),le.add(31,function(e){var t=e.stack.pop(),n=t.value() -e.elements().appendDynamicNode(n)}),le.add(22,function(e){return e.pushChildScope()}),le.add(23,function(e){return e.popScope()}),le.add(44,function(e){return e.pushDynamicScope()}),le.add(45,function(e){return e.popDynamicScope()}),le.add(12,function(e,t){var n=t.op1 -e.stack.push(e.constants.getOther(n))}),le.add(13,function(e,t){var n=t.op1,r=e.stack,i=n>>3 -switch(7&n){case 0:r.push(i) -break -case 1:r.push(e.constants.getNumber(i)) -break -case 2:r.push(e.constants.getString(i)) -break -case 3:r.pushEncodedImmediate(n) -break -case 4:case 5:r.push(e.constants.getNumber(i))}}),le.add(14,function(e){var t=e.stack -t.push(de.create(t.pop()))}),le.add(15,function(e){var t=e.stack -t.push(t.peek().value())}),le.add(16,function(e,t){var n=t.op1,r=t.op2,i=e.fetchValue(n)-r -e.stack.dup(i)}),le.add(17,function(e,t){var n=t.op1 -e.stack.pop(n)}),le.add(18,function(e,t){var n=t.op1 -e.load(n)}),le.add(19,function(e,t){var n=t.op1 -e.fetch(n)}),le.add(43,function(e,t){var n=t.op1,r=e.constants.getArray(n) -e.bindDynamicScope(r)}),le.add(61,function(e,t){var n=t.op1 -e.enter(n)}),le.add(62,function(e){e.exit()}),le.add(48,function(e,t){var n=t.op1 -e.stack.push(e.constants.getSerializable(n))}),le.add(47,function(e){e.stack.push(e.scope())}),le.add(46,function(e){var t=e.stack,n=t.pop() -n?t.pushSmi(n.compile()):t.pushNull()}),le.add(51,function(e){var t,n,r,i=e.stack,o=i.pop(),s=i.pop(),a=i.pop(),u=i.pop() -if(null===a)return e.pushFrame(),void e.pushScope(s) -var c=s -if(t=a.parameters,(n=t.length)>0)for(c=c.child(),r=0;r<n;r++)c.bindSymbol(t[r],u.at(r)) -e.pushFrame(),e.pushScope(c),e.call(o)}),le.add(53,function(e,t){var n,i=t.op1,o=e.stack.pop();(0,r.isConst)(o)?o.value()&&e.goto(i):(n=new r.ReferenceCache(o),n.peek()&&e.goto(i),e.updateWith(new ke(n)))}),le.add(54,function(e,t){var n,i=t.op1,o=e.stack.pop();(0,r.isConst)(o)?o.value()||e.goto(i):(n=new r.ReferenceCache(o),n.peek()||e.goto(i),e.updateWith(new ke(n)))}),le.add(55,function(e,t){var n=t.op1,r=t.op2 -e.stack.peek()===r&&e.goto(n)}),le.add(56,function(e){var t=e.stack.peek();(0,r.isConst)(t)||e.updateWith(ke.initialize(new r.ReferenceCache(t)))}),le.add(63,function(e){var t=e.env,n=e.stack -n.push(t.toConditionalReference(n.pop()))}) -var ke=function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this)) -return r.type="assert",r.tag=n.tag,r.cache=n,r}return(0,t.inherits)(n,e),n.initialize=function(e){var t=new n(e) -return e.peek(),t},n.prototype.evaluate=function(e){var t=this.cache;(0,r.isModified)(t.revalidate())&&e.throw()},n}(he),je=function(e){function n(n,r){var i=(0,t.possibleConstructorReturn)(this,e.call(this)) -return i.target=r,i.type="jump-if-not-modified",i.tag=n,i.lastRevision=n.value(),i}return(0,t.inherits)(n,e),n.prototype.evaluate=function(e){var t=this.tag,n=this.target,r=this.lastRevision -!e.alwaysRevalidate&&t.validate(r)&&e.goto(n)},n.prototype.didModify=function(){this.lastRevision=this.tag.value()},n}(he),Ee=function(e){function n(n){var i=(0,t.possibleConstructorReturn)(this,e.call(this)) -return i.target=n,i.type="did-modify",i.tag=r.CONSTANT_TAG,i}return(0,t.inherits)(n,e),n.prototype.evaluate=function(){this.target.didModify()},n}(he),Se=function(){function e(e){this.tag=r.CONSTANT_TAG,this.type="label",this.label=null,this.prev=null,this.next=null,(0,n.initializeGuid)(this),this.label=e}return e.prototype.evaluate=function(){},e.prototype.inspect=function(){return this.label+" ["+this._guid+"]"},e}() -le.add(26,function(e,t){var n=t.op1 -e.elements().appendText(e.constants.getString(n))}),le.add(27,function(e,t){var n=t.op1 -e.elements().appendComment(e.constants.getString(n))}),le.add(33,function(e,t){var n=t.op1 -e.elements().openElement(e.constants.getString(n))}),le.add(34,function(e){var t=e.stack.pop().value() -e.elements().openElement(t)}),le.add(41,function(e){var t,n,i=e.stack.pop(),o=e.stack.pop(),s=e.stack.pop(),a=void 0,u=void 0,c=s.value();(0,r.isConst)(i)?a=i.value():(t=new r.ReferenceCache(i),a=t.peek(),e.updateWith(new ke(t))),(0,r.isConst)(o)?u=o.value():(n=new r.ReferenceCache(o),u=n.peek(),e.updateWith(new ke(n))),e.elements().pushRemoteElement(a,c,u)}),le.add(42,function(e){e.elements().popRemoteElement()}),le.add(38,function(e){var t=e.fetchValue(i.Register.t0) -t&&(t.flush(e),e.loadValue(i.Register.t0,null)),e.elements().flushElement()}),le.add(39,function(e){e.elements().closeElement()}),le.add(40,function(e,t){var n=t.op1,i=e.constants.resolveHandle(n),o=e.stack,s=o.pop(),a=e.elements(),u=a.constructing,c=a.updateOperations,l=e.dynamicScope(),h=i.create(u,s,l,c) -e.env.scheduleInstallModifier(h,i) -var d=i.getDestructor(h) -d&&e.newDestroyable(d) -var p=i.getTag(h);(0,r.isConstTag)(p)||e.updateWith(new Te(p,i,h))}) -var Te=function(e){function n(n,r,i){var o=(0,t.possibleConstructorReturn)(this,e.call(this)) -return o.tag=n,o.manager=r,o.modifier=i,o.type="update-modifier",o.lastUpdated=n.value(),o}return(0,t.inherits)(n,e),n.prototype.evaluate=function(e){var t=this.manager,n=this.modifier,r=this.tag,i=this.lastUpdated -r.validate(i)||(e.env.scheduleUpdateModifier(n,t),this.lastUpdated=r.value())},n}(he) -le.add(35,function(e,t){var n=t.op1,r=t.op2,i=t.op3,o=e.constants.getString(n),s=e.constants.getString(r),a=i?e.constants.getString(i):null -e.elements().setStaticAttribute(o,s,a)}),le.add(36,function(e,t){var n=t.op1,i=t.op2,o=t.op3,s=e.constants.getString(n),a=e.stack.pop(),u=a.value(),c=o?e.constants.getString(o):null,l=e.elements().setDynamicAttribute(s,u,!!i,c);(0,r.isConst)(a)||e.updateWith(new Pe(a,l))}) -var Pe=function(e){function n(n,r){var i=(0,t.possibleConstructorReturn)(this,e.call(this)) -return i.reference=n,i.attribute=r,i.type="patch-element",i.tag=n.tag,i.lastRevision=i.tag.value(),i}return(0,t.inherits)(n,e),n.prototype.evaluate=function(e){var t=this.attribute,n=this.reference,r=this.tag -r.validate(this.lastRevision)||(this.lastRevision=r.value(),t.update(n.value(),e.env))},n}(he),Oe=function(){function e(e,t,n,r){this.inner=e,this.resolver=t,this.meta=n,this.args=r,this.tag=e.tag,this.lastValue=null,this.lastDefinition=null}return e.prototype.value=function(){var e,t,n=this.inner,r=this.lastValue,i=n.value() -if(i===r)return this.lastDefinition -var o=null -return a(i)?o=i:"string"==typeof i&&i&&(e=this.resolver,t=this.meta,o=m(e,i,t)),o=this.curry(o),this.lastValue=i,this.lastDefinition=o,o},e.prototype.get=function(){return ge},e.prototype.curry=function(e){var t=this.args -return!t&&a(e)?e:e?new _e(e,t):null},e}(),Re=function(){function e(e){this.list=e,this.tag=(0,r.combineTagged)(e),this.list=e}return e.prototype.value=function(){var e,t,n=[],r=this.list -for(t=0;t<r.length;t++)(e=c(r[t].value()))&&n.push(e) -return 0===n.length?null:n.join(" ")},e}() -le.add(69,function(e){var t=e.stack,n=t.pop() -t.push(we.create(n))}),le.add(70,function(e){var t=e.stack,n=t.peek() -t.push(new xe(n))}),le.add(71,function(e,t){var n=t.op1,r=e.stack,o=r.pop(),s=r.pop(),a=e.constants.getSerializable(n),u=e.constants.resolver -e.loadValue(i.Register.v0,new Oe(o,u,a,s))}),le.add(72,function(e,t){var n=t.op1,r=e.constants.resolveHandle(n),i=r.manager,o=v(i.getCapabilities(r.state)) -e.stack.push({definition:r,manager:i,capabilities:o,state:null,handle:null,table:null,lookup:null})}),le.add(75,function(e,t){var r,o,s=t.op1,u=e.stack,c=u.pop().value(),l=e.constants.getSerializable(s) -e.loadValue(i.Register.t1,null) -var h=void 0 -if("string"==typeof c)r=e.constants.resolver,o=m(r,c,l),h=o -else{if(!a(c))throw(0,n.unreachable)() -h=c}u.push(h)}),le.add(73,function(e){var t=e.stack,n=t.pop(),r=void 0,i=void 0 -a(n)?i=r=null:(i=n.manager,r=v(i.getCapabilities(n.state))),t.push({definition:n,capabilities:r,manager:i,state:null,handle:null,table:null})}),le.add(74,function(e,t){t.op1 -var r=e.stack,i=r.pop().value(),o=void 0 -if(!a(i))throw(0,n.unreachable)() -o=i,r.push(o)}),le.add(76,function(e,t){var n=t.op1,r=t.op2,i=e.stack,o=e.constants.getStringArray(n),s=[] -4&r&&s.push("main"),2&r&&s.push("else"),1&r&&s.push("attrs"),e.args.setup(i,o,s,r>>4,!!(8&r)),i.push(e.args)}),le.add(77,function(e){var t=e.stack -t.push(e.args.empty(t))}),le.add(80,function(e){var t=e.stack,n=t.pop(),r=n.capture() -t.push(r)}),le.add(79,function(e,t){var n,r,i,o,s,u,c,l=t.op1,h=e.stack,d=e.fetchValue(l),p=h.pop(),f=d.definition -a(f)&&(f=b(d,f,p)) -var g=f,m=g.manager,v=g.state -if(!0!==y(d.capabilities,4))return void h.push(p) -var C=p.blocks.values,A=p.blocks.names,_=m.prepareArgs(v,p) -if(_){for(p.clear(),n=0;n<C.length;n++)h.push(C[n]) -for(r=_.positional,i=_.named,o=r.length,s=0;s<o;s++)h.push(r[s]) -for(u=Object.keys(i),c=0;c<u.length;c++)h.push(i[u[c]]) -p.setup(h,u,A,o,!0)}h.push(p)}),le.add(81,function(e,t){var n=t.op1,i=t.op2,o=e.fetchValue(i),s=o.definition,a=o.manager,u=o.capabilities=v(a.getCapabilities(s.state)),c=null -y(u,64)&&(c=e.dynamicScope()) -var l=null -y(u,8)&&(l=e.stack.peek()) -var h=null -y(u,128)&&(h=e.getSelf()) -var d=a.create(e.env,s.state,l,c,h,!!(1&n)) -o.state=d -var p=a.getTag(d) -y(u,256)&&!(0,r.isConstTag)(p)&&e.updateWith(new Me(p,d,a,c))}),le.add(82,function(e,t){var n=t.op1,r=e.fetchValue(n),i=r.manager,o=r.state,s=i.getDestructor(o) -s&&e.newDestroyable(s)}),le.add(91,function(e){e.beginCacheGroup(),e.elements().pushSimpleBlock()}),le.add(83,function(e){e.loadValue(i.Register.t0,new Ne)}),le.add(37,function(e,t){var n=t.op1,r=t.op2,o=t.op3,s=e.constants.getString(n),a=e.stack.pop(),u=o?e.constants.getString(o):null -e.fetchValue(i.Register.t0).setAttribute(s,a,!!r,u)}) -var Ne=function(){function e(){this.attributes=(0,n.dict)(),this.classes=[]}return e.prototype.setAttribute=function(e,t,n,r){"class"===e&&this.classes.push(t),this.attributes[e]={value:t,namespace:r,trusting:n}},e.prototype.flush=function(e){var t,n,i,o,s,a,u -for(var c in this.attributes){t=this.attributes[c] -var n=t.value,i=t.namespace,o=t.trusting -"class"===c&&(n=new Re(this.classes)),"type"!==c&&(s=e.elements().setDynamicAttribute(c,n.value(),o,i),(0,r.isConst)(n)||e.updateWith(new Pe(n,s)))}"type"in this.attributes&&(a=this.attributes.type,n=a.value,i=a.namespace,o=a.trusting,u=e.elements().setDynamicAttribute("type",n.value(),o,i),(0,r.isConst)(n)||e.updateWith(new Pe(n,u)))},e}() -le.add(93,function(e,t){var n=t.op1,r=e.fetchValue(n),o=r.definition,s=r.state,a=o.manager,u=e.fetchValue(i.Register.t0) -a.didCreateElement(s,e.elements().expectConstructing("DidCreateElementOpcode#evaluate"),u)}),le.add(84,function(e,t){var n=t.op1,r=e.fetchValue(n),i=r.definition,o=r.state,s=i.manager -e.stack.push(s.getSelf(o))}),le.add(85,function(e,t){var n=t.op1,r=e.fetchValue(n),i=r.definition,o=r.state,s=i.manager -e.stack.push(s.getTagName(o))}),le.add(86,function(e,t){var r=t.op1,i=e.fetchValue(r),o=i.manager,s=i.definition,a=e.constants.resolver,u=e.stack,c=i.state,l=i.capabilities,h=s.state,d=void 0 -if(C(l))d=o.getLayout(h,a) -else{if(!A(l))throw(0,n.unreachable)() -d=o.getDynamicLayout(c,a)}u.push(d.symbolTable),u.push(d.handle)}),le.add(68,function(e,t){var n=t.op1,r=e.stack.pop(),i=e.stack.pop(),o=r.manager,s=v(o.getCapabilities(r.state)),a={definition:r,manager:o,capabilities:s,state:null,handle:i.handle,table:i.symbolTable,lookup:null} -e.loadValue(n,a)}),le.add(89,function(e,t){var n=t.op1,r=e.stack,i=r.pop(),o=r.pop(),s=e.fetchValue(n) -s.handle=i,s.table=o}),le.add(21,function(e,t){var n=t.op1,r=e.fetchValue(n).table.symbols -e.pushRootScope(r.length+1,!0)}),le.add(87,function(e,t){var r,i=t.op1,o=e.fetchValue(i) -o.table.hasEval&&(r=o.lookup=(0,n.dict)(),e.scope().bindEvalScope(r))}),le.add(2,function(e,t){var n,r,i,o,s=t.op1,a=e.fetchValue(s),u=e.scope(),c=e.stack.peek(),l=c.named.atNames -for(n=l.length-1;n>=0;n--)r=l[n],i=a.table.symbols.indexOf(l[n]),o=c.named.get(r,!1),-1!==i&&u.bindSymbol(i+1,o),a.lookup&&(a.lookup[r]=o)}),le.add(3,function(e,t){var n=t.op1,r=e.fetchValue(n),i=e.stack.peek(),o=i.blocks -_("&attrs","attrs",r,o,e),_("&inverse","else",r,o,e),_("&default","main",r,o,e)}),le.add(90,function(e,t){var n=t.op1,r=e.fetchValue(n) -e.call(r.handle)}),le.add(94,function(e,t){var n=t.op1,r=e.fetchValue(n),i=r.manager,o=r.state,s=e.elements().popBlock() -i.didRenderLayout(o,s),e.env.didCreate(o,i),e.updateWith(new Le(i,o,s))}),le.add(92,function(e){e.commitCacheGroup()}) -var Me=function(e){function n(n,r,i,o){var s=(0,t.possibleConstructorReturn)(this,e.call(this)) -return s.tag=n,s.component=r,s.manager=i,s.dynamicScope=o,s.type="update-component",s}return(0,t.inherits)(n,e),n.prototype.evaluate=function(){var e=this.component,t=this.manager,n=this.dynamicScope -t.update(e,n)},n}(he),Le=function(e){function n(n,i,o){var s=(0,t.possibleConstructorReturn)(this,e.call(this)) -return s.manager=n,s.component=i,s.bounds=o,s.type="did-update-layout",s.tag=r.CONSTANT_TAG,s}return(0,t.inherits)(n,e),n.prototype.evaluate=function(e){var t=this.manager,n=this.component,r=this.bounds -t.didUpdateLayout(n,r),e.env.didUpdate(n,t)},n}(he),De=I,ze=function(){function e(e,t,r){var i,o,s,a -for(this.scope=e,this.locals=(0,n.dict)(),i=0;i<r.length;i++)o=r[i],s=t[o-1],a=e.getSymbol(o),this.locals[s]=a}return e.prototype.get=function(e){var t=this.scope,n=this.locals,r=e.split("."),i=e.split("."),o=i[0],s=i.slice(1),a=t.getEvalScope(),u=void 0 -return"this"===o?u=t.getSelf():n[o]?u=n[o]:0===o.indexOf("@")&&a[o]?u=a[o]:(u=this.scope.getSelf(),s=r),s.reduce(function(e,t){return e.get(t)},u)},e}() -le.add(97,function(e,t){var n=t.op1,r=t.op2,i=e.constants.getStringArray(n),o=e.constants.getArray(r),s=new ze(e.scope(),i,o) -De(e.getSelf().value(),function(e){return s.get(e).value()})}),le.add(95,function(e,t){var n,r,i,o,s,a,u,c,l,h,d,p,f,g=t.op1,m=t.op2,v=t.op3,y=e.constants,b=e.constants.resolver,C=e.stack,A=C.pop().value(),_=y.getSerializable(g),I=y.getStringArray(m),w=y.getArray(v),x=b.lookupPartial(A,_),k=b.resolve(x),j=k.getPartial(),E=j.symbolTable,S=j.handle -for(n=E.symbols,r=e.scope(),i=e.pushRootScope(n.length,!1),o=r.getEvalScope(),i.bindCallerScope(r.getCallerScope()),i.bindEvalScope(o),i.bindSelf(r.getSelf()),s=Object.create(r.getPartialMap()),a=0;a<w.length;a++)u=w[a],c=I[u-1],l=r.getSymbol(u),s[c]=l -if(o)for(h=0;h<n.length;h++)d=n[h],p=h+1,void 0!==(f=o[d])&&i.bind(p,f) -i.bindPartialMap(s),e.pushFrame(),e.call(S)}) -var Fe=function(){function e(e){this.tag=e.tag,this.artifacts=e}return e.prototype.value=function(){return!this.artifacts.isEmpty()},e}() -le.add(66,function(e){var t=e.stack,n=t.pop(),i=t.pop(),o=e.env.iterableFor(n,i.value()),s=new r.ReferenceIterator(o) -t.push(s),t.push(new Fe(s.artifacts))}),le.add(64,function(e,t){var n=t.op1 -e.enterList(n)}),le.add(65,function(e){e.exitList()}),le.add(67,function(e,t){var n,r=t.op1,i=e.stack,o=i.peek().next() -o?(n=e.iterate(o.memo,o.value),e.enterItem(o.key,n)):e.goto(r)}) -var Be=function(e,t){this.element=e,this.nextSibling=t},He=function(){function e(e,t,n){this.parentNode=e,this.first=t,this.last=n}return e.prototype.parentElement=function(){return this.parentNode},e.prototype.firstNode=function(){return this.first},e.prototype.lastNode=function(){return this.last},e}(),Ue=function(){function e(e,t){this.parentNode=e,this.node=t}return e.prototype.parentElement=function(){return this.parentNode},e.prototype.firstNode=function(){return this.node},e.prototype.lastNode=function(){return this.node},e}(),qe="http://www.w3.org/2000/svg",Ve={foreignObject:1,desc:1,title:1},We=Object.create(null);["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach(function(e){return We[e]=1}) -var Ge,Ye=/[\t-\r \xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]/,Ke="undefined"==typeof document?null:document,Qe=function(){function e(e){this.document=e,this.setupUselessElement()}return e.prototype.setupUselessElement=function(){this.uselessElement=this.document.createElement("div")},e.prototype.createElement=function(e,t){var n=void 0,r=void 0 -if(t?(n=t.namespaceURI===qe||"svg"===e,r=Ve[t.tagName]):(n="svg"===e,r=!1),n&&!r){if(We[e])throw new Error("Cannot create a "+e+" inside an SVG context") -return this.document.createElementNS(qe,e)}return this.document.createElement(e)},e.prototype.insertBefore=function(e,t,n){e.insertBefore(t,n)},e.prototype.insertHTMLBefore=function(e,t,n){return N(this.uselessElement,e,t,n)},e.prototype.createTextNode=function(e){return this.document.createTextNode(e)},e.prototype.createComment=function(e){return this.document.createComment(e)},e}();(function(e){var n=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.createElementNS=function(e,t){return this.document.createElementNS(e,t)},n.prototype.setAttribute=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null -r?e.setAttributeNS(r,t,n):e.setAttribute(t,n)},n}(Qe) -e.TreeConstruction=n -var r=n -r=P(Ke,r),r=E(Ke,r,qe),e.DOMTreeConstruction=r})(Ge||(Ge={})) -var Ze=function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this,n)) -return r.document=n,r.namespace=null,r}return(0,t.inherits)(n,e),n.prototype.setAttribute=function(e,t,n){e.setAttribute(t,n)},n.prototype.removeAttribute=function(e,t){e.removeAttribute(t)},n.prototype.insertAfter=function(e,t,n){this.insertBefore(e,t,n.nextSibling)},n}(Qe),Xe=Ze -Xe=P(Ke,Xe),Xe=E(Ke,Xe,qe) -var Je=Xe,$e=Ge.DOMTreeConstruction,et=["javascript:","vbscript:"],tt=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],nt=["EMBED"],rt=["href","src","background","action"],it=["src"],ot={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},BUTTON:{form:!0}},st=function(e){this.attribute=e},at=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.set=function(e,t){var n,r,i,o=Y(t) -null!==o&&(n=this.attribute,r=n.name,i=n.namespace,e.__setAttribute(r,o,i))},n.prototype.update=function(e){var t=Y(e),n=this.attribute,r=n.element,i=n.name -null===t?r.removeAttribute(i):r.setAttribute(i,t)},n}(st),ut=function(e){function n(n,r){var i=(0,t.possibleConstructorReturn)(this,e.call(this,r)) -return i.normalizedName=n,i}return(0,t.inherits)(n,e),n.prototype.set=function(e,t){null!==t&&void 0!==t&&(this.value=t,e.__setProperty(this.normalizedName,t))},n.prototype.update=function(e){var t=this.attribute.element -this.value!==e&&(t[this.normalizedName]=this.value=e,null!==e&&void 0!==e||this.removeAttribute())},n.prototype.removeAttribute=function(){var e=this.attribute,t=e.element,n=e.namespace -n?t.removeAttributeNS(n,this.normalizedName):t.removeAttribute(this.normalizedName)},n}(st),ct=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.set=function(t,n,r){var i=this.attribute,o=i.element,s=i.name,a=F(r,o,s,n) -e.prototype.set.call(this,t,a,r)},n.prototype.update=function(t,n){var r=this.attribute,i=r.element,o=r.name,s=F(n,i,o,t) -e.prototype.update.call(this,s,n)},n}(ut),lt=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.set=function(t,n,r){var i=this.attribute,o=i.element,s=i.name,a=F(r,o,s,n) -e.prototype.set.call(this,t,a,r)},n.prototype.update=function(t,n){var r=this.attribute,i=r.element,o=r.name,s=F(n,i,o,t) -e.prototype.update.call(this,s,n)},n}(at),ht=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.set=function(e,t){e.__setProperty("value",c(t))},n.prototype.update=function(e){var t=this.attribute.element,n=t.value,r=c(e) -n!==r&&(t.value=r)},n}(ut),dt=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.set=function(e,t){null!==t&&void 0!==t&&!1!==t&&e.__setProperty("selected",!0)},n.prototype.update=function(e){var t=this.attribute.element -t.selected=!!e},n}(ut),pt=function(){function e(e,t,n,r){this.slots=e,this.callerScope=t,this.evalScope=n,this.partialMap=r}return e.root=function(t){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=new Array(r+1) -for(n=0;n<=r;n++)i[n]=ge -return new e(i,null,null,null).init({self:t})},e.sized=function(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,r=new Array(n+1) -for(t=0;t<=n;t++)r[t]=ge -return new e(r,null,null,null)},e.prototype.init=function(e){var t=e.self -return this.slots[0]=t,this},e.prototype.getSelf=function(){return this.get(0)},e.prototype.getSymbol=function(e){return this.get(e)},e.prototype.getBlock=function(e){var t=this.get(e) -return t===ge?null:t},e.prototype.getEvalScope=function(){return this.evalScope},e.prototype.getPartialMap=function(){return this.partialMap},e.prototype.bind=function(e,t){this.set(e,t)},e.prototype.bindSelf=function(e){this.set(0,e)},e.prototype.bindSymbol=function(e,t){this.set(e,t)},e.prototype.bindBlock=function(e,t){this.set(e,t)},e.prototype.bindEvalScope=function(e){this.evalScope=e},e.prototype.bindPartialMap=function(e){this.partialMap=e},e.prototype.bindCallerScope=function(e){this.callerScope=e},e.prototype.getCallerScope=function(){return this.callerScope},e.prototype.child=function(){return new e(this.slots.slice(),this.callerScope,this.evalScope,this.partialMap)},e.prototype.get=function(e){if(e>=this.slots.length)throw new RangeError("BUG: cannot get $"+e+" from scope; length="+this.slots.length) -return this.slots[e]},e.prototype.set=function(e,t){if(e>=this.slots.length)throw new RangeError("BUG: cannot get $"+e+" from scope; length="+this.slots.length) -this.slots[e]=t},e}(),ft=function(){function e(){this.scheduledInstallManagers=[],this.scheduledInstallModifiers=[],this.scheduledUpdateModifierManagers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.createdManagers=[],this.updatedComponents=[],this.updatedManagers=[],this.destructors=[]}return e.prototype.didCreate=function(e,t){this.createdComponents.push(e),this.createdManagers.push(t)},e.prototype.didUpdate=function(e,t){this.updatedComponents.push(e),this.updatedManagers.push(t)},e.prototype.scheduleInstallModifier=function(e,t){this.scheduledInstallManagers.push(t),this.scheduledInstallModifiers.push(e)},e.prototype.scheduleUpdateModifier=function(e,t){this.scheduledUpdateModifierManagers.push(t),this.scheduledUpdateModifiers.push(e)},e.prototype.didDestroy=function(e){this.destructors.push(e)},e.prototype.commit=function(){var e,t,n,r,i,o,s,a,u,c,l,h,d,p=this.createdComponents,f=this.createdManagers -for(e=0;e<p.length;e++)t=p[e],n=f[e],n.didCreate(t) -var g=this.updatedComponents,m=this.updatedManagers -for(r=0;r<g.length;r++)i=g[r],o=m[r],o.didUpdate(i) -var v=this.destructors -for(s=0;s<v.length;s++)v[s].destroy() -var y=this.scheduledInstallManagers,b=this.scheduledInstallModifiers -for(a=0;a<y.length;a++)u=y[a],c=b[a],u.install(c) -var C=this.scheduledUpdateModifierManagers,A=this.scheduledUpdateModifiers -for(l=0;l<C.length;l++)h=C[l],d=A[l],h.update(d)},e}(),gt=function(){function e(e){var t=e.appendOperations,n=e.updateOperations -this._transaction=null,this.appendOperations=t,this.updateOperations=n}return e.prototype.toConditionalReference=function(e){return new be(e)},e.prototype.getAppendOperations=function(){return this.appendOperations},e.prototype.getDOM=function(){return this.updateOperations},e.prototype.begin=function(){this._transaction=new ft},e.prototype.didCreate=function(e,t){this.transaction.didCreate(e,t)},e.prototype.didUpdate=function(e,t){this.transaction.didUpdate(e,t)},e.prototype.scheduleInstallModifier=function(e,t){this.transaction.scheduleInstallModifier(e,t)},e.prototype.scheduleUpdateModifier=function(e,t){this.transaction.scheduleUpdateModifier(e,t)},e.prototype.didDestroy=function(e){this.transaction.didDestroy(e)},e.prototype.commit=function(){var e=this.transaction -this._transaction=null,e.commit()},e.prototype.attributeFor=function(e,t){return U(e,t,arguments.length>3&&void 0!==arguments[3]?arguments[3]:null)},(0,t.createClass)(e,[{key:"transaction",get:function(){return this._transaction}}]),e}(),mt=function(e){function n(n){var r,i,o -return n||(r=window.document,i=new $e(r),o=new Ze(r),n={appendOperations:i,updateOperations:o}),(0,t.possibleConstructorReturn)(this,e.call(this,n))}return(0,t.inherits)(n,e),n}(gt),vt=function(){function e(e,t,n,r){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:-1,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:-1 -this.stack=e,this.heap=t,this.program=n,this.externs=r,this.pc=i,this.ra=o,this.currentOpSize=0}return e.prototype.pushFrame=function(){this.stack.pushSmi(this.ra),this.stack.pushSmi(this.stack.fp),this.stack.fp=this.stack.sp-1},e.prototype.popFrame=function(){this.stack.sp=this.stack.fp-1,this.ra=this.stack.getSmi(0),this.stack.fp=this.stack.getSmi(1)},e.prototype.pushSmallFrame=function(){this.stack.pushSmi(this.ra)},e.prototype.popSmallFrame=function(){this.ra=this.stack.popSmi()},e.prototype.goto=function(e){var t=this.pc+e-this.currentOpSize -this.pc=t},e.prototype.call=function(e){this.ra=this.pc,this.pc=this.heap.getaddr(e)},e.prototype.returnTo=function(e){var t=this.pc+e-this.currentOpSize -this.ra=t},e.prototype.return=function(){this.pc=this.ra},e.prototype.nextStatement=function(){var e=this.pc,t=this.program -if(-1===e)return null -var n=this.program.opcode(e),r=n.size,i=this.currentOpSize=r -return this.pc+=i,t.opcode(e)},e.prototype.evaluateOuter=function(e,t){this.evaluateInner(e,t)},e.prototype.evaluateInner=function(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)},e.prototype.evaluateMachine=function(e){switch(e.type){case 57:return this.pushFrame() -case 58:return this.popFrame() -case 59:return this.pushSmallFrame() -case 60:return this.popSmallFrame() -case 50:return this.call(e.op1) -case 49:return this.call(this.stack.popSmi()) -case 52:return this.goto(e.op1) -case 24:return this.return() -case 25:return this.returnTo(e.op1)}},e.prototype.evaluateSyscall=function(e,t){le.evaluate(t,e,e.type)},e}(),yt=function(){function e(e){this.node=e}return e.prototype.firstNode=function(){return this.node},e}(),bt=function(){function e(e){this.node=e}return e.prototype.lastNode=function(){return this.node},e}(),Ct=function(){function e(e,t,r){this.constructing=null,this.operations=null,this.cursorStack=new n.Stack,this.blockStack=new n.Stack,this.pushElement(t,r),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}return e.forInitialRender=function(e,t){var n=new this(e,t.element,t.nextSibling) -return n.pushSimpleBlock(),n},e.resume=function(e,t,n){var r=t.parentElement(),i=new this(e,r,n) -return i.pushSimpleBlock(),i.pushBlockTracker(t),i},e.prototype.expectConstructing=function(){return this.constructing},e.prototype.block=function(){return this.blockStack.current},e.prototype.popElement=function(){this.cursorStack.pop(),this.cursorStack.current},e.prototype.pushSimpleBlock=function(){return this.pushBlockTracker(new At(this.element))},e.prototype.pushUpdatableBlock=function(){return this.pushBlockTracker(new It(this.element))},e.prototype.pushBlockList=function(e){return this.pushBlockTracker(new wt(this.element,e))},e.prototype.pushBlockTracker=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.blockStack.current -return null!==n&&(n.newDestroyable(e),t||n.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e},e.prototype.popBlock=function(){return this.block().finalize(this),this.__closeBlock(),this.blockStack.pop()},e.prototype.__openBlock=function(){},e.prototype.__closeBlock=function(){},e.prototype.openElement=function(e){var t=this.__openElement(e) -return this.constructing=t,t},e.prototype.__openElement=function(e){return this.dom.createElement(e,this.element)},e.prototype.flushElement=function(){var e=this.element,t=this.constructing -this.__flushElement(e,t),this.constructing=null,this.operations=null,this.pushElement(t,null),this.didOpenElement(t)},e.prototype.__flushElement=function(e,t){this.dom.insertBefore(e,t,this.nextSibling)},e.prototype.closeElement=function(){this.willCloseElement(),this.popElement()},e.prototype.pushRemoteElement=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null -this.__pushRemoteElement(e,t,n)},e.prototype.__pushRemoteElement=function(e,t,n){this.pushElement(e,n) -var r=new _t(e) -this.pushBlockTracker(r,!0)},e.prototype.popRemoteElement=function(){this.popBlock(),this.popElement()},e.prototype.pushElement=function(e,t){this.cursorStack.push(new Be(e,t))},e.prototype.didAddDestroyable=function(e){this.block().newDestroyable(e)},e.prototype.didAppendBounds=function(e){return this.block().didAppendBounds(e),e},e.prototype.didAppendNode=function(e){return this.block().didAppendNode(e),e},e.prototype.didOpenElement=function(e){return this.block().openElement(e),e},e.prototype.willCloseElement=function(){this.block().closeElement()},e.prototype.appendText=function(e){return this.didAppendNode(this.__appendText(e))},e.prototype.__appendText=function(e){var t=this.dom,n=this.element,r=this.nextSibling,i=t.createTextNode(e) -return t.insertBefore(n,i,r),i},e.prototype.__appendNode=function(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e},e.prototype.__appendFragment=function(e){var t,n=e.firstChild -return n?(t=w(this.element,n,e.lastChild),this.dom.insertBefore(this.element,e,this.nextSibling),t):x(this.element,this.__appendComment(""))},e.prototype.__appendHTML=function(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)},e.prototype.appendDynamicHTML=function(e){var t=this.trustedContent(e) -this.didAppendBounds(t)},e.prototype.appendDynamicText=function(e){var t=this.untrustedContent(e) -return this.didAppendNode(t),t},e.prototype.appendDynamicFragment=function(e){var t=this.__appendFragment(e) -this.didAppendBounds(t)},e.prototype.appendDynamicNode=function(e){var t=this.__appendNode(e),n=x(this.element,t) -this.didAppendBounds(n)},e.prototype.trustedContent=function(e){return this.__appendHTML(e)},e.prototype.untrustedContent=function(e){return this.__appendText(e)},e.prototype.appendComment=function(e){return this.didAppendNode(this.__appendComment(e))},e.prototype.__appendComment=function(e){var t=this.dom,n=this.element,r=this.nextSibling,i=t.createComment(e) -return t.insertBefore(n,i,r),i},e.prototype.__setAttribute=function(e,t,n){this.dom.setAttribute(this.constructing,e,t,n)},e.prototype.__setProperty=function(e,t){this.constructing[e]=t},e.prototype.setStaticAttribute=function(e,t,n){this.__setAttribute(e,t,n)},e.prototype.setDynamicAttribute=function(e,t,n,r){var i=this.constructing,o=this.env.attributeFor(i,e,n,r) -return o.set(this,t,this.env),o},(0,t.createClass)(e,[{key:"element",get:function(){return this.cursorStack.current.element}},{key:"nextSibling",get:function(){return this.cursorStack.current.nextSibling}}]),e}(),At=function(){function e(e){this.parent=e,this.first=null,this.last=null,this.destroyables=null,this.nesting=0}return e.prototype.destroy=function(){var e,t=this.destroyables -if(t&&t.length)for(e=0;e<t.length;e++)t[e].destroy()},e.prototype.parentElement=function(){return this.parent},e.prototype.firstNode=function(){return this.first&&this.first.firstNode()},e.prototype.lastNode=function(){return this.last&&this.last.lastNode()},e.prototype.openElement=function(e){this.didAppendNode(e),this.nesting++},e.prototype.closeElement=function(){this.nesting--},e.prototype.didAppendNode=function(e){0===this.nesting&&(this.first||(this.first=new yt(e)),this.last=new bt(e))},e.prototype.didAppendBounds=function(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)},e.prototype.newDestroyable=function(e){this.destroyables=this.destroyables||[],this.destroyables.push(e)},e.prototype.finalize=function(e){this.first||e.appendComment("")},e}(),_t=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.destroy=function(){e.prototype.destroy.call(this),j(this)},n}(At),It=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype.reset=function(e){var t,n=this.destroyables -if(n&&n.length)for(t=0;t<n.length;t++)e.didDestroy(n[t]) -var r=j(this) -return this.first=null,this.last=null,this.destroyables=null,this.nesting=0,r},n}(At),wt=function(){function e(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}return e.prototype.destroy=function(){this.boundList.forEachNode(function(e){return e.destroy()})},e.prototype.parentElement=function(){return this.parent},e.prototype.firstNode=function(){var e=this.boundList.head() -return e&&e.firstNode()},e.prototype.lastNode=function(){var e=this.boundList.tail() -return e&&e.lastNode()},e.prototype.openElement=function(){},e.prototype.closeElement=function(){},e.prototype.didAppendNode=function(){},e.prototype.didAppendBounds=function(){},e.prototype.newDestroyable=function(){},e.prototype.finalize=function(){},e}(),xt=2147483648,kt=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new o.Stack,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[] -this.inner=e,this.js=t}return e.prototype.slice=function(t,n){var r=void 0 -return r="number"==typeof t&&"number"==typeof n?this.inner.slice(t,n):"number"==typeof t&&void 0===n?this.inner.sliceFrom(t):this.inner.clone(),new e(r,this.js.slice(t,n))},e.prototype.sliceInner=function(e,t){var n,r=[] -for(n=e;n<t;n++)r.push(this.get(n)) -return r},e.prototype.copy=function(e,t){this.inner.copy(e,t)},e.prototype.write=function(e,t){var n -K(t)?this.inner.writeRaw(e,Z(t)):(n=this.js.length,this.js.push(t),this.inner.writeRaw(e,n|xt))},e.prototype.writeSmi=function(e,t){this.inner.writeSmi(e,t)},e.prototype.writeImmediate=function(e,t){this.inner.writeRaw(e,t)},e.prototype.get=function(e){var t=this.inner.getRaw(e) -return t&xt?this.js[2147483647&t]:J(t)},e.prototype.getSmi=function(e){return this.inner.getSmi(e)},e.prototype.reset=function(){this.inner.reset(),this.js.length=0},(0,t.createClass)(e,[{key:"length",get:function(){return this.inner.len()}}]),e}(),jt=function(){function e(e,t,n){this.stack=e,this.fp=t,this.sp=n}return e.empty=function(){return new this(new kt,0,-1)},e.restore=function(e){var t,n=new kt -for(t=0;t<e.length;t++)n.write(t,e[t]) -return new this(n,0,e.length-1)},e.prototype.push=function(e){this.stack.write(++this.sp,e)},e.prototype.pushSmi=function(e){this.stack.writeSmi(++this.sp,e)},e.prototype.pushImmediate=function(e){this.stack.writeImmediate(++this.sp,Z(e))},e.prototype.pushEncodedImmediate=function(e){this.stack.writeImmediate(++this.sp,e)},e.prototype.pushNull=function(){this.stack.writeImmediate(++this.sp,19)},e.prototype.dup=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.sp -this.stack.copy(e,++this.sp)},e.prototype.copy=function(e,t){this.stack.copy(e,t)},e.prototype.pop=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=this.stack.get(this.sp) -return this.sp-=e,t},e.prototype.popSmi=function(){return this.stack.getSmi(this.sp--)},e.prototype.peek=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0 -return this.stack.get(this.sp-e)},e.prototype.peekSmi=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0 -return this.stack.getSmi(this.sp-e)},e.prototype.get=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.fp -return this.stack.get(t+e)},e.prototype.getSmi=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.fp -return this.stack.getSmi(t+e)},e.prototype.set=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.fp -this.stack.write(n+t,e)},e.prototype.slice=function(e,t){return this.stack.slice(e,t)},e.prototype.sliceArray=function(e,t){return this.stack.sliceInner(e,t)},e.prototype.capture=function(e){var t=this.sp+1 -return this.stack.sliceInner(t-e,t)},e.prototype.reset=function(){this.stack.reset()},e.prototype.toArray=function(){return this.stack.sliceInner(this.fp,this.sp+1)},e}(),Et=function(){function e(e,t,r){var i=r.alwaysRevalidate,o=void 0!==i&&i -this.frameStack=new n.Stack,this.env=e,this.constants=t.constants,this.dom=e.getDOM(),this.alwaysRevalidate=o}return e.prototype.execute=function(e,t){var n,r=this.frameStack -for(this.try(e,t);;){if(r.isEmpty())break -n=this.frame.nextStatement(),null!==n?n.evaluate(this):this.frameStack.pop()}},e.prototype.goto=function(e){this.frame.goto(e)},e.prototype.try=function(e,t){this.frameStack.push(new Rt(e,t))},e.prototype.throw=function(){this.frame.handleException(),this.frameStack.pop()},(0,t.createClass)(e,[{key:"frame",get:function(){return this.frameStack.current}}]),e}(),St=function(e){function n(n,r,i,o,s){var a=(0,t.possibleConstructorReturn)(this,e.call(this)) -return a.start=n,a.state=r,a.runtime=i,a.type="block",a.next=null,a.prev=null,a.children=s,a.bounds=o,a}return(0,t.inherits)(n,e),n.prototype.parentElement=function(){return this.bounds.parentElement()},n.prototype.firstNode=function(){return this.bounds.firstNode()},n.prototype.lastNode=function(){return this.bounds.lastNode()},n.prototype.evaluate=function(e){e.try(this.children,null)},n.prototype.destroy=function(){this.bounds.destroy()},n.prototype.didDestroy=function(){this.runtime.env.didDestroy(this.bounds)},n}(he),Tt=function(e){function i(n,i,o,s,a){var u=(0,t.possibleConstructorReturn)(this,e.call(this,n,i,o,s,a)) -return u.type="try",u.tag=u._tag=r.UpdatableTag.create(r.CONSTANT_TAG),u}return(0,t.inherits)(i,e),i.prototype.didInitializeChildren=function(){this._tag.inner.update((0,r.combineSlice)(this.children))},i.prototype.evaluate=function(e){e.try(this.children,this)},i.prototype.handleException=function(){var e=this,t=this.state,r=this.bounds,i=this.children,o=this.start,s=this.prev,a=this.next,u=this.runtime -i.clear() -var c=Ct.resume(u.env,r,r.reset(u.env)),l=Wt.resume(t,u,c),h=new n.LinkedList -l.execute(o,function(n){n.stack=jt.restore(t.stack),n.updatingOpcodeStack.push(h),n.updateWith(e),n.updatingOpcodeStack.push(i)}),this.prev=s,this.next=a},i}(St),Pt=function(){function e(e,t){this.opcode=e,this.marker=t,this.didInsert=!1,this.didDelete=!1,this.map=e.map,this.updating=e.children}return e.prototype.insert=function(e,t,r,i){var o=this.map,s=this.opcode,a=this.updating,u=null,c=null -i?(c=o[i],u=c.bounds.firstNode()):u=this.marker -var l=s.vmForInsertion(u),h=null,d=s.start -l.execute(d,function(i){o[e]=h=i.iterate(r,t),i.updatingOpcodeStack.push(new n.LinkedList),i.updateWith(h),i.updatingOpcodeStack.push(h.children)}),a.insertBefore(h,c),this.didInsert=!0},e.prototype.retain=function(){},e.prototype.move=function(e,t,n,r){var i=this.map,o=this.updating,s=i[e],a=i[r]||null -r?k(s,a.firstNode()):k(s,this.marker),o.remove(s),o.insertBefore(s,a)},e.prototype.delete=function(e){var t=this.map,n=t[e] -n.didDestroy(),j(n),this.updating.remove(n),delete t[e],this.didDelete=!0},e.prototype.done=function(){this.opcode.didInitializeChildren(this.didInsert||this.didDelete)},e}(),Ot=function(e){function i(i,o,s,a,u,c){var l=(0,t.possibleConstructorReturn)(this,e.call(this,i,o,s,a,u)) -l.type="list-block",l.map=(0,n.dict)(),l.lastIterated=r.INITIAL,l.artifacts=c -var h=l._tag=r.UpdatableTag.create(r.CONSTANT_TAG) -return l.tag=(0,r.combine)([c.tag,h]),l}return(0,t.inherits)(i,e),i.prototype.didInitializeChildren=function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0] -this.lastIterated=this.artifacts.tag.value(),e&&this._tag.inner.update((0,r.combineSlice)(this.children))},i.prototype.evaluate=function(t){var n,i,o,s,a,u=this.artifacts,c=this.lastIterated -u.tag.validate(c)||(n=this.bounds,i=t.dom,o=i.createComment(""),i.insertAfter(n.parentElement(),o,n.lastNode()),s=new Pt(this,o),a=new r.IteratorSynchronizer({target:s,artifacts:u}),a.sync(),this.parentElement().removeChild(o)),e.prototype.evaluate.call(this,t)},i.prototype.vmForInsertion=function(e){var t=this.bounds,n=this.state,r=this.runtime,i=Ct.forInitialRender(r.env,{element:t.parentElement(),nextSibling:e}) -return Wt.resume(n,r,i)},i}(St),Rt=function(){function e(e,t){this.ops=e,this.exceptionHandler=t,this.current=e.head()}return e.prototype.goto=function(e){this.current=e},e.prototype.nextStatement=function(){var e=this.current,t=this.ops -return e&&(this.current=t.nextNode(e)),e},e.prototype.handleException=function(){this.exceptionHandler&&this.exceptionHandler.handleException()},e}(),Nt=function(){function e(e,t,n,r){this.env=e,this.program=t,this.updating=n,this.bounds=r}return e.prototype.rerender=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{alwaysRevalidate:!1},t=e.alwaysRevalidate,n=void 0!==t&&t,r=this.env,i=this.program,o=this.updating -new Et(r,i,{alwaysRevalidate:n}).execute(o,this)},e.prototype.parentElement=function(){return this.bounds.parentElement()},e.prototype.firstNode=function(){return this.bounds.firstNode()},e.prototype.lastNode=function(){return this.bounds.lastNode()},e.prototype.handleException=function(){throw"this should never happen"},e.prototype.destroy=function(){this.bounds.destroy(),j(this.bounds)},e}(),Mt=function(){function e(){this.stack=null,this.positional=new Lt,this.named=new zt,this.blocks=new Bt}return e.prototype.empty=function(e){var t=e.sp+1 -return this.named.empty(e,t),this.positional.empty(e,t),this.blocks.empty(e,t),this},e.prototype.setup=function(e,t,n,r,i){this.stack=e -var o=this.named,s=t.length,a=e.sp-s+1 -o.setup(e,a,s,t,i) -var u=this.positional,c=a-r -u.setup(e,c,r) -var l=this.blocks,h=n.length -l.setup(e,c-3*h,h,n)},e.prototype.at=function(e){return this.positional.at(e)},e.prototype.realloc=function(e){var t,n,r,i,o,s=this.stack -if(e>0&&null!==s){for(t=this.positional,n=this.named,r=t.base+e,i=t.length+n.length,o=i-1;o>=0;o--)s.copy(o+t.base,o+r) -t.base+=e,n.base+=e,s.sp+=e}},e.prototype.capture=function(){var e=0===this.positional.length?qt:this.positional.capture(),t=0===this.named.length?Ut:this.named.capture() -return{tag:this.tag,length:this.length,positional:e,named:t}},e.prototype.clear=function(){var e=this.stack,t=this.length -t>0&&null!==e&&e.pop(t)},(0,t.createClass)(e,[{key:"tag",get:function(){return(0,r.combineTagged)([this.positional,this.named])}},{key:"base",get:function(){return this.blocks.base}},{key:"length",get:function(){return this.positional.length+this.named.length+3*this.blocks.length}}]),e}(),Lt=function(){function e(){this.base=0,this.length=0,this.stack=null,this._tag=null,this._references=null}return e.prototype.empty=function(e,t){this.stack=e,this.base=t,this.length=0,this._tag=r.CONSTANT_TAG,this._references=n.EMPTY_ARRAY},e.prototype.setup=function(e,t,i){this.stack=e,this.base=t,this.length=i,0===i?(this._tag=r.CONSTANT_TAG,this._references=n.EMPTY_ARRAY):(this._tag=null,this._references=null)},e.prototype.at=function(e){var t=this.base,n=this.length,r=this.stack -return e<0||e>=n?ge:r.get(e,t)},e.prototype.capture=function(){return new Dt(this.tag,this.references)},e.prototype.prepend=function(e){var t,n,r,i,o=e.length -if(o>0){for(t=this.base,n=this.length,r=this.stack,this.base=t-=o,this.length=n+o,i=0;i<o;i++)r.set(e.at(i),i,t) -this._tag=null,this._references=null}},(0,t.createClass)(e,[{key:"tag",get:function(){var e=this._tag -return e||(e=this._tag=(0,r.combineTagged)(this.references)),e}},{key:"references",get:function(){var e,t,n,r=this._references -return r||(e=this.stack,t=this.base,n=this.length,r=this._references=e.sliceArray(t,t+n)),r}}]),e}(),Dt=function(){function e(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length -this.tag=e,this.references=t,this.length=n}return e.empty=function(){return new e(r.CONSTANT_TAG,n.EMPTY_ARRAY,0)},e.prototype.at=function(e){return this.references[e]},e.prototype.value=function(){return this.references.map(this.valueOf)},e.prototype.get=function(e){var t,n=this.references,r=this.length -return"length"===e?de.create(r):(t=parseInt(e,10),t<0||t>=r?ge:n[t])},e.prototype.valueOf=function(e){return e.value()},e}(),zt=function(){function e(){this.base=0,this.length=0,this._references=null,this._names=n.EMPTY_ARRAY,this._atNames=n.EMPTY_ARRAY}return e.prototype.empty=function(e,t){this.stack=e,this.base=t,this.length=0,this._references=n.EMPTY_ARRAY,this._names=n.EMPTY_ARRAY,this._atNames=n.EMPTY_ARRAY},e.prototype.setup=function(e,t,r,i,o){this.stack=e,this.base=t,this.length=r,0===r?(this._references=n.EMPTY_ARRAY,this._names=n.EMPTY_ARRAY,this._atNames=n.EMPTY_ARRAY):(this._references=null,o?(this._names=i,this._atNames=null):(this._names=null,this._atNames=i))},e.prototype.has=function(e){return-1!==this.names.indexOf(e)},e.prototype.get=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this.base,r=this.stack,i=t?this.names:this.atNames,o=i.indexOf(e) -return-1===o?ge:r.get(o,n)},e.prototype.capture=function(){return new Ft(this.tag,this.names,this.references)},e.prototype.merge=function(e){var t,n,r,i,o,s,a=e.length -if(a>0){for(t=this.names,n=this.length,r=this.stack,i=e.names,Object.isFrozen(t)&&0===t.length&&(t=[]),o=0;o<a;o++)s=i[o],-1===t.indexOf(s)&&(n=t.push(s),r.push(e.references[o])) -this.length=n,this._references=null,this._names=t,this._atNames=null}},e.prototype.toSyntheticName=function(e){return e.slice(1)},e.prototype.toAtName=function(e){return"@"+e},(0,t.createClass)(e,[{key:"tag",get:function(){return(0,r.combineTagged)(this.references)}},{key:"names",get:function(){var e=this._names -return e||(e=this._names=this._atNames.map(this.toSyntheticName)),e}},{key:"atNames",get:function(){var e=this._atNames -return e||(e=this._atNames=this._names.map(this.toAtName)),e}},{key:"references",get:function(){var e,t,n,r=this._references -return r||(e=this.base,t=this.length,n=this.stack,r=this._references=n.sliceArray(e,e+t)),r}}]),e}(),Ft=function(){function e(e,t,n){this.tag=e,this.names=t,this.references=n,this.length=t.length,this._map=null}return e.prototype.has=function(e){return-1!==this.names.indexOf(e)},e.prototype.get=function(e){var t=this.names,n=this.references,r=t.indexOf(e) -return-1===r?ge:n[r]},e.prototype.value=function(){var e,t,r=this.names,i=this.references,o=(0,n.dict)() -for(e=0;e<r.length;e++)t=r[e],o[t]=i[e].value() -return o},(0,t.createClass)(e,[{key:"map",get:function(){var e,t,r,i,o=this._map -if(!o)for(e=this.names,t=this.references,o=this._map=(0,n.dict)(),r=0;r<e.length;r++)i=e[r],o[i]=t[r] -return o}}]),e}(),Bt=function(){function e(){this.internalValues=null,this.internalTag=null,this.names=n.EMPTY_ARRAY,this.length=0,this.base=0}return e.prototype.empty=function(e,t){this.stack=e,this.names=n.EMPTY_ARRAY,this.base=t,this.length=0,this.internalTag=r.CONSTANT_TAG,this.internalValues=n.EMPTY_ARRAY},e.prototype.setup=function(e,t,i,o){this.stack=e,this.names=o,this.base=t,this.length=i,0===i?(this.internalTag=r.CONSTANT_TAG,this.internalValues=n.EMPTY_ARRAY):(this.internalTag=null,this.internalValues=null)},e.prototype.has=function(e){return-1!==this.names.indexOf(e)},e.prototype.get=function(e){var t=this.base,n=this.stack,r=this.names,i=r.indexOf(e) -if(-1===r.indexOf(e))return null -var o=n.get(3*i,t),s=n.get(3*i+1,t),a=n.get(3*i+2,t) -return null===a?null:[a,s,o]},e.prototype.capture=function(){return new Ht(this.names,this.values)},(0,t.createClass)(e,[{key:"values",get:function(){var e,t,n,r=this.internalValues -return r||(e=this.base,t=this.length,n=this.stack,r=this.internalValues=n.sliceArray(e,e+3*t)),r}}]),e}(),Ht=function(){function e(e,t){this.names=e,this.values=t,this.length=e.length}return e.prototype.has=function(e){return-1!==this.names.indexOf(e)},e.prototype.get=function(e){var t=this.names.indexOf(e) -return-1===t?null:[this.values[3*t+2],this.values[3*t+1],this.values[3*t]]},e}(),Ut=new Ft(r.CONSTANT_TAG,n.EMPTY_ARRAY,n.EMPTY_ARRAY),qt=new Dt(r.CONSTANT_TAG,n.EMPTY_ARRAY),Vt={tag:r.CONSTANT_TAG,length:0,positional:qt,named:Ut},Wt=function(){function e(e,t,r,i){var o=this -this.runtime=e,this.elementStack=i,this.dynamicScopeStack=new n.Stack,this.scopeStack=new n.Stack,this.updatingOpcodeStack=new n.Stack,this.cacheGroups=new n.Stack,this.listBlockStack=new n.Stack,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.heap=this.program.heap,this.constants=this.program.constants,this.elementStack=i,this.scopeStack.push(t),this.dynamicScopeStack.push(r),this.args=new Mt,this.inner=new vt(jt.empty(),this.heap,e.program,{debugBefore:function(e){return le.debugBefore(o,e,e.type)},debugAfter:function(e,t){le.debugAfter(o,e,e.type,t)}})}return e.prototype.fetch=function(e){this.stack.push(this[i.Register[e]])},e.prototype.load=function(e){this[i.Register[e]]=this.stack.pop()},e.prototype.fetchValue=function(e){return this[i.Register[e]]},e.prototype.loadValue=function(e,t){this[i.Register[e]]=t},e.prototype.pushFrame=function(){this.inner.pushFrame()},e.prototype.popFrame=function(){this.inner.popFrame()},e.prototype.goto=function(e){this.inner.goto(e)},e.prototype.call=function(e){this.inner.call(e)},e.prototype.returnTo=function(e){this.inner.returnTo(e)},e.prototype.return=function(){this.inner.return()},e.initial=function(t,r,i,o,s,a){var u=t.heap.scopesizeof(a),c=pt.root(i,u),l=new e({program:t,env:r},c,o,s) -return l.pc=l.heap.getaddr(a),l.updatingOpcodeStack.push(new n.LinkedList),l},e.empty=function(t,r,i){var o={get:function(){return ge},set:function(){return ge},child:function(){return o}},s=new e({program:t,env:r},pt.root(ge,0),o,i) -return s.updatingOpcodeStack.push(new n.LinkedList),s},e.resume=function(t,n,r){return new e(n,t.scope,t.dynamicScope,r)},e.prototype.capture=function(e){return{dynamicScope:this.dynamicScope(),scope:this.scope(),stack:this.stack.capture(e)}},e.prototype.beginCacheGroup=function(){this.cacheGroups.push(this.updating().tail())},e.prototype.commitCacheGroup=function(){var e=new Se("END"),t=this.updating(),i=this.cacheGroups.pop(),o=i?t.nextNode(i):t.head(),s=t.tail(),a=(0,r.combineSlice)(new n.ListSlice(o,s)),u=new je(a,e) -t.insertBefore(u,o),t.append(new Ee(u)),t.append(e)},e.prototype.enter=function(e){var t=new n.LinkedList,r=this.capture(e),i=this.elements().pushUpdatableBlock(),o=new Tt(this.heap.gethandle(this.pc),r,this.runtime,i,t) -this.didEnter(o)},e.prototype.iterate=function(e,t){var r=this.stack -r.push(t),r.push(e) -var i=this.capture(2),o=this.elements().pushUpdatableBlock() -return new Tt(this.heap.gethandle(this.pc),i,this.runtime,o,new n.LinkedList)},e.prototype.enterItem=function(e,t){this.listBlock().map[e]=t,this.didEnter(t)},e.prototype.enterList=function(e){var t=new n.LinkedList,r=this.capture(0),i=this.elements().pushBlockList(t),o=this.stack.peek().artifacts,s=this.pc+e-this.currentOpSize,a=this.heap.gethandle(s),u=new Ot(a,r,this.runtime,i,t,o) -this.listBlockStack.push(u),this.didEnter(u)},e.prototype.didEnter=function(e){this.updateWith(e),this.updatingOpcodeStack.push(e.children)},e.prototype.exit=function(){this.elements().popBlock(),this.updatingOpcodeStack.pop(),this.updating().tail().didInitializeChildren()},e.prototype.exitList=function(){this.exit(),this.listBlockStack.pop()},e.prototype.updateWith=function(e){this.updating().append(e)},e.prototype.listBlock=function(){return this.listBlockStack.current},e.prototype.updating=function(){return this.updatingOpcodeStack.current},e.prototype.elements=function(){return this.elementStack},e.prototype.scope=function(){return this.scopeStack.current},e.prototype.dynamicScope=function(){return this.dynamicScopeStack.current},e.prototype.pushChildScope=function(){this.scopeStack.push(this.scope().child())},e.prototype.pushDynamicScope=function(){var e=this.dynamicScope().child() -return this.dynamicScopeStack.push(e),e},e.prototype.pushRootScope=function(e,t){var n=pt.sized(e) -return t&&n.bindCallerScope(this.scope()),this.scopeStack.push(n),n},e.prototype.pushScope=function(e){this.scopeStack.push(e)},e.prototype.popScope=function(){this.scopeStack.pop()},e.prototype.popDynamicScope=function(){this.dynamicScopeStack.pop()},e.prototype.newDestroyable=function(e){this.elements().didAddDestroyable(e)},e.prototype.getSelf=function(){return this.scope().getSelf()},e.prototype.referenceForSymbol=function(e){return this.scope().getSymbol(e)},e.prototype.execute=function(e,t){this.pc=this.heap.getaddr(e),t&&t(this) -for(var n=void 0;;)if(n=this.next(),n.done)break -return n.value},e.prototype.next=function(){var e=this.env,t=this.program,n=this.updatingOpcodeStack,r=this.elementStack,i=this.inner.nextStatement(),o=void 0 -return null!==i?(this.inner.evaluateOuter(i,this),o={done:!1,value:null}):(this.stack.reset(),o={done:!0,value:new Nt(e,t,n.pop(),r.popBlock())}),o},e.prototype.bindDynamicScope=function(e){var t,n,r=this.dynamicScope() -for(t=e.length-1;t>=0;t--)n=this.constants.getString(e[t]),r.set(n,this.stack.pop())},(0,t.createClass)(e,[{key:"stack",get:function(){return this.inner.stack},set:function(e){this.inner.stack=e}},{key:"currentOpSize",set:function(e){this.inner.currentOpSize=e},get:function(){return this.inner.currentOpSize}},{key:"pc",get:function(){return this.inner.pc},set:function(e){this.inner.pc=e}},{key:"ra",get:function(){return this.inner.ra},set:function(e){this.inner.ra=e}},{key:"fp",get:function(){return this.stack.fp},set:function(e){this.stack.fp=e}},{key:"sp",get:function(){return this.stack.sp},set:function(e){this.stack.sp=e}},{key:"program",get:function(){return this.runtime.program}},{key:"env",get:function(){return this.runtime.env}}]),e}(),Gt=function(){function e(e){this.vm=e}return e.prototype.next=function(){return this.vm.next()},e}(),Yt=function(){function e(e,t){this.scope=e,this.nameRef=t -var n=this.varTag=r.UpdatableTag.create(r.CONSTANT_TAG) -this.tag=(0,r.combine)([t.tag,n])}return e.prototype.value=function(){return this.getVar().value()},e.prototype.get=function(e){return this.getVar().get(e)},e.prototype.getVar=function(){var e=String(this.nameRef.value()),t=this.scope.get(e) -return this.varTag.inner.update(t.tag),t},e}(),Kt=function(e){function n(n,r,i){var o=(0,t.possibleConstructorReturn)(this,e.call(this,n,r)) -return o.startingBlockDepth=i,o.candidate=null,o.injectedOmittedNode=!1,o.openBlockDepth=i-1,o}return(0,t.inherits)(n,e),n}(Be),Qt=function(e){function r(r,i,o){var s=(0,t.possibleConstructorReturn)(this,e.call(this,r,i,o)) -if(s.unmatchedAttributes=null,s.blockDepth=0,o)throw new Error("Rehydration with nextSibling not supported") -for(var a=s.currentCursor.element.firstChild;!(null===a||ee(a)&&(0,n.isSerializationFirstNode)(a));)a=a.nextSibling -return s.candidate=a,s}return(0,t.inherits)(r,e),r.prototype.pushElement=function(e,t){var n=this.blockDepth,r=void 0===n?0:n,i=new Kt(e,t,r),o=this.currentCursor -o&&o.candidate&&(i.candidate=e.firstChild,o.candidate=e.nextSibling),this.cursorStack.push(i)},r.prototype.clearMismatch=function(e){var t,n=e,r=this.currentCursor -if(null!==r){if((t=r.openBlockDepth)>=r.startingBlockDepth)for(;n&&(!ee(n)||ne(n)!==t);)n=this.remove(n) -else for(;null!==n;)n=this.remove(n) -r.nextSibling=n,r.candidate=null}},r.prototype.__openBlock=function(){var e=this.currentCursor -if(null!==e){var t=this.blockDepth -this.blockDepth++ -var n=e.candidate -null!==n&&(ee(n)&&te(n)===t?(e.candidate=this.remove(n),e.openBlockDepth=t):this.clearMismatch(n))}},r.prototype.__closeBlock=function(){var e=this.currentCursor -if(null!==e){var t=e.openBlockDepth -this.blockDepth-- -var n=e.candidate -null!==n&&(ee(n)&&ne(n)===t?(e.candidate=this.remove(n),e.openBlockDepth--):this.clearMismatch(n)),e.openBlockDepth===this.blockDepth&&(e.candidate=this.remove(e.nextSibling),e.openBlockDepth--)}},r.prototype.__appendNode=function(t){var n=this.candidate -return n||e.prototype.__appendNode.call(this,t)},r.prototype.__appendHTML=function(t){var n,r,i,o,s=this.markerBounds() -return s?(n=s.firstNode(),r=s.lastNode(),i=w(this.element,n.nextSibling,r.previousSibling),o=this.remove(n),this.remove(r),null!==o&&se(o)&&(this.candidate=this.remove(o),null!==this.candidate&&this.clearMismatch(this.candidate)),i):e.prototype.__appendHTML.call(this,t)},r.prototype.remove=function(e){var t=e.parentNode,n=e.nextSibling -return t.removeChild(e),n},r.prototype.markerBounds=function(){var e,t,n=this.candidate -if(n&&ie(n)){for(e=n,t=e.nextSibling;t&&!ie(t);)t=t.nextSibling -return w(this.element,e,t)}return null},r.prototype.__appendText=function(t){var n,r,i=this.candidate -return i?$(i)?(i.nodeValue!==t&&(i.nodeValue=t),this.candidate=i.nextSibling,i):i&&(oe(i)||se(i))?(this.candidate=i.nextSibling,this.remove(i),this.__appendText(t)):se(i)?(n=this.remove(i),this.candidate=n,r=this.dom.createTextNode(t),this.dom.insertBefore(this.element,r,n),r):(this.clearMismatch(i),e.prototype.__appendText.call(this,t)):e.prototype.__appendText.call(this,t)},r.prototype.__appendComment=function(t){var n=this.candidate -return n&&ee(n)?(n.nodeValue!==t&&(n.nodeValue=t),this.candidate=n.nextSibling,n):(n&&this.clearMismatch(n),e.prototype.__appendComment.call(this,t))},r.prototype.__openElement=function(t){var n=this.candidate -if(n&&re(n)&&ae(n,t))return this.unmatchedAttributes=[].slice.call(n.attributes),n -if(n){if(re(n)&&"TBODY"===n.tagName)return this.pushElement(n,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(t) -this.clearMismatch(n)}return e.prototype.__openElement.call(this,t)},r.prototype.__setAttribute=function(t,n,r){var i,o=this.unmatchedAttributes -return o&&(i=ue(o,t))?(i.value!==n&&(i.value=n),void o.splice(o.indexOf(i),1)):e.prototype.__setAttribute.call(this,t,n,r)},r.prototype.__setProperty=function(t,n){var r,i=this.unmatchedAttributes -return i&&(r=ue(i,t))?(r.value!==n&&(r.value=n),void i.splice(i.indexOf(r),1)):e.prototype.__setProperty.call(this,t,n)},r.prototype.__flushElement=function(t,n){var r,i=this.unmatchedAttributes -if(i){for(r=0;r<i.length;r++)this.constructing.removeAttribute(i[r].name) -this.unmatchedAttributes=null}else e.prototype.__flushElement.call(this,t,n)},r.prototype.willCloseElement=function(){var t=this.candidate,n=this.currentCursor -null!==t&&this.clearMismatch(t),n&&n.injectedOmittedNode&&this.popElement(),e.prototype.willCloseElement.call(this)},r.prototype.getMarker=function(e,t){var n=e.querySelector('script[glmr="'+t+'"]') -if(n)return n -throw new Error("Cannot find serialized cursor for `in-element`")},r.prototype.__pushRemoteElement=function(e,t){var n,r,i,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,s=this.getMarker(e,t) -s.parentNode===e&&(n=this.currentCursor,r=n.candidate,this.pushElement(e,o),n.candidate=r,this.candidate=this.remove(s),i=new _t(e),this.pushBlockTracker(i,!0))},r.prototype.didAppendBounds=function(t){var n -return e.prototype.didAppendBounds.call(this,t),this.candidate&&(n=t.lastNode(),this.candidate=n&&n.nextSibling),t},(0,t.createClass)(r,[{key:"currentCursor",get:function(){return this.cursorStack.current}},{key:"candidate",get:function(){return this.currentCursor?this.currentCursor.candidate:null},set:function(e){this.currentCursor.candidate=e}}]),r}(Ct) -e.renderMain=function(e,t,n,r,i,o){var s=Wt.initial(e,t,n,r,i,o) -return new Gt(s)},e.NULL_REFERENCE=me,e.UNDEFINED_REFERENCE=ge,e.PrimitiveReference=de,e.ConditionalReference=be,e.setDebuggerCallback=function(e){De=e},e.resetDebuggerCallback=function(){De=I},e.getDynamicVar=function(e,t){var n=e.dynamicScope(),r=t.positional.at(0) -return new Yt(n,r)},e.LowLevelVM=Wt,e.UpdatingVM=Et,e.RenderResult=Nt,e.SimpleDynamicAttribute=at,e.DynamicAttribute=st,e.EMPTY_ARGS=Vt,e.Scope=pt,e.Environment=gt,e.DefaultEnvironment=mt,e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1},e.CurriedComponentDefinition=_e,e.isCurriedComponentDefinition=a,e.curry=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null -return new _e(e,t)},e.DOMChanges=Je,e.SVG_NAMESPACE=qe,e.IDOMChanges=Ze,e.DOMTreeConstruction=$e,e.isWhitespace=function(e){return Ye.test(e)},e.insertHTMLBefore=N,e.normalizeProperty=B,e.NewElementBuilder=Ct -e.clientBuilder=function(e,t){return Ct.forInitialRender(e,t)},e.rehydrationBuilder=function(e,t){return Qt.forInitialRender(e,t)},e.RehydrateBuilder=Qt,e.ConcreteBounds=He,e.Cursor=Be,e.capabilityFlagsFrom=v,e.hasCapability=y}),e("@glimmer/util",["exports","ember-babel"],function(e,t){"use strict" -function n(e){return e._guid=++s}function r(e){return e._guid||n(e)}function i(){return Object.create(null)}e.unreachable=e.expect=e.unwrap=e.EMPTY_ARRAY=e.ListSlice=e.ListNode=e.LinkedList=e.EMPTY_SLICE=e.dict=e.DictSet=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.isSerializationFirstNode=e.initializeGuid=e.ensureGuid=e.fillNulls=e.assign=e.assert=void 0 -var o=Object.keys,s=0,a=function(){function e(){this.dict=i()}return e.prototype.add=function(e){return"string"==typeof e?this.dict[e]=e:this.dict[r(e)]=e,this},e.prototype.delete=function(e){"string"==typeof e?delete this.dict[e]:e._guid&&delete this.dict[e._guid]},e}(),u=function(){function e(){this.stack=[],this.current=null}return e.prototype.push=function(e){this.current=e,this.stack.push(e)},e.prototype.pop=function(){var e=this.stack.pop(),t=this.stack.length -return this.current=0===t?null:this.stack[t-1],void 0===e?null:e},e.prototype.isEmpty=function(){return 0===this.stack.length},(0,t.createClass)(e,[{key:"size",get:function(){return this.stack.length}}]),e}(),c=function(){function e(){this.clear()}return e.prototype.head=function(){return this._head},e.prototype.tail=function(){return this._tail},e.prototype.clear=function(){this._head=this._tail=null},e.prototype.toArray=function(){var e=[] -return this.forEachNode(function(t){return e.push(t)}),e},e.prototype.nextNode=function(e){return e.next},e.prototype.forEachNode=function(e){for(var t=this._head;null!==t;)e(t),t=t.next},e.prototype.insertBefore=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null -return null===t?this.append(e):(t.prev?t.prev.next=e:this._head=e,e.prev=t.prev,e.next=t,t.prev=e,e)},e.prototype.append=function(e){var t=this._tail -return t?(t.next=e,e.prev=t,e.next=null):this._head=e,this._tail=e},e.prototype.remove=function(e){return e.prev?e.prev.next=e.next:this._head=e.next,e.next?e.next.prev=e.prev:this._tail=e.prev,e},e}(),l=function(){function e(e,t){this._head=e,this._tail=t}return e.prototype.forEachNode=function(e){for(var t=this._head;null!==t;)e(t),t=this.nextNode(t)},e.prototype.head=function(){return this._head},e.prototype.tail=function(){return this._tail},e.prototype.toArray=function(){var e=[] -return this.forEachNode(function(t){return e.push(t)}),e},e.prototype.nextNode=function(e){return e===this._tail?null:e.next},e}(),h=new l(null,null),d=Object.freeze([]) -e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assign=function(e){var t,n,r,i,s -for(t=1;t<arguments.length;t++)if(null!==(n=arguments[t])&&"object"==typeof n)for(r=o(n),i=0;i<r.length;i++)s=r[i],e[s]=n[s] -return e},e.fillNulls=function(e){var t,n=new Array(e) -for(t=0;t<e;t++)n[t]=null -return n},e.ensureGuid=r,e.initializeGuid=n,e.isSerializationFirstNode=function(e){return"%+b:0%"===e.nodeValue},e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%",e.Stack=u,e.DictSet=a,e.dict=i,e.EMPTY_SLICE=h,e.LinkedList=c,e.ListNode=function(e){this.next=null,this.prev=null,this.value=e},e.ListSlice=l,e.EMPTY_ARRAY=d,e.unwrap=function(e){if(null===e||void 0===e)throw new Error("Expected value to be present") -return e},e.expect=function(e,t){if(null===e||void 0===e)throw new Error(t) -return e},e.unreachable=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"unreachable" -return new Error(e)}}),e("@glimmer/vm",["exports"],function(e){"use strict" -var t;(function(e){e[e.pc=0]="pc",e[e.ra=1]="ra",e[e.fp=2]="fp",e[e.sp=3]="sp",e[e.s0=4]="s0",e[e.s1=5]="s1",e[e.t0=6]="t0",e[e.t1=7]="t1",e[e.v0=8]="v0"})(t||(e.Register=t={})),e.Register=t}),e("@glimmer/wire-format",["exports"],function(e){"use strict" -function t(e){return function(t){return Array.isArray(t)&&t[0]===e}}function n(e){return e[0]===i.StaticAttr||e[0]===i.DynamicAttr||e[0]===i.TrustingAttr}function r(e){return e[0]===i.StaticArg||e[0]===i.DynamicArg}var i;(function(e){e[e.Text=0]="Text",e[e.Append=1]="Append",e[e.Comment=2]="Comment",e[e.Modifier=3]="Modifier",e[e.Block=4]="Block",e[e.Component=5]="Component",e[e.OpenElement=6]="OpenElement",e[e.OpenSplattedElement=7]="OpenSplattedElement",e[e.FlushElement=8]="FlushElement",e[e.CloseElement=9]="CloseElement",e[e.StaticAttr=10]="StaticAttr",e[e.DynamicAttr=11]="DynamicAttr",e[e.AttrSplat=12]="AttrSplat",e[e.Yield=13]="Yield",e[e.Partial=14]="Partial",e[e.DynamicArg=15]="DynamicArg",e[e.StaticArg=16]="StaticArg",e[e.TrustingAttr=17]="TrustingAttr",e[e.Debugger=18]="Debugger",e[e.ClientSideStatement=19]="ClientSideStatement",e[e.Unknown=20]="Unknown",e[e.Get=21]="Get",e[e.MaybeLocal=22]="MaybeLocal",e[e.HasBlock=23]="HasBlock",e[e.HasBlockParams=24]="HasBlockParams",e[e.Undefined=25]="Undefined",e[e.Helper=26]="Helper",e[e.Concat=27]="Concat",e[e.ClientSideExpression=28]="ClientSideExpression"})(i||(e.Ops=i={})) -var o=t(i.Modifier),s=t(i.FlushElement),a=t(i.Get),u=t(i.MaybeLocal) -e.is=t,e.isModifier=o,e.isFlushElement=s,e.isAttribute=n,e.isArgument=r,e.isGet=a,e.isMaybeLocal=u,e.Ops=i}),e("backburner",["exports","ember-babel"],function(e,t){"use strict" -function n(e){var t,n,r,i,o=void 0 -return"function"==typeof MutationObserver?(t=0,n=new MutationObserver(e),r=document.createTextNode(""),n.observe(r,{characterData:!0}),o=function(){return t=++t%2,r.data=""+t,t}):"function"==typeof Promise?(i=Promise.resolve(),o=function(){return i.then(e)}):o=function(){return h(e,0)},{setTimeout:function(e,t){return h(e,t)},clearTimeout:function(e){return clearTimeout(e)},now:function(){return Date.now()},next:o,clearNext:d}}function r(e){var t=typeof e -return"number"===t&&e===e||"string"===t&&p.test(e)}function i(e){return e.onError||e.onErrorTarget&&e.onErrorTarget[e.onErrorMethod]}function o(e,t,n){var r,i,o=-1 -for(r=0,i=n.length;r<i;r+=4)if(n[r]===e&&n[r+1]===t){o=r -break}return o}function s(e,t){var n,r=-1 -for(n=3;n<t.length;n+=4)if(t[n]===e){r=n-3 -break}return r}function a(e,t){for(var n=0,r=t.length-6,i=void 0,o=void 0;n<r;)o=(r-n)/6,i=n+o-o%6,e>=t[i]?n=i+6:r=i -return e>=t[n]?n+6:n}function u(){var e,t,n,r,i,o,s=arguments.length,a=void 0,u=void 0,c=void 0 -if(0===s);else if(1===s)c=null,u=arguments[0] -else if(e=2,t=arguments[0],n=arguments[1],r=typeof n,"function"===r?(c=t,u=n):null!==t&&"string"===r&&n in t?(c=t,u=c[n]):"function"==typeof t&&(e=1,c=null,u=t),s>e)for(i=s-e,a=new Array(i),o=0;o<i;o++)a[o]=arguments[o+e] -return[c,u,a]}function c(){var e,t=u.apply(void 0,arguments),n=t[0],i=t[1],o=t[2],s=0,a=void 0!==o?o.length:0 -return a>0&&(e=o[a-1],r(e)&&(s=parseInt(o.pop(),10))),[n,i,o,s]}function l(){var e,t=void 0,n=void 0,i=void 0,o=void 0,s=void 0 -return 2===arguments.length?(n=arguments[0],s=arguments[1],t=null):(e=u.apply(void 0,arguments),t=e[0],n=e[1],o=e[2],void 0===o?s=0:(s=o.pop(),r(s)||(i=!0===s,s=o.pop()))),s=parseInt(s,10),[t,n,o,s,i]}e.buildPlatform=void 0 -var h=setTimeout,d=function(){},p=/\d+/,f=function(){function e(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{} -this._queueBeingFlushed=[],this.targetQueues=new Map,this.index=0,this._queue=[],this.name=e,this.options=t,this.globalOptions=n}return e.prototype.stackFor=function(e){var t -if(e<this._queue.length)return t=this._queue[3*e+4],t?t.stack:null},e.prototype.flush=function(e){var t,n,r=this.options,o=r.before,s=r.after,a=void 0,u=void 0,c=void 0,l=void 0 -this.targetQueues.clear(),0===this._queueBeingFlushed.length&&(this._queueBeingFlushed=this._queue,this._queue=[]),void 0!==o&&o() -var h=void 0,d=this._queueBeingFlushed -if(d.length>0)for(t=i(this.globalOptions),h=t?this.invokeWithOnError:this.invoke,n=this.index;n<d.length;n+=4)if(this.index+=4,u=d[n+1],null!==u&&(a=d[n],c=d[n+2],l=d[n+3],h(a,u,c,t,l)),this.index!==this._queueBeingFlushed.length&&this.globalOptions.mustYield&&this.globalOptions.mustYield())return 1 -void 0!==s&&s(),this._queueBeingFlushed.length=0,this.index=0,!1!==e&&this._queue.length>0&&this.flush(!0)},e.prototype.hasWork=function(){return this._queueBeingFlushed.length>0||this._queue.length>0},e.prototype.cancel=function(e){var t=e.target,n=e.method,r=this._queue,i=this.targetQueues.get(t) -void 0!==i&&i.delete(n) -var s=o(t,n,r) -return s>-1?(r.splice(s,4),!0):(r=this._queueBeingFlushed,(s=o(t,n,r))>-1&&(r[s+1]=null,!0))},e.prototype.push=function(e,t,n,r){return this._queue.push(e,t,n,r),{queue:this,target:e,method:t}},e.prototype.pushUnique=function(e,t,n,r){var i,o,s=this.targetQueues.get(e) -void 0===s&&(s=new Map,this.targetQueues.set(e,s)) -var a=s.get(t) -return void 0===a?(i=this._queue.push(e,t,n,r)-4,s.set(t,i)):(o=this._queue,o[a+2]=n,o[a+3]=r),{queue:this,target:e,method:t}},e.prototype.invoke=function(e,t,n){void 0===n?t.call(e):t.apply(e,n)},e.prototype.invokeWithOnError=function(e,t,n,r,i){try{void 0===n?t.call(e):t.apply(e,n)}catch(e){r(e,i)}},e}(),g=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments[1] -this.queues={},this.queueNameIndex=0,this.queueNames=e,e.reduce(function(e,n){return e[n]=new f(n,t[n],t),e},this.queues)}return e.prototype.schedule=function(e,t,n,r,i,o){var s=this.queues,a=s[e] -if(void 0===a)throw new Error("You attempted to schedule an action in a queue ("+e+") that doesn't exist") -if(void 0===n||null===n)throw new Error("You attempted to schedule an action in a queue ("+e+") for a method that doesn't exist") -return this.queueNameIndex=0,i?a.pushUnique(t,n,r,o):a.push(t,n,r,o)},e.prototype.flush=function(){for(var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=void 0,n=void 0,r=this.queueNames.length;this.queueNameIndex<r;)if(n=this.queueNames[this.queueNameIndex],t=this.queues[n],!1===t.hasWork()){if(this.queueNameIndex++,e&&this.queueNameIndex<r)return 1}else if(1===t.flush(!1))return 1},e}(),m=function(e){for(var t=e(),n=t.next();!1===n.done;)n.value(),n=t.next()},v=function(){},y=0,b=0,C=0,A=0,_=0,I=0,w=0,x=0,k=0,j=0,E=0,S=0,T=0,P=0,O=0,R=0,N=0,M=0,L=0,D=0,z=0,F=function(){function e(e,t){var r=this -this.DEBUG=!1,this.currentInstance=null,this.instanceStack=[],this._debouncees=[],this._throttlers=[],this._eventCallbacks={end:[],begin:[]},this._timerTimeoutId=null,this._timers=[],this._autorun=null,this.queueNames=e,this.options=t||{},"string"==typeof this.options.defaultQueue?this._defaultQueue=this.options.defaultQueue:this._defaultQueue=this.queueNames[0],this._onBegin=this.options.onBegin||v,this._onEnd=this.options.onEnd||v,this._boundRunExpiredTimers=this._runExpiredTimers.bind(this),this._boundAutorunEnd=function(){L++,null!==r._autorun&&(r._autorun=null,r._end(!0))} -var i=this.options._buildPlatform||n -this._platform=i(this._boundAutorunEnd)}return e.prototype.begin=function(){b++ -var e=this.options,t=this.currentInstance,n=void 0 -return null!==this._autorun?(n=t,this._cancelAutorun()):(null!==t&&(z++,this.instanceStack.push(t)),D++,n=this.currentInstance=new g(this.queueNames,e),A++,this._trigger("begin",n,t)),this._onBegin(n,t),n},e.prototype.end=function(){C++,this._end(!1)},e.prototype.on=function(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") -var n=this._eventCallbacks[e] -if(void 0===n)throw new TypeError("Cannot on() event "+e+" because it does not exist") -n.push(t)},e.prototype.off=function(e,t){var n,r=this._eventCallbacks[e] -if(!e||void 0===r)throw new TypeError("Cannot off() event "+e+" because it does not exist") -var i=!1 -if(t)for(n=0;n<r.length;n++)r[n]===t&&(i=!0,r.splice(n,1),n--) -if(!i)throw new TypeError("Cannot off() callback that does not exist")},e.prototype.run=function(){_++ -var e=u.apply(void 0,arguments),t=e[0],n=e[1],r=e[2] -return this._run(t,n,r)},e.prototype.join=function(){I++ -var e=u.apply(void 0,arguments),t=e[0],n=e[1],r=e[2] -return this._join(t,n,r)},e.prototype.defer=function(e,t,n){var r,i,o -for(w++,r=arguments.length,i=Array(r>3?r-3:0),o=3;o<r;o++)i[o-3]=arguments[o] -return this.schedule.apply(this,[e,t,n].concat(i))},e.prototype.schedule=function(e){for(x++,t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r] -var t,n,r,i=u.apply(void 0,n),o=i[0],s=i[1],a=i[2],c=this.DEBUG?new Error:void 0 -return this._ensureInstance().schedule(e,o,s,a,!1,c)},e.prototype.scheduleIterable=function(e,t){k++ -var n=this.DEBUG?new Error:void 0 -return this._ensureInstance().schedule(e,null,m,[t],!1,n)},e.prototype.deferOnce=function(e,t,n){var r,i,o -for(j++,r=arguments.length,i=Array(r>3?r-3:0),o=3;o<r;o++)i[o-3]=arguments[o] -return this.scheduleOnce.apply(this,[e,t,n].concat(i))},e.prototype.scheduleOnce=function(e){for(E++,t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r] -var t,n,r,i=u.apply(void 0,n),o=i[0],s=i[1],a=i[2],c=this.DEBUG?new Error:void 0 -return this._ensureInstance().schedule(e,o,s,a,!0,c)},e.prototype.setTimeout=function(){return S++,this.later.apply(this,arguments)},e.prototype.later=function(){T++ -var e=c.apply(void 0,arguments),t=e[0],n=e[1],r=e[2],i=e[3] -return this._later(t,n,r,i)},e.prototype.throttle=function(){var e=this -P++ -var t=l.apply(void 0,arguments),n=t[0],r=t[1],i=t[2],a=t[3],u=t[4],c=void 0===u||u,h=o(n,r,this._throttlers) -if(h>-1)return this._throttlers[h+2]=i,this._throttlers[h+3] -var d=this._platform.setTimeout(function(){var t=s(d,e._throttlers),n=e._throttlers.splice(t,4),r=n[0],i=n[1],o=n[2] -!1===c&&e._run(r,i,o)},a) -return c&&this._join(n,r,i),this._throttlers.push(n,r,i,d),d},e.prototype.debounce=function(){var e,t=this -O++ -var n=l.apply(void 0,arguments),r=n[0],i=n[1],a=n[2],u=n[3],c=n[4],h=void 0!==c&&c,d=o(r,i,this._debouncees) -d>-1&&(e=this._debouncees[d+3],this._platform.clearTimeout(e),this._debouncees.splice(d,4)) -var p=this._platform.setTimeout(function(){var e=s(p,t._debouncees),n=t._debouncees.splice(e,4),r=n[0],i=n[1],o=n[2] -!1===h&&t._run(r,i,o)},u) -return h&&-1===d&&this._join(r,i,a),this._debouncees.push(r,i,a,p),p},e.prototype.cancelTimers=function(){var e,t -for(R++,e=3;e<this._throttlers.length;e+=4)this._platform.clearTimeout(this._throttlers[e]) -for(this._throttlers=[],t=3;t<this._debouncees.length;t+=4)this._platform.clearTimeout(this._debouncees[t]) -this._debouncees=[],this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()},e.prototype.hasTimers=function(){return this._timers.length>0||this._debouncees.length>0||this._throttlers.length>0||null!==this._autorun},e.prototype.cancel=function(e){if(N++,void 0===e||null===e)return!1 -var t=typeof e -return"number"===t?this._cancelItem(e,this._throttlers)||this._cancelItem(e,this._debouncees):"string"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)},e.prototype.ensureInstance=function(){this._ensureInstance()},e.prototype._end=function(e){var t=this.currentInstance,n=null -if(null===t)throw new Error("end called without begin") -var r=!1,i=void 0 -try{i=t.flush(e)}finally{r||(r=!0,1===i?this._scheduleAutorun():(this.currentInstance=null,this.instanceStack.length>0&&(n=this.instanceStack.pop(),this.currentInstance=n),this._trigger("end",t,n),this._onEnd(t,n)))}},e.prototype._join=function(e,t,n){return null===this.currentInstance?this._run(e,t,n):void 0===e&&void 0===n?t():t.apply(e,n)},e.prototype._run=function(e,t,n){var r=i(this.options) -if(this.begin(),r)try{return t.apply(e,n)}catch(e){r(e)}finally{this.end()}else try{return t.apply(e,n)}finally{this.end()}},e.prototype._cancelAutorun=function(){null!==this._autorun&&(this._platform.clearNext(this._autorun),this._autorun=null)},e.prototype._later=function(e,t,n,r){var i,o=this.DEBUG?new Error:void 0,s=this._platform.now()+r,u=y+++"" -return 0===this._timers.length?(this._timers.push(s,u,e,t,n,o),this._installTimerTimeout()):(i=a(s,this._timers),this._timers.splice(i,0,s,u,e,t,n,o),0===i&&this._reinstallTimerTimeout()),u},e.prototype._cancelLaterTimer=function(e){var t -for(t=1;t<this._timers.length;t+=6)if(this._timers[t]===e)return t-=1,this._timers.splice(t,6),0===t&&this._reinstallTimerTimeout(),!0 -return!1},e.prototype._cancelItem=function(e,t){var n=s(e,t) -return n>-1&&(this._platform.clearTimeout(e),t.splice(n,4),!0)},e.prototype._trigger=function(e,t,n){var r,i=this._eventCallbacks[e] -if(void 0!==i)for(r=0;r<i.length;r++)i[r](t,n)},e.prototype._runExpiredTimers=function(){this._timerTimeoutId=null,this._timers.length>0&&(this.begin(),this._scheduleExpiredTimers(),this.end())},e.prototype._scheduleExpiredTimers=function(){for(var e,t,n,r,i=this._timers,o=0,s=i.length,a=this._defaultQueue,u=this._platform.now();o<s&&!(i[o]>u);o+=6)e=i[o+2],t=i[o+3],n=i[o+4],r=i[o+5],this.currentInstance.schedule(a,e,t,n,!1,r) -i.splice(0,o),this._installTimerTimeout()},e.prototype._reinstallTimerTimeout=function(){this._clearTimerTimeout(),this._installTimerTimeout()},e.prototype._clearTimerTimeout=function(){null!==this._timerTimeoutId&&(this._platform.clearTimeout(this._timerTimeoutId),this._timerTimeoutId=null)},e.prototype._installTimerTimeout=function(){if(0!==this._timers.length){var e=this._timers[0],t=this._platform.now(),n=Math.max(0,e-t) -this._timerTimeoutId=this._platform.setTimeout(this._boundRunExpiredTimers,n)}},e.prototype._ensureInstance=function(){var e=this.currentInstance -return null===e&&(e=this.begin(),this._scheduleAutorun()),e},e.prototype._scheduleAutorun=function(){M++ -var e=this._platform.next -this._autorun=e()},(0,t.createClass)(e,[{key:"counters",get:function(){return{begin:b,end:C,events:{begin:A,end:0},autoruns:{created:M,completed:L},run:_,join:I,defer:w,schedule:x,scheduleIterable:k,deferOnce:j,scheduleOnce:E,setTimeout:S,later:T,throttle:P,debounce:O,cancelTimers:R,cancel:N,loops:{total:D,nested:z}}}},{key:"defaultQueue",get:function(){return this._defaultQueue}}]),e}() -F.Queue=f,e.buildPlatform=n,e.default=F}),e("container",["exports","ember-debug","ember-utils","ember-environment"],function(e,t,n,r){"use strict" -function i(e,t){return!1!==e.registry.getOption(t,"singleton")}function o(e,t){return!1!==e.registry.getOption(t,"instantiate")}function s(e,t){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=t -if(!r.source&&!r.namespace||(i=e.registry.expandLocalLookup(t,r)))return!1!==r.singleton&&void 0!==(n=e.cache[i])?n:d(e,i,t,r)}function a(e,t,n){var r=e.factoryManagerCache[t] -if(void 0!==r)return r -var i=e.registry.resolve(t) -if(void 0!==i){var o=new x(e,i,n,t) -return e.factoryManagerCache[t]=o,o}}function u(e,t,n){var r=n.instantiate -return!1!==n.singleton&&!r&&i(e,t)&&!o(e,t)}function c(e,t,n){var r=n.instantiate -return!1!==n.singleton&&!1!==r&&i(e,t)&&o(e,t)}function l(e,t,n){var r=n.instantiate,s=n.singleton -return!(!1!==r||!1!==s&&i(e,t)||o(e,t))}function h(e,t,n){var r=n.instantiate,s=n.singleton -return!1!==r&&(!1!==s||i(e,t))&&o(e,t)}function d(e,t,n,r){var i=a(e,t,n) -if(void 0!==i){if(c(e,n,r))return e.cache[t]=i.create() -if(h(e,n,r))return i.create() -if(u(e,n,r)||l(e,n,r))return i.class -throw new Error("Could not create factory")}}function p(e,t,n){var r,o,a,u,c,l=n.injections -for(void 0===l&&(l=n.injections={}),r=0;r<t.length;r++)o=t[r],a=o.property,u=o.specifier,c=o.source,l[a]=c?s(e,u,{source:c}):s(e,u),n.isDynamic||(n.isDynamic=!i(e,u))}function f(e,t,n){var r={injections:void 0,isDyanmic:!1} -return void 0!==t&&p(e,t,r),void 0!==n&&p(e,n,r),r}function g(e,t){var n=e.registry,r=t.split(":"),i=r[0] -return f(e,n.getTypeInjections(i),n.getInjections(t))}function m(e){var t,n,r,i=e.cache,o=Object.keys(i) -for(t=0;t<o.length;t++)n=o[t],r=i[n],r.destroy&&r.destroy()}function v(e){m(e),e.cache=(0,n.dictionary)(null),e.factoryManagerCache=(0,n.dictionary)(null)}function y(e,t){var n=e.cache[t] -delete e.factoryManagerCache[t],n&&(delete e.cache[t],n.destroy&&n.destroy())}function b(e){e.resolver={resolve:e.resolver}}function C(e,t,n,r){var i=e._localLookupCache,o=i[t] -o||(o=i[t]=Object.create(null)) -var s=r||n,a=o[s] -if(void 0!==a)return a -var u=e.resolver.expandLocalLookup(t,n,r) -return o[s]=u}function A(e,t,n){var r=t -if(void 0===n||!n.source&&!n.namespace||(r=e.expandLocalLookup(t,n))){var i=e._resolveCache[r] -if(void 0!==i)return i -if(!e._failSet.has(r)){var o=void 0 -return e.resolver&&(o=e.resolver.resolve(r)),void 0===o&&(o=e.registrations[r]),void 0===o?e._failSet.add(r):e._resolveCache[r]=o,o}}}function _(e,t,n,r){return void 0!==e.resolve(t,{source:n,namespace:r})}e.FACTORY_FOR=e.Container=e.privatize=e.Registry=void 0 -var I=function(){function e(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{} -this.registry=e,this.owner=t.owner||null,this.cache=(0,n.dictionary)(t.cache||null),this.factoryManagerCache=(0,n.dictionary)(t.factoryManagerCache||null),this.isDestroyed=!1}return e.prototype.lookup=function(e,t){return s(this,this.registry.normalize(e),t)},e.prototype.destroy=function(){v(this),this.isDestroyed=!0},e.prototype.reset=function(e){this.isDestroyed||(void 0===e?v(this):y(this,this.registry.normalize(e)))},e.prototype.ownerInjection=function(){var e -return e={},e[n.OWNER]=this.owner,e},e.prototype.factoryFor=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.registry.normalize(e) -if(!t.source&&!t.namespace||(n=this.registry.expandLocalLookup(e,t)))return a(this,n,e)},e}(),w=new WeakMap,x=function(){function e(e,t,n,r){this.container=e,this.owner=e.owner,this.class=t,this.fullName=n,this.normalizedName=r,this.madeToString=void 0,this.injections=void 0,w.set(this,this)}return e.prototype.toString=function(){return void 0===this.madeToString&&(this.madeToString=this.container.registry.makeToString(this.class,this.fullName)),this.madeToString},e.prototype.create=function(e){var t,r,i,o=this.injections -void 0===o&&(t=g(this.container,this.normalizedName),r=t.injections,i=t.isDynamic,o=r,i||(this.injections=r)) -var s=o -if(void 0!==e&&(s=(0,n.assign)({},o,e)),!this.class.create)throw new Error("Failed to create an instance of '"+this.normalizedName+"'. Most likely an improperly defined class or an invalid module export.") -"function"==typeof this.class._initFactory?this.class._initFactory(this):(void 0!==e&&void 0!==s||(s=(0,n.assign)({},s)),(0,n.setOwner)(s,this.owner)) -var a=this.class.create(s) -return w.set(a,this),a},e}(),k=/^[^:]+:[^:]+$/,j=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{} -this.fallback=e.fallback||null,this.resolver=e.resolver||null,r.ENV._ENABLE_RESOLVER_FUNCTION_SUPPORT,"function"==typeof this.resolver&&!0===r.ENV._ENABLE_RESOLVER_FUNCTION_SUPPORT&&b(this),this.registrations=(0,n.dictionary)(e.registrations||null),this._typeInjections=(0,n.dictionary)(null),this._injections=(0,n.dictionary)(null),this._localLookupCache=Object.create(null),this._normalizeCache=(0,n.dictionary)(null),this._resolveCache=(0,n.dictionary)(null),this._failSet=new Set,this._options=(0,n.dictionary)(null),this._typeOptions=(0,n.dictionary)(null)}return e.prototype.container=function(e){return new I(this,e)},e.prototype.register=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=this.normalize(e) -this._failSet.delete(r),this.registrations[r]=t,this._options[r]=n},e.prototype.unregister=function(e){var t=this.normalize(e) -this._localLookupCache=Object.create(null),delete this.registrations[t],delete this._resolveCache[t],delete this._options[t],this._failSet.delete(t)},e.prototype.resolve=function(e,t){var n,r=A(this,this.normalize(e),t) -return void 0===r&&null!==this.fallback&&(r=(n=this.fallback).resolve.apply(n,arguments)),r},e.prototype.describe=function(e){return null!==this.resolver&&this.resolver.lookupDescription?this.resolver.lookupDescription(e):null!==this.fallback?this.fallback.describe(e):e},e.prototype.normalizeFullName=function(e){return null!==this.resolver&&this.resolver.normalize?this.resolver.normalize(e):null!==this.fallback?this.fallback.normalizeFullName(e):e},e.prototype.normalize=function(e){return this._normalizeCache[e]||(this._normalizeCache[e]=this.normalizeFullName(e))},e.prototype.makeToString=function(e,t){return null!==this.resolver&&this.resolver.makeToString?this.resolver.makeToString(e,t):null!==this.fallback?this.fallback.makeToString(e,t):e.toString()},e.prototype.has=function(e,t){if(!this.isValidFullName(e))return!1 -var n=t&&t.source&&this.normalize(t.source),r=t&&t.namespace||void 0 -return _(this,this.normalize(e),n,r)},e.prototype.optionsForType=function(e,t){this._typeOptions[e]=t},e.prototype.getOptionsForType=function(e){var t=this._typeOptions[e] -return void 0===t&&null!==this.fallback&&(t=this.fallback.getOptionsForType(e)),t},e.prototype.options=function(e,t){var n=this.normalize(e) -this._options[n]=t},e.prototype.getOptions=function(e){var t=this.normalize(e),n=this._options[t] -return void 0===n&&null!==this.fallback&&(n=this.fallback.getOptions(e)),n},e.prototype.getOption=function(e,t){var n=this._options[e] -if(void 0!==n&&void 0!==n[t])return n[t] -var r=e.split(":")[0] -return n=this._typeOptions[r],n&&void 0!==n[t]?n[t]:null!==this.fallback?this.fallback.getOption(e,t):void 0},e.prototype.typeInjection=function(e,t,n){n.split(":")[0];(this._typeInjections[e]||(this._typeInjections[e]=[])).push({property:t,specifier:n})},e.prototype.injection=function(e,t,n){var r=this.normalize(n) -if(-1===e.indexOf(":"))return this.typeInjection(e,t,r) -var i=this.normalize(e);(this._injections[i]||(this._injections[i]=[])).push({property:t,specifier:r})},e.prototype.knownForType=function(e){var t,r,i=(0,n.dictionary)(null),o=Object.keys(this.registrations) -for(t=0;t<o.length;t++)r=o[t],r.split(":")[0]===e&&(i[r]=!0) -var s=void 0,a=void 0 -return null!==this.fallback&&(s=this.fallback.knownForType(e)),null!==this.resolver&&this.resolver.knownForType&&(a=this.resolver.knownForType(e)),(0,n.assign)({},s,i,a)},e.prototype.isValidFullName=function(e){return k.test(e)},e.prototype.getInjections=function(e){var t,n=this._injections[e] -return null!==this.fallback&&void 0!==(t=this.fallback.getInjections(e))&&(n=void 0===n?t:n.concat(t)),n},e.prototype.getTypeInjections=function(e){var t,n=this._typeInjections[e] -return null!==this.fallback&&void 0!==(t=this.fallback.getTypeInjections(e))&&(n=void 0===n?t:n.concat(t)),n},e.prototype.expandLocalLookup=function(e,t){var n,r -return null!==this.resolver&&this.resolver.expandLocalLookup?(n=this.normalize(e),r=this.normalize(t.source),C(this,n,r,t.namespace)):null!==this.fallback?this.fallback.expandLocalLookup(e,t):null},e}(),E=(0,n.dictionary)(null),S=(""+Math.random()+Date.now()).replace(".","") -e.Registry=j,e.privatize=function(e){var t=e[0],r=E[t] -if(r)return r -var i=t.split(":"),o=i[0],s=i[1] -return E[t]=(0,n.intern)(o+":"+s+"-"+S)},e.Container=I,e.FACTORY_FOR=w}),e("dag-map",["exports"],function(e){"use strict" -var t=function(){function e(){this._vertices=new n}return e.prototype.add=function(e,t,n,r){if(!e)throw new Error("argument `key` is required") -var i,o=this._vertices,s=o.add(e) -if(s.val=t,n)if("string"==typeof n)o.addEdge(s,o.add(n)) -else for(var i=0;i<n.length;i++)o.addEdge(s,o.add(n[i])) -if(r)if("string"==typeof r)o.addEdge(o.add(r),s) -else for(i=0;i<r.length;i++)o.addEdge(o.add(r[i]),s)},e.prototype.addEdges=function(e,t,n,r){this.add(e,t,n,r)},e.prototype.each=function(e){this._vertices.walk(e)},e.prototype.topsort=function(e){this.each(e)},e}() -e.default=t -var n=function(){function e(){this.length=0,this.stack=new r,this.path=new r,this.result=new r}return e.prototype.add=function(e){if(!e)throw new Error("missing key") -var t,n,r=0|this.length -for(t=0;t<r;t++)if(n=this[t],n.key===e)return n -return this.length=r+1,this[r]={idx:r,key:e,val:void 0,out:!1,flag:!1,length:0}},e.prototype.addEdge=function(e,t){this.check(e,t.key) -var n,r=0|t.length -for(n=0;n<r;n++)if(t[n]===e.idx)return -t.length=r+1,t[r]=e.idx,e.out=!0},e.prototype.walk=function(e){var t,n -for(this.reset(),t=0;t<this.length;t++)n=this[t],n.out||this.visit(n,"") -this.each(this.result,e)},e.prototype.check=function(e,t){var n,r -if(e.key===t)throw new Error("cycle detected: "+t+" <- "+t) -if(0!==e.length){for(n=0;n<e.length;n++)if(this[e[n]].key===t)throw new Error("cycle detected: "+t+" <- "+e.key+" <- "+t) -if(this.reset(),this.visit(e,t),this.path.length>0)throw r="cycle detected: "+t,this.each(this.path,function(e){r+=" <- "+e}),new Error(r)}},e.prototype.reset=function(){var e,t -for(this.stack.length=0,this.path.length=0,this.result.length=0,e=0,t=this.length;e<t;e++)this[e].flag=!1},e.prototype.visit=function(e,t){var n,r,i=this,o=i.stack,s=i.path,a=i.result -for(o.push(e.idx);o.length;)if((n=0|o.pop())>=0){if(r=this[n],r.flag)continue -if(r.flag=!0,s.push(n),t===r.key)break -o.push(~n),this.pushIncoming(r)}else s.pop(),a.push(~n)},e.prototype.pushIncoming=function(e){var t,n,r=this.stack -for(t=e.length-1;t>=0;t--)n=e[t],this[n].flag||r.push(n)},e.prototype.each=function(e,t){var n,r,i -for(n=0,r=e.length;n<r;n++)i=this[e[n]],t(i.key,i.val)},e}(),r=function(){function e(){this.length=0}return e.prototype.push=function(e){this[this.length++]=0|e},e.prototype.pop=function(){return 0|this[--this.length]},e}()}),e("ember-application/index",["exports","ember-application/lib/system/application","ember-application/lib/system/application-instance","ember-application/lib/system/resolver","ember-application/lib/system/engine","ember-application/lib/system/engine-instance","ember-application/lib/system/engine-parent"],function(e,t,n,r,i,o,s){"use strict" -Object.defineProperty(e,"Application",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"ApplicationInstance",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"Resolver",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"Engine",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EngineInstance",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return s.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return s.setEngineParent}})}),e("ember-application/lib/system/application-instance",["exports","ember-utils","ember-metal","ember-environment","ember-views","ember-application/lib/system/engine-instance","ember-glimmer"],function(e,t,n,r,i,o,s){"use strict" -var a=o.default.extend({application:null,customEvents:null,rootElement:null,init:function(){this._super.apply(this,arguments),this.application._watchInstance(this),this.register("-application-instance:main",this,{instantiate:!1})},_bootSync:function(e){var t -return this._booted?this:(e=new u(e),this.setupRegistry(e),e.rootElement?this.rootElement=e.rootElement:this.rootElement=this.application.rootElement,e.location&&(t=(0,n.get)(this,"router"),(0,n.set)(t,"location",e.location)),this.application.runInstanceInitializers(this),e.isInteractive&&this.setupEventDispatcher(),this._booted=!0,this)},setupRegistry:function(e){this.constructor.setupRegistry(this.__registry__,e)},router:(0,n.computed)(function(){return this.lookup("router:main")}).readOnly(),didCreateRootView:function(e){e.appendTo(this.rootElement)},startRouting:function(){(0,n.get)(this,"router").startRouting(),this._didSetupRouter=!0},setupRouter:function(){if(!this._didSetupRouter){this._didSetupRouter=!0;(0,n.get)(this,"router").setupRouter()}},handleURL:function(e){var t=(0,n.get)(this,"router") -return this.setupRouter(),t.handleURL(e)},setupEventDispatcher:function(){var e=this.lookup("event_dispatcher:main"),r=(0,n.get)(this.application,"customEvents"),i=(0,n.get)(this,"customEvents"),o=(0,t.assign)({},r,i) -return e.setup(o,this.rootElement),e},getURL:function(){return(0,n.get)(this,"router.url")},visit:function(e){var t=this -this.setupRouter() -var r=this.__container__.lookup("-environment:main"),i=(0,n.get)(this,"router"),o=function(){return r.options.shouldRender?(0,s.renderSettled)().then(function(){return t}):t},a=function(e){if(e.error)throw e.error -if("TransitionAborted"===e.name&&i._routerMicrolib.activeTransition)return i._routerMicrolib.activeTransition.then(o,a) -throw"TransitionAborted"===e.name?new Error(e.message):e},u=(0,n.get)(i,"location") -return u.setURL(e),i.handleURL(u.getURL()).then(o,a)},willDestroy:function(){this._super.apply(this,arguments),this.application._unwatchInstance(this)}}) -a.reopenClass({setupRegistry:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{} -t.toEnvironment||(t=new u(t)),e.register("-environment:main",t.toEnvironment(),{instantiate:!1}),e.register("service:-document",t.document,{instantiate:!1}),this._super(e,t)}}) -var u=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{} -this.jQuery=i.jQuery,this.isInteractive=r.environment.hasDOM,this._renderMode=e._renderMode,void 0!==e.isBrowser?this.isBrowser=!!e.isBrowser:this.isBrowser=r.environment.hasDOM,this.isBrowser||(this.jQuery=null,this.isInteractive=!1,this.location="none"),void 0!==e.shouldRender?this.shouldRender=!!e.shouldRender:this.shouldRender=!0,this.shouldRender||(this.jQuery=null,this.isInteractive=!1),e.document?this.document=e.document:this.document="undefined"!=typeof document?document:null,e.rootElement&&(this.rootElement=e.rootElement),void 0!==e.location&&(this.location=e.location),void 0!==e.jQuery&&(this.jQuery=e.jQuery),void 0!==e.isInteractive&&(this.isInteractive=!!e.isInteractive)}return e.prototype.toEnvironment=function(){var e=(0,t.assign)({},r.environment) -return e.hasDOM=this.isBrowser,e.isInteractive=this.isInteractive,e._renderMode=this._renderMode,e.options=this,e},e}() -e.default=a}),e("ember-application/lib/system/application",["exports","ember-babel","ember-utils","ember-environment","ember-debug","ember-metal","ember-runtime","ember-views","ember-routing","ember-application/lib/system/application-instance","container","ember-application/lib/system/engine","ember-glimmer"],function(e,t,n,r,i,o,s,a,u,c,l,h,d){"use strict" -function p(e){e.register("router:main",u.Router.extend()),e.register("-view-registry:main",{create:function(){return(0,n.dictionary)(null)}}),e.register("route:basic",u.Route),e.register("event_dispatcher:main",a.EventDispatcher),e.injection("router:main","namespace","application:main"),e.register("location:auto",u.AutoLocation),e.register("location:hash",u.HashLocation),e.register("location:history",u.HistoryLocation),e.register("location:none",u.NoneLocation),e.register((0,l.privatize)(g),{create:function(){return new u.BucketCache}}),e.register("service:router",u.RouterService),e.injection("service:router","_router","router:main")}function f(){m||(m=!0,r.environment.hasDOM&&!a.jQueryDisabled&&o.libraries.registerCoreLibrary("jQuery",(0,a.jQuery)().jquery))}var g=(0,t.taggedTemplateLiteralLoose)(["-bucket-cache:main"],["-bucket-cache:main"]),m=!1,v=h.default.extend({rootElement:"body",eventDispatcher:null,customEvents:null,autoboot:!0,_globalsMode:!0,_applicationInstances:null,init:function(){this._super.apply(this,arguments),this.$||(this.$=a.jQuery),f(),this._readinessDeferrals=1,this._booted=!1,this._applicationInstances=[],this.autoboot=this._globalsMode=!!this.autoboot,this._globalsMode&&this._prepareForGlobalsMode(),this.autoboot&&this.waitForDOMReady()},buildInstance:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{} -return e.base=this,e.application=this,c.default.create(e)},_watchInstance:function(e){this._applicationInstances.push(e)},_unwatchInstance:function(e){var t=this._applicationInstances.indexOf(e) -t>-1&&this._applicationInstances.splice(t,1)},_prepareForGlobalsMode:function(){this.Router=(this.Router||u.Router).extend(),this._buildDeprecatedInstance()},_buildDeprecatedInstance:function(){var e=this.buildInstance() -this.__deprecatedInstance__=e,this.__container__=e.__container__},waitForDOMReady:function(){!this.$||this.$.isReady?(0,o.schedule)("actions",this,"domReady"):this.$().ready((0,o.bind)(this,"domReady"))},domReady:function(){this.isDestroyed||this._bootSync()},deferReadiness:function(){this._readinessDeferrals++},advanceReadiness:function(){0===--this._readinessDeferrals&&(0,o.once)(this,this.didBecomeReady)},boot:function(){if(this._bootPromise)return this._bootPromise -try{this._bootSync()}catch(e){}return this._bootPromise},_bootSync:function(){if(!this._booted){var e=this._bootResolver=s.RSVP.defer() -this._bootPromise=e.promise -try{this.runInitializers(),(0,s.runLoadHooks)("application",this),this.advanceReadiness()}catch(t){throw e.reject(t),t}}},reset:function(){var e=this.__deprecatedInstance__ -this._readinessDeferrals=1,this._bootPromise=null,this._bootResolver=null,this._booted=!1,(0,o.join)(this,function(){(0,o.run)(e,"destroy"),this._buildDeprecatedInstance(),(0,o.schedule)("actions",this,"_bootSync")})},didBecomeReady:function(){var e -try{(0,i.isTesting)()||((0,o.processAllNamespaces)(),(0,o.setNamespaceSearchDisabled)(!0)),this.autoboot&&(e=void 0,e=this._globalsMode?this.__deprecatedInstance__:this.buildInstance(),e._bootSync(),this.ready(),e.startRouting()),this._bootResolver.resolve(this),this._booted=!0}catch(e){throw this._bootResolver.reject(e),e}},ready:function(){return this},willDestroy:function(){this._super.apply(this,arguments),(0,o.setNamespaceSearchDisabled)(!1),this._booted=!1,this._bootPromise=null,this._bootResolver=null,s._loaded.application===this&&(s._loaded.application=void 0),this._applicationInstances.length&&(this._applicationInstances.forEach(function(e){return e.destroy()}),this._applicationInstances.length=0)},visit:function(e,t){var n=this -return this.boot().then(function(){var r=n.buildInstance() -return r.boot(t).then(function(){return r.visit(e)}).catch(function(e){throw(0,o.run)(r,"destroy"),e})})}}) -v.reopenClass({buildRegistry:function(){var e=this._super.apply(this,arguments) -return p(e),(0,d.setupApplicationRegistry)(e),e}}),e.default=v}),e("ember-application/lib/system/engine-instance",["exports","ember-babel","ember-utils","ember-runtime","ember-debug","container","ember-application/lib/system/engine-parent"],function(e,t,n,r,i,o,s){"use strict" -var a=(0,t.taggedTemplateLiteralLoose)(["-bucket-cache:main"],["-bucket-cache:main"]),u=(0,t.taggedTemplateLiteralLoose)(["template-compiler:main"],["template-compiler:main"]),c=r.Object.extend(r.RegistryProxyMixin,r.ContainerProxyMixin,{base:null,init:function(){this._super.apply(this,arguments),(0,n.guidFor)(this) -var e=this.base -e||(e=this.application,this.base=e) -var t=this.__registry__=new o.Registry({fallback:e.__registry__}) -this.__container__=t.container({owner:this}),this._booted=!1},boot:function(e){var t=this -return this._bootPromise?this._bootPromise:(this._bootPromise=new r.RSVP.Promise(function(n){return n(t._bootSync(e))}),this._bootPromise)},_bootSync:function(e){return this._booted?this:(this.cloneParentDependencies(),this.setupRegistry(e),this.base.runInstanceInitializers(this),this._booted=!0,this)},setupRegistry:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.__container__.lookup("-environment:main") -this.constructor.setupRegistry(this.__registry__,e)},unregister:function(e){this.__container__.reset(e),this._super.apply(this,arguments)},buildChildEngineInstance:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.lookup("engine:"+e) -if(!n)throw new i.Error("You attempted to mount the engine '"+e+"', but it is not registered with its parent.") -var r=n.buildInstance(t) -return(0,s.setEngineParent)(r,this),r},cloneParentDependencies:function(){var e=this,t=(0,s.getEngineParent)(this);["route:basic","service:-routing","service:-glimmer-environment"].forEach(function(n){return e.register(n,t.resolveRegistration(n))}) -var n=t.lookup("-environment:main") -this.register("-environment:main",n,{instantiate:!1}) -var r=["router:main",(0,o.privatize)(a),"-view-registry:main","renderer:-"+(n.isInteractive?"dom":"inert"),"service:-document",(0,o.privatize)(u)] -n.isInteractive&&r.push("event_dispatcher:main"),r.forEach(function(n){return e.register(n,t.lookup(n),{instantiate:!1})}),this.inject("view","_environment","-environment:main"),this.inject("route","_environment","-environment:main")}}) -c.reopenClass({setupRegistry:function(e,t){t&&(e.injection("view","_environment","-environment:main"),e.injection("route","_environment","-environment:main"),t.isInteractive?(e.injection("view","renderer","renderer:-dom"),e.injection("component","renderer","renderer:-dom")):(e.injection("view","renderer","renderer:-inert"),e.injection("component","renderer","renderer:-inert")))}}),e.default=c}),e("ember-application/lib/system/engine-parent",["exports","ember-utils"],function(e,t){"use strict" -e.ENGINE_PARENT=void 0,e.getEngineParent=function(e){return e[n]},e.setEngineParent=function(e,t){e[n]=t} -var n=e.ENGINE_PARENT=(0,t.symbol)("ENGINE_PARENT")}),e("ember-application/lib/system/engine",["exports","ember-babel","ember-utils","ember-runtime","container","dag-map","ember-debug","ember-metal","ember-application/lib/system/resolver","ember-application/lib/system/engine-instance","ember-routing","ember-extension-support","ember-views","ember-glimmer"],function(e,t,n,r,i,o,s,a,u,c,l,h,d,p){"use strict" -function f(e){var t=[] -for(var n in e)t.push(n) -return t}function g(e){return(e.get("Resolver")||u.default).create({namespace:e})}function m(e,t){return function(t){var n -void 0!==this.superclass[e]&&this.superclass[e]===this[e]&&(n={},n[e]=Object.create(this[e]),this.reopenClass(n)),this[e][t.name]=t}}function v(e){e.optionsForType("component",{singleton:!1}),e.optionsForType("view",{singleton:!1}),e.register("controller:basic",r.Controller,{instantiate:!1}),e.injection("view","_viewRegistry","-view-registry:main"),e.injection("renderer","_viewRegistry","-view-registry:main"),e.injection("event_dispatcher:main","_viewRegistry","-view-registry:main"),e.injection("route","_topLevelViewTemplate","template:-outlet"),e.injection("view:-outlet","namespace","application:main"),e.injection("controller","target","router:main"),e.injection("controller","namespace","application:main"),e.injection("router","_bucketCache",(0,i.privatize)(y)),e.injection("route","_bucketCache",(0,i.privatize)(y)),e.injection("route","_router","router:main"),e.register("service:-routing",l.RoutingService),e.injection("service:-routing","router","router:main"),e.register("resolver-for-debugging:main",e.resolver,{instantiate:!1}),e.injection("container-debug-adapter:main","resolver","resolver-for-debugging:main"),e.injection("data-adapter:main","containerDebugAdapter","container-debug-adapter:main"),e.register("container-debug-adapter:main",h.ContainerDebugAdapter),e.register("component-lookup:main",d.ComponentLookup)}var y=(0,t.taggedTemplateLiteralLoose)(["-bucket-cache:main"],["-bucket-cache:main"]),b=r.Namespace.extend(r.RegistryProxyMixin,{init:function(){this._super.apply(this,arguments),this.buildRegistry()},_initializersRan:!1,ensureInitializers:function(){this._initializersRan||(this.runInitializers(),this._initializersRan=!0)},buildInstance:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{} -return this.ensureInitializers(),e.base=this,c.default.create(e)},buildRegistry:function(){return this.__registry__=this.constructor.buildRegistry(this)},initializer:function(e){this.constructor.initializer(e)},instanceInitializer:function(e){this.constructor.instanceInitializer(e)},runInitializers:function(){var e=this -this._runInitializer("initializers",function(t,n){n.initialize(e)})},runInstanceInitializers:function(e){this._runInitializer("instanceInitializers",function(t,n){n.initialize(e)})},_runInitializer:function(e,t){var n,r=(0,a.get)(this.constructor,e),i=f(r),s=new o.default,u=void 0 -for(n=0;n<i.length;n++)u=r[i[n]],s.add(u.name,u,u.before,u.after) -s.topsort(t)}}) -b.reopenClass({initializers:Object.create(null),instanceInitializers:Object.create(null),initializer:m("initializers","initializer"),instanceInitializer:m("instanceInitializers","instance initializer"),buildRegistry:function(e){var t=new i.Registry({resolver:g(e)}) -return t.set=a.set,t.register("application:main",e,{instantiate:!1}),v(t),(0,p.setupEngineRegistry)(t),t},resolver:null,Resolver:null}),e.default=b}),e("ember-application/lib/system/resolver",["exports","ember-utils","ember-metal","ember-debug","ember-runtime","ember-application/lib/utils/validate-type","ember-glimmer"],function(e,t,n,r,i,o,s){"use strict" -e.Resolver=void 0,e.Resolver=i.Object.extend({namespace:null,normalize:null,resolve:null,parseName:null,lookupDescription:null,makeToString:null,resolveOther:null,_logLookup:null}) -var a=i.Object.extend({namespace:null,init:function(){this._parseNameCache=(0,t.dictionary)(null)},normalize:function(e){var t,n=e.split(":"),r=n[0],i=n[1] -return"template"!==r?(t=i.replace(/(\.|_|-)./g,function(e){return e.charAt(1).toUpperCase()}),r+":"+t):e},resolve:function(e){var t=this.parseName(e),n=t.resolveMethodName,r=void 0 -return this[n]&&(r=this[n](t)),r=r||this.resolveOther(t),r&&(0,o.default)(r,t),r},parseName:function(e){return this._parseNameCache[e]||(this._parseNameCache[e]=this._parseName(e))},_parseName:function(e){var t,r,o=e.split(":"),s=o[0],a=o[1],u=a,c=(0,n.get)(this,"namespace"),l=c,h=u.lastIndexOf("/"),d=-1!==h?u.slice(0,h):null -"template"!==s&&-1!==h&&(t=u.split("/"),u=t[t.length-1],r=i.String.capitalize(t.slice(0,-1).join(".")),l=(0,n.findNamespace)(r)) -var p="main"===a?"Main":i.String.classify(s) -if(!u||!s)throw new TypeError("Invalid fullName: `"+e+"`, must be of the form `type:name` ") -return{fullName:e,type:s,fullNameWithoutType:a,dirname:d,name:u,root:l,resolveMethodName:"resolve"+p}},lookupDescription:function(e){var t=this.parseName(e),n=void 0 -return"template"===t.type?"template at "+t.fullNameWithoutType.replace(/\./g,"/"):(n=t.root+"."+i.String.classify(t.name).replace(/\./g,""),"model"!==t.type&&(n+=i.String.classify(t.type)),n)},makeToString:function(e){return e.toString()},useRouterNaming:function(e){"basic"===e.name?e.name="":e.name=e.name.replace(/\./g,"_")},resolveTemplate:function(e){var t=e.fullNameWithoutType.replace(/\./g,"/") -return(0,s.getTemplate)(t)||(0,s.getTemplate)(i.String.decamelize(t))},resolveView:function(e){return this.useRouterNaming(e),this.resolveOther(e)},resolveController:function(e){return this.useRouterNaming(e),this.resolveOther(e)},resolveRoute:function(e){return this.useRouterNaming(e),this.resolveOther(e)},resolveModel:function(e){var t=i.String.classify(e.name) -return(0,n.get)(e.root,t)},resolveHelper:function(e){return this.resolveOther(e)},resolveOther:function(e){var t=i.String.classify(e.name)+i.String.classify(e.type) -return(0,n.get)(e.root,t)},resolveMain:function(e){var t=i.String.classify(e.type) -return(0,n.get)(e.root,t)},knownForType:function(e){var r,o,s,a=(0,n.get)(this,"namespace"),u=i.String.classify(e),c=new RegExp(u+"$"),l=(0,t.dictionary)(null),h=Object.keys(a) -for(r=0;r<h.length;r++)o=h[r],c.test(o)&&(s=this.translateToContainerFullname(e,o),l[s]=!0) -return l},translateToContainerFullname:function(e,t){var n=i.String.classify(e),r=t.slice(0,-1*n.length) -return e+":"+i.String.dasherize(r)}}) -e.default=a}),e("ember-application/lib/utils/validate-type",["exports","ember-debug"],function(e,t){"use strict" -e.default=function(e,t){var r=n[t.type] -if(r){r[1],r[2]}} -var n={route:["assert","isRouteFactory","Ember.Route"],component:["deprecate","isComponentFactory","Ember.Component"],view:["deprecate","isViewFactory","Ember.View"],service:["deprecate","isServiceFactory","Ember.Service"]}}),e("ember-babel",["exports"],function(e){"use strict" -function t(e,t){e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):o(e,t))}function n(e,t){return e.raw=t,e}function r(e,t){for(var n=0;n<t.length;n++){var r=t[n] -r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}function o(e,t){for(var n=Object.getOwnPropertyNames(t),r=0;r<n.length;r++){var i=n[r],o=Object.getOwnPropertyDescriptor(t,i) -o&&o.configurable&&void 0===e[i]&&Object.defineProperty(e,i,o)}return e}e.inherits=t,e.taggedTemplateLiteralLoose=n,e.createClass=i,e.defaults=o -e.possibleConstructorReturn=function(e,t){return!t||"object"!=typeof t&&"function"!=typeof t?e:t},e.slice=Array.prototype.slice}),e("ember-console",["exports","ember-debug"],function(e,t){"use strict" -e.default={log:function(){var e -return(e=console).log.apply(e,arguments)},warn:function(){var e -return(e=console).warn.apply(e,arguments)},error:function(){var e -return(e=console).error.apply(e,arguments)},info:function(){var e -return(e=console).info.apply(e,arguments)},debug:function(){var e,t -return console.debug?(t=console).debug.apply(t,arguments):(e=console).info.apply(e,arguments)},assert:function(){var e -return(e=console).assert.apply(e,arguments)}}}),e("ember-debug/index",["exports","ember-debug/lib/warn","ember-debug/lib/deprecate","ember-debug/lib/features","ember-debug/lib/error","ember-debug/lib/testing","ember-environment","ember/features"],function(e,t,n,r,i,o,s,a){"use strict" -e._warnIfUsingStrippedFeatureFlags=e.getDebugFunction=e.setDebugFunction=e.deprecateFunc=e.runInDebug=e.debugFreeze=e.debugSeal=e.deprecate=e.debug=e.warn=e.info=e.assert=e.setTesting=e.isTesting=e.Error=e.isFeatureEnabled=e.registerDeprecationHandler=e.registerWarnHandler=void 0,Object.defineProperty(e,"registerWarnHandler",{enumerable:!0,get:function(){return t.registerHandler}}),Object.defineProperty(e,"registerDeprecationHandler",{enumerable:!0,get:function(){return n.registerHandler}}),Object.defineProperty(e,"isFeatureEnabled",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"Error",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"isTesting",{enumerable:!0,get:function(){return o.isTesting}}),Object.defineProperty(e,"setTesting",{enumerable:!0,get:function(){return o.setTesting}}) -var u=(a.DEFAULT_FEATURES,a.FEATURES,function(){}) -e.assert=u,e.info=u,e.warn=u,e.debug=u,e.deprecate=u,e.debugSeal=u,e.debugFreeze=u,e.runInDebug=u,e.deprecateFunc=function(){return arguments[arguments.length-1]},e.setDebugFunction=u,e.getDebugFunction=u,e._warnIfUsingStrippedFeatureFlags=void 0}),e("ember-debug/lib/deprecate",["exports","ember-debug/lib/error","ember-environment","ember-debug/index","ember-debug/lib/handlers"],function(e){"use strict" -e.missingOptionsUntilDeprecation=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.registerHandler=void 0,e.default=void 0,e.registerHandler=function(){},e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0,e.missingOptionsUntilDeprecation=void 0}),e("ember-debug/lib/error",["exports","ember-babel"],function(e,t){"use strict" -var n=function(e){function n(r){var i,o=(0,t.possibleConstructorReturn)(this,e.call(this)) -if(!(o instanceof n))return i=new n(r),(0,t.possibleConstructorReturn)(o,i) -var s=Error.call(o,r) -return o.stack=s.stack,o.description=s.description,o.fileName=s.fileName,o.lineNumber=s.lineNumber,o.message=s.message,o.name=s.name,o.number=s.number,o.code=s.code,o}return(0,t.inherits)(n,e),n}(function(e){function t(){e.apply(this,arguments)}return t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t}(Error)) -e.default=n}),e("ember-debug/lib/features",["exports","ember-environment","ember/features"],function(e,t,n){"use strict" -e.default=function(e){var n=r[e] -return!0===n||!1===n||void 0===n?n:!!t.ENV.ENABLE_OPTIONAL_FEATURES} -var r=n.FEATURES}),e("ember-debug/lib/handlers",["exports"],function(e){"use strict" -e.HANDLERS={},e.registerHandler=function(){},e.invoke=function(){}}) -e("ember-debug/lib/testing",["exports"],function(e){"use strict" -function t(){return n}e.isTesting=t,e.setTesting=function(e){n=!!e} -var n=!1}),e("ember-debug/lib/warn",["exports","ember-environment","ember-debug/lib/deprecate","ember-debug/index","ember-debug/lib/handlers"],function(e){"use strict" -e.missingOptionsDeprecation=e.missingOptionsIdDeprecation=e.registerHandler=void 0,e.default=function(){},e.registerHandler=function(){},e.missingOptionsIdDeprecation=void 0,e.missingOptionsDeprecation=void 0}),e("ember-environment",["exports"],function(e){"use strict" -function t(e){return e&&e.Object===Object?e:void 0}function n(e){return!1!==e}function r(e){return!0===e}var i=t(function(e){return e&&void 0===e.nodeType?e:void 0}("object"==typeof global&&global))||t("object"==typeof self&&self)||t("object"==typeof window&&window)||mainContext||new Function("return this")(),o="object"==typeof i.EmberENV&&i.EmberENV||"object"==typeof i.ENV&&i.ENV||{} -o.ENABLE_ALL_FEATURES&&(o.ENABLE_OPTIONAL_FEATURES=!0),o.EXTEND_PROTOTYPES=function(e){return!1===e?{String:!1,Array:!1,Function:!1}:e&&!0!==e?{String:n(e.String),Array:n(e.Array),Function:n(e.Function)}:{String:!0,Array:!0,Function:!0}}(o.EXTEND_PROTOTYPES),o.LOG_STACKTRACE_ON_DEPRECATION=n(o.LOG_STACKTRACE_ON_DEPRECATION),o.LOG_VERSION=n(o.LOG_VERSION),o.RAISE_ON_DEPRECATION=r(o.RAISE_ON_DEPRECATION),o._APPLICATION_TEMPLATE_WRAPPER=n(o._APPLICATION_TEMPLATE_WRAPPER),o._TEMPLATE_ONLY_GLIMMER_COMPONENTS=r(o._TEMPLATE_ONLY_GLIMMER_COMPONENTS) -var s="undefined"!=typeof window&&window===i&&window.document&&window.document.createElement&&!o.disableBrowserEnvironment,a=i.Ember||{},u={imports:a.imports||i,exports:a.exports||i,lookup:a.lookup||i},c=s?{hasDOM:!0,isChrome:!!window.chrome&&!window.opera,isFirefox:"undefined"!=typeof InstallTrigger,location:window.location,history:window.history,userAgent:window.navigator.userAgent,window:window}:{hasDOM:!1,isChrome:!1,isFirefox:!1,location:null,history:null,userAgent:"Lynx (textmode)",window:null} -e.ENV=o,e.getENV=function(){return o},e.context=u,e.getLookup=function(){return u.lookup},e.setLookup=function(e){u.lookup=e},e.environment=c}),e("ember-extension-support/index",["exports","ember-extension-support/lib/data_adapter","ember-extension-support/lib/container_debug_adapter"],function(e,t,n){"use strict" -Object.defineProperty(e,"DataAdapter",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"ContainerDebugAdapter",{enumerable:!0,get:function(){return n.default}})}),e("ember-extension-support/lib/container_debug_adapter",["exports","ember-runtime"],function(e,t){"use strict" -e.default=t.Object.extend({resolver:null,canCatalogEntriesByType:function(e){return"model"!==e&&"template"!==e},catalogEntriesByType:function(e){var n=(0,t.A)(t.Namespace.NAMESPACES),r=(0,t.A)(),i=new RegExp(t.String.classify(e)+"$") -return n.forEach(function(e){var n -for(var o in e)e.hasOwnProperty(o)&&i.test(o)&&(n=e[o],"class"===(0,t.typeOf)(n)&&r.push(t.String.dasherize(o.replace(i,""))))}),r}})}),e("ember-extension-support/lib/data_adapter",["exports","ember-utils","ember-metal","ember-runtime"],function(e,t,n,r){"use strict" -e.default=r.Object.extend({init:function(){this._super.apply(this,arguments),this.releaseMethods=(0,r.A)()},containerDebugAdapter:void 0,attributeLimit:3,acceptsModelName:!0,releaseMethods:(0,r.A)(),getFilters:function(){return(0,r.A)()},watchModelTypes:function(e,t){var n=this,i=this.getModelTypes(),o=(0,r.A)(),s=void 0 -s=i.map(function(e){var r=e.klass,i=n.wrapModelType(r,e.name) -return o.push(n.observeModelType(e.name,t)),i}),e(s) -var a=function(){o.forEach(function(e){return e()}),n.releaseMethods.removeObject(a)} -return this.releaseMethods.pushObject(a),a},_nameToClass:function(e){var n,r -return"string"==typeof e&&(n=(0,t.getOwner)(this),r=n.factoryFor("model:"+e),e=r&&r.class),e},watchRecords:function(e,t,i,o){function s(e){i([e])}var a=this,u=(0,r.A)(),c=this._nameToClass(e),l=this.getRecords(c,e),h=void 0,d=l.map(function(e){return u.push(a.observeRecord(e,s)),a.wrapRecord(e)}),p={didChange:function(e,r,i,c){var l,h,d -for(l=r;l<r+c;l++)h=(0,n.objectAt)(e,l),d=a.wrapRecord(h),u.push(a.observeRecord(h,s)),t([d]) -i&&o(r,i)},willChange:function(){return this}} -return(0,n.addArrayObserver)(l,this,p),h=function(){u.forEach(function(e){return e()}),(0,n.removeArrayObserver)(l,a,p),a.releaseMethods.removeObject(h)},t(d),this.releaseMethods.pushObject(h),h},willDestroy:function(){this._super.apply(this,arguments),this.releaseMethods.forEach(function(e){return e()})},detect:function(){return!1},columnsForType:function(){return(0,r.A)()},observeModelType:function(e,t){function r(){t([this.wrapModelType(o,e)])}var i=this,o=this._nameToClass(e),s=this.getRecords(o,e),a={didChange:function(e,t,i,o){(i>0||o>0)&&(0,n.scheduleOnce)("actions",this,r)},willChange:function(){return this}} -return(0,n.addArrayObserver)(s,this,a),function(){return(0,n.removeArrayObserver)(s,i,a)}},wrapModelType:function(e,t){var r=this.getRecords(e,t) -return{name:t,count:(0,n.get)(r,"length"),columns:this.columnsForType(e),object:e}},getModelTypes:function(){var e=this,t=this.get("containerDebugAdapter"),n=void 0 -return n=t.canCatalogEntriesByType("model")?t.catalogEntriesByType("model"):this._getObjectsOnNamespaces(),n=(0,r.A)(n).map(function(t){return{klass:e._nameToClass(t),name:t}}),n=(0,r.A)(n).filter(function(t){return e.detect(t.klass)}),(0,r.A)(n)},_getObjectsOnNamespaces:function(){var e=this,t=(0,r.A)(r.Namespace.NAMESPACES),n=(0,r.A)() -return t.forEach(function(t){var i -for(var o in t)t.hasOwnProperty(o)&&e.detect(t[o])&&(i=r.String.dasherize(o),n.push(i))}),n},getRecords:function(){return(0,r.A)()},wrapRecord:function(e){var t={object:e} -return t.columnValues=this.getRecordColumnValues(e),t.searchKeywords=this.getRecordKeywords(e),t.filterValues=this.getRecordFilterValues(e),t.color=this.getRecordColor(e),t},getRecordColumnValues:function(){return{}},getRecordKeywords:function(){return(0,r.A)()},getRecordFilterValues:function(){return{}},getRecordColor:function(){return null},observeRecord:function(){return function(){}}})}),e("ember-glimmer",["exports","@glimmer/runtime","@glimmer/util","@glimmer/node","ember-babel","@glimmer/opcode-compiler","ember-utils","@glimmer/reference","ember-runtime","ember-metal","ember-debug","ember-views","ember-environment","node-module","@glimmer/wire-format","container","rsvp","ember-routing"],function(e,t,n,r,i,o,s,a,u,c,l,h,d,p,f,g,m,v){"use strict" -function y(e){return new Qe((0,o.templateFactory)(e))}function b(e){return"object"==typeof e&&null!==e&&e.class&&e.class.isHelperFactory}function C(e){return void 0===e.destroy}function A(e){return new $e(e)}function _(e){return!!e&&(!0===e||(!(0,u.isArray)(e)||0!==(0,c.get)(e,"length")))}function I(e,t){var n,r=e -for(n=0;n<t.length;n++)r=r.get(t[n]) -return r}function w(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1] -return null!==e&&"object"==typeof e?n?new ot(e):new ft(e):"function"==typeof e?new ft(e):t.PrimitiveReference.create(e)}function x(e){if(e in xt)return xt[e] -if(!d.environment.hasDOM)return xt[e]=e,e -var t=document.createElement("input") -try{t.type=e}catch(e){}return xt[e]=t.type===e}function k(e){return null!==e&&"object"==typeof e&&e[Tt]}function j(e,t){return k(e)?new Bt(e,t||"@key"):new Ht(e,t||"@identity")}function E(e){return"function"==typeof e.forEach}function S(e){return"function"==typeof e[Symbol.iterator]}function T(e){return null!==e&&("object"==typeof e||"function"==typeof e)}function P(e,t,n){return String(n)}function O(e,t){return t}function R(e,t){return N(t)}function N(e){switch(typeof e){case"string":return e -case"number":return String(e) -default:return(0,s.guidFor)(e)}}function M(e){return function(t){return String((0,c.get)(t,e))}}function L(e){var t=new Set -return function(n,r,i){var o=e(n,r,i),s=t[o] -return void 0===s?(t[o]=0,o):(t[o]=++s,o+"be277757-bbbe-4620-9fcb-213ef433cca2"+s)}}function D(e){return qt[e]}function z(e){return null===e||void 0===e?e="":"string"!=typeof e&&(e=""+e),new Ut(e)}function F(e){return null!==e&&"object"==typeof e&&"function"==typeof e.toHTML}function B(e){var t=void 0 -if(d.environment.hasDOM&&(t=H.call(e,"foobar:baz")),"foobar:"===t)e.protocolForURL=H -else if("object"==typeof URL)Gt=URL,e.protocolForURL=U -else{if(!p.IS_NODE)throw new Error("Could not find valid URL parsing mechanism for URL Sanitization") -Gt=(0,p.require)("url"),e.protocolForURL=U}}function H(e){return Yt||(Yt=document.createElement("a")),Yt.href=e,Yt.protocol}function U(e){var t=null -return"string"==typeof e&&(t=Gt.parse(e).protocol),null===t?":":t}function q(e){return{object:e.name+":"+e.outlet}}function V(e){var t,n,r -return d.ENV._APPLICATION_TEMPLATE_WRAPPER?(t=(0,s.assign)({},Zt,{dynamicTag:!0,elementHook:!0}),n=function(e){function n(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(n,e),n.prototype.getTagName=function(){return"div"},n.prototype.getLayout=function(e){var t=e.template,n=t.asWrappedLayout() -return{handle:n.compile(),symbolTable:n.symbolTable}},n.prototype.getCapabilities=function(){return t},n.prototype.didCreateElement=function(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,s.guidFor)(e))},n}(Xt),r=new n,new $t(e.state,r)):new $t(e.state)}function W(){}function G(e,t){return e[yt].get(t)}function Y(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?G(e,t[0]):I(e[yt],t)}function K(e){if(null!==e){var t,n,r,i,o=e[0],s=e[1],a=null===o?-1:o.indexOf("class") -if(-1!==a){if(t=s[a],!Array.isArray(t))return -n=t[0],n!==f.Ops.Get&&n!==f.Ops.MaybeLocal||(r=t[t.length-1],i=r[r.length-1],s[a]=[f.Ops.Helper,"-class",[t,i],null])}}}function Q(e){var t,n,r,i,o=e.names,s=e.value(),a=Object.create(null),u=Object.create(null) -for(a[vt]=u,t=0;t<o.length;t++)n=o[t],r=e.get(n),i=s[n],"function"==typeof i&&i[nt]?s[n]=i:r[et]&&(s[n]=new ln(r,i)),u[n]=r,a[n]=i -return a.attrs=s,a}function Z(e,t){e.named.has("id")&&(t.elementId=t.id)}function X(e){return"function"==typeof e.create}function J(e,n,r,i){for(var o,s,a,u=[],c=n.length-1;-1!==c;)o=n[c],s=tn.parse(o),a=s[1],-1===u.indexOf(a)&&(u.push(a),tn.install(e,r,s,i)),c--;-1===u.indexOf("id")&&i.setAttribute("id",t.PrimitiveReference.create(r.elementId),!0,null),-1===u.indexOf("style")&&on.install(e,r,i)}function $(e){return e.instrumentDetails({initialRender:!0})}function ee(e){return e.instrumentDetails({initialRender:!1})}function te(e){An.push(e)}function ne(e){var t=An.indexOf(e) -An.splice(t,1)}function re(){}function ie(){return null===_n&&(_n=m.default.defer(),(0,c.getCurrentRunLoop)()||c.backburner.schedule("actions",null,re)),_n.promise}function oe(){var e -null!==_n&&(e=_n.resolve,_n=null,c.backburner.join(null,e))}function se(){var e -for(e=0;e<An.length;e++)if(!An[e]._isValid()){if(In>10)throw In=0,An[e].destroy(),new Error("infinite rendering invalidation detected") -return In++,c.backburner.join(null,re)}In=0,oe()}function ae(){return jn}function ue(e){if(jn.hasOwnProperty(e))return jn[e]}function ce(e){return jn.hasOwnProperty(e)}function le(e,t){return jn[e]=t}function he(e){var t=e.positional,n=t.at(0),r=t.length,i=n.value() -return!0===i?r>1?u.String.dasherize(t.at(1).value()):null:!1===i?r>2?u.String.dasherize(t.at(2).value()):null:i}function de(e){var t=e.positional,n=t.at(0) -return new Ut(n.value())}function pe(e){return"checkbox"===e.positional.at(0).value()?"-checkbox":"-text-field"}function fe(e){var t=e.positional,n=t.at(0).value().split("."),r=n[n.length-1],i=t.at(1).value() -return!0===i?u.String.dasherize(r):i||0===i?String(i):""}function ge(e,t){var n=t.named,r=t.positional,i=r.capture(),o=i.references,s=o[0],u=o[1],c=o.slice(2),l=u._propertyKey,h=n.has("target")?n.get("target"):s,d=ve(n.has("value")&&n.get("value"),c),p=void 0 -return p="function"==typeof u[tt]?be(u,u,u[tt],d,l):(0,a.isConst)(h)&&(0,a.isConst)(u)?be(s.value(),h.value(),u.value(),d,l):ye(s.value(),h,u,d,l),p[nt]=!0,new ft(p)}function me(e){return e}function ve(e,t){var n=void 0 -t.length>0&&(n=function(e){return t.map(function(e){return e.value()}).concat(e)}) -var r=void 0 -return e&&(r=function(t){var n=e.value() -return n&&t.length>0&&(t[0]=(0,c.get)(t[0],n)),t}),n&&r?function(e){return r(n(e))}:n||r||me}function ye(e,t,n,r,i){return function(){return be(e,t.value(),n.value(),r,i).apply(void 0,arguments)}}function be(e,t,n,r,i){var o,s=void 0,a=void 0 -return"function"==typeof n[tt]?(s=n,a=n[tt]):(o=typeof n,"string"===o?(s=t,a=t.actions&&t.actions[n]):"function"===o&&(s=e,a=n)),function(){for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -var e,t,n,i={target:s,args:t,label:"@glimmer/closure-action"} -return(0,c.flaggedInstrument)("interaction.ember-action",i,function(){return c.join.apply(void 0,[s,a].concat(r(t)))})}}function Ce(e){return e.positional.value().map(Mn).join("")}function Ae(e,n){return void 0===n||null===n||""===n?t.NULL_REFERENCE:"string"==typeof n&&n.indexOf(".")>-1?I(e,n.split(".")):e.get(n)}function _e(e){var t,n=e.positional;(t=console).log.apply(t,n.value())}function Ie(e){return e&&e[zn]}function we(e){return e[Fn]||e}function xe(e){var t=(e.positional,e.named) -return new v.QueryParams((0,s.assign)({},t.value()))}function ke(e,t){var n -if(null===t||void 0===t){if(Hn.test(e.type))return(0,h.isSimpleClick)(e) -t=""}if(t.indexOf("any")>=0)return!0 -for(n=0;n<Bn.length;n++)if(e[Bn[n]+"Key"]&&-1===t.indexOf(Bn[n]))return!1 -return!0}function je(e){return null===e?null:[e[0].map(function(e){return"@"+e}),e[1]]}function Ee(e,t,n,r){var i=r.compiler.resolver.lookupComponentDefinition("-text-area",r.referrer) -return K(n),r.component.static(i,[t||[],je(n),null,null]),!0}function Se(e,t,n,r){var i=r.compiler.resolver.lookupComponentDefinition(e,r.referrer) -return r.component.static(i,[t,je(n),null,null]),!0}function Te(e,t,n,r){var i,o,s,a,u -if(null===t&&(t=[]),null!==n&&(i=n[0],o=n[1],(s=i.indexOf("type"))>-1)){if(a=o[s],Array.isArray(a))return u=t[0],r.dynamicComponent(u,t.slice(1),n,!0,null,null),!0 -if("checkbox"===a)return K(n),Se("-checkbox",t,n,r)}return Se("-text-field",t,n,r)}function Pe(e,t,n,r,i){return null!==n&&(null!==e?(i.compileParams(e),i.invokeStaticBlock(n,e.length)):i.invokeStatic(n)),!0}function Oe(e,t,n,r){var i=[f.Ops.Helper,"-mount",t||[],n] -return r.dynamicComponent(i,[],null,!1,null,null),!0}function Re(e,t,n,r){var i=[f.Ops.Helper,"-outlet",t||[],n] -return r.dynamicComponent(i,[],null,!1,null,null),!0}function Ne(e){var t=e.value() -if(void 0===t)return null -var n=t.render -if(void 0===n)return null -var r=n.template -return void 0===r?null:{ref:e,name:n.name,outlet:n.outlet,template:r,controller:n.controller}}function Me(e,t){return null===e?null===t:null!==t&&(e.template===t.template&&e.controller===t.controller)}function Le(e,t,n,r){var i -return!0===d.ENV._ENABLE_RENDER_SUPPORT&&(i=[f.Ops.Helper,"-render",t||[],n],r.dynamicComponent(i,null,null,!1,null,null),!0)}function De(e,t,n,r){if(-1===e.indexOf("-"))return!1 -var i=r.compiler.resolver.lookupComponentDefinition(e,r.referrer) -return null!==i&&(r.component.static(i,[null===t?[]:t,je(n),null,null]),!0)}function ze(e,t,n,r,i,o){if(-1===e.indexOf("-"))return!1 -var s=o.compiler.resolver.lookupComponentDefinition(e,o.referrer) -return null!==s&&(K(n),o.component.static(s,[t,je(n),r,i]),!0)}function Fe(e){var t,n=e.inlines,r=e.blocks -for(n.add("outlet",Re),n.add("render",Le),n.add("mount",Oe),n.add("input",Te),n.add("textarea",Ee),n.addMissing(De),r.add("let",Pe),r.addMissing(ze),t=0;t<cr.length;t++)(0,cr[t])(r,n) -return{blocks:r,inlines:n}}function Be(e){var t=e.renderer -if(!t)throw new Error("missing renderer for component "+e) -return t}function He(e,t){var n -return"reopenClass"in e?e.reopenClass((n={},n[dr]=t,n)):(e[dr]=t,e)}function Ue(e){return{object:"component:"+e}}function qe(e,t){return{source:void 0!==e?"template:"+e:void 0,namespace:t}}e.componentManager=e.COMPONENT_MANAGER=e.CustomComponentManager=e.OutletView=e.DebugStack=e.iterableFor=e.INVOKE=e.UpdatableReference=e.AbstractComponentManager=e._experimentalMacros=e._registerMacros=e.setupApplicationRegistry=e.setupEngineRegistry=e.setTemplates=e.getTemplates=e.hasTemplate=e.setTemplate=e.getTemplate=e.renderSettled=e._resetRenderers=e.InteractiveRenderer=e.InertRenderer=e.Renderer=e.isHTMLSafe=e.htmlSafe=e.escapeExpression=e.SafeString=e.Environment=e.helper=e.Helper=e.ROOT_REF=e.Component=e.LinkComponent=e.TextArea=e.TextField=e.Checkbox=e.template=e.RootTemplate=e.NodeDOMTreeConstruction=e.isSerializationFirstNode=e.DOMTreeConstruction=e.DOMChanges=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return t.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return t.DOMTreeConstruction}}),Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return n.isSerializationFirstNode}}),Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return r.NodeDOMTreeConstruction}}) -var Ve,We=(0,i.taggedTemplateLiteralLoose)(["template:components/-default"],["template:components/-default"]),Ge=(0,i.taggedTemplateLiteralLoose)(["component:-default"],["component:-default"]),Ye=(0,i.taggedTemplateLiteralLoose)(["template:-root"],["template:-root"]),Ke=(0,i.taggedTemplateLiteralLoose)(["template-compiler:main"],["template-compiler:main"]),Qe=function(){function e(e){this.factory=e,this.id=e.id,this.meta=e.meta}return e.prototype.create=function(e){var t=(0,s.getOwner)(e) -return this.factory.create(e.compiler,{owner:t})},e}(),Ze=y({id:"UYMQEP0l",block:'{"symbols":[],"statements":[[1,[26,"component",[[21,0,[]]],null],false]],"hasEval":false}',meta:{moduleName:"packages/ember-glimmer/lib/templates/root.hbs"}}),Xe=(0,s.symbol)("RECOMPUTE_TAG"),Je=u.FrameworkObject.extend({init:function(){this._super.apply(this,arguments),this[Xe]=a.DirtyableTag.create()},recompute:function(){this[Xe].inner.dirty()}}) -Je.isHelperFactory=!0 -var $e=function(){function e(e){this.compute=e,this.isHelperFactory=!0}return e.prototype.create=function(){return{compute:this.compute}},e}(),et=(0,s.symbol)("UPDATE"),tt=(0,s.symbol)("INVOKE"),nt=(0,s.symbol)("ACTION"),rt=function(){function e(){}return e.prototype.get=function(e){return st.create(this,e)},e}(),it=function(e){function t(){var t=(0,i.possibleConstructorReturn)(this,e.call(this)) -return t._lastRevision=null,t._lastValue=null,t}return(0,i.inherits)(t,e),t.prototype.value=function(){var e=this.tag,t=this._lastRevision,n=this._lastValue -return null!==t&&e.validate(t)||(n=this._lastValue=this.compute(),this._lastRevision=e.value()),n},t}(rt),ot=function(e){function t(t){var n=(0,i.possibleConstructorReturn)(this,e.call(this,t)) -return n.children=Object.create(null),n}return(0,i.inherits)(t,e),t.prototype.get=function(e){var t=this.children[e] -return void 0===t&&(t=this.children[e]=new at(this.inner,e)),t},t}(a.ConstReference),st=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.create=function(e,t){return(0,a.isConst)(e)?new at(e.value(),t):new ut(e,t)},t.prototype.get=function(e){return new ut(this,e)},t}(it),at=function(e){function t(t,n){var r=(0,i.possibleConstructorReturn)(this,e.call(this)) -return r._parentValue=t,r._propertyKey=n,r.tag=(0,c.tagForProperty)(t,n),r}return(0,i.inherits)(t,e),t.prototype.compute=function(){var e=this._parentValue,t=this._propertyKey -return(0,c.get)(e,t)},t.prototype[et]=function(e){(0,c.set)(this._parentValue,this._propertyKey,e)},t}(st),ut=function(e){function t(t,n){var r=(0,i.possibleConstructorReturn)(this,e.call(this)),o=t.tag,s=a.UpdatableTag.create(a.CONSTANT_TAG) -return r._parentReference=t,r._parentObjectTag=s,r._propertyKey=n,r.tag=(0,a.combine)([o,s]),r}return(0,i.inherits)(t,e),t.prototype.compute=function(){var e=this._parentReference,t=this._parentObjectTag,n=this._propertyKey,r=e.value() -t.inner.update((0,c.tagForProperty)(r,n)) -var i=typeof r -return"string"===i&&"length"===n?r.length:"object"===i&&null!==r||"function"===i?(0,c.get)(r,n):void 0},t.prototype[et]=function(e){var t=this._parentReference.value();(0,c.set)(t,this._propertyKey,e)},t}(st),ct=function(e){function t(t){var n=(0,i.possibleConstructorReturn)(this,e.call(this)) -return n.tag=a.DirtyableTag.create(),n._value=t,n}return(0,i.inherits)(t,e),t.prototype.value=function(){return this._value},t.prototype.update=function(e){e!==this._value&&(this.tag.inner.dirty(),this._value=e)},t}(rt),lt=function(e){function n(t){var n=(0,i.possibleConstructorReturn)(this,e.call(this,t)) -return n.objectTag=a.UpdatableTag.create(a.CONSTANT_TAG),n.tag=(0,a.combine)([t.tag,n.objectTag]),n}return(0,i.inherits)(n,e),n.create=function(e){var r -return(0,a.isConst)(e)?(r=e.value(),(0,s.isProxy)(r)?new at(r,"isTruthy"):t.PrimitiveReference.create(_(r))):new n(e)},n.prototype.toBool=function(e){return(0,s.isProxy)(e)?(this.objectTag.inner.update((0,c.tagForProperty)(e,"isTruthy")),(0,c.get)(e,"isTruthy")):(this.objectTag.inner.update((0,c.tagFor)(e)),_(e))},n}(t.ConditionalReference),ht=function(e){function t(t,n){var r=(0,i.possibleConstructorReturn)(this,e.call(this)) -return r.tag=n.tag,r.helper=t,r.args=n,r}return(0,i.inherits)(t,e),t.create=function(e,n){var r,i,o,s,u -return(0,a.isConst)(n)?(r=n.positional,i=n.named,o=r.value(),s=i.value(),u=e(o,s),w(u)):new t(e,n)},t.prototype.compute=function(){var e=this.helper,t=this.args,n=t.positional,r=t.named -return e(n.value(),r.value())},t}(it),dt=function(e){function t(t,n){var r=(0,i.possibleConstructorReturn)(this,e.call(this)) -return r.tag=(0,a.combine)([t[Xe],n.tag]),r.instance=t,r.args=n,r}return(0,i.inherits)(t,e),t.create=function(e,n){return new t(e,n)},t.prototype.compute=function(){var e=this.instance,t=this.args,n=t.positional,r=t.named,i=n.value(),o=r.value() -return e.compute(i,o)},t}(it),pt=function(e){function t(t,n){var r=(0,i.possibleConstructorReturn)(this,e.call(this)) -return r.tag=n.tag,r.helper=t,r.args=n,r}return(0,i.inherits)(t,e),t.prototype.compute=function(){return(0,this.helper)(this.args)},t}(it),ft=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.create=function(e){return w(e,!1)},t.prototype.get=function(e){return w((0,c.get)(this.inner,e),!1)},t}(a.ConstReference),gt=function(e){function t(t){var n=(0,i.possibleConstructorReturn)(this,e.call(this)) -return n.inner=t,n}return(0,i.inherits)(t,e),t.prototype.compute=function(){return this.inner.value()},t.prototype.get=function(e){return this.inner.get(e)},(0,i.createClass)(t,[{key:"tag",get:function(){return this.inner.tag}},{key:tt,get:function(){return this.inner[tt]}}]),t}(it),mt=(0,s.symbol)("DIRTY_TAG"),vt=(0,s.symbol)("ARGS"),yt=(0,s.symbol)("ROOT_REF"),bt=(0,s.symbol)("IS_DISPATCHING_ATTRS"),Ct=(0,s.symbol)("HAS_BLOCK"),At=(0,s.symbol)("BOUNDS"),_t=h.CoreView.extend(h.ChildViewsSupport,h.ViewStateSupport,h.ClassNamesSupport,u.TargetActionSupport,h.ActionSupport,h.ViewMixin,(Ve={isComponent:!0,init:function(){this._super.apply(this,arguments),this[bt]=!1,this[mt]=a.DirtyableTag.create(),this[yt]=new ot(this),this[At]=null},rerender:function(){this[mt].inner.dirty(),this._super()}},Ve[c.PROPERTY_DID_CHANGE]=function(e){if(!this[bt]){var t=this[vt],n=t&&t[e] -n&&n[et]&&n[et]((0,c.get)(this,e))}},Ve.getAttr=function(e){return this.get(e)},Ve.readDOMAttr=function(e){var n=(0,h.getViewElement)(this),r=n.namespaceURI===t.SVG_NAMESPACE,i=(0,t.normalizeProperty)(n,e),o=i.type,s=i.normalized -return r?n.getAttribute(s):"attr"===o?n.getAttribute(s):n[s]},Ve)) -_t.toString=function(){return"@ember/component"},_t.reopenClass({isComponentFactory:!0,positionalParams:[]}) -var It=y({id:"5jp2oO+o",block:'{"symbols":[],"statements":[],"hasEval":false}',meta:{moduleName:"packages/ember-glimmer/lib/templates/empty.hbs"}}),wt=_t.extend({layout:It,classNames:["ember-checkbox"],tagName:"input",attributeBindings:["type","checked","indeterminate","disabled","tabindex","name","autofocus","required","form"],type:"checkbox",disabled:!1,indeterminate:!1,didInsertElement:function(){this._super.apply(this,arguments),(0,c.get)(this,"element").indeterminate=!!(0,c.get)(this,"indeterminate")},change:function(){(0,c.set)(this,"checked",this.element.checked)}}) -wt.toString=function(){return"@ember/component/checkbox"} -var xt=Object.create(null),kt=_t.extend(h.TextSupport,{layout:It,classNames:["ember-text-field"],tagName:"input",attributeBindings:["accept","autocomplete","autosave","dir","formaction","formenctype","formmethod","formnovalidate","formtarget","height","inputmode","lang","list","type","max","min","multiple","name","pattern","size","step","value","width"],value:"",type:(0,c.computed)({get:function(){return"text"},set:function(e,t){var n="text" -return x(t)&&(n=t),n}}),size:null,pattern:null,min:null,max:null}) -kt.toString=function(){return"@ember/component/text-field"} -var jt=_t.extend(h.TextSupport,{classNames:["ember-text-area"],layout:It,tagName:"textarea",attributeBindings:["rows","cols","name","selectionEnd","selectionStart","autocomplete","wrap","lang","dir","value"],rows:null,cols:null}) -jt.toString=function(){return"@ember/component/text-area"} -var Et=y({id:"4GmgUGfN",block:'{"symbols":["&default"],"statements":[[4,"if",[[22,["linkTitle"]]],null,{"statements":[[1,[20,"linkTitle"],false]],"parameters":[]},{"statements":[[13,1]],"parameters":[]}]],"hasEval":false}',meta:{moduleName:"packages/ember-glimmer/lib/templates/link-to.hbs"}}),St=_t.extend({layout:Et,tagName:"a","current-when":null,title:null,rel:null,tabindex:null,target:null,activeClass:"active",loadingClass:"loading",disabledClass:"disabled",replace:!1,attributeBindings:["href","title","rel","tabindex","target"],classNameBindings:["active","loading","disabled","transitioningIn","transitioningOut"],eventName:"click",init:function(){this._super.apply(this,arguments) -var e=(0,c.get)(this,"eventName") -this.on(e,this,this._invoke)},_routing:u.inject.service("-routing"),disabled:(0,c.computed)({get:function(){return!1},set:function(e,t){return this._isDisabled=t,!!t&&(0,c.get)(this,"disabledClass")}}),_isActive:function(e){if((0,c.get)(this,"loading"))return!1 -var t,n=(0,c.get)(this,"current-when") -if("boolean"==typeof n)return n -var r=!!n -n=n||(0,c.get)(this,"qualifiedRouteName"),n=n.split(" ") -var i=(0,c.get)(this,"_routing"),o=(0,c.get)(this,"models"),s=(0,c.get)(this,"resolvedQueryParams") -for(t=0;t<n.length;t++)if(i.isActiveForRoute(o,s,n[t],e,r))return!0 -return!1},active:(0,c.computed)("activeClass","_active",function(){return!!this.get("_active")&&(0,c.get)(this,"activeClass")}),_active:(0,c.computed)("_routing.currentState","attrs.params",function(){var e=(0,c.get)(this,"_routing.currentState") -return!!e&&this._isActive(e)}),willBeActive:(0,c.computed)("_routing.targetState",function(){var e=(0,c.get)(this,"_routing"),t=(0,c.get)(e,"targetState") -if((0,c.get)(e,"currentState")!==t)return this._isActive(t)}),transitioningIn:(0,c.computed)("active","willBeActive",function(){return!0===(0,c.get)(this,"willBeActive")&&!(0,c.get)(this,"_active")&&"ember-transitioning-in"}),transitioningOut:(0,c.computed)("active","willBeActive",function(){return!(!1!==(0,c.get)(this,"willBeActive")||!(0,c.get)(this,"_active"))&&"ember-transitioning-out"}),_invoke:function(e){if(!(0,h.isSimpleClick)(e))return!0 -var t=(0,c.get)(this,"preventDefault"),n=(0,c.get)(this,"target") -if(!1!==t&&(n&&"_self"!==n||e.preventDefault()),!1===(0,c.get)(this,"bubbles")&&e.stopPropagation(),this._isDisabled)return!1 -if((0,c.get)(this,"loading"))return!1 -if(n&&"_self"!==n)return!1 -var r=(0,c.get)(this,"qualifiedRouteName"),i=(0,c.get)(this,"models"),o=(0,c.get)(this,"queryParams.values"),s=(0,c.get)(this,"replace"),a={queryParams:o,routeName:r} -return(0,c.flaggedInstrument)("interaction.link-to",a,this._generateTransition(a,r,i,o,s)),!1},_generateTransition:function(e,t,n,r,i){var o=(0,c.get)(this,"_routing") -return function(){e.transition=o.transitionTo(t,n,r,i)}},queryParams:null,qualifiedRouteName:(0,c.computed)("targetRouteName","_routing.currentState",function(){var e=(0,c.get)(this,"params"),t=e.length,n=e[t-1] -return n&&n.isQueryParams&&t--,(this[Ct]?0===t:1===t)?(0,c.get)(this,"_routing.currentRouteName"):(0,c.get)(this,"targetRouteName")}),resolvedQueryParams:(0,c.computed)("queryParams",function(){var e={},t=(0,c.get)(this,"queryParams") -if(!t)return e -var n=t.values -for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r]) -return e}),href:(0,c.computed)("models","qualifiedRouteName",function(){if("a"===(0,c.get)(this,"tagName")){var e=(0,c.get)(this,"qualifiedRouteName"),t=(0,c.get)(this,"models") -if((0,c.get)(this,"loading"))return(0,c.get)(this,"loadingHref") -var n=(0,c.get)(this,"_routing"),r=(0,c.get)(this,"queryParams.values") -return n.generateURL(e,t,r)}}),loading:(0,c.computed)("_modelsAreLoaded","qualifiedRouteName",function(){var e=(0,c.get)(this,"qualifiedRouteName") -if(!(0,c.get)(this,"_modelsAreLoaded")||null===e||void 0===e)return(0,c.get)(this,"loadingClass")}),_modelsAreLoaded:(0,c.computed)("models",function(){var e,t,n=(0,c.get)(this,"models") -for(e=0;e<n.length;e++)if(null===(t=n[e])||void 0===t)return!1 -return!0}),_getModels:function(e){var t,n,r=e.length-1,i=new Array(r) -for(t=0;t<r;t++)n=e[t+1],i[t]=n -return i},loadingHref:"#",didReceiveAttrs:function(){var e=void 0,t=(0,c.get)(this,"params") -t&&(t=t.slice()) -var n=(0,c.get)(this,"disabledWhen") -void 0!==n&&this.set("disabled",n),this[Ct]||this.set("linkTitle",t.shift()),this.set("targetRouteName",t[0]) -var r=t[t.length-1] -e=r&&r.isQueryParams?t.pop():{values:{}},this.set("queryParams",e),t.length>1?this.set("models",this._getModels(t)):this.set("models",[])}}) -St.toString=function(){return"@ember/routing/link-component"},St.reopenClass({positionalParams:"params"}) -var Tt=(0,s.symbol)("EACH_IN"),Pt=function(){function e(e){this.inner=e,this.tag=e.tag,this[Tt]=!0}return e.prototype.value=function(){return this.inner.value()},e.prototype.get=function(e){return this.inner.get(e)},e}(),Ot=function(){function e(e,t){this.length=e,this.keyFor=t,this.position=0}return e.prototype.isEmpty=function(){return!1},e.prototype.memoFor=function(e){return e},e.prototype.next=function(){var e=this.length,t=this.keyFor,n=this.position -if(n>=e)return null -var r=this.valueFor(n),i=this.memoFor(n),o=t(r,i,n) -return this.position++,{key:o,value:r,memo:i}},e}(),Rt=function(e){function t(t,n,r){var o=(0,i.possibleConstructorReturn)(this,e.call(this,n,r)) -return o.array=t,o}return(0,i.inherits)(t,e),t.from=function(e,t){var n=e.length -return 0===n?Ft:new this(e,n,t)},t.fromForEachable=function(e,t){var n=[] -return e.forEach(function(e){return n.push(e)}),this.from(n,t)},t.prototype.valueFor=function(e){return this.array[e]},t}(Ot),Nt=function(e){function t(t,n,r){var o=(0,i.possibleConstructorReturn)(this,e.call(this,n,r)) -return o.array=t,o}return(0,i.inherits)(t,e),t.from=function(e,t){var n=(0,c.get)(e,"length") -return 0===n?Ft:new this(e,n,t)},t.prototype.valueFor=function(e){return(0,c.objectAt)(this.array,e)},t}(Ot),Mt=function(e){function t(t,n,r,o){var s=(0,i.possibleConstructorReturn)(this,e.call(this,r,o)) -return s.keys=t,s.values=n,s}return(0,i.inherits)(t,e),t.fromIndexable=function(e,t){var n,r=Object.keys(e),i=[],o=r.length -for(n=0;n<o;n++)i.push((0,c.get)(e,r[n])) -return 0===o?Ft:new this(r,i,o,t)},t.fromForEachable=function(e,t){var n=arguments,r=[],i=[],o=0,s=!1 -return e.forEach(function(e,t){s=s||n.length>=2,s?(r.push(t),i.push(e)):i.push(e),o++}),0===o?Ft:s?new this(r,i,o,t):new Rt(i,o,t)},t.prototype.valueFor=function(e){return this.values[e]},t.prototype.memoFor=function(e){return this.keys[e]},t}(Ot),Lt=function(){function e(e,t,n){this.iterable=e,this.result=t,this.keyFor=n,this.position=0}return e.from=function(e,t){var n=e[Symbol.iterator](),r=n.next(),i=r.value -return r.done?Ft:Array.isArray(i)&&2===i.length?new this(n,r,t):new Dt(n,r,t)},e.prototype.isEmpty=function(){return!1},e.prototype.next=function(){var e=this.iterable,t=this.result,n=this.position,r=this.keyFor -if(t.done)return null -var i=this.valueFor(t,n),o=this.memoFor(t,n),s=r(i,o,n) -return this.position++,this.result=e.next(),{key:s,value:i,memo:o}},e}(),Dt=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.prototype.valueFor=function(e){return e.value},t.prototype.memoFor=function(e,t){return t},t}(Lt),zt=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.prototype.valueFor=function(e){return e.value[1]},t.prototype.memoFor=function(e){return e.value[0]},t}(Lt),Ft={isEmpty:function(){return!0},next:function(){return null}},Bt=function(){function e(e,t){this.ref=e,this.keyPath=t,this.valueTag=a.UpdatableTag.create(a.CONSTANT_TAG),this.tag=(0,a.combine)([e.tag,this.valueTag])}return e.prototype.iterate=function(){var e=this.ref,t=this.valueTag,n=e.value(),r=(0,c.tagFor)(n) -return(0,s.isProxy)(n)&&(n=(0,u._contentFor)(n)),t.inner.update(r),T(n)?Array.isArray(n)||(0,u.isEmberArray)(n)?Mt.fromIndexable(n,this.keyFor(!0)):s.HAS_NATIVE_SYMBOL&&S(n)?zt.from(n,this.keyFor()):E(n)?Mt.fromForEachable(n,this.keyFor()):Mt.fromIndexable(n,this.keyFor(!0)):Ft},e.prototype.valueReferenceFor=function(e){return new ct(e.value)},e.prototype.updateValueReference=function(e,t){e.update(t.value)},e.prototype.memoReferenceFor=function(e){return new ct(e.memo)},e.prototype.updateMemoReference=function(e,t){e.update(t.memo)},e.prototype.keyFor=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.keyPath -switch(t){case"@key":return e?O:L(R) -case"@index":return P -case"@identity":return L(N) -default:return L(M(t))}},e}(),Ht=function(){function e(e,t){this.ref=e,this.keyPath=t,this.valueTag=a.UpdatableTag.create(a.CONSTANT_TAG),this.tag=(0,a.combine)([e.tag,this.valueTag])}return e.prototype.iterate=function(){var e=this.ref,t=this.valueTag,n=e.value() -if(t.inner.update((0,c.tagForProperty)(n,"[]")),null===n||"object"!=typeof n)return Ft -var r=this.keyFor() -return Array.isArray(n)?Rt.from(n,r):(0,u.isEmberArray)(n)?Nt.from(n,r):s.HAS_NATIVE_SYMBOL&&S(n)?Dt.from(n,r):E(n)?Rt.fromForEachable(n,r):Ft},e.prototype.valueReferenceFor=function(e){return new ct(e.value)},e.prototype.updateValueReference=function(e,t){e.update(t.value)},e.prototype.memoReferenceFor=function(e){return new ct(e.memo)},e.prototype.updateMemoReference=function(e,t){e.update(t.memo)},e.prototype.keyFor=function(){var e=this.keyPath -switch(e){case"@index":return P -case"@identity":return L(N) -default:return L(M(e))}},e}(),Ut=function(){function e(e){this.string=e}return e.prototype.toString=function(){return""+this.string},e.prototype.toHTML=function(){return this.toString()},e}(),qt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},Vt=/[&<>"'`=]/,Wt=/[&<>"'`=]/g,Gt=void 0,Yt=void 0,Kt=function(e){function t(t){var n=(0,i.possibleConstructorReturn)(this,e.call(this,t)) -return n.inTransaction=!1,n.owner=t[s.OWNER],n.isInteractive=n.owner.lookup("-environment:main").isInteractive,n.destroyedComponents=[],B(n),n}return(0,i.inherits)(t,e),t.create=function(e){return new this(e)},t.prototype.protocolForURL=function(e){return e},t.prototype.lookupComponent=function(e,t){return(0,h.lookupComponent)(t.owner,e,t)},t.prototype.toConditionalReference=function(e){return lt.create(e)},t.prototype.iterableFor=function(e,t){return j(e,t)},t.prototype.scheduleInstallModifier=function(t,n){this.isInteractive&&e.prototype.scheduleInstallModifier.call(this,t,n)},t.prototype.scheduleUpdateModifier=function(t,n){this.isInteractive&&e.prototype.scheduleUpdateModifier.call(this,t,n)},t.prototype.didDestroy=function(e){e.destroy()},t.prototype.begin=function(){this.inTransaction=!0,e.prototype.begin.call(this)},t.prototype.commit=function(){var t,n=this.destroyedComponents -for(this.destroyedComponents=[],t=0;t<n.length;t++)n[t].destroy() -try{e.prototype.commit.call(this)}finally{this.inTransaction=!1}},t}(t.Environment),Qt=function(){function e(){this.debugStack=void 0}return e.prototype.prepareArgs=function(){return null},e.prototype.didCreateElement=function(){},e.prototype.didRenderLayout=function(){},e.prototype.didCreate=function(){},e.prototype.update=function(){},e.prototype.didUpdateLayout=function(){},e.prototype.didUpdate=function(){},e}(),Zt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0},Xt=function(e){function n(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(n,e),n.prototype.create=function(e,n,r,i){i.outletState=n.ref,void 0===i.rootOutletState&&(i.rootOutletState=i.outletState) -var o=n.controller -return{self:void 0===o?t.UNDEFINED_REFERENCE:new ot(o),finalize:(0,c._instrumentStart)("render.outlet",q,n)}},n.prototype.layoutFor=function(){throw new Error("Method not implemented.")},n.prototype.getLayout=function(e){var t=e.template,n=t.asLayout() -return{handle:n.compile(),symbolTable:n.symbolTable}},n.prototype.getCapabilities=function(){return Zt},n.prototype.getSelf=function(e){return e.self},n.prototype.getTag=function(){return a.CONSTANT_TAG},n.prototype.didRenderLayout=function(e){e.finalize()},n.prototype.getDestructor=function(){return null},n}(Qt),Jt=new Xt,$t=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Jt -this.state=e,this.manager=t},en=function(){function e(e,t,n,r){this.environment=e,this.component=t,this.args=n,this.finalizer=r,this.classRef=null,this.classRef=null,this.argsRevision=null===n?0:n.tag.value()}return e.prototype.destroy=function(){var e=this.component,t=this.environment -t.isInteractive&&(e.trigger("willDestroyElement"),e.trigger("willClearRender")),t.destroyedComponents.push(e)},e.prototype.finalize=function(){(0,this.finalizer)(),this.finalizer=W},e}(),tn={parse:function(e){var t,n,r=e.indexOf(":") -return-1===r?[e,e,!0]:(t=e.substring(0,r),n=e.substring(r+1),[t,n,!1])},install:function(e,n,r,i){var o,s=r[0],a=r[1] -r[2] -if("id"===a)return o=(0,c.get)(n,s),void 0!==o&&null!==o||(o=n.elementId),o=t.PrimitiveReference.create(o),void i.setAttribute("id",o,!0,null) -var u=s.indexOf(".")>-1,l=u?Y(n,s.split(".")):G(n,s) -"style"===a&&(l=new rn(l,G(n,"isVisible"))),i.setAttribute(a,l,!1,null)}},nn=z("display: none;"),rn=function(e){function t(t,n){var r=(0,i.possibleConstructorReturn)(this,e.call(this)) -return r.inner=t,r.isVisible=n,r.tag=(0,a.combine)([t.tag,n.tag]),r}return(0,i.inherits)(t,e),t.prototype.compute=function(){var e,t=this.inner.value() -return!1!==this.isVisible.value()?t:t?(e=t+" display: none;",F(t)?z(e):e):nn},t}(a.CachedReference),on={install:function(e,t,n){n.setAttribute("style",(0,a.map)(G(t,"isVisible"),this.mapStyleValue),!1,null)},mapStyleValue:function(e){return!1===e?nn:null}},sn={install:function(e,n,r,i){var o,s,a,u,c=r.split(":"),l=c[0],h=c[1],d=c[2] -""===l?i.setAttribute("class",t.PrimitiveReference.create(h),!0,null):(o=l.indexOf(".")>-1,s=o?l.split("."):[],a=o?Y(n,s):G(n,l),u=void 0,u=void 0===h?new an(a,o?s[s.length-1]:l):new un(a,h,d),i.setAttribute("class",u,!1,null))}},an=function(e){function t(t,n){var r=(0,i.possibleConstructorReturn)(this,e.call(this)) -return r.inner=t,r.path=n,r.tag=t.tag,r.inner=t,r.path=n,r.dasherizedPath=null,r}return(0,i.inherits)(t,e),t.prototype.compute=function(){var e,t=this.inner.value() -return!0===t?(e=this.path,this.dasherizedPath||(this.dasherizedPath=u.String.dasherize(e))):t||0===t?String(t):null},t}(a.CachedReference),un=function(e){function t(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,o=(0,i.possibleConstructorReturn)(this,e.call(this)) -return o.inner=t,o.truthy=n,o.falsy=r,o.tag=t.tag,o}return(0,i.inherits)(t,e),t.prototype.compute=function(){var e=this.inner,t=this.truthy,n=this.falsy -return e.value()?t:n},t}(a.CachedReference),cn=(0,s.symbol)("REF"),ln=function(){function e(e,t){this[h.MUTABLE_CELL]=!0,this[cn]=e,this.value=t}return e.prototype.update=function(e){this[cn][et](e)},e}(),hn=(0,g.privatize)(We),dn=function(e){function r(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(r,e),r.prototype.getLayout=function(e){return{handle:e.handle,symbolTable:e.symbolTable}},r.prototype.templateFor=function(e,t){var n,r=(0,c.get)(e,"layout") -if(void 0!==r)return X(r)?t.createTemplate(r,(0,s.getOwner)(e)):r -var i=(0,s.getOwner)(e),o=(0,c.get)(e,"layoutName") -return o&&(n=i.lookup("template:"+o))?n:i.lookup(hn)},r.prototype.getDynamicLayout=function(e,t){var n=e.component,r=this.templateFor(n,t),i=r.asWrappedLayout() -return{handle:i.compile(),symbolTable:i.symbolTable}},r.prototype.getTagName=function(e){var t=e.component -return""===t.tagName?null:t&&t.tagName||"div"},r.prototype.getCapabilities=function(e){return e.capabilities},r.prototype.prepareArgs=function(e,t){var r,i,o,a,u=e.ComponentClass.class.positionalParams -if(void 0===u||null===u||0===t.positional.length)return null -var c=void 0 -if("string"==typeof u)r={},r[u]=t.positional.capture(),c=r,(0,s.assign)(c,t.named.capture().map) -else{if(!(Array.isArray(u)&&u.length>0))return null -for(i=Math.min(u.length,t.positional.length),c={},(0,s.assign)(c,t.named.capture().map),o=0;o<i;o++)a=u[o],c[a]=t.positional.at(o)}return{positional:n.EMPTY_ARRAY,named:c}},r.prototype.create=function(e,t,n,r,i,o){var s=r.view,a=t.ComponentClass,u=n.named.capture(),l=Q(u) -Z(n,l),l.parentView=s,l[Ct]=o,l._targetObject=i.value(),t.template&&(l.layout=t.template) -var p=a.create(l),f=(0,c._instrumentStart)("render.component",$,p) -r.view=p,null!==s&&void 0!==s&&(0,h.addChildView)(s,p),!0===d.ENV._ENABLE_DID_INIT_ATTRS_SUPPORT&&p.trigger("didInitAttrs"),p.trigger("didReceiveAttrs"),""===p.tagName&&(e.isInteractive&&p.trigger("willRender"),p._transitionTo("hasElement"),e.isInteractive&&p.trigger("willInsertElement")) -var g=new en(e,p,u,f) -return n.named.has("class")&&(g.classRef=n.named.get("class")),e.isInteractive&&""!==p.tagName&&p.trigger("willRender"),g},r.prototype.getSelf=function(e){return e.component[yt]},r.prototype.didCreateElement=function(e,n,r){var i,o=e.component,a=e.classRef,u=e.environment;(0,h.setViewElement)(o,n) -var c=o.attributeBindings,l=o.classNames,d=o.classNameBindings -r.setAttribute("id",t.PrimitiveReference.create((0,s.guidFor)(o)),!1,null),c&&c.length?J(n,c,o,r):(o.elementId&&r.setAttribute("id",t.PrimitiveReference.create(o.elementId),!1,null),on.install(n,o,r)),a&&(i=new an(a,a._propertyKey),r.setAttribute("class",i,!1,null)),l&&l.length&&l.forEach(function(e){r.setAttribute("class",t.PrimitiveReference.create(e),!1,null)}),d&&d.length&&d.forEach(function(e){sn.install(n,o,e,r)}),r.setAttribute("class",t.PrimitiveReference.create("ember-view"),!1,null),"ariaRole"in o&&r.setAttribute("role",G(o,"ariaRole"),!1,null),o._transitionTo("hasElement"),u.isInteractive&&o.trigger("willInsertElement")},r.prototype.didRenderLayout=function(e,t){e.component[At]=t,e.finalize()},r.prototype.getTag=function(e){var t=e.args,n=e.component -return t?(0,a.combine)([t.tag,n[mt]]):n[mt]},r.prototype.didCreate=function(e){var t=e.component -e.environment.isInteractive&&(t._transitionTo("inDOM"),t.trigger("didInsertElement"),t.trigger("didRender"))},r.prototype.update=function(e){var t,n=e.component,r=e.args,i=e.argsRevision,o=e.environment -e.finalizer=(0,c._instrumentStart)("render.component",ee,n),r&&!r.tag.validate(i)&&(t=Q(r),e.argsRevision=r.tag.value(),n[bt]=!0,n.setProperties(t),n[bt]=!1,n.trigger("didUpdateAttrs"),n.trigger("didReceiveAttrs")),o.isInteractive&&(n.trigger("willUpdate"),n.trigger("willRender"))},r.prototype.didUpdateLayout=function(e){e.finalize()},r.prototype.didUpdate=function(e){var t=e.component -e.environment.isInteractive&&(t.trigger("didUpdate"),t.trigger("didRender"))},r.prototype.getDestructor=function(e){return e},r}(Qt),pn={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0},fn=new dn,gn=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:fn,n=arguments[2],r=arguments[3],i=arguments[4],o=arguments[5] -this.name=e,this.manager=t,this.ComponentClass=n,this.handle=r -var s=i&&i.asLayout(),a=s?s.symbolTable:void 0 -this.symbolTable=a,this.template=i,this.args=o,this.state={name:e,ComponentClass:n,handle:r,template:i,capabilities:pn,symbolTable:a}},mn=function(e){function t(t){var n=(0,i.possibleConstructorReturn)(this,e.call(this)) -return n.component=t,n}return(0,i.inherits)(t,e),t.prototype.getLayout=function(e,t){var n=this.templateFor(this.component,t),r=n.asWrappedLayout() -return{handle:r.compile(),symbolTable:r.symbolTable}},t.prototype.create=function(e,t,n,r){var i=this.component,o=(0,c._instrumentStart)("render.component",$,i) -return r.view=i,""===i.tagName&&(e.isInteractive&&i.trigger("willRender"),i._transitionTo("hasElement"),e.isInteractive&&i.trigger("willInsertElement")),new en(e,i,null,o)},t}(dn),vn={dynamicLayout:!1,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!1},yn=function(){function e(e){this.component=e -var t=new mn(e) -this.manager=t -var n=g.FACTORY_FOR.get(e) -this.state={name:n.fullName.slice(10),capabilities:vn,ComponentClass:n,handle:null}}return e.prototype.getTag=function(e){return e.component[mt]},e}(),bn=function(){function e(e,t,n){this.view=e,this.outletState=t,this.rootOutletState=n}return e.prototype.child=function(){return new e(this.view,this.outletState,this.rootOutletState)},e.prototype.get=function(e){return this.outletState},e.prototype.set=function(e,t){return this.outletState=t,t},e}(),Cn=function(){function e(e,n,r,i,o,s,a){var u=this -this.id=(0,h.getViewId)(e),this.env=n,this.root=e,this.result=void 0,this.shouldReflush=!1,this.destroyed=!1 -var c=this.options={alwaysRevalidate:!1} -this.render=function(){var e=r.asLayout(),l=e.compile(),h=(0,t.renderMain)(e.compiler.program,n,i,s,a(n,{element:o,nextSibling:null}),l),d=void 0 -do{d=h.next()}while(!d.done) -var p=u.result=d.value -u.render=function(){return p.rerender(c)}}}return e.prototype.isFor=function(e){return this.root===e},e.prototype.destroy=function(){var e,t=this.result,n=this.env -if(this.destroyed=!0,this.env=void 0,this.root=null,this.result=void 0,this.render=void 0,t){e=!n.inTransaction,e&&n.begin() -try{t.destroy()}finally{e&&n.commit()}}},e}(),An=[];(0,c.setHasViews)(function(){return An.length>0}) -var _n=null,In=0 -c.backburner.on("begin",function(){var e -for(e=0;e<An.length;e++)An[e]._scheduleRevalidate()}),c.backburner.on("end",se) -var wn=function(){function e(e,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:h.fallbackViewRegistry,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:t.clientBuilder -this._env=e,this._rootTemplate=n,this._viewRegistry=r,this._destinedForDOM=i,this._destroyed=!1,this._roots=[],this._lastRevision=-1,this._isRenderingRoots=!1,this._removedRoots=[],this._builder=o}return e.prototype.appendOutletView=function(e,n){var r=V(e) -this._appendDefinition(e,(0,t.curry)(r),n)},e.prototype.appendTo=function(e,n){var r=new yn(e) -this._appendDefinition(e,(0,t.curry)(r),n)},e.prototype._appendDefinition=function(e,n,r){var i=new ft(n),o=new bn(null,t.UNDEFINED_REFERENCE),s=new Cn(e,this._env,this._rootTemplate,i,r,o,this._builder) -this._renderRoot(s)},e.prototype.rerender=function(){this._scheduleRevalidate()},e.prototype.register=function(e){var t=(0,h.getViewId)(e) -this._viewRegistry[t]=e},e.prototype.unregister=function(e){delete this._viewRegistry[(0,h.getViewId)(e)]},e.prototype.remove=function(e){e._transitionTo("destroying"),this.cleanupRootFor(e),(0,h.setViewElement)(e,null),this._destinedForDOM&&e.trigger("didDestroyElement"),e.isDestroying||e.destroy()},e.prototype.cleanupRootFor=function(e){if(!this._destroyed)for(var t,n=this._roots,r=this._roots.length;r--;)t=n[r],t.isFor(e)&&(t.destroy(),n.splice(r,1))},e.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())},e.prototype.getBounds=function(e){var t=e[At] -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}},e.prototype.createElement=function(e){return this._env.getAppendOperations().createElement(e)},e.prototype._renderRoot=function(e){var t=this._roots -t.push(e),1===t.length&&te(this),this._renderRootsTransaction()},e.prototype._renderRoots=function(){var e,t,n,r,i,o=this._roots,s=this._env,u=this._removedRoots,l=void 0,h=void 0 -do{s.begin() -try{for(h=o.length,l=!1,e=0;e<o.length;e++)t=o[e],t.destroyed?u.push(t):(n=t.shouldReflush,e>=h&&!n||(t.options.alwaysRevalidate=n,n=t.shouldReflush=(0,c.runInTransaction)(t,"render"),l=l||n)) -this._lastRevision=a.CURRENT_TAG.value()}finally{s.commit()}}while(l||o.length>h) -for(;u.length;)r=u.pop(),i=o.indexOf(r),o.splice(i,1) -0===this._roots.length&&ne(this)},e.prototype._renderRootsTransaction=function(){if(!this._isRenderingRoots){this._isRenderingRoots=!0 -var e=!1 -try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=a.CURRENT_TAG.value(),!0===this._env.inTransaction&&this._env.commit()),this._isRenderingRoots=!1}}},e.prototype._clearAllRoots=function(){var e,t,n=this._roots -for(e=0;e<n.length;e++)t=n[e],t.destroy() -this._removedRoots.length=0,this._roots=[],n.length&&ne(this)},e.prototype._scheduleRevalidate=function(){c.backburner.scheduleOnce("render",this,this._revalidate)},e.prototype._isValid=function(){return this._destroyed||0===this._roots.length||a.CURRENT_TAG.validate(this._lastRevision)},e.prototype._revalidate=function(){this._isValid()||this._renderRootsTransaction()},e}(),xn=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.create=function(e){return new this(e.env,e.rootTemplate,e._viewRegistry,!1,e.builder)},t.prototype.getElement=function(){throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")},t}(wn),kn=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.create=function(e){return new this(e.env,e.rootTemplate,e._viewRegistry,!0,e.builder)},t.prototype.getElement=function(e){return(0,h.getViewElement)(e)},t}(wn),jn={},En=A(function(e){return u.String.loc.apply(null,e)}),Sn=function(){function e(e){this.resolver=e}return e.prototype.getCapabilities=function(e){var t=this.resolver.resolve(e),n=t.manager,r=t.state -return n.getCapabilities(r)},e.prototype.getLayout=function(e){var t=this.resolver.resolve(e),n=t.manager,r=t.state -if(n.getCapabilities(r).dynamicLayout)return null -var i=n.getLayout(r,this.resolver) -return{compile:function(){return i.handle},symbolTable:i.symbolTable}},e.prototype.lookupHelper=function(e,t){return this.resolver.lookupHelper(e,t)},e.prototype.lookupModifier=function(e,t){return this.resolver.lookupModifier(e,t)},e.prototype.lookupComponentDefinition=function(e,t){return this.resolver.lookupComponentHandle(e,t)},e.prototype.lookupPartial=function(e,t){return this.resolver.lookupPartial(e,t)},e}(),Tn={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0},Pn=function(e){function n(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(n,e),n.prototype.getLayout=function(e){var t=e.asLayout() -return{handle:t.compile(),symbolTable:t.symbolTable}},n.prototype.getCapabilities=function(){return Tn},n.prototype.create=function(){return null},n.prototype.getSelf=function(){return t.NULL_REFERENCE},n.prototype.getTag=function(){return a.CONSTANT_TAG},n.prototype.getDestructor=function(){return null},n}(Qt),On=new Pn,Rn=function(e){this.state=e,this.manager=On},Nn=function(e){return null===e||void 0===e||"function"!=typeof e.toString},Mn=function(e){return Nn(e)?"":String(e)},Ln=function(e){function n(n,r){var o=(0,i.possibleConstructorReturn)(this,e.call(this)) -o.sourceReference=n,o.pathReference=r,o.lastPath=null,o.innerReference=t.NULL_REFERENCE -var s=o.innerTag=a.UpdatableTag.create(a.CONSTANT_TAG) -return o.tag=(0,a.combine)([n.tag,r.tag,s]),o}return(0,i.inherits)(n,e),n.create=function(e,t){var r -return(0,a.isConst)(t)?(r=t.value(),Ae(e,r)):new n(e,t)},n.prototype.compute=function(){var e=this.lastPath,t=this.innerReference,n=this.innerTag,r=this.pathReference.value() -return r!==e&&(t=Ae(this.sourceReference,r),n.inner.update(t.tag),this.innerReference=t,this.lastPath=r),t.value()},n.prototype[et]=function(e){(0,c.set)(this.sourceReference.value(),this.pathReference.value(),e)},n}(it),Dn=function(e){function t(t,n,r){var o=(0,i.possibleConstructorReturn)(this,e.call(this)) -return o.branchTag=a.UpdatableTag.create(a.CONSTANT_TAG),o.tag=(0,a.combine)([t.tag,o.branchTag]),o.cond=t,o.truthy=n,o.falsy=r,o}return(0,i.inherits)(t,e),t.create=function(e,n,r){var i=lt.create(e) -return(0,a.isConst)(i)?i.value()?n:r:new t(i,n,r)},t.prototype.compute=function(){var e=this.cond.value()?this.truthy:this.falsy -return this.branchTag.inner.update(e.tag),e.value()},t}(it),zn=(0,s.symbol)("MUT"),Fn=(0,s.symbol)("SOURCE"),Bn=["alt","shift","meta","ctrl"],Hn=/^click|mouse|touch/,Un={registeredActions:h.ActionManager.registeredActions,registerAction:function(e){var t=e.actionId -return h.ActionManager.registeredActions[t]=e,t},unregisterAction:function(e){var t=e.actionId -delete h.ActionManager.registeredActions[t]}},qn=function(){function e(e,t,n,r,i,o,s,a,u){this.element=e,this.actionId=t,this.actionName=n,this.actionArgs=r,this.namedArgs=i,this.positional=o,this.implicitTarget=s,this.dom=a,this.eventName=this.getEventName(),this.tag=u}return e.prototype.getEventName=function(){return this.namedArgs.get("on").value()||"click"},e.prototype.getActionArgs=function(){var e,t=new Array(this.actionArgs.length) -for(e=0;e<this.actionArgs.length;e++)t[e]=this.actionArgs[e].value() -return t},e.prototype.getTarget=function(){var e=this.implicitTarget,t=this.namedArgs -return t.has("target")?t.get("target").value():e.value()},e.prototype.handler=function(e){var t=this,n=this.actionName,r=this.namedArgs,i=r.get("bubbles"),o=r.get("preventDefault"),s=r.get("allowedKeys"),a=this.getTarget(),u=!1!==i.value() -return!ke(e,s.value())||(!1!==o.value()&&e.preventDefault(),u||e.stopPropagation(),(0,c.join)(function(){var e=t.getActionArgs(),r={args:e,target:a,name:null} -return"function"==typeof n[tt]?void(0,c.flaggedInstrument)("interaction.ember-action",r,function(){n[tt].apply(n,e)}):"function"==typeof n?void(0,c.flaggedInstrument)("interaction.ember-action",r,function(){n.apply(a,e)}):(r.name=n,void(a.send?(0,c.flaggedInstrument)("interaction.ember-action",r,function(){a.send.apply(a,[n].concat(e))}):(0,c.flaggedInstrument)("interaction.ember-action",r,function(){a[n].apply(a,e)})))}),u)},e.prototype.destroy=function(){Un.unregisterAction(this)},e}(),Vn=function(){function e(){}return e.prototype.create=function(e,t,n,r){var i,o=t.capture(),a=o.named,u=o.positional,c=o.tag,l=void 0,h=void 0,d=void 0 -u.length>1&&(l=u.at(0),d=u.at(1),d[tt]?h=d:(d._propertyKey,h=d.value())) -var p=[] -for(i=2;i<u.length;i++)p.push(u.at(i)) -var f=(0,s.uuid)() -return new qn(e,f,h,p,a,u,l,r,c)},e.prototype.install=function(e){var t=e.dom,n=e.element,r=e.actionId -Un.registerAction(e),t.setAttribute(n,"data-ember-action",""),t.setAttribute(n,"data-ember-action-"+r,r)},e.prototype.update=function(e){var t=e.positional,n=t.at(1) -n[tt]||(e.actionName=n.value()),e.eventName=e.getEventName()},e.prototype.getTag=function(e){return e.tag},e.prototype.getDestructor=function(e){return e},e}(),Wn={dynamicLayout:!0,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0},Gn=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.prototype.getDynamicLayout=function(e){var t=e.engine.lookup("template:application"),n=t.asLayout() -return{handle:n.compile(),symbolTable:n.symbolTable}},t.prototype.getCapabilities=function(){return Wn},t.prototype.create=function(e,t){var n,r,i=e.owner.buildChildEngineInstance(t.name) -i.boot() -var o=i.factoryFor("controller:application"),s=o||(0,v.generateControllerFactory)(i,"application"),u=void 0,c=void 0,l=void 0,h=void 0,d=t.modelRef -return void 0===d?(u=s.create(),c=new ot(u),h=a.CONSTANT_TAG,l={engine:i,controller:u,self:c,tag:h}):(n=d.value(),r=d.tag.value(),u=s.create({model:n}),c=new ot(u),h=d.tag,l={engine:i,controller:u,self:c,tag:h,modelRef:d,modelRev:r}),l},t.prototype.getSelf=function(e){return e.self},t.prototype.getTag=function(e){return e.tag},t.prototype.getDestructor=function(e){return e.engine},t.prototype.didRenderLayout=function(){},t.prototype.update=function(e){var t,n=e.controller,r=e.modelRef,i=e.modelRev -r.tag.validate(i)||(t=r.value(),e.modelRev=r.tag.value(),n.set("model",t))},t}(Qt),Yn=new Gn,Kn=function(e,t){this.manager=Yn,this.state={name:e,modelRef:t}},Qn=function(){function e(e,t,n){this.tag=e.tag,this.nameRef=e,this.modelRef=n,this.env=t,this._lastName=null,this._lastDef=null}return e.prototype.value=function(){var e=this.env,n=this.nameRef,r=this.modelRef,i=n.value() -return"string"==typeof i?this._lastName===i?this._lastDef:e.owner.hasRegistration("engine:"+i)?(this._lastName=i,this._lastDef=(0,t.curry)(new Kn(i,r)),this._lastDef):null:(this._lastDef=null,this._lastName=null,null)},e.prototype.get=function(){return t.UNDEFINED_REFERENCE},e}(),Zn=function(){function e(e){this.outletState=e,this.tag=a.DirtyableTag.create()}return e.prototype.get=function(e){return new Jn(this,e)},e.prototype.value=function(){return this.outletState},e.prototype.update=function(e){this.outletState.outlets.main=e,this.tag.inner.dirty()},e}(),Xn=function(){function e(e,t){this.parentStateRef=e,this.outletNameRef=t,this.tag=(0,a.combine)([e.tag,t.tag])}return e.prototype.value=function(){var e=this.parentStateRef.value(),t=void 0===e?void 0:e.outlets -return void 0===t?void 0:t[this.outletNameRef.value()]},e.prototype.get=function(e){return new Jn(this,e)},e}(),Jn=function(){function e(e,t){this.parent=e,this.key=t,this.tag=e.tag}return e.prototype.get=function(t){return new e(this,t)},e.prototype.value=function(){var e=this.parent.value() -return e&&e[this.key]},e}(),$n=function(){function e(e,t){this.root=e,this.name=t,this.tag=e.tag}return e.prototype.value=function(){var e=this.root.value(),t=e&&e.outlets.main,n=t&&t.outlets -if(t=n&&n.__ember_orphans__,void 0!==(n=t&&t.outlets)){var r=n[this.name] -if(void 0!==r&&void 0!==r.render){var i=Object.create(null) -return i[r.render.outlet]=r,r.wasUsed=!0,{outlets:i,render:void 0}}}},e.prototype.get=function(e){return new Jn(this,e)},e}(),er=function(){function e(e){this.outletRef=e,this.definition=null,this.lastState=null,this.tag=e.tag}return e.prototype.value=function(){var e=Ne(this.outletRef) -if(Me(e,this.lastState))return this.definition -this.lastState=e -var n=null -return null!==e&&(n=(0,t.curry)(new $t(e))),this.definition=n},e.prototype.get=function(){return t.UNDEFINED_REFERENCE},e}(),tr=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.prototype.create=function(e,t,n,r){var i=t.name -return r.rootOutletState&&(r.outletState=new $n(r.rootOutletState,i)),this.createRenderState(n,e.owner,i)},t.prototype.getLayout=function(e){var t=e.template,n=t.asLayout() -return{handle:n.compile(),symbolTable:n.symbolTable}},t.prototype.getSelf=function(e){var t=e.controller -return new ot(t)},t}(Qt),nr={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0},rr=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.prototype.createRenderState=function(e,t,n){return{controller:t.lookup("controller:"+n)||(0,v.generateController)(t,n)}},t.prototype.getCapabilities=function(){return nr},t.prototype.getTag=function(){return a.CONSTANT_TAG},t.prototype.getDestructor=function(){return null},t}(tr),ir=new rr,or={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0},sr=function(e){function t(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(t,e),t.prototype.createRenderState=function(e,t,n){var r=e.positional.at(1) -return{controller:(t.factoryFor("controller:"+n)||(0,v.generateControllerFactory)(t,"controller:"+n)).create({model:r.value()}),model:r}},t.prototype.update=function(e){var t=e.controller,n=e.model -t.set("model",n.value())},t.prototype.getCapabilities=function(){return or},t.prototype.getTag=function(e){return e.model.tag},t.prototype.getDestructor=function(e){return e.controller},t}(tr),ar=new sr,ur=function(e,t,n){this.manager=n,this.state={name:e,template:t}},cr=[],lr=function(e){function t(t){var n=(0,i.possibleConstructorReturn)(this,e.call(this)) -return n.delegate=t,n}return(0,i.inherits)(t,e),t.prototype.create=function(e,t,n,r){var i=this.delegate,o=n.named.capture(),s=i.create({args:o.value(),ComponentClass:t.ComponentClass}),a=r.view -return null!==a&&void 0!==a&&(0,h.addChildView)(a,s),r.view=s,new hr(i,s,o)},t.prototype.update=function(e){var t=e.component,n=e.args -this.delegate.update(t,n.value())},t.prototype.didUpdate=function(e){var t=e.component -"function"==typeof this.delegate.didUpdate&&this.delegate.didUpdate(t)},t.prototype.getContext=function(e){this.delegate.getContext(e)},t.prototype.getLayout=function(e){return{handle:e.template.asLayout().compile(),symbolTable:e.symbolTable}},t.prototype.getSelf=function(e){var t=e.component,n=this.delegate.getContext(t) -return new ot(n)},t.prototype.getDestructor=function(e){return e},t.prototype.getCapabilities=function(){return{dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0}},t.prototype.getTag=function(e){return e.args.tag},t.prototype.didRenderLayout=function(e){var t=e.component -Be(t).register(t),"function"==typeof this.delegate.didCreate&&this.delegate.didCreate(t)},t}(Qt),hr=function(){function e(e,t,n){this.delegate=e,this.component=t,this.args=n}return e.prototype.destroy=function(){var e=this.delegate,t=this.component -Be(t).unregister(t),e.destroy&&e.destroy(t)},e}(),dr=(0,s.symbol)("COMPONENT_MANAGER"),pr={if:function(e,t){var n=t.positional -return Dn.create(n.at(0),n.at(1),n.at(2))},action:ge,concat:function(e,t){return new pt(Ce,t.capture())},get:function(e,t){return Ln.create(t.positional.at(0),t.positional.at(1))},hash:function(e,t){return t.named.capture()},log:function(e,t){return new pt(_e,t.capture())},mut:function(e,t){var n=t.positional.at(0) -if(Ie(n))return n -var r=Object.create(n) -return r[Fn]=n,r[tt]=n[et],r[zn]=!0,r},"query-params":function(e,t){return new pt(xe,t.capture())},readonly:function(e,t){var n=we(t.positional.at(0)) -return new gt(n)},unbound:function(e,t){return ft.create(t.positional.at(0).value())},unless:function(e,t){var n=t.positional -return Dn.create(n.at(0),n.at(2),n.at(1))},"-class":function(e,t){return new pt(he,t.capture())},"-each-in":function(e,t){return new Pt(t.positional.at(0))},"-input-type":function(e,t){return new pt(pe,t.capture())},"-normalize-class":function(e,t){return new pt(fe,t.capture())},"-html-safe":function(e,t){return new pt(de,t.capture())},"-get-dynamic-var":t.getDynamicVar,"-mount":function(e,t){var n=e.env,r=t.positional.at(0),i=t.named.has("model")?t.named.get("model"):void 0 -return new Qn(r,n,i)},"-outlet":function(e,t){var n=e.dynamicScope(),r=void 0 -return r=0===t.positional.length?new a.ConstReference("main"):t.positional.at(0),new er(new Xn(n.outletState,r))},"-render":function(e,n){var r,i,o,s,a=e.env,u=n.positional.at(0),c=u.value(),l=a.owner.lookup("template:"+c),h=void 0 -return n.named.has("controller")?(r=n.named.get("controller"),h=r.value()):h=c,1===n.positional.length?(i=new ur(h,l,ir),ft.create((0,t.curry)(i))):(o=new ur(h,l,ar),s=n.capture(),ft.create((0,t.curry)(o,s)))}},fr={action:new Vn},gr=function(){function e(){this.handles=[void 0],this.objToHandle=new WeakMap,this.builtInHelpers=pr,this.builtInModifiers=fr,this.templateCache=new Map,this.componentDefinitionCache=new Map,this.templateCacheHits=0,this.templateCacheMisses=0,this.componentDefinitionCount=0,this.helperDefinitionCount=0 -var e=new o.Macros -Fe(e),this.compiler=new o.LazyCompiler(new Sn(this),this,e)}return e.prototype.lookupComponentDefinition=function(e,t){var n=this.lookupComponentHandle(e,t) -return null===n?null:this.resolve(n)},e.prototype.lookupComponentHandle=function(e,t){var n=this.handles.length,r=this.handle(this._lookupComponentDefinition(e,t)) -return n===r&&this.componentDefinitionCount++,r},e.prototype.resolve=function(e){return this.handles[e]},e.prototype.lookupHelper=function(e,t){var n,r=this.handles.length,i=this._lookupHelper(e,t) -return null!==i?(n=this.handle(i),r===n&&this.helperDefinitionCount++,n):null},e.prototype.lookupModifier=function(e){return this.handle(this._lookupModifier(e))},e.prototype.lookupPartial=function(e,t){var n=this._lookupPartial(e,t) -return this.handle(n)},e.prototype.createTemplate=function(e,t){var n,r,i=this.templateCache.get(t) -void 0===i&&(i=new Map,this.templateCache.set(t,i)) -var o=i.get(e) -return void 0===o?(n=this.compiler,r={compiler:n},(0,s.setOwner)(r,t),o=e.create(r),i.set(e,o),this.templateCacheMisses++):this.templateCacheHits++,o},e.prototype.handle=function(e){if(void 0===e||null===e)return null -var t=this.objToHandle.get(e) -return void 0===t&&(t=this.handles.push(e)-1,this.objToHandle.set(e,t)),t},e.prototype._lookupHelper=function(e,t){var n=this.builtInHelpers[e] -if(void 0!==n)return n -var r=t.owner,i=t.moduleName,o=e,s=qe(i,void 0),a=r.factoryFor("helper:"+o,s)||r.factoryFor("helper:"+o) -return b(a)?function(e,t){var n=a.create() -return C(n)?new ht(n.compute,t.capture()):(e.newDestroyable(n),dt.create(n,t.capture()))}:null},e.prototype._lookupPartial=function(e,t){var n=(0,h.lookupPartial)(e,t.owner),r=new o.PartialDefinition(e,(0,h.lookupPartial)(e,t.owner)) -if(n)return r -throw new Error(e+" is not a partial")},e.prototype._lookupModifier=function(e){var t=this.builtInModifiers[e] -return void 0!==t?t:null},e.prototype._parseNameForNamespace=function(e){var t=e,n=void 0,r=e.indexOf("::") -return-1!==r&&(t=e.slice(r+2),n=e.slice(0,r)),{name:t,namespace:n}},e.prototype._lookupComponentDefinition=function(e,t){var n,r=e,i=(0,h.lookupComponent)(t.owner,r,qe(t.moduleName,void 0)),o=i.layout,s=i.component,a=void 0===s?o:s -if(void 0===a)return null -var u=this.componentDefinitionCache.get(a) -if(void 0!==u)return u -if(o&&!s&&d.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)return n=new Rn(o),this.componentDefinitionCache.set(a,n),n -var l=(0,c._instrumentStart)("render.getComponentDefinition",Ue,r),p=o||s?new gn(r,void 0,s||t.owner.factoryFor((0,g.privatize)(Ge)),null,o):null -return l(),this.componentDefinitionCache.set(a,p),p},e}(),mr={create:function(){return(new gr).compiler}},vr=y({id:"o98Iahwz",block:'{"symbols":["&default"],"statements":[[13,1]],"hasEval":false}',meta:{moduleName:"packages/ember-glimmer/lib/templates/component.hbs"}}),yr=y({id:"cNysaqQS",block:'{"symbols":[],"statements":[[1,[20,"outlet"],false]],"hasEval":false}',meta:{moduleName:"packages/ember-glimmer/lib/templates/outlet.hbs"}}),br="-top-level",Cr="main",Ar=function(){function e(e,t,n,r){this._environment=e,this.renderer=t,this.owner=n,this.template=r -var i=this.ref=new Zn({outlets:{main:void 0},render:{owner:n,into:void 0,outlet:Cr,name:br,controller:void 0,template:r}}) -this.state={ref:i,name:br,outlet:Cr,template:r,controller:void 0}}return e.extend=function(t){return function(e){function n(){return(0,i.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,i.inherits)(n,e),n.create=function(n){return n?e.create.call(this,(0,s.assign)({},t,n)):e.create.call(this,t)},n}(e)},e.reopenClass=function(e){(0,s.assign)(this,e)},e.create=function(t){var n=t._environment,r=t.renderer,i=t.template -return new e(n,r,t[s.OWNER],i)},e.prototype.appendTo=function(e){var t=this._environment||d.environment,n=void 0 -n=t.hasDOM&&"string"==typeof e?document.querySelector(e):e,(0,c.schedule)("render",this.renderer,"appendOutletView",this,n)},e.prototype.rerender=function(){},e.prototype.setOutletState=function(e){this.ref.update(e)},e.prototype.destroy=function(){},e}() -e.RootTemplate=Ze,e.template=y,e.Checkbox=wt,e.TextField=kt,e.TextArea=jt,e.LinkComponent=St,e.Component=_t,e.ROOT_REF=yt,e.Helper=Je,e.helper=A,e.Environment=Kt,e.SafeString=Ut,e.escapeExpression=function(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML() -if(null===e||void 0===e)return"" -if(!e)return e+"" -e=""+e}return Vt.test(e)?e.replace(Wt,D):e},e.htmlSafe=z,e.isHTMLSafe=F,e.Renderer=wn,e.InertRenderer=xn,e.InteractiveRenderer=kn,e._resetRenderers=function(){An.length=0},e.renderSettled=ie,e.getTemplate=ue,e.setTemplate=le,e.hasTemplate=ce,e.getTemplates=ae,e.setTemplates=function(e){jn=e},e.setupEngineRegistry=function(e){e.register("view:-outlet",Ar),e.register("template:-outlet",yr),e.injection("view:-outlet","template","template:-outlet"),e.injection("service:-dom-changes","document","service:-document"),e.injection("service:-dom-tree-construction","document","service:-document"),e.register((0,g.privatize)(We),vr),e.register("service:-glimmer-environment",Kt),e.register((0,g.privatize)(Ke),mr),e.injection("template","compiler",(0,g.privatize)(Ke)),e.optionsForType("helper",{instantiate:!1}),e.register("helper:loc",En),e.register("component:-text-field",kt),e.register("component:-text-area",jt),e.register("component:-checkbox",wt),e.register("component:link-to",St),d.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register((0,g.privatize)(Ge),_t)},e.setupApplicationRegistry=function(e){e.injection("service:-glimmer-environment","appendOperations","service:-dom-tree-construction"),e.injection("renderer","env","service:-glimmer-environment"),e.register("service:-dom-builder",{create:function(e){switch(e.bootOptions._renderMode){case"serialize":return r.serializeBuilder.bind(null) -case"rehydrate":return t.rehydrationBuilder.bind(null) -default:return t.clientBuilder.bind(null)}}}),e.injection("service:-dom-builder","bootOptions","-environment:main"),e.injection("renderer","builder","service:-dom-builder"),e.register((0,g.privatize)(Ye),Ze),e.injection("renderer","rootTemplate",(0,g.privatize)(Ye)),e.register("renderer:-dom",kn),e.register("renderer:-inert",xn),d.environment.hasDOM&&e.injection("service:-glimmer-environment","updateOperations","service:-dom-changes"),e.register("service:-dom-changes",{create:function(e){var n=e.document -return new t.DOMChanges(n)}}),e.register("service:-dom-tree-construction",{create:function(e){var n=e.document -return new(d.environment.hasDOM?t.DOMTreeConstruction:r.NodeDOMTreeConstruction)(n)}})},e._registerMacros=function(e){cr.push(e)},e._experimentalMacros=cr,e.AbstractComponentManager=Qt -e.UpdatableReference=ct,e.INVOKE=tt,e.iterableFor=j,e.DebugStack=void 0,e.OutletView=Ar,e.CustomComponentManager=lr,e.COMPONENT_MANAGER=dr,e.componentManager=He}),e("ember-metal",["exports","ember-environment","ember-debug","ember-babel","container","backburner","@glimmer/reference","ember-utils","ember/version"],function(e,t,n,r,i,o,s,a,u){"use strict" -function c(e,t,n){var r,i=t[n+1],o=t[n+2] -for(r=0;r<e.length;r+=3)if(e[r]===i&&e[r+1]===o)return -e.push(i,o,t[n+3])}function l(e,n,r,i,o){t.ENV._ENABLE_DID_INIT_ATTRS_SUPPORT,i||"function"!=typeof r||(i=r,r=null),ce(e).addToListeners(n,r,i,o)}function h(e,t,n,r){r||"function"!=typeof n||(r=n,n=null),ce(e).removeFromListeners(t,n,r)}function d(e,t,n,r,i){var o,s,a,u,c -if(void 0===r&&(o=void 0===i?ue(e):i,r="object"==typeof o&&null!==o&&o.matchingListeners(t)),void 0===r||0===r.length)return!1 -for(s=r.length-3;s>=0;s-=3)a=r[s],u=r[s+1],c=r[s+2],u&&(c&&h(e,t,a,u),a||(a=e),"string"==typeof u&&(u=a[u]),u.apply(a,n)) -return!0}function p(){return vt}function f(){return bt}function g(){return At}function m(){return It.run.apply(It,arguments)}function v(){return It.join.apply(It,arguments)}function y(){return s.DirtyableTag.create()}function b(e,t,n){if("object"!=typeof e||null===e)return s.CONSTANT_TAG -var r=void 0===n?ce(e):n -if(a.isProxy(e))return C(e,r) -var i=r.writableTags(),o=i[t] -return o||(i[t]=y())}function C(e,t){var n -return"object"==typeof e&&null!==e?(n=void 0===t?ce(e):t,n.writableTag(y)):s.CONSTANT_TAG}function A(e,t,n){var r=n.readableTag() -void 0!==r&&(a.isProxy(e)?r.inner.first.inner.dirty():r.inner.dirty()) -var i=n.readableTags(),o=void 0!==i?i[t]:void 0 -void 0!==o&&kt(o),void 0===r&&void 0===o||_()}function _(){xt()&&It.ensureInstance()}function I(e,t,n){var r=void 0===n?ce(e):n,i=r.peekWatching(t)||0 -r.writeWatching(t,i+1),0===i&&r.writableChains(re).add(t)}function w(e,t,n){var r=void 0===n?ue(e):n -if(void 0!==r){var i=r.peekWatching(t) -i>0&&(r.writeWatching(t,i-1),1===i&&r.writableChains(re).remove(t))}}function x(e,t,n){de(t)?I(e,t,n):U(e,t,n)}function k(e,t){var n=ue(e) -return void 0!==n&&n.peekWatching(t)||0}function j(e,t,n){de(t)?w(e,t,n):q(e,t,n)}function E(e){return e+":change"}function S(e,t,n,r){l(e,E(t),n,r),x(e,t)}function T(e,t,n,r){j(e,t),h(e,E(t),n,r)}function P(e,t,n){var r=void 0===n?ue(e):n,i=void 0!==r -if(!i||r.isInitialized(e)){var o=le(e,t,r) -if(void 0!==o&&"function"==typeof o.didChange&&o.didChange(e,t),i&&r.peekWatching(t)>0&&(O(e,t,r),N(e,t,r),F(e,t,r)),Et in e&&e[Et](t),i){if(r.isSourceDestroying())return -A(e,t,r)}}}function O(e,t,n){if(!n.isSourceDestroying()&&n.hasDeps(t)){var r=Ot -r&&(Ot=!1),R(P,e,t,Pt,n),r&&(Pt.clear(),Ot=!0)}}function R(e,t,n,r,i){var o=r.get(t) -if(void 0===o&&(o=new Set,r.set(t,o)),!o.has(n)){var s=void 0 -i.forEachInDeps(n,function(n,r){r&&(void 0!==(s=le(t,n,i))&&s._suspended===t||e(t,n,i))})}}function N(e,t,n){var r=n.readableChainWatchers() -void 0!==r&&r.notify(t,!0,P)}function M(e,t,n){var r=n.readableChainWatchers() -void 0!==r&&r.revalidate(t)}function L(){Tt++}function D(){--Tt<=0&&St.flush()}function z(e){L() -try{e()}finally{D()}}function F(e,t,n){if(!n.isSourceDestroying()){var r=E(t) -Tt>0?St.add(e,t,r):d(e,r,[e,t])}}function B(e,t){return function(){return t.get(this,e)}}function H(e,t,n,r,i){void 0===i&&(i=ce(e)) -var o=i.peekWatching(t),s=void 0!==o&&o>0,a=le(e,t,i),u=void 0!==a -u&&(a.teardown(e,t,i),i.removeDescriptors(t)) -var c=!0 -e===Array.prototype&&(c=!1) -var l=void 0 -return n instanceof Rt?(l=n,Object.defineProperty(e,t,{configurable:!0,enumerable:c,get:B(t,l)}),i.writeDescriptors(t,l),"function"==typeof n.setup&&n.setup(e,t)):void 0===n||null===n?(l=r,u?Object.defineProperty(e,t,{configurable:!0,enumerable:c,writable:!0,value:l}):!1===c?Object.defineProperty(e,t,{configurable:!0,enumerable:c,writable:!0,value:l}):e[t]=r):(l=n,Object.defineProperty(e,t,n)),s&&M(e,t,i),"function"==typeof e.didDefineProperty&&e.didDefineProperty(e,t,l),this}function U(e,t,n){var r,i=void 0===n?ce(e):n,o=i.peekWatching(t)||0 -i.writeWatching(t,o+1),0===o&&(r=le(e,t,i),void 0!==r&&r.willWatch&&r.willWatch(e,t,i),"function"==typeof e.willWatchProperty&&e.willWatchProperty(t))}function q(e,t,n){var r,i,o=void 0===n?ue(e):n -if(void 0!==o&&!o.isSourceDestroyed()){var s=o.peekWatching(t) -1===s?(o.writeWatching(t,0),r=le(e,t,o),i=void 0!==r,i&&r.didUnwatch&&r.didUnwatch(e,t,o),"function"==typeof e.didUnwatchProperty&&e.didUnwatchProperty(t)):s>1&&o.writeWatching(t,s-1)}}function V(e,t){return Array.isArray(e)?e[t]:e.objectAt(t)}function W(e,t,n,r){var i,o -if(Y(e,t,n,r.length),r.length<=Mt)e.splice.apply(e,[t,n].concat(r)) -else for(e.splice(t,n),i=0;i<r.length;i+=Mt)o=r.slice(i,i+Mt),e.splice.apply(e,[t+i,0].concat(o)) -K(e,t,n,r.length)}function G(e,t,n,r,i){var o=n&&n.willChange||"arrayWillChange",s=n&&n.didChange||"arrayDidChange",a=me(e,"hasArrayObservers") -return r(e,"@array:before",t,o),r(e,"@array:change",t,s),a===i&&P(e,"hasArrayObservers"),e}function Y(e,t,n,r){return void 0===t?(t=0,n=r=-1):(void 0===n&&(n=-1),void 0===r&&(r=-1)),Z(e,t,n,r),d(e,"@array:before",[e,t,n,r]),e}function K(e,t,n,r){void 0===t?(t=0,n=r=-1):(void 0===n&&(n=-1),void 0===r&&(r=-1)) -var i,o,s,a,u,c=ue(e);(r<0||n<0||r-n!=0)&&P(e,"length",c),P(e,"[]",c),X(e,t,n,r),d(e,"@array:change",[e,t,n,r]) -var l=Se(e) -return void 0!==l&&(i=me(e,"length"),o=-1===r?0:r,s=-1===n?0:n,a=i-(o-s),u=t<0?a+t:t,l.has("firstObject")&&0===u&&P(e,"firstObject",c),l.has("lastObject")&&a-1<u+s&&P(e,"lastObject",c)),e}function Q(e){var t=Lt.get(e) -return void 0===t&&(t=new Dt(e),Lt.set(e,t)),t}function Z(e,t,n,r){var i=Lt.get(e) -void 0!==i&&i.arrayWillChange(e,t,n,r)}function X(e,t,n,r){var i=Lt.get(e) -void 0!==i&&i.arrayDidChange(e,t,n,r)}function J(e,t,n,r,i){for(var o;--i>=r;)(o=V(e,i))&&S(o,t,n,"contentKeyDidChange")}function $(e,t,n,r,i){for(var o;--i>=r;)(o=V(e,i))&&T(o,t,n,"contentKeyDidChange")}function ee(e){return"object"==typeof e&&null!==e}function te(e,t,n){var r=le(e,t,n) -return!(void 0!==r&&!1===r._volatile)}function ne(){return new zt}function re(e){return new Ft(null,null,e)}function ie(e,t,n){var r=ce(e) -r.writableChainWatchers(ne).add(t,n),U(e,t,r)}function oe(e,t,n,r){if(ee(e)){var i=void 0===r?ue(e):r -void 0!==i&&void 0!==i.readableChainWatchers()&&(i=ce(e),i.readableChainWatchers().remove(t,n),q(e,t,i))}}function se(e,t){if(ee(e)){var n=ue(e) -if(void 0===n||n.proto!==e)return"@each"===t?Q(e):te(e,t,n)?me(e,t):Ee(e,t)}}function ae(e,t){Wt.set(e,t)}function ue(e){for(var t=e,n=void 0;void 0!==t&&null!==t;){if(void 0!==(n=Wt.get(t)))return n -t=Vt(t)}}function ce(e){var t=ue(e),n=void 0 -if(void 0!==t){if(t.source===e)return t -n=t}var r=new Ut(e,n) -return ae(e,r),r}function le(e,t,n){var r=void 0===n?ue(e):n -if(void 0!==r)return r.peekDescriptors(t)}function he(e){return void 0!==e&&null!==e&&"object"==typeof e&&!0===e.isDescriptor}function de(e){return"string"==typeof e&&-1!==Yt.get(e)}function pe(e,t,n){return"value"in n?ge(t,n):fe(t,n)}function fe(e,t){function n(){var t=Qt,n=Qt=new Kt,r=i.call(this) -Qt=t -var o=n.combine() -return Qt&&Qt.add(o),(void 0)(b(this,e),o),r}function r(){kt(b(this,e)),o.apply(this,arguments)}var i=t.get,o=t.set -return{enumerable:!0,configurable:!1,get:i&&n,set:o&&r}}function ge(e,t){var n=Symbol(e) -return{enumerable:!0,configurable:!0,get:function(){return Qt&&Qt.add(b(this,e)),n in this||(this[n]=t.value),this[n]},set:function(t){C(this).inner.dirty(),kt(b(this,e)),this[n]=t,Zt()}}}function me(e,t){var n=typeof e,r="object"===n,i=void 0,o=void 0 -if(r||"function"===n){if(void 0!==(i=le(e,t)))return i.get(e,t) -if(o=e[t],he(o))return Object.defineProperty(e,t,{configurable:!0,enumerable:!1===o.enumerable,get:function(){return o.get(this,t)}}),ce(e).writeDescriptors(t,o),"function"==typeof o.setup&&o.setup(e,t),o.get(e,t)}else o=e[t] -if(void 0===o){if(de(t))return ve(e,t) -if(r&&!(t in e)&&"function"==typeof e.unknownProperty)return e.unknownProperty(t)}return o}function ve(e,t){var n,r=e,i=t.split(".") -for(n=0;n<i.length;n++){if(!ye(r))return -if((r=me(r,i[n]))&&r.isDestroyed)return}return r}function ye(e){return void 0!==e&&null!==e&&Xt[typeof e]}function be(e,t,n,r){if(!e.isDestroyed){if(de(t))return Ce(e,t,n,r) -var i,o=le(e,t) -if(void 0!==o)return o.set(e,t,n),n -var s=void 0 -return s=e[t],he(s)?(Object.defineProperty(e,t,{configurable:!0,enumerable:!1===s.enumerable,get:function(){return s.get(this,t)}}),ce(e).writeDescriptors(t,s),"function"==typeof s.setup&&s.setup(e,t),s.set(e,t,n),n):(void 0!==s||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(i=ue(e),e[t]=n,s!==n&&P(e,t,i)):e.setUnknownProperty(t,n),n)}}function Ce(e,t,r,i){var o=t.split("."),s=o.pop(),a=o.join("."),u=ve(e,a) -if(u)return be(u,s,r) -if(!i)throw new n.Error('Property set failed: object in path "'+a+'" could not be found or was destroyed.')}function Ae(e,t){var n=e.indexOf("{") -n<0?t(e.replace($t,".[]")):_e("",e,n,t)}function _e(e,t,n,r){var i=t.indexOf("}"),o=0,s=void 0,a=void 0,u=t.substring(n+1,i).split(","),c=t.substring(i+1) -for(e+=t.substring(0,n),a=u.length;o<a;)s=c.indexOf("{"),s<0?r((e+u[o++]+c).replace($t,".[]")):_e(e+u[o++],c,s,r)}function Ie(e,t,n,r){var i,o,s=e._dependentKeys -if(null!==s&&void 0!==s)for(i=0;i<s.length;i++)o=s[i],r.writeDeps(o,n,(r.peekDeps(o,n)||0)+1),x(t,o,r)}function we(e,t,n,r){var i,o,s=e._dependentKeys -if(null!==s&&void 0!==s)for(i=0;i<s.length;i++)o=s[i],r.writeDeps(o,n,(r.peekDeps(o,n)||0)-1),j(t,o,r)}function xe(){}function ke(){for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -var e,t,n,r=t.pop(),i=new en(r) -return t.length>0&&i.property.apply(i,t),i}function je(e){var t=nn.get(e) -return void 0===t&&(t=new Map,nn.set(e,t)),t}function Ee(e,t){var n=nn.get(e) -if(void 0!==n)return n.get(t)}function Se(e){return nn.get(e)}function Te(e,t){throw new n.Error("Cannot set read-only property '"+t+"' on object: "+a.inspect(e))}function Pe(e,t,n){return H(e,t,null),be(e,t,n)}function Oe(e){var t,n=[],r=void 0 -for(t=0;t<sn.length;t++)r=sn[t],r.regex.test(e)&&n.push(r.object) -return an[e]=n,n}function Re(e,t,n,r){var i=void 0 -try{i=e.call(r)}catch(e){n.exception=e,i=n}finally{t()}return i}function Ne(){}function Me(e,n,r){if(0===sn.length)return Ne -var i=an[e] -if(i||(i=Oe(e)),0===i.length)return Ne -var o=n(r),s=t.ENV.STRUCTURED_PROFILE,a=void 0 -s&&(a=e+": "+o.object,console.time(a)) -var u=new Array(i.length),c=void 0,l=void 0,h=un() -for(c=0;c<i.length;c++)l=i[c],u[c]=l.before(e,h,o) -return function(){var t=void 0,n=void 0,r=un() -for(t=0;t<i.length;t++)n=i[t],"function"==typeof n.after&&n.after(e,r,o,u[t]) -s&&console.timeEnd(a)}}function Le(e){return null===e||void 0===e}function De(e){var t,n,r=Le(e) -if(r)return r -if("number"==typeof e.size)return!e.size -var i=typeof e -return"object"===i&&"number"==typeof(t=me(e,"size"))?!t:"number"==typeof e.length&&"function"!==i?!e.length:"object"===i&&"number"==typeof(n=me(e,"length"))&&!n}function ze(e){return De(e)||"string"==typeof e&&!1===/\S/.test(e)}function Fe(e){var t=Object.create(null) -for(var n in e)t[n]=e[n] -return t}function Be(e,t){var n=e._keys.copy(),r=Fe(e._values) -return t._keys=n,t._values=r,t.size=e.size,t}function He(e){var n=a.getName(e) -delete bn[n],yn.splice(yn.indexOf(e),1),n in t.context.lookup&&e===t.context.lookup[n]&&(t.context.lookup[n]=void 0)}function Ue(){if(mn.unprocessedNamespaces){var e,n,r,i=t.context.lookup,o=Object.keys(i) -for(e=0;e<o.length;e++)n=o[e],Ze(n.charCodeAt(0))&&(r=Xe(i,n))&&a.setName(r,n)}}function qe(e){return gn||We(),bn[e]}function Ve(e){Qe([e.toString()],e,new Set)}function We(){var e,t,n=mn.unprocessedNamespaces -if(n&&(Ue(),mn.unprocessedNamespaces=!1),n||vn){for(e=yn,t=0;t<e.length;t++)Ve(e[t]) -vn=!1}}function Ge(){var e=a.getName(this) -return void 0!==e?e:(e=Je(this),a.setName(this,e),e)}function Ye(){return gn}function Ke(){vn=!0}function Qe(e,t,n){var r,i=e.length,o=e.join(".") -bn[o]=t,a.setName(t,o) -for(var s in t)if(fn.call(t,s))if(r=t[s],e[i]=s,r&&r.toString===Ge&&void 0===a.getName(r))a.setName(r,e.join(".")) -else if(r&&r.isNamespace){if(n.has(r))continue -n.add(r),Qe(e,r,n)}e.length=i}function Ze(e){return e>=65&&e<=90}function Xe(e,t){var n -try{return(null!==(n=e[t])&&"object"==typeof n||"function"==typeof n)&&n.isNamespace&&n}catch(e){}}function Je(e){var t,n=void 0 -if(!gn){if(We(),void 0!==(n=a.getName(e)))return n -t=e -do{if((t=Object.getPrototypeOf(t))===Function.prototype||t===Object.prototype)break -if(void 0!==(n=a.getName(e))){n="(subclass of "+n+")" -break}}while(void 0===n)}return n||"(unknown)"}function $e(e){return"function"==typeof e&&!1!==e.isMethod&&e!==Boolean&&e!==Object&&e!==Number&&e!==Array&&e!==Date&&e!==String}function et(e,t){return t instanceof _n?e.hasMixin(t)?An:(e.addMixin(t),t.properties):t}function tt(e,t,n,r){var i=n[e]||r[e] -return t[e]&&(i=i?Cn.call(i,t[e]):t[e]),i}function nt(e,t,n,r,i,o){var s=void 0 -return void 0===r[t]&&(s=i[t]),s||(s=le(o,t,e)),void 0!==s&&s instanceof en?(n=Object.create(n),n._getter=a.wrap(n._getter,s._getter),s._setter&&(n._setter?n._setter=a.wrap(n._setter,s._setter):n._setter=s._setter),n):n}function rt(e,t,n,r,i){if(void 0!==i[t])return n -var o=r[t] -return void 0===o&&void 0===le(e,t)&&(o=e[t]),"function"==typeof o?a.wrap(n,o):n}function it(e,t,n,r){var i=r[t]||e[t] -return a.makeArray(i).concat(a.makeArray(n))}function ot(e,t,n,r){var i,o=r[t]||e[t] -if(!o)return n -var s=a.assign({},o),u=!1 -for(var c in n)n.hasOwnProperty(c)&&(i=n[c],$e(i)?(u=!0,s[c]=rt(e,c,i,o,{})):s[c]=i) -return u&&(s._super=a.ROOT),s}function st(e,t,n,r,i,o,s,a){n instanceof Rt?(n._getter&&(n=nt(r,t,n,o,i,e)),i[t]=n,o[t]=void 0):(s&&s.indexOf(t)>=0||"concatenatedProperties"===t||"mergedProperties"===t?n=it(e,t,n,o):a&&a.indexOf(t)>-1?n=ot(e,t,n,o):$e(n)&&(n=rt(e,t,n,o,i)),i[t]=void 0,o[t]=n)}function at(e,t,n,r,i,o){function s(e){delete n[e],delete r[e]}var a,u=void 0,c=void 0,l=void 0,h=void 0,d=void 0 -for(a=0;a<e.length;a++)if(u=e[a],(c=et(t,u))!==An)if(c){i.willMergeMixin&&i.willMergeMixin(c),h=tt("concatenatedProperties",c,r,i),d=tt("mergedProperties",c,r,i) -for(l in c)c.hasOwnProperty(l)&&(o.push(l),st(i,l,c[l],t,n,r,h,d)) -c.hasOwnProperty("toString")&&(i.toString=c.toString)}else u.mixins&&(at(u.mixins,t,n,r,i,o),u._without&&u._without.forEach(s))}function ut(e,t,n,r){var i=t.methodName,o=void 0,s=void 0 -return n[i]||r[i]?(o=r[i],t=n[i]):void 0!==(s=le(e,i))?(t=s,o=void 0):(t=void 0,o=e[i]),{desc:t,value:o}}function ct(e,t,n,r){var i -if(n)for(i=0;i<n.length;i++)r(e,n[i],null,t)}function lt(e,t,n,r){"function"==typeof n&&(ct(e,t,n.__ember_observes__,T),ct(e,t,n.__ember_listens__,h)),"function"==typeof r&&(ct(e,t,r.__ember_observes__,S),ct(e,t,r.__ember_listens__,l))}function ht(e,n,r){var i,o,s={},u={},c=ce(e),l=[],h=void 0,d=void 0,p=void 0 -for(e._super=a.ROOT,at(n,c,s,u,e,l),i=0;i<l.length;i++)if("constructor"!==(h=l[i])&&u.hasOwnProperty(h)){for(p=s[h],d=u[h];p&&p instanceof In;)o=ut(e,p,s,u),p=o.desc,d=o.value -void 0===p&&void 0===d||(void 0!==le(e,h)?lt(e,h,null,d):lt(e,h,e[h],d),t.ENV._ENABLE_BINDING_SUPPORT&&"function"==typeof _n.detectBinding&&_n.detectBinding(h)&&c.writeBindings(h,d),H(e,h,p,d,c))}return t.ENV._ENABLE_BINDING_SUPPORT&&!r&&"function"==typeof _n.finishProtype&&_n.finishPartial(e,c),e}function dt(e){var t,n,r=e&&e.length,i=void 0 -if(r>0)for(i=new Array(r),t=0;t<r;t++)n=e[t],i[t]=n instanceof _n?n:new _n(void 0,n) -return i}function pt(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new Set -if(n.has(e))return!1 -if(n.add(e),e===t)return!0 -var r=e.mixins -return!!r&&r.some(function(e){return pt(e,t,n)})}function ft(e){var t,n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new Set -if(!i.has(e)){if(i.add(e),e.properties)for(t=Object.keys(e.properties),n=0;n<t.length;n++)r.add(t[n]) -else e.mixins&&e.mixins.forEach(function(e){return ft(e,r,i)}) -return r}}function gt(e){var t=le(this,e),n=a.getOwner(this)||this.container,r=t.type+":"+(t.name||e) -return n.lookup(r,{source:t.source,namespace:t.namespace})}o=o&&o.hasOwnProperty("default")?o.default:o,u=u&&u.hasOwnProperty("default")?u.default:u -var mt={addToListeners:function(e,t,n,r){void 0===this._listeners&&(this._listeners=[]),this._listeners.push(e,t,n,r)},_finalizeListeners:function(){if(!this._listenersFinalized){void 0===this._listeners&&(this._listeners=[]) -for(var e,t=this.parent;void 0!==t&&(e=t._listeners,void 0!==e&&(this._listeners=this._listeners.concat(e)),!t._listenersFinalized);)t=t.parent -this._listenersFinalized=!0}},removeFromListeners:function(e,t,n){for(var r,i,o=this;void 0!==o;){if(void 0!==(r=o._listeners))for(i=r.length-4;i>=0;i-=4)if(r[i]===e&&(!n||r[i+1]===t&&r[i+2]===n)){if(o!==this)return this._finalizeListeners(),this.removeFromListeners(e,t,n) -r.splice(i,4)}if(o._listenersFinalized)break -o=o.parent}},matchingListeners:function(e){for(var t,n,r=this,i=void 0;void 0!==r;){if(void 0!==(t=r._listeners))for(n=0;n<t.length;n+=4)t[n]===e&&(i=i||[],c(i,t,n)) -if(r._listenersFinalized)break -r=r.parent}return i}},vt=void 0,yt={get onerror(){return vt}},bt=void 0,Ct=r.taggedTemplateLiteralLoose(["rsvpAfter"],["rsvpAfter"]),At=null,_t=["sync","actions","routerTransitions","render","afterRender","destroy",i.privatize(Ct)],It=new o(_t,{sync:{before:L,after:D},defaultQueue:"actions",onBegin:function(e){At=e},onEnd:function(e,t){At=t},onErrorTarget:yt,onErrorMethod:"onerror"}),wt=m.bind(null),xt=function(){return!1},kt=void 0 -kt=function(e){e.inner.dirty()} -var jt=function(){function e(){this.added=new Map,this.queue=[]}return e.prototype.add=function(e,t,n){var r=this.added.get(e) -void 0===r&&(r=new Set,this.added.set(e,r)),r.has(t)||(this.queue.push(e,t,n),r.add(t))},e.prototype.flush=function(){var e,t,n,r,i=this.queue -for(this.added.clear(),this.queue=[],e=0;e<i.length;e+=3)t=i[e],n=i[e+1],r=i[e+2],t.isDestroying||t.isDestroyed||d(t,r,[t,n])},e}() -e.runInTransaction=void 0,e.runInTransaction=function(e,t){return e[t](),!1} -var Et=a.symbol("PROPERTY_DID_CHANGE"),St=new jt,Tt=0,Pt=new Map,Ot=!0,Rt=function(){this.isDescriptor=!0,this.enumerable=!0},Nt=Object.freeze([]),Mt=6e4,Lt=new WeakMap,Dt=function(){function e(e){this._content=e,this._keys=void 0,ce(this)}return e.prototype.arrayWillChange=function(e,t,n){var r=this._keys,i=n>0?t+n:-1 -if(i>0)for(var o in r)$(e,o,this,t,i)},e.prototype.arrayDidChange=function(e,t,n,r){var i=this._keys,o=r>0?t+r:-1,s=ue(this) -for(var a in i)o>0&&J(e,a,this,t,o),P(this,a,s)},e.prototype.willWatchProperty=function(e){this.beginObservingContentKey(e)},e.prototype.didUnwatchProperty=function(e){this.stopObservingContentKey(e)},e.prototype.beginObservingContentKey=function(e){var t,n,r=this._keys -void 0===r&&(r=this._keys=Object.create(null)),r[e]?r[e]++:(r[e]=1,t=this._content,n=me(t,"length"),J(t,e,this,0,n))},e.prototype.stopObservingContentKey=function(e){var t,n,r=this._keys -void 0!==r&&r[e]>0&&--r[e]<=0&&(t=this._content,n=me(t,"length"),$(t,e,this,0,n))},e.prototype.contentKeyDidChange=function(e,t){P(this,t)},e}(),zt=function(){function e(){this.chains=Object.create(null)}return e.prototype.add=function(e,t){var n=this.chains[e] -void 0===n?this.chains[e]=[t]:n.push(t)},e.prototype.remove=function(e,t){var n,r=this.chains[e] -if(void 0!==r)for(n=0;n<r.length;n++)if(r[n]===t){r.splice(n,1) -break}},e.prototype.has=function(e,t){var n,r=this.chains[e] -if(void 0!==r)for(n=0;n<r.length;n++)if(r[n]===t)return!0 -return!1},e.prototype.revalidateAll=function(){for(var e in this.chains)this.notify(e,!0,void 0)},e.prototype.revalidate=function(e){this.notify(e,!0,void 0)},e.prototype.notify=function(e,t,n){var r,i,o,s,a=this.chains[e] -if(void 0!==a&&0!==a.length){var u=void 0 -for(n&&(u=[]),r=0;r<a.length;r++)a[r].notify(t,u) -if(void 0!==n)for(i=0;i<u.length;i+=2)o=u[i],s=u[i+1],n(o,s)}},e}(),Ft=function(){function e(e,t,n){this._parent=e,this._key=t,this._chains=void 0,this._object=void 0,this.count=0,this._value=n,this._paths=void 0 -var r,i=this._isWatching=void 0===n -if(i){if(r=e.value(),!ee(r))return -this._object=r,ie(this._object,this._key,this)}}return e.prototype.value=function(){var e -return void 0===this._value&&this._isWatching&&(e=this._parent.value(),this._value=se(e,this._key)),this._value},e.prototype.destroy=function(){this._isWatching&&(oe(this._object,this._key,this),this._isWatching=!1)},e.prototype.copy=function(e){var t,n=re(e),r=this._paths -if(void 0!==r){t=void 0 -for(t in r)r[t]>0&&n.add(t)}return n},e.prototype.add=function(e){var t=this._paths||(this._paths={}) -t[e]=(t[e]||0)+1 -var n=e.split(".") -this.chain(n.shift(),n)},e.prototype.remove=function(e){var t=this._paths -if(void 0!==t){t[e]>0&&t[e]-- -var n=e.split(".") -this.unchain(n.shift(),n)}},e.prototype.chain=function(t,n){var r=this._chains,i=void 0 -void 0===r?r=this._chains=Object.create(null):i=r[t],void 0===i&&(i=r[t]=new e(this,t,void 0)),i.count++,n.length>0&&i.chain(n.shift(),n)},e.prototype.unchain=function(e,t){var n=this._chains,r=n[e] -t.length>0&&r.unchain(t.shift(),t),--r.count<=0&&(n[r._key]=void 0,r.destroy())},e.prototype.notify=function(e,t){e&&this._isWatching&&(n=this._parent.value(),n!==this._object&&(oe(this._object,this._key,this),ee(n)?(this._object=n,ie(n,this._key,this)):this._object=void 0),this._value=void 0) -var n,r,i=this._chains -if(void 0!==i){r=void 0 -for(var o in i)void 0!==(r=i[o])&&r.notify(e,t)}t&&this._parent&&this._parent.populateAffected(this._key,1,t)},e.prototype.populateAffected=function(e,t,n){this._key&&(e=this._key+"."+e),this._parent?this._parent.populateAffected(e,t+1,n):t>1&&n.push(this.value(),e)},e}(),Bt=a.symbol("undefined"),Ht=[],Ut=function(){function e(e,n){this._descriptors=void 0,this._watching=void 0,this._mixins=void 0,t.ENV._ENABLE_BINDING_SUPPORT&&(this._bindings=void 0),this._deps=void 0,this._chainWatchers=void 0,this._chains=void 0,this._tag=void 0,this._tags=void 0,this._flags=0,this.source=e,this.proto=void 0,this.parent=n,this._listeners=void 0,this._listenersFinalized=!1}return e.prototype.isInitialized=function(e){return this.proto!==e},e.prototype.destroy=function(){if(!this.isMetaDestroyed()){var e,t=void 0,n=void 0,r=void 0,i=this.readableChains() -if(void 0!==i)for(Ht.push(i);Ht.length>0;){if(i=Ht.pop(),void 0!==(t=i._chains))for(n in t)void 0!==t[n]&&Ht.push(t[n]) -i._isWatching&&void 0!==(r=i._object)&&(e=ue(r))&&!e.isSourceDestroying()&&oe(r,i._key,i,e)}this.setMetaDestroyed()}},e.prototype.isSourceDestroying=function(){return this._hasFlag(2)},e.prototype.setSourceDestroying=function(){this._flags|=2},e.prototype.isSourceDestroyed=function(){return this._hasFlag(4)},e.prototype.setSourceDestroyed=function(){this._flags|=4},e.prototype.isMetaDestroyed=function(){return this._hasFlag(8)},e.prototype.setMetaDestroyed=function(){this._flags|=8},e.prototype._hasFlag=function(e){return(this._flags&e)===e},e.prototype._getOrCreateOwnMap=function(e){return this[e]||(this[e]=Object.create(null))},e.prototype._getOrCreateOwnSet=function(e){return this[e]||(this[e]=new Set)},e.prototype._getInherited=function(e){for(var t,n=this;void 0!==n;){if(void 0!==(t=n[e]))return t -n=n.parent}},e.prototype._findInherited=function(e,t){for(var n,r,i=this;void 0!==i;){if(void 0!==(n=i[e])&&void 0!==(r=n[t]))return r -i=i.parent}},e.prototype._hasInInheritedSet=function(e,t){for(var n,r=this;void 0!==r;){if(void 0!==(n=r[e])&&n.has(t))return!0 -r=r.parent}return!1},e.prototype.writeDeps=function(e,t,n){var r=this._getOrCreateOwnMap("_deps"),i=r[e] -void 0===i&&(i=r[e]=Object.create(null)),i[t]=n},e.prototype.peekDeps=function(e,t){for(var n,r,i,o=this;void 0!==o;){if(void 0!==(n=o._deps)&&void 0!==(r=n[e])&&void 0!==(i=r[t]))return i -o=o.parent}},e.prototype.hasDeps=function(e){for(var t,n=this;void 0!==n;){if(void 0!==(t=n._deps)&&void 0!==t[e])return!0 -n=n.parent}return!1},e.prototype.forEachInDeps=function(e,t){return this._forEachIn("_deps",e,t)},e.prototype._forEachIn=function(e,t,n){for(var r,i,o,s=this,a=void 0,u=void 0;void 0!==s;){if(void 0!==(r=s[e])&&void 0!==(i=r[t]))for(var c in i)a=void 0===a?new Set:a,a.has(c)||(a.add(c),u=u||[],u.push(c,i[c])) -s=s.parent}if(void 0!==u)for(o=0;o<u.length;o+=2)n(u[o],u[o+1])},e.prototype.writableTags=function(){return this._getOrCreateOwnMap("_tags")},e.prototype.readableTags=function(){return this._tags},e.prototype.writableTag=function(e){var t=this._tag -return void 0===t&&(t=this._tag=e(this.source)),t},e.prototype.readableTag=function(){return this._tag},e.prototype.writableChainWatchers=function(e){var t=this._chainWatchers -return void 0===t&&(t=this._chainWatchers=e(this.source)),t},e.prototype.readableChainWatchers=function(){return this._chainWatchers},e.prototype.writableChains=function(e){var t=this._chains -return void 0===t&&(t=void 0===this.parent?e(this.source):this.parent.writableChains(e).copy(this.source),this._chains=t),t},e.prototype.readableChains=function(){return this._getInherited("_chains")},e.prototype.writeWatching=function(e,t){this._getOrCreateOwnMap("_watching")[e]=t},e.prototype.peekWatching=function(e){return this._findInherited("_watching",e)},e.prototype.addMixin=function(e){this._getOrCreateOwnSet("_mixins").add(e)},e.prototype.hasMixin=function(e){return this._hasInInheritedSet("_mixins",e)},e.prototype.forEachMixins=function(e){for(var t,n=this,r=void 0;void 0!==n;)t=n._mixins,void 0!==t&&(r=void 0===r?new Set:r,t.forEach(function(t){r.has(t)||(r.add(t),e(t))})),n=n.parent},e.prototype.writeBindings=function(e,t){this._getOrCreateOwnMap("_bindings")[e]=t},e.prototype.peekBindings=function(e){return this._findInherited("_bindings",e)},e.prototype.forEachBindings=function(e){for(var t,n=this,r=void 0;void 0!==n;){if(void 0!==(t=n._bindings))for(var i in t)r=r||Object.create(null),void 0===r[i]&&(r[i]=!0,e(i,t[i])) -n=n.parent}},e.prototype.clearBindings=function(){this._bindings=void 0},e.prototype.writeDescriptors=function(e,t){this._getOrCreateOwnMap("_descriptors")[e]=t},e.prototype.peekDescriptors=function(e){var t=this._findInherited("_descriptors",e) -return t===Bt?void 0:t},e.prototype.removeDescriptors=function(e){this.writeDescriptors(e,Bt)},e.prototype.forEachDescriptors=function(e){for(var t,n,r=this,i=void 0;void 0!==r;){if(void 0!==(t=r._descriptors))for(var o in t)i=void 0===i?new Set:i,i.has(o)||(i.add(o),(n=t[o])!==Bt&&e(o,n)) -r=r.parent}},e}() -for(var qt in mt)Ut.prototype[qt]=mt[qt] -var Vt=Object.getPrototypeOf,Wt=new WeakMap,Gt=function(){function e(e,t,n,r){this.size=0,this.misses=0,this.hits=0,this.limit=e,this.func=t,this.key=n,this.store=r||new Map}return e.prototype.get=function(e){var t=void 0===this.key?e:this.key(e),n=this.store.get(t) -return void 0===n?(this.misses++,n=this._set(t,this.func(e))):n===Bt?(this.hits++,n=void 0):this.hits++,n},e.prototype.set=function(e,t){var n=void 0===this.key?e:this.key(e) -return this._set(n,t)},e.prototype._set=function(e,t){return this.limit>this.size&&(this.size++,void 0===t?this.store.set(e,Bt):this.store.set(e,t)),t},e.prototype.purge=function(){this.store.clear(),this.size=0,this.hits=0,this.misses=0},e}(),Yt=new Gt(1e3,function(e){return e.indexOf(".")}),Kt=function(){function e(){this.tags=new Set,this.last=null}return e.prototype.add=function(e){this.tags.add(e),this.last=e},e.prototype.combine=function(){var e -return 0===this.tags.size?s.CONSTANT_TAG:1===this.tags.size?this.last:(e=[],this.tags.forEach(function(t){return e.push(t)}),s.combine(e))},r.createClass(e,[{key:"size",get:function(){return this.tags.size}}]),e}(),Qt=null,Zt=function(){};(function(e){function t(t,n,i){var o=r.possibleConstructorReturn(this,e.call(this,i)) -return o.target=t,o.key=n,o}r.inherits(t,e),t.for=function(e,n){return new t(e,n,"The property '"+n+"' on "+e+" was changed after being rendered. If you want to change a property used in a template after the component has rendered, mark the property as a tracked property with the @tracked decorator.")}})(Error) -var Xt={object:!0,function:!0,string:!0},Jt=a.symbol("PROXY_CONTENT"),$t=/\.@each$/,en=function(e){function t(t,n){var i=r.possibleConstructorReturn(this,e.call(this)),o="function"==typeof t -return o?i._getter=t:(i._getter=t.get||xe,i._setter=t.set),i._suspended=void 0,i._meta=void 0,i._volatile=!1,i._dependentKeys=n&&n.dependentKeys,i._readOnly=n&&o&&!0===n.readOnly,i}return r.inherits(t,e),t.prototype.volatile=function(){return this._volatile=!0,this},t.prototype.readOnly=function(){return this._readOnly=!0,this},t.prototype.property=function(){function e(e){n.push(e)}var t,n=[] -for(t=0;t<arguments.length;t++)Ae(arguments[t],e) -return this._dependentKeys=n,this},t.prototype.meta=function(e){return 0===arguments.length?this._meta||{}:(this._meta=e,this)},t.prototype.didChange=function(e,t){if(!this._volatile&&this._suspended!==e){var n=ue(e) -if(void 0!==n&&n.source===e){var r=Se(e) -void 0!==r&&r.delete(t)&&we(this,e,t,n)}}},t.prototype.get=function(e,t){if(this._volatile)return this._getter.call(e,t) -var n=je(e) -if(n.has(t))return n.get(t) -var r=this._getter.call(e,t) -n.set(t,r) -var i=ce(e),o=i.readableChainWatchers() -return void 0!==o&&o.revalidate(t),Ie(this,e,t,i),r},t.prototype.set=function(e,t,n){return this._readOnly&&this._throwReadOnlyError(e,t),this._setter?this._volatile?this.volatileSet(e,t,n):this.setWithSuspend(e,t,n):this.clobberSet(e,t,n)},t.prototype._throwReadOnlyError=function(e,t){throw new n.Error('Cannot set read-only property "'+t+'" on object: '+a.inspect(e))},t.prototype.clobberSet=function(e,t,n){return H(e,t,null,Ee(e,t)),be(e,t,n),n},t.prototype.volatileSet=function(e,t,n){return this._setter.call(e,t,n)},t.prototype.setWithSuspend=function(e,t,n){var r=this._suspended -this._suspended=e -try{return this._set(e,t,n)}finally{this._suspended=r}},t.prototype._set=function(e,t,n){var r=je(e),i=r.has(t),o=r.get(t),s=this._setter.call(e,t,n,o) -if(i&&o===s)return s -var a=ce(e) -return i||Ie(this,e,t,a),r.set(t,s),P(e,t,a),s},t.prototype.teardown=function(e,t,n){if(!this._volatile){var r=Se(e) -void 0!==r&&r.delete(t)&&we(this,e,t,n)}},t}(Rt),tn=ke.bind(null),nn=new WeakMap,rn={},on=function(e){function t(t){var n=r.possibleConstructorReturn(this,e.call(this)) -return n.altKey=t,n._dependentKeys=[t],n}return r.inherits(t,e),t.prototype.setup=function(e,t){var n=ce(e) -n.peekWatching(t)&&Ie(this,e,t,n)},t.prototype.teardown=function(e,t,n){n.peekWatching(t)&&we(this,e,t,n)},t.prototype.willWatch=function(e,t,n){Ie(this,e,t,n)},t.prototype.didUnwatch=function(e,t,n){we(this,e,t,n)},t.prototype.get=function(e,t){var n,r=me(e,this.altKey),i=je(e) -return i.get(t)!==rn&&(n=ce(e),i.set(t,rn),Ie(this,e,t,n)),r},t.prototype.set=function(e,t,n){return be(e,this.altKey,n)},t.prototype.readOnly=function(){return this.set=Te,this},t.prototype.oneWay=function(){return this.set=Pe,this},t}(Rt) -on.prototype._meta=void 0,on.prototype.meta=en.prototype.meta -var sn=[],an={},un=function(){var e="undefined"!=typeof window?window.performance||{}:{},t=e.now||e.mozNow||e.webkitNow||e.msNow||e.oNow -return t?t.bind(e):function(){return+new Date}}() -e.flaggedInstrument=void 0,e.flaggedInstrument=function(e,t,n){return n()} -var cn=function(){function e(){this._registry=[],this._coreLibIndex=0}return e.prototype._getLibraryByName=function(e){var t,n=this._registry,r=n.length -for(t=0;t<r;t++)if(n[t].name===e)return n[t]},e.prototype.register=function(e,t,n){var r=this._registry.length -this._getLibraryByName(e)||(n&&(r=this._coreLibIndex++),this._registry.splice(r,0,{name:e,version:t}))},e.prototype.registerCoreLibrary=function(e,t){this.register(e,t,!0)},e.prototype.deRegister=function(e){var t=this._getLibraryByName(e),n=void 0 -t&&(n=this._registry.indexOf(t),this._registry.splice(n,1))},e}(),ln=new cn -ln.registerCoreLibrary("Ember",u) -var hn=function(){function e(){this.clear()}return e.create=function(){return new this},e.prototype.clear=function(){this.presenceSet=Object.create(null),this.list=[],this.size=0},e.prototype.add=function(e,t){var n=t||a.guidFor(e),r=this.presenceSet,i=this.list -return!0!==r[n]&&(r[n]=!0,this.size=i.push(e)),this},e.prototype.delete=function(e,t){var n,r=t||a.guidFor(e),i=this.presenceSet,o=this.list -return!0===i[r]&&(delete i[r],n=o.indexOf(e),n>-1&&o.splice(n,1),this.size=o.length,!0)},e.prototype.isEmpty=function(){return 0===this.size},e.prototype.has=function(e){if(0===this.size)return!1 -var t=a.guidFor(e) -return!0===this.presenceSet[t]},e.prototype.forEach=function(e){if(0!==this.size){var t,n,r=this.list -if(2===arguments.length)for(t=0;t<r.length;t++)e.call(arguments[1],r[t]) -else for(n=0;n<r.length;n++)e(r[n])}},e.prototype.toArray=function(){return this.list.slice()},e.prototype.copy=function(){var e=this.constructor,t=new e -return t.presenceSet=Fe(this.presenceSet),t.list=this.toArray(),t.size=this.size,t},e}(),dn=function(){function e(){this._keys=new hn,this._values=Object.create(null),this.size=0}return e.create=function(){return new this},e.prototype.get=function(e){if(0!==this.size){return this._values[a.guidFor(e)]}},e.prototype.set=function(e,t){var n=this._keys,r=this._values,i=a.guidFor(e),o=-0===e?0:e -return n.add(o,i),r[i]=t,this.size=n.size,this},e.prototype.delete=function(e){if(0===this.size)return!1 -var t=this._keys,n=this._values,r=a.guidFor(e) -return!!t.delete(e,r)&&(delete n[r],this.size=t.size,!0)},e.prototype.has=function(e){return this._keys.has(e)},e.prototype.forEach=function(e){if(0!==this.size){var t=this,n=void 0,r=void 0 -2===arguments.length?(r=arguments[1],n=function(n){return e.call(r,t.get(n),n,t)}):n=function(n){return e(t.get(n),n,t)},this._keys.forEach(n)}},e.prototype.clear=function(){this._keys.clear(),this._values=Object.create(null),this.size=0},e.prototype.copy=function(){return Be(this,new e)},e}(),pn=function(e){function t(t){var n=r.possibleConstructorReturn(this,e.call(this)) -return n.defaultValue=t.defaultValue,n}return r.inherits(t,e),t.create=function(e){return e?new t(e):new dn},t.prototype.get=function(t){var n,r=this.has(t) -return r?e.prototype.get.call(this,t):(n=this.defaultValue(t),this.set(t,n),n)},t.prototype.copy=function(){return Be(this,new(0,this.constructor)({defaultValue:this.defaultValue}))},t}(dn),fn=Object.prototype.hasOwnProperty,gn=!1,mn={_set:0,_unprocessedNamespaces:!1,get unprocessedNamespaces(){return this._unprocessedNamespaces},set unprocessedNamespaces(e){this._set++,this._unprocessedNamespaces=e}},vn=!1,yn=[],bn=Object.create(null),Cn=Array.prototype.concat,An={},_n=function(){function e(e,t){this.properties=t,this.mixins=dt(e),this.ownerConstructor=void 0,this._without=void 0}return e._apply=function(){return ht.apply(void 0,arguments)},e.applyPartial=function(e){var t,n,r -for(t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r] -return ht(e,n,!0)},e.create=function(){Ke() -var e,t,n,r=this -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -return new r(t,void 0)},e.mixins=function(e){var t=ue(e),n=[] -return void 0===t?n:(t.forEachMixins(function(e){e.properties||n.push(e)}),n)},e.prototype.reopen=function(){var t,n,r,i -for(t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r] -if(0!==n.length)return this.properties?(i=new e(void 0,this.properties),this.properties=void 0,this.mixins=[i]):this.mixins||(this.mixins=[]),this.mixins=this.mixins.concat(dt(n)),this},e.prototype.apply=function(e){return ht(e,[this],!1)},e.prototype.applyPartial=function(e){return ht(e,[this],!0)},e.prototype.detect=function(t){if("object"!=typeof t||null===t)return!1 -if(t instanceof e)return pt(t,this) -var n=ue(t) -return void 0!==n&&n.hasMixin(this)},e.prototype.without=function(){var t,n,r,i=new e([this]) -for(t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r] -return i._without=n,i},e.prototype.keys=function(){return ft(this)},e.prototype.toString=function(){return"(unknown mixin)"},e}() -t.ENV._ENABLE_BINDING_SUPPORT&&(_n.finishPartial=null,_n.detectBinding=null),_n.prototype.toString=Ge -var In=function(e){function t(t){var n=r.possibleConstructorReturn(this,e.call(this)) -return n.methodName=t,n}return r.inherits(t,e),t}(Rt),wn=function(e){function t(t,n,i){var o,s=r.possibleConstructorReturn(this,e.call(this,gt)) -return s.type=t,s.source=i?i.source:void 0,n?(o=n.indexOf("::"),-1===o?(s.name=n,s.namespace=void 0):(s.name=n.slice(o+2),s.namespace=n.slice(0,o))):s.name=void 0,s}return r.inherits(t,e),t}(en),xn=function(e){function t(t){var n=r.possibleConstructorReturn(this,e.call(this)) -return n.desc=t,n.enumerable=t.enumerable,n}return r.inherits(t,e),t.prototype.setup=function(e,t){Object.defineProperty(e,t,this.desc)},t.prototype.get=function(e,t){return e[t]},t.prototype.set=function(e,t,n){return e[t]=n},t.prototype.teardown=function(){},t}(Rt) -e.computed=ke,e.getCacheFor=je,e.getCachedValueFor=Ee,e.peekCacheFor=Se,e.ComputedProperty=en,e._globalsComputed=tn,e.alias=function(e){return new on(e)},e.merge=function(e,t){if(null===t||"object"!=typeof t)return e -var n,r=Object.keys(t),i=void 0 -for(n=0;n<r.length;n++)i=r[n],e[i]=t[i] -return e},e.deprecateProperty=function(e,t,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set:function(e){be(this,n,e)},get:function(){return me(this,n)}})},e.instrument=function(e,t,n,r){if(arguments.length<=3&&"function"==typeof t&&(r=n,n=t,t=void 0),0===sn.length)return n.call(r) -var i=t||{},o=Me(e,function(){return i}) -return o?Re(n,o,i,r):n.call(r)},e._instrumentStart=Me,e.instrumentationReset=function(){sn.length=0,an={}},e.instrumentationSubscribe=function(e,t){var n,r=e.split("."),i=void 0,o=[] -for(n=0;n<r.length;n++)i=r[n],"*"===i?o.push("[^\\.]*"):o.push(i) -o=o.join("\\."),o+="(\\..*)?" -var s={pattern:e,regex:new RegExp("^"+o+"$"),object:t} -return sn.push(s),an={},s},e.instrumentationUnsubscribe=function(e){var t,n=void 0 -for(t=0;t<sn.length;t++)sn[t]===e&&(n=t) -sn.splice(n,1),an={}},e.getOnerror=p,e.setOnerror=function(e){vt=e},e.setDispatchOverride=function(e){bt=e},e.getDispatchOverride=f,e.descriptorFor=le,e.meta=ce,e.peekMeta=ue,e.deleteMeta=function(e){var t=ue(e) -void 0!==t&&t.destroy()},e.Cache=Gt,e.PROXY_CONTENT=Jt,e._getPath=ve,e.get=me,e.getWithDefault=function(e,t,n){var r=me(e,t) -return void 0===r?n:r},e.set=be,e.trySet=function(e,t,n){return be(e,t,n,!0)},e.objectAt=V -e.replace=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Nt -Array.isArray(e)?W(e,t,n,r):e.replace(t,n,r)},e.replaceInNativeArray=W,e.addArrayObserver=function(e,t,n){return G(e,t,n,l,!1)},e.removeArrayObserver=function(e,t,n){return G(e,t,n,h,!0)},e.arrayContentWillChange=Y,e.arrayContentDidChange=K,e.eachProxyFor=Q,e.eachProxyArrayWillChange=Z,e.eachProxyArrayDidChange=X,e.addListener=l,e.hasListeners=function(e,t){var n=ue(e) -if(void 0===n)return!1 -var r=n.matchingListeners(t) -return void 0!==r&&r.length>0},e.on=function(){for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -var e,t,n,r=t.pop() -return r.__ember_listens__=t,r},e.removeListener=h,e.sendEvent=d,e.isNone=Le,e.isEmpty=De,e.isBlank=ze,e.isPresent=function(e){return!ze(e)},e.getCurrentRunLoop=g,e.backburner=It,e.run=m,e.join=v,e.bind=function(){var e,t,n -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -return function(){var e,n,r -for(e=arguments.length,n=Array(e),r=0;r<e;r++)n[r]=arguments[r] -return v.apply(void 0,t.concat(n))}},e.begin=function(){It.begin()},e.end=function(){It.end()},e.schedule=function(){return It.schedule.apply(It,arguments)},e.hasScheduledTimers=function(){return It.hasTimers()},e.cancelTimers=function(){It.cancelTimers()},e.later=function(){return It.later.apply(It,arguments)},e.once=function(){var e,t,n -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -return t.unshift("actions"),It.scheduleOnce.apply(It,t)} -e.scheduleOnce=function(){return It.scheduleOnce.apply(It,arguments)},e.next=function(){var e,t,n -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -return t.push(1),It.later.apply(It,t)},e.cancel=function(e){return It.cancel(e)},e.debounce=function(){return It.debounce.apply(It,arguments)},e.throttle=function(){return It.throttle.apply(It,arguments)},e._globalsRun=wt,e.beginPropertyChanges=L,e.changeProperties=z,e.endPropertyChanges=D,e.notifyPropertyChange=P,e.overrideChains=M,e.propertyDidChange=function(e,t,n){P(e,t,n)},e.propertyWillChange=function(){},e.PROPERTY_DID_CHANGE=Et,e.defineProperty=H,e.Descriptor=Rt,e.watchKey=U,e.unwatchKey=q,e.ChainNode=Ft,e.finishChains=function(e){var t=e.readableChainWatchers() -void 0!==t&&t.revalidateAll(),void 0!==e.readableChains()&&e.writableChains(re)},e.removeChainWatcher=oe,e.watchPath=I,e.unwatchPath=w,e.isWatching=function(e,t){return k(e,t)>0},e.unwatch=j,e.watch=x,e.watcherCount=k,e.libraries=ln,e.Libraries=cn,e.Map=dn -e.MapWithDefault=pn,e.OrderedSet=hn,e.getProperties=function(e){var t={},n=arguments,r=1 -for(2===arguments.length&&Array.isArray(arguments[1])&&(r=0,n=arguments[1]);r<n.length;r++)t[n[r]]=me(e,n[r]) -return t},e.setProperties=function(e,t){return null===t||"object"!=typeof t?t:(z(function(){var n,r=Object.keys(t),i=void 0 -for(n=0;n<r.length;n++)i=r[n],be(e,i,t[i])}),t)},e.expandProperties=Ae,e.addObserver=S,e.removeObserver=T,e.Mixin=_n,e.aliasMethod=function(e){return new In(e)},e.mixin=function(e){var t,n,r -for(t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r] -return ht(e,n,!1),e},e.observer=function(){for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -var e,t,n,r,i=t.pop(),o=t,s=[],a=function(e){return s.push(e)} -for(r=0;r<o.length;++r)Ae(o[r],a) -return i.__ember_observes__=s,i},e.InjectedProperty=wn,e.setHasViews=function(e){xt=e},e.tagForProperty=b,e.tagFor=C,e.markObjectAsDirty=A,e.didRender=void 0,e.assertNotRendered=void 0,e.descriptor=function(e){return new xn(e)},e.tracked=pe,e.NAMESPACES=yn,e.NAMESPACES_BY_ID=bn,e.addNamespace=function(e){mn.unprocessedNamespaces=!0,yn.push(e)},e.classToString=Ge,e.findNamespace=qe,e.findNamespaces=Ue,e.processNamespace=Ve,e.processAllNamespaces=We,e.removeNamespace=He,e.isNamespaceSearchDisabled=Ye -e.setNamespaceSearchDisabled=function(e){gn=!!e},Object.defineProperty(e,"__esModule",{value:!0})}),e("ember-routing/index",["exports","ember-routing/lib/location/api","ember-routing/lib/location/none_location","ember-routing/lib/location/hash_location","ember-routing/lib/location/history_location","ember-routing/lib/location/auto_location","ember-routing/lib/system/generate_controller","ember-routing/lib/system/controller_for","ember-routing/lib/system/dsl","ember-routing/lib/system/router","ember-routing/lib/system/route","ember-routing/lib/system/query_params","ember-routing/lib/services/routing","ember-routing/lib/services/router","ember-routing/lib/system/cache","ember-routing/lib/ext/controller"],function(e,t,n,r,i,o,s,a,u,c,l,h,d,p,f){"use strict" -e.BucketCache=e.RouterService=e.RoutingService=e.QueryParams=e.Route=e.Router=e.RouterDSL=e.controllerFor=e.generateControllerFactory=e.generateController=e.AutoLocation=e.HistoryLocation=e.HashLocation=e.NoneLocation=e.Location=void 0,Object.defineProperty(e,"Location",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"NoneLocation",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"HashLocation",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"HistoryLocation",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"AutoLocation",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return s.generateControllerFactory}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"RouterDSL",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"Router",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"Route",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"QueryParams",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"RoutingService",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"RouterService",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"BucketCache",{enumerable:!0,get:function(){return f.default}})}),e("ember-routing/lib/ext/controller",["exports","ember-metal","ember-runtime","ember-routing/lib/utils"],function(e,t,n,r){"use strict" -n.ControllerMixin.reopen({concatenatedProperties:["queryParams"],queryParams:null,_qpDelegate:null,_qpChanged:function(e,n){var r=n.substr(0,n.length-3);(0,e._qpDelegate)(r,(0,t.get)(e,r))},transitionToRoute:function(){var e,n,i,o=(0,t.get)(this,"target"),s=o.transitionToRoute||o.transitionTo -for(e=arguments.length,n=Array(e),i=0;i<e;i++)n[i]=arguments[i] -return s.apply(o,(0,r.prefixRouteNameArg)(this,n))},replaceRoute:function(){var e,n,i,o=(0,t.get)(this,"target"),s=o.replaceRoute||o.replaceWith -for(e=arguments.length,n=Array(e),i=0;i<e;i++)n[i]=arguments[i] -return s.apply(o,(0,r.prefixRouteNameArg)(this,n))}}),e.default=n.ControllerMixin}),e("ember-routing/lib/location/api",["exports","ember-debug","ember-environment","ember-routing/lib/location/util"],function(e,t,n,r){"use strict" -e.default={create:function(e){var t=e&&e.implementation,n=this.implementations[t] -return n.create.apply(n,arguments)},implementations:{},_location:n.environment.location,_getHash:function(){return(0,r.getHash)(this.location)}}}),e("ember-routing/lib/location/auto_location",["exports","ember-utils","ember-metal","ember-debug","ember-runtime","ember-environment","ember-routing/lib/location/util"],function(e,t,n,r,i,o,s){"use strict" -function a(e){return function(){var r,i,o,s=(0,n.get)(this,"concreteImplementation") -for(r=arguments.length,i=Array(r),o=0;o<r;o++)i[o]=arguments[o] -return(0,t.tryInvoke)(s,e,i)}}function u(e){var t,n,r=e.location,i=e.userAgent,o=e.history,a=e.documentMode,u=e.global,h=e.rootURL,d="none",p=!1,f=(0,s.getFullPath)(r) -return(0,s.supportsHistory)(i,o)?(t=c(h,r),f===t?d="history":"/#"===f.substr(0,2)?(o.replaceState({path:t},null,t),d="history"):(p=!0,(0,s.replacePath)(r,t))):(0,s.supportsHashChange)(a,u)&&(n=l(h,r),f===n||"/"===f&&"/#/"===n?d="hash":(p=!0,(0,s.replacePath)(r,n))),!p&&d}function c(e,t){var n=(0,s.getPath)(t),r=(0,s.getHash)(t),i=(0,s.getQuery)(t),o=(n.indexOf(e),void 0),a=void 0 -return"#/"===r.substr(0,2)?(a=r.substr(1).split("#"),o=a.shift(),"/"===n.charAt(n.length-1)&&(o=o.substr(1)),n+=o+i,a.length&&(n+="#"+a.join("#"))):n+=i+r,n}function l(e,t){var n=e,r=c(e,t),i=r.substr(e.length) -return""!==i&&("/"!==i[0]&&(i="/"+i),n+="#"+i),n}e.getHistoryPath=c,e.getHashPath=l,e.default=i.Object.extend({location:o.environment.location,history:o.environment.history,global:o.environment.window,userAgent:o.environment.userAgent,cancelRouterSetup:!1,rootURL:"/",detect:function(){var e=this.rootURL,r=u({location:this.location,history:this.history,userAgent:this.userAgent,rootURL:e,documentMode:this.documentMode,global:this.global}) -!1===r&&((0,n.set)(this,"cancelRouterSetup",!0),r="none") -var i=(0,t.getOwner)(this).lookup("location:"+r);(0,n.set)(i,"rootURL",e),(0,n.set)(this,"concreteImplementation",i)},initState:a("initState"),getURL:a("getURL"),setURL:a("setURL"),replaceURL:a("replaceURL"),onUpdateURL:a("onUpdateURL"),formatURL:a("formatURL"),willDestroy:function(){var e=(0,n.get)(this,"concreteImplementation") -e&&e.destroy()}})}),e("ember-routing/lib/location/hash_location",["exports","ember-metal","ember-runtime","ember-routing/lib/location/api"],function(e,t,n,r){"use strict" -e.default=n.Object.extend({implementation:"hash",init:function(){(0,t.set)(this,"location",(0,t.get)(this,"_location")||window.location),this._hashchangeHandler=void 0},getHash:r.default._getHash,getURL:function(){var e=this.getHash().substr(1),t=e -return"/"!==t[0]&&(t="/",e&&(t+="#"+e)),t},setURL:function(e){(0,t.get)(this,"location").hash=e,(0,t.set)(this,"lastSetURL",e)},replaceURL:function(e){(0,t.get)(this,"location").replace("#"+e),(0,t.set)(this,"lastSetURL",e)},onUpdateURL:function(e){this._removeEventListener(),this._hashchangeHandler=(0,t.bind)(this,function(){var n=this.getURL();(0,t.get)(this,"lastSetURL")!==n&&((0,t.set)(this,"lastSetURL",null),e(n))}),window.addEventListener("hashchange",this._hashchangeHandler)},formatURL:function(e){return"#"+e},willDestroy:function(){this._removeEventListener()},_removeEventListener:function(){this._hashchangeHandler&&window.removeEventListener("hashchange",this._hashchangeHandler)}})}),e("ember-routing/lib/location/history_location",["exports","ember-metal","ember-runtime","ember-routing/lib/location/api"],function(e,t,n,r){"use strict" -function i(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t,n -return t=16*Math.random()|0,n="x"===e?t:3&t|8,n.toString(16)})}var o=!1 -e.default=n.Object.extend({implementation:"history",init:function(){this._super.apply(this,arguments) -var e=document.querySelector("base"),n="" -e&&(n=e.getAttribute("href")),(0,t.set)(this,"baseURL",n),(0,t.set)(this,"location",(0,t.get)(this,"location")||window.location),this._popstateHandler=void 0},initState:function(){var e=(0,t.get)(this,"history")||window.history;(0,t.set)(this,"history",e),e&&"state"in e&&(this.supportsHistory=!0) -var n=this.getState(),r=this.formatURL(this.getURL()) -n&&n.path===r?this._previousURL=this.getURL():this.replaceState(r)},rootURL:"/",getURL:function(){var e=(0,t.get)(this,"location"),n=e.pathname,r=(0,t.get)(this,"rootURL"),i=(0,t.get)(this,"baseURL") -r=r.replace(/\/$/,""),i=i.replace(/\/$/,"") -var o=n.replace(new RegExp("^"+i+"(?=/|$)"),"").replace(new RegExp("^"+r+"(?=/|$)"),"").replace(/\/\/$/g,"/") -return o+=(e.search||"")+this.getHash()},setURL:function(e){var t=this.getState() -e=this.formatURL(e),t&&t.path===e||this.pushState(e)},replaceURL:function(e){var t=this.getState() -e=this.formatURL(e),t&&t.path===e||this.replaceState(e)},getState:function(){return this.supportsHistory?(0,t.get)(this,"history").state:this._historyState},pushState:function(e){var n={path:e,uuid:i()};(0,t.get)(this,"history").pushState(n,null,e),this._historyState=n,this._previousURL=this.getURL()},replaceState:function(e){var n={path:e,uuid:i()};(0,t.get)(this,"history").replaceState(n,null,e),this._historyState=n,this._previousURL=this.getURL()},onUpdateURL:function(e){var t=this -this._removeEventListener(),this._popstateHandler=function(){(o||(o=!0,t.getURL()!==t._previousURL))&&e(t.getURL())},window.addEventListener("popstate",this._popstateHandler)},formatURL:function(e){var n=(0,t.get)(this,"rootURL"),r=(0,t.get)(this,"baseURL") -return""!==e?(n=n.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===n[0]&&(r=r.replace(/\/$/,"")),r+n+e},willDestroy:function(){this._removeEventListener()},getHash:r.default._getHash,_removeEventListener:function(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}})}),e("ember-routing/lib/location/none_location",["exports","ember-metal","ember-debug","ember-runtime"],function(e,t,n,r){"use strict" -e.default=r.Object.extend({implementation:"none",path:"",detect:function(){this.rootURL},rootURL:"/",getURL:function(){var e=(0,t.get)(this,"path"),n=(0,t.get)(this,"rootURL") -return n=n.replace(/\/$/,""),e.replace(new RegExp("^"+n+"(?=/|$)"),"")},setURL:function(e){(0,t.set)(this,"path",e)},onUpdateURL:function(e){this.updateCallback=e},handleURL:function(e){(0,t.set)(this,"path",e),this.updateCallback(e)},formatURL:function(e){var n=(0,t.get)(this,"rootURL") -return""!==e&&(n=n.replace(/\/$/,"")),n+e}})}),e("ember-routing/lib/location/util",["exports"],function(e){"use strict" -function t(e){var t=e.pathname -return"/"!==t[0]&&(t="/"+t),t}function n(e){return e.search}function r(e){var t=e.href,n=t.indexOf("#") -return-1===n?"":t.substr(n)}function i(e){var t=e.origin -return t||(t=e.protocol+"//"+e.hostname,e.port&&(t+=":"+e.port)),t}function o(e,t){return"onhashchange"in t&&(void 0===e||e>7)}function s(e,t){return(-1===e.indexOf("Android 2.")&&-1===e.indexOf("Android 4.0")||-1===e.indexOf("Mobile Safari")||-1!==e.indexOf("Chrome")||-1!==e.indexOf("Windows Phone"))&&!!(t&&"pushState"in t)}e.getPath=t,e.getQuery=n,e.getHash=r,e.getFullPath=function(e){return t(e)+n(e)+r(e)},e.getOrigin=i,e.supportsHashChange=o,e.supportsHistory=s,e.replacePath=function(e,t){e.replace(i(e)+t)}}),e("ember-routing/lib/services/router",["exports","ember-runtime","ember-routing/lib/utils"],function(e,t,n){"use strict" -var r=t.Service.extend({currentRouteName:(0,t.readOnly)("_router.currentRouteName"),currentURL:(0,t.readOnly)("_router.currentURL"),location:(0,t.readOnly)("_router.location"),rootURL:(0,t.readOnly)("_router.rootURL"),_router:null,transitionTo:function(){for(e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r] -if((0,n.resemblesURL)(t[0]))return this._router._doURLTransition("transitionTo",t[0]) -var e,t,r,i=(0,n.extractRouteArgs)(t),o=i.routeName,s=i.models,a=i.queryParams,u=this._router._doTransition(o,s,a,!0) -return u._keepDefaultQueryParamValues=!0,u},replaceWith:function(){return this.transitionTo.apply(this,arguments).method("replace")},urlFor:function(){var e -return(e=this._router).generate.apply(e,arguments)},isActive:function(){for(e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r] -var e,t,r,i=(0,n.extractRouteArgs)(t),o=i.routeName,s=i.models,a=i.queryParams,u=this._router._routerMicrolib -return!!u.isActiveIntent(o,s,null)&&(!(Object.keys(a).length>0)||(this._router._prepareQueryParams(o,s,a,!0),(0,n.shallowEqual)(a,u.state.queryParams)))}}) -e.default=r}),e("ember-routing/lib/services/routing",["exports","ember-utils","ember-runtime","ember-metal"],function(e,t,n,r){"use strict" -function i(e,t){var n,r=0 -for(n=0;n<t.length&&(r+=t[n].names.length,t[n].handler!==e);n++);return r}e.default=n.Service.extend({router:null,targetState:(0,n.readOnly)("router.targetState"),currentState:(0,n.readOnly)("router.currentState"),currentRouteName:(0,n.readOnly)("router.currentRouteName"),currentPath:(0,n.readOnly)("router.currentPath"),hasRoute:function(e){return(0,r.get)(this,"router").hasRoute(e)},transitionTo:function(e,t,n,i){var o=(0,r.get)(this,"router"),s=o._doTransition(e,t,n) -return i&&s.method("replace"),s},normalizeQueryParams:function(e,t,n){(0,r.get)(this,"router")._prepareQueryParams(e,t,n)},generateURL:function(e,n,i){var o=(0,r.get)(this,"router") -if(o._routerMicrolib){var s={} -return i&&((0,t.assign)(s,i),this.normalizeQueryParams(e,n,s)),o.generate.apply(o,[e].concat(n,[{queryParams:s}]))}},isActiveForRoute:function(e,t,n,o,s){var a=(0,r.get)(this,"router"),u=a._routerMicrolib.recognizer.handlersFor(n),c=u[u.length-1].handler,l=i(n,u) -return e.length>l&&(n=c),o.isActiveIntent(n,e,t,!s)}})}),e("ember-routing/lib/system/cache",["exports"],function(e){"use strict" -var t=function(){function e(){this.cache=new Map}return e.prototype.has=function(e){return this.cache.has(e)},e.prototype.stash=function(e,t,n){var r=this.cache.get(e) -void 0===r&&(r=new Map,this.cache.set(e,r)),r.set(t,n)},e.prototype.lookup=function(e,t,n){if(!this.has(e))return n -var r=this.cache.get(e) -return r.has(t)?r.get(t):n},e}() -e.default=t}),e("ember-routing/lib/system/controller_for",["exports"],function(e){"use strict" -e.default=function(e,t,n){return e.lookup("controller:"+t,n)}}),e("ember-routing/lib/system/dsl",["exports","ember-utils","ember-debug"],function(e,t,n){"use strict" -function r(e){return"application"!==e.parent}function i(e,t,n){return r(e)&&!0!==n?e.parent+"."+t:t}function o(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments[3],o=i(e,t,n.resetNamespace) -"string"!=typeof n.path&&(n.path="/"+t),e.push(n.path,o,r,n.serialize)}var s=0,a=function(){function e(e,t){this.parent=e,this.enableLoadingSubstates=t&&t.enableLoadingSubstates,this.matches=[],this.explicitIndex=void 0,this.options=t}return e.prototype.route=function(t){var n,r,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments[2],u="/_unused_dummy_error_path_route_"+t+"/:error" -2===arguments.length&&"function"==typeof s&&(a=s,s={}),this.enableLoadingSubstates&&(o(this,t+"_loading",{resetNamespace:s.resetNamespace}),o(this,t+"_error",{resetNamespace:s.resetNamespace,path:u})),a?(n=i(this,t,s.resetNamespace),r=new e(n,this.options),o(r,"loading"),o(r,"error",{path:u}),a.call(r),o(this,t,s,r.generate())):o(this,t,s)},e.prototype.push=function(e,n,r,i){var o,s,a=n.split(".") -if(this.options.engineInfo)o=n.slice(this.options.engineInfo.fullName.length+1),s=(0,t.assign)({localFullName:o},this.options.engineInfo),i&&(s.serializeMethod=i),this.options.addRouteForEngine(n,s) -else if(i)throw new Error("Defining a route serializer on route '"+n+"' outside an Engine is not allowed.") -""!==e&&"/"!==e&&"index"!==a[a.length-1]||(this.explicitIndex=!0),this.matches.push(e,n,r)},e.prototype.generate=function(){var e=this.matches -return this.explicitIndex||this.route("index",{path:"/"}),function(t){var n -for(n=0;n<e.length;n+=3)t(e[n]).to(e[n+1],e[n+2])}},e.prototype.mount=function(n){var r,a,u,c,l,h,d,p=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},f=this.options.resolveRouteMap(n),g=n -p.as&&(g=p.as) -var m=i(this,g,p.resetNamespace),v={name:n,instanceId:s++,mountPoint:m,fullName:m},y=p.path -"string"!=typeof y&&(y="/"+g) -var b=void 0,C="/_unused_dummy_error_path_route_"+g+"/:error" -f&&(r=!1,a=this.options.engineInfo,a&&(r=!0,this.options.engineInfo=v),u=(0,t.assign)({engineInfo:v},this.options),c=new e(m,u),o(c,"loading"),o(c,"error",{path:C}),f.class.call(c),b=c.generate(),r&&(this.options.engineInfo=a)) -var A=(0,t.assign)({localFullName:"application"},v) -this.enableLoadingSubstates&&(l=g+"_loading",h="application_loading",d=(0,t.assign)({localFullName:h},v),o(this,l,{resetNamespace:p.resetNamespace}),this.options.addRouteForEngine(l,d),l=g+"_error",h="application_error",d=(0,t.assign)({localFullName:h},v),o(this,l,{resetNamespace:p.resetNamespace,path:C}),this.options.addRouteForEngine(l,d)),this.options.addRouteForEngine(m,A),this.push(y,m,b)},e}() -e.default=a,a.map=function(e){var t=new a -return e.call(t),t}}),e("ember-routing/lib/system/generate_controller",["exports","ember-metal","ember-debug"],function(e){"use strict" -function t(e,t){var n=e.factoryFor("controller:basic").class -return n=n.extend({toString:function(){return"(generated "+t+" controller)"}}),e.register("controller:"+t,n),n}e.generateControllerFactory=t,e.default=function(e,n){return t(e,n),e.lookup("controller:"+n)}}),e("ember-routing/lib/system/query_params",["exports"],function(e){"use strict" -e.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null -this.values=e,this.isQueryParams=!0}}),e("ember-routing/lib/system/route",["exports","ember-utils","ember-metal","ember-debug","ember-runtime","ember-routing/lib/system/generate_controller","ember-routing/lib/utils"],function(e,t,n,r,i,o,s){"use strict" -function a(){return this}function u(e,t){if(!(t.length<1)&&e){var r,i={} -return 1===t.length?(r=t[0],r in e?i[r]=(0,n.get)(e,r):/_id$/.test(r)&&(i[r]=(0,n.get)(e,"id"))):i=(0,n.getProperties)(e,t),i}}function c(e){var t=l(e,e._router._routerMicrolib.state.handlerInfos,-1) -return t&&t.handler}function l(e,t){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0 -if(t){for(n=0;n<t.length;n++)if(t[n].handler===e)return t[n+r]}}function h(e,n,r,i){var o,s=(0,t.getOwner)(e),a=void 0,u=void 0,l=void 0,h=void 0,d=void 0,p=void 0 -i&&(l=i.into&&i.into.replace(/\//g,"."),h=i.outlet,d=i.controller,p=i.model),h=h||"main",n?(a=e.routeName,u=e.templateName||a):(a=r.replace(/\//g,"."),u=a),d||(d=n?e.controllerName||s.lookup("controller:"+a):s.lookup("controller:"+a)||e.controllerName||e.routeName),"string"==typeof d&&(o=d,d=s.lookup("controller:"+o)),p&&d.set("model",p) -var f=s.lookup("template:"+u),g=void 0 -return l&&(g=c(e))&&l===g.routeName&&(l=void 0),{owner:s,into:l,outlet:h,name:a,controller:d,template:f||e._topLevelViewTemplate}}function d(e,n){return n.fullQueryParams?n.fullQueryParams:(n.fullQueryParams={},(0,t.assign)(n.fullQueryParams,n.queryParams),e._deserializeQueryParams(n.handlerInfos,n.fullQueryParams),n.fullQueryParams)}function p(e,t){t.queryParamsFor=t.queryParamsFor||{} -var r,i,o,s=e.fullRouteName -if(t.queryParamsFor[s])return t.queryParamsFor[s] -var a=d(e._router,t),u=t.queryParamsFor[s]={},c=(0,n.get)(e,"_qp"),l=c.qps -for(r=0;r<l.length;++r)i=l[r],o=i.prop in a,u[i.prop]=o?a[i.prop]:f(i.defaultValue) -return u}function f(e){return Array.isArray(e)?(0,i.A)(e.slice()):e}function g(e,n){var r,i,o={},s={defaultValue:!0,type:!0,scope:!0,as:!0} -for(var a in e)e.hasOwnProperty(a)&&(r={},(0,t.assign)(r,e[a],n[a]),o[a]=r,s[a]=!0) -for(var u in n)n.hasOwnProperty(u)&&!s[u]&&(i={},(0,t.assign)(i,n[u],e[u]),o[u]=i) -return o}function m(e,t){t.forEach(function(t){e.addObserver(t+".[]",e,e._qpChanged)})}function v(e,t){var n -return e.routable?(n=e.mountPoint,"application"===t?n:n+"."+t):t}e.defaultSerialize=u,e.hasDefaultSerialize=function(e){return e.serialize===u} -var y=i.Object.extend(i.ActionHandler,i.Evented,{queryParams:{},router:(0,n.computed)("_router",function(){return this._router}),_setRouteName:function(e){this.routeName=e,this.fullRouteName=v((0,t.getOwner)(this),e)},_qp:(0,n.computed)(function(){var e,r,a,u,c,l,h,d,p,f,m,v=this,y=void 0,b=this.controllerName||this.routeName,C=(0,t.getOwner)(this),A=C.lookup("controller:"+b),_=(0,n.get)(this,"queryParams"),I=Object.keys(_).length>0 -A?(e=(0,n.get)(A,"queryParams")||{},r=(0,s.normalizeControllerQueryParams)(e),y=g(r,_)):I&&(A=(0,o.default)(C,b),y=_) -var w=[],x={},k=[] -for(var j in y)y.hasOwnProperty(j)&&"unknownProperty"!==j&&"_super"!==j&&(a=y[j],u=a.scope||"model",c=void 0,"controller"===u&&(c=[]),l=a.as||this.serializeQueryParamKey(j),h=(0,n.get)(A,j),Array.isArray(h)&&(h=(0,i.A)(h.slice())),d=a.type||(0,i.typeOf)(h),p=this.serializeQueryParam(h,l,d),f=b+":"+j,m={undecoratedDefaultValue:(0,n.get)(A,j),defaultValue:h,serializedDefaultValue:p,serializedValue:p,type:d,urlKey:l,prop:j,scopedPropertyName:f,controllerName:b,route:this,parts:c,values:null,scope:u},x[j]=x[l]=x[f]=m,w.push(m),k.push(j)) -return{qps:w,map:x,propertyNames:k,states:{inactive:function(e,t){var n=x[e] -v._qpChanged(e,t,n)},active:function(e,t){var n=x[e] -return v._qpChanged(e,t,n),v._activeQPChanged(n,t)},allowOverrides:function(e,t){var n=x[e] -return v._qpChanged(e,t,n),v._updatingQPChanged(n)}}}}),_names:null,_stashNames:function(e,t){if(!this._names){var r,i,o,s=this._names=e._names -s.length||(e=t,s=e&&e._names||[]) -var a=(0,n.get)(this,"_qp.qps"),u=new Array(s.length) -for(r=0;r<s.length;++r)u[r]=e.name+"."+s[r] -for(i=0;i<a.length;++i)o=a[i],"model"===o.scope&&(o.parts=u)}},_activeQPChanged:function(e,t){this._router._activeQPChanged(e.scopedPropertyName,t)},_updatingQPChanged:function(e){this._router._updatingQPChanged(e.urlKey)},mergedProperties:["queryParams"],paramsFor:function(e){var n=(0,t.getOwner)(this).lookup("route:"+e) -if(!n)return{} -var r=this._router._routerMicrolib.activeTransition,i=r?r.state:this._router._routerMicrolib.state,o=n.fullRouteName,s=(0,t.assign)({},i.params[o]),a=p(n,i) -return Object.keys(a).reduce(function(e,t){return e[t]=a[t],e},s)},serializeQueryParamKey:function(e){return e},serializeQueryParam:function(e,t,n){return this._router._serializeQueryParam(e,n)},deserializeQueryParam:function(e,t,n){return this._router._deserializeQueryParam(e,n)},_optionsForQueryParam:function(e){return(0,n.get)(this,"queryParams."+e.urlKey)||(0,n.get)(this,"queryParams."+e.prop)||{}},resetController:a,exit:function(){this.deactivate(),this.trigger("deactivate"),this.teardownViews()},_reset:function(e,t){var r=this.controller -r._qpDelegate=(0,n.get)(this,"_qp.states.inactive"),this.resetController(r,e,t)},enter:function(){this.connections=[],this.activate(),this.trigger("activate")},templateName:null,controllerName:null,actions:{queryParamsDidChange:function(e,t,r){var i,o,s=(0,n.get)(this,"_qp").map,a=Object.keys(e).concat(Object.keys(r)) -for(i=0;i<a.length;++i)if((o=s[a[i]])&&(0,n.get)(this._optionsForQueryParam(o),"refreshModel")&&this._router.currentState){this.refresh() -break}return!0},finalizeQueryParamChange:function(e,t,r){if("application"!==this.fullRouteName)return!0 -if(r){var i,o,a,u,c,l,h,d,p,g,m=r.state.handlerInfos,v=this._router,y=v._queryParamsFor(m),b=v._qpUpdates,C=void 0 -for((0,s.stashParamNames)(v,m),i=0;i<y.qps.length;++i)o=y.qps[i],a=o.route,u=a.controller,c=o.urlKey in e&&o.urlKey,l=void 0,h=void 0,b&&o.urlKey in b?(l=(0,n.get)(u,o.prop),h=a.serializeQueryParam(l,o.urlKey,o.type)):c?void 0!==(h=e[c])&&(l=a.deserializeQueryParam(h,o.urlKey,o.type)):(h=o.serializedDefaultValue,l=f(o.defaultValue)),u._qpDelegate=(0,n.get)(a,"_qp.states.inactive"),d=h!==o.serializedValue,d&&(r.queryParamsOnly&&!1!==C&&(p=a._optionsForQueryParam(o),g=(0,n.get)(p,"replace"),g?C=!0:!1===g&&(C=!1)),(0,n.set)(u,o.prop,l)),o.serializedValue=h,o.serializedDefaultValue===h&&!r._keepDefaultQueryParamValues||t.push({value:h,visible:!0,key:c||o.urlKey}) -C&&r.method("replace"),y.qps.forEach(function(e){var t=(0,n.get)(e.route,"_qp") -e.route.controller._qpDelegate=(0,n.get)(t,"states.active")}),v._qpUpdates=null}}},deactivate:a,activate:a,transitionTo:function(){var e -return(e=this._router).transitionTo.apply(e,(0,s.prefixRouteNameArg)(this,arguments))},intermediateTransitionTo:function(){var e;(e=this._router).intermediateTransitionTo.apply(e,(0,s.prefixRouteNameArg)(this,arguments))},refresh:function(){return this._router._routerMicrolib.refresh(this)},replaceWith:function(){var e -return(e=this._router).replaceWith.apply(e,(0,s.prefixRouteNameArg)(this,arguments))},send:function(){var e,t,n,i,o,s -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -if(this._router&&this._router._routerMicrolib||!(0,r.isTesting)())(i=this._router).send.apply(i,t) -else if(o=t.shift(),s=this.actions[o])return s.apply(this,t)},setup:function(e,t){var r,i,o,a,u,c=void 0,l=this.controllerName||this.routeName,h=this.controllerFor(l,!0) -c=h||this.generateController(l),this.controller||(r=(0,n.get)(this,"_qp.propertyNames"),m(c,r),this.controller=c) -var d=(0,n.get)(this,"_qp"),f=d.states -c._qpDelegate=f.allowOverrides,t&&((0,s.stashParamNames)(this._router,t.state.handlerInfos),i=this._bucketCache,o=t.params,a=d.propertyNames,a.forEach(function(e){var t=d.map[e] -t.values=o -var r=(0,s.calculateCacheKey)(t.route.fullRouteName,t.parts,t.values),a=i.lookup(r,e,t.undecoratedDefaultValue);(0,n.set)(c,e,a)}),u=p(this,t.state),(0,n.setProperties)(c,u)),this.setupController(c,e,t),this._environment.options.shouldRender&&this.renderTemplate(c,e)},_qpChanged:function(e,t,n){if(n){var r=this._bucketCache,i=(0,s.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values) -r.stash(i,e,t)}},beforeModel:a,afterModel:a,redirect:a,contextDidChange:function(){this.currentModel=this.context},model:function(e,t){var r,o=void 0,s=void 0,a=void 0,u=(0,n.get)(this,"_qp.map") -for(var c in e)"queryParams"===c||u&&c in u||(r=c.match(/^(.*)_id$/),null!==r&&(o=r[1],a=e[c]),s=!0) -if(!o){if(s)return(0,i.copy)(e) -if(t.resolveIndex<1)return -return t.state.handlerInfos[t.resolveIndex-1].context}return this.findModel(o,a)},deserialize:function(e,t){return this.model(this.paramsFor(this.routeName),t)},findModel:function(){var e -return(e=(0,n.get)(this,"store")).find.apply(e,arguments)},store:(0,n.computed)(function(){var e=(0,t.getOwner)(this) -this.routeName,(0,n.get)(this,"_router.namespace") -return{find:function(t,n){var r=e.factoryFor("model:"+t) -if(r)return r=r.class,r.find(n)}}}),serialize:u,setupController:function(e,t){e&&void 0!==t&&(0,n.set)(e,"model",t)},controllerFor:function(e,n){var r=(0,t.getOwner)(this),i=r.lookup("route:"+e) -return i&&i.controllerName&&(e=i.controllerName),r.lookup("controller:"+e)},generateController:function(e){var n=(0,t.getOwner)(this) -return(0,o.default)(n,e)},modelFor:function(e){var n,r=void 0,i=(0,t.getOwner)(this),o=this._router?this._router._routerMicrolib.activeTransition:null -r=i.routable&&null!==o?v(i,e):e -var s=i.lookup("route:"+r) -return null!==o&&(n=s&&s.routeName||r,o.resolvedModels.hasOwnProperty(n))?o.resolvedModels[n]:s&&s.currentModel},renderTemplate:function(){this.render()},render:function(e,t){var r=void 0,i=0===arguments.length -i||("object"!=typeof e||t?r=e:(r=this.templateName||this.routeName,t=e)) -var o=h(this,i,r,t) -this.connections.push(o),(0,n.once)(this._router,"_setOutlets")},disconnectOutlet:function(e){var t,n=void 0,r=void 0 -e&&("string"==typeof e?n=e:(n=e.outlet,r=e.parentView?e.parentView.replace(/\//g,"."):void 0)),n=n||"main",this._disconnectOutlet(n,r) -var i=this._router._routerMicrolib.currentHandlerInfos -for(t=0;t<i.length;t++)i[t].handler._disconnectOutlet(n,r)},_disconnectOutlet:function(e,t){var r,i,o=c(this) -for(o&&t===o.routeName&&(t=void 0),r=0;r<this.connections.length;r++)i=this.connections[r],i.outlet===e&&i.into===t&&(this.connections[r]={owner:i.owner,into:i.into,outlet:i.outlet,name:i.name,controller:void 0,template:void 0},(0,n.once)(this._router,"_setOutlets"))},willDestroy:function(){this.teardownViews()},teardownViews:function(){this.connections&&this.connections.length>0&&(this.connections=[],(0,n.once)(this._router,"_setOutlets"))}}) -y.reopenClass({isRouteFactory:!0}),e.default=y}),e("ember-routing/lib/system/router",["exports","ember-utils","ember-metal","ember-debug","ember-runtime","ember-routing/lib/system/route","ember-routing/lib/system/dsl","ember-routing/lib/location/api","ember-routing/lib/utils","ember-routing/lib/system/router_state","router"],function(e,t,n,r,i,o,s,a,u,c,l){"use strict" -function h(){return this}function d(e,t){var n,r,i -for(n=e.length-1;n>=0;--n)if(r=e[n],void 0!==(i=r.handler)&&!0!==t(i,r))return}function p(e,t){var n,r=[],i=void 0 -i=e&&"object"==typeof e&&"object"==typeof e.errorThrown?e.errorThrown:e,t&&r.push(t),i&&(i.message&&r.push(i.message),i.stack&&r.push(i.stack),"string"==typeof i&&r.push(i)),(n=console).error.apply(n,r)}function f(e,n){var r=(0,t.getOwner)(e),i=e.routeName,o=e.fullRouteName,s=e._router,a=o+"_"+n -return m(r,s,i+"_"+n,a)?a:""}function g(e,n){var r=(0,t.getOwner)(e),i=e.routeName,o=e.fullRouteName,s=e._router,a="application"===i?n:i+"."+n,u="application"===o?n:o+"."+n -return m(r,s,a,u)?u:""}function m(e,t,n,r){var i=t.hasRoute(r),o=e.hasRegistration("template:"+n)||e.hasRegistration("route:"+n) -return i&&o}function v(e,t,n){var i,o=n.shift() -if(!e){if(t)return -throw new r.Error("Can't trigger action '"+o+"' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call `.send()` on the `Transition` object passed to the `model/beforeModel/afterModel` hooks.")}var s=!1,a=void 0,u=void 0,c=void 0 -for(i=e.length-1;i>=0;i--)if(a=e[i],u=a.handler,c=u&&u.actions&&u.actions[o]){if(!0!==c.apply(u,n))return void("error"===o&&u._router._markErrorAsHandled(n[0])) -s=!0}var l=E[o] -if(l)return void l.apply(this,[e].concat(n)) -if(!s&&!t)throw new r.Error("Nothing handled the action '"+o+"'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.")}function y(e,t,n){var r,i,o=e._routerMicrolib.applyIntent(t,n),s=o.handlerInfos,a=o.params -for(r=0;r<s.length;++r)i=s[r],i.isResolved?a[i.name]=i.params:a[i.name]=i.serialize(i.context) -return o}function b(e){var r=e._routerMicrolib.currentHandlerInfos -if(0!==r.length){var i=j._routePath(r),o=r[r.length-1].name,s=e.get("location").getURL();(0,n.set)(e,"currentPath",i),(0,n.set)(e,"currentRouteName",o),(0,n.set)(e,"currentURL",s) -var a=(0,t.getOwner)(e).lookup("controller:application") -a&&("currentPath"in a||(0,n.defineProperty)(a,"currentPath"),(0,n.set)(a,"currentPath",i),"currentRouteName"in a||(0,n.defineProperty)(a,"currentRouteName"),(0,n.set)(a,"currentRouteName",o))}}function C(e,t){var n=new c.default(t,t._routerMicrolib,e.state) -t.currentState||t.set("currentState",n),t.set("targetState",n),e.promise=e.catch(function(e){if(!t._isErrorHandled(e))throw e -t._clearHandledError(e)})}function A(e,t,n,r){var i,o,s=e._queryParamsFor(t) -for(var a in n)n.hasOwnProperty(a)&&(i=n[a],o=s.map[a],r(a,i,o))}function _(e,t){if(e)for(var n,r,i=[e];i.length>0;){if(n=i.shift(),n.render.name===t)return n -r=n.outlets -for(var o in r)i.push(r[o])}}function I(e,t,r){var i=void 0,o={render:r,outlets:Object.create(null),wasUsed:!1} -return i=r.into?_(e,r.into):t,i?(0,n.set)(i.outlets,r.outlet,o):r.into?w(e,r.into,o):e=o,{liveRoutes:e,ownState:o}}function w(e,t,r){e.outlets.__ember_orphans__||(e.outlets.__ember_orphans__={render:{name:"__ember_orphans__"},outlets:Object.create(null)}),e.outlets.__ember_orphans__.outlets[t]=r,(0,n.schedule)("afterRender",function(){})}function x(e,t,n){var r=_(e,n.routeName) -return r||(t.outlets.main={render:{name:n.routeName,outlet:"main"},outlets:{}},t)}e.triggerEvent=v -var k=Array.prototype.slice,j=i.Object.extend(i.Evented,{location:"hash",rootURL:"/",_initRouterJs:function(){var e=this._routerMicrolib=new l.default -e.triggerEvent=v.bind(this),e._triggerWillChangeContext=h,e._triggerWillLeave=h -var t=this.constructor.dslCallbacks||[h],n=this._buildDSL() -n.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},function(){var e -for(e=0;e<t.length;e++)t[e].call(this)}),e.map(n.generate())},_buildDSL:function(){var e=this._hasModuleBasedResolver(),n={enableLoadingSubstates:e},r=(0,t.getOwner)(this),i=this -return n.resolveRouteMap=function(e){return r.factoryFor("route-map:"+e)},n.addRouteForEngine=function(e,t){i._engineInfoByRoute[e]||(i._engineInfoByRoute[e]=t)},new s.default(null,n)},init:function(){this._super.apply(this,arguments),this.currentURL=null,this.currentRouteName=null,this.currentPath=null,this._qpCache=Object.create(null),this._resetQueuedQueryParameterChanges(),this._handledErrors=new Set,this._engineInstances=Object.create(null),this._engineInfoByRoute=Object.create(null)},_resetQueuedQueryParameterChanges:function(){this._queuedQPChanges={}},url:(0,n.computed)(function(){return(0,n.get)(this,"location").getURL()}),_hasModuleBasedResolver:function(){var e=(0,t.getOwner)(this) -return!!e&&!!(0,n.get)(e,"application.__registry__.resolver.moduleBasedResolver")},startRouting:function(){var e,t=(0,n.get)(this,"initialURL") -if(this.setupRouter()&&(void 0===t&&(t=(0,n.get)(this,"location").getURL()),(e=this.handleURL(t))&&e.error))throw e.error},setupRouter:function(){var e=this -this._initRouterJs(),this._setupLocation() -var t=(0,n.get)(this,"location") -return!(0,n.get)(t,"cancelRouterSetup")&&(this._setupRouter(t),t.onUpdateURL(function(t){e.handleURL(t)}),!0)},didTransition:function(){b(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState),(0,n.once)(this,this.trigger,"didTransition")},_setOutlets:function(){if(!this.isDestroying&&!this.isDestroyed){var e,n,r,i,o,s,a,u,c=this._routerMicrolib.currentHandlerInfos,l=void 0,h=void 0,d=null -if(c){for(e=0;e<c.length;e++){for(l=c[e].handler,n=l.connections,r=void 0,i=0;i<n.length;i++)o=I(d,h,n[i]),d=o.liveRoutes,o.ownState.render.name!==l.routeName&&"main"!==o.ownState.render.outlet||(r=o.ownState) -0===n.length&&(r=x(d,h,l)),h=r}d&&(this._toplevelView?this._toplevelView.setOutletState(d):(s=(0,t.getOwner)(this),a=s.factoryFor("view:-outlet"),this._toplevelView=a.create(),this._toplevelView.setOutletState(d),u=s.lookup("-application-instance:main"),u.didCreateRootView(this._toplevelView)))}}},willTransition:function(e,t,r){(0,n.once)(this,this.trigger,"willTransition",r)},handleURL:function(e){var t=e.split(/#(.+)?/)[0] -return this._doURLTransition("handleURL",t)},_doURLTransition:function(e,t){var n=this._routerMicrolib[e](t||"/") -return C(n,this),n},transitionTo:function(){for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -if((0,u.resemblesURL)(t[0]))return this._doURLTransition("transitionTo",t[0]) -var e,t,n,r=(0,u.extractRouteArgs)(t),i=r.routeName,o=r.models,s=r.queryParams -return this._doTransition(i,o,s)},intermediateTransitionTo:function(){var e;(e=this._routerMicrolib).intermediateTransitionTo.apply(e,arguments),b(this)},replaceWith:function(){return this.transitionTo.apply(this,arguments).method("replace")},generate:function(){var e,t=(e=this._routerMicrolib).generate.apply(e,arguments) -return this.location.formatURL(t)},isActive:function(){var e -return(e=this._routerMicrolib).isActive.apply(e,arguments)},isActiveIntent:function(e,t,n){return this.currentState.isActiveIntent(e,t,n)},send:function(){var e;(e=this._routerMicrolib).trigger.apply(e,arguments)},hasRoute:function(e){return this._routerMicrolib.hasRoute(e)},reset:function(){this._routerMicrolib&&this._routerMicrolib.reset()},willDestroy:function(){this._toplevelView&&(this._toplevelView.destroy(),this._toplevelView=null),this._super.apply(this,arguments),this.reset() -var e=this._engineInstances -for(var t in e)for(var r in e[t])(0,n.run)(e[t][r],"destroy")},_activeQPChanged:function(e,t){this._queuedQPChanges[e]=t,(0,n.once)(this,this._fireQueryParamTransition)},_updatingQPChanged:function(e){this._qpUpdates||(this._qpUpdates={}),this._qpUpdates[e]=!0},_fireQueryParamTransition:function(){this.transitionTo({queryParams:this._queuedQPChanges}),this._resetQueuedQueryParameterChanges()},_setupLocation:function(){var e,r,i=(0,n.get)(this,"location"),o=(0,n.get)(this,"rootURL"),s=(0,t.getOwner)(this) -"string"==typeof i&&s&&(e=s.lookup("location:"+i),void 0!==e?i=(0,n.set)(this,"location",e):(r={implementation:i},i=(0,n.set)(this,"location",a.default.create(r)))),null!==i&&"object"==typeof i&&(o&&(0,n.set)(i,"rootURL",o),"function"==typeof i.detect&&i.detect(),"function"==typeof i.initState&&i.initState())},_getHandlerFunction:function(){var e=this,n=Object.create(null),r=(0,t.getOwner)(this) -return function(t){var i,s,a=t,u=r,c=e._engineInfoByRoute[a] -c&&(i=e._getEngineInstance(c),u=i,a=c.localFullName) -var l="route:"+a,h=u.lookup(l) -if(n[t])return h -if(n[t]=!0,h||(s=u.factoryFor("route:basic").class,u.register(l,s.extend()),h=u.lookup(l)),h._setRouteName(a),c&&!(0,o.hasDefaultSerialize)(h))throw new Error("Defining a custom serialize method on an Engine route is not supported.") -return h}},_getSerializerFunction:function(){var e=this -return function(t){var n=e._engineInfoByRoute[t] -if(n)return n.serializeMethod||o.defaultSerialize}},_setupRouter:function(e){var t,r=this,i=void 0,o=this._routerMicrolib -o.getHandler=this._getHandlerFunction(),o.getSerializer=this._getSerializerFunction() -var s=function(){e.setURL(i),(0,n.set)(r,"currentURL",i)} -o.updateURL=function(e){i=e,(0,n.once)(s)},e.replaceURL&&(t=function(){e.replaceURL(i),(0,n.set)(r,"currentURL",i)},o.replaceURL=function(e){i=e,(0,n.once)(t)}),o.didTransition=function(e){r.didTransition(e)},o.willTransition=function(e,t,n){r.willTransition(e,t,n)}},_serializeQueryParams:function(e,t){var n=this -A(this,e,t,function(e,r,o){o?(delete t[e],t[o.urlKey]=o.route.serializeQueryParam(r,o.urlKey,o.type)):void 0===r||(t[e]=n._serializeQueryParam(r,(0,i.typeOf)(r)))})},_serializeQueryParam:function(e,t){return null===e||void 0===e?e:"array"===t?JSON.stringify(e):""+e},_deserializeQueryParams:function(e,t){A(this,e,t,function(e,n,r){r&&(delete t[e],t[r.prop]=r.route.deserializeQueryParam(n,r.urlKey,r.type))})},_deserializeQueryParam:function(e,t){return null===e||void 0===e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,i.A)(JSON.parse(e)):e},_pruneDefaultQueryParamValues:function(e,t){var n,r=this._queryParamsFor(e) -for(var i in t)(n=r.map[i])&&n.serializedDefaultValue===t[i]&&delete t[i]},_doTransition:function(e,n,r,i){var o,s=e||(0,u.getActiveTargetName)(this._routerMicrolib),a={} -this._processActiveTransitionQueryParams(s,n,a,r),(0,t.assign)(a,r),this._prepareQueryParams(s,n,a,i) -var c=(o=this._routerMicrolib).transitionTo.apply(o,[s].concat(n,[{queryParams:a}])) -return C(c,this),c},_processActiveTransitionQueryParams:function(e,n,r,i){if(this._routerMicrolib.activeTransition){var o={},s=this._qpUpdates||{},a=this._routerMicrolib.activeTransition.queryParams -for(var u in a)s[u]||(o[u]=a[u]) -this._fullyScopeQueryParams(e,n,i),this._fullyScopeQueryParams(e,n,o),(0,t.assign)(r,o)}},_prepareQueryParams:function(e,t,n,r){var i=y(this,e,t) -this._hydrateUnsuppliedQueryParams(i,n,r),this._serializeQueryParams(i.handlerInfos,n),r||this._pruneDefaultQueryParamValues(i.handlerInfos,n)},_getQPMeta:function(e){var t=e.handler -return t&&(0,n.get)(t,"_qp")},_queryParamsFor:function(e){var n,r,i,o,s,a,u=e.length,c=e[u-1].name,l=this._qpCache[c] -if(l)return l -var h=!0,d={},p={},f=[] -for(n=0;n<u;++n)if(r=this._getQPMeta(e[n])){for(i=0;i<r.qps.length;i++)o=r.qps[i],s=o.urlKey,a=d[s],a&&a.controllerName!==o.controllerName&&d[s],d[s]=o,f.push(o);(0,t.assign)(p,r.map)}else h=!1 -var g={qps:f,map:p} -return h&&(this._qpCache[c]=g),g},_fullyScopeQueryParams:function(e,t,n){var r,i,o,s,a,u,c,l=y(this,e,t),h=l.handlerInfos -for(r=0,i=h.length;r<i;++r)if(o=this._getQPMeta(h[r]))for(s=0,a=o.qps.length;s<a;++s)u=o.qps[s],(c=u.prop in n&&u.prop||u.scopedPropertyName in n&&u.scopedPropertyName||u.urlKey in n&&u.urlKey)&&c!==u.scopedPropertyName&&(n[u.scopedPropertyName]=n[c],delete n[c])},_hydrateUnsuppliedQueryParams:function(e,t,n){var r,i,o,s,a,c,l,h=e.handlerInfos,d=this._bucketCache -for(r=0;r<h.length;++r)if(i=this._getQPMeta(h[r]))for(o=0,s=i.qps.length;o<s;++o)a=i.qps[o],c=a.prop in t&&a.prop||a.scopedPropertyName in t&&a.scopedPropertyName||a.urlKey in t&&a.urlKey,c?c!==a.scopedPropertyName&&(t[a.scopedPropertyName]=t[c],delete t[c]):(l=(0,u.calculateCacheKey)(a.route.fullRouteName,a.parts,e.params),t[a.scopedPropertyName]=d.lookup(l,a.prop,a.defaultValue))},_scheduleLoadingEvent:function(e,t){this._cancelSlowTransitionTimer(),this._slowTransitionTimer=(0,n.scheduleOnce)("routerTransitions",this,"_handleSlowTransition",e,t)},currentState:null,targetState:null,_handleSlowTransition:function(e,t){if(this._routerMicrolib.activeTransition){var n=new c.default(this,this._routerMicrolib,this._routerMicrolib.activeTransition.state) -this.set("targetState",n),e.trigger(!0,"loading",e,t)}},_cancelSlowTransitionTimer:function(){this._slowTransitionTimer&&(0,n.cancel)(this._slowTransitionTimer),this._slowTransitionTimer=null},_markErrorAsHandled:function(e){this._handledErrors.add(e)},_isErrorHandled:function(e){return this._handledErrors.has(e)},_clearHandledError:function(e){this._handledErrors.delete(e)},_getEngineInstance:function(e){var n,r=e.name,i=e.instanceId,o=e.mountPoint,s=this._engineInstances -s[r]||(s[r]=Object.create(null)) -var a=s[r][i] -return a||(n=(0,t.getOwner)(this),a=n.buildChildEngineInstance(r,{routable:!0,mountPoint:o}),a.boot(),s[r][i]=a),a}}),E={willResolveModel:function(e,t,n){this._scheduleLoadingEvent(t,n)},error:function(e,t,n){var r=this,i=e[e.length-1] -d(e,function(e,n){if(n!==i&&(o=g(e,"error")))return r._markErrorAsHandled(t),r.intermediateTransitionTo(o,t),!1 -var o,s=f(e,"error") -return!s||(r._markErrorAsHandled(t),r.intermediateTransitionTo(s,t),!1)}),p(t,"Error while processing route: "+n.targetName)},loading:function(e,t){var n=this,r=e[e.length-1] -d(e,function(e,i){if(i!==r&&(o=g(e,"loading")))return n.intermediateTransitionTo(o),!1 -var o,s=f(e,"loading") -return s?(n.intermediateTransitionTo(s),!1):t.pivotHandler!==e})}} -j.reopenClass({map:function(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this},_routePath:function(e){var t,n=[],r=void 0,i=void 0,o=void 0 -for(t=1;t<e.length;t++){for(r=e[t].name,i=r.split("."),o=k.call(n);o.length&&!function(e,t){var n -for(n=0;n<e.length;++n)if(e[n]!==t[n])return!1 -return!0}(o,i);)o.shift() -n.push.apply(n,i.slice(o.length))}return n.join(".")}}),e.default=j}),e("ember-routing/lib/system/router_state",["exports","ember-utils","ember-routing/lib/utils"],function(e,t,n){"use strict" -var r=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null -this.emberRouter=e,this.routerJs=t,this.routerJsState=n}return e.prototype.isActiveIntent=function(e,r,i,o){var s,a=this.routerJsState -return!!this.routerJs.isActiveIntent(e,r,null,a)&&(!(o&&Object.keys(i).length>0)||(s=(0,t.assign)({},i),this.emberRouter._prepareQueryParams(e,r,s),(0,n.shallowEqual)(s,a.queryParams)))},e}() -e.default=r}),e("ember-routing/lib/utils",["exports","ember-utils","ember-metal","ember-debug"],function(e,t,n,r){"use strict" -function i(e,t){var n,r,i=e.split("."),o="" -for(n=0;n<i.length&&(r=i.slice(0,n+1).join("."),0===t.indexOf(r));n++)o=r -return o}function o(e){var t,r,o,s,a,c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],l=arguments[2],h="" -for(t=0;t<c.length;++t)r=c[t],o=i(e,r),s=void 0,l&&(o&&o in l?(a=0===r.indexOf(o)?r.substr(o.length+1):r,s=(0,n.get)(l[o],a)):s=(0,n.get)(l,r)),h+="::"+r+":"+s -return e+h.replace(u,"-")}function s(e,n){var r,i=e,o=void 0 -"string"==typeof i&&(o={},o[i]={as:null},i=o) -for(var s in i){if(!i.hasOwnProperty(s))return -r=i[s],"string"==typeof r&&(r={as:r}),o=n[s]||{as:null,scope:"model"},(0,t.assign)(o,r),n[s]=o}}function a(e){return"string"==typeof e&&(""===e||"/"===e[0])}e.extractRouteArgs=function(e){e=e.slice() -var t=e[e.length-1],n=void 0 -return n=t&&t.hasOwnProperty("queryParams")?e.pop().queryParams:{},{routeName:e.shift(),models:e,queryParams:n}},e.getActiveTargetName=function(e){var t=e.activeTransition?e.activeTransition.state.handlerInfos:e.state.handlerInfos -return t[t.length-1].name},e.stashParamNames=function(e,t){if(!t._namesStashed){var n,r,i,o,s=t[t.length-1].name,a=e._routerMicrolib.recognizer.handlersFor(s),u=null -for(n=0;n<t.length;++n)r=t[n],i=a[n].names,i.length&&(u=r),r._names=i,o=r.handler,o._stashNames(r,u) -t._namesStashed=!0}},e.calculateCacheKey=o,e.normalizeControllerQueryParams=function(e){var t,n={} -for(t=0;t<e.length;++t)s(e[t],n) -return n},e.resemblesURL=a,e.prefixRouteNameArg=function(e,n){var i=n[0],o=(0,t.getOwner)(e),s=o.mountPoint -if(o.routable&&"string"==typeof i){if(a(i))throw new r.Error("Programmatic transitions by URL cannot be used within an Engine. Please use the route name instead.") -i=s+"."+i,n[0]=i}return n},e.shallowEqual=function(e,t){var n=void 0,r=0,i=0 -for(n in e)if(e.hasOwnProperty(n)){if(e[n]!==t[n])return!1 -r++}for(n in t)t.hasOwnProperty(n)&&i++ -return r===i} -var u=/\./g}),e("ember-runtime/index",["exports","ember-runtime/lib/system/object","ember-runtime/lib/system/string","ember-runtime/lib/mixins/registry_proxy","ember-runtime/lib/mixins/container_proxy","ember-runtime/lib/copy","ember-runtime/lib/inject","ember-runtime/lib/compare","ember-runtime/lib/is-equal","ember-runtime/lib/mixins/array","ember-runtime/lib/mixins/comparable","ember-runtime/lib/system/namespace","ember-runtime/lib/system/array_proxy","ember-runtime/lib/system/object_proxy","ember-runtime/lib/system/core_object","ember-runtime/lib/mixins/action_handler","ember-runtime/lib/mixins/copyable","ember-runtime/lib/mixins/enumerable","ember-runtime/lib/mixins/-proxy","ember-runtime/lib/system/lazy_load","ember-runtime/lib/mixins/observable","ember-runtime/lib/mixins/mutable_enumerable","ember-runtime/lib/mixins/target_action_support","ember-runtime/lib/mixins/evented","ember-runtime/lib/mixins/promise_proxy","ember-runtime/lib/computed/computed_macros","ember-runtime/lib/computed/reduce_computed_macros","ember-runtime/lib/controllers/controller","ember-runtime/lib/mixins/controller","ember-runtime/lib/system/service","ember-runtime/lib/ext/rsvp","ember-runtime/lib/utils","ember-runtime/lib/string_registry","ember-runtime/lib/ext/string","ember-runtime/lib/ext/function"],function(e,t,n,r,i,o,s,a,u,c,l,h,d,p,f,g,m,v,y,b,C,A,_,I,w,x,k,j,E,S,T,P,O){"use strict" -e.setStrings=e.getStrings=e.typeOf=e.isArray=e.onerrorDefault=e.RSVP=e.Service=e.ControllerMixin=e.Controller=e.collect=e.intersect=e.union=e.uniqBy=e.uniq=e.filterBy=e.filter=e.mapBy=e.setDiff=e.sort=e.map=e.max=e.min=e.sum=e.or=e.and=e.deprecatingAlias=e.readOnly=e.oneWay=e.lte=e.lt=e.gte=e.gt=e.equal=e.match=e.bool=e.not=e.none=e.notEmpty=e.empty=e.PromiseProxyMixin=e.Evented=e.TargetActionSupport=e.MutableEnumerable=e.Observable=e._loaded=e.runLoadHooks=e.onLoad=e._contentFor=e._ProxyMixin=e.Enumerable=e.Copyable=e.ActionHandler=e.CoreObject=e.ObjectProxy=e.ArrayProxy=e.Namespace=e.Comparable=e.removeAt=e.MutableArray=e.A=e.NativeArray=e.isEmberArray=e.Array=e.isEqual=e.compare=e.inject=e.copy=e.ContainerProxyMixin=e.RegistryProxyMixin=e.String=e.FrameworkObject=e.Object=void 0,Object.defineProperty(e,"Object",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"FrameworkObject",{enumerable:!0,get:function(){return t.FrameworkObject}}),Object.defineProperty(e,"String",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"RegistryProxyMixin",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"ContainerProxyMixin",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"copy",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"inject",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"compare",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"isEqual",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"Array",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"isEmberArray",{enumerable:!0,get:function(){return c.isEmberArray}}),Object.defineProperty(e,"NativeArray",{enumerable:!0,get:function(){return c.NativeArray}}),Object.defineProperty(e,"A",{enumerable:!0,get:function(){return c.A}}),Object.defineProperty(e,"MutableArray",{enumerable:!0,get:function(){return c.MutableArray}}),Object.defineProperty(e,"removeAt",{enumerable:!0,get:function(){return c.removeAt}}),Object.defineProperty(e,"Comparable",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"Namespace",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"ArrayProxy",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"ObjectProxy",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"CoreObject",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"ActionHandler",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"Copyable",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(e,"Enumerable",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(e,"_ProxyMixin",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(e,"_contentFor",{enumerable:!0,get:function(){return y.contentFor}}),Object.defineProperty(e,"onLoad",{enumerable:!0,get:function(){return b.onLoad}}),Object.defineProperty(e,"runLoadHooks",{enumerable:!0,get:function(){return b.runLoadHooks}}),Object.defineProperty(e,"_loaded",{enumerable:!0,get:function(){return b._loaded}}),Object.defineProperty(e,"Observable",{enumerable:!0,get:function(){return C.default}}) -Object.defineProperty(e,"MutableEnumerable",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(e,"TargetActionSupport",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(e,"Evented",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(e,"PromiseProxyMixin",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(e,"empty",{enumerable:!0,get:function(){return x.empty}}),Object.defineProperty(e,"notEmpty",{enumerable:!0,get:function(){return x.notEmpty}}),Object.defineProperty(e,"none",{enumerable:!0,get:function(){return x.none}}),Object.defineProperty(e,"not",{enumerable:!0,get:function(){return x.not}}),Object.defineProperty(e,"bool",{enumerable:!0,get:function(){return x.bool}}),Object.defineProperty(e,"match",{enumerable:!0,get:function(){return x.match}}),Object.defineProperty(e,"equal",{enumerable:!0,get:function(){return x.equal}}),Object.defineProperty(e,"gt",{enumerable:!0,get:function(){return x.gt}}),Object.defineProperty(e,"gte",{enumerable:!0,get:function(){return x.gte}}),Object.defineProperty(e,"lt",{enumerable:!0,get:function(){return x.lt}}),Object.defineProperty(e,"lte",{enumerable:!0,get:function(){return x.lte}}),Object.defineProperty(e,"oneWay",{enumerable:!0,get:function(){return x.oneWay}}),Object.defineProperty(e,"readOnly",{enumerable:!0,get:function(){return x.readOnly}}),Object.defineProperty(e,"deprecatingAlias",{enumerable:!0,get:function(){return x.deprecatingAlias}}),Object.defineProperty(e,"and",{enumerable:!0,get:function(){return x.and}}),Object.defineProperty(e,"or",{enumerable:!0,get:function(){return x.or}}),Object.defineProperty(e,"sum",{enumerable:!0,get:function(){return k.sum}}),Object.defineProperty(e,"min",{enumerable:!0,get:function(){return k.min}}),Object.defineProperty(e,"max",{enumerable:!0,get:function(){return k.max}}),Object.defineProperty(e,"map",{enumerable:!0,get:function(){return k.map}}),Object.defineProperty(e,"sort",{enumerable:!0,get:function(){return k.sort}}),Object.defineProperty(e,"setDiff",{enumerable:!0,get:function(){return k.setDiff}}),Object.defineProperty(e,"mapBy",{enumerable:!0,get:function(){return k.mapBy}}),Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return k.filter}}),Object.defineProperty(e,"filterBy",{enumerable:!0,get:function(){return k.filterBy}}),Object.defineProperty(e,"uniq",{enumerable:!0,get:function(){return k.uniq}}) -Object.defineProperty(e,"uniqBy",{enumerable:!0,get:function(){return k.uniqBy}}),Object.defineProperty(e,"union",{enumerable:!0,get:function(){return k.union}}),Object.defineProperty(e,"intersect",{enumerable:!0,get:function(){return k.intersect}}),Object.defineProperty(e,"collect",{enumerable:!0,get:function(){return k.collect}}),Object.defineProperty(e,"Controller",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(e,"ControllerMixin",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(e,"Service",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(e,"RSVP",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(e,"onerrorDefault",{enumerable:!0,get:function(){return T.onerrorDefault}}),Object.defineProperty(e,"isArray",{enumerable:!0,get:function(){return P.isArray}}),Object.defineProperty(e,"typeOf",{enumerable:!0,get:function(){return P.typeOf}}),Object.defineProperty(e,"getStrings",{enumerable:!0,get:function(){return O.getStrings}}),Object.defineProperty(e,"setStrings",{enumerable:!0,get:function(){return O.setStrings}})}),e("ember-runtime/lib/compare",["exports","ember-runtime/lib/utils","ember-runtime/lib/mixins/comparable"],function(e,t,n){"use strict" -function r(e,t){var n=e-t -return(n>0)-(n<0)}function i(e,s){if(e===s)return 0 -var a,u,c,l,h,d=(0,t.typeOf)(e),p=(0,t.typeOf)(s) -if("instance"===d&&n.default.detect(e)&&e.constructor.compare)return e.constructor.compare(e,s) -if("instance"===p&&n.default.detect(s)&&s.constructor.compare)return-1*s.constructor.compare(s,e) -var f=r(o[d],o[p]) -if(0!==f)return f -switch(d){case"boolean":case"number":return r(e,s) -case"string":return r(e.localeCompare(s),0) -case"array":for(a=e.length,u=s.length,c=Math.min(a,u),l=0;l<c;l++)if(0!==(h=i(e[l],s[l])))return h -return r(a,u) -case"instance":return n.default.detect(e)?e.compare(e,s):0 -case"date":return r(e.getTime(),s.getTime()) -default:return 0}}e.default=i -var o={undefined:0,null:1,boolean:2,number:3,string:4,array:5,object:6,instance:7,function:8,class:9,date:10}}),e("ember-runtime/lib/computed/computed_macros",["exports","ember-metal","ember-debug"],function(e,t,n){"use strict" -function r(e,n){function r(e){s.push(e)}var i,o,s=[] -for(i=0;i<n.length;i++)o=n[i],(0,t.expandProperties)(o,r) -return s}function i(e,n){return function(){for(i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s] -var i,o,s,a=r(e,o) -return new t.ComputedProperty(function(){var e,r,i=a.length-1 -for(e=0;e<i;e++)if(r=(0,t.get)(this,a[e]),!n(r))return r -return(0,t.get)(this,a[i])},{dependentKeys:a})}}e.or=e.and=void 0,e.empty=function(e){return(0,t.computed)(e+".length",function(){return(0,t.isEmpty)((0,t.get)(this,e))})},e.notEmpty=function(e){return(0,t.computed)(e+".length",function(){return!(0,t.isEmpty)((0,t.get)(this,e))})},e.none=function(e){return(0,t.computed)(e,function(){return(0,t.isNone)((0,t.get)(this,e))})},e.not=function(e){return(0,t.computed)(e,function(){return!(0,t.get)(this,e)})},e.bool=function(e){return(0,t.computed)(e,function(){return!!(0,t.get)(this,e)})},e.match=function(e,n){return(0,t.computed)(e,function(){var r=(0,t.get)(this,e) -return n.test(r)})},e.equal=function(e,n){return(0,t.computed)(e,function(){return(0,t.get)(this,e)===n})},e.gt=function(e,n){return(0,t.computed)(e,function(){return(0,t.get)(this,e)>n})},e.gte=function(e,n){return(0,t.computed)(e,function(){return(0,t.get)(this,e)>=n})},e.lt=function(e,n){return(0,t.computed)(e,function(){return(0,t.get)(this,e)<n})},e.lte=function(e,n){return(0,t.computed)(e,function(){return(0,t.get)(this,e)<=n})},e.oneWay=function(e){return(0,t.alias)(e).oneWay()},e.readOnly=function(e){return(0,t.alias)(e).readOnly()},e.deprecatingAlias=function(e,n){return(0,t.computed)(e,{get:function(n){return(0,t.get)(this,e)},set:function(n,r){return(0,t.set)(this,e,r),r}})},e.and=i("and",function(e){return e}),e.or=i("or",function(e){return!e})}) -e("ember-runtime/lib/computed/reduce_computed_macros",["exports","ember-debug","ember-metal","ember-runtime/lib/compare","ember-runtime/lib/utils","ember-runtime/lib/mixins/array"],function(e,t,n,r,i,o){"use strict" -function s(e,t,r,i){return new n.ComputedProperty(function(){var i=(0,n.get)(this,e) -return null===i||"object"!=typeof i?r:i.reduce(t,r,this)},{dependentKeys:[e+".[]"],readOnly:!0})}function a(e,t){var r=void 0;/@each/.test(e)?r=e.replace(/\.@each.*$/,""):(r=e,e+=".[]") -var s=new n.ComputedProperty(function(){var e=(0,n.get)(this,r) -return(0,i.isArray)(e)?(0,o.A)(t.call(this,e)):(0,o.A)()},{readOnly:!0}) -return s.property(e),s}function u(e,t,r){var i=e.map(function(e){return e+".[]"}) -return new n.ComputedProperty(function(){return(0,o.A)(t.call(this,e))},{dependentKeys:i,readOnly:!0})}function c(e,t){return a(e,function(e){return e.map(t,this)})}function l(e,t){return a(e,function(e){return e.filter(t,this)})}function h(){var e,t,r -for(e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r] -return u(t,function(e){var t=this,r=(0,o.A)(),s=new Set -return e.forEach(function(e){var o=(0,n.get)(t,e);(0,i.isArray)(o)&&o.forEach(function(e){s.has(e)||(s.add(e),r.push(e))})}),r},"uniq")}function d(e,t){return a(e,function(e){var n=this -return e.slice().sort(function(e,r){return t.call(n,e,r)})})}function p(e,t){var r=new n.ComputedProperty(function(s){function a(){this.notifyPropertyChange(s)}var u,c=this,l=(0,n.get)(this,t),h=r._activeObserverMap||(r._activeObserverMap=new WeakMap),d=h.get(this) -void 0!==d&&d.forEach(function(e){return n.removeObserver.apply(void 0,e)}) -var p="@this"===e,m=f(l) -0===m.length?(u=p?"[]":e+".[]",(0,n.addObserver)(this,u,a),d=[[this,u,a]]):d=m.map(function(t){var r=t[0],i=p?"@each."+r:e+".@each."+r -return(0,n.addObserver)(c,i,a),[c,i,a]}),h.set(this,d) -var v=p?this:(0,n.get)(this,e) -return(0,i.isArray)(v)?0===m.length?(0,o.A)(v.slice()):g(v,m):(0,o.A)()},{dependentKeys:[t+".[]"],readOnly:!0}) -return r._activeObserverMap=void 0,r}function f(e){return e.map(function(e){var t=e.split(":"),n=t[0],r=t[1] -return r=r||"asc",[n,r]})}function g(e,t){return(0,o.A)(e.slice().sort(function(e,i){var o,s,a,u,c -for(o=0;o<t.length;o++)if(s=t[o],a=s[0],u=s[1],0!==(c=(0,r.default)((0,n.get)(e,a),(0,n.get)(i,a))))return"desc"===u?-1*c:c -return 0}))}e.union=void 0,e.sum=function(e){return s(e,function(e,t){return e+t},0,"sum")},e.max=function(e){return s(e,function(e,t){return Math.max(e,t)},-1/0,"max")},e.min=function(e){return s(e,function(e,t){return Math.min(e,t)},1/0,"min")},e.map=c,e.mapBy=function(e,t){return c(e+".@each."+t,function(e){return(0,n.get)(e,t)})},e.filter=l,e.filterBy=function(e,t,r){var i=void 0 -return i=2===arguments.length?function(e){return(0,n.get)(e,t)}:function(e){return(0,n.get)(e,t)===r},l(e+".@each."+t,i)},e.uniq=h,e.uniqBy=function(e,t){return new n.ComputedProperty(function(){var r,s=(0,o.A)(),a=(0,n.get)(this,e) -return(0,i.isArray)(a)&&(r=new Set,a.forEach(function(e){var i=(0,n.get)(e,t) -r.has(i)||(r.add(i),s.push(e))})),s},{dependentKeys:[e+".[]"],readOnly:!0})},e.intersect=function(){var e,t,r -for(e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r] -return u(t,function(e){var t=this,r=e.map(function(e){var r=(0,n.get)(t,e) -return(0,i.isArray)(r)?r:[]}),s=r.pop().filter(function(e){var t,n,i,o -for(t=0;t<r.length;t++){for(n=!1,i=r[t],o=0;o<i.length;o++)if(i[o]===e){n=!0 -break}if(!1===n)return!1}return!0},"intersect") -return(0,o.A)(s)})},e.setDiff=function(e,t){return new n.ComputedProperty(function(){var n=this.get(e),r=this.get(t) -return(0,i.isArray)(n)?(0,i.isArray)(r)?n.filter(function(e){return-1===r.indexOf(e)}):(0,o.A)(n):(0,o.A)()},{dependentKeys:[e+".[]",t+".[]"],readOnly:!0})},e.collect=function(){var e,t,r -for(e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r] -return u(t,function(){var e=(0,n.getProperties)(this,t),r=(0,o.A)() -for(var i in e)e.hasOwnProperty(i)&&(void 0===e[i]?r.push(null):r.push(e[i])) -return r},"collect")},e.sort=function(e,t){return"function"==typeof t?d(e,t):p(e,t)},e.union=h}),e("ember-runtime/lib/controllers/controller",["exports","ember-debug","ember-runtime/lib/system/object","ember-runtime/lib/mixins/controller","ember-runtime/lib/inject"],function(e,t,n,r,i){"use strict" -var o=n.default.extend(r.default);(0,i.createInjectionHelper)("controller",function(e){}),e.default=o}),e("ember-runtime/lib/copy",["exports","ember-debug","ember-runtime/lib/system/object","ember-runtime/lib/mixins/copyable"],function(e,t,n,r){"use strict" -function i(e,t,n,o){if("object"!=typeof e||null===e)return e -var s,a=void 0,u=void 0 -if(t&&(u=n.indexOf(e))>=0)return o[u] -if(Array.isArray(e)){if(a=e.slice(),t)for(u=a.length;--u>=0;)a[u]=i(a[u],t,n,o)}else if(r.default.detect(e))a=e.copy(t,n,o) -else if(e instanceof Date)a=new Date(e.getTime()) -else{a={},s=void 0 -for(s in e)Object.prototype.hasOwnProperty.call(e,s)&&"__"!==s.substring(0,2)&&(a[s]=t?i(e[s],t,n,o):e[s])}return t&&(n.push(e),o.push(a)),a}e.default=function(e,t){return"object"!=typeof e||null===e?e:r.default.detect(e)?e.copy(t):i(e,t,t?[]:null,t?[]:null)}}),e("ember-runtime/lib/ext/function",["ember-environment","ember-metal","ember-debug"],function(e,t,n){"use strict" -var r=Function.prototype -e.ENV.EXTEND_PROTOTYPES.Function&&(Object.defineProperty(r,"property",{configurable:!0,enumerable:!1,writable:!0,value:function(){return t.computed.apply(void 0,Array.prototype.slice.call(arguments).concat([this]))}}),Object.defineProperty(r,"observes",{configurable:!0,enumerable:!1,writable:!0,value:function(){return t.observer.apply(void 0,Array.prototype.slice.call(arguments).concat([this]))}}),Object.defineProperty(r,"_observesImmediately",{configurable:!0,enumerable:!1,writable:!0,value:function(){return this.observes.apply(this,arguments)}}),Object.defineProperty(r,"on",{configurable:!0,enumerable:!1,writable:!0,value:function(){return t.on.apply(void 0,Array.prototype.slice.call(arguments).concat([this]))}}))}),e("ember-runtime/lib/ext/rsvp",["exports","ember-babel","rsvp","ember-metal","ember-debug","container"],function(e,t,n,r,i,o){"use strict" -function s(e){var t,n=a(e) -if(n){if(!(t=(0,r.getDispatchOverride)()))throw n -t(n)}}function a(e){if(e){if(e.errorThrown)return u(e) -if("UnrecognizedURLError"!==e.name&&"TransitionAborted"!==e.name)return e}}function u(e){var t=e.errorThrown -return"string"==typeof t&&(t=new Error(t)),Object.defineProperty(t,"__reason_with_error_thrown__",{value:e,enumerable:!1}),t}e.onerrorDefault=s -var c=(0,t.taggedTemplateLiteralLoose)(["rsvpAfter"],["rsvpAfter"]) -n.configure("async",function(e,t){r.backburner.schedule("actions",null,e,t)}),n.configure("after",function(e){r.backburner.schedule((0,o.privatize)(c),null,e)}),n.on("error",s),e.default=n}),e("ember-runtime/lib/ext/string",["ember-environment","ember-runtime/lib/system/string"],function(e,t){"use strict" -var n=String.prototype -e.ENV.EXTEND_PROTOTYPES.String&&(Object.defineProperty(n,"w",{configurable:!0,enumerable:!1,writeable:!0,value:function(){return(0,t.w)(this)}}),Object.defineProperty(n,"loc",{configurable:!0,enumerable:!1,writeable:!0,value:function(){var e,n,r -for(e=arguments.length,n=Array(e),r=0;r<e;r++)n[r]=arguments[r] -return(0,t.loc)(this,n)}}),Object.defineProperty(n,"camelize",{configurable:!0,enumerable:!1,writeable:!0,value:function(){return(0,t.camelize)(this)}}),Object.defineProperty(n,"decamelize",{configurable:!0,enumerable:!1,writeable:!0,value:function(){return(0,t.decamelize)(this)}}),Object.defineProperty(n,"dasherize",{configurable:!0,enumerable:!1,writeable:!0,value:function(){return(0,t.dasherize)(this)}}),Object.defineProperty(n,"underscore",{configurable:!0,enumerable:!1,writeable:!0,value:function(){return(0,t.underscore)(this)}}),Object.defineProperty(n,"classify",{configurable:!0,enumerable:!1,writeable:!0,value:function(){return(0,t.classify)(this)}}),Object.defineProperty(n,"capitalize",{configurable:!0,enumerable:!1,writeable:!0,value:function(){return(0,t.capitalize)(this)}}))}),e("ember-runtime/lib/inject",["exports","ember-metal","ember-debug"],function(e,t,n){"use strict" -function r(){}e.default=r,e.createInjectionHelper=function(e,n){i[e]=n,r[e]=function(n){return new t.InjectedProperty(e,n)}},e.validatePropertyInjections=function(e){var n,r,o,s=e.proto(),a=[] -for(var u in s)(n=(0,t.descriptorFor)(s,u))instanceof t.InjectedProperty&&-1===a.indexOf(n.type)&&a.push(n.type) -if(a.length)for(r=0;r<a.length;r++)"function"==typeof(o=i[a[r]])&&o(e) -return!0} -var i={}}),e("ember-runtime/lib/is-equal",["exports"],function(e){"use strict" -e.default=function(e,t){return e&&"function"==typeof e.isEqual?e.isEqual(t):e instanceof Date&&t instanceof Date?e.getTime()===t.getTime():e===t}}),e("ember-runtime/lib/mixins/-proxy",["exports","@glimmer/reference","ember-metal","ember-utils","ember-debug","ember-runtime/lib/computed/computed_macros"],function(e,t,n,r,i,o){"use strict" -function s(e,t){var r=t.slice(8) -r in this||(0,n.notifyPropertyChange)(this,r)}function a(e,t){var r=(0,n.get)(e,"content"),i=(void 0===t?(0,n.meta)(e):t).readableTag() -return void 0!==i&&i.inner.second.inner.update((0,n.tagFor)(r)),r}e.contentFor=a,e.default=n.Mixin.create({content:null,init:function(){this._super.apply(this,arguments),(0,r.setProxy)(this),(0,n.meta)(this).writableTag(function(){return(0,t.combine)([t.DirtyableTag.create(),t.UpdatableTag.create(t.CONSTANT_TAG)])})},isTruthy:(0,o.bool)("content"),willWatchProperty:function(e){(0,n.addObserver)(this,"content."+e,null,s)},didUnwatchProperty:function(e){(0,n.removeObserver)(this,"content."+e,null,s)},unknownProperty:function(e){var t=a(this) -if(t)return(0,n.get)(t,e)},setUnknownProperty:function(e,t){var r=(0,n.meta)(this) -if(r.proto===this)return(0,n.defineProperty)(this,e,null,t),t -var i=a(this,r) -return(0,n.set)(i,e,t)}})}),e("ember-runtime/lib/mixins/action_handler",["exports","ember-metal","ember-debug"],function(e,t,n){"use strict" -var r=t.Mixin.create({mergedProperties:["actions"],send:function(e){for(n=arguments.length,r=Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i] -if(!this.actions||!this.actions[e]||!0===this.actions[e].apply(this,r)){var n,r,i,o=(0,t.get)(this,"target") -o&&o.send.apply(o,arguments)}}}) -e.default=r}),e("ember-runtime/lib/mixins/array",["exports","ember-utils","ember-metal","ember-debug","ember-runtime/lib/mixins/enumerable","ember-runtime/lib/compare","ember-environment","ember-runtime/lib/mixins/observable","ember-runtime/lib/mixins/copyable","ember-runtime/lib/copy","ember-runtime/lib/mixins/mutable_enumerable"],function(e,t,n,r,i,o,s,a,u,c,l){"use strict" -function h(e,t){return 2===arguments.length?function(r){return t===(0,n.get)(r,e)}:function(t){return!!(0,n.get)(t,e)}}function d(e,t,i){if("number"==typeof t){if(t<0||t>=(0,n.get)(e,"length"))throw new r.Error(y) -void 0===i&&(i=1),e.replace(t,i,b)}return e}e.MutableArray=e.NativeArray=e.A=void 0,e.isEmberArray=function(e){return e&&e[m]},e.removeAt=d -var p,f,g=Object.freeze([]),m=(0,t.symbol)("EMBER_ARRAY"),v=n.Mixin.create(i.default,(p={},p[m]=!0,p.length=null,p.objectAt=function(e){if(!(e<0||e>=(0,n.get)(this,"length")))return(0,n.get)(this,e)},p.objectsAt=function(e){var t=this -return e.map(function(e){return(0,n.objectAt)(t,e)})},p["[]"]=(0,n.computed)({get:function(){return this},set:function(e,t){return this.replace(0,(0,n.get)(this,"length"),t),this}}),p.firstObject=(0,n.computed)(function(){return(0,n.objectAt)(this,0)}).readOnly(),p.lastObject=(0,n.computed)(function(){return(0,n.objectAt)(this,(0,n.get)(this,"length")-1)}).readOnly(),p.slice=function(e,t){var r=I(),i=(0,n.get)(this,"length") -for((0,n.isNone)(e)?e=0:e<0&&(e=i+e),(0,n.isNone)(t)||t>i?t=i:t<0&&(t=i+t);e<t;)r[r.length]=(0,n.objectAt)(this,e++) -return r},p.indexOf=function(e,t){var r,i=(0,n.get)(this,"length") -for(void 0===t&&(t=0),t<0&&(t+=i),r=t;r<i;r++)if((0,n.objectAt)(this,r)===e)return r -return-1},p.lastIndexOf=function(e,t){var r,i=(0,n.get)(this,"length") -for((void 0===t||t>=i)&&(t=i-1),t<0&&(t+=i),r=t;r>=0;r--)if((0,n.objectAt)(this,r)===e)return r -return-1},p.addArrayObserver=function(e,t){return(0,n.addArrayObserver)(this,e,t)},p.removeArrayObserver=function(e,t){return(0,n.removeArrayObserver)(this,e,t)},p.hasArrayObservers=(0,n.computed)(function(){return(0,n.hasListeners)(this,"@array:change")||(0,n.hasListeners)(this,"@array:before")}),p.arrayContentWillChange=function(e,t,r){return(0,n.arrayContentWillChange)(this,e,t,r)},p.arrayContentDidChange=function(e,t,r){return(0,n.arrayContentDidChange)(this,e,t,r)},p.forEach=function(e){var t,r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=(0,n.get)(this,"length") -for(t=0;t<o;t++)r=this.objectAt(t),e.call(i,r,t,this) -return this},p.getEach=(0,n.aliasMethod)("mapBy"),p.setEach=function(e,t){return this.forEach(function(r){return(0,n.set)(r,e,t)})},p.map=function(e,t){var n=I() -return this.forEach(function(r,i,o){return n[i]=e.call(t,r,i,o)}),n},p.mapBy=function(e){return this.map(function(t){return(0,n.get)(t,e)})},p.filter=function(e,t){var n=I() -return this.forEach(function(r,i,o){e.call(t,r,i,o)&&n.push(r)}),n},p.reject=function(e,t){return this.filter(function(){return!e.apply(t,arguments)})},p.filterBy=function(){return this.filter(h.apply(this,arguments))},p.rejectBy=function(e,t){var r=2===arguments.length?function(r){return(0,n.get)(r,e)===t}:function(t){return!!(0,n.get)(t,e)} -return this.reject(r)},p.find=function(e){var t,r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=(0,n.get)(this,"length") -for(t=0;t<o;t++)if(r=this.objectAt(t),e.call(i,r,t,this))return r},p.findBy=function(){return this.find(h.apply(this,arguments))},p.every=function(e,t){return!this.find(function(n,r,i){return!e.call(t,n,r,i)})},p.isEvery=function(){return this.every(h.apply(this,arguments))},p.any=function(e){var t,r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=(0,n.get)(this,"length") -for(t=0;t<o;t++)if(r=this.objectAt(t),e.call(i,r,t,this))return!0 -return!1},p.isAny=function(){return this.any(h.apply(this,arguments))},p.reduce=function(e,t,n){var r=t -return this.forEach(function(t,i){r=e(r,t,i,this,n)},this),r},p.invoke=function(e){for(t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r] -var t,n,r,i=I() -return this.forEach(function(t,r){var o=t&&t[e] -"function"==typeof o&&(i[r]=n.length?o.apply(t,n):t[e]())},this),i},p.toArray=function(){var e=I() -return this.forEach(function(t,n){return e[n]=t}),e},p.compact=function(){return this.filter(function(e){return null!=e})},p.includes=function(e,t){var r,i,o=(0,n.get)(this,"length") -for(void 0===t&&(t=0),t<0&&(t+=o),r=t;r<o;r++)if(i=(0,n.objectAt)(this,r),e===i||e!==e&&i!==i)return!0 -return!1},p.sortBy=function(){var e=arguments -return this.toArray().sort(function(t,r){var i,s,a,u,c -for(i=0;i<e.length;i++)if(s=e[i],a=(0,n.get)(t,s),u=(0,n.get)(r,s),c=(0,o.default)(a,u))return c -return 0})},p.uniq=function(){var e=I(),t=new Set -return this.forEach(function(n){t.has(n)||(t.add(n),e.push(n))}),e},p.uniqBy=function(e){var t=I(),r=new Set -return this.forEach(function(i){var o=(0,n.get)(i,e) -r.has(o)||(r.add(o),t.push(i))}),t},p.without=function(e){if(!this.includes(e))return this -var t=I() -return this.forEach(function(n){n===e||n!==n&&e!==e||(t[t.length]=n)}),t},p["@each"]=(0,n.computed)(function(){return(0,n.eachProxyFor)(this)}).readOnly(),p)),y="Index out of range",b=[],C=n.Mixin.create(v,l.default,{replace:null,clear:function(){var e=(0,n.get)(this,"length") -return 0===e?this:(this.replace(0,e,b),this)},insertAt:function(e,t){if(e>(0,n.get)(this,"length"))throw new r.Error(y) -return this.replace(e,0,[t]),this},removeAt:function(e,t){return d(this,e,t)},pushObject:function(e){return this.insertAt((0,n.get)(this,"length"),e),e},pushObjects:function(e){if(!Array.isArray(e))throw new TypeError("Must pass Enumerable to MutableArray#pushObjects") -return this.replace((0,n.get)(this,"length"),0,e),this},popObject:function(){var e=(0,n.get)(this,"length") -if(0===e)return null -var t=(0,n.objectAt)(this,e-1) -return this.removeAt(e-1,1),t},shiftObject:function(){if(0===(0,n.get)(this,"length"))return null -var e=(0,n.objectAt)(this,0) -return this.removeAt(0),e},unshiftObject:function(e){return this.insertAt(0,e),e},unshiftObjects:function(e){return this.replace(0,0,e),this},reverseObjects:function(){var e=(0,n.get)(this,"length") -if(0===e)return this -var t=this.toArray().reverse() -return this.replace(0,e,t),this},setObjects:function(e){if(0===e.length)return this.clear() -var t=(0,n.get)(this,"length") -return this.replace(0,t,e),this},removeObject:function(e){for(var t=(0,n.get)(this,"length")||0;--t>=0;)(0,n.objectAt)(this,t)===e&&this.removeAt(t) -return this},removeObjects:function(e){var t -for((0,n.beginPropertyChanges)(this),t=e.length-1;t>=0;t--)this.removeObject(e[t]) -return(0,n.endPropertyChanges)(this),this},addObject:function(e){return this.includes(e)||this.pushObject(e),this},addObjects:function(e){var t=this -return(0,n.beginPropertyChanges)(this),e.forEach(function(e){return t.addObject(e)}),(0,n.endPropertyChanges)(this),this}}),A=n.Mixin.create(C,a.default,u.default,{get:function(e){return"number"==typeof e?this[e]:this._super(e)},objectAt:function(e){return this[e]},replace:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:g -return(0,n.replaceInNativeArray)(this,e,t,r),this},unknownProperty:function(e,t){var n=void 0 -return void 0!==t&&void 0===n&&(n=this[e]=t),n},indexOf:Array.prototype.indexOf,lastIndexOf:Array.prototype.lastIndexOf,copy:function(e){return e?this.map(function(e){return(0,c.default)(e,!0)}):this.slice()}}),_=["length"] -A.keys().forEach(function(e){Array.prototype[e]&&_.push(e)}),e.NativeArray=A=(f=A).without.apply(f,_) -var I=void 0 -s.ENV.EXTEND_PROTOTYPES.Array?(A.apply(Array.prototype),e.A=I=function(e){return e||[]}):e.A=I=function(e){return e||(e=[]),v.detect(e)?e:A.apply(e)},e.A=I,e.NativeArray=A,e.MutableArray=C,e.default=v}),e("ember-runtime/lib/mixins/comparable",["exports","ember-metal"],function(e,t){"use strict" -e.default=t.Mixin.create({compare:null})}),e("ember-runtime/lib/mixins/container_proxy",["exports","ember-metal"],function(e,t){"use strict" -e.default=t.Mixin.create({__container__:null,ownerInjection:function(){return this.__container__.ownerInjection()},lookup:function(e,t){return this.__container__.lookup(e,t)},willDestroy:function(){this._super.apply(this,arguments),this.__container__&&(0,t.run)(this.__container__,"destroy")},factoryFor:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{} -return this.__container__.factoryFor(e,t)}})}),e("ember-runtime/lib/mixins/controller",["exports","ember-metal","ember-runtime/lib/mixins/action_handler"],function(e,t,n){"use strict" -e.default=t.Mixin.create(n.default,{isController:!0,target:null,store:null,model:null})}),e("ember-runtime/lib/mixins/copyable",["exports","ember-metal"],function(e,t){"use strict" -e.default=t.Mixin.create({copy:null})}),e("ember-runtime/lib/mixins/enumerable",["exports","ember-metal"],function(e,t){"use strict" -e.default=t.Mixin.create()}),e("ember-runtime/lib/mixins/evented",["exports","ember-metal"],function(e,t){"use strict" -e.default=t.Mixin.create({on:function(e,n,r){return(0,t.addListener)(this,e,n,r),this},one:function(e,n,r){return r||(r=n,n=null),(0,t.addListener)(this,e,n,r,!0),this},trigger:function(e){var n,r,i -for(n=arguments.length,r=Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];(0,t.sendEvent)(this,e,r)},off:function(e,n,r){return(0,t.removeListener)(this,e,n,r),this},has:function(e){return(0,t.hasListeners)(this,e)}})}),e("ember-runtime/lib/mixins/mutable_enumerable",["exports","ember-runtime/lib/mixins/enumerable","ember-metal"],function(e,t,n){"use strict" -e.default=n.Mixin.create(t.default)}),e("ember-runtime/lib/mixins/observable",["exports","ember-metal","ember-debug"],function(e,t,n){"use strict" -e.default=t.Mixin.create({get:function(e){return(0,t.get)(this,e)},getProperties:function(){var e,n,r -for(e=arguments.length,n=Array(e),r=0;r<e;r++)n[r]=arguments[r] -return t.getProperties.apply(void 0,[this].concat(n))},set:function(e,n){return(0,t.set)(this,e,n)},setProperties:function(e){return(0,t.setProperties)(this,e)},beginPropertyChanges:function(){return(0,t.beginPropertyChanges)(),this},endPropertyChanges:function(){return(0,t.endPropertyChanges)(),this},propertyWillChange:function(e){return(0,t.propertyWillChange)(this,e),this},propertyDidChange:function(e){return(0,t.propertyDidChange)(this,e),this},notifyPropertyChange:function(e){return(0,t.notifyPropertyChange)(this,e),this},addObserver:function(e,n,r){return(0,t.addObserver)(this,e,n,r),this},removeObserver:function(e,n,r){return(0,t.removeObserver)(this,e,n,r),this},hasObserverFor:function(e){return(0,t.hasListeners)(this,e+":change")},getWithDefault:function(e,n){return(0,t.getWithDefault)(this,e,n)},incrementProperty:function(e,n){return(0,t.isNone)(n)&&(n=1),(0,t.set)(this,e,(parseFloat((0,t.get)(this,e))||0)+n)},decrementProperty:function(e,n){return(0,t.isNone)(n)&&(n=1),(0,t.set)(this,e,((0,t.get)(this,e)||0)-n)},toggleProperty:function(e){return(0,t.set)(this,e,!(0,t.get)(this,e))},cacheFor:function(e){return(0,t.getCachedValueFor)(this,e)}})}),e("ember-runtime/lib/mixins/promise_proxy",["exports","ember-metal","ember-debug","ember-runtime/lib/computed/computed_macros"],function(e,t,n,r){"use strict" -function i(e,n){return(0,t.setProperties)(e,{isFulfilled:!1,isRejected:!1}),n.then(function(n){return e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{content:n,isFulfilled:!0}),n},function(n){throw e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{reason:n,isRejected:!0}),n},"Ember: PromiseProxy")}function o(e){return function(){var n=(0,t.get)(this,"promise") -return n[e].apply(n,arguments)}}e.default=t.Mixin.create({reason:null,isPending:(0,r.not)("isSettled").readOnly(),isSettled:(0,r.or)("isRejected","isFulfilled").readOnly(),isRejected:!1,isFulfilled:!1,promise:(0,t.computed)({get:function(){throw new n.Error("PromiseProxy's promise must be set")},set:function(e,t){return i(this,t)}}),then:o("then"),catch:o("catch"),finally:o("finally")})}),e("ember-runtime/lib/mixins/registry_proxy",["exports","ember-debug","ember-metal"],function(e,t,n){"use strict" -function r(e){return function(){var t -return(t=this.__registry__)[e].apply(t,arguments)}}e.default=n.Mixin.create({__registry__:null,resolveRegistration:function(e,t){return this.__registry__.resolve(e,t)},register:r("register"),unregister:r("unregister"),hasRegistration:r("has"),registeredOption:r("getOption"),registerOptions:r("options"),registeredOptions:r("getOptions"),registerOptionsForType:r("optionsForType"),registeredOptionsForType:r("getOptionsForType"),inject:r("injection")})}),e("ember-runtime/lib/mixins/target_action_support",["exports","ember-environment","ember-metal","ember-debug"],function(e,t,n,r){"use strict" -function i(e){var r,i=(0,n.get)(e,"target") -return i?"string"==typeof i?(r=(0,n.get)(e,i),void 0===r&&(r=(0,n.get)(t.context.lookup,i)),r):i:i||(e._targetObject?e._targetObject:null)}e.default=n.Mixin.create({target:null,targetObject:(0,n.descriptor)({configurable:!0,enumerable:!1,get:function(){return this._targetObject},set:function(e){this._targetObject=e}}),action:null,actionContext:null,actionContextObject:(0,n.computed)("actionContext",function(){var e,r=(0,n.get)(this,"actionContext") -return"string"==typeof r?(e=(0,n.get)(this,r),void 0===e&&(e=(0,n.get)(t.context.lookup,r)),e):r}),triggerAction:function(){var e,t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=r.action,s=r.target,a=r.actionContext -return o=o||(0,n.get)(this,"action"),s=s||i(this),void 0===a&&(a=(0,n.get)(this,"actionContextObject")||this),!(!s||!o||(void 0,!1===(s.send?(e=s).send.apply(e,[o].concat(a)):(t=s)[o].apply(t,[].concat(a)))))}})}),e("ember-runtime/lib/string_registry",["exports"],function(e){"use strict" -function t(){return r}function n(e){return r[e]}e.setStrings=function(e){r=e},e.getStrings=t,e.get=n -var r={}}),e("ember-runtime/lib/system/array_proxy",["exports","ember-metal","ember-runtime/lib/utils","ember-runtime/lib/system/object","ember-runtime/lib/mixins/array","ember-debug"],function(e,t,n,r,i,o){"use strict" -var s,a={willChange:"_arrangedContentArrayWillChange",didChange:"_arrangedContentArrayDidChange"} -e.default=r.default.extend(i.MutableArray,(s={init:function(){this._super.apply(this,arguments),this._objectsDirtyIndex=0,this._objects=null,this._lengthDirty=!0,this._length=0,this._arrangedContent=null,this._addArrangedContentArrayObsever()},willDestroy:function(){this._removeArrangedContentArrayObsever()},content:null,arrangedContent:(0,t.alias)("content"),objectAtContent:function(e){return(0,t.objectAt)((0,t.get)(this,"arrangedContent"),e)},replace:function(e,t,n){this.replaceContent(e,t,n)},replaceContent:function(e,n,r){(0,t.get)(this,"content").replace(e,n,r)},objectAt:function(e){var n,r,i -if(null===this._objects&&(this._objects=[]),-1!==this._objectsDirtyIndex&&e>=this._objectsDirtyIndex){if(n=(0,t.get)(this,"arrangedContent"))for(r=this._objects.length=(0,t.get)(n,"length"),i=this._objectsDirtyIndex;i<r;i++)this._objects[i]=this.objectAtContent(i) -else this._objects.length=0 -this._objectsDirtyIndex=-1}return this._objects[e]},length:(0,t.computed)(function(){var e -return this._lengthDirty&&(e=(0,t.get)(this,"arrangedContent"),this._length=e?(0,t.get)(e,"length"):0,this._lengthDirty=!1),this._length}).volatile()},s[t.PROPERTY_DID_CHANGE]=function(e){var n,r,i -"arrangedContent"===e&&(n=null===this._objects?0:this._objects.length,r=(0,t.get)(this,"arrangedContent"),i=r?(0,t.get)(r,"length"):0,this._removeArrangedContentArrayObsever(),this.arrayContentWillChange(0,n,i),this._objectsDirtyIndex=0,this._lengthDirty=!0,this.arrayContentDidChange(0,n,i),this._addArrangedContentArrayObsever())},s._addArrangedContentArrayObsever=function(){var e=(0,t.get)(this,"arrangedContent") -e&&((0,t.addArrayObserver)(e,this,a),this._arrangedContent=e)},s._removeArrangedContentArrayObsever=function(){this._arrangedContent&&(0,t.removeArrayObserver)(this._arrangedContent,this,a)},s._arrangedContentArrayWillChange=function(){},s._arrangedContentArrayDidChange=function(e,n,r,i){this.arrayContentWillChange(n,r,i) -var o,s=n -s<0&&(o=(0,t.get)(this._arrangedContent,"length"),s+=o+r-i),-1===this._objectsDirtyIndex?this._objectsDirtyIndex=s:this._objectsDirtyIndex>s&&(this._objectsDirtyIndex=s),this._lengthDirty=!0,this.arrayContentDidChange(n,r,i)},s))}),e("ember-runtime/lib/system/core_object",["exports","ember-babel","container","ember-utils","ember-metal","ember-runtime/lib/mixins/action_handler","ember-runtime/lib/inject","ember-debug","ember-environment"],function(e,t,n,r,i,o,s,a,u){"use strict" -function c(e){var o,s=!1,a=void 0 -return e?a=function(e){function n(n){return s||a.proto(),(0,t.possibleConstructorReturn)(this,e.call(this,n))}return(0,t.inherits)(n,e),n}(e):(o=void 0,a=function(){function e(e){var t,c,l,h,d,p,f,g,m,v,y,b -s||a.proto() -var C=this -void 0!==o&&(n.FACTORY_FOR.set(this,o),o=void 0) -var A=(0,i.meta)(C),_=A.proto -if(A.proto=C,void 0!==e)for(c=C.concatenatedProperties,l=C.mergedProperties,h=void 0!==c&&c.length>0,d=void 0!==l&&l.length>0,p=Object.keys(e),f=0;f<p.length;f++)g=p[f],m=e[g],u.ENV._ENABLE_BINDING_SUPPORT&&i.Mixin.detectBinding(g)&&A.writeBindings(g,m),v=(0,i.descriptorFor)(C,g,A),y=void 0!==v,y||(b=C[g],h&&c.indexOf(g)>-1&&(m=b?(0,r.makeArray)(b).concat(m):(0,r.makeArray)(m)),d&&l.indexOf(g)>-1&&(m=(0,r.assign)({},b,m))),y?v.set(C,g,m):"function"!=typeof C.setUnknownProperty||g in C?C[g]=m:C.setUnknownProperty(g,m) -u.ENV._ENABLE_BINDING_SUPPORT&&i.Mixin.finishPartial(C,A),(t=C).init.apply(t,arguments),A.proto=_,(0,i.finishChains)(A),(0,i.sendEvent)(C,"init",void 0,void 0,void 0,A)}return e._initFactory=function(e){o=e},e}()),a.willReopen=function(){s&&(a.PrototypeMixin=i.Mixin.create(a.PrototypeMixin)),s=!1},a.proto=function(){var e=a.superclass -return e&&e.proto(),s||(s=!0,a.PrototypeMixin.applyPartial(a.prototype)),this.prototype},a}function l(){var e,t,n,i,o,s,a,u,c,l,h,d,p=this.concatenatedProperties,f=this.mergedProperties,g=void 0!==p&&p.length>0,m=void 0!==f&&f.length>0,v={} -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -for(i=0;i<t.length;i++)for(o=t[i],s=Object.keys(o),a=0,u=s.length;a<u;a++)c=s[a],l=o[c],g&&p.indexOf(c)>-1&&(h=v[c],l=h?(0,r.makeArray)(h).concat(l):(0,r.makeArray)(l)),m&&f.indexOf(c)>-1&&(d=v[c],l=(0,r.assign)({},d,l)),v[c]=l -return v}var h=i.Mixin._apply,d=i.Mixin.prototype.reopen,p=(0,i.descriptor)({configurable:!0,enumerable:!1,get:function(){return(0,i.peekMeta)(this).isSourceDestroyed()},set:function(e){}}),f=(0,i.descriptor)({configurable:!0,enumerable:!1,get:function(){return(0,i.peekMeta)(this).isSourceDestroying()},set:function(e){}}),g=c() -g.prototype.toString=i.classToString,g.toString=i.classToString,(0,r.setName)(g,"Ember.CoreObject"),g.PrototypeMixin=i.Mixin.create({reopen:function(){var e,t,n -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -return h(this,t,!0),this},init:function(){},concatenatedProperties:null,mergedProperties:null,isDestroyed:p,isDestroying:f,destroy:function(){var e=(0,i.peekMeta)(this) -if(!e.isSourceDestroying())return e.setSourceDestroying(),(0,i.schedule)("actions",this,this.willDestroy),(0,i.schedule)("destroy",this,this._scheduledDestroy,e),this},willDestroy:function(){},_scheduledDestroy:function(e){e.isSourceDestroyed()||((0,i.deleteMeta)(this),e.setSourceDestroyed())},toString:function(){var e="function"==typeof this.toStringExtension,t=e?":"+this.toStringExtension():"" -return"<"+((0,r.getName)(this)||n.FACTORY_FOR.get(this)||this.constructor.toString())+":"+(0,r.guidFor)(this)+t+">"}}),g.PrototypeMixin.ownerConstructor=g,g.__super__=null -var m=i.Mixin.create({isClass:!0,isMethod:!1,extend:function(){var e=c(this) -e.ClassMixin=i.Mixin.create(this.ClassMixin),e.PrototypeMixin=i.Mixin.create(this.PrototypeMixin),e.ClassMixin.ownerConstructor=e,e.PrototypeMixin.ownerConstructor=e,d.apply(e.PrototypeMixin,arguments),e.superclass=this,e.__super__=this.prototype -var t=e.prototype -return(0,i.meta)(t).proto=t,e.ClassMixin.apply(e),e},create:function(e,t){var n=this -return new n(void 0===t?e:l.apply(this,arguments))},reopen:function(){return this.willReopen(),d.apply(this.PrototypeMixin,arguments),this},reopenClass:function(){return d.apply(this.ClassMixin,arguments),h(this,arguments,!1),this},detect:function(e){if("function"!=typeof e)return!1 -for(;e;){if(e===this)return!0 -e=e.superclass}return!1},detectInstance:function(e){return e instanceof this},metaForProperty:function(e){var t=this.proto(),n=(0,i.descriptorFor)(t,e) -return n._meta||{}},eachComputedProperty:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this -this.proto() -var n={};(0,i.meta)(this.prototype).forEachDescriptors(function(r,i){var o -i.enumerable&&(o=i._meta||n,e.call(t,r,o))})}}) -m.ownerConstructor=g,g.ClassMixin=m,m.apply(g),e.default=g}),e("ember-runtime/lib/system/lazy_load",["exports","ember-environment"],function(e,t){"use strict" -e._loaded=void 0,e.onLoad=function(e,t){var i=r[e] -n[e]=n[e]||[],n[e].push(t),i&&t(i)},e.runLoadHooks=function(e,i){r[e]=i -var o,s=t.environment.window -s&&"function"==typeof CustomEvent&&(o=new CustomEvent(e,{detail:i,name:e}),s.dispatchEvent(o)),n[e]&&n[e].forEach(function(e){return e(i)})} -var n=t.ENV.EMBER_LOAD_HOOKS||{},r={} -e._loaded=r}),e("ember-runtime/lib/system/namespace",["exports","ember-metal","ember-utils","ember-runtime/lib/system/object"],function(e,t,n,r){"use strict" -var i=r.default.extend({isNamespace:!0,init:function(){(0,t.addNamespace)(this)},toString:function(){var e=(0,t.get)(this,"name")||(0,t.get)(this,"modulePrefix") -return e||((0,t.findNamespaces)(),e=(0,n.getName)(this),void 0===e&&(e=(0,n.guidFor)(this),(0,n.setName)(this,e)),e)},nameClasses:function(){(0,t.processNamespace)(this)},destroy:function(){(0,t.removeNamespace)(this),this._super.apply(this,arguments)}}) -i.reopenClass({NAMESPACES:t.NAMESPACES,NAMESPACES_BY_ID:t.NAMESPACES_BY_ID,processAll:t.processAllNamespaces,byName:t.findNamespace}),e.default=i}),e("ember-runtime/lib/system/object",["exports","container","ember-utils","ember-metal","ember-runtime/lib/system/core_object","ember-runtime/lib/mixins/observable","ember-debug"],function(e,t,n,r,i,o){"use strict" -e.FrameworkObject=void 0 -var s,a=(0,n.symbol)("OVERRIDE_OWNER"),u=i.default.extend(o.default,(s={_debugContainerKey:(0,r.descriptor)({enumerable:!1,get:function(){var e=t.FACTORY_FOR.get(this) -return void 0!==e&&e.fullName}})},s[n.OWNER]=(0,r.descriptor)({enumerable:!1,get:function(){if(this[a])return this[a] -var e=t.FACTORY_FOR.get(this) -return void 0!==e&&e.owner},set:function(e){this[a]=e}}),s));(0,n.setName)(u,"Ember.Object"),e.FrameworkObject=u,e.default=u}),e("ember-runtime/lib/system/object_proxy",["exports","ember-runtime/lib/system/object","ember-runtime/lib/mixins/-proxy"],function(e,t,n){"use strict" -e.default=t.default.extend(n.default)}),e("ember-runtime/lib/system/service",["exports","ember-runtime/lib/system/object","ember-runtime/lib/inject"],function(e,t,n){"use strict";(0,n.createInjectionHelper)("service") -var r=t.default.extend() -r.reopenClass({isServiceFactory:!0}),e.default=r}) -e("ember-runtime/lib/system/string",["exports","ember-metal","ember-utils","ember-runtime/lib/utils","ember-runtime/lib/string_registry"],function(e,t,n,r,i){"use strict" -function o(e,t){var i,o=t -if(!(0,r.isArray)(o)||arguments.length>2)for(o=new Array(arguments.length-1),i=1;i<arguments.length;i++)o[i-1]=arguments[i] -var s=0 -return e.replace(/%@([0-9]+)?/g,function(e,t){return t=t?parseInt(t,10)-1:s++,e=o[t],null===e?"(null)":void 0===e?"":(0,n.inspect)(e)})}function s(e,t){return(!(0,r.isArray)(t)||arguments.length>2)&&(t=Array.prototype.slice.call(arguments,1)),e=(0,i.get)(e)||e,o(e,t)}function a(e){return e.split(/\s+/)}function u(e){return S.get(e)}function c(e){return g.get(e)}function l(e){return y.get(e)}function h(e){return _.get(e)}function d(e){return x.get(e)}function p(e){return j.get(e)}e.capitalize=e.underscore=e.classify=e.camelize=e.dasherize=e.decamelize=e.w=e.loc=void 0 -var f=/[ _]/g,g=new t.Cache(1e3,function(e){return u(e).replace(f,"-")}),m=/(\-|\_|\.|\s)+(.)?/g,v=/(^|\/)([A-Z])/g,y=new t.Cache(1e3,function(e){return e.replace(m,function(e,t,n){return n?n.toUpperCase():""}).replace(v,function(e){return e.toLowerCase()})}),b=/^(\-|_)+(.)?/,C=/(.)(\-|\_|\.|\s)+(.)?/g,A=/(^|\/|\.)([a-z])/g,_=new t.Cache(1e3,function(e){var t,n=function(e,t,n){return n?"_"+n.toUpperCase():""},r=function(e,t,n,r){return t+(r?r.toUpperCase():"")},i=e.split("/") -for(t=0;t<i.length;t++)i[t]=i[t].replace(b,n).replace(C,r) -return i.join("/").replace(A,function(e){return e.toUpperCase()})}),I=/([a-z\d])([A-Z]+)/g,w=/\-|\s+/g,x=new t.Cache(1e3,function(e){return e.replace(I,"$1_$2").replace(w,"_").toLowerCase()}),k=/(^|\/)([a-z\u00C0-\u024F])/g,j=new t.Cache(1e3,function(e){return e.replace(k,function(e){return e.toUpperCase()})}),E=/([a-z\d])([A-Z])/g,S=new t.Cache(1e3,function(e){return e.replace(E,"$1_$2").toLowerCase()}) -e.default={loc:s,w:a,decamelize:u,dasherize:c,camelize:l,classify:h,underscore:d,capitalize:p},e.loc=s,e.w=a,e.decamelize=u,e.dasherize=c,e.camelize=l,e.classify=h,e.underscore=d,e.capitalize=p}),e("ember-runtime/lib/utils",["exports","ember-metal","ember-utils","ember-runtime/lib/mixins/array","ember-runtime/lib/system/object"],function(e,t,n,r,i){"use strict" -function o(e){if(null===e)return"null" -if(void 0===e)return"undefined" -var t=s[a.call(e)]||"object" -return"function"===t?i.default.detect(e)&&(t="class"):"object"===t&&(e instanceof Error?t="error":e instanceof i.default?t="instance":e instanceof Date&&(t="date")),t}e.isArray=function(e){var t=e -if(!t||t.setInterval)return!1 -if(Array.isArray(t))return!0 -if(r.default.detect(t))return!0 -var n=o(t) -if("array"===n)return!0 -var i=t.length -return"number"==typeof i&&i===i&&"object"===n},e.typeOf=o -var s={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object FileList]":"filelist"},a=Object.prototype.toString}),e("ember-utils",["exports"],function(e){"use strict" -function t(e){var t={} -t[e]=1 -for(var n in t)if(n===e)return n -return e}function n(e){return null!==e&&("object"==typeof e||"function"==typeof e)}function r(){return++d}function i(e){var n=g+Math.floor(Math.random()*new Date),r=t("__"+e+n+"__") -return m.push(r),r}function o(e){var t,n,r,i,o -for(t=1;t<arguments.length;t++)if(n=arguments[t])for(r=Object.keys(n),i=0;i<r.length;i++)o=r[i],e[o]=n[o] -return e}function s(){}function a(e){return void 0===e.__hasSuper&&(e.__hasSuper=A(e)),e.__hasSuper}function u(e,t){function n(){var n=this._super -this._super=t -var r=e.apply(this,arguments) -return this._super=n,r}return n.wrappedFunction=e,n.__ember_observes__=e.__ember_observes__,n.__ember_listens__=e.__ember_listens__,n}function c(e,t){return null!==e&&void 0!==e&&"function"==typeof e[t]}function l(e){return null===e||void 0===e}function h(e){var t,n,r -if("string"==typeof e)return e -if(Array.isArray(e)){for(t=e.length,n="",r=0;r<t;r++)r>0&&(n+=","),l(e[r])||(n+=h(e[r])) -return n}return null!=e&&"function"==typeof e.toString?e.toString():x.call(e)}e.setProxy=e.isProxy=e.WeakSet=e.HAS_NATIVE_PROXY=e.HAS_NATIVE_SYMBOL=e.toString=e.setName=e.getName=e.makeArray=e.tryInvoke=e.canInvoke=e.lookupDescriptor=e.inspect=e.wrap=e.ROOT=e.checkHasSuper=e.intern=e.guidFor=e.generateGuid=e.GUID_KEY=e.uuid=e.dictionary=e.assignPolyfill=e.assign=e.OWNER=e.setOwner=e.getOwner=e.isInternalSymbol=e.symbol=e.NAME_KEY=void 0 -var d=0,p=new WeakMap,f=new Map,g=t("__ember"+ +new Date),m=[],v=i("OWNER"),y=Object.assign,b=/\.(_super|call\(this|apply\(this)/,C=Function.prototype.toString,A=function(){return C.call(function(){return this}).indexOf("return this")>-1?function(e){return b.test(C.call(e))}:function(){return!0}}() -s.__hasSuper=!1 -var _=Object.prototype.toString,I=Array.isArray,w=new WeakMap,x=Object.prototype.toString,k=function(){return"function"==typeof Symbol&&"[object Symbol]"===Object.prototype.toString.call(Symbol())}(),j="function"==typeof Proxy,E="function"==typeof WeakSet?WeakSet:function(){function e(){this._map=new WeakMap}return e.prototype.add=function(e){return this._map.set(e,!0),this},e.prototype.delete=function(e){return this._map.delete(e)},e.prototype.has=function(e){return this._map.has(e)},e}(),S=new E,T=i("NAME_KEY") -e.NAME_KEY=T,e.symbol=i,e.isInternalSymbol=function(e){return m.indexOf(e)>-1},e.getOwner=function(e){return e[v]},e.setOwner=function(e,t){e[v]=t},e.OWNER=v,e.assign=y||o,e.assignPolyfill=o,e.dictionary=function(e){var t=Object.create(e) -return t._dict=null,delete t._dict,t},e.uuid=r,e.GUID_KEY=g,e.generateGuid=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"ember",i=t+r() -return n(e)&&p.set(e,i),i},e.guidFor=function(e){var t,i=void 0 -return n(e)?void 0===(i=p.get(e))&&(i="ember"+r(),p.set(e,i)):void 0===(i=f.get(e))&&(t=typeof e,i="string"===t?"st"+r():"number"===t?"nu"+r():"symbol"===t?"sy"+r():"("+e+")",f.set(e,i)),i},e.intern=t,e.checkHasSuper=A,e.ROOT=s,e.wrap=function(e,t){return a(e)?!t.wrappedFunction&&a(t)?u(e,u(t,s)):u(e,t):e},e.inspect=function(e){if(null===e)return"null" -if(void 0===e)return"undefined" -if(Array.isArray(e))return"["+e+"]" -var t=typeof e -if("object"!==t&&"symbol"!==t)return""+e -if("function"==typeof e.toString&&e.toString!==_)return e.toString() -var n=void 0,r=[] -for(var i in e)if(e.hasOwnProperty(i)){if("toString"===(n=e[i]))continue -"function"==typeof n&&(n="function() { ... }"),n&&"function"!=typeof n.toString?r.push(i+": "+_.call(n)):r.push(i+": "+n)}return"{"+r.join(", ")+"}"},e.lookupDescriptor=function(e,t){for(var n,r=e;r;){if(n=Object.getOwnPropertyDescriptor(r,t))return n -r=Object.getPrototypeOf(r)}return null},e.canInvoke=c,e.tryInvoke=function(e,t,n){var r -if(c(e,t))return r=e[t],r.apply(e,n)},e.makeArray=function(e){return null===e||void 0===e?[]:I(e)?e:[e]},e.getName=function(e){return w.get(e)},e.setName=function(e,t){(null!==e&&"object"==typeof e||"function"==typeof e)&&w.set(e,t)},e.toString=h,e.HAS_NATIVE_SYMBOL=k,e.HAS_NATIVE_PROXY=j,e.WeakSet=E,e.isProxy=function(e){return S.has(e)},e.setProxy=function(e){return S.add(e)}}),e("ember-views/index",["exports","ember-views/lib/system/jquery","ember-views/lib/system/utils","ember-views/lib/system/event_dispatcher","ember-views/lib/component_lookup","ember-views/lib/mixins/text_support","ember-views/lib/views/core_view","ember-views/lib/mixins/class_names_support","ember-views/lib/mixins/child_views_support","ember-views/lib/mixins/view_state_support","ember-views/lib/mixins/view_support","ember-views/lib/mixins/action_support","ember-views/lib/compat/attrs","ember-views/lib/system/lookup_partial","ember-views/lib/utils/lookup-component","ember-views/lib/system/action_manager","ember-views/lib/compat/fallback-view-registry"],function(e,t,n,r,i,o,s,a,u,c,l,h,d,p,f,g,m){"use strict" -Object.defineProperty(e,"jQuery",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"jQueryDisabled",{enumerable:!0,get:function(){return t.jQueryDisabled}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return n.addChildView}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return n.isSimpleClick}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return n.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return n.getViewClientRects}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return n.getViewBoundingClientRect}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return n.getRootViews}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return n.getChildViews}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return n.getViewId}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return n.getViewElement}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return n.setViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return n.constructStyleDeprecationMessage}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"TextSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return d.MUTABLE_CELL}}),Object.defineProperty(e,"lookupPartial",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"hasPartial",{enumerable:!0,get:function(){return p.hasPartial}}),Object.defineProperty(e,"lookupComponent",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"fallbackViewRegistry",{enumerable:!0,get:function(){return m.default}})}),e("ember-views/lib/compat/attrs",["exports","ember-utils"],function(e,t){"use strict" -e.MUTABLE_CELL=void 0,e.MUTABLE_CELL=(0,t.symbol)("MUTABLE_CELL")}),e("ember-views/lib/compat/fallback-view-registry",["exports","ember-utils"],function(e,t){"use strict" -e.default=(0,t.dictionary)(null)}),e("ember-views/lib/component_lookup",["exports","ember-debug","ember-runtime"],function(e,t,n){"use strict" -e.default=n.Object.extend({componentFor:function(e,t,n){return t.factoryFor("component:"+e,n)},layoutFor:function(e,t,n){return t.lookup("template:components/"+e,n)}})}),e("ember-views/lib/mixins/action_support",["exports","ember-utils","ember-metal","ember-debug","ember-views/lib/compat/attrs"],function(e,t,n,r,i){"use strict" -function o(e,t){return t&&t[i.MUTABLE_CELL]&&(t=t.value),t}e.default=n.Mixin.create({sendAction:function(e){for(t=arguments.length,r=Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i] -var t,r,i,s=void 0 -void 0===e&&(e="action"),s=(0,n.get)(this,"attrs."+e)||(0,n.get)(this,e),void 0!==(s=o(this,s))&&("function"==typeof s?s.apply(void 0,r):this.triggerAction({action:s,actionContext:r}))},send:function(e){for(t=arguments.length,r=Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i] -var t,r,i,o=this.actions&&this.actions[e] -if(!o||!0===o.apply(this,r)){var s=(0,n.get)(this,"target") -s&&s.send.apply(s,arguments)}}})}),e("ember-views/lib/mixins/child_views_support",["exports","ember-metal","ember-views/lib/system/utils"],function(e,t,n){"use strict" -e.default=t.Mixin.create({childViews:(0,t.descriptor)({configurable:!1,enumerable:!1,get:function(){return(0,n.getChildViews)(this)}}),appendChild:function(e){(0,n.addChildView)(this,e)}})}),e("ember-views/lib/mixins/class_names_support",["exports","ember-metal","ember-debug"],function(e,t,n){"use strict" -var r=Object.freeze([]) -e.default=t.Mixin.create({concatenatedProperties:["classNames","classNameBindings"],init:function(){this._super.apply(this,arguments)},classNames:r,classNameBindings:r})}),e("ember-views/lib/mixins/text_support",["exports","ember-metal","ember-runtime"],function(e,t,n){"use strict" -function r(e,n,r){var i=(0,t.get)(n,"attrs."+e)||(0,t.get)(n,e),o=(0,t.get)(n,"value") -n.sendAction(e,o),i&&!(0,t.get)(n,"bubbles")&&r.stopPropagation()}var i={13:"insertNewline",27:"cancel"} -e.default=t.Mixin.create(n.TargetActionSupport,{value:"",attributeBindings:["autocapitalize","autocorrect","autofocus","disabled","form","maxlength","minlength","placeholder","readonly","required","selectionDirection","spellcheck","tabindex","title"],placeholder:null,disabled:!1,maxlength:null,init:function(){this._super.apply(this,arguments),this.on("paste",this,this._elementValueDidChange),this.on("cut",this,this._elementValueDidChange),this.on("input",this,this._elementValueDidChange)},bubbles:!1,interpretKeyEvents:function(e){var t=i[e.keyCode] -if(this._elementValueDidChange(),t)return this[t](e)},_elementValueDidChange:function(){(0,t.set)(this,"value",this.element.value)},change:function(e){this._elementValueDidChange(e)},insertNewline:function(e){r("enter",this,e),r("insert-newline",this,e)},cancel:function(e){r("escape-press",this,e)},focusIn:function(e){r("focus-in",this,e)},focusOut:function(e){this._elementValueDidChange(e),r("focus-out",this,e)},keyPress:function(e){r("key-press",this,e)},keyUp:function(e){this.interpretKeyEvents(e),this.sendAction("key-up",(0,t.get)(this,"value"),e)},keyDown:function(e){this.sendAction("key-down",(0,t.get)(this,"value"),e)}})}),e("ember-views/lib/mixins/view_state_support",["exports","ember-metal"],function(e,t){"use strict" -e.default=t.Mixin.create({_transitionTo:function(e){var t=this._currentState,n=this._currentState=this._states[e] -this._state=e,t&&t.exit&&t.exit(this),n.enter&&n.enter(this)}})}),e("ember-views/lib/mixins/view_support",["exports","ember-utils","ember-metal","ember-debug","ember-environment","ember-views/lib/system/utils","ember-views/lib/system/jquery"],function(e,t,n,r,i,o,s){"use strict" -function a(){return this}e.default=n.Mixin.create({concatenatedProperties:["attributeBindings"],nearestOfType:function(e){for(var t=this.parentView,r=e instanceof n.Mixin?function(t){return e.detect(t)}:function(t){return e.detect(t.constructor)};t;){if(r(t))return t -t=t.parentView}},nearestWithProperty:function(e){for(var t=this.parentView;t;){if(e in t)return t -t=t.parentView}},rerender:function(){return this._currentState.rerender(this)},element:(0,n.descriptor)({configurable:!1,enumerable:!1,get:function(){return this.renderer.getElement(this)}}),$:function(e){if(this.element)return e?(0,s.default)(e,this.element):(0,s.default)(this.element)},appendTo:function(e){var t=this._environment||i.environment,n=void 0 -return n=t.hasDOM&&"string"==typeof e?document.querySelector(e):e,this.renderer.appendTo(this,n),this},append:function(){return this.appendTo(document.body)},elementId:null,findElementInParentElement:function(e){var t="#"+this.elementId -return(0,s.default)(t)[0]||(0,s.default)(t,e)[0]},willInsertElement:a,didInsertElement:a,willClearRender:a,destroy:function(){this._super.apply(this,arguments),this._currentState.destroy(this)},willDestroyElement:a,parentViewDidChange:a,tagName:null,init:function(){this._super.apply(this,arguments),this.elementId||""===this.tagName||(this.elementId=(0,t.guidFor)(this)),i.environment._ENABLE_DID_INIT_ATTRS_SUPPORT},handleEvent:function(e,t){return this._currentState.handleEvent(this,e,t)}})}),e("ember-views/lib/system/action_manager",["exports"],function(e){"use strict" -function t(){}e.default=t,t.registeredActions={}}),e("ember-views/lib/system/event_dispatcher",["exports","ember-utils","ember-debug","ember-metal","ember-runtime","ember-views/lib/system/jquery","ember-views/lib/system/action_manager","ember-views/lib/compat/fallback-view-registry"],function(e,t,n,r,i,o,s,a){"use strict" -var u=void 0!==o.default -e.default=i.Object.extend({events:{touchstart:"touchStart",touchmove:"touchMove",touchend:"touchEnd",touchcancel:"touchCancel",keydown:"keyDown",keyup:"keyUp",keypress:"keyPress",mousedown:"mouseDown",mouseup:"mouseUp",contextmenu:"contextMenu",click:"click",dblclick:"doubleClick",mousemove:"mouseMove",focusin:"focusIn",focusout:"focusOut",mouseenter:"mouseEnter",mouseleave:"mouseLeave",submit:"submit",input:"input",change:"change",dragstart:"dragStart",drag:"drag",dragenter:"dragEnter",dragleave:"dragLeave",dragover:"dragOver",drop:"drop",dragend:"dragEnd"},rootElement:"body",init:function(){this._super(),this._eventHandlers=Object.create(null)},setup:function(e,n){var i=void 0,s=void 0,a=this._finalEvents=(0,t.assign)({},(0,r.get)(this,"events"),e);(0,r.isNone)(n)||(0,r.set)(this,"rootElement",n) -var c=(0,r.get)(this,"rootElement") -if(u){if(s=(0,o.default)(c),s.addClass("ember-application"),!s.is(".ember-application"))throw new TypeError("Unable to add 'ember-application' class to root element ("+(s.selector||s[0].tagName)+"). Make sure you set rootElement to the body or an element in the body.")}else s="string"!=typeof c?c:document.querySelector(c),s.classList.add("ember-application") -var l=this._getViewRegistry() -for(i in a)a.hasOwnProperty(i)&&this.setupHandler(s,i,a[i],l)},setupHandler:function(e,t,n,r){var i,o,a -null!==n&&(u?(e.on(t+".ember",".ember-view",function(e){var t=r[this.id],i=!0 -return t&&(i=t.handleEvent(n,e)),i}),e.on(t+".ember","[data-ember-action]",function(e){var t,r,i,o,a=e.currentTarget.attributes,u=[] -for(t=0;t<a.length;t++)r=a.item(t),i=r.name,-1!==i.lastIndexOf("data-ember-action-",0)&&(o=s.default.registeredActions[r.value])&&o.eventName===n&&-1===u.indexOf(o)&&(o.handler(e),u.push(o))})):(i=function(e,t){var i=r[e.id],o=!0 -return i&&(o=i.handleEvent(n,t)),o},o=function(e,t){var r,i,o,a,u,c,l,h=e.getAttribute("data-ember-action"),d=s.default.registeredActions[h] -if(""===h)for(r=e.attributes,i=r.length,d=[],o=0;o<i;o++)a=r.item(o),u=a.name,0===u.indexOf("data-ember-action-")&&(d=d.concat(s.default.registeredActions[a.value])) -if(d)for(c=0;c<d.length;c++)if((l=d[c])&&l.eventName===n)return l.handler(t)},a=this._eventHandlers[t]=function(e){var t=e.target -do{if(r[t.id]){if(!1===i(t,e)){e.preventDefault(),e.stopPropagation() -break}}else if(t.hasAttribute("data-ember-action")&&!1===o(t,e))break -t=t.parentNode}while(t&&1===t.nodeType)},e.addEventListener(t,a)))},_getViewRegistry:function(){var e=(0,t.getOwner)(this) -return e&&e.lookup("-view-registry:main")||a.default},destroy:function(){var e=(0,r.get)(this,"rootElement"),t=void 0 -if(t=e.nodeType?e:document.querySelector(e)){if(u)(0,o.default)(e).off(".ember","**") -else for(var n in this._eventHandlers)t.removeEventListener(n,this._eventHandlers[n]) -return t.classList.remove("ember-application"),this._super.apply(this,arguments)}},toString:function(){return"(EventDispatcher)"}})}),e("ember-views/lib/system/jquery",["exports","ember-environment"],function(e,t){"use strict" -e.jQueryDisabled=void 0 -var n=void 0 -e.jQueryDisabled=!1 -t.environment.hasDOM&&(n=t.context.imports.jQuery,n?n.event.addProp?n.event.addProp("dataTransfer"):["dragstart","drag","dragenter","dragleave","dragover","drop","dragend"].forEach(function(e){n.event.fixHooks[e]={props:["dataTransfer"]}}):e.jQueryDisabled=!0),e.default=n}),e("ember-views/lib/system/lookup_partial",["exports","ember-debug"],function(e,t){"use strict" -function n(e){var t=e.split("/"),n=t[t.length-1] -return t[t.length-1]="_"+n,t.join("/")}function r(e,n,r){if(r){if(!e)throw new t.Error("Container was not found when looking up a views template. This is most likely due to manually instantiating an Ember.View. See: http://git.io/EKPpnA") -return e.lookup("template:"+n)||e.lookup("template:"+r)}}e.default=function(e,t){if(null!=e){var i=r(t,n(e),e) -return i}},e.hasPartial=function(e,r){if(!r)throw new t.Error("Container was not found when looking up a views template. This is most likely due to manually instantiating an Ember.View. See: http://git.io/EKPpnA") -return r.hasRegistration("template:"+n(e))||r.hasRegistration("template:"+e)}}),e("ember-views/lib/system/utils",["exports","ember-utils"],function(e,t){"use strict" -function n(e){return""!==e.tagName&&e.elementId?e.elementId:(0,t.guidFor)(e)}function r(e){var t=new Set -return u.set(e,t),t}function i(e,t){var n=[],r=u.get(e) -return void 0!==r&&r.forEach(function(e){var r=t[e] -!r||r.isDestroying||r.isDestroyed||n.push(r)}),n}function o(e){return e.renderer.getBounds(e)}function s(e){var t=o(e),n=document.createRange() -return n.setStartBefore(t.firstNode),n.setEndAfter(t.lastNode),n}e.elMatches=void 0,e.isSimpleClick=function(e){var t=e.shiftKey||e.metaKey||e.altKey||e.ctrlKey,n=e.which>1 -return!t&&!n},e.constructStyleDeprecationMessage=function(e){return'Binding style attributes may introduce cross-site scripting vulnerabilities; please ensure that values being bound are properly escaped. For more information, including how to disable this warning, see https://emberjs.com/deprecations/v1.x/#toc_binding-style-attributes. Style affected: "'+e+'"'},e.getRootViews=function(e){var t=e.lookup("-view-registry:main"),n=[] -return Object.keys(t).forEach(function(e){var r=t[e] -null===r.parentView&&n.push(r)}),n},e.getViewId=n,e.getViewElement=function(e){return e[a]},e.initViewElement=function(e){e[a]=null},e.setViewElement=function(e,t){return e[a]=t},e.getChildViews=function(e){return i(e,(0,t.getOwner)(e).lookup("-view-registry:main"))},e.initChildViews=r,e.addChildView=function(e,t){var i=u.get(e) -void 0===i&&(i=r(e)),i.add(n(t))},e.collectChildViews=i,e.getViewBounds=o,e.getViewRange=s,e.getViewClientRects=function(e){return s(e).getClientRects()},e.getViewBoundingClientRect=function(e){return s(e).getBoundingClientRect()},e.matches=function(e,t){return c.call(e,t)} -var a=(0,t.symbol)("VIEW_ELEMENT"),u=new WeakMap,c=e.elMatches="undefined"!=typeof Element&&(Element.prototype.matches||Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector)}),e("ember-views/lib/utils/lookup-component",["exports"],function(e){"use strict" -function t(e,t,n,r){var i=e.componentFor(n,t,r) -return{layout:e.layoutFor(n,t,r),component:i}}e.default=function(e,n,r){var i,o=e.lookup("component-lookup:main") -return r&&(r.source||r.namespace)&&(i=t(o,e,n,r),i.component||i.layout)?i:t(o,e,n)}}),e("ember-views/lib/views/core_view",["exports","ember-runtime","ember-views/lib/system/utils","ember-views/lib/views/states"],function(e,t,n,r){"use strict" -var i=t.FrameworkObject.extend(t.Evented,t.ActionHandler,{isView:!0,_states:(0,r.cloneStates)(r.states),init:function(){if(this._super.apply(this,arguments),this._state="preRender",this._currentState=this._states.preRender,(0,n.initViewElement)(this),!this.renderer)throw new Error("Cannot instantiate a component without a renderer. Please ensure that you are creating "+this+" with a proper container/registry.")},parentView:null,instrumentDetails:function(e){return e.object=this.toString(),e.containerKey=this._debugContainerKey,e.view=this,e},trigger:function(e){for(t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r] -this._super.apply(this,arguments) -var t,n,r,i=this[e] -if("function"==typeof i)return i.apply(this,n)},has:function(e){return"function"==typeof this[e]||this._super(e)}}) -i.reopenClass({isViewFactory:!0}),e.default=i}),e("ember-views/lib/views/states",["exports","ember-utils","ember-views/lib/views/states/default","ember-views/lib/views/states/pre_render","ember-views/lib/views/states/has_element","ember-views/lib/views/states/in_dom","ember-views/lib/views/states/destroying"],function(e,t,n,r,i,o,s){"use strict" -e.states=void 0,e.cloneStates=function(e){var n={} -n._default={},n.preRender=Object.create(n._default),n.destroying=Object.create(n._default),n.hasElement=Object.create(n._default),n.inDOM=Object.create(n.hasElement) -for(var r in e)e.hasOwnProperty(r)&&(0,t.assign)(n[r],e[r]) -return n},e.states={_default:n.default,preRender:r.default,inDOM:o.default,hasElement:i.default,destroying:s.default}}),e("ember-views/lib/views/states/default",["exports","ember-debug"],function(e,t){"use strict" -e.default={appendChild:function(){throw new t.Error("You can't use appendChild outside of the rendering process")},handleEvent:function(){return!0},rerender:function(){},destroy:function(){}}}),e("ember-views/lib/views/states/destroying",["exports","ember-utils","ember-debug","ember-views/lib/views/states/default"],function(e,t,n,r){"use strict" -var i=Object.create(r.default);(0,t.assign)(i,{appendChild:function(){throw new n.Error("You can't call appendChild on a view being destroyed")},rerender:function(){throw new n.Error("You can't call rerender on a view being destroyed")}}),e.default=i}),e("ember-views/lib/views/states/has_element",["exports","ember-utils","ember-views/lib/views/states/default","ember-metal"],function(e,t,n,r){"use strict" -var i=Object.create(n.default);(0,t.assign)(i,{rerender:function(e){e.renderer.rerender(e)},destroy:function(e){e.renderer.remove(e)},handleEvent:function(e,t,n){return!e.has(t)||(0,r.flaggedInstrument)("interaction."+t,{event:n,view:e},function(){return(0,r.join)(e,e.trigger,t,n)})}}),e.default=i}),e("ember-views/lib/views/states/in_dom",["exports","ember-utils","ember-metal","ember-debug","ember-views/lib/views/states/has_element"],function(e,t,n,r,i){"use strict" -var o=Object.create(i.default);(0,t.assign)(o,{enter:function(e){e.renderer.register(e)},exit:function(e){e.renderer.unregister(e)}}),e.default=o}),e("ember-views/lib/views/states/pre_render",["exports","ember-views/lib/views/states/default"],function(e,t){"use strict" -e.default=Object.create(t.default)}),e("ember/features",["exports","ember-environment","ember-utils"],function(e,t,n){"use strict" -e.FEATURES=e.DEFAULT_FEATURES=void 0 -var r=e.DEFAULT_FEATURES={"features-stripped-test":!1,"ember-libraries-isregistered":!1,"ember-improved-instrumentation":!1,"ember-glimmer-named-arguments":!0,"ember-routing-router-service":!0,"ember-engines-mount-params":!0,"ember-module-unification":!1,"glimmer-custom-component-manager":!1,"ember-template-block-let-helper":!0,"ember-metal-tracked-properties":!1,"ember-glimmer-detect-backtracking-rerender":!1} -e.FEATURES=(0,n.assign)(r,t.ENV.FEATURES)}),e("ember/index",["exports","require","ember-environment","node-module","ember-utils","container","ember-metal","ember/features","ember-debug","backburner","ember-console","ember-runtime","ember-glimmer","ember/version","ember-views","ember-routing","ember-application","ember-extension-support"],function(e,t,n,r,i,o,s,a,u,c,l,h,d,p,f,g,m,v){"use strict" -var y,b="object"==typeof n.context.imports.Ember&&n.context.imports.Ember||{} -b.isNamespace=!0,b.toString=function(){return"Ember"},Object.defineProperty(b,"ENV",{get:n.getENV,enumerable:!1}),Object.defineProperty(b,"lookup",{get:n.getLookup,set:n.setLookup,enumerable:!1}),Object.defineProperty(b,"EXTEND_PROTOTYPES",{enumerable:!1,get:function(){return n.ENV.EXTEND_PROTOTYPES}}),b.getOwner=i.getOwner,b.setOwner=i.setOwner,b.generateGuid=i.generateGuid,b.GUID_KEY=i.GUID_KEY,b.guidFor=i.guidFor,b.inspect=i.inspect,b.makeArray=i.makeArray,b.canInvoke=i.canInvoke,b.tryInvoke=i.tryInvoke,b.wrap=i.wrap,b.uuid=i.uuid,b.assign=i.assign,b.NAME_KEY=i.NAME_KEY,b.Container=o.Container,b.Registry=o.Registry,b.assert=u.assert,b.warn=u.warn,b.debug=u.debug,b.deprecate=u.deprecate,b.deprecateFunc=u.deprecateFunc,b.runInDebug=u.runInDebug,b.Error=u.Error,b.Debug={registerDeprecationHandler:u.registerDeprecationHandler,registerWarnHandler:u.registerWarnHandler} -var C=s._globalsComputed -b.computed=C,C.alias=s.alias,b.ComputedProperty=s.ComputedProperty,b.cacheFor=s.getCachedValueFor,b.merge=s.merge,b.instrument=s.instrument,b.subscribe=s.instrumentationSubscribe,b.Instrumentation={instrument:s.instrument,subscribe:s.instrumentationSubscribe,unsubscribe:s.instrumentationUnsubscribe,reset:s.instrumentationReset},b.meta=s.meta,b.get=s.get,b.getWithDefault=s.getWithDefault,b._getPath=s._getPath,b.set=s.set,b.trySet=s.trySet,b.FEATURES=a.FEATURES,b.FEATURES.isEnabled=u.isFeatureEnabled,b._Cache=s.Cache,b.on=s.on,b.addListener=s.addListener,b.removeListener=s.removeListener,b.sendEvent=s.sendEvent,b.hasListeners=s.hasListeners,b.isNone=s.isNone,b.isEmpty=s.isEmpty,b.isBlank=s.isBlank,b.isPresent=s.isPresent,b.run=s._globalsRun,b.run.backburner=s.backburner,b.run.begin=s.begin,b.run.bind=s.bind -b.run.cancel=s.cancel,b.run.debounce=s.debounce,b.run.end=s.end,b.run.hasScheduledTimers=s.hasScheduledTimers,b.run.join=s.join,b.run.later=s.later,b.run.next=s.next,b.run.once=s.once,b.run.schedule=s.schedule,b.run.scheduleOnce=s.scheduleOnce,b.run.throttle=s.throttle,b.run.cancelTimers=s.cancelTimers,Object.defineProperty(b.run,"currentRunLoop",{get:s.getCurrentRunLoop,enumerable:!1}),b.propertyWillChange=s.propertyWillChange,b.propertyDidChange=s.propertyDidChange,b.notifyPropertyChange=s.notifyPropertyChange,b.overrideChains=s.overrideChains,b.beginPropertyChanges=s.beginPropertyChanges,b.endPropertyChanges=s.endPropertyChanges,b.changeProperties=s.changeProperties,b.platform={defineProperty:!0,hasPropertyAccessors:!0},b.defineProperty=s.defineProperty,b.watchKey=s.watchKey,b.unwatchKey=s.unwatchKey,b.removeChainWatcher=s.removeChainWatcher,b._ChainNode=s.ChainNode,b.finishChains=s.finishChains,b.watchPath=s.watchPath,b.unwatchPath=s.unwatchPath,b.watch=s.watch -b.isWatching=s.isWatching,b.unwatch=s.unwatch,b.destroy=s.deleteMeta,b.libraries=s.libraries,b.OrderedSet=s.OrderedSet,b.Map=s.Map,b.MapWithDefault=s.MapWithDefault,b.getProperties=s.getProperties,b.setProperties=s.setProperties,b.expandProperties=s.expandProperties,b.addObserver=s.addObserver,b.removeObserver=s.removeObserver,b.aliasMethod=s.aliasMethod,b.observer=s.observer,b.mixin=s.mixin,b.Mixin=s.Mixin,Object.defineProperty(b,"onerror",{get:s.getOnerror,set:s.setOnerror,enumerable:!1}),Object.defineProperty(b,"testing",{get:u.isTesting,set:u.setTesting,enumerable:!1}),b._Backburner=c.default,b.Logger=l.default,b.A=h.A,b.String=h.String,b.Object=h.Object,b._RegistryProxyMixin=h.RegistryProxyMixin,b._ContainerProxyMixin=h.ContainerProxyMixin,b.compare=h.compare,b.copy=h.copy,b.isEqual=h.isEqual,b.inject=h.inject,b.Array=h.Array -b.Comparable=h.Comparable,b.Enumerable=h.Enumerable,b.ArrayProxy=h.ArrayProxy,b.ObjectProxy=h.ObjectProxy,b.ActionHandler=h.ActionHandler,b.CoreObject=h.CoreObject,b.NativeArray=h.NativeArray,b.Copyable=h.Copyable,b.MutableEnumerable=h.MutableEnumerable,b.MutableArray=h.MutableArray,b.TargetActionSupport=h.TargetActionSupport,b.Evented=h.Evented,b.PromiseProxyMixin=h.PromiseProxyMixin,b.Observable=h.Observable,b.typeOf=h.typeOf,b.isArray=h.isArray,b.Object=h.Object,b.onLoad=h.onLoad,b.runLoadHooks=h.runLoadHooks,b.Controller=h.Controller,b.ControllerMixin=h.ControllerMixin,b.Service=h.Service,b._ProxyMixin=h._ProxyMixin,b.RSVP=h.RSVP,b.Namespace=h.Namespace,C.empty=h.empty,C.notEmpty=h.notEmpty,C.none=h.none,C.not=h.not,C.bool=h.bool -C.match=h.match,C.equal=h.equal,C.gt=h.gt,C.gte=h.gte,C.lt=h.lt,C.lte=h.lte,C.oneWay=h.oneWay,C.reads=h.oneWay,C.readOnly=h.readOnly,C.deprecatingAlias=h.deprecatingAlias,C.and=h.and,C.or=h.or,C.sum=h.sum,C.min=h.min,C.max=h.max,C.map=h.map,C.sort=h.sort,C.setDiff=h.setDiff,C.mapBy=h.mapBy,C.filter=h.filter,C.filterBy=h.filterBy,C.uniq=h.uniq,C.uniqBy=h.uniqBy,C.union=h.union,C.intersect=h.intersect,C.collect=h.collect,Object.defineProperty(b,"STRINGS",{configurable:!1,get:h.getStrings,set:h.setStrings}),Object.defineProperty(b,"BOOTED",{configurable:!1,enumerable:!1,get:s.isNamespaceSearchDisabled,set:s.setNamespaceSearchDisabled}),b.Component=d.Component,d.Helper.helper=d.helper -b.Helper=d.Helper,b.Checkbox=d.Checkbox,b.TextField=d.TextField,b.TextArea=d.TextArea,b.LinkComponent=d.LinkComponent,b._setComponentManager=d.componentManager,b.Handlebars={template:d.template,Utils:{escapeExpression:d.escapeExpression}},b.HTMLBars={template:d.template},n.ENV.EXTEND_PROTOTYPES.String&&(String.prototype.htmlSafe=function(){return(0,d.htmlSafe)(this)}),h.String.htmlSafe=d.htmlSafe,h.String.isHTMLSafe=d.isHTMLSafe,Object.defineProperty(b,"TEMPLATES",{get:d.getTemplates,set:d.setTemplates,configurable:!1,enumerable:!1}),b.VERSION=p.default,b.$=f.jQuery,b.ViewUtils={isSimpleClick:f.isSimpleClick,getViewElement:f.getViewElement,getViewBounds:f.getViewBounds,getViewClientRects:f.getViewClientRects,getViewBoundingClientRect:f.getViewBoundingClientRect,getRootViews:f.getRootViews,getChildViews:f.getChildViews,isSerializationFirstNode:d.isSerializationFirstNode},b.TextSupport=f.TextSupport,b.ComponentLookup=f.ComponentLookup,b.EventDispatcher=f.EventDispatcher,b.Location=g.Location,b.AutoLocation=g.AutoLocation,b.HashLocation=g.HashLocation,b.HistoryLocation=g.HistoryLocation,b.NoneLocation=g.NoneLocation,b.controllerFor=g.controllerFor,b.generateControllerFactory=g.generateControllerFactory,b.generateController=g.generateController,b.RouterDSL=g.RouterDSL,b.Router=g.Router,b.Route=g.Route,b.Application=m.Application -b.ApplicationInstance=m.ApplicationInstance,b.Engine=m.Engine,b.EngineInstance=m.EngineInstance,b.DefaultResolver=b.Resolver=m.Resolver,(0,h.runLoadHooks)("Ember.Application",m.Application),b.DataAdapter=v.DataAdapter,b.ContainerDebugAdapter=v.ContainerDebugAdapter,(0,t.has)("ember-template-compiler")&&(0,t.default)("ember-template-compiler"),(0,t.has)("ember-testing")&&(y=(0,t.default)("ember-testing"),b.Test=y.Test,b.Test.Adapter=y.Adapter,b.Test.QUnitAdapter=y.QUnitAdapter,b.setupForTesting=y.setupForTesting),(0,h.runLoadHooks)("Ember"),e.default=b,r.IS_NODE?r.module.exports=b:n.context.exports.Ember=n.context.exports.Em=b}),e("ember/version",["exports"],function(e){"use strict" -e.default="3.2.0"}),e("node-module",["exports"],function(e){var t="object"==typeof module&&"function"==typeof module.require -t?(e.require=module.require,e.module=module,e.IS_NODE=t):(e.require=null,e.module=null,e.IS_NODE=t)}) -e("route-recognizer",["exports"],function(e){"use strict" -function t(){var e=m(null) -return e.__=void 0,delete e.__,e}function n(e,t,r){return function(i,o){var s=e+i -if(!o)return new v(s,t,r) -o(n(s,t,r))}}function r(e,t,n){var r,i=0 -for(r=0;r<e.length;r++)i+=e[r].path.length -t=t.substr(i) -var o={path:t,handler:n} -e.push(o)}function i(e,t,n,o){var s,a,u,c,l=t.routes,h=Object.keys(l) -for(s=0;s<h.length;s++)a=h[s],u=e.slice(),r(u,a,l[a]),c=t.children[a],c?i(u,c,n,o):n.call(o,u)}function o(e){return e.split("/").map(s).join("/")}function s(e){return e.length<3||-1===e.indexOf("%")?e:decodeURIComponent(e).replace(b,encodeURIComponent)}function a(e){return encodeURIComponent(e).replace(C,decodeURIComponent)}function u(e,t){if("object"!=typeof e||null===e)throw new Error("You must pass an object as the second argument to `generate`.") -if(!I.call(e,t))throw new Error("You must provide param `"+t+"` to `generate`.") -var n=e[t],r="string"==typeof n?n:""+n -if(0===r.length)throw new Error("You must provide a param `"+t+"`.") -return r}function c(e,t,n){t.length>0&&47===t.charCodeAt(0)&&(t=t.substr(1)) -var r,i,o,a,u=t.split("/"),c=void 0,l=void 0 -for(r=0;r<u.length;r++)i=u[r],o=0,a=0,a=""===i?4:58===i.charCodeAt(0)?1:42===i.charCodeAt(0)?2:0,o=2<<a,12&o&&(i=i.slice(1),c=c||[],c.push(i),l=l||[],l.push(0!=(4&o))),14&o&&n[a]++,e.push({type:a,value:s(i)}) -return{names:c||E,shouldDecodes:l||E}}function l(e,t,n){return e.char===t&&e.negate===n}function h(e,t){return e.negate?e.char!==t&&-1!==e.char:e.char===t||-1===e.char}function d(e){return e.sort(function(e,t){var n=e.types||[0,0,0],r=n[0],i=n[1],o=n[2],s=t.types||[0,0,0],a=s[0],u=s[1],c=s[2] -if(o!==c)return o-c -if(o){if(r!==a)return a-r -if(i!==u)return u-i}return i!==u?i-u:r!==a?a-r:0})}function p(e,t){var n,r,i,o=[] -for(n=0,r=e.length;n<r;n++)i=e[n],o=o.concat(i.match(t)) -return o}function f(e,t,n){var r,i,o,s,a,u,c,l,h,d=e.handlers,p=e.regex() -if(!p||!d)throw new Error("state not initialized") -var f=t.match(p),g=1,m=new T(n) -for(m.length=d.length,r=0;r<d.length;r++){if(i=d[r],o=i.names,s=i.shouldDecodes,a=j,u=!1,o!==E&&s!==E)for(c=0;c<o.length;c++)u=!0,l=o[c],h=f&&f[g++],a===j&&(a={}),P.ENCODE_AND_DECODE_PATH_SEGMENTS&&s[c]?a[l]=h&&decodeURIComponent(h):a[l]=h -m[r]={handler:i.handler,params:a,isDynamic:u}}return m}function g(e){e=e.replace(/\+/gm,"%20") -var t -try{t=decodeURIComponent(e)}catch(e){t=""}return t}var m=Object.create,v=function(e,t,n){this.path=e,this.matcher=t,this.delegate=n} -v.prototype.to=function(e,t){var n=this.delegate -if(n&&n.willAddRoute&&(e=n.willAddRoute(this.matcher.target,e)),this.matcher.add(this.path,e),t){if(0===t.length)throw new Error("You must have an argument in the function passed to `to`") -this.matcher.addChild(this.path,e,t,this.delegate)}} -var y=function(e){this.routes=t(),this.children=t(),this.target=e} -y.prototype.add=function(e,t){this.routes[e]=t},y.prototype.addChild=function(e,t,r,i){var o=new y(t) -this.children[e]=o -var s=n(e,o,i) -i&&i.contextEntered&&i.contextEntered(t,s),r(s)} -var b=/%|\//g,C=/%(?:2(?:4|6|B|C)|3(?:B|D|A)|40)/g,A=/(\/|\.|\*|\+|\?|\||\(|\)|\[|\]|\{|\}|\\)/g,_=Array.isArray,I=Object.prototype.hasOwnProperty,w=[] -w[0]=function(e,t){var n,r,i=t,o=e.value -for(n=0;n<o.length;n++)r=o.charCodeAt(n),i=i.put(r,!1,!1) -return i},w[1]=function(e,t){return t.put(47,!0,!0)},w[2]=function(e,t){return t.put(-1,!1,!0)},w[4]=function(e,t){return t} -var x=[] -x[0]=function(e){return e.value.replace(A,"\\$1")},x[1]=function(){return"([^/]+)"},x[2]=function(){return"(.+)"},x[4]=function(){return""} -var k=[] -k[0]=function(e){return e.value},k[1]=function(e,t){var n=u(t,e.value) -return P.ENCODE_AND_DECODE_PATH_SEGMENTS?a(n):n},k[2]=function(e,t){return u(t,e.value)},k[4]=function(){return""} -var j=Object.freeze({}),E=Object.freeze([]),S=function(e,t,n,r,i){this.states=e,this.id=t,this.char=n,this.negate=r,this.nextStates=i?t:null,this.pattern="",this._regex=void 0,this.handlers=void 0,this.types=void 0} -S.prototype.regex=function(){return this._regex||(this._regex=new RegExp(this.pattern)),this._regex},S.prototype.get=function(e,t){var n,r,i,o=this,s=this.nextStates -if(null!==s)if(_(s)){for(n=0;n<s.length;n++)if(r=o.states[s[n]],l(r,e,t))return r}else if(i=this.states[s],l(i,e,t))return i},S.prototype.put=function(e,t,n){var r -if(r=this.get(e,t))return r -var i=this.states -return r=new S(i,i.length,e,t,n),i[i.length]=r,null==this.nextStates?this.nextStates=r.id:_(this.nextStates)?this.nextStates.push(r.id):this.nextStates=[this.nextStates,r.id],r},S.prototype.match=function(e){var t,n,r,i=this,o=this.nextStates -if(!o)return[] -var s=[] -if(_(o))for(t=0;t<o.length;t++)n=i.states[o[t]],h(n,e)&&s.push(n) -else r=this.states[o],h(r,e)&&s.push(r) -return s} -var T=function(e){this.length=0,this.queryParams=e||{}} -T.prototype.splice=Array.prototype.splice,T.prototype.slice=Array.prototype.slice,T.prototype.push=Array.prototype.push -var P=function(){this.names=t() -var e=[],n=new S(e,0,-1,!0,!1) -e[0]=n,this.states=e,this.rootState=n} -P.prototype.add=function(e,t){var n,r,i,o,s,a,u=this.rootState,l="^",h=[0,0,0],d=new Array(e.length),p=[],f=!0,g=0 -for(n=0;n<e.length;n++){for(r=e[n],i=c(p,r.path,h),o=i.names,s=i.shouldDecodes;g<p.length;g++)a=p[g],4!==a.type&&(f=!1,u=u.put(47,!1,!1),l+="/",u=w[a.type](a,u),l+=x[a.type](a)) -d[n]={handler:r.handler,names:o,shouldDecodes:s}}f&&(u=u.put(47,!1,!1),l+="/"),u.handlers=d,u.pattern=l+"$",u.types=h -var m -"object"==typeof t&&null!==t&&t.as&&(m=t.as),m&&(this.names[m]={segments:p,handlers:d})},P.prototype.handlersFor=function(e){var t,n,r=this.names[e] -if(!r)throw new Error("There is no route named "+e) -var i=new Array(r.handlers.length) -for(t=0;t<r.handlers.length;t++)n=r.handlers[t],i[t]=n -return i},P.prototype.hasRoute=function(e){return!!this.names[e]},P.prototype.generate=function(e,t){var n,r,i=this.names[e],o="" -if(!i)throw new Error("There is no route named "+e) -var s=i.segments -for(n=0;n<s.length;n++)r=s[n],4!==r.type&&(o+="/",o+=k[r.type](r,t)) -return"/"!==o.charAt(0)&&(o="/"+o),t&&t.queryParams&&(o+=this.generateQueryString(t.queryParams)),o},P.prototype.generateQueryString=function(e){var t,n,r,i,o,s,a=[],u=Object.keys(e) -for(u.sort(),t=0;t<u.length;t++)if(n=u[t],null!=(r=e[n]))if(i=encodeURIComponent(n),_(r))for(o=0;o<r.length;o++)s=n+"[]="+encodeURIComponent(r[o]),a.push(s) -else i+="="+encodeURIComponent(r),a.push(i) -return 0===a.length?"":"?"+a.join("&")},P.prototype.parseQueryString=function(e){var t,n,r,i,o,s,a=e.split("&"),u={} -for(t=0;t<a.length;t++)n=a[t].split("="),r=g(n[0]),i=r.length,o=!1,s=void 0,1===n.length?s="true":(i>2&&"[]"===r.slice(i-2)&&(o=!0,r=r.slice(0,i-2),u[r]||(u[r]=[])),s=n[1]?g(n[1]):""),o?u[r].push(s):u[r]=s -return u},P.prototype.recognize=function(e){var t,n,r,i,s=[this.rootState],a={},u=!1,c=e.indexOf("#");-1!==c&&(e=e.substr(0,c)) -var l=e.indexOf("?");-1!==l&&(n=e.substr(l+1,e.length),e=e.substr(0,l),a=this.parseQueryString(n)),"/"!==e.charAt(0)&&(e="/"+e) -var h=e -P.ENCODE_AND_DECODE_PATH_SEGMENTS?e=o(e):(e=decodeURI(e),h=decodeURI(h)) -var g=e.length -for(g>1&&"/"===e.charAt(g-1)&&(e=e.substr(0,g-1),h=h.substr(0,h.length-1),u=!0),r=0;r<e.length&&(s=p(s,e.charCodeAt(r)),s.length);r++);var m=[] -for(i=0;i<s.length;i++)s[i].handlers&&m.push(s[i]) -s=d(m) -var v=m[0] -return v&&v.handlers&&(u&&v.pattern&&"(.+)$"===v.pattern.slice(-5)&&(h+="/"),t=f(v,h,a)),t},P.VERSION="0.3.3",P.ENCODE_AND_DECODE_PATH_SEGMENTS=!0,P.Normalizer={normalizeSegment:s,normalizePath:o,encodePathSegment:a},P.prototype.map=function(e,t){var r=new y -e(n("",r,this.delegate)),i([],r,function(e){t?t(this,e):this.add(e)},this)},e.default=P}),e("router",["exports","ember-babel","rsvp","route-recognizer"],function(e,t,n,r){"use strict" -function i(e){return("object"==typeof e&&null!==e||"function"==typeof e)&&"function"==typeof e.then}function o(e,t){for(var n in t)L.call(t,n)&&(e[n]=t[n])}function s(e){var t=e&&e.length,n=void 0,r=void 0 -return t&&t>0&&e[t-1]&&e[t-1].hasOwnProperty("queryParams")?(r=e[t-1].queryParams,n=M.call(e,0,t-1),[n,r]):[e,null]}function a(e){var t,n,r -for(var i in e)if("number"==typeof(t=e[i]))e[i]=""+t -else if(Array.isArray(t))for(n=0,r=t.length;n<r;n++)t[n]=""+t[n]}function u(e,t,n){e.log&&(3===arguments.length?e.log("Transition #"+t+": "+n):(n=t,e.log(n)))}function c(e){return"string"==typeof e||e instanceof String||"number"==typeof e||e instanceof Number}function l(e,t){var n,r -for(n=0,r=e.length;n<r&&!1!==t(e[n]);n++);}function h(e,t,n,r){function i(e,t,n){n.events[e].apply(n,t)}if(e.triggerEvent)return void e.triggerEvent(t,n,r) -var o,s,a,u=r.shift() -if(!t){if(n)return -throw new Error("Could not trigger event '"+u+"'. There are no active handlers")}var c=!1 -for(o=t.length-1;o>=0;o--)if(s=t[o],a=s.handler){if(a.events&&a.events[u]){if(!0!==a.events[u].apply(a,r))return -c=!0}}else s.handlerPromise.then(i.bind(null,u,r)) -if("error"===u&&"UnrecognizedURLError"===r[0].name)throw r[0] -if(!c&&!n)throw new Error("Nothing handled the event '"+u+"'.")}function d(e,t){var n,r,i=void 0,s={all:{},changed:{},removed:{}} -o(s.all,t) -var u=!1 -a(e),a(t) -for(i in e)L.call(e,i)&&(L.call(t,i)||(u=!0,s.removed[i]=e[i])) -for(i in t)if(L.call(t,i))if(Array.isArray(e[i])&&Array.isArray(t[i]))if(e[i].length!==t[i].length)s.changed[i]=t[i],u=!0 -else for(n=0,r=e[i].length;n<r;n++)e[i][n]!==t[i][n]&&(s.changed[i]=t[i],u=!0) -else e[i]!==t[i]&&(s.changed[i]=t[i],u=!0) -return u?s:void 0}function p(e){return"Router: "+e}function f(e,t){if(e){var n="_"+t -return e[n]&&n||e[t]&&t}}function g(e,t,n,r){var i=f(e,t) -return i&&e[i].call(e,n,r)}function m(e,t,n){var r=f(e,t) -if(r)return 0===n.length?e[r].call(e):1===n.length?e[r].call(e,n[0]):2===n.length?e[r].call(e,n[0],n[1]):e[r].apply(e,n)}function v(e){if(!(this instanceof v))return new v(e) -var t=Error.call(this,e) -Error.captureStackTrace?Error.captureStackTrace(this,v):this.stack=t.stack,this.description=t.description,this.fileName=t.fileName,this.lineNumber=t.lineNumber,this.message=t.message||"TransitionAborted",this.name="TransitionAborted",this.number=t.number,this.code=t.code}function y(e){return u(e.router,e.sequence,"detected abort."),new v}function b(e,t){if(!e^!t)return!1 -if(!e)return!0 -for(var n in e)if(e.hasOwnProperty(n)&&e[n]!==t[n])return!1 -return!0}function C(e,t){var n=C.klasses[e],r=new n(t||{}) -return r.factory=C,r}function A(e){if(!(this instanceof A))return new A(e) -var t=Error.call(this,e) -Error.captureStackTrace?Error.captureStackTrace(this,A):this.stack=t.stack,this.description=t.description,this.fileName=t.fileName,this.lineNumber=t.lineNumber,this.message=t.message||"UnrecognizedURL",this.name="UnrecognizedURLError",this.number=t.number,this.code=t.code}function _(e,t){var n,r=!!this.activeTransition,i=r?this.activeTransition.state:this.state,o=e.applyToState(i,this.recognizer,this.getHandler,t,this.getSerializer),s=d(i.queryParams,o.queryParams) -return T(o.handlerInfos,i.handlerInfos)?s&&(n=this.queryParamsTransition(s,r,i,o))?(n.queryParamsOnly=!0,n):this.activeTransition||new z(this):t?void w(this,o):(n=new z(this,e,o,void 0,this.activeTransition),P(o.handlerInfos,i.handlerInfos)&&(n.queryParamsOnly=!0),this.activeTransition&&this.activeTransition.abort(),this.activeTransition=n,n.promise=n.promise.then(function(e){return E(n,e.state)},null,p("Settle transition promise when transition is finalized")),r||N(this,o,n),I(this,o,s),n)}function I(e,t,n){n&&(e._changedQueryParams=n.all,h(e,t.handlerInfos,!0,["queryParamsDidChange",n.changed,n.all,n.removed]),e._changedQueryParams=null)}function w(e,t,n){var r,i,o,s=k(e.state,t) -for(r=0,i=s.exited.length;r<i;r++)o=s.exited[r].handler,delete o.context,g(o,"reset",!0,n),g(o,"exit",n) -var a=e.oldState=e.state -e.state=t -var u=e.currentHandlerInfos=s.unchanged.slice() -try{for(r=0,i=s.reset.length;r<i;r++)o=s.reset[r].handler,g(o,"reset",!1,n) -for(r=0,i=s.updatedContext.length;r<i;r++)x(u,s.updatedContext[r],!1,n) -for(r=0,i=s.entered.length;r<i;r++)x(u,s.entered[r],!0,n)}catch(t){throw e.state=a,e.currentHandlerInfos=a.handlerInfos,t}e.state.queryParams=R(e,u,t.queryParams,n)}function x(e,t,n,r){function i(i){if(n&&g(i,"enter",r),r&&r.isAborted)throw new v -if(i.context=s,g(i,"contextDidChange"),g(i,"setup",s,r),r&&r.isAborted)throw new v -e.push(t)}var o=t.handler,s=t.context -return o?i(o):t.handlerPromise=t.handlerPromise.then(i),!0}function k(e,t){var n,r,i,o,s,a=e.handlerInfos,u=t.handlerInfos,c={updatedContext:[],exited:[],entered:[],unchanged:[],reset:void 0},l=!1 -for(o=0,s=u.length;o<s;o++)n=a[o],r=u[o],n&&n.handler===r.handler||(i=!0),i?(c.entered.push(r),n&&c.exited.unshift(n)):l||n.context!==r.context?(l=!0,c.updatedContext.push(r)):c.unchanged.push(n) -for(o=u.length,s=a.length;o<s;o++)c.exited.unshift(a[o]) -return c.reset=c.updatedContext.slice(),c.reset.reverse(),c}function j(e,t){var n,r,i,s,a,u,c,l=e.urlMethod -if(l){var h=e.router,d=t.handlerInfos,p=d[d.length-1].name,f={} -for(n=d.length-1;n>=0;--n)r=d[n],o(f,r.params),r.handler.inaccessibleByURL&&(l=null) -l&&(f.queryParams=e._visibleQueryParams||t.queryParams,i=h.recognizer.generate(p,f),s=e.isCausedByInitialTransition,a="replace"===l&&!e.isCausedByAbortingTransition,u=e.queryParamsOnly&&"replace"===l,c="replace"===l&&e.isCausedByAbortingReplaceTransition,s||a||u||c?h.replaceURL(i):h.updateURL(i))}}function E(e,t){var r,i,o -try{return u(e.router,e.sequence,"Resolved all models on destination route; finalizing transition."),(r=e.router,i=t.handlerInfos,w(r,t,e),e.isAborted)?(r.state.handlerInfos=r.currentHandlerInfos,n.Promise.reject(y(e))):(j(e,t,e.intent.url),e.isActive=!1,r.activeTransition=null,h(r,r.currentHandlerInfos,!0,["didTransition"]),r.didTransition&&r.didTransition(r.currentHandlerInfos),u(r,e.sequence,"TRANSITION COMPLETE."),i[i.length-1].handler)}catch(t){throw t instanceof v||(o=e.state.handlerInfos,e.trigger(!0,"error",t,e,o[o.length-1].handler),e.abort()),t}}function S(e,t,n){var r,i=t[0]||"/",o=t[t.length-1],s={} -o&&o.hasOwnProperty("queryParams")&&(s=Y.call(t).queryParams) -var a -return 0===t.length?(u(e,"Updating query params"),r=e.state.handlerInfos,a=new W({name:r[r.length-1].name,contexts:[],queryParams:s})):"/"===i.charAt(0)?(u(e,"Attempting URL transition to "+i),a=new G({url:i})):(u(e,"Attempting transition to "+i),a=new W({name:t[0],contexts:M.call(t,1),queryParams:s})),e.transitionByIntent(a,n)}function T(e,t){var n,r -if(e.length!==t.length)return!1 -for(n=0,r=e.length;n<r;++n)if(e[n]!==t[n])return!1 -return!0}function P(e,t){var n,r -if(e.length!==t.length)return!1 -for(n=0,r=e.length;n<r;++n){if(e[n].name!==t[n].name)return!1 -if(!O(e[n].params,t[n].params))return!1}return!0}function O(e,t){if(!e&&!t)return!0 -if(!e&&t||e&&!t)return!1 -var n,r,i,o=Object.keys(e),s=Object.keys(t) -if(o.length!==s.length)return!1 -for(n=0,r=o.length;n<r;++n)if(i=o[n],e[i]!==t[i])return!1 -return!0}function R(e,t,n,r){for(var i in n)n.hasOwnProperty(i)&&null===n[i]&&delete n[i] -var o,s,a,u=[] -h(e,t,!0,["finalizeQueryParamChange",n,u,r]),r&&(r._visibleQueryParams={}) -var c={} -for(o=0,s=u.length;o<s;++o)a=u[o],c[a.key]=a.value,r&&!1!==a.visible&&(r._visibleQueryParams[a.key]=a.value) -return c}function N(e,t,n){var r,i,o,s,a=e.state.handlerInfos -for(i=a.length,r=0;r<i&&(o=a[r],(s=t.handlerInfos[r])&&o.name===s.name);r++)s.isResolved -h(e,a,!0,["willTransition",n]),e.willTransition&&e.willTransition(a,t.handlerInfos,n)}e.Transition=void 0 -var M=Array.prototype.slice,L=Object.prototype.hasOwnProperty,D=function(){function e(){this.handlerInfos=[],this.queryParams={},this.params={}}return e.prototype.promiseLabel=function(e){var t="" -return l(this.handlerInfos,function(e){""!==t&&(t+="."),t+=e.name}),p("'"+t+"': "+e)},e.prototype.resolve=function(e){function t(){return n.Promise.resolve(e(),u.promiseLabel("Check if should continue")).catch(function(e){return c=!0,n.Promise.reject(e)},u.promiseLabel("Handle abort"))}function r(e){var t=u.handlerInfos,r=s.resolveIndex>=t.length?t.length-1:s.resolveIndex -return n.Promise.reject({error:e,handlerWithError:u.handlerInfos[r].handler,wasAborted:c,state:u})}function i(e){var n,r=u.handlerInfos[s.resolveIndex].isResolved -return u.handlerInfos[s.resolveIndex++]=e,r||(n=e.handler,g(n,"redirect",e.context,s)),t().then(o,null,u.promiseLabel("Resolve handler"))}function o(){return s.resolveIndex===u.handlerInfos.length?{error:null,state:u}:u.handlerInfos[s.resolveIndex].resolve(t,s).then(i,null,u.promiseLabel("Proceed"))}var s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=this.params -l(this.handlerInfos,function(e){a[e.name]=e.params||{}}),s.resolveIndex=0 -var u=this,c=!1 -return n.Promise.resolve(null,this.promiseLabel("Start transition")).then(o,null,this.promiseLabel("Resolve handler")).catch(r,this.promiseLabel("Handle error"))},e}() -v.prototype=Object.create(Error.prototype) -var z=function(){function e(e,t,r,i,o){var s,a,u,c=this -if(this.state=r||e.state,this.intent=t,this.router=e,this.data=this.intent&&this.intent.data||{},this.resolvedModels={},this.queryParams={},this.promise=void 0,this.error=void 0,this.params=void 0,this.handlerInfos=void 0,this.targetName=void 0,this.pivotHandler=void 0,this.sequence=void 0,this.isAborted=!1,this.isActive=!0,this.urlMethod="update",this.resolveIndex=0,this.queryParamsOnly=!1,this.isTransition=!0,i)return this.promise=n.Promise.reject(i),void(this.error=i) -if(this.isCausedByAbortingTransition=!!o,this.isCausedByInitialTransition=o&&(o.isCausedByInitialTransition||0===o.sequence),this.isCausedByAbortingReplaceTransition=o&&"replace"==o.urlMethod&&(!o.isCausedByAbortingTransition||o.isCausedByAbortingReplaceTransition),r){for(this.params=r.params,this.queryParams=r.queryParams,this.handlerInfos=r.handlerInfos,s=r.handlerInfos.length,s&&(this.targetName=r.handlerInfos[s-1].name),a=0;a<s&&(u=r.handlerInfos[a],u.isResolved);++a)this.pivotHandler=u.handler -this.sequence=e.currentSequence++,this.promise=r.resolve(function(){if(c.isAborted)return n.Promise.reject(void 0,p("Transition aborted - reject"))},this).catch(function(e){return e.wasAborted||c.isAborted?n.Promise.reject(y(c)):(c.trigger("error",e.error,c,e.handlerWithError),c.abort(),n.Promise.reject(e.error))},p("Handle Abort"))}else this.promise=n.Promise.resolve(this.state),this.params={}}return e.prototype.isExiting=function(e){var t,n,r,i=this.handlerInfos -for(t=0,n=i.length;t<n;++t)if(r=i[t],r.name===e||r.handler===e)return!1 -return!0},e.prototype.then=function(e,t,n){return this.promise.then(e,t,n)},e.prototype.catch=function(e,t){return this.promise.catch(e,t)},e.prototype.finally=function(e,t){return this.promise.finally(e,t)},e.prototype.abort=function(){return this.isAborted?this:(u(this.router,this.sequence,this.targetName+": transition was aborted"),this.intent.preTransitionState=this.router.state,this.isAborted=!0,this.isActive=!1,this.router.activeTransition=null,this)},e.prototype.retry=function(){this.abort() -var e=this.router.transitionByIntent(this.intent,!1) -return null!==this.urlMethod&&e.method(this.urlMethod),e},e.prototype.method=function(e){return this.urlMethod=e,this},e.prototype.trigger=function(e){var t=M.call(arguments) -"boolean"==typeof e?t.shift():e=!1,h(this.router,this.state.handlerInfos.slice(0,this.resolveIndex+1),e,t)},e.prototype.followRedirects=function(){var e=this.router -return this.promise.catch(function(t){return e.activeTransition?e.activeTransition.followRedirects():n.Promise.reject(t)})},e.prototype.toString=function(){return"Transition (sequence "+this.sequence+")"},e.prototype.log=function(e){u(this.router,this.sequence,e)},e}() -z.prototype.send=z.prototype.trigger -var F=function(){this.data=this.data||{}},B=Object.freeze({}),H=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{} -this._handler=B,this._handlerPromise=null,this.factory=null,this.name=e.name -for(var t in e)"handler"===t?this._processHandler(e.handler):this[t]=e[t]}return e.prototype.getHandler=function(){},e.prototype.fetchHandler=function(){var e=this.getHandler(this.name) -return this._processHandler(e)},e.prototype._processHandler=function(e){var t=this -return this.handlerPromise=n.Promise.resolve(e),i(e)?(this.handlerPromise=this.handlerPromise.then(function(e){return t.updateHandler(e)}),this.handler=void 0):e?this.updateHandler(e):void 0},e.prototype.log=function(e,t){e.log&&e.log(this.name+": "+t)},e.prototype.promiseLabel=function(e){return p("'"+this.name+"' "+e)},e.prototype.getUnresolved=function(){return this},e.prototype.serialize=function(){return this.params||{}},e.prototype.updateHandler=function(e){return e._handlerName=this.name,this.handler=e},e.prototype.resolve=function(e,t){var r=this.checkForAbort.bind(this,e),i=this.runBeforeModelHook.bind(this,t),o=this.getModel.bind(this,t),s=this.runAfterModelHook.bind(this,t),a=this.becomeResolved.bind(this,t) -return n.Promise.resolve(this.handlerPromise,this.promiseLabel("Start handler")).then(r,null,this.promiseLabel("Check for abort")).then(i,null,this.promiseLabel("Before model")).then(r,null,this.promiseLabel("Check if aborted during 'beforeModel' hook")).then(o,null,this.promiseLabel("Model")).then(r,null,this.promiseLabel("Check if aborted in 'model' hook")).then(s,null,this.promiseLabel("After model")).then(r,null,this.promiseLabel("Check if aborted in 'afterModel' hook")).then(a,null,this.promiseLabel("Become resolved"))},e.prototype.runBeforeModelHook=function(e){return e.trigger&&e.trigger(!0,"willResolveModel",e,this.handler),this.runSharedModelHook(e,"beforeModel",[])},e.prototype.runAfterModelHook=function(e,t){var n=this.name -return this.stashResolvedModel(e,t),this.runSharedModelHook(e,"afterModel",[t]).then(function(){return e.resolvedModels[n]},null,this.promiseLabel("Ignore fulfillment value and return model value"))},e.prototype.runSharedModelHook=function(e,t,r){this.log(e,"calling "+t+" hook"),this.queryParams&&r.push(this.queryParams),r.push(e) -var i=m(this.handler,t,r) -return i&&i.isTransition&&(i=null),n.Promise.resolve(i,this.promiseLabel("Resolve value returned from one of the model hooks"))},e.prototype.getModel=function(){},e.prototype.checkForAbort=function(e,t){return n.Promise.resolve(e(),this.promiseLabel("Check for abort")).then(function(){return t},null,this.promiseLabel("Ignore fulfillment value and continue"))},e.prototype.stashResolvedModel=function(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t},e.prototype.becomeResolved=function(e,t){var n=this.serialize(t) -e&&(this.stashResolvedModel(e,t),e.params=e.params||{},e.params[this.name]=n) -var r={name:this.name,handler:this.handler,params:n},i=t===this.context -return("context"in this||!i)&&(r.context=t),this.factory("resolved",r)},e.prototype.shouldSupercede=function(e){if(!e)return!0 -var t=e.context===this.context -return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!b(this.params,e.params)},(0,t.createClass)(e,[{key:"handler",get:function(){return this._handler!==B?this._handler:this.fetchHandler()},set:function(e){return this._handler=e}},{key:"handlerPromise",get:function(){return null!==this._handlerPromise?this._handlerPromise:(this.fetchHandler(),this._handlerPromise)},set:function(e){return this._handlerPromise=e,e}}]),e}(),U=function(e){function r(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this,n)) -return r.isResolved=!0,r}return(0,t.inherits)(r,e),r.prototype.resolve=function(e,t){return t&&t.resolvedModels&&(t.resolvedModels[this.name]=this.context),n.Promise.resolve(this,this.promiseLabel("Resolve"))},r.prototype.getUnresolved=function(){return this.factory("param",{name:this.name,handler:this.handler,params:this.params})},r}(H),q=function(e){function r(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this,n)) -return r.names=r.names||[],r}return(0,t.inherits)(r,e),r.prototype.getModel=function(e){return this.log(e,this.name+": resolving provided model"),n.Promise.resolve(this.context)},r.prototype.serialize=function(e){var t=e||this.context,n=this.names,r={} -if(c(t))return r[n[0]]=t,r -if(this.serializer)return this.serializer.call(null,t,n) -if(this.handler&&this.handler.serialize)return this.handler.serialize(t,n) -if(1===n.length){var i=n[0] -return/_id$/.test(i)?r[i]=t.id:r[i]=t,r}},r}(H),V=function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this,n)) -return r.params=r.params||{},r}return(0,t.inherits)(n,e),n.prototype.getModel=function(e){var t=this.params -e&&e.queryParams&&(t={},o(t,this.params),t.queryParams=e.queryParams) -var n=this.handler,r=f(n,"deserialize")||f(n,"model") -return this.runSharedModelHook(e,r,[t])},n}(H) -C.klasses={resolved:U,param:V,object:q} -var W=function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this,n)) -return r.name=n.name,r.pivotHandler=n.pivotHandler,r.contexts=n.contexts||[],r.queryParams=n.queryParams,r}return(0,t.inherits)(n,e),n.prototype.applyToState=function(e,t,n,r,i){var o=s([this.name].concat(this.contexts)),a=o[0],u=t.handlersFor(a[0]),c=u[u.length-1].handler -return this.applyToHandlers(e,u,n,c,r,null,i)},n.prototype.applyToHandlers=function(e,t,n,r,i,s,a){var u,c,l,h,d,p,f,g,m,v=new D,y=this.contexts.slice(0),b=t.length -if(this.pivotHandler)for(u=0,c=t.length;u<c;++u)if(t[u].handler===this.pivotHandler._handlerName){b=u -break}for(u=t.length-1;u>=0;--u)l=t[u],h=l.handler,d=e.handlerInfos[u],p=null,l.names.length>0?u>=b?p=this.createParamHandlerInfo(h,n,l.names,y,d):(f=a(h),p=this.getHandlerInfoForDynamicSegment(h,n,l.names,y,d,r,u,f)):p=this.createParamHandlerInfo(h,n,l.names,y,d),s&&(p=p.becomeResolved(null,p.context),g=d&&d.context,l.names.length>0&&"context"in d&&p.context===g&&(p.params=d&&d.params),p.context=g),m=d,(u>=b||p.shouldSupercede(d))&&(b=Math.min(u,b),m=p),i&&!s&&(m=m.becomeResolved(null,m.context)),v.handlerInfos.unshift(m) -if(y.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) -return i||this.invalidateChildren(v.handlerInfos,b),o(v.queryParams,this.queryParams||{}),v},n.prototype.invalidateChildren=function(e,t){var n,r,i -for(n=t,r=e.length;n<r;++n)i=e[n],e[n]=i.getUnresolved()},n.prototype.getHandlerInfoForDynamicSegment=function(e,t,n,r,i,o,s,a){var u,l -if(r.length>0){if(u=r[r.length-1],c(u))return this.createParamHandlerInfo(e,t,n,r,i) -r.pop()}else{if(i&&i.name===e)return i -if(!this.preTransitionState)return i -l=this.preTransitionState.handlerInfos[s],u=l&&l.context}return C("object",{name:e,getHandler:t,serializer:a,context:u,names:n})},n.prototype.createParamHandlerInfo=function(e,t,n,r,i){for(var o,s,a,u={},l=n.length;l--;)if(o=i&&e===i.name&&i.params||{},s=r[r.length-1],a=n[l],c(s))u[a]=""+r.pop() -else{if(!o.hasOwnProperty(a))throw new Error("You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route "+e) -u[a]=o[a]}return C("param",{name:e,getHandler:t,params:u})},n}(F) -A.prototype=Object.create(Error.prototype) -var G=function(e){function n(n){var r=(0,t.possibleConstructorReturn)(this,e.call(this,n)) -return r.url=n.url,r}return(0,t.inherits)(n,e),n.prototype.applyToState=function(e,t,n){function r(e){if(e&&e.inaccessibleByURL)throw new A(g) -return e}var i,s,a,u,c,l,h,d=new D,p=t.recognize(this.url) -if(!p)throw new A(this.url) -var f=!1,g=this.url -for(l=0,h=p.length;l<h;++l)i=p[l],s=i.handler,a=C("param",{name:s,getHandler:n,params:i.params}),u=a.handler,u?r(u):a.handlerPromise=a.handlerPromise.then(r),c=e.handlerInfos[l],f||a.shouldSupercede(c)?(f=!0,d.handlerInfos[l]=a):d.handlerInfos[l]=c -return o(d.queryParams,p.queryParams),d},n}(F),Y=Array.prototype.pop,K=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{} -this.getHandler=e.getHandler||this.getHandler,this.getSerializer=e.getSerializer||this.getSerializer,this.updateURL=e.updateURL||this.updateURL,this.replaceURL=e.replaceURL||this.replaceURL,this.didTransition=e.didTransition||this.didTransition,this.willTransition=e.willTransition||this.willTransition,this.delegate=e.delegate||this.delegate,this.triggerEvent=e.triggerEvent||this.triggerEvent,this.log=e.log||this.log,this.dslCallBacks=[],this.state=void 0,this.activeTransition=void 0,this._changedQueryParams=void 0,this.oldState=void 0,this.currentHandlerInfos=void 0,this.currentSequence=0,this.recognizer=new r.default,this.reset()}return e.prototype.map=function(e){this.recognizer.delegate=this.delegate,this.recognizer.map(e,function(e,t){var n,r,i -for(n=t.length-1,r=!0;n>=0&&r;--n)i=t[n],e.add(t,{as:i.handler}),r="/"===i.path||""===i.path||".index"===i.handler.slice(-6)})},e.prototype.hasRoute=function(e){return this.recognizer.hasRoute(e)},e.prototype.getHandler=function(){},e.prototype.getSerializer=function(){},e.prototype.queryParamsTransition=function(e,t,n,r){var i,o=this -return I(this,r,e),!t&&this.activeTransition?this.activeTransition:(i=new z(this),i.queryParamsOnly=!0,n.queryParams=R(this,r.handlerInfos,r.queryParams,i),i.promise=i.promise.then(function(e){return j(i,n,!0),o.didTransition&&o.didTransition(o.currentHandlerInfos),e},null,p("Transition complete")),i)},e.prototype.transitionByIntent=function(e){try{return _.apply(this,arguments)}catch(t){return new z(this,e,null,t)}},e.prototype.reset=function(){this.state&&l(this.state.handlerInfos.slice().reverse(),function(e){g(e.handler,"exit")}),this.oldState=void 0,this.state=new D,this.currentHandlerInfos=null},e.prototype.handleURL=function(){for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -var e,t,n,r=t[0] -return"/"!==r.charAt(0)&&(t[0]="/"+r),S(this,t).method(null)},e.prototype.updateURL=function(){throw new Error("updateURL is not implemented")},e.prototype.replaceURL=function(e){this.updateURL(e)},e.prototype.transitionTo=function(){return S(this,arguments)},e.prototype.intermediateTransitionTo=function(){return S(this,arguments,!0)},e.prototype.refresh=function(e){var t=this.activeTransition,n=t?t.state:this.state,r=n.handlerInfos -u(this,"Starting a refresh transition") -var i=new W({name:r[r.length-1].name,pivotHandler:e||r[0].handler,contexts:[],queryParams:this._changedQueryParams||n.queryParams||{}}),o=this.transitionByIntent(i,!1) -return t&&"replace"===t.urlMethod&&o.method(t.urlMethod),o},e.prototype.replaceWith=function(){return S(this,arguments).method("replace")},e.prototype.generate=function(e){var t,n,r,i,a=s(M.call(arguments,1)),u=a[0],c=a[1],l=new W({name:e,contexts:u}),h=l.applyToState(this.state,this.recognizer,this.getHandler,null,this.getSerializer),d={} -for(t=0,n=h.handlerInfos.length;t<n;++t)r=h.handlerInfos[t],i=r.serialize(),o(d,i) -return d.queryParams=c,this.recognizer.generate(e,d)},e.prototype.applyIntent=function(e,t){var n=new W({name:e,contexts:t}),r=this.activeTransition&&this.activeTransition.state||this.state -return n.applyToState(r,this.recognizer,this.getHandler,null,this.getSerializer)},e.prototype.isActiveIntent=function(e,t,n,r){var i=r||this.state,s=i.handlerInfos,a=void 0,u=void 0 -if(!s.length)return!1 -var c=s[s.length-1].name,l=this.recognizer.handlersFor(c),h=0 -for(u=l.length;h<u&&(a=s[h],a.name!==e);++h);if(h===l.length)return!1 -var p=new D -p.handlerInfos=s.slice(0,h+1),l=l.slice(0,h+1) -var f=new W({name:c,contexts:t}),g=f.applyToHandlers(p,l,this.getHandler,c,!0,!0,this.getSerializer),m=T(g.handlerInfos,p.handlerInfos) -if(!n||!m)return m -var v={} -o(v,n) -var y=i.queryParams -for(var b in y)y.hasOwnProperty(b)&&v.hasOwnProperty(b)&&(v[b]=y[b]) -return m&&!d(v,n)},e.prototype.isActive=function(e){for(t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r] -var t,n,r,i=s(n) -return this.isActiveIntent(e,i[0],i[1])},e.prototype.trigger=function(){var e,t,n -for(e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n] -h(this,this.currentHandlerInfos,!1,t)},e}() -e.default=K,e.Transition=z}),e("rsvp",["exports","ember-babel","node-module"],function(e,t,n){"use strict" -function r(e){var t=e._promiseCallbacks -return t||(t=e._promiseCallbacks={}),t}function i(e,t){if(2!==arguments.length)return te[e] -te[e]=t}function o(){setTimeout(function(){var e,t,n -for(e=0;e<ne.length;e++)t=ne[e],n=t.payload,n.guid=n.key+n.id,n.childGuid=n.key+n.childId,n.error&&(n.stack=n.error.stack),te.trigger(t.name,t.payload) -ne.length=0},50)}function s(e,t,n){1===ne.push({name:e,payload:{key:t._guidKey,id:t._id,eventName:e,detail:t._result,childId:n&&n._id,label:t._label,timeStamp:Date.now(),error:te["instrument-with-stack"]?new Error(t._label):null}})&&o()}function a(e,t){var n=this -if(e&&"object"==typeof e&&e.constructor===n)return e -var r=new n(l,t) -return v(r,e),r}function u(){return new TypeError("A promises callback cannot return that same promise.")}function c(e){var t=typeof e -return null!==e&&("object"===t||"function"===t)}function l(){}function h(e){try{return e.then}catch(e){return se.error=e,se}}function d(){var e -try{return e=ae,ae=null,e.apply(this,arguments)}catch(e){return se.error=e,se}}function p(e){return ae=e,d}function f(e,t,n){te.async(function(e){var r,i=!1,o=p(n).call(t,function(n){i||(i=!0,t===n?b(e,n):v(e,n))},function(t){i||(i=!0,C(e,t))},"Settle: "+(e._label||" unknown promise")) -i||o!==se||(i=!0,r=se.error,se.error=null,C(e,r))},e)}function g(e,t){t._state===ie?b(e,t._result):t._state===oe?(t._onError=null,C(e,t._result)):A(t,void 0,function(n){t===n?b(e,n):v(e,n)},function(t){return C(e,t)})}function m(e,t,n){var r,i=t.constructor===e.constructor&&n===x&&e.constructor.resolve===a -i?g(e,t):n===se?(r=se.error,se.error=null,C(e,r)):"function"==typeof n?f(e,t,n):b(e,t)}function v(e,t){e===t?b(e,t):c(t)?m(e,t,h(t)):b(e,t)}function y(e){e._onError&&e._onError(e._result),_(e)}function b(e,t){e._state===re&&(e._result=t,e._state=ie,0===e._subscribers.length?te.instrument&&s("fulfilled",e):te.async(_,e))}function C(e,t){e._state===re&&(e._state=oe,e._result=t,te.async(y,e))}function A(e,t,n,r){var i=e._subscribers,o=i.length -e._onError=null,i[o]=t,i[o+ie]=n,i[o+oe]=r,0===o&&e._state&&te.async(_,e)}function _(e){var t,n=e._subscribers,r=e._state -if(te.instrument&&s(r===ie?"fulfilled":"rejected",e),0!==n.length){var i=void 0,o=void 0,a=e._result -for(t=0;t<n.length;t+=3)i=n[t],o=n[t+r],i?I(r,i,o,a):o(a) -e._subscribers.length=0}}function I(e,t,n,r){var i,o="function"==typeof n,s=void 0 -s=o?p(n)(r):r,t._state!==re||(s===t?C(t,u()):s===se?(i=se.error,se.error=null,C(t,i)):o?v(t,s):e===ie?b(t,s):e===oe&&C(t,s))}function w(e,t){var n=!1 -try{t(function(t){n||(n=!0,v(e,t))},function(t){n||(n=!0,C(e,t))})}catch(t){C(e,t)}}function x(e,t,n){var r,i=this,o=i._state -if(o===ie&&!e||o===oe&&!t)return te.instrument&&s("chained",i,i),i -i._onError=null -var a=new i.constructor(l,n),u=i._result -return te.instrument&&s("chained",i,a),o===re?A(i,a,e,t):(r=o===ie?e:t,te.async(function(){return I(o,a,r,u)})),a}function k(e,t,n){this._remaining--,this._result[t]=e===ie?{state:"fulfilled",value:n}:{state:"rejected",reason:n}}function j(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function E(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}function S(e,t){var n,r,i,o={},s=e.length,a=new Array(s) -for(n=0;n<s;n++)a[n]=e[n] -for(r=0;r<t.length;r++)i=t[r],o[i]=a[r+1] -return o}function T(e){var t,n=e.length,r=new Array(n-1) -for(t=1;t<n;t++)r[t-1]=e[t] -return r}function P(e,t){return{then:function(n,r){return e.call(t,n,r)}}}function O(e,n){var r=function(){var t,r,i,o,s=arguments.length,a=new Array(s+1),u=!1 -for(t=0;t<s;++t){if(r=arguments[t],!u){if((u=M(r))===se)return i=se.error,se.error=null,o=new he(l),C(o,i),o -u&&!0!==u&&(r=P(u,r))}a[t]=r}var c=new he(l) -return a[s]=function(e,t){e?C(c,e):void 0===n?v(c,t):!0===n?v(c,T(arguments)):Array.isArray(n)?v(c,S(arguments,n)):v(c,t)},u?N(c,a,e,this):R(c,a,e,this)} -return(0,t.defaults)(r,e),r}function R(e,t,n,r){var i,o=p(n).apply(r,t) -return o===se&&(i=se.error,se.error=null,C(e,i)),e}function N(e,t,n,r){return he.all(t).then(function(t){return R(e,t,n,r)})}function M(e){return null!==e&&"object"==typeof e&&(e.constructor===he||h(e))}function L(e,t){return he.all(e,t)}function D(e,t){return Array.isArray(e)?new de(he,e,t).promise:he.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function z(e,t){return he.race(e,t)}function F(e,t){return null===e||"object"!=typeof e?he.reject(new TypeError("Promise.hash must be called with an object"),t):new pe(he,e,t).promise}function B(e,t){return null===e||"object"!=typeof e?he.reject(new TypeError("RSVP.hashSettled must be called with an object"),t):new fe(he,e,!1,t).promise}function H(e){throw setTimeout(function(){throw e}),e}function U(e){var t={resolve:void 0,reject:void 0} -return t.promise=new he(function(e,n){t.resolve=e,t.reject=n},e),t}function q(e,t,n){return Array.isArray(e)?"function"!=typeof t?he.reject(new TypeError("RSVP.map expects a function as a second argument"),n):new ge(he,e,t,n).promise:he.reject(new TypeError("RSVP.map must be called with an array"),n)}function V(e,t){return he.resolve(e,t)}function W(e,t){return he.reject(e,t)}function G(e,t,n){return"function"!=typeof t?he.reject(new TypeError("RSVP.filter expects function as a second argument"),n):he.resolve(e,n).then(function(e){if(!Array.isArray(e))throw new TypeError("RSVP.filter must be called with an array") -return new ve(he,e,t,n).promise})}function Y(e,t){xe[ye]=e,xe[ye+1]=t,2===(ye+=2)&&ke()}function K(){return void 0!==be?function(){be(Z)}:Q()}function Q(){return function(){return setTimeout(Z,1)}}function Z(){var e,t,n -for(e=0;e<ye;e+=2)t=xe[e],n=xe[e+1],t(n),xe[e]=void 0,xe[e+1]=void 0 -ye=0}function X(){te.on.apply(te,arguments)}function J(){te.off.apply(te,arguments)}e.filter=e.async=e.map=e.reject=e.resolve=e.off=e.on=e.configure=e.denodeify=e.defer=e.rethrow=e.hashSettled=e.hash=e.race=e.allSettled=e.all=e.EventTarget=e.Promise=e.cast=e.asap=void 0 -var $,ee={mixin:function(e){return e.on=this.on,e.off=this.off,e.trigger=this.trigger,e._promiseCallbacks=void 0,e},on:function(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") -var n=r(this),i=n[e] -i||(i=n[e]=[]),-1===i.indexOf(t)&&i.push(t)},off:function(e,t){var n=r(this) -if(!t)return void(n[e]=[]) -var i=n[e],o=i.indexOf(t);-1!==o&&i.splice(o,1)},trigger:function(e,t,n){var i,o=r(this),s=o[e] -if(s)for(void 0,i=0;i<s.length;i++)(0,s[i])(t,n)}},te={instrument:!1} -ee.mixin(te) -var ne=[],re=void 0,ie=1,oe=2,se={error:null},ae=void 0,ue=function(){function e(e,t,n,r){this._instanceConstructor=e,this.promise=new e(l,r),this._abortOnReject=n,this._isUsingOwnPromise=e===he,this._isUsingOwnResolve=e.resolve===a,this._init.apply(this,arguments)}return e.prototype._init=function(e,t){var n=t.length||0 -this.length=n,this._remaining=n,this._result=new Array(n),this._enumerate(t)},e.prototype._enumerate=function(e){var t,n=this.length,r=this.promise -for(t=0;r._state===re&&t<n;t++)this._eachEntry(e[t],t,!0) -this._checkFullfillment()},e.prototype._checkFullfillment=function(){var e -0===this._remaining&&(e=this._result,b(this.promise,e),this._result=null)},e.prototype._settleMaybeThenable=function(e,t,n){var r,i,o=this._instanceConstructor -this._isUsingOwnResolve?(r=h(e),r===x&&e._state!==re?(e._onError=null,this._settledAt(e._state,t,e._result,n)):"function"!=typeof r?this._settledAt(ie,t,e,n):this._isUsingOwnPromise?(i=new o(l),m(i,e,r),this._willSettleAt(i,t,n)):this._willSettleAt(new o(function(t){return t(e)}),t,n)):this._willSettleAt(o.resolve(e),t,n)},e.prototype._eachEntry=function(e,t,n){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,n):this._setResultAt(ie,t,e,n)},e.prototype._settledAt=function(e,t,n,r){var i=this.promise -i._state===re&&(this._abortOnReject&&e===oe?C(i,n):(this._setResultAt(e,t,n,r),this._checkFullfillment()))},e.prototype._setResultAt=function(e,t,n){this._remaining--,this._result[t]=n},e.prototype._willSettleAt=function(e,t,n){var r=this -A(e,void 0,function(e){return r._settledAt(ie,t,e,n)},function(e){return r._settledAt(oe,t,e,n)})},e}(),ce="rsvp_"+Date.now()+"-",le=0,he=function(){function e(t,n){this._id=le++,this._label=n,this._state=void 0,this._result=void 0,this._subscribers=[],te.instrument&&s("created",this),l!==t&&("function"!=typeof t&&j(),this instanceof e?w(this,t):E())}return e.prototype._onError=function(e){var t=this -te.after(function(){t._onError&&te.trigger("error",e,t._label)})},e.prototype.catch=function(e,t){return this.then(void 0,e,t)},e.prototype.finally=function(e,t){var n=this,r=n.constructor -return n.then(function(t){return r.resolve(e()).then(function(){return t})},function(t){return r.resolve(e()).then(function(){throw t})},t)},e}() -he.cast=a,he.all=function(e,t){return Array.isArray(e)?new ue(this,e,!0,t).promise:this.reject(new TypeError("Promise.all must be called with an array"),t)},he.race=function(e,t){var n,r=this,i=new r(l,t) -if(!Array.isArray(e))return C(i,new TypeError("Promise.race must be called with an array")),i -for(n=0;i._state===re&&n<e.length;n++)A(r.resolve(e[n]),void 0,function(e){return v(i,e)},function(e){return C(i,e)}) -return i},he.resolve=a,he.reject=function(e,t){var n=this,r=new n(l,t) -return C(r,e),r},he.prototype._guidKey=ce,he.prototype.then=x -var de=function(e){function n(n,r,i){return(0,t.possibleConstructorReturn)(this,e.call(this,n,r,!1,i))}return(0,t.inherits)(n,e),n}(ue) -de.prototype._setResultAt=k -var pe=function(e){function n(n,r){var i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments[3] -return(0,t.possibleConstructorReturn)(this,e.call(this,n,r,i,o))}return(0,t.inherits)(n,e),n.prototype._init=function(e,t){this._result={},this._enumerate(t)},n.prototype._enumerate=function(e){var t,n=Object.keys(e),r=n.length,i=this.promise -this._remaining=r -var o=void 0,s=void 0 -for(t=0;i._state===re&&t<r;t++)o=n[t],s=e[o],this._eachEntry(s,o,!0) -this._checkFullfillment()},n}(ue),fe=function(e){function n(n,r,i){return(0,t.possibleConstructorReturn)(this,e.call(this,n,r,!1,i))}return(0,t.inherits)(n,e),n}(pe) -fe.prototype._setResultAt=k -var ge=function(e){function n(n,r,i,o){return(0,t.possibleConstructorReturn)(this,e.call(this,n,r,!0,o,i))}return(0,t.inherits)(n,e),n.prototype._init=function(e,t,n,r,i){var o=t.length||0 -this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)},n.prototype._setResultAt=function(e,t,n,r){var i -r?(i=p(this._mapFn)(n,t),i===se?this._settledAt(oe,t,i.error,!1):this._eachEntry(i,t,!1)):(this._remaining--,this._result[t]=n)},n}(ue),me={},ve=function(e){function n(){return(0,t.possibleConstructorReturn)(this,e.apply(this,arguments))}return(0,t.inherits)(n,e),n.prototype._checkFullfillment=function(){var e -0===this._remaining&&null!==this._result&&(e=this._result.filter(function(e){return e!==me}),b(this.promise,e),this._result=null)},n.prototype._setResultAt=function(e,t,n,r){var i -r?(this._result[t]=n,i=p(this._mapFn)(n,t),i===se?this._settledAt(oe,t,i.error,!1):this._eachEntry(i,t,!1)):(this._remaining--,n||(this._result[t]=me))},n}(ge),ye=0,be=void 0,Ce="undefined"!=typeof window?window:void 0,Ae=Ce||{},_e=Ae.MutationObserver||Ae.WebKitMutationObserver,Ie="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),we="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel,xe=new Array(1e3),ke=void 0 -ke=Ie?function(){var e=process.nextTick,t=process.versions.node.match(/^(?:(\d+)\.)?(?:(\d+)\.)?(\*|\d+)$/) -return Array.isArray(t)&&"0"===t[1]&&"10"===t[2]&&(e=setImmediate),function(){return e(Z)}}():_e?function(){var e=0,t=new _e(Z),n=document.createTextNode("") -return t.observe(n,{characterData:!0}),function(){return n.data=e=++e%2}}():we?function(){var e=new MessageChannel -return e.port1.onmessage=Z,function(){return e.port2.postMessage(0)}}():void 0===Ce&&"function"==typeof n.require?function(){var e -try{return e=Function("return this")().require("vertx"),be=e.runOnLoop||e.runOnContext,K()}catch(e){return Q()}}():Q(),te.async=Y,te.after=function(e){return setTimeout(e,0)} -var je=V,Ee=function(e,t){return te.async(e,t)} -if("undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){$=window.__PROMISE_INSTRUMENTATION__,i("instrument",!0) -for(var Se in $)$.hasOwnProperty(Se)&&X(Se,$[Se])}e.default={asap:Y,cast:je,Promise:he,EventTarget:ee,all:L,allSettled:D,race:z,hash:F,hashSettled:B,rethrow:H,defer:U,denodeify:O,configure:i,on:X,off:J,resolve:V,reject:W,map:q,async:Ee,filter:G},e.asap=Y,e.cast=je,e.Promise=he,e.EventTarget=ee,e.all=L,e.allSettled=D,e.race=z,e.hash=F,e.hashSettled=B,e.rethrow=H,e.defer=U,e.denodeify=O,e.configure=i,e.on=X,e.off=J,e.resolve=V,e.reject=W,e.map=q,e.async=Ee,e.filter=G}),t("ember")}(),function(){define("ember-cli-shims/deprecations",[],function(){var e={"ember-application":{default:["@ember/application"]},"ember-array":{default:["@ember/array"]},"ember-array/mutable":{default:["@ember/array/mutable"]},"ember-array/utils":{A:["@ember/array","A"],isEmberArray:["@ember/array","isArray"],wrap:["@ember/array","makeArray"]},"ember-component":{default:["@ember/component"]},"ember-components/checkbox":{default:["@ember/component/checkbox"]},"ember-components/text-area":{default:["@ember/component/text-area"]},"ember-components/text-field":{default:["@ember/component/text-field"]},"ember-controller":{default:["@ember/controller"]},"ember-controller/inject":{default:["@ember/controller","inject"]},"ember-controller/proxy":{default:["@ember/array/proxy"]},"ember-debug":{log:["@ember/debug","debug"],inspect:["@ember/debug","inspect"],run:["@ember/debug","runInDebug"],warn:["@ember/debug","warn"]},"ember-debug/container-debug-adapter":{default:["@ember/debug/container-debug-adapter"]},"ember-debug/data-adapter":{default:["@ember/debug/data-adapter"]},"ember-deprecations":{deprecate:["@ember/application/deprecations","deprecate"],deprecateFunc:["@ember/application/deprecations","deprecateFunc"]},"ember-enumerable":{default:["@ember/enumerable"]},"ember-evented":{default:["@ember/object/evented"]},"ember-evented/on":{default:["@ember/object/evented","on"]},"ember-globals-resolver":{default:["@ember/application/globals-resolver"]},"ember-helper":{default:["@ember/component/helper"],helper:["@ember/component/helper","helper"]},"ember-instrumentation":{instrument:["@ember/instrumentation","instrument"],reset:["@ember/instrumentation","reset"],subscribe:["@ember/instrumentation","subscribe"],unsubscribe:["@ember/instrumentation","unsubscribe"]},"ember-locations/hash":{default:["@ember/routing/hash-location"]},"ember-locations/history":{default:["@ember/routing/history-location"]},"ember-locations/none":{default:["@ember/routing/none-location"]},"ember-map":{default:["@ember/map"],withDefault:["@ember/map/with-default"]},"ember-metal/events":{addListener:["@ember/object/events","addListener"],removeListener:["@ember/object/events","removeListener"],send:["@ember/object/events","sendEvent"]},"ember-metal/get":{default:["@ember/object","get"],getProperties:["@ember/object","getProperties"]},"ember-metal/mixin":{default:["@ember/object/mixin"]},"ember-metal/observer":{default:["@ember/object","observer"],addObserver:["@ember/object/observers","addObserver"],removeObserver:["@ember/object/observers","removeObserver"]},"ember-metal/on-load":{default:["@ember/application","onLoad"],run:["@ember/application","runLoadHooks"]},"ember-metal/set":{default:["@ember/object","set"],setProperties:["@ember/object","setProperties"],trySet:["@ember/object","trySet"]},"ember-metal/utils":{aliasMethod:["@ember/object","aliasMethod"],assert:["@ember/debug","assert"],cacheFor:["@ember/object/internals","cacheFor"],copy:["@ember/object/internals","copy"],guidFor:["@ember/object/internals","guidFor"]},"ember-object":{default:["@ember/object"]},"ember-owner/get":{default:["@ember/application","getOwner"]},"ember-owner/set":{default:["@ember/application","setOwner"]},"ember-platform":{assign:["@ember/polyfills","assign"],create:["@ember/polyfills","create"],hasAccessors:["@ember/polyfills","hasPropertyAccessors"],keys:["@ember/polyfills","keys"]},"ember-route":{default:["@ember/routing/route"]},"ember-router":{default:["@ember/routing/router"]},"ember-runloop":{default:["@ember/runloop","run"],begin:["@ember/runloop","begin"],bind:["@ember/runloop","bind"],cancel:["@ember/runloop","cancel"],debounce:["@ember/runloop","debounce"],end:["@ember/runloop","end"],join:["@ember/runloop","join"],later:["@ember/runloop","later"],next:["@ember/runloop","next"],once:["@ember/runloop","once"],schedule:["@ember/runloop","schedule"],scheduleOnce:["@ember/runloop","scheduleOnce"],throttle:["@ember/runloop","throttle"]},"ember-service":{default:["@ember/service"]},"ember-service/inject":{default:["@ember/service","inject"]},"ember-string":{camelize:["@ember/string","camelize"],capitalize:["@ember/string","capitalize"],classify:["@ember/string","classify"],dasherize:["@ember/string","dasherize"],decamelize:["@ember/string","decamelize"],fmt:["@ember/string","fmt"],htmlSafe:["@ember/string","htmlSafe"],loc:["@ember/string","loc"],underscore:["@ember/string","underscore"],w:["@ember/string","w"]},"ember-utils":{isBlank:["@ember/utils","isBlank"],isEmpty:["@ember/utils","isEmpty"],isNone:["@ember/utils","isNone"],isPresent:["@ember/utils","isPresent"],tryInvoke:["@ember/utils","tryInvoke"],typeOf:["@ember/utils","typeOf"]},"ember-computed":{default:["@ember/object","computed"],empty:["@ember/object/computed","empty"],notEmpty:["@ember/object/computed","notEmpty"],none:["@ember/object/computed","none"],not:["@ember/object/computed","not"],bool:["@ember/object/computed","bool"],match:["@ember/object/computed","match"],equal:["@ember/object/computed","equal"],gt:["@ember/object/computed","gt"],gte:["@ember/object/computed","gte"],lt:["@ember/object/computed","lt"],lte:["@ember/object/computed","lte"],alias:["@ember/object/computed","alias"],oneWay:["@ember/object/computed","oneWay"],reads:["@ember/object/computed","reads"],readOnly:["@ember/object/computed","readOnly"],deprecatingAlias:["@ember/object/computed","deprecatingAlias"],and:["@ember/object/computed","and"],or:["@ember/object/computed","or"],collect:["@ember/object/computed","collect"],sum:["@ember/object/computed","sum"],min:["@ember/object/computed","min"],max:["@ember/object/computed","max"],map:["@ember/object/computed","map"],sort:["@ember/object/computed","sort"],setDiff:["@ember/object/computed","setDiff"],mapBy:["@ember/object/computed","mapBy"],mapProperty:["@ember/object/computed","mapProperty"],filter:["@ember/object/computed","filter"],filterBy:["@ember/object/computed","filterBy"],filterProperty:["@ember/object/computed","filterProperty"],uniq:["@ember/object/computed","uniq"],union:["@ember/object/computed","union"],intersect:["@ember/object/computed","intersect"]},"ember-test/adapter":{default:["@ember/test/adapter"]}} -return Object.defineProperty(e,"__esModule",{value:!0}),e})}(),function(){function e(e,t,n){define(e,["ember-cli-shims/deprecations"],function(r){"use strict" -if(n){var i=r[e],o="Importing from the `"+e+"` module has been deprecated. " -i?(o+="Please use the new module imports:\n\n",Object.keys(i).forEach(function(e){var t=i[e] -if(t[1])o+="import { "+t[1]+" } from '"+t[0]+"'\n" -else{var n=Ember.String.classify(t[0].split("/").pop()) -o+="import "+n+" from '"+t[0]+"'\n"}}),o+="\n"):o+="Please use globals instead.",Ember.deprecate(o,!1,{id:"ember-cli-shims.deprecated-shims",until:"3.0.0",url:"https://github.com/emberjs/rfcs/blob/master/text/0176-javascript-module-api.md"})}return Object.defineProperty(t,"__esModule",{value:!0}),t})}e("ember",{default:Ember}),function(){var t={"ember-application":{default:Ember.Application},"ember-array":{default:Ember.Array},"ember-array/mutable":{default:Ember.MutableArray},"ember-array/utils":{A:Ember.A,isEmberArray:Ember.isArray,wrap:Ember.makeArray},"ember-component":{default:Ember.Component},"ember-components/checkbox":{default:Ember.Checkbox},"ember-components/text-area":{default:Ember.TextArea},"ember-components/text-field":{default:Ember.TextField},"ember-controller":{default:Ember.Controller},"ember-controller/inject":{default:Ember.inject.controller},"ember-controller/proxy":{default:Ember.ArrayProxy},"ember-controllers/sortable":{default:Ember.SortableMixin},"ember-debug":{log:Ember.debug,inspect:Ember.inspect,run:Ember.runInDebug,warn:Ember.warn},"ember-debug/container-debug-adapter":{default:Ember.ContainerDebugAdapter},"ember-debug/data-adapter":{default:Ember.DataAdapter},"ember-deprecations":{deprecate:Ember.deprecate,deprecateFunc:Ember.deprecateFunc},"ember-enumerable":{default:Ember.Enumerable},"ember-evented":{default:Ember.Evented},"ember-evented/on":{default:Ember.on},"ember-globals-resolver":{default:Ember.DefaultResolver},"ember-helper":{default:Ember.Helper,helper:Ember.Helper&&Ember.Helper.helper},"ember-instrumentation":{instrument:Ember.Instrumentation.instrument,reset:Ember.Instrumentation.reset,subscribe:Ember.Instrumentation.subscribe,unsubscribe:Ember.Instrumentation.unsubscribe},"ember-locations/hash":{default:Ember.HashLocation},"ember-locations/history":{default:Ember.HistoryLocation},"ember-locations/none":{default:Ember.NoneLocation},"ember-map":{default:Ember.Map,withDefault:Ember.MapWithDefault},"ember-metal/destroy":{default:Ember.destroy},"ember-metal/events":{addListener:Ember.addListener,removeListener:Ember.removeListener,send:Ember.sendEvent},"ember-metal/get":{default:Ember.get,getProperties:Ember.getProperties},"ember-metal/mixin":{default:Ember.Mixin},"ember-metal/observer":{default:Ember.observer,addObserver:Ember.addObserver,removeObserver:Ember.removeObserver},"ember-metal/on-load":{default:Ember.onLoad,run:Ember.runLoadHooks},"ember-metal/set":{default:Ember.set,setProperties:Ember.setProperties,trySet:Ember.trySet},"ember-metal/utils":{aliasMethod:Ember.aliasMethod,assert:Ember.assert,cacheFor:Ember.cacheFor,copy:Ember.copy,guidFor:Ember.guidFor},"ember-object":{default:Ember.Object},"ember-owner/get":{default:Ember.getOwner},"ember-owner/set":{default:Ember.setOwner},"ember-platform":{assign:Ember.assign||Ember.merge,create:Ember.create,defineProperty:Ember.platform.defineProperty,hasAccessors:Ember.platform.hasPropertyAccessors,keys:Ember.keys},"ember-route":{default:Ember.Route},"ember-router":{default:Ember.Router},"ember-runloop":{default:Ember.run,begin:Ember.run.begin,bind:Ember.run.bind,cancel:Ember.run.cancel,debounce:Ember.run.debounce,end:Ember.run.end,join:Ember.run.join,later:Ember.run.later,next:Ember.run.next,once:Ember.run.once,schedule:Ember.run.schedule,scheduleOnce:Ember.run.scheduleOnce,throttle:Ember.run.throttle},"ember-service":{default:Ember.Service},"ember-service/inject":{default:Ember.inject.service},"ember-set/ordered":{default:Ember.OrderedSet},"ember-string":{camelize:Ember.String.camelize,capitalize:Ember.String.capitalize,classify:Ember.String.classify,dasherize:Ember.String.dasherize,decamelize:Ember.String.decamelize,fmt:Ember.String.fmt,htmlSafe:Ember.String.htmlSafe,loc:Ember.String.loc,underscore:Ember.String.underscore,w:Ember.String.w},"ember-utils":{isBlank:Ember.isBlank,isEmpty:Ember.isEmpty,isNone:Ember.isNone,isPresent:Ember.isPresent,tryInvoke:Ember.tryInvoke,typeOf:Ember.typeOf}} -t["ember-computed"]={default:Ember.computed} -for(var n=["empty","notEmpty","none","not","bool","match","equal","gt","gte","lt","lte","alias","oneWay","reads","readOnly","deprecatingAlias","and","or","collect","sum","min","max","map","sort","setDiff","mapBy","mapProperty","filter","filterBy","filterProperty","uniq","union","intersect"],r=0,i=n.length;r<i;r++){var o=n[r] -t["ember-computed"][o]=Ember.computed[o]}for(var s in t)e(s,t[s],!0)}(),function(){if(Ember.Test){var t={"ember-test":{default:Ember.Test},"ember-test/adapter":{default:Ember.Test.Adapter},"ember-test/qunit-adapter":{default:Ember.Test.QUnitAdapter}} -for(var n in t)e(n,t[n])}}(),e("jquery",{default:self.jQuery}),e("rsvp",{default:Ember.RSVP})}(),createDeprecatedModule("ember/resolver"),createDeprecatedModule("resolver"),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e(jQuery)}(function(e){e.ui=e.ui||{},e.ui.version="1.12.1" -var t=0,n=Array.prototype.slice -e.cleanData=function(t){return function(n){var r,i,o -for(o=0;null!=(i=n[o]);o++)try{(r=e._data(i,"events"))&&r.remove&&e(i).triggerHandler("remove")}catch(e){}t(n)}}(e.cleanData),e.widget=function(t,n,r){var i,o,s,a={},u=t.split(".")[0] -t=t.split(".")[1] -var c=u+"-"+t -return r||(r=n,n=e.Widget),e.isArray(r)&&(r=e.extend.apply(null,[{}].concat(r))),e.expr[":"][c.toLowerCase()]=function(t){return!!e.data(t,c)},e[u]=e[u]||{},i=e[u][t],o=e[u][t]=function(e,t){return this._createWidget?void(arguments.length&&this._createWidget(e,t)):new o(e,t)},e.extend(o,i,{version:r.version,_proto:e.extend({},r),_childConstructors:[]}),s=new n,s.options=e.widget.extend({},s.options),e.each(r,function(t,r){return e.isFunction(r)?void(a[t]=function(){function e(){return n.prototype[t].apply(this,arguments)}function i(e){return n.prototype[t].apply(this,e)}return function(){var t,n=this._super,o=this._superApply -return this._super=e,this._superApply=i,t=r.apply(this,arguments),this._super=n,this._superApply=o,t}}()):void(a[t]=r)}),o.prototype=e.widget.extend(s,{widgetEventPrefix:i?s.widgetEventPrefix||t:t},a,{constructor:o,namespace:u,widgetName:t,widgetFullName:c}),i?(e.each(i._childConstructors,function(t,n){var r=n.prototype -e.widget(r.namespace+"."+r.widgetName,o,n._proto)}),delete i._childConstructors):n._childConstructors.push(o),e.widget.bridge(t,o),o},e.widget.extend=function(t){for(var r,i,o=n.call(arguments,1),s=0,a=o.length;a>s;s++)for(r in o[s])i=o[s][r],o[s].hasOwnProperty(r)&&void 0!==i&&(t[r]=e.isPlainObject(i)?e.isPlainObject(t[r])?e.widget.extend({},t[r],i):e.widget.extend({},i):i) -return t},e.widget.bridge=function(t,r){var i=r.prototype.widgetFullName||t -e.fn[t]=function(o){var s="string"==typeof o,a=n.call(arguments,1),u=this -return s?this.length||"instance"!==o?this.each(function(){var n,r=e.data(this,i) -return"instance"===o?(u=r,!1):r?e.isFunction(r[o])&&"_"!==o.charAt(0)?(n=r[o].apply(r,a),n!==r&&void 0!==n?(u=n&&n.jquery?u.pushStack(n.get()):n,!1):void 0):e.error("no such method '"+o+"' for "+t+" widget instance"):e.error("cannot call methods on "+t+" prior to initialization; attempted to call method '"+o+"'")}):u=void 0:(a.length&&(o=e.widget.extend.apply(null,[o].concat(a))),this.each(function(){var t=e.data(this,i) -t?(t.option(o||{}),t._init&&t._init()):e.data(this,i,new r(o,this))})),u}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(n,r){r=e(r||this.defaultElement||this)[0],this.element=e(r),this.uuid=t++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=e(),this.hoverable=e(),this.focusable=e(),this.classesElementLookup={},r!==this&&(e.data(r,this.widgetFullName,this),this._on(!0,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.options=e.widget.extend({},this.options,this._getCreateOptions(),n),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){var t=this -this._destroy(),e.each(this.classesElementLookup,function(e,n){t._removeClass(n,e)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:e.noop,widget:function(){return this.element},option:function(t,n){var r,i,o,s=t -if(0===arguments.length)return e.widget.extend({},this.options) -if("string"==typeof t)if(s={},r=t.split("."),t=r.shift(),r.length){for(i=s[t]=e.widget.extend({},this.options[t]),o=0;r.length-1>o;o++)i[r[o]]=i[r[o]]||{},i=i[r[o]] -if(t=r.pop(),1===arguments.length)return void 0===i[t]?null:i[t] -i[t]=n}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t] -s[t]=n}return this._setOptions(s),this},_setOptions:function(e){var t -for(t in e)this._setOption(t,e[t]) -return this},_setOption:function(e,t){return"classes"===e&&this._setOptionClasses(t),this.options[e]=t,"disabled"===e&&this._setOptionDisabled(t),this},_setOptionClasses:function(t){var n,r,i -for(n in t)i=this.classesElementLookup[n],t[n]!==this.options.classes[n]&&i&&i.length&&(r=e(i.get()),this._removeClass(i,n),r.addClass(this._classes({element:r,keys:n,classes:t,add:!0})))},_setOptionDisabled:function(e){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!e),e&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(t){function n(n,o){var s,a -for(a=0;n.length>a;a++)s=i.classesElementLookup[n[a]]||e(),s=e(t.add?e.unique(s.get().concat(t.element.get())):s.not(t.element).get()),i.classesElementLookup[n[a]]=s,r.push(n[a]),o&&t.classes[n[a]]&&r.push(t.classes[n[a]])}var r=[],i=this -return t=e.extend({element:this.element,classes:this.options.classes||{}},t),this._on(t.element,{remove:"_untrackClassesElement"}),t.keys&&n(t.keys.match(/\S+/g)||[],!0),t.extra&&n(t.extra.match(/\S+/g)||[]),r.join(" ")},_untrackClassesElement:function(t){var n=this -e.each(n.classesElementLookup,function(r,i){-1!==e.inArray(t.target,i)&&(n.classesElementLookup[r]=e(i.not(t.target).get()))})},_removeClass:function(e,t,n){return this._toggleClass(e,t,n,!1)},_addClass:function(e,t,n){return this._toggleClass(e,t,n,!0)},_toggleClass:function(e,t,n,r){r="boolean"==typeof r?r:n -var i="string"==typeof e||null===e,o={extra:i?t:n,keys:i?e:t,element:i?this.element:e,add:r} -return o.element.toggleClass(this._classes(o),r),this},_on:function(t,n,r){var i,o=this -"boolean"!=typeof t&&(r=n,n=t,t=!1),r?(n=i=e(n),this.bindings=this.bindings.add(n)):(r=n,n=this.element,i=this.widget()),e.each(r,function(r,s){function a(){return t||!0!==o.options.disabled&&!e(this).hasClass("ui-state-disabled")?("string"==typeof s?o[s]:s).apply(o,arguments):void 0}"string"!=typeof s&&(a.guid=s.guid=s.guid||a.guid||e.guid++) -var u=r.match(/^([\w:-]*)\s*(.*)$/),c=u[1]+o.eventNamespace,l=u[2] -l?i.on(c,l,a):n.on(c,a)})},_off:function(t,n){n=(n||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(n).off(n),this.bindings=e(this.bindings.not(t).get()),this.focusable=e(this.focusable.not(t).get()),this.hoverable=e(this.hoverable.not(t).get())},_delay:function(e,t){function n(){return("string"==typeof e?r[e]:e).apply(r,arguments)}var r=this -return setTimeout(n,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(e(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(e(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(e(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(e(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,n,r){var i,o,s=this.options[t] -if(r=r||{},n=e.Event(n),n.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),n.target=this.element[0],o=n.originalEvent)for(i in o)i in n||(n[i]=o[i]) -return this.element.trigger(n,r),!(e.isFunction(s)&&!1===s.apply(this.element[0],[n].concat(r))||n.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,n){e.Widget.prototype["_"+t]=function(r,i,o){"string"==typeof i&&(i={effect:i}) -var s,a=i?!0===i||"number"==typeof i?n:i.effect||n:t -i=i||{},"number"==typeof i&&(i={duration:i}),s=!e.isEmptyObject(i),i.complete=o,i.delay&&r.delay(i.delay),s&&e.effects&&e.effects.effect[a]?r[t](i):a!==t&&r[a]?r[a](i.duration,i.easing,o):r.queue(function(n){e(this)[t](),o&&o.call(r[0]),n()})}}),e.widget,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])}}),e.fn.extend({disableSelection:function(){var e="onselectstart"in document.createElement("div")?"selectstart":"mousedown" -return function(){return this.on(e+".ui-disableSelection",function(e){e.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),e.fn.scrollParent=function(t){var n=this.css("position"),r="absolute"===n,i=t?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var t=e(this) -return(!r||"static"!==t.css("position"))&&i.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0) -return"fixed"!==n&&o.length?o:e(this[0].ownerDocument||document)},e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()) -var r=!1 -e(document).on("mouseup",function(){r=!1}),e.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var t=this -this.element.on("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).on("click."+this.widgetName,function(n){return!0===e.data(n.target,t.widgetName+".preventClickEvent")?(e.removeData(n.target,t.widgetName+".preventClickEvent"),n.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!r){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t -var n=this,i=1===t.which,o=!("string"!=typeof this.options.cancel||!t.target.nodeName)&&e(t.target).closest(this.options.cancel).length -return!(i&&!o&&this._mouseCapture(t))||(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){n.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(t),!this._mouseStarted)?(t.preventDefault(),!0):(!0===e.data(t.target,this.widgetName+".preventClickEvent")&&e.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return n._mouseMove(e)},this._mouseUpDelegate=function(e){return n._mouseUp(e)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),r=!0,!0))}},_mouseMove:function(t){if(this._mouseMoved){if(e.ui.ie&&(!document.documentMode||9>document.documentMode)&&!t.button)return this._mouseUp(t) -if(!t.which)if(t.originalEvent.altKey||t.originalEvent.ctrlKey||t.originalEvent.metaKey||t.originalEvent.shiftKey)this.ignoreMissingWhich=!0 -else if(!this.ignoreMissingWhich)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,t),this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("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)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,r=!1,t.preventDefault()},_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(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),e.ui.plugin={add:function(t,n,r){var i,o=e.ui[t].prototype -for(i in r)o.plugins[i]=o.plugins[i]||[],o.plugins[i].push([n,r[i]])},call:function(e,t,n,r){var i,o=e.plugins[t] -if(o&&(r||e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType))for(i=0;o.length>i;i++)e.options[o[i][0]]&&o[i][1].apply(e.element,n)}},e.ui.safeActiveElement=function(e){var t -try{t=e.activeElement}catch(n){t=e.body}return t||(t=e.body),t.nodeName||(t=e.body),t},e.ui.safeBlur=function(t){t&&"body"!==t.nodeName.toLowerCase()&&e(t).trigger("blur")},e.widget("ui.draggable",e.ui.mouse,{version:"1.12.1",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"===this.options.helper&&this._setPositionRelative(),this.options.addClasses&&this._addClass("ui-draggable"),this._setHandleClassName(),this._mouseInit()},_setOption:function(e,t){this._super(e,t),"handle"===e&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?void(this.destroyOnClear=!0):(this._removeHandleClassName(),void this._mouseDestroy())},_mouseCapture:function(t){var n=this.options -return!(this.helper||n.disabled||e(t.target).closest(".ui-resizable-handle").length>0)&&(this.handle=this._getHandle(t),!!this.handle&&(this._blurActiveElement(t),this._blockFrames(!0===n.iframeFix?"iframe":n.iframeFix),!0))},_blockFrames:function(t){this.iframeBlocks=this.document.find(t).map(function(){var t=e(this) -return e("<div>").css("position","absolute").appendTo(t.parent()).outerWidth(t.outerWidth()).outerHeight(t.outerHeight()).offset(t.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_blurActiveElement:function(t){var n=e.ui.safeActiveElement(this.document[0]) -e(t.target).closest(n).length||e.ui.safeBlur(n)},_mouseStart:function(t){var n=this.options -return this.helper=this._createHelper(t),this._addClass(this.helper,"ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.hasFixedAncestor=this.helper.parents().filter(function(){return"fixed"===e(this).css("position")}).length>0,this.positionAbs=this.element.offset(),this._refreshOffsets(t),this.originalPosition=this.position=this._generatePosition(t,!1),this.originalPageX=t.pageX,this.originalPageY=t.pageY,n.cursorAt&&this._adjustOffsetFromHelper(n.cursorAt),this._setContainment(),!1===this._trigger("start",t)?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!n.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_refreshOffsets:function(e){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:!1,parent:this._getParentOffset(),relative:this._getRelativeOffset()},this.offset.click={left:e.pageX-this.offset.left,top:e.pageY-this.offset.top}},_mouseDrag:function(t,n){if(this.hasFixedAncestor&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(t,!0),this.positionAbs=this._convertPositionTo("absolute"),!n){var r=this._uiHash() -if(!1===this._trigger("drag",t,r))return this._mouseUp(new e.Event("mouseup",t)),!1 -this.position=r.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var n=this,r=!1 -return e.ui.ddmanager&&!this.options.dropBehaviour&&(r=e.ui.ddmanager.drop(this,t)),this.dropped&&(r=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!r||"valid"===this.options.revert&&r||!0===this.options.revert||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,r)?e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){!1!==n._trigger("stop",t)&&n._clear()}):!1!==this._trigger("stop",t)&&this._clear(),!1},_mouseUp:function(t){return this._unblockFrames(),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),this.handleElement.is(t.target)&&this.element.trigger("focus"),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp(new e.Event("mouseup",{target:this.element[0]})):this._clear(),this},_getHandle:function(t){return!this.options.handle||!!e(t.target).closest(this.element.find(this.options.handle)).length},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this._addClass(this.handleElement,"ui-draggable-handle")},_removeHandleClassName:function(){this._removeClass(this.handleElement,"ui-draggable-handle")},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper),i=r?e(n.helper.apply(this.element[0],[t])):"clone"===n.helper?this.element.clone().removeAttr("id"):this.element -return i.parents("body").length||i.appendTo("parent"===n.appendTo?this.element[0].parentNode:n.appendTo),r&&i[0]===this.element[0]&&this._setPositionRelative(),i[0]===this.element[0]||/(fixed|absolute)/.test(i.css("position"))||i.css("position","absolute"),i},_setPositionRelative:function(){/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative")},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_isRootNode:function(e){return/(html|body)/i.test(e.tagName)||e===this.document[0]},_getParentOffset:function(){var t=this.offsetParent.offset(),n=this.document[0] -return"absolute"===this.cssPosition&&this.scrollParent[0]!==n&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0} -var e=this.element.position(),t=this._isRootNode(this.scrollParent[0]) -return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+(t?0:this.scrollParent.scrollTop()),left:e.left-(parseInt(this.helper.css("left"),10)||0)+(t?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,n,r,i=this.options,o=this.document[0] -return this.relativeContainer=null,i.containment?"window"===i.containment?void(this.containment=[e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,e(window).scrollLeft()+e(window).width()-this.helperProportions.width-this.margins.left,e(window).scrollTop()+(e(window).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):"document"===i.containment?void(this.containment=[0,0,e(o).width()-this.helperProportions.width-this.margins.left,(e(o).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):i.containment.constructor===Array?void(this.containment=i.containment):("parent"===i.containment&&(i.containment=this.helper[0].parentNode),n=e(i.containment),void((r=n[0])&&(t=/(scroll|auto)/.test(n.css("overflow")),this.containment=[(parseInt(n.css("borderLeftWidth"),10)||0)+(parseInt(n.css("paddingLeft"),10)||0),(parseInt(n.css("borderTopWidth"),10)||0)+(parseInt(n.css("paddingTop"),10)||0),(t?Math.max(r.scrollWidth,r.offsetWidth):r.offsetWidth)-(parseInt(n.css("borderRightWidth"),10)||0)-(parseInt(n.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(t?Math.max(r.scrollHeight,r.offsetHeight):r.offsetHeight)-(parseInt(n.css("borderBottomWidth"),10)||0)-(parseInt(n.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=n))):void(this.containment=null)},_convertPositionTo:function(e,t){t||(t=this.position) -var n="absolute"===e?1:-1,r=this._isRootNode(this.scrollParent[0]) -return{top:t.top+this.offset.relative.top*n+this.offset.parent.top*n-("fixed"===this.cssPosition?-this.offset.scroll.top:r?0:this.offset.scroll.top)*n,left:t.left+this.offset.relative.left*n+this.offset.parent.left*n-("fixed"===this.cssPosition?-this.offset.scroll.left:r?0:this.offset.scroll.left)*n}},_generatePosition:function(e,t){var n,r,i,o,s=this.options,a=this._isRootNode(this.scrollParent[0]),u=e.pageX,c=e.pageY -return a&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),t&&(this.containment&&(this.relativeContainer?(r=this.relativeContainer.offset(),n=[this.containment[0]+r.left,this.containment[1]+r.top,this.containment[2]+r.left,this.containment[3]+r.top]):n=this.containment,e.pageX-this.offset.click.left<n[0]&&(u=n[0]+this.offset.click.left),e.pageY-this.offset.click.top<n[1]&&(c=n[1]+this.offset.click.top),e.pageX-this.offset.click.left>n[2]&&(u=n[2]+this.offset.click.left),e.pageY-this.offset.click.top>n[3]&&(c=n[3]+this.offset.click.top)),s.grid&&(i=s.grid[1]?this.originalPageY+Math.round((c-this.originalPageY)/s.grid[1])*s.grid[1]:this.originalPageY,c=n?i-this.offset.click.top>=n[1]||i-this.offset.click.top>n[3]?i:i-this.offset.click.top>=n[1]?i-s.grid[1]:i+s.grid[1]:i,o=s.grid[0]?this.originalPageX+Math.round((u-this.originalPageX)/s.grid[0])*s.grid[0]:this.originalPageX,u=n?o-this.offset.click.left>=n[0]||o-this.offset.click.left>n[2]?o:o-this.offset.click.left>=n[0]?o-s.grid[0]:o+s.grid[0]:o),"y"===s.axis&&(u=this.originalPageX),"x"===s.axis&&(c=this.originalPageY)),{top:c-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:a?0:this.offset.scroll.top),left:u-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:a?0:this.offset.scroll.left)}},_clear:function(){this._removeClass(this.helper,"ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_trigger:function(t,n,r){return r=r||this._uiHash(),e.ui.plugin.call(this,t,[n,r,this],!0),/^(drag|start|stop)/.test(t)&&(this.positionAbs=this._convertPositionTo("absolute"),r.offset=this.positionAbs),e.Widget.prototype._trigger.call(this,t,n,r)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),e.ui.plugin.add("draggable","connectToSortable",{start:function(t,n,r){var i=e.extend({},n,{item:r.element}) -r.sortables=[],e(r.options.connectToSortable).each(function(){var n=e(this).sortable("instance") -n&&!n.options.disabled&&(r.sortables.push(n),n.refreshPositions(),n._trigger("activate",t,i))})},stop:function(t,n,r){var i=e.extend({},n,{item:r.element}) -r.cancelHelperRemoval=!1,e.each(r.sortables,function(){var e=this -e.isOver?(e.isOver=0,r.cancelHelperRemoval=!0,e.cancelHelperRemoval=!1,e._storedCSS={position:e.placeholder.css("position"),top:e.placeholder.css("top"),left:e.placeholder.css("left")},e._mouseStop(t),e.options.helper=e.options._helper):(e.cancelHelperRemoval=!0,e._trigger("deactivate",t,i))})},drag:function(t,n,r){e.each(r.sortables,function(){var i=!1,o=this -o.positionAbs=r.positionAbs,o.helperProportions=r.helperProportions,o.offset.click=r.offset.click,o._intersectsWith(o.containerCache)&&(i=!0,e.each(r.sortables,function(){return this.positionAbs=r.positionAbs,this.helperProportions=r.helperProportions,this.offset.click=r.offset.click,this!==o&&this._intersectsWith(this.containerCache)&&e.contains(o.element[0],this.element[0])&&(i=!1),i})),i?(o.isOver||(o.isOver=1,r._parent=n.helper.parent(),o.currentItem=n.helper.appendTo(o.element).data("ui-sortable-item",!0),o.options._helper=o.options.helper,o.options.helper=function(){return n.helper[0]},t.target=o.currentItem[0],o._mouseCapture(t,!0),o._mouseStart(t,!0,!0),o.offset.click.top=r.offset.click.top,o.offset.click.left=r.offset.click.left,o.offset.parent.left-=r.offset.parent.left-o.offset.parent.left,o.offset.parent.top-=r.offset.parent.top-o.offset.parent.top,r._trigger("toSortable",t),r.dropped=o.element,e.each(r.sortables,function(){this.refreshPositions()}),r.currentItem=r.element,o.fromOutside=r),o.currentItem&&(o._mouseDrag(t),n.position=o.position)):o.isOver&&(o.isOver=0,o.cancelHelperRemoval=!0,o.options._revert=o.options.revert,o.options.revert=!1,o._trigger("out",t,o._uiHash(o)),o._mouseStop(t,!0),o.options.revert=o.options._revert,o.options.helper=o.options._helper,o.placeholder&&o.placeholder.remove(),n.helper.appendTo(r._parent),r._refreshOffsets(t),n.position=r._generatePosition(t,!0),r._trigger("fromSortable",t),r.dropped=!1,e.each(r.sortables,function(){this.refreshPositions()}))})}}),e.ui.plugin.add("draggable","cursor",{start:function(t,n,r){var i=e("body"),o=r.options -i.css("cursor")&&(o._cursor=i.css("cursor")),i.css("cursor",o.cursor)},stop:function(t,n,r){var i=r.options -i._cursor&&e("body").css("cursor",i._cursor)}}),e.ui.plugin.add("draggable","opacity",{start:function(t,n,r){var i=e(n.helper),o=r.options -i.css("opacity")&&(o._opacity=i.css("opacity")),i.css("opacity",o.opacity)},stop:function(t,n,r){var i=r.options -i._opacity&&e(n.helper).css("opacity",i._opacity)}}),e.ui.plugin.add("draggable","scroll",{start:function(e,t,n){n.scrollParentNotHidden||(n.scrollParentNotHidden=n.helper.scrollParent(!1)),n.scrollParentNotHidden[0]!==n.document[0]&&"HTML"!==n.scrollParentNotHidden[0].tagName&&(n.overflowOffset=n.scrollParentNotHidden.offset())},drag:function(t,n,r){var i=r.options,o=!1,s=r.scrollParentNotHidden[0],a=r.document[0] -s!==a&&"HTML"!==s.tagName?(i.axis&&"x"===i.axis||(r.overflowOffset.top+s.offsetHeight-t.pageY<i.scrollSensitivity?s.scrollTop=o=s.scrollTop+i.scrollSpeed:t.pageY-r.overflowOffset.top<i.scrollSensitivity&&(s.scrollTop=o=s.scrollTop-i.scrollSpeed)),i.axis&&"y"===i.axis||(r.overflowOffset.left+s.offsetWidth-t.pageX<i.scrollSensitivity?s.scrollLeft=o=s.scrollLeft+i.scrollSpeed:t.pageX-r.overflowOffset.left<i.scrollSensitivity&&(s.scrollLeft=o=s.scrollLeft-i.scrollSpeed))):(i.axis&&"x"===i.axis||(t.pageY-e(a).scrollTop()<i.scrollSensitivity?o=e(a).scrollTop(e(a).scrollTop()-i.scrollSpeed):e(window).height()-(t.pageY-e(a).scrollTop())<i.scrollSensitivity&&(o=e(a).scrollTop(e(a).scrollTop()+i.scrollSpeed))),i.axis&&"y"===i.axis||(t.pageX-e(a).scrollLeft()<i.scrollSensitivity?o=e(a).scrollLeft(e(a).scrollLeft()-i.scrollSpeed):e(window).width()-(t.pageX-e(a).scrollLeft())<i.scrollSensitivity&&(o=e(a).scrollLeft(e(a).scrollLeft()+i.scrollSpeed)))),!1!==o&&e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(r,t)}}),e.ui.plugin.add("draggable","snap",{start:function(t,n,r){var i=r.options -r.snapElements=[],e(i.snap.constructor!==String?i.snap.items||":data(ui-draggable)":i.snap).each(function(){var t=e(this),n=t.offset() -this!==r.element[0]&&r.snapElements.push({item:this,width:t.outerWidth(),height:t.outerHeight(),top:n.top,left:n.left})})},drag:function(t,n,r){var i,o,s,a,u,c,l,h,d,p,f=r.options,g=f.snapTolerance,m=n.offset.left,v=m+r.helperProportions.width,y=n.offset.top,b=y+r.helperProportions.height -for(d=r.snapElements.length-1;d>=0;d--)u=r.snapElements[d].left-r.margins.left,c=u+r.snapElements[d].width,l=r.snapElements[d].top-r.margins.top,h=l+r.snapElements[d].height,u-g>v||m>c+g||l-g>b||y>h+g||!e.contains(r.snapElements[d].item.ownerDocument,r.snapElements[d].item)?(r.snapElements[d].snapping&&r.options.snap.release&&r.options.snap.release.call(r.element,t,e.extend(r._uiHash(),{snapItem:r.snapElements[d].item})),r.snapElements[d].snapping=!1):("inner"!==f.snapMode&&(i=g>=Math.abs(l-b),o=g>=Math.abs(h-y),s=g>=Math.abs(u-v),a=g>=Math.abs(c-m),i&&(n.position.top=r._convertPositionTo("relative",{top:l-r.helperProportions.height,left:0}).top),o&&(n.position.top=r._convertPositionTo("relative",{top:h,left:0}).top),s&&(n.position.left=r._convertPositionTo("relative",{top:0,left:u-r.helperProportions.width}).left),a&&(n.position.left=r._convertPositionTo("relative",{top:0,left:c}).left)),p=i||o||s||a,"outer"!==f.snapMode&&(i=g>=Math.abs(l-y),o=g>=Math.abs(h-b),s=g>=Math.abs(u-m),a=g>=Math.abs(c-v),i&&(n.position.top=r._convertPositionTo("relative",{top:l,left:0}).top),o&&(n.position.top=r._convertPositionTo("relative",{top:h-r.helperProportions.height,left:0}).top),s&&(n.position.left=r._convertPositionTo("relative",{top:0,left:u}).left),a&&(n.position.left=r._convertPositionTo("relative",{top:0,left:c-r.helperProportions.width}).left)),!r.snapElements[d].snapping&&(i||o||s||a||p)&&r.options.snap.snap&&r.options.snap.snap.call(r.element,t,e.extend(r._uiHash(),{snapItem:r.snapElements[d].item})),r.snapElements[d].snapping=i||o||s||a||p)}}),e.ui.plugin.add("draggable","stack",{start:function(t,n,r){var i,o=r.options,s=e.makeArray(e(o.stack)).sort(function(t,n){return(parseInt(e(t).css("zIndex"),10)||0)-(parseInt(e(n).css("zIndex"),10)||0)}) -s.length&&(i=parseInt(e(s[0]).css("zIndex"),10)||0,e(s).each(function(t){e(this).css("zIndex",i+t)}),this.css("zIndex",i+s.length))}}),e.ui.plugin.add("draggable","zIndex",{start:function(t,n,r){var i=e(n.helper),o=r.options -i.css("zIndex")&&(o._zIndex=i.css("zIndex")),i.css("zIndex",o.zIndex)},stop:function(t,n,r){var i=r.options -i._zIndex&&e(n.helper).css("zIndex",i._zIndex)}}),e.ui.draggable,e.widget("ui.resizable",e.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(e){return parseFloat(e)||0},_isNumber:function(e){return!isNaN(parseFloat(e))},_hasScroll:function(t,n){if("hidden"===e(t).css("overflow"))return!1 -var r=n&&"left"===n?"scrollLeft":"scrollTop",i=!1 -return t[r]>0||(t[r]=1,i=t[r]>0,t[r]=0,i)},_create:function(){var t,n=this.options,r=this -this._addClass("ui-resizable"),e.extend(this,{_aspectRatio:!!n.aspectRatio,aspectRatio:n.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:n.helper||n.ghost||n.animate?n.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(e("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,t={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(t),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(t),this._proportionallyResize()),this._setupHandles(),n.autoHide&&e(this.element).on("mouseenter",function(){n.disabled||(r._removeClass("ui-resizable-autohide"),r._handles.show())}).on("mouseleave",function(){n.disabled||r.resizing||(r._addClass("ui-resizable-autohide"),r._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy() -var t,n=function(t){e(t).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()} -return this.elementIsWrapper&&(n(this.element),t=this.element,this.originalElement.css({position:t.css("position"),width:t.outerWidth(),height:t.outerHeight(),top:t.css("top"),left:t.css("left")}).insertAfter(t),t.remove()),this.originalElement.css("resize",this.originalResizeStyle),n(this.originalElement),this},_setOption:function(e,t){switch(this._super(e,t),e){case"handles":this._removeHandles(),this._setupHandles()}},_setupHandles:function(){var t,n,r,i,o,s=this.options,a=this -if(this.handles=s.handles||(e(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=e(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),r=this.handles.split(","),this.handles={},n=0;r.length>n;n++)t=e.trim(r[n]),i="ui-resizable-"+t,o=e("<div>"),this._addClass(o,"ui-resizable-handle "+i),o.css({zIndex:s.zIndex}),this.handles[t]=".ui-resizable-"+t,this.element.append(o) -this._renderAxis=function(t){var n,r,i,o -t=t||this.element -for(n in this.handles)this.handles[n].constructor===String?this.handles[n]=this.element.children(this.handles[n]).first().show():(this.handles[n].jquery||this.handles[n].nodeType)&&(this.handles[n]=e(this.handles[n]),this._on(this.handles[n],{mousedown:a._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(r=e(this.handles[n],this.element),o=/sw|ne|nw|se|n|s/.test(n)?r.outerHeight():r.outerWidth(),i=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join(""),t.css(i,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[n])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){a.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),a.axis=o&&o[1]?o[1]:"se")}),s.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(t){var n,r,i=!1 -for(n in this.handles)((r=e(this.handles[n])[0])===t.target||e.contains(r,t.target))&&(i=!0) -return!this.options.disabled&&i},_mouseStart:function(t){var n,r,i,o=this.options,s=this.element -return this.resizing=!0,this._renderProxy(),n=this._num(this.helper.css("left")),r=this._num(this.helper.css("top")),o.containment&&(n+=e(o.containment).scrollLeft()||0,r+=e(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:n,top:r},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:s.width(),height:s.height()},this.originalSize=this._helper?{width:s.outerWidth(),height:s.outerHeight()}:{width:s.width(),height:s.height()},this.sizeDiff={width:s.outerWidth()-s.width(),height:s.outerHeight()-s.height()},this.originalPosition={left:n,top:r},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,i=e(".ui-resizable-"+this.axis).css("cursor"),e("body").css("cursor","auto"===i?this.axis+"-resize":i),this._addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var n,r,i=this.originalMousePosition,o=this.axis,s=t.pageX-i.left||0,a=t.pageY-i.top||0,u=this._change[o] -return this._updatePrevProperties(),!!u&&(n=u.apply(this,[t,s,a]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(n=this._updateRatio(n,t)),n=this._respectSize(n,t),this._updateCache(n),this._propagate("resize",t),r=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),e.isEmptyObject(r)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges()),!1)},_mouseStop:function(t){this.resizing=!1 -var n,r,i,o,s,a,u,c=this.options,l=this -return this._helper&&(n=this._proportionallyResizeElements,r=n.length&&/textarea/i.test(n[0].nodeName),i=r&&this._hasScroll(n[0],"left")?0:l.sizeDiff.height,o=r?0:l.sizeDiff.width,s={width:l.helper.width()-o,height:l.helper.height()-i},a=parseFloat(l.element.css("left"))+(l.position.left-l.originalPosition.left)||null,u=parseFloat(l.element.css("top"))+(l.position.top-l.originalPosition.top)||null,c.animate||this.element.css(e.extend(s,{top:u,left:a})),l.helper.height(l.size.height),l.helper.width(l.size.width),this._helper&&!c.animate&&this._proportionallyResize()),e("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var e={} -return this.position.top!==this.prevPosition.top&&(e.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(e.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(e.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(e.height=this.size.height+"px"),this.helper.css(e),e},_updateVirtualBoundaries:function(e){var t,n,r,i,o,s=this.options -o={minWidth:this._isNumber(s.minWidth)?s.minWidth:0,maxWidth:this._isNumber(s.maxWidth)?s.maxWidth:1/0,minHeight:this._isNumber(s.minHeight)?s.minHeight:0,maxHeight:this._isNumber(s.maxHeight)?s.maxHeight:1/0},(this._aspectRatio||e)&&(t=o.minHeight*this.aspectRatio,r=o.minWidth/this.aspectRatio,n=o.maxHeight*this.aspectRatio,i=o.maxWidth/this.aspectRatio,t>o.minWidth&&(o.minWidth=t),r>o.minHeight&&(o.minHeight=r),o.maxWidth>n&&(o.maxWidth=n),o.maxHeight>i&&(o.maxHeight=i)),this._vBoundaries=o},_updateCache:function(e){this.offset=this.helper.offset(),this._isNumber(e.left)&&(this.position.left=e.left),this._isNumber(e.top)&&(this.position.top=e.top),this._isNumber(e.height)&&(this.size.height=e.height),this._isNumber(e.width)&&(this.size.width=e.width)},_updateRatio:function(e){var t=this.position,n=this.size,r=this.axis -return this._isNumber(e.height)?e.width=e.height*this.aspectRatio:this._isNumber(e.width)&&(e.height=e.width/this.aspectRatio),"sw"===r&&(e.left=t.left+(n.width-e.width),e.top=null),"nw"===r&&(e.top=t.top+(n.height-e.height),e.left=t.left+(n.width-e.width)),e},_respectSize:function(e){var t=this._vBoundaries,n=this.axis,r=this._isNumber(e.width)&&t.maxWidth&&t.maxWidth<e.width,i=this._isNumber(e.height)&&t.maxHeight&&t.maxHeight<e.height,o=this._isNumber(e.width)&&t.minWidth&&t.minWidth>e.width,s=this._isNumber(e.height)&&t.minHeight&&t.minHeight>e.height,a=this.originalPosition.left+this.originalSize.width,u=this.originalPosition.top+this.originalSize.height,c=/sw|nw|w/.test(n),l=/nw|ne|n/.test(n) -return o&&(e.width=t.minWidth),s&&(e.height=t.minHeight),r&&(e.width=t.maxWidth),i&&(e.height=t.maxHeight),o&&c&&(e.left=a-t.minWidth),r&&c&&(e.left=a-t.maxWidth),s&&l&&(e.top=u-t.minHeight),i&&l&&(e.top=u-t.maxHeight),e.width||e.height||e.left||!e.top?e.width||e.height||e.top||!e.left||(e.left=null):e.top=null,e},_getPaddingPlusBorderDimensions:function(e){for(var t=0,n=[],r=[e.css("borderTopWidth"),e.css("borderRightWidth"),e.css("borderBottomWidth"),e.css("borderLeftWidth")],i=[e.css("paddingTop"),e.css("paddingRight"),e.css("paddingBottom"),e.css("paddingLeft")];4>t;t++)n[t]=parseFloat(r[t])||0,n[t]+=parseFloat(i[t])||0 -return{height:n[0]+n[2],width:n[1]+n[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var e,t=0,n=this.helper||this.element;this._proportionallyResizeElements.length>t;t++)e=this._proportionallyResizeElements[t],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(e)),e.css({height:n.height()-this.outerDimensions.height||0,width:n.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,n=this.options -this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||e("<div style='overflow:hidden;'></div>"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++n.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(e,t){return{width:this.originalSize.width+t}},w:function(e,t){var n=this.originalSize -return{left:this.originalPosition.left+t,width:n.width-t}},n:function(e,t,n){var r=this.originalSize -return{top:this.originalPosition.top+n,height:r.height-n}},s:function(e,t,n){return{height:this.originalSize.height+n}},se:function(t,n,r){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,n,r]))},sw:function(t,n,r){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,n,r]))},ne:function(t,n,r){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,n,r]))},nw:function(t,n,r){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,n,r]))}},_propagate:function(t,n){e.ui.plugin.call(this,t,[n,this.ui()]),"resize"!==t&&this._trigger(t,n,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),e.ui.plugin.add("resizable","animate",{stop:function(t){var n=e(this).resizable("instance"),r=n.options,i=n._proportionallyResizeElements,o=i.length&&/textarea/i.test(i[0].nodeName),s=o&&n._hasScroll(i[0],"left")?0:n.sizeDiff.height,a=o?0:n.sizeDiff.width,u={width:n.size.width-a,height:n.size.height-s},c=parseFloat(n.element.css("left"))+(n.position.left-n.originalPosition.left)||null,l=parseFloat(n.element.css("top"))+(n.position.top-n.originalPosition.top)||null -n.element.animate(e.extend(u,l&&c?{top:l,left:c}:{}),{duration:r.animateDuration,easing:r.animateEasing,step:function(){var r={width:parseFloat(n.element.css("width")),height:parseFloat(n.element.css("height")),top:parseFloat(n.element.css("top")),left:parseFloat(n.element.css("left"))} -i&&i.length&&e(i[0]).css({width:r.width,height:r.height}),n._updateCache(r),n._propagate("resize",t)}})}}),e.ui.plugin.add("resizable","containment",{start:function(){var t,n,r,i,o,s,a,u=e(this).resizable("instance"),c=u.options,l=u.element,h=c.containment,d=h instanceof e?h.get(0):/parent/.test(h)?l.parent().get(0):h -d&&(u.containerElement=e(d),/document/.test(h)||h===document?(u.containerOffset={left:0,top:0},u.containerPosition={left:0,top:0},u.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}):(t=e(d),n=[],e(["Top","Right","Left","Bottom"]).each(function(e,r){n[e]=u._num(t.css("padding"+r))}),u.containerOffset=t.offset(),u.containerPosition=t.position(),u.containerSize={height:t.innerHeight()-n[3],width:t.innerWidth()-n[1]},r=u.containerOffset,i=u.containerSize.height,o=u.containerSize.width,s=u._hasScroll(d,"left")?d.scrollWidth:o,a=u._hasScroll(d)?d.scrollHeight:i,u.parentData={element:d,left:r.left,top:r.top,width:s,height:a}))},resize:function(t){var n,r,i,o,s=e(this).resizable("instance"),a=s.options,u=s.containerOffset,c=s.position,l=s._aspectRatio||t.shiftKey,h={top:0,left:0},d=s.containerElement,p=!0 -d[0]!==document&&/static/.test(d.css("position"))&&(h=u),c.left<(s._helper?u.left:0)&&(s.size.width=s.size.width+(s._helper?s.position.left-u.left:s.position.left-h.left),l&&(s.size.height=s.size.width/s.aspectRatio,p=!1),s.position.left=a.helper?u.left:0),c.top<(s._helper?u.top:0)&&(s.size.height=s.size.height+(s._helper?s.position.top-u.top:s.position.top),l&&(s.size.width=s.size.height*s.aspectRatio,p=!1),s.position.top=s._helper?u.top:0),i=s.containerElement.get(0)===s.element.parent().get(0),o=/relative|absolute/.test(s.containerElement.css("position")),i&&o?(s.offset.left=s.parentData.left+s.position.left,s.offset.top=s.parentData.top+s.position.top):(s.offset.left=s.element.offset().left,s.offset.top=s.element.offset().top),n=Math.abs(s.sizeDiff.width+(s._helper?s.offset.left-h.left:s.offset.left-u.left)),r=Math.abs(s.sizeDiff.height+(s._helper?s.offset.top-h.top:s.offset.top-u.top)),n+s.size.width>=s.parentData.width&&(s.size.width=s.parentData.width-n,l&&(s.size.height=s.size.width/s.aspectRatio,p=!1)),r+s.size.height>=s.parentData.height&&(s.size.height=s.parentData.height-r,l&&(s.size.width=s.size.height*s.aspectRatio,p=!1)),p||(s.position.left=s.prevPosition.left,s.position.top=s.prevPosition.top,s.size.width=s.prevSize.width,s.size.height=s.prevSize.height)},stop:function(){var t=e(this).resizable("instance"),n=t.options,r=t.containerOffset,i=t.containerPosition,o=t.containerElement,s=e(t.helper),a=s.offset(),u=s.outerWidth()-t.sizeDiff.width,c=s.outerHeight()-t.sizeDiff.height -t._helper&&!n.animate&&/relative/.test(o.css("position"))&&e(this).css({left:a.left-i.left-r.left,width:u,height:c}),t._helper&&!n.animate&&/static/.test(o.css("position"))&&e(this).css({left:a.left-i.left-r.left,width:u,height:c})}}),e.ui.plugin.add("resizable","alsoResize",{start:function(){var t=e(this).resizable("instance"),n=t.options -e(n.alsoResize).each(function(){var t=e(this) -t.data("ui-resizable-alsoresize",{width:parseFloat(t.width()),height:parseFloat(t.height()),left:parseFloat(t.css("left")),top:parseFloat(t.css("top"))})})},resize:function(t,n){var r=e(this).resizable("instance"),i=r.options,o=r.originalSize,s=r.originalPosition,a={height:r.size.height-o.height||0,width:r.size.width-o.width||0,top:r.position.top-s.top||0,left:r.position.left-s.left||0} -e(i.alsoResize).each(function(){var t=e(this),r=e(this).data("ui-resizable-alsoresize"),i={},o=t.parents(n.originalElement[0]).length?["width","height"]:["width","height","top","left"] -e.each(o,function(e,t){var n=(r[t]||0)+(a[t]||0) -n&&n>=0&&(i[t]=n||null)}),t.css(i)})},stop:function(){e(this).removeData("ui-resizable-alsoresize")}}),e.ui.plugin.add("resizable","ghost",{start:function(){var t=e(this).resizable("instance"),n=t.size -t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:n.height,width:n.width,margin:0,left:0,top:0}),t._addClass(t.ghost,"ui-resizable-ghost"),!1!==e.uiBackCompat&&"string"==typeof t.options.ghost&&t.ghost.addClass(this.options.ghost),t.ghost.appendTo(t.helper)},resize:function(){var t=e(this).resizable("instance") -t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=e(this).resizable("instance") -t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),e.ui.plugin.add("resizable","grid",{resize:function(){var t,n=e(this).resizable("instance"),r=n.options,i=n.size,o=n.originalSize,s=n.originalPosition,a=n.axis,u="number"==typeof r.grid?[r.grid,r.grid]:r.grid,c=u[0]||1,l=u[1]||1,h=Math.round((i.width-o.width)/c)*c,d=Math.round((i.height-o.height)/l)*l,p=o.width+h,f=o.height+d,g=r.maxWidth&&p>r.maxWidth,m=r.maxHeight&&f>r.maxHeight,v=r.minWidth&&r.minWidth>p,y=r.minHeight&&r.minHeight>f -r.grid=u,v&&(p+=c),y&&(f+=l),g&&(p-=c),m&&(f-=l),/^(se|s|e)$/.test(a)?(n.size.width=p,n.size.height=f):/^(ne)$/.test(a)?(n.size.width=p,n.size.height=f,n.position.top=s.top-d):/^(sw)$/.test(a)?(n.size.width=p,n.size.height=f,n.position.left=s.left-h):((0>=f-l||0>=p-c)&&(t=n._getPaddingPlusBorderDimensions(this)),f-l>0?(n.size.height=f,n.position.top=s.top-d):(f=l-t.height,n.size.height=f,n.position.top=s.top+o.height-f),p-c>0?(n.size.width=p,n.position.left=s.left-h):(p=c-t.width,n.size.width=p,n.position.left=s.left+o.width-p))}}),e.ui.resizable}),function(e){"use strict" -"function"==typeof define&&define.amd?define(["jquery"],e):"undefined"!=typeof module&&module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(e,t){"use strict" -if(!e.jstree){var n=0,r=!1,i=!1,o=!1,s=[],a=e("script:last").attr("src"),u=window.document,c=window.setImmediate,l=window.Promise -!c&&l&&(c=function(e,t){l.resolve(t).then(e)}),e.jstree={version:"3.3.9",defaults:{plugins:[]},plugins:{},path:a&&-1!==a.indexOf("/")?a.replace(/\/[^\/]+$/,""):"",idregex:/[\\:&!^|()\[\]<>@*'+~#";.,=\- \/${}%?`]/g,root:"#"},e.jstree.create=function(t,r){var i=new e.jstree.core(++n),o=r -return r=e.extend(!0,{},e.jstree.defaults,r),o&&o.plugins&&(r.plugins=o.plugins),e.each(r.plugins,function(e,t){"core"!==e&&(i=i.plugin(t,r[t]))}),e(t).data("jstree",i),i.init(t,r),i},e.jstree.destroy=function(){e(".jstree:jstree").jstree("destroy"),e(u).off(".jstree")},e.jstree.core=function(e){this._id=e,this._cnt=0,this._wrk=null,this._data={core:{themes:{name:!1,dots:!1,icons:!1,ellipsis:!1},selected:[],last_error:{},working:!1,worker_queue:[],focused:null}}},e.jstree.reference=function(t){var n=null,r=null -if(!t||!t.id||t.tagName&&t.nodeType||(t=t.id),!r||!r.length)try{r=e(t)}catch(e){}if(!r||!r.length)try{r=e("#"+t.replace(e.jstree.idregex,"\\$&"))}catch(e){}return r&&r.length&&(r=r.closest(".jstree")).length&&(r=r.data("jstree"))?n=r:e(".jstree").each(function(){var r=e(this).data("jstree") -return r&&r._model.data[t]?(n=r,!1):void 0}),n},e.fn.jstree=function(n){var r="string"==typeof n,i=Array.prototype.slice.call(arguments,1),o=null -return!(!0===n&&!this.length)&&(this.each(function(){var s=e.jstree.reference(this),a=r&&s?s[n]:null -return o=r&&a?a.apply(s,i):null,s||r||n!==t&&!e.isPlainObject(n)||e.jstree.create(this,n),(s&&!r||!0===n)&&(o=s||!1),(null===o||o===t)&&void 0}),null!==o&&o!==t?o:this)},e.expr.pseudos.jstree=e.expr.createPseudo(function(n){return function(n){return e(n).hasClass("jstree")&&e(n).data("jstree")!==t}}),e.jstree.defaults.core={data:!1,strings:!1,check_callback:!1,error:e.noop,animation:200,multiple:!0,themes:{name:!1,url:!1,dir:!1,dots:!0,icons:!0,ellipsis:!1,stripes:!1,variant:!1,responsive:!1},expand_selected_onload:!0,worker:!0,force_text:!1,dblclick_toggle:!0,loaded_state:!1,restore_focus:!0,keyboard:{"ctrl-space":function(t){t.type="click",e(t.currentTarget).trigger(t)},enter:function(t){t.type="click",e(t.currentTarget).trigger(t)},left:function(t){if(t.preventDefault(),this.is_open(t.currentTarget))this.close_node(t.currentTarget) -else{var n=this.get_parent(t.currentTarget) -n&&n.id!==e.jstree.root&&this.get_node(n,!0).children(".jstree-anchor").focus()}},up:function(e){e.preventDefault() -var t=this.get_prev_dom(e.currentTarget) -t&&t.length&&t.children(".jstree-anchor").focus()},right:function(t){if(t.preventDefault(),this.is_closed(t.currentTarget))this.open_node(t.currentTarget,function(e){this.get_node(e,!0).children(".jstree-anchor").focus()}) -else if(this.is_open(t.currentTarget)){var n=this.get_node(t.currentTarget,!0).children(".jstree-children")[0] -n&&e(this._firstChild(n)).children(".jstree-anchor").focus()}},down:function(e){e.preventDefault() -var t=this.get_next_dom(e.currentTarget) -t&&t.length&&t.children(".jstree-anchor").focus()},"*":function(e){this.open_all()},home:function(t){t.preventDefault() -var n=this._firstChild(this.get_container_ul()[0]) -n&&e(n).children(".jstree-anchor").filter(":visible").focus()},end:function(e){e.preventDefault(),this.element.find(".jstree-anchor").filter(":visible").last().focus()},f2:function(e){e.preventDefault(),this.edit(e.currentTarget)}}},e.jstree.core.prototype={plugin:function(t,n){var r=e.jstree.plugins[t] -return r?(this._data[t]={},r.prototype=this,new r(n,this)):this},init:function(t,n){this._model={data:{},changed:[],force_full_redraw:!1,redraw_timeout:!1,default_state:{loaded:!0,opened:!1,selected:!1,disabled:!1}},this._model.data[e.jstree.root]={id:e.jstree.root,parent:null,parents:[],children:[],children_d:[],state:{loaded:!1}},this.element=e(t).addClass("jstree jstree-"+this._id),this.settings=n,this._data.core.ready=!1,this._data.core.loaded=!1,this._data.core.rtl="rtl"===this.element.css("direction"),this.element[this._data.core.rtl?"addClass":"removeClass"]("jstree-rtl"),this.element.attr("role","tree"),this.settings.core.multiple&&this.element.attr("aria-multiselectable",!0),this.element.attr("tabindex")||this.element.attr("tabindex","0"),this.bind(),this.trigger("init"),this._data.core.original_container_html=this.element.find(" > ul > li").clone(!0),this._data.core.original_container_html.find("li").addBack().contents().filter(function(){return 3===this.nodeType&&(!this.nodeValue||/^\s+$/.test(this.nodeValue))}).remove(),this.element.html("<ul class='jstree-container-ul jstree-children' role='group'><li id='j"+this._id+"_loading' class='jstree-initial-node jstree-loading jstree-leaf jstree-last' role='treeitem'><i class='jstree-icon jstree-ocl'></i><a class='jstree-anchor' href='#'><i class='jstree-icon jstree-themeicon-hidden'></i>"+this.get_string("Loading ...")+"</a></li></ul>"),this.element.attr("aria-activedescendant","j"+this._id+"_loading"),this._data.core.li_height=this.get_container_ul().children("li").first().outerHeight()||24,this._data.core.node=this._create_prototype_node(),this.trigger("loading"),this.load_node(e.jstree.root)},destroy:function(e){if(this.trigger("destroy"),this._wrk)try{window.URL.revokeObjectURL(this._wrk),this._wrk=null}catch(e){}e||this.element.empty(),this.teardown()},_create_prototype_node:function(){var e,t,n=u.createElement("LI") -return n.setAttribute("role","treeitem"),e=u.createElement("I"),e.className="jstree-icon jstree-ocl",e.setAttribute("role","presentation"),n.appendChild(e),e=u.createElement("A"),e.className="jstree-anchor",e.setAttribute("href","#"),e.setAttribute("tabindex","-1"),t=u.createElement("I"),t.className="jstree-icon jstree-themeicon",t.setAttribute("role","presentation"),e.appendChild(t),n.appendChild(e),e=t=null,n},_kbevent_to_func:function(e){var t={8:"Backspace",9:"Tab",13:"Enter",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock",16:"Shift",17:"Ctrl",18:"Alt",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*",173:"-"},n=[] -if(e.ctrlKey&&n.push("ctrl"),e.altKey&&n.push("alt"),e.shiftKey&&n.push("shift"),n.push(t[e.which]||e.which),"shift-shift"===(n=n.sort().join("-").toLowerCase())||"ctrl-ctrl"===n||"alt-alt"===n)return null -var r,i,o=this.settings.core.keyboard -for(r in o)if(o.hasOwnProperty(r)&&(i=r,"-"!==i&&"+"!==i&&(i=i.replace("--","-MINUS").replace("+-","-MINUS").replace("++","-PLUS").replace("-+","-PLUS"),i=i.split(/-|\+/).sort().join("-").replace("MINUS","-").replace("PLUS","+").toLowerCase()),i===n))return o[r] -return null},teardown:function(){this.unbind(),this.element.removeClass("jstree").removeData("jstree").find("[class^='jstree']").addBack().attr("class",function(){return this.className.replace(/jstree[^ ]*|$/gi,"")}),this.element=null},bind:function(){var t="",n=null,r=0 -this.element.on("dblclick.jstree",function(e){if(e.target.tagName&&"input"===e.target.tagName.toLowerCase())return!0 -if(u.selection&&u.selection.empty)u.selection.empty() -else if(window.getSelection){var t=window.getSelection() -try{t.removeAllRanges(),t.collapse()}catch(e){}}}).on("mousedown.jstree",e.proxy(function(e){e.target===this.element[0]&&(e.preventDefault(),r=+new Date)},this)).on("mousedown.jstree",".jstree-ocl",function(e){e.preventDefault()}).on("click.jstree",".jstree-ocl",e.proxy(function(e){this.toggle_node(e.target)},this)).on("dblclick.jstree",".jstree-anchor",e.proxy(function(e){return!(!e.target.tagName||"input"!==e.target.tagName.toLowerCase())||void(this.settings.core.dblclick_toggle&&this.toggle_node(e.target))},this)).on("click.jstree",".jstree-anchor",e.proxy(function(t){t.preventDefault(),t.currentTarget!==u.activeElement&&e(t.currentTarget).focus(),this.activate_node(t.currentTarget,t)},this)).on("keydown.jstree",".jstree-anchor",e.proxy(function(e){if(e.target.tagName&&"input"===e.target.tagName.toLowerCase())return!0 -this._data.core.rtl&&(37===e.which?e.which=39:39===e.which&&(e.which=37)) -var t=this._kbevent_to_func(e) -if(t){var n=t.call(this,e) -if(!1===n||!0===n)return n}},this)).on("load_node.jstree",e.proxy(function(t,n){n.status&&(n.node.id!==e.jstree.root||this._data.core.loaded||(this._data.core.loaded=!0,this._firstChild(this.get_container_ul()[0])&&this.element.attr("aria-activedescendant",this._firstChild(this.get_container_ul()[0]).id),this.trigger("loaded")),this._data.core.ready||setTimeout(e.proxy(function(){if(this.element&&!this.get_container_ul().find(".jstree-loading").length){if(this._data.core.ready=!0,this._data.core.selected.length){if(this.settings.core.expand_selected_onload){var t,n,r=[] -for(t=0,n=this._data.core.selected.length;n>t;t++)r=r.concat(this._model.data[this._data.core.selected[t]].parents) -for(r=e.vakata.array_unique(r),t=0,n=r.length;n>t;t++)this.open_node(r[t],!1,0)}this.trigger("changed",{action:"ready",selected:this._data.core.selected})}this.trigger("ready")}},this),0))},this)).on("keypress.jstree",e.proxy(function(r){if(r.target.tagName&&"input"===r.target.tagName.toLowerCase())return!0 -n&&clearTimeout(n),n=setTimeout(function(){t=""},500) -var i=String.fromCharCode(r.which).toLowerCase(),o=this.element.find(".jstree-anchor").filter(":visible"),s=o.index(u.activeElement)||0,a=!1 -if(t+=i,t.length>1){if(o.slice(s).each(e.proxy(function(n,r){return 0===e(r).text().toLowerCase().indexOf(t)?(e(r).focus(),a=!0,!1):void 0},this)),a)return -if(o.slice(0,s).each(e.proxy(function(n,r){return 0===e(r).text().toLowerCase().indexOf(t)?(e(r).focus(),a=!0,!1):void 0},this)),a)return}if(new RegExp("^"+i.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")+"+$").test(t)){if(o.slice(s+1).each(e.proxy(function(t,n){return e(n).text().toLowerCase().charAt(0)===i?(e(n).focus(),a=!0,!1):void 0},this)),a)return -if(o.slice(0,s+1).each(e.proxy(function(t,n){return e(n).text().toLowerCase().charAt(0)===i?(e(n).focus(),a=!0,!1):void 0},this)),a)return}},this)).on("init.jstree",e.proxy(function(){var e=this.settings.core.themes -this._data.core.themes.dots=e.dots,this._data.core.themes.stripes=e.stripes,this._data.core.themes.icons=e.icons,this._data.core.themes.ellipsis=e.ellipsis,this.set_theme(e.name||"default",e.url),this.set_theme_variant(e.variant)},this)).on("loading.jstree",e.proxy(function(){this[this._data.core.themes.dots?"show_dots":"hide_dots"](),this[this._data.core.themes.icons?"show_icons":"hide_icons"](),this[this._data.core.themes.stripes?"show_stripes":"hide_stripes"](),this[this._data.core.themes.ellipsis?"show_ellipsis":"hide_ellipsis"]()},this)).on("blur.jstree",".jstree-anchor",e.proxy(function(t){this._data.core.focused=null,e(t.currentTarget).filter(".jstree-hovered").trigger("mouseleave"),this.element.attr("tabindex","0")},this)).on("focus.jstree",".jstree-anchor",e.proxy(function(t){var n=this.get_node(t.currentTarget) -n&&n.id&&(this._data.core.focused=n.id),this.element.find(".jstree-hovered").not(t.currentTarget).trigger("mouseleave"),e(t.currentTarget).trigger("mouseenter"),this.element.attr("tabindex","-1")},this)).on("focus.jstree",e.proxy(function(){if(+new Date-r>500&&!this._data.core.focused&&this.settings.core.restore_focus){r=0 -var e=this.get_node(this.element.attr("aria-activedescendant"),!0) -e&&e.find("> .jstree-anchor").focus()}},this)).on("mouseenter.jstree",".jstree-anchor",e.proxy(function(e){this.hover_node(e.currentTarget)},this)).on("mouseleave.jstree",".jstree-anchor",e.proxy(function(e){this.dehover_node(e.currentTarget)},this))},unbind:function(){this.element.off(".jstree"),e(u).off(".jstree-"+this._id)},trigger:function(e,t){t||(t={}),t.instance=this,this.element.triggerHandler(e.replace(".jstree","")+".jstree",t)},get_container:function(){return this.element},get_container_ul:function(){return this.element.children(".jstree-children").first()},get_string:function(t){var n=this.settings.core.strings -return e.isFunction(n)?n.call(this,t):n&&n[t]?n[t]:t},_firstChild:function(e){for(e=e?e.firstChild:null;null!==e&&1!==e.nodeType;)e=e.nextSibling -return e},_nextSibling:function(e){for(e=e?e.nextSibling:null;null!==e&&1!==e.nodeType;)e=e.nextSibling -return e},_previousSibling:function(e){for(e=e?e.previousSibling:null;null!==e&&1!==e.nodeType;)e=e.previousSibling -return e},get_node:function(t,n){t&&t.id&&(t=t.id),t instanceof e&&t.length&&t[0].id&&(t=t[0].id) -var r -try{if(this._model.data[t])t=this._model.data[t] -else if("string"==typeof t&&this._model.data[t.replace(/^#/,"")])t=this._model.data[t.replace(/^#/,"")] -else if("string"==typeof t&&(r=e("#"+t.replace(e.jstree.idregex,"\\$&"),this.element)).length&&this._model.data[r.closest(".jstree-node").attr("id")])t=this._model.data[r.closest(".jstree-node").attr("id")] -else if((r=this.element.find(t)).length&&this._model.data[r.closest(".jstree-node").attr("id")])t=this._model.data[r.closest(".jstree-node").attr("id")] -else{if(!(r=this.element.find(t)).length||!r.hasClass("jstree"))return!1 -t=this._model.data[e.jstree.root]}return n&&(t=t.id===e.jstree.root?this.element:e("#"+t.id.replace(e.jstree.idregex,"\\$&"),this.element)),t}catch(e){return!1}},get_path:function(t,n,r){if(!(t=t.parents?t:this.get_node(t))||t.id===e.jstree.root||!t.parents)return!1 -var i,o,s=[] -for(s.push(r?t.id:t.text),i=0,o=t.parents.length;o>i;i++)s.push(r?t.parents[i]:this.get_text(t.parents[i])) -return s=s.reverse().slice(1),n?s.join(n):s},get_next_dom:function(t,n){var r -if(t=this.get_node(t,!0),t[0]===this.element[0]){for(r=this._firstChild(this.get_container_ul()[0]);r&&0===r.offsetHeight;)r=this._nextSibling(r) -return!!r&&e(r)}if(!t||!t.length)return!1 -if(n){r=t[0] -do{r=this._nextSibling(r)}while(r&&0===r.offsetHeight) -return!!r&&e(r)}if(t.hasClass("jstree-open")){for(r=this._firstChild(t.children(".jstree-children")[0]);r&&0===r.offsetHeight;)r=this._nextSibling(r) -if(null!==r)return e(r)}r=t[0] -do{r=this._nextSibling(r)}while(r&&0===r.offsetHeight) -return null!==r?e(r):t.parentsUntil(".jstree",".jstree-node").nextAll(".jstree-node:visible").first()},get_prev_dom:function(t,n){var r -if(t=this.get_node(t,!0),t[0]===this.element[0]){for(r=this.get_container_ul()[0].lastChild;r&&0===r.offsetHeight;)r=this._previousSibling(r) -return!!r&&e(r)}if(!t||!t.length)return!1 -if(n){r=t[0] -do{r=this._previousSibling(r)}while(r&&0===r.offsetHeight) -return!!r&&e(r)}r=t[0] -do{r=this._previousSibling(r)}while(r&&0===r.offsetHeight) -if(null!==r){for(t=e(r);t.hasClass("jstree-open");)t=t.children(".jstree-children").first().children(".jstree-node:visible:last") -return t}return!(!(r=t[0].parentNode.parentNode)||!r.className||-1===r.className.indexOf("jstree-node"))&&e(r)},get_parent:function(t){return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&t.parent},get_children_dom:function(e){return e=this.get_node(e,!0),e[0]===this.element[0]?this.get_container_ul().children(".jstree-node"):!(!e||!e.length)&&e.children(".jstree-children").children(".jstree-node")},is_parent:function(e){return(e=this.get_node(e))&&(!1===e.state.loaded||e.children.length>0)},is_loaded:function(e){return(e=this.get_node(e))&&e.state.loaded},is_loading:function(e){return(e=this.get_node(e))&&e.state&&e.state.loading},is_open:function(e){return(e=this.get_node(e))&&e.state.opened},is_closed:function(e){return(e=this.get_node(e))&&this.is_parent(e)&&!e.state.opened},is_leaf:function(e){return!this.is_parent(e)},load_node:function(t,n){var r,i,o,s,a -if(e.isArray(t))return this._load_nodes(t.slice(),n),!0 -if(!(t=this.get_node(t)))return n&&n.call(this,t,!1),!1 -if(t.state.loaded){for(t.state.loaded=!1,o=0,s=t.parents.length;s>o;o++)this._model.data[t.parents[o]].children_d=e.vakata.array_filter(this._model.data[t.parents[o]].children_d,function(n){return-1===e.inArray(n,t.children_d)}) -for(r=0,i=t.children_d.length;i>r;r++)this._model.data[t.children_d[r]].state.selected&&(a=!0),delete this._model.data[t.children_d[r]] -a&&(this._data.core.selected=e.vakata.array_filter(this._data.core.selected,function(n){return-1===e.inArray(n,t.children_d)})),t.children=[],t.children_d=[],a&&this.trigger("changed",{action:"load_node",node:t,selected:this._data.core.selected})}return t.state.failed=!1,t.state.loading=!0,this.get_node(t,!0).addClass("jstree-loading").attr("aria-busy",!0),this._load_node(t,e.proxy(function(e){t=this._model.data[t.id],t.state.loading=!1,t.state.loaded=e,t.state.failed=!t.state.loaded -var r=this.get_node(t,!0),i=0,o=0,s=this._model.data,a=!1 -for(i=0,o=t.children.length;o>i;i++)if(s[t.children[i]]&&!s[t.children[i]].state.hidden){a=!0 -break}t.state.loaded&&r&&r.length&&(r.removeClass("jstree-closed jstree-open jstree-leaf"),a?"#"!==t.id&&r.addClass(t.state.opened?"jstree-open":"jstree-closed"):r.addClass("jstree-leaf")),r.removeClass("jstree-loading").attr("aria-busy",!1),this.trigger("load_node",{node:t,status:e}),n&&n.call(this,t,e)},this)),!0},_load_nodes:function(e,t,n,r){var i,o,s=!0,a=function(){this._load_nodes(e,t,!0)},u=this._model.data,c=[] -for(i=0,o=e.length;o>i;i++)u[e[i]]&&(!u[e[i]].state.loaded&&!u[e[i]].state.failed||!n&&r)&&(this.is_loading(e[i])||this.load_node(e[i],a),s=!1) -if(s){for(i=0,o=e.length;o>i;i++)u[e[i]]&&u[e[i]].state.loaded&&c.push(e[i]) -t&&!t.done&&(t.call(this,c),t.done=!0)}},load_all:function(t,n){if(t||(t=e.jstree.root),!(t=this.get_node(t)))return!1 -var r,i,o=[],s=this._model.data,a=s[t.id].children_d -for(t.state&&!t.state.loaded&&o.push(t.id),r=0,i=a.length;i>r;r++)s[a[r]]&&s[a[r]].state&&!s[a[r]].state.loaded&&o.push(a[r]) -o.length?this._load_nodes(o,function(){this.load_all(t,n)}):(n&&n.call(this,t),this.trigger("load_all",{node:t}))},_load_node:function(t,n){var r,i=this.settings.core.data,o=function(){return 3!==this.nodeType&&8!==this.nodeType} -return i?e.isFunction(i)?i.call(this,t,e.proxy(function(r){!1===r?n.call(this,!1):this["string"==typeof r?"_append_html_data":"_append_json_data"](t,"string"==typeof r?e(e.parseHTML(r)).filter(o):r,function(e){n.call(this,e)})},this)):"object"==typeof i?i.url?(i=e.extend(!0,{},i),e.isFunction(i.url)&&(i.url=i.url.call(this,t)),e.isFunction(i.data)&&(i.data=i.data.call(this,t)),e.ajax(i).done(e.proxy(function(r,i,s){var a=s.getResponseHeader("Content-Type") -return a&&-1!==a.indexOf("json")||"object"==typeof r?this._append_json_data(t,r,function(e){n.call(this,e)}):a&&-1!==a.indexOf("html")||"string"==typeof r?this._append_html_data(t,e(e.parseHTML(r)).filter(o),function(e){n.call(this,e)}):(this._data.core.last_error={error:"ajax",plugin:"core",id:"core_04",reason:"Could not load node",data:JSON.stringify({id:t.id,xhr:s})},this.settings.core.error.call(this,this._data.core.last_error),n.call(this,!1))},this)).fail(e.proxy(function(e){this._data.core.last_error={error:"ajax",plugin:"core",id:"core_04",reason:"Could not load node",data:JSON.stringify({id:t.id,xhr:e})},n.call(this,!1),this.settings.core.error.call(this,this._data.core.last_error)},this))):(r=e.isArray(i)?e.extend(!0,[],i):e.isPlainObject(i)?e.extend(!0,{},i):i,t.id===e.jstree.root?this._append_json_data(t,r,function(e){n.call(this,e)}):(this._data.core.last_error={error:"nodata",plugin:"core",id:"core_05",reason:"Could not load node",data:JSON.stringify({id:t.id})},this.settings.core.error.call(this,this._data.core.last_error),n.call(this,!1))):"string"==typeof i?t.id===e.jstree.root?this._append_html_data(t,e(e.parseHTML(i)).filter(o),function(e){n.call(this,e)}):(this._data.core.last_error={error:"nodata",plugin:"core",id:"core_06",reason:"Could not load node",data:JSON.stringify({id:t.id})},this.settings.core.error.call(this,this._data.core.last_error),n.call(this,!1)):n.call(this,!1):t.id===e.jstree.root?this._append_html_data(t,this._data.core.original_container_html.clone(!0),function(e){n.call(this,e)}):n.call(this,!1)},_node_changed:function(t){(t=this.get_node(t))&&-1===e.inArray(t.id,this._model.changed)&&this._model.changed.push(t.id)},_append_html_data:function(t,n,r){t=this.get_node(t),t.children=[],t.children_d=[] -var i,o,s,a=n.is("ul")?n.children():n,u=t.id,c=[],l=[],h=this._model.data,d=h[u],p=this._data.core.selected.length -for(a.each(e.proxy(function(t,n){(i=this._parse_model_from_html(e(n),u,d.parents.concat()))&&(c.push(i),l.push(i),h[i].children_d.length&&(l=l.concat(h[i].children_d)))},this)),d.children=c,d.children_d=l,o=0,s=d.parents.length;s>o;o++)h[d.parents[o]].children_d=h[d.parents[o]].children_d.concat(l) -this.trigger("model",{nodes:l,parent:u}),u!==e.jstree.root?(this._node_changed(u),this.redraw()):(this.get_container_ul().children(".jstree-initial-node").remove(),this.redraw(!0)),this._data.core.selected.length!==p&&this.trigger("changed",{action:"model",selected:this._data.core.selected}),r.call(this,!0)},_append_json_data:function(t,n,r,i){if(null!==this.element){t=this.get_node(t),t.children=[],t.children_d=[],n.d&&"string"==typeof(n=n.d)&&(n=JSON.parse(n)),e.isArray(n)||(n=[n]) -var o=null,s={df:this._model.default_state,dat:n,par:t.id,m:this._model.data,t_id:this._id,t_cnt:this._cnt,sel:this._data.core.selected},a=this,u=function(e,t){e.data&&(e=e.data) -var n,r,i,o,s=e.dat,u=e.par,c=[],l=[],h=[],d=e.df,p=e.t_id,f=e.t_cnt,g=e.m,m=g[u],v=e.sel,y=function(e,n,r){r=r?r.concat():[],n&&r.unshift(n) -var i,o,s,a,u=e.id.toString(),c={id:u,text:e.text||"",icon:e.icon===t||e.icon,parent:n,parents:r,children:e.children||[],children_d:e.children_d||[],data:e.data,state:{},li_attr:{id:!1},a_attr:{href:"#"},original:!1} -for(i in d)d.hasOwnProperty(i)&&(c.state[i]=d[i]) -if(e&&e.data&&e.data.jstree&&e.data.jstree.icon&&(c.icon=e.data.jstree.icon),(c.icon===t||null===c.icon||""===c.icon)&&(c.icon=!0),e&&e.data&&(c.data=e.data,e.data.jstree))for(i in e.data.jstree)e.data.jstree.hasOwnProperty(i)&&(c.state[i]=e.data.jstree[i]) -if(e&&"object"==typeof e.state)for(i in e.state)e.state.hasOwnProperty(i)&&(c.state[i]=e.state[i]) -if(e&&"object"==typeof e.li_attr)for(i in e.li_attr)e.li_attr.hasOwnProperty(i)&&(c.li_attr[i]=e.li_attr[i]) -if(c.li_attr.id||(c.li_attr.id=u),e&&"object"==typeof e.a_attr)for(i in e.a_attr)e.a_attr.hasOwnProperty(i)&&(c.a_attr[i]=e.a_attr[i]) -for(e&&e.children&&!0===e.children&&(c.state.loaded=!1,c.children=[],c.children_d=[]),g[c.id]=c,i=0,o=c.children.length;o>i;i++)s=y(g[c.children[i]],c.id,r),a=g[s],c.children_d.push(s),a.children_d.length&&(c.children_d=c.children_d.concat(a.children_d)) -return delete e.data,delete e.children,g[c.id].original=e,c.state.selected&&h.push(c.id),c.id},b=function(e,n,r){r=r?r.concat():[],n&&r.unshift(n) -var i,o,s,a,u,c=!1 -do{c="j"+p+"_"+ ++f}while(g[c]) -u={id:!1,text:"string"==typeof e?e:"",icon:"object"!=typeof e||e.icon===t||e.icon,parent:n,parents:r,children:[],children_d:[],data:null,state:{},li_attr:{id:!1},a_attr:{href:"#"},original:!1} -for(i in d)d.hasOwnProperty(i)&&(u.state[i]=d[i]) -if(e&&e.id&&(u.id=e.id.toString()),e&&e.text&&(u.text=e.text),e&&e.data&&e.data.jstree&&e.data.jstree.icon&&(u.icon=e.data.jstree.icon),(u.icon===t||null===u.icon||""===u.icon)&&(u.icon=!0),e&&e.data&&(u.data=e.data,e.data.jstree))for(i in e.data.jstree)e.data.jstree.hasOwnProperty(i)&&(u.state[i]=e.data.jstree[i]) -if(e&&"object"==typeof e.state)for(i in e.state)e.state.hasOwnProperty(i)&&(u.state[i]=e.state[i]) -if(e&&"object"==typeof e.li_attr)for(i in e.li_attr)e.li_attr.hasOwnProperty(i)&&(u.li_attr[i]=e.li_attr[i]) -if(u.li_attr.id&&!u.id&&(u.id=u.li_attr.id.toString()),u.id||(u.id=c),u.li_attr.id||(u.li_attr.id=u.id),e&&"object"==typeof e.a_attr)for(i in e.a_attr)e.a_attr.hasOwnProperty(i)&&(u.a_attr[i]=e.a_attr[i]) -if(e&&e.children&&e.children.length){for(i=0,o=e.children.length;o>i;i++)s=b(e.children[i],u.id,r),a=g[s],u.children.push(s),a.children_d.length&&(u.children_d=u.children_d.concat(a.children_d)) -u.children_d=u.children_d.concat(u.children)}return e&&e.children&&!0===e.children&&(u.state.loaded=!1,u.children=[],u.children_d=[]),delete e.data,delete e.children,u.original=e,g[u.id]=u,u.state.selected&&h.push(u.id),u.id} -if(s.length&&s[0].id!==t&&s[0].parent!==t){for(r=0,i=s.length;i>r;r++)s[r].children||(s[r].children=[]),s[r].state||(s[r].state={}),g[s[r].id.toString()]=s[r] -for(r=0,i=s.length;i>r;r++)g[s[r].parent.toString()]?(g[s[r].parent.toString()].children.push(s[r].id.toString()),m.children_d.push(s[r].id.toString())):void 0!==a&&(a._data.core.last_error={error:"parse",plugin:"core",id:"core_07",reason:"Node with invalid parent",data:JSON.stringify({id:s[r].id.toString(),parent:s[r].parent.toString()})},a.settings.core.error.call(a,a._data.core.last_error)) -for(r=0,i=m.children.length;i>r;r++)n=y(g[m.children[r]],u,m.parents.concat()),l.push(n),g[n].children_d.length&&(l=l.concat(g[n].children_d)) -for(r=0,i=m.parents.length;i>r;r++)g[m.parents[r]].children_d=g[m.parents[r]].children_d.concat(l) -o={cnt:f,mod:g,sel:v,par:u,dpc:l,add:h}}else{for(r=0,i=s.length;i>r;r++)(n=b(s[r],u,m.parents.concat()))&&(c.push(n),l.push(n),g[n].children_d.length&&(l=l.concat(g[n].children_d))) -for(m.children=c,m.children_d=l,r=0,i=m.parents.length;i>r;r++)g[m.parents[r]].children_d=g[m.parents[r]].children_d.concat(l) -o={cnt:f,mod:g,sel:v,par:u,dpc:l,add:h}}return"undefined"!=typeof window&&void 0!==window.document?o:void postMessage(o)},l=function(t,n){if(null!==this.element){this._cnt=t.cnt -var i,o=this._model.data -for(i in o)o.hasOwnProperty(i)&&o[i].state&&o[i].state.loading&&t.mod[i]&&(t.mod[i].state.loading=!0) -if(this._model.data=t.mod,n){var s,u=t.add,l=t.sel,h=this._data.core.selected.slice() -if(o=this._model.data,l.length!==h.length||e.vakata.array_unique(l.concat(h)).length!==l.length){for(i=0,s=l.length;s>i;i++)-1===e.inArray(l[i],u)&&-1===e.inArray(l[i],h)&&(o[l[i]].state.selected=!1) -for(i=0,s=h.length;s>i;i++)-1===e.inArray(h[i],l)&&(o[h[i]].state.selected=!0)}}t.add.length&&(this._data.core.selected=this._data.core.selected.concat(t.add)),this.trigger("model",{nodes:t.dpc,parent:t.par}),t.par!==e.jstree.root?(this._node_changed(t.par),this.redraw()):this.redraw(!0),t.add.length&&this.trigger("changed",{action:"model",selected:this._data.core.selected}),!n&&c?c(function(){r.call(a,!0)}):r.call(a,!0)}} -if(this.settings.core.worker&&window.Blob&&window.URL&&window.Worker)try{null===this._wrk&&(this._wrk=window.URL.createObjectURL(new window.Blob(["self.onmessage = "+u.toString()],{type:"text/javascript"}))),!this._data.core.working||i?(this._data.core.working=!0,o=new window.Worker(this._wrk),o.onmessage=e.proxy(function(e){l.call(this,e.data,!0) -try{o.terminate(),o=null}catch(e){}this._data.core.worker_queue.length?this._append_json_data.apply(this,this._data.core.worker_queue.shift()):this._data.core.working=!1},this),s.par?o.postMessage(s):this._data.core.worker_queue.length?this._append_json_data.apply(this,this._data.core.worker_queue.shift()):this._data.core.working=!1):this._data.core.worker_queue.push([t,n,r,!0])}catch(e){l.call(this,u(s),!1),this._data.core.worker_queue.length?this._append_json_data.apply(this,this._data.core.worker_queue.shift()):this._data.core.working=!1}else l.call(this,u(s),!1)}},_parse_model_from_html:function(n,r,i){i=i?[].concat(i):[],r&&i.unshift(r) -var o,s,a,u,c,l=this._model.data,h={id:!1,text:!1,icon:!0,parent:r,parents:i,children:[],children_d:[],data:null,state:{},li_attr:{id:!1},a_attr:{href:"#"},original:!1} -for(a in this._model.default_state)this._model.default_state.hasOwnProperty(a)&&(h.state[a]=this._model.default_state[a]) -if(u=e.vakata.attributes(n,!0),e.each(u,function(t,n){return n=e.trim(n),!n.length||(h.li_attr[t]=n,void("id"===t&&(h.id=n.toString())))}),u=n.children("a").first(),u.length&&(u=e.vakata.attributes(u,!0),e.each(u,function(t,n){n=e.trim(n),n.length&&(h.a_attr[t]=n)})),u=n.children("a").first().length?n.children("a").first().clone():n.clone(),u.children("ins, i, ul").remove(),u=u.html(),u=e("<div />").html(u),h.text=this.settings.core.force_text?u.text():u.html(),u=n.data(),h.data=u?e.extend(!0,{},u):null,h.state.opened=n.hasClass("jstree-open"),h.state.selected=n.children("a").hasClass("jstree-clicked"),h.state.disabled=n.children("a").hasClass("jstree-disabled"),h.data&&h.data.jstree)for(a in h.data.jstree)h.data.jstree.hasOwnProperty(a)&&(h.state[a]=h.data.jstree[a]) -u=n.children("a").children(".jstree-themeicon"),u.length&&(h.icon=!u.hasClass("jstree-themeicon-hidden")&&u.attr("rel")),h.state.icon!==t&&(h.icon=h.state.icon),(h.icon===t||null===h.icon||""===h.icon)&&(h.icon=!0),u=n.children("ul").children("li") -do{c="j"+this._id+"_"+ ++this._cnt}while(l[c]) -return h.id=h.li_attr.id?h.li_attr.id.toString():c,u.length?(u.each(e.proxy(function(t,n){o=this._parse_model_from_html(e(n),h.id,i),s=this._model.data[o],h.children.push(o),s.children_d.length&&(h.children_d=h.children_d.concat(s.children_d))},this)),h.children_d=h.children_d.concat(h.children)):n.hasClass("jstree-closed")&&(h.state.loaded=!1),h.li_attr.class&&(h.li_attr.class=h.li_attr.class.replace("jstree-closed","").replace("jstree-open","")),h.a_attr.class&&(h.a_attr.class=h.a_attr.class.replace("jstree-clicked","").replace("jstree-disabled","")),l[h.id]=h,h.state.selected&&this._data.core.selected.push(h.id),h.id},_parse_model_from_flat_json:function(e,n,r){r=r?r.concat():[],n&&r.unshift(n) -var i,o,s,a,u=e.id.toString(),c=this._model.data,l=this._model.default_state,h={id:u,text:e.text||"",icon:e.icon===t||e.icon,parent:n,parents:r,children:e.children||[],children_d:e.children_d||[],data:e.data,state:{},li_attr:{id:!1},a_attr:{href:"#"},original:!1} -for(i in l)l.hasOwnProperty(i)&&(h.state[i]=l[i]) -if(e&&e.data&&e.data.jstree&&e.data.jstree.icon&&(h.icon=e.data.jstree.icon),(h.icon===t||null===h.icon||""===h.icon)&&(h.icon=!0),e&&e.data&&(h.data=e.data,e.data.jstree))for(i in e.data.jstree)e.data.jstree.hasOwnProperty(i)&&(h.state[i]=e.data.jstree[i]) -if(e&&"object"==typeof e.state)for(i in e.state)e.state.hasOwnProperty(i)&&(h.state[i]=e.state[i]) -if(e&&"object"==typeof e.li_attr)for(i in e.li_attr)e.li_attr.hasOwnProperty(i)&&(h.li_attr[i]=e.li_attr[i]) -if(h.li_attr.id||(h.li_attr.id=u),e&&"object"==typeof e.a_attr)for(i in e.a_attr)e.a_attr.hasOwnProperty(i)&&(h.a_attr[i]=e.a_attr[i]) -for(e&&e.children&&!0===e.children&&(h.state.loaded=!1,h.children=[],h.children_d=[]),c[h.id]=h,i=0,o=h.children.length;o>i;i++)s=this._parse_model_from_flat_json(c[h.children[i]],h.id,r),a=c[s],h.children_d.push(s),a.children_d.length&&(h.children_d=h.children_d.concat(a.children_d)) -return delete e.data,delete e.children,c[h.id].original=e,h.state.selected&&this._data.core.selected.push(h.id),h.id},_parse_model_from_json:function(e,n,r){r=r?r.concat():[],n&&r.unshift(n) -var i,o,s,a,u,c=!1,l=this._model.data,h=this._model.default_state -do{c="j"+this._id+"_"+ ++this._cnt}while(l[c]) -u={id:!1,text:"string"==typeof e?e:"",icon:"object"!=typeof e||e.icon===t||e.icon,parent:n,parents:r,children:[],children_d:[],data:null,state:{},li_attr:{id:!1},a_attr:{href:"#"},original:!1} -for(i in h)h.hasOwnProperty(i)&&(u.state[i]=h[i]) -if(e&&e.id&&(u.id=e.id.toString()),e&&e.text&&(u.text=e.text),e&&e.data&&e.data.jstree&&e.data.jstree.icon&&(u.icon=e.data.jstree.icon),(u.icon===t||null===u.icon||""===u.icon)&&(u.icon=!0),e&&e.data&&(u.data=e.data,e.data.jstree))for(i in e.data.jstree)e.data.jstree.hasOwnProperty(i)&&(u.state[i]=e.data.jstree[i]) -if(e&&"object"==typeof e.state)for(i in e.state)e.state.hasOwnProperty(i)&&(u.state[i]=e.state[i]) -if(e&&"object"==typeof e.li_attr)for(i in e.li_attr)e.li_attr.hasOwnProperty(i)&&(u.li_attr[i]=e.li_attr[i]) -if(u.li_attr.id&&!u.id&&(u.id=u.li_attr.id.toString()),u.id||(u.id=c),u.li_attr.id||(u.li_attr.id=u.id),e&&"object"==typeof e.a_attr)for(i in e.a_attr)e.a_attr.hasOwnProperty(i)&&(u.a_attr[i]=e.a_attr[i]) -if(e&&e.children&&e.children.length){for(i=0,o=e.children.length;o>i;i++)s=this._parse_model_from_json(e.children[i],u.id,r),a=l[s],u.children.push(s),a.children_d.length&&(u.children_d=u.children_d.concat(a.children_d)) -u.children_d=u.children.concat(u.children_d)}return e&&e.children&&!0===e.children&&(u.state.loaded=!1,u.children=[],u.children_d=[]),delete e.data,delete e.children,u.original=e,l[u.id]=u,u.state.selected&&this._data.core.selected.push(u.id),u.id},_redraw:function(){var t,n,r,i=this._model.force_full_redraw?this._model.data[e.jstree.root].children.concat([]):this._model.changed.concat([]),o=u.createElement("UL"),s=this._data.core.focused -for(n=0,r=i.length;r>n;n++)(t=this.redraw_node(i[n],!0,this._model.force_full_redraw))&&this._model.force_full_redraw&&o.appendChild(t) -this._model.force_full_redraw&&(o.className=this.get_container_ul()[0].className,o.setAttribute("role","group"),this.element.empty().append(o)),null!==s&&this.settings.core.restore_focus&&(t=this.get_node(s,!0),t&&t.length&&t.children(".jstree-anchor")[0]!==u.activeElement?t.children(".jstree-anchor").focus():this._data.core.focused=null),this._model.force_full_redraw=!1,this._model.changed=[],this.trigger("redraw",{nodes:i})},redraw:function(e){e&&(this._model.force_full_redraw=!0),this._redraw()},draw_children:function(t){var n=this.get_node(t),r=!1,i=!1,o=!1,s=u -if(!n)return!1 -if(n.id===e.jstree.root)return this.redraw(!0) -if(!(t=this.get_node(t,!0))||!t.length)return!1 -if(t.children(".jstree-children").remove(),t=t[0],n.children.length&&n.state.loaded){for(o=s.createElement("UL"),o.setAttribute("role","group"),o.className="jstree-children",r=0,i=n.children.length;i>r;r++)o.appendChild(this.redraw_node(n.children[r],!0,!0)) -t.appendChild(o)}},redraw_node:function(t,n,r,i){var o=this.get_node(t),s=!1,a=!1,c=!1,l=!1,h=!1,d=!1,p="",f=u,g=this._model.data,m=!1,v=null,y=0,b=0,C=!1,A=!1 -if(!o)return!1 -if(o.id===e.jstree.root)return this.redraw(!0) -if(n=n||0===o.children.length,t=u.querySelector?this.element[0].querySelector("#"+(-1!=="0123456789".indexOf(o.id[0])?"\\3"+o.id[0]+" "+o.id.substr(1).replace(e.jstree.idregex,"\\$&"):o.id.replace(e.jstree.idregex,"\\$&"))):u.getElementById(o.id))t=e(t),r||(s=t.parent().parent()[0],s===this.element[0]&&(s=null),a=t.index()),n||!o.children.length||t.children(".jstree-children").length||(n=!0),n||(c=t.children(".jstree-children")[0]),m=t.children(".jstree-anchor")[0]===u.activeElement,t.remove() -else if(n=!0,!r){if(!(null===(s=o.parent!==e.jstree.root?e("#"+o.parent.replace(e.jstree.idregex,"\\$&"),this.element)[0]:null)||s&&g[o.parent].state.opened))return!1 -a=e.inArray(o.id,null===s?g[e.jstree.root].children:g[o.parent].children)}t=this._data.core.node.cloneNode(!0),p="jstree-node " -for(l in o.li_attr)if(o.li_attr.hasOwnProperty(l)){if("id"===l)continue -"class"!==l?t.setAttribute(l,o.li_attr[l]):p+=o.li_attr[l]}for(o.a_attr.id||(o.a_attr.id=o.id+"_anchor"),t.setAttribute("aria-selected",!!o.state.selected),t.setAttribute("aria-level",o.parents.length),t.setAttribute("aria-labelledby",o.a_attr.id),o.state.disabled&&t.setAttribute("aria-disabled",!0),l=0,h=o.children.length;h>l;l++)if(!g[o.children[l]].state.hidden){C=!0 -break}if(null!==o.parent&&g[o.parent]&&!o.state.hidden&&(l=e.inArray(o.id,g[o.parent].children),A=o.id,-1!==l))for(l++,h=g[o.parent].children.length;h>l&&(g[g[o.parent].children[l]].state.hidden||(A=g[o.parent].children[l]),A===o.id);l++);o.state.hidden&&(p+=" jstree-hidden"),o.state.loading&&(p+=" jstree-loading"),o.state.loaded&&!C?p+=" jstree-leaf":(p+=o.state.opened&&o.state.loaded?" jstree-open":" jstree-closed",t.setAttribute("aria-expanded",o.state.opened&&o.state.loaded)),A===o.id&&(p+=" jstree-last"),t.id=o.id,t.className=p,p=(o.state.selected?" jstree-clicked":"")+(o.state.disabled?" jstree-disabled":"") -for(h in o.a_attr)if(o.a_attr.hasOwnProperty(h)){if("href"===h&&"#"===o.a_attr[h])continue -"class"!==h?t.childNodes[1].setAttribute(h,o.a_attr[h]):p+=" "+o.a_attr[h]}if(p.length&&(t.childNodes[1].className="jstree-anchor "+p),(o.icon&&!0!==o.icon||!1===o.icon)&&(!1===o.icon?t.childNodes[1].childNodes[0].className+=" jstree-themeicon-hidden":-1===o.icon.indexOf("/")&&-1===o.icon.indexOf(".")?t.childNodes[1].childNodes[0].className+=" "+o.icon+" jstree-themeicon-custom":(t.childNodes[1].childNodes[0].style.backgroundImage='url("'+o.icon+'")',t.childNodes[1].childNodes[0].style.backgroundPosition="center center",t.childNodes[1].childNodes[0].style.backgroundSize="auto",t.childNodes[1].childNodes[0].className+=" jstree-themeicon-custom")),this.settings.core.force_text?t.childNodes[1].appendChild(f.createTextNode(o.text)):t.childNodes[1].innerHTML+=o.text,n&&o.children.length&&(o.state.opened||i)&&o.state.loaded){for(d=f.createElement("UL"),d.setAttribute("role","group"),d.className="jstree-children",l=0,h=o.children.length;h>l;l++)d.appendChild(this.redraw_node(o.children[l],n,!0)) -t.appendChild(d)}if(c&&t.appendChild(c),!r){for(s||(s=this.element[0]),l=0,h=s.childNodes.length;h>l;l++)if(s.childNodes[l]&&s.childNodes[l].className&&-1!==s.childNodes[l].className.indexOf("jstree-children")){v=s.childNodes[l] -break}v||(v=f.createElement("UL"),v.setAttribute("role","group"),v.className="jstree-children",s.appendChild(v)),s=v,a<s.childNodes.length?s.insertBefore(t,s.childNodes[a]):s.appendChild(t),m&&(y=this.element[0].scrollTop,b=this.element[0].scrollLeft,t.childNodes[1].focus(),this.element[0].scrollTop=y,this.element[0].scrollLeft=b)}return o.state.opened&&!o.state.loaded&&(o.state.opened=!1,setTimeout(e.proxy(function(){this.open_node(o.id,!1,0)},this),0)),t},open_node:function(n,r,i){var o,s,a,u -if(e.isArray(n)){for(n=n.slice(),o=0,s=n.length;s>o;o++)this.open_node(n[o],r,i) -return!0}return!(!(n=this.get_node(n))||n.id===e.jstree.root)&&(i=i===t?this.settings.core.animation:i,this.is_closed(n)?this.is_loaded(n)?(a=this.get_node(n,!0),u=this,a.length&&(i&&a.children(".jstree-children").length&&a.children(".jstree-children").stop(!0,!0),n.children.length&&!this._firstChild(a.children(".jstree-children")[0])&&this.draw_children(n),i?(this.trigger("before_open",{node:n}),a.children(".jstree-children").css("display","none").end().removeClass("jstree-closed").addClass("jstree-open").attr("aria-expanded",!0).children(".jstree-children").stop(!0,!0).slideDown(i,function(){this.style.display="",u.element&&u.trigger("after_open",{node:n})})):(this.trigger("before_open",{node:n}),a[0].className=a[0].className.replace("jstree-closed","jstree-open"),a[0].setAttribute("aria-expanded",!0))),n.state.opened=!0,r&&r.call(this,n,!0),a.length||this.trigger("before_open",{node:n}),this.trigger("open_node",{node:n}),i&&a.length||this.trigger("after_open",{node:n}),!0):this.is_loading(n)?setTimeout(e.proxy(function(){this.open_node(n,r,i)},this),500):void this.load_node(n,function(e,t){return t?this.open_node(e,r,i):!!r&&r.call(this,e,!1)}):(r&&r.call(this,n,!1),!1))},_open_to:function(t){if(!(t=this.get_node(t))||t.id===e.jstree.root)return!1 -var n,r,i=t.parents -for(n=0,r=i.length;r>n;n+=1)n!==e.jstree.root&&this.open_node(i[n],!1,0) -return e("#"+t.id.replace(e.jstree.idregex,"\\$&"),this.element)},close_node:function(n,r){var i,o,s,a -if(e.isArray(n)){for(n=n.slice(),i=0,o=n.length;o>i;i++)this.close_node(n[i],r) -return!0}return!(!(n=this.get_node(n))||n.id===e.jstree.root)&&(!this.is_closed(n)&&(r=r===t?this.settings.core.animation:r,s=this,a=this.get_node(n,!0),n.state.opened=!1,this.trigger("close_node",{node:n}),void(a.length?r?a.children(".jstree-children").attr("style","display:block !important").end().removeClass("jstree-open").addClass("jstree-closed").attr("aria-expanded",!1).children(".jstree-children").stop(!0,!0).slideUp(r,function(){this.style.display="",a.children(".jstree-children").remove(),s.element&&s.trigger("after_close",{node:n})}):(a[0].className=a[0].className.replace("jstree-open","jstree-closed"),a.attr("aria-expanded",!1).children(".jstree-children").remove(),this.trigger("after_close",{node:n})):this.trigger("after_close",{node:n}))))},toggle_node:function(t){var n,r -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.toggle_node(t[n]) -return!0}return this.is_closed(t)?this.open_node(t):this.is_open(t)?this.close_node(t):void 0},open_all:function(t,n,r){if(t||(t=e.jstree.root),!(t=this.get_node(t)))return!1 -var i,o,s,a=t.id===e.jstree.root?this.get_container_ul():this.get_node(t,!0) -if(!a.length){for(i=0,o=t.children_d.length;o>i;i++)this.is_closed(this._model.data[t.children_d[i]])&&(this._model.data[t.children_d[i]].state.opened=!0) -return this.trigger("open_all",{node:t})}r=r||a,s=this,a=this.is_closed(t)?a.find(".jstree-closed").addBack():a.find(".jstree-closed"),a.each(function(){s.open_node(this,function(e,t){t&&this.is_parent(e)&&this.open_all(e,n,r)},n||0)}),0===r.find(".jstree-closed").length&&this.trigger("open_all",{node:this.get_node(r)})},close_all:function(t,n){if(t||(t=e.jstree.root),!(t=this.get_node(t)))return!1 -var r,i,o=t.id===e.jstree.root?this.get_container_ul():this.get_node(t,!0),s=this -for(o.length&&(o=this.is_open(t)?o.find(".jstree-open").addBack():o.find(".jstree-open"),e(o.get().reverse()).each(function(){s.close_node(this,n||0)})),r=0,i=t.children_d.length;i>r;r++)this._model.data[t.children_d[r]].state.opened=!1 -this.trigger("close_all",{node:t})},is_disabled:function(e){return(e=this.get_node(e))&&e.state&&e.state.disabled},enable_node:function(t){var n,r -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.enable_node(t[n]) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(t.state.disabled=!1,this.get_node(t,!0).children(".jstree-anchor").removeClass("jstree-disabled").attr("aria-disabled",!1),void this.trigger("enable_node",{node:t}))},disable_node:function(t){var n,r -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.disable_node(t[n]) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(t.state.disabled=!0,this.get_node(t,!0).children(".jstree-anchor").addClass("jstree-disabled").attr("aria-disabled",!0),void this.trigger("disable_node",{node:t}))},is_hidden:function(e){return e=this.get_node(e),!0===e.state.hidden},hide_node:function(t,n){var r,i -if(e.isArray(t)){for(t=t.slice(),r=0,i=t.length;i>r;r++)this.hide_node(t[r],!0) -return n||this.redraw(),!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&void(t.state.hidden||(t.state.hidden=!0,this._node_changed(t.parent),n||this.redraw(),this.trigger("hide_node",{node:t})))},show_node:function(t,n){var r,i -if(e.isArray(t)){for(t=t.slice(),r=0,i=t.length;i>r;r++)this.show_node(t[r],!0) -return n||this.redraw(),!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&void(t.state.hidden&&(t.state.hidden=!1,this._node_changed(t.parent),n||this.redraw(),this.trigger("show_node",{node:t})))},hide_all:function(t){var n,r=this._model.data,i=[] -for(n in r)r.hasOwnProperty(n)&&n!==e.jstree.root&&!r[n].state.hidden&&(r[n].state.hidden=!0,i.push(n)) -return this._model.force_full_redraw=!0,t||this.redraw(),this.trigger("hide_all",{nodes:i}),i},show_all:function(t){var n,r=this._model.data,i=[] -for(n in r)r.hasOwnProperty(n)&&n!==e.jstree.root&&r[n].state.hidden&&(r[n].state.hidden=!1,i.push(n)) -return this._model.force_full_redraw=!0,t||this.redraw(),this.trigger("show_all",{nodes:i}),i},activate_node:function(e,n){if(this.is_disabled(e))return!1 -if(n&&"object"==typeof n||(n={}),this._data.core.last_clicked=this._data.core.last_clicked&&this._data.core.last_clicked.id!==t?this.get_node(this._data.core.last_clicked.id):null,this._data.core.last_clicked&&!this._data.core.last_clicked.state.selected&&(this._data.core.last_clicked=null),!this._data.core.last_clicked&&this._data.core.selected.length&&(this._data.core.last_clicked=this.get_node(this._data.core.selected[this._data.core.selected.length-1])),this.settings.core.multiple&&(n.metaKey||n.ctrlKey||n.shiftKey)&&(!n.shiftKey||this._data.core.last_clicked&&this.get_parent(e)&&this.get_parent(e)===this._data.core.last_clicked.parent))if(n.shiftKey){var r,i,o=this.get_node(e).id,s=this._data.core.last_clicked.id,a=this.get_node(this._data.core.last_clicked.parent).children,u=!1 -for(r=0,i=a.length;i>r;r+=1)a[r]===o&&(u=!u),a[r]===s&&(u=!u),this.is_disabled(a[r])||!u&&a[r]!==o&&a[r]!==s?this.deselect_node(a[r],!0,n):this.is_hidden(a[r])||this.select_node(a[r],!0,!1,n) -this.trigger("changed",{action:"select_node",node:this.get_node(e),selected:this._data.core.selected,event:n})}else this.is_selected(e)?this.deselect_node(e,!1,n):this.select_node(e,!1,!1,n) -else!this.settings.core.multiple&&(n.metaKey||n.ctrlKey||n.shiftKey)&&this.is_selected(e)?this.deselect_node(e,!1,n):(this.deselect_all(!0),this.select_node(e,!1,!1,n),this._data.core.last_clicked=this.get_node(e)) -this.trigger("activate_node",{node:this.get_node(e),event:n})},hover_node:function(e){if(!(e=this.get_node(e,!0))||!e.length||e.children(".jstree-hovered").length)return!1 -var t=this.element.find(".jstree-hovered"),n=this.element -t&&t.length&&this.dehover_node(t),e.children(".jstree-anchor").addClass("jstree-hovered"),this.trigger("hover_node",{node:this.get_node(e)}),setTimeout(function(){n.attr("aria-activedescendant",e[0].id)},0)},dehover_node:function(e){return!!((e=this.get_node(e,!0))&&e.length&&e.children(".jstree-hovered").length)&&(e.children(".jstree-anchor").removeClass("jstree-hovered"),void this.trigger("dehover_node",{node:this.get_node(e)}))},select_node:function(t,n,r,i){var o,s,a -if(e.isArray(t)){for(t=t.slice(),s=0,a=t.length;a>s;s++)this.select_node(t[s],n,r,i) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(o=this.get_node(t,!0),void(t.state.selected||(t.state.selected=!0,this._data.core.selected.push(t.id),r||(o=this._open_to(t)),o&&o.length&&o.attr("aria-selected",!0).children(".jstree-anchor").addClass("jstree-clicked"),this.trigger("select_node",{node:t,selected:this._data.core.selected,event:i}),n||this.trigger("changed",{action:"select_node",node:t,selected:this._data.core.selected,event:i}))))},deselect_node:function(t,n,r){var i,o,s -if(e.isArray(t)){for(t=t.slice(),i=0,o=t.length;o>i;i++)this.deselect_node(t[i],n,r) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(s=this.get_node(t,!0),void(t.state.selected&&(t.state.selected=!1,this._data.core.selected=e.vakata.array_remove_item(this._data.core.selected,t.id),s.length&&s.attr("aria-selected",!1).children(".jstree-anchor").removeClass("jstree-clicked"),this.trigger("deselect_node",{node:t,selected:this._data.core.selected,event:r}),n||this.trigger("changed",{action:"deselect_node",node:t,selected:this._data.core.selected,event:r}))))},select_all:function(t){var n,r,i=this._data.core.selected.concat([]) -for(this._data.core.selected=this._model.data[e.jstree.root].children_d.concat(),n=0,r=this._data.core.selected.length;r>n;n++)this._model.data[this._data.core.selected[n]]&&(this._model.data[this._data.core.selected[n]].state.selected=!0) -this.redraw(!0),this.trigger("select_all",{selected:this._data.core.selected}),t||this.trigger("changed",{action:"select_all",selected:this._data.core.selected,old_selection:i})},deselect_all:function(e){var t,n,r=this._data.core.selected.concat([]) -for(t=0,n=this._data.core.selected.length;n>t;t++)this._model.data[this._data.core.selected[t]]&&(this._model.data[this._data.core.selected[t]].state.selected=!1) -this._data.core.selected=[],this.element.find(".jstree-clicked").removeClass("jstree-clicked").parent().attr("aria-selected",!1),this.trigger("deselect_all",{selected:this._data.core.selected,node:r}),e||this.trigger("changed",{action:"deselect_all",selected:this._data.core.selected,old_selection:r})},is_selected:function(t){return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&t.state.selected},get_selected:function(t){return t?e.map(this._data.core.selected,e.proxy(function(e){return this.get_node(e)},this)):this._data.core.selected.slice()},get_top_selected:function(t){var n,r,i,o,s=this.get_selected(!0),a={} -for(n=0,r=s.length;r>n;n++)a[s[n].id]=s[n] -for(n=0,r=s.length;r>n;n++)for(i=0,o=s[n].children_d.length;o>i;i++)a[s[n].children_d[i]]&&delete a[s[n].children_d[i]] -s=[] -for(n in a)a.hasOwnProperty(n)&&s.push(n) -return t?e.map(s,e.proxy(function(e){return this.get_node(e)},this)):s},get_bottom_selected:function(t){var n,r,i=this.get_selected(!0),o=[] -for(n=0,r=i.length;r>n;n++)i[n].children.length||o.push(i[n].id) -return t?e.map(o,e.proxy(function(e){return this.get_node(e)},this)):o},get_state:function(){var t,n={core:{open:[],loaded:[],scroll:{left:this.element.scrollLeft(),top:this.element.scrollTop()},selected:[]}} -for(t in this._model.data)this._model.data.hasOwnProperty(t)&&t!==e.jstree.root&&(this._model.data[t].state.loaded&&this.settings.core.loaded_state&&n.core.loaded.push(t),this._model.data[t].state.opened&&n.core.open.push(t),this._model.data[t].state.selected&&n.core.selected.push(t)) -return n},set_state:function(n,r){if(n){if(n.core&&n.core.selected&&n.core.initial_selection===t&&(n.core.initial_selection=this._data.core.selected.concat([]).sort().join(",")),n.core){var i,o -if(n.core.loaded)return this.settings.core.loaded_state&&e.isArray(n.core.loaded)&&n.core.loaded.length?this._load_nodes(n.core.loaded,function(e){delete n.core.loaded,this.set_state(n,r)}):(delete n.core.loaded,this.set_state(n,r)),!1 -if(n.core.open)return e.isArray(n.core.open)&&n.core.open.length?this._load_nodes(n.core.open,function(e){this.open_node(e,!1,0),delete n.core.open,this.set_state(n,r)}):(delete n.core.open,this.set_state(n,r)),!1 -if(n.core.scroll)return n.core.scroll&&n.core.scroll.left!==t&&this.element.scrollLeft(n.core.scroll.left),n.core.scroll&&n.core.scroll.top!==t&&this.element.scrollTop(n.core.scroll.top),delete n.core.scroll,this.set_state(n,r),!1 -if(n.core.selected)return i=this,(n.core.initial_selection===t||n.core.initial_selection===this._data.core.selected.concat([]).sort().join(","))&&(this.deselect_all(),e.each(n.core.selected,function(e,t){i.select_node(t,!1,!0)})),delete n.core.initial_selection,delete n.core.selected,this.set_state(n,r),!1 -for(o in n)n.hasOwnProperty(o)&&"core"!==o&&-1===e.inArray(o,this.settings.plugins)&&delete n[o] -if(e.isEmptyObject(n.core))return delete n.core,this.set_state(n,r),!1}return!e.isEmptyObject(n)||(n=null,r&&r.call(this),this.trigger("set_state"),!1)}return!1},refresh:function(t,n){this._data.core.state=!0===n?{}:this.get_state(),n&&e.isFunction(n)&&(this._data.core.state=n.call(this,this._data.core.state)),this._cnt=0,this._model.data={},this._model.data[e.jstree.root]={id:e.jstree.root,parent:null,parents:[],children:[],children_d:[],state:{loaded:!1}},this._data.core.selected=[],this._data.core.last_clicked=null,this._data.core.focused=null -var r=this.get_container_ul()[0].className -t||(this.element.html("<ul class='"+r+"' role='group'><li class='jstree-initial-node jstree-loading jstree-leaf jstree-last' role='treeitem' id='j"+this._id+"_loading'><i class='jstree-icon jstree-ocl'></i><a class='jstree-anchor' href='#'><i class='jstree-icon jstree-themeicon-hidden'></i>"+this.get_string("Loading ...")+"</a></li></ul>"),this.element.attr("aria-activedescendant","j"+this._id+"_loading")),this.load_node(e.jstree.root,function(t,n){n&&(this.get_container_ul()[0].className=r,this._firstChild(this.get_container_ul()[0])&&this.element.attr("aria-activedescendant",this._firstChild(this.get_container_ul()[0]).id),this.set_state(e.extend(!0,{},this._data.core.state),function(){this.trigger("refresh")})),this._data.core.state=null})},refresh_node:function(t){if(!(t=this.get_node(t))||t.id===e.jstree.root)return!1 -var n=[],r=[],i=this._data.core.selected.concat([]) -r.push(t.id),!0===t.state.opened&&n.push(t.id),this.get_node(t,!0).find(".jstree-open").each(function(){r.push(this.id),n.push(this.id)}),this._load_nodes(r,e.proxy(function(e){this.open_node(n,!1,0),this.select_node(i),this.trigger("refresh_node",{node:t,nodes:e})},this),!1,!0)},set_id:function(t,n){if(!(t=this.get_node(t))||t.id===e.jstree.root)return!1 -var r,i,o=this._model.data,s=t.id -for(n=n.toString(),o[t.parent].children[e.inArray(t.id,o[t.parent].children)]=n,r=0,i=t.parents.length;i>r;r++)o[t.parents[r]].children_d[e.inArray(t.id,o[t.parents[r]].children_d)]=n -for(r=0,i=t.children.length;i>r;r++)o[t.children[r]].parent=n -for(r=0,i=t.children_d.length;i>r;r++)o[t.children_d[r]].parents[e.inArray(t.id,o[t.children_d[r]].parents)]=n -return r=e.inArray(t.id,this._data.core.selected),-1!==r&&(this._data.core.selected[r]=n),r=this.get_node(t.id,!0),r&&(r.attr("id",n),this.element.attr("aria-activedescendant")===t.id&&this.element.attr("aria-activedescendant",n)),delete o[t.id],t.id=n,t.li_attr.id=n,o[n]=t,this.trigger("set_id",{node:t,new:t.id,old:s}),!0},get_text:function(t){return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&t.text},set_text:function(t,n){var r,i -if(e.isArray(t)){for(t=t.slice(),r=0,i=t.length;i>r;r++)this.set_text(t[r],n) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(t.text=n,this.get_node(t,!0).length&&this.redraw_node(t.id),this.trigger("set_text",{obj:t,text:n}),!0)},get_json:function(t,n,r){if(!(t=this.get_node(t||e.jstree.root)))return!1 -n&&n.flat&&!r&&(r=[]) -var i,o,s={id:t.id,text:t.text,icon:this.get_icon(t),li_attr:e.extend(!0,{},t.li_attr),a_attr:e.extend(!0,{},t.a_attr),state:{},data:(!n||!n.no_data)&&e.extend(!0,e.isArray(t.data)?[]:{},t.data)} -if(n&&n.flat?s.parent=t.parent:s.children=[],n&&n.no_state)delete s.state -else for(i in t.state)t.state.hasOwnProperty(i)&&(s.state[i]=t.state[i]) -if(n&&n.no_li_attr&&delete s.li_attr,n&&n.no_a_attr&&delete s.a_attr,n&&n.no_id&&(delete s.id,s.li_attr&&s.li_attr.id&&delete s.li_attr.id,s.a_attr&&s.a_attr.id&&delete s.a_attr.id),n&&n.flat&&t.id!==e.jstree.root&&r.push(s),!n||!n.no_children)for(i=0,o=t.children.length;o>i;i++)n&&n.flat?this.get_json(t.children[i],n,r):s.children.push(this.get_json(t.children[i],n)) -return n&&n.flat?r:t.id===e.jstree.root?s.children:s},create_node:function(n,r,i,o,s){if(null===n&&(n=e.jstree.root),!(n=this.get_node(n)))return!1 -if(i=i===t?"last":i,!i.toString().match(/^(before|after)$/)&&!s&&!this.is_loaded(n))return this.load_node(n,function(){this.create_node(n,r,i,o,!0)}) -r||(r={text:this.get_string("New node")}),r="string"==typeof r?{text:r}:e.extend(!0,{},r),r.text===t&&(r.text=this.get_string("New node")) -var a,u,c,l -switch(n.id===e.jstree.root&&("before"===i&&(i="first"),"after"===i&&(i="last")),i){case"before":a=this.get_node(n.parent),i=e.inArray(n.id,a.children),n=a -break -case"after":a=this.get_node(n.parent),i=e.inArray(n.id,a.children)+1,n=a -break -case"inside":case"first":i=0 -break -case"last":i=n.children.length -break -default:i||(i=0)}if(i>n.children.length&&(i=n.children.length),r.id||(r.id=!0),!this.check("create_node",r,n,i))return this.settings.core.error.call(this,this._data.core.last_error),!1 -if(!0===r.id&&delete r.id,!(r=this._parse_model_from_json(r,n.id,n.parents.concat())))return!1 -for(a=this.get_node(r),u=[],u.push(r),u=u.concat(a.children_d),this.trigger("model",{nodes:u,parent:n.id}),n.children_d=n.children_d.concat(u),c=0,l=n.parents.length;l>c;c++)this._model.data[n.parents[c]].children_d=this._model.data[n.parents[c]].children_d.concat(u) -for(r=a,a=[],c=0,l=n.children.length;l>c;c++)a[c>=i?c+1:c]=n.children[c] -return a[i]=r.id,n.children=a,this.redraw_node(n,!0),this.trigger("create_node",{node:this.get_node(r),parent:n.id,position:i}),o&&o.call(this,this.get_node(r)),r.id},rename_node:function(t,n){var r,i,o -if(e.isArray(t)){for(t=t.slice(),r=0,i=t.length;i>r;r++)this.rename_node(t[r],n) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(o=t.text,this.check("rename_node",t,this.get_parent(t),n)?(this.set_text(t,n),this.trigger("rename_node",{node:t,text:n,old:o}),!0):(this.settings.core.error.call(this,this._data.core.last_error),!1))},delete_node:function(t){var n,r,i,o,s,a,u,c,l,h,d,p -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.delete_node(t[n]) -return!0}if(!(t=this.get_node(t))||t.id===e.jstree.root)return!1 -if(i=this.get_node(t.parent),o=e.inArray(t.id,i.children),h=!1,!this.check("delete_node",t,i,o))return this.settings.core.error.call(this,this._data.core.last_error),!1 -for(-1!==o&&(i.children=e.vakata.array_remove(i.children,o)),s=t.children_d.concat([]),s.push(t.id),a=0,u=t.parents.length;u>a;a++)this._model.data[t.parents[a]].children_d=e.vakata.array_filter(this._model.data[t.parents[a]].children_d,function(t){return-1===e.inArray(t,s)}) -for(c=0,l=s.length;l>c;c++)if(this._model.data[s[c]].state.selected){h=!0 -break}for(h&&(this._data.core.selected=e.vakata.array_filter(this._data.core.selected,function(t){return-1===e.inArray(t,s)})),this.trigger("delete_node",{node:t,parent:i.id}),h&&this.trigger("changed",{action:"delete_node",node:t,selected:this._data.core.selected,parent:i.id}),c=0,l=s.length;l>c;c++)delete this._model.data[s[c]] -return-1!==e.inArray(this._data.core.focused,s)&&(this._data.core.focused=null,d=this.element[0].scrollTop,p=this.element[0].scrollLeft,i.id===e.jstree.root?this._model.data[e.jstree.root].children[0]&&this.get_node(this._model.data[e.jstree.root].children[0],!0).children(".jstree-anchor").focus():this.get_node(i,!0).children(".jstree-anchor").focus(),this.element[0].scrollTop=d,this.element[0].scrollLeft=p),this.redraw_node(i,!0),!0},check:function(t,n,r,i,o){n=n&&n.id?n:this.get_node(n),r=r&&r.id?r:this.get_node(r) -var s=t.match(/^move_node|copy_node|create_node$/i)?r:n,a=this.settings.core.check_callback -if("move_node"===t||"copy_node"===t){if(!(o&&o.is_multi||"move_node"!==t||e.inArray(n.id,r.children)!==i))return this._data.core.last_error={error:"check",plugin:"core",id:"core_08",reason:"Moving node to its current position",data:JSON.stringify({chk:t,pos:i,obj:!(!n||!n.id)&&n.id,par:!(!r||!r.id)&&r.id})},!1 -if(!(o&&o.is_multi||n.id!==r.id&&("move_node"!==t||e.inArray(n.id,r.children)!==i)&&-1===e.inArray(r.id,n.children_d)))return this._data.core.last_error={error:"check",plugin:"core",id:"core_01",reason:"Moving parent inside child",data:JSON.stringify({chk:t,pos:i,obj:!(!n||!n.id)&&n.id,par:!(!r||!r.id)&&r.id})},!1}return s&&s.data&&(s=s.data),s&&s.functions&&(!1===s.functions[t]||!0===s.functions[t])?(!1===s.functions[t]&&(this._data.core.last_error={error:"check",plugin:"core",id:"core_02",reason:"Node data prevents function: "+t,data:JSON.stringify({chk:t,pos:i,obj:!(!n||!n.id)&&n.id,par:!(!r||!r.id)&&r.id})}),s.functions[t]):!(!1===a||e.isFunction(a)&&!1===a.call(this,t,n,r,i,o)||a&&!1===a[t])||(this._data.core.last_error={error:"check",plugin:"core",id:"core_03",reason:"User config for core.check_callback prevents function: "+t,data:JSON.stringify({chk:t,pos:i,obj:!(!n||!n.id)&&n.id,par:!(!r||!r.id)&&r.id})},!1)},last_error:function(){return this._data.core.last_error},move_node:function(n,r,i,o,s,a,u){var c,l,h,d,p,f,g,m,v,y,b,C,A,_ -if(r=this.get_node(r),i=i===t?0:i,!r)return!1 -if(!i.toString().match(/^(before|after)$/)&&!s&&!this.is_loaded(r))return this.load_node(r,function(){this.move_node(n,r,i,o,!0,!1,u)}) -if(e.isArray(n)){if(1!==n.length){for(c=0,l=n.length;l>c;c++)(v=this.move_node(n[c],r,i,o,s,!1,u))&&(r=v,i="after") -return this.redraw(),!0}n=n[0]}if(!(n=n&&n.id?n:this.get_node(n))||n.id===e.jstree.root)return!1 -if(h=(n.parent||e.jstree.root).toString(),p=i.toString().match(/^(before|after)$/)&&r.id!==e.jstree.root?this.get_node(r.parent):r,f=u||(this._model.data[n.id]?this:e.jstree.reference(n.id)),g=!f||!f._id||this._id!==f._id,d=f&&f._id&&h&&f._model.data[h]&&f._model.data[h].children?e.inArray(n.id,f._model.data[h].children):-1,f&&f._id&&(n=f._model.data[n.id]),g)return!!(v=this.copy_node(n,r,i,o,s,!1,u))&&(f&&f.delete_node(n),v) -switch(r.id===e.jstree.root&&("before"===i&&(i="first"),"after"===i&&(i="last")),i){case"before":i=e.inArray(r.id,p.children) -break -case"after":i=e.inArray(r.id,p.children)+1 -break -case"inside":case"first":i=0 -break -case"last":i=p.children.length -break -default:i||(i=0)}if(i>p.children.length&&(i=p.children.length),!this.check("move_node",n,p,i,{core:!0,origin:u,is_multi:f&&f._id&&f._id!==this._id,is_foreign:!f||!f._id}))return this.settings.core.error.call(this,this._data.core.last_error),!1 -if(n.parent===p.id){for(m=p.children.concat(),v=e.inArray(n.id,m),-1!==v&&(m=e.vakata.array_remove(m,v),i>v&&i--),v=[],y=0,b=m.length;b>y;y++)v[y>=i?y+1:y]=m[y] -v[i]=n.id,p.children=v,this._node_changed(p.id),this.redraw(p.id===e.jstree.root)}else{for(v=n.children_d.concat(),v.push(n.id),y=0,b=n.parents.length;b>y;y++){for(m=[],_=f._model.data[n.parents[y]].children_d,C=0,A=_.length;A>C;C++)-1===e.inArray(_[C],v)&&m.push(_[C]) -f._model.data[n.parents[y]].children_d=m}for(f._model.data[h].children=e.vakata.array_remove_item(f._model.data[h].children,n.id),y=0,b=p.parents.length;b>y;y++)this._model.data[p.parents[y]].children_d=this._model.data[p.parents[y]].children_d.concat(v) -for(m=[],y=0,b=p.children.length;b>y;y++)m[y>=i?y+1:y]=p.children[y] -for(m[i]=n.id,p.children=m,p.children_d.push(n.id),p.children_d=p.children_d.concat(n.children_d),n.parent=p.id,v=p.parents.concat(),v.unshift(p.id),_=n.parents.length,n.parents=v,v=v.concat(),y=0,b=n.children_d.length;b>y;y++)this._model.data[n.children_d[y]].parents=this._model.data[n.children_d[y]].parents.slice(0,-1*_),Array.prototype.push.apply(this._model.data[n.children_d[y]].parents,v);(h===e.jstree.root||p.id===e.jstree.root)&&(this._model.force_full_redraw=!0),this._model.force_full_redraw||(this._node_changed(h),this._node_changed(p.id)),a||this.redraw()}return o&&o.call(this,n,p,i),this.trigger("move_node",{node:n,parent:p.id,position:i,old_parent:h,old_position:d,is_multi:f&&f._id&&f._id!==this._id,is_foreign:!f||!f._id,old_instance:f,new_instance:this}),n.id},copy_node:function(n,r,i,o,s,a,u){var c,l,h,d,p,f,g,m,v,y -if(r=this.get_node(r),i=i===t?0:i,!r)return!1 -if(!i.toString().match(/^(before|after)$/)&&!s&&!this.is_loaded(r))return this.load_node(r,function(){this.copy_node(n,r,i,o,!0,!1,u)}) -if(e.isArray(n)){if(1!==n.length){for(c=0,l=n.length;l>c;c++)(d=this.copy_node(n[c],r,i,o,s,!0,u))&&(r=d,i="after") -return this.redraw(),!0}n=n[0]}if(!(n=n&&n.id?n:this.get_node(n))||n.id===e.jstree.root)return!1 -switch(m=(n.parent||e.jstree.root).toString(),v=i.toString().match(/^(before|after)$/)&&r.id!==e.jstree.root?this.get_node(r.parent):r,y=u||(this._model.data[n.id]?this:e.jstree.reference(n.id)),!y||!y._id||this._id!==y._id,y&&y._id&&(n=y._model.data[n.id]),r.id===e.jstree.root&&("before"===i&&(i="first"),"after"===i&&(i="last")),i){case"before":i=e.inArray(r.id,v.children) -break -case"after":i=e.inArray(r.id,v.children)+1 -break -case"inside":case"first":i=0 -break -case"last":i=v.children.length -break -default:i||(i=0)}if(i>v.children.length&&(i=v.children.length),!this.check("copy_node",n,v,i,{core:!0,origin:u,is_multi:y&&y._id&&y._id!==this._id,is_foreign:!y||!y._id}))return this.settings.core.error.call(this,this._data.core.last_error),!1 -if(!(g=y?y.get_json(n,{no_id:!0,no_data:!0,no_state:!0}):n))return!1 -if(!0===g.id&&delete g.id,!(g=this._parse_model_from_json(g,v.id,v.parents.concat())))return!1 -for(d=this.get_node(g),n&&n.state&&!1===n.state.loaded&&(d.state.loaded=!1),h=[],h.push(g),h=h.concat(d.children_d),this.trigger("model",{nodes:h,parent:v.id}),p=0,f=v.parents.length;f>p;p++)this._model.data[v.parents[p]].children_d=this._model.data[v.parents[p]].children_d.concat(h) -for(h=[],p=0,f=v.children.length;f>p;p++)h[p>=i?p+1:p]=v.children[p] -return h[i]=d.id,v.children=h,v.children_d.push(d.id),v.children_d=v.children_d.concat(d.children_d),v.id===e.jstree.root&&(this._model.force_full_redraw=!0),this._model.force_full_redraw||this._node_changed(v.id),a||this.redraw(v.id===e.jstree.root),o&&o.call(this,d,v,i),this.trigger("copy_node",{node:d,original:n,parent:v.id,position:i,old_parent:m,old_position:y&&y._id&&m&&y._model.data[m]&&y._model.data[m].children?e.inArray(n.id,y._model.data[m].children):-1,is_multi:y&&y._id&&y._id!==this._id,is_foreign:!y||!y._id,old_instance:y,new_instance:this}),d.id},cut:function(t){if(t||(t=this._data.core.selected.concat()),e.isArray(t)||(t=[t]),!t.length)return!1 -var n,s,a,u=[] -for(s=0,a=t.length;a>s;s++)(n=this.get_node(t[s]))&&n.id&&n.id!==e.jstree.root&&u.push(n) -return!!u.length&&(r=u,o=this,i="move_node",void this.trigger("cut",{node:t}))},copy:function(t){if(t||(t=this._data.core.selected.concat()),e.isArray(t)||(t=[t]),!t.length)return!1 -var n,s,a,u=[] -for(s=0,a=t.length;a>s;s++)(n=this.get_node(t[s]))&&n.id&&n.id!==e.jstree.root&&u.push(n) -return!!u.length&&(r=u,o=this,i="copy_node",void this.trigger("copy",{node:t}))},get_buffer:function(){return{mode:i,node:r,inst:o}},can_paste:function(){return!1!==i&&!1!==r},paste:function(e,t){return!!((e=this.get_node(e))&&i&&i.match(/^(copy_node|move_node)$/)&&r)&&(this[i](r,e,t,!1,!1,!1,o)&&this.trigger("paste",{parent:e.id,node:r,mode:i}),r=!1,i=!1,void(o=!1))},clear_buffer:function(){r=!1,i=!1,o=!1,this.trigger("clear_buffer")},edit:function(t,n,r){var i,o,s,a,c,l,h,d,p,f=!1 -return!!(t=this.get_node(t))&&(this.check("edit",t,this.get_parent(t))?(p=t,n="string"==typeof n?n:t.text,this.set_text(t,""),t=this._open_to(t),p.text=n,i=this._data.core.rtl,o=this.element.width(),this._data.core.focused=p.id,s=t.children(".jstree-anchor").focus(),a=e("<span>"),c=n,l=e("<div />",{css:{position:"absolute",top:"-200px",left:i?"0px":"-1000px",visibility:"hidden"}}).appendTo(u.body),h=e("<input />",{value:c,class:"jstree-rename-input",css:{padding:"0",border:"1px solid silver","box-sizing":"border-box",display:"inline-block",height:this._data.core.li_height+"px",lineHeight:this._data.core.li_height+"px",width:"150px"},blur:e.proxy(function(n){n.stopImmediatePropagation(),n.preventDefault() -var i,o=a.children(".jstree-rename-input"),u=o.val(),d=this.settings.core.force_text -""===u&&(u=c),l.remove(),a.replaceWith(s),a.remove(),c=d?c:e("<div></div>").append(e.parseHTML(c)).html(),t=this.get_node(t),this.set_text(t,c),i=!!this.rename_node(t,d?e("<div></div>").text(u).text():e("<div></div>").append(e.parseHTML(u)).html()),i||this.set_text(t,c),this._data.core.focused=p.id,setTimeout(e.proxy(function(){var e=this.get_node(p.id,!0) -e.length&&(this._data.core.focused=p.id,e.children(".jstree-anchor").focus())},this),0),r&&r.call(this,p,i,f),h=null},this),keydown:function(e){var t=e.which -27===t&&(f=!0,this.value=c),(27===t||13===t||37===t||38===t||39===t||40===t||32===t)&&e.stopImmediatePropagation(),(27===t||13===t)&&(e.preventDefault(),this.blur())},click:function(e){e.stopImmediatePropagation()},mousedown:function(e){e.stopImmediatePropagation()},keyup:function(e){h.width(Math.min(l.text("pW"+this.value).width(),o))},keypress:function(e){return 13!==e.which&&void 0}}),d={fontFamily:s.css("fontFamily")||"",fontSize:s.css("fontSize")||"",fontWeight:s.css("fontWeight")||"",fontStyle:s.css("fontStyle")||"",fontStretch:s.css("fontStretch")||"",fontVariant:s.css("fontVariant")||"",letterSpacing:s.css("letterSpacing")||"",wordSpacing:s.css("wordSpacing")||""},a.attr("class",s.attr("class")).append(s.contents().clone()).append(h),s.replaceWith(a),l.css(d),h.css(d).width(Math.min(l.text("pW"+h[0].value).width(),o))[0].select(),void e(u).one("mousedown.jstree touchstart.jstree dnd_start.vakata",function(t){h&&t.target!==h&&e(h).blur()})):(this.settings.core.error.call(this,this._data.core.last_error),!1))},set_theme:function(t,n){if(!t)return!1 -if(!0===n){var r=this.settings.core.themes.dir -r||(r=e.jstree.path+"/themes"),n=r+"/"+t+"/style.css"}n&&-1===e.inArray(n,s)&&(e("head").append('<link rel="stylesheet" href="'+n+'" type="text/css" />'),s.push(n)),this._data.core.themes.name&&this.element.removeClass("jstree-"+this._data.core.themes.name),this._data.core.themes.name=t,this.element.addClass("jstree-"+t),this.element[this.settings.core.themes.responsive?"addClass":"removeClass"]("jstree-"+t+"-responsive"),this.trigger("set_theme",{theme:t})},get_theme:function(){return this._data.core.themes.name},set_theme_variant:function(e){this._data.core.themes.variant&&this.element.removeClass("jstree-"+this._data.core.themes.name+"-"+this._data.core.themes.variant),this._data.core.themes.variant=e,e&&this.element.addClass("jstree-"+this._data.core.themes.name+"-"+this._data.core.themes.variant)},get_theme_variant:function(){return this._data.core.themes.variant},show_stripes:function(){this._data.core.themes.stripes=!0,this.get_container_ul().addClass("jstree-striped"),this.trigger("show_stripes")},hide_stripes:function(){this._data.core.themes.stripes=!1,this.get_container_ul().removeClass("jstree-striped"),this.trigger("hide_stripes")},toggle_stripes:function(){this._data.core.themes.stripes?this.hide_stripes():this.show_stripes()},show_dots:function(){this._data.core.themes.dots=!0,this.get_container_ul().removeClass("jstree-no-dots"),this.trigger("show_dots")},hide_dots:function(){this._data.core.themes.dots=!1,this.get_container_ul().addClass("jstree-no-dots"),this.trigger("hide_dots")},toggle_dots:function(){this._data.core.themes.dots?this.hide_dots():this.show_dots()},show_icons:function(){this._data.core.themes.icons=!0,this.get_container_ul().removeClass("jstree-no-icons"),this.trigger("show_icons")},hide_icons:function(){this._data.core.themes.icons=!1,this.get_container_ul().addClass("jstree-no-icons"),this.trigger("hide_icons")},toggle_icons:function(){this._data.core.themes.icons?this.hide_icons():this.show_icons()},show_ellipsis:function(){this._data.core.themes.ellipsis=!0,this.get_container_ul().addClass("jstree-ellipsis"),this.trigger("show_ellipsis")},hide_ellipsis:function(){this._data.core.themes.ellipsis=!1,this.get_container_ul().removeClass("jstree-ellipsis"),this.trigger("hide_ellipsis")},toggle_ellipsis:function(){this._data.core.themes.ellipsis?this.hide_ellipsis():this.show_ellipsis()},set_icon:function(n,r){var i,o,s,a -if(e.isArray(n)){for(n=n.slice(),i=0,o=n.length;o>i;i++)this.set_icon(n[i],r) -return!0}return!(!(n=this.get_node(n))||n.id===e.jstree.root)&&(a=n.icon,n.icon=!0===r||null===r||r===t||""===r||r,s=this.get_node(n,!0).children(".jstree-anchor").children(".jstree-themeicon"),!1===r?(s.removeClass("jstree-themeicon-custom "+a).css("background","").removeAttr("rel"),this.hide_icon(n)):!0===r||null===r||r===t||""===r?(s.removeClass("jstree-themeicon-custom "+a).css("background","").removeAttr("rel"),!1===a&&this.show_icon(n)):-1===r.indexOf("/")&&-1===r.indexOf(".")?(s.removeClass(a).css("background",""),s.addClass(r+" jstree-themeicon-custom").attr("rel",r),!1===a&&this.show_icon(n)):(s.removeClass(a).css("background",""),s.addClass("jstree-themeicon-custom").css("background","url('"+r+"') center center no-repeat").attr("rel",r),!1===a&&this.show_icon(n)),!0)},get_icon:function(t){return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&t.icon},hide_icon:function(t){var n,r -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.hide_icon(t[n]) -return!0}return!(!(t=this.get_node(t))||t===e.jstree.root)&&(t.icon=!1,this.get_node(t,!0).children(".jstree-anchor").children(".jstree-themeicon").addClass("jstree-themeicon-hidden"),!0)},show_icon:function(t){var n,r,i -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.show_icon(t[n]) -return!0}return!(!(t=this.get_node(t))||t===e.jstree.root)&&(i=this.get_node(t,!0),t.icon=!i.length||i.children(".jstree-anchor").children(".jstree-themeicon").attr("rel"),t.icon||(t.icon=!0),i.children(".jstree-anchor").children(".jstree-themeicon").removeClass("jstree-themeicon-hidden"),!0)}},e.vakata={},e.vakata.attributes=function(t,n){t=e(t)[0] -var r=n?{}:[] -return t&&t.attributes&&e.each(t.attributes,function(t,i){-1===e.inArray(i.name.toLowerCase(),["style","contenteditable","hasfocus","tabindex"])&&null!==i.value&&""!==e.trim(i.value)&&(n?r[i.name]=i.value:r.push(i.name))}),r},e.vakata.array_unique=function(e){var n,r,i=[],o={} -for(n=0,r=e.length;r>n;n++)o[e[n]]===t&&(i.push(e[n]),o[e[n]]=!0) -return i},e.vakata.array_remove=function(e,t){return e.splice(t,1),e},e.vakata.array_remove_item=function(t,n){var r=e.inArray(n,t) -return-1!==r?e.vakata.array_remove(t,r):t},e.vakata.array_filter=function(e,t,n,r,i){if(e.filter)return e.filter(t,n) -r=[] -for(i in e)~~i+""==i+""&&i>=0&&t.call(n,e[i],+i,e)&&r.push(e[i]) -return r},e.jstree.plugins.changed=function(e,t){var n=[] -this.trigger=function(e,r){var i,o -if(r||(r={}),"changed"===e.replace(".jstree","")){r.changed={selected:[],deselected:[]} -var s={} -for(i=0,o=n.length;o>i;i++)s[n[i]]=1 -for(i=0,o=r.selected.length;o>i;i++)s[r.selected[i]]?s[r.selected[i]]=2:r.changed.selected.push(r.selected[i]) -for(i=0,o=n.length;o>i;i++)1===s[n[i]]&&r.changed.deselected.push(n[i]) -n=r.selected.slice()}t.trigger.call(this,e,r)},this.refresh=function(e,r){return n=[],t.refresh.apply(this,arguments)}} -var h=u.createElement("I") -h.className="jstree-icon jstree-checkbox",h.setAttribute("role","presentation"),e.jstree.defaults.checkbox={visible:!0,three_state:!0,whole_node:!0,keep_selected_style:!0,cascade:"",tie_selection:!0,cascade_to_disabled:!0,cascade_to_hidden:!0},e.jstree.plugins.checkbox=function(n,r){this.bind=function(){r.bind.call(this),this._data.checkbox.uto=!1,this._data.checkbox.selected=[],this.settings.checkbox.three_state&&(this.settings.checkbox.cascade="up+down+undetermined"),this.element.on("init.jstree",e.proxy(function(){this._data.checkbox.visible=this.settings.checkbox.visible,this.settings.checkbox.keep_selected_style||this.element.addClass("jstree-checkbox-no-clicked"),this.settings.checkbox.tie_selection&&this.element.addClass("jstree-checkbox-selection")},this)).on("loading.jstree",e.proxy(function(){this[this._data.checkbox.visible?"show_checkboxes":"hide_checkboxes"]()},this)),-1!==this.settings.checkbox.cascade.indexOf("undetermined")&&this.element.on("changed.jstree uncheck_node.jstree check_node.jstree uncheck_all.jstree check_all.jstree move_node.jstree copy_node.jstree redraw.jstree open_node.jstree",e.proxy(function(){this._data.checkbox.uto&&clearTimeout(this._data.checkbox.uto),this._data.checkbox.uto=setTimeout(e.proxy(this._undetermined,this),50)},this)),this.settings.checkbox.tie_selection||this.element.on("model.jstree",e.proxy(function(e,t){var n,r,i=this._model.data,o=(i[t.parent],t.nodes) -for(n=0,r=o.length;r>n;n++)i[o[n]].state.checked=i[o[n]].state.checked||i[o[n]].original&&i[o[n]].original.state&&i[o[n]].original.state.checked,i[o[n]].state.checked&&this._data.checkbox.selected.push(o[n])},this)),(-1!==this.settings.checkbox.cascade.indexOf("up")||-1!==this.settings.checkbox.cascade.indexOf("down"))&&this.element.on("model.jstree",e.proxy(function(t,n){var r,i,o,s,a,u,c=this._model.data,l=c[n.parent],h=n.nodes,d=[],p=this.settings.checkbox.cascade,f=this.settings.checkbox.tie_selection -if(-1!==p.indexOf("down"))if(l.state[f?"selected":"checked"]){for(i=0,o=h.length;o>i;i++)c[h[i]].state[f?"selected":"checked"]=!0 -this._data[f?"core":"checkbox"].selected=this._data[f?"core":"checkbox"].selected.concat(h)}else for(i=0,o=h.length;o>i;i++)if(c[h[i]].state[f?"selected":"checked"]){for(s=0,a=c[h[i]].children_d.length;a>s;s++)c[c[h[i]].children_d[s]].state[f?"selected":"checked"]=!0 -this._data[f?"core":"checkbox"].selected=this._data[f?"core":"checkbox"].selected.concat(c[h[i]].children_d)}if(-1!==p.indexOf("up")){for(i=0,o=l.children_d.length;o>i;i++)c[l.children_d[i]].children.length||d.push(c[l.children_d[i]].parent) -for(d=e.vakata.array_unique(d),s=0,a=d.length;a>s;s++)for(l=c[d[s]];l&&l.id!==e.jstree.root;){for(r=0,i=0,o=l.children.length;o>i;i++)r+=c[l.children[i]].state[f?"selected":"checked"] -if(r!==o)break -l.state[f?"selected":"checked"]=!0,this._data[f?"core":"checkbox"].selected.push(l.id),u=this.get_node(l,!0),u&&u.length&&u.attr("aria-selected",!0).children(".jstree-anchor").addClass(f?"jstree-clicked":"jstree-checked"),l=this.get_node(l.parent)}}this._data[f?"core":"checkbox"].selected=e.vakata.array_unique(this._data[f?"core":"checkbox"].selected)},this)).on(this.settings.checkbox.tie_selection?"select_node.jstree":"check_node.jstree",e.proxy(function(t,n){var r,i,o,s,a=n.node,u=this._model.data,c=this.get_node(a.parent),l=this.settings.checkbox.cascade,h=this.settings.checkbox.tie_selection,d={},p=this._data[h?"core":"checkbox"].selected -for(r=0,i=p.length;i>r;r++)d[p[r]]=!0 -if(-1!==l.indexOf("down")){var f=this._cascade_new_checked_state(a.id,!0),g=a.children_d.concat(a.id) -for(r=0,i=g.length;i>r;r++)f.indexOf(g[r])>-1?d[g[r]]=!0:delete d[g[r]]}if(-1!==l.indexOf("up"))for(;c&&c.id!==e.jstree.root;){for(o=0,r=0,i=c.children.length;i>r;r++)o+=u[c.children[r]].state[h?"selected":"checked"] -if(o!==i)break -c.state[h?"selected":"checked"]=!0,d[c.id]=!0,s=this.get_node(c,!0),s&&s.length&&s.attr("aria-selected",!0).children(".jstree-anchor").addClass(h?"jstree-clicked":"jstree-checked"),c=this.get_node(c.parent)}p=[] -for(r in d)d.hasOwnProperty(r)&&p.push(r) -this._data[h?"core":"checkbox"].selected=p},this)).on(this.settings.checkbox.tie_selection?"deselect_all.jstree":"uncheck_all.jstree",e.proxy(function(t,n){var r,i,o,s=this.get_node(e.jstree.root),a=this._model.data -for(r=0,i=s.children_d.length;i>r;r++)(o=a[s.children_d[r]])&&o.original&&o.original.state&&o.original.state.undetermined&&(o.original.state.undetermined=!1)},this)).on(this.settings.checkbox.tie_selection?"deselect_node.jstree":"uncheck_node.jstree",e.proxy(function(t,n){var r,i,o,s=n.node,a=(this.get_node(s,!0),this.settings.checkbox.cascade),u=this.settings.checkbox.tie_selection,c=this._data[u?"core":"checkbox"].selected,l=s.children_d.concat(s.id) -if(-1!==a.indexOf("down")){var h=this._cascade_new_checked_state(s.id,!1) -c=e.vakata.array_filter(c,function(e){return-1===l.indexOf(e)||h.indexOf(e)>-1})}if(-1!==a.indexOf("up")&&-1===c.indexOf(s.id)){for(r=0,i=s.parents.length;i>r;r++)o=this._model.data[s.parents[r]],o.state[u?"selected":"checked"]=!1,o&&o.original&&o.original.state&&o.original.state.undetermined&&(o.original.state.undetermined=!1),(o=this.get_node(s.parents[r],!0))&&o.length&&o.attr("aria-selected",!1).children(".jstree-anchor").removeClass(u?"jstree-clicked":"jstree-checked") -c=e.vakata.array_filter(c,function(e){return-1===s.parents.indexOf(e)})}this._data[u?"core":"checkbox"].selected=c},this)),-1!==this.settings.checkbox.cascade.indexOf("up")&&this.element.on("delete_node.jstree",e.proxy(function(t,n){for(var r,i,o,s,a=this.get_node(n.parent),u=this._model.data,c=this.settings.checkbox.tie_selection;a&&a.id!==e.jstree.root&&!a.state[c?"selected":"checked"];){for(o=0,r=0,i=a.children.length;i>r;r++)o+=u[a.children[r]].state[c?"selected":"checked"] -if(!(i>0&&o===i))break -a.state[c?"selected":"checked"]=!0,this._data[c?"core":"checkbox"].selected.push(a.id),s=this.get_node(a,!0),s&&s.length&&s.attr("aria-selected",!0).children(".jstree-anchor").addClass(c?"jstree-clicked":"jstree-checked"),a=this.get_node(a.parent)}},this)).on("move_node.jstree",e.proxy(function(t,n){var r,i,o,s,a,u=n.is_multi,c=n.old_parent,l=this.get_node(n.parent),h=this._model.data,d=this.settings.checkbox.tie_selection -if(!u)for(r=this.get_node(c);r&&r.id!==e.jstree.root&&!r.state[d?"selected":"checked"];){for(i=0,o=0,s=r.children.length;s>o;o++)i+=h[r.children[o]].state[d?"selected":"checked"] -if(!(s>0&&i===s))break -r.state[d?"selected":"checked"]=!0,this._data[d?"core":"checkbox"].selected.push(r.id),a=this.get_node(r,!0),a&&a.length&&a.attr("aria-selected",!0).children(".jstree-anchor").addClass(d?"jstree-clicked":"jstree-checked"),r=this.get_node(r.parent)}for(r=l;r&&r.id!==e.jstree.root;){for(i=0,o=0,s=r.children.length;s>o;o++)i+=h[r.children[o]].state[d?"selected":"checked"] -if(i===s)r.state[d?"selected":"checked"]||(r.state[d?"selected":"checked"]=!0,this._data[d?"core":"checkbox"].selected.push(r.id),(a=this.get_node(r,!0))&&a.length&&a.attr("aria-selected",!0).children(".jstree-anchor").addClass(d?"jstree-clicked":"jstree-checked")) -else{if(!r.state[d?"selected":"checked"])break -r.state[d?"selected":"checked"]=!1,this._data[d?"core":"checkbox"].selected=e.vakata.array_remove_item(this._data[d?"core":"checkbox"].selected,r.id),(a=this.get_node(r,!0))&&a.length&&a.attr("aria-selected",!1).children(".jstree-anchor").removeClass(d?"jstree-clicked":"jstree-checked")}r=this.get_node(r.parent)}},this))},this.get_undetermined=function(n){if(-1===this.settings.checkbox.cascade.indexOf("undetermined"))return[] -var r,i,o,s,a={},u=this._model.data,c=this.settings.checkbox.tie_selection,l=this._data[c?"core":"checkbox"].selected,h=[],d=this,p=[] -for(r=0,i=l.length;i>r;r++)if(u[l[r]]&&u[l[r]].parents)for(o=0,s=u[l[r]].parents.length;s>o&&a[u[l[r]].parents[o]]===t;o++)u[l[r]].parents[o]!==e.jstree.root&&(a[u[l[r]].parents[o]]=!0,h.push(u[l[r]].parents[o])) -for(this.element.find(".jstree-closed").not(":has(.jstree-children)").each(function(){var n,c=d.get_node(this) -if(c)if(c.state.loaded){for(r=0,i=c.children_d.length;i>r;r++)if(n=u[c.children_d[r]],!n.state.loaded&&n.original&&n.original.state&&n.original.state.undetermined&&!0===n.original.state.undetermined)for(a[n.id]===t&&n.id!==e.jstree.root&&(a[n.id]=!0,h.push(n.id)),o=0,s=n.parents.length;s>o;o++)a[n.parents[o]]===t&&n.parents[o]!==e.jstree.root&&(a[n.parents[o]]=!0,h.push(n.parents[o]))}else if(c.original&&c.original.state&&c.original.state.undetermined&&!0===c.original.state.undetermined)for(a[c.id]===t&&c.id!==e.jstree.root&&(a[c.id]=!0,h.push(c.id)),o=0,s=c.parents.length;s>o;o++)a[c.parents[o]]===t&&c.parents[o]!==e.jstree.root&&(a[c.parents[o]]=!0,h.push(c.parents[o]))}),r=0,i=h.length;i>r;r++)u[h[r]].state[c?"selected":"checked"]||p.push(n?u[h[r]]:h[r]) -return p},this._undetermined=function(){if(null!==this.element){var e,t,n,r=this.get_undetermined(!1) -for(this.element.find(".jstree-undetermined").removeClass("jstree-undetermined"),e=0,t=r.length;t>e;e++)(n=this.get_node(r[e],!0))&&n.length&&n.children(".jstree-anchor").children(".jstree-checkbox").addClass("jstree-undetermined")}},this.redraw_node=function(t,n,i,o){if(t=r.redraw_node.apply(this,arguments)){var s,a,u=null,c=null -for(s=0,a=t.childNodes.length;a>s;s++)if(t.childNodes[s]&&t.childNodes[s].className&&-1!==t.childNodes[s].className.indexOf("jstree-anchor")){u=t.childNodes[s] -break}u&&(!this.settings.checkbox.tie_selection&&this._model.data[t.id].state.checked&&(u.className+=" jstree-checked"),c=h.cloneNode(!1),this._model.data[t.id].state.checkbox_disabled&&(c.className+=" jstree-checkbox-disabled"),u.insertBefore(c,u.childNodes[0]))}return i||-1===this.settings.checkbox.cascade.indexOf("undetermined")||(this._data.checkbox.uto&&clearTimeout(this._data.checkbox.uto),this._data.checkbox.uto=setTimeout(e.proxy(this._undetermined,this),50)),t},this.show_checkboxes=function(){this._data.core.themes.checkboxes=!0,this.get_container_ul().removeClass("jstree-no-checkboxes")},this.hide_checkboxes=function(){this._data.core.themes.checkboxes=!1,this.get_container_ul().addClass("jstree-no-checkboxes")},this.toggle_checkboxes=function(){this._data.core.themes.checkboxes?this.hide_checkboxes():this.show_checkboxes()},this.is_undetermined=function(t){t=this.get_node(t) -var n,r,i=this.settings.checkbox.cascade,o=this.settings.checkbox.tie_selection,s=this._data[o?"core":"checkbox"].selected,a=this._model.data -if(!t||!0===t.state[o?"selected":"checked"]||-1===i.indexOf("undetermined")||-1===i.indexOf("down")&&-1===i.indexOf("up"))return!1 -if(!t.state.loaded&&!0===t.original.state.undetermined)return!0 -for(n=0,r=t.children_d.length;r>n;n++)if(-1!==e.inArray(t.children_d[n],s)||!a[t.children_d[n]].state.loaded&&a[t.children_d[n]].original.state.undetermined)return!0 -return!1},this.disable_checkbox=function(t){var n,r,i -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.disable_checkbox(t[n]) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(i=this.get_node(t,!0),void(t.state.checkbox_disabled||(t.state.checkbox_disabled=!0,i&&i.length&&i.children(".jstree-anchor").children(".jstree-checkbox").addClass("jstree-checkbox-disabled"),this.trigger("disable_checkbox",{node:t}))))},this.enable_checkbox=function(t){var n,r,i -if(e.isArray(t)){for(t=t.slice(),n=0,r=t.length;r>n;n++)this.enable_checkbox(t[n]) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(i=this.get_node(t,!0),void(t.state.checkbox_disabled&&(t.state.checkbox_disabled=!1,i&&i.length&&i.children(".jstree-anchor").children(".jstree-checkbox").removeClass("jstree-checkbox-disabled"),this.trigger("enable_checkbox",{node:t}))))},this.activate_node=function(t,n){return!e(n.target).hasClass("jstree-checkbox-disabled")&&(this.settings.checkbox.tie_selection&&(this.settings.checkbox.whole_node||e(n.target).hasClass("jstree-checkbox"))&&(n.ctrlKey=!0),this.settings.checkbox.tie_selection||!this.settings.checkbox.whole_node&&!e(n.target).hasClass("jstree-checkbox")?r.activate_node.call(this,t,n):!this.is_disabled(t)&&(this.is_checked(t)?this.uncheck_node(t,n):this.check_node(t,n),void this.trigger("activate_node",{node:this.get_node(t)})))},this._cascade_new_checked_state=function(e,t){var n,r,i,o=this,s=this.settings.checkbox.tie_selection,a=this._model.data[e],u=[],c=[] -if(!this.settings.checkbox.cascade_to_disabled&&a.state.disabled||!this.settings.checkbox.cascade_to_hidden&&a.state.hidden)i=this.get_checked_descendants(e),a.state[s?"selected":"checked"]&&i.push(a.id),u=u.concat(i) -else{if(a.children)for(n=0,r=a.children.length;r>n;n++){var l=a.children[n] -i=o._cascade_new_checked_state(l,t),u=u.concat(i),i.indexOf(l)>-1&&c.push(l)}var h=o.get_node(a,!0),d=c.length>0&&c.length<a.children.length -a.original&&a.original.state&&a.original.state.undetermined&&(a.original.state.undetermined=d),d?(a.state[s?"selected":"checked"]=!1,h.attr("aria-selected",!1).children(".jstree-anchor").removeClass(s?"jstree-clicked":"jstree-checked")):t&&c.length===a.children.length?(a.state[s?"selected":"checked"]=t,u.push(a.id),h.attr("aria-selected",!0).children(".jstree-anchor").addClass(s?"jstree-clicked":"jstree-checked")):(a.state[s?"selected":"checked"]=!1,h.attr("aria-selected",!1).children(".jstree-anchor").removeClass(s?"jstree-clicked":"jstree-checked"))}return u},this.get_checked_descendants=function(t){var n=this,r=n.settings.checkbox.tie_selection,i=n._model.data[t] -return e.vakata.array_filter(i.children_d,function(e){return n._model.data[e].state[r?"selected":"checked"]})},this.check_node=function(t,n){if(this.settings.checkbox.tie_selection)return this.select_node(t,!1,!0,n) -var r,i,o -if(e.isArray(t)){for(t=t.slice(),i=0,o=t.length;o>i;i++)this.check_node(t[i],n) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(r=this.get_node(t,!0),void(t.state.checked||(t.state.checked=!0,this._data.checkbox.selected.push(t.id),r&&r.length&&r.children(".jstree-anchor").addClass("jstree-checked"),this.trigger("check_node",{node:t,selected:this._data.checkbox.selected,event:n}))))},this.uncheck_node=function(t,n){if(this.settings.checkbox.tie_selection)return this.deselect_node(t,!1,n) -var r,i,o -if(e.isArray(t)){for(t=t.slice(),r=0,i=t.length;i>r;r++)this.uncheck_node(t[r],n) -return!0}return!(!(t=this.get_node(t))||t.id===e.jstree.root)&&(o=this.get_node(t,!0),void(t.state.checked&&(t.state.checked=!1,this._data.checkbox.selected=e.vakata.array_remove_item(this._data.checkbox.selected,t.id),o.length&&o.children(".jstree-anchor").removeClass("jstree-checked"),this.trigger("uncheck_node",{node:t,selected:this._data.checkbox.selected,event:n}))))},this.check_all=function(){if(this.settings.checkbox.tie_selection)return this.select_all() -var t,n -this._data.checkbox.selected.concat([]) -for(this._data.checkbox.selected=this._model.data[e.jstree.root].children_d.concat(),t=0,n=this._data.checkbox.selected.length;n>t;t++)this._model.data[this._data.checkbox.selected[t]]&&(this._model.data[this._data.checkbox.selected[t]].state.checked=!0) -this.redraw(!0),this.trigger("check_all",{selected:this._data.checkbox.selected})},this.uncheck_all=function(){if(this.settings.checkbox.tie_selection)return this.deselect_all() -var e,t,n=this._data.checkbox.selected.concat([]) -for(e=0,t=this._data.checkbox.selected.length;t>e;e++)this._model.data[this._data.checkbox.selected[e]]&&(this._model.data[this._data.checkbox.selected[e]].state.checked=!1) -this._data.checkbox.selected=[],this.element.find(".jstree-checked").removeClass("jstree-checked"),this.trigger("uncheck_all",{selected:this._data.checkbox.selected,node:n})},this.is_checked=function(t){return this.settings.checkbox.tie_selection?this.is_selected(t):!(!(t=this.get_node(t))||t.id===e.jstree.root)&&t.state.checked},this.get_checked=function(t){return this.settings.checkbox.tie_selection?this.get_selected(t):t?e.map(this._data.checkbox.selected,e.proxy(function(e){return this.get_node(e)},this)):this._data.checkbox.selected.slice()},this.get_top_checked=function(t){if(this.settings.checkbox.tie_selection)return this.get_top_selected(t) -var n,r,i,o,s=this.get_checked(!0),a={} -for(n=0,r=s.length;r>n;n++)a[s[n].id]=s[n] -for(n=0,r=s.length;r>n;n++)for(i=0,o=s[n].children_d.length;o>i;i++)a[s[n].children_d[i]]&&delete a[s[n].children_d[i]] -s=[] -for(n in a)a.hasOwnProperty(n)&&s.push(n) -return t?e.map(s,e.proxy(function(e){return this.get_node(e)},this)):s},this.get_bottom_checked=function(t){if(this.settings.checkbox.tie_selection)return this.get_bottom_selected(t) -var n,r,i=this.get_checked(!0),o=[] -for(n=0,r=i.length;r>n;n++)i[n].children.length||o.push(i[n].id) -return t?e.map(o,e.proxy(function(e){return this.get_node(e)},this)):o},this.load_node=function(t,n){var i,o,s -if(!e.isArray(t)&&!this.settings.checkbox.tie_selection&&(s=this.get_node(t))&&s.state.loaded)for(i=0,o=s.children_d.length;o>i;i++)this._model.data[s.children_d[i]].state.checked&&(!0,this._data.checkbox.selected=e.vakata.array_remove_item(this._data.checkbox.selected,s.children_d[i])) -return r.load_node.apply(this,arguments)},this.get_state=function(){var e=r.get_state.apply(this,arguments) -return this.settings.checkbox.tie_selection?e:(e.checkbox=this._data.checkbox.selected.slice(),e)},this.set_state=function(t,n){var i=r.set_state.apply(this,arguments) -if(i&&t.checkbox){if(!this.settings.checkbox.tie_selection){this.uncheck_all() -var o=this -e.each(t.checkbox,function(e,t){o.check_node(t)})}return delete t.checkbox,this.set_state(t,n),!1}return i},this.refresh=function(e,t){return this.settings.checkbox.tie_selection&&(this._data.checkbox.selected=[]),r.refresh.apply(this,arguments)}},e.jstree.defaults.conditionalselect=function(){return!0},e.jstree.plugins.conditionalselect=function(e,t){this.activate_node=function(e,n){return this.settings.conditionalselect.call(this,this.get_node(e),n)?t.activate_node.call(this,e,n):void 0}},e.jstree.defaults.contextmenu={select_node:!0,show_at_node:!0,items:function(t,n){return{create:{separator_before:!1,separator_after:!0,_disabled:!1,label:"Create",action:function(t){var n=e.jstree.reference(t.reference),r=n.get_node(t.reference) -n.create_node(r,{},"last",function(e){try{n.edit(e)}catch(t){setTimeout(function(){n.edit(e)},0)}})}},rename:{separator_before:!1,separator_after:!1,_disabled:!1,label:"Rename",action:function(t){var n=e.jstree.reference(t.reference),r=n.get_node(t.reference) -n.edit(r)}},remove:{separator_before:!1,icon:!1,separator_after:!1,_disabled:!1,label:"Delete",action:function(t){var n=e.jstree.reference(t.reference),r=n.get_node(t.reference) -n.is_selected(r)?n.delete_node(n.get_selected()):n.delete_node(r)}},ccp:{separator_before:!0,icon:!1,separator_after:!1,label:"Edit",action:!1,submenu:{cut:{separator_before:!1,separator_after:!1,label:"Cut",action:function(t){var n=e.jstree.reference(t.reference),r=n.get_node(t.reference) -n.is_selected(r)?n.cut(n.get_top_selected()):n.cut(r)}},copy:{separator_before:!1,icon:!1,separator_after:!1,label:"Copy",action:function(t){var n=e.jstree.reference(t.reference),r=n.get_node(t.reference) -n.is_selected(r)?n.copy(n.get_top_selected()):n.copy(r)}},paste:{separator_before:!1,icon:!1,_disabled:function(t){return!e.jstree.reference(t.reference).can_paste()},separator_after:!1,label:"Paste",action:function(t){var n=e.jstree.reference(t.reference),r=n.get_node(t.reference) -n.paste(r)}}}}}}},e.jstree.plugins.contextmenu=function(n,r){this.bind=function(){r.bind.call(this) -var t,n,i=0,o=null -this.element.on("init.jstree loading.jstree ready.jstree",e.proxy(function(){this.get_container_ul().addClass("jstree-contextmenu")},this)).on("contextmenu.jstree",".jstree-anchor",e.proxy(function(e,t){"input"!==e.target.tagName.toLowerCase()&&(e.preventDefault(),i=e.ctrlKey?+new Date:0,(t||o)&&(i=+new Date+1e4),o&&clearTimeout(o),this.is_loading(e.currentTarget)||this.show_contextmenu(e.currentTarget,e.pageX,e.pageY,e))},this)).on("click.jstree",".jstree-anchor",e.proxy(function(t){this._data.contextmenu.visible&&(!i||+new Date-i>250)&&e.vakata.context.hide(),i=0},this)).on("touchstart.jstree",".jstree-anchor",function(r){r.originalEvent&&r.originalEvent.changedTouches&&r.originalEvent.changedTouches[0]&&(t=r.originalEvent.changedTouches[0].clientX,n=r.originalEvent.changedTouches[0].clientY,o=setTimeout(function(){e(r.currentTarget).trigger("contextmenu",!0)},750))}).on("touchmove.vakata.jstree",function(r){o&&r.originalEvent&&r.originalEvent.changedTouches&&r.originalEvent.changedTouches[0]&&(Math.abs(t-r.originalEvent.changedTouches[0].clientX)>10||Math.abs(n-r.originalEvent.changedTouches[0].clientY)>10)&&(clearTimeout(o),e.vakata.context.hide())}).on("touchend.vakata.jstree",function(e){o&&clearTimeout(o)}),e(u).on("context_hide.vakata.jstree",e.proxy(function(t,n){this._data.contextmenu.visible=!1,e(n.reference).removeClass("jstree-context")},this))},this.teardown=function(){this._data.contextmenu.visible&&e.vakata.context.hide(),r.teardown.call(this)},this.show_contextmenu=function(n,r,i,o){if(!(n=this.get_node(n))||n.id===e.jstree.root)return!1 -var s=this.settings.contextmenu,a=this.get_node(n,!0),u=a.children(".jstree-anchor"),c=!1,l=!1;(s.show_at_node||r===t||i===t)&&(c=u.offset(),r=c.left,i=c.top+this._data.core.li_height),this.settings.contextmenu.select_node&&!this.is_selected(n)&&this.activate_node(n,o),l=s.items,e.isFunction(l)&&(l=l.call(this,n,e.proxy(function(e){this._show_contextmenu(n,r,i,e)},this))),e.isPlainObject(l)&&this._show_contextmenu(n,r,i,l)},this._show_contextmenu=function(t,n,r,i){var o=this.get_node(t,!0),s=o.children(".jstree-anchor") -e(u).one("context_show.vakata.jstree",e.proxy(function(t,n){var r="jstree-contextmenu jstree-"+this.get_theme()+"-contextmenu" -e(n.element).addClass(r),s.addClass("jstree-context")},this)),this._data.contextmenu.visible=!0,e.vakata.context.show(s,{x:n,y:r},i),this.trigger("show_contextmenu",{node:t,x:n,y:r})}},function(e){var t=!1,n={element:!1,reference:!1,position_x:0,position_y:0,items:[],html:"",is_visible:!1} -e.vakata.context={settings:{hide_onmouseleave:0,icons:!0},_trigger:function(t){e(u).triggerHandler("context_"+t+".vakata",{reference:n.reference,element:n.element,position:{x:n.position_x,y:n.position_y}})},_execute:function(t){return!(!(t=n.items[t])||t._disabled&&(!e.isFunction(t._disabled)||t._disabled({item:t,reference:n.reference,element:n.element}))||!t.action)&&t.action.call(null,{item:t,reference:n.reference,element:n.element,position:{x:n.position_x,y:n.position_y}})},_parse:function(t,r){if(!t)return!1 -r||(n.html="",n.items=[]) -var i,o="",s=!1 -return r&&(o+="<ul>"),e.each(t,function(t,r){return!r||(n.items.push(r),!s&&r.separator_before&&(o+="<li class='vakata-context-separator'><a href='#' "+(e.vakata.context.settings.icons?"":'style="margin-left:0px;"')+"> </a></li>"),s=!1,o+="<li class='"+(r._class||"")+(!0===r._disabled||e.isFunction(r._disabled)&&r._disabled({item:r,reference:n.reference,element:n.element})?" vakata-contextmenu-disabled ":"")+"' "+(r.shortcut?" data-shortcut='"+r.shortcut+"' ":"")+">",o+="<a href='#' rel='"+(n.items.length-1)+"' "+(r.title?"title='"+r.title+"'":"")+">",e.vakata.context.settings.icons&&(o+="<i ",r.icon&&(o+=-1!==r.icon.indexOf("/")||-1!==r.icon.indexOf(".")?" style='background:url(\""+r.icon+"\") center center no-repeat' ":" class='"+r.icon+"' "),o+="></i><span class='vakata-contextmenu-sep'> </span>"),o+=(e.isFunction(r.label)?r.label({item:t,reference:n.reference,element:n.element}):r.label)+(r.shortcut?' <span class="vakata-contextmenu-shortcut vakata-contextmenu-shortcut-'+r.shortcut+'">'+(r.shortcut_label||"")+"</span>":"")+"</a>",r.submenu&&(i=e.vakata.context._parse(r.submenu,!0))&&(o+=i),o+="</li>",void(r.separator_after&&(o+="<li class='vakata-context-separator'><a href='#' "+(e.vakata.context.settings.icons?"":'style="margin-left:0px;"')+"> </a></li>",s=!0)))}),o=o.replace(/<li class\='vakata-context-separator'\><\/li\>$/,""),r&&(o+="</ul>"),r||(n.html=o,e.vakata.context._trigger("parse")),o.length>10&&o},_show_submenu:function(n){if(n=e(n),n.length&&n.children("ul").length){var r=n.children("ul"),i=n.offset().left,o=i+n.outerWidth(),s=n.offset().top,a=r.width(),u=r.height(),c=e(window).width()+e(window).scrollLeft(),l=e(window).height()+e(window).scrollTop() -t?n[o-(a+10+n.outerWidth())<0?"addClass":"removeClass"]("vakata-context-left"):n[o+a>c&&i>c-o?"addClass":"removeClass"]("vakata-context-right"),s+u+10>l&&r.css("bottom","-1px"),n.hasClass("vakata-context-right")?a>i&&r.css("margin-right",i-a):a>c-o&&r.css("margin-left",c-o-a),r.show()}},show:function(r,i,o){var s,a,c,l,h,d,p,f -switch(n.element&&n.element.length&&n.element.width(""),!0){case!i&&!r:return!1 -case!!i&&!!r:n.reference=r,n.position_x=i.x,n.position_y=i.y -break -case!i&&!!r:n.reference=r,s=r.offset(),n.position_x=s.left+r.outerHeight(),n.position_y=s.top -break -case!!i&&!r:n.position_x=i.x,n.position_y=i.y}r&&!o&&e(r).data("vakata_contextmenu")&&(o=e(r).data("vakata_contextmenu")),e.vakata.context._parse(o)&&n.element.html(n.html),n.items.length&&(n.element.appendTo(u.body),a=n.element,c=n.position_x,l=n.position_y,h=a.width(),d=a.height(),p=e(window).width()+e(window).scrollLeft(),f=e(window).height()+e(window).scrollTop(),t&&(c-=a.outerWidth()-e(r).outerWidth())<e(window).scrollLeft()+20&&(c=e(window).scrollLeft()+20),c+h+20>p&&(c=p-(h+20)),l+d+20>f&&(l=f-(d+20)),n.element.css({left:c,top:l}).show().find("a").first().focus().parent().addClass("vakata-context-hover"),n.is_visible=!0,e.vakata.context._trigger("show"))},hide:function(){n.is_visible&&(n.element.hide().find("ul").hide().end().find(":focus").blur().end().detach(),n.is_visible=!1,e.vakata.context._trigger("hide"))}},e(function(){t="rtl"===e(u.body).css("direction") -var r=!1 -n.element=e("<ul class='vakata-context'></ul>"),n.element.on("mouseenter","li",function(t){t.stopImmediatePropagation(),e.contains(this,t.relatedTarget)||(r&&clearTimeout(r),n.element.find(".vakata-context-hover").removeClass("vakata-context-hover").end(),e(this).siblings().find("ul").hide().end().end().parentsUntil(".vakata-context","li").addBack().addClass("vakata-context-hover"),e.vakata.context._show_submenu(this))}).on("mouseleave","li",function(t){e.contains(this,t.relatedTarget)||e(this).find(".vakata-context-hover").addBack().removeClass("vakata-context-hover")}).on("mouseleave",function(t){e(this).find(".vakata-context-hover").removeClass("vakata-context-hover"),e.vakata.context.settings.hide_onmouseleave&&(r=setTimeout(function(t){return function(){e.vakata.context.hide()}}(),e.vakata.context.settings.hide_onmouseleave))}).on("click","a",function(t){t.preventDefault(),e(this).blur().parent().hasClass("vakata-context-disabled")||!1===e.vakata.context._execute(e(this).attr("rel"))||e.vakata.context.hide()}).on("keydown","a",function(t){var r=null -switch(t.which){case 13:case 32:t.type="click",t.preventDefault(),e(t.currentTarget).trigger(t) -break -case 37:n.is_visible&&(n.element.find(".vakata-context-hover").last().closest("li").first().find("ul").hide().find(".vakata-context-hover").removeClass("vakata-context-hover").end().end().children("a").focus(),t.stopImmediatePropagation(),t.preventDefault()) -break -case 38:n.is_visible&&(r=n.element.find("ul:visible").addBack().last().children(".vakata-context-hover").removeClass("vakata-context-hover").prevAll("li:not(.vakata-context-separator)").first(),r.length||(r=n.element.find("ul:visible").addBack().last().children("li:not(.vakata-context-separator)").last()),r.addClass("vakata-context-hover").children("a").focus(),t.stopImmediatePropagation(),t.preventDefault()) -break -case 39:n.is_visible&&(n.element.find(".vakata-context-hover").last().children("ul").show().children("li:not(.vakata-context-separator)").removeClass("vakata-context-hover").first().addClass("vakata-context-hover").children("a").focus(),t.stopImmediatePropagation(),t.preventDefault()) -break -case 40:n.is_visible&&(r=n.element.find("ul:visible").addBack().last().children(".vakata-context-hover").removeClass("vakata-context-hover").nextAll("li:not(.vakata-context-separator)").first(),r.length||(r=n.element.find("ul:visible").addBack().last().children("li:not(.vakata-context-separator)").first()),r.addClass("vakata-context-hover").children("a").focus(),t.stopImmediatePropagation(),t.preventDefault()) -break -case 27:e.vakata.context.hide(),t.preventDefault()}}).on("keydown",function(e){e.preventDefault() -var t=n.element.find(".vakata-contextmenu-shortcut-"+e.which).parent() -t.parent().not(".vakata-context-disabled")&&t.click()}),e(u).on("mousedown.vakata.jstree",function(t){n.is_visible&&n.element[0]!==t.target&&!e.contains(n.element[0],t.target)&&e.vakata.context.hide()}).on("context_show.vakata.jstree",function(e,r){n.element.find("li:has(ul)").children("a").addClass("vakata-context-parent"),t&&n.element.addClass("vakata-context-rtl").css("direction","rtl"),n.element.find("ul").hide().end()})})}(e),e.jstree.defaults.dnd={copy:!0,open_timeout:500,is_draggable:!0,check_while_dragging:!0,always_copy:!1,inside_pos:0,drag_selection:!0,touch:!0,large_drop_target:!1,large_drag_target:!1,use_html5:!1} -var d,p -e.jstree.plugins.dnd=function(t,n){this.init=function(e,t){n.init.call(this,e,t),this.settings.dnd.use_html5=this.settings.dnd.use_html5&&"draggable"in u.createElement("span")},this.bind=function(){n.bind.call(this),this.element.on(this.settings.dnd.use_html5?"dragstart.jstree":"mousedown.jstree touchstart.jstree",this.settings.dnd.large_drag_target?".jstree-node":".jstree-anchor",e.proxy(function(t){if(this.settings.dnd.large_drag_target&&e(t.target).closest(".jstree-node")[0]!==t.currentTarget)return!0 -if("touchstart"===t.type&&(!this.settings.dnd.touch||"selected"===this.settings.dnd.touch&&!e(t.currentTarget).closest(".jstree-node").children(".jstree-anchor").hasClass("jstree-clicked")))return!0 -var n=this.get_node(t.target),r=this.is_selected(n)&&this.settings.dnd.drag_selection?this.get_top_selected().length:1,i=r>1?r+" "+this.get_string("nodes"):this.get_text(t.currentTarget) -if(this.settings.core.force_text&&(i=e.vakata.html.escape(i)),n&&n.id&&n.id!==e.jstree.root&&(1===t.which||"touchstart"===t.type||"dragstart"===t.type)&&(!0===this.settings.dnd.is_draggable||e.isFunction(this.settings.dnd.is_draggable)&&this.settings.dnd.is_draggable.call(this,r>1?this.get_top_selected(!0):[n],t))){if(d={jstree:!0,origin:this,obj:this.get_node(n,!0),nodes:r>1?this.get_top_selected():[n.id]},p=t.currentTarget,!this.settings.dnd.use_html5)return this.element.trigger("mousedown.jstree"),e.vakata.dnd.start(t,d,'<div id="jstree-dnd" class="jstree-'+this.get_theme()+" jstree-"+this.get_theme()+"-"+this.get_theme_variant()+" "+(this.settings.core.themes.responsive?" jstree-dnd-responsive":"")+'"><i class="jstree-icon jstree-er"></i>'+i+'<ins class="jstree-copy" style="display:none;">+</ins></div>') -e.vakata.dnd._trigger("start",t,{helper:e(),element:p,data:d})}},this)),this.settings.dnd.use_html5&&this.element.on("dragover.jstree",function(t){return t.preventDefault(),e.vakata.dnd._trigger("move",t,{helper:e(),element:p,data:d}),!1}).on("drop.jstree",e.proxy(function(t){return t.preventDefault(),e.vakata.dnd._trigger("stop",t,{helper:e(),element:p,data:d}),!1},this))},this.redraw_node=function(e,t,r,i){if((e=n.redraw_node.apply(this,arguments))&&this.settings.dnd.use_html5)if(this.settings.dnd.large_drag_target)e.setAttribute("draggable",!0) -else{var o,s,a=null -for(o=0,s=e.childNodes.length;s>o;o++)if(e.childNodes[o]&&e.childNodes[o].className&&-1!==e.childNodes[o].className.indexOf("jstree-anchor")){a=e.childNodes[o] -break}a&&a.setAttribute("draggable",!0)}return e}},e(function(){var n=!1,r=!1,i=!1,o=!1,s=e('<div id="jstree-marker"> </div>').hide() -e(u).on("dragover.vakata.jstree",function(t){p&&e.vakata.dnd._trigger("move",t,{helper:e(),element:p,data:d})}).on("drop.vakata.jstree",function(t){p&&(e.vakata.dnd._trigger("stop",t,{helper:e(),element:p,data:d}),p=null,d=null)}).on("dnd_start.vakata.jstree",function(e,t){n=!1,i=!1,t&&t.data&&t.data.jstree&&s.appendTo(u.body)}).on("dnd_move.vakata.jstree",function(a,u){var c=u.event.target!==i.target -if(o&&(!u.event||"dragover"!==u.event.type||c)&&clearTimeout(o),u&&u.data&&u.data.jstree&&(!u.event.target.id||"jstree-marker"!==u.event.target.id)){i=u.event -var l,h,d,p,f,g,m,v,y,b,C,A,_,I,w,x,k,j=e.jstree.reference(u.event.target),E=!1,S=!1,T=!1 -if(j&&j._data&&j._data.dnd)if(s.attr("class","jstree-"+j.get_theme()+(j.settings.core.themes.responsive?" jstree-dnd-responsive":"")),w=u.data.origin&&(u.data.origin.settings.dnd.always_copy||u.data.origin.settings.dnd.copy&&(u.event.metaKey||u.event.ctrlKey)),u.helper.children().attr("class","jstree-"+j.get_theme()+" jstree-"+j.get_theme()+"-"+j.get_theme_variant()+" "+(j.settings.core.themes.responsive?" jstree-dnd-responsive":"")).find(".jstree-copy").first()[w?"show":"hide"](),u.event.target!==j.element[0]&&u.event.target!==j.get_container_ul()[0]||0!==j.get_container_ul().children().length){if((E=j.settings.dnd.large_drop_target?e(u.event.target).closest(".jstree-node").children(".jstree-anchor"):e(u.event.target).closest(".jstree-anchor"))&&E.length&&E.parent().is(".jstree-closed, .jstree-open, .jstree-leaf")&&(S=E.offset(),T=(u.event.pageY!==t?u.event.pageY:u.event.originalEvent.pageY)-S.top,d=E.outerHeight(),g=d/3>T?["b","i","a"]:T>d-d/3?["a","i","b"]:T>d/2?["i","a","b"]:["i","b","a"],e.each(g,function(t,i){switch(i){case"b":l=S.left-6,h=S.top,p=j.get_parent(E),f=E.parent().index(),k="jstree-below" -break -case"i":_=j.settings.dnd.inside_pos,I=j.get_node(E.parent()),l=S.left-2,h=S.top+d/2+1,p=I.id,f="first"===_?0:"last"===_?I.children.length:Math.min(_,I.children.length),k="jstree-inside" -break -case"a":l=S.left-6,h=S.top+d,p=j.get_parent(E),f=E.parent().index()+1,k="jstree-above"}for(m=!0,v=0,y=u.data.nodes.length;y>v;v++)if(b=u.data.origin&&(u.data.origin.settings.dnd.always_copy||u.data.origin.settings.dnd.copy&&(u.event.metaKey||u.event.ctrlKey))?"copy_node":"move_node",C=f,"move_node"===b&&"a"===i&&u.data.origin&&u.data.origin===j&&p===j.get_parent(u.data.nodes[v])&&(A=j.get_node(p),C>e.inArray(u.data.nodes[v],A.children)&&(C-=1)),!(m=m&&(j&&j.settings&&j.settings.dnd&&!1===j.settings.dnd.check_while_dragging||j.check(b,u.data.origin&&u.data.origin!==j?u.data.origin.get_node(u.data.nodes[v]):u.data.nodes[v],p,C,{dnd:!0,ref:j.get_node(E.parent()),pos:i,origin:u.data.origin,is_multi:u.data.origin&&u.data.origin!==j,is_foreign:!u.data.origin})))){j&&j.last_error&&(r=j.last_error()) -break}return"i"===i&&E.parent().is(".jstree-closed")&&j.settings.dnd.open_timeout&&(!u.event||"dragover"!==u.event.type||c)&&(o&&clearTimeout(o),o=setTimeout(function(e,t){return function(){e.open_node(t)}}(j,E),j.settings.dnd.open_timeout)),m?(x=j.get_node(p,!0),x.hasClass(".jstree-dnd-parent")||(e(".jstree-dnd-parent").removeClass("jstree-dnd-parent"),x.addClass("jstree-dnd-parent")),n={ins:j,par:p,pos:"i"!==i||"last"!==_||0!==f||j.is_loaded(I)?f:"last"},s.css({left:l+"px",top:h+"px"}).show(),s.removeClass("jstree-above jstree-inside jstree-below").addClass(k),u.helper.find(".jstree-icon").first().removeClass("jstree-er").addClass("jstree-ok"),u.event.originalEvent&&u.event.originalEvent.dataTransfer&&(u.event.originalEvent.dataTransfer.dropEffect=w?"copy":"move"),r={},g=!0,!1):void 0}),!0===g))return}else{for(m=!0,v=0,y=u.data.nodes.length;y>v&&(m=m&&j.check(u.data.origin&&(u.data.origin.settings.dnd.always_copy||u.data.origin.settings.dnd.copy&&(u.event.metaKey||u.event.ctrlKey))?"copy_node":"move_node",u.data.origin&&u.data.origin!==j?u.data.origin.get_node(u.data.nodes[v]):u.data.nodes[v],e.jstree.root,"last",{dnd:!0,ref:j.get_node(e.jstree.root),pos:"i",origin:u.data.origin,is_multi:u.data.origin&&u.data.origin!==j,is_foreign:!u.data.origin}));v++);if(m)return n={ins:j,par:e.jstree.root,pos:"last"},s.hide(),u.helper.find(".jstree-icon").first().removeClass("jstree-er").addClass("jstree-ok"),void(u.event.originalEvent&&u.event.originalEvent.dataTransfer&&(u.event.originalEvent.dataTransfer.dropEffect=w?"copy":"move"))}e(".jstree-dnd-parent").removeClass("jstree-dnd-parent"),n=!1,u.helper.find(".jstree-icon").removeClass("jstree-ok").addClass("jstree-er"),u.event.originalEvent&&u.event.originalEvent.dataTransfer,s.hide()}}).on("dnd_scroll.vakata.jstree",function(e,t){t&&t.data&&t.data.jstree&&(s.hide(),n=!1,i=!1,t.helper.find(".jstree-icon").first().removeClass("jstree-ok").addClass("jstree-er"))}).on("dnd_stop.vakata.jstree",function(t,a){if(e(".jstree-dnd-parent").removeClass("jstree-dnd-parent"),o&&clearTimeout(o),a&&a.data&&a.data.jstree){s.hide().detach() -var u,c,l=[] -if(n){for(u=0,c=a.data.nodes.length;c>u;u++)l[u]=a.data.origin?a.data.origin.get_node(a.data.nodes[u]):a.data.nodes[u] -n.ins[a.data.origin&&(a.data.origin.settings.dnd.always_copy||a.data.origin.settings.dnd.copy&&(a.event.metaKey||a.event.ctrlKey))?"copy_node":"move_node"](l,n.par,n.pos,!1,!1,!1,a.data.origin)}else u=e(a.event.target).closest(".jstree"),u.length&&r&&r.error&&"check"===r.error&&(u=u.jstree(!0))&&u.settings.core.error.call(this,r) -i=!1,n=!1}}).on("keyup.jstree keydown.jstree",function(t,a){(a=e.vakata.dnd._get())&&a.data&&a.data.jstree&&("keyup"===t.type&&27===t.which?(o&&clearTimeout(o),n=!1,r=!1,i=!1,o=!1,s.hide().detach(),e.vakata.dnd._clean()):(a.helper.find(".jstree-copy").first()[a.data.origin&&(a.data.origin.settings.dnd.always_copy||a.data.origin.settings.dnd.copy&&(t.metaKey||t.ctrlKey))?"show":"hide"](),i&&(i.metaKey=t.metaKey,i.ctrlKey=t.ctrlKey,e.vakata.dnd._trigger("move",i))))})}),function(e){e.vakata.html={div:e("<div />"),escape:function(t){return e.vakata.html.div.text(t).html()},strip:function(t){return e.vakata.html.div.empty().append(e.parseHTML(t)).text()}} -var n={element:!1,target:!1,is_down:!1,is_drag:!1,helper:!1,helper_w:0,data:!1,init_x:0,init_y:0,scroll_l:0,scroll_t:0,scroll_e:!1,scroll_i:!1,is_touch:!1} -e.vakata.dnd={settings:{scroll_speed:10,scroll_proximity:20,helper_left:5,helper_top:10,threshold:5,threshold_touch:10},_trigger:function(n,r,i){i===t&&(i=e.vakata.dnd._get()),i.event=r,e(u).triggerHandler("dnd_"+n+".vakata",i)},_get:function(){return{data:n.data,element:n.element,helper:n.helper}},_clean:function(){n.helper&&n.helper.remove(),n.scroll_i&&(clearInterval(n.scroll_i),n.scroll_i=!1),n={element:!1,target:!1,is_down:!1,is_drag:!1,helper:!1,helper_w:0,data:!1,init_x:0,init_y:0,scroll_l:0,scroll_t:0,scroll_e:!1,scroll_i:!1,is_touch:!1},p=null,e(u).off("mousemove.vakata.jstree touchmove.vakata.jstree",e.vakata.dnd.drag),e(u).off("mouseup.vakata.jstree touchend.vakata.jstree",e.vakata.dnd.stop)},_scroll:function(t){if(!n.scroll_e||!n.scroll_l&&!n.scroll_t)return n.scroll_i&&(clearInterval(n.scroll_i),n.scroll_i=!1),!1 -if(!n.scroll_i)return n.scroll_i=setInterval(e.vakata.dnd._scroll,100),!1 -if(!0===t)return!1 -var r=n.scroll_e.scrollTop(),i=n.scroll_e.scrollLeft() -n.scroll_e.scrollTop(r+n.scroll_t*e.vakata.dnd.settings.scroll_speed),n.scroll_e.scrollLeft(i+n.scroll_l*e.vakata.dnd.settings.scroll_speed),(r!==n.scroll_e.scrollTop()||i!==n.scroll_e.scrollLeft())&&e.vakata.dnd._trigger("scroll",n.scroll_e)},start:function(t,r,i){"touchstart"===t.type&&t.originalEvent&&t.originalEvent.changedTouches&&t.originalEvent.changedTouches[0]&&(t.pageX=t.originalEvent.changedTouches[0].pageX,t.pageY=t.originalEvent.changedTouches[0].pageY,t.target=u.elementFromPoint(t.originalEvent.changedTouches[0].pageX-window.pageXOffset,t.originalEvent.changedTouches[0].pageY-window.pageYOffset)),n.is_drag&&e.vakata.dnd.stop({}) -try{t.currentTarget.unselectable="on",t.currentTarget.onselectstart=function(){return!1},t.currentTarget.style&&(t.currentTarget.style.touchAction="none",t.currentTarget.style.msTouchAction="none",t.currentTarget.style.MozUserSelect="none")}catch(e){}return n.init_x=t.pageX,n.init_y=t.pageY,n.data=r,n.is_down=!0,n.element=t.currentTarget,n.target=t.target,n.is_touch="touchstart"===t.type,!1!==i&&(n.helper=e("<div id='vakata-dnd'></div>").html(i).css({display:"block",margin:"0",padding:"0",position:"absolute",top:"-2000px",lineHeight:"16px",zIndex:"10000"})),e(u).on("mousemove.vakata.jstree touchmove.vakata.jstree",e.vakata.dnd.drag),e(u).on("mouseup.vakata.jstree touchend.vakata.jstree",e.vakata.dnd.stop),!1},drag:function(t){if("touchmove"===t.type&&t.originalEvent&&t.originalEvent.changedTouches&&t.originalEvent.changedTouches[0]&&(t.pageX=t.originalEvent.changedTouches[0].pageX,t.pageY=t.originalEvent.changedTouches[0].pageY,t.target=u.elementFromPoint(t.originalEvent.changedTouches[0].pageX-window.pageXOffset,t.originalEvent.changedTouches[0].pageY-window.pageYOffset)),n.is_down){if(!n.is_drag){if(!(Math.abs(t.pageX-n.init_x)>(n.is_touch?e.vakata.dnd.settings.threshold_touch:e.vakata.dnd.settings.threshold)||Math.abs(t.pageY-n.init_y)>(n.is_touch?e.vakata.dnd.settings.threshold_touch:e.vakata.dnd.settings.threshold)))return -n.helper&&(n.helper.appendTo(u.body),n.helper_w=n.helper.outerWidth()),n.is_drag=!0,e(n.target).one("click.vakata",!1),e.vakata.dnd._trigger("start",t)}var r=!1,i=!1,o=!1,s=!1,a=!1,c=!1,l=!1,h=!1,d=!1,p=!1 -return n.scroll_t=0,n.scroll_l=0,n.scroll_e=!1,e(e(t.target).parentsUntil("body").addBack().get().reverse()).filter(function(){return/^auto|scroll$/.test(e(this).css("overflow"))&&(this.scrollHeight>this.offsetHeight||this.scrollWidth>this.offsetWidth)}).each(function(){var r=e(this),i=r.offset() -return this.scrollHeight>this.offsetHeight&&(i.top+r.height()-t.pageY<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_t=1),t.pageY-i.top<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_t=-1)),this.scrollWidth>this.offsetWidth&&(i.left+r.width()-t.pageX<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_l=1),t.pageX-i.left<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_l=-1)),n.scroll_t||n.scroll_l?(n.scroll_e=e(this),!1):void 0}),n.scroll_e||(r=e(u),i=e(window),o=r.height(),s=i.height(),a=r.width(),c=i.width(),l=r.scrollTop(),h=r.scrollLeft(),o>s&&t.pageY-l<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_t=-1),o>s&&s-(t.pageY-l)<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_t=1),a>c&&t.pageX-h<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_l=-1),a>c&&c-(t.pageX-h)<e.vakata.dnd.settings.scroll_proximity&&(n.scroll_l=1),(n.scroll_t||n.scroll_l)&&(n.scroll_e=r)),n.scroll_e&&e.vakata.dnd._scroll(!0),n.helper&&(d=parseInt(t.pageY+e.vakata.dnd.settings.helper_top,10),p=parseInt(t.pageX+e.vakata.dnd.settings.helper_left,10),o&&d+25>o&&(d=o-50),a&&p+n.helper_w>a&&(p=a-(n.helper_w+2)),n.helper.css({left:p+"px",top:d+"px"})),e.vakata.dnd._trigger("move",t),!1}},stop:function(t){if("touchend"===t.type&&t.originalEvent&&t.originalEvent.changedTouches&&t.originalEvent.changedTouches[0]&&(t.pageX=t.originalEvent.changedTouches[0].pageX,t.pageY=t.originalEvent.changedTouches[0].pageY,t.target=u.elementFromPoint(t.originalEvent.changedTouches[0].pageX-window.pageXOffset,t.originalEvent.changedTouches[0].pageY-window.pageYOffset)),n.is_drag)t.target!==n.target&&e(n.target).off("click.vakata"),e.vakata.dnd._trigger("stop",t) -else if("touchend"===t.type&&t.target===n.target){var r=setTimeout(function(){e(t.target).click()},100) -e(t.target).one("click",function(){r&&clearTimeout(r)})}return e.vakata.dnd._clean(),!1}}}(e),e.jstree.defaults.massload=null,e.jstree.plugins.massload=function(t,n){this.init=function(e,t){this._data.massload={},n.init.call(this,e,t)},this._load_nodes=function(t,r,i,o){var s,a,u,c=this.settings.massload,l=[],h=this._model.data -if(!i){for(s=0,a=t.length;a>s;s++)(!h[t[s]]||!h[t[s]].state.loaded&&!h[t[s]].state.failed||o)&&(l.push(t[s]),(u=this.get_node(t[s],!0))&&u.length&&u.addClass("jstree-loading").attr("aria-busy",!0)) -if(this._data.massload={},l.length){if(e.isFunction(c))return c.call(this,l,e.proxy(function(e){var s,a -if(e)for(s in e)e.hasOwnProperty(s)&&(this._data.massload[s]=e[s]) -for(s=0,a=t.length;a>s;s++)(u=this.get_node(t[s],!0))&&u.length&&u.removeClass("jstree-loading").attr("aria-busy",!1) -n._load_nodes.call(this,t,r,i,o)},this)) -if("object"==typeof c&&c&&c.url)return c=e.extend(!0,{},c),e.isFunction(c.url)&&(c.url=c.url.call(this,l)),e.isFunction(c.data)&&(c.data=c.data.call(this,l)),e.ajax(c).done(e.proxy(function(e,s,a){var c,l -if(e)for(c in e)e.hasOwnProperty(c)&&(this._data.massload[c]=e[c]) -for(c=0,l=t.length;l>c;c++)(u=this.get_node(t[c],!0))&&u.length&&u.removeClass("jstree-loading").attr("aria-busy",!1) -n._load_nodes.call(this,t,r,i,o)},this)).fail(e.proxy(function(e){n._load_nodes.call(this,t,r,i,o)},this))}}return n._load_nodes.call(this,t,r,i,o)},this._load_node=function(t,r){var i,o=this._data.massload[t.id],s=null -return o?(s=this["string"==typeof o?"_append_html_data":"_append_json_data"](t,"string"==typeof o?e(e.parseHTML(o)).filter(function(){return 3!==this.nodeType}):o,function(e){r.call(this,e)}),i=this.get_node(t.id,!0),i&&i.length&&i.removeClass("jstree-loading").attr("aria-busy",!1),delete this._data.massload[t.id],s):n._load_node.call(this,t,r)}},e.jstree.defaults.search={ajax:!1,fuzzy:!1,case_sensitive:!1,show_only_matches:!1,show_only_matches_children:!1,close_opened_onclear:!0,search_leaves_only:!1,search_callback:!1},e.jstree.plugins.search=function(n,r){this.bind=function(){r.bind.call(this),this._data.search.str="",this._data.search.dom=e(),this._data.search.res=[],this._data.search.opn=[],this._data.search.som=!1,this._data.search.smc=!1,this._data.search.hdn=[],this.element.on("search.jstree",e.proxy(function(t,n){if(this._data.search.som&&n.res.length){var r,i,o,s,a=this._model.data,u=[] -for(r=0,i=n.res.length;i>r;r++)if(a[n.res[r]]&&!a[n.res[r]].state.hidden&&(u.push(n.res[r]),u=u.concat(a[n.res[r]].parents),this._data.search.smc))for(o=0,s=a[n.res[r]].children_d.length;s>o;o++)a[a[n.res[r]].children_d[o]]&&!a[a[n.res[r]].children_d[o]].state.hidden&&u.push(a[n.res[r]].children_d[o]) -u=e.vakata.array_remove_item(e.vakata.array_unique(u),e.jstree.root),this._data.search.hdn=this.hide_all(!0),this.show_node(u,!0),this.redraw(!0)}},this)).on("clear_search.jstree",e.proxy(function(e,t){this._data.search.som&&t.res.length&&(this.show_node(this._data.search.hdn,!0),this.redraw(!0))},this))},this.search=function(n,r,i,o,s,a){if(!1===n||""===e.trim(n.toString()))return this.clear_search() -o=this.get_node(o),o=o&&o.id?o.id:null,n=n.toString() -var u,c,l=this.settings.search,h=!!l.ajax&&l.ajax,d=this._model.data,p=null,f=[],g=[] -if(this._data.search.res.length&&!s&&this.clear_search(),i===t&&(i=l.show_only_matches),a===t&&(a=l.show_only_matches_children),!r&&!1!==h)return e.isFunction(h)?h.call(this,n,e.proxy(function(t){t&&t.d&&(t=t.d),this._load_nodes(e.isArray(t)?e.vakata.array_unique(t):[],function(){this.search(n,!0,i,o,s,a)})},this),o):(h=e.extend({},h),h.data||(h.data={}),h.data.str=n,o&&(h.data.inside=o),this._data.search.lastRequest&&this._data.search.lastRequest.abort(),this._data.search.lastRequest=e.ajax(h).fail(e.proxy(function(){this._data.core.last_error={error:"ajax",plugin:"search",id:"search_01",reason:"Could not load search parents",data:JSON.stringify(h)},this.settings.core.error.call(this,this._data.core.last_error)},this)).done(e.proxy(function(t){t&&t.d&&(t=t.d),this._load_nodes(e.isArray(t)?e.vakata.array_unique(t):[],function(){this.search(n,!0,i,o,s,a)})},this)),this._data.search.lastRequest) -if(s||(this._data.search.str=n,this._data.search.dom=e(),this._data.search.res=[],this._data.search.opn=[],this._data.search.som=i,this._data.search.smc=a),p=new e.vakata.search(n,!0,{caseSensitive:l.case_sensitive,fuzzy:l.fuzzy}),e.each(d[o||e.jstree.root].children_d,function(e,t){var r=d[t] -r.text&&!r.state.hidden&&(!l.search_leaves_only||r.state.loaded&&0===r.children.length)&&(l.search_callback&&l.search_callback.call(this,n,r)||!l.search_callback&&p.search(r.text).isMatch)&&(f.push(t),g=g.concat(r.parents))}),f.length){for(g=e.vakata.array_unique(g),u=0,c=g.length;c>u;u++)g[u]!==e.jstree.root&&d[g[u]]&&!0===this.open_node(g[u],null,0)&&this._data.search.opn.push(g[u]) -s?(this._data.search.dom=this._data.search.dom.add(e(this.element[0].querySelectorAll("#"+e.map(f,function(t){return-1!=="0123456789".indexOf(t[0])?"\\3"+t[0]+" "+t.substr(1).replace(e.jstree.idregex,"\\$&"):t.replace(e.jstree.idregex,"\\$&")}).join(", #")))),this._data.search.res=e.vakata.array_unique(this._data.search.res.concat(f))):(this._data.search.dom=e(this.element[0].querySelectorAll("#"+e.map(f,function(t){return-1!=="0123456789".indexOf(t[0])?"\\3"+t[0]+" "+t.substr(1).replace(e.jstree.idregex,"\\$&"):t.replace(e.jstree.idregex,"\\$&")}).join(", #"))),this._data.search.res=f),this._data.search.dom.children(".jstree-anchor").addClass("jstree-search")}this.trigger("search",{nodes:this._data.search.dom,str:n,res:this._data.search.res,show_only_matches:i})},this.clear_search=function(){this.settings.search.close_opened_onclear&&this.close_node(this._data.search.opn,0),this.trigger("clear_search",{nodes:this._data.search.dom,str:this._data.search.str,res:this._data.search.res}),this._data.search.res.length&&(this._data.search.dom=e(this.element[0].querySelectorAll("#"+e.map(this._data.search.res,function(t){return-1!=="0123456789".indexOf(t[0])?"\\3"+t[0]+" "+t.substr(1).replace(e.jstree.idregex,"\\$&"):t.replace(e.jstree.idregex,"\\$&")}).join(", #"))),this._data.search.dom.children(".jstree-anchor").removeClass("jstree-search")),this._data.search.str="",this._data.search.res=[],this._data.search.opn=[],this._data.search.dom=e()},this.redraw_node=function(t,n,i,o){if((t=r.redraw_node.apply(this,arguments))&&-1!==e.inArray(t.id,this._data.search.res)){var s,a,u=null -for(s=0,a=t.childNodes.length;a>s;s++)if(t.childNodes[s]&&t.childNodes[s].className&&-1!==t.childNodes[s].className.indexOf("jstree-anchor")){u=t.childNodes[s] -break}u&&(u.className+=" jstree-search")}return t}},function(e){e.vakata.search=function(t,n,r){r=r||{},r=e.extend({},e.vakata.search.defaults,r),!1!==r.fuzzy&&(r.fuzzy=!0),t=r.caseSensitive?t:t.toLowerCase() -var i,o,s,a,u=r.location,c=r.distance,l=r.threshold,h=t.length -return h>32&&(r.fuzzy=!1),r.fuzzy&&(i=1<<h-1,o=function(){var e={},n=0 -for(n=0;h>n;n++)e[t.charAt(n)]=0 -for(n=0;h>n;n++)e[t.charAt(n)]|=1<<h-n-1 -return e}(),s=function(e,t){var n=e/h,r=Math.abs(u-t) -return c?n+r/c:r?1:n}),a=function(e){if(e=r.caseSensitive?e:e.toLowerCase(),t===e||-1!==e.indexOf(t))return{isMatch:!0,score:0} -if(!r.fuzzy)return{isMatch:!1,score:1} -var n,a,c,d,p,f,g,m,v,y=e.length,b=l,C=e.indexOf(t,u),A=h+y,_=1,I=[] -for(-1!==C&&(b=Math.min(s(0,C),b),-1!==(C=e.lastIndexOf(t,u+h))&&(b=Math.min(s(0,C),b))),C=-1,n=0;h>n;n++){for(c=0,d=A;d>c;)s(n,u+d)<=b?c=d:A=d,d=Math.floor((A-c)/2+c) -for(A=d,f=Math.max(1,u-d+1),g=Math.min(u+d,y)+h,m=new Array(g+2),m[g+1]=(1<<n)-1,a=g;a>=f;a--)if(v=o[e.charAt(a-1)],m[a]=0===n?(m[a+1]<<1|1)&v:(m[a+1]<<1|1)&v|(p[a+1]|p[a])<<1|1|p[a+1],m[a]&i&&(_=s(n,a-1),b>=_)){if(b=_,C=a-1,I.push(C),!(C>u))break -f=Math.max(1,2*u-C)}if(s(n+1,u)>b)break -p=m}return{isMatch:C>=0,score:_}},!0===n?{search:a}:a(n)},e.vakata.search.defaults={location:0,distance:100,threshold:.6,fuzzy:!1,caseSensitive:!1}}(e),e.jstree.defaults.sort=function(e,t){return this.get_text(e)>this.get_text(t)?1:-1},e.jstree.plugins.sort=function(t,n){this.bind=function(){n.bind.call(this),this.element.on("model.jstree",e.proxy(function(e,t){this.sort(t.parent,!0)},this)).on("rename_node.jstree create_node.jstree",e.proxy(function(e,t){this.sort(t.parent||t.node.parent,!1),this.redraw_node(t.parent||t.node.parent,!0)},this)).on("move_node.jstree copy_node.jstree",e.proxy(function(e,t){this.sort(t.parent,!1),this.redraw_node(t.parent,!0)},this))},this.sort=function(t,n){var r,i -if((t=this.get_node(t))&&t.children&&t.children.length&&(t.children.sort(e.proxy(this.settings.sort,this)),n))for(r=0,i=t.children_d.length;i>r;r++)this.sort(t.children_d[r],!1)}} -var f=!1 -e.jstree.defaults.state={key:"jstree",events:"changed.jstree open_node.jstree close_node.jstree check_node.jstree uncheck_node.jstree",ttl:!1,filter:!1,preserve_loaded:!1},e.jstree.plugins.state=function(t,n){this.bind=function(){n.bind.call(this) -var t=e.proxy(function(){this.element.on(this.settings.state.events,e.proxy(function(){f&&clearTimeout(f),f=setTimeout(e.proxy(function(){this.save_state()},this),100)},this)),this.trigger("state_ready")},this) -this.element.on("ready.jstree",e.proxy(function(e,n){this.element.one("restore_state.jstree",t),this.restore_state()||t()},this))},this.save_state=function(){var t=this.get_state() -this.settings.state.preserve_loaded||delete t.core.loaded -var n={state:t,ttl:this.settings.state.ttl,sec:+new Date} -e.vakata.storage.set(this.settings.state.key,JSON.stringify(n))},this.restore_state=function(){var t=e.vakata.storage.get(this.settings.state.key) -if(t)try{t=JSON.parse(t)}catch(e){return!1}return!(t&&t.ttl&&t.sec&&+new Date-t.sec>t.ttl)&&(t&&t.state&&(t=t.state),t&&e.isFunction(this.settings.state.filter)&&(t=this.settings.state.filter.call(this,t)),!!t&&(this.settings.state.preserve_loaded||delete t.core.loaded,this.element.one("set_state.jstree",function(n,r){r.instance.trigger("restore_state",{state:e.extend(!0,{},t)})}),this.set_state(t),!0))},this.clear_state=function(){return e.vakata.storage.del(this.settings.state.key)}},function(e,t){e.vakata.storage={set:function(e,t){return window.localStorage.setItem(e,t)},get:function(e){return window.localStorage.getItem(e)},del:function(e){return window.localStorage.removeItem(e)}}}(e),e.jstree.defaults.types={default:{}},e.jstree.defaults.types[e.jstree.root]={},e.jstree.plugins.types=function(n,r){this.init=function(n,i){var o,s -if(i&&i.types&&i.types.default)for(o in i.types)if("default"!==o&&o!==e.jstree.root&&i.types.hasOwnProperty(o))for(s in i.types.default)i.types.default.hasOwnProperty(s)&&i.types[o][s]===t&&(i.types[o][s]=i.types.default[s]) -r.init.call(this,n,i),this._model.data[e.jstree.root].type=e.jstree.root},this.refresh=function(t,n){r.refresh.call(this,t,n),this._model.data[e.jstree.root].type=e.jstree.root},this.bind=function(){this.element.on("model.jstree",e.proxy(function(n,r){var i,o,s,a=this._model.data,u=r.nodes,c=this.settings.types,l="default" -for(i=0,o=u.length;o>i;i++){if(l="default",a[u[i]].original&&a[u[i]].original.type&&c[a[u[i]].original.type]&&(l=a[u[i]].original.type),a[u[i]].data&&a[u[i]].data.jstree&&a[u[i]].data.jstree.type&&c[a[u[i]].data.jstree.type]&&(l=a[u[i]].data.jstree.type),a[u[i]].type=l,!0===a[u[i]].icon&&c[l].icon!==t&&(a[u[i]].icon=c[l].icon),c[l].li_attr!==t&&"object"==typeof c[l].li_attr)for(s in c[l].li_attr)if(c[l].li_attr.hasOwnProperty(s)){if("id"===s)continue -a[u[i]].li_attr[s]===t?a[u[i]].li_attr[s]=c[l].li_attr[s]:"class"===s&&(a[u[i]].li_attr.class=c[l].li_attr.class+" "+a[u[i]].li_attr.class)}if(c[l].a_attr!==t&&"object"==typeof c[l].a_attr)for(s in c[l].a_attr)if(c[l].a_attr.hasOwnProperty(s)){if("id"===s)continue -a[u[i]].a_attr[s]===t?a[u[i]].a_attr[s]=c[l].a_attr[s]:"href"===s&&"#"===a[u[i]].a_attr[s]?a[u[i]].a_attr.href=c[l].a_attr.href:"class"===s&&(a[u[i]].a_attr.class=c[l].a_attr.class+" "+a[u[i]].a_attr.class)}}a[e.jstree.root].type=e.jstree.root},this)),r.bind.call(this)},this.get_json=function(t,n,i){var o,s,a=this._model.data,u=n?e.extend(!0,{},n,{no_id:!1}):{},c=r.get_json.call(this,t,u,i) -if(!1===c)return!1 -if(e.isArray(c))for(o=0,s=c.length;s>o;o++)c[o].type=c[o].id&&a[c[o].id]&&a[c[o].id].type?a[c[o].id].type:"default",n&&n.no_id&&(delete c[o].id,c[o].li_attr&&c[o].li_attr.id&&delete c[o].li_attr.id,c[o].a_attr&&c[o].a_attr.id&&delete c[o].a_attr.id) -else c.type=c.id&&a[c.id]&&a[c.id].type?a[c.id].type:"default",n&&n.no_id&&(c=this._delete_ids(c)) -return c},this._delete_ids=function(t){if(e.isArray(t)){for(var n=0,r=t.length;r>n;n++)t[n]=this._delete_ids(t[n]) -return t}return delete t.id,t.li_attr&&t.li_attr.id&&delete t.li_attr.id,t.a_attr&&t.a_attr.id&&delete t.a_attr.id,t.children&&e.isArray(t.children)&&(t.children=this._delete_ids(t.children)),t},this.check=function(n,i,o,s,a){if(!1===r.check.call(this,n,i,o,s,a))return!1 -i=i&&i.id?i:this.get_node(i),o=o&&o.id?o:this.get_node(o) -var u,c,l,h,d=i&&i.id?a&&a.origin?a.origin:e.jstree.reference(i.id):null -switch(d=d&&d._model&&d._model.data?d._model.data:null,n){case"create_node":case"move_node":case"copy_node":if("move_node"!==n||-1===e.inArray(i.id,o.children)){if(u=this.get_rules(o),u.max_children!==t&&-1!==u.max_children&&u.max_children===o.children.length)return this._data.core.last_error={error:"check",plugin:"types",id:"types_01",reason:"max_children prevents function: "+n,data:JSON.stringify({chk:n,pos:s,obj:!(!i||!i.id)&&i.id,par:!(!o||!o.id)&&o.id})},!1 -if(u.valid_children!==t&&-1!==u.valid_children&&-1===e.inArray(i.type||"default",u.valid_children))return this._data.core.last_error={error:"check",plugin:"types",id:"types_02",reason:"valid_children prevents function: "+n,data:JSON.stringify({chk:n,pos:s,obj:!(!i||!i.id)&&i.id,par:!(!o||!o.id)&&o.id})},!1 -if(d&&i.children_d&&i.parents){for(c=0,l=0,h=i.children_d.length;h>l;l++)c=Math.max(c,d[i.children_d[l]].parents.length) -c=c-i.parents.length+1}(0>=c||c===t)&&(c=1) -do{if(u.max_depth!==t&&-1!==u.max_depth&&u.max_depth<c)return this._data.core.last_error={error:"check",plugin:"types",id:"types_03",reason:"max_depth prevents function: "+n,data:JSON.stringify({chk:n,pos:s,obj:!(!i||!i.id)&&i.id,par:!(!o||!o.id)&&o.id})},!1 -o=this.get_node(o.parent),u=this.get_rules(o),c++}while(o)}}return!0},this.get_rules=function(e){if(!(e=this.get_node(e)))return!1 -var n=this.get_type(e,!0) -return n.max_depth===t&&(n.max_depth=-1),n.max_children===t&&(n.max_children=-1),n.valid_children===t&&(n.valid_children=-1),n},this.get_type=function(t,n){return!!(t=this.get_node(t))&&(n?e.extend({type:t.type},this.settings.types[t.type]):t.type)},this.set_type=function(n,r){var i,o,s,a,u,c,l,h,d=this._model.data -if(e.isArray(n)){for(n=n.slice(),o=0,s=n.length;s>o;o++)this.set_type(n[o],r) -return!0}if(i=this.settings.types,n=this.get_node(n),!i[r]||!n)return!1 -if(l=this.get_node(n,!0),l&&l.length&&(h=l.children(".jstree-anchor")),a=n.type,u=this.get_icon(n),n.type=r,(!0===u||!i[a]||i[a].icon!==t&&u===i[a].icon)&&this.set_icon(n,i[r].icon===t||i[r].icon),i[a]&&i[a].li_attr!==t&&"object"==typeof i[a].li_attr)for(c in i[a].li_attr)if(i[a].li_attr.hasOwnProperty(c)){if("id"===c)continue -"class"===c?(d[n.id].li_attr.class=(d[n.id].li_attr.class||"").replace(i[a].li_attr[c],""),l&&l.removeClass(i[a].li_attr[c])):d[n.id].li_attr[c]===i[a].li_attr[c]&&(d[n.id].li_attr[c]=null,l&&l.removeAttr(c))}if(i[a]&&i[a].a_attr!==t&&"object"==typeof i[a].a_attr)for(c in i[a].a_attr)if(i[a].a_attr.hasOwnProperty(c)){if("id"===c)continue -"class"===c?(d[n.id].a_attr.class=(d[n.id].a_attr.class||"").replace(i[a].a_attr[c],""),h&&h.removeClass(i[a].a_attr[c])):d[n.id].a_attr[c]===i[a].a_attr[c]&&("href"===c?(d[n.id].a_attr[c]="#",h&&h.attr("href","#")):(delete d[n.id].a_attr[c],h&&h.removeAttr(c)))}if(i[r].li_attr!==t&&"object"==typeof i[r].li_attr)for(c in i[r].li_attr)if(i[r].li_attr.hasOwnProperty(c)){if("id"===c)continue -d[n.id].li_attr[c]===t?(d[n.id].li_attr[c]=i[r].li_attr[c],l&&("class"===c?l.addClass(i[r].li_attr[c]):l.attr(c,i[r].li_attr[c]))):"class"===c&&(d[n.id].li_attr.class=i[r].li_attr[c]+" "+d[n.id].li_attr.class,l&&l.addClass(i[r].li_attr[c]))}if(i[r].a_attr!==t&&"object"==typeof i[r].a_attr)for(c in i[r].a_attr)if(i[r].a_attr.hasOwnProperty(c)){if("id"===c)continue -d[n.id].a_attr[c]===t?(d[n.id].a_attr[c]=i[r].a_attr[c],h&&("class"===c?h.addClass(i[r].a_attr[c]):h.attr(c,i[r].a_attr[c]))):"href"===c&&"#"===d[n.id].a_attr[c]?(d[n.id].a_attr.href=i[r].a_attr.href,h&&h.attr("href",i[r].a_attr.href)):"class"===c&&(d[n.id].a_attr.class=i[r].a_attr.class+" "+d[n.id].a_attr.class,h&&h.addClass(i[r].a_attr[c]))}return!0}},e.jstree.defaults.unique={case_sensitive:!1,trim_whitespace:!1,duplicate:function(e,t){return e+" ("+t+")"}},e.jstree.plugins.unique=function(n,r){this.check=function(t,n,i,o,s){if(!1===r.check.call(this,t,n,i,o,s))return!1 -if(n=n&&n.id?n:this.get_node(n),!(i=i&&i.id?i:this.get_node(i))||!i.children)return!0 -var a,u,c,l="rename_node"===t?o:n.text,h=[],d=this.settings.unique.case_sensitive,p=this.settings.unique.trim_whitespace,f=this._model.data -for(a=0,u=i.children.length;u>a;a++)c=f[i.children[a]].text,d||(c=c.toLowerCase()),p&&(c=c.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")),h.push(c) -switch(d||(l=l.toLowerCase()),p&&(l=l.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")),t){case"delete_node":return!0 -case"rename_node":return c=n.text||"",d||(c=c.toLowerCase()),p&&(c=c.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")),a=-1===e.inArray(l,h)||n.text&&c===l,a||(this._data.core.last_error={error:"check",plugin:"unique",id:"unique_01",reason:"Child with name "+l+" already exists. Preventing: "+t,data:JSON.stringify({chk:t,pos:o,obj:!(!n||!n.id)&&n.id,par:!(!i||!i.id)&&i.id})}),a -case"create_node":return a=-1===e.inArray(l,h),a||(this._data.core.last_error={error:"check",plugin:"unique",id:"unique_04",reason:"Child with name "+l+" already exists. Preventing: "+t,data:JSON.stringify({chk:t,pos:o,obj:!(!n||!n.id)&&n.id,par:!(!i||!i.id)&&i.id})}),a -case"copy_node":return a=-1===e.inArray(l,h),a||(this._data.core.last_error={error:"check",plugin:"unique",id:"unique_02",reason:"Child with name "+l+" already exists. Preventing: "+t,data:JSON.stringify({chk:t,pos:o,obj:!(!n||!n.id)&&n.id,par:!(!i||!i.id)&&i.id})}),a -case"move_node":return a=n.parent===i.id&&(!s||!s.is_multi)||-1===e.inArray(l,h),a||(this._data.core.last_error={error:"check",plugin:"unique",id:"unique_03",reason:"Child with name "+l+" already exists. Preventing: "+t,data:JSON.stringify({chk:t,pos:o,obj:!(!n||!n.id)&&n.id,par:!(!i||!i.id)&&i.id})}),a}return!0},this.create_node=function(n,i,o,s,a){if(!i||i.text===t){if(null===n&&(n=e.jstree.root),!(n=this.get_node(n)))return r.create_node.call(this,n,i,o,s,a) -if(o=o===t?"last":o,!o.toString().match(/^(before|after)$/)&&!a&&!this.is_loaded(n))return r.create_node.call(this,n,i,o,s,a) -i||(i={}) -var u,c,l,h,d,p,f=this._model.data,g=this.settings.unique.case_sensitive,m=this.settings.unique.trim_whitespace,v=this.settings.unique.duplicate -for(c=u=this.get_string("New node"),l=[],h=0,d=n.children.length;d>h;h++)p=f[n.children[h]].text,g||(p=p.toLowerCase()),m&&(p=p.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")),l.push(p) -for(h=1,p=c,g||(p=p.toLowerCase()),m&&(p=p.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""));-1!==e.inArray(p,l);)c=v.call(this,u,++h).toString(),p=c,g||(p=p.toLowerCase()),m&&(p=p.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")) -i.text=c}return r.create_node.call(this,n,i,o,s,a)}} -var g=u.createElement("DIV") -if(g.setAttribute("unselectable","on"),g.setAttribute("role","presentation"),g.className="jstree-wholerow",g.innerHTML=" ",e.jstree.plugins.wholerow=function(t,n){this.bind=function(){n.bind.call(this),this.element.on("ready.jstree set_state.jstree",e.proxy(function(){this.hide_dots()},this)).on("init.jstree loading.jstree ready.jstree",e.proxy(function(){this.get_container_ul().addClass("jstree-wholerow-ul")},this)).on("deselect_all.jstree",e.proxy(function(e,t){this.element.find(".jstree-wholerow-clicked").removeClass("jstree-wholerow-clicked")},this)).on("changed.jstree",e.proxy(function(e,t){this.element.find(".jstree-wholerow-clicked").removeClass("jstree-wholerow-clicked") -var n,r,i=!1 -for(n=0,r=t.selected.length;r>n;n++)(i=this.get_node(t.selected[n],!0))&&i.length&&i.children(".jstree-wholerow").addClass("jstree-wholerow-clicked")},this)).on("open_node.jstree",e.proxy(function(e,t){this.get_node(t.node,!0).find(".jstree-clicked").parent().children(".jstree-wholerow").addClass("jstree-wholerow-clicked")},this)).on("hover_node.jstree dehover_node.jstree",e.proxy(function(e,t){"hover_node"===e.type&&this.is_disabled(t.node)||this.get_node(t.node,!0).children(".jstree-wholerow")["hover_node"===e.type?"addClass":"removeClass"]("jstree-wholerow-hovered")},this)).on("contextmenu.jstree",".jstree-wholerow",e.proxy(function(t){if(this._data.contextmenu){t.preventDefault() -var n=e.Event("contextmenu",{metaKey:t.metaKey,ctrlKey:t.ctrlKey,altKey:t.altKey,shiftKey:t.shiftKey,pageX:t.pageX,pageY:t.pageY}) -e(t.currentTarget).closest(".jstree-node").children(".jstree-anchor").first().trigger(n)}},this)).on("click.jstree",".jstree-wholerow",function(t){t.stopImmediatePropagation() -var n=e.Event("click",{metaKey:t.metaKey,ctrlKey:t.ctrlKey,altKey:t.altKey,shiftKey:t.shiftKey}) -e(t.currentTarget).closest(".jstree-node").children(".jstree-anchor").first().trigger(n).focus()}).on("dblclick.jstree",".jstree-wholerow",function(t){t.stopImmediatePropagation() -var n=e.Event("dblclick",{metaKey:t.metaKey,ctrlKey:t.ctrlKey,altKey:t.altKey,shiftKey:t.shiftKey}) -e(t.currentTarget).closest(".jstree-node").children(".jstree-anchor").first().trigger(n).focus()}).on("click.jstree",".jstree-leaf > .jstree-ocl",e.proxy(function(t){t.stopImmediatePropagation() -var n=e.Event("click",{metaKey:t.metaKey,ctrlKey:t.ctrlKey,altKey:t.altKey,shiftKey:t.shiftKey}) -e(t.currentTarget).closest(".jstree-node").children(".jstree-anchor").first().trigger(n).focus()},this)).on("mouseover.jstree",".jstree-wholerow, .jstree-icon",e.proxy(function(e){return e.stopImmediatePropagation(),this.is_disabled(e.currentTarget)||this.hover_node(e.currentTarget),!1},this)).on("mouseleave.jstree",".jstree-node",e.proxy(function(e){this.dehover_node(e.currentTarget)},this))},this.teardown=function(){this.settings.wholerow&&this.element.find(".jstree-wholerow").remove(),n.teardown.call(this)},this.redraw_node=function(t,r,i,o){if(t=n.redraw_node.apply(this,arguments)){var s=g.cloneNode(!0);-1!==e.inArray(t.id,this._data.core.selected)&&(s.className+=" jstree-wholerow-clicked"),this._data.core.focused&&this._data.core.focused===t.id&&(s.className+=" jstree-wholerow-hovered"),t.insertBefore(s,t.childNodes[0])}return t}},window.customElements&&Object&&Object.create){var m=Object.create(HTMLElement.prototype) -m.createdCallback=function(){var t,n={core:{},plugins:[]} -for(t in e.jstree.plugins)e.jstree.plugins.hasOwnProperty(t)&&this.attributes[t]&&(n.plugins.push(t),this.getAttribute(t)&&JSON.parse(this.getAttribute(t))&&(n[t]=JSON.parse(this.getAttribute(t)))) -for(t in e.jstree.defaults.core)e.jstree.defaults.core.hasOwnProperty(t)&&this.attributes[t]&&(n.core[t]=JSON.parse(this.getAttribute(t))||this.getAttribute(t)) -e(this).jstree(n)} -try{window.customElements.define("vakata-jstree",function(){},{prototype:m})}catch(e){}}}}),function(){function e(e){"use strict" -var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,description:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,description:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,description:"Parses simple line breaks as <br> (GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,description:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,description:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",description:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,description:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,description:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,description:"Support for HTML Tag escaping. ex: <div>foo</div>",type:"boolean"},emoji:{defaultValue:!1,description:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,description:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `<em>` and `<strong>`",type:"boolean"},completeHTMLDocument:{defaultValue:!1,description:"Outputs a complete html document, including `<html>`, `<head>` and `<body>` tags",type:"boolean"},metadata:{defaultValue:!1,description:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,description:"Split adjacent blockquote blocks",type:"boolean"}} -if(!1===e)return JSON.parse(JSON.stringify(t)) -var n={} -for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r].defaultValue) -return n}function t(e,t){"use strict" -var n=t?"Error in "+t+" extension->":"Error in unnamed extension",i={valid:!0,error:""} -r.helper.isArray(e)||(e=[e]) -for(var o=0;o<e.length;++o){var s=n+" sub-extension "+o+": ",a=e[o] -if("object"!=typeof a)return i.valid=!1,i.error=s+"must be an object, but "+typeof a+" given",i -if(!r.helper.isString(a.type))return i.valid=!1,i.error=s+'property "type" must be a string, but '+typeof a.type+" given",i -var u=a.type=a.type.toLowerCase() -if("language"===u&&(u=a.type="lang"),"html"===u&&(u=a.type="output"),"lang"!==u&&"output"!==u&&"listener"!==u)return i.valid=!1,i.error=s+"type "+u+' is not recognized. Valid values: "lang/language", "output/html" or "listener"',i -if("listener"===u){if(r.helper.isUndefined(a.listeners))return i.valid=!1,i.error=s+'. Extensions of type "listener" must have a property called "listeners"',i}else if(r.helper.isUndefined(a.filter)&&r.helper.isUndefined(a.regex))return i.valid=!1,i.error=s+u+' extensions must define either a "regex" property or a "filter" method',i -if(a.listeners){if("object"!=typeof a.listeners)return i.valid=!1,i.error=s+'"listeners" property must be an object but '+typeof a.listeners+" given",i -for(var c in a.listeners)if(a.listeners.hasOwnProperty(c)&&"function"!=typeof a.listeners[c])return i.valid=!1,i.error=s+'"listeners" property must be an hash of [event name]: [callback]. listeners.'+c+" must be a function but "+typeof a.listeners[c]+" given",i}if(a.filter){if("function"!=typeof a.filter)return i.valid=!1,i.error=s+'"filter" must be a function, but '+typeof a.filter+" given",i}else if(a.regex){if(r.helper.isString(a.regex)&&(a.regex=new RegExp(a.regex,"g")),!(a.regex instanceof RegExp))return i.valid=!1,i.error=s+'"regex" property must either be a string or a RegExp object, but '+typeof a.regex+" given",i -if(r.helper.isUndefined(a.replace))return i.valid=!1,i.error=s+'"regex" extensions must implement a replace string or function',i}}return i}function n(e,t){"use strict" -return"¨E"+t.charCodeAt(0)+"E"}var r={},i={},o={},s=e(!0),a="vanilla",u={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:e(!0),allOn:function(){"use strict" -var t=e(!0),n={} -for(var r in t)t.hasOwnProperty(r)&&(n[r]=!0) -return n}()} -r.helper={},r.extensions={},r.setOption=function(e,t){"use strict" -return s[e]=t,this},r.getOption=function(e){"use strict" -return s[e]},r.getOptions=function(){"use strict" -return s},r.resetOptions=function(){"use strict" -s=e(!0)},r.setFlavor=function(e){"use strict" -if(!u.hasOwnProperty(e))throw Error(e+" flavor was not found") -r.resetOptions() -var t=u[e] -a=e -for(var n in t)t.hasOwnProperty(n)&&(s[n]=t[n])},r.getFlavor=function(){"use strict" -return a},r.getFlavorOptions=function(e){"use strict" -if(u.hasOwnProperty(e))return u[e]},r.getDefaultOptions=function(t){"use strict" -return e(t)},r.subParser=function(e,t){"use strict" -if(r.helper.isString(e)){if(void 0===t){if(i.hasOwnProperty(e))return i[e] -throw Error("SubParser named "+e+" not registered!")}i[e]=t}},r.extension=function(e,n){"use strict" -if(!r.helper.isString(e))throw Error("Extension 'name' must be a string") -if(e=r.helper.stdExtName(e),r.helper.isUndefined(n)){if(!o.hasOwnProperty(e))throw Error("Extension named "+e+" is not registered!") -return o[e]}"function"==typeof n&&(n=n()),r.helper.isArray(n)||(n=[n]) -var i=t(n,e) -if(!i.valid)throw Error(i.error) -o[e]=n},r.getAllExtensions=function(){"use strict" -return o},r.removeExtension=function(e){"use strict" -delete o[e]},r.resetExtensions=function(){"use strict" -o={}},r.validateExtension=function(e){"use strict" -var n=t(e,null) -return!!n.valid||(console.warn(n.error),!1)},r.hasOwnProperty("helper")||(r.helper={}),r.helper.isString=function(e){"use strict" -return"string"==typeof e||e instanceof String},r.helper.isFunction=function(e){"use strict" -return e&&"[object Function]"==={}.toString.call(e)},r.helper.isArray=function(e){"use strict" -return Array.isArray(e)},r.helper.isUndefined=function(e){"use strict" -return void 0===e},r.helper.forEach=function(e,t){"use strict" -if(r.helper.isUndefined(e))throw new Error("obj param is required") -if(r.helper.isUndefined(t))throw new Error("callback param is required") -if(!r.helper.isFunction(t))throw new Error("callback param must be a function/closure") -if("function"==typeof e.forEach)e.forEach(t) -else if(r.helper.isArray(e))for(var n=0;n<e.length;n++)t(e[n],n,e) -else{if("object"!=typeof e)throw new Error("obj does not seem to be an array or an iterable object") -for(var i in e)e.hasOwnProperty(i)&&t(e[i],i,e)}},r.helper.stdExtName=function(e){"use strict" -return e.replace(/[_?*+\/\\.^-]/g,"").replace(/\s/g,"").toLowerCase()},r.helper.escapeCharactersCallback=n,r.helper.escapeCharacters=function(e,t,r){"use strict" -var i="(["+t.replace(/([\[\]\\])/g,"\\$1")+"])" -r&&(i="\\\\"+i) -var o=new RegExp(i,"g") -return e=e.replace(o,n)} -var c=function(e,t,n,r){"use strict" -var i,o,s,a,u,c=r||"",l=c.indexOf("g")>-1,h=new RegExp(t+"|"+n,"g"+c.replace(/g/g,"")),d=new RegExp(t,c.replace(/g/g,"")),p=[] -do{for(i=0;s=h.exec(e);)if(d.test(s[0]))i++||(a=(o=h.lastIndex)-s[0].length) -else if(i&&!--i){u=s.index+s[0].length -var f={left:{start:a,end:o},match:{start:o,end:s.index},right:{start:s.index,end:u},wholeMatch:{start:a,end:u}} -if(p.push(f),!l)return p}}while(i&&(h.lastIndex=o)) -return p} -r.helper.matchRecursiveRegExp=function(e,t,n,r){"use strict" -for(var i=c(e,t,n,r),o=[],s=0;s<i.length;++s)o.push([e.slice(i[s].wholeMatch.start,i[s].wholeMatch.end),e.slice(i[s].match.start,i[s].match.end),e.slice(i[s].left.start,i[s].left.end),e.slice(i[s].right.start,i[s].right.end)]) -return o},r.helper.replaceRecursiveRegExp=function(e,t,n,i,o){"use strict" -if(!r.helper.isFunction(t)){var s=t -t=function(){return s}}var a=c(e,n,i,o),u=e,l=a.length -if(l>0){var h=[] -0!==a[0].wholeMatch.start&&h.push(e.slice(0,a[0].wholeMatch.start)) -for(var d=0;d<l;++d)h.push(t(e.slice(a[d].wholeMatch.start,a[d].wholeMatch.end),e.slice(a[d].match.start,a[d].match.end),e.slice(a[d].left.start,a[d].left.end),e.slice(a[d].right.start,a[d].right.end))),d<l-1&&h.push(e.slice(a[d].wholeMatch.end,a[d+1].wholeMatch.start)) -a[l-1].wholeMatch.end<e.length&&h.push(e.slice(a[l-1].wholeMatch.end)),u=h.join("")}return u},r.helper.regexIndexOf=function(e,t,n){"use strict" -if(!r.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string" -if(t instanceof RegExp==0)throw"InvalidArgumentError: second parameter of showdown.helper.regexIndexOf function must be an instance of RegExp" -var i=e.substring(n||0).search(t) -return i>=0?i+(n||0):i},r.helper.splitAtIndex=function(e,t){"use strict" -if(!r.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string" -return[e.substring(0,t),e.substring(t)]},r.helper.encodeEmailAddress=function(e){"use strict" -var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}] -return e=e.replace(/./g,function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e) -else{var n=Math.random() -e=n>.9?t[2](e):n>.45?t[1](e):t[0](e)}return e})},"undefined"==typeof console&&(console={warn:function(e){"use strict" -alert(e)},log:function(e){"use strict" -alert(e)},error:function(e){"use strict" -throw e}}),r.helper.regexes={asteriskDashAndColon:/([*_:~])/g},r.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:'<img width="20" height="20" align="absmiddle" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAOwUlEQVR42uVbCVyO6RbPmn0sw9gZS0aZO4y5GTEUE2ObxjZjrbHEJVy3sWS5pkaWxjLEkCVDSbSgFLdESaWSLIVUSIi4kvb9f895vi/zbbR+yZ339/tbnu99n/ec/3Oe85xznufV0CjDBaAdwZqwnzCJ0FXjHV70/i8J5oQDhCFV8cJdq1atwqxZs+Ds7Iz4+HhqwgXCLELNKlK6G2Ej4e6lS5ewZcsWzJgxA+fOnWNZFqvzxT1v3boF/qcsBg0ahP3796OwsJAFWKYuIqjfPoS9cXFxWL58Obp06SInh5aWFr//jjoJWLlu3TolAorRuXNn7Ny5k4W4Spgj81xrgj5hLmED4RDhlNRygglBhADCSakpWxFMCHoETUJTwrYHDx7A1NT0je9nPHz4kN/fXl0EeI0aNeqtAjB69+4NPz8/FsSdlXvy5An8/f1hZ2cHCwsLGBsbY/To0cJy9PT0MGDAAAwePBhGRkbClNesWYODBw8iODgYOTk53M/d9evXo27duiW++8iRI3z/ZHURENOjR48ShSjGuHHjhHJ16tQp9TOKaNWqlZKpvw1MHluQOpSvk5eXh5YtW5ZbmarAvHnzmIBd6iCgXnZ2Npo1a1atCWAfwY5SHQTUKCoqQocOHao1AebmHBJgi7p8QBDP6epMwKFDvMDAWF0ELLS1ta3WBNy9e5cJMFIXAdvt7e2rNQHDhw9nAv5D+KKylV9y8+bNCi1pVYWZM2cyCfaVTcDdsqzH7xpBQRxcwqyylLdi5/K+KM/Q0dFhAqIri4Bn1T0AUgVpdmhYUeVHnD59+r1TnjF27Fgm4HhFCThoYmLyXhLQoEGD4mRKsyIE3OrZs+d7SQCDCyZcNSqv8k1evXoFTU3NUr+wzUcfYqRBf8yb/C2WzfoBFoTF08fBdMIITDD8CsP1+kL30x7Q6dYZH7drjfZ0f4fWLdG1Q1t81qMLBvTRwejB/TBl1BDMnzQGS2dMxKo5k7Fs9iSY/jAaBvR8Pc26pZaH02quLZSXgO6xsbGlelGnli1wZKcVMqN8gKcRwItrf+K/VB95doXaLwOJIVSzOU/+2Re5kV7IuuyJrIhTyLt6mmztLBBPNZLHoUAy9fE8UvJ8ikxfj8PwJPQErJeYlkquTZs2MQFLykuANgc/Jb2kn3Z3ZMaQUrmxwO1zyAo7gfRAJ6RfOIyMEFdkXj5F8BTK5lzxQv610yi8QcFatI8gQoCIK7x+hojwRnaE5H4JTiEj9Pjr/rJDqcZyn9b4ovu45LYbdWvXeqtsXMHiSlZ5CegRExPz1hd83PYj5POo0QinXyLFg48hnZTOiQ1Dzr1IZEaeQRoJn0HKZIR7lA2kfHrQUerXHTlx4ZL+rnjjFRGRGeYB5MUj2GnbW+XbuJFrp1heXgI6JCYmvvUFN1x3Aek3SWkapRAXMeJFGS8ge2Xfuog0toaykED3Mpk8+shOk+sv68Y50V9WuKewBKt5094o39atW/mRf5WXgIYZGRlo3Lixys4nj6A6Z1YMcqRCpwU4ouDlUyHk/QA/hNttR25Wlvh/ZthJUsil9ATQ/axkYbqEzDgfL0Ts/x35+aLyTES7IY36Q6w/+Q4/tP6wuUoZ9+7dy7ebVmQZjO/atavKzn32rAdeXkd6KCkXdAxZ13yFcLFnvPD73zrDVrsdTs6eggKSuSjjORHkUGoC0i86Iyc6QPQX7eqMnTodYNuzHU4vnosiaitMSUSavwMy6d3IvEUrzViVMrq5uXEX4ytCgL++vr5Sx7Vr1cIDX0dKkQJfj37Rs3jw1sBxkwlwGD4Ax3+ciN1faCHW76xQRFgAOcjSEMBkIe0x8nLzcez7kTg8Rh/uxuOxR/cTJISFSfq7eATpZCk8CAfXLVFJwIULXHnHoIoQYLtw4UKljps2aogXQcQuef/XAiMDKY+S4DhyEFwpDnCj9f+Afl8EbbWRTANaAdihlYoAMn8aZzyNuYODX/eD29TvRH/7v+qN8H27JdOAyWQfQQ74xPafVRLAPox9WUlK6hIGEgx4f00Kg2JcvHhRqeP6FIwknXemyen/2gLIIeC/CYk49M0AuE4xgtu0sThg8AUCN62TEuBdRgJo2Y+Kxh9D/k59SQiwH9QHobt3SAk4KSGA4oWjm1YqyVi8U6Soj4yOrHM/jTAyKVby/PnzIoNi8L+L4eXlpXoFcLcTgc1rAlISkJeXDxeK2A6P1hdTwI6mQPTJE+WbAlnJyE7PhNO3Q3BkrKGYWtxfHMkkmQLO0ilwA7+vXqAkn66urtBLUZ9iHfm30NBQaPAf165dA0d9vP2UlJSEp0+f4vHjx3j06JH4e+rUqUovcNmyGkiNEkLwklXsBG+ecMUOnfbYod1emG5uboFKJ8jPFVD0l0dBUHqoPDHpQeQEb0qc4FUHe3KAbYUT9JgzDbwOFL5MfN0fXkXhJ5PxSvLt2LFD1Ah5u4z1YJ14l4qnBe8v3rhxAzz4PAVG8nLHivIP0dHRiIiIQGRkpEgmrl69ClW1QBMjQ7LDW8hmU+RRI69ckJIkhL7jfRJBm62R+TJVYq6h0jhBRslsivqenT2MF/7OyI70VmkFhWnPJaS6OyPkt43IycqR9EfWlH7JDQUUTuNhCHR7Ke9YcRp/5coVoQPrcvnyZURFRYmBZlLS0kR8MVLD29sbnp6e8PHxQUBAgCgn8YO8E3z79m3BGKeVc+bMkXuBZt06SA12F/F5Go0gR4C8HBalPZMPXKL8lQKhPAqF+f97KXFyNx6HQsoPsshJ/kmAp2TKkJLISpXvjyxNhMYcDVLOEO+lPDi8B5mamipkZx1YF9YpJCRErAy+vr5CZ9ZdWABhDGEYYTBhAOFz3g4nfMJelNCbkNCpUye5F034mvxIPi1/FM+zQCw0k5B9O0iEr5kRXkqhMJOVf9NXIHjtT7hmaymSoBzKETimkAuFpaF1dkwI9RcmIYaXv3BJXoGCuyIgk5WpefPmKCgoYK46SmX/RKoL69Sfl0WuFEl1HlmWJXE5z6WmTZvKJxxmxkIQ3AuU5APk6NICj4hRT6eITTEEzqWk55HHPjz3cxJhNF5cxeNT9kj2cRDTQjEkzpDtjyyCic5l5fEA7uSHFEefR5pPsahrb2B9QkICFHeJ51HunkdLIg0VLY0BFKdLwllVHp4dHyvst3QuEiiju21vA/+VZkiluIKt4I3RIfWXQ4QgKUxkni47LJWUP3PmjHo2RxVI+CebmKJP6EiFDVurxUgmExe5PHlnPAkn8w4QqW62NCVmYopozid5H0CI9RKE21ggJeAYEeMnfitOnRn5XCfgeJ+VTosWQU8MOc6ZE0cqnUm4fv165SrPBVHCfMI4TowUfmOfsIcdJh92kBWmUcP6GDt8EDZbzIffH5tx3/ewSFjw5LKk0MEFEkZenDBjgew7Yiog5brkt+QrknvJmhIp4Apw/A1bVpjhG/0v5d7Vrl07bNu2TelUSqUoz8uI3Z49OEtBAy+TdP1CqKtwHzvQUxxgTJs2TeX5gdq1a0ObSmCjh+jB+NuvRamL1+3ls77HCip1rTSdJP5eNnMizKndjMLoH42G4bthX+FzHS3UVVEC69evH3799VeKMXJZrlWKclUGAZ5jxoxB02ZNsNlxH74aagBHZyex986HlVTczyGmI58h4CjL2toa48ePFxsUPEotWrQoc0GT0/C2bduiY8eO4ISMcxLeoOFYhS6qm2EpoZG65jmbv+dPSyRZlt5QfVjvtX19AOFNL+aDFNI4m0eFc9Ho5ORkaGtrl5kAVp6DMOk88efEjLe++ZhclZwHTJHEHbs4YOCmLj2645fdvwnTK42zoXtaEHwNDQ3LXdZm5yad3/2r+gQmDsRnIF5KAldX6zdsgG/GG8F44Vzcu3eP2y1K6GPr2rVrK1zbnz59Or/LoaoJCPZ4kCZsjw9GECL79OmDj9q2wb+320C3/5fgPQO6Vrzh+fpcDqxXr16lbHBwgkZXm6okYJr0ECMrX5vraiJ1lArEjrEnzWuOqemiYj9spGd2ee478XkiPsJakmJ83qA05/8qXNurJFLiunXrhpo1a6LxB02wyHIFZpovgOHwYfjZ0hK2lH5u2rwZ5suWYv5ycyUlmjRpgl69eimlrFy3kwuoyOvXr19frm3RokVMwPZ3TYC57E6xVq+e6KzVDSaL/oEp82Zh8IhhWLjGAp/p9oX5ujVKBNjY2MDV1VWuzd3dXaTesm2biUQuZ8u28elSPmKr8a4vdog8GnJpcT1N1KHUuBbt0jSgWuGbzJh3mVhh2TYHBwdxjFa2jVcZnvPVlQBOLXdZWlqW2ZFxNYYVlm07fPgwAgMD5dr4OD5HeHLFFxM+O42DGtXhIkFaMQlcUjIzM0P37t1Ro0YNpZPjPJcVK7SOjo5ybU5OTqIAo0gAh97VlgAZIj4l8Pn4WFaO64ocuXG6zJtDbMqySnC7IgF8uptLVrJtq1evFuWqak+A4j4i4TNpltiJ8LPiNFFFwNGjRyWFyfedAFUny/joekkEuLi4KK0CfykCeFnkiu1flgBeFtl3/D8SsMbKykpOifv37ysRcPz4cVHKUiSA8wwNdR9/VTMBSh9Y8S4Nf2qnSICiBbDzVCRg9uzZTMC+94kAv6FDh8opwRsVHPjItnl4eEDxHNLKlStFXV+2javQ/M1SpZe+1KA4L4G7WDG57fSm/OUbXiqG0ewAFYOeYcN4fwZhvLkp2y4tftrxcltdlf/w+fPn4qNGxTCYU2m6nrRu3VqunT/EoiuZvw6TTZHpyuNNmEaNGsndP3fu3OJAq1N1JOAHDmyKheVtNP4OkE2crULRAW7fvl20EyyLy24a8p+/7WISFixYIMLt4t82bNhQYjXqXREgPq3j74mlX3AmSL8E1eOPIBXnuVT5OsVZpuLnOMeOHeN7vifwiYhYzhC5IpwlOXj1QXWdBmy/XWU/X+UqMZfKBw4cKAobHPlJlZe9h6tOu+7cuSN2dg0MDMSSyZUpmXvaSD+crq/xvl0k9BTCRa7qEPq+5T4t6ffF52WVV+f1P6zyLG30bsU4AAAAAElFTkSuQmCC">', -showdown:'<img width="20" height="20" align="absmiddle" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAECtaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzA2NyA3OS4xNTc3NDcsIDIwMTUvMDMvMzAtMjM6NDA6NDIgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgICAgICAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNSAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTUtMDEtMTVUMjE6MDE6MTlaPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNy0xMC0yNFQxMzozMTozMCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTctMTAtMjRUMTM6MzE6MzArMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8cGhvdG9zaG9wOklDQ1Byb2ZpbGU+c1JHQiBJRUM2MTk2Ni0yLjE8L3Bob3Rvc2hvcDpJQ0NQcm9maWxlPgogICAgICAgICA8cGhvdG9zaG9wOlRleHRMYXllcnM+CiAgICAgICAgICAgIDxyZGY6QmFnPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHBob3Rvc2hvcDpMYXllck5hbWU+UyAtPC9waG90b3Nob3A6TGF5ZXJOYW1lPgogICAgICAgICAgICAgICAgICA8cGhvdG9zaG9wOkxheWVyVGV4dD5TIC08L3Bob3Rvc2hvcDpMYXllclRleHQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpCYWc+CiAgICAgICAgIDwvcGhvdG9zaG9wOlRleHRMYXllcnM+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6N2NkMzQxNzctOWYyZi0yNDRiLWEyYjQtMzU1MzJkY2Y1MWJiPC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD5hZG9iZTpkb2NpZDpwaG90b3Nob3A6M2E1YzgxYmYtYjhiNy0xMWU3LTk0NDktYTQ2MzdlZjJkNjMzPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6NjBDNUFFNjVGNjlDRTQxMTk0NUE4NTVFM0JDQTdFRUI8L3htcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkhpc3Rvcnk+CiAgICAgICAgICAgIDxyZGY6U2VxPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jcmVhdGVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NjBDNUFFNjVGNjlDRTQxMTk0NUE4NTVFM0JDQTdFRUI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTUtMDEtMTVUMjE6MDE6MTlaPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6ODZjNjBkMGQtOGY0Yy01ZTRlLWEwMjQtODI4ZWQyNTIwZDc3PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE3LTEwLTI0VDEzOjMxOjMwKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNSAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjdjZDM0MTc3LTlmMmYtMjQ0Yi1hMmI0LTM1NTMyZGNmNTFiYjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0yNFQxMzozMTozMCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDx4bXBNTTpEZXJpdmVkRnJvbSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgIDxzdFJlZjppbnN0YW5jZUlEPnhtcC5paWQ6ODZjNjBkMGQtOGY0Yy01ZTRlLWEwMjQtODI4ZWQyNTIwZDc3PC9zdFJlZjppbnN0YW5jZUlEPgogICAgICAgICAgICA8c3RSZWY6ZG9jdW1lbnRJRD54bXAuZGlkOjYwQzVBRTY1RjY5Q0U0MTE5NDVBODU1RTNCQ0E3RUVCPC9zdFJlZjpkb2N1bWVudElEPgogICAgICAgICAgICA8c3RSZWY6b3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6NjBDNUFFNjVGNjlDRTQxMTk0NUE4NTVFM0JDQTdFRUI8L3N0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+NjQ8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NjQ8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pse7bzcAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAA1JJREFUeNrsm1+OmlAUhz+aeS9dwZggJn1AnRUMO6jpBgZXULuC2hWUWUGZBTSxKyiuoA4mfUBMnB04K5g+9DihRBHlyh/lJLwIXLgf99xzzu9etZeXFy7Z3nDh1gBoAFy4XeVtQNO0zNcapmUDfUBPnFoBfhQGq6IBaHmjwD4Ahmk5wAD4kKG5J8CNwsAFaHe6DvA9cc0wCgOv8gDka3vA9RHNPgo0D7hNnJtGYWBXxgV2dH4MfMnRRA+Y1WIO2NJ5F/ikoKm3tYsChmkNFHW+fmHQMC1dfHaXPQP3wM1yMdc2B/AOGALTWobBmI1Shu0UGCwX83XyRBQGawHntTtdG5gUNfxVu4CTNqNv6/wWGL7kCc+1AmCYVisl3I2ydD4GYZUCs7IjoLXrxHIx9w9tLAqDCfBwDrXAY457x+cAoCfuwRGjYFUnAGk+PsjR7s8Dn1VeLWCYVlpDw+VivjVHSHt+u9PVJbzGzZXQWTkAkz0V31fATUaEsjVJlQBs4FeGcteLgzgbAALBA+4y3voAeJL8nA0AHfClnM1qm1HhnYUidCSE+KzvSSJUTwAxCOMcpfETMFYpfRUKIAbCFhC3OTJJJwqDWS0BxED0JZ4Pjix1P2+E0loCSMBwyK4S/xc1ojBwag8gMU84cvTKGgmlAYhngu1O9xAXuVE5J1QCQCz3bwHuHvdQui5QKQAxEO6eEKpsFCgTRSXkvdoxSlBMCxhJJbgrrbZRtHCiShN0pRB6PeQ3ckBw2K0oKXMBVYJIP+Nvh9qulFivGoBt1lLQxowT2ykBXCfnhZIglgYACWmqXQv+baioBYCeiCQHm+QEg1O7RhF7hO4OhSAhcJKSFU7qBGADwZeqMMuXn6TUBw8qlaMrirNb4LdhWlP+SWD+cjFfxTpuS2GUpik+o3jFSEkqbJiWn0P0OMSGqlWiOu0TvD+FRHZKAE+oW+cfRmEwqlsesJJEJs8y91QqP+9UL6lqEtz2gpuNEY5sm9sIHln2DRa2aFKGJtiXkZEMiWtgVvRKUSUFkSKt2S7fAGgAXLYpmQQXf36MUChTZdUa2u8/rkvPA6Tz30r4eH3ybcBS5gJ6SaNXb+aABkA1AMxKenclBZLW/He4cYEGwEXb3wEASelexk6LIIIAAAAASUVORK5CYII=">'},r.Converter=function(e){"use strict" -function n(e,n){if(n=n||null,r.helper.isString(e)){if(e=r.helper.stdExtName(e),n=e,r.extensions[e])return console.warn("DEPRECATION WARNING: "+e+" is an old extension that uses a deprecated loading method.Please inform the developer that the extension should be updated!"),void function(e,n){"function"==typeof e&&(e=e(new r.Converter)),r.helper.isArray(e)||(e=[e]) -var i=t(e,n) -if(!i.valid)throw Error(i.error) -for(var o=0;o<e.length;++o)switch(e[o].type){case"lang":l.push(e[o]) -break -case"output":h.push(e[o]) -break -default:throw Error("Extension loader error: Type unrecognized!!!")}}(r.extensions[e],e) -if(r.helper.isUndefined(o[e]))throw Error('Extension "'+e+'" could not be loaded. It was either not found or is not a valid extension.') -e=o[e]}"function"==typeof e&&(e=e()),r.helper.isArray(e)||(e=[e]) -var s=t(e,n) -if(!s.valid)throw Error(s.error) -for(var a=0;a<e.length;++a){switch(e[a].type){case"lang":l.push(e[a]) -break -case"output":h.push(e[a])}if(e[a].hasOwnProperty("listeners"))for(var u in e[a].listeners)e[a].listeners.hasOwnProperty(u)&&i(u,e[a].listeners[u])}}function i(e,t){if(!r.helper.isString(e))throw Error("Invalid argument in converter.listen() method: name must be a string, but "+typeof e+" given") -if("function"!=typeof t)throw Error("Invalid argument in converter.listen() method: callback must be a function, but "+typeof t+" given") -d.hasOwnProperty(e)||(d[e]=[]),d[e].push(t)}var c={},l=[],h=[],d={},p=a,f={parsed:{},raw:"",format:""} -!function(){e=e||{} -for(var t in s)s.hasOwnProperty(t)&&(c[t]=s[t]) -if("object"!=typeof e)throw Error("Converter expects the passed parameter to be an object, but "+typeof e+" was passed instead.") -for(var i in e)e.hasOwnProperty(i)&&(c[i]=e[i]) -c.extensions&&r.helper.forEach(c.extensions,n)}(),this._dispatch=function(e,t,n,r){if(d.hasOwnProperty(e))for(var i=0;i<d[e].length;++i){var o=d[e][i](e,t,this,n,r) -o&&void 0!==o&&(t=o)}return t},this.listen=function(e,t){return i(e,t),this},this.makeHtml=function(e){if(!e)return e -var t={gHtmlBlocks:[],gHtmlMdBlocks:[],gHtmlSpans:[],gUrls:{},gTitles:{},gDimensions:{},gListLevel:0,hashLinkCounts:{},langExtensions:l,outputModifiers:h,converter:this,ghCodeBlocks:[],metadata:{parsed:{},raw:"",format:""}} -return e=e.replace(/¨/g,"¨T"),e=e.replace(/\$/g,"¨D"),e=e.replace(/\r\n/g,"\n"),e=e.replace(/\r/g,"\n"),e=e.replace(/\u00A0/g," "),c.smartIndentationFix&&(e=function(e){var t=e.match(/^\s*/)[0].length,n=new RegExp("^\\s{0,"+t+"}","gm") -return e.replace(n,"")}(e)),e="\n\n"+e+"\n\n",e=r.subParser("detab")(e,c,t),e=e.replace(/^[ \t]+$/gm,""),r.helper.forEach(l,function(n){e=r.subParser("runExtension")(n,e,c,t)}),e=r.subParser("metadata")(e,c,t),e=r.subParser("hashPreCodeTags")(e,c,t),e=r.subParser("githubCodeBlocks")(e,c,t),e=r.subParser("hashHTMLBlocks")(e,c,t),e=r.subParser("hashCodeTags")(e,c,t),e=r.subParser("stripLinkDefinitions")(e,c,t),e=r.subParser("blockGamut")(e,c,t),e=r.subParser("unhashHTMLSpans")(e,c,t),e=r.subParser("unescapeSpecialChars")(e,c,t),e=e.replace(/¨D/g,"$$"),e=e.replace(/¨T/g,"¨"),e=r.subParser("completeHTMLDocument")(e,c,t),r.helper.forEach(h,function(n){e=r.subParser("runExtension")(n,e,c,t)}),f=t.metadata,e},this.setOption=function(e,t){c[e]=t},this.getOption=function(e){return c[e]},this.getOptions=function(){return c},this.addExtension=function(e,t){n(e,t=t||null)},this.useExtension=function(e){n(e)},this.setFlavor=function(e){if(!u.hasOwnProperty(e))throw Error(e+" flavor was not found") -var t=u[e] -p=e -for(var n in t)t.hasOwnProperty(n)&&(c[n]=t[n])},this.getFlavor=function(){return p},this.removeExtension=function(e){r.helper.isArray(e)||(e=[e]) -for(var t=0;t<e.length;++t){for(var n=e[t],i=0;i<l.length;++i)l[i]===n&&l[i].splice(i,1) -for(;0<h.length;++i)h[0]===n&&h[0].splice(i,1)}},this.getAllExtensions=function(){return{language:l,output:h}},this.getMetadata=function(e){return e?f.raw:f.parsed},this.getMetadataFormat=function(){return f.format},this._setMetadataPair=function(e,t){f.parsed[e]=t},this._setMetadataFormat=function(e){f.format=e},this._setMetadataRaw=function(e){f.raw=e}},r.subParser("anchors",function(e,t,n){"use strict" -var i=function(e,i,o,s,a,u,c){if(r.helper.isUndefined(c)&&(c=""),o=o.toLowerCase(),e.search(/\(<?\s*>? ?(['"].*['"])?\)$/m)>-1)s="" -else if(!s){if(o||(o=i.toLowerCase().replace(/ ?\n/g," ")),s="#"+o,r.helper.isUndefined(n.gUrls[o]))return e -s=n.gUrls[o],r.helper.isUndefined(n.gTitles[o])||(c=n.gTitles[o])}var l='<a href="'+(s=s.replace(r.helper.regexes.asteriskDashAndColon,r.helper.escapeCharactersCallback))+'"' -return""!==c&&null!==c&&(l+=' title="'+(c=(c=c.replace(/"/g,""")).replace(r.helper.regexes.asteriskDashAndColon,r.helper.escapeCharactersCallback))+'"'),t.openLinksInNewWindow&&!/^#/.test(s)&&(l+=' target="¨E95Eblank"'),l+=">"+i+"</a>"} -return e=(e=n.converter._dispatch("anchors.before",e,t,n)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,i),e=e.replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i),e=e.replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<?([\S]+?(?:\([\S]*?\)[\S]*?)?)>?(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i),e=e.replace(/\[([^\[\]]+)]()()()()()/g,i),t.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d\-]+))(?=[.!?;,[\]()]|\s|$)/gim,function(e,n,i,o,s){if("\\"===i)return n+o -if(!r.helper.isString(t.ghMentionsLink))throw new Error("ghMentionsLink option must be a string") -var a=t.ghMentionsLink.replace(/\{u}/g,s),u="" -return t.openLinksInNewWindow&&(u=' target="¨E95Eblank"'),n+'<a href="'+a+'"'+u+">"+o+"</a>"})),e=n.converter._dispatch("anchors.after",e,t,n)}) -var l=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,h=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,d=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,p=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-\/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,f=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,g=function(e){"use strict" -return function(t,n,i,o,s,a,u){var c=i=i.replace(r.helper.regexes.asteriskDashAndColon,r.helper.escapeCharactersCallback),l="",h="",d=n||"",p=u||"" -return/^www\./i.test(i)&&(i=i.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&a&&(l=a),e.openLinksInNewWindow&&(h=' target="¨E95Eblank"'),d+'<a href="'+i+'"'+h+">"+c+"</a>"+l+p}},m=function(e,t){"use strict" -return function(n,i,o){var s="mailto:" -return i=i||"",o=r.subParser("unescapeSpecialChars")(o,e,t),e.encodeEmails?(s=r.helper.encodeEmailAddress(s+o),o=r.helper.encodeEmailAddress(o)):s+=o,i+'<a href="'+s+'">'+o+"</a>"}} -r.subParser("autoLinks",function(e,t,n){"use strict" -return e=n.converter._dispatch("autoLinks.before",e,t,n),e=e.replace(d,g(t)),e=e.replace(f,m(t,n)),e=n.converter._dispatch("autoLinks.after",e,t,n)}),r.subParser("simplifiedAutoLinks",function(e,t,n){"use strict" -return t.simplifiedAutoLink?(e=n.converter._dispatch("simplifiedAutoLinks.before",e,t,n),e=t.excludeTrailingPunctuationFromURLs?e.replace(h,g(t)):e.replace(l,g(t)),e=e.replace(p,m(t,n)),e=n.converter._dispatch("simplifiedAutoLinks.after",e,t,n)):e}),r.subParser("blockGamut",function(e,t,n){"use strict" -return e=n.converter._dispatch("blockGamut.before",e,t,n),e=r.subParser("blockQuotes")(e,t,n),e=r.subParser("headers")(e,t,n),e=r.subParser("horizontalRule")(e,t,n),e=r.subParser("lists")(e,t,n),e=r.subParser("codeBlocks")(e,t,n),e=r.subParser("tables")(e,t,n),e=r.subParser("hashHTMLBlocks")(e,t,n),e=r.subParser("paragraphs")(e,t,n),e=n.converter._dispatch("blockGamut.after",e,t,n)}),r.subParser("blockQuotes",function(e,t,n){"use strict" -e=n.converter._dispatch("blockQuotes.before",e,t,n),e+="\n\n" -var i=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm -return t.splitAdjacentBlockquotes&&(i=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=e.replace(i,function(e){return e=e.replace(/^[ \t]*>[ \t]?/gm,""),e=e.replace(/¨0/g,""),e=e.replace(/^[ \t]+$/gm,""),e=r.subParser("githubCodeBlocks")(e,t,n),e=r.subParser("blockGamut")(e,t,n),e=e.replace(/(^|\n)/g,"$1 "),e=e.replace(/(\s*<pre>[^\r]+?<\/pre>)/gm,function(e,t){var n=t -return n=n.replace(/^ /gm,"¨0"),n=n.replace(/¨0/g,"")}),r.subParser("hashBlock")("<blockquote>\n"+e+"\n</blockquote>",t,n)}),e=n.converter._dispatch("blockQuotes.after",e,t,n)}),r.subParser("codeBlocks",function(e,t,n){"use strict" -return e=n.converter._dispatch("codeBlocks.before",e,t,n),e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,function(e,i,o){var s=i,a=o,u="\n" -return s=r.subParser("outdent")(s,t,n),s=r.subParser("encodeCode")(s,t,n),s=r.subParser("detab")(s,t,n),s=s.replace(/^\n+/g,""),s=s.replace(/\n+$/g,""),t.omitExtraWLInCodeBlocks&&(u=""),s="<pre><code>"+s+u+"</code></pre>",r.subParser("hashBlock")(s,t,n)+a}),e=e.replace(/¨0/,""),e=n.converter._dispatch("codeBlocks.after",e,t,n)}),r.subParser("codeSpans",function(e,t,n){"use strict" -return void 0===(e=n.converter._dispatch("codeSpans.before",e,t,n))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(e,i,o,s){var a=s -return a=a.replace(/^([ \t]*)/g,""),a=a.replace(/[ \t]*$/g,""),a=r.subParser("encodeCode")(a,t,n),a=i+"<code>"+a+"</code>",a=r.subParser("hashHTMLSpans")(a,t,n)}),e=n.converter._dispatch("codeSpans.after",e,t,n)}),r.subParser("completeHTMLDocument",function(e,t,n){"use strict" -if(!t.completeHTMLDocument)return e -e=n.converter._dispatch("completeHTMLDocument.before",e,t,n) -var r="html",i="<!DOCTYPE HTML>\n",o="",s='<meta charset="utf-8">\n',a="",u="" -void 0!==n.metadata.parsed.doctype&&(i="<!DOCTYPE "+n.metadata.parsed.doctype+">\n","html"!==(r=n.metadata.parsed.doctype.toString().toLowerCase())&&"html5"!==r||(s='<meta charset="utf-8">')) -for(var c in n.metadata.parsed)if(n.metadata.parsed.hasOwnProperty(c))switch(c.toLowerCase()){case"doctype":break -case"title":o="<title>"+n.metadata.parsed.title+"</title>\n" -break -case"charset":s="html"===r||"html5"===r?'<meta charset="'+n.metadata.parsed.charset+'">\n':'<meta name="charset" content="'+n.metadata.parsed.charset+'">\n' -break -case"language":case"lang":a=' lang="'+n.metadata.parsed[c]+'"',u+='<meta name="'+c+'" content="'+n.metadata.parsed[c]+'">\n' -break -default:u+='<meta name="'+c+'" content="'+n.metadata.parsed[c]+'">\n'}return e=i+"<html"+a+">\n<head>\n"+o+s+u+"</head>\n<body>\n"+e.trim()+"\n</body>\n</html>",e=n.converter._dispatch("completeHTMLDocument.after",e,t,n)}),r.subParser("detab",function(e,t,n){"use strict" -return e=n.converter._dispatch("detab.before",e,t,n),e=e.replace(/\t(?=\t)/g," "),e=e.replace(/\t/g,"¨A¨B"),e=e.replace(/¨B(.+?)¨A/g,function(e,t){for(var n=t,r=4-n.length%4,i=0;i<r;i++)n+=" " -return n}),e=e.replace(/¨A/g," "),e=e.replace(/¨B/g,""),e=n.converter._dispatch("detab.after",e,t,n)}),r.subParser("ellipsis",function(e,t,n){"use strict" -return e=n.converter._dispatch("ellipsis.before",e,t,n),e=e.replace(/\.\.\./g,"…"),e=n.converter._dispatch("ellipsis.after",e,t,n)}),r.subParser("emoji",function(e,t,n){"use strict" -return t.emoji?(e=(e=n.converter._dispatch("emoji.before",e,t,n)).replace(/:([\S]+?):/g,function(e,t){return r.helper.emojis.hasOwnProperty(t)?r.helper.emojis[t]:e}),e=n.converter._dispatch("emoji.after",e,t,n)):e}),r.subParser("encodeAmpsAndAngles",function(e,t,n){"use strict" -return e=n.converter._dispatch("encodeAmpsAndAngles.before",e,t,n),e=e.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&"),e=e.replace(/<(?![a-z\/?$!])/gi,"<"),e=e.replace(/</g,"<"),e=e.replace(/>/g,">"),e=n.converter._dispatch("encodeAmpsAndAngles.after",e,t,n)}),r.subParser("encodeBackslashEscapes",function(e,t,n){"use strict" -return e=n.converter._dispatch("encodeBackslashEscapes.before",e,t,n),e=e.replace(/\\(\\)/g,r.helper.escapeCharactersCallback),e=e.replace(/\\([`*_{}\[\]()>#+.!~=|-])/g,r.helper.escapeCharactersCallback),e=n.converter._dispatch("encodeBackslashEscapes.after",e,t,n)}),r.subParser("encodeCode",function(e,t,n){"use strict" -return e=n.converter._dispatch("encodeCode.before",e,t,n),e=e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/([*_{}\[\]\\=~-])/g,r.helper.escapeCharactersCallback),e=n.converter._dispatch("encodeCode.after",e,t,n)}),r.subParser("escapeSpecialCharsWithinTagAttributes",function(e,t,n){"use strict" -return e=(e=n.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,t,n)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,r.helper.escapeCharactersCallback)}),e=e.replace(/<!(--(?:(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,function(e){return e.replace(/([\\`*_~=|])/g,r.helper.escapeCharactersCallback)}),e=n.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,t,n)}),r.subParser("githubCodeBlocks",function(e,t,n){"use strict" -return t.ghCodeBlocks?(e=n.converter._dispatch("githubCodeBlocks.before",e,t,n),e+="¨0",e=e.replace(/(?:^|\n)(```+|~~~+)([^\s`~]*)\n([\s\S]*?)\n\1/g,function(e,i,o,s){var a=t.omitExtraWLInCodeBlocks?"":"\n" -return s=r.subParser("encodeCode")(s,t,n),s=r.subParser("detab")(s,t,n),s=s.replace(/^\n+/g,""),s=s.replace(/\n+$/g,""),s="<pre><code"+(o?' class="'+o+" language-"+o+'"':"")+">"+s+a+"</code></pre>",s=r.subParser("hashBlock")(s,t,n),"\n\n¨G"+(n.ghCodeBlocks.push({text:e,codeblock:s})-1)+"G\n\n"}),e=e.replace(/¨0/,""),n.converter._dispatch("githubCodeBlocks.after",e,t,n)):e}),r.subParser("hashBlock",function(e,t,n){"use strict" -return e=n.converter._dispatch("hashBlock.before",e,t,n),e=e.replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(n.gHtmlBlocks.push(e)-1)+"K\n\n",e=n.converter._dispatch("hashBlock.after",e,t,n)}),r.subParser("hashCodeTags",function(e,t,n){"use strict" -return e=n.converter._dispatch("hashCodeTags.before",e,t,n),e=r.helper.replaceRecursiveRegExp(e,function(e,i,o,s){var a=o+r.subParser("encodeCode")(i,t,n)+s -return"¨C"+(n.gHtmlSpans.push(a)-1)+"C"},"<code\\b[^>]*>","</code>","gim"),e=n.converter._dispatch("hashCodeTags.after",e,t,n)}),r.subParser("hashElement",function(e,t,n){"use strict" -return function(e,t){var r=t -return r=r.replace(/\n\n/g,"\n"),r=r.replace(/^\n/,""),r=r.replace(/\n+$/g,""),r="\n\n¨K"+(n.gHtmlBlocks.push(r)-1)+"K\n\n"}}),r.subParser("hashHTMLBlocks",function(e,t,n){"use strict" -e=n.converter._dispatch("hashHTMLBlocks.before",e,t,n) -var i=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],o=function(e,t,r,i){var o=e -return-1!==r.search(/\bmarkdown\b/)&&(o=r+n.converter.makeHtml(t)+i),"\n\n¨K"+(n.gHtmlBlocks.push(o)-1)+"K\n\n"} -t.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,function(e,t){return"<"+t+">"})) -for(var s=0;s<i.length;++s)for(var a,u=new RegExp("^ {0,3}(<"+i[s]+"\\b[^>]*>)","im"),c="<"+i[s]+"\\b[^>]*>",l="</"+i[s]+">";-1!==(a=r.helper.regexIndexOf(e,u));){var h=r.helper.splitAtIndex(e,a),d=r.helper.replaceRecursiveRegExp(h[1],o,c,l,"im") -if(d===h[1])break -e=h[0].concat(d)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,r.subParser("hashElement")(e,t,n)),e=r.helper.replaceRecursiveRegExp(e,function(e){return"\n\n¨K"+(n.gHtmlBlocks.push(e)-1)+"K\n\n"},"^ {0,3}\x3c!--","--\x3e","gm"),e=e.replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,r.subParser("hashElement")(e,t,n)),e=n.converter._dispatch("hashHTMLBlocks.after",e,t,n)}),r.subParser("hashHTMLSpans",function(e,t,n){"use strict" -function r(e){return"¨C"+(n.gHtmlSpans.push(e)-1)+"C"}return e=n.converter._dispatch("hashHTMLSpans.before",e,t,n),e=e.replace(/<[^>]+?\/>/gi,function(e){return r(e)}),e=e.replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,function(e){return r(e)}),e=e.replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,function(e){return r(e)}),e=e.replace(/<[^>]+?>/gi,function(e){return r(e)}),e=n.converter._dispatch("hashHTMLSpans.after",e,t,n)}),r.subParser("unhashHTMLSpans",function(e,t,n){"use strict" -e=n.converter._dispatch("unhashHTMLSpans.before",e,t,n) -for(var r=0;r<n.gHtmlSpans.length;++r){for(var i=n.gHtmlSpans[r],o=0;/¨C(\d+)C/.test(i);){var s=RegExp.$1 -if(i=i.replace("¨C"+s+"C",n.gHtmlSpans[s]),10===o){console.error("maximum nesting of 10 spans reached!!!") -break}++o}e=e.replace("¨C"+r+"C",i)}return e=n.converter._dispatch("unhashHTMLSpans.after",e,t,n)}),r.subParser("hashPreCodeTags",function(e,t,n){"use strict" -return e=n.converter._dispatch("hashPreCodeTags.before",e,t,n),e=r.helper.replaceRecursiveRegExp(e,function(e,i,o,s){var a=o+r.subParser("encodeCode")(i,t,n)+s -return"\n\n¨G"+(n.ghCodeBlocks.push({text:e,codeblock:a})-1)+"G\n\n"},"^ {0,3}<pre\\b[^>]*>\\s*<code\\b[^>]*>","^ {0,3}</code>\\s*</pre>","gim"),e=n.converter._dispatch("hashPreCodeTags.after",e,t,n)}),r.subParser("headers",function(e,t,n){"use strict" -function i(e){var i,o -if(t.customizedHeaderId){var s=e.match(/\{([^{]+?)}\s*$/) -s&&s[1]&&(e=s[1])}return i=e,o=r.helper.isString(t.prefixHeaderId)?t.prefixHeaderId:!0===t.prefixHeaderId?"section-":"",t.rawPrefixHeaderId||(i=o+i),i=t.ghCompatibleHeaderId?i.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():t.rawHeaderId?i.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():i.replace(/[^\w]/g,"").toLowerCase(),t.rawPrefixHeaderId&&(i=o+i),n.hashLinkCounts[i]?i=i+"-"+n.hashLinkCounts[i]++:n.hashLinkCounts[i]=1,i}e=n.converter._dispatch("headers.before",e,t,n) -var o=isNaN(parseInt(t.headerLevelStart))?1:parseInt(t.headerLevelStart),s=t.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,a=t.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm -e=(e=e.replace(s,function(e,s){var a=r.subParser("spanGamut")(s,t,n),u=t.noHeaderId?"":' id="'+i(s)+'"',c="<h"+o+u+">"+a+"</h"+o+">" -return r.subParser("hashBlock")(c,t,n)})).replace(a,function(e,s){var a=r.subParser("spanGamut")(s,t,n),u=t.noHeaderId?"":' id="'+i(s)+'"',c=o+1,l="<h"+c+u+">"+a+"</h"+c+">" -return r.subParser("hashBlock")(l,t,n)}) -var u=t.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm -return e=e.replace(u,function(e,s,a){var u=a -t.customizedHeaderId&&(u=a.replace(/\s?\{([^{]+?)}\s*$/,"")) -var c=r.subParser("spanGamut")(u,t,n),l=t.noHeaderId?"":' id="'+i(a)+'"',h=o-1+s.length,d="<h"+h+l+">"+c+"</h"+h+">" -return r.subParser("hashBlock")(d,t,n)}),e=n.converter._dispatch("headers.after",e,t,n)}),r.subParser("horizontalRule",function(e,t,n){"use strict" -e=n.converter._dispatch("horizontalRule.before",e,t,n) -var i=r.subParser("hashBlock")("<hr />",t,n) -return e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,i),e=e.replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,i),e=e.replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,i),e=n.converter._dispatch("horizontalRule.after",e,t,n)}),r.subParser("images",function(e,t,n){"use strict" -function i(e,t,i,o,s,a,u,c){var l=n.gUrls,h=n.gTitles,d=n.gDimensions -if(i=i.toLowerCase(),c||(c=""),e.search(/\(<?\s*>? ?(['"].*['"])?\)$/m)>-1)o="" -else if(""===o||null===o){if(""!==i&&null!==i||(i=t.toLowerCase().replace(/ ?\n/g," ")),o="#"+i,r.helper.isUndefined(l[i]))return e -o=l[i],r.helper.isUndefined(h[i])||(c=h[i]),r.helper.isUndefined(d[i])||(s=d[i].width,a=d[i].height)}t=t.replace(/"/g,""").replace(r.helper.regexes.asteriskDashAndColon,r.helper.escapeCharactersCallback) -var p='<img src="'+(o=o.replace(r.helper.regexes.asteriskDashAndColon,r.helper.escapeCharactersCallback))+'" alt="'+t+'"' -return c&&(p+=' title="'+(c=c.replace(/"/g,""").replace(r.helper.regexes.asteriskDashAndColon,r.helper.escapeCharactersCallback))+'"'),s&&a&&(p+=' width="'+(s="*"===s?"auto":s)+'"',p+=' height="'+(a="*"===a?"auto":a)+'"'),p+=" />"}return e=(e=n.converter._dispatch("images.before",e,t,n)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,i),e=e.replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<?(data:.+?\/.+?;base64,[A-Za-z0-9+\/=\n]+?)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,function(e,t,n,r,o,s,a,u){return r=r.replace(/\s/g,""),i(e,t,n,r,o,s,0,u)}),e=e.replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,i),e=e.replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<?([\S]+?(?:\([\S]*?\)[\S]*?)?)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,i),e=e.replace(/!\[([^\[\]]+)]()()()()()/g,i),e=n.converter._dispatch("images.after",e,t,n)}),r.subParser("italicsAndBold",function(e,t,n){"use strict" -function r(e,t,n){return t+e+n}return e=n.converter._dispatch("italicsAndBold.before",e,t,n),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*)___\b/g,function(e,t){return r(t,"<strong><em>","</em></strong>")})).replace(/\b__(\S[\s\S]*)__\b/g,function(e,t){return r(t,"<strong>","</strong>")})).replace(/\b_(\S[\s\S]*?)_\b/g,function(e,t){return r(t,"<em>","</em>")}):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,function(e,t){return/\S$/.test(t)?r(t,"<strong><em>","</em></strong>"):e})).replace(/__(\S[\s\S]*?)__/g,function(e,t){return/\S$/.test(t)?r(t,"<strong>","</strong>"):e})).replace(/_([^\s_][\s\S]*?)_/g,function(e,t){return/\S$/.test(t)?r(t,"<em>","</em>"):e}),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]+?)\*\*\*\B(?!\*)/g,function(e,t,n){return r(n,t+"<strong><em>","</em></strong>")})).replace(/([^*]|^)\B\*\*(\S[\s\S]+?)\*\*\B(?!\*)/g,function(e,t,n){return r(n,t+"<strong>","</strong>")})).replace(/([^*]|^)\B\*(\S[\s\S]+?)\*\B(?!\*)/g,function(e,t,n){return r(n,t+"<em>","</em>")}):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,function(e,t){return/\S$/.test(t)?r(t,"<strong><em>","</em></strong>"):e})).replace(/\*\*(\S[\s\S]*?)\*\*/g,function(e,t){return/\S$/.test(t)?r(t,"<strong>","</strong>"):e})).replace(/\*([^\s*][\s\S]*?)\*/g,function(e,t){return/\S$/.test(t)?r(t,"<em>","</em>"):e}),e=n.converter._dispatch("italicsAndBold.after",e,t,n)}),r.subParser("lists",function(e,t,n){"use strict" -function i(e,i){n.gListLevel++,e=e.replace(/\n{2,}$/,"\n") -var o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,s=/\n[ \t]*\n(?!¨0)/.test(e+="¨0") -return t.disableForced4SpacesIndentedSublists&&(o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=e.replace(o,function(e,i,o,a,u,c,l){l=l&&""!==l.trim() -var h=r.subParser("outdent")(u,t,n),d="" -return c&&t.tasklists&&(d=' class="task-list-item" style="list-style-type: none;"',h=h.replace(/^[ \t]*\[(x|X| )?]/m,function(){var e='<input type="checkbox" disabled style="margin: 0px 0.35em 0.25em -1.6em; vertical-align: middle;"' -return l&&(e+=" checked"),e+=">"})),h=h.replace(/^([-*+]|\d\.)[ \t]+[\S\n ]*/g,function(e){return"¨A"+e}),i||h.search(/\n{2,}/)>-1?(h=r.subParser("githubCodeBlocks")(h,t,n),h=r.subParser("blockGamut")(h,t,n)):(h=(h=r.subParser("lists")(h,t,n)).replace(/\n$/,""),h=(h=r.subParser("hashHTMLBlocks")(h,t,n)).replace(/\n\n+/g,"\n\n"),h=s?r.subParser("paragraphs")(h,t,n):r.subParser("spanGamut")(h,t,n)),h=h.replace("¨A",""),h="<li"+d+">"+h+"</li>\n"}),e=e.replace(/¨0/g,""),n.gListLevel--,i&&(e=e.replace(/\s+$/,"")),e}function o(e,t){if("ol"===t){var n=e.match(/^ *(\d+)\./) -if(n&&"1"!==n[1])return' start="'+n[1]+'"'}return""}function s(e,n,r){var s=t.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,a=t.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,u="ul"===n?s:a,c="" -if(-1!==e.search(u))!function t(l){var h=l.search(u),d=o(e,n);-1!==h?(c+="\n\n<"+n+d+">\n"+i(l.slice(0,h),!!r)+"</"+n+">\n",u="ul"==(n="ul"===n?"ol":"ul")?s:a,t(l.slice(h))):c+="\n\n<"+n+d+">\n"+i(l,!!r)+"</"+n+">\n"}(e) -else{var l=o(e,n) -c="\n\n<"+n+l+">\n"+i(e,!!r)+"</"+n+">\n"}return c}return e=n.converter._dispatch("lists.before",e,t,n),e+="¨0",e=n.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,function(e,t,n){return s(t,n.search(/[*+-]/g)>-1?"ul":"ol",!0)}):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,function(e,t,n,r){return s(n,r.search(/[*+-]/g)>-1?"ul":"ol",!1)}),e=e.replace(/¨0/,""),e=n.converter._dispatch("lists.after",e,t,n)}),r.subParser("metadata",function(e,t,n){"use strict" -function r(e){n.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,function(e,t,r){return n.metadata.parsed[t]=r,""})}return t.metadata?(e=n.converter._dispatch("metadata.before",e,t,n),e=e.replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,function(e,t,n){return r(n),"¨M"}),e=e.replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,function(e,t,i){return t&&(n.metadata.format=t),r(i),"¨M"}),e=e.replace(/¨M/g,""),e=n.converter._dispatch("metadata.after",e,t,n)):e}),r.subParser("outdent",function(e,t,n){"use strict" -return e=n.converter._dispatch("outdent.before",e,t,n),e=e.replace(/^(\t|[ ]{1,4})/gm,"¨0"),e=e.replace(/¨0/g,""),e=n.converter._dispatch("outdent.after",e,t,n)}),r.subParser("paragraphs",function(e,t,n){"use strict" -for(var i=(e=(e=(e=n.converter._dispatch("paragraphs.before",e,t,n)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),o=[],s=i.length,a=0;a<s;a++){var u=i[a] -u.search(/¨(K|G)(\d+)\1/g)>=0?o.push(u):u.search(/\S/)>=0&&(u=(u=r.subParser("spanGamut")(u,t,n)).replace(/^([ \t]*)/g,"<p>"),u+="</p>",o.push(u))}for(s=o.length,a=0;a<s;a++){for(var c="",l=o[a],h=!1;/¨(K|G)(\d+)\1/.test(l);){var d=RegExp.$1,p=RegExp.$2 -c=(c="K"===d?n.gHtmlBlocks[p]:h?r.subParser("encodeCode")(n.ghCodeBlocks[p].text,t,n):n.ghCodeBlocks[p].codeblock).replace(/\$/g,"$$$$"),l=l.replace(/(\n\n)?¨(K|G)\d+\2(\n\n)?/,c),/^<pre\b[^>]*>\s*<code\b[^>]*>/.test(l)&&(h=!0)}o[a]=l}return e=o.join("\n"),e=e.replace(/^\n+/g,""),e=e.replace(/\n+$/g,""),n.converter._dispatch("paragraphs.after",e,t,n)}),r.subParser("runExtension",function(e,t,n,r){"use strict" -if(e.filter)t=e.filter(t,r.converter,n) -else if(e.regex){var i=e.regex -i instanceof RegExp||(i=new RegExp(i,"g")),t=t.replace(i,e.replace)}return t}),r.subParser("spanGamut",function(e,t,n){"use strict" -return e=n.converter._dispatch("spanGamut.before",e,t,n),e=r.subParser("codeSpans")(e,t,n),e=r.subParser("escapeSpecialCharsWithinTagAttributes")(e,t,n),e=r.subParser("encodeBackslashEscapes")(e,t,n),e=r.subParser("images")(e,t,n),e=r.subParser("anchors")(e,t,n),e=r.subParser("autoLinks")(e,t,n),e=r.subParser("simplifiedAutoLinks")(e,t,n),e=r.subParser("emoji")(e,t,n),e=r.subParser("underline")(e,t,n),e=r.subParser("italicsAndBold")(e,t,n),e=r.subParser("strikethrough")(e,t,n),e=r.subParser("ellipsis")(e,t,n),e=r.subParser("hashHTMLSpans")(e,t,n),e=r.subParser("encodeAmpsAndAngles")(e,t,n),t.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"<br />\n")):e=e.replace(/ +\n/g,"<br />\n"),e=n.converter._dispatch("spanGamut.after",e,t,n)}),r.subParser("strikethrough",function(e,t,n){"use strict" -return t.strikethrough&&(e=(e=n.converter._dispatch("strikethrough.before",e,t,n)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,function(e,i){return function(e){return t.simplifiedAutoLink&&(e=r.subParser("simplifiedAutoLinks")(e,t,n)),"<del>"+e+"</del>"}(i)}),e=n.converter._dispatch("strikethrough.after",e,t,n)),e}),r.subParser("stripLinkDefinitions",function(e,t,n){"use strict" -var i=function(e,i,o,s,a,u,c){return i=i.toLowerCase(),o.match(/^data:.+?\/.+?;base64,/)?n.gUrls[i]=o.replace(/\s/g,""):n.gUrls[i]=r.subParser("encodeAmpsAndAngles")(o,t,n),u?u+c:(c&&(n.gTitles[i]=c.replace(/"|'/g,""")),t.parseImgDimensions&&s&&a&&(n.gDimensions[i]={width:s,height:a}),"")} -return e=(e+="¨0").replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*<?(data:.+?\/.+?;base64,[A-Za-z0-9+\/=\n]+?)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,i),e=e.replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*<?([^>\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,i),e=e.replace(/¨0/,"")}),r.subParser("tables",function(e,t,n){"use strict" -function i(e){return/^:[ \t]*--*$/.test(e)?' style="text-align:left;"':/^--*[ \t]*:[ \t]*$/.test(e)?' style="text-align:right;"':/^:[ \t]*--*[ \t]*:$/.test(e)?' style="text-align:center;"':""}function o(e,i){var o="" -return e=e.trim(),(t.tablesHeaderId||t.tableHeaderId)&&(o=' id="'+e.replace(/ /g,"_").toLowerCase()+'"'),e=r.subParser("spanGamut")(e,t,n),"<th"+o+i+">"+e+"</th>\n"}function s(e,i){return"<td"+i+">"+r.subParser("spanGamut")(e,t,n)+"</td>\n"}function a(e){var a,u=e.split("\n") -for(a=0;a<u.length;++a)/^ {0,3}\|/.test(u[a])&&(u[a]=u[a].replace(/^ {0,3}\|/,"")),/\|[ \t]*$/.test(u[a])&&(u[a]=u[a].replace(/\|[ \t]*$/,"")),u[a]=r.subParser("codeSpans")(u[a],t,n) -var c=u[0].split("|").map(function(e){return e.trim()}),l=u[1].split("|").map(function(e){return e.trim()}),h=[],d=[],p=[],f=[] -for(u.shift(),u.shift(),a=0;a<u.length;++a)""!==u[a].trim()&&h.push(u[a].split("|").map(function(e){return e.trim()})) -if(c.length<l.length)return e -for(a=0;a<l.length;++a)p.push(i(l[a])) -for(a=0;a<c.length;++a)r.helper.isUndefined(p[a])&&(p[a]=""),d.push(o(c[a],p[a])) -for(a=0;a<h.length;++a){for(var g=[],m=0;m<d.length;++m)r.helper.isUndefined(h[a][m]),g.push(s(h[a][m],p[m])) -f.push(g)}return function(e,t){for(var n="<table>\n<thead>\n<tr>\n",r=e.length,i=0;i<r;++i)n+=e[i] -for(n+="</tr>\n</thead>\n<tbody>\n",i=0;i<t.length;++i){n+="<tr>\n" -for(var o=0;o<r;++o)n+=t[i][o] -n+="</tr>\n"}return n+="</tbody>\n</table>\n"}(d,f)}return t.tables?(e=n.converter._dispatch("tables.before",e,t,n),e=e.replace(/\\(\|)/g,r.helper.escapeCharactersCallback),e=e.replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,a),e=e.replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,a),e=n.converter._dispatch("tables.after",e,t,n)):e}),r.subParser("underline",function(e,t,n){"use strict" -return t.underline?(e=n.converter._dispatch("underline.before",e,t,n),e=t.literalMidWordUnderscores?e.replace(/\b_?__(\S[\s\S]*)___?\b/g,function(e,t){return"<u>"+t+"</u>"}):e.replace(/_?__(\S[\s\S]*?)___?/g,function(e,t){return/\S$/.test(t)?"<u>"+t+"</u>":e}),e=e.replace(/(_)/g,r.helper.escapeCharactersCallback),e=n.converter._dispatch("underline.after",e,t,n)):e}),r.subParser("unescapeSpecialChars",function(e,t,n){"use strict" -return e=n.converter._dispatch("unescapeSpecialChars.before",e,t,n),e=e.replace(/¨E(\d+)E/g,function(e,t){var n=parseInt(t) -return String.fromCharCode(n)}),e=n.converter._dispatch("unescapeSpecialChars.after",e,t,n)}) -"function"==typeof define&&define.amd?define(function(){"use strict" -return r}):"undefined"!=typeof module&&module.exports?module.exports=r:this.showdown=r}.call(this),define("ember-cli-app-version/initializer-factory",["exports"],function(e){"use strict" -function t(e,t){var i=!1 -return function(){if(!i&&e&&t){var o=n(e) -r.register(o,t),i=!0}}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t -var n=Ember.String.classify,r=Ember.libraries}),define("ember-cli-app-version/utils/regexp",["exports"],function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}) -e.versionRegExp=/\d[.]\d[.]\d/,e.shaRegExp=/[a-z\d]{8}/}),define("ember-load-initializers/index",["exports"],function(e){"use strict" -function t(e){var t=require(e,null,null,!0) -if(!t)throw new Error(e+" must export an initializer.") -var n=t.default -return n.name||(n.name=e.slice(e.lastIndexOf("/")+1)),n}function n(e,n){for(var r=0;r<n.length;r++)e.initializer(t(n[r]))}function r(e,n){for(var r=0;r<n.length;r++)e.instanceInitializer(t(n[r]))}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){for(var i=t+"/initializers/",o=t+"/instance-initializers/",s=[],a=[],u=Object.keys(requirejs._eak_seen),c=0;c<u.length;c++){var l=u[c] -0===l.lastIndexOf(i,0)?s.push(l):0===l.lastIndexOf(o,0)&&a.push(l)}n(e,s),r(e,a)}}),define("ember-radio-button/components/labeled-radio-button",["exports","ember-radio-button/templates/components/labeled-radio-button"],function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({tagName:"label",layout:t.default,attributeBindings:["for"],classNameBindings:["_checkedClass"],classNames:["ember-radio-button"],defaultLayout:null,checkedClass:"checked",_checkedClass:Ember.computed("checked","checkedClass",function(){return this.get("checked")?this.get("checkedClass"):""}),checked:Ember.computed("groupValue","value",function(){return Ember.isEqual(this.get("groupValue"),this.get("value"))}).readOnly(),for:Ember.computed.readOnly("radioId"),actions:{innerRadioChanged:function(e){this.sendAction("changed",e)}}})}),define("ember-radio-button/components/radio-button-input",["exports"],function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({tagName:"input",type:"radio",defaultLayout:null,attributeBindings:["autofocus","checked","disabled","name","required","tabindex","type","value","ariaLabelledby:aria-labelledby","ariaDescribedby:aria-describedby"],checked:Ember.computed("groupValue","value",function(){return Ember.isEqual(this.get("groupValue"),this.get("value"))}).readOnly(),sendChangedAction:function(){this.sendAction("changed",this.get("value"))},change:function(){var e=this.get("value") -this.get("groupValue")!==e&&(this.set("groupValue",e),Ember.run.once(this,"sendChangedAction"))}})}),define("ember-radio-button/components/radio-button",["exports","ember-radio-button/templates/components/radio-button"],function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=Ember.Component.extend({tagName:"",layout:t.default,hasBlock:Ember.computed.bool("template").readOnly(),joinedClassNames:Ember.computed("classNames",function(){var e=this.get("classNames") -return e&&e.length&&e.join?e.join(" "):e}),defaultLayout:null,checkedClass:"checked",checked:Ember.computed("groupValue","value",function(){return Ember.isEqual(this.get("groupValue"),this.get("value"))}).readOnly(),actions:{changed:function(e){this.sendAction("changed",e)}}})}),define("ember-radio-button/templates/components/labeled-radio-button",["exports"],function(e){"use strict" -e.__esModule=!0,e.default=Ember.HTMLBars.template({id:"1UntrEkb",block:'{"symbols":["&default"],"statements":[[1,[26,"radio-button",null,[["radioClass","radioId","changed","disabled","groupValue","name","required","value"],[[22,["radioClass"]],[22,["radioId"]],"innerRadioChanged",[22,["disabled"]],[22,["groupValue"]],[22,["name"]],[22,["required"]],[22,["value"]]]]],false],[0,"\\n\\n"],[13,1],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"ember-radio-button/templates/components/labeled-radio-button.hbs"}})}),define("ember-radio-button/templates/components/radio-button-input",["exports"],function(e){"use strict" -e.__esModule=!0,e.default=Ember.HTMLBars.template({id:"3/rWZEpA",block:'{"symbols":[],"statements":[],"hasEval":false}',meta:{moduleName:"ember-radio-button/templates/components/radio-button-input.hbs"}})}),define("ember-radio-button/templates/components/radio-button",["exports"],function(e){"use strict" -e.__esModule=!0,e.default=Ember.HTMLBars.template({id:"MNnQlikJ",block:'{"symbols":["&default"],"statements":[[4,"if",[[23,1]],null,{"statements":[[0," "],[6,"label"],[11,"class",[27,["ember-radio-button ",[26,"if",[[22,["checked"]],[22,["checkedClass"]]],null]," ",[20,"joinedClassNames"]]]],[11,"for",[20,"radioId"]],[8],[0,"\\n "],[1,[26,"radio-button-input",null,[["class","id","autofocus","disabled","name","required","tabindex","groupValue","value","ariaLabelledby","ariaDescribedby","changed"],[[22,["radioClass"]],[22,["radioId"]],[22,["autofocus"]],[22,["disabled"]],[22,["name"]],[22,["required"]],[22,["tabindex"]],[22,["groupValue"]],[22,["value"]],[22,["ariaLabelledby"]],[22,["ariaDescribedby"]],"changed"]]],false],[0,"\\n\\n "],[13,1],[0,"\\n "],[9],[0,"\\n"]],"parameters":[]},{"statements":[[0," "],[1,[26,"radio-button-input",null,[["class","id","autofocus","disabled","name","required","tabindex","groupValue","value","ariaLabelledby","ariaDescribedby","changed"],[[22,["radioClass"]],[22,["radioId"]],[22,["autofocus"]],[22,["disabled"]],[22,["name"]],[22,["required"]],[22,["tabindex"]],[22,["groupValue"]],[22,["value"]],[22,["ariaLabelledby"]],[22,["ariaDescribedby"]],"changed"]]],false],[0,"\\n"]],"parameters":[]}]],"hasEval":false}',meta:{moduleName:"ember-radio-button/templates/components/radio-button.hbs"}})}),define("ember-resolver/features",[],function(){"use strict"}),define("ember-resolver/index",["exports","ember-resolver/resolvers/classic"],function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})}),define("ember-resolver/resolver",["exports","ember-resolver/resolvers/classic"],function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})}),define("ember-resolver/resolvers/classic/container-debug-adapter",["exports","ember-resolver/resolvers/classic/index"],function(e,t){"use strict" -function n(e,t,n){var r=t.match(new RegExp("^/?"+n+"/(.+)/"+e+"$")) -if(null!==r)return r[1]}Object.defineProperty(e,"__esModule",{value:!0}) -var r=Ember.ContainerDebugAdapter -e.default=r.extend({_moduleRegistry:null,init:function(){this._super.apply(this,arguments),this._moduleRegistry||(this._moduleRegistry=new t.ModuleRegistry)},canCatalogEntriesByType:function(e){return"model"===e||this._super.apply(this,arguments)},catalogEntriesByType:function(e){for(var t=this._moduleRegistry.moduleNames(),r=Ember.A(),i=this.namespace.modulePrefix,o=0,s=t.length;o<s;o++){var a=t[o] -if(-1!==a.indexOf(e)){var u=n(e,a,this.namespace.podModulePrefix||i) -u||(u=a.split(e+"s/").pop()),r.addObject(u)}}return r}})}),define("ember-resolver/resolvers/classic/index",["exports","ember-resolver/utils/class-factory","ember-resolver/utils/make-dictionary"],function(e,t,n){"use strict" -function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e){if(!0===e.parsedName)return e -var t=void 0,n=void 0,r=void 0,i=e.split("@") -if("helper:@content-helper"!==e&&2===i.length){var o=i[0].split(":") -if(2===o.length)t=o[1],n=o[0],r=i[1] -else{var s=i[1].split(":") -t=i[0],n=s[0],r=s[1]}"template"===n&&0===t.lastIndexOf("components/",0)&&(r="components/"+r,t=t.slice(11))}else i=e.split(":"),n=i[0],r=i[1] -var a=r,u=h(this,"namespace"),l=u -return{parsedName:!0,fullName:e,prefix:t||this.prefix({type:n}),type:n,fullNameWithoutType:a,name:r,root:l,resolveMethodName:"resolve"+c(n)}}function o(e){Ember.assert("`modulePrefix` must be defined",this.namespace.modulePrefix) -var n=this.findModuleName(e) -if(n){var r=this._extractDefaultExport(n,e) -if(void 0===r)throw new Error(" Expected to find: '"+e.fullName+"' within '"+n+"' but got 'undefined'. Did you forget to 'export default' within '"+n+"'?") -return this.shouldWrapInClassFactory(r,e)&&(r=(0,t.default)(r)),r}return this._super(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.ModuleRegistry=void 0,void 0===requirejs.entries&&(requirejs.entries=requirejs._eak_seen) -var s=e.ModuleRegistry=function(){function e(t){r(this,e),this._entries=t||requirejs.entries}return e.prototype.moduleNames=function(){return Object.keys(this._entries)},e.prototype.has=function(e){return e in this._entries},e.prototype.get=function(e){return require(e)},e}(),a=Ember.String,u=a.underscore,c=a.classify,l=a.dasherize,h=Ember.get,d=Ember.DefaultResolver,p=d.extend({resolveOther:o,parseName:i,resolveTemplate:o,pluralizedTypes:null,moduleRegistry:null,makeToString:function(e,t){return this.namespace.modulePrefix+"@"+t+":"},shouldWrapInClassFactory:function(){return!1},init:function(){this._super(),this.moduleBasedResolver=!0,this._moduleRegistry||(this._moduleRegistry=new s),this._normalizeCache=(0,n.default)(),this.pluralizedTypes=this.pluralizedTypes||(0,n.default)(),this.pluralizedTypes.config||(this.pluralizedTypes.config="config"),this._deprecatedPodModulePrefix=!1},normalize:function(e){return this._normalizeCache[e]||(this._normalizeCache[e]=this._normalize(e))},_normalize:function(e){var t=e.split(":") -return t.length>1?"helper"===t[0]?t[0]+":"+t[1].replace(/_/g,"-"):t[0]+":"+l(t[1].replace(/\./g,"/")):e},pluralize:function(e){return this.pluralizedTypes[e]||(this.pluralizedTypes[e]=e+"s")},podBasedLookupWithPrefix:function(e,t){var n=t.fullNameWithoutType -return"template"===t.type&&(n=n.replace(/^components\//,"")),e+"/"+n+"/"+t.type},podBasedModuleName:function(e){var t=this.namespace.podModulePrefix||this.namespace.modulePrefix -return this.podBasedLookupWithPrefix(t,e)},podBasedComponentsInSubdir:function(e){var t=this.namespace.podModulePrefix||this.namespace.modulePrefix -if(t+="/components","component"===e.type||/^components/.test(e.fullNameWithoutType))return this.podBasedLookupWithPrefix(t,e)},resolveEngine:function(e){var t=e.fullNameWithoutType,n=t+"/engine" -if(this._moduleRegistry.has(n))return this._extractDefaultExport(n)},resolveRouteMap:function(e){var t=e.fullNameWithoutType,n=t+"/routes" -if(this._moduleRegistry.has(n)){var r=this._extractDefaultExport(n) -return Ember.assert("The route map for "+t+" should be wrapped by 'buildRoutes' before exporting.",r.isRouteMap),r}},mainModuleName:function(e){var t=e.prefix+"/"+e.type -if("main"===e.fullNameWithoutType)return t},defaultModuleName:function(e){return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType},prefix:function(e){var t=this.namespace.modulePrefix -return this.namespace[e.type+"Prefix"]&&(t=this.namespace[e.type+"Prefix"]),t},moduleNameLookupPatterns:Ember.computed(function(){return[this.podBasedModuleName,this.podBasedComponentsInSubdir,this.mainModuleName,this.defaultModuleName]}).readOnly(),findModuleName:function(e,t){for(var n=this.get("moduleNameLookupPatterns"),r=void 0,i=0,o=n.length;i<o;i++){var s=n[i],a=s.call(this,e) -if(a&&(a=this.chooseModuleName(a,e)),a&&this._moduleRegistry.has(a)&&(r=a),t||this._logLookup(r,e,a),r)return r}},chooseModuleName:function(e,t){var n=this,r=u(e) -if(e!==r&&this._moduleRegistry.has(e)&&this._moduleRegistry.has(r))throw new TypeError("Ambiguous module names: '"+e+"' and '"+r+"'") -if(this._moduleRegistry.has(e))return e -if(this._moduleRegistry.has(r))return r -var i=e.replace(/\/-([^\/]*)$/,"/_$1") -if(this._moduleRegistry.has(i))return Ember.deprecate('Modules should not contain underscores. Attempted to lookup "'+e+'" which was not found. Please rename "'+i+'" to "'+e+'" instead.',!1,{id:"ember-resolver.underscored-modules",until:"3.0.0"}),i -Ember.runInDebug(function(){"helper"===t.type&&/[a-z]+[A-Z]+/.test(e)&&(n._camelCaseHelperWarnedNames=n._camelCaseHelperWarnedNames||[],!(n._camelCaseHelperWarnedNames.indexOf(t.fullName)>-1)&&n._moduleRegistry.has(l(e))&&(n._camelCaseHelperWarnedNames.push(t.fullName),Ember.warn('Attempted to lookup "'+t.fullName+'" which was not found. In previous versions of ember-resolver, a bug would have caused the module at "'+l(e)+'" to be returned for this camel case helper name. This has been fixed. Use the dasherized name to resolve the module that would have been returned in previous versions.',!1,{id:"ember-resolver.camelcase-helper-names",until:"3.0.0"})))})},lookupDescription:function(e){var t=this.parseName(e) -return this.findModuleName(t,!0)},_logLookup:function(e,t,n){if(Ember.ENV.LOG_MODULE_RESOLVER||t.root.LOG_RESOLVER){var r=void 0,i=e?"[✓]":"[ ]" -r=t.fullName.length>60?".":new Array(60-t.fullName.length).join("."),n||(n=this.lookupDescription(t)),Ember.Logger.info(i,t.fullName,r,n)}},knownForType:function(e){for(var t=this._moduleRegistry.moduleNames(),r=(0,n.default)(),i=0,o=t.length;i<o;i++){var s=t[i],a=this.translateToContainerFullname(e,s) -a&&(r[a]=!0)}return r},translateToContainerFullname:function(e,t){var n=this.prefix({type:e}),r=n+"/",i="/"+e,o=t.indexOf(r),s=t.indexOf(i) -if(0===o&&s===t.length-i.length&&t.length>r.length+i.length)return e+":"+t.slice(o+r.length,s) -var a=this.pluralize(e),u=n+"/"+a+"/" -return 0===t.indexOf(u)&&t.length>u.length?e+":"+t.slice(u.length):void 0},_extractDefaultExport:function(e){var t=require(e,null,null,!0) -return t&&t.default&&(t=t.default),t}}) -p.reopenClass({moduleBasedResolver:!0}),e.default=p}),define("ember-resolver/utils/class-factory",["exports"],function(e){"use strict" -function t(e){return{create:function(t){return"function"==typeof e.extend?e.extend(t):e}}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t}),define("ember-resolver/utils/make-dictionary",["exports"],function(e){"use strict" -function t(){var e=Object.create(null) -return e._dict=null,delete e._dict,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t}),define("ember-truth-helpers/helpers/and",["exports","ember-truth-helpers/utils/truth-convert"],function(e,t){"use strict" -function n(e){for(var n=0,r=e.length;n<r;n++)if(!1===(0,t.default)(e[n]))return e[n] -return e[e.length-1]}Object.defineProperty(e,"__esModule",{value:!0}),e.and=n,e.default=Ember.Helper.helper(n)}),define("ember-truth-helpers/helpers/equal",["exports"],function(e){"use strict" -function t(e){return e[0]===e[1]}Object.defineProperty(e,"__esModule",{value:!0}),e.equal=t,e.default=Ember.Helper.helper(t)}),define("ember-truth-helpers/helpers/gt",["exports"],function(e){"use strict" -function t(e,t){var n=e[0],r=e[1] -return t.forceNumber&&("number"!=typeof n&&(n=Number(n)),"number"!=typeof r&&(r=Number(r))),n>r}Object.defineProperty(e,"__esModule",{value:!0}),e.gt=t,e.default=Ember.Helper.helper(t)}) -define("ember-truth-helpers/helpers/gte",["exports"],function(e){"use strict" -function t(e,t){var n=e[0],r=e[1] -return t.forceNumber&&("number"!=typeof n&&(n=Number(n)),"number"!=typeof r&&(r=Number(r))),n>=r}Object.defineProperty(e,"__esModule",{value:!0}),e.gte=t,e.default=Ember.Helper.helper(t)}),define("ember-truth-helpers/helpers/is-array",["exports"],function(e){"use strict" -function t(e){for(var t=0,n=e.length;t<n;t++)if(!1===Ember.isArray(e[t]))return!1 -return!0}Object.defineProperty(e,"__esModule",{value:!0}),e.isArray=t,e.default=Ember.Helper.helper(t)}),define("ember-truth-helpers/helpers/is-equal",["exports"],function(e){"use strict" -function t(e){var t=n(e,2),r=t[0],i=t[1] -return Ember.isEqual(r,i)}Object.defineProperty(e,"__esModule",{value:!0}),e.isEqual=t -var n=function(){function e(e,t){var n=[],r=!0,i=!1,o=void 0 -try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{!r&&a.return&&a.return()}finally{if(i)throw o}}return n}return function(t,n){if(Array.isArray(t))return t -if(Symbol.iterator in Object(t))return e(t,n) -throw new TypeError("Invalid attempt to destructure non-iterable instance")}}() -e.default=Ember.Helper.helper(t)}),define("ember-truth-helpers/helpers/lt",["exports"],function(e){"use strict" -function t(e,t){var n=e[0],r=e[1] -return t.forceNumber&&("number"!=typeof n&&(n=Number(n)),"number"!=typeof r&&(r=Number(r))),n<r}Object.defineProperty(e,"__esModule",{value:!0}),e.lt=t,e.default=Ember.Helper.helper(t)}),define("ember-truth-helpers/helpers/lte",["exports"],function(e){"use strict" -function t(e,t){var n=e[0],r=e[1] -return t.forceNumber&&("number"!=typeof n&&(n=Number(n)),"number"!=typeof r&&(r=Number(r))),n<=r}Object.defineProperty(e,"__esModule",{value:!0}),e.lte=t,e.default=Ember.Helper.helper(t)}),define("ember-truth-helpers/helpers/not-equal",["exports"],function(e){"use strict" -function t(e){return e[0]!==e[1]}Object.defineProperty(e,"__esModule",{value:!0}),e.notEqualHelper=t,e.default=Ember.Helper.helper(t)}),define("ember-truth-helpers/helpers/not",["exports","ember-truth-helpers/utils/truth-convert"],function(e,t){"use strict" -function n(e){for(var n=0,r=e.length;n<r;n++)if(!0===(0,t.default)(e[n]))return!1 -return!0}Object.defineProperty(e,"__esModule",{value:!0}),e.not=n,e.default=Ember.Helper.helper(n)}),define("ember-truth-helpers/helpers/or",["exports","ember-truth-helpers/utils/truth-convert"],function(e,t){"use strict" -function n(e){for(var n=0,r=e.length;n<r;n++)if(!0===(0,t.default)(e[n]))return e[n] -return e[e.length-1]}Object.defineProperty(e,"__esModule",{value:!0}),e.or=n,e.default=Ember.Helper.helper(n)}),define("ember-truth-helpers/helpers/xor",["exports","ember-truth-helpers/utils/truth-convert"],function(e,t){"use strict" -function n(e){return(0,t.default)(e[0])!==(0,t.default)(e[1])}Object.defineProperty(e,"__esModule",{value:!0}),e.xor=n,e.default=Ember.Helper.helper(n)}),define("ember-truth-helpers/utils/truth-convert",["exports"],function(e){"use strict" -function t(e){var t=e&&Ember.get(e,"isTruthy") -return"boolean"==typeof t?t:Ember.isArray(e)?0!==Ember.get(e,"length"):!!e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t}) diff --git a/javascript/release/assets/vendor-c68699fa3ef851ebff1b584737d944c2.css b/javascript/release/assets/vendor-c68699fa3ef851ebff1b584737d944c2.css deleted file mode 100644 index 6ff1da5..0000000 --- a/javascript/release/assets/vendor-c68699fa3ef851ebff1b584737d944c2.css +++ /dev/null @@ -1,3 +0,0 @@ -/*! jQuery UI - v1.12.1 - 2018-03-18 -* http://jqueryui.com -* Copyright jQuery Foundation and other contributors; Licensed MIT */.jstree-anchor:focus,.vakata-context li>a:focus{outline:0}.jstree-anchor,.jstree-node{white-space:nowrap}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after,.ui-helper-clearfix:before{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.jstree-children,.jstree-container-ul,.jstree-node{display:block;margin:0;padding:0;list-style-type:none;list-style-image:none}.jstree-anchor,.jstree-icon,.jstree-icon:empty{display:inline-block;margin:0;vertical-align:top}.jstree-anchor{padding:0 4px 0 1px}.jstree-anchor,.jstree-anchor:active,.jstree-anchor:hover,.jstree-anchor:link,.jstree-anchor:visited{text-decoration:none;color:inherit}.jstree-icon,.jstree-icon:empty{text-decoration:none;padding:0;text-align:center}.jstree-ocl{cursor:pointer}.jstree-leaf>.jstree-ocl{cursor:default}.jstree .jstree-open>.jstree-children{display:block}.jstree .jstree-closed>.jstree-children,.jstree .jstree-leaf>.jstree-children,.jstree-anchor>.jstree-themeicon-hidden,.jstree-hidden,.jstree-no-icons .jstree-themeicon,.jstree-node.jstree-hidden{display:none}.jstree-anchor>.jstree-themeicon{margin-right:2px}.jstree-rtl .jstree-anchor{padding:0 1px 0 4px}.jstree-rtl .jstree-anchor>.jstree-themeicon{margin-left:2px;margin-right:0}.jstree-rtl .jstree-node{margin-left:0}.jstree-rtl .jstree-container-ul>.jstree-node{margin-right:0}.jstree-wholerow-ul{position:relative;display:inline-block;min-width:100%}.jstree-wholerow-ul .jstree-leaf>.jstree-ocl{cursor:pointer}.jstree-wholerow-ul .jstree-anchor,.jstree-wholerow-ul .jstree-icon{position:relative}.jstree-wholerow-ul .jstree-wholerow{width:100%;cursor:pointer;position:absolute;left:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.jstree-contextmenu .jstree-anchor{-webkit-user-select:none;-webkit-touch-callout:none}.vakata-context{display:none}.vakata-context,.vakata-context ul{margin:0;padding:2px;position:absolute;background:#f5f5f5;border:1px solid #979797;box-shadow:2px 2px 2px #999}.vakata-context .vakata-context-hover>a,.vakata-context li>a:hover{position:relative;background-color:#e8eff7;box-shadow:0 0 2px #0a6aa1}.vakata-context ul{list-style:none;left:100%;margin-top:-2.7em;margin-left:-4px}.vakata-context .vakata-context-right ul{left:auto;right:100%;margin-left:auto;margin-right:-4px}.vakata-context li{list-style:none}.vakata-context li>a{display:block;padding:0 2em;text-decoration:none;width:auto;color:#000;white-space:nowrap;line-height:2.4em;text-shadow:1px 1px 0 #fff;border-radius:1px}.vakata-context li>a>i,.vakata-context li>a>i:empty{width:2.4em;line-height:2.4em}.vakata-context li>a.vakata-context-parent{background-image:url(data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAIORI4JlrqN1oMSnmmZDQUAOw==);background-position:right center;background-repeat:no-repeat}.vakata-context .vakata-context-separator>a,.vakata-context .vakata-context-separator>a:hover{background:#fff;border:0;border-top:1px solid #e2e3e3;height:1px;min-height:1px;max-height:1px;padding:0;margin:0 0 0 2.4em;border-left:1px solid #e0e0e0;text-shadow:0 0 0 transparent;box-shadow:0 0 0 transparent;border-radius:0}.vakata-context .vakata-contextmenu-disabled a,.vakata-context .vakata-contextmenu-disabled a:hover{color:silver;background-color:transparent;border:0;box-shadow:0 0 0}.vakata-context .vakata-contextmenu-disabled>a>i{filter:grayscale(100%)}.vakata-context li>a>i{text-decoration:none;display:inline-block;height:2.4em;background:0 0;margin:0 0 0 -2em;vertical-align:top;text-align:center}.vakata-context li>a .vakata-contextmenu-sep{display:inline-block;width:1px;height:2.4em;background:#fff;margin:0 .5em 0 0;border-left:1px solid #e2e3e3}.vakata-context .vakata-contextmenu-shortcut{font-size:.8em;color:silver;opacity:.5;display:none}.vakata-context-rtl ul{left:auto;right:100%;margin-left:auto;margin-right:-4px}.vakata-context-rtl li>a.vakata-context-parent{background-image:url(data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAINjI+AC7rWHIsPtmoxLAA7);background-position:left center;background-repeat:no-repeat}.vakata-context-rtl .vakata-context-separator>a{margin:0 2.4em 0 0;border-left:0;border-right:1px solid #e2e3e3}.vakata-context-rtl .vakata-context-left ul{right:auto;left:100%;margin-left:-4px;margin-right:auto}.vakata-context-rtl li>a>i{margin:0 -2em 0 0}.vakata-context-rtl li>a .vakata-contextmenu-sep{margin:0 0 0 .5em;border-left-color:#fff;background:#e2e3e3}#jstree-marker{position:absolute;top:0;left:0;margin:-5px 0 0;padding:0;border-right:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid;width:0;height:0;font-size:0;line-height:0}#jstree-dnd{line-height:16px;margin:0;padding:4px}#jstree-dnd .jstree-copy,#jstree-dnd .jstree-icon{display:inline-block;text-decoration:none;margin:0 2px 0 0;padding:0;width:16px;height:16px}#jstree-dnd .jstree-ok{background:green}#jstree-dnd .jstree-er{background:red}#jstree-dnd .jstree-copy{margin:0 2px}.jstree-default .jstree-icon,.jstree-default .jstree-node{background-repeat:no-repeat;background-color:transparent}.jstree-default .jstree-anchor,.jstree-default .jstree-animated,.jstree-default .jstree-wholerow{transition:background-color .15s,box-shadow .15s}.jstree-default .jstree-context,.jstree-default .jstree-hovered{background:#e7f4f9;border-radius:2px;box-shadow:inset 0 0 1px #ccc}.jstree-default .jstree-clicked{background:#beebff;border-radius:2px;box-shadow:inset 0 0 1px #999}.jstree-default .jstree-no-icons .jstree-anchor>.jstree-themeicon{display:none}.jstree-default .jstree-disabled{color:#666}.jstree-default .jstree-disabled.jstree-hovered{box-shadow:none}.jstree-default .jstree-disabled>.jstree-icon{opacity:.8;filter:url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");filter:gray;-webkit-filter:grayscale(100%)}.jstree-default .jstree-search{font-style:italic;color:#8b0000;font-weight:700}.jstree-default .jstree-no-checkboxes .jstree-checkbox{display:none!important}.jstree-default.jstree-checkbox-no-clicked .jstree-clicked{background:0 0;box-shadow:none}.jstree-default.jstree-checkbox-no-clicked .jstree-clicked.jstree-hovered{background:#e7f4f9}.jstree-default.jstree-checkbox-no-clicked>.jstree-wholerow-ul .jstree-wholerow-clicked{background:0 0}.jstree-default.jstree-checkbox-no-clicked>.jstree-wholerow-ul .jstree-wholerow-clicked.jstree-wholerow-hovered{background:#e7f4f9}.jstree-default>.jstree-striped{min-width:100%;display:inline-block;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAMAAAB/qqA+AAAABlBMVEUAAAAAAAClZ7nPAAAAAnRSTlMNAMM9s3UAAAAXSURBVHjajcEBAQAAAIKg/H/aCQZ70AUBjAATb6YPDgAAAABJRU5ErkJggg==) left top}.jstree-default>.jstree-wholerow-ul .jstree-clicked,.jstree-default>.jstree-wholerow-ul .jstree-hovered{background:0 0;box-shadow:none;border-radius:0}.jstree-default .jstree-wholerow{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;height:24px}.jstree-default .jstree-wholerow-hovered{background:#e7f4f9}.jstree-default .jstree-wholerow-clicked{background:#beebff;background:-webkit-linear-gradient(top,#beebff 0,#a8e4ff 100%);background:linear-gradient(to bottom,#beebff 0,#a8e4ff 100%)}.jstree-default .jstree-node{min-height:24px;line-height:24px;margin-left:24px;min-width:24px;background-position:-292px -4px;background-repeat:repeat-y}.jstree-default .jstree-anchor{line-height:24px;height:24px}.jstree-default .jstree-icon,.jstree-default .jstree-icon:empty{width:24px;height:24px;line-height:24px}.jstree-default .jstree-icon,.jstree-default .jstree-node{background-image:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png)}.jstree-default .jstree-last{background:0 0}.jstree-default .jstree-open>.jstree-ocl{background-position:-132px -4px}.jstree-default .jstree-closed>.jstree-ocl{background-position:-100px -4px}.jstree-default .jstree-leaf>.jstree-ocl{background-position:-68px -4px}.jstree-default .jstree-themeicon{background-position:-260px -4px}.jstree-default>.jstree-no-dots .jstree-leaf>.jstree-ocl,.jstree-default>.jstree-no-dots .jstree-node{background:0 0}.jstree-default>.jstree-no-dots .jstree-open>.jstree-ocl{background-position:-36px -4px}.jstree-default>.jstree-no-dots .jstree-closed>.jstree-ocl{background-position:-4px -4px}.jstree-default .jstree-disabled,.jstree-default .jstree-disabled.jstree-hovered{background:0 0}.jstree-default .jstree-disabled.jstree-clicked{background:#efefef}.jstree-default .jstree-checkbox{background-position:-164px -4px}.jstree-default .jstree-checkbox:hover{background-position:-164px -36px}.jstree-default .jstree-checked>.jstree-checkbox,.jstree-default.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox{background-position:-228px -4px}.jstree-default .jstree-checked>.jstree-checkbox:hover,.jstree-default.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox:hover{background-position:-228px -36px}.jstree-default .jstree-anchor>.jstree-undetermined{background-position:-196px -4px}.jstree-default .jstree-anchor>.jstree-undetermined:hover{background-position:-196px -36px}.jstree-default .jstree-checkbox-disabled{opacity:.8;filter:url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");filter:gray;-webkit-filter:grayscale(100%)}.jstree-default>.jstree-striped{background-size:auto 48px}.jstree-default.jstree-rtl .jstree-node{margin-right:24px;background-position:100% 1px;background-repeat:repeat-y}.jstree-default.jstree-rtl .jstree-open>.jstree-ocl{background-position:-132px -36px}.jstree-default.jstree-rtl .jstree-closed>.jstree-ocl{background-position:-100px -36px}.jstree-default.jstree-rtl .jstree-leaf>.jstree-ocl{background-position:-68px -36px}.jstree-default.jstree-rtl>.jstree-no-dots .jstree-leaf>.jstree-ocl,.jstree-default.jstree-rtl>.jstree-no-dots .jstree-node{background:0 0}.jstree-default.jstree-rtl>.jstree-no-dots .jstree-open>.jstree-ocl{background-position:-36px -36px}.jstree-default.jstree-rtl>.jstree-no-dots .jstree-closed>.jstree-ocl{background-position:-4px -36px}.jstree-default .jstree-themeicon-custom{background-color:transparent;background-image:none;background-position:0 0}.jstree-default>.jstree-container-ul .jstree-loading>.jstree-ocl{background:url(throbber-62be6ed2b189444b472b8000dc187240.gif) center center no-repeat}.jstree-default .jstree-file{background:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png) -100px -68px no-repeat}.jstree-default .jstree-folder{background:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png) -260px -4px no-repeat}.jstree-default>.jstree-container-ul>.jstree-node{margin-left:0;margin-right:0}#jstree-dnd.jstree-default{line-height:24px;padding:0 4px}#jstree-dnd.jstree-default .jstree-er,#jstree-dnd.jstree-default .jstree-ok{background-image:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png);background-repeat:no-repeat;background-color:transparent}#jstree-dnd.jstree-default i{background:0 0;width:24px;height:24px;line-height:24px}#jstree-dnd.jstree-default .jstree-ok{background-position:-4px -68px}#jstree-dnd.jstree-default .jstree-er{background-position:-36px -68px}.jstree-default .jstree-ellipsis{overflow:hidden}.jstree-default .jstree-ellipsis .jstree-anchor{width:calc(100% - 29px);text-overflow:ellipsis;overflow:hidden}#jstree-dnd.jstree-default-small i,.jstree-default-small .jstree-icon,.jstree-default-small .jstree-icon:empty{width:18px;height:18px;line-height:18px}.jstree-default.jstree-rtl .jstree-node{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==)}.jstree-default.jstree-rtl .jstree-last{background:0 0}.jstree-default-small .jstree-node{min-height:18px;line-height:18px;margin-left:18px;min-width:18px;background-position:-295px -7px;background-repeat:repeat-y}.jstree-default-small .jstree-anchor{line-height:18px;height:18px}.jstree-default-small .jstree-wholerow{height:18px}.jstree-default-small .jstree-icon,.jstree-default-small .jstree-node{background-image:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png)}.jstree-default-small .jstree-last{background:0 0}.jstree-default-small .jstree-open>.jstree-ocl{background-position:-135px -7px}.jstree-default-small .jstree-closed>.jstree-ocl{background-position:-103px -7px}.jstree-default-small .jstree-leaf>.jstree-ocl{background-position:-71px -7px}.jstree-default-small .jstree-themeicon{background-position:-263px -7px}.jstree-default-small>.jstree-no-dots .jstree-leaf>.jstree-ocl,.jstree-default-small>.jstree-no-dots .jstree-node{background:0 0}.jstree-default-small>.jstree-no-dots .jstree-open>.jstree-ocl{background-position:-39px -7px}.jstree-default-small>.jstree-no-dots .jstree-closed>.jstree-ocl{background-position:-7px -7px}.jstree-default-small .jstree-disabled,.jstree-default-small .jstree-disabled.jstree-hovered{background:0 0}.jstree-default-small .jstree-disabled.jstree-clicked{background:#efefef}.jstree-default-small .jstree-checkbox{background-position:-167px -7px}.jstree-default-small .jstree-checkbox:hover{background-position:-167px -39px}.jstree-default-small .jstree-checked>.jstree-checkbox,.jstree-default-small.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox{background-position:-231px -7px}.jstree-default-small .jstree-checked>.jstree-checkbox:hover,.jstree-default-small.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox:hover{background-position:-231px -39px}.jstree-default-small .jstree-anchor>.jstree-undetermined{background-position:-199px -7px}.jstree-default-small .jstree-anchor>.jstree-undetermined:hover{background-position:-199px -39px}.jstree-default-small .jstree-checkbox-disabled{opacity:.8;filter:url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");filter:gray;-webkit-filter:grayscale(100%)}.jstree-default-small>.jstree-striped{background-size:auto 36px}.jstree-default-small.jstree-rtl .jstree-node{margin-right:18px;background-position:100% 1px;background-repeat:repeat-y}.jstree-default-small.jstree-rtl .jstree-open>.jstree-ocl{background-position:-135px -39px}.jstree-default-small.jstree-rtl .jstree-closed>.jstree-ocl{background-position:-103px -39px}.jstree-default-small.jstree-rtl .jstree-leaf>.jstree-ocl{background-position:-71px -39px}.jstree-default-small.jstree-rtl>.jstree-no-dots .jstree-leaf>.jstree-ocl,.jstree-default-small.jstree-rtl>.jstree-no-dots .jstree-node{background:0 0}.jstree-default-small.jstree-rtl>.jstree-no-dots .jstree-open>.jstree-ocl{background-position:-39px -39px}.jstree-default-small.jstree-rtl>.jstree-no-dots .jstree-closed>.jstree-ocl{background-position:-7px -39px}.jstree-default-small .jstree-themeicon-custom{background-color:transparent;background-image:none;background-position:0 0}.jstree-default-small>.jstree-container-ul .jstree-loading>.jstree-ocl{background:url(throbber-62be6ed2b189444b472b8000dc187240.gif) center center no-repeat}.jstree-default-small .jstree-file{background:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png) -103px -71px no-repeat}.jstree-default-small .jstree-folder{background:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png) -263px -7px no-repeat}.jstree-default-small>.jstree-container-ul>.jstree-node{margin-left:0;margin-right:0}#jstree-dnd.jstree-default-small{line-height:18px;padding:0 4px}#jstree-dnd.jstree-default-small .jstree-er,#jstree-dnd.jstree-default-small .jstree-ok{background-image:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png);background-repeat:no-repeat;background-color:transparent}#jstree-dnd.jstree-default-small i{background:0 0}#jstree-dnd.jstree-default-small .jstree-ok{background-position:-7px -71px}#jstree-dnd.jstree-default-small .jstree-er{background-position:-39px -71px}.jstree-default-small .jstree-ellipsis{overflow:hidden}.jstree-default-small .jstree-ellipsis .jstree-anchor{width:calc(100% - 23px);text-overflow:ellipsis;overflow:hidden}#jstree-dnd.jstree-default-large i,.jstree-default-large .jstree-icon,.jstree-default-large .jstree-icon:empty{width:32px;height:32px;line-height:32px}.jstree-default-small.jstree-rtl .jstree-node{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAACAQMAAABv1h6PAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMHBgAAiABBI4gz9AAAAABJRU5ErkJggg==)}.jstree-default-small.jstree-rtl .jstree-last{background:0 0}.jstree-default-large .jstree-node{min-height:32px;line-height:32px;margin-left:32px;min-width:32px;background-position:-288px 0;background-repeat:repeat-y}.jstree-default-large .jstree-anchor{line-height:32px;height:32px}.jstree-default-large .jstree-wholerow{height:32px}.jstree-default-large .jstree-icon,.jstree-default-large .jstree-node{background-image:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png)}.jstree-default-large .jstree-last{background:0 0}.jstree-default-large .jstree-open>.jstree-ocl{background-position:-128px 0}.jstree-default-large .jstree-closed>.jstree-ocl{background-position:-96px 0}.jstree-default-large .jstree-leaf>.jstree-ocl{background-position:-64px 0}.jstree-default-large .jstree-themeicon{background-position:-256px 0}.jstree-default-large>.jstree-no-dots .jstree-leaf>.jstree-ocl,.jstree-default-large>.jstree-no-dots .jstree-node{background:0 0}.jstree-default-large>.jstree-no-dots .jstree-open>.jstree-ocl{background-position:-32px 0}.jstree-default-large>.jstree-no-dots .jstree-closed>.jstree-ocl{background-position:0 0}.jstree-default-large .jstree-disabled,.jstree-default-large .jstree-disabled.jstree-hovered{background:0 0}.jstree-default-large .jstree-disabled.jstree-clicked{background:#efefef}.jstree-default-large .jstree-checkbox{background-position:-160px 0}.jstree-default-large .jstree-checkbox:hover{background-position:-160px -32px}.jstree-default-large .jstree-checked>.jstree-checkbox,.jstree-default-large.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox{background-position:-224px 0}.jstree-default-large .jstree-checked>.jstree-checkbox:hover,.jstree-default-large.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox:hover{background-position:-224px -32px}.jstree-default-large .jstree-anchor>.jstree-undetermined{background-position:-192px 0}.jstree-default-large .jstree-anchor>.jstree-undetermined:hover{background-position:-192px -32px}.jstree-default-large .jstree-checkbox-disabled{opacity:.8;filter:url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");filter:gray;-webkit-filter:grayscale(100%)}.jstree-default-large>.jstree-striped{background-size:auto 64px}.jstree-default-large.jstree-rtl .jstree-node{margin-right:32px;background-position:100% 1px;background-repeat:repeat-y}.jstree-default-large.jstree-rtl .jstree-open>.jstree-ocl{background-position:-128px -32px}.jstree-default-large.jstree-rtl .jstree-closed>.jstree-ocl{background-position:-96px -32px}.jstree-default-large.jstree-rtl .jstree-leaf>.jstree-ocl{background-position:-64px -32px}.jstree-default-large.jstree-rtl>.jstree-no-dots .jstree-leaf>.jstree-ocl,.jstree-default-large.jstree-rtl>.jstree-no-dots .jstree-node{background:0 0}.jstree-default-large.jstree-rtl>.jstree-no-dots .jstree-open>.jstree-ocl{background-position:-32px -32px}.jstree-default-large.jstree-rtl>.jstree-no-dots .jstree-closed>.jstree-ocl{background-position:0 -32px}.jstree-default-large .jstree-themeicon-custom{background-color:transparent;background-image:none;background-position:0 0}.jstree-default-large>.jstree-container-ul .jstree-loading>.jstree-ocl{background:url(throbber-62be6ed2b189444b472b8000dc187240.gif) center center no-repeat}.jstree-default-large .jstree-file{background:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png) -96px -64px no-repeat}.jstree-default-large .jstree-folder{background:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png) -256px 0 no-repeat}.jstree-default-large>.jstree-container-ul>.jstree-node{margin-left:0;margin-right:0}#jstree-dnd.jstree-default-large{line-height:32px;padding:0 4px}#jstree-dnd.jstree-default-large .jstree-er,#jstree-dnd.jstree-default-large .jstree-ok{background-image:url(32px-eebaf260766f5e0e773f53d3ea4f3e4d.png);background-repeat:no-repeat;background-color:transparent}#jstree-dnd.jstree-default-large i{background:0 0}#jstree-dnd.jstree-default-large .jstree-ok{background-position:0 -64px}#jstree-dnd.jstree-default-large .jstree-er{background-position:-32px -64px}.jstree-default-large .jstree-ellipsis{overflow:hidden}.jstree-default-large .jstree-ellipsis .jstree-anchor{width:calc(100% - 37px);text-overflow:ellipsis;overflow:hidden}.jstree-default-large.jstree-rtl .jstree-node{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAACAQMAAAAD0EyKAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjgIIGBgABCgCBvVLXcAAAAABJRU5ErkJggg==)}.jstree-default-large.jstree-rtl .jstree-last{background:0 0}@media (max-width:768px){#jstree-dnd.jstree-dnd-responsive{line-height:40px;font-weight:700;font-size:1.1em;text-shadow:1px 1px #fff}#jstree-dnd.jstree-dnd-responsive>i{background:0 0;width:40px;height:40px}#jstree-dnd.jstree-dnd-responsive>.jstree-ok{background-image:url(40px-51286e68b083696edaf4f9fc577e2a2d.png);background-position:0 -200px;background-size:120px 240px}#jstree-dnd.jstree-dnd-responsive>.jstree-er{background-image:url(40px-51286e68b083696edaf4f9fc577e2a2d.png);background-position:-40px -200px;background-size:120px 240px}#jstree-marker.jstree-dnd-responsive{border-left-width:10px;border-top-width:10px;border-bottom-width:10px;margin-top:-10px}.jstree-default-responsive .jstree-leaf>.jstree-ocl,.jstree-default-responsive .jstree-node{background:0 0}.jstree-default-responsive .jstree-node{min-height:40px;line-height:40px;margin-left:40px;min-width:40px;white-space:nowrap}.jstree-default-responsive .jstree-anchor{line-height:40px;height:40px;font-weight:700;font-size:1.1em;text-shadow:1px 1px #fff}.jstree-default-responsive .jstree-icon,.jstree-default-responsive .jstree-icon:empty{width:40px;height:40px;line-height:40px}.jstree-default-responsive.jstree-rtl .jstree-node{margin-left:0;margin-right:40px;background:0 0}.jstree-default-responsive.jstree-rtl .jstree-container-ul>.jstree-node{margin-right:0}.jstree-default-responsive .jstree-checkbox,.jstree-default-responsive .jstree-ocl,.jstree-default-responsive .jstree-themeicon{background-size:120px 240px}.jstree-default-responsive .jstree-leaf>.jstree-ocl,.jstree-default-responsive.jstree-rtl .jstree-leaf>.jstree-ocl{background:0 0}.jstree-default-responsive .jstree-open>.jstree-ocl{background-position:0 0!important}.jstree-default-responsive .jstree-closed>.jstree-ocl{background-position:0 -40px!important}.jstree-default-responsive.jstree-rtl .jstree-closed>.jstree-ocl{background-position:-40px 0!important}.jstree-default-responsive .jstree-themeicon{background-position:-40px -40px}.jstree-default-responsive .jstree-checkbox,.jstree-default-responsive .jstree-checkbox:hover{background-position:-40px -80px}.jstree-default-responsive .jstree-checked>.jstree-checkbox,.jstree-default-responsive .jstree-checked>.jstree-checkbox:hover,.jstree-default-responsive.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox,.jstree-default-responsive.jstree-checkbox-selection .jstree-clicked>.jstree-checkbox:hover{background-position:0 -80px}.jstree-default-responsive .jstree-anchor>.jstree-undetermined,.jstree-default-responsive .jstree-anchor>.jstree-undetermined:hover{background-position:0 -120px}.jstree-default-responsive>.jstree-striped{background:0 0}.jstree-default-responsive .jstree-wholerow{border-top:1px solid rgba(255,255,255,.7);border-bottom:1px solid rgba(64,64,64,.2);background:#ebebeb;height:40px}.jstree-default-responsive .jstree-wholerow-hovered{background:#e7f4f9}.jstree-default-responsive .jstree-wholerow-clicked{background:#beebff}.jstree-default-responsive .jstree-children .jstree-last>.jstree-wholerow{box-shadow:inset 0 -6px 3px -5px #666}.jstree-default-responsive .jstree-children .jstree-open>.jstree-wholerow{box-shadow:inset 0 6px 3px -5px #666;border-top:0}.jstree-default-responsive .jstree-children .jstree-open+.jstree-open{box-shadow:none}.jstree-default-responsive .jstree-checkbox,.jstree-default-responsive .jstree-icon,.jstree-default-responsive .jstree-node,.jstree-default-responsive .jstree-node>.jstree-ocl,.jstree-default-responsive .jstree-themeicon{background-image:url(40px-51286e68b083696edaf4f9fc577e2a2d.png);background-size:120px 240px}.jstree-default-responsive .jstree-node{background-position:-80px 0;background-repeat:repeat-y}.jstree-default-responsive .jstree-last{background:0 0}.jstree-default-responsive .jstree-leaf>.jstree-ocl{background-position:-40px -120px}.jstree-default-responsive .jstree-last>.jstree-ocl{background-position:-40px -160px}.jstree-default-responsive .jstree-themeicon-custom{background-color:transparent;background-image:none;background-position:0 0}.jstree-default-responsive .jstree-file{background:url(40px-51286e68b083696edaf4f9fc577e2a2d.png) 0 -160px no-repeat;background-size:120px 240px}.jstree-default-responsive .jstree-folder{background:url(40px-51286e68b083696edaf4f9fc577e2a2d.png) -40px -40px no-repeat;background-size:120px 240px}.jstree-default-responsive>.jstree-container-ul>.jstree-node{margin-left:0;margin-right:0}}.pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace-inactive{display:none}.pace .pace-progress{background:#d6d6d6;position:fixed;z-index:2000;top:0;right:100%;width:100%;height:2px}
\ No newline at end of file diff --git a/javascript/release/index.html b/javascript/release/index.html deleted file mode 100644 index 01f6da2..0000000 --- a/javascript/release/index.html +++ /dev/null @@ -1,25 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - <head> - <meta charset="utf-8"> - <meta http-equiv="X-UA-Compatible" content="IE=edge"> - <title>Haskell Code Explorer</title> - <meta name="description" content="Haskell Code Explorer"> - <meta name="google" content="notranslate"> - <meta name="viewport" content="width=device-width, initial-scale=0.6"> - -<meta name="haskell-code-explorer/config/environment" content="%7B%22modulePrefix%22%3A%22haskell-code-explorer%22%2C%22environment%22%3A%22production%22%2C%22rootURL%22%3A%22/%22%2C%22locationType%22%3A%22auto%22%2C%22EmberENV%22%3A%7B%22FEATURES%22%3A%7B%7D%2C%22EXTEND_PROTOTYPES%22%3A%7B%22Date%22%3Afalse%7D%7D%2C%22pace%22%3A%7B%22theme%22%3A%22minimal%22%2C%22color%22%3A%22silver%22%2C%22target%22%3A%22body%22%2C%22elements%22%3A%7B%22checkInterval%22%3A100%2C%22selectors%22%3A%5B%22body%22%2C%22.ember-view%22%5D%7D%2C%22ajax%22%3Afalse%2C%22catchupTime%22%3A50%2C%22initialRate%22%3A0.01%2C%22minTime%22%3A100%2C%22ghostTime%22%3A50%2C%22maxProgressPerFrame%22%3A20%2C%22easeFactor%22%3A1.25%2C%22startOnPageLoad%22%3Atrue%2C%22restartOnPushState%22%3Atrue%2C%22restartOnRequestAfter%22%3A500%2C%22eventLag%22%3A%7B%22minSamples%22%3A10%2C%22sampleCount%22%3A3%2C%22lagThreshold%22%3A3%7D%7D%2C%22APP%22%3A%7B%22staticUrlPrefix%22%3A%22/files%22%2C%22apiUrlPrefix%22%3A%22/api%22%2C%22haskellCodeExplorerDirectory%22%3A%22.haskell-code-explorer%22%2C%22title%22%3A%22Haskell%20Code%20Explorer%22%2C%22name%22%3A%22haskell-code-explorer%22%2C%22version%22%3A%220.0.1+571363af%22%7D%2C%22exportApplicationGlobal%22%3Afalse%7D" /> -<script type="text/javascript" data-pace-options='{"color":"silver","theme":"minimal","catchupTime":50,"initialRate":0.01,"minTime":100,"ghostTime":50,"maxProgressPerFrame":20,"easeFactor":1.25,"startOnPageLoad":true,"restartOnPushState":true,"restartOnRequestAfter":500,"target":"body","elements":{"checkInterval":100,"selectors":["body",".ember-view"]},"eventLag":{"minSamples":10,"sampleCount":3,"lagThreshold":3},"ajax":false}'>(function(){var t,e,n,r,s,o,i,u,a,c,l,p,h,f,d,g,m,y,v,w,b,k,S,q,L,x,P,T,R,j,E,O,M,A,N,_,F,C,U,W,X,D,H,I,z,G,B,J,K,Q=[].slice,V={}.hasOwnProperty,Y=function(t,e){function n(){this.constructor=t}for(var r in e)V.call(e,r)&&(t[r]=e[r]);return n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype,t},Z=[].indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(e in this&&this[e]===t)return e;return-1};for(b={catchupTime:100,initialRate:.03,minTime:250,ghostTime:100,maxProgressPerFrame:20,easeFactor:1.25,startOnPageLoad:!0,restartOnPushState:!0,restartOnRequestAfter:500,target:"body",elements:{checkInterval:100,selectors:["body"]},eventLag:{minSamples:10,sampleCount:3,lagThreshold:3},ajax:{trackMethods:["GET"],trackWebSockets:!0,ignoreURLs:[]}},R=function(){var t;return null!=(t="undefined"!=typeof performance&&null!==performance&&"function"==typeof performance.now?performance.now():void 0)?t:+new Date},E=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,w=window.cancelAnimationFrame||window.mozCancelAnimationFrame,null==E&&(E=function(t){return setTimeout(t,50)},w=function(t){return clearTimeout(t)}),M=function(t){var e,n;return e=R(),(n=function(){var r;return r=R()-e,r>=33?(e=R(),t(r,function(){return E(n)})):setTimeout(n,33-r)})()},O=function(){var t,e,n;return n=arguments[0],e=arguments[1],t=3<=arguments.length?Q.call(arguments,2):[],"function"==typeof n[e]?n[e].apply(n,t):n[e]},k=function(){var t,e,n,r,s,o,i;for(e=arguments[0],r=2<=arguments.length?Q.call(arguments,1):[],o=0,i=r.length;o<i;o++)if(n=r[o])for(t in n)V.call(n,t)&&(s=n[t],null!=e[t]&&"object"==typeof e[t]&&null!=s&&"object"==typeof s?k(e[t],s):e[t]=s);return e},m=function(t){var e,n,r,s,o;for(n=e=0,s=0,o=t.length;s<o;s++)r=t[s],n+=Math.abs(r),e++;return n/e},q=function(t,e){var n,r,s;if(null==t&&(t="options"),null==e&&(e=!0),s=document.querySelector("[data-pace-"+t+"]")){if(n=s.getAttribute("data-pace-"+t),!e)return n;try{return JSON.parse(n)}catch(t){return r=t,"undefined"!=typeof console&&null!==console?console.error("Error parsing inline pace options",r):void 0}}},i=function(){function t(){}return t.prototype.on=function(t,e,n,r){var s;return null==r&&(r=!1),null==this.bindings&&(this.bindings={}),null==(s=this.bindings)[t]&&(s[t]=[]),this.bindings[t].push({handler:e,ctx:n,once:r})},t.prototype.once=function(t,e,n){return this.on(t,e,n,!0)},t.prototype.off=function(t,e){var n,r,s;if(null!=(null!=(r=this.bindings)?r[t]:void 0)){if(null==e)return delete this.bindings[t];for(n=0,s=[];n<this.bindings[t].length;)this.bindings[t][n].handler===e?s.push(this.bindings[t].splice(n,1)):s.push(n++);return s}},t.prototype.trigger=function(){var t,e,n,r,s,o,i,u,a;if(n=arguments[0],t=2<=arguments.length?Q.call(arguments,1):[],null!=(i=this.bindings)?i[n]:void 0){for(s=0,a=[];s<this.bindings[n].length;)u=this.bindings[n][s],r=u.handler,e=u.ctx,o=u.once,r.apply(null!=e?e:this,t),o?a.push(this.bindings[n].splice(s,1)):a.push(s++);return a}},t}(),c=window.Pace||{},window.Pace=c,k(c,i.prototype),j=c.options=k({},b,window.paceOptions,q()),B=["ajax","document","eventLag","elements"],H=0,z=B.length;H<z;H++)F=B[H],!0===j[F]&&(j[F]=b[F]);a=function(t){function e(){return J=e.__super__.constructor.apply(this,arguments)}return Y(e,t),e}(Error),e=function(){function t(){this.progress=0}return t.prototype.getElement=function(){var t;if(null==this.el){if(!(t=document.querySelector(j.target)))throw new a;this.el=document.createElement("div"),this.el.className="pace pace-active",document.body.className=document.body.className.replace(/pace-done/g,""),document.body.className+=" pace-running",this.el.innerHTML='<div class="pace-progress">\n <div class="pace-progress-inner"></div>\n</div>\n<div class="pace-activity"></div>',null!=t.firstChild?t.insertBefore(this.el,t.firstChild):t.appendChild(this.el)}return this.el},t.prototype.finish=function(){var t;return t=this.getElement(),t.className=t.className.replace("pace-active",""),t.className+=" pace-inactive",document.body.className=document.body.className.replace("pace-running",""),document.body.className+=" pace-done"},t.prototype.update=function(t){return this.progress=t,this.render()},t.prototype.destroy=function(){try{this.getElement().parentNode.removeChild(this.getElement())}catch(t){a=t}return this.el=void 0},t.prototype.render=function(){var t,e,n,r,s,o,i;if(null==document.querySelector(j.target))return!1;for(t=this.getElement(),r="translate3d("+this.progress+"%, 0, 0)",i=["webkitTransform","msTransform","transform"],s=0,o=i.length;s<o;s++)e=i[s],t.children[0].style[e]=r;return(!this.lastRenderedProgress||this.lastRenderedProgress|0!==this.progress|0)&&(t.children[0].setAttribute("data-progress-text",(0|this.progress)+"%"),this.progress>=100?n="99":(n=this.progress<10?"0":"",n+=0|this.progress),t.children[0].setAttribute("data-progress",""+n)),this.lastRenderedProgress=this.progress},t.prototype.done=function(){return this.progress>=100},t}(),u=function(){function t(){this.bindings={}}return t.prototype.trigger=function(t,e){var n,r,s,o,i;if(null!=this.bindings[t]){for(o=this.bindings[t],i=[],r=0,s=o.length;r<s;r++)n=o[r],i.push(n.call(this,e));return i}},t.prototype.on=function(t,e){var n;return null==(n=this.bindings)[t]&&(n[t]=[]),this.bindings[t].push(e)},t}(),D=window.XMLHttpRequest,X=window.XDomainRequest,W=window.WebSocket,S=function(t,e){var n,r;r=[];for(n in e.prototype)try{null==t[n]&&"function"!=typeof e[n]?"function"==typeof Object.defineProperty?r.push(Object.defineProperty(t,n,{get:function(){return e.prototype[n]},configurable:!0,enumerable:!0})):r.push(t[n]=e.prototype[n]):r.push(void 0)}catch(t){t}return r},P=[],c.ignore=function(){var t,e,n;return e=arguments[0],t=2<=arguments.length?Q.call(arguments,1):[],P.unshift("ignore"),n=e.apply(null,t),P.shift(),n},c.track=function(){var t,e,n;return e=arguments[0],t=2<=arguments.length?Q.call(arguments,1):[],P.unshift("track"),n=e.apply(null,t),P.shift(),n},_=function(t){var e;if(null==t&&(t="GET"),"track"===P[0])return"force";if(!P.length&&j.ajax){if("socket"===t&&j.ajax.trackWebSockets)return!0;if(e=t.toUpperCase(),Z.call(j.ajax.trackMethods,e)>=0)return!0}return!1},l=function(t){function e(){var t,n=this;e.__super__.constructor.apply(this,arguments),t=function(t){var e;return e=t.open,t.open=function(r,s,o){return _(r)&&n.trigger("request",{type:r,url:s,request:t}),e.apply(t,arguments)}},window.XMLHttpRequest=function(e){var n;return n=new D(e),t(n),n};try{S(window.XMLHttpRequest,D)}catch(t){}if(null!=X){window.XDomainRequest=function(){var e;return e=new X,t(e),e};try{S(window.XDomainRequest,X)}catch(t){}}if(null!=W&&j.ajax.trackWebSockets){window.WebSocket=function(t,e){var r;return r=null!=e?new W(t,e):new W(t),_("socket")&&n.trigger("request",{type:"socket",url:t,protocols:e,request:r}),r};try{S(window.WebSocket,W)}catch(t){}}}return Y(e,t),e}(u),I=null,L=function(){return null==I&&(I=new l),I},N=function(t){var e,n,r,s;for(s=j.ajax.ignoreURLs,n=0,r=s.length;n<r;n++)if("string"==typeof(e=s[n])){if(-1!==t.indexOf(e))return!0}else if(e.test(t))return!0;return!1},L().on("request",function(e){var n,r,s,o,i;if(o=e.type,s=e.request,i=e.url,!N(i))return c.running||!1===j.restartOnRequestAfter&&"force"!==_(o)?void 0:(r=arguments,n=j.restartOnRequestAfter||0,"boolean"==typeof n&&(n=0),setTimeout(function(){var e,n,i,u,a;if("socket"===o?s.readyState<2:0<(i=s.readyState)&&i<4){for(c.restart(),u=c.sources,a=[],e=0,n=u.length;e<n;e++){if((F=u[e])instanceof t){F.watch.apply(F,r);break}a.push(void 0)}return a}},n))}),t=function(){function t(){var t=this;this.elements=[],L().on("request",function(){return t.watch.apply(t,arguments)})}return t.prototype.watch=function(t){var e,n,r,s;if(r=t.type,e=t.request,s=t.url,!N(s))return n="socket"===r?new f(e):new d(e),this.elements.push(n)},t}(),d=function(){function t(t){var e,n,r,s,o,i=this;if(this.progress=0,null!=window.ProgressEvent)for(null,t.addEventListener("progress",function(t){return t.lengthComputable?i.progress=100*t.loaded/t.total:i.progress=i.progress+(100-i.progress)/2},!1),o=["load","abort","timeout","error"],n=0,r=o.length;n<r;n++)e=o[n],t.addEventListener(e,function(){return i.progress=100},!1);else s=t.onreadystatechange,t.onreadystatechange=function(){var e;return 0===(e=t.readyState)||4===e?i.progress=100:3===t.readyState&&(i.progress=50),"function"==typeof s?s.apply(null,arguments):void 0}}return t}(),f=function(){function t(t){var e,n,r,s,o=this;for(this.progress=0,s=["error","open"],n=0,r=s.length;n<r;n++)e=s[n],t.addEventListener(e,function(){return o.progress=100},!1)}return t}(),r=function(){function t(t){var e,n,r,o;for(null==t&&(t={}),this.elements=[],null==t.selectors&&(t.selectors=[]),o=t.selectors,n=0,r=o.length;n<r;n++)e=o[n],this.elements.push(new s(e))}return t}(),s=function(){function t(t){this.selector=t,this.progress=0,this.check()}return t.prototype.check=function(){var t=this;return document.querySelector(this.selector)?this.done():setTimeout(function(){return t.check()},j.elements.checkInterval)},t.prototype.done=function(){return this.progress=100},t}(),n=function(){function t(){var t,e,n=this;this.progress=null!=(e=this.states[document.readyState])?e:100,t=document.onreadystatechange,document.onreadystatechange=function(){return null!=n.states[document.readyState]&&(n.progress=n.states[document.readyState]),"function"==typeof t?t.apply(null,arguments):void 0}}return t.prototype.states={loading:0,interactive:50,complete:100},t}(),o=function(){function t(){var t,e,n,r,s,o=this;this.progress=0,t=0,s=[],r=0,n=R(),e=setInterval(function(){var i;return i=R()-n-50,n=R(),s.push(i),s.length>j.eventLag.sampleCount&&s.shift(),t=m(s),++r>=j.eventLag.minSamples&&t<j.eventLag.lagThreshold?(o.progress=100,clearInterval(e)):o.progress=3/(t+3)*100},50)}return t}(),h=function(){function t(t){this.source=t,this.last=this.sinceLastUpdate=0,this.rate=j.initialRate,this.catchup=0,this.progress=this.lastProgress=0,null!=this.source&&(this.progress=O(this.source,"progress"))}return t.prototype.tick=function(t,e){var n;return null==e&&(e=O(this.source,"progress")),e>=100&&(this.done=!0),e===this.last?this.sinceLastUpdate+=t:(this.sinceLastUpdate&&(this.rate=(e-this.last)/this.sinceLastUpdate),this.catchup=(e-this.progress)/j.catchupTime,this.sinceLastUpdate=0,this.last=e),e>this.progress&&(this.progress+=this.catchup*t),n=1-Math.pow(this.progress/100,j.easeFactor),this.progress+=n*this.rate*t,this.progress=Math.min(this.lastProgress+j.maxProgressPerFrame,this.progress),this.progress=Math.max(0,this.progress),this.progress=Math.min(100,this.progress),this.lastProgress=this.progress,this.progress},t}(),C=null,A=null,y=null,U=null,g=null,v=null,c.running=!1,x=function(){if(j.restartOnPushState)return c.restart()},null!=window.history.pushState&&(G=window.history.pushState,window.history.pushState=function(){return x(),G.apply(window.history,arguments)}),null!=window.history.replaceState&&(K=window.history.replaceState,window.history.replaceState=function(){return x(),K.apply(window.history,arguments)}),p={ajax:t,elements:r,document:n,eventLag:o},(T=function(){var t,n,r,s,o,i,u,a;for(c.sources=C=[],i=["ajax","elements","document","eventLag"],n=0,s=i.length;n<s;n++)t=i[n],!1!==j[t]&&C.push(new p[t](j[t]));for(a=null!=(u=j.extraSources)?u:[],r=0,o=a.length;r<o;r++)F=a[r],C.push(new F(j));return c.bar=y=new e,A=[],U=new h})(),c.stop=function(){return c.trigger("stop"),c.running=!1,y.destroy(),v=!0,null!=g&&("function"==typeof w&&w(g),g=null),T()},c.restart=function(){return c.trigger("restart"),c.stop(),c.start()},c.go=function(){var t;return c.running=!0,y.render(),t=R(),v=!1,g=M(function(e,n){var r,s,o,i,u,a,l,p,f,d,g,m,w,b,k;for(100-y.progress,s=d=0,o=!0,a=g=0,w=C.length;g<w;a=++g)for(F=C[a],f=null!=A[a]?A[a]:A[a]=[],u=null!=(k=F.elements)?k:[F],l=m=0,b=u.length;m<b;l=++m)i=u[l],p=null!=f[l]?f[l]:f[l]=new h(i),o&=p.done,p.done||(s++,d+=p.tick(e));return r=d/s,y.update(U.tick(e,r)),y.done()||o||v?(y.update(100),c.trigger("done"),setTimeout(function(){return y.finish(),c.running=!1,c.trigger("hide")},Math.max(j.ghostTime,Math.max(j.minTime-(R()-t),0)))):n()})},c.start=function(t){k(j,t),c.running=!0;try{y.render()}catch(t){a=t}return document.querySelector(".pace")?(c.trigger("start"),c.go()):setTimeout(c.start,50)},"function"==typeof define&&define.amd?define(["pace"],function(){return c}):"object"==typeof exports?module.exports=c:j.startOnPageLoad&&c.start()}).call(this);; -!function(){var t,e=[],n=function(){var e=document.querySelectorAll("script[pace-src]"),n=e.length;t=n;for(var o=0;o<n;o++)c.call(this,o,e[o].getAttribute("pace-src"),a);e=null},a=function(n,a){if(t--,e[n]=a||"",0===t){var c=document.createElement("script");c.type="text/javascript",c.text=e.join(";\n\n"),document.querySelector("body").appendChild(c),e=null,c=null,t=null}},c=function(t,e,n){var a=new XMLHttpRequest;a.open("GET",e,!0),a.onreadystatechange=function(){if(4===this.readyState)if(this.status>=200&&this.status<400){var e=this.responseURL,a=this.responseText;a=a.replace(/sourceMappingURL\=/gm,function(t){return t+e+"/../"}),n(t,a)}else n(t)},a.send(),a=null};!function(t){"loading"!==document.readyState?t():document.addEventListener?document.addEventListener("DOMContentLoaded",t):document.attachEvent("onreadystatechange",function(){"loading"!==document.readyState&&t()})}(n)}();</script> - <link rel="stylesheet" href="/assets/vendor-c68699fa3ef851ebff1b584737d944c2.css" integrity="sha256-NC3FTJerIDgT6E+cUQVDgmdoQhRzc3olGWC9bpFUXoM= sha512-J5FhM2rkDlCkcABfHQDEV6KTwR8aDYtX/6v+WCZV7QDOdxJlpD42OTyuYu5ekSt9rVlzadEyHayahxYwnkYsgg==" > - <link rel="stylesheet" href="/assets/haskell-code-explorer-717832df8786392c9b8a9bd8010463d2.css" integrity="sha256-/OPCZ704XhU8ZDICaA/k20m+j9/AD7qQLkzbs+BbZQI= sha512-/9a4vNuaLK/kaQCSHPY7KBEPDK++asbzsTxv0436Mb4CHz2V5Of9/U3/TLIDmA83ChSDxCEABtO3toZr9VydeA==" > - - </head> - <body> - - <script pace-src="/assets/vendor-b97a1e7d03d00bb4514dc45da44b51ff.js"></script> - <script pace-src="/assets/haskell-code-explorer-3325784c864ca6662b97be678eeea861.js"></script> - - <noscript>You need to enable JavaScript to run this app.</noscript> - </body> -</html> diff --git a/javascript/release/robots.txt b/javascript/release/robots.txt deleted file mode 100644 index f591645..0000000 --- a/javascript/release/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# http://www.robotstxt.org -User-agent: * -Disallow: diff --git a/javascript/server/.eslintrc.js b/javascript/server/.eslintrc.js deleted file mode 100644 index 1147d29..0000000 --- a/javascript/server/.eslintrc.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - env: { - node: true - } -}; diff --git a/javascript/server/index.js b/javascript/server/index.js deleted file mode 100644 index 330a75c..0000000 --- a/javascript/server/index.js +++ /dev/null @@ -1,30 +0,0 @@ -/* eslint-env node */ -'use strict'; - -//https://discuss.emberjs.com/t/how-to-disable-http-mock-server-within-environment-config-file/6660/9 - -//To use http mocks from server/mocks for testing: -//ember server -//To use real server: -//ember server --proxy=http://localhost:8080/ - -function usingProxy() { - return !!process.argv.filter(function (arg) { - return arg.indexOf('--proxy') === 0; - }).length; -} - -module.exports = function(app) { - if (usingProxy()) { return; } - - const globSync = require('glob').sync; - const mocks = globSync('./mocks/**/*.js', { cwd: __dirname }).map(require); - const proxies = globSync('./proxies/**/*.js', { cwd: __dirname }).map(require); - - // Log proxy requests - const morgan = require('morgan'); - app.use(morgan('dev')); - - mocks.forEach(route => route(app)); - proxies.forEach(route => route(app)); -}; diff --git a/javascript/server/mocks/packages.js b/javascript/server/mocks/packages.js deleted file mode 100644 index 0a60cf3..0000000 --- a/javascript/server/mocks/packages.js +++ /dev/null @@ -1,397 +0,0 @@ -/* eslint-env node */ -'use strict'; - -const packages = [ - { - "versions": [ - "0.1.0.0" - ], - "name": "test-package" - } -]; - -const testPackage = { - "directoryTree": { - "tag": "Dir", - "contents": [ - { - "tag": "File", - "path": "Setup.hs", - "isHaskellModule": false, - "name": "Setup.hs" - }, - { - "tag": "File", - "path": "stack-8.0.2.yaml", - "isHaskellModule": false, - "name": "stack-8.0.2.yaml" - }, - { - "tag": "File", - "path": "stack.yaml", - "isHaskellModule": false, - "name": "stack.yaml" - }, - { - "tag": "Dir", - "contents": [ - { - "tag": "File", - "path": "src/Lib.hs", - "isHaskellModule": true, - "name": "Lib.hs" - }, - { - "tag": "File", - "path": "src/Types.hs", - "isHaskellModule": true, - "name": "Types.hs" - } - ], - "name": "src" - }, - { - "tag": "Dir", - "contents": [ - { - "tag": "File", - "path": "app/Main.hs", - "isHaskellModule": true, - "name": "Main.hs" - } - ], - "name": "app" - }, - { - "tag": "Dir", - "contents": [ - { - "tag": "File", - "path": "test/Spec.hs", - "isHaskellModule": true, - "name": "Spec.hs" - } - ], - "name": "test" - }, - { - "tag": "File", - "path": "package.yaml", - "isHaskellModule": false, - "name": "package.yaml" - }, - { - "tag": "File", - "path": "test-package.cabal", - "isHaskellModule": false, - "name": "test-package.cabal" - } - ], - "name": "test-package" - }, - "modules": { - "app/Main.hs": [], - "src/Types.hs": [], - "test/Spec.hs": [], - "src/Lib.hs": [] - }, - "id": "test-package-0.1.0.0" -}; - -const testModuleInfo = { - "occurrences": { - "3-8-11": { - "sort": { - "tag": "ModuleId", - "contents": { - "packageId": { - "name": "test-package", - "version": "0.1.0.0" - }, - "tag": "ApproximateLocation", - "moduleName": "Lib", - "name": "Lib", - "componentId": "exe-test-package-exe", - "entity": "Mod" - } - }, - "description": "ImportDecl" - }, - "6-8-16": { - "internalId": "4", - "sort": { - "tag": "ValueId" - }, - "description": "HsVar" - }, - "5-1-5": { - "internalId": "0", - "sort": { - "tag": "ValueId" - }, - "description": "TypeSig" - }, - "5-9-11": { - "internalId": "2", - "sort": { - "tag": "TypeId" - }, - "description": "HsTyVar" - }, - "6-1-5": { - "isBinder": true, - "internalId": "0", - "sort": { - "tag": "ValueId" - }, - "description": "Match" - }, - "5-12-14": { - "internalId": "3", - "sort": { - "tag": "TypeId" - }, - "description": "HsTupleTy" - } - }, - "identifiers": { - "7": { - "isExported": false, - "idType": { - "components": [ - { - "tag": "TyCon", - "name": "RuntimeRep", - "internalId": "6" - } - ] - }, - "locationInfo": { - "packageId": { - "name": "ghc-prim", - "version": "0.5.1.1" - }, - "tag": "ApproximateLocation", - "haddockAnchorId": "LiftedRep", - "moduleName": "GHC.Types", - "name": "LiftedRep", - "componentId": "lib", - "entity": "Val" - }, - "nameSpace": "DataName", - "internalId": "7", - "sort": "External", - "occName": "LiftedRep", - "externalId": "ghc-prim-0.5.1.1|GHC.Types|Val|LiftedRep", - "demangledOccName": "LiftedRep" - }, - "0": { - "isExported": true, - "idType": { - "components": [ - { - "tag": "TyCon", - "name": "IO", - "internalId": "2" - }, - { - "tag": "Text", - "contents": " ()" - } - ] - }, - "locationInfo": { - "packageId": { - "name": "test-package", - "version": "0.1.0.0" - }, - "tag": "ExactLocation", - "moduleName": "Main", - "startLine": 6, - "endLine": 6, - "modulePath": "app/Main.hs", - "startColumn": 1, - "endColumn": 5 - }, - "nameSpace": "VarName", - "internalId": "0", - "details": "VanillaId", - "sort": "External", - "occName": "main", - "externalId": "test-package-0.1.0.0|Main|Val|main", - "demangledOccName": "main" - }, - "4": { - "isExported": false, - "idType": { - "components": [ - { - "tag": "TyCon", - "name": "IO", - "internalId": "2" - }, - { - "tag": "Text", - "contents": " ()" - } - ] - }, - "doc": "<p><span>someFunc documentation</span></p>", - "locationInfo": { - "packageId": { - "name": "test-package", - "version": "0.1.0.0" - }, - "tag": "ExactLocation", - "moduleName": "Lib", - "startLine": 9, - "endLine": 9, - "modulePath": "src/Lib.hs", - "startColumn": 1, - "endColumn": 9 - }, - "nameSpace": "VarName", - "internalId": "4", - "details": "VanillaId", - "sort": "External", - "occName": "someFunc", - "externalId": "test-package-0.1.0.0|Lib|Val|someFunc", - "demangledOccName": "someFunc" - }, - "2": { - "isExported": false, - "idType": { - "components": [ - { - "tag": "Text", - "contents": "* -> *" - } - ] - }, - "locationInfo": { - "packageId": { - "name": "ghc-prim", - "version": "0.5.1.1" - }, - "tag": "ApproximateLocation", - "haddockAnchorId": "IO", - "moduleName": "GHC.Types", - "name": "IO", - "componentId": "lib", - "entity": "Typ" - }, - "nameSpace": "TcClsName", - "internalId": "2", - "sort": "External", - "occName": "IO", - "externalId": "ghc-prim-0.5.1.1|GHC.Types|Typ|IO", - "demangledOccName": "IO" - }, - "5": { - "isExported": false, - "idType": { - "components": [ - { - "tag": "TyCon", - "name": "RuntimeRep", - "internalId": "6" - }, - { - "tag": "Text", - "contents": " -> *" - } - ] - }, - "locationInfo": { - "packageId": { - "name": "ghc-prim", - "version": "0.5.1.1" - }, - "tag": "ApproximateLocation", - "haddockAnchorId": "TYPE", - "moduleName": "GHC.Prim", - "name": "TYPE", - "componentId": "lib", - "entity": "Typ" - }, - "nameSpace": "TcClsName", - "internalId": "5", - "sort": "External", - "occName": "TYPE", - "externalId": "ghc-prim-0.5.1.1|GHC.Prim|Typ|TYPE", - "demangledOccName": "TYPE" - }, - "3": { - "isExported": false, - "idType": { - "components": [ - { - "tag": "Text", - "contents": "*" - } - ] - }, - "locationInfo": { - "packageId": { - "name": "ghc-prim", - "version": "0.5.1.1" - }, - "tag": "ApproximateLocation", - "haddockAnchorId": "-40--41-", - "moduleName": "GHC.Tuple", - "name": "()", - "componentId": "lib", - "entity": "Typ" - }, - "nameSpace": "TcClsName", - "internalId": "3", - "sort": "External", - "occName": "()", - "externalId": "ghc-prim-0.5.1.1|GHC.Tuple|Typ|()", - "demangledOccName": "()" - } - }, - "name": "Main", - "sourceCodeHtml": "<table class=\"source-code\"><tbody><tr><td class=\"line-number\" id=\"LN1\">1</td><td class=\"line-content\" data-line=\"1\" id=\"LC1\"><span data-start=\"1\" data-end=\"18\">module Main where</span></td></tr><tr><td class=\"line-number\" id=\"LN2\">2</td><td class=\"line-content\" data-line=\"2\" id=\"LC2\"><span data-start=\"1\" data-end=\"1\"></span></td></tr><tr><td class=\"line-number\" id=\"LN3\">3</td><td class=\"line-content\" data-line=\"3\" id=\"LC3\"><span data-start=\"1\" data-end=\"8\">import </span><span class=\"identifier\" id=\"\" data-occurrence=\"3-8-11\" data-identifier=\"\" data-start=\"8\" data-end=\"11\">Lib</span></td></tr><tr><td class=\"line-number\" id=\"LN4\">4</td><td class=\"line-content\" data-line=\"4\" id=\"LC4\"><span data-start=\"1\" data-end=\"1\"></span></td></tr><tr><td class=\"line-number\" id=\"LN5\">5</td><td class=\"line-content\" data-line=\"5\" id=\"LC5\"><span class=\"identifier\" id=\"1\" data-occurrence=\"5-1-5\" data-identifier=\"0\" data-start=\"1\" data-end=\"5\">main</span><span data-start=\"5\" data-end=\"9\"> :: </span><span class=\"identifier\" id=\"2\" data-occurrence=\"5-9-11\" data-identifier=\"2\" data-start=\"9\" data-end=\"11\">IO</span><span data-start=\"11\" data-end=\"12\"> </span><span class=\"identifier\" id=\"3\" data-occurrence=\"5-12-14\" data-identifier=\"3\" data-start=\"12\" data-end=\"14\">()</span></td></tr><tr><td class=\"line-number\" id=\"LN6\">6</td><td class=\"line-content\" data-line=\"6\" id=\"LC6\"><span class=\"identifier\" id=\"1\" data-occurrence=\"6-1-5\" data-identifier=\"0\" data-start=\"1\" data-end=\"5\">main</span><span data-start=\"5\" data-end=\"8\"> = </span><span class=\"identifier\" id=\"4\" data-occurrence=\"6-8-16\" data-identifier=\"4\" data-start=\"8\" data-end=\"16\">someFunc</span></td></tr><tr><td class=\"line-number\" id=\"LN7\">7</td><td class=\"line-content\" data-line=\"7\" id=\"LC7\"><span data-start=\"1\" data-end=\"1\"></span></td></tr><tr><td class=\"line-number\" id=\"LN8\">8</td><td class=\"line-content\" data-line=\"8\" id=\"LC8\"><span data-start=\"1\" data-end=\"1\"></span></td></tr></tbody></table>", - "id": "app/Main.hs", - "declarations": [ - { - "isExported": true, - "lineNumber": 6, - "declType": { - "components": [ - { - "tag": "TyCon", - "name": "IO", - "internalId": "2" - }, - { - "tag": "Text", - "contents": " ()" - } - ] - }, - "name": "main", - "sort": "ValD" - } - ] -}; - -module.exports = function(app) { - const express = require('express'); - let packagesRouter = express.Router(); - - packagesRouter.get('/api/packages', function(req, res) { - res.send(packages); - }); - - packagesRouter.get('/files/test-package-0.1.0.0/.haskell-code-explorer/packageInfo.json', function(req, res) { - res.send(testPackage); - }); - - packagesRouter.get('/files/test-package-0.1.0.0/.haskell-code-explorer/app%252FMain.hs.json', function(req, res) { - res.send(testModuleInfo); - }); - - app.use('/', packagesRouter); -}; diff --git a/javascript/testem.js b/javascript/testem.js deleted file mode 100644 index d406673..0000000 --- a/javascript/testem.js +++ /dev/null @@ -1,24 +0,0 @@ -/* eslint-env node */ -module.exports = { - test_page: 'tests/index.html?hidepassed', - disable_watching: true, - launch_in_ci: [ - 'Chrome' - ], - launch_in_dev: [ - 'Chrome' - ], - browser_args: { - Chrome: { - mode: 'ci', - args: [ - // --no-sandbox is needed when running Chrome inside a container - process.env.TRAVIS ? '--no-sandbox' : null, - '--disable-gpu', - '--headless', - '--remote-debugging-port=0', - '--window-size=1440,900' - ].filter(Boolean) - } - } -}; diff --git a/javascript/tests/.eslintrc.js b/javascript/tests/.eslintrc.js deleted file mode 100644 index fbf2555..0000000 --- a/javascript/tests/.eslintrc.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - env: { - embertest: true - } -}; diff --git a/javascript/tests/acceptance/haskell-module-test.js b/javascript/tests/acceptance/haskell-module-test.js deleted file mode 100644 index 4eab15d..0000000 --- a/javascript/tests/acceptance/haskell-module-test.js +++ /dev/null @@ -1,28 +0,0 @@ -import { module, test } from 'qunit'; -import { visit, currentURL, find } from '@ember/test-helpers'; -import { setupApplicationTest } from 'ember-qunit'; - - -module('Acceptance | haskell-module', function(hooks) { - setupApplicationTest(hooks); - - //Test data is in 'server/mocks/packages.js' - test('visiting /package/test-package-0.1.0.0/show/app/Main.hs', async function(assert) { - await visit('/package/test-package-0.1.0.0/show/app/Main.hs'); - - assert.equal(currentURL(), '/package/test-package-0.1.0.0/show/app/Main.hs'); - - const lines = Array.from(find('tbody').children).map((tr) => { - return tr.children[1].innerText; - }); - - assert.deepEqual(lines,["module Main where", - "", - "import Lib", - "", - "main :: IO ()", - "main = someFunc", - "", - ""]); - }); -}); diff --git a/javascript/tests/acceptance/package-test.js b/javascript/tests/acceptance/package-test.js deleted file mode 100644 index 09b73f2..0000000 --- a/javascript/tests/acceptance/package-test.js +++ /dev/null @@ -1,23 +0,0 @@ -import { module, test } from 'qunit'; -import { visit, currentURL, find } from '@ember/test-helpers'; -import { setupApplicationTest } from 'ember-qunit'; - - -module('Acceptance | package', function(hooks) { - setupApplicationTest(hooks); - - //Test data is in 'server/mocks/packages.js' - test('visiting /package/test-package-0.1.0.0', async function(assert) { - await visit('/package/test-package-0.1.0.0'); - assert.equal(currentURL(), '/package/test-package-0.1.0.0'); - - const moduleNames = Array.from(find('ul.modules').children).map((li) => { - return [li.innerText,li.children[0].getAttribute('href')]; - }); - - assert.deepEqual(moduleNames,[["app/Main.hs","/package/test-package-0.1.0.0/show/app/Main.hs"], - ["src/Lib.hs","/package/test-package-0.1.0.0/show/src/Lib.hs"], - ["src/Types.hs","/package/test-package-0.1.0.0/show/src/Types.hs"], - ["test/Spec.hs","/package/test-package-0.1.0.0/show/test/Spec.hs"]]); - }); -}); diff --git a/javascript/tests/acceptance/packages-test.js b/javascript/tests/acceptance/packages-test.js deleted file mode 100644 index 106e16a..0000000 --- a/javascript/tests/acceptance/packages-test.js +++ /dev/null @@ -1,16 +0,0 @@ -import { module, test } from 'qunit'; -import { visit, currentURL, find } from '@ember/test-helpers'; -import { setupApplicationTest } from 'ember-qunit'; - -module('Acceptance | packages', function(hooks) { - setupApplicationTest(hooks); - - //Test data is in file 'server/mocks/packages.js' - test('visiting /', async function(assert) { - await visit('/'); - assert.equal(currentURL(), '/'); - const linkToPackage = find('ul a:first-child'); - assert.equal(linkToPackage.innerText, 'test-package-0.1.0.0'); - assert.equal(linkToPackage.getAttribute('href'), '/package/test-package-0.1.0.0'); - }); -}); diff --git a/javascript/tests/helpers/.gitkeep b/javascript/tests/helpers/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/javascript/tests/helpers/.gitkeep +++ /dev/null diff --git a/javascript/tests/index.html b/javascript/tests/index.html deleted file mode 100644 index 06bfc02..0000000 --- a/javascript/tests/index.html +++ /dev/null @@ -1,33 +0,0 @@ -<!DOCTYPE html> -<html> - <head> - <meta charset="utf-8"> - <meta http-equiv="X-UA-Compatible" content="IE=edge"> - <title>HaskellCodeExplorer Tests</title> - <meta name="description" content=""> - <meta name="viewport" content="width=device-width, initial-scale=1"> - - {{content-for "head"}} - {{content-for "test-head"}} - - <link rel="stylesheet" href="{{rootURL}}assets/vendor.css"> - <link rel="stylesheet" href="{{rootURL}}assets/haskell-code-explorer.css"> - <link rel="stylesheet" href="{{rootURL}}assets/test-support.css"> - - {{content-for "head-footer"}} - {{content-for "test-head-footer"}} - </head> - <body> - {{content-for "body"}} - {{content-for "test-body"}} - - <script src="/testem.js" integrity=""></script> - <script src="{{rootURL}}assets/vendor.js"></script> - <script src="{{rootURL}}assets/test-support.js"></script> - <script src="{{rootURL}}assets/haskell-code-explorer.js"></script> - <script src="{{rootURL}}assets/tests.js"></script> - - {{content-for "body-footer"}} - {{content-for "test-body-footer"}} - </body> -</html> diff --git a/javascript/tests/integration/.gitkeep b/javascript/tests/integration/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/javascript/tests/integration/.gitkeep +++ /dev/null diff --git a/javascript/tests/integration/components/.gitkeep b/javascript/tests/integration/components/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/javascript/tests/integration/components/.gitkeep +++ /dev/null diff --git a/javascript/tests/test-helper.js b/javascript/tests/test-helper.js deleted file mode 100644 index 0382a84..0000000 --- a/javascript/tests/test-helper.js +++ /dev/null @@ -1,8 +0,0 @@ -import Application from '../app'; -import config from '../config/environment'; -import { setApplication } from '@ember/test-helpers'; -import { start } from 'ember-qunit'; - -setApplication(Application.create(config.APP)); - -start(); diff --git a/javascript/vendor/.gitkeep b/javascript/vendor/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/javascript/vendor/.gitkeep +++ /dev/null diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/AUTHORS.txt b/javascript/vendor/jquery-ui-1.12.1.custom/AUTHORS.txt deleted file mode 100644 index a75056b..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/AUTHORS.txt +++ /dev/null @@ -1,333 +0,0 @@ -Authors ordered by first contribution -A list of current team members is available at http://jqueryui.com/about - -Paul Bakaus <paul.bakaus@gmail.com> -Richard Worth <rdworth@gmail.com> -Yehuda Katz <wycats@gmail.com> -Sean Catchpole <sean@sunsean.com> -John Resig <jeresig@gmail.com> -Tane Piper <piper.tane@gmail.com> -Dmitri Gaskin <dmitrig01@gmail.com> -Klaus Hartl <klaus.hartl@gmail.com> -Stefan Petre <stefan.petre@gmail.com> -Gilles van den Hoven <gilles@webunity.nl> -Micheil Bryan Smith <micheil@brandedcode.com> -Jörn Zaefferer <joern.zaefferer@gmail.com> -Marc Grabanski <m@marcgrabanski.com> -Keith Wood <kbwood@iinet.com.au> -Brandon Aaron <brandon.aaron@gmail.com> -Scott González <scott.gonzalez@gmail.com> -Eduardo Lundgren <eduardolundgren@gmail.com> -Aaron Eisenberger <aaronchi@gmail.com> -Joan Piedra <theneojp@gmail.com> -Bruno Basto <b.basto@gmail.com> -Remy Sharp <remy@leftlogic.com> -Bohdan Ganicky <bohdan.ganicky@gmail.com> -David Bolter <david.bolter@gmail.com> -Chi Cheng <cloudream@gmail.com> -Ca-Phun Ung <pazu2k@gmail.com> -Ariel Flesler <aflesler@gmail.com> -Maggie Wachs <maggie@filamentgroup.com> -Scott Jehl <scottjehl@gmail.com> -Todd Parker <todd@filamentgroup.com> -Andrew Powell <andrew@shellscape.org> -Brant Burnett <btburnett3@gmail.com> -Douglas Neiner <doug@dougneiner.com> -Paul Irish <paul.irish@gmail.com> -Ralph Whitbeck <ralph.whitbeck@gmail.com> -Thibault Duplessis <thibault.duplessis@gmail.com> -Dominique Vincent <dominique.vincent@toitl.com> -Jack Hsu <jack.hsu@gmail.com> -Adam Sontag <ajpiano@ajpiano.com> -Carl Fürstenberg <carl@excito.com> -Kevin Dalman <development@allpro.net> -Alberto Fernández Capel <afcapel@gmail.com> -Jacek Jędrzejewski (http://jacek.jedrzejewski.name) -Ting Kuei <ting@kuei.com> -Samuel Cormier-Iijima <sam@chide.it> -Jon Palmer <jonspalmer@gmail.com> -Ben Hollis <bhollis@amazon.com> -Justin MacCarthy <Justin@Rubystars.biz> -Eyal Kobrigo <kobrigo@hotmail.com> -Tiago Freire <tiago.freire@gmail.com> -Diego Tres <diegotres@gmail.com> -Holger Rüprich <holger@rueprich.de> -Ziling Zhao <zilingzhao@gmail.com> -Mike Alsup <malsup@gmail.com> -Robson Braga Araujo <robsonbraga@gmail.com> -Pierre-Henri Ausseil <ph.ausseil@gmail.com> -Christopher McCulloh <cmcculloh@gmail.com> -Andrew Newcomb <ext.github@preceptsoftware.co.uk> -Lim Chee Aun <cheeaun@gmail.com> -Jorge Barreiro <yortx.barry@gmail.com> -Daniel Steigerwald <daniel@steigerwald.cz> -John Firebaugh <john_firebaugh@bigfix.com> -John Enters <github@darkdark.net> -Andrey Kapitcyn <ru.m157y@gmail.com> -Dmitry Petrov <dpetroff@gmail.com> -Eric Hynds <eric@hynds.net> -Chairat Sunthornwiphat <pipo@sixhead.com> -Josh Varner <josh.varner@gmail.com> -Stéphane Raimbault <stephane.raimbault@gmail.com> -Jay Merrifield <fracmak@gmail.com> -J. Ryan Stinnett <jryans@gmail.com> -Peter Heiberg <peter@heiberg.se> -Alex Dovenmuehle <adovenmuehle@gmail.com> -Jamie Gegerson <git@jamiegegerson.com> -Raymond Schwartz <skeetergraphics@gmail.com> -Phillip Barnes <philbar@gmail.com> -Kyle Wilkinson <kai@wikyd.org> -Khaled AlHourani <me@khaledalhourani.com> -Marian Rudzynski <mr@impaled.org> -Jean-Francois Remy <jeff@melix.org> -Doug Blood <dougblood@gmail.com> -Filippo Cavallarin <filippo.cavallarin@codseq.it> -Heiko Henning <heiko@thehennings.ch> -Aliaksandr Rahalevich <saksmlz@gmail.com> -Mario Visic <mario@mariovisic.com> -Xavi Ramirez <xavi.rmz@gmail.com> -Max Schnur <max.schnur@gmail.com> -Saji Nediyanchath <saji89@gmail.com> -Corey Frang <gnarf37@gmail.com> -Aaron Peterson <aaronp123@yahoo.com> -Ivan Peters <ivan@ivanpeters.com> -Mohamed Cherif Bouchelaghem <cherifbouchelaghem@yahoo.fr> -Marcos Sousa <falecomigo@marcossousa.com> -Michael DellaNoce <mdellanoce@mailtrust.com> -George Marshall <echosx@gmail.com> -Tobias Brunner <tobias@strongswan.org> -Martin Solli <msolli@gmail.com> -David Petersen <public@petersendidit.com> -Dan Heberden <danheberden@gmail.com> -William Kevin Manire <williamkmanire@gmail.com> -Gilmore Davidson <gilmoreorless@gmail.com> -Michael Wu <michaelmwu@gmail.com> -Adam Parod <mystic414@gmail.com> -Guillaume Gautreau <guillaume+github@ghusse.com> -Marcel Toele <EleotleCram@gmail.com> -Dan Streetman <ddstreet@ieee.org> -Matt Hoskins <matt@nipltd.com> -Giovanni Giacobbi <giovanni@giacobbi.net> -Kyle Florence <kyle.florence@gmail.com> -Pavol Hluchý <lopo@losys.sk> -Hans Hillen <hans.hillen@gmail.com> -Mark Johnson <virgofx@live.com> -Trey Hunner <treyhunner@gmail.com> -Shane Whittet <whittet@gmail.com> -Edward A Faulkner <ef@alum.mit.edu> -Adam Baratz <adam@adambaratz.com> -Kato Kazuyoshi <kato.kazuyoshi@gmail.com> -Eike Send <eike.send@gmail.com> -Kris Borchers <kris.borchers@gmail.com> -Eddie Monge <eddie@eddiemonge.com> -Israel Tsadok <itsadok@gmail.com> -Carson McDonald <carson@ioncannon.net> -Jason Davies <jason@jasondavies.com> -Garrison Locke <gplocke@gmail.com> -David Murdoch <david@davidmurdoch.com> -Benjamin Scott Boyle <benjamins.boyle@gmail.com> -Jesse Baird <jebaird@gmail.com> -Jonathan Vingiano <jvingiano@gmail.com> -Dylan Just <dev@ephox.com> -Hiroshi Tomita <tomykaira@gmail.com> -Glenn Goodrich <glenn.goodrich@gmail.com> -Tarafder Ashek-E-Elahi <mail.ashek@gmail.com> -Ryan Neufeld <ryan@neufeldmail.com> -Marc Neuwirth <marc.neuwirth@gmail.com> -Philip Graham <philip.robert.graham@gmail.com> -Benjamin Sterling <benjamin.sterling@kenzomedia.com> -Wesley Walser <waw325@gmail.com> -Kouhei Sutou <kou@clear-code.com> -Karl Kirch <karlkrch@gmail.com> -Chris Kelly <ckdake@ckdake.com> -Jason Oster <jay@kodewerx.org> -Felix Nagel <info@felixnagel.com> -Alexander Polomoshnov <alex.polomoshnov@gmail.com> -David Leal <dgleal@gmail.com> -Igor Milla <igor.fsp.milla@gmail.com> -Dave Methvin <dave.methvin@gmail.com> -Florian Gutmann <f.gutmann@chronimo.com> -Marwan Al Jubeh <marwan.aljubeh@gmail.com> -Milan Broum <midlis@googlemail.com> -Sebastian Sauer <info@dynpages.de> -Gaëtan Muller <m.gaetan89@gmail.com> -Michel Weimerskirch <michel@weimerskirch.net> -William Griffiths <william@ycymro.com> -Stojce Slavkovski <stojce@gmail.com> -David Soms <david.soms@gmail.com> -David De Sloovere <david.desloovere@outlook.com> -Michael P. Jung <michael.jung@terreon.de> -Shannon Pekary <spekary@gmail.com> -Dan Wellman <danwellman@hotmail.com> -Matthew Edward Hutton <meh@corefiling.co.uk> -James Khoury <james@jameskhoury.com> -Rob Loach <robloach@gmail.com> -Alberto Monteiro <betimbrasil@gmail.com> -Alex Rhea <alex.rhea@gmail.com> -Krzysztof Rosiński <rozwell69@gmail.com> -Ryan Olton <oltonr@gmail.com> -Genie <386@mail.com> -Rick Waldron <waldron.rick@gmail.com> -Ian Simpson <spoonlikesham@gmail.com> -Lev Kitsis <spam4lev@gmail.com> -TJ VanToll <tj.vantoll@gmail.com> -Justin Domnitz <jdomnitz@gmail.com> -Douglas Cerna <douglascerna@yahoo.com> -Bert ter Heide <bertjh@hotmail.com> -Jasvir Nagra <jasvir@gmail.com> -Yuriy Khabarov <13real008@gmail.com> -Harri Kilpiö <harri.kilpio@gmail.com> -Lado Lomidze <lado.lomidze@gmail.com> -Amir E. Aharoni <amir.aharoni@mail.huji.ac.il> -Simon Sattes <simon.sattes@gmail.com> -Jo Liss <joliss42@gmail.com> -Guntupalli Karunakar <karunakarg@yahoo.com> -Shahyar Ghobadpour <shahyar@gmail.com> -Lukasz Lipinski <uzza17@gmail.com> -Timo Tijhof <krinklemail@gmail.com> -Jason Moon <jmoon@socialcast.com> -Martin Frost <martinf55@hotmail.com> -Eneko Illarramendi <eneko@illarra.com> -EungJun Yi <semtlenori@gmail.com> -Courtland Allen <courtlandallen@gmail.com> -Viktar Varvanovich <non4eg@gmail.com> -Danny Trunk <dtrunk90@gmail.com> -Pavel Stetina <pavel.stetina@nangu.tv> -Michael Stay <metaweta@gmail.com> -Steven Roussey <sroussey@gmail.com> -Michael Hollis <hollis21@gmail.com> -Lee Rowlands <lee.rowlands@previousnext.com.au> -Timmy Willison <timmywillisn@gmail.com> -Karl Swedberg <kswedberg@gmail.com> -Baoju Yuan <the_guy_1987@hotmail.com> -Maciej Mroziński <maciej.k.mrozinski@gmail.com> -Luis Dalmolin <luis.nh@gmail.com> -Mark Aaron Shirley <maspwr@gmail.com> -Martin Hoch <martin@fidion.de> -Jiayi Yang <tr870829@gmail.com> -Philipp Benjamin Köppchen <xgxtpbk@gws.ms> -Sindre Sorhus <sindresorhus@gmail.com> -Bernhard Sirlinger <bernhard.sirlinger@tele2.de> -Jared A. Scheel <jared@jaredscheel.com> -Rafael Xavier de Souza <rxaviers@gmail.com> -John Chen <zhang.z.chen@intel.com> -Robert Beuligmann <robertbeuligmann@gmail.com> -Dale Kocian <dale.kocian@gmail.com> -Mike Sherov <mike.sherov@gmail.com> -Andrew Couch <andy@couchand.com> -Marc-Andre Lafortune <github@marc-andre.ca> -Nate Eagle <nate.eagle@teamaol.com> -David Souther <davidsouther@gmail.com> -Mathias Stenbom <mathias@stenbom.com> -Sergey Kartashov <ebishkek@yandex.ru> -Avinash R <nashpapa@gmail.com> -Ethan Romba <ethanromba@gmail.com> -Cory Gackenheimer <cory.gack@gmail.com> -Juan Pablo Kaniefsky <jpkaniefsky@gmail.com> -Roman Salnikov <bardt.dz@gmail.com> -Anika Henke <anika@selfthinker.org> -Samuel Bovée <samycookie2000@yahoo.fr> -Fabrício Matté <ult_combo@hotmail.com> -Viktor Kojouharov <vkojouharov@gmail.com> -Pawel Maruszczyk (http://hrabstwo.net) -Pavel Selitskas <p.selitskas@gmail.com> -Bjørn Johansen <post@bjornjohansen.no> -Matthieu Penant <thieum22@hotmail.com> -Dominic Barnes <dominic@dbarnes.info> -David Sullivan <david.sullivan@gmail.com> -Thomas Jaggi <thomas@responsive.ch> -Vahid Sohrabloo <vahid4134@gmail.com> -Travis Carden <travis.carden@gmail.com> -Bruno M. Custódio <bruno@brunomcustodio.com> -Nathanael Silverman <nathanael.silverman@gmail.com> -Christian Wenz <christian@wenz.org> -Steve Urmston <steve@urm.st> -Zaven Muradyan <megalivoithos@gmail.com> -Woody Gilk <shadowhand@deviantart.com> -Zbigniew Motyka <zbigniew.motyka@gmail.com> -Suhail Alkowaileet <xsoh.k7@gmail.com> -Toshi MARUYAMA <marutosijp2@yahoo.co.jp> -David Hansen <hansede@gmail.com> -Brian Grinstead <briangrinstead@gmail.com> -Christian Klammer <christian314159@gmail.com> -Steven Luscher <jquerycla@steveluscher.com> -Gan Eng Chin <engchin.gan@gmail.com> -Gabriel Schulhof <gabriel.schulhof@intel.com> -Alexander Schmitz <arschmitz@gmail.com> -Vilhjálmur Skúlason <vis@dmm.is> -Siebrand Mazeland <siebrand@kitano.nl> -Mohsen Ekhtiari <mohsenekhtiari@yahoo.com> -Pere Orga <gotrunks@gmail.com> -Jasper de Groot <mail@ugomobi.com> -Stephane Deschamps <stephane.deschamps@gmail.com> -Jyoti Deka <dekajp@gmail.com> -Andrei Picus <office.nightcrawler@gmail.com> -Ondrej Novy <novy@ondrej.org> -Jacob McCutcheon <jacob.mccutcheon@gmail.com> -Monika Piotrowicz <monika.piotrowicz@gmail.com> -Imants Horsts <imants.horsts@inbox.lv> -Eric Dahl <eric.c.dahl@gmail.com> -Dave Stein <dave@behance.com> -Dylan Barrell <dylan@barrell.com> -Daniel DeGroff <djdegroff@gmail.com> -Michael Wiencek <mwtuea@gmail.com> -Thomas Meyer <meyertee@gmail.com> -Ruslan Yakhyaev <ruslan@ruslan.io> -Brian J. Dowling <bjd-dev@simplicity.net> -Ben Higgins <ben@extrahop.com> -Yermo Lamers <yml@yml.com> -Patrick Stapleton <github@gdi2290.com> -Trisha Crowley <trisha.crowley@gmail.com> -Usman Akeju <akeju00+github@gmail.com> -Rodrigo Menezes <rod333@gmail.com> -Jacques Perrault <jacques_perrault@us.ibm.com> -Frederik Elvhage <frederik.elvhage@googlemail.com> -Will Holley <willholley@gmail.com> -Uri Gilad <antishok@gmail.com> -Richard Gibson <richard.gibson@gmail.com> -Simen Bekkhus <sbekkhus91@gmail.com> -Chen Eshchar <eshcharc@gmail.com> -Bruno Pérel <brunoperel@gmail.com> -Mohammed Alshehri <m@dralshehri.com> -Lisa Seacat DeLuca <ldeluca@us.ibm.com> -Anne-Gaelle Colom <coloma@westminster.ac.uk> -Adam Foster <slimfoster@gmail.com> -Luke Page <luke.a.page@gmail.com> -Daniel Owens <daniel@matchstickmixup.com> -Michael Orchard <morchard@scottlogic.co.uk> -Marcus Warren <marcus@envoke.com> -Nils Heuermann <nils@world-of-scripts.de> -Marco Ziech <marco@ziech.net> -Patricia Juarez <patrixd@gmail.com> -Ben Mosher <me@benmosher.com> -Ablay Keldibek <atomio.ak@gmail.com> -Thomas Applencourt <thomas.applencourt@irsamc.ups-tlse.fr> -Jiabao Wu <jiabao.foss@gmail.com> -Eric Lee Carraway <github@ericcarraway.com> -Victor Homyakov <vkhomyackov@gmail.com> -Myeongjin Lee <aranet100@gmail.com> -Liran Sharir <lsharir@gmail.com> -Weston Ruter <weston@xwp.co> -Mani Mishra <manimishra902@gmail.com> -Hannah Methvin <hannahmethvin@gmail.com> -Leonardo Balter <leonardo.balter@gmail.com> -Benjamin Albert <benjamin_a5@yahoo.com> -Michał Gołębiowski <m.goleb@gmail.com> -Alyosha Pushak <alyosha.pushak@gmail.com> -Fahad Ahmad <fahadahmad41@hotmail.com> -Matt Brundage <github@mattbrundage.com> -Francesc Baeta <francesc.baeta@gmail.com> -Piotr Baran <piotros@wp.pl> -Mukul Hase <mukulhase@gmail.com> -Konstantin Dinev <kdinev@mail.bw.edu> -Rand Scullard <rand@randscullard.com> -Dan Strohl <dan@wjcg.net> -Maksim Ryzhikov <rv.maksim@gmail.com> -Amine HADDAD <haddad@allegorie.tv> -Amanpreet Singh <apsdehal@gmail.com> -Alexey Balchunas <bleshik@gmail.com> -Peter Kehl <peter.kehl@gmail.com> -Peter Dave Hello <hsu@peterdavehello.org> -Johannes Schäfer <johnschaefer@gmx.de> -Ville Skyttä <ville.skytta@iki.fi> -Ryan Oriecuia <ryan.oriecuia@visioncritical.com> diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/LICENSE.txt b/javascript/vendor/jquery-ui-1.12.1.custom/LICENSE.txt deleted file mode 100644 index 4819e54..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/LICENSE.txt +++ /dev/null @@ -1,43 +0,0 @@ -Copyright jQuery Foundation and other contributors, https://jquery.org/ - -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -available at https://github.com/jquery/jquery-ui - -The following license applies to all parts of this software except as -documented below: - -==== - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==== - -Copyright and related rights for sample code are waived via CC0. Sample -code is defined as all source code contained within the demos directory. - -CC0: http://creativecommons.org/publicdomain/zero/1.0/ - -==== - -All files located in the node_modules and external directories are -externally maintained libraries used by this software which have their -own licenses; we recommend you read them, as their terms may differ from -the terms above. diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/external/jquery/jquery.js b/javascript/vendor/jquery-ui-1.12.1.custom/external/jquery/jquery.js deleted file mode 100644 index 7fc60fc..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/external/jquery/jquery.js +++ /dev/null @@ -1,11008 +0,0 @@ -/*! - * jQuery JavaScript Library v1.12.4 - * http://jquery.com/ - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2016-05-20T17:17Z - */ - -(function( global, factory ) { - - if ( typeof module === "object" && typeof module.exports === "object" ) { - // For CommonJS and CommonJS-like environments where a proper `window` - // is present, execute the factory and get jQuery. - // For environments that do not have a `window` with a `document` - // (such as Node.js), expose a factory as module.exports. - // This accentuates the need for the creation of a real `window`. - // e.g. var jQuery = require("jquery")(window); - // See ticket #14549 for more info. - module.exports = global.document ? - factory( global, true ) : - function( w ) { - if ( !w.document ) { - throw new Error( "jQuery requires a window with a document" ); - } - return factory( w ); - }; - } else { - factory( global ); - } - -// Pass this if window is not defined yet -}(typeof window !== "undefined" ? window : this, function( window, noGlobal ) { - -// Support: Firefox 18+ -// Can't be in strict mode, several libs including ASP.NET trace -// the stack via arguments.caller.callee and Firefox dies if -// you try to trace through "use strict" call chains. (#13335) -//"use strict"; -var deletedIds = []; - -var document = window.document; - -var slice = deletedIds.slice; - -var concat = deletedIds.concat; - -var push = deletedIds.push; - -var indexOf = deletedIds.indexOf; - -var class2type = {}; - -var toString = class2type.toString; - -var hasOwn = class2type.hasOwnProperty; - -var support = {}; - - - -var - version = "1.12.4", - - // Define a local copy of jQuery - jQuery = function( selector, context ) { - - // The jQuery object is actually just the init constructor 'enhanced' - // Need init if jQuery is called (just allow error to be thrown if not included) - return new jQuery.fn.init( selector, context ); - }, - - // Support: Android<4.1, IE<9 - // Make sure we trim BOM and NBSP - rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, - - // Matches dashed string for camelizing - rmsPrefix = /^-ms-/, - rdashAlpha = /-([\da-z])/gi, - - // Used by jQuery.camelCase as callback to replace() - fcamelCase = function( all, letter ) { - return letter.toUpperCase(); - }; - -jQuery.fn = jQuery.prototype = { - - // The current version of jQuery being used - jquery: version, - - constructor: jQuery, - - // Start with an empty selector - selector: "", - - // The default length of a jQuery object is 0 - length: 0, - - toArray: function() { - return slice.call( this ); - }, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - return num != null ? - - // Return just the one element from the set - ( num < 0 ? this[ num + this.length ] : this[ num ] ) : - - // Return all the elements in a clean array - slice.call( this ); - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems ) { - - // Build a new jQuery matched element set - var ret = jQuery.merge( this.constructor(), elems ); - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - ret.context = this.context; - - // Return the newly-formed element set - return ret; - }, - - // Execute a callback for every element in the matched set. - each: function( callback ) { - return jQuery.each( this, callback ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map( this, function( elem, i ) { - return callback.call( elem, i, elem ); - } ) ); - }, - - slice: function() { - return this.pushStack( slice.apply( this, arguments ) ); - }, - - first: function() { - return this.eq( 0 ); - }, - - last: function() { - return this.eq( -1 ); - }, - - eq: function( i ) { - var len = this.length, - j = +i + ( i < 0 ? len : 0 ); - return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); - }, - - end: function() { - return this.prevObject || this.constructor(); - }, - - // For internal use only. - // Behaves like an Array's method, not like a jQuery method. - push: push, - sort: deletedIds.sort, - splice: deletedIds.splice -}; - -jQuery.extend = jQuery.fn.extend = function() { - var src, copyIsArray, copy, name, options, clone, - target = arguments[ 0 ] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - - // skip the boolean and the target - target = arguments[ i ] || {}; - i++; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !jQuery.isFunction( target ) ) { - target = {}; - } - - // extend jQuery itself if only one argument is passed - if ( i === length ) { - target = this; - i--; - } - - for ( ; i < length; i++ ) { - - // Only deal with non-null/undefined values - if ( ( options = arguments[ i ] ) != null ) { - - // Extend the base object - for ( name in options ) { - src = target[ name ]; - copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject( copy ) || - ( copyIsArray = jQuery.isArray( copy ) ) ) ) { - - if ( copyIsArray ) { - copyIsArray = false; - clone = src && jQuery.isArray( src ) ? src : []; - - } else { - clone = src && jQuery.isPlainObject( src ) ? src : {}; - } - - // Never move original objects, clone them - target[ name ] = jQuery.extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -jQuery.extend( { - - // Unique for each copy of jQuery on the page - expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), - - // Assume jQuery is ready without the ready module - isReady: true, - - error: function( msg ) { - throw new Error( msg ); - }, - - noop: function() {}, - - // See test/unit/core.js for details concerning isFunction. - // Since version 1.3, DOM methods and functions like alert - // aren't supported. They return false on IE (#2968). - isFunction: function( obj ) { - return jQuery.type( obj ) === "function"; - }, - - isArray: Array.isArray || function( obj ) { - return jQuery.type( obj ) === "array"; - }, - - isWindow: function( obj ) { - /* jshint eqeqeq: false */ - return obj != null && obj == obj.window; - }, - - isNumeric: function( obj ) { - - // parseFloat NaNs numeric-cast false positives (null|true|false|"") - // ...but misinterprets leading-number strings, particularly hex literals ("0x...") - // subtraction forces infinities to NaN - // adding 1 corrects loss of precision from parseFloat (#15100) - var realStringObj = obj && obj.toString(); - return !jQuery.isArray( obj ) && ( realStringObj - parseFloat( realStringObj ) + 1 ) >= 0; - }, - - isEmptyObject: function( obj ) { - var name; - for ( name in obj ) { - return false; - } - return true; - }, - - isPlainObject: function( obj ) { - var key; - - // Must be an Object. - // Because of IE, we also have to check the presence of the constructor property. - // Make sure that DOM nodes and window objects don't pass through, as well - if ( !obj || jQuery.type( obj ) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { - return false; - } - - try { - - // Not own constructor property must be Object - if ( obj.constructor && - !hasOwn.call( obj, "constructor" ) && - !hasOwn.call( obj.constructor.prototype, "isPrototypeOf" ) ) { - return false; - } - } catch ( e ) { - - // IE8,9 Will throw exceptions on certain host objects #9897 - return false; - } - - // Support: IE<9 - // Handle iteration over inherited properties before own properties. - if ( !support.ownFirst ) { - for ( key in obj ) { - return hasOwn.call( obj, key ); - } - } - - // Own properties are enumerated firstly, so to speed up, - // if last one is own, then all properties are own. - for ( key in obj ) {} - - return key === undefined || hasOwn.call( obj, key ); - }, - - type: function( obj ) { - if ( obj == null ) { - return obj + ""; - } - return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call( obj ) ] || "object" : - typeof obj; - }, - - // Workarounds based on findings by Jim Driscoll - // http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context - globalEval: function( data ) { - if ( data && jQuery.trim( data ) ) { - - // We use execScript on Internet Explorer - // We use an anonymous function so that context is window - // rather than jQuery in Firefox - ( window.execScript || function( data ) { - window[ "eval" ].call( window, data ); // jscs:ignore requireDotNotation - } )( data ); - } - }, - - // Convert dashed to camelCase; used by the css and data modules - // Microsoft forgot to hump their vendor prefix (#9572) - camelCase: function( string ) { - return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); - }, - - each: function( obj, callback ) { - var length, i = 0; - - if ( isArrayLike( obj ) ) { - length = obj.length; - for ( ; i < length; i++ ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } else { - for ( i in obj ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } - - return obj; - }, - - // Support: Android<4.1, IE<9 - trim: function( text ) { - return text == null ? - "" : - ( text + "" ).replace( rtrim, "" ); - }, - - // results is for internal usage only - makeArray: function( arr, results ) { - var ret = results || []; - - if ( arr != null ) { - if ( isArrayLike( Object( arr ) ) ) { - jQuery.merge( ret, - typeof arr === "string" ? - [ arr ] : arr - ); - } else { - push.call( ret, arr ); - } - } - - return ret; - }, - - inArray: function( elem, arr, i ) { - var len; - - if ( arr ) { - if ( indexOf ) { - return indexOf.call( arr, elem, i ); - } - - len = arr.length; - i = i ? i < 0 ? Math.max( 0, len + i ) : i : 0; - - for ( ; i < len; i++ ) { - - // Skip accessing in sparse arrays - if ( i in arr && arr[ i ] === elem ) { - return i; - } - } - } - - return -1; - }, - - merge: function( first, second ) { - var len = +second.length, - j = 0, - i = first.length; - - while ( j < len ) { - first[ i++ ] = second[ j++ ]; - } - - // Support: IE<9 - // Workaround casting of .length to NaN on otherwise arraylike objects (e.g., NodeLists) - if ( len !== len ) { - while ( second[ j ] !== undefined ) { - first[ i++ ] = second[ j++ ]; - } - } - - first.length = i; - - return first; - }, - - grep: function( elems, callback, invert ) { - var callbackInverse, - matches = [], - i = 0, - length = elems.length, - callbackExpect = !invert; - - // Go through the array, only saving the items - // that pass the validator function - for ( ; i < length; i++ ) { - callbackInverse = !callback( elems[ i ], i ); - if ( callbackInverse !== callbackExpect ) { - matches.push( elems[ i ] ); - } - } - - return matches; - }, - - // arg is for internal usage only - map: function( elems, callback, arg ) { - var length, value, - i = 0, - ret = []; - - // Go through the array, translating each of the items to their new values - if ( isArrayLike( elems ) ) { - length = elems.length; - for ( ; i < length; i++ ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - - // Go through every key on the object, - } else { - for ( i in elems ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - } - - // Flatten any nested arrays - return concat.apply( [], ret ); - }, - - // A global GUID counter for objects - guid: 1, - - // Bind a function to a context, optionally partially applying any - // arguments. - proxy: function( fn, context ) { - var args, proxy, tmp; - - if ( typeof context === "string" ) { - tmp = fn[ context ]; - context = fn; - fn = tmp; - } - - // Quick check to determine if target is callable, in the spec - // this throws a TypeError, but we will just return undefined. - if ( !jQuery.isFunction( fn ) ) { - return undefined; - } - - // Simulated bind - args = slice.call( arguments, 2 ); - proxy = function() { - return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); - }; - - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || jQuery.guid++; - - return proxy; - }, - - now: function() { - return +( new Date() ); - }, - - // jQuery.support is not used in Core but other projects attach their - // properties to it so it needs to exist. - support: support -} ); - -// JSHint would error on this code due to the Symbol not being defined in ES5. -// Defining this global in .jshintrc would create a danger of using the global -// unguarded in another place, it seems safer to just disable JSHint for these -// three lines. -/* jshint ignore: start */ -if ( typeof Symbol === "function" ) { - jQuery.fn[ Symbol.iterator ] = deletedIds[ Symbol.iterator ]; -} -/* jshint ignore: end */ - -// Populate the class2type map -jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), -function( i, name ) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); -} ); - -function isArrayLike( obj ) { - - // Support: iOS 8.2 (not reproducible in simulator) - // `in` check used to prevent JIT error (gh-2145) - // hasOwn isn't used here due to false negatives - // regarding Nodelist length in IE - var length = !!obj && "length" in obj && obj.length, - type = jQuery.type( obj ); - - if ( type === "function" || jQuery.isWindow( obj ) ) { - return false; - } - - return type === "array" || length === 0 || - typeof length === "number" && length > 0 && ( length - 1 ) in obj; -} -var Sizzle = -/*! - * Sizzle CSS Selector Engine v2.2.1 - * http://sizzlejs.com/ - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2015-10-17 - */ -(function( window ) { - -var i, - support, - Expr, - getText, - isXML, - tokenize, - compile, - select, - outermostContext, - sortInput, - hasDuplicate, - - // Local document vars - setDocument, - document, - docElem, - documentIsHTML, - rbuggyQSA, - rbuggyMatches, - matches, - contains, - - // Instance-specific data - expando = "sizzle" + 1 * new Date(), - preferredDoc = window.document, - dirruns = 0, - done = 0, - classCache = createCache(), - tokenCache = createCache(), - compilerCache = createCache(), - sortOrder = function( a, b ) { - if ( a === b ) { - hasDuplicate = true; - } - return 0; - }, - - // General-purpose constants - MAX_NEGATIVE = 1 << 31, - - // Instance methods - hasOwn = ({}).hasOwnProperty, - arr = [], - pop = arr.pop, - push_native = arr.push, - push = arr.push, - slice = arr.slice, - // Use a stripped-down indexOf as it's faster than native - // http://jsperf.com/thor-indexof-vs-for/5 - indexOf = function( list, elem ) { - var i = 0, - len = list.length; - for ( ; i < len; i++ ) { - if ( list[i] === elem ) { - return i; - } - } - return -1; - }, - - booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", - - // Regular expressions - - // http://www.w3.org/TR/css3-selectors/#whitespace - whitespace = "[\\x20\\t\\r\\n\\f]", - - // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier - identifier = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", - - // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors - attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + - // Operator (capture 2) - "*([*^$|!~]?=)" + whitespace + - // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" - "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + - "*\\]", - - pseudos = ":(" + identifier + ")(?:\\((" + - // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: - // 1. quoted (capture 3; capture 4 or capture 5) - "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + - // 2. simple (capture 6) - "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + - // 3. anything else (capture 2) - ".*" + - ")\\)|)", - - // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter - rwhitespace = new RegExp( whitespace + "+", "g" ), - rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), - - rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), - rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), - - rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), - - rpseudo = new RegExp( pseudos ), - ridentifier = new RegExp( "^" + identifier + "$" ), - - matchExpr = { - "ID": new RegExp( "^#(" + identifier + ")" ), - "CLASS": new RegExp( "^\\.(" + identifier + ")" ), - "TAG": new RegExp( "^(" + identifier + "|[*])" ), - "ATTR": new RegExp( "^" + attributes ), - "PSEUDO": new RegExp( "^" + pseudos ), - "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + - "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + - "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), - "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), - // For use in libraries implementing .is() - // We use this for POS matching in `select` - "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + - whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) - }, - - rinputs = /^(?:input|select|textarea|button)$/i, - rheader = /^h\d$/i, - - rnative = /^[^{]+\{\s*\[native \w/, - - // Easily-parseable/retrievable ID or TAG or CLASS selectors - rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, - - rsibling = /[+~]/, - rescape = /'|\\/g, - - // CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters - runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), - funescape = function( _, escaped, escapedWhitespace ) { - var high = "0x" + escaped - 0x10000; - // NaN means non-codepoint - // Support: Firefox<24 - // Workaround erroneous numeric interpretation of +"0x" - return high !== high || escapedWhitespace ? - escaped : - high < 0 ? - // BMP codepoint - String.fromCharCode( high + 0x10000 ) : - // Supplemental Plane codepoint (surrogate pair) - String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); - }, - - // Used for iframes - // See setDocument() - // Removing the function wrapper causes a "Permission Denied" - // error in IE - unloadHandler = function() { - setDocument(); - }; - -// Optimize for push.apply( _, NodeList ) -try { - push.apply( - (arr = slice.call( preferredDoc.childNodes )), - preferredDoc.childNodes - ); - // Support: Android<4.0 - // Detect silently failing push.apply - arr[ preferredDoc.childNodes.length ].nodeType; -} catch ( e ) { - push = { apply: arr.length ? - - // Leverage slice if possible - function( target, els ) { - push_native.apply( target, slice.call(els) ); - } : - - // Support: IE<9 - // Otherwise append directly - function( target, els ) { - var j = target.length, - i = 0; - // Can't trust NodeList.length - while ( (target[j++] = els[i++]) ) {} - target.length = j - 1; - } - }; -} - -function Sizzle( selector, context, results, seed ) { - var m, i, elem, nid, nidselect, match, groups, newSelector, - newContext = context && context.ownerDocument, - - // nodeType defaults to 9, since context defaults to document - nodeType = context ? context.nodeType : 9; - - results = results || []; - - // Return early from calls with invalid selector or context - if ( typeof selector !== "string" || !selector || - nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { - - return results; - } - - // Try to shortcut find operations (as opposed to filters) in HTML documents - if ( !seed ) { - - if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { - setDocument( context ); - } - context = context || document; - - if ( documentIsHTML ) { - - // If the selector is sufficiently simple, try using a "get*By*" DOM method - // (excepting DocumentFragment context, where the methods don't exist) - if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { - - // ID selector - if ( (m = match[1]) ) { - - // Document context - if ( nodeType === 9 ) { - if ( (elem = context.getElementById( m )) ) { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( elem.id === m ) { - results.push( elem ); - return results; - } - } else { - return results; - } - - // Element context - } else { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( newContext && (elem = newContext.getElementById( m )) && - contains( context, elem ) && - elem.id === m ) { - - results.push( elem ); - return results; - } - } - - // Type selector - } else if ( match[2] ) { - push.apply( results, context.getElementsByTagName( selector ) ); - return results; - - // Class selector - } else if ( (m = match[3]) && support.getElementsByClassName && - context.getElementsByClassName ) { - - push.apply( results, context.getElementsByClassName( m ) ); - return results; - } - } - - // Take advantage of querySelectorAll - if ( support.qsa && - !compilerCache[ selector + " " ] && - (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { - - if ( nodeType !== 1 ) { - newContext = context; - newSelector = selector; - - // qSA looks outside Element context, which is not what we want - // Thanks to Andrew Dupont for this workaround technique - // Support: IE <=8 - // Exclude object elements - } else if ( context.nodeName.toLowerCase() !== "object" ) { - - // Capture the context ID, setting it first if necessary - if ( (nid = context.getAttribute( "id" )) ) { - nid = nid.replace( rescape, "\\$&" ); - } else { - context.setAttribute( "id", (nid = expando) ); - } - - // Prefix every selector in the list - groups = tokenize( selector ); - i = groups.length; - nidselect = ridentifier.test( nid ) ? "#" + nid : "[id='" + nid + "']"; - while ( i-- ) { - groups[i] = nidselect + " " + toSelector( groups[i] ); - } - newSelector = groups.join( "," ); - - // Expand context for sibling selectors - newContext = rsibling.test( selector ) && testContext( context.parentNode ) || - context; - } - - if ( newSelector ) { - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch ( qsaError ) { - } finally { - if ( nid === expando ) { - context.removeAttribute( "id" ); - } - } - } - } - } - } - - // All others - return select( selector.replace( rtrim, "$1" ), context, results, seed ); -} - -/** - * Create key-value caches of limited size - * @returns {function(string, object)} Returns the Object data after storing it on itself with - * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) - * deleting the oldest entry - */ -function createCache() { - var keys = []; - - function cache( key, value ) { - // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) - if ( keys.push( key + " " ) > Expr.cacheLength ) { - // Only keep the most recent entries - delete cache[ keys.shift() ]; - } - return (cache[ key + " " ] = value); - } - return cache; -} - -/** - * Mark a function for special use by Sizzle - * @param {Function} fn The function to mark - */ -function markFunction( fn ) { - fn[ expando ] = true; - return fn; -} - -/** - * Support testing using an element - * @param {Function} fn Passed the created div and expects a boolean result - */ -function assert( fn ) { - var div = document.createElement("div"); - - try { - return !!fn( div ); - } catch (e) { - return false; - } finally { - // Remove from its parent by default - if ( div.parentNode ) { - div.parentNode.removeChild( div ); - } - // release memory in IE - div = null; - } -} - -/** - * Adds the same handler for all of the specified attrs - * @param {String} attrs Pipe-separated list of attributes - * @param {Function} handler The method that will be applied - */ -function addHandle( attrs, handler ) { - var arr = attrs.split("|"), - i = arr.length; - - while ( i-- ) { - Expr.attrHandle[ arr[i] ] = handler; - } -} - -/** - * Checks document order of two siblings - * @param {Element} a - * @param {Element} b - * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b - */ -function siblingCheck( a, b ) { - var cur = b && a, - diff = cur && a.nodeType === 1 && b.nodeType === 1 && - ( ~b.sourceIndex || MAX_NEGATIVE ) - - ( ~a.sourceIndex || MAX_NEGATIVE ); - - // Use IE sourceIndex if available on both nodes - if ( diff ) { - return diff; - } - - // Check if b follows a - if ( cur ) { - while ( (cur = cur.nextSibling) ) { - if ( cur === b ) { - return -1; - } - } - } - - return a ? 1 : -1; -} - -/** - * Returns a function to use in pseudos for input types - * @param {String} type - */ -function createInputPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for buttons - * @param {String} type - */ -function createButtonPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return (name === "input" || name === "button") && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for positionals - * @param {Function} fn - */ -function createPositionalPseudo( fn ) { - return markFunction(function( argument ) { - argument = +argument; - return markFunction(function( seed, matches ) { - var j, - matchIndexes = fn( [], seed.length, argument ), - i = matchIndexes.length; - - // Match elements found at the specified indexes - while ( i-- ) { - if ( seed[ (j = matchIndexes[i]) ] ) { - seed[j] = !(matches[j] = seed[j]); - } - } - }); - }); -} - -/** - * Checks a node for validity as a Sizzle context - * @param {Element|Object=} context - * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value - */ -function testContext( context ) { - return context && typeof context.getElementsByTagName !== "undefined" && context; -} - -// Expose support vars for convenience -support = Sizzle.support = {}; - -/** - * Detects XML nodes - * @param {Element|Object} elem An element or a document - * @returns {Boolean} True iff elem is a non-HTML XML node - */ -isXML = Sizzle.isXML = function( elem ) { - // documentElement is verified for cases where it doesn't yet exist - // (such as loading iframes in IE - #4833) - var documentElement = elem && (elem.ownerDocument || elem).documentElement; - return documentElement ? documentElement.nodeName !== "HTML" : false; -}; - -/** - * Sets document-related variables once based on the current document - * @param {Element|Object} [doc] An element or document object to use to set the document - * @returns {Object} Returns the current document - */ -setDocument = Sizzle.setDocument = function( node ) { - var hasCompare, parent, - doc = node ? node.ownerDocument || node : preferredDoc; - - // Return early if doc is invalid or already selected - if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { - return document; - } - - // Update global variables - document = doc; - docElem = document.documentElement; - documentIsHTML = !isXML( document ); - - // Support: IE 9-11, Edge - // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) - if ( (parent = document.defaultView) && parent.top !== parent ) { - // Support: IE 11 - if ( parent.addEventListener ) { - parent.addEventListener( "unload", unloadHandler, false ); - - // Support: IE 9 - 10 only - } else if ( parent.attachEvent ) { - parent.attachEvent( "onunload", unloadHandler ); - } - } - - /* Attributes - ---------------------------------------------------------------------- */ - - // Support: IE<8 - // Verify that getAttribute really returns attributes and not properties - // (excepting IE8 booleans) - support.attributes = assert(function( div ) { - div.className = "i"; - return !div.getAttribute("className"); - }); - - /* getElement(s)By* - ---------------------------------------------------------------------- */ - - // Check if getElementsByTagName("*") returns only elements - support.getElementsByTagName = assert(function( div ) { - div.appendChild( document.createComment("") ); - return !div.getElementsByTagName("*").length; - }); - - // Support: IE<9 - support.getElementsByClassName = rnative.test( document.getElementsByClassName ); - - // Support: IE<10 - // Check if getElementById returns elements by name - // The broken getElementById methods don't pick up programatically-set names, - // so use a roundabout getElementsByName test - support.getById = assert(function( div ) { - docElem.appendChild( div ).id = expando; - return !document.getElementsByName || !document.getElementsByName( expando ).length; - }); - - // ID find and filter - if ( support.getById ) { - Expr.find["ID"] = function( id, context ) { - if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { - var m = context.getElementById( id ); - return m ? [ m ] : []; - } - }; - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - return elem.getAttribute("id") === attrId; - }; - }; - } else { - // Support: IE6/7 - // getElementById is not reliable as a find shortcut - delete Expr.find["ID"]; - - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - var node = typeof elem.getAttributeNode !== "undefined" && - elem.getAttributeNode("id"); - return node && node.value === attrId; - }; - }; - } - - // Tag - Expr.find["TAG"] = support.getElementsByTagName ? - function( tag, context ) { - if ( typeof context.getElementsByTagName !== "undefined" ) { - return context.getElementsByTagName( tag ); - - // DocumentFragment nodes don't have gEBTN - } else if ( support.qsa ) { - return context.querySelectorAll( tag ); - } - } : - - function( tag, context ) { - var elem, - tmp = [], - i = 0, - // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too - results = context.getElementsByTagName( tag ); - - // Filter out possible comments - if ( tag === "*" ) { - while ( (elem = results[i++]) ) { - if ( elem.nodeType === 1 ) { - tmp.push( elem ); - } - } - - return tmp; - } - return results; - }; - - // Class - Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { - if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { - return context.getElementsByClassName( className ); - } - }; - - /* QSA/matchesSelector - ---------------------------------------------------------------------- */ - - // QSA and matchesSelector support - - // matchesSelector(:active) reports false when true (IE9/Opera 11.5) - rbuggyMatches = []; - - // qSa(:focus) reports false when true (Chrome 21) - // We allow this because of a bug in IE8/9 that throws an error - // whenever `document.activeElement` is accessed on an iframe - // So, we allow :focus to pass through QSA all the time to avoid the IE error - // See http://bugs.jquery.com/ticket/13378 - rbuggyQSA = []; - - if ( (support.qsa = rnative.test( document.querySelectorAll )) ) { - // Build QSA regex - // Regex strategy adopted from Diego Perini - assert(function( div ) { - // Select is set to empty string on purpose - // This is to test IE's treatment of not explicitly - // setting a boolean content attribute, - // since its presence should be enough - // http://bugs.jquery.com/ticket/12359 - docElem.appendChild( div ).innerHTML = "<a id='" + expando + "'></a>" + - "<select id='" + expando + "-\r\\' msallowcapture=''>" + - "<option selected=''></option></select>"; - - // Support: IE8, Opera 11-12.16 - // Nothing should be selected when empty strings follow ^= or $= or *= - // The test attribute must be unknown in Opera but "safe" for WinRT - // http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section - if ( div.querySelectorAll("[msallowcapture^='']").length ) { - rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); - } - - // Support: IE8 - // Boolean attributes and "value" are not treated correctly - if ( !div.querySelectorAll("[selected]").length ) { - rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); - } - - // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ - if ( !div.querySelectorAll( "[id~=" + expando + "-]" ).length ) { - rbuggyQSA.push("~="); - } - - // Webkit/Opera - :checked should return selected option elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - // IE8 throws error here and will not see later tests - if ( !div.querySelectorAll(":checked").length ) { - rbuggyQSA.push(":checked"); - } - - // Support: Safari 8+, iOS 8+ - // https://bugs.webkit.org/show_bug.cgi?id=136851 - // In-page `selector#id sibing-combinator selector` fails - if ( !div.querySelectorAll( "a#" + expando + "+*" ).length ) { - rbuggyQSA.push(".#.+[+~]"); - } - }); - - assert(function( div ) { - // Support: Windows 8 Native Apps - // The type and name attributes are restricted during .innerHTML assignment - var input = document.createElement("input"); - input.setAttribute( "type", "hidden" ); - div.appendChild( input ).setAttribute( "name", "D" ); - - // Support: IE8 - // Enforce case-sensitivity of name attribute - if ( div.querySelectorAll("[name=d]").length ) { - rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); - } - - // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) - // IE8 throws error here and will not see later tests - if ( !div.querySelectorAll(":enabled").length ) { - rbuggyQSA.push( ":enabled", ":disabled" ); - } - - // Opera 10-11 does not throw on post-comma invalid pseudos - div.querySelectorAll("*,:x"); - rbuggyQSA.push(",.*:"); - }); - } - - if ( (support.matchesSelector = rnative.test( (matches = docElem.matches || - docElem.webkitMatchesSelector || - docElem.mozMatchesSelector || - docElem.oMatchesSelector || - docElem.msMatchesSelector) )) ) { - - assert(function( div ) { - // Check to see if it's possible to do matchesSelector - // on a disconnected node (IE 9) - support.disconnectedMatch = matches.call( div, "div" ); - - // This should fail with an exception - // Gecko does not error, returns false instead - matches.call( div, "[s!='']:x" ); - rbuggyMatches.push( "!=", pseudos ); - }); - } - - rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") ); - rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") ); - - /* Contains - ---------------------------------------------------------------------- */ - hasCompare = rnative.test( docElem.compareDocumentPosition ); - - // Element contains another - // Purposefully self-exclusive - // As in, an element does not contain itself - contains = hasCompare || rnative.test( docElem.contains ) ? - function( a, b ) { - var adown = a.nodeType === 9 ? a.documentElement : a, - bup = b && b.parentNode; - return a === bup || !!( bup && bup.nodeType === 1 && ( - adown.contains ? - adown.contains( bup ) : - a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 - )); - } : - function( a, b ) { - if ( b ) { - while ( (b = b.parentNode) ) { - if ( b === a ) { - return true; - } - } - } - return false; - }; - - /* Sorting - ---------------------------------------------------------------------- */ - - // Document order sorting - sortOrder = hasCompare ? - function( a, b ) { - - // Flag for duplicate removal - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - // Sort on method existence if only one input has compareDocumentPosition - var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; - if ( compare ) { - return compare; - } - - // Calculate position if both inputs belong to the same document - compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ? - a.compareDocumentPosition( b ) : - - // Otherwise we know they are disconnected - 1; - - // Disconnected nodes - if ( compare & 1 || - (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { - - // Choose the first element that is related to our preferred document - if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { - return -1; - } - if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { - return 1; - } - - // Maintain original order - return sortInput ? - ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : - 0; - } - - return compare & 4 ? -1 : 1; - } : - function( a, b ) { - // Exit early if the nodes are identical - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - var cur, - i = 0, - aup = a.parentNode, - bup = b.parentNode, - ap = [ a ], - bp = [ b ]; - - // Parentless nodes are either documents or disconnected - if ( !aup || !bup ) { - return a === document ? -1 : - b === document ? 1 : - aup ? -1 : - bup ? 1 : - sortInput ? - ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : - 0; - - // If the nodes are siblings, we can do a quick check - } else if ( aup === bup ) { - return siblingCheck( a, b ); - } - - // Otherwise we need full lists of their ancestors for comparison - cur = a; - while ( (cur = cur.parentNode) ) { - ap.unshift( cur ); - } - cur = b; - while ( (cur = cur.parentNode) ) { - bp.unshift( cur ); - } - - // Walk down the tree looking for a discrepancy - while ( ap[i] === bp[i] ) { - i++; - } - - return i ? - // Do a sibling check if the nodes have a common ancestor - siblingCheck( ap[i], bp[i] ) : - - // Otherwise nodes in our document sort first - ap[i] === preferredDoc ? -1 : - bp[i] === preferredDoc ? 1 : - 0; - }; - - return document; -}; - -Sizzle.matches = function( expr, elements ) { - return Sizzle( expr, null, null, elements ); -}; - -Sizzle.matchesSelector = function( elem, expr ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - // Make sure that attribute selectors are quoted - expr = expr.replace( rattributeQuotes, "='$1']" ); - - if ( support.matchesSelector && documentIsHTML && - !compilerCache[ expr + " " ] && - ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && - ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { - - try { - var ret = matches.call( elem, expr ); - - // IE 9's matchesSelector returns false on disconnected nodes - if ( ret || support.disconnectedMatch || - // As well, disconnected nodes are said to be in a document - // fragment in IE 9 - elem.document && elem.document.nodeType !== 11 ) { - return ret; - } - } catch (e) {} - } - - return Sizzle( expr, document, null, [ elem ] ).length > 0; -}; - -Sizzle.contains = function( context, elem ) { - // Set document vars if needed - if ( ( context.ownerDocument || context ) !== document ) { - setDocument( context ); - } - return contains( context, elem ); -}; - -Sizzle.attr = function( elem, name ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - var fn = Expr.attrHandle[ name.toLowerCase() ], - // Don't get fooled by Object.prototype properties (jQuery #13807) - val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? - fn( elem, name, !documentIsHTML ) : - undefined; - - return val !== undefined ? - val : - support.attributes || !documentIsHTML ? - elem.getAttribute( name ) : - (val = elem.getAttributeNode(name)) && val.specified ? - val.value : - null; -}; - -Sizzle.error = function( msg ) { - throw new Error( "Syntax error, unrecognized expression: " + msg ); -}; - -/** - * Document sorting and removing duplicates - * @param {ArrayLike} results - */ -Sizzle.uniqueSort = function( results ) { - var elem, - duplicates = [], - j = 0, - i = 0; - - // Unless we *know* we can detect duplicates, assume their presence - hasDuplicate = !support.detectDuplicates; - sortInput = !support.sortStable && results.slice( 0 ); - results.sort( sortOrder ); - - if ( hasDuplicate ) { - while ( (elem = results[i++]) ) { - if ( elem === results[ i ] ) { - j = duplicates.push( i ); - } - } - while ( j-- ) { - results.splice( duplicates[ j ], 1 ); - } - } - - // Clear input after sorting to release objects - // See https://github.com/jquery/sizzle/pull/225 - sortInput = null; - - return results; -}; - -/** - * Utility function for retrieving the text value of an array of DOM nodes - * @param {Array|Element} elem - */ -getText = Sizzle.getText = function( elem ) { - var node, - ret = "", - i = 0, - nodeType = elem.nodeType; - - if ( !nodeType ) { - // If no nodeType, this is expected to be an array - while ( (node = elem[i++]) ) { - // Do not traverse comment nodes - ret += getText( node ); - } - } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { - // Use textContent for elements - // innerText usage removed for consistency of new lines (jQuery #11153) - if ( typeof elem.textContent === "string" ) { - return elem.textContent; - } else { - // Traverse its children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - ret += getText( elem ); - } - } - } else if ( nodeType === 3 || nodeType === 4 ) { - return elem.nodeValue; - } - // Do not include comment or processing instruction nodes - - return ret; -}; - -Expr = Sizzle.selectors = { - - // Can be adjusted by the user - cacheLength: 50, - - createPseudo: markFunction, - - match: matchExpr, - - attrHandle: {}, - - find: {}, - - relative: { - ">": { dir: "parentNode", first: true }, - " ": { dir: "parentNode" }, - "+": { dir: "previousSibling", first: true }, - "~": { dir: "previousSibling" } - }, - - preFilter: { - "ATTR": function( match ) { - match[1] = match[1].replace( runescape, funescape ); - - // Move the given value to match[3] whether quoted or unquoted - match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape ); - - if ( match[2] === "~=" ) { - match[3] = " " + match[3] + " "; - } - - return match.slice( 0, 4 ); - }, - - "CHILD": function( match ) { - /* matches from matchExpr["CHILD"] - 1 type (only|nth|...) - 2 what (child|of-type) - 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) - 4 xn-component of xn+y argument ([+-]?\d*n|) - 5 sign of xn-component - 6 x of xn-component - 7 sign of y-component - 8 y of y-component - */ - match[1] = match[1].toLowerCase(); - - if ( match[1].slice( 0, 3 ) === "nth" ) { - // nth-* requires argument - if ( !match[3] ) { - Sizzle.error( match[0] ); - } - - // numeric x and y parameters for Expr.filter.CHILD - // remember that false/true cast respectively to 0/1 - match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) ); - match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" ); - - // other types prohibit arguments - } else if ( match[3] ) { - Sizzle.error( match[0] ); - } - - return match; - }, - - "PSEUDO": function( match ) { - var excess, - unquoted = !match[6] && match[2]; - - if ( matchExpr["CHILD"].test( match[0] ) ) { - return null; - } - - // Accept quoted arguments as-is - if ( match[3] ) { - match[2] = match[4] || match[5] || ""; - - // Strip excess characters from unquoted arguments - } else if ( unquoted && rpseudo.test( unquoted ) && - // Get excess from tokenize (recursively) - (excess = tokenize( unquoted, true )) && - // advance to the next closing parenthesis - (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { - - // excess is a negative index - match[0] = match[0].slice( 0, excess ); - match[2] = unquoted.slice( 0, excess ); - } - - // Return only captures needed by the pseudo filter method (type and argument) - return match.slice( 0, 3 ); - } - }, - - filter: { - - "TAG": function( nodeNameSelector ) { - var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); - return nodeNameSelector === "*" ? - function() { return true; } : - function( elem ) { - return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; - }; - }, - - "CLASS": function( className ) { - var pattern = classCache[ className + " " ]; - - return pattern || - (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && - classCache( className, function( elem ) { - return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" ); - }); - }, - - "ATTR": function( name, operator, check ) { - return function( elem ) { - var result = Sizzle.attr( elem, name ); - - if ( result == null ) { - return operator === "!="; - } - if ( !operator ) { - return true; - } - - result += ""; - - return operator === "=" ? result === check : - operator === "!=" ? result !== check : - operator === "^=" ? check && result.indexOf( check ) === 0 : - operator === "*=" ? check && result.indexOf( check ) > -1 : - operator === "$=" ? check && result.slice( -check.length ) === check : - operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : - operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : - false; - }; - }, - - "CHILD": function( type, what, argument, first, last ) { - var simple = type.slice( 0, 3 ) !== "nth", - forward = type.slice( -4 ) !== "last", - ofType = what === "of-type"; - - return first === 1 && last === 0 ? - - // Shortcut for :nth-*(n) - function( elem ) { - return !!elem.parentNode; - } : - - function( elem, context, xml ) { - var cache, uniqueCache, outerCache, node, nodeIndex, start, - dir = simple !== forward ? "nextSibling" : "previousSibling", - parent = elem.parentNode, - name = ofType && elem.nodeName.toLowerCase(), - useCache = !xml && !ofType, - diff = false; - - if ( parent ) { - - // :(first|last|only)-(child|of-type) - if ( simple ) { - while ( dir ) { - node = elem; - while ( (node = node[ dir ]) ) { - if ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) { - - return false; - } - } - // Reverse direction for :only-* (if we haven't yet done so) - start = dir = type === "only" && !start && "nextSibling"; - } - return true; - } - - start = [ forward ? parent.firstChild : parent.lastChild ]; - - // non-xml :nth-child(...) stores cache data on `parent` - if ( forward && useCache ) { - - // Seek `elem` from a previously-cached index - - // ...in a gzip-friendly way - node = parent; - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex && cache[ 2 ]; - node = nodeIndex && parent.childNodes[ nodeIndex ]; - - while ( (node = ++nodeIndex && node && node[ dir ] || - - // Fallback to seeking `elem` from the start - (diff = nodeIndex = 0) || start.pop()) ) { - - // When found, cache indexes on `parent` and break - if ( node.nodeType === 1 && ++diff && node === elem ) { - uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; - break; - } - } - - } else { - // Use previously-cached element index if available - if ( useCache ) { - // ...in a gzip-friendly way - node = elem; - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - cache = uniqueCache[ type ] || []; - nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; - diff = nodeIndex; - } - - // xml :nth-child(...) - // or :nth-last-child(...) or :nth(-last)?-of-type(...) - if ( diff === false ) { - // Use the same loop as above to seek `elem` from the start - while ( (node = ++nodeIndex && node && node[ dir ] || - (diff = nodeIndex = 0) || start.pop()) ) { - - if ( ( ofType ? - node.nodeName.toLowerCase() === name : - node.nodeType === 1 ) && - ++diff ) { - - // Cache the index of each encountered element - if ( useCache ) { - outerCache = node[ expando ] || (node[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ node.uniqueID ] || - (outerCache[ node.uniqueID ] = {}); - - uniqueCache[ type ] = [ dirruns, diff ]; - } - - if ( node === elem ) { - break; - } - } - } - } - } - - // Incorporate the offset, then check against cycle size - diff -= last; - return diff === first || ( diff % first === 0 && diff / first >= 0 ); - } - }; - }, - - "PSEUDO": function( pseudo, argument ) { - // pseudo-class names are case-insensitive - // http://www.w3.org/TR/selectors/#pseudo-classes - // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters - // Remember that setFilters inherits from pseudos - var args, - fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || - Sizzle.error( "unsupported pseudo: " + pseudo ); - - // The user may use createPseudo to indicate that - // arguments are needed to create the filter function - // just as Sizzle does - if ( fn[ expando ] ) { - return fn( argument ); - } - - // But maintain support for old signatures - if ( fn.length > 1 ) { - args = [ pseudo, pseudo, "", argument ]; - return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? - markFunction(function( seed, matches ) { - var idx, - matched = fn( seed, argument ), - i = matched.length; - while ( i-- ) { - idx = indexOf( seed, matched[i] ); - seed[ idx ] = !( matches[ idx ] = matched[i] ); - } - }) : - function( elem ) { - return fn( elem, 0, args ); - }; - } - - return fn; - } - }, - - pseudos: { - // Potentially complex pseudos - "not": markFunction(function( selector ) { - // Trim the selector passed to compile - // to avoid treating leading and trailing - // spaces as combinators - var input = [], - results = [], - matcher = compile( selector.replace( rtrim, "$1" ) ); - - return matcher[ expando ] ? - markFunction(function( seed, matches, context, xml ) { - var elem, - unmatched = matcher( seed, null, xml, [] ), - i = seed.length; - - // Match elements unmatched by `matcher` - while ( i-- ) { - if ( (elem = unmatched[i]) ) { - seed[i] = !(matches[i] = elem); - } - } - }) : - function( elem, context, xml ) { - input[0] = elem; - matcher( input, null, xml, results ); - // Don't keep the element (issue #299) - input[0] = null; - return !results.pop(); - }; - }), - - "has": markFunction(function( selector ) { - return function( elem ) { - return Sizzle( selector, elem ).length > 0; - }; - }), - - "contains": markFunction(function( text ) { - text = text.replace( runescape, funescape ); - return function( elem ) { - return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; - }; - }), - - // "Whether an element is represented by a :lang() selector - // is based solely on the element's language value - // being equal to the identifier C, - // or beginning with the identifier C immediately followed by "-". - // The matching of C against the element's language value is performed case-insensitively. - // The identifier C does not have to be a valid language name." - // http://www.w3.org/TR/selectors/#lang-pseudo - "lang": markFunction( function( lang ) { - // lang value must be a valid identifier - if ( !ridentifier.test(lang || "") ) { - Sizzle.error( "unsupported lang: " + lang ); - } - lang = lang.replace( runescape, funescape ).toLowerCase(); - return function( elem ) { - var elemLang; - do { - if ( (elemLang = documentIsHTML ? - elem.lang : - elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) { - - elemLang = elemLang.toLowerCase(); - return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; - } - } while ( (elem = elem.parentNode) && elem.nodeType === 1 ); - return false; - }; - }), - - // Miscellaneous - "target": function( elem ) { - var hash = window.location && window.location.hash; - return hash && hash.slice( 1 ) === elem.id; - }, - - "root": function( elem ) { - return elem === docElem; - }, - - "focus": function( elem ) { - return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); - }, - - // Boolean properties - "enabled": function( elem ) { - return elem.disabled === false; - }, - - "disabled": function( elem ) { - return elem.disabled === true; - }, - - "checked": function( elem ) { - // In CSS3, :checked should return both checked and selected elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - var nodeName = elem.nodeName.toLowerCase(); - return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); - }, - - "selected": function( elem ) { - // Accessing this property makes selected-by-default - // options in Safari work properly - if ( elem.parentNode ) { - elem.parentNode.selectedIndex; - } - - return elem.selected === true; - }, - - // Contents - "empty": function( elem ) { - // http://www.w3.org/TR/selectors/#empty-pseudo - // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), - // but not by others (comment: 8; processing instruction: 7; etc.) - // nodeType < 6 works because attributes (2) do not appear as children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - if ( elem.nodeType < 6 ) { - return false; - } - } - return true; - }, - - "parent": function( elem ) { - return !Expr.pseudos["empty"]( elem ); - }, - - // Element/input types - "header": function( elem ) { - return rheader.test( elem.nodeName ); - }, - - "input": function( elem ) { - return rinputs.test( elem.nodeName ); - }, - - "button": function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === "button" || name === "button"; - }, - - "text": function( elem ) { - var attr; - return elem.nodeName.toLowerCase() === "input" && - elem.type === "text" && - - // Support: IE<8 - // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" - ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" ); - }, - - // Position-in-collection - "first": createPositionalPseudo(function() { - return [ 0 ]; - }), - - "last": createPositionalPseudo(function( matchIndexes, length ) { - return [ length - 1 ]; - }), - - "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { - return [ argument < 0 ? argument + length : argument ]; - }), - - "even": createPositionalPseudo(function( matchIndexes, length ) { - var i = 0; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "odd": createPositionalPseudo(function( matchIndexes, length ) { - var i = 1; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; --i >= 0; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; ++i < length; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }) - } -}; - -Expr.pseudos["nth"] = Expr.pseudos["eq"]; - -// Add button/input type pseudos -for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { - Expr.pseudos[ i ] = createInputPseudo( i ); -} -for ( i in { submit: true, reset: true } ) { - Expr.pseudos[ i ] = createButtonPseudo( i ); -} - -// Easy API for creating new setFilters -function setFilters() {} -setFilters.prototype = Expr.filters = Expr.pseudos; -Expr.setFilters = new setFilters(); - -tokenize = Sizzle.tokenize = function( selector, parseOnly ) { - var matched, match, tokens, type, - soFar, groups, preFilters, - cached = tokenCache[ selector + " " ]; - - if ( cached ) { - return parseOnly ? 0 : cached.slice( 0 ); - } - - soFar = selector; - groups = []; - preFilters = Expr.preFilter; - - while ( soFar ) { - - // Comma and first run - if ( !matched || (match = rcomma.exec( soFar )) ) { - if ( match ) { - // Don't consume trailing commas as valid - soFar = soFar.slice( match[0].length ) || soFar; - } - groups.push( (tokens = []) ); - } - - matched = false; - - // Combinators - if ( (match = rcombinators.exec( soFar )) ) { - matched = match.shift(); - tokens.push({ - value: matched, - // Cast descendant combinators to space - type: match[0].replace( rtrim, " " ) - }); - soFar = soFar.slice( matched.length ); - } - - // Filters - for ( type in Expr.filter ) { - if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || - (match = preFilters[ type ]( match ))) ) { - matched = match.shift(); - tokens.push({ - value: matched, - type: type, - matches: match - }); - soFar = soFar.slice( matched.length ); - } - } - - if ( !matched ) { - break; - } - } - - // Return the length of the invalid excess - // if we're just parsing - // Otherwise, throw an error or return tokens - return parseOnly ? - soFar.length : - soFar ? - Sizzle.error( selector ) : - // Cache the tokens - tokenCache( selector, groups ).slice( 0 ); -}; - -function toSelector( tokens ) { - var i = 0, - len = tokens.length, - selector = ""; - for ( ; i < len; i++ ) { - selector += tokens[i].value; - } - return selector; -} - -function addCombinator( matcher, combinator, base ) { - var dir = combinator.dir, - checkNonElements = base && dir === "parentNode", - doneName = done++; - - return combinator.first ? - // Check against closest ancestor/preceding element - function( elem, context, xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - return matcher( elem, context, xml ); - } - } - } : - - // Check against all ancestor/preceding elements - function( elem, context, xml ) { - var oldCache, uniqueCache, outerCache, - newCache = [ dirruns, doneName ]; - - // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching - if ( xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - if ( matcher( elem, context, xml ) ) { - return true; - } - } - } - } else { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - outerCache = elem[ expando ] || (elem[ expando ] = {}); - - // Support: IE <9 only - // Defend against cloned attroperties (jQuery gh-1709) - uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {}); - - if ( (oldCache = uniqueCache[ dir ]) && - oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { - - // Assign to newCache so results back-propagate to previous elements - return (newCache[ 2 ] = oldCache[ 2 ]); - } else { - // Reuse newcache so results back-propagate to previous elements - uniqueCache[ dir ] = newCache; - - // A match means we're done; a fail means we have to keep checking - if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { - return true; - } - } - } - } - } - }; -} - -function elementMatcher( matchers ) { - return matchers.length > 1 ? - function( elem, context, xml ) { - var i = matchers.length; - while ( i-- ) { - if ( !matchers[i]( elem, context, xml ) ) { - return false; - } - } - return true; - } : - matchers[0]; -} - -function multipleContexts( selector, contexts, results ) { - var i = 0, - len = contexts.length; - for ( ; i < len; i++ ) { - Sizzle( selector, contexts[i], results ); - } - return results; -} - -function condense( unmatched, map, filter, context, xml ) { - var elem, - newUnmatched = [], - i = 0, - len = unmatched.length, - mapped = map != null; - - for ( ; i < len; i++ ) { - if ( (elem = unmatched[i]) ) { - if ( !filter || filter( elem, context, xml ) ) { - newUnmatched.push( elem ); - if ( mapped ) { - map.push( i ); - } - } - } - } - - return newUnmatched; -} - -function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { - if ( postFilter && !postFilter[ expando ] ) { - postFilter = setMatcher( postFilter ); - } - if ( postFinder && !postFinder[ expando ] ) { - postFinder = setMatcher( postFinder, postSelector ); - } - return markFunction(function( seed, results, context, xml ) { - var temp, i, elem, - preMap = [], - postMap = [], - preexisting = results.length, - - // Get initial elements from seed or context - elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), - - // Prefilter to get matcher input, preserving a map for seed-results synchronization - matcherIn = preFilter && ( seed || !selector ) ? - condense( elems, preMap, preFilter, context, xml ) : - elems, - - matcherOut = matcher ? - // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, - postFinder || ( seed ? preFilter : preexisting || postFilter ) ? - - // ...intermediate processing is necessary - [] : - - // ...otherwise use results directly - results : - matcherIn; - - // Find primary matches - if ( matcher ) { - matcher( matcherIn, matcherOut, context, xml ); - } - - // Apply postFilter - if ( postFilter ) { - temp = condense( matcherOut, postMap ); - postFilter( temp, [], context, xml ); - - // Un-match failing elements by moving them back to matcherIn - i = temp.length; - while ( i-- ) { - if ( (elem = temp[i]) ) { - matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); - } - } - } - - if ( seed ) { - if ( postFinder || preFilter ) { - if ( postFinder ) { - // Get the final matcherOut by condensing this intermediate into postFinder contexts - temp = []; - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) ) { - // Restore matcherIn since elem is not yet a final match - temp.push( (matcherIn[i] = elem) ); - } - } - postFinder( null, (matcherOut = []), temp, xml ); - } - - // Move matched elements from seed to results to keep them synchronized - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) && - (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) { - - seed[temp] = !(results[temp] = elem); - } - } - } - - // Add elements to results, through postFinder if defined - } else { - matcherOut = condense( - matcherOut === results ? - matcherOut.splice( preexisting, matcherOut.length ) : - matcherOut - ); - if ( postFinder ) { - postFinder( null, results, matcherOut, xml ); - } else { - push.apply( results, matcherOut ); - } - } - }); -} - -function matcherFromTokens( tokens ) { - var checkContext, matcher, j, - len = tokens.length, - leadingRelative = Expr.relative[ tokens[0].type ], - implicitRelative = leadingRelative || Expr.relative[" "], - i = leadingRelative ? 1 : 0, - - // The foundational matcher ensures that elements are reachable from top-level context(s) - matchContext = addCombinator( function( elem ) { - return elem === checkContext; - }, implicitRelative, true ), - matchAnyContext = addCombinator( function( elem ) { - return indexOf( checkContext, elem ) > -1; - }, implicitRelative, true ), - matchers = [ function( elem, context, xml ) { - var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( - (checkContext = context).nodeType ? - matchContext( elem, context, xml ) : - matchAnyContext( elem, context, xml ) ); - // Avoid hanging onto element (issue #299) - checkContext = null; - return ret; - } ]; - - for ( ; i < len; i++ ) { - if ( (matcher = Expr.relative[ tokens[i].type ]) ) { - matchers = [ addCombinator(elementMatcher( matchers ), matcher) ]; - } else { - matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); - - // Return special upon seeing a positional matcher - if ( matcher[ expando ] ) { - // Find the next relative operator (if any) for proper handling - j = ++i; - for ( ; j < len; j++ ) { - if ( Expr.relative[ tokens[j].type ] ) { - break; - } - } - return setMatcher( - i > 1 && elementMatcher( matchers ), - i > 1 && toSelector( - // If the preceding token was a descendant combinator, insert an implicit any-element `*` - tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" }) - ).replace( rtrim, "$1" ), - matcher, - i < j && matcherFromTokens( tokens.slice( i, j ) ), - j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), - j < len && toSelector( tokens ) - ); - } - matchers.push( matcher ); - } - } - - return elementMatcher( matchers ); -} - -function matcherFromGroupMatchers( elementMatchers, setMatchers ) { - var bySet = setMatchers.length > 0, - byElement = elementMatchers.length > 0, - superMatcher = function( seed, context, xml, results, outermost ) { - var elem, j, matcher, - matchedCount = 0, - i = "0", - unmatched = seed && [], - setMatched = [], - contextBackup = outermostContext, - // We must always have either seed elements or outermost context - elems = seed || byElement && Expr.find["TAG"]( "*", outermost ), - // Use integer dirruns iff this is the outermost matcher - dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1), - len = elems.length; - - if ( outermost ) { - outermostContext = context === document || context || outermost; - } - - // Add elements passing elementMatchers directly to results - // Support: IE<9, Safari - // Tolerate NodeList properties (IE: "length"; Safari: <number>) matching elements by id - for ( ; i !== len && (elem = elems[i]) != null; i++ ) { - if ( byElement && elem ) { - j = 0; - if ( !context && elem.ownerDocument !== document ) { - setDocument( elem ); - xml = !documentIsHTML; - } - while ( (matcher = elementMatchers[j++]) ) { - if ( matcher( elem, context || document, xml) ) { - results.push( elem ); - break; - } - } - if ( outermost ) { - dirruns = dirrunsUnique; - } - } - - // Track unmatched elements for set filters - if ( bySet ) { - // They will have gone through all possible matchers - if ( (elem = !matcher && elem) ) { - matchedCount--; - } - - // Lengthen the array for every element, matched or not - if ( seed ) { - unmatched.push( elem ); - } - } - } - - // `i` is now the count of elements visited above, and adding it to `matchedCount` - // makes the latter nonnegative. - matchedCount += i; - - // Apply set filters to unmatched elements - // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` - // equals `i`), unless we didn't visit _any_ elements in the above loop because we have - // no element matchers and no seed. - // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that - // case, which will result in a "00" `matchedCount` that differs from `i` but is also - // numerically zero. - if ( bySet && i !== matchedCount ) { - j = 0; - while ( (matcher = setMatchers[j++]) ) { - matcher( unmatched, setMatched, context, xml ); - } - - if ( seed ) { - // Reintegrate element matches to eliminate the need for sorting - if ( matchedCount > 0 ) { - while ( i-- ) { - if ( !(unmatched[i] || setMatched[i]) ) { - setMatched[i] = pop.call( results ); - } - } - } - - // Discard index placeholder values to get only actual matches - setMatched = condense( setMatched ); - } - - // Add matches to results - push.apply( results, setMatched ); - - // Seedless set matches succeeding multiple successful matchers stipulate sorting - if ( outermost && !seed && setMatched.length > 0 && - ( matchedCount + setMatchers.length ) > 1 ) { - - Sizzle.uniqueSort( results ); - } - } - - // Override manipulation of globals by nested matchers - if ( outermost ) { - dirruns = dirrunsUnique; - outermostContext = contextBackup; - } - - return unmatched; - }; - - return bySet ? - markFunction( superMatcher ) : - superMatcher; -} - -compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { - var i, - setMatchers = [], - elementMatchers = [], - cached = compilerCache[ selector + " " ]; - - if ( !cached ) { - // Generate a function of recursive functions that can be used to check each element - if ( !match ) { - match = tokenize( selector ); - } - i = match.length; - while ( i-- ) { - cached = matcherFromTokens( match[i] ); - if ( cached[ expando ] ) { - setMatchers.push( cached ); - } else { - elementMatchers.push( cached ); - } - } - - // Cache the compiled function - cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); - - // Save selector and tokenization - cached.selector = selector; - } - return cached; -}; - -/** - * A low-level selection function that works with Sizzle's compiled - * selector functions - * @param {String|Function} selector A selector or a pre-compiled - * selector function built with Sizzle.compile - * @param {Element} context - * @param {Array} [results] - * @param {Array} [seed] A set of elements to match against - */ -select = Sizzle.select = function( selector, context, results, seed ) { - var i, tokens, token, type, find, - compiled = typeof selector === "function" && selector, - match = !seed && tokenize( (selector = compiled.selector || selector) ); - - results = results || []; - - // Try to minimize operations if there is only one selector in the list and no seed - // (the latter of which guarantees us context) - if ( match.length === 1 ) { - - // Reduce context if the leading compound selector is an ID - tokens = match[0] = match[0].slice( 0 ); - if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && - support.getById && context.nodeType === 9 && documentIsHTML && - Expr.relative[ tokens[1].type ] ) { - - context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0]; - if ( !context ) { - return results; - - // Precompiled matchers will still verify ancestry, so step up a level - } else if ( compiled ) { - context = context.parentNode; - } - - selector = selector.slice( tokens.shift().value.length ); - } - - // Fetch a seed set for right-to-left matching - i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length; - while ( i-- ) { - token = tokens[i]; - - // Abort if we hit a combinator - if ( Expr.relative[ (type = token.type) ] ) { - break; - } - if ( (find = Expr.find[ type ]) ) { - // Search, expanding context for leading sibling combinators - if ( (seed = find( - token.matches[0].replace( runescape, funescape ), - rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context - )) ) { - - // If seed is empty or no tokens remain, we can return early - tokens.splice( i, 1 ); - selector = seed.length && toSelector( tokens ); - if ( !selector ) { - push.apply( results, seed ); - return results; - } - - break; - } - } - } - } - - // Compile and execute a filtering function if one is not provided - // Provide `match` to avoid retokenization if we modified the selector above - ( compiled || compile( selector, match ) )( - seed, - context, - !documentIsHTML, - results, - !context || rsibling.test( selector ) && testContext( context.parentNode ) || context - ); - return results; -}; - -// One-time assignments - -// Sort stability -support.sortStable = expando.split("").sort( sortOrder ).join("") === expando; - -// Support: Chrome 14-35+ -// Always assume duplicates if they aren't passed to the comparison function -support.detectDuplicates = !!hasDuplicate; - -// Initialize against the default document -setDocument(); - -// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) -// Detached nodes confoundingly follow *each other* -support.sortDetached = assert(function( div1 ) { - // Should return 1, but returns 4 (following) - return div1.compareDocumentPosition( document.createElement("div") ) & 1; -}); - -// Support: IE<8 -// Prevent attribute/property "interpolation" -// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx -if ( !assert(function( div ) { - div.innerHTML = "<a href='#'></a>"; - return div.firstChild.getAttribute("href") === "#" ; -}) ) { - addHandle( "type|href|height|width", function( elem, name, isXML ) { - if ( !isXML ) { - return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); - } - }); -} - -// Support: IE<9 -// Use defaultValue in place of getAttribute("value") -if ( !support.attributes || !assert(function( div ) { - div.innerHTML = "<input/>"; - div.firstChild.setAttribute( "value", "" ); - return div.firstChild.getAttribute( "value" ) === ""; -}) ) { - addHandle( "value", function( elem, name, isXML ) { - if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { - return elem.defaultValue; - } - }); -} - -// Support: IE<9 -// Use getAttributeNode to fetch booleans when getAttribute lies -if ( !assert(function( div ) { - return div.getAttribute("disabled") == null; -}) ) { - addHandle( booleans, function( elem, name, isXML ) { - var val; - if ( !isXML ) { - return elem[ name ] === true ? name.toLowerCase() : - (val = elem.getAttributeNode( name )) && val.specified ? - val.value : - null; - } - }); -} - -return Sizzle; - -})( window ); - - - -jQuery.find = Sizzle; -jQuery.expr = Sizzle.selectors; -jQuery.expr[ ":" ] = jQuery.expr.pseudos; -jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; -jQuery.text = Sizzle.getText; -jQuery.isXMLDoc = Sizzle.isXML; -jQuery.contains = Sizzle.contains; - - - -var dir = function( elem, dir, until ) { - var matched = [], - truncate = until !== undefined; - - while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { - if ( elem.nodeType === 1 ) { - if ( truncate && jQuery( elem ).is( until ) ) { - break; - } - matched.push( elem ); - } - } - return matched; -}; - - -var siblings = function( n, elem ) { - var matched = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType === 1 && n !== elem ) { - matched.push( n ); - } - } - - return matched; -}; - - -var rneedsContext = jQuery.expr.match.needsContext; - -var rsingleTag = ( /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/ ); - - - -var risSimple = /^.[^:#\[\.,]*$/; - -// Implement the identical functionality for filter and not -function winnow( elements, qualifier, not ) { - if ( jQuery.isFunction( qualifier ) ) { - return jQuery.grep( elements, function( elem, i ) { - /* jshint -W018 */ - return !!qualifier.call( elem, i, elem ) !== not; - } ); - - } - - if ( qualifier.nodeType ) { - return jQuery.grep( elements, function( elem ) { - return ( elem === qualifier ) !== not; - } ); - - } - - if ( typeof qualifier === "string" ) { - if ( risSimple.test( qualifier ) ) { - return jQuery.filter( qualifier, elements, not ); - } - - qualifier = jQuery.filter( qualifier, elements ); - } - - return jQuery.grep( elements, function( elem ) { - return ( jQuery.inArray( elem, qualifier ) > -1 ) !== not; - } ); -} - -jQuery.filter = function( expr, elems, not ) { - var elem = elems[ 0 ]; - - if ( not ) { - expr = ":not(" + expr + ")"; - } - - return elems.length === 1 && elem.nodeType === 1 ? - jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] : - jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { - return elem.nodeType === 1; - } ) ); -}; - -jQuery.fn.extend( { - find: function( selector ) { - var i, - ret = [], - self = this, - len = self.length; - - if ( typeof selector !== "string" ) { - return this.pushStack( jQuery( selector ).filter( function() { - for ( i = 0; i < len; i++ ) { - if ( jQuery.contains( self[ i ], this ) ) { - return true; - } - } - } ) ); - } - - for ( i = 0; i < len; i++ ) { - jQuery.find( selector, self[ i ], ret ); - } - - // Needed because $( selector, context ) becomes $( context ).find( selector ) - ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret ); - ret.selector = this.selector ? this.selector + " " + selector : selector; - return ret; - }, - filter: function( selector ) { - return this.pushStack( winnow( this, selector || [], false ) ); - }, - not: function( selector ) { - return this.pushStack( winnow( this, selector || [], true ) ); - }, - is: function( selector ) { - return !!winnow( - this, - - // If this is a positional/relative selector, check membership in the returned set - // so $("p:first").is("p:last") won't return true for a doc with two "p". - typeof selector === "string" && rneedsContext.test( selector ) ? - jQuery( selector ) : - selector || [], - false - ).length; - } -} ); - - -// Initialize a jQuery object - - -// A central reference to the root jQuery(document) -var rootjQuery, - - // A simple way to check for HTML strings - // Prioritize #id over <tag> to avoid XSS via location.hash (#9521) - // Strict HTML recognition (#11290: must start with <) - rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, - - init = jQuery.fn.init = function( selector, context, root ) { - var match, elem; - - // HANDLE: $(""), $(null), $(undefined), $(false) - if ( !selector ) { - return this; - } - - // init accepts an alternate rootjQuery - // so migrate can support jQuery.sub (gh-2101) - root = root || rootjQuery; - - // Handle HTML strings - if ( typeof selector === "string" ) { - if ( selector.charAt( 0 ) === "<" && - selector.charAt( selector.length - 1 ) === ">" && - selector.length >= 3 ) { - - // Assume that strings that start and end with <> are HTML and skip the regex check - match = [ null, selector, null ]; - - } else { - match = rquickExpr.exec( selector ); - } - - // Match html or make sure no context is specified for #id - if ( match && ( match[ 1 ] || !context ) ) { - - // HANDLE: $(html) -> $(array) - if ( match[ 1 ] ) { - context = context instanceof jQuery ? context[ 0 ] : context; - - // scripts is true for back-compat - // Intentionally let the error be thrown if parseHTML is not present - jQuery.merge( this, jQuery.parseHTML( - match[ 1 ], - context && context.nodeType ? context.ownerDocument || context : document, - true - ) ); - - // HANDLE: $(html, props) - if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { - for ( match in context ) { - - // Properties of context are called as methods if possible - if ( jQuery.isFunction( this[ match ] ) ) { - this[ match ]( context[ match ] ); - - // ...and otherwise set as attributes - } else { - this.attr( match, context[ match ] ); - } - } - } - - return this; - - // HANDLE: $(#id) - } else { - elem = document.getElementById( match[ 2 ] ); - - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - if ( elem && elem.parentNode ) { - - // Handle the case where IE and Opera return items - // by name instead of ID - if ( elem.id !== match[ 2 ] ) { - return rootjQuery.find( selector ); - } - - // Otherwise, we inject the element directly into the jQuery object - this.length = 1; - this[ 0 ] = elem; - } - - this.context = document; - this.selector = selector; - return this; - } - - // HANDLE: $(expr, $(...)) - } else if ( !context || context.jquery ) { - return ( context || root ).find( selector ); - - // HANDLE: $(expr, context) - // (which is just equivalent to: $(context).find(expr) - } else { - return this.constructor( context ).find( selector ); - } - - // HANDLE: $(DOMElement) - } else if ( selector.nodeType ) { - this.context = this[ 0 ] = selector; - this.length = 1; - return this; - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( jQuery.isFunction( selector ) ) { - return typeof root.ready !== "undefined" ? - root.ready( selector ) : - - // Execute immediately if ready is not present - selector( jQuery ); - } - - if ( selector.selector !== undefined ) { - this.selector = selector.selector; - this.context = selector.context; - } - - return jQuery.makeArray( selector, this ); - }; - -// Give the init function the jQuery prototype for later instantiation -init.prototype = jQuery.fn; - -// Initialize central reference -rootjQuery = jQuery( document ); - - -var rparentsprev = /^(?:parents|prev(?:Until|All))/, - - // methods guaranteed to produce a unique set when starting from a unique set - guaranteedUnique = { - children: true, - contents: true, - next: true, - prev: true - }; - -jQuery.fn.extend( { - has: function( target ) { - var i, - targets = jQuery( target, this ), - len = targets.length; - - return this.filter( function() { - for ( i = 0; i < len; i++ ) { - if ( jQuery.contains( this, targets[ i ] ) ) { - return true; - } - } - } ); - }, - - closest: function( selectors, context ) { - var cur, - i = 0, - l = this.length, - matched = [], - pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ? - jQuery( selectors, context || this.context ) : - 0; - - for ( ; i < l; i++ ) { - for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { - - // Always skip document fragments - if ( cur.nodeType < 11 && ( pos ? - pos.index( cur ) > -1 : - - // Don't pass non-elements to Sizzle - cur.nodeType === 1 && - jQuery.find.matchesSelector( cur, selectors ) ) ) { - - matched.push( cur ); - break; - } - } - } - - return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); - }, - - // Determine the position of an element within - // the matched set of elements - index: function( elem ) { - - // No argument, return index in parent - if ( !elem ) { - return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; - } - - // index in selector - if ( typeof elem === "string" ) { - return jQuery.inArray( this[ 0 ], jQuery( elem ) ); - } - - // Locate the position of the desired element - return jQuery.inArray( - - // If it receives a jQuery object, the first element is used - elem.jquery ? elem[ 0 ] : elem, this ); - }, - - add: function( selector, context ) { - return this.pushStack( - jQuery.uniqueSort( - jQuery.merge( this.get(), jQuery( selector, context ) ) - ) - ); - }, - - addBack: function( selector ) { - return this.add( selector == null ? - this.prevObject : this.prevObject.filter( selector ) - ); - } -} ); - -function sibling( cur, dir ) { - do { - cur = cur[ dir ]; - } while ( cur && cur.nodeType !== 1 ); - - return cur; -} - -jQuery.each( { - parent: function( elem ) { - var parent = elem.parentNode; - return parent && parent.nodeType !== 11 ? parent : null; - }, - parents: function( elem ) { - return dir( elem, "parentNode" ); - }, - parentsUntil: function( elem, i, until ) { - return dir( elem, "parentNode", until ); - }, - next: function( elem ) { - return sibling( elem, "nextSibling" ); - }, - prev: function( elem ) { - return sibling( elem, "previousSibling" ); - }, - nextAll: function( elem ) { - return dir( elem, "nextSibling" ); - }, - prevAll: function( elem ) { - return dir( elem, "previousSibling" ); - }, - nextUntil: function( elem, i, until ) { - return dir( elem, "nextSibling", until ); - }, - prevUntil: function( elem, i, until ) { - return dir( elem, "previousSibling", until ); - }, - siblings: function( elem ) { - return siblings( ( elem.parentNode || {} ).firstChild, elem ); - }, - children: function( elem ) { - return siblings( elem.firstChild ); - }, - contents: function( elem ) { - return jQuery.nodeName( elem, "iframe" ) ? - elem.contentDocument || elem.contentWindow.document : - jQuery.merge( [], elem.childNodes ); - } -}, function( name, fn ) { - jQuery.fn[ name ] = function( until, selector ) { - var ret = jQuery.map( this, fn, until ); - - if ( name.slice( -5 ) !== "Until" ) { - selector = until; - } - - if ( selector && typeof selector === "string" ) { - ret = jQuery.filter( selector, ret ); - } - - if ( this.length > 1 ) { - - // Remove duplicates - if ( !guaranteedUnique[ name ] ) { - ret = jQuery.uniqueSort( ret ); - } - - // Reverse order for parents* and prev-derivatives - if ( rparentsprev.test( name ) ) { - ret = ret.reverse(); - } - } - - return this.pushStack( ret ); - }; -} ); -var rnotwhite = ( /\S+/g ); - - - -// Convert String-formatted options into Object-formatted ones -function createOptions( options ) { - var object = {}; - jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) { - object[ flag ] = true; - } ); - return object; -} - -/* - * Create a callback list using the following parameters: - * - * options: an optional list of space-separated options that will change how - * the callback list behaves or a more traditional option object - * - * By default a callback list will act like an event callback list and can be - * "fired" multiple times. - * - * Possible options: - * - * once: will ensure the callback list can only be fired once (like a Deferred) - * - * memory: will keep track of previous values and will call any callback added - * after the list has been fired right away with the latest "memorized" - * values (like a Deferred) - * - * unique: will ensure a callback can only be added once (no duplicate in the list) - * - * stopOnFalse: interrupt callings when a callback returns false - * - */ -jQuery.Callbacks = function( options ) { - - // Convert options from String-formatted to Object-formatted if needed - // (we check in cache first) - options = typeof options === "string" ? - createOptions( options ) : - jQuery.extend( {}, options ); - - var // Flag to know if list is currently firing - firing, - - // Last fire value for non-forgettable lists - memory, - - // Flag to know if list was already fired - fired, - - // Flag to prevent firing - locked, - - // Actual callback list - list = [], - - // Queue of execution data for repeatable lists - queue = [], - - // Index of currently firing callback (modified by add/remove as needed) - firingIndex = -1, - - // Fire callbacks - fire = function() { - - // Enforce single-firing - locked = options.once; - - // Execute callbacks for all pending executions, - // respecting firingIndex overrides and runtime changes - fired = firing = true; - for ( ; queue.length; firingIndex = -1 ) { - memory = queue.shift(); - while ( ++firingIndex < list.length ) { - - // Run callback and check for early termination - if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && - options.stopOnFalse ) { - - // Jump to end and forget the data so .add doesn't re-fire - firingIndex = list.length; - memory = false; - } - } - } - - // Forget the data if we're done with it - if ( !options.memory ) { - memory = false; - } - - firing = false; - - // Clean up if we're done firing for good - if ( locked ) { - - // Keep an empty list if we have data for future add calls - if ( memory ) { - list = []; - - // Otherwise, this object is spent - } else { - list = ""; - } - } - }, - - // Actual Callbacks object - self = { - - // Add a callback or a collection of callbacks to the list - add: function() { - if ( list ) { - - // If we have memory from a past run, we should fire after adding - if ( memory && !firing ) { - firingIndex = list.length - 1; - queue.push( memory ); - } - - ( function add( args ) { - jQuery.each( args, function( _, arg ) { - if ( jQuery.isFunction( arg ) ) { - if ( !options.unique || !self.has( arg ) ) { - list.push( arg ); - } - } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) { - - // Inspect recursively - add( arg ); - } - } ); - } )( arguments ); - - if ( memory && !firing ) { - fire(); - } - } - return this; - }, - - // Remove a callback from the list - remove: function() { - jQuery.each( arguments, function( _, arg ) { - var index; - while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { - list.splice( index, 1 ); - - // Handle firing indexes - if ( index <= firingIndex ) { - firingIndex--; - } - } - } ); - return this; - }, - - // Check if a given callback is in the list. - // If no argument is given, return whether or not list has callbacks attached. - has: function( fn ) { - return fn ? - jQuery.inArray( fn, list ) > -1 : - list.length > 0; - }, - - // Remove all callbacks from the list - empty: function() { - if ( list ) { - list = []; - } - return this; - }, - - // Disable .fire and .add - // Abort any current/pending executions - // Clear all callbacks and values - disable: function() { - locked = queue = []; - list = memory = ""; - return this; - }, - disabled: function() { - return !list; - }, - - // Disable .fire - // Also disable .add unless we have memory (since it would have no effect) - // Abort any pending executions - lock: function() { - locked = true; - if ( !memory ) { - self.disable(); - } - return this; - }, - locked: function() { - return !!locked; - }, - - // Call all callbacks with the given context and arguments - fireWith: function( context, args ) { - if ( !locked ) { - args = args || []; - args = [ context, args.slice ? args.slice() : args ]; - queue.push( args ); - if ( !firing ) { - fire(); - } - } - return this; - }, - - // Call all the callbacks with the given arguments - fire: function() { - self.fireWith( this, arguments ); - return this; - }, - - // To know if the callbacks have already been called at least once - fired: function() { - return !!fired; - } - }; - - return self; -}; - - -jQuery.extend( { - - Deferred: function( func ) { - var tuples = [ - - // action, add listener, listener list, final state - [ "resolve", "done", jQuery.Callbacks( "once memory" ), "resolved" ], - [ "reject", "fail", jQuery.Callbacks( "once memory" ), "rejected" ], - [ "notify", "progress", jQuery.Callbacks( "memory" ) ] - ], - state = "pending", - promise = { - state: function() { - return state; - }, - always: function() { - deferred.done( arguments ).fail( arguments ); - return this; - }, - then: function( /* fnDone, fnFail, fnProgress */ ) { - var fns = arguments; - return jQuery.Deferred( function( newDefer ) { - jQuery.each( tuples, function( i, tuple ) { - var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ]; - - // deferred[ done | fail | progress ] for forwarding actions to newDefer - deferred[ tuple[ 1 ] ]( function() { - var returned = fn && fn.apply( this, arguments ); - if ( returned && jQuery.isFunction( returned.promise ) ) { - returned.promise() - .progress( newDefer.notify ) - .done( newDefer.resolve ) - .fail( newDefer.reject ); - } else { - newDefer[ tuple[ 0 ] + "With" ]( - this === promise ? newDefer.promise() : this, - fn ? [ returned ] : arguments - ); - } - } ); - } ); - fns = null; - } ).promise(); - }, - - // Get a promise for this deferred - // If obj is provided, the promise aspect is added to the object - promise: function( obj ) { - return obj != null ? jQuery.extend( obj, promise ) : promise; - } - }, - deferred = {}; - - // Keep pipe for back-compat - promise.pipe = promise.then; - - // Add list-specific methods - jQuery.each( tuples, function( i, tuple ) { - var list = tuple[ 2 ], - stateString = tuple[ 3 ]; - - // promise[ done | fail | progress ] = list.add - promise[ tuple[ 1 ] ] = list.add; - - // Handle state - if ( stateString ) { - list.add( function() { - - // state = [ resolved | rejected ] - state = stateString; - - // [ reject_list | resolve_list ].disable; progress_list.lock - }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock ); - } - - // deferred[ resolve | reject | notify ] - deferred[ tuple[ 0 ] ] = function() { - deferred[ tuple[ 0 ] + "With" ]( this === deferred ? promise : this, arguments ); - return this; - }; - deferred[ tuple[ 0 ] + "With" ] = list.fireWith; - } ); - - // Make the deferred a promise - promise.promise( deferred ); - - // Call given func if any - if ( func ) { - func.call( deferred, deferred ); - } - - // All done! - return deferred; - }, - - // Deferred helper - when: function( subordinate /* , ..., subordinateN */ ) { - var i = 0, - resolveValues = slice.call( arguments ), - length = resolveValues.length, - - // the count of uncompleted subordinates - remaining = length !== 1 || - ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, - - // the master Deferred. - // If resolveValues consist of only a single Deferred, just use that. - deferred = remaining === 1 ? subordinate : jQuery.Deferred(), - - // Update function for both resolve and progress values - updateFunc = function( i, contexts, values ) { - return function( value ) { - contexts[ i ] = this; - values[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; - if ( values === progressValues ) { - deferred.notifyWith( contexts, values ); - - } else if ( !( --remaining ) ) { - deferred.resolveWith( contexts, values ); - } - }; - }, - - progressValues, progressContexts, resolveContexts; - - // add listeners to Deferred subordinates; treat others as resolved - if ( length > 1 ) { - progressValues = new Array( length ); - progressContexts = new Array( length ); - resolveContexts = new Array( length ); - for ( ; i < length; i++ ) { - if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) { - resolveValues[ i ].promise() - .progress( updateFunc( i, progressContexts, progressValues ) ) - .done( updateFunc( i, resolveContexts, resolveValues ) ) - .fail( deferred.reject ); - } else { - --remaining; - } - } - } - - // if we're not waiting on anything, resolve the master - if ( !remaining ) { - deferred.resolveWith( resolveContexts, resolveValues ); - } - - return deferred.promise(); - } -} ); - - -// The deferred used on DOM ready -var readyList; - -jQuery.fn.ready = function( fn ) { - - // Add the callback - jQuery.ready.promise().done( fn ); - - return this; -}; - -jQuery.extend( { - - // Is the DOM ready to be used? Set to true once it occurs. - isReady: false, - - // A counter to track how many items to wait for before - // the ready event fires. See #6781 - readyWait: 1, - - // Hold (or release) the ready event - holdReady: function( hold ) { - if ( hold ) { - jQuery.readyWait++; - } else { - jQuery.ready( true ); - } - }, - - // Handle when the DOM is ready - ready: function( wait ) { - - // Abort if there are pending holds or we're already ready - if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { - return; - } - - // Remember that the DOM is ready - jQuery.isReady = true; - - // If a normal DOM Ready event fired, decrement, and wait if need be - if ( wait !== true && --jQuery.readyWait > 0 ) { - return; - } - - // If there are functions bound, to execute - readyList.resolveWith( document, [ jQuery ] ); - - // Trigger any bound ready events - if ( jQuery.fn.triggerHandler ) { - jQuery( document ).triggerHandler( "ready" ); - jQuery( document ).off( "ready" ); - } - } -} ); - -/** - * Clean-up method for dom ready events - */ -function detach() { - if ( document.addEventListener ) { - document.removeEventListener( "DOMContentLoaded", completed ); - window.removeEventListener( "load", completed ); - - } else { - document.detachEvent( "onreadystatechange", completed ); - window.detachEvent( "onload", completed ); - } -} - -/** - * The ready event handler and self cleanup method - */ -function completed() { - - // readyState === "complete" is good enough for us to call the dom ready in oldIE - if ( document.addEventListener || - window.event.type === "load" || - document.readyState === "complete" ) { - - detach(); - jQuery.ready(); - } -} - -jQuery.ready.promise = function( obj ) { - if ( !readyList ) { - - readyList = jQuery.Deferred(); - - // Catch cases where $(document).ready() is called - // after the browser event has already occurred. - // Support: IE6-10 - // Older IE sometimes signals "interactive" too soon - if ( document.readyState === "complete" || - ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { - - // Handle it asynchronously to allow scripts the opportunity to delay ready - window.setTimeout( jQuery.ready ); - - // Standards-based browsers support DOMContentLoaded - } else if ( document.addEventListener ) { - - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", completed ); - - // A fallback to window.onload, that will always work - window.addEventListener( "load", completed ); - - // If IE event model is used - } else { - - // Ensure firing before onload, maybe late but safe also for iframes - document.attachEvent( "onreadystatechange", completed ); - - // A fallback to window.onload, that will always work - window.attachEvent( "onload", completed ); - - // If IE and not a frame - // continually check to see if the document is ready - var top = false; - - try { - top = window.frameElement == null && document.documentElement; - } catch ( e ) {} - - if ( top && top.doScroll ) { - ( function doScrollCheck() { - if ( !jQuery.isReady ) { - - try { - - // Use the trick by Diego Perini - // http://javascript.nwbox.com/IEContentLoaded/ - top.doScroll( "left" ); - } catch ( e ) { - return window.setTimeout( doScrollCheck, 50 ); - } - - // detach all dom ready events - detach(); - - // and execute any waiting functions - jQuery.ready(); - } - } )(); - } - } - } - return readyList.promise( obj ); -}; - -// Kick off the DOM ready check even if the user does not -jQuery.ready.promise(); - - - - -// Support: IE<9 -// Iteration over object's inherited properties before its own -var i; -for ( i in jQuery( support ) ) { - break; -} -support.ownFirst = i === "0"; - -// Note: most support tests are defined in their respective modules. -// false until the test is run -support.inlineBlockNeedsLayout = false; - -// Execute ASAP in case we need to set body.style.zoom -jQuery( function() { - - // Minified: var a,b,c,d - var val, div, body, container; - - body = document.getElementsByTagName( "body" )[ 0 ]; - if ( !body || !body.style ) { - - // Return for frameset docs that don't have a body - return; - } - - // Setup - div = document.createElement( "div" ); - container = document.createElement( "div" ); - container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px"; - body.appendChild( container ).appendChild( div ); - - if ( typeof div.style.zoom !== "undefined" ) { - - // Support: IE<8 - // Check if natively block-level elements act like inline-block - // elements when setting their display to 'inline' and giving - // them layout - div.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1"; - - support.inlineBlockNeedsLayout = val = div.offsetWidth === 3; - if ( val ) { - - // Prevent IE 6 from affecting layout for positioned elements #11048 - // Prevent IE from shrinking the body in IE 7 mode #12869 - // Support: IE<8 - body.style.zoom = 1; - } - } - - body.removeChild( container ); -} ); - - -( function() { - var div = document.createElement( "div" ); - - // Support: IE<9 - support.deleteExpando = true; - try { - delete div.test; - } catch ( e ) { - support.deleteExpando = false; - } - - // Null elements to avoid leaks in IE. - div = null; -} )(); -var acceptData = function( elem ) { - var noData = jQuery.noData[ ( elem.nodeName + " " ).toLowerCase() ], - nodeType = +elem.nodeType || 1; - - // Do not set data on non-element DOM nodes because it will not be cleared (#8335). - return nodeType !== 1 && nodeType !== 9 ? - false : - - // Nodes accept data unless otherwise specified; rejection can be conditional - !noData || noData !== true && elem.getAttribute( "classid" ) === noData; -}; - - - - -var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, - rmultiDash = /([A-Z])/g; - -function dataAttr( elem, key, data ) { - - // If nothing was found internally, try to fetch any - // data from the HTML5 data-* attribute - if ( data === undefined && elem.nodeType === 1 ) { - - var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase(); - - data = elem.getAttribute( name ); - - if ( typeof data === "string" ) { - try { - data = data === "true" ? true : - data === "false" ? false : - data === "null" ? null : - - // Only convert to a number if it doesn't change the string - +data + "" === data ? +data : - rbrace.test( data ) ? jQuery.parseJSON( data ) : - data; - } catch ( e ) {} - - // Make sure we set the data so it isn't changed later - jQuery.data( elem, key, data ); - - } else { - data = undefined; - } - } - - return data; -} - -// checks a cache object for emptiness -function isEmptyDataObject( obj ) { - var name; - for ( name in obj ) { - - // if the public data object is empty, the private is still empty - if ( name === "data" && jQuery.isEmptyObject( obj[ name ] ) ) { - continue; - } - if ( name !== "toJSON" ) { - return false; - } - } - - return true; -} - -function internalData( elem, name, data, pvt /* Internal Use Only */ ) { - if ( !acceptData( elem ) ) { - return; - } - - var ret, thisCache, - internalKey = jQuery.expando, - - // We have to handle DOM nodes and JS objects differently because IE6-7 - // can't GC object references properly across the DOM-JS boundary - isNode = elem.nodeType, - - // Only DOM nodes need the global jQuery cache; JS object data is - // attached directly to the object so GC can occur automatically - cache = isNode ? jQuery.cache : elem, - - // Only defining an ID for JS objects if its cache already exists allows - // the code to shortcut on the same path as a DOM node with no cache - id = isNode ? elem[ internalKey ] : elem[ internalKey ] && internalKey; - - // Avoid doing any more work than we need to when trying to get data on an - // object that has no data at all - if ( ( !id || !cache[ id ] || ( !pvt && !cache[ id ].data ) ) && - data === undefined && typeof name === "string" ) { - return; - } - - if ( !id ) { - - // Only DOM nodes need a new unique ID for each element since their data - // ends up in the global cache - if ( isNode ) { - id = elem[ internalKey ] = deletedIds.pop() || jQuery.guid++; - } else { - id = internalKey; - } - } - - if ( !cache[ id ] ) { - - // Avoid exposing jQuery metadata on plain JS objects when the object - // is serialized using JSON.stringify - cache[ id ] = isNode ? {} : { toJSON: jQuery.noop }; - } - - // An object can be passed to jQuery.data instead of a key/value pair; this gets - // shallow copied over onto the existing cache - if ( typeof name === "object" || typeof name === "function" ) { - if ( pvt ) { - cache[ id ] = jQuery.extend( cache[ id ], name ); - } else { - cache[ id ].data = jQuery.extend( cache[ id ].data, name ); - } - } - - thisCache = cache[ id ]; - - // jQuery data() is stored in a separate object inside the object's internal data - // cache in order to avoid key collisions between internal data and user-defined - // data. - if ( !pvt ) { - if ( !thisCache.data ) { - thisCache.data = {}; - } - - thisCache = thisCache.data; - } - - if ( data !== undefined ) { - thisCache[ jQuery.camelCase( name ) ] = data; - } - - // Check for both converted-to-camel and non-converted data property names - // If a data property was specified - if ( typeof name === "string" ) { - - // First Try to find as-is property data - ret = thisCache[ name ]; - - // Test for null|undefined property data - if ( ret == null ) { - - // Try to find the camelCased property - ret = thisCache[ jQuery.camelCase( name ) ]; - } - } else { - ret = thisCache; - } - - return ret; -} - -function internalRemoveData( elem, name, pvt ) { - if ( !acceptData( elem ) ) { - return; - } - - var thisCache, i, - isNode = elem.nodeType, - - // See jQuery.data for more information - cache = isNode ? jQuery.cache : elem, - id = isNode ? elem[ jQuery.expando ] : jQuery.expando; - - // If there is already no cache entry for this object, there is no - // purpose in continuing - if ( !cache[ id ] ) { - return; - } - - if ( name ) { - - thisCache = pvt ? cache[ id ] : cache[ id ].data; - - if ( thisCache ) { - - // Support array or space separated string names for data keys - if ( !jQuery.isArray( name ) ) { - - // try the string as a key before any manipulation - if ( name in thisCache ) { - name = [ name ]; - } else { - - // split the camel cased version by spaces unless a key with the spaces exists - name = jQuery.camelCase( name ); - if ( name in thisCache ) { - name = [ name ]; - } else { - name = name.split( " " ); - } - } - } else { - - // If "name" is an array of keys... - // When data is initially created, via ("key", "val") signature, - // keys will be converted to camelCase. - // Since there is no way to tell _how_ a key was added, remove - // both plain key and camelCase key. #12786 - // This will only penalize the array argument path. - name = name.concat( jQuery.map( name, jQuery.camelCase ) ); - } - - i = name.length; - while ( i-- ) { - delete thisCache[ name[ i ] ]; - } - - // If there is no data left in the cache, we want to continue - // and let the cache object itself get destroyed - if ( pvt ? !isEmptyDataObject( thisCache ) : !jQuery.isEmptyObject( thisCache ) ) { - return; - } - } - } - - // See jQuery.data for more information - if ( !pvt ) { - delete cache[ id ].data; - - // Don't destroy the parent cache unless the internal data object - // had been the only thing left in it - if ( !isEmptyDataObject( cache[ id ] ) ) { - return; - } - } - - // Destroy the cache - if ( isNode ) { - jQuery.cleanData( [ elem ], true ); - - // Use delete when supported for expandos or `cache` is not a window per isWindow (#10080) - /* jshint eqeqeq: false */ - } else if ( support.deleteExpando || cache != cache.window ) { - /* jshint eqeqeq: true */ - delete cache[ id ]; - - // When all else fails, undefined - } else { - cache[ id ] = undefined; - } -} - -jQuery.extend( { - cache: {}, - - // The following elements (space-suffixed to avoid Object.prototype collisions) - // throw uncatchable exceptions if you attempt to set expando properties - noData: { - "applet ": true, - "embed ": true, - - // ...but Flash objects (which have this classid) *can* handle expandos - "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" - }, - - hasData: function( elem ) { - elem = elem.nodeType ? jQuery.cache[ elem[ jQuery.expando ] ] : elem[ jQuery.expando ]; - return !!elem && !isEmptyDataObject( elem ); - }, - - data: function( elem, name, data ) { - return internalData( elem, name, data ); - }, - - removeData: function( elem, name ) { - return internalRemoveData( elem, name ); - }, - - // For internal use only. - _data: function( elem, name, data ) { - return internalData( elem, name, data, true ); - }, - - _removeData: function( elem, name ) { - return internalRemoveData( elem, name, true ); - } -} ); - -jQuery.fn.extend( { - data: function( key, value ) { - var i, name, data, - elem = this[ 0 ], - attrs = elem && elem.attributes; - - // Special expections of .data basically thwart jQuery.access, - // so implement the relevant behavior ourselves - - // Gets all values - if ( key === undefined ) { - if ( this.length ) { - data = jQuery.data( elem ); - - if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) { - i = attrs.length; - while ( i-- ) { - - // Support: IE11+ - // The attrs elements can be null (#14894) - if ( attrs[ i ] ) { - name = attrs[ i ].name; - if ( name.indexOf( "data-" ) === 0 ) { - name = jQuery.camelCase( name.slice( 5 ) ); - dataAttr( elem, name, data[ name ] ); - } - } - } - jQuery._data( elem, "parsedAttrs", true ); - } - } - - return data; - } - - // Sets multiple values - if ( typeof key === "object" ) { - return this.each( function() { - jQuery.data( this, key ); - } ); - } - - return arguments.length > 1 ? - - // Sets one value - this.each( function() { - jQuery.data( this, key, value ); - } ) : - - // Gets one value - // Try to fetch any internally stored data first - elem ? dataAttr( elem, key, jQuery.data( elem, key ) ) : undefined; - }, - - removeData: function( key ) { - return this.each( function() { - jQuery.removeData( this, key ); - } ); - } -} ); - - -jQuery.extend( { - queue: function( elem, type, data ) { - var queue; - - if ( elem ) { - type = ( type || "fx" ) + "queue"; - queue = jQuery._data( elem, type ); - - // Speed up dequeue by getting out quickly if this is just a lookup - if ( data ) { - if ( !queue || jQuery.isArray( data ) ) { - queue = jQuery._data( elem, type, jQuery.makeArray( data ) ); - } else { - queue.push( data ); - } - } - return queue || []; - } - }, - - dequeue: function( elem, type ) { - type = type || "fx"; - - var queue = jQuery.queue( elem, type ), - startLength = queue.length, - fn = queue.shift(), - hooks = jQuery._queueHooks( elem, type ), - next = function() { - jQuery.dequeue( elem, type ); - }; - - // If the fx queue is dequeued, always remove the progress sentinel - if ( fn === "inprogress" ) { - fn = queue.shift(); - startLength--; - } - - if ( fn ) { - - // Add a progress sentinel to prevent the fx queue from being - // automatically dequeued - if ( type === "fx" ) { - queue.unshift( "inprogress" ); - } - - // clear up the last queue stop function - delete hooks.stop; - fn.call( elem, next, hooks ); - } - - if ( !startLength && hooks ) { - hooks.empty.fire(); - } - }, - - // not intended for public consumption - generates a queueHooks object, - // or returns the current one - _queueHooks: function( elem, type ) { - var key = type + "queueHooks"; - return jQuery._data( elem, key ) || jQuery._data( elem, key, { - empty: jQuery.Callbacks( "once memory" ).add( function() { - jQuery._removeData( elem, type + "queue" ); - jQuery._removeData( elem, key ); - } ) - } ); - } -} ); - -jQuery.fn.extend( { - queue: function( type, data ) { - var setter = 2; - - if ( typeof type !== "string" ) { - data = type; - type = "fx"; - setter--; - } - - if ( arguments.length < setter ) { - return jQuery.queue( this[ 0 ], type ); - } - - return data === undefined ? - this : - this.each( function() { - var queue = jQuery.queue( this, type, data ); - - // ensure a hooks for this queue - jQuery._queueHooks( this, type ); - - if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { - jQuery.dequeue( this, type ); - } - } ); - }, - dequeue: function( type ) { - return this.each( function() { - jQuery.dequeue( this, type ); - } ); - }, - clearQueue: function( type ) { - return this.queue( type || "fx", [] ); - }, - - // Get a promise resolved when queues of a certain type - // are emptied (fx is the type by default) - promise: function( type, obj ) { - var tmp, - count = 1, - defer = jQuery.Deferred(), - elements = this, - i = this.length, - resolve = function() { - if ( !( --count ) ) { - defer.resolveWith( elements, [ elements ] ); - } - }; - - if ( typeof type !== "string" ) { - obj = type; - type = undefined; - } - type = type || "fx"; - - while ( i-- ) { - tmp = jQuery._data( elements[ i ], type + "queueHooks" ); - if ( tmp && tmp.empty ) { - count++; - tmp.empty.add( resolve ); - } - } - resolve(); - return defer.promise( obj ); - } -} ); - - -( function() { - var shrinkWrapBlocksVal; - - support.shrinkWrapBlocks = function() { - if ( shrinkWrapBlocksVal != null ) { - return shrinkWrapBlocksVal; - } - - // Will be changed later if needed. - shrinkWrapBlocksVal = false; - - // Minified: var b,c,d - var div, body, container; - - body = document.getElementsByTagName( "body" )[ 0 ]; - if ( !body || !body.style ) { - - // Test fired too early or in an unsupported environment, exit. - return; - } - - // Setup - div = document.createElement( "div" ); - container = document.createElement( "div" ); - container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px"; - body.appendChild( container ).appendChild( div ); - - // Support: IE6 - // Check if elements with layout shrink-wrap their children - if ( typeof div.style.zoom !== "undefined" ) { - - // Reset CSS: box-sizing; display; margin; border - div.style.cssText = - - // Support: Firefox<29, Android 2.3 - // Vendor-prefix box-sizing - "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" + - "box-sizing:content-box;display:block;margin:0;border:0;" + - "padding:1px;width:1px;zoom:1"; - div.appendChild( document.createElement( "div" ) ).style.width = "5px"; - shrinkWrapBlocksVal = div.offsetWidth !== 3; - } - - body.removeChild( container ); - - return shrinkWrapBlocksVal; - }; - -} )(); -var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; - -var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); - - -var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; - -var isHidden = function( elem, el ) { - - // isHidden might be called from jQuery#filter function; - // in that case, element will be second argument - elem = el || elem; - return jQuery.css( elem, "display" ) === "none" || - !jQuery.contains( elem.ownerDocument, elem ); - }; - - - -function adjustCSS( elem, prop, valueParts, tween ) { - var adjusted, - scale = 1, - maxIterations = 20, - currentValue = tween ? - function() { return tween.cur(); } : - function() { return jQuery.css( elem, prop, "" ); }, - initial = currentValue(), - unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), - - // Starting value computation is required for potential unit mismatches - initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && - rcssNum.exec( jQuery.css( elem, prop ) ); - - if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { - - // Trust units reported by jQuery.css - unit = unit || initialInUnit[ 3 ]; - - // Make sure we update the tween properties later on - valueParts = valueParts || []; - - // Iteratively approximate from a nonzero starting point - initialInUnit = +initial || 1; - - do { - - // If previous iteration zeroed out, double until we get *something*. - // Use string for doubling so we don't accidentally see scale as unchanged below - scale = scale || ".5"; - - // Adjust and apply - initialInUnit = initialInUnit / scale; - jQuery.style( elem, prop, initialInUnit + unit ); - - // Update scale, tolerating zero or NaN from tween.cur() - // Break the loop if scale is unchanged or perfect, or if we've just had enough. - } while ( - scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations - ); - } - - if ( valueParts ) { - initialInUnit = +initialInUnit || +initial || 0; - - // Apply relative offset (+=/-=) if specified - adjusted = valueParts[ 1 ] ? - initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : - +valueParts[ 2 ]; - if ( tween ) { - tween.unit = unit; - tween.start = initialInUnit; - tween.end = adjusted; - } - } - return adjusted; -} - - -// Multifunctional method to get and set values of a collection -// The value/s can optionally be executed if it's a function -var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { - var i = 0, - length = elems.length, - bulk = key == null; - - // Sets many values - if ( jQuery.type( key ) === "object" ) { - chainable = true; - for ( i in key ) { - access( elems, fn, i, key[ i ], true, emptyGet, raw ); - } - - // Sets one value - } else if ( value !== undefined ) { - chainable = true; - - if ( !jQuery.isFunction( value ) ) { - raw = true; - } - - if ( bulk ) { - - // Bulk operations run against the entire set - if ( raw ) { - fn.call( elems, value ); - fn = null; - - // ...except when executing function values - } else { - bulk = fn; - fn = function( elem, key, value ) { - return bulk.call( jQuery( elem ), value ); - }; - } - } - - if ( fn ) { - for ( ; i < length; i++ ) { - fn( - elems[ i ], - key, - raw ? value : value.call( elems[ i ], i, fn( elems[ i ], key ) ) - ); - } - } - } - - return chainable ? - elems : - - // Gets - bulk ? - fn.call( elems ) : - length ? fn( elems[ 0 ], key ) : emptyGet; -}; -var rcheckableType = ( /^(?:checkbox|radio)$/i ); - -var rtagName = ( /<([\w:-]+)/ ); - -var rscriptType = ( /^$|\/(?:java|ecma)script/i ); - -var rleadingWhitespace = ( /^\s+/ ); - -var nodeNames = "abbr|article|aside|audio|bdi|canvas|data|datalist|" + - "details|dialog|figcaption|figure|footer|header|hgroup|main|" + - "mark|meter|nav|output|picture|progress|section|summary|template|time|video"; - - - -function createSafeFragment( document ) { - var list = nodeNames.split( "|" ), - safeFrag = document.createDocumentFragment(); - - if ( safeFrag.createElement ) { - while ( list.length ) { - safeFrag.createElement( - list.pop() - ); - } - } - return safeFrag; -} - - -( function() { - var div = document.createElement( "div" ), - fragment = document.createDocumentFragment(), - input = document.createElement( "input" ); - - // Setup - div.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>"; - - // IE strips leading whitespace when .innerHTML is used - support.leadingWhitespace = div.firstChild.nodeType === 3; - - // Make sure that tbody elements aren't automatically inserted - // IE will insert them into empty tables - support.tbody = !div.getElementsByTagName( "tbody" ).length; - - // Make sure that link elements get serialized correctly by innerHTML - // This requires a wrapper element in IE - support.htmlSerialize = !!div.getElementsByTagName( "link" ).length; - - // Makes sure cloning an html5 element does not cause problems - // Where outerHTML is undefined, this still works - support.html5Clone = - document.createElement( "nav" ).cloneNode( true ).outerHTML !== "<:nav></:nav>"; - - // Check if a disconnected checkbox will retain its checked - // value of true after appended to the DOM (IE6/7) - input.type = "checkbox"; - input.checked = true; - fragment.appendChild( input ); - support.appendChecked = input.checked; - - // Make sure textarea (and checkbox) defaultValue is properly cloned - // Support: IE6-IE11+ - div.innerHTML = "<textarea>x</textarea>"; - support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; - - // #11217 - WebKit loses check when the name is after the checked attribute - fragment.appendChild( div ); - - // Support: Windows Web Apps (WWA) - // `name` and `type` must use .setAttribute for WWA (#14901) - input = document.createElement( "input" ); - input.setAttribute( "type", "radio" ); - input.setAttribute( "checked", "checked" ); - input.setAttribute( "name", "t" ); - - div.appendChild( input ); - - // Support: Safari 5.1, iOS 5.1, Android 4.x, Android 2.3 - // old WebKit doesn't clone checked state correctly in fragments - support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; - - // Support: IE<9 - // Cloned elements keep attachEvent handlers, we use addEventListener on IE9+ - support.noCloneEvent = !!div.addEventListener; - - // Support: IE<9 - // Since attributes and properties are the same in IE, - // cleanData must set properties to undefined rather than use removeAttribute - div[ jQuery.expando ] = 1; - support.attributes = !div.getAttribute( jQuery.expando ); -} )(); - - -// We have to close these tags to support XHTML (#13200) -var wrapMap = { - option: [ 1, "<select multiple='multiple'>", "</select>" ], - legend: [ 1, "<fieldset>", "</fieldset>" ], - area: [ 1, "<map>", "</map>" ], - - // Support: IE8 - param: [ 1, "<object>", "</object>" ], - thead: [ 1, "<table>", "</table>" ], - tr: [ 2, "<table><tbody>", "</tbody></table>" ], - col: [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ], - td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ], - - // IE6-8 can't serialize link, script, style, or any html5 (NoScope) tags, - // unless wrapped in a div with non-breaking characters in front of it. - _default: support.htmlSerialize ? [ 0, "", "" ] : [ 1, "X<div>", "</div>" ] -}; - -// Support: IE8-IE9 -wrapMap.optgroup = wrapMap.option; - -wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; -wrapMap.th = wrapMap.td; - - -function getAll( context, tag ) { - var elems, elem, - i = 0, - found = typeof context.getElementsByTagName !== "undefined" ? - context.getElementsByTagName( tag || "*" ) : - typeof context.querySelectorAll !== "undefined" ? - context.querySelectorAll( tag || "*" ) : - undefined; - - if ( !found ) { - for ( found = [], elems = context.childNodes || context; - ( elem = elems[ i ] ) != null; - i++ - ) { - if ( !tag || jQuery.nodeName( elem, tag ) ) { - found.push( elem ); - } else { - jQuery.merge( found, getAll( elem, tag ) ); - } - } - } - - return tag === undefined || tag && jQuery.nodeName( context, tag ) ? - jQuery.merge( [ context ], found ) : - found; -} - - -// Mark scripts as having already been evaluated -function setGlobalEval( elems, refElements ) { - var elem, - i = 0; - for ( ; ( elem = elems[ i ] ) != null; i++ ) { - jQuery._data( - elem, - "globalEval", - !refElements || jQuery._data( refElements[ i ], "globalEval" ) - ); - } -} - - -var rhtml = /<|&#?\w+;/, - rtbody = /<tbody/i; - -function fixDefaultChecked( elem ) { - if ( rcheckableType.test( elem.type ) ) { - elem.defaultChecked = elem.checked; - } -} - -function buildFragment( elems, context, scripts, selection, ignored ) { - var j, elem, contains, - tmp, tag, tbody, wrap, - l = elems.length, - - // Ensure a safe fragment - safe = createSafeFragment( context ), - - nodes = [], - i = 0; - - for ( ; i < l; i++ ) { - elem = elems[ i ]; - - if ( elem || elem === 0 ) { - - // Add nodes directly - if ( jQuery.type( elem ) === "object" ) { - jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); - - // Convert non-html into a text node - } else if ( !rhtml.test( elem ) ) { - nodes.push( context.createTextNode( elem ) ); - - // Convert html into DOM nodes - } else { - tmp = tmp || safe.appendChild( context.createElement( "div" ) ); - - // Deserialize a standard representation - tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); - wrap = wrapMap[ tag ] || wrapMap._default; - - tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; - - // Descend through wrappers to the right content - j = wrap[ 0 ]; - while ( j-- ) { - tmp = tmp.lastChild; - } - - // Manually add leading whitespace removed by IE - if ( !support.leadingWhitespace && rleadingWhitespace.test( elem ) ) { - nodes.push( context.createTextNode( rleadingWhitespace.exec( elem )[ 0 ] ) ); - } - - // Remove IE's autoinserted <tbody> from table fragments - if ( !support.tbody ) { - - // String was a <table>, *may* have spurious <tbody> - elem = tag === "table" && !rtbody.test( elem ) ? - tmp.firstChild : - - // String was a bare <thead> or <tfoot> - wrap[ 1 ] === "<table>" && !rtbody.test( elem ) ? - tmp : - 0; - - j = elem && elem.childNodes.length; - while ( j-- ) { - if ( jQuery.nodeName( ( tbody = elem.childNodes[ j ] ), "tbody" ) && - !tbody.childNodes.length ) { - - elem.removeChild( tbody ); - } - } - } - - jQuery.merge( nodes, tmp.childNodes ); - - // Fix #12392 for WebKit and IE > 9 - tmp.textContent = ""; - - // Fix #12392 for oldIE - while ( tmp.firstChild ) { - tmp.removeChild( tmp.firstChild ); - } - - // Remember the top-level container for proper cleanup - tmp = safe.lastChild; - } - } - } - - // Fix #11356: Clear elements from fragment - if ( tmp ) { - safe.removeChild( tmp ); - } - - // Reset defaultChecked for any radios and checkboxes - // about to be appended to the DOM in IE 6/7 (#8060) - if ( !support.appendChecked ) { - jQuery.grep( getAll( nodes, "input" ), fixDefaultChecked ); - } - - i = 0; - while ( ( elem = nodes[ i++ ] ) ) { - - // Skip elements already in the context collection (trac-4087) - if ( selection && jQuery.inArray( elem, selection ) > -1 ) { - if ( ignored ) { - ignored.push( elem ); - } - - continue; - } - - contains = jQuery.contains( elem.ownerDocument, elem ); - - // Append to fragment - tmp = getAll( safe.appendChild( elem ), "script" ); - - // Preserve script evaluation history - if ( contains ) { - setGlobalEval( tmp ); - } - - // Capture executables - if ( scripts ) { - j = 0; - while ( ( elem = tmp[ j++ ] ) ) { - if ( rscriptType.test( elem.type || "" ) ) { - scripts.push( elem ); - } - } - } - } - - tmp = null; - - return safe; -} - - -( function() { - var i, eventName, - div = document.createElement( "div" ); - - // Support: IE<9 (lack submit/change bubble), Firefox (lack focus(in | out) events) - for ( i in { submit: true, change: true, focusin: true } ) { - eventName = "on" + i; - - if ( !( support[ i ] = eventName in window ) ) { - - // Beware of CSP restrictions (https://developer.mozilla.org/en/Security/CSP) - div.setAttribute( eventName, "t" ); - support[ i ] = div.attributes[ eventName ].expando === false; - } - } - - // Null elements to avoid leaks in IE. - div = null; -} )(); - - -var rformElems = /^(?:input|select|textarea)$/i, - rkeyEvent = /^key/, - rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, - rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, - rtypenamespace = /^([^.]*)(?:\.(.+)|)/; - -function returnTrue() { - return true; -} - -function returnFalse() { - return false; -} - -// Support: IE9 -// See #13393 for more info -function safeActiveElement() { - try { - return document.activeElement; - } catch ( err ) { } -} - -function on( elem, types, selector, data, fn, one ) { - var origFn, type; - - // Types can be a map of types/handlers - if ( typeof types === "object" ) { - - // ( types-Object, selector, data ) - if ( typeof selector !== "string" ) { - - // ( types-Object, data ) - data = data || selector; - selector = undefined; - } - for ( type in types ) { - on( elem, type, selector, data, types[ type ], one ); - } - return elem; - } - - if ( data == null && fn == null ) { - - // ( types, fn ) - fn = selector; - data = selector = undefined; - } else if ( fn == null ) { - if ( typeof selector === "string" ) { - - // ( types, selector, fn ) - fn = data; - data = undefined; - } else { - - // ( types, data, fn ) - fn = data; - data = selector; - selector = undefined; - } - } - if ( fn === false ) { - fn = returnFalse; - } else if ( !fn ) { - return elem; - } - - if ( one === 1 ) { - origFn = fn; - fn = function( event ) { - - // Can use an empty set, since event contains the info - jQuery().off( event ); - return origFn.apply( this, arguments ); - }; - - // Use same guid so caller can remove using origFn - fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); - } - return elem.each( function() { - jQuery.event.add( this, types, fn, data, selector ); - } ); -} - -/* - * Helper functions for managing events -- not part of the public interface. - * Props to Dean Edwards' addEvent library for many of the ideas. - */ -jQuery.event = { - - global: {}, - - add: function( elem, types, handler, data, selector ) { - var tmp, events, t, handleObjIn, - special, eventHandle, handleObj, - handlers, type, namespaces, origType, - elemData = jQuery._data( elem ); - - // Don't attach events to noData or text/comment nodes (but allow plain objects) - if ( !elemData ) { - return; - } - - // Caller can pass in an object of custom data in lieu of the handler - if ( handler.handler ) { - handleObjIn = handler; - handler = handleObjIn.handler; - selector = handleObjIn.selector; - } - - // Make sure that the handler has a unique ID, used to find/remove it later - if ( !handler.guid ) { - handler.guid = jQuery.guid++; - } - - // Init the element's event structure and main handler, if this is the first - if ( !( events = elemData.events ) ) { - events = elemData.events = {}; - } - if ( !( eventHandle = elemData.handle ) ) { - eventHandle = elemData.handle = function( e ) { - - // Discard the second event of a jQuery.event.trigger() and - // when an event is called after a page has unloaded - return typeof jQuery !== "undefined" && - ( !e || jQuery.event.triggered !== e.type ) ? - jQuery.event.dispatch.apply( eventHandle.elem, arguments ) : - undefined; - }; - - // Add elem as a property of the handle fn to prevent a memory leak - // with IE non-native events - eventHandle.elem = elem; - } - - // Handle multiple events separated by a space - types = ( types || "" ).match( rnotwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); - - // There *must* be a type, no attaching namespace-only handlers - if ( !type ) { - continue; - } - - // If event changes its type, use the special event handlers for the changed type - special = jQuery.event.special[ type ] || {}; - - // If selector defined, determine special event api type, otherwise given type - type = ( selector ? special.delegateType : special.bindType ) || type; - - // Update special based on newly reset type - special = jQuery.event.special[ type ] || {}; - - // handleObj is passed to all event handlers - handleObj = jQuery.extend( { - type: type, - origType: origType, - data: data, - handler: handler, - guid: handler.guid, - selector: selector, - needsContext: selector && jQuery.expr.match.needsContext.test( selector ), - namespace: namespaces.join( "." ) - }, handleObjIn ); - - // Init the event handler queue if we're the first - if ( !( handlers = events[ type ] ) ) { - handlers = events[ type ] = []; - handlers.delegateCount = 0; - - // Only use addEventListener/attachEvent if the special events handler returns false - if ( !special.setup || - special.setup.call( elem, data, namespaces, eventHandle ) === false ) { - - // Bind the global event handler to the element - if ( elem.addEventListener ) { - elem.addEventListener( type, eventHandle, false ); - - } else if ( elem.attachEvent ) { - elem.attachEvent( "on" + type, eventHandle ); - } - } - } - - if ( special.add ) { - special.add.call( elem, handleObj ); - - if ( !handleObj.handler.guid ) { - handleObj.handler.guid = handler.guid; - } - } - - // Add to the element's handler list, delegates in front - if ( selector ) { - handlers.splice( handlers.delegateCount++, 0, handleObj ); - } else { - handlers.push( handleObj ); - } - - // Keep track of which events have ever been used, for event optimization - jQuery.event.global[ type ] = true; - } - - // Nullify elem to prevent memory leaks in IE - elem = null; - }, - - // Detach an event or set of events from an element - remove: function( elem, types, handler, selector, mappedTypes ) { - var j, handleObj, tmp, - origCount, t, events, - special, handlers, type, - namespaces, origType, - elemData = jQuery.hasData( elem ) && jQuery._data( elem ); - - if ( !elemData || !( events = elemData.events ) ) { - return; - } - - // Once for each type.namespace in types; type may be omitted - types = ( types || "" ).match( rnotwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[ t ] ) || []; - type = origType = tmp[ 1 ]; - namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); - - // Unbind all events (on this namespace, if provided) for the element - if ( !type ) { - for ( type in events ) { - jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); - } - continue; - } - - special = jQuery.event.special[ type ] || {}; - type = ( selector ? special.delegateType : special.bindType ) || type; - handlers = events[ type ] || []; - tmp = tmp[ 2 ] && - new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); - - // Remove matching events - origCount = j = handlers.length; - while ( j-- ) { - handleObj = handlers[ j ]; - - if ( ( mappedTypes || origType === handleObj.origType ) && - ( !handler || handler.guid === handleObj.guid ) && - ( !tmp || tmp.test( handleObj.namespace ) ) && - ( !selector || selector === handleObj.selector || - selector === "**" && handleObj.selector ) ) { - handlers.splice( j, 1 ); - - if ( handleObj.selector ) { - handlers.delegateCount--; - } - if ( special.remove ) { - special.remove.call( elem, handleObj ); - } - } - } - - // Remove generic event handler if we removed something and no more handlers exist - // (avoids potential for endless recursion during removal of special event handlers) - if ( origCount && !handlers.length ) { - if ( !special.teardown || - special.teardown.call( elem, namespaces, elemData.handle ) === false ) { - - jQuery.removeEvent( elem, type, elemData.handle ); - } - - delete events[ type ]; - } - } - - // Remove the expando if it's no longer used - if ( jQuery.isEmptyObject( events ) ) { - delete elemData.handle; - - // removeData also checks for emptiness and clears the expando if empty - // so use it instead of delete - jQuery._removeData( elem, "events" ); - } - }, - - trigger: function( event, data, elem, onlyHandlers ) { - var handle, ontype, cur, - bubbleType, special, tmp, i, - eventPath = [ elem || document ], - type = hasOwn.call( event, "type" ) ? event.type : event, - namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; - - cur = tmp = elem = elem || document; - - // Don't do events on text and comment nodes - if ( elem.nodeType === 3 || elem.nodeType === 8 ) { - return; - } - - // focus/blur morphs to focusin/out; ensure we're not firing them right now - if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { - return; - } - - if ( type.indexOf( "." ) > -1 ) { - - // Namespaced trigger; create a regexp to match event type in handle() - namespaces = type.split( "." ); - type = namespaces.shift(); - namespaces.sort(); - } - ontype = type.indexOf( ":" ) < 0 && "on" + type; - - // Caller can pass in a jQuery.Event object, Object, or just an event type string - event = event[ jQuery.expando ] ? - event : - new jQuery.Event( type, typeof event === "object" && event ); - - // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) - event.isTrigger = onlyHandlers ? 2 : 3; - event.namespace = namespaces.join( "." ); - event.rnamespace = event.namespace ? - new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : - null; - - // Clean up the event in case it is being reused - event.result = undefined; - if ( !event.target ) { - event.target = elem; - } - - // Clone any incoming data and prepend the event, creating the handler arg list - data = data == null ? - [ event ] : - jQuery.makeArray( data, [ event ] ); - - // Allow special events to draw outside the lines - special = jQuery.event.special[ type ] || {}; - if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { - return; - } - - // Determine event propagation path in advance, per W3C events spec (#9951) - // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) - if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { - - bubbleType = special.delegateType || type; - if ( !rfocusMorph.test( bubbleType + type ) ) { - cur = cur.parentNode; - } - for ( ; cur; cur = cur.parentNode ) { - eventPath.push( cur ); - tmp = cur; - } - - // Only add window if we got to document (e.g., not plain obj or detached DOM) - if ( tmp === ( elem.ownerDocument || document ) ) { - eventPath.push( tmp.defaultView || tmp.parentWindow || window ); - } - } - - // Fire handlers on the event path - i = 0; - while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { - - event.type = i > 1 ? - bubbleType : - special.bindType || type; - - // jQuery handler - handle = ( jQuery._data( cur, "events" ) || {} )[ event.type ] && - jQuery._data( cur, "handle" ); - - if ( handle ) { - handle.apply( cur, data ); - } - - // Native handler - handle = ontype && cur[ ontype ]; - if ( handle && handle.apply && acceptData( cur ) ) { - event.result = handle.apply( cur, data ); - if ( event.result === false ) { - event.preventDefault(); - } - } - } - event.type = type; - - // If nobody prevented the default action, do it now - if ( !onlyHandlers && !event.isDefaultPrevented() ) { - - if ( - ( !special._default || - special._default.apply( eventPath.pop(), data ) === false - ) && acceptData( elem ) - ) { - - // Call a native DOM method on the target with the same name name as the event. - // Can't use an .isFunction() check here because IE6/7 fails that test. - // Don't do default actions on window, that's where global variables be (#6170) - if ( ontype && elem[ type ] && !jQuery.isWindow( elem ) ) { - - // Don't re-trigger an onFOO event when we call its FOO() method - tmp = elem[ ontype ]; - - if ( tmp ) { - elem[ ontype ] = null; - } - - // Prevent re-triggering of the same event, since we already bubbled it above - jQuery.event.triggered = type; - try { - elem[ type ](); - } catch ( e ) { - - // IE<9 dies on focus/blur to hidden element (#1486,#12518) - // only reproducible on winXP IE8 native, not IE9 in IE8 mode - } - jQuery.event.triggered = undefined; - - if ( tmp ) { - elem[ ontype ] = tmp; - } - } - } - } - - return event.result; - }, - - dispatch: function( event ) { - - // Make a writable jQuery.Event from the native event object - event = jQuery.event.fix( event ); - - var i, j, ret, matched, handleObj, - handlerQueue = [], - args = slice.call( arguments ), - handlers = ( jQuery._data( this, "events" ) || {} )[ event.type ] || [], - special = jQuery.event.special[ event.type ] || {}; - - // Use the fix-ed jQuery.Event rather than the (read-only) native event - args[ 0 ] = event; - event.delegateTarget = this; - - // Call the preDispatch hook for the mapped type, and let it bail if desired - if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { - return; - } - - // Determine handlers - handlerQueue = jQuery.event.handlers.call( this, event, handlers ); - - // Run delegates first; they may want to stop propagation beneath us - i = 0; - while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { - event.currentTarget = matched.elem; - - j = 0; - while ( ( handleObj = matched.handlers[ j++ ] ) && - !event.isImmediatePropagationStopped() ) { - - // Triggered event must either 1) have no namespace, or 2) have namespace(s) - // a subset or equal to those in the bound event (both can have no namespace). - if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) { - - event.handleObj = handleObj; - event.data = handleObj.data; - - ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || - handleObj.handler ).apply( matched.elem, args ); - - if ( ret !== undefined ) { - if ( ( event.result = ret ) === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } - } - } - - // Call the postDispatch hook for the mapped type - if ( special.postDispatch ) { - special.postDispatch.call( this, event ); - } - - return event.result; - }, - - handlers: function( event, handlers ) { - var i, matches, sel, handleObj, - handlerQueue = [], - delegateCount = handlers.delegateCount, - cur = event.target; - - // Support (at least): Chrome, IE9 - // Find delegate handlers - // Black-hole SVG <use> instance trees (#13180) - // - // Support: Firefox<=42+ - // Avoid non-left-click in FF but don't block IE radio events (#3861, gh-2343) - if ( delegateCount && cur.nodeType && - ( event.type !== "click" || isNaN( event.button ) || event.button < 1 ) ) { - - /* jshint eqeqeq: false */ - for ( ; cur != this; cur = cur.parentNode || this ) { - /* jshint eqeqeq: true */ - - // Don't check non-elements (#13208) - // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) - if ( cur.nodeType === 1 && ( cur.disabled !== true || event.type !== "click" ) ) { - matches = []; - for ( i = 0; i < delegateCount; i++ ) { - handleObj = handlers[ i ]; - - // Don't conflict with Object.prototype properties (#13203) - sel = handleObj.selector + " "; - - if ( matches[ sel ] === undefined ) { - matches[ sel ] = handleObj.needsContext ? - jQuery( sel, this ).index( cur ) > -1 : - jQuery.find( sel, this, null, [ cur ] ).length; - } - if ( matches[ sel ] ) { - matches.push( handleObj ); - } - } - if ( matches.length ) { - handlerQueue.push( { elem: cur, handlers: matches } ); - } - } - } - } - - // Add the remaining (directly-bound) handlers - if ( delegateCount < handlers.length ) { - handlerQueue.push( { elem: this, handlers: handlers.slice( delegateCount ) } ); - } - - return handlerQueue; - }, - - fix: function( event ) { - if ( event[ jQuery.expando ] ) { - return event; - } - - // Create a writable copy of the event object and normalize some properties - var i, prop, copy, - type = event.type, - originalEvent = event, - fixHook = this.fixHooks[ type ]; - - if ( !fixHook ) { - this.fixHooks[ type ] = fixHook = - rmouseEvent.test( type ) ? this.mouseHooks : - rkeyEvent.test( type ) ? this.keyHooks : - {}; - } - copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props; - - event = new jQuery.Event( originalEvent ); - - i = copy.length; - while ( i-- ) { - prop = copy[ i ]; - event[ prop ] = originalEvent[ prop ]; - } - - // Support: IE<9 - // Fix target property (#1925) - if ( !event.target ) { - event.target = originalEvent.srcElement || document; - } - - // Support: Safari 6-8+ - // Target should not be a text node (#504, #13143) - if ( event.target.nodeType === 3 ) { - event.target = event.target.parentNode; - } - - // Support: IE<9 - // For mouse/key events, metaKey==false if it's undefined (#3368, #11328) - event.metaKey = !!event.metaKey; - - return fixHook.filter ? fixHook.filter( event, originalEvent ) : event; - }, - - // Includes some event props shared by KeyEvent and MouseEvent - props: ( "altKey bubbles cancelable ctrlKey currentTarget detail eventPhase " + - "metaKey relatedTarget shiftKey target timeStamp view which" ).split( " " ), - - fixHooks: {}, - - keyHooks: { - props: "char charCode key keyCode".split( " " ), - filter: function( event, original ) { - - // Add which for key events - if ( event.which == null ) { - event.which = original.charCode != null ? original.charCode : original.keyCode; - } - - return event; - } - }, - - mouseHooks: { - props: ( "button buttons clientX clientY fromElement offsetX offsetY " + - "pageX pageY screenX screenY toElement" ).split( " " ), - filter: function( event, original ) { - var body, eventDoc, doc, - button = original.button, - fromElement = original.fromElement; - - // Calculate pageX/Y if missing and clientX/Y available - if ( event.pageX == null && original.clientX != null ) { - eventDoc = event.target.ownerDocument || document; - doc = eventDoc.documentElement; - body = eventDoc.body; - - event.pageX = original.clientX + - ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - - ( doc && doc.clientLeft || body && body.clientLeft || 0 ); - event.pageY = original.clientY + - ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - - ( doc && doc.clientTop || body && body.clientTop || 0 ); - } - - // Add relatedTarget, if necessary - if ( !event.relatedTarget && fromElement ) { - event.relatedTarget = fromElement === event.target ? - original.toElement : - fromElement; - } - - // Add which for click: 1 === left; 2 === middle; 3 === right - // Note: button is not normalized, so don't use it - if ( !event.which && button !== undefined ) { - event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) ); - } - - return event; - } - }, - - special: { - load: { - - // Prevent triggered image.load events from bubbling to window.load - noBubble: true - }, - focus: { - - // Fire native event if possible so blur/focus sequence is correct - trigger: function() { - if ( this !== safeActiveElement() && this.focus ) { - try { - this.focus(); - return false; - } catch ( e ) { - - // Support: IE<9 - // If we error on focus to hidden element (#1486, #12518), - // let .trigger() run the handlers - } - } - }, - delegateType: "focusin" - }, - blur: { - trigger: function() { - if ( this === safeActiveElement() && this.blur ) { - this.blur(); - return false; - } - }, - delegateType: "focusout" - }, - click: { - - // For checkbox, fire native event so checked state will be right - trigger: function() { - if ( jQuery.nodeName( this, "input" ) && this.type === "checkbox" && this.click ) { - this.click(); - return false; - } - }, - - // For cross-browser consistency, don't fire native .click() on links - _default: function( event ) { - return jQuery.nodeName( event.target, "a" ); - } - }, - - beforeunload: { - postDispatch: function( event ) { - - // Support: Firefox 20+ - // Firefox doesn't alert if the returnValue field is not set. - if ( event.result !== undefined && event.originalEvent ) { - event.originalEvent.returnValue = event.result; - } - } - } - }, - - // Piggyback on a donor event to simulate a different one - simulate: function( type, elem, event ) { - var e = jQuery.extend( - new jQuery.Event(), - event, - { - type: type, - isSimulated: true - - // Previously, `originalEvent: {}` was set here, so stopPropagation call - // would not be triggered on donor event, since in our own - // jQuery.event.stopPropagation function we had a check for existence of - // originalEvent.stopPropagation method, so, consequently it would be a noop. - // - // Guard for simulated events was moved to jQuery.event.stopPropagation function - // since `originalEvent` should point to the original event for the - // constancy with other events and for more focused logic - } - ); - - jQuery.event.trigger( e, null, elem ); - - if ( e.isDefaultPrevented() ) { - event.preventDefault(); - } - } -}; - -jQuery.removeEvent = document.removeEventListener ? - function( elem, type, handle ) { - - // This "if" is needed for plain objects - if ( elem.removeEventListener ) { - elem.removeEventListener( type, handle ); - } - } : - function( elem, type, handle ) { - var name = "on" + type; - - if ( elem.detachEvent ) { - - // #8545, #7054, preventing memory leaks for custom events in IE6-8 - // detachEvent needed property on element, by name of that event, - // to properly expose it to GC - if ( typeof elem[ name ] === "undefined" ) { - elem[ name ] = null; - } - - elem.detachEvent( name, handle ); - } - }; - -jQuery.Event = function( src, props ) { - - // Allow instantiation without the 'new' keyword - if ( !( this instanceof jQuery.Event ) ) { - return new jQuery.Event( src, props ); - } - - // Event object - if ( src && src.type ) { - this.originalEvent = src; - this.type = src.type; - - // Events bubbling up the document may have been marked as prevented - // by a handler lower down the tree; reflect the correct value. - this.isDefaultPrevented = src.defaultPrevented || - src.defaultPrevented === undefined && - - // Support: IE < 9, Android < 4.0 - src.returnValue === false ? - returnTrue : - returnFalse; - - // Event type - } else { - this.type = src; - } - - // Put explicitly provided properties onto the event object - if ( props ) { - jQuery.extend( this, props ); - } - - // Create a timestamp if incoming event doesn't have one - this.timeStamp = src && src.timeStamp || jQuery.now(); - - // Mark it as fixed - this[ jQuery.expando ] = true; -}; - -// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding -// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html -jQuery.Event.prototype = { - constructor: jQuery.Event, - isDefaultPrevented: returnFalse, - isPropagationStopped: returnFalse, - isImmediatePropagationStopped: returnFalse, - - preventDefault: function() { - var e = this.originalEvent; - - this.isDefaultPrevented = returnTrue; - if ( !e ) { - return; - } - - // If preventDefault exists, run it on the original event - if ( e.preventDefault ) { - e.preventDefault(); - - // Support: IE - // Otherwise set the returnValue property of the original event to false - } else { - e.returnValue = false; - } - }, - stopPropagation: function() { - var e = this.originalEvent; - - this.isPropagationStopped = returnTrue; - - if ( !e || this.isSimulated ) { - return; - } - - // If stopPropagation exists, run it on the original event - if ( e.stopPropagation ) { - e.stopPropagation(); - } - - // Support: IE - // Set the cancelBubble property of the original event to true - e.cancelBubble = true; - }, - stopImmediatePropagation: function() { - var e = this.originalEvent; - - this.isImmediatePropagationStopped = returnTrue; - - if ( e && e.stopImmediatePropagation ) { - e.stopImmediatePropagation(); - } - - this.stopPropagation(); - } -}; - -// Create mouseenter/leave events using mouseover/out and event-time checks -// so that event delegation works in jQuery. -// Do the same for pointerenter/pointerleave and pointerover/pointerout -// -// Support: Safari 7 only -// Safari sends mouseenter too often; see: -// https://code.google.com/p/chromium/issues/detail?id=470258 -// for the description of the bug (it existed in older Chrome versions as well). -jQuery.each( { - mouseenter: "mouseover", - mouseleave: "mouseout", - pointerenter: "pointerover", - pointerleave: "pointerout" -}, function( orig, fix ) { - jQuery.event.special[ orig ] = { - delegateType: fix, - bindType: fix, - - handle: function( event ) { - var ret, - target = this, - related = event.relatedTarget, - handleObj = event.handleObj; - - // For mouseenter/leave call the handler if related is outside the target. - // NB: No relatedTarget if the mouse left/entered the browser window - if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { - event.type = handleObj.origType; - ret = handleObj.handler.apply( this, arguments ); - event.type = fix; - } - return ret; - } - }; -} ); - -// IE submit delegation -if ( !support.submit ) { - - jQuery.event.special.submit = { - setup: function() { - - // Only need this for delegated form submit events - if ( jQuery.nodeName( this, "form" ) ) { - return false; - } - - // Lazy-add a submit handler when a descendant form may potentially be submitted - jQuery.event.add( this, "click._submit keypress._submit", function( e ) { - - // Node name check avoids a VML-related crash in IE (#9807) - var elem = e.target, - form = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? - - // Support: IE <=8 - // We use jQuery.prop instead of elem.form - // to allow fixing the IE8 delegated submit issue (gh-2332) - // by 3rd party polyfills/workarounds. - jQuery.prop( elem, "form" ) : - undefined; - - if ( form && !jQuery._data( form, "submit" ) ) { - jQuery.event.add( form, "submit._submit", function( event ) { - event._submitBubble = true; - } ); - jQuery._data( form, "submit", true ); - } - } ); - - // return undefined since we don't need an event listener - }, - - postDispatch: function( event ) { - - // If form was submitted by the user, bubble the event up the tree - if ( event._submitBubble ) { - delete event._submitBubble; - if ( this.parentNode && !event.isTrigger ) { - jQuery.event.simulate( "submit", this.parentNode, event ); - } - } - }, - - teardown: function() { - - // Only need this for delegated form submit events - if ( jQuery.nodeName( this, "form" ) ) { - return false; - } - - // Remove delegated handlers; cleanData eventually reaps submit handlers attached above - jQuery.event.remove( this, "._submit" ); - } - }; -} - -// IE change delegation and checkbox/radio fix -if ( !support.change ) { - - jQuery.event.special.change = { - - setup: function() { - - if ( rformElems.test( this.nodeName ) ) { - - // IE doesn't fire change on a check/radio until blur; trigger it on click - // after a propertychange. Eat the blur-change in special.change.handle. - // This still fires onchange a second time for check/radio after blur. - if ( this.type === "checkbox" || this.type === "radio" ) { - jQuery.event.add( this, "propertychange._change", function( event ) { - if ( event.originalEvent.propertyName === "checked" ) { - this._justChanged = true; - } - } ); - jQuery.event.add( this, "click._change", function( event ) { - if ( this._justChanged && !event.isTrigger ) { - this._justChanged = false; - } - - // Allow triggered, simulated change events (#11500) - jQuery.event.simulate( "change", this, event ); - } ); - } - return false; - } - - // Delegated event; lazy-add a change handler on descendant inputs - jQuery.event.add( this, "beforeactivate._change", function( e ) { - var elem = e.target; - - if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, "change" ) ) { - jQuery.event.add( elem, "change._change", function( event ) { - if ( this.parentNode && !event.isSimulated && !event.isTrigger ) { - jQuery.event.simulate( "change", this.parentNode, event ); - } - } ); - jQuery._data( elem, "change", true ); - } - } ); - }, - - handle: function( event ) { - var elem = event.target; - - // Swallow native change events from checkbox/radio, we already triggered them above - if ( this !== elem || event.isSimulated || event.isTrigger || - ( elem.type !== "radio" && elem.type !== "checkbox" ) ) { - - return event.handleObj.handler.apply( this, arguments ); - } - }, - - teardown: function() { - jQuery.event.remove( this, "._change" ); - - return !rformElems.test( this.nodeName ); - } - }; -} - -// Support: Firefox -// Firefox doesn't have focus(in | out) events -// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 -// -// Support: Chrome, Safari -// focus(in | out) events fire after focus & blur events, -// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order -// Related ticket - https://code.google.com/p/chromium/issues/detail?id=449857 -if ( !support.focusin ) { - jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { - - // Attach a single capturing handler on the document while someone wants focusin/focusout - var handler = function( event ) { - jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); - }; - - jQuery.event.special[ fix ] = { - setup: function() { - var doc = this.ownerDocument || this, - attaches = jQuery._data( doc, fix ); - - if ( !attaches ) { - doc.addEventListener( orig, handler, true ); - } - jQuery._data( doc, fix, ( attaches || 0 ) + 1 ); - }, - teardown: function() { - var doc = this.ownerDocument || this, - attaches = jQuery._data( doc, fix ) - 1; - - if ( !attaches ) { - doc.removeEventListener( orig, handler, true ); - jQuery._removeData( doc, fix ); - } else { - jQuery._data( doc, fix, attaches ); - } - } - }; - } ); -} - -jQuery.fn.extend( { - - on: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn ); - }, - one: function( types, selector, data, fn ) { - return on( this, types, selector, data, fn, 1 ); - }, - off: function( types, selector, fn ) { - var handleObj, type; - if ( types && types.preventDefault && types.handleObj ) { - - // ( event ) dispatched jQuery.Event - handleObj = types.handleObj; - jQuery( types.delegateTarget ).off( - handleObj.namespace ? - handleObj.origType + "." + handleObj.namespace : - handleObj.origType, - handleObj.selector, - handleObj.handler - ); - return this; - } - if ( typeof types === "object" ) { - - // ( types-object [, selector] ) - for ( type in types ) { - this.off( type, selector, types[ type ] ); - } - return this; - } - if ( selector === false || typeof selector === "function" ) { - - // ( types [, fn] ) - fn = selector; - selector = undefined; - } - if ( fn === false ) { - fn = returnFalse; - } - return this.each( function() { - jQuery.event.remove( this, types, fn, selector ); - } ); - }, - - trigger: function( type, data ) { - return this.each( function() { - jQuery.event.trigger( type, data, this ); - } ); - }, - triggerHandler: function( type, data ) { - var elem = this[ 0 ]; - if ( elem ) { - return jQuery.event.trigger( type, data, elem, true ); - } - } -} ); - - -var rinlinejQuery = / jQuery\d+="(?:null|\d+)"/g, - rnoshimcache = new RegExp( "<(?:" + nodeNames + ")[\\s/>]", "i" ), - rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi, - - // Support: IE 10-11, Edge 10240+ - // In IE/Edge using regex groups here causes severe slowdowns. - // See https://connect.microsoft.com/IE/feedback/details/1736512/ - rnoInnerhtml = /<script|<style|<link/i, - - // checked="checked" or checked - rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, - rscriptTypeMasked = /^true\/(.*)/, - rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g, - safeFragment = createSafeFragment( document ), - fragmentDiv = safeFragment.appendChild( document.createElement( "div" ) ); - -// Support: IE<8 -// Manipulating tables requires a tbody -function manipulationTarget( elem, content ) { - return jQuery.nodeName( elem, "table" ) && - jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ? - - elem.getElementsByTagName( "tbody" )[ 0 ] || - elem.appendChild( elem.ownerDocument.createElement( "tbody" ) ) : - elem; -} - -// Replace/restore the type attribute of script elements for safe DOM manipulation -function disableScript( elem ) { - elem.type = ( jQuery.find.attr( elem, "type" ) !== null ) + "/" + elem.type; - return elem; -} -function restoreScript( elem ) { - var match = rscriptTypeMasked.exec( elem.type ); - if ( match ) { - elem.type = match[ 1 ]; - } else { - elem.removeAttribute( "type" ); - } - return elem; -} - -function cloneCopyEvent( src, dest ) { - if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) { - return; - } - - var type, i, l, - oldData = jQuery._data( src ), - curData = jQuery._data( dest, oldData ), - events = oldData.events; - - if ( events ) { - delete curData.handle; - curData.events = {}; - - for ( type in events ) { - for ( i = 0, l = events[ type ].length; i < l; i++ ) { - jQuery.event.add( dest, type, events[ type ][ i ] ); - } - } - } - - // make the cloned public data object a copy from the original - if ( curData.data ) { - curData.data = jQuery.extend( {}, curData.data ); - } -} - -function fixCloneNodeIssues( src, dest ) { - var nodeName, e, data; - - // We do not need to do anything for non-Elements - if ( dest.nodeType !== 1 ) { - return; - } - - nodeName = dest.nodeName.toLowerCase(); - - // IE6-8 copies events bound via attachEvent when using cloneNode. - if ( !support.noCloneEvent && dest[ jQuery.expando ] ) { - data = jQuery._data( dest ); - - for ( e in data.events ) { - jQuery.removeEvent( dest, e, data.handle ); - } - - // Event data gets referenced instead of copied if the expando gets copied too - dest.removeAttribute( jQuery.expando ); - } - - // IE blanks contents when cloning scripts, and tries to evaluate newly-set text - if ( nodeName === "script" && dest.text !== src.text ) { - disableScript( dest ).text = src.text; - restoreScript( dest ); - - // IE6-10 improperly clones children of object elements using classid. - // IE10 throws NoModificationAllowedError if parent is null, #12132. - } else if ( nodeName === "object" ) { - if ( dest.parentNode ) { - dest.outerHTML = src.outerHTML; - } - - // This path appears unavoidable for IE9. When cloning an object - // element in IE9, the outerHTML strategy above is not sufficient. - // If the src has innerHTML and the destination does not, - // copy the src.innerHTML into the dest.innerHTML. #10324 - if ( support.html5Clone && ( src.innerHTML && !jQuery.trim( dest.innerHTML ) ) ) { - dest.innerHTML = src.innerHTML; - } - - } else if ( nodeName === "input" && rcheckableType.test( src.type ) ) { - - // IE6-8 fails to persist the checked state of a cloned checkbox - // or radio button. Worse, IE6-7 fail to give the cloned element - // a checked appearance if the defaultChecked value isn't also set - - dest.defaultChecked = dest.checked = src.checked; - - // IE6-7 get confused and end up setting the value of a cloned - // checkbox/radio button to an empty string instead of "on" - if ( dest.value !== src.value ) { - dest.value = src.value; - } - - // IE6-8 fails to return the selected option to the default selected - // state when cloning options - } else if ( nodeName === "option" ) { - dest.defaultSelected = dest.selected = src.defaultSelected; - - // IE6-8 fails to set the defaultValue to the correct value when - // cloning other types of input fields - } else if ( nodeName === "input" || nodeName === "textarea" ) { - dest.defaultValue = src.defaultValue; - } -} - -function domManip( collection, args, callback, ignored ) { - - // Flatten any nested arrays - args = concat.apply( [], args ); - - var first, node, hasScripts, - scripts, doc, fragment, - i = 0, - l = collection.length, - iNoClone = l - 1, - value = args[ 0 ], - isFunction = jQuery.isFunction( value ); - - // We can't cloneNode fragments that contain checked, in WebKit - if ( isFunction || - ( l > 1 && typeof value === "string" && - !support.checkClone && rchecked.test( value ) ) ) { - return collection.each( function( index ) { - var self = collection.eq( index ); - if ( isFunction ) { - args[ 0 ] = value.call( this, index, self.html() ); - } - domManip( self, args, callback, ignored ); - } ); - } - - if ( l ) { - fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); - first = fragment.firstChild; - - if ( fragment.childNodes.length === 1 ) { - fragment = first; - } - - // Require either new content or an interest in ignored elements to invoke the callback - if ( first || ignored ) { - scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); - hasScripts = scripts.length; - - // Use the original fragment for the last item - // instead of the first because it can end up - // being emptied incorrectly in certain situations (#8070). - for ( ; i < l; i++ ) { - node = fragment; - - if ( i !== iNoClone ) { - node = jQuery.clone( node, true, true ); - - // Keep references to cloned scripts for later restoration - if ( hasScripts ) { - - // Support: Android<4.1, PhantomJS<2 - // push.apply(_, arraylike) throws on ancient WebKit - jQuery.merge( scripts, getAll( node, "script" ) ); - } - } - - callback.call( collection[ i ], node, i ); - } - - if ( hasScripts ) { - doc = scripts[ scripts.length - 1 ].ownerDocument; - - // Reenable scripts - jQuery.map( scripts, restoreScript ); - - // Evaluate executable scripts on first document insertion - for ( i = 0; i < hasScripts; i++ ) { - node = scripts[ i ]; - if ( rscriptType.test( node.type || "" ) && - !jQuery._data( node, "globalEval" ) && - jQuery.contains( doc, node ) ) { - - if ( node.src ) { - - // Optional AJAX dependency, but won't run scripts if not present - if ( jQuery._evalUrl ) { - jQuery._evalUrl( node.src ); - } - } else { - jQuery.globalEval( - ( node.text || node.textContent || node.innerHTML || "" ) - .replace( rcleanScript, "" ) - ); - } - } - } - } - - // Fix #11809: Avoid leaking memory - fragment = first = null; - } - } - - return collection; -} - -function remove( elem, selector, keepData ) { - var node, - elems = selector ? jQuery.filter( selector, elem ) : elem, - i = 0; - - for ( ; ( node = elems[ i ] ) != null; i++ ) { - - if ( !keepData && node.nodeType === 1 ) { - jQuery.cleanData( getAll( node ) ); - } - - if ( node.parentNode ) { - if ( keepData && jQuery.contains( node.ownerDocument, node ) ) { - setGlobalEval( getAll( node, "script" ) ); - } - node.parentNode.removeChild( node ); - } - } - - return elem; -} - -jQuery.extend( { - htmlPrefilter: function( html ) { - return html.replace( rxhtmlTag, "<$1></$2>" ); - }, - - clone: function( elem, dataAndEvents, deepDataAndEvents ) { - var destElements, node, clone, i, srcElements, - inPage = jQuery.contains( elem.ownerDocument, elem ); - - if ( support.html5Clone || jQuery.isXMLDoc( elem ) || - !rnoshimcache.test( "<" + elem.nodeName + ">" ) ) { - - clone = elem.cloneNode( true ); - - // IE<=8 does not properly clone detached, unknown element nodes - } else { - fragmentDiv.innerHTML = elem.outerHTML; - fragmentDiv.removeChild( clone = fragmentDiv.firstChild ); - } - - if ( ( !support.noCloneEvent || !support.noCloneChecked ) && - ( elem.nodeType === 1 || elem.nodeType === 11 ) && !jQuery.isXMLDoc( elem ) ) { - - // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2 - destElements = getAll( clone ); - srcElements = getAll( elem ); - - // Fix all IE cloning issues - for ( i = 0; ( node = srcElements[ i ] ) != null; ++i ) { - - // Ensure that the destination node is not null; Fixes #9587 - if ( destElements[ i ] ) { - fixCloneNodeIssues( node, destElements[ i ] ); - } - } - } - - // Copy the events from the original to the clone - if ( dataAndEvents ) { - if ( deepDataAndEvents ) { - srcElements = srcElements || getAll( elem ); - destElements = destElements || getAll( clone ); - - for ( i = 0; ( node = srcElements[ i ] ) != null; i++ ) { - cloneCopyEvent( node, destElements[ i ] ); - } - } else { - cloneCopyEvent( elem, clone ); - } - } - - // Preserve script evaluation history - destElements = getAll( clone, "script" ); - if ( destElements.length > 0 ) { - setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); - } - - destElements = srcElements = node = null; - - // Return the cloned set - return clone; - }, - - cleanData: function( elems, /* internal */ forceAcceptData ) { - var elem, type, id, data, - i = 0, - internalKey = jQuery.expando, - cache = jQuery.cache, - attributes = support.attributes, - special = jQuery.event.special; - - for ( ; ( elem = elems[ i ] ) != null; i++ ) { - if ( forceAcceptData || acceptData( elem ) ) { - - id = elem[ internalKey ]; - data = id && cache[ id ]; - - if ( data ) { - if ( data.events ) { - for ( type in data.events ) { - if ( special[ type ] ) { - jQuery.event.remove( elem, type ); - - // This is a shortcut to avoid jQuery.event.remove's overhead - } else { - jQuery.removeEvent( elem, type, data.handle ); - } - } - } - - // Remove cache only if it was not already removed by jQuery.event.remove - if ( cache[ id ] ) { - - delete cache[ id ]; - - // Support: IE<9 - // IE does not allow us to delete expando properties from nodes - // IE creates expando attributes along with the property - // IE does not have a removeAttribute function on Document nodes - if ( !attributes && typeof elem.removeAttribute !== "undefined" ) { - elem.removeAttribute( internalKey ); - - // Webkit & Blink performance suffers when deleting properties - // from DOM nodes, so set to undefined instead - // https://code.google.com/p/chromium/issues/detail?id=378607 - } else { - elem[ internalKey ] = undefined; - } - - deletedIds.push( id ); - } - } - } - } - } -} ); - -jQuery.fn.extend( { - - // Keep domManip exposed until 3.0 (gh-2225) - domManip: domManip, - - detach: function( selector ) { - return remove( this, selector, true ); - }, - - remove: function( selector ) { - return remove( this, selector ); - }, - - text: function( value ) { - return access( this, function( value ) { - return value === undefined ? - jQuery.text( this ) : - this.empty().append( - ( this[ 0 ] && this[ 0 ].ownerDocument || document ).createTextNode( value ) - ); - }, null, value, arguments.length ); - }, - - append: function() { - return domManip( this, arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.appendChild( elem ); - } - } ); - }, - - prepend: function() { - return domManip( this, arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.insertBefore( elem, target.firstChild ); - } - } ); - }, - - before: function() { - return domManip( this, arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this ); - } - } ); - }, - - after: function() { - return domManip( this, arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this.nextSibling ); - } - } ); - }, - - empty: function() { - var elem, - i = 0; - - for ( ; ( elem = this[ i ] ) != null; i++ ) { - - // Remove element nodes and prevent memory leaks - if ( elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem, false ) ); - } - - // Remove any remaining nodes - while ( elem.firstChild ) { - elem.removeChild( elem.firstChild ); - } - - // If this is a select, ensure that it displays empty (#12336) - // Support: IE<9 - if ( elem.options && jQuery.nodeName( elem, "select" ) ) { - elem.options.length = 0; - } - } - - return this; - }, - - clone: function( dataAndEvents, deepDataAndEvents ) { - dataAndEvents = dataAndEvents == null ? false : dataAndEvents; - deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; - - return this.map( function() { - return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); - } ); - }, - - html: function( value ) { - return access( this, function( value ) { - var elem = this[ 0 ] || {}, - i = 0, - l = this.length; - - if ( value === undefined ) { - return elem.nodeType === 1 ? - elem.innerHTML.replace( rinlinejQuery, "" ) : - undefined; - } - - // See if we can take a shortcut and just use innerHTML - if ( typeof value === "string" && !rnoInnerhtml.test( value ) && - ( support.htmlSerialize || !rnoshimcache.test( value ) ) && - ( support.leadingWhitespace || !rleadingWhitespace.test( value ) ) && - !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { - - value = jQuery.htmlPrefilter( value ); - - try { - for ( ; i < l; i++ ) { - - // Remove element nodes and prevent memory leaks - elem = this[ i ] || {}; - if ( elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem, false ) ); - elem.innerHTML = value; - } - } - - elem = 0; - - // If using innerHTML throws an exception, use the fallback method - } catch ( e ) {} - } - - if ( elem ) { - this.empty().append( value ); - } - }, null, value, arguments.length ); - }, - - replaceWith: function() { - var ignored = []; - - // Make the changes, replacing each non-ignored context element with the new content - return domManip( this, arguments, function( elem ) { - var parent = this.parentNode; - - if ( jQuery.inArray( this, ignored ) < 0 ) { - jQuery.cleanData( getAll( this ) ); - if ( parent ) { - parent.replaceChild( elem, this ); - } - } - - // Force callback invocation - }, ignored ); - } -} ); - -jQuery.each( { - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after", - replaceAll: "replaceWith" -}, function( name, original ) { - jQuery.fn[ name ] = function( selector ) { - var elems, - i = 0, - ret = [], - insert = jQuery( selector ), - last = insert.length - 1; - - for ( ; i <= last; i++ ) { - elems = i === last ? this : this.clone( true ); - jQuery( insert[ i ] )[ original ]( elems ); - - // Modern browsers can apply jQuery collections as arrays, but oldIE needs a .get() - push.apply( ret, elems.get() ); - } - - return this.pushStack( ret ); - }; -} ); - - -var iframe, - elemdisplay = { - - // Support: Firefox - // We have to pre-define these values for FF (#10227) - HTML: "block", - BODY: "block" - }; - -/** - * Retrieve the actual display of a element - * @param {String} name nodeName of the element - * @param {Object} doc Document object - */ - -// Called only from within defaultDisplay -function actualDisplay( name, doc ) { - var elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), - - display = jQuery.css( elem[ 0 ], "display" ); - - // We don't have any data stored on the element, - // so use "detach" method as fast way to get rid of the element - elem.detach(); - - return display; -} - -/** - * Try to determine the default display value of an element - * @param {String} nodeName - */ -function defaultDisplay( nodeName ) { - var doc = document, - display = elemdisplay[ nodeName ]; - - if ( !display ) { - display = actualDisplay( nodeName, doc ); - - // If the simple way fails, read from inside an iframe - if ( display === "none" || !display ) { - - // Use the already-created iframe if possible - iframe = ( iframe || jQuery( "<iframe frameborder='0' width='0' height='0'/>" ) ) - .appendTo( doc.documentElement ); - - // Always write a new HTML skeleton so Webkit and Firefox don't choke on reuse - doc = ( iframe[ 0 ].contentWindow || iframe[ 0 ].contentDocument ).document; - - // Support: IE - doc.write(); - doc.close(); - - display = actualDisplay( nodeName, doc ); - iframe.detach(); - } - - // Store the correct default display - elemdisplay[ nodeName ] = display; - } - - return display; -} -var rmargin = ( /^margin/ ); - -var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); - -var swap = function( elem, options, callback, args ) { - var ret, name, - old = {}; - - // Remember the old values, and insert the new ones - for ( name in options ) { - old[ name ] = elem.style[ name ]; - elem.style[ name ] = options[ name ]; - } - - ret = callback.apply( elem, args || [] ); - - // Revert the old values - for ( name in options ) { - elem.style[ name ] = old[ name ]; - } - - return ret; -}; - - -var documentElement = document.documentElement; - - - -( function() { - var pixelPositionVal, pixelMarginRightVal, boxSizingReliableVal, - reliableHiddenOffsetsVal, reliableMarginRightVal, reliableMarginLeftVal, - container = document.createElement( "div" ), - div = document.createElement( "div" ); - - // Finish early in limited (non-browser) environments - if ( !div.style ) { - return; - } - - div.style.cssText = "float:left;opacity:.5"; - - // Support: IE<9 - // Make sure that element opacity exists (as opposed to filter) - support.opacity = div.style.opacity === "0.5"; - - // Verify style float existence - // (IE uses styleFloat instead of cssFloat) - support.cssFloat = !!div.style.cssFloat; - - div.style.backgroundClip = "content-box"; - div.cloneNode( true ).style.backgroundClip = ""; - support.clearCloneStyle = div.style.backgroundClip === "content-box"; - - container = document.createElement( "div" ); - container.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;" + - "padding:0;margin-top:1px;position:absolute"; - div.innerHTML = ""; - container.appendChild( div ); - - // Support: Firefox<29, Android 2.3 - // Vendor-prefix box-sizing - support.boxSizing = div.style.boxSizing === "" || div.style.MozBoxSizing === "" || - div.style.WebkitBoxSizing === ""; - - jQuery.extend( support, { - reliableHiddenOffsets: function() { - if ( pixelPositionVal == null ) { - computeStyleTests(); - } - return reliableHiddenOffsetsVal; - }, - - boxSizingReliable: function() { - - // We're checking for pixelPositionVal here instead of boxSizingReliableVal - // since that compresses better and they're computed together anyway. - if ( pixelPositionVal == null ) { - computeStyleTests(); - } - return boxSizingReliableVal; - }, - - pixelMarginRight: function() { - - // Support: Android 4.0-4.3 - if ( pixelPositionVal == null ) { - computeStyleTests(); - } - return pixelMarginRightVal; - }, - - pixelPosition: function() { - if ( pixelPositionVal == null ) { - computeStyleTests(); - } - return pixelPositionVal; - }, - - reliableMarginRight: function() { - - // Support: Android 2.3 - if ( pixelPositionVal == null ) { - computeStyleTests(); - } - return reliableMarginRightVal; - }, - - reliableMarginLeft: function() { - - // Support: IE <=8 only, Android 4.0 - 4.3 only, Firefox <=3 - 37 - if ( pixelPositionVal == null ) { - computeStyleTests(); - } - return reliableMarginLeftVal; - } - } ); - - function computeStyleTests() { - var contents, divStyle, - documentElement = document.documentElement; - - // Setup - documentElement.appendChild( container ); - - div.style.cssText = - - // Support: Android 2.3 - // Vendor-prefix box-sizing - "-webkit-box-sizing:border-box;box-sizing:border-box;" + - "position:relative;display:block;" + - "margin:auto;border:1px;padding:1px;" + - "top:1%;width:50%"; - - // Support: IE<9 - // Assume reasonable values in the absence of getComputedStyle - pixelPositionVal = boxSizingReliableVal = reliableMarginLeftVal = false; - pixelMarginRightVal = reliableMarginRightVal = true; - - // Check for getComputedStyle so that this code is not run in IE<9. - if ( window.getComputedStyle ) { - divStyle = window.getComputedStyle( div ); - pixelPositionVal = ( divStyle || {} ).top !== "1%"; - reliableMarginLeftVal = ( divStyle || {} ).marginLeft === "2px"; - boxSizingReliableVal = ( divStyle || { width: "4px" } ).width === "4px"; - - // Support: Android 4.0 - 4.3 only - // Some styles come back with percentage values, even though they shouldn't - div.style.marginRight = "50%"; - pixelMarginRightVal = ( divStyle || { marginRight: "4px" } ).marginRight === "4px"; - - // Support: Android 2.3 only - // Div with explicit width and no margin-right incorrectly - // gets computed margin-right based on width of container (#3333) - // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right - contents = div.appendChild( document.createElement( "div" ) ); - - // Reset CSS: box-sizing; display; margin; border; padding - contents.style.cssText = div.style.cssText = - - // Support: Android 2.3 - // Vendor-prefix box-sizing - "-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" + - "box-sizing:content-box;display:block;margin:0;border:0;padding:0"; - contents.style.marginRight = contents.style.width = "0"; - div.style.width = "1px"; - - reliableMarginRightVal = - !parseFloat( ( window.getComputedStyle( contents ) || {} ).marginRight ); - - div.removeChild( contents ); - } - - // Support: IE6-8 - // First check that getClientRects works as expected - // Check if table cells still have offsetWidth/Height when they are set - // to display:none and there are still other visible table cells in a - // table row; if so, offsetWidth/Height are not reliable for use when - // determining if an element has been hidden directly using - // display:none (it is still safe to use offsets if a parent element is - // hidden; don safety goggles and see bug #4512 for more information). - div.style.display = "none"; - reliableHiddenOffsetsVal = div.getClientRects().length === 0; - if ( reliableHiddenOffsetsVal ) { - div.style.display = ""; - div.innerHTML = "<table><tr><td></td><td>t</td></tr></table>"; - div.childNodes[ 0 ].style.borderCollapse = "separate"; - contents = div.getElementsByTagName( "td" ); - contents[ 0 ].style.cssText = "margin:0;border:0;padding:0;display:none"; - reliableHiddenOffsetsVal = contents[ 0 ].offsetHeight === 0; - if ( reliableHiddenOffsetsVal ) { - contents[ 0 ].style.display = ""; - contents[ 1 ].style.display = "none"; - reliableHiddenOffsetsVal = contents[ 0 ].offsetHeight === 0; - } - } - - // Teardown - documentElement.removeChild( container ); - } - -} )(); - - -var getStyles, curCSS, - rposition = /^(top|right|bottom|left)$/; - -if ( window.getComputedStyle ) { - getStyles = function( elem ) { - - // Support: IE<=11+, Firefox<=30+ (#15098, #14150) - // IE throws on elements created in popups - // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" - var view = elem.ownerDocument.defaultView; - - if ( !view || !view.opener ) { - view = window; - } - - return view.getComputedStyle( elem ); - }; - - curCSS = function( elem, name, computed ) { - var width, minWidth, maxWidth, ret, - style = elem.style; - - computed = computed || getStyles( elem ); - - // getPropertyValue is only needed for .css('filter') in IE9, see #12537 - ret = computed ? computed.getPropertyValue( name ) || computed[ name ] : undefined; - - // Support: Opera 12.1x only - // Fall back to style even without computed - // computed is undefined for elems on document fragments - if ( ( ret === "" || ret === undefined ) && !jQuery.contains( elem.ownerDocument, elem ) ) { - ret = jQuery.style( elem, name ); - } - - if ( computed ) { - - // A tribute to the "awesome hack by Dean Edwards" - // Chrome < 17 and Safari 5.0 uses "computed value" - // instead of "used value" for margin-right - // Safari 5.1.7 (at least) returns percentage for a larger set of values, - // but width seems to be reliably pixels - // this is against the CSSOM draft spec: - // http://dev.w3.org/csswg/cssom/#resolved-values - if ( !support.pixelMarginRight() && rnumnonpx.test( ret ) && rmargin.test( name ) ) { - - // Remember the original values - width = style.width; - minWidth = style.minWidth; - maxWidth = style.maxWidth; - - // Put in the new values to get a computed value out - style.minWidth = style.maxWidth = style.width = ret; - ret = computed.width; - - // Revert the changed values - style.width = width; - style.minWidth = minWidth; - style.maxWidth = maxWidth; - } - } - - // Support: IE - // IE returns zIndex value as an integer. - return ret === undefined ? - ret : - ret + ""; - }; -} else if ( documentElement.currentStyle ) { - getStyles = function( elem ) { - return elem.currentStyle; - }; - - curCSS = function( elem, name, computed ) { - var left, rs, rsLeft, ret, - style = elem.style; - - computed = computed || getStyles( elem ); - ret = computed ? computed[ name ] : undefined; - - // Avoid setting ret to empty string here - // so we don't default to auto - if ( ret == null && style && style[ name ] ) { - ret = style[ name ]; - } - - // From the awesome hack by Dean Edwards - // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291 - - // If we're not dealing with a regular pixel number - // but a number that has a weird ending, we need to convert it to pixels - // but not position css attributes, as those are - // proportional to the parent element instead - // and we can't measure the parent instead because it - // might trigger a "stacking dolls" problem - if ( rnumnonpx.test( ret ) && !rposition.test( name ) ) { - - // Remember the original values - left = style.left; - rs = elem.runtimeStyle; - rsLeft = rs && rs.left; - - // Put in the new values to get a computed value out - if ( rsLeft ) { - rs.left = elem.currentStyle.left; - } - style.left = name === "fontSize" ? "1em" : ret; - ret = style.pixelLeft + "px"; - - // Revert the changed values - style.left = left; - if ( rsLeft ) { - rs.left = rsLeft; - } - } - - // Support: IE - // IE returns zIndex value as an integer. - return ret === undefined ? - ret : - ret + "" || "auto"; - }; -} - - - - -function addGetHookIf( conditionFn, hookFn ) { - - // Define the hook, we'll check on the first run if it's really needed. - return { - get: function() { - if ( conditionFn() ) { - - // Hook not needed (or it's not possible to use it due - // to missing dependency), remove it. - delete this.get; - return; - } - - // Hook needed; redefine it so that the support test is not executed again. - return ( this.get = hookFn ).apply( this, arguments ); - } - }; -} - - -var - - ralpha = /alpha\([^)]*\)/i, - ropacity = /opacity\s*=\s*([^)]*)/i, - - // swappable if display is none or starts with table except - // "table", "table-cell", or "table-caption" - // see here for display values: - // https://developer.mozilla.org/en-US/docs/CSS/display - rdisplayswap = /^(none|table(?!-c[ea]).+)/, - rnumsplit = new RegExp( "^(" + pnum + ")(.*)$", "i" ), - - cssShow = { position: "absolute", visibility: "hidden", display: "block" }, - cssNormalTransform = { - letterSpacing: "0", - fontWeight: "400" - }, - - cssPrefixes = [ "Webkit", "O", "Moz", "ms" ], - emptyStyle = document.createElement( "div" ).style; - - -// return a css property mapped to a potentially vendor prefixed property -function vendorPropName( name ) { - - // shortcut for names that are not vendor prefixed - if ( name in emptyStyle ) { - return name; - } - - // check for vendor prefixed names - var capName = name.charAt( 0 ).toUpperCase() + name.slice( 1 ), - i = cssPrefixes.length; - - while ( i-- ) { - name = cssPrefixes[ i ] + capName; - if ( name in emptyStyle ) { - return name; - } - } -} - -function showHide( elements, show ) { - var display, elem, hidden, - values = [], - index = 0, - length = elements.length; - - for ( ; index < length; index++ ) { - elem = elements[ index ]; - if ( !elem.style ) { - continue; - } - - values[ index ] = jQuery._data( elem, "olddisplay" ); - display = elem.style.display; - if ( show ) { - - // Reset the inline display of this element to learn if it is - // being hidden by cascaded rules or not - if ( !values[ index ] && display === "none" ) { - elem.style.display = ""; - } - - // Set elements which have been overridden with display: none - // in a stylesheet to whatever the default browser style is - // for such an element - if ( elem.style.display === "" && isHidden( elem ) ) { - values[ index ] = - jQuery._data( elem, "olddisplay", defaultDisplay( elem.nodeName ) ); - } - } else { - hidden = isHidden( elem ); - - if ( display && display !== "none" || !hidden ) { - jQuery._data( - elem, - "olddisplay", - hidden ? display : jQuery.css( elem, "display" ) - ); - } - } - } - - // Set the display of most of the elements in a second loop - // to avoid the constant reflow - for ( index = 0; index < length; index++ ) { - elem = elements[ index ]; - if ( !elem.style ) { - continue; - } - if ( !show || elem.style.display === "none" || elem.style.display === "" ) { - elem.style.display = show ? values[ index ] || "" : "none"; - } - } - - return elements; -} - -function setPositiveNumber( elem, value, subtract ) { - var matches = rnumsplit.exec( value ); - return matches ? - - // Guard against undefined "subtract", e.g., when used as in cssHooks - Math.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || "px" ) : - value; -} - -function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) { - var i = extra === ( isBorderBox ? "border" : "content" ) ? - - // If we already have the right measurement, avoid augmentation - 4 : - - // Otherwise initialize for horizontal or vertical properties - name === "width" ? 1 : 0, - - val = 0; - - for ( ; i < 4; i += 2 ) { - - // both box models exclude margin, so add it if we want it - if ( extra === "margin" ) { - val += jQuery.css( elem, extra + cssExpand[ i ], true, styles ); - } - - if ( isBorderBox ) { - - // border-box includes padding, so remove it if we want content - if ( extra === "content" ) { - val -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - } - - // at this point, extra isn't border nor margin, so remove border - if ( extra !== "margin" ) { - val -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); - } - } else { - - // at this point, extra isn't content, so add padding - val += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - - // at this point, extra isn't content nor padding, so add border - if ( extra !== "padding" ) { - val += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); - } - } - } - - return val; -} - -function getWidthOrHeight( elem, name, extra ) { - - // Start with offset property, which is equivalent to the border-box value - var valueIsBorderBox = true, - val = name === "width" ? elem.offsetWidth : elem.offsetHeight, - styles = getStyles( elem ), - isBorderBox = support.boxSizing && - jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; - - // some non-html elements return undefined for offsetWidth, so check for null/undefined - // svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285 - // MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668 - if ( val <= 0 || val == null ) { - - // Fall back to computed then uncomputed css if necessary - val = curCSS( elem, name, styles ); - if ( val < 0 || val == null ) { - val = elem.style[ name ]; - } - - // Computed unit is not pixels. Stop here and return. - if ( rnumnonpx.test( val ) ) { - return val; - } - - // we need the check for style in case a browser which returns unreliable values - // for getComputedStyle silently falls back to the reliable elem.style - valueIsBorderBox = isBorderBox && - ( support.boxSizingReliable() || val === elem.style[ name ] ); - - // Normalize "", auto, and prepare for extra - val = parseFloat( val ) || 0; - } - - // use the active box-sizing model to add/subtract irrelevant styles - return ( val + - augmentWidthOrHeight( - elem, - name, - extra || ( isBorderBox ? "border" : "content" ), - valueIsBorderBox, - styles - ) - ) + "px"; -} - -jQuery.extend( { - - // Add in style property hooks for overriding the default - // behavior of getting and setting a style property - cssHooks: { - opacity: { - get: function( elem, computed ) { - if ( computed ) { - - // We should always get a number back from opacity - var ret = curCSS( elem, "opacity" ); - return ret === "" ? "1" : ret; - } - } - } - }, - - // Don't automatically add "px" to these possibly-unitless properties - cssNumber: { - "animationIterationCount": true, - "columnCount": true, - "fillOpacity": true, - "flexGrow": true, - "flexShrink": true, - "fontWeight": true, - "lineHeight": true, - "opacity": true, - "order": true, - "orphans": true, - "widows": true, - "zIndex": true, - "zoom": true - }, - - // Add in properties whose names you wish to fix before - // setting or getting the value - cssProps: { - - // normalize float css property - "float": support.cssFloat ? "cssFloat" : "styleFloat" - }, - - // Get and set the style property on a DOM Node - style: function( elem, name, value, extra ) { - - // Don't set styles on text and comment nodes - if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { - return; - } - - // Make sure that we're working with the right name - var ret, type, hooks, - origName = jQuery.camelCase( name ), - style = elem.style; - - name = jQuery.cssProps[ origName ] || - ( jQuery.cssProps[ origName ] = vendorPropName( origName ) || origName ); - - // gets hook for the prefixed version - // followed by the unprefixed version - hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; - - // Check if we're setting a value - if ( value !== undefined ) { - type = typeof value; - - // Convert "+=" or "-=" to relative numbers (#7345) - if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { - value = adjustCSS( elem, name, ret ); - - // Fixes bug #9237 - type = "number"; - } - - // Make sure that null and NaN values aren't set. See: #7116 - if ( value == null || value !== value ) { - return; - } - - // If a number was passed in, add the unit (except for certain CSS properties) - if ( type === "number" ) { - value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); - } - - // Fixes #8908, it can be done more correctly by specifing setters in cssHooks, - // but it would mean to define eight - // (for every problematic property) identical functions - if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { - style[ name ] = "inherit"; - } - - // If a hook was provided, use that value, otherwise just set the specified value - if ( !hooks || !( "set" in hooks ) || - ( value = hooks.set( elem, value, extra ) ) !== undefined ) { - - // Support: IE - // Swallow errors from 'invalid' CSS values (#5509) - try { - style[ name ] = value; - } catch ( e ) {} - } - - } else { - - // If a hook was provided get the non-computed value from there - if ( hooks && "get" in hooks && - ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { - - return ret; - } - - // Otherwise just get the value from the style object - return style[ name ]; - } - }, - - css: function( elem, name, extra, styles ) { - var num, val, hooks, - origName = jQuery.camelCase( name ); - - // Make sure that we're working with the right name - name = jQuery.cssProps[ origName ] || - ( jQuery.cssProps[ origName ] = vendorPropName( origName ) || origName ); - - // gets hook for the prefixed version - // followed by the unprefixed version - hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; - - // If a hook was provided get the computed value from there - if ( hooks && "get" in hooks ) { - val = hooks.get( elem, true, extra ); - } - - // Otherwise, if a way to get the computed value exists, use that - if ( val === undefined ) { - val = curCSS( elem, name, styles ); - } - - //convert "normal" to computed value - if ( val === "normal" && name in cssNormalTransform ) { - val = cssNormalTransform[ name ]; - } - - // Return, converting to number if forced or a qualifier was provided and val looks numeric - if ( extra === "" || extra ) { - num = parseFloat( val ); - return extra === true || isFinite( num ) ? num || 0 : val; - } - return val; - } -} ); - -jQuery.each( [ "height", "width" ], function( i, name ) { - jQuery.cssHooks[ name ] = { - get: function( elem, computed, extra ) { - if ( computed ) { - - // certain elements can have dimension info if we invisibly show them - // however, it must have a current display style that would benefit from this - return rdisplayswap.test( jQuery.css( elem, "display" ) ) && - elem.offsetWidth === 0 ? - swap( elem, cssShow, function() { - return getWidthOrHeight( elem, name, extra ); - } ) : - getWidthOrHeight( elem, name, extra ); - } - }, - - set: function( elem, value, extra ) { - var styles = extra && getStyles( elem ); - return setPositiveNumber( elem, value, extra ? - augmentWidthOrHeight( - elem, - name, - extra, - support.boxSizing && - jQuery.css( elem, "boxSizing", false, styles ) === "border-box", - styles - ) : 0 - ); - } - }; -} ); - -if ( !support.opacity ) { - jQuery.cssHooks.opacity = { - get: function( elem, computed ) { - - // IE uses filters for opacity - return ropacity.test( ( computed && elem.currentStyle ? - elem.currentStyle.filter : - elem.style.filter ) || "" ) ? - ( 0.01 * parseFloat( RegExp.$1 ) ) + "" : - computed ? "1" : ""; - }, - - set: function( elem, value ) { - var style = elem.style, - currentStyle = elem.currentStyle, - opacity = jQuery.isNumeric( value ) ? "alpha(opacity=" + value * 100 + ")" : "", - filter = currentStyle && currentStyle.filter || style.filter || ""; - - // IE has trouble with opacity if it does not have layout - // Force it by setting the zoom level - style.zoom = 1; - - // if setting opacity to 1, and no other filters exist - - // attempt to remove filter attribute #6652 - // if value === "", then remove inline opacity #12685 - if ( ( value >= 1 || value === "" ) && - jQuery.trim( filter.replace( ralpha, "" ) ) === "" && - style.removeAttribute ) { - - // Setting style.filter to null, "" & " " still leave "filter:" in the cssText - // if "filter:" is present at all, clearType is disabled, we want to avoid this - // style.removeAttribute is IE Only, but so apparently is this code path... - style.removeAttribute( "filter" ); - - // if there is no filter style applied in a css rule - // or unset inline opacity, we are done - if ( value === "" || currentStyle && !currentStyle.filter ) { - return; - } - } - - // otherwise, set new filter values - style.filter = ralpha.test( filter ) ? - filter.replace( ralpha, opacity ) : - filter + " " + opacity; - } - }; -} - -jQuery.cssHooks.marginRight = addGetHookIf( support.reliableMarginRight, - function( elem, computed ) { - if ( computed ) { - return swap( elem, { "display": "inline-block" }, - curCSS, [ elem, "marginRight" ] ); - } - } -); - -jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, - function( elem, computed ) { - if ( computed ) { - return ( - parseFloat( curCSS( elem, "marginLeft" ) ) || - - // Support: IE<=11+ - // Running getBoundingClientRect on a disconnected node in IE throws an error - // Support: IE8 only - // getClientRects() errors on disconnected elems - ( jQuery.contains( elem.ownerDocument, elem ) ? - elem.getBoundingClientRect().left - - swap( elem, { marginLeft: 0 }, function() { - return elem.getBoundingClientRect().left; - } ) : - 0 - ) - ) + "px"; - } - } -); - -// These hooks are used by animate to expand properties -jQuery.each( { - margin: "", - padding: "", - border: "Width" -}, function( prefix, suffix ) { - jQuery.cssHooks[ prefix + suffix ] = { - expand: function( value ) { - var i = 0, - expanded = {}, - - // assumes a single number if not a string - parts = typeof value === "string" ? value.split( " " ) : [ value ]; - - for ( ; i < 4; i++ ) { - expanded[ prefix + cssExpand[ i ] + suffix ] = - parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; - } - - return expanded; - } - }; - - if ( !rmargin.test( prefix ) ) { - jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; - } -} ); - -jQuery.fn.extend( { - css: function( name, value ) { - return access( this, function( elem, name, value ) { - var styles, len, - map = {}, - i = 0; - - if ( jQuery.isArray( name ) ) { - styles = getStyles( elem ); - len = name.length; - - for ( ; i < len; i++ ) { - map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); - } - - return map; - } - - return value !== undefined ? - jQuery.style( elem, name, value ) : - jQuery.css( elem, name ); - }, name, value, arguments.length > 1 ); - }, - show: function() { - return showHide( this, true ); - }, - hide: function() { - return showHide( this ); - }, - toggle: function( state ) { - if ( typeof state === "boolean" ) { - return state ? this.show() : this.hide(); - } - - return this.each( function() { - if ( isHidden( this ) ) { - jQuery( this ).show(); - } else { - jQuery( this ).hide(); - } - } ); - } -} ); - - -function Tween( elem, options, prop, end, easing ) { - return new Tween.prototype.init( elem, options, prop, end, easing ); -} -jQuery.Tween = Tween; - -Tween.prototype = { - constructor: Tween, - init: function( elem, options, prop, end, easing, unit ) { - this.elem = elem; - this.prop = prop; - this.easing = easing || jQuery.easing._default; - this.options = options; - this.start = this.now = this.cur(); - this.end = end; - this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); - }, - cur: function() { - var hooks = Tween.propHooks[ this.prop ]; - - return hooks && hooks.get ? - hooks.get( this ) : - Tween.propHooks._default.get( this ); - }, - run: function( percent ) { - var eased, - hooks = Tween.propHooks[ this.prop ]; - - if ( this.options.duration ) { - this.pos = eased = jQuery.easing[ this.easing ]( - percent, this.options.duration * percent, 0, 1, this.options.duration - ); - } else { - this.pos = eased = percent; - } - this.now = ( this.end - this.start ) * eased + this.start; - - if ( this.options.step ) { - this.options.step.call( this.elem, this.now, this ); - } - - if ( hooks && hooks.set ) { - hooks.set( this ); - } else { - Tween.propHooks._default.set( this ); - } - return this; - } -}; - -Tween.prototype.init.prototype = Tween.prototype; - -Tween.propHooks = { - _default: { - get: function( tween ) { - var result; - - // Use a property on the element directly when it is not a DOM element, - // or when there is no matching style property that exists. - if ( tween.elem.nodeType !== 1 || - tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { - return tween.elem[ tween.prop ]; - } - - // passing an empty string as a 3rd parameter to .css will automatically - // attempt a parseFloat and fallback to a string if the parse fails - // so, simple values such as "10px" are parsed to Float. - // complex values such as "rotate(1rad)" are returned as is. - result = jQuery.css( tween.elem, tween.prop, "" ); - - // Empty strings, null, undefined and "auto" are converted to 0. - return !result || result === "auto" ? 0 : result; - }, - set: function( tween ) { - - // use step hook for back compat - use cssHook if its there - use .style if its - // available and use plain properties where available - if ( jQuery.fx.step[ tween.prop ] ) { - jQuery.fx.step[ tween.prop ]( tween ); - } else if ( tween.elem.nodeType === 1 && - ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || - jQuery.cssHooks[ tween.prop ] ) ) { - jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); - } else { - tween.elem[ tween.prop ] = tween.now; - } - } - } -}; - -// Support: IE <=9 -// Panic based approach to setting things on disconnected nodes - -Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { - set: function( tween ) { - if ( tween.elem.nodeType && tween.elem.parentNode ) { - tween.elem[ tween.prop ] = tween.now; - } - } -}; - -jQuery.easing = { - linear: function( p ) { - return p; - }, - swing: function( p ) { - return 0.5 - Math.cos( p * Math.PI ) / 2; - }, - _default: "swing" -}; - -jQuery.fx = Tween.prototype.init; - -// Back Compat <1.8 extension point -jQuery.fx.step = {}; - - - - -var - fxNow, timerId, - rfxtypes = /^(?:toggle|show|hide)$/, - rrun = /queueHooks$/; - -// Animations created synchronously will run synchronously -function createFxNow() { - window.setTimeout( function() { - fxNow = undefined; - } ); - return ( fxNow = jQuery.now() ); -} - -// Generate parameters to create a standard animation -function genFx( type, includeWidth ) { - var which, - attrs = { height: type }, - i = 0; - - // if we include width, step value is 1 to do all cssExpand values, - // if we don't include width, step value is 2 to skip over Left and Right - includeWidth = includeWidth ? 1 : 0; - for ( ; i < 4 ; i += 2 - includeWidth ) { - which = cssExpand[ i ]; - attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; - } - - if ( includeWidth ) { - attrs.opacity = attrs.width = type; - } - - return attrs; -} - -function createTween( value, prop, animation ) { - var tween, - collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), - index = 0, - length = collection.length; - for ( ; index < length; index++ ) { - if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { - - // we're done with this property - return tween; - } - } -} - -function defaultPrefilter( elem, props, opts ) { - /* jshint validthis: true */ - var prop, value, toggle, tween, hooks, oldfire, display, checkDisplay, - anim = this, - orig = {}, - style = elem.style, - hidden = elem.nodeType && isHidden( elem ), - dataShow = jQuery._data( elem, "fxshow" ); - - // handle queue: false promises - if ( !opts.queue ) { - hooks = jQuery._queueHooks( elem, "fx" ); - if ( hooks.unqueued == null ) { - hooks.unqueued = 0; - oldfire = hooks.empty.fire; - hooks.empty.fire = function() { - if ( !hooks.unqueued ) { - oldfire(); - } - }; - } - hooks.unqueued++; - - anim.always( function() { - - // doing this makes sure that the complete handler will be called - // before this completes - anim.always( function() { - hooks.unqueued--; - if ( !jQuery.queue( elem, "fx" ).length ) { - hooks.empty.fire(); - } - } ); - } ); - } - - // height/width overflow pass - if ( elem.nodeType === 1 && ( "height" in props || "width" in props ) ) { - - // Make sure that nothing sneaks out - // Record all 3 overflow attributes because IE does not - // change the overflow attribute when overflowX and - // overflowY are set to the same value - opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; - - // Set display property to inline-block for height/width - // animations on inline elements that are having width/height animated - display = jQuery.css( elem, "display" ); - - // Test default display if display is currently "none" - checkDisplay = display === "none" ? - jQuery._data( elem, "olddisplay" ) || defaultDisplay( elem.nodeName ) : display; - - if ( checkDisplay === "inline" && jQuery.css( elem, "float" ) === "none" ) { - - // inline-level elements accept inline-block; - // block-level elements need to be inline with layout - if ( !support.inlineBlockNeedsLayout || defaultDisplay( elem.nodeName ) === "inline" ) { - style.display = "inline-block"; - } else { - style.zoom = 1; - } - } - } - - if ( opts.overflow ) { - style.overflow = "hidden"; - if ( !support.shrinkWrapBlocks() ) { - anim.always( function() { - style.overflow = opts.overflow[ 0 ]; - style.overflowX = opts.overflow[ 1 ]; - style.overflowY = opts.overflow[ 2 ]; - } ); - } - } - - // show/hide pass - for ( prop in props ) { - value = props[ prop ]; - if ( rfxtypes.exec( value ) ) { - delete props[ prop ]; - toggle = toggle || value === "toggle"; - if ( value === ( hidden ? "hide" : "show" ) ) { - - // If there is dataShow left over from a stopped hide or show - // and we are going to proceed with show, we should pretend to be hidden - if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { - hidden = true; - } else { - continue; - } - } - orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); - - // Any non-fx value stops us from restoring the original display value - } else { - display = undefined; - } - } - - if ( !jQuery.isEmptyObject( orig ) ) { - if ( dataShow ) { - if ( "hidden" in dataShow ) { - hidden = dataShow.hidden; - } - } else { - dataShow = jQuery._data( elem, "fxshow", {} ); - } - - // store state if its toggle - enables .stop().toggle() to "reverse" - if ( toggle ) { - dataShow.hidden = !hidden; - } - if ( hidden ) { - jQuery( elem ).show(); - } else { - anim.done( function() { - jQuery( elem ).hide(); - } ); - } - anim.done( function() { - var prop; - jQuery._removeData( elem, "fxshow" ); - for ( prop in orig ) { - jQuery.style( elem, prop, orig[ prop ] ); - } - } ); - for ( prop in orig ) { - tween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); - - if ( !( prop in dataShow ) ) { - dataShow[ prop ] = tween.start; - if ( hidden ) { - tween.end = tween.start; - tween.start = prop === "width" || prop === "height" ? 1 : 0; - } - } - } - - // If this is a noop like .hide().hide(), restore an overwritten display value - } else if ( ( display === "none" ? defaultDisplay( elem.nodeName ) : display ) === "inline" ) { - style.display = display; - } -} - -function propFilter( props, specialEasing ) { - var index, name, easing, value, hooks; - - // camelCase, specialEasing and expand cssHook pass - for ( index in props ) { - name = jQuery.camelCase( index ); - easing = specialEasing[ name ]; - value = props[ index ]; - if ( jQuery.isArray( value ) ) { - easing = value[ 1 ]; - value = props[ index ] = value[ 0 ]; - } - - if ( index !== name ) { - props[ name ] = value; - delete props[ index ]; - } - - hooks = jQuery.cssHooks[ name ]; - if ( hooks && "expand" in hooks ) { - value = hooks.expand( value ); - delete props[ name ]; - - // not quite $.extend, this wont overwrite keys already present. - // also - reusing 'index' from above because we have the correct "name" - for ( index in value ) { - if ( !( index in props ) ) { - props[ index ] = value[ index ]; - specialEasing[ index ] = easing; - } - } - } else { - specialEasing[ name ] = easing; - } - } -} - -function Animation( elem, properties, options ) { - var result, - stopped, - index = 0, - length = Animation.prefilters.length, - deferred = jQuery.Deferred().always( function() { - - // don't match elem in the :animated selector - delete tick.elem; - } ), - tick = function() { - if ( stopped ) { - return false; - } - var currentTime = fxNow || createFxNow(), - remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), - - // Support: Android 2.3 - // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) - temp = remaining / animation.duration || 0, - percent = 1 - temp, - index = 0, - length = animation.tweens.length; - - for ( ; index < length ; index++ ) { - animation.tweens[ index ].run( percent ); - } - - deferred.notifyWith( elem, [ animation, percent, remaining ] ); - - if ( percent < 1 && length ) { - return remaining; - } else { - deferred.resolveWith( elem, [ animation ] ); - return false; - } - }, - animation = deferred.promise( { - elem: elem, - props: jQuery.extend( {}, properties ), - opts: jQuery.extend( true, { - specialEasing: {}, - easing: jQuery.easing._default - }, options ), - originalProperties: properties, - originalOptions: options, - startTime: fxNow || createFxNow(), - duration: options.duration, - tweens: [], - createTween: function( prop, end ) { - var tween = jQuery.Tween( elem, animation.opts, prop, end, - animation.opts.specialEasing[ prop ] || animation.opts.easing ); - animation.tweens.push( tween ); - return tween; - }, - stop: function( gotoEnd ) { - var index = 0, - - // if we are going to the end, we want to run all the tweens - // otherwise we skip this part - length = gotoEnd ? animation.tweens.length : 0; - if ( stopped ) { - return this; - } - stopped = true; - for ( ; index < length ; index++ ) { - animation.tweens[ index ].run( 1 ); - } - - // resolve when we played the last frame - // otherwise, reject - if ( gotoEnd ) { - deferred.notifyWith( elem, [ animation, 1, 0 ] ); - deferred.resolveWith( elem, [ animation, gotoEnd ] ); - } else { - deferred.rejectWith( elem, [ animation, gotoEnd ] ); - } - return this; - } - } ), - props = animation.props; - - propFilter( props, animation.opts.specialEasing ); - - for ( ; index < length ; index++ ) { - result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); - if ( result ) { - if ( jQuery.isFunction( result.stop ) ) { - jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = - jQuery.proxy( result.stop, result ); - } - return result; - } - } - - jQuery.map( props, createTween, animation ); - - if ( jQuery.isFunction( animation.opts.start ) ) { - animation.opts.start.call( elem, animation ); - } - - jQuery.fx.timer( - jQuery.extend( tick, { - elem: elem, - anim: animation, - queue: animation.opts.queue - } ) - ); - - // attach callbacks from options - return animation.progress( animation.opts.progress ) - .done( animation.opts.done, animation.opts.complete ) - .fail( animation.opts.fail ) - .always( animation.opts.always ); -} - -jQuery.Animation = jQuery.extend( Animation, { - - tweeners: { - "*": [ function( prop, value ) { - var tween = this.createTween( prop, value ); - adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); - return tween; - } ] - }, - - tweener: function( props, callback ) { - if ( jQuery.isFunction( props ) ) { - callback = props; - props = [ "*" ]; - } else { - props = props.match( rnotwhite ); - } - - var prop, - index = 0, - length = props.length; - - for ( ; index < length ; index++ ) { - prop = props[ index ]; - Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; - Animation.tweeners[ prop ].unshift( callback ); - } - }, - - prefilters: [ defaultPrefilter ], - - prefilter: function( callback, prepend ) { - if ( prepend ) { - Animation.prefilters.unshift( callback ); - } else { - Animation.prefilters.push( callback ); - } - } -} ); - -jQuery.speed = function( speed, easing, fn ) { - var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { - complete: fn || !fn && easing || - jQuery.isFunction( speed ) && speed, - duration: speed, - easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing - }; - - opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration : - opt.duration in jQuery.fx.speeds ? - jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default; - - // normalize opt.queue - true/undefined/null -> "fx" - if ( opt.queue == null || opt.queue === true ) { - opt.queue = "fx"; - } - - // Queueing - opt.old = opt.complete; - - opt.complete = function() { - if ( jQuery.isFunction( opt.old ) ) { - opt.old.call( this ); - } - - if ( opt.queue ) { - jQuery.dequeue( this, opt.queue ); - } - }; - - return opt; -}; - -jQuery.fn.extend( { - fadeTo: function( speed, to, easing, callback ) { - - // show any hidden elements after setting opacity to 0 - return this.filter( isHidden ).css( "opacity", 0 ).show() - - // animate to the value specified - .end().animate( { opacity: to }, speed, easing, callback ); - }, - animate: function( prop, speed, easing, callback ) { - var empty = jQuery.isEmptyObject( prop ), - optall = jQuery.speed( speed, easing, callback ), - doAnimation = function() { - - // Operate on a copy of prop so per-property easing won't be lost - var anim = Animation( this, jQuery.extend( {}, prop ), optall ); - - // Empty animations, or finishing resolves immediately - if ( empty || jQuery._data( this, "finish" ) ) { - anim.stop( true ); - } - }; - doAnimation.finish = doAnimation; - - return empty || optall.queue === false ? - this.each( doAnimation ) : - this.queue( optall.queue, doAnimation ); - }, - stop: function( type, clearQueue, gotoEnd ) { - var stopQueue = function( hooks ) { - var stop = hooks.stop; - delete hooks.stop; - stop( gotoEnd ); - }; - - if ( typeof type !== "string" ) { - gotoEnd = clearQueue; - clearQueue = type; - type = undefined; - } - if ( clearQueue && type !== false ) { - this.queue( type || "fx", [] ); - } - - return this.each( function() { - var dequeue = true, - index = type != null && type + "queueHooks", - timers = jQuery.timers, - data = jQuery._data( this ); - - if ( index ) { - if ( data[ index ] && data[ index ].stop ) { - stopQueue( data[ index ] ); - } - } else { - for ( index in data ) { - if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { - stopQueue( data[ index ] ); - } - } - } - - for ( index = timers.length; index--; ) { - if ( timers[ index ].elem === this && - ( type == null || timers[ index ].queue === type ) ) { - - timers[ index ].anim.stop( gotoEnd ); - dequeue = false; - timers.splice( index, 1 ); - } - } - - // start the next in the queue if the last step wasn't forced - // timers currently will call their complete callbacks, which will dequeue - // but only if they were gotoEnd - if ( dequeue || !gotoEnd ) { - jQuery.dequeue( this, type ); - } - } ); - }, - finish: function( type ) { - if ( type !== false ) { - type = type || "fx"; - } - return this.each( function() { - var index, - data = jQuery._data( this ), - queue = data[ type + "queue" ], - hooks = data[ type + "queueHooks" ], - timers = jQuery.timers, - length = queue ? queue.length : 0; - - // enable finishing flag on private data - data.finish = true; - - // empty the queue first - jQuery.queue( this, type, [] ); - - if ( hooks && hooks.stop ) { - hooks.stop.call( this, true ); - } - - // look for any active animations, and finish them - for ( index = timers.length; index--; ) { - if ( timers[ index ].elem === this && timers[ index ].queue === type ) { - timers[ index ].anim.stop( true ); - timers.splice( index, 1 ); - } - } - - // look for any animations in the old queue and finish them - for ( index = 0; index < length; index++ ) { - if ( queue[ index ] && queue[ index ].finish ) { - queue[ index ].finish.call( this ); - } - } - - // turn off finishing flag - delete data.finish; - } ); - } -} ); - -jQuery.each( [ "toggle", "show", "hide" ], function( i, name ) { - var cssFn = jQuery.fn[ name ]; - jQuery.fn[ name ] = function( speed, easing, callback ) { - return speed == null || typeof speed === "boolean" ? - cssFn.apply( this, arguments ) : - this.animate( genFx( name, true ), speed, easing, callback ); - }; -} ); - -// Generate shortcuts for custom animations -jQuery.each( { - slideDown: genFx( "show" ), - slideUp: genFx( "hide" ), - slideToggle: genFx( "toggle" ), - fadeIn: { opacity: "show" }, - fadeOut: { opacity: "hide" }, - fadeToggle: { opacity: "toggle" } -}, function( name, props ) { - jQuery.fn[ name ] = function( speed, easing, callback ) { - return this.animate( props, speed, easing, callback ); - }; -} ); - -jQuery.timers = []; -jQuery.fx.tick = function() { - var timer, - timers = jQuery.timers, - i = 0; - - fxNow = jQuery.now(); - - for ( ; i < timers.length; i++ ) { - timer = timers[ i ]; - - // Checks the timer has not already been removed - if ( !timer() && timers[ i ] === timer ) { - timers.splice( i--, 1 ); - } - } - - if ( !timers.length ) { - jQuery.fx.stop(); - } - fxNow = undefined; -}; - -jQuery.fx.timer = function( timer ) { - jQuery.timers.push( timer ); - if ( timer() ) { - jQuery.fx.start(); - } else { - jQuery.timers.pop(); - } -}; - -jQuery.fx.interval = 13; - -jQuery.fx.start = function() { - if ( !timerId ) { - timerId = window.setInterval( jQuery.fx.tick, jQuery.fx.interval ); - } -}; - -jQuery.fx.stop = function() { - window.clearInterval( timerId ); - timerId = null; -}; - -jQuery.fx.speeds = { - slow: 600, - fast: 200, - - // Default speed - _default: 400 -}; - - -// Based off of the plugin by Clint Helfers, with permission. -// http://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ -jQuery.fn.delay = function( time, type ) { - time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; - type = type || "fx"; - - return this.queue( type, function( next, hooks ) { - var timeout = window.setTimeout( next, time ); - hooks.stop = function() { - window.clearTimeout( timeout ); - }; - } ); -}; - - -( function() { - var a, - input = document.createElement( "input" ), - div = document.createElement( "div" ), - select = document.createElement( "select" ), - opt = select.appendChild( document.createElement( "option" ) ); - - // Setup - div = document.createElement( "div" ); - div.setAttribute( "className", "t" ); - div.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>"; - a = div.getElementsByTagName( "a" )[ 0 ]; - - // Support: Windows Web Apps (WWA) - // `type` must use .setAttribute for WWA (#14901) - input.setAttribute( "type", "checkbox" ); - div.appendChild( input ); - - a = div.getElementsByTagName( "a" )[ 0 ]; - - // First batch of tests. - a.style.cssText = "top:1px"; - - // Test setAttribute on camelCase class. - // If it works, we need attrFixes when doing get/setAttribute (ie6/7) - support.getSetAttribute = div.className !== "t"; - - // Get the style information from getAttribute - // (IE uses .cssText instead) - support.style = /top/.test( a.getAttribute( "style" ) ); - - // Make sure that URLs aren't manipulated - // (IE normalizes it by default) - support.hrefNormalized = a.getAttribute( "href" ) === "/a"; - - // Check the default checkbox/radio value ("" on WebKit; "on" elsewhere) - support.checkOn = !!input.value; - - // Make sure that a selected-by-default option has a working selected property. - // (WebKit defaults to false instead of true, IE too, if it's in an optgroup) - support.optSelected = opt.selected; - - // Tests for enctype support on a form (#6743) - support.enctype = !!document.createElement( "form" ).enctype; - - // Make sure that the options inside disabled selects aren't marked as disabled - // (WebKit marks them as disabled) - select.disabled = true; - support.optDisabled = !opt.disabled; - - // Support: IE8 only - // Check if we can trust getAttribute("value") - input = document.createElement( "input" ); - input.setAttribute( "value", "" ); - support.input = input.getAttribute( "value" ) === ""; - - // Check if an input maintains its value after becoming a radio - input.value = "t"; - input.setAttribute( "type", "radio" ); - support.radioValue = input.value === "t"; -} )(); - - -var rreturn = /\r/g, - rspaces = /[\x20\t\r\n\f]+/g; - -jQuery.fn.extend( { - val: function( value ) { - var hooks, ret, isFunction, - elem = this[ 0 ]; - - if ( !arguments.length ) { - if ( elem ) { - hooks = jQuery.valHooks[ elem.type ] || - jQuery.valHooks[ elem.nodeName.toLowerCase() ]; - - if ( - hooks && - "get" in hooks && - ( ret = hooks.get( elem, "value" ) ) !== undefined - ) { - return ret; - } - - ret = elem.value; - - return typeof ret === "string" ? - - // handle most common string cases - ret.replace( rreturn, "" ) : - - // handle cases where value is null/undef or number - ret == null ? "" : ret; - } - - return; - } - - isFunction = jQuery.isFunction( value ); - - return this.each( function( i ) { - var val; - - if ( this.nodeType !== 1 ) { - return; - } - - if ( isFunction ) { - val = value.call( this, i, jQuery( this ).val() ); - } else { - val = value; - } - - // Treat null/undefined as ""; convert numbers to string - if ( val == null ) { - val = ""; - } else if ( typeof val === "number" ) { - val += ""; - } else if ( jQuery.isArray( val ) ) { - val = jQuery.map( val, function( value ) { - return value == null ? "" : value + ""; - } ); - } - - hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; - - // If set returns undefined, fall back to normal setting - if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { - this.value = val; - } - } ); - } -} ); - -jQuery.extend( { - valHooks: { - option: { - get: function( elem ) { - var val = jQuery.find.attr( elem, "value" ); - return val != null ? - val : - - // Support: IE10-11+ - // option.text throws exceptions (#14686, #14858) - // Strip and collapse whitespace - // https://html.spec.whatwg.org/#strip-and-collapse-whitespace - jQuery.trim( jQuery.text( elem ) ).replace( rspaces, " " ); - } - }, - select: { - get: function( elem ) { - var value, option, - options = elem.options, - index = elem.selectedIndex, - one = elem.type === "select-one" || index < 0, - values = one ? null : [], - max = one ? index + 1 : options.length, - i = index < 0 ? - max : - one ? index : 0; - - // Loop through all the selected options - for ( ; i < max; i++ ) { - option = options[ i ]; - - // oldIE doesn't update selected after form reset (#2551) - if ( ( option.selected || i === index ) && - - // Don't return options that are disabled or in a disabled optgroup - ( support.optDisabled ? - !option.disabled : - option.getAttribute( "disabled" ) === null ) && - ( !option.parentNode.disabled || - !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) { - - // Get the specific value for the option - value = jQuery( option ).val(); - - // We don't need an array for one selects - if ( one ) { - return value; - } - - // Multi-Selects return an array - values.push( value ); - } - } - - return values; - }, - - set: function( elem, value ) { - var optionSet, option, - options = elem.options, - values = jQuery.makeArray( value ), - i = options.length; - - while ( i-- ) { - option = options[ i ]; - - if ( jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 ) { - - // Support: IE6 - // When new option element is added to select box we need to - // force reflow of newly added node in order to workaround delay - // of initialization properties - try { - option.selected = optionSet = true; - - } catch ( _ ) { - - // Will be executed only in IE6 - option.scrollHeight; - } - - } else { - option.selected = false; - } - } - - // Force browsers to behave consistently when non-matching value is set - if ( !optionSet ) { - elem.selectedIndex = -1; - } - - return options; - } - } - } -} ); - -// Radios and checkboxes getter/setter -jQuery.each( [ "radio", "checkbox" ], function() { - jQuery.valHooks[ this ] = { - set: function( elem, value ) { - if ( jQuery.isArray( value ) ) { - return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); - } - } - }; - if ( !support.checkOn ) { - jQuery.valHooks[ this ].get = function( elem ) { - return elem.getAttribute( "value" ) === null ? "on" : elem.value; - }; - } -} ); - - - - -var nodeHook, boolHook, - attrHandle = jQuery.expr.attrHandle, - ruseDefault = /^(?:checked|selected)$/i, - getSetAttribute = support.getSetAttribute, - getSetInput = support.input; - -jQuery.fn.extend( { - attr: function( name, value ) { - return access( this, jQuery.attr, name, value, arguments.length > 1 ); - }, - - removeAttr: function( name ) { - return this.each( function() { - jQuery.removeAttr( this, name ); - } ); - } -} ); - -jQuery.extend( { - attr: function( elem, name, value ) { - var ret, hooks, - nType = elem.nodeType; - - // Don't get/set attributes on text, comment and attribute nodes - if ( nType === 3 || nType === 8 || nType === 2 ) { - return; - } - - // Fallback to prop when attributes are not supported - if ( typeof elem.getAttribute === "undefined" ) { - return jQuery.prop( elem, name, value ); - } - - // All attributes are lowercase - // Grab necessary hook if one is defined - if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { - name = name.toLowerCase(); - hooks = jQuery.attrHooks[ name ] || - ( jQuery.expr.match.bool.test( name ) ? boolHook : nodeHook ); - } - - if ( value !== undefined ) { - if ( value === null ) { - jQuery.removeAttr( elem, name ); - return; - } - - if ( hooks && "set" in hooks && - ( ret = hooks.set( elem, value, name ) ) !== undefined ) { - return ret; - } - - elem.setAttribute( name, value + "" ); - return value; - } - - if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { - return ret; - } - - ret = jQuery.find.attr( elem, name ); - - // Non-existent attributes return null, we normalize to undefined - return ret == null ? undefined : ret; - }, - - attrHooks: { - type: { - set: function( elem, value ) { - if ( !support.radioValue && value === "radio" && - jQuery.nodeName( elem, "input" ) ) { - - // Setting the type on a radio button after the value resets the value in IE8-9 - // Reset value to default in case type is set after value during creation - var val = elem.value; - elem.setAttribute( "type", value ); - if ( val ) { - elem.value = val; - } - return value; - } - } - } - }, - - removeAttr: function( elem, value ) { - var name, propName, - i = 0, - attrNames = value && value.match( rnotwhite ); - - if ( attrNames && elem.nodeType === 1 ) { - while ( ( name = attrNames[ i++ ] ) ) { - propName = jQuery.propFix[ name ] || name; - - // Boolean attributes get special treatment (#10870) - if ( jQuery.expr.match.bool.test( name ) ) { - - // Set corresponding property to false - if ( getSetInput && getSetAttribute || !ruseDefault.test( name ) ) { - elem[ propName ] = false; - - // Support: IE<9 - // Also clear defaultChecked/defaultSelected (if appropriate) - } else { - elem[ jQuery.camelCase( "default-" + name ) ] = - elem[ propName ] = false; - } - - // See #9699 for explanation of this approach (setting first, then removal) - } else { - jQuery.attr( elem, name, "" ); - } - - elem.removeAttribute( getSetAttribute ? name : propName ); - } - } - } -} ); - -// Hooks for boolean attributes -boolHook = { - set: function( elem, value, name ) { - if ( value === false ) { - - // Remove boolean attributes when set to false - jQuery.removeAttr( elem, name ); - } else if ( getSetInput && getSetAttribute || !ruseDefault.test( name ) ) { - - // IE<8 needs the *property* name - elem.setAttribute( !getSetAttribute && jQuery.propFix[ name ] || name, name ); - - } else { - - // Support: IE<9 - // Use defaultChecked and defaultSelected for oldIE - elem[ jQuery.camelCase( "default-" + name ) ] = elem[ name ] = true; - } - return name; - } -}; - -jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) { - var getter = attrHandle[ name ] || jQuery.find.attr; - - if ( getSetInput && getSetAttribute || !ruseDefault.test( name ) ) { - attrHandle[ name ] = function( elem, name, isXML ) { - var ret, handle; - if ( !isXML ) { - - // Avoid an infinite loop by temporarily removing this function from the getter - handle = attrHandle[ name ]; - attrHandle[ name ] = ret; - ret = getter( elem, name, isXML ) != null ? - name.toLowerCase() : - null; - attrHandle[ name ] = handle; - } - return ret; - }; - } else { - attrHandle[ name ] = function( elem, name, isXML ) { - if ( !isXML ) { - return elem[ jQuery.camelCase( "default-" + name ) ] ? - name.toLowerCase() : - null; - } - }; - } -} ); - -// fix oldIE attroperties -if ( !getSetInput || !getSetAttribute ) { - jQuery.attrHooks.value = { - set: function( elem, value, name ) { - if ( jQuery.nodeName( elem, "input" ) ) { - - // Does not return so that setAttribute is also used - elem.defaultValue = value; - } else { - - // Use nodeHook if defined (#1954); otherwise setAttribute is fine - return nodeHook && nodeHook.set( elem, value, name ); - } - } - }; -} - -// IE6/7 do not support getting/setting some attributes with get/setAttribute -if ( !getSetAttribute ) { - - // Use this for any attribute in IE6/7 - // This fixes almost every IE6/7 issue - nodeHook = { - set: function( elem, value, name ) { - - // Set the existing or create a new attribute node - var ret = elem.getAttributeNode( name ); - if ( !ret ) { - elem.setAttributeNode( - ( ret = elem.ownerDocument.createAttribute( name ) ) - ); - } - - ret.value = value += ""; - - // Break association with cloned elements by also using setAttribute (#9646) - if ( name === "value" || value === elem.getAttribute( name ) ) { - return value; - } - } - }; - - // Some attributes are constructed with empty-string values when not defined - attrHandle.id = attrHandle.name = attrHandle.coords = - function( elem, name, isXML ) { - var ret; - if ( !isXML ) { - return ( ret = elem.getAttributeNode( name ) ) && ret.value !== "" ? - ret.value : - null; - } - }; - - // Fixing value retrieval on a button requires this module - jQuery.valHooks.button = { - get: function( elem, name ) { - var ret = elem.getAttributeNode( name ); - if ( ret && ret.specified ) { - return ret.value; - } - }, - set: nodeHook.set - }; - - // Set contenteditable to false on removals(#10429) - // Setting to empty string throws an error as an invalid value - jQuery.attrHooks.contenteditable = { - set: function( elem, value, name ) { - nodeHook.set( elem, value === "" ? false : value, name ); - } - }; - - // Set width and height to auto instead of 0 on empty string( Bug #8150 ) - // This is for removals - jQuery.each( [ "width", "height" ], function( i, name ) { - jQuery.attrHooks[ name ] = { - set: function( elem, value ) { - if ( value === "" ) { - elem.setAttribute( name, "auto" ); - return value; - } - } - }; - } ); -} - -if ( !support.style ) { - jQuery.attrHooks.style = { - get: function( elem ) { - - // Return undefined in the case of empty string - // Note: IE uppercases css property names, but if we were to .toLowerCase() - // .cssText, that would destroy case sensitivity in URL's, like in "background" - return elem.style.cssText || undefined; - }, - set: function( elem, value ) { - return ( elem.style.cssText = value + "" ); - } - }; -} - - - - -var rfocusable = /^(?:input|select|textarea|button|object)$/i, - rclickable = /^(?:a|area)$/i; - -jQuery.fn.extend( { - prop: function( name, value ) { - return access( this, jQuery.prop, name, value, arguments.length > 1 ); - }, - - removeProp: function( name ) { - name = jQuery.propFix[ name ] || name; - return this.each( function() { - - // try/catch handles cases where IE balks (such as removing a property on window) - try { - this[ name ] = undefined; - delete this[ name ]; - } catch ( e ) {} - } ); - } -} ); - -jQuery.extend( { - prop: function( elem, name, value ) { - var ret, hooks, - nType = elem.nodeType; - - // Don't get/set properties on text, comment and attribute nodes - if ( nType === 3 || nType === 8 || nType === 2 ) { - return; - } - - if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { - - // Fix name and attach hooks - name = jQuery.propFix[ name ] || name; - hooks = jQuery.propHooks[ name ]; - } - - if ( value !== undefined ) { - if ( hooks && "set" in hooks && - ( ret = hooks.set( elem, value, name ) ) !== undefined ) { - return ret; - } - - return ( elem[ name ] = value ); - } - - if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { - return ret; - } - - return elem[ name ]; - }, - - propHooks: { - tabIndex: { - get: function( elem ) { - - // elem.tabIndex doesn't always return the - // correct value when it hasn't been explicitly set - // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ - // Use proper attribute retrieval(#12072) - var tabindex = jQuery.find.attr( elem, "tabindex" ); - - return tabindex ? - parseInt( tabindex, 10 ) : - rfocusable.test( elem.nodeName ) || - rclickable.test( elem.nodeName ) && elem.href ? - 0 : - -1; - } - } - }, - - propFix: { - "for": "htmlFor", - "class": "className" - } -} ); - -// Some attributes require a special call on IE -// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx -if ( !support.hrefNormalized ) { - - // href/src property should get the full normalized URL (#10299/#12915) - jQuery.each( [ "href", "src" ], function( i, name ) { - jQuery.propHooks[ name ] = { - get: function( elem ) { - return elem.getAttribute( name, 4 ); - } - }; - } ); -} - -// Support: Safari, IE9+ -// Accessing the selectedIndex property -// forces the browser to respect setting selected -// on the option -// The getter ensures a default option is selected -// when in an optgroup -if ( !support.optSelected ) { - jQuery.propHooks.selected = { - get: function( elem ) { - var parent = elem.parentNode; - - if ( parent ) { - parent.selectedIndex; - - // Make sure that it also works with optgroups, see #5701 - if ( parent.parentNode ) { - parent.parentNode.selectedIndex; - } - } - return null; - }, - set: function( elem ) { - var parent = elem.parentNode; - if ( parent ) { - parent.selectedIndex; - - if ( parent.parentNode ) { - parent.parentNode.selectedIndex; - } - } - } - }; -} - -jQuery.each( [ - "tabIndex", - "readOnly", - "maxLength", - "cellSpacing", - "cellPadding", - "rowSpan", - "colSpan", - "useMap", - "frameBorder", - "contentEditable" -], function() { - jQuery.propFix[ this.toLowerCase() ] = this; -} ); - -// IE6/7 call enctype encoding -if ( !support.enctype ) { - jQuery.propFix.enctype = "encoding"; -} - - - - -var rclass = /[\t\r\n\f]/g; - -function getClass( elem ) { - return jQuery.attr( elem, "class" ) || ""; -} - -jQuery.fn.extend( { - addClass: function( value ) { - var classes, elem, cur, curValue, clazz, j, finalValue, - i = 0; - - if ( jQuery.isFunction( value ) ) { - return this.each( function( j ) { - jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); - } ); - } - - if ( typeof value === "string" && value ) { - classes = value.match( rnotwhite ) || []; - - while ( ( elem = this[ i++ ] ) ) { - curValue = getClass( elem ); - cur = elem.nodeType === 1 && - ( " " + curValue + " " ).replace( rclass, " " ); - - if ( cur ) { - j = 0; - while ( ( clazz = classes[ j++ ] ) ) { - if ( cur.indexOf( " " + clazz + " " ) < 0 ) { - cur += clazz + " "; - } - } - - // only assign if different to avoid unneeded rendering. - finalValue = jQuery.trim( cur ); - if ( curValue !== finalValue ) { - jQuery.attr( elem, "class", finalValue ); - } - } - } - } - - return this; - }, - - removeClass: function( value ) { - var classes, elem, cur, curValue, clazz, j, finalValue, - i = 0; - - if ( jQuery.isFunction( value ) ) { - return this.each( function( j ) { - jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); - } ); - } - - if ( !arguments.length ) { - return this.attr( "class", "" ); - } - - if ( typeof value === "string" && value ) { - classes = value.match( rnotwhite ) || []; - - while ( ( elem = this[ i++ ] ) ) { - curValue = getClass( elem ); - - // This expression is here for better compressibility (see addClass) - cur = elem.nodeType === 1 && - ( " " + curValue + " " ).replace( rclass, " " ); - - if ( cur ) { - j = 0; - while ( ( clazz = classes[ j++ ] ) ) { - - // Remove *all* instances - while ( cur.indexOf( " " + clazz + " " ) > -1 ) { - cur = cur.replace( " " + clazz + " ", " " ); - } - } - - // Only assign if different to avoid unneeded rendering. - finalValue = jQuery.trim( cur ); - if ( curValue !== finalValue ) { - jQuery.attr( elem, "class", finalValue ); - } - } - } - } - - return this; - }, - - toggleClass: function( value, stateVal ) { - var type = typeof value; - - if ( typeof stateVal === "boolean" && type === "string" ) { - return stateVal ? this.addClass( value ) : this.removeClass( value ); - } - - if ( jQuery.isFunction( value ) ) { - return this.each( function( i ) { - jQuery( this ).toggleClass( - value.call( this, i, getClass( this ), stateVal ), - stateVal - ); - } ); - } - - return this.each( function() { - var className, i, self, classNames; - - if ( type === "string" ) { - - // Toggle individual class names - i = 0; - self = jQuery( this ); - classNames = value.match( rnotwhite ) || []; - - while ( ( className = classNames[ i++ ] ) ) { - - // Check each className given, space separated list - if ( self.hasClass( className ) ) { - self.removeClass( className ); - } else { - self.addClass( className ); - } - } - - // Toggle whole class name - } else if ( value === undefined || type === "boolean" ) { - className = getClass( this ); - if ( className ) { - - // store className if set - jQuery._data( this, "__className__", className ); - } - - // If the element has a class name or if we're passed "false", - // then remove the whole classname (if there was one, the above saved it). - // Otherwise bring back whatever was previously saved (if anything), - // falling back to the empty string if nothing was stored. - jQuery.attr( this, "class", - className || value === false ? - "" : - jQuery._data( this, "__className__" ) || "" - ); - } - } ); - }, - - hasClass: function( selector ) { - var className, elem, - i = 0; - - className = " " + selector + " "; - while ( ( elem = this[ i++ ] ) ) { - if ( elem.nodeType === 1 && - ( " " + getClass( elem ) + " " ).replace( rclass, " " ) - .indexOf( className ) > -1 - ) { - return true; - } - } - - return false; - } -} ); - - - - -// Return jQuery for attributes-only inclusion - - -jQuery.each( ( "blur focus focusin focusout load resize scroll unload click dblclick " + - "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + - "change select submit keydown keypress keyup error contextmenu" ).split( " " ), - function( i, name ) { - - // Handle event binding - jQuery.fn[ name ] = function( data, fn ) { - return arguments.length > 0 ? - this.on( name, null, data, fn ) : - this.trigger( name ); - }; -} ); - -jQuery.fn.extend( { - hover: function( fnOver, fnOut ) { - return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); - } -} ); - - -var location = window.location; - -var nonce = jQuery.now(); - -var rquery = ( /\?/ ); - - - -var rvalidtokens = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g; - -jQuery.parseJSON = function( data ) { - - // Attempt to parse using the native JSON parser first - if ( window.JSON && window.JSON.parse ) { - - // Support: Android 2.3 - // Workaround failure to string-cast null input - return window.JSON.parse( data + "" ); - } - - var requireNonComma, - depth = null, - str = jQuery.trim( data + "" ); - - // Guard against invalid (and possibly dangerous) input by ensuring that nothing remains - // after removing valid tokens - return str && !jQuery.trim( str.replace( rvalidtokens, function( token, comma, open, close ) { - - // Force termination if we see a misplaced comma - if ( requireNonComma && comma ) { - depth = 0; - } - - // Perform no more replacements after returning to outermost depth - if ( depth === 0 ) { - return token; - } - - // Commas must not follow "[", "{", or "," - requireNonComma = open || comma; - - // Determine new depth - // array/object open ("[" or "{"): depth += true - false (increment) - // array/object close ("]" or "}"): depth += false - true (decrement) - // other cases ("," or primitive): depth += true - true (numeric cast) - depth += !close - !open; - - // Remove this token - return ""; - } ) ) ? - ( Function( "return " + str ) )() : - jQuery.error( "Invalid JSON: " + data ); -}; - - -// Cross-browser xml parsing -jQuery.parseXML = function( data ) { - var xml, tmp; - if ( !data || typeof data !== "string" ) { - return null; - } - try { - if ( window.DOMParser ) { // Standard - tmp = new window.DOMParser(); - xml = tmp.parseFromString( data, "text/xml" ); - } else { // IE - xml = new window.ActiveXObject( "Microsoft.XMLDOM" ); - xml.async = "false"; - xml.loadXML( data ); - } - } catch ( e ) { - xml = undefined; - } - if ( !xml || !xml.documentElement || xml.getElementsByTagName( "parsererror" ).length ) { - jQuery.error( "Invalid XML: " + data ); - } - return xml; -}; - - -var - rhash = /#.*$/, - rts = /([?&])_=[^&]*/, - - // IE leaves an \r character at EOL - rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, - - // #7653, #8125, #8152: local protocol detection - rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, - rnoContent = /^(?:GET|HEAD)$/, - rprotocol = /^\/\//, - rurl = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/, - - /* Prefilters - * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) - * 2) These are called: - * - BEFORE asking for a transport - * - AFTER param serialization (s.data is a string if s.processData is true) - * 3) key is the dataType - * 4) the catchall symbol "*" can be used - * 5) execution will start with transport dataType and THEN continue down to "*" if needed - */ - prefilters = {}, - - /* Transports bindings - * 1) key is the dataType - * 2) the catchall symbol "*" can be used - * 3) selection will start with transport dataType and THEN go to "*" if needed - */ - transports = {}, - - // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression - allTypes = "*/".concat( "*" ), - - // Document location - ajaxLocation = location.href, - - // Segment location into parts - ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || []; - -// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport -function addToPrefiltersOrTransports( structure ) { - - // dataTypeExpression is optional and defaults to "*" - return function( dataTypeExpression, func ) { - - if ( typeof dataTypeExpression !== "string" ) { - func = dataTypeExpression; - dataTypeExpression = "*"; - } - - var dataType, - i = 0, - dataTypes = dataTypeExpression.toLowerCase().match( rnotwhite ) || []; - - if ( jQuery.isFunction( func ) ) { - - // For each dataType in the dataTypeExpression - while ( ( dataType = dataTypes[ i++ ] ) ) { - - // Prepend if requested - if ( dataType.charAt( 0 ) === "+" ) { - dataType = dataType.slice( 1 ) || "*"; - ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); - - // Otherwise append - } else { - ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); - } - } - } - }; -} - -// Base inspection function for prefilters and transports -function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { - - var inspected = {}, - seekingTransport = ( structure === transports ); - - function inspect( dataType ) { - var selected; - inspected[ dataType ] = true; - jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { - var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); - if ( typeof dataTypeOrTransport === "string" && - !seekingTransport && !inspected[ dataTypeOrTransport ] ) { - - options.dataTypes.unshift( dataTypeOrTransport ); - inspect( dataTypeOrTransport ); - return false; - } else if ( seekingTransport ) { - return !( selected = dataTypeOrTransport ); - } - } ); - return selected; - } - - return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); -} - -// A special extend for ajax options -// that takes "flat" options (not to be deep extended) -// Fixes #9887 -function ajaxExtend( target, src ) { - var deep, key, - flatOptions = jQuery.ajaxSettings.flatOptions || {}; - - for ( key in src ) { - if ( src[ key ] !== undefined ) { - ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; - } - } - if ( deep ) { - jQuery.extend( true, target, deep ); - } - - return target; -} - -/* Handles responses to an ajax request: - * - finds the right dataType (mediates between content-type and expected dataType) - * - returns the corresponding response - */ -function ajaxHandleResponses( s, jqXHR, responses ) { - var firstDataType, ct, finalDataType, type, - contents = s.contents, - dataTypes = s.dataTypes; - - // Remove auto dataType and get content-type in the process - while ( dataTypes[ 0 ] === "*" ) { - dataTypes.shift(); - if ( ct === undefined ) { - ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); - } - } - - // Check if we're dealing with a known content-type - if ( ct ) { - for ( type in contents ) { - if ( contents[ type ] && contents[ type ].test( ct ) ) { - dataTypes.unshift( type ); - break; - } - } - } - - // Check to see if we have a response for the expected dataType - if ( dataTypes[ 0 ] in responses ) { - finalDataType = dataTypes[ 0 ]; - } else { - - // Try convertible dataTypes - for ( type in responses ) { - if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { - finalDataType = type; - break; - } - if ( !firstDataType ) { - firstDataType = type; - } - } - - // Or just use first one - finalDataType = finalDataType || firstDataType; - } - - // If we found a dataType - // We add the dataType to the list if needed - // and return the corresponding response - if ( finalDataType ) { - if ( finalDataType !== dataTypes[ 0 ] ) { - dataTypes.unshift( finalDataType ); - } - return responses[ finalDataType ]; - } -} - -/* Chain conversions given the request and the original response - * Also sets the responseXXX fields on the jqXHR instance - */ -function ajaxConvert( s, response, jqXHR, isSuccess ) { - var conv2, current, conv, tmp, prev, - converters = {}, - - // Work with a copy of dataTypes in case we need to modify it for conversion - dataTypes = s.dataTypes.slice(); - - // Create converters map with lowercased keys - if ( dataTypes[ 1 ] ) { - for ( conv in s.converters ) { - converters[ conv.toLowerCase() ] = s.converters[ conv ]; - } - } - - current = dataTypes.shift(); - - // Convert to each sequential dataType - while ( current ) { - - if ( s.responseFields[ current ] ) { - jqXHR[ s.responseFields[ current ] ] = response; - } - - // Apply the dataFilter if provided - if ( !prev && isSuccess && s.dataFilter ) { - response = s.dataFilter( response, s.dataType ); - } - - prev = current; - current = dataTypes.shift(); - - if ( current ) { - - // There's only work to do if current dataType is non-auto - if ( current === "*" ) { - - current = prev; - - // Convert response if prev dataType is non-auto and differs from current - } else if ( prev !== "*" && prev !== current ) { - - // Seek a direct converter - conv = converters[ prev + " " + current ] || converters[ "* " + current ]; - - // If none found, seek a pair - if ( !conv ) { - for ( conv2 in converters ) { - - // If conv2 outputs current - tmp = conv2.split( " " ); - if ( tmp[ 1 ] === current ) { - - // If prev can be converted to accepted input - conv = converters[ prev + " " + tmp[ 0 ] ] || - converters[ "* " + tmp[ 0 ] ]; - if ( conv ) { - - // Condense equivalence converters - if ( conv === true ) { - conv = converters[ conv2 ]; - - // Otherwise, insert the intermediate dataType - } else if ( converters[ conv2 ] !== true ) { - current = tmp[ 0 ]; - dataTypes.unshift( tmp[ 1 ] ); - } - break; - } - } - } - } - - // Apply converter (if not an equivalence) - if ( conv !== true ) { - - // Unless errors are allowed to bubble, catch and return them - if ( conv && s[ "throws" ] ) { // jscs:ignore requireDotNotation - response = conv( response ); - } else { - try { - response = conv( response ); - } catch ( e ) { - return { - state: "parsererror", - error: conv ? e : "No conversion from " + prev + " to " + current - }; - } - } - } - } - } - } - - return { state: "success", data: response }; -} - -jQuery.extend( { - - // Counter for holding the number of active queries - active: 0, - - // Last-Modified header cache for next request - lastModified: {}, - etag: {}, - - ajaxSettings: { - url: ajaxLocation, - type: "GET", - isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ), - global: true, - processData: true, - async: true, - contentType: "application/x-www-form-urlencoded; charset=UTF-8", - /* - timeout: 0, - data: null, - dataType: null, - username: null, - password: null, - cache: null, - throws: false, - traditional: false, - headers: {}, - */ - - accepts: { - "*": allTypes, - text: "text/plain", - html: "text/html", - xml: "application/xml, text/xml", - json: "application/json, text/javascript" - }, - - contents: { - xml: /\bxml\b/, - html: /\bhtml/, - json: /\bjson\b/ - }, - - responseFields: { - xml: "responseXML", - text: "responseText", - json: "responseJSON" - }, - - // Data converters - // Keys separate source (or catchall "*") and destination types with a single space - converters: { - - // Convert anything to text - "* text": String, - - // Text to html (true = no transformation) - "text html": true, - - // Evaluate text as a json expression - "text json": jQuery.parseJSON, - - // Parse text as xml - "text xml": jQuery.parseXML - }, - - // For options that shouldn't be deep extended: - // you can add your own custom options here if - // and when you create one that shouldn't be - // deep extended (see ajaxExtend) - flatOptions: { - url: true, - context: true - } - }, - - // Creates a full fledged settings object into target - // with both ajaxSettings and settings fields. - // If target is omitted, writes into ajaxSettings. - ajaxSetup: function( target, settings ) { - return settings ? - - // Building a settings object - ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : - - // Extending ajaxSettings - ajaxExtend( jQuery.ajaxSettings, target ); - }, - - ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), - ajaxTransport: addToPrefiltersOrTransports( transports ), - - // Main method - ajax: function( url, options ) { - - // If url is an object, simulate pre-1.5 signature - if ( typeof url === "object" ) { - options = url; - url = undefined; - } - - // Force options to be an object - options = options || {}; - - var - - // Cross-domain detection vars - parts, - - // Loop variable - i, - - // URL without anti-cache param - cacheURL, - - // Response headers as string - responseHeadersString, - - // timeout handle - timeoutTimer, - - // To know if global events are to be dispatched - fireGlobals, - - transport, - - // Response headers - responseHeaders, - - // Create the final options object - s = jQuery.ajaxSetup( {}, options ), - - // Callbacks context - callbackContext = s.context || s, - - // Context for global events is callbackContext if it is a DOM node or jQuery collection - globalEventContext = s.context && - ( callbackContext.nodeType || callbackContext.jquery ) ? - jQuery( callbackContext ) : - jQuery.event, - - // Deferreds - deferred = jQuery.Deferred(), - completeDeferred = jQuery.Callbacks( "once memory" ), - - // Status-dependent callbacks - statusCode = s.statusCode || {}, - - // Headers (they are sent all at once) - requestHeaders = {}, - requestHeadersNames = {}, - - // The jqXHR state - state = 0, - - // Default abort message - strAbort = "canceled", - - // Fake xhr - jqXHR = { - readyState: 0, - - // Builds headers hashtable if needed - getResponseHeader: function( key ) { - var match; - if ( state === 2 ) { - if ( !responseHeaders ) { - responseHeaders = {}; - while ( ( match = rheaders.exec( responseHeadersString ) ) ) { - responseHeaders[ match[ 1 ].toLowerCase() ] = match[ 2 ]; - } - } - match = responseHeaders[ key.toLowerCase() ]; - } - return match == null ? null : match; - }, - - // Raw string - getAllResponseHeaders: function() { - return state === 2 ? responseHeadersString : null; - }, - - // Caches the header - setRequestHeader: function( name, value ) { - var lname = name.toLowerCase(); - if ( !state ) { - name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name; - requestHeaders[ name ] = value; - } - return this; - }, - - // Overrides response content-type header - overrideMimeType: function( type ) { - if ( !state ) { - s.mimeType = type; - } - return this; - }, - - // Status-dependent callbacks - statusCode: function( map ) { - var code; - if ( map ) { - if ( state < 2 ) { - for ( code in map ) { - - // Lazy-add the new callback in a way that preserves old ones - statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; - } - } else { - - // Execute the appropriate callbacks - jqXHR.always( map[ jqXHR.status ] ); - } - } - return this; - }, - - // Cancel the request - abort: function( statusText ) { - var finalText = statusText || strAbort; - if ( transport ) { - transport.abort( finalText ); - } - done( 0, finalText ); - return this; - } - }; - - // Attach deferreds - deferred.promise( jqXHR ).complete = completeDeferred.add; - jqXHR.success = jqXHR.done; - jqXHR.error = jqXHR.fail; - - // Remove hash character (#7531: and string promotion) - // Add protocol if not provided (#5866: IE7 issue with protocol-less urls) - // Handle falsy url in the settings object (#10093: consistency with old signature) - // We also use the url parameter if available - s.url = ( ( url || s.url || ajaxLocation ) + "" ) - .replace( rhash, "" ) - .replace( rprotocol, ajaxLocParts[ 1 ] + "//" ); - - // Alias method option to type as per ticket #12004 - s.type = options.method || options.type || s.method || s.type; - - // Extract dataTypes list - s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().match( rnotwhite ) || [ "" ]; - - // A cross-domain request is in order when we have a protocol:host:port mismatch - if ( s.crossDomain == null ) { - parts = rurl.exec( s.url.toLowerCase() ); - s.crossDomain = !!( parts && - ( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] || - ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? "80" : "443" ) ) !== - ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? "80" : "443" ) ) ) - ); - } - - // Convert data if not already a string - if ( s.data && s.processData && typeof s.data !== "string" ) { - s.data = jQuery.param( s.data, s.traditional ); - } - - // Apply prefilters - inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); - - // If request was aborted inside a prefilter, stop there - if ( state === 2 ) { - return jqXHR; - } - - // We can fire global events as of now if asked to - // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) - fireGlobals = jQuery.event && s.global; - - // Watch for a new set of requests - if ( fireGlobals && jQuery.active++ === 0 ) { - jQuery.event.trigger( "ajaxStart" ); - } - - // Uppercase the type - s.type = s.type.toUpperCase(); - - // Determine if request has content - s.hasContent = !rnoContent.test( s.type ); - - // Save the URL in case we're toying with the If-Modified-Since - // and/or If-None-Match header later on - cacheURL = s.url; - - // More options handling for requests with no content - if ( !s.hasContent ) { - - // If data is available, append data to url - if ( s.data ) { - cacheURL = ( s.url += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data ); - - // #9682: remove data so that it's not used in an eventual retry - delete s.data; - } - - // Add anti-cache in url if needed - if ( s.cache === false ) { - s.url = rts.test( cacheURL ) ? - - // If there is already a '_' parameter, set its value - cacheURL.replace( rts, "$1_=" + nonce++ ) : - - // Otherwise add one to the end - cacheURL + ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + nonce++; - } - } - - // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. - if ( s.ifModified ) { - if ( jQuery.lastModified[ cacheURL ] ) { - jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); - } - if ( jQuery.etag[ cacheURL ] ) { - jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); - } - } - - // Set the correct header, if data is being sent - if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { - jqXHR.setRequestHeader( "Content-Type", s.contentType ); - } - - // Set the Accepts header for the server, depending on the dataType - jqXHR.setRequestHeader( - "Accept", - s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? - s.accepts[ s.dataTypes[ 0 ] ] + - ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : - s.accepts[ "*" ] - ); - - // Check for headers option - for ( i in s.headers ) { - jqXHR.setRequestHeader( i, s.headers[ i ] ); - } - - // Allow custom headers/mimetypes and early abort - if ( s.beforeSend && - ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) { - - // Abort if not done already and return - return jqXHR.abort(); - } - - // aborting is no longer a cancellation - strAbort = "abort"; - - // Install callbacks on deferreds - for ( i in { success: 1, error: 1, complete: 1 } ) { - jqXHR[ i ]( s[ i ] ); - } - - // Get transport - transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); - - // If no transport, we auto-abort - if ( !transport ) { - done( -1, "No Transport" ); - } else { - jqXHR.readyState = 1; - - // Send global event - if ( fireGlobals ) { - globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); - } - - // If request was aborted inside ajaxSend, stop there - if ( state === 2 ) { - return jqXHR; - } - - // Timeout - if ( s.async && s.timeout > 0 ) { - timeoutTimer = window.setTimeout( function() { - jqXHR.abort( "timeout" ); - }, s.timeout ); - } - - try { - state = 1; - transport.send( requestHeaders, done ); - } catch ( e ) { - - // Propagate exception as error if not done - if ( state < 2 ) { - done( -1, e ); - - // Simply rethrow otherwise - } else { - throw e; - } - } - } - - // Callback for when everything is done - function done( status, nativeStatusText, responses, headers ) { - var isSuccess, success, error, response, modified, - statusText = nativeStatusText; - - // Called once - if ( state === 2 ) { - return; - } - - // State is "done" now - state = 2; - - // Clear timeout if it exists - if ( timeoutTimer ) { - window.clearTimeout( timeoutTimer ); - } - - // Dereference transport for early garbage collection - // (no matter how long the jqXHR object will be used) - transport = undefined; - - // Cache response headers - responseHeadersString = headers || ""; - - // Set readyState - jqXHR.readyState = status > 0 ? 4 : 0; - - // Determine if successful - isSuccess = status >= 200 && status < 300 || status === 304; - - // Get response data - if ( responses ) { - response = ajaxHandleResponses( s, jqXHR, responses ); - } - - // Convert no matter what (that way responseXXX fields are always set) - response = ajaxConvert( s, response, jqXHR, isSuccess ); - - // If successful, handle type chaining - if ( isSuccess ) { - - // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. - if ( s.ifModified ) { - modified = jqXHR.getResponseHeader( "Last-Modified" ); - if ( modified ) { - jQuery.lastModified[ cacheURL ] = modified; - } - modified = jqXHR.getResponseHeader( "etag" ); - if ( modified ) { - jQuery.etag[ cacheURL ] = modified; - } - } - - // if no content - if ( status === 204 || s.type === "HEAD" ) { - statusText = "nocontent"; - - // if not modified - } else if ( status === 304 ) { - statusText = "notmodified"; - - // If we have data, let's convert it - } else { - statusText = response.state; - success = response.data; - error = response.error; - isSuccess = !error; - } - } else { - - // We extract error from statusText - // then normalize statusText and status for non-aborts - error = statusText; - if ( status || !statusText ) { - statusText = "error"; - if ( status < 0 ) { - status = 0; - } - } - } - - // Set data for the fake xhr object - jqXHR.status = status; - jqXHR.statusText = ( nativeStatusText || statusText ) + ""; - - // Success/Error - if ( isSuccess ) { - deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); - } else { - deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); - } - - // Status-dependent callbacks - jqXHR.statusCode( statusCode ); - statusCode = undefined; - - if ( fireGlobals ) { - globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", - [ jqXHR, s, isSuccess ? success : error ] ); - } - - // Complete - completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); - - if ( fireGlobals ) { - globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); - - // Handle the global AJAX counter - if ( !( --jQuery.active ) ) { - jQuery.event.trigger( "ajaxStop" ); - } - } - } - - return jqXHR; - }, - - getJSON: function( url, data, callback ) { - return jQuery.get( url, data, callback, "json" ); - }, - - getScript: function( url, callback ) { - return jQuery.get( url, undefined, callback, "script" ); - } -} ); - -jQuery.each( [ "get", "post" ], function( i, method ) { - jQuery[ method ] = function( url, data, callback, type ) { - - // shift arguments if data argument was omitted - if ( jQuery.isFunction( data ) ) { - type = type || callback; - callback = data; - data = undefined; - } - - // The url can be an options object (which then must have .url) - return jQuery.ajax( jQuery.extend( { - url: url, - type: method, - dataType: type, - data: data, - success: callback - }, jQuery.isPlainObject( url ) && url ) ); - }; -} ); - - -jQuery._evalUrl = function( url ) { - return jQuery.ajax( { - url: url, - - // Make this explicit, since user can override this through ajaxSetup (#11264) - type: "GET", - dataType: "script", - cache: true, - async: false, - global: false, - "throws": true - } ); -}; - - -jQuery.fn.extend( { - wrapAll: function( html ) { - if ( jQuery.isFunction( html ) ) { - return this.each( function( i ) { - jQuery( this ).wrapAll( html.call( this, i ) ); - } ); - } - - if ( this[ 0 ] ) { - - // The elements to wrap the target around - var wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); - - if ( this[ 0 ].parentNode ) { - wrap.insertBefore( this[ 0 ] ); - } - - wrap.map( function() { - var elem = this; - - while ( elem.firstChild && elem.firstChild.nodeType === 1 ) { - elem = elem.firstChild; - } - - return elem; - } ).append( this ); - } - - return this; - }, - - wrapInner: function( html ) { - if ( jQuery.isFunction( html ) ) { - return this.each( function( i ) { - jQuery( this ).wrapInner( html.call( this, i ) ); - } ); - } - - return this.each( function() { - var self = jQuery( this ), - contents = self.contents(); - - if ( contents.length ) { - contents.wrapAll( html ); - - } else { - self.append( html ); - } - } ); - }, - - wrap: function( html ) { - var isFunction = jQuery.isFunction( html ); - - return this.each( function( i ) { - jQuery( this ).wrapAll( isFunction ? html.call( this, i ) : html ); - } ); - }, - - unwrap: function() { - return this.parent().each( function() { - if ( !jQuery.nodeName( this, "body" ) ) { - jQuery( this ).replaceWith( this.childNodes ); - } - } ).end(); - } -} ); - - -function getDisplay( elem ) { - return elem.style && elem.style.display || jQuery.css( elem, "display" ); -} - -function filterHidden( elem ) { - - // Disconnected elements are considered hidden - if ( !jQuery.contains( elem.ownerDocument || document, elem ) ) { - return true; - } - while ( elem && elem.nodeType === 1 ) { - if ( getDisplay( elem ) === "none" || elem.type === "hidden" ) { - return true; - } - elem = elem.parentNode; - } - return false; -} - -jQuery.expr.filters.hidden = function( elem ) { - - // Support: Opera <= 12.12 - // Opera reports offsetWidths and offsetHeights less than zero on some elements - return support.reliableHiddenOffsets() ? - ( elem.offsetWidth <= 0 && elem.offsetHeight <= 0 && - !elem.getClientRects().length ) : - filterHidden( elem ); -}; - -jQuery.expr.filters.visible = function( elem ) { - return !jQuery.expr.filters.hidden( elem ); -}; - - - - -var r20 = /%20/g, - rbracket = /\[\]$/, - rCRLF = /\r?\n/g, - rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, - rsubmittable = /^(?:input|select|textarea|keygen)/i; - -function buildParams( prefix, obj, traditional, add ) { - var name; - - if ( jQuery.isArray( obj ) ) { - - // Serialize array item. - jQuery.each( obj, function( i, v ) { - if ( traditional || rbracket.test( prefix ) ) { - - // Treat each array item as a scalar. - add( prefix, v ); - - } else { - - // Item is non-scalar (array or object), encode its numeric index. - buildParams( - prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", - v, - traditional, - add - ); - } - } ); - - } else if ( !traditional && jQuery.type( obj ) === "object" ) { - - // Serialize object item. - for ( name in obj ) { - buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); - } - - } else { - - // Serialize scalar item. - add( prefix, obj ); - } -} - -// Serialize an array of form elements or a set of -// key/values into a query string -jQuery.param = function( a, traditional ) { - var prefix, - s = [], - add = function( key, value ) { - - // If value is a function, invoke it and return its value - value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value ); - s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value ); - }; - - // Set traditional to true for jQuery <= 1.3.2 behavior. - if ( traditional === undefined ) { - traditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional; - } - - // If an array was passed in, assume that it is an array of form elements. - if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { - - // Serialize the form elements - jQuery.each( a, function() { - add( this.name, this.value ); - } ); - - } else { - - // If traditional, encode the "old" way (the way 1.3.2 or older - // did it), otherwise encode params recursively. - for ( prefix in a ) { - buildParams( prefix, a[ prefix ], traditional, add ); - } - } - - // Return the resulting serialization - return s.join( "&" ).replace( r20, "+" ); -}; - -jQuery.fn.extend( { - serialize: function() { - return jQuery.param( this.serializeArray() ); - }, - serializeArray: function() { - return this.map( function() { - - // Can add propHook for "elements" to filter or add form elements - var elements = jQuery.prop( this, "elements" ); - return elements ? jQuery.makeArray( elements ) : this; - } ) - .filter( function() { - var type = this.type; - - // Use .is(":disabled") so that fieldset[disabled] works - return this.name && !jQuery( this ).is( ":disabled" ) && - rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && - ( this.checked || !rcheckableType.test( type ) ); - } ) - .map( function( i, elem ) { - var val = jQuery( this ).val(); - - return val == null ? - null : - jQuery.isArray( val ) ? - jQuery.map( val, function( val ) { - return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; - } ) : - { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; - } ).get(); - } -} ); - - -// Create the request object -// (This is still attached to ajaxSettings for backward compatibility) -jQuery.ajaxSettings.xhr = window.ActiveXObject !== undefined ? - - // Support: IE6-IE8 - function() { - - // XHR cannot access local files, always use ActiveX for that case - if ( this.isLocal ) { - return createActiveXHR(); - } - - // Support: IE 9-11 - // IE seems to error on cross-domain PATCH requests when ActiveX XHR - // is used. In IE 9+ always use the native XHR. - // Note: this condition won't catch Edge as it doesn't define - // document.documentMode but it also doesn't support ActiveX so it won't - // reach this code. - if ( document.documentMode > 8 ) { - return createStandardXHR(); - } - - // Support: IE<9 - // oldIE XHR does not support non-RFC2616 methods (#13240) - // See http://msdn.microsoft.com/en-us/library/ie/ms536648(v=vs.85).aspx - // and http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9 - // Although this check for six methods instead of eight - // since IE also does not support "trace" and "connect" - return /^(get|post|head|put|delete|options)$/i.test( this.type ) && - createStandardXHR() || createActiveXHR(); - } : - - // For all other browsers, use the standard XMLHttpRequest object - createStandardXHR; - -var xhrId = 0, - xhrCallbacks = {}, - xhrSupported = jQuery.ajaxSettings.xhr(); - -// Support: IE<10 -// Open requests must be manually aborted on unload (#5280) -// See https://support.microsoft.com/kb/2856746 for more info -if ( window.attachEvent ) { - window.attachEvent( "onunload", function() { - for ( var key in xhrCallbacks ) { - xhrCallbacks[ key ]( undefined, true ); - } - } ); -} - -// Determine support properties -support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); -xhrSupported = support.ajax = !!xhrSupported; - -// Create transport if the browser can provide an xhr -if ( xhrSupported ) { - - jQuery.ajaxTransport( function( options ) { - - // Cross domain only allowed if supported through XMLHttpRequest - if ( !options.crossDomain || support.cors ) { - - var callback; - - return { - send: function( headers, complete ) { - var i, - xhr = options.xhr(), - id = ++xhrId; - - // Open the socket - xhr.open( - options.type, - options.url, - options.async, - options.username, - options.password - ); - - // Apply custom fields if provided - if ( options.xhrFields ) { - for ( i in options.xhrFields ) { - xhr[ i ] = options.xhrFields[ i ]; - } - } - - // Override mime type if needed - if ( options.mimeType && xhr.overrideMimeType ) { - xhr.overrideMimeType( options.mimeType ); - } - - // X-Requested-With header - // For cross-domain requests, seeing as conditions for a preflight are - // akin to a jigsaw puzzle, we simply never set it to be sure. - // (it can always be set on a per-request basis or even using ajaxSetup) - // For same-domain requests, won't change header if already provided. - if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { - headers[ "X-Requested-With" ] = "XMLHttpRequest"; - } - - // Set headers - for ( i in headers ) { - - // Support: IE<9 - // IE's ActiveXObject throws a 'Type Mismatch' exception when setting - // request header to a null-value. - // - // To keep consistent with other XHR implementations, cast the value - // to string and ignore `undefined`. - if ( headers[ i ] !== undefined ) { - xhr.setRequestHeader( i, headers[ i ] + "" ); - } - } - - // Do send the request - // This may raise an exception which is actually - // handled in jQuery.ajax (so no try/catch here) - xhr.send( ( options.hasContent && options.data ) || null ); - - // Listener - callback = function( _, isAbort ) { - var status, statusText, responses; - - // Was never called and is aborted or complete - if ( callback && ( isAbort || xhr.readyState === 4 ) ) { - - // Clean up - delete xhrCallbacks[ id ]; - callback = undefined; - xhr.onreadystatechange = jQuery.noop; - - // Abort manually if needed - if ( isAbort ) { - if ( xhr.readyState !== 4 ) { - xhr.abort(); - } - } else { - responses = {}; - status = xhr.status; - - // Support: IE<10 - // Accessing binary-data responseText throws an exception - // (#11426) - if ( typeof xhr.responseText === "string" ) { - responses.text = xhr.responseText; - } - - // Firefox throws an exception when accessing - // statusText for faulty cross-domain requests - try { - statusText = xhr.statusText; - } catch ( e ) { - - // We normalize with Webkit giving an empty statusText - statusText = ""; - } - - // Filter status for non standard behaviors - - // If the request is local and we have data: assume a success - // (success with no data won't get notified, that's the best we - // can do given current implementations) - if ( !status && options.isLocal && !options.crossDomain ) { - status = responses.text ? 200 : 404; - - // IE - #1450: sometimes returns 1223 when it should be 204 - } else if ( status === 1223 ) { - status = 204; - } - } - } - - // Call complete if needed - if ( responses ) { - complete( status, statusText, responses, xhr.getAllResponseHeaders() ); - } - }; - - // Do send the request - // `xhr.send` may raise an exception, but it will be - // handled in jQuery.ajax (so no try/catch here) - if ( !options.async ) { - - // If we're in sync mode we fire the callback - callback(); - } else if ( xhr.readyState === 4 ) { - - // (IE6 & IE7) if it's in cache and has been - // retrieved directly we need to fire the callback - window.setTimeout( callback ); - } else { - - // Register the callback, but delay it in case `xhr.send` throws - // Add to the list of active xhr callbacks - xhr.onreadystatechange = xhrCallbacks[ id ] = callback; - } - }, - - abort: function() { - if ( callback ) { - callback( undefined, true ); - } - } - }; - } - } ); -} - -// Functions to create xhrs -function createStandardXHR() { - try { - return new window.XMLHttpRequest(); - } catch ( e ) {} -} - -function createActiveXHR() { - try { - return new window.ActiveXObject( "Microsoft.XMLHTTP" ); - } catch ( e ) {} -} - - - - -// Install script dataType -jQuery.ajaxSetup( { - accepts: { - script: "text/javascript, application/javascript, " + - "application/ecmascript, application/x-ecmascript" - }, - contents: { - script: /\b(?:java|ecma)script\b/ - }, - converters: { - "text script": function( text ) { - jQuery.globalEval( text ); - return text; - } - } -} ); - -// Handle cache's special case and global -jQuery.ajaxPrefilter( "script", function( s ) { - if ( s.cache === undefined ) { - s.cache = false; - } - if ( s.crossDomain ) { - s.type = "GET"; - s.global = false; - } -} ); - -// Bind script tag hack transport -jQuery.ajaxTransport( "script", function( s ) { - - // This transport only deals with cross domain requests - if ( s.crossDomain ) { - - var script, - head = document.head || jQuery( "head" )[ 0 ] || document.documentElement; - - return { - - send: function( _, callback ) { - - script = document.createElement( "script" ); - - script.async = true; - - if ( s.scriptCharset ) { - script.charset = s.scriptCharset; - } - - script.src = s.url; - - // Attach handlers for all browsers - script.onload = script.onreadystatechange = function( _, isAbort ) { - - if ( isAbort || !script.readyState || /loaded|complete/.test( script.readyState ) ) { - - // Handle memory leak in IE - script.onload = script.onreadystatechange = null; - - // Remove the script - if ( script.parentNode ) { - script.parentNode.removeChild( script ); - } - - // Dereference the script - script = null; - - // Callback if not abort - if ( !isAbort ) { - callback( 200, "success" ); - } - } - }; - - // Circumvent IE6 bugs with base elements (#2709 and #4378) by prepending - // Use native DOM manipulation to avoid our domManip AJAX trickery - head.insertBefore( script, head.firstChild ); - }, - - abort: function() { - if ( script ) { - script.onload( undefined, true ); - } - } - }; - } -} ); - - - - -var oldCallbacks = [], - rjsonp = /(=)\?(?=&|$)|\?\?/; - -// Default jsonp settings -jQuery.ajaxSetup( { - jsonp: "callback", - jsonpCallback: function() { - var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce++ ) ); - this[ callback ] = true; - return callback; - } -} ); - -// Detect, normalize options and install callbacks for jsonp requests -jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) { - - var callbackName, overwritten, responseContainer, - jsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ? - "url" : - typeof s.data === "string" && - ( s.contentType || "" ) - .indexOf( "application/x-www-form-urlencoded" ) === 0 && - rjsonp.test( s.data ) && "data" - ); - - // Handle iff the expected data type is "jsonp" or we have a parameter to set - if ( jsonProp || s.dataTypes[ 0 ] === "jsonp" ) { - - // Get callback name, remembering preexisting value associated with it - callbackName = s.jsonpCallback = jQuery.isFunction( s.jsonpCallback ) ? - s.jsonpCallback() : - s.jsonpCallback; - - // Insert callback into url or form data - if ( jsonProp ) { - s[ jsonProp ] = s[ jsonProp ].replace( rjsonp, "$1" + callbackName ); - } else if ( s.jsonp !== false ) { - s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName; - } - - // Use data converter to retrieve json after script execution - s.converters[ "script json" ] = function() { - if ( !responseContainer ) { - jQuery.error( callbackName + " was not called" ); - } - return responseContainer[ 0 ]; - }; - - // force json dataType - s.dataTypes[ 0 ] = "json"; - - // Install callback - overwritten = window[ callbackName ]; - window[ callbackName ] = function() { - responseContainer = arguments; - }; - - // Clean-up function (fires after converters) - jqXHR.always( function() { - - // If previous value didn't exist - remove it - if ( overwritten === undefined ) { - jQuery( window ).removeProp( callbackName ); - - // Otherwise restore preexisting value - } else { - window[ callbackName ] = overwritten; - } - - // Save back as free - if ( s[ callbackName ] ) { - - // make sure that re-using the options doesn't screw things around - s.jsonpCallback = originalSettings.jsonpCallback; - - // save the callback name for future use - oldCallbacks.push( callbackName ); - } - - // Call if it was a function and we have a response - if ( responseContainer && jQuery.isFunction( overwritten ) ) { - overwritten( responseContainer[ 0 ] ); - } - - responseContainer = overwritten = undefined; - } ); - - // Delegate to script - return "script"; - } -} ); - - - - -// data: string of html -// context (optional): If specified, the fragment will be created in this context, -// defaults to document -// keepScripts (optional): If true, will include scripts passed in the html string -jQuery.parseHTML = function( data, context, keepScripts ) { - if ( !data || typeof data !== "string" ) { - return null; - } - if ( typeof context === "boolean" ) { - keepScripts = context; - context = false; - } - context = context || document; - - var parsed = rsingleTag.exec( data ), - scripts = !keepScripts && []; - - // Single tag - if ( parsed ) { - return [ context.createElement( parsed[ 1 ] ) ]; - } - - parsed = buildFragment( [ data ], context, scripts ); - - if ( scripts && scripts.length ) { - jQuery( scripts ).remove(); - } - - return jQuery.merge( [], parsed.childNodes ); -}; - - -// Keep a copy of the old load method -var _load = jQuery.fn.load; - -/** - * Load a url into a page - */ -jQuery.fn.load = function( url, params, callback ) { - if ( typeof url !== "string" && _load ) { - return _load.apply( this, arguments ); - } - - var selector, type, response, - self = this, - off = url.indexOf( " " ); - - if ( off > -1 ) { - selector = jQuery.trim( url.slice( off, url.length ) ); - url = url.slice( 0, off ); - } - - // If it's a function - if ( jQuery.isFunction( params ) ) { - - // We assume that it's the callback - callback = params; - params = undefined; - - // Otherwise, build a param string - } else if ( params && typeof params === "object" ) { - type = "POST"; - } - - // If we have elements to modify, make the request - if ( self.length > 0 ) { - jQuery.ajax( { - url: url, - - // If "type" variable is undefined, then "GET" method will be used. - // Make value of this field explicit since - // user can override it through ajaxSetup method - type: type || "GET", - dataType: "html", - data: params - } ).done( function( responseText ) { - - // Save response for use in complete callback - response = arguments; - - self.html( selector ? - - // If a selector was specified, locate the right elements in a dummy div - // Exclude scripts to avoid IE 'Permission Denied' errors - jQuery( "<div>" ).append( jQuery.parseHTML( responseText ) ).find( selector ) : - - // Otherwise use the full result - responseText ); - - // If the request succeeds, this function gets "data", "status", "jqXHR" - // but they are ignored because response was set above. - // If it fails, this function gets "jqXHR", "status", "error" - } ).always( callback && function( jqXHR, status ) { - self.each( function() { - callback.apply( this, response || [ jqXHR.responseText, status, jqXHR ] ); - } ); - } ); - } - - return this; -}; - - - - -// Attach a bunch of functions for handling common AJAX events -jQuery.each( [ - "ajaxStart", - "ajaxStop", - "ajaxComplete", - "ajaxError", - "ajaxSuccess", - "ajaxSend" -], function( i, type ) { - jQuery.fn[ type ] = function( fn ) { - return this.on( type, fn ); - }; -} ); - - - - -jQuery.expr.filters.animated = function( elem ) { - return jQuery.grep( jQuery.timers, function( fn ) { - return elem === fn.elem; - } ).length; -}; - - - - - -/** - * Gets a window from an element - */ -function getWindow( elem ) { - return jQuery.isWindow( elem ) ? - elem : - elem.nodeType === 9 ? - elem.defaultView || elem.parentWindow : - false; -} - -jQuery.offset = { - setOffset: function( elem, options, i ) { - var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition, - position = jQuery.css( elem, "position" ), - curElem = jQuery( elem ), - props = {}; - - // set position first, in-case top/left are set even on static elem - if ( position === "static" ) { - elem.style.position = "relative"; - } - - curOffset = curElem.offset(); - curCSSTop = jQuery.css( elem, "top" ); - curCSSLeft = jQuery.css( elem, "left" ); - calculatePosition = ( position === "absolute" || position === "fixed" ) && - jQuery.inArray( "auto", [ curCSSTop, curCSSLeft ] ) > -1; - - // need to be able to calculate position if either top or left - // is auto and position is either absolute or fixed - if ( calculatePosition ) { - curPosition = curElem.position(); - curTop = curPosition.top; - curLeft = curPosition.left; - } else { - curTop = parseFloat( curCSSTop ) || 0; - curLeft = parseFloat( curCSSLeft ) || 0; - } - - if ( jQuery.isFunction( options ) ) { - - // Use jQuery.extend here to allow modification of coordinates argument (gh-1848) - options = options.call( elem, i, jQuery.extend( {}, curOffset ) ); - } - - if ( options.top != null ) { - props.top = ( options.top - curOffset.top ) + curTop; - } - if ( options.left != null ) { - props.left = ( options.left - curOffset.left ) + curLeft; - } - - if ( "using" in options ) { - options.using.call( elem, props ); - } else { - curElem.css( props ); - } - } -}; - -jQuery.fn.extend( { - offset: function( options ) { - if ( arguments.length ) { - return options === undefined ? - this : - this.each( function( i ) { - jQuery.offset.setOffset( this, options, i ); - } ); - } - - var docElem, win, - box = { top: 0, left: 0 }, - elem = this[ 0 ], - doc = elem && elem.ownerDocument; - - if ( !doc ) { - return; - } - - docElem = doc.documentElement; - - // Make sure it's not a disconnected DOM node - if ( !jQuery.contains( docElem, elem ) ) { - return box; - } - - // If we don't have gBCR, just use 0,0 rather than error - // BlackBerry 5, iOS 3 (original iPhone) - if ( typeof elem.getBoundingClientRect !== "undefined" ) { - box = elem.getBoundingClientRect(); - } - win = getWindow( doc ); - return { - top: box.top + ( win.pageYOffset || docElem.scrollTop ) - ( docElem.clientTop || 0 ), - left: box.left + ( win.pageXOffset || docElem.scrollLeft ) - ( docElem.clientLeft || 0 ) - }; - }, - - position: function() { - if ( !this[ 0 ] ) { - return; - } - - var offsetParent, offset, - parentOffset = { top: 0, left: 0 }, - elem = this[ 0 ]; - - // Fixed elements are offset from window (parentOffset = {top:0, left: 0}, - // because it is its only offset parent - if ( jQuery.css( elem, "position" ) === "fixed" ) { - - // we assume that getBoundingClientRect is available when computed position is fixed - offset = elem.getBoundingClientRect(); - } else { - - // Get *real* offsetParent - offsetParent = this.offsetParent(); - - // Get correct offsets - offset = this.offset(); - if ( !jQuery.nodeName( offsetParent[ 0 ], "html" ) ) { - parentOffset = offsetParent.offset(); - } - - // Add offsetParent borders - parentOffset.top += jQuery.css( offsetParent[ 0 ], "borderTopWidth", true ); - parentOffset.left += jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true ); - } - - // Subtract parent offsets and element margins - // note: when an element has margin: auto the offsetLeft and marginLeft - // are the same in Safari causing offset.left to incorrectly be 0 - return { - top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ), - left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true ) - }; - }, - - offsetParent: function() { - return this.map( function() { - var offsetParent = this.offsetParent; - - while ( offsetParent && ( !jQuery.nodeName( offsetParent, "html" ) && - jQuery.css( offsetParent, "position" ) === "static" ) ) { - offsetParent = offsetParent.offsetParent; - } - return offsetParent || documentElement; - } ); - } -} ); - -// Create scrollLeft and scrollTop methods -jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) { - var top = /Y/.test( prop ); - - jQuery.fn[ method ] = function( val ) { - return access( this, function( elem, method, val ) { - var win = getWindow( elem ); - - if ( val === undefined ) { - return win ? ( prop in win ) ? win[ prop ] : - win.document.documentElement[ method ] : - elem[ method ]; - } - - if ( win ) { - win.scrollTo( - !top ? val : jQuery( win ).scrollLeft(), - top ? val : jQuery( win ).scrollTop() - ); - - } else { - elem[ method ] = val; - } - }, method, val, arguments.length, null ); - }; -} ); - -// Support: Safari<7-8+, Chrome<37-44+ -// Add the top/left cssHooks using jQuery.fn.position -// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084 -// getComputedStyle returns percent when specified for top/left/bottom/right -// rather than make the css module depend on the offset module, we just check for it here -jQuery.each( [ "top", "left" ], function( i, prop ) { - jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition, - function( elem, computed ) { - if ( computed ) { - computed = curCSS( elem, prop ); - - // if curCSS returns percentage, fallback to offset - return rnumnonpx.test( computed ) ? - jQuery( elem ).position()[ prop ] + "px" : - computed; - } - } - ); -} ); - - -// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods -jQuery.each( { Height: "height", Width: "width" }, function( name, type ) { - jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, - function( defaultExtra, funcName ) { - - // margin is only for outerHeight, outerWidth - jQuery.fn[ funcName ] = function( margin, value ) { - var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ), - extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" ); - - return access( this, function( elem, type, value ) { - var doc; - - if ( jQuery.isWindow( elem ) ) { - - // As of 5/8/2012 this will yield incorrect results for Mobile Safari, but there - // isn't a whole lot we can do. See pull request at this URL for discussion: - // https://github.com/jquery/jquery/pull/764 - return elem.document.documentElement[ "client" + name ]; - } - - // Get document width or height - if ( elem.nodeType === 9 ) { - doc = elem.documentElement; - - // Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height], - // whichever is greatest - // unfortunately, this causes bug #3838 in IE6/8 only, - // but there is currently no good, small way to fix it. - return Math.max( - elem.body[ "scroll" + name ], doc[ "scroll" + name ], - elem.body[ "offset" + name ], doc[ "offset" + name ], - doc[ "client" + name ] - ); - } - - return value === undefined ? - - // Get width or height on the element, requesting but not forcing parseFloat - jQuery.css( elem, type, extra ) : - - // Set width or height on the element - jQuery.style( elem, type, value, extra ); - }, type, chainable ? margin : undefined, chainable, null ); - }; - } ); -} ); - - -jQuery.fn.extend( { - - bind: function( types, data, fn ) { - return this.on( types, null, data, fn ); - }, - unbind: function( types, fn ) { - return this.off( types, null, fn ); - }, - - delegate: function( selector, types, data, fn ) { - return this.on( types, selector, data, fn ); - }, - undelegate: function( selector, types, fn ) { - - // ( namespace ) or ( selector, types [, fn] ) - return arguments.length === 1 ? - this.off( selector, "**" ) : - this.off( types, selector || "**", fn ); - } -} ); - -// The number of elements contained in the matched element set -jQuery.fn.size = function() { - return this.length; -}; - -jQuery.fn.andSelf = jQuery.fn.addBack; - - - - -// Register as a named AMD module, since jQuery can be concatenated with other -// files that may use define, but not via a proper concatenation script that -// understands anonymous AMD modules. A named AMD is safest and most robust -// way to register. Lowercase jquery is used because AMD module names are -// derived from file names, and jQuery is normally delivered in a lowercase -// file name. Do this after creating the global so that if an AMD module wants -// to call noConflict to hide this version of jQuery, it will work. - -// Note that for maximum portability, libraries that are not jQuery should -// declare themselves as anonymous modules, and avoid setting a global if an -// AMD loader is present. jQuery is a special case. For more information, see -// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon - -if ( typeof define === "function" && define.amd ) { - define( "jquery", [], function() { - return jQuery; - } ); -} - - - -var - - // Map over jQuery in case of overwrite - _jQuery = window.jQuery, - - // Map over the $ in case of overwrite - _$ = window.$; - -jQuery.noConflict = function( deep ) { - if ( window.$ === jQuery ) { - window.$ = _$; - } - - if ( deep && window.jQuery === jQuery ) { - window.jQuery = _jQuery; - } - - return jQuery; -}; - -// Expose jQuery and $ identifiers, even in -// AMD (#7102#comment:10, https://github.com/jquery/jquery/pull/557) -// and CommonJS for browser emulators (#13566) -if ( !noGlobal ) { - window.jQuery = window.$ = jQuery; -} - -return jQuery; -})); diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_444444_256x240.png b/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_444444_256x240.png Binary files differdeleted file mode 100644 index 19f664d..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_444444_256x240.png +++ /dev/null diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_555555_256x240.png b/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_555555_256x240.png Binary files differdeleted file mode 100644 index e965f6d..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_555555_256x240.png +++ /dev/null diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_777620_256x240.png b/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_777620_256x240.png Binary files differdeleted file mode 100644 index 9785948..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_777620_256x240.png +++ /dev/null diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_777777_256x240.png b/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_777777_256x240.png Binary files differdeleted file mode 100644 index 323c456..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_777777_256x240.png +++ /dev/null diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_cc0000_256x240.png b/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_cc0000_256x240.png Binary files differdeleted file mode 100644 index 45ac778..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_cc0000_256x240.png +++ /dev/null diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_ffffff_256x240.png b/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_ffffff_256x240.png Binary files differdeleted file mode 100644 index fe41d2d..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/images/ui-icons_ffffff_256x240.png +++ /dev/null diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/index.html b/javascript/vendor/jquery-ui-1.12.1.custom/index.html deleted file mode 100644 index cb3786f..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/index.html +++ /dev/null @@ -1,325 +0,0 @@ -<!doctype html> -<html lang="us"> -<head> - <meta charset="utf-8"> - <title>jQuery UI Example Page</title> - <link href="jquery-ui.css" rel="stylesheet"> - <style> - body{ - font-family: "Trebuchet MS", sans-serif; - margin: 50px; - } - .demoHeaders { - margin-top: 2em; - } - #dialog-link { - padding: .4em 1em .4em 20px; - text-decoration: none; - position: relative; - } - #dialog-link span.ui-icon { - margin: 0 5px 0 0; - position: absolute; - left: .2em; - top: 50%; - margin-top: -8px; - } - #icons { - margin: 0; - padding: 0; - } - #icons li { - margin: 2px; - position: relative; - padding: 4px 0; - cursor: pointer; - float: left; - list-style: none; - } - #icons span.ui-icon { - float: left; - margin: 0 4px; - } - .fakewindowcontain .ui-widget-overlay { - position: absolute; - } - select { - width: 200px; - } - </style> -</head> -<body> - -<h1>Welcome to jQuery UI!</h1> - -<div class="ui-widget"> - <p>This page demonstrates the widgets and theme you selected in Download Builder. Please make sure you are using them with a compatible jQuery version.</p> -</div> - -<h1>YOUR COMPONENTS:</h1> - - - - - - - - - - - - - - - - -<h2 class="demoHeaders">Framework Icons (content color preview)</h2> -<ul id="icons" class="ui-widget ui-helper-clearfix"> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-n"><span class="ui-icon ui-icon-caret-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-ne"><span class="ui-icon ui-icon-caret-1-ne"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-e"><span class="ui-icon ui-icon-caret-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-se"><span class="ui-icon ui-icon-caret-1-se"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-s"><span class="ui-icon ui-icon-caret-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-sw"><span class="ui-icon ui-icon-caret-1-sw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-w"><span class="ui-icon ui-icon-caret-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-1-nw"><span class="ui-icon ui-icon-caret-1-nw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-2-n-s"><span class="ui-icon ui-icon-caret-2-n-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-caret-2-e-w"><span class="ui-icon ui-icon-caret-2-e-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-n"><span class="ui-icon ui-icon-triangle-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-ne"><span class="ui-icon ui-icon-triangle-1-ne"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-e"><span class="ui-icon ui-icon-triangle-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-se"><span class="ui-icon ui-icon-triangle-1-se"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-s"><span class="ui-icon ui-icon-triangle-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-sw"><span class="ui-icon ui-icon-triangle-1-sw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-w"><span class="ui-icon ui-icon-triangle-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-1-nw"><span class="ui-icon ui-icon-triangle-1-nw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-2-n-s"><span class="ui-icon ui-icon-triangle-2-n-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-triangle-2-e-w"><span class="ui-icon ui-icon-triangle-2-e-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-n"><span class="ui-icon ui-icon-arrow-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-ne"><span class="ui-icon ui-icon-arrow-1-ne"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-e"><span class="ui-icon ui-icon-arrow-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-se"><span class="ui-icon ui-icon-arrow-1-se"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-s"><span class="ui-icon ui-icon-arrow-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-sw"><span class="ui-icon ui-icon-arrow-1-sw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-w"><span class="ui-icon ui-icon-arrow-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-1-nw"><span class="ui-icon ui-icon-arrow-1-nw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-2-n-s"><span class="ui-icon ui-icon-arrow-2-n-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-2-ne-sw"><span class="ui-icon ui-icon-arrow-2-ne-sw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-2-e-w"><span class="ui-icon ui-icon-arrow-2-e-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-2-se-nw"><span class="ui-icon ui-icon-arrow-2-se-nw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowstop-1-n"><span class="ui-icon ui-icon-arrowstop-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowstop-1-e"><span class="ui-icon ui-icon-arrowstop-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowstop-1-s"><span class="ui-icon ui-icon-arrowstop-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowstop-1-w"><span class="ui-icon ui-icon-arrowstop-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-n"><span class="ui-icon ui-icon-arrowthick-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-ne"><span class="ui-icon ui-icon-arrowthick-1-ne"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-e"><span class="ui-icon ui-icon-arrowthick-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-se"><span class="ui-icon ui-icon-arrowthick-1-se"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-s"><span class="ui-icon ui-icon-arrowthick-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-sw"><span class="ui-icon ui-icon-arrowthick-1-sw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-w"><span class="ui-icon ui-icon-arrowthick-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-1-nw"><span class="ui-icon ui-icon-arrowthick-1-nw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-2-n-s"><span class="ui-icon ui-icon-arrowthick-2-n-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-2-ne-sw"><span class="ui-icon ui-icon-arrowthick-2-ne-sw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-2-e-w"><span class="ui-icon ui-icon-arrowthick-2-e-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthick-2-se-nw"><span class="ui-icon ui-icon-arrowthick-2-se-nw"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthickstop-1-n"><span class="ui-icon ui-icon-arrowthickstop-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthickstop-1-e"><span class="ui-icon ui-icon-arrowthickstop-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthickstop-1-s"><span class="ui-icon ui-icon-arrowthickstop-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowthickstop-1-w"><span class="ui-icon ui-icon-arrowthickstop-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturnthick-1-w"><span class="ui-icon ui-icon-arrowreturnthick-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturnthick-1-n"><span class="ui-icon ui-icon-arrowreturnthick-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturnthick-1-e"><span class="ui-icon ui-icon-arrowreturnthick-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturnthick-1-s"><span class="ui-icon ui-icon-arrowreturnthick-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturn-1-w"><span class="ui-icon ui-icon-arrowreturn-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturn-1-n"><span class="ui-icon ui-icon-arrowreturn-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturn-1-e"><span class="ui-icon ui-icon-arrowreturn-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowreturn-1-s"><span class="ui-icon ui-icon-arrowreturn-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowrefresh-1-w"><span class="ui-icon ui-icon-arrowrefresh-1-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowrefresh-1-n"><span class="ui-icon ui-icon-arrowrefresh-1-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowrefresh-1-e"><span class="ui-icon ui-icon-arrowrefresh-1-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrowrefresh-1-s"><span class="ui-icon ui-icon-arrowrefresh-1-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-4"><span class="ui-icon ui-icon-arrow-4"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-arrow-4-diag"><span class="ui-icon ui-icon-arrow-4-diag"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-extlink"><span class="ui-icon ui-icon-extlink"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-newwin"><span class="ui-icon ui-icon-newwin"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-refresh"><span class="ui-icon ui-icon-refresh"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-shuffle"><span class="ui-icon ui-icon-shuffle"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-transfer-e-w"><span class="ui-icon ui-icon-transfer-e-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-transferthick-e-w"><span class="ui-icon ui-icon-transferthick-e-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-folder-collapsed"><span class="ui-icon ui-icon-folder-collapsed"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-folder-open"><span class="ui-icon ui-icon-folder-open"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-document"><span class="ui-icon ui-icon-document"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-document-b"><span class="ui-icon ui-icon-document-b"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-note"><span class="ui-icon ui-icon-note"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-mail-closed"><span class="ui-icon ui-icon-mail-closed"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-mail-open"><span class="ui-icon ui-icon-mail-open"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-suitcase"><span class="ui-icon ui-icon-suitcase"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-comment"><span class="ui-icon ui-icon-comment"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-person"><span class="ui-icon ui-icon-person"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-print"><span class="ui-icon ui-icon-print"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-trash"><span class="ui-icon ui-icon-trash"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-locked"><span class="ui-icon ui-icon-locked"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-unlocked"><span class="ui-icon ui-icon-unlocked"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-bookmark"><span class="ui-icon ui-icon-bookmark"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-tag"><span class="ui-icon ui-icon-tag"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-home"><span class="ui-icon ui-icon-home"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-flag"><span class="ui-icon ui-icon-flag"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-calculator"><span class="ui-icon ui-icon-calculator"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-cart"><span class="ui-icon ui-icon-cart"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-pencil"><span class="ui-icon ui-icon-pencil"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-clock"><span class="ui-icon ui-icon-clock"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-disk"><span class="ui-icon ui-icon-disk"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-calendar"><span class="ui-icon ui-icon-calendar"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-zoomin"><span class="ui-icon ui-icon-zoomin"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-zoomout"><span class="ui-icon ui-icon-zoomout"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-search"><span class="ui-icon ui-icon-search"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-wrench"><span class="ui-icon ui-icon-wrench"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-gear"><span class="ui-icon ui-icon-gear"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-heart"><span class="ui-icon ui-icon-heart"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-star"><span class="ui-icon ui-icon-star"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-link"><span class="ui-icon ui-icon-link"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-cancel"><span class="ui-icon ui-icon-cancel"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-plus"><span class="ui-icon ui-icon-plus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-plusthick"><span class="ui-icon ui-icon-plusthick"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-minus"><span class="ui-icon ui-icon-minus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-minusthick"><span class="ui-icon ui-icon-minusthick"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-close"><span class="ui-icon ui-icon-close"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-closethick"><span class="ui-icon ui-icon-closethick"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-key"><span class="ui-icon ui-icon-key"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-lightbulb"><span class="ui-icon ui-icon-lightbulb"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-scissors"><span class="ui-icon ui-icon-scissors"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-clipboard"><span class="ui-icon ui-icon-clipboard"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-copy"><span class="ui-icon ui-icon-copy"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-contact"><span class="ui-icon ui-icon-contact"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-image"><span class="ui-icon ui-icon-image"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-video"><span class="ui-icon ui-icon-video"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-script"><span class="ui-icon ui-icon-script"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-alert"><span class="ui-icon ui-icon-alert"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-info"><span class="ui-icon ui-icon-info"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-notice"><span class="ui-icon ui-icon-notice"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-help"><span class="ui-icon ui-icon-help"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-check"><span class="ui-icon ui-icon-check"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-bullet"><span class="ui-icon ui-icon-bullet"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-radio-off"><span class="ui-icon ui-icon-radio-off"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-radio-on"><span class="ui-icon ui-icon-radio-on"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-pin-w"><span class="ui-icon ui-icon-pin-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-pin-s"><span class="ui-icon ui-icon-pin-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-play"><span class="ui-icon ui-icon-play"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-pause"><span class="ui-icon ui-icon-pause"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-seek-next"><span class="ui-icon ui-icon-seek-next"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-seek-prev"><span class="ui-icon ui-icon-seek-prev"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-seek-end"><span class="ui-icon ui-icon-seek-end"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-seek-first"><span class="ui-icon ui-icon-seek-first"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-stop"><span class="ui-icon ui-icon-stop"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-eject"><span class="ui-icon ui-icon-eject"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-volume-off"><span class="ui-icon ui-icon-volume-off"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-volume-on"><span class="ui-icon ui-icon-volume-on"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-power"><span class="ui-icon ui-icon-power"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-signal-diag"><span class="ui-icon ui-icon-signal-diag"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-signal"><span class="ui-icon ui-icon-signal"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-battery-0"><span class="ui-icon ui-icon-battery-0"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-battery-1"><span class="ui-icon ui-icon-battery-1"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-battery-2"><span class="ui-icon ui-icon-battery-2"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-battery-3"><span class="ui-icon ui-icon-battery-3"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-plus"><span class="ui-icon ui-icon-circle-plus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-minus"><span class="ui-icon ui-icon-circle-minus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-close"><span class="ui-icon ui-icon-circle-close"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-triangle-e"><span class="ui-icon ui-icon-circle-triangle-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-triangle-s"><span class="ui-icon ui-icon-circle-triangle-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-triangle-w"><span class="ui-icon ui-icon-circle-triangle-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-triangle-n"><span class="ui-icon ui-icon-circle-triangle-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-arrow-e"><span class="ui-icon ui-icon-circle-arrow-e"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-arrow-s"><span class="ui-icon ui-icon-circle-arrow-s"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-arrow-w"><span class="ui-icon ui-icon-circle-arrow-w"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-arrow-n"><span class="ui-icon ui-icon-circle-arrow-n"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-zoomin"><span class="ui-icon ui-icon-circle-zoomin"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-zoomout"><span class="ui-icon ui-icon-circle-zoomout"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circle-check"><span class="ui-icon ui-icon-circle-check"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circlesmall-plus"><span class="ui-icon ui-icon-circlesmall-plus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circlesmall-minus"><span class="ui-icon ui-icon-circlesmall-minus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-circlesmall-close"><span class="ui-icon ui-icon-circlesmall-close"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-squaresmall-plus"><span class="ui-icon ui-icon-squaresmall-plus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-squaresmall-minus"><span class="ui-icon ui-icon-squaresmall-minus"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-squaresmall-close"><span class="ui-icon ui-icon-squaresmall-close"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-grip-dotted-vertical"><span class="ui-icon ui-icon-grip-dotted-vertical"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-grip-dotted-horizontal"><span class="ui-icon ui-icon-grip-dotted-horizontal"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-grip-solid-vertical"><span class="ui-icon ui-icon-grip-solid-vertical"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-grip-solid-horizontal"><span class="ui-icon ui-icon-grip-solid-horizontal"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-gripsmall-diagonal-se"><span class="ui-icon ui-icon-gripsmall-diagonal-se"></span></li> - <li class="ui-state-default ui-corner-all" title=".ui-icon-grip-diagonal-se"><span class="ui-icon ui-icon-grip-diagonal-se"></span></li> -</ul> - - - - - - - - - - - - - - - -<!-- Highlight / Error --> -<h2 class="demoHeaders">Highlight / Error</h2> -<div class="ui-widget"> - <div class="ui-state-highlight ui-corner-all" style="margin-top: 20px; padding: 0 .7em;"> - <p><span class="ui-icon ui-icon-info" style="float: left; margin-right: .3em;"></span> - <strong>Hey!</strong> Sample ui-state-highlight style.</p> - </div> -</div> -<br> -<div class="ui-widget"> - <div class="ui-state-error ui-corner-all" style="padding: 0 .7em;"> - <p><span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span> - <strong>Alert:</strong> Sample ui-state-error style.</p> - </div> -</div> - -<script src="external/jquery/jquery.js"></script> -<script src="jquery-ui.js"></script> -<script> - - - - - - - - - - - - - - - - - - - - - - - - - - - - -// Hover states on the static widgets -$( "#dialog-link, #icons li" ).hover( - function() { - $( this ).addClass( "ui-state-hover" ); - }, - function() { - $( this ).removeClass( "ui-state-hover" ); - } -); -</script> -</body> -</html> diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.css b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.css deleted file mode 100644 index 916181d..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.css +++ /dev/null @@ -1,596 +0,0 @@ -/*! jQuery UI - v1.12.1 - 2018-03-18 -* http://jqueryui.com -* Includes: draggable.css, core.css, resizable.css, theme.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif -* Copyright jQuery Foundation and other contributors; Licensed MIT */ - -.ui-draggable-handle { - -ms-touch-action: none; - touch-action: none; -} -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { - display: none; -} -.ui-helper-hidden-accessible { - border: 0; - clip: rect(0 0 0 0); - height: 1px; - margin: -1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px; -} -.ui-helper-reset { - margin: 0; - padding: 0; - border: 0; - outline: 0; - line-height: 1.3; - text-decoration: none; - font-size: 100%; - list-style: none; -} -.ui-helper-clearfix:before, -.ui-helper-clearfix:after { - content: ""; - display: table; - border-collapse: collapse; -} -.ui-helper-clearfix:after { - clear: both; -} -.ui-helper-zfix { - width: 100%; - height: 100%; - top: 0; - left: 0; - position: absolute; - opacity: 0; - filter:Alpha(Opacity=0); /* support: IE8 */ -} - -.ui-front { - z-index: 100; -} - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { - cursor: default !important; - pointer-events: none; -} - - -/* Icons -----------------------------------*/ -.ui-icon { - display: inline-block; - vertical-align: middle; - margin-top: -.25em; - position: relative; - text-indent: -99999px; - overflow: hidden; - background-repeat: no-repeat; -} - -.ui-widget-icon-block { - left: 50%; - margin-left: -8px; - display: block; -} - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; -} -.ui-resizable { - position: relative; -} -.ui-resizable-handle { - position: absolute; - font-size: 0.1px; - display: block; - -ms-touch-action: none; - touch-action: none; -} -.ui-resizable-disabled .ui-resizable-handle, -.ui-resizable-autohide .ui-resizable-handle { - display: none; -} -.ui-resizable-n { - cursor: n-resize; - height: 7px; - width: 100%; - top: -5px; - left: 0; -} -.ui-resizable-s { - cursor: s-resize; - height: 7px; - width: 100%; - bottom: -5px; - left: 0; -} -.ui-resizable-e { - cursor: e-resize; - width: 7px; - right: -5px; - top: 0; - height: 100%; -} -.ui-resizable-w { - cursor: w-resize; - width: 7px; - left: -5px; - top: 0; - height: 100%; -} -.ui-resizable-se { - cursor: se-resize; - width: 12px; - height: 12px; - right: 1px; - bottom: 1px; -} -.ui-resizable-sw { - cursor: sw-resize; - width: 9px; - height: 9px; - left: -5px; - bottom: -5px; -} -.ui-resizable-nw { - cursor: nw-resize; - width: 9px; - height: 9px; - left: -5px; - top: -5px; -} -.ui-resizable-ne { - cursor: ne-resize; - width: 9px; - height: 9px; - right: -5px; - top: -5px; -} - -/* Component containers -----------------------------------*/ -.ui-widget { - font-family: Arial,Helvetica,sans-serif; - font-size: 1em; -} -.ui-widget .ui-widget { - font-size: 1em; -} -.ui-widget input, -.ui-widget select, -.ui-widget textarea, -.ui-widget button { - font-family: Arial,Helvetica,sans-serif; - font-size: 1em; -} -.ui-widget.ui-widget-content { - border: 1px solid #c5c5c5; -} -.ui-widget-content { - border: 1px solid #dddddd; - background: #ffffff; - color: #333333; -} -.ui-widget-content a { - color: #333333; -} -.ui-widget-header { - border: 1px solid #dddddd; - background: #e9e9e9; - color: #333333; - font-weight: bold; -} -.ui-widget-header a { - color: #333333; -} - -/* Interaction states -----------------------------------*/ -.ui-state-default, -.ui-widget-content .ui-state-default, -.ui-widget-header .ui-state-default, -.ui-button, - -/* We use html here because we need a greater specificity to make sure disabled -works properly when clicked or hovered */ -html .ui-button.ui-state-disabled:hover, -html .ui-button.ui-state-disabled:active { - border: 1px solid #c5c5c5; - background: #f6f6f6; - font-weight: normal; - color: #454545; -} -.ui-state-default a, -.ui-state-default a:link, -.ui-state-default a:visited, -a.ui-button, -a:link.ui-button, -a:visited.ui-button, -.ui-button { - color: #454545; - text-decoration: none; -} -.ui-state-hover, -.ui-widget-content .ui-state-hover, -.ui-widget-header .ui-state-hover, -.ui-state-focus, -.ui-widget-content .ui-state-focus, -.ui-widget-header .ui-state-focus, -.ui-button:hover, -.ui-button:focus { - border: 1px solid #cccccc; - background: #ededed; - font-weight: normal; - color: #2b2b2b; -} -.ui-state-hover a, -.ui-state-hover a:hover, -.ui-state-hover a:link, -.ui-state-hover a:visited, -.ui-state-focus a, -.ui-state-focus a:hover, -.ui-state-focus a:link, -.ui-state-focus a:visited, -a.ui-button:hover, -a.ui-button:focus { - color: #2b2b2b; - text-decoration: none; -} - -.ui-visual-focus { - box-shadow: 0 0 3px 1px rgb(94, 158, 214); -} -.ui-state-active, -.ui-widget-content .ui-state-active, -.ui-widget-header .ui-state-active, -a.ui-button:active, -.ui-button:active, -.ui-button.ui-state-active:hover { - border: 1px solid #003eff; - background: #007fff; - font-weight: normal; - color: #ffffff; -} -.ui-icon-background, -.ui-state-active .ui-icon-background { - border: #003eff; - background-color: #ffffff; -} -.ui-state-active a, -.ui-state-active a:link, -.ui-state-active a:visited { - color: #ffffff; - text-decoration: none; -} - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, -.ui-widget-content .ui-state-highlight, -.ui-widget-header .ui-state-highlight { - border: 1px solid #dad55e; - background: #fffa90; - color: #777620; -} -.ui-state-checked { - border: 1px solid #dad55e; - background: #fffa90; -} -.ui-state-highlight a, -.ui-widget-content .ui-state-highlight a, -.ui-widget-header .ui-state-highlight a { - color: #777620; -} -.ui-state-error, -.ui-widget-content .ui-state-error, -.ui-widget-header .ui-state-error { - border: 1px solid #f1a899; - background: #fddfdf; - color: #5f3f3f; -} -.ui-state-error a, -.ui-widget-content .ui-state-error a, -.ui-widget-header .ui-state-error a { - color: #5f3f3f; -} -.ui-state-error-text, -.ui-widget-content .ui-state-error-text, -.ui-widget-header .ui-state-error-text { - color: #5f3f3f; -} -.ui-priority-primary, -.ui-widget-content .ui-priority-primary, -.ui-widget-header .ui-priority-primary { - font-weight: bold; -} -.ui-priority-secondary, -.ui-widget-content .ui-priority-secondary, -.ui-widget-header .ui-priority-secondary { - opacity: .7; - filter:Alpha(Opacity=70); /* support: IE8 */ - font-weight: normal; -} -.ui-state-disabled, -.ui-widget-content .ui-state-disabled, -.ui-widget-header .ui-state-disabled { - opacity: .35; - filter:Alpha(Opacity=35); /* support: IE8 */ - background-image: none; -} -.ui-state-disabled .ui-icon { - filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */ -} - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { - width: 16px; - height: 16px; -} -.ui-icon, -.ui-widget-content .ui-icon { - background-image: url("images/ui-icons_444444_256x240.png"); -} -.ui-widget-header .ui-icon { - background-image: url("images/ui-icons_444444_256x240.png"); -} -.ui-state-hover .ui-icon, -.ui-state-focus .ui-icon, -.ui-button:hover .ui-icon, -.ui-button:focus .ui-icon { - background-image: url("images/ui-icons_555555_256x240.png"); -} -.ui-state-active .ui-icon, -.ui-button:active .ui-icon { - background-image: url("images/ui-icons_ffffff_256x240.png"); -} -.ui-state-highlight .ui-icon, -.ui-button .ui-state-highlight.ui-icon { - background-image: url("images/ui-icons_777620_256x240.png"); -} -.ui-state-error .ui-icon, -.ui-state-error-text .ui-icon { - background-image: url("images/ui-icons_cc0000_256x240.png"); -} -.ui-button .ui-icon { - background-image: url("images/ui-icons_777777_256x240.png"); -} - -/* positioning */ -.ui-icon-blank { background-position: 16px 16px; } -.ui-icon-caret-1-n { background-position: 0 0; } -.ui-icon-caret-1-ne { background-position: -16px 0; } -.ui-icon-caret-1-e { background-position: -32px 0; } -.ui-icon-caret-1-se { background-position: -48px 0; } -.ui-icon-caret-1-s { background-position: -65px 0; } -.ui-icon-caret-1-sw { background-position: -80px 0; } -.ui-icon-caret-1-w { background-position: -96px 0; } -.ui-icon-caret-1-nw { background-position: -112px 0; } -.ui-icon-caret-2-n-s { background-position: -128px 0; } -.ui-icon-caret-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -65px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -65px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 1px -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-on { background-position: -96px -144px; } -.ui-icon-radio-off { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, -.ui-corner-top, -.ui-corner-left, -.ui-corner-tl { - border-top-left-radius: 3px; -} -.ui-corner-all, -.ui-corner-top, -.ui-corner-right, -.ui-corner-tr { - border-top-right-radius: 3px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-left, -.ui-corner-bl { - border-bottom-left-radius: 3px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-right, -.ui-corner-br { - border-bottom-right-radius: 3px; -} - -/* Overlays */ -.ui-widget-overlay { - background: #aaaaaa; - opacity: .3; - filter: Alpha(Opacity=30); /* support: IE8 */ -} -.ui-widget-shadow { - -webkit-box-shadow: 0px 0px 5px #666666; - box-shadow: 0px 0px 5px #666666; -} diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.js b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.js deleted file mode 100644 index fc62b9a..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.js +++ /dev/null @@ -1,3553 +0,0 @@ -/*! jQuery UI - v1.12.1 - 2018-03-18 -* http://jqueryui.com -* Includes: widget.js, data.js, disable-selection.js, scroll-parent.js, widgets/draggable.js, widgets/resizable.js, widgets/mouse.js -* Copyright jQuery Foundation and other contributors; Licensed MIT */ - -(function( factory ) { - if ( typeof define === "function" && define.amd ) { - - // AMD. Register as an anonymous module. - define([ "jquery" ], factory ); - } else { - - // Browser globals - factory( jQuery ); - } -}(function( $ ) { - -$.ui = $.ui || {}; - -var version = $.ui.version = "1.12.1"; - - -/*! - * jQuery UI Widget 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ - -//>>label: Widget -//>>group: Core -//>>description: Provides a factory for creating stateful widgets with a common API. -//>>docs: http://api.jqueryui.com/jQuery.widget/ -//>>demos: http://jqueryui.com/widget/ - - - -var widgetUuid = 0; -var widgetSlice = Array.prototype.slice; - -$.cleanData = ( function( orig ) { - return function( elems ) { - var events, elem, i; - for ( i = 0; ( elem = elems[ i ] ) != null; i++ ) { - try { - - // Only trigger remove when necessary to save time - events = $._data( elem, "events" ); - if ( events && events.remove ) { - $( elem ).triggerHandler( "remove" ); - } - - // Http://bugs.jquery.com/ticket/8235 - } catch ( e ) {} - } - orig( elems ); - }; -} )( $.cleanData ); - -$.widget = function( name, base, prototype ) { - var existingConstructor, constructor, basePrototype; - - // ProxiedPrototype allows the provided prototype to remain unmodified - // so that it can be used as a mixin for multiple widgets (#8876) - var proxiedPrototype = {}; - - var namespace = name.split( "." )[ 0 ]; - name = name.split( "." )[ 1 ]; - var fullName = namespace + "-" + name; - - if ( !prototype ) { - prototype = base; - base = $.Widget; - } - - if ( $.isArray( prototype ) ) { - prototype = $.extend.apply( null, [ {} ].concat( prototype ) ); - } - - // Create selector for plugin - $.expr[ ":" ][ fullName.toLowerCase() ] = function( elem ) { - return !!$.data( elem, fullName ); - }; - - $[ namespace ] = $[ namespace ] || {}; - existingConstructor = $[ namespace ][ name ]; - constructor = $[ namespace ][ name ] = function( options, element ) { - - // Allow instantiation without "new" keyword - if ( !this._createWidget ) { - return new constructor( options, element ); - } - - // Allow instantiation without initializing for simple inheritance - // must use "new" keyword (the code above always passes args) - if ( arguments.length ) { - this._createWidget( options, element ); - } - }; - - // Extend with the existing constructor to carry over any static properties - $.extend( constructor, existingConstructor, { - version: prototype.version, - - // Copy the object used to create the prototype in case we need to - // redefine the widget later - _proto: $.extend( {}, prototype ), - - // Track widgets that inherit from this widget in case this widget is - // redefined after a widget inherits from it - _childConstructors: [] - } ); - - basePrototype = new base(); - - // We need to make the options hash a property directly on the new instance - // otherwise we'll modify the options hash on the prototype that we're - // inheriting from - basePrototype.options = $.widget.extend( {}, basePrototype.options ); - $.each( prototype, function( prop, value ) { - if ( !$.isFunction( value ) ) { - proxiedPrototype[ prop ] = value; - return; - } - proxiedPrototype[ prop ] = ( function() { - function _super() { - return base.prototype[ prop ].apply( this, arguments ); - } - - function _superApply( args ) { - return base.prototype[ prop ].apply( this, args ); - } - - return function() { - var __super = this._super; - var __superApply = this._superApply; - var returnValue; - - this._super = _super; - this._superApply = _superApply; - - returnValue = value.apply( this, arguments ); - - this._super = __super; - this._superApply = __superApply; - - return returnValue; - }; - } )(); - } ); - constructor.prototype = $.widget.extend( basePrototype, { - - // TODO: remove support for widgetEventPrefix - // always use the name + a colon as the prefix, e.g., draggable:start - // don't prefix for widgets that aren't DOM-based - widgetEventPrefix: existingConstructor ? ( basePrototype.widgetEventPrefix || name ) : name - }, proxiedPrototype, { - constructor: constructor, - namespace: namespace, - widgetName: name, - widgetFullName: fullName - } ); - - // If this widget is being redefined then we need to find all widgets that - // are inheriting from it and redefine all of them so that they inherit from - // the new version of this widget. We're essentially trying to replace one - // level in the prototype chain. - if ( existingConstructor ) { - $.each( existingConstructor._childConstructors, function( i, child ) { - var childPrototype = child.prototype; - - // Redefine the child widget using the same prototype that was - // originally used, but inherit from the new version of the base - $.widget( childPrototype.namespace + "." + childPrototype.widgetName, constructor, - child._proto ); - } ); - - // Remove the list of existing child constructors from the old constructor - // so the old child constructors can be garbage collected - delete existingConstructor._childConstructors; - } else { - base._childConstructors.push( constructor ); - } - - $.widget.bridge( name, constructor ); - - return constructor; -}; - -$.widget.extend = function( target ) { - var input = widgetSlice.call( arguments, 1 ); - var inputIndex = 0; - var inputLength = input.length; - var key; - var value; - - for ( ; inputIndex < inputLength; inputIndex++ ) { - for ( key in input[ inputIndex ] ) { - value = input[ inputIndex ][ key ]; - if ( input[ inputIndex ].hasOwnProperty( key ) && value !== undefined ) { - - // Clone objects - if ( $.isPlainObject( value ) ) { - target[ key ] = $.isPlainObject( target[ key ] ) ? - $.widget.extend( {}, target[ key ], value ) : - - // Don't extend strings, arrays, etc. with objects - $.widget.extend( {}, value ); - - // Copy everything else by reference - } else { - target[ key ] = value; - } - } - } - } - return target; -}; - -$.widget.bridge = function( name, object ) { - var fullName = object.prototype.widgetFullName || name; - $.fn[ name ] = function( options ) { - var isMethodCall = typeof options === "string"; - var args = widgetSlice.call( arguments, 1 ); - var returnValue = this; - - if ( isMethodCall ) { - - // If this is an empty collection, we need to have the instance method - // return undefined instead of the jQuery instance - if ( !this.length && options === "instance" ) { - returnValue = undefined; - } else { - this.each( function() { - var methodValue; - var instance = $.data( this, fullName ); - - if ( options === "instance" ) { - returnValue = instance; - return false; - } - - if ( !instance ) { - return $.error( "cannot call methods on " + name + - " prior to initialization; " + - "attempted to call method '" + options + "'" ); - } - - if ( !$.isFunction( instance[ options ] ) || options.charAt( 0 ) === "_" ) { - return $.error( "no such method '" + options + "' for " + name + - " widget instance" ); - } - - methodValue = instance[ options ].apply( instance, args ); - - if ( methodValue !== instance && methodValue !== undefined ) { - returnValue = methodValue && methodValue.jquery ? - returnValue.pushStack( methodValue.get() ) : - methodValue; - return false; - } - } ); - } - } else { - - // Allow multiple hashes to be passed on init - if ( args.length ) { - options = $.widget.extend.apply( null, [ options ].concat( args ) ); - } - - this.each( function() { - var instance = $.data( this, fullName ); - if ( instance ) { - instance.option( options || {} ); - if ( instance._init ) { - instance._init(); - } - } else { - $.data( this, fullName, new object( options, this ) ); - } - } ); - } - - return returnValue; - }; -}; - -$.Widget = function( /* options, element */ ) {}; -$.Widget._childConstructors = []; - -$.Widget.prototype = { - widgetName: "widget", - widgetEventPrefix: "", - defaultElement: "<div>", - - options: { - classes: {}, - disabled: false, - - // Callbacks - create: null - }, - - _createWidget: function( options, element ) { - element = $( element || this.defaultElement || this )[ 0 ]; - this.element = $( element ); - this.uuid = widgetUuid++; - this.eventNamespace = "." + this.widgetName + this.uuid; - - this.bindings = $(); - this.hoverable = $(); - this.focusable = $(); - this.classesElementLookup = {}; - - if ( element !== this ) { - $.data( element, this.widgetFullName, this ); - this._on( true, this.element, { - remove: function( event ) { - if ( event.target === element ) { - this.destroy(); - } - } - } ); - this.document = $( element.style ? - - // Element within the document - element.ownerDocument : - - // Element is window or document - element.document || element ); - this.window = $( this.document[ 0 ].defaultView || this.document[ 0 ].parentWindow ); - } - - this.options = $.widget.extend( {}, - this.options, - this._getCreateOptions(), - options ); - - this._create(); - - if ( this.options.disabled ) { - this._setOptionDisabled( this.options.disabled ); - } - - this._trigger( "create", null, this._getCreateEventData() ); - this._init(); - }, - - _getCreateOptions: function() { - return {}; - }, - - _getCreateEventData: $.noop, - - _create: $.noop, - - _init: $.noop, - - destroy: function() { - var that = this; - - this._destroy(); - $.each( this.classesElementLookup, function( key, value ) { - that._removeClass( value, key ); - } ); - - // We can probably remove the unbind calls in 2.0 - // all event bindings should go through this._on() - this.element - .off( this.eventNamespace ) - .removeData( this.widgetFullName ); - this.widget() - .off( this.eventNamespace ) - .removeAttr( "aria-disabled" ); - - // Clean up events and states - this.bindings.off( this.eventNamespace ); - }, - - _destroy: $.noop, - - widget: function() { - return this.element; - }, - - option: function( key, value ) { - var options = key; - var parts; - var curOption; - var i; - - if ( arguments.length === 0 ) { - - // Don't return a reference to the internal hash - return $.widget.extend( {}, this.options ); - } - - if ( typeof key === "string" ) { - - // Handle nested keys, e.g., "foo.bar" => { foo: { bar: ___ } } - options = {}; - parts = key.split( "." ); - key = parts.shift(); - if ( parts.length ) { - curOption = options[ key ] = $.widget.extend( {}, this.options[ key ] ); - for ( i = 0; i < parts.length - 1; i++ ) { - curOption[ parts[ i ] ] = curOption[ parts[ i ] ] || {}; - curOption = curOption[ parts[ i ] ]; - } - key = parts.pop(); - if ( arguments.length === 1 ) { - return curOption[ key ] === undefined ? null : curOption[ key ]; - } - curOption[ key ] = value; - } else { - if ( arguments.length === 1 ) { - return this.options[ key ] === undefined ? null : this.options[ key ]; - } - options[ key ] = value; - } - } - - this._setOptions( options ); - - return this; - }, - - _setOptions: function( options ) { - var key; - - for ( key in options ) { - this._setOption( key, options[ key ] ); - } - - return this; - }, - - _setOption: function( key, value ) { - if ( key === "classes" ) { - this._setOptionClasses( value ); - } - - this.options[ key ] = value; - - if ( key === "disabled" ) { - this._setOptionDisabled( value ); - } - - return this; - }, - - _setOptionClasses: function( value ) { - var classKey, elements, currentElements; - - for ( classKey in value ) { - currentElements = this.classesElementLookup[ classKey ]; - if ( value[ classKey ] === this.options.classes[ classKey ] || - !currentElements || - !currentElements.length ) { - continue; - } - - // We are doing this to create a new jQuery object because the _removeClass() call - // on the next line is going to destroy the reference to the current elements being - // tracked. We need to save a copy of this collection so that we can add the new classes - // below. - elements = $( currentElements.get() ); - this._removeClass( currentElements, classKey ); - - // We don't use _addClass() here, because that uses this.options.classes - // for generating the string of classes. We want to use the value passed in from - // _setOption(), this is the new value of the classes option which was passed to - // _setOption(). We pass this value directly to _classes(). - elements.addClass( this._classes( { - element: elements, - keys: classKey, - classes: value, - add: true - } ) ); - } - }, - - _setOptionDisabled: function( value ) { - this._toggleClass( this.widget(), this.widgetFullName + "-disabled", null, !!value ); - - // If the widget is becoming disabled, then nothing is interactive - if ( value ) { - this._removeClass( this.hoverable, null, "ui-state-hover" ); - this._removeClass( this.focusable, null, "ui-state-focus" ); - } - }, - - enable: function() { - return this._setOptions( { disabled: false } ); - }, - - disable: function() { - return this._setOptions( { disabled: true } ); - }, - - _classes: function( options ) { - var full = []; - var that = this; - - options = $.extend( { - element: this.element, - classes: this.options.classes || {} - }, options ); - - function processClassString( classes, checkOption ) { - var current, i; - for ( i = 0; i < classes.length; i++ ) { - current = that.classesElementLookup[ classes[ i ] ] || $(); - if ( options.add ) { - current = $( $.unique( current.get().concat( options.element.get() ) ) ); - } else { - current = $( current.not( options.element ).get() ); - } - that.classesElementLookup[ classes[ i ] ] = current; - full.push( classes[ i ] ); - if ( checkOption && options.classes[ classes[ i ] ] ) { - full.push( options.classes[ classes[ i ] ] ); - } - } - } - - this._on( options.element, { - "remove": "_untrackClassesElement" - } ); - - if ( options.keys ) { - processClassString( options.keys.match( /\S+/g ) || [], true ); - } - if ( options.extra ) { - processClassString( options.extra.match( /\S+/g ) || [] ); - } - - return full.join( " " ); - }, - - _untrackClassesElement: function( event ) { - var that = this; - $.each( that.classesElementLookup, function( key, value ) { - if ( $.inArray( event.target, value ) !== -1 ) { - that.classesElementLookup[ key ] = $( value.not( event.target ).get() ); - } - } ); - }, - - _removeClass: function( element, keys, extra ) { - return this._toggleClass( element, keys, extra, false ); - }, - - _addClass: function( element, keys, extra ) { - return this._toggleClass( element, keys, extra, true ); - }, - - _toggleClass: function( element, keys, extra, add ) { - add = ( typeof add === "boolean" ) ? add : extra; - var shift = ( typeof element === "string" || element === null ), - options = { - extra: shift ? keys : extra, - keys: shift ? element : keys, - element: shift ? this.element : element, - add: add - }; - options.element.toggleClass( this._classes( options ), add ); - return this; - }, - - _on: function( suppressDisabledCheck, element, handlers ) { - var delegateElement; - var instance = this; - - // No suppressDisabledCheck flag, shuffle arguments - if ( typeof suppressDisabledCheck !== "boolean" ) { - handlers = element; - element = suppressDisabledCheck; - suppressDisabledCheck = false; - } - - // No element argument, shuffle and use this.element - if ( !handlers ) { - handlers = element; - element = this.element; - delegateElement = this.widget(); - } else { - element = delegateElement = $( element ); - this.bindings = this.bindings.add( element ); - } - - $.each( handlers, function( event, handler ) { - function handlerProxy() { - - // Allow widgets to customize the disabled handling - // - disabled as an array instead of boolean - // - disabled class as method for disabling individual parts - if ( !suppressDisabledCheck && - ( instance.options.disabled === true || - $( this ).hasClass( "ui-state-disabled" ) ) ) { - return; - } - return ( typeof handler === "string" ? instance[ handler ] : handler ) - .apply( instance, arguments ); - } - - // Copy the guid so direct unbinding works - if ( typeof handler !== "string" ) { - handlerProxy.guid = handler.guid = - handler.guid || handlerProxy.guid || $.guid++; - } - - var match = event.match( /^([\w:-]*)\s*(.*)$/ ); - var eventName = match[ 1 ] + instance.eventNamespace; - var selector = match[ 2 ]; - - if ( selector ) { - delegateElement.on( eventName, selector, handlerProxy ); - } else { - element.on( eventName, handlerProxy ); - } - } ); - }, - - _off: function( element, eventName ) { - eventName = ( eventName || "" ).split( " " ).join( this.eventNamespace + " " ) + - this.eventNamespace; - element.off( eventName ).off( eventName ); - - // Clear the stack to avoid memory leaks (#10056) - this.bindings = $( this.bindings.not( element ).get() ); - this.focusable = $( this.focusable.not( element ).get() ); - this.hoverable = $( this.hoverable.not( element ).get() ); - }, - - _delay: function( handler, delay ) { - function handlerProxy() { - return ( typeof handler === "string" ? instance[ handler ] : handler ) - .apply( instance, arguments ); - } - var instance = this; - return setTimeout( handlerProxy, delay || 0 ); - }, - - _hoverable: function( element ) { - this.hoverable = this.hoverable.add( element ); - this._on( element, { - mouseenter: function( event ) { - this._addClass( $( event.currentTarget ), null, "ui-state-hover" ); - }, - mouseleave: function( event ) { - this._removeClass( $( event.currentTarget ), null, "ui-state-hover" ); - } - } ); - }, - - _focusable: function( element ) { - this.focusable = this.focusable.add( element ); - this._on( element, { - focusin: function( event ) { - this._addClass( $( event.currentTarget ), null, "ui-state-focus" ); - }, - focusout: function( event ) { - this._removeClass( $( event.currentTarget ), null, "ui-state-focus" ); - } - } ); - }, - - _trigger: function( type, event, data ) { - var prop, orig; - var callback = this.options[ type ]; - - data = data || {}; - event = $.Event( event ); - event.type = ( type === this.widgetEventPrefix ? - type : - this.widgetEventPrefix + type ).toLowerCase(); - - // The original event may come from any element - // so we need to reset the target on the new event - event.target = this.element[ 0 ]; - - // Copy original event properties over to the new event - orig = event.originalEvent; - if ( orig ) { - for ( prop in orig ) { - if ( !( prop in event ) ) { - event[ prop ] = orig[ prop ]; - } - } - } - - this.element.trigger( event, data ); - return !( $.isFunction( callback ) && - callback.apply( this.element[ 0 ], [ event ].concat( data ) ) === false || - event.isDefaultPrevented() ); - } -}; - -$.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) { - $.Widget.prototype[ "_" + method ] = function( element, options, callback ) { - if ( typeof options === "string" ) { - options = { effect: options }; - } - - var hasOptions; - var effectName = !options ? - method : - options === true || typeof options === "number" ? - defaultEffect : - options.effect || defaultEffect; - - options = options || {}; - if ( typeof options === "number" ) { - options = { duration: options }; - } - - hasOptions = !$.isEmptyObject( options ); - options.complete = callback; - - if ( options.delay ) { - element.delay( options.delay ); - } - - if ( hasOptions && $.effects && $.effects.effect[ effectName ] ) { - element[ method ]( options ); - } else if ( effectName !== method && element[ effectName ] ) { - element[ effectName ]( options.duration, options.easing, callback ); - } else { - element.queue( function( next ) { - $( this )[ method ](); - if ( callback ) { - callback.call( element[ 0 ] ); - } - next(); - } ); - } - }; -} ); - -var widget = $.widget; - - -/*! - * jQuery UI :data 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ - -//>>label: :data Selector -//>>group: Core -//>>description: Selects elements which have data stored under the specified key. -//>>docs: http://api.jqueryui.com/data-selector/ - - -var data = $.extend( $.expr[ ":" ], { - data: $.expr.createPseudo ? - $.expr.createPseudo( function( dataName ) { - return function( elem ) { - return !!$.data( elem, dataName ); - }; - } ) : - - // Support: jQuery <1.8 - function( elem, i, match ) { - return !!$.data( elem, match[ 3 ] ); - } -} ); - -/*! - * jQuery UI Disable Selection 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ - -//>>label: disableSelection -//>>group: Core -//>>description: Disable selection of text content within the set of matched elements. -//>>docs: http://api.jqueryui.com/disableSelection/ - -// This file is deprecated - - -var disableSelection = $.fn.extend( { - disableSelection: ( function() { - var eventType = "onselectstart" in document.createElement( "div" ) ? - "selectstart" : - "mousedown"; - - return function() { - return this.on( eventType + ".ui-disableSelection", function( event ) { - event.preventDefault(); - } ); - }; - } )(), - - enableSelection: function() { - return this.off( ".ui-disableSelection" ); - } -} ); - - -/*! - * jQuery UI Scroll Parent 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ - -//>>label: scrollParent -//>>group: Core -//>>description: Get the closest ancestor element that is scrollable. -//>>docs: http://api.jqueryui.com/scrollParent/ - - - -var scrollParent = $.fn.scrollParent = function( includeHidden ) { - var position = this.css( "position" ), - excludeStaticParent = position === "absolute", - overflowRegex = includeHidden ? /(auto|scroll|hidden)/ : /(auto|scroll)/, - scrollParent = this.parents().filter( function() { - var parent = $( this ); - if ( excludeStaticParent && parent.css( "position" ) === "static" ) { - return false; - } - return overflowRegex.test( parent.css( "overflow" ) + parent.css( "overflow-y" ) + - parent.css( "overflow-x" ) ); - } ).eq( 0 ); - - return position === "fixed" || !scrollParent.length ? - $( this[ 0 ].ownerDocument || document ) : - scrollParent; -}; - - - - -// This file is deprecated -var ie = $.ui.ie = !!/msie [\w.]+/.exec( navigator.userAgent.toLowerCase() ); - -/*! - * jQuery UI Mouse 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ - -//>>label: Mouse -//>>group: Widgets -//>>description: Abstracts mouse-based interactions to assist in creating certain widgets. -//>>docs: http://api.jqueryui.com/mouse/ - - - -var mouseHandled = false; -$( document ).on( "mouseup", function() { - mouseHandled = false; -} ); - -var widgetsMouse = $.widget( "ui.mouse", { - version: "1.12.1", - options: { - cancel: "input, textarea, button, select, option", - distance: 1, - delay: 0 - }, - _mouseInit: function() { - var that = this; - - this.element - .on( "mousedown." + this.widgetName, function( event ) { - return that._mouseDown( event ); - } ) - .on( "click." + this.widgetName, function( event ) { - if ( true === $.data( event.target, that.widgetName + ".preventClickEvent" ) ) { - $.removeData( event.target, that.widgetName + ".preventClickEvent" ); - event.stopImmediatePropagation(); - return false; - } - } ); - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.off( "." + this.widgetName ); - if ( this._mouseMoveDelegate ) { - this.document - .off( "mousemove." + this.widgetName, this._mouseMoveDelegate ) - .off( "mouseup." + this.widgetName, this._mouseUpDelegate ); - } - }, - - _mouseDown: function( event ) { - - // don't let more than one widget handle mouseStart - if ( mouseHandled ) { - return; - } - - this._mouseMoved = false; - - // We may have missed mouseup (out of window) - ( this._mouseStarted && this._mouseUp( event ) ); - - this._mouseDownEvent = event; - - var that = this, - btnIsLeft = ( event.which === 1 ), - - // event.target.nodeName works around a bug in IE 8 with - // disabled inputs (#7620) - elIsCancel = ( typeof this.options.cancel === "string" && event.target.nodeName ? - $( event.target ).closest( this.options.cancel ).length : false ); - if ( !btnIsLeft || elIsCancel || !this._mouseCapture( event ) ) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if ( !this.mouseDelayMet ) { - this._mouseDelayTimer = setTimeout( function() { - that.mouseDelayMet = true; - }, this.options.delay ); - } - - if ( this._mouseDistanceMet( event ) && this._mouseDelayMet( event ) ) { - this._mouseStarted = ( this._mouseStart( event ) !== false ); - if ( !this._mouseStarted ) { - event.preventDefault(); - return true; - } - } - - // Click event may never have fired (Gecko & Opera) - if ( true === $.data( event.target, this.widgetName + ".preventClickEvent" ) ) { - $.removeData( event.target, this.widgetName + ".preventClickEvent" ); - } - - // These delegates are required to keep context - this._mouseMoveDelegate = function( event ) { - return that._mouseMove( event ); - }; - this._mouseUpDelegate = function( event ) { - return that._mouseUp( event ); - }; - - this.document - .on( "mousemove." + this.widgetName, this._mouseMoveDelegate ) - .on( "mouseup." + this.widgetName, this._mouseUpDelegate ); - - event.preventDefault(); - - mouseHandled = true; - return true; - }, - - _mouseMove: function( event ) { - - // Only check for mouseups outside the document if you've moved inside the document - // at least once. This prevents the firing of mouseup in the case of IE<9, which will - // fire a mousemove event if content is placed under the cursor. See #7778 - // Support: IE <9 - if ( this._mouseMoved ) { - - // IE mouseup check - mouseup happened when mouse was out of window - if ( $.ui.ie && ( !document.documentMode || document.documentMode < 9 ) && - !event.button ) { - return this._mouseUp( event ); - - // Iframe mouseup check - mouseup occurred in another document - } else if ( !event.which ) { - - // Support: Safari <=8 - 9 - // Safari sets which to 0 if you press any of the following keys - // during a drag (#14461) - if ( event.originalEvent.altKey || event.originalEvent.ctrlKey || - event.originalEvent.metaKey || event.originalEvent.shiftKey ) { - this.ignoreMissingWhich = true; - } else if ( !this.ignoreMissingWhich ) { - return this._mouseUp( event ); - } - } - } - - if ( event.which || event.button ) { - this._mouseMoved = true; - } - - if ( this._mouseStarted ) { - this._mouseDrag( event ); - return event.preventDefault(); - } - - if ( this._mouseDistanceMet( event ) && this._mouseDelayMet( event ) ) { - this._mouseStarted = - ( this._mouseStart( this._mouseDownEvent, event ) !== false ); - ( this._mouseStarted ? this._mouseDrag( event ) : this._mouseUp( event ) ); - } - - return !this._mouseStarted; - }, - - _mouseUp: function( event ) { - this.document - .off( "mousemove." + this.widgetName, this._mouseMoveDelegate ) - .off( "mouseup." + this.widgetName, this._mouseUpDelegate ); - - if ( this._mouseStarted ) { - this._mouseStarted = false; - - if ( event.target === this._mouseDownEvent.target ) { - $.data( event.target, this.widgetName + ".preventClickEvent", true ); - } - - this._mouseStop( event ); - } - - if ( this._mouseDelayTimer ) { - clearTimeout( this._mouseDelayTimer ); - delete this._mouseDelayTimer; - } - - this.ignoreMissingWhich = false; - mouseHandled = false; - event.preventDefault(); - }, - - _mouseDistanceMet: function( event ) { - return ( Math.max( - Math.abs( this._mouseDownEvent.pageX - event.pageX ), - Math.abs( this._mouseDownEvent.pageY - event.pageY ) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function( /* event */ ) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function( /* event */ ) {}, - _mouseDrag: function( /* event */ ) {}, - _mouseStop: function( /* event */ ) {}, - _mouseCapture: function( /* event */ ) { return true; } -} ); - - - - -// $.ui.plugin is deprecated. Use $.widget() extensions instead. -var plugin = $.ui.plugin = { - add: function( module, option, set ) { - var i, - proto = $.ui[ module ].prototype; - for ( i in set ) { - proto.plugins[ i ] = proto.plugins[ i ] || []; - proto.plugins[ i ].push( [ option, set[ i ] ] ); - } - }, - call: function( instance, name, args, allowDisconnected ) { - var i, - set = instance.plugins[ name ]; - - if ( !set ) { - return; - } - - if ( !allowDisconnected && ( !instance.element[ 0 ].parentNode || - instance.element[ 0 ].parentNode.nodeType === 11 ) ) { - return; - } - - for ( i = 0; i < set.length; i++ ) { - if ( instance.options[ set[ i ][ 0 ] ] ) { - set[ i ][ 1 ].apply( instance.element, args ); - } - } - } -}; - - - -var safeActiveElement = $.ui.safeActiveElement = function( document ) { - var activeElement; - - // Support: IE 9 only - // IE9 throws an "Unspecified error" accessing document.activeElement from an <iframe> - try { - activeElement = document.activeElement; - } catch ( error ) { - activeElement = document.body; - } - - // Support: IE 9 - 11 only - // IE may return null instead of an element - // Interestingly, this only seems to occur when NOT in an iframe - if ( !activeElement ) { - activeElement = document.body; - } - - // Support: IE 11 only - // IE11 returns a seemingly empty object in some cases when accessing - // document.activeElement from an <iframe> - if ( !activeElement.nodeName ) { - activeElement = document.body; - } - - return activeElement; -}; - - - -var safeBlur = $.ui.safeBlur = function( element ) { - - // Support: IE9 - 10 only - // If the <body> is blurred, IE will switch windows, see #9420 - if ( element && element.nodeName.toLowerCase() !== "body" ) { - $( element ).trigger( "blur" ); - } -}; - - -/*! - * jQuery UI Draggable 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ - -//>>label: Draggable -//>>group: Interactions -//>>description: Enables dragging functionality for any element. -//>>docs: http://api.jqueryui.com/draggable/ -//>>demos: http://jqueryui.com/draggable/ -//>>css.structure: ../../themes/base/draggable.css - - - -$.widget( "ui.draggable", $.ui.mouse, { - version: "1.12.1", - widgetEventPrefix: "drag", - options: { - addClasses: true, - appendTo: "parent", - axis: false, - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false, - - // Callbacks - drag: null, - start: null, - stop: null - }, - _create: function() { - - if ( this.options.helper === "original" ) { - this._setPositionRelative(); - } - if ( this.options.addClasses ) { - this._addClass( "ui-draggable" ); - } - this._setHandleClassName(); - - this._mouseInit(); - }, - - _setOption: function( key, value ) { - this._super( key, value ); - if ( key === "handle" ) { - this._removeHandleClassName(); - this._setHandleClassName(); - } - }, - - _destroy: function() { - if ( ( this.helper || this.element ).is( ".ui-draggable-dragging" ) ) { - this.destroyOnClear = true; - return; - } - this._removeHandleClassName(); - this._mouseDestroy(); - }, - - _mouseCapture: function( event ) { - var o = this.options; - - // Among others, prevent a drag on a resizable-handle - if ( this.helper || o.disabled || - $( event.target ).closest( ".ui-resizable-handle" ).length > 0 ) { - return false; - } - - //Quit if we're not on a valid handle - this.handle = this._getHandle( event ); - if ( !this.handle ) { - return false; - } - - this._blurActiveElement( event ); - - this._blockFrames( o.iframeFix === true ? "iframe" : o.iframeFix ); - - return true; - - }, - - _blockFrames: function( selector ) { - this.iframeBlocks = this.document.find( selector ).map( function() { - var iframe = $( this ); - - return $( "<div>" ) - .css( "position", "absolute" ) - .appendTo( iframe.parent() ) - .outerWidth( iframe.outerWidth() ) - .outerHeight( iframe.outerHeight() ) - .offset( iframe.offset() )[ 0 ]; - } ); - }, - - _unblockFrames: function() { - if ( this.iframeBlocks ) { - this.iframeBlocks.remove(); - delete this.iframeBlocks; - } - }, - - _blurActiveElement: function( event ) { - var activeElement = $.ui.safeActiveElement( this.document[ 0 ] ), - target = $( event.target ); - - // Don't blur if the event occurred on an element that is within - // the currently focused element - // See #10527, #12472 - if ( target.closest( activeElement ).length ) { - return; - } - - // Blur any element that currently has focus, see #4261 - $.ui.safeBlur( activeElement ); - }, - - _mouseStart: function( event ) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper( event ); - - this._addClass( this.helper, "ui-draggable-dragging" ); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if ( $.ui.ddmanager ) { - $.ui.ddmanager.current = this; - } - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css( "position" ); - this.scrollParent = this.helper.scrollParent( true ); - this.offsetParent = this.helper.offsetParent(); - this.hasFixedAncestor = this.helper.parents().filter( function() { - return $( this ).css( "position" ) === "fixed"; - } ).length > 0; - - //The element's absolute position on the page minus margins - this.positionAbs = this.element.offset(); - this._refreshOffsets( event ); - - //Generate the original position - this.originalPosition = this.position = this._generatePosition( event, false ); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if "cursorAt" is supplied - ( o.cursorAt && this._adjustOffsetFromHelper( o.cursorAt ) ); - - //Set a containment if given in the options - this._setContainment(); - - //Trigger event + callbacks - if ( this._trigger( "start", event ) === false ) { - this._clear(); - return false; - } - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ( $.ui.ddmanager && !o.dropBehaviour ) { - $.ui.ddmanager.prepareOffsets( this, event ); - } - - // Execute the drag once - this causes the helper not to be visible before getting its - // correct position - this._mouseDrag( event, true ); - - // If the ddmanager is used for droppables, inform the manager that dragging has started - // (see #5003) - if ( $.ui.ddmanager ) { - $.ui.ddmanager.dragStart( this, event ); - } - - return true; - }, - - _refreshOffsets: function( event ) { - this.offset = { - top: this.positionAbs.top - this.margins.top, - left: this.positionAbs.left - this.margins.left, - scroll: false, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() - }; - - this.offset.click = { - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }; - }, - - _mouseDrag: function( event, noPropagation ) { - - // reset any necessary cached properties (see #5009) - if ( this.hasFixedAncestor ) { - this.offset.parent = this._getParentOffset(); - } - - //Compute the helpers position - this.position = this._generatePosition( event, true ); - this.positionAbs = this._convertPositionTo( "absolute" ); - - //Call plugins and callbacks and use the resulting position if something is returned - if ( !noPropagation ) { - var ui = this._uiHash(); - if ( this._trigger( "drag", event, ui ) === false ) { - this._mouseUp( new $.Event( "mouseup", event ) ); - return false; - } - this.position = ui.position; - } - - this.helper[ 0 ].style.left = this.position.left + "px"; - this.helper[ 0 ].style.top = this.position.top + "px"; - - if ( $.ui.ddmanager ) { - $.ui.ddmanager.drag( this, event ); - } - - return false; - }, - - _mouseStop: function( event ) { - - //If we are using droppables, inform the manager about the drop - var that = this, - dropped = false; - if ( $.ui.ddmanager && !this.options.dropBehaviour ) { - dropped = $.ui.ddmanager.drop( this, event ); - } - - //if a drop comes from outside (a sortable) - if ( this.dropped ) { - dropped = this.dropped; - this.dropped = false; - } - - if ( ( this.options.revert === "invalid" && !dropped ) || - ( this.options.revert === "valid" && dropped ) || - this.options.revert === true || ( $.isFunction( this.options.revert ) && - this.options.revert.call( this.element, dropped ) ) - ) { - $( this.helper ).animate( - this.originalPosition, - parseInt( this.options.revertDuration, 10 ), - function() { - if ( that._trigger( "stop", event ) !== false ) { - that._clear(); - } - } - ); - } else { - if ( this._trigger( "stop", event ) !== false ) { - this._clear(); - } - } - - return false; - }, - - _mouseUp: function( event ) { - this._unblockFrames(); - - // If the ddmanager is used for droppables, inform the manager that dragging has stopped - // (see #5003) - if ( $.ui.ddmanager ) { - $.ui.ddmanager.dragStop( this, event ); - } - - // Only need to focus if the event occurred on the draggable itself, see #10527 - if ( this.handleElement.is( event.target ) ) { - - // The interaction is over; whether or not the click resulted in a drag, - // focus the element - this.element.trigger( "focus" ); - } - - return $.ui.mouse.prototype._mouseUp.call( this, event ); - }, - - cancel: function() { - - if ( this.helper.is( ".ui-draggable-dragging" ) ) { - this._mouseUp( new $.Event( "mouseup", { target: this.element[ 0 ] } ) ); - } else { - this._clear(); - } - - return this; - - }, - - _getHandle: function( event ) { - return this.options.handle ? - !!$( event.target ).closest( this.element.find( this.options.handle ) ).length : - true; - }, - - _setHandleClassName: function() { - this.handleElement = this.options.handle ? - this.element.find( this.options.handle ) : this.element; - this._addClass( this.handleElement, "ui-draggable-handle" ); - }, - - _removeHandleClassName: function() { - this._removeClass( this.handleElement, "ui-draggable-handle" ); - }, - - _createHelper: function( event ) { - - var o = this.options, - helperIsFunction = $.isFunction( o.helper ), - helper = helperIsFunction ? - $( o.helper.apply( this.element[ 0 ], [ event ] ) ) : - ( o.helper === "clone" ? - this.element.clone().removeAttr( "id" ) : - this.element ); - - if ( !helper.parents( "body" ).length ) { - helper.appendTo( ( o.appendTo === "parent" ? - this.element[ 0 ].parentNode : - o.appendTo ) ); - } - - // Http://bugs.jqueryui.com/ticket/9446 - // a helper function can return the original element - // which wouldn't have been set to relative in _create - if ( helperIsFunction && helper[ 0 ] === this.element[ 0 ] ) { - this._setPositionRelative(); - } - - if ( helper[ 0 ] !== this.element[ 0 ] && - !( /(fixed|absolute)/ ).test( helper.css( "position" ) ) ) { - helper.css( "position", "absolute" ); - } - - return helper; - - }, - - _setPositionRelative: function() { - if ( !( /^(?:r|a|f)/ ).test( this.element.css( "position" ) ) ) { - this.element[ 0 ].style.position = "relative"; - } - }, - - _adjustOffsetFromHelper: function( obj ) { - if ( typeof obj === "string" ) { - obj = obj.split( " " ); - } - if ( $.isArray( obj ) ) { - obj = { left: +obj[ 0 ], top: +obj[ 1 ] || 0 }; - } - if ( "left" in obj ) { - this.offset.click.left = obj.left + this.margins.left; - } - if ( "right" in obj ) { - this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - } - if ( "top" in obj ) { - this.offset.click.top = obj.top + this.margins.top; - } - if ( "bottom" in obj ) { - this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - } - }, - - _isRootNode: function( element ) { - return ( /(html|body)/i ).test( element.tagName ) || element === this.document[ 0 ]; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - var po = this.offsetParent.offset(), - document = this.document[ 0 ]; - - // This is a special case where we need to modify a offset calculated on start, since the - // following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the - // next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't - // the document, which means that the scroll is included in the initial calculation of the - // offset of the parent, and never recalculated upon drag - if ( this.cssPosition === "absolute" && this.scrollParent[ 0 ] !== document && - $.contains( this.scrollParent[ 0 ], this.offsetParent[ 0 ] ) ) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if ( this._isRootNode( this.offsetParent[ 0 ] ) ) { - po = { top: 0, left: 0 }; - } - - return { - top: po.top + ( parseInt( this.offsetParent.css( "borderTopWidth" ), 10 ) || 0 ), - left: po.left + ( parseInt( this.offsetParent.css( "borderLeftWidth" ), 10 ) || 0 ) - }; - - }, - - _getRelativeOffset: function() { - if ( this.cssPosition !== "relative" ) { - return { top: 0, left: 0 }; - } - - var p = this.element.position(), - scrollIsRootNode = this._isRootNode( this.scrollParent[ 0 ] ); - - return { - top: p.top - ( parseInt( this.helper.css( "top" ), 10 ) || 0 ) + - ( !scrollIsRootNode ? this.scrollParent.scrollTop() : 0 ), - left: p.left - ( parseInt( this.helper.css( "left" ), 10 ) || 0 ) + - ( !scrollIsRootNode ? this.scrollParent.scrollLeft() : 0 ) - }; - - }, - - _cacheMargins: function() { - this.margins = { - left: ( parseInt( this.element.css( "marginLeft" ), 10 ) || 0 ), - top: ( parseInt( this.element.css( "marginTop" ), 10 ) || 0 ), - right: ( parseInt( this.element.css( "marginRight" ), 10 ) || 0 ), - bottom: ( parseInt( this.element.css( "marginBottom" ), 10 ) || 0 ) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var isUserScrollable, c, ce, - o = this.options, - document = this.document[ 0 ]; - - this.relativeContainer = null; - - if ( !o.containment ) { - this.containment = null; - return; - } - - if ( o.containment === "window" ) { - this.containment = [ - $( window ).scrollLeft() - this.offset.relative.left - this.offset.parent.left, - $( window ).scrollTop() - this.offset.relative.top - this.offset.parent.top, - $( window ).scrollLeft() + $( window ).width() - - this.helperProportions.width - this.margins.left, - $( window ).scrollTop() + - ( $( window ).height() || document.body.parentNode.scrollHeight ) - - this.helperProportions.height - this.margins.top - ]; - return; - } - - if ( o.containment === "document" ) { - this.containment = [ - 0, - 0, - $( document ).width() - this.helperProportions.width - this.margins.left, - ( $( document ).height() || document.body.parentNode.scrollHeight ) - - this.helperProportions.height - this.margins.top - ]; - return; - } - - if ( o.containment.constructor === Array ) { - this.containment = o.containment; - return; - } - - if ( o.containment === "parent" ) { - o.containment = this.helper[ 0 ].parentNode; - } - - c = $( o.containment ); - ce = c[ 0 ]; - - if ( !ce ) { - return; - } - - isUserScrollable = /(scroll|auto)/.test( c.css( "overflow" ) ); - - this.containment = [ - ( parseInt( c.css( "borderLeftWidth" ), 10 ) || 0 ) + - ( parseInt( c.css( "paddingLeft" ), 10 ) || 0 ), - ( parseInt( c.css( "borderTopWidth" ), 10 ) || 0 ) + - ( parseInt( c.css( "paddingTop" ), 10 ) || 0 ), - ( isUserScrollable ? Math.max( ce.scrollWidth, ce.offsetWidth ) : ce.offsetWidth ) - - ( parseInt( c.css( "borderRightWidth" ), 10 ) || 0 ) - - ( parseInt( c.css( "paddingRight" ), 10 ) || 0 ) - - this.helperProportions.width - - this.margins.left - - this.margins.right, - ( isUserScrollable ? Math.max( ce.scrollHeight, ce.offsetHeight ) : ce.offsetHeight ) - - ( parseInt( c.css( "borderBottomWidth" ), 10 ) || 0 ) - - ( parseInt( c.css( "paddingBottom" ), 10 ) || 0 ) - - this.helperProportions.height - - this.margins.top - - this.margins.bottom - ]; - this.relativeContainer = c; - }, - - _convertPositionTo: function( d, pos ) { - - if ( !pos ) { - pos = this.position; - } - - var mod = d === "absolute" ? 1 : -1, - scrollIsRootNode = this._isRootNode( this.scrollParent[ 0 ] ); - - return { - top: ( - - // The absolute mouse position - pos.top + - - // Only for relative positioned nodes: Relative offset from element to offset parent - this.offset.relative.top * mod + - - // The offsetParent's offset without borders (offset + border) - this.offset.parent.top * mod - - ( ( this.cssPosition === "fixed" ? - -this.offset.scroll.top : - ( scrollIsRootNode ? 0 : this.offset.scroll.top ) ) * mod ) - ), - left: ( - - // The absolute mouse position - pos.left + - - // Only for relative positioned nodes: Relative offset from element to offset parent - this.offset.relative.left * mod + - - // The offsetParent's offset without borders (offset + border) - this.offset.parent.left * mod - - ( ( this.cssPosition === "fixed" ? - -this.offset.scroll.left : - ( scrollIsRootNode ? 0 : this.offset.scroll.left ) ) * mod ) - ) - }; - - }, - - _generatePosition: function( event, constrainPosition ) { - - var containment, co, top, left, - o = this.options, - scrollIsRootNode = this._isRootNode( this.scrollParent[ 0 ] ), - pageX = event.pageX, - pageY = event.pageY; - - // Cache the scroll - if ( !scrollIsRootNode || !this.offset.scroll ) { - this.offset.scroll = { - top: this.scrollParent.scrollTop(), - left: this.scrollParent.scrollLeft() - }; - } - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - // If we are not dragging yet, we won't check for options - if ( constrainPosition ) { - if ( this.containment ) { - if ( this.relativeContainer ) { - co = this.relativeContainer.offset(); - containment = [ - this.containment[ 0 ] + co.left, - this.containment[ 1 ] + co.top, - this.containment[ 2 ] + co.left, - this.containment[ 3 ] + co.top - ]; - } else { - containment = this.containment; - } - - if ( event.pageX - this.offset.click.left < containment[ 0 ] ) { - pageX = containment[ 0 ] + this.offset.click.left; - } - if ( event.pageY - this.offset.click.top < containment[ 1 ] ) { - pageY = containment[ 1 ] + this.offset.click.top; - } - if ( event.pageX - this.offset.click.left > containment[ 2 ] ) { - pageX = containment[ 2 ] + this.offset.click.left; - } - if ( event.pageY - this.offset.click.top > containment[ 3 ] ) { - pageY = containment[ 3 ] + this.offset.click.top; - } - } - - if ( o.grid ) { - - //Check for grid elements set to 0 to prevent divide by 0 error causing invalid - // argument errors in IE (see ticket #6950) - top = o.grid[ 1 ] ? this.originalPageY + Math.round( ( pageY - - this.originalPageY ) / o.grid[ 1 ] ) * o.grid[ 1 ] : this.originalPageY; - pageY = containment ? ( ( top - this.offset.click.top >= containment[ 1 ] || - top - this.offset.click.top > containment[ 3 ] ) ? - top : - ( ( top - this.offset.click.top >= containment[ 1 ] ) ? - top - o.grid[ 1 ] : top + o.grid[ 1 ] ) ) : top; - - left = o.grid[ 0 ] ? this.originalPageX + - Math.round( ( pageX - this.originalPageX ) / o.grid[ 0 ] ) * o.grid[ 0 ] : - this.originalPageX; - pageX = containment ? ( ( left - this.offset.click.left >= containment[ 0 ] || - left - this.offset.click.left > containment[ 2 ] ) ? - left : - ( ( left - this.offset.click.left >= containment[ 0 ] ) ? - left - o.grid[ 0 ] : left + o.grid[ 0 ] ) ) : left; - } - - if ( o.axis === "y" ) { - pageX = this.originalPageX; - } - - if ( o.axis === "x" ) { - pageY = this.originalPageY; - } - } - - return { - top: ( - - // The absolute mouse position - pageY - - - // Click offset (relative to the element) - this.offset.click.top - - - // Only for relative positioned nodes: Relative offset from element to offset parent - this.offset.relative.top - - - // The offsetParent's offset without borders (offset + border) - this.offset.parent.top + - ( this.cssPosition === "fixed" ? - -this.offset.scroll.top : - ( scrollIsRootNode ? 0 : this.offset.scroll.top ) ) - ), - left: ( - - // The absolute mouse position - pageX - - - // Click offset (relative to the element) - this.offset.click.left - - - // Only for relative positioned nodes: Relative offset from element to offset parent - this.offset.relative.left - - - // The offsetParent's offset without borders (offset + border) - this.offset.parent.left + - ( this.cssPosition === "fixed" ? - -this.offset.scroll.left : - ( scrollIsRootNode ? 0 : this.offset.scroll.left ) ) - ) - }; - - }, - - _clear: function() { - this._removeClass( this.helper, "ui-draggable-dragging" ); - if ( this.helper[ 0 ] !== this.element[ 0 ] && !this.cancelHelperRemoval ) { - this.helper.remove(); - } - this.helper = null; - this.cancelHelperRemoval = false; - if ( this.destroyOnClear ) { - this.destroy(); - } - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function( type, event, ui ) { - ui = ui || this._uiHash(); - $.ui.plugin.call( this, type, [ event, ui, this ], true ); - - // Absolute position and offset (see #6884 ) have to be recalculated after plugins - if ( /^(drag|start|stop)/.test( type ) ) { - this.positionAbs = this._convertPositionTo( "absolute" ); - ui.offset = this.positionAbs; - } - return $.Widget.prototype._trigger.call( this, type, event, ui ); - }, - - plugins: {}, - - _uiHash: function() { - return { - helper: this.helper, - position: this.position, - originalPosition: this.originalPosition, - offset: this.positionAbs - }; - } - -} ); - -$.ui.plugin.add( "draggable", "connectToSortable", { - start: function( event, ui, draggable ) { - var uiSortable = $.extend( {}, ui, { - item: draggable.element - } ); - - draggable.sortables = []; - $( draggable.options.connectToSortable ).each( function() { - var sortable = $( this ).sortable( "instance" ); - - if ( sortable && !sortable.options.disabled ) { - draggable.sortables.push( sortable ); - - // RefreshPositions is called at drag start to refresh the containerCache - // which is used in drag. This ensures it's initialized and synchronized - // with any changes that might have happened on the page since initialization. - sortable.refreshPositions(); - sortable._trigger( "activate", event, uiSortable ); - } - } ); - }, - stop: function( event, ui, draggable ) { - var uiSortable = $.extend( {}, ui, { - item: draggable.element - } ); - - draggable.cancelHelperRemoval = false; - - $.each( draggable.sortables, function() { - var sortable = this; - - if ( sortable.isOver ) { - sortable.isOver = 0; - - // Allow this sortable to handle removing the helper - draggable.cancelHelperRemoval = true; - sortable.cancelHelperRemoval = false; - - // Use _storedCSS To restore properties in the sortable, - // as this also handles revert (#9675) since the draggable - // may have modified them in unexpected ways (#8809) - sortable._storedCSS = { - position: sortable.placeholder.css( "position" ), - top: sortable.placeholder.css( "top" ), - left: sortable.placeholder.css( "left" ) - }; - - sortable._mouseStop( event ); - - // Once drag has ended, the sortable should return to using - // its original helper, not the shared helper from draggable - sortable.options.helper = sortable.options._helper; - } else { - - // Prevent this Sortable from removing the helper. - // However, don't set the draggable to remove the helper - // either as another connected Sortable may yet handle the removal. - sortable.cancelHelperRemoval = true; - - sortable._trigger( "deactivate", event, uiSortable ); - } - } ); - }, - drag: function( event, ui, draggable ) { - $.each( draggable.sortables, function() { - var innermostIntersecting = false, - sortable = this; - - // Copy over variables that sortable's _intersectsWith uses - sortable.positionAbs = draggable.positionAbs; - sortable.helperProportions = draggable.helperProportions; - sortable.offset.click = draggable.offset.click; - - if ( sortable._intersectsWith( sortable.containerCache ) ) { - innermostIntersecting = true; - - $.each( draggable.sortables, function() { - - // Copy over variables that sortable's _intersectsWith uses - this.positionAbs = draggable.positionAbs; - this.helperProportions = draggable.helperProportions; - this.offset.click = draggable.offset.click; - - if ( this !== sortable && - this._intersectsWith( this.containerCache ) && - $.contains( sortable.element[ 0 ], this.element[ 0 ] ) ) { - innermostIntersecting = false; - } - - return innermostIntersecting; - } ); - } - - if ( innermostIntersecting ) { - - // If it intersects, we use a little isOver variable and set it once, - // so that the move-in stuff gets fired only once. - if ( !sortable.isOver ) { - sortable.isOver = 1; - - // Store draggable's parent in case we need to reappend to it later. - draggable._parent = ui.helper.parent(); - - sortable.currentItem = ui.helper - .appendTo( sortable.element ) - .data( "ui-sortable-item", true ); - - // Store helper option to later restore it - sortable.options._helper = sortable.options.helper; - - sortable.options.helper = function() { - return ui.helper[ 0 ]; - }; - - // Fire the start events of the sortable with our passed browser event, - // and our own helper (so it doesn't create a new one) - event.target = sortable.currentItem[ 0 ]; - sortable._mouseCapture( event, true ); - sortable._mouseStart( event, true, true ); - - // Because the browser event is way off the new appended portlet, - // modify necessary variables to reflect the changes - sortable.offset.click.top = draggable.offset.click.top; - sortable.offset.click.left = draggable.offset.click.left; - sortable.offset.parent.left -= draggable.offset.parent.left - - sortable.offset.parent.left; - sortable.offset.parent.top -= draggable.offset.parent.top - - sortable.offset.parent.top; - - draggable._trigger( "toSortable", event ); - - // Inform draggable that the helper is in a valid drop zone, - // used solely in the revert option to handle "valid/invalid". - draggable.dropped = sortable.element; - - // Need to refreshPositions of all sortables in the case that - // adding to one sortable changes the location of the other sortables (#9675) - $.each( draggable.sortables, function() { - this.refreshPositions(); - } ); - - // Hack so receive/update callbacks work (mostly) - draggable.currentItem = draggable.element; - sortable.fromOutside = draggable; - } - - if ( sortable.currentItem ) { - sortable._mouseDrag( event ); - - // Copy the sortable's position because the draggable's can potentially reflect - // a relative position, while sortable is always absolute, which the dragged - // element has now become. (#8809) - ui.position = sortable.position; - } - } else { - - // If it doesn't intersect with the sortable, and it intersected before, - // we fake the drag stop of the sortable, but make sure it doesn't remove - // the helper by using cancelHelperRemoval. - if ( sortable.isOver ) { - - sortable.isOver = 0; - sortable.cancelHelperRemoval = true; - - // Calling sortable's mouseStop would trigger a revert, - // so revert must be temporarily false until after mouseStop is called. - sortable.options._revert = sortable.options.revert; - sortable.options.revert = false; - - sortable._trigger( "out", event, sortable._uiHash( sortable ) ); - sortable._mouseStop( event, true ); - - // Restore sortable behaviors that were modfied - // when the draggable entered the sortable area (#9481) - sortable.options.revert = sortable.options._revert; - sortable.options.helper = sortable.options._helper; - - if ( sortable.placeholder ) { - sortable.placeholder.remove(); - } - - // Restore and recalculate the draggable's offset considering the sortable - // may have modified them in unexpected ways. (#8809, #10669) - ui.helper.appendTo( draggable._parent ); - draggable._refreshOffsets( event ); - ui.position = draggable._generatePosition( event, true ); - - draggable._trigger( "fromSortable", event ); - - // Inform draggable that the helper is no longer in a valid drop zone - draggable.dropped = false; - - // Need to refreshPositions of all sortables just in case removing - // from one sortable changes the location of other sortables (#9675) - $.each( draggable.sortables, function() { - this.refreshPositions(); - } ); - } - } - } ); - } -} ); - -$.ui.plugin.add( "draggable", "cursor", { - start: function( event, ui, instance ) { - var t = $( "body" ), - o = instance.options; - - if ( t.css( "cursor" ) ) { - o._cursor = t.css( "cursor" ); - } - t.css( "cursor", o.cursor ); - }, - stop: function( event, ui, instance ) { - var o = instance.options; - if ( o._cursor ) { - $( "body" ).css( "cursor", o._cursor ); - } - } -} ); - -$.ui.plugin.add( "draggable", "opacity", { - start: function( event, ui, instance ) { - var t = $( ui.helper ), - o = instance.options; - if ( t.css( "opacity" ) ) { - o._opacity = t.css( "opacity" ); - } - t.css( "opacity", o.opacity ); - }, - stop: function( event, ui, instance ) { - var o = instance.options; - if ( o._opacity ) { - $( ui.helper ).css( "opacity", o._opacity ); - } - } -} ); - -$.ui.plugin.add( "draggable", "scroll", { - start: function( event, ui, i ) { - if ( !i.scrollParentNotHidden ) { - i.scrollParentNotHidden = i.helper.scrollParent( false ); - } - - if ( i.scrollParentNotHidden[ 0 ] !== i.document[ 0 ] && - i.scrollParentNotHidden[ 0 ].tagName !== "HTML" ) { - i.overflowOffset = i.scrollParentNotHidden.offset(); - } - }, - drag: function( event, ui, i ) { - - var o = i.options, - scrolled = false, - scrollParent = i.scrollParentNotHidden[ 0 ], - document = i.document[ 0 ]; - - if ( scrollParent !== document && scrollParent.tagName !== "HTML" ) { - if ( !o.axis || o.axis !== "x" ) { - if ( ( i.overflowOffset.top + scrollParent.offsetHeight ) - event.pageY < - o.scrollSensitivity ) { - scrollParent.scrollTop = scrolled = scrollParent.scrollTop + o.scrollSpeed; - } else if ( event.pageY - i.overflowOffset.top < o.scrollSensitivity ) { - scrollParent.scrollTop = scrolled = scrollParent.scrollTop - o.scrollSpeed; - } - } - - if ( !o.axis || o.axis !== "y" ) { - if ( ( i.overflowOffset.left + scrollParent.offsetWidth ) - event.pageX < - o.scrollSensitivity ) { - scrollParent.scrollLeft = scrolled = scrollParent.scrollLeft + o.scrollSpeed; - } else if ( event.pageX - i.overflowOffset.left < o.scrollSensitivity ) { - scrollParent.scrollLeft = scrolled = scrollParent.scrollLeft - o.scrollSpeed; - } - } - - } else { - - if ( !o.axis || o.axis !== "x" ) { - if ( event.pageY - $( document ).scrollTop() < o.scrollSensitivity ) { - scrolled = $( document ).scrollTop( $( document ).scrollTop() - o.scrollSpeed ); - } else if ( $( window ).height() - ( event.pageY - $( document ).scrollTop() ) < - o.scrollSensitivity ) { - scrolled = $( document ).scrollTop( $( document ).scrollTop() + o.scrollSpeed ); - } - } - - if ( !o.axis || o.axis !== "y" ) { - if ( event.pageX - $( document ).scrollLeft() < o.scrollSensitivity ) { - scrolled = $( document ).scrollLeft( - $( document ).scrollLeft() - o.scrollSpeed - ); - } else if ( $( window ).width() - ( event.pageX - $( document ).scrollLeft() ) < - o.scrollSensitivity ) { - scrolled = $( document ).scrollLeft( - $( document ).scrollLeft() + o.scrollSpeed - ); - } - } - - } - - if ( scrolled !== false && $.ui.ddmanager && !o.dropBehaviour ) { - $.ui.ddmanager.prepareOffsets( i, event ); - } - - } -} ); - -$.ui.plugin.add( "draggable", "snap", { - start: function( event, ui, i ) { - - var o = i.options; - - i.snapElements = []; - - $( o.snap.constructor !== String ? ( o.snap.items || ":data(ui-draggable)" ) : o.snap ) - .each( function() { - var $t = $( this ), - $o = $t.offset(); - if ( this !== i.element[ 0 ] ) { - i.snapElements.push( { - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - } ); - } - } ); - - }, - drag: function( event, ui, inst ) { - - var ts, bs, ls, rs, l, r, t, b, i, first, - o = inst.options, - d = o.snapTolerance, - x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for ( i = inst.snapElements.length - 1; i >= 0; i-- ) { - - l = inst.snapElements[ i ].left - inst.margins.left; - r = l + inst.snapElements[ i ].width; - t = inst.snapElements[ i ].top - inst.margins.top; - b = t + inst.snapElements[ i ].height; - - if ( x2 < l - d || x1 > r + d || y2 < t - d || y1 > b + d || - !$.contains( inst.snapElements[ i ].item.ownerDocument, - inst.snapElements[ i ].item ) ) { - if ( inst.snapElements[ i ].snapping ) { - ( inst.options.snap.release && - inst.options.snap.release.call( - inst.element, - event, - $.extend( inst._uiHash(), { snapItem: inst.snapElements[ i ].item } ) - ) ); - } - inst.snapElements[ i ].snapping = false; - continue; - } - - if ( o.snapMode !== "inner" ) { - ts = Math.abs( t - y2 ) <= d; - bs = Math.abs( b - y1 ) <= d; - ls = Math.abs( l - x2 ) <= d; - rs = Math.abs( r - x1 ) <= d; - if ( ts ) { - ui.position.top = inst._convertPositionTo( "relative", { - top: t - inst.helperProportions.height, - left: 0 - } ).top; - } - if ( bs ) { - ui.position.top = inst._convertPositionTo( "relative", { - top: b, - left: 0 - } ).top; - } - if ( ls ) { - ui.position.left = inst._convertPositionTo( "relative", { - top: 0, - left: l - inst.helperProportions.width - } ).left; - } - if ( rs ) { - ui.position.left = inst._convertPositionTo( "relative", { - top: 0, - left: r - } ).left; - } - } - - first = ( ts || bs || ls || rs ); - - if ( o.snapMode !== "outer" ) { - ts = Math.abs( t - y1 ) <= d; - bs = Math.abs( b - y2 ) <= d; - ls = Math.abs( l - x1 ) <= d; - rs = Math.abs( r - x2 ) <= d; - if ( ts ) { - ui.position.top = inst._convertPositionTo( "relative", { - top: t, - left: 0 - } ).top; - } - if ( bs ) { - ui.position.top = inst._convertPositionTo( "relative", { - top: b - inst.helperProportions.height, - left: 0 - } ).top; - } - if ( ls ) { - ui.position.left = inst._convertPositionTo( "relative", { - top: 0, - left: l - } ).left; - } - if ( rs ) { - ui.position.left = inst._convertPositionTo( "relative", { - top: 0, - left: r - inst.helperProportions.width - } ).left; - } - } - - if ( !inst.snapElements[ i ].snapping && ( ts || bs || ls || rs || first ) ) { - ( inst.options.snap.snap && - inst.options.snap.snap.call( - inst.element, - event, - $.extend( inst._uiHash(), { - snapItem: inst.snapElements[ i ].item - } ) ) ); - } - inst.snapElements[ i ].snapping = ( ts || bs || ls || rs || first ); - - } - - } -} ); - -$.ui.plugin.add( "draggable", "stack", { - start: function( event, ui, instance ) { - var min, - o = instance.options, - group = $.makeArray( $( o.stack ) ).sort( function( a, b ) { - return ( parseInt( $( a ).css( "zIndex" ), 10 ) || 0 ) - - ( parseInt( $( b ).css( "zIndex" ), 10 ) || 0 ); - } ); - - if ( !group.length ) { return; } - - min = parseInt( $( group[ 0 ] ).css( "zIndex" ), 10 ) || 0; - $( group ).each( function( i ) { - $( this ).css( "zIndex", min + i ); - } ); - this.css( "zIndex", ( min + group.length ) ); - } -} ); - -$.ui.plugin.add( "draggable", "zIndex", { - start: function( event, ui, instance ) { - var t = $( ui.helper ), - o = instance.options; - - if ( t.css( "zIndex" ) ) { - o._zIndex = t.css( "zIndex" ); - } - t.css( "zIndex", o.zIndex ); - }, - stop: function( event, ui, instance ) { - var o = instance.options; - - if ( o._zIndex ) { - $( ui.helper ).css( "zIndex", o._zIndex ); - } - } -} ); - -var widgetsDraggable = $.ui.draggable; - - -/*! - * jQuery UI Resizable 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - */ - -//>>label: Resizable -//>>group: Interactions -//>>description: Enables resize functionality for any element. -//>>docs: http://api.jqueryui.com/resizable/ -//>>demos: http://jqueryui.com/resizable/ -//>>css.structure: ../../themes/base/core.css -//>>css.structure: ../../themes/base/resizable.css -//>>css.theme: ../../themes/base/theme.css - - - -$.widget( "ui.resizable", $.ui.mouse, { - version: "1.12.1", - widgetEventPrefix: "resize", - options: { - alsoResize: false, - animate: false, - animateDuration: "slow", - animateEasing: "swing", - aspectRatio: false, - autoHide: false, - classes: { - "ui-resizable-se": "ui-icon ui-icon-gripsmall-diagonal-se" - }, - containment: false, - ghost: false, - grid: false, - handles: "e,s,se", - helper: false, - maxHeight: null, - maxWidth: null, - minHeight: 10, - minWidth: 10, - - // See #7960 - zIndex: 90, - - // Callbacks - resize: null, - start: null, - stop: null - }, - - _num: function( value ) { - return parseFloat( value ) || 0; - }, - - _isNumber: function( value ) { - return !isNaN( parseFloat( value ) ); - }, - - _hasScroll: function( el, a ) { - - if ( $( el ).css( "overflow" ) === "hidden" ) { - return false; - } - - var scroll = ( a && a === "left" ) ? "scrollLeft" : "scrollTop", - has = false; - - if ( el[ scroll ] > 0 ) { - return true; - } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[ scroll ] = 1; - has = ( el[ scroll ] > 0 ); - el[ scroll ] = 0; - return has; - }, - - _create: function() { - - var margins, - o = this.options, - that = this; - this._addClass( "ui-resizable" ); - - $.extend( this, { - _aspectRatio: !!( o.aspectRatio ), - aspectRatio: o.aspectRatio, - originalElement: this.element, - _proportionallyResizeElements: [], - _helper: o.helper || o.ghost || o.animate ? o.helper || "ui-resizable-helper" : null - } ); - - // Wrap the element if it cannot hold child nodes - if ( this.element[ 0 ].nodeName.match( /^(canvas|textarea|input|select|button|img)$/i ) ) { - - this.element.wrap( - $( "<div class='ui-wrapper' style='overflow: hidden;'></div>" ).css( { - position: this.element.css( "position" ), - width: this.element.outerWidth(), - height: this.element.outerHeight(), - top: this.element.css( "top" ), - left: this.element.css( "left" ) - } ) - ); - - this.element = this.element.parent().data( - "ui-resizable", this.element.resizable( "instance" ) - ); - - this.elementIsWrapper = true; - - margins = { - marginTop: this.originalElement.css( "marginTop" ), - marginRight: this.originalElement.css( "marginRight" ), - marginBottom: this.originalElement.css( "marginBottom" ), - marginLeft: this.originalElement.css( "marginLeft" ) - }; - - this.element.css( margins ); - this.originalElement.css( "margin", 0 ); - - // support: Safari - // Prevent Safari textarea resize - this.originalResizeStyle = this.originalElement.css( "resize" ); - this.originalElement.css( "resize", "none" ); - - this._proportionallyResizeElements.push( this.originalElement.css( { - position: "static", - zoom: 1, - display: "block" - } ) ); - - // Support: IE9 - // avoid IE jump (hard set the margin) - this.originalElement.css( margins ); - - this._proportionallyResize(); - } - - this._setupHandles(); - - if ( o.autoHide ) { - $( this.element ) - .on( "mouseenter", function() { - if ( o.disabled ) { - return; - } - that._removeClass( "ui-resizable-autohide" ); - that._handles.show(); - } ) - .on( "mouseleave", function() { - if ( o.disabled ) { - return; - } - if ( !that.resizing ) { - that._addClass( "ui-resizable-autohide" ); - that._handles.hide(); - } - } ); - } - - this._mouseInit(); - }, - - _destroy: function() { - - this._mouseDestroy(); - - var wrapper, - _destroy = function( exp ) { - $( exp ) - .removeData( "resizable" ) - .removeData( "ui-resizable" ) - .off( ".resizable" ) - .find( ".ui-resizable-handle" ) - .remove(); - }; - - // TODO: Unwrap at same DOM position - if ( this.elementIsWrapper ) { - _destroy( this.element ); - wrapper = this.element; - this.originalElement.css( { - position: wrapper.css( "position" ), - width: wrapper.outerWidth(), - height: wrapper.outerHeight(), - top: wrapper.css( "top" ), - left: wrapper.css( "left" ) - } ).insertAfter( wrapper ); - wrapper.remove(); - } - - this.originalElement.css( "resize", this.originalResizeStyle ); - _destroy( this.originalElement ); - - return this; - }, - - _setOption: function( key, value ) { - this._super( key, value ); - - switch ( key ) { - case "handles": - this._removeHandles(); - this._setupHandles(); - break; - default: - break; - } - }, - - _setupHandles: function() { - var o = this.options, handle, i, n, hname, axis, that = this; - this.handles = o.handles || - ( !$( ".ui-resizable-handle", this.element ).length ? - "e,s,se" : { - n: ".ui-resizable-n", - e: ".ui-resizable-e", - s: ".ui-resizable-s", - w: ".ui-resizable-w", - se: ".ui-resizable-se", - sw: ".ui-resizable-sw", - ne: ".ui-resizable-ne", - nw: ".ui-resizable-nw" - } ); - - this._handles = $(); - if ( this.handles.constructor === String ) { - - if ( this.handles === "all" ) { - this.handles = "n,e,s,w,se,sw,ne,nw"; - } - - n = this.handles.split( "," ); - this.handles = {}; - - for ( i = 0; i < n.length; i++ ) { - - handle = $.trim( n[ i ] ); - hname = "ui-resizable-" + handle; - axis = $( "<div>" ); - this._addClass( axis, "ui-resizable-handle " + hname ); - - axis.css( { zIndex: o.zIndex } ); - - this.handles[ handle ] = ".ui-resizable-" + handle; - this.element.append( axis ); - } - - } - - this._renderAxis = function( target ) { - - var i, axis, padPos, padWrapper; - - target = target || this.element; - - for ( i in this.handles ) { - - if ( this.handles[ i ].constructor === String ) { - this.handles[ i ] = this.element.children( this.handles[ i ] ).first().show(); - } else if ( this.handles[ i ].jquery || this.handles[ i ].nodeType ) { - this.handles[ i ] = $( this.handles[ i ] ); - this._on( this.handles[ i ], { "mousedown": that._mouseDown } ); - } - - if ( this.elementIsWrapper && - this.originalElement[ 0 ] - .nodeName - .match( /^(textarea|input|select|button)$/i ) ) { - axis = $( this.handles[ i ], this.element ); - - padWrapper = /sw|ne|nw|se|n|s/.test( i ) ? - axis.outerHeight() : - axis.outerWidth(); - - padPos = [ "padding", - /ne|nw|n/.test( i ) ? "Top" : - /se|sw|s/.test( i ) ? "Bottom" : - /^e$/.test( i ) ? "Right" : "Left" ].join( "" ); - - target.css( padPos, padWrapper ); - - this._proportionallyResize(); - } - - this._handles = this._handles.add( this.handles[ i ] ); - } - }; - - // TODO: make renderAxis a prototype function - this._renderAxis( this.element ); - - this._handles = this._handles.add( this.element.find( ".ui-resizable-handle" ) ); - this._handles.disableSelection(); - - this._handles.on( "mouseover", function() { - if ( !that.resizing ) { - if ( this.className ) { - axis = this.className.match( /ui-resizable-(se|sw|ne|nw|n|e|s|w)/i ); - } - that.axis = axis && axis[ 1 ] ? axis[ 1 ] : "se"; - } - } ); - - if ( o.autoHide ) { - this._handles.hide(); - this._addClass( "ui-resizable-autohide" ); - } - }, - - _removeHandles: function() { - this._handles.remove(); - }, - - _mouseCapture: function( event ) { - var i, handle, - capture = false; - - for ( i in this.handles ) { - handle = $( this.handles[ i ] )[ 0 ]; - if ( handle === event.target || $.contains( handle, event.target ) ) { - capture = true; - } - } - - return !this.options.disabled && capture; - }, - - _mouseStart: function( event ) { - - var curleft, curtop, cursor, - o = this.options, - el = this.element; - - this.resizing = true; - - this._renderProxy(); - - curleft = this._num( this.helper.css( "left" ) ); - curtop = this._num( this.helper.css( "top" ) ); - - if ( o.containment ) { - curleft += $( o.containment ).scrollLeft() || 0; - curtop += $( o.containment ).scrollTop() || 0; - } - - this.offset = this.helper.offset(); - this.position = { left: curleft, top: curtop }; - - this.size = this._helper ? { - width: this.helper.width(), - height: this.helper.height() - } : { - width: el.width(), - height: el.height() - }; - - this.originalSize = this._helper ? { - width: el.outerWidth(), - height: el.outerHeight() - } : { - width: el.width(), - height: el.height() - }; - - this.sizeDiff = { - width: el.outerWidth() - el.width(), - height: el.outerHeight() - el.height() - }; - - this.originalPosition = { left: curleft, top: curtop }; - this.originalMousePosition = { left: event.pageX, top: event.pageY }; - - this.aspectRatio = ( typeof o.aspectRatio === "number" ) ? - o.aspectRatio : - ( ( this.originalSize.width / this.originalSize.height ) || 1 ); - - cursor = $( ".ui-resizable-" + this.axis ).css( "cursor" ); - $( "body" ).css( "cursor", cursor === "auto" ? this.axis + "-resize" : cursor ); - - this._addClass( "ui-resizable-resizing" ); - this._propagate( "start", event ); - return true; - }, - - _mouseDrag: function( event ) { - - var data, props, - smp = this.originalMousePosition, - a = this.axis, - dx = ( event.pageX - smp.left ) || 0, - dy = ( event.pageY - smp.top ) || 0, - trigger = this._change[ a ]; - - this._updatePrevProperties(); - - if ( !trigger ) { - return false; - } - - data = trigger.apply( this, [ event, dx, dy ] ); - - this._updateVirtualBoundaries( event.shiftKey ); - if ( this._aspectRatio || event.shiftKey ) { - data = this._updateRatio( data, event ); - } - - data = this._respectSize( data, event ); - - this._updateCache( data ); - - this._propagate( "resize", event ); - - props = this._applyChanges(); - - if ( !this._helper && this._proportionallyResizeElements.length ) { - this._proportionallyResize(); - } - - if ( !$.isEmptyObject( props ) ) { - this._updatePrevProperties(); - this._trigger( "resize", event, this.ui() ); - this._applyChanges(); - } - - return false; - }, - - _mouseStop: function( event ) { - - this.resizing = false; - var pr, ista, soffseth, soffsetw, s, left, top, - o = this.options, that = this; - - if ( this._helper ) { - - pr = this._proportionallyResizeElements; - ista = pr.length && ( /textarea/i ).test( pr[ 0 ].nodeName ); - soffseth = ista && this._hasScroll( pr[ 0 ], "left" ) ? 0 : that.sizeDiff.height; - soffsetw = ista ? 0 : that.sizeDiff.width; - - s = { - width: ( that.helper.width() - soffsetw ), - height: ( that.helper.height() - soffseth ) - }; - left = ( parseFloat( that.element.css( "left" ) ) + - ( that.position.left - that.originalPosition.left ) ) || null; - top = ( parseFloat( that.element.css( "top" ) ) + - ( that.position.top - that.originalPosition.top ) ) || null; - - if ( !o.animate ) { - this.element.css( $.extend( s, { top: top, left: left } ) ); - } - - that.helper.height( that.size.height ); - that.helper.width( that.size.width ); - - if ( this._helper && !o.animate ) { - this._proportionallyResize(); - } - } - - $( "body" ).css( "cursor", "auto" ); - - this._removeClass( "ui-resizable-resizing" ); - - this._propagate( "stop", event ); - - if ( this._helper ) { - this.helper.remove(); - } - - return false; - - }, - - _updatePrevProperties: function() { - this.prevPosition = { - top: this.position.top, - left: this.position.left - }; - this.prevSize = { - width: this.size.width, - height: this.size.height - }; - }, - - _applyChanges: function() { - var props = {}; - - if ( this.position.top !== this.prevPosition.top ) { - props.top = this.position.top + "px"; - } - if ( this.position.left !== this.prevPosition.left ) { - props.left = this.position.left + "px"; - } - if ( this.size.width !== this.prevSize.width ) { - props.width = this.size.width + "px"; - } - if ( this.size.height !== this.prevSize.height ) { - props.height = this.size.height + "px"; - } - - this.helper.css( props ); - - return props; - }, - - _updateVirtualBoundaries: function( forceAspectRatio ) { - var pMinWidth, pMaxWidth, pMinHeight, pMaxHeight, b, - o = this.options; - - b = { - minWidth: this._isNumber( o.minWidth ) ? o.minWidth : 0, - maxWidth: this._isNumber( o.maxWidth ) ? o.maxWidth : Infinity, - minHeight: this._isNumber( o.minHeight ) ? o.minHeight : 0, - maxHeight: this._isNumber( o.maxHeight ) ? o.maxHeight : Infinity - }; - - if ( this._aspectRatio || forceAspectRatio ) { - pMinWidth = b.minHeight * this.aspectRatio; - pMinHeight = b.minWidth / this.aspectRatio; - pMaxWidth = b.maxHeight * this.aspectRatio; - pMaxHeight = b.maxWidth / this.aspectRatio; - - if ( pMinWidth > b.minWidth ) { - b.minWidth = pMinWidth; - } - if ( pMinHeight > b.minHeight ) { - b.minHeight = pMinHeight; - } - if ( pMaxWidth < b.maxWidth ) { - b.maxWidth = pMaxWidth; - } - if ( pMaxHeight < b.maxHeight ) { - b.maxHeight = pMaxHeight; - } - } - this._vBoundaries = b; - }, - - _updateCache: function( data ) { - this.offset = this.helper.offset(); - if ( this._isNumber( data.left ) ) { - this.position.left = data.left; - } - if ( this._isNumber( data.top ) ) { - this.position.top = data.top; - } - if ( this._isNumber( data.height ) ) { - this.size.height = data.height; - } - if ( this._isNumber( data.width ) ) { - this.size.width = data.width; - } - }, - - _updateRatio: function( data ) { - - var cpos = this.position, - csize = this.size, - a = this.axis; - - if ( this._isNumber( data.height ) ) { - data.width = ( data.height * this.aspectRatio ); - } else if ( this._isNumber( data.width ) ) { - data.height = ( data.width / this.aspectRatio ); - } - - if ( a === "sw" ) { - data.left = cpos.left + ( csize.width - data.width ); - data.top = null; - } - if ( a === "nw" ) { - data.top = cpos.top + ( csize.height - data.height ); - data.left = cpos.left + ( csize.width - data.width ); - } - - return data; - }, - - _respectSize: function( data ) { - - var o = this._vBoundaries, - a = this.axis, - ismaxw = this._isNumber( data.width ) && o.maxWidth && ( o.maxWidth < data.width ), - ismaxh = this._isNumber( data.height ) && o.maxHeight && ( o.maxHeight < data.height ), - isminw = this._isNumber( data.width ) && o.minWidth && ( o.minWidth > data.width ), - isminh = this._isNumber( data.height ) && o.minHeight && ( o.minHeight > data.height ), - dw = this.originalPosition.left + this.originalSize.width, - dh = this.originalPosition.top + this.originalSize.height, - cw = /sw|nw|w/.test( a ), ch = /nw|ne|n/.test( a ); - if ( isminw ) { - data.width = o.minWidth; - } - if ( isminh ) { - data.height = o.minHeight; - } - if ( ismaxw ) { - data.width = o.maxWidth; - } - if ( ismaxh ) { - data.height = o.maxHeight; - } - - if ( isminw && cw ) { - data.left = dw - o.minWidth; - } - if ( ismaxw && cw ) { - data.left = dw - o.maxWidth; - } - if ( isminh && ch ) { - data.top = dh - o.minHeight; - } - if ( ismaxh && ch ) { - data.top = dh - o.maxHeight; - } - - // Fixing jump error on top/left - bug #2330 - if ( !data.width && !data.height && !data.left && data.top ) { - data.top = null; - } else if ( !data.width && !data.height && !data.top && data.left ) { - data.left = null; - } - - return data; - }, - - _getPaddingPlusBorderDimensions: function( element ) { - var i = 0, - widths = [], - borders = [ - element.css( "borderTopWidth" ), - element.css( "borderRightWidth" ), - element.css( "borderBottomWidth" ), - element.css( "borderLeftWidth" ) - ], - paddings = [ - element.css( "paddingTop" ), - element.css( "paddingRight" ), - element.css( "paddingBottom" ), - element.css( "paddingLeft" ) - ]; - - for ( ; i < 4; i++ ) { - widths[ i ] = ( parseFloat( borders[ i ] ) || 0 ); - widths[ i ] += ( parseFloat( paddings[ i ] ) || 0 ); - } - - return { - height: widths[ 0 ] + widths[ 2 ], - width: widths[ 1 ] + widths[ 3 ] - }; - }, - - _proportionallyResize: function() { - - if ( !this._proportionallyResizeElements.length ) { - return; - } - - var prel, - i = 0, - element = this.helper || this.element; - - for ( ; i < this._proportionallyResizeElements.length; i++ ) { - - prel = this._proportionallyResizeElements[ i ]; - - // TODO: Seems like a bug to cache this.outerDimensions - // considering that we are in a loop. - if ( !this.outerDimensions ) { - this.outerDimensions = this._getPaddingPlusBorderDimensions( prel ); - } - - prel.css( { - height: ( element.height() - this.outerDimensions.height ) || 0, - width: ( element.width() - this.outerDimensions.width ) || 0 - } ); - - } - - }, - - _renderProxy: function() { - - var el = this.element, o = this.options; - this.elementOffset = el.offset(); - - if ( this._helper ) { - - this.helper = this.helper || $( "<div style='overflow:hidden;'></div>" ); - - this._addClass( this.helper, this._helper ); - this.helper.css( { - width: this.element.outerWidth(), - height: this.element.outerHeight(), - position: "absolute", - left: this.elementOffset.left + "px", - top: this.elementOffset.top + "px", - zIndex: ++o.zIndex //TODO: Don't modify option - } ); - - this.helper - .appendTo( "body" ) - .disableSelection(); - - } else { - this.helper = this.element; - } - - }, - - _change: { - e: function( event, dx ) { - return { width: this.originalSize.width + dx }; - }, - w: function( event, dx ) { - var cs = this.originalSize, sp = this.originalPosition; - return { left: sp.left + dx, width: cs.width - dx }; - }, - n: function( event, dx, dy ) { - var cs = this.originalSize, sp = this.originalPosition; - return { top: sp.top + dy, height: cs.height - dy }; - }, - s: function( event, dx, dy ) { - return { height: this.originalSize.height + dy }; - }, - se: function( event, dx, dy ) { - return $.extend( this._change.s.apply( this, arguments ), - this._change.e.apply( this, [ event, dx, dy ] ) ); - }, - sw: function( event, dx, dy ) { - return $.extend( this._change.s.apply( this, arguments ), - this._change.w.apply( this, [ event, dx, dy ] ) ); - }, - ne: function( event, dx, dy ) { - return $.extend( this._change.n.apply( this, arguments ), - this._change.e.apply( this, [ event, dx, dy ] ) ); - }, - nw: function( event, dx, dy ) { - return $.extend( this._change.n.apply( this, arguments ), - this._change.w.apply( this, [ event, dx, dy ] ) ); - } - }, - - _propagate: function( n, event ) { - $.ui.plugin.call( this, n, [ event, this.ui() ] ); - ( n !== "resize" && this._trigger( n, event, this.ui() ) ); - }, - - plugins: {}, - - ui: function() { - return { - originalElement: this.originalElement, - element: this.element, - helper: this.helper, - position: this.position, - size: this.size, - originalSize: this.originalSize, - originalPosition: this.originalPosition - }; - } - -} ); - -/* - * Resizable Extensions - */ - -$.ui.plugin.add( "resizable", "animate", { - - stop: function( event ) { - var that = $( this ).resizable( "instance" ), - o = that.options, - pr = that._proportionallyResizeElements, - ista = pr.length && ( /textarea/i ).test( pr[ 0 ].nodeName ), - soffseth = ista && that._hasScroll( pr[ 0 ], "left" ) ? 0 : that.sizeDiff.height, - soffsetw = ista ? 0 : that.sizeDiff.width, - style = { - width: ( that.size.width - soffsetw ), - height: ( that.size.height - soffseth ) - }, - left = ( parseFloat( that.element.css( "left" ) ) + - ( that.position.left - that.originalPosition.left ) ) || null, - top = ( parseFloat( that.element.css( "top" ) ) + - ( that.position.top - that.originalPosition.top ) ) || null; - - that.element.animate( - $.extend( style, top && left ? { top: top, left: left } : {} ), { - duration: o.animateDuration, - easing: o.animateEasing, - step: function() { - - var data = { - width: parseFloat( that.element.css( "width" ) ), - height: parseFloat( that.element.css( "height" ) ), - top: parseFloat( that.element.css( "top" ) ), - left: parseFloat( that.element.css( "left" ) ) - }; - - if ( pr && pr.length ) { - $( pr[ 0 ] ).css( { width: data.width, height: data.height } ); - } - - // Propagating resize, and updating values for each animation step - that._updateCache( data ); - that._propagate( "resize", event ); - - } - } - ); - } - -} ); - -$.ui.plugin.add( "resizable", "containment", { - - start: function() { - var element, p, co, ch, cw, width, height, - that = $( this ).resizable( "instance" ), - o = that.options, - el = that.element, - oc = o.containment, - ce = ( oc instanceof $ ) ? - oc.get( 0 ) : - ( /parent/.test( oc ) ) ? el.parent().get( 0 ) : oc; - - if ( !ce ) { - return; - } - - that.containerElement = $( ce ); - - if ( /document/.test( oc ) || oc === document ) { - that.containerOffset = { - left: 0, - top: 0 - }; - that.containerPosition = { - left: 0, - top: 0 - }; - - that.parentData = { - element: $( document ), - left: 0, - top: 0, - width: $( document ).width(), - height: $( document ).height() || document.body.parentNode.scrollHeight - }; - } else { - element = $( ce ); - p = []; - $( [ "Top", "Right", "Left", "Bottom" ] ).each( function( i, name ) { - p[ i ] = that._num( element.css( "padding" + name ) ); - } ); - - that.containerOffset = element.offset(); - that.containerPosition = element.position(); - that.containerSize = { - height: ( element.innerHeight() - p[ 3 ] ), - width: ( element.innerWidth() - p[ 1 ] ) - }; - - co = that.containerOffset; - ch = that.containerSize.height; - cw = that.containerSize.width; - width = ( that._hasScroll ( ce, "left" ) ? ce.scrollWidth : cw ); - height = ( that._hasScroll ( ce ) ? ce.scrollHeight : ch ) ; - - that.parentData = { - element: ce, - left: co.left, - top: co.top, - width: width, - height: height - }; - } - }, - - resize: function( event ) { - var woset, hoset, isParent, isOffsetRelative, - that = $( this ).resizable( "instance" ), - o = that.options, - co = that.containerOffset, - cp = that.position, - pRatio = that._aspectRatio || event.shiftKey, - cop = { - top: 0, - left: 0 - }, - ce = that.containerElement, - continueResize = true; - - if ( ce[ 0 ] !== document && ( /static/ ).test( ce.css( "position" ) ) ) { - cop = co; - } - - if ( cp.left < ( that._helper ? co.left : 0 ) ) { - that.size.width = that.size.width + - ( that._helper ? - ( that.position.left - co.left ) : - ( that.position.left - cop.left ) ); - - if ( pRatio ) { - that.size.height = that.size.width / that.aspectRatio; - continueResize = false; - } - that.position.left = o.helper ? co.left : 0; - } - - if ( cp.top < ( that._helper ? co.top : 0 ) ) { - that.size.height = that.size.height + - ( that._helper ? - ( that.position.top - co.top ) : - that.position.top ); - - if ( pRatio ) { - that.size.width = that.size.height * that.aspectRatio; - continueResize = false; - } - that.position.top = that._helper ? co.top : 0; - } - - isParent = that.containerElement.get( 0 ) === that.element.parent().get( 0 ); - isOffsetRelative = /relative|absolute/.test( that.containerElement.css( "position" ) ); - - if ( isParent && isOffsetRelative ) { - that.offset.left = that.parentData.left + that.position.left; - that.offset.top = that.parentData.top + that.position.top; - } else { - that.offset.left = that.element.offset().left; - that.offset.top = that.element.offset().top; - } - - woset = Math.abs( that.sizeDiff.width + - ( that._helper ? - that.offset.left - cop.left : - ( that.offset.left - co.left ) ) ); - - hoset = Math.abs( that.sizeDiff.height + - ( that._helper ? - that.offset.top - cop.top : - ( that.offset.top - co.top ) ) ); - - if ( woset + that.size.width >= that.parentData.width ) { - that.size.width = that.parentData.width - woset; - if ( pRatio ) { - that.size.height = that.size.width / that.aspectRatio; - continueResize = false; - } - } - - if ( hoset + that.size.height >= that.parentData.height ) { - that.size.height = that.parentData.height - hoset; - if ( pRatio ) { - that.size.width = that.size.height * that.aspectRatio; - continueResize = false; - } - } - - if ( !continueResize ) { - that.position.left = that.prevPosition.left; - that.position.top = that.prevPosition.top; - that.size.width = that.prevSize.width; - that.size.height = that.prevSize.height; - } - }, - - stop: function() { - var that = $( this ).resizable( "instance" ), - o = that.options, - co = that.containerOffset, - cop = that.containerPosition, - ce = that.containerElement, - helper = $( that.helper ), - ho = helper.offset(), - w = helper.outerWidth() - that.sizeDiff.width, - h = helper.outerHeight() - that.sizeDiff.height; - - if ( that._helper && !o.animate && ( /relative/ ).test( ce.css( "position" ) ) ) { - $( this ).css( { - left: ho.left - cop.left - co.left, - width: w, - height: h - } ); - } - - if ( that._helper && !o.animate && ( /static/ ).test( ce.css( "position" ) ) ) { - $( this ).css( { - left: ho.left - cop.left - co.left, - width: w, - height: h - } ); - } - } -} ); - -$.ui.plugin.add( "resizable", "alsoResize", { - - start: function() { - var that = $( this ).resizable( "instance" ), - o = that.options; - - $( o.alsoResize ).each( function() { - var el = $( this ); - el.data( "ui-resizable-alsoresize", { - width: parseFloat( el.width() ), height: parseFloat( el.height() ), - left: parseFloat( el.css( "left" ) ), top: parseFloat( el.css( "top" ) ) - } ); - } ); - }, - - resize: function( event, ui ) { - var that = $( this ).resizable( "instance" ), - o = that.options, - os = that.originalSize, - op = that.originalPosition, - delta = { - height: ( that.size.height - os.height ) || 0, - width: ( that.size.width - os.width ) || 0, - top: ( that.position.top - op.top ) || 0, - left: ( that.position.left - op.left ) || 0 - }; - - $( o.alsoResize ).each( function() { - var el = $( this ), start = $( this ).data( "ui-resizable-alsoresize" ), style = {}, - css = el.parents( ui.originalElement[ 0 ] ).length ? - [ "width", "height" ] : - [ "width", "height", "top", "left" ]; - - $.each( css, function( i, prop ) { - var sum = ( start[ prop ] || 0 ) + ( delta[ prop ] || 0 ); - if ( sum && sum >= 0 ) { - style[ prop ] = sum || null; - } - } ); - - el.css( style ); - } ); - }, - - stop: function() { - $( this ).removeData( "ui-resizable-alsoresize" ); - } -} ); - -$.ui.plugin.add( "resizable", "ghost", { - - start: function() { - - var that = $( this ).resizable( "instance" ), cs = that.size; - - that.ghost = that.originalElement.clone(); - that.ghost.css( { - opacity: 0.25, - display: "block", - position: "relative", - height: cs.height, - width: cs.width, - margin: 0, - left: 0, - top: 0 - } ); - - that._addClass( that.ghost, "ui-resizable-ghost" ); - - // DEPRECATED - // TODO: remove after 1.12 - if ( $.uiBackCompat !== false && typeof that.options.ghost === "string" ) { - - // Ghost option - that.ghost.addClass( this.options.ghost ); - } - - that.ghost.appendTo( that.helper ); - - }, - - resize: function() { - var that = $( this ).resizable( "instance" ); - if ( that.ghost ) { - that.ghost.css( { - position: "relative", - height: that.size.height, - width: that.size.width - } ); - } - }, - - stop: function() { - var that = $( this ).resizable( "instance" ); - if ( that.ghost && that.helper ) { - that.helper.get( 0 ).removeChild( that.ghost.get( 0 ) ); - } - } - -} ); - -$.ui.plugin.add( "resizable", "grid", { - - resize: function() { - var outerDimensions, - that = $( this ).resizable( "instance" ), - o = that.options, - cs = that.size, - os = that.originalSize, - op = that.originalPosition, - a = that.axis, - grid = typeof o.grid === "number" ? [ o.grid, o.grid ] : o.grid, - gridX = ( grid[ 0 ] || 1 ), - gridY = ( grid[ 1 ] || 1 ), - ox = Math.round( ( cs.width - os.width ) / gridX ) * gridX, - oy = Math.round( ( cs.height - os.height ) / gridY ) * gridY, - newWidth = os.width + ox, - newHeight = os.height + oy, - isMaxWidth = o.maxWidth && ( o.maxWidth < newWidth ), - isMaxHeight = o.maxHeight && ( o.maxHeight < newHeight ), - isMinWidth = o.minWidth && ( o.minWidth > newWidth ), - isMinHeight = o.minHeight && ( o.minHeight > newHeight ); - - o.grid = grid; - - if ( isMinWidth ) { - newWidth += gridX; - } - if ( isMinHeight ) { - newHeight += gridY; - } - if ( isMaxWidth ) { - newWidth -= gridX; - } - if ( isMaxHeight ) { - newHeight -= gridY; - } - - if ( /^(se|s|e)$/.test( a ) ) { - that.size.width = newWidth; - that.size.height = newHeight; - } else if ( /^(ne)$/.test( a ) ) { - that.size.width = newWidth; - that.size.height = newHeight; - that.position.top = op.top - oy; - } else if ( /^(sw)$/.test( a ) ) { - that.size.width = newWidth; - that.size.height = newHeight; - that.position.left = op.left - ox; - } else { - if ( newHeight - gridY <= 0 || newWidth - gridX <= 0 ) { - outerDimensions = that._getPaddingPlusBorderDimensions( this ); - } - - if ( newHeight - gridY > 0 ) { - that.size.height = newHeight; - that.position.top = op.top - oy; - } else { - newHeight = gridY - outerDimensions.height; - that.size.height = newHeight; - that.position.top = op.top + os.height - newHeight; - } - if ( newWidth - gridX > 0 ) { - that.size.width = newWidth; - that.position.left = op.left - ox; - } else { - newWidth = gridX - outerDimensions.width; - that.size.width = newWidth; - that.position.left = op.left + os.width - newWidth; - } - } - } - -} ); - -var widgetsResizable = $.ui.resizable; - - - - -}));
\ No newline at end of file diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.min.css b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.min.css deleted file mode 100644 index 5060970..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! jQuery UI - v1.12.1 - 2018-03-18 -* http://jqueryui.com -* Includes: draggable.css, core.css, resizable.css, theme.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif -* Copyright jQuery Foundation and other contributors; Licensed MIT */ - -.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #c5c5c5}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;color:#333;font-weight:bold}.ui-widget-header a{color:#333}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,.ui-button,html .ui-button.ui-state-disabled:hover,html .ui-button.ui-state-disabled:active{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button,.ui-button{color:#454545;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus,.ui-button:hover,.ui-button:focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,a.ui-button:hover,a.ui-button:focus{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#003eff;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-button:hover .ui-icon,.ui-button:focus .ui-icon{background-image:url("images/ui-icons_555555_256x240.png")}.ui-state-active .ui-icon,.ui-button:active .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-highlight .ui-icon,.ui-button .ui-state-highlight.ui-icon{background-image:url("images/ui-icons_777620_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cc0000_256x240.png")}.ui-button .ui-icon{background-image:url("images/ui-icons_777777_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:3px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}
\ No newline at end of file diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.min.js b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.min.js deleted file mode 100644 index cc9a9aa..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.min.js +++ /dev/null @@ -1,7 +0,0 @@ -/*! jQuery UI - v1.12.1 - 2018-03-18 -* http://jqueryui.com -* Includes: widget.js, data.js, disable-selection.js, scroll-parent.js, widgets/draggable.js, widgets/resizable.js, widgets/mouse.js -* Copyright jQuery Foundation and other contributors; Licensed MIT */ - -(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)})(function(t){t.ui=t.ui||{},t.ui.version="1.12.1";var e=0,i=Array.prototype.slice;t.cleanData=function(e){return function(i){var s,n,o;for(o=0;null!=(n=i[o]);o++)try{s=t._data(n,"events"),s&&s.remove&&t(n).triggerHandler("remove")}catch(a){}e(i)}}(t.cleanData),t.widget=function(e,i,s){var n,o,a,r={},l=e.split(".")[0];e=e.split(".")[1];var h=l+"-"+e;return s||(s=i,i=t.Widget),t.isArray(s)&&(s=t.extend.apply(null,[{}].concat(s))),t.expr[":"][h.toLowerCase()]=function(e){return!!t.data(e,h)},t[l]=t[l]||{},n=t[l][e],o=t[l][e]=function(t,e){return this._createWidget?(arguments.length&&this._createWidget(t,e),void 0):new o(t,e)},t.extend(o,n,{version:s.version,_proto:t.extend({},s),_childConstructors:[]}),a=new i,a.options=t.widget.extend({},a.options),t.each(s,function(e,s){return t.isFunction(s)?(r[e]=function(){function t(){return i.prototype[e].apply(this,arguments)}function n(t){return i.prototype[e].apply(this,t)}return function(){var e,i=this._super,o=this._superApply;return this._super=t,this._superApply=n,e=s.apply(this,arguments),this._super=i,this._superApply=o,e}}(),void 0):(r[e]=s,void 0)}),o.prototype=t.widget.extend(a,{widgetEventPrefix:n?a.widgetEventPrefix||e:e},r,{constructor:o,namespace:l,widgetName:e,widgetFullName:h}),n?(t.each(n._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete n._childConstructors):i._childConstructors.push(o),t.widget.bridge(e,o),o},t.widget.extend=function(e){for(var s,n,o=i.call(arguments,1),a=0,r=o.length;r>a;a++)for(s in o[a])n=o[a][s],o[a].hasOwnProperty(s)&&void 0!==n&&(e[s]=t.isPlainObject(n)?t.isPlainObject(e[s])?t.widget.extend({},e[s],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,s){var n=s.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=i.call(arguments,1),l=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(l=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(l=i&&i.jquery?l.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):l=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new s(o,this))})),l}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(i,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=e++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),i),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var l=s.match(/^([\w:-]*)\s*(.*)$/),h=l[1]+o.eventNamespace,c=l[2];c?n.on(h,c,r):i.on(h,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var s=!1;t(document).on("mouseup",function(){s=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!s){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,n=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return n&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),s=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,s=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.ui.safeActiveElement=function(t){var e;try{e=t.activeElement}catch(i){e=t.body}return e||(e=t.body),e.nodeName||(e=t.body),e},t.ui.safeBlur=function(e){e&&"body"!==e.nodeName.toLowerCase()&&t(e).trigger("blur")},t.widget("ui.draggable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"===this.options.helper&&this._setPositionRelative(),this.options.addClasses&&this._addClass("ui-draggable"),this._setHandleClassName(),this._mouseInit()},_setOption:function(t,e){this._super(t,e),"handle"===t&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?(this.destroyOnClear=!0,void 0):(this._removeHandleClassName(),this._mouseDestroy(),void 0)},_mouseCapture:function(e){var i=this.options;return this.helper||i.disabled||t(e.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(e),this.handle?(this._blurActiveElement(e),this._blockFrames(i.iframeFix===!0?"iframe":i.iframeFix),!0):!1)},_blockFrames:function(e){this.iframeBlocks=this.document.find(e).map(function(){var e=t(this);return t("<div>").css("position","absolute").appendTo(e.parent()).outerWidth(e.outerWidth()).outerHeight(e.outerHeight()).offset(e.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_blurActiveElement:function(e){var i=t.ui.safeActiveElement(this.document[0]),s=t(e.target);s.closest(i).length||t.ui.safeBlur(i)},_mouseStart:function(e){var i=this.options;return this.helper=this._createHelper(e),this._addClass(this.helper,"ui-draggable-dragging"),this._cacheHelperProportions(),t.ui.ddmanager&&(t.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.hasFixedAncestor=this.helper.parents().filter(function(){return"fixed"===t(this).css("position")}).length>0,this.positionAbs=this.element.offset(),this._refreshOffsets(e),this.originalPosition=this.position=this._generatePosition(e,!1),this.originalPageX=e.pageX,this.originalPageY=e.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",e)===!1?(this._clear(),!1):(this._cacheHelperProportions(),t.ui.ddmanager&&!i.dropBehaviour&&t.ui.ddmanager.prepareOffsets(this,e),this._mouseDrag(e,!0),t.ui.ddmanager&&t.ui.ddmanager.dragStart(this,e),!0)},_refreshOffsets:function(t){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:!1,parent:this._getParentOffset(),relative:this._getRelativeOffset()},this.offset.click={left:t.pageX-this.offset.left,top:t.pageY-this.offset.top}},_mouseDrag:function(e,i){if(this.hasFixedAncestor&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(e,!0),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",e,s)===!1)return this._mouseUp(new t.Event("mouseup",e)),!1;this.position=s.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",t.ui.ddmanager&&t.ui.ddmanager.drag(this,e),!1},_mouseStop:function(e){var i=this,s=!1;return t.ui.ddmanager&&!this.options.dropBehaviour&&(s=t.ui.ddmanager.drop(this,e)),this.dropped&&(s=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||t.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?t(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",e)!==!1&&i._clear()}):this._trigger("stop",e)!==!1&&this._clear(),!1},_mouseUp:function(e){return this._unblockFrames(),t.ui.ddmanager&&t.ui.ddmanager.dragStop(this,e),this.handleElement.is(e.target)&&this.element.trigger("focus"),t.ui.mouse.prototype._mouseUp.call(this,e)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp(new t.Event("mouseup",{target:this.element[0]})):this._clear(),this},_getHandle:function(e){return this.options.handle?!!t(e.target).closest(this.element.find(this.options.handle)).length:!0},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this._addClass(this.handleElement,"ui-draggable-handle")},_removeHandleClassName:function(){this._removeClass(this.handleElement,"ui-draggable-handle")},_createHelper:function(e){var i=this.options,s=t.isFunction(i.helper),n=s?t(i.helper.apply(this.element[0],[e])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return n.parents("body").length||n.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s&&n[0]===this.element[0]&&this._setPositionRelative(),n[0]===this.element[0]||/(fixed|absolute)/.test(n.css("position"))||n.css("position","absolute"),n},_setPositionRelative:function(){/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative")},_adjustOffsetFromHelper:function(e){"string"==typeof e&&(e=e.split(" ")),t.isArray(e)&&(e={left:+e[0],top:+e[1]||0}),"left"in e&&(this.offset.click.left=e.left+this.margins.left),"right"in e&&(this.offset.click.left=this.helperProportions.width-e.right+this.margins.left),"top"in e&&(this.offset.click.top=e.top+this.margins.top),"bottom"in e&&(this.offset.click.top=this.helperProportions.height-e.bottom+this.margins.top)},_isRootNode:function(t){return/(html|body)/i.test(t.tagName)||t===this.document[0]},_getParentOffset:function(){var e=this.offsetParent.offset(),i=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==i&&t.contains(this.scrollParent[0],this.offsetParent[0])&&(e.left+=this.scrollParent.scrollLeft(),e.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(e={top:0,left:0}),{top:e.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:e.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var t=this.element.position(),e=this._isRootNode(this.scrollParent[0]);return{top:t.top-(parseInt(this.helper.css("top"),10)||0)+(e?0:this.scrollParent.scrollTop()),left:t.left-(parseInt(this.helper.css("left"),10)||0)+(e?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e,i,s,n=this.options,o=this.document[0];return this.relativeContainer=null,n.containment?"window"===n.containment?(this.containment=[t(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,t(window).scrollLeft()+t(window).width()-this.helperProportions.width-this.margins.left,t(window).scrollTop()+(t(window).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):"document"===n.containment?(this.containment=[0,0,t(o).width()-this.helperProportions.width-this.margins.left,(t(o).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):n.containment.constructor===Array?(this.containment=n.containment,void 0):("parent"===n.containment&&(n.containment=this.helper[0].parentNode),i=t(n.containment),s=i[0],s&&(e=/(scroll|auto)/.test(i.css("overflow")),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(e?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(e?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=i),void 0):(this.containment=null,void 0)},_convertPositionTo:function(t,e){e||(e=this.position);var i="absolute"===t?1:-1,s=this._isRootNode(this.scrollParent[0]);return{top:e.top+this.offset.relative.top*i+this.offset.parent.top*i-("fixed"===this.cssPosition?-this.offset.scroll.top:s?0:this.offset.scroll.top)*i,left:e.left+this.offset.relative.left*i+this.offset.parent.left*i-("fixed"===this.cssPosition?-this.offset.scroll.left:s?0:this.offset.scroll.left)*i}},_generatePosition:function(t,e){var i,s,n,o,a=this.options,r=this._isRootNode(this.scrollParent[0]),l=t.pageX,h=t.pageY;return r&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),e&&(this.containment&&(this.relativeContainer?(s=this.relativeContainer.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,t.pageX-this.offset.click.left<i[0]&&(l=i[0]+this.offset.click.left),t.pageY-this.offset.click.top<i[1]&&(h=i[1]+this.offset.click.top),t.pageX-this.offset.click.left>i[2]&&(l=i[2]+this.offset.click.left),t.pageY-this.offset.click.top>i[3]&&(h=i[3]+this.offset.click.top)),a.grid&&(n=a.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/a.grid[1])*a.grid[1]:this.originalPageY,h=i?n-this.offset.click.top>=i[1]||n-this.offset.click.top>i[3]?n:n-this.offset.click.top>=i[1]?n-a.grid[1]:n+a.grid[1]:n,o=a.grid[0]?this.originalPageX+Math.round((l-this.originalPageX)/a.grid[0])*a.grid[0]:this.originalPageX,l=i?o-this.offset.click.left>=i[0]||o-this.offset.click.left>i[2]?o:o-this.offset.click.left>=i[0]?o-a.grid[0]:o+a.grid[0]:o),"y"===a.axis&&(l=this.originalPageX),"x"===a.axis&&(h=this.originalPageY)),{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:r?0:this.offset.scroll.top),left:l-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:r?0:this.offset.scroll.left)}},_clear:function(){this._removeClass(this.helper,"ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_trigger:function(e,i,s){return s=s||this._uiHash(),t.ui.plugin.call(this,e,[i,s,this],!0),/^(drag|start|stop)/.test(e)&&(this.positionAbs=this._convertPositionTo("absolute"),s.offset=this.positionAbs),t.Widget.prototype._trigger.call(this,e,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),t.ui.plugin.add("draggable","connectToSortable",{start:function(e,i,s){var n=t.extend({},i,{item:s.element});s.sortables=[],t(s.options.connectToSortable).each(function(){var i=t(this).sortable("instance");i&&!i.options.disabled&&(s.sortables.push(i),i.refreshPositions(),i._trigger("activate",e,n))})},stop:function(e,i,s){var n=t.extend({},i,{item:s.element});s.cancelHelperRemoval=!1,t.each(s.sortables,function(){var t=this;t.isOver?(t.isOver=0,s.cancelHelperRemoval=!0,t.cancelHelperRemoval=!1,t._storedCSS={position:t.placeholder.css("position"),top:t.placeholder.css("top"),left:t.placeholder.css("left")},t._mouseStop(e),t.options.helper=t.options._helper):(t.cancelHelperRemoval=!0,t._trigger("deactivate",e,n))})},drag:function(e,i,s){t.each(s.sortables,function(){var n=!1,o=this;o.positionAbs=s.positionAbs,o.helperProportions=s.helperProportions,o.offset.click=s.offset.click,o._intersectsWith(o.containerCache)&&(n=!0,t.each(s.sortables,function(){return this.positionAbs=s.positionAbs,this.helperProportions=s.helperProportions,this.offset.click=s.offset.click,this!==o&&this._intersectsWith(this.containerCache)&&t.contains(o.element[0],this.element[0])&&(n=!1),n})),n?(o.isOver||(o.isOver=1,s._parent=i.helper.parent(),o.currentItem=i.helper.appendTo(o.element).data("ui-sortable-item",!0),o.options._helper=o.options.helper,o.options.helper=function(){return i.helper[0]},e.target=o.currentItem[0],o._mouseCapture(e,!0),o._mouseStart(e,!0,!0),o.offset.click.top=s.offset.click.top,o.offset.click.left=s.offset.click.left,o.offset.parent.left-=s.offset.parent.left-o.offset.parent.left,o.offset.parent.top-=s.offset.parent.top-o.offset.parent.top,s._trigger("toSortable",e),s.dropped=o.element,t.each(s.sortables,function(){this.refreshPositions()}),s.currentItem=s.element,o.fromOutside=s),o.currentItem&&(o._mouseDrag(e),i.position=o.position)):o.isOver&&(o.isOver=0,o.cancelHelperRemoval=!0,o.options._revert=o.options.revert,o.options.revert=!1,o._trigger("out",e,o._uiHash(o)),o._mouseStop(e,!0),o.options.revert=o.options._revert,o.options.helper=o.options._helper,o.placeholder&&o.placeholder.remove(),i.helper.appendTo(s._parent),s._refreshOffsets(e),i.position=s._generatePosition(e,!0),s._trigger("fromSortable",e),s.dropped=!1,t.each(s.sortables,function(){this.refreshPositions()}))})}}),t.ui.plugin.add("draggable","cursor",{start:function(e,i,s){var n=t("body"),o=s.options;n.css("cursor")&&(o._cursor=n.css("cursor")),n.css("cursor",o.cursor)},stop:function(e,i,s){var n=s.options;n._cursor&&t("body").css("cursor",n._cursor)}}),t.ui.plugin.add("draggable","opacity",{start:function(e,i,s){var n=t(i.helper),o=s.options;n.css("opacity")&&(o._opacity=n.css("opacity")),n.css("opacity",o.opacity)},stop:function(e,i,s){var n=s.options;n._opacity&&t(i.helper).css("opacity",n._opacity)}}),t.ui.plugin.add("draggable","scroll",{start:function(t,e,i){i.scrollParentNotHidden||(i.scrollParentNotHidden=i.helper.scrollParent(!1)),i.scrollParentNotHidden[0]!==i.document[0]&&"HTML"!==i.scrollParentNotHidden[0].tagName&&(i.overflowOffset=i.scrollParentNotHidden.offset())},drag:function(e,i,s){var n=s.options,o=!1,a=s.scrollParentNotHidden[0],r=s.document[0];a!==r&&"HTML"!==a.tagName?(n.axis&&"x"===n.axis||(s.overflowOffset.top+a.offsetHeight-e.pageY<n.scrollSensitivity?a.scrollTop=o=a.scrollTop+n.scrollSpeed:e.pageY-s.overflowOffset.top<n.scrollSensitivity&&(a.scrollTop=o=a.scrollTop-n.scrollSpeed)),n.axis&&"y"===n.axis||(s.overflowOffset.left+a.offsetWidth-e.pageX<n.scrollSensitivity?a.scrollLeft=o=a.scrollLeft+n.scrollSpeed:e.pageX-s.overflowOffset.left<n.scrollSensitivity&&(a.scrollLeft=o=a.scrollLeft-n.scrollSpeed))):(n.axis&&"x"===n.axis||(e.pageY-t(r).scrollTop()<n.scrollSensitivity?o=t(r).scrollTop(t(r).scrollTop()-n.scrollSpeed):t(window).height()-(e.pageY-t(r).scrollTop())<n.scrollSensitivity&&(o=t(r).scrollTop(t(r).scrollTop()+n.scrollSpeed))),n.axis&&"y"===n.axis||(e.pageX-t(r).scrollLeft()<n.scrollSensitivity?o=t(r).scrollLeft(t(r).scrollLeft()-n.scrollSpeed):t(window).width()-(e.pageX-t(r).scrollLeft())<n.scrollSensitivity&&(o=t(r).scrollLeft(t(r).scrollLeft()+n.scrollSpeed)))),o!==!1&&t.ui.ddmanager&&!n.dropBehaviour&&t.ui.ddmanager.prepareOffsets(s,e)}}),t.ui.plugin.add("draggable","snap",{start:function(e,i,s){var n=s.options;s.snapElements=[],t(n.snap.constructor!==String?n.snap.items||":data(ui-draggable)":n.snap).each(function(){var e=t(this),i=e.offset();this!==s.element[0]&&s.snapElements.push({item:this,width:e.outerWidth(),height:e.outerHeight(),top:i.top,left:i.left})})},drag:function(e,i,s){var n,o,a,r,l,h,c,u,d,p,f=s.options,m=f.snapTolerance,g=i.offset.left,v=g+s.helperProportions.width,_=i.offset.top,b=_+s.helperProportions.height;for(d=s.snapElements.length-1;d>=0;d--)l=s.snapElements[d].left-s.margins.left,h=l+s.snapElements[d].width,c=s.snapElements[d].top-s.margins.top,u=c+s.snapElements[d].height,l-m>v||g>h+m||c-m>b||_>u+m||!t.contains(s.snapElements[d].item.ownerDocument,s.snapElements[d].item)?(s.snapElements[d].snapping&&s.options.snap.release&&s.options.snap.release.call(s.element,e,t.extend(s._uiHash(),{snapItem:s.snapElements[d].item})),s.snapElements[d].snapping=!1):("inner"!==f.snapMode&&(n=m>=Math.abs(c-b),o=m>=Math.abs(u-_),a=m>=Math.abs(l-v),r=m>=Math.abs(h-g),n&&(i.position.top=s._convertPositionTo("relative",{top:c-s.helperProportions.height,left:0}).top),o&&(i.position.top=s._convertPositionTo("relative",{top:u,left:0}).top),a&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l-s.helperProportions.width}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h}).left)),p=n||o||a||r,"outer"!==f.snapMode&&(n=m>=Math.abs(c-_),o=m>=Math.abs(u-b),a=m>=Math.abs(l-g),r=m>=Math.abs(h-v),n&&(i.position.top=s._convertPositionTo("relative",{top:c,left:0}).top),o&&(i.position.top=s._convertPositionTo("relative",{top:u-s.helperProportions.height,left:0}).top),a&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h-s.helperProportions.width}).left)),!s.snapElements[d].snapping&&(n||o||a||r||p)&&s.options.snap.snap&&s.options.snap.snap.call(s.element,e,t.extend(s._uiHash(),{snapItem:s.snapElements[d].item})),s.snapElements[d].snapping=n||o||a||r||p)}}),t.ui.plugin.add("draggable","stack",{start:function(e,i,s){var n,o=s.options,a=t.makeArray(t(o.stack)).sort(function(e,i){return(parseInt(t(e).css("zIndex"),10)||0)-(parseInt(t(i).css("zIndex"),10)||0)});a.length&&(n=parseInt(t(a[0]).css("zIndex"),10)||0,t(a).each(function(e){t(this).css("zIndex",n+e)}),this.css("zIndex",n+a.length))}}),t.ui.plugin.add("draggable","zIndex",{start:function(e,i,s){var n=t(i.helper),o=s.options;n.css("zIndex")&&(o._zIndex=n.css("zIndex")),n.css("zIndex",o.zIndex)},stop:function(e,i,s){var n=s.options;n._zIndex&&t(i.helper).css("zIndex",n._zIndex)}}),t.ui.draggable,t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show()) -}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("<div>"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,l=this._change[o];return this._updatePrevProperties(),l?(i=l.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,l,h=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,l=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,h.animate||this.element.css(t.extend(a,{top:l,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!h.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidth<t.width,n=this._isNumber(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=this._isNumber(t.width)&&e.minWidth&&e.minWidth>t.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,l=this.originalPosition.top+this.originalSize.height,h=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&h&&(t.left=r-e.minWidth),s&&h&&(t.left=r-e.maxWidth),a&&c&&(t.top=l-e.minHeight),n&&c&&(t.top=l-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("<div style='overflow:hidden;'></div>"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,l={width:i.size.width-r,height:i.size.height-a},h=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(l,c&&h?{top:c,left:h}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,l=t(this).resizable("instance"),h=l.options,c=l.element,u=h.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(l.containerElement=t(d),/document/.test(u)||u===document?(l.containerOffset={left:0,top:0},l.containerPosition={left:0,top:0},l.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=l._num(e.css("padding"+s))}),l.containerOffset=e.offset(),l.containerPosition=e.position(),l.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=l.containerOffset,n=l.containerSize.height,o=l.containerSize.width,a=l._hasScroll(d,"left")?d.scrollWidth:o,r=l._hasScroll(d)?d.scrollHeight:n,l.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,l=a.containerOffset,h=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=l),h.left<(a._helper?l.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-l.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?l.left:0),h.top<(a._helper?l.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-l.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?l.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-l.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-l.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),l=a.outerWidth()-e.sizeDiff.width,h=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,l="number"==typeof s.grid?[s.grid,s.grid]:s.grid,h=l[0]||1,c=l[1]||1,u=Math.round((n.width-o.width)/h)*h,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,v=s.minWidth&&s.minWidth>p,_=s.minHeight&&s.minHeight>f;s.grid=l,v&&(p+=h),_&&(f+=c),m&&(p-=h),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-h)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-h>0?(i.size.width=p,i.position.left=a.left-u):(p=h-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});
\ No newline at end of file diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.structure.css b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.structure.css deleted file mode 100644 index 2032948..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.structure.css +++ /dev/null @@ -1,170 +0,0 @@ -/*! - * jQuery UI CSS Framework 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/category/theming/ - */ -.ui-draggable-handle { - -ms-touch-action: none; - touch-action: none; -} -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { - display: none; -} -.ui-helper-hidden-accessible { - border: 0; - clip: rect(0 0 0 0); - height: 1px; - margin: -1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px; -} -.ui-helper-reset { - margin: 0; - padding: 0; - border: 0; - outline: 0; - line-height: 1.3; - text-decoration: none; - font-size: 100%; - list-style: none; -} -.ui-helper-clearfix:before, -.ui-helper-clearfix:after { - content: ""; - display: table; - border-collapse: collapse; -} -.ui-helper-clearfix:after { - clear: both; -} -.ui-helper-zfix { - width: 100%; - height: 100%; - top: 0; - left: 0; - position: absolute; - opacity: 0; - filter:Alpha(Opacity=0); /* support: IE8 */ -} - -.ui-front { - z-index: 100; -} - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { - cursor: default !important; - pointer-events: none; -} - - -/* Icons -----------------------------------*/ -.ui-icon { - display: inline-block; - vertical-align: middle; - margin-top: -.25em; - position: relative; - text-indent: -99999px; - overflow: hidden; - background-repeat: no-repeat; -} - -.ui-widget-icon-block { - left: 50%; - margin-left: -8px; - display: block; -} - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; -} -.ui-resizable { - position: relative; -} -.ui-resizable-handle { - position: absolute; - font-size: 0.1px; - display: block; - -ms-touch-action: none; - touch-action: none; -} -.ui-resizable-disabled .ui-resizable-handle, -.ui-resizable-autohide .ui-resizable-handle { - display: none; -} -.ui-resizable-n { - cursor: n-resize; - height: 7px; - width: 100%; - top: -5px; - left: 0; -} -.ui-resizable-s { - cursor: s-resize; - height: 7px; - width: 100%; - bottom: -5px; - left: 0; -} -.ui-resizable-e { - cursor: e-resize; - width: 7px; - right: -5px; - top: 0; - height: 100%; -} -.ui-resizable-w { - cursor: w-resize; - width: 7px; - left: -5px; - top: 0; - height: 100%; -} -.ui-resizable-se { - cursor: se-resize; - width: 12px; - height: 12px; - right: 1px; - bottom: 1px; -} -.ui-resizable-sw { - cursor: sw-resize; - width: 9px; - height: 9px; - left: -5px; - bottom: -5px; -} -.ui-resizable-nw { - cursor: nw-resize; - width: 9px; - height: 9px; - left: -5px; - top: -5px; -} -.ui-resizable-ne { - cursor: ne-resize; - width: 9px; - height: 9px; - right: -5px; - top: -5px; -} diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.structure.min.css b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.structure.min.css deleted file mode 100644 index 3b1d670..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.structure.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! jQuery UI - v1.12.1 - 2018-03-18 -* http://jqueryui.com -* Copyright jQuery Foundation and other contributors; Licensed MIT */ - -.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}
\ No newline at end of file diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.theme.css b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.theme.css deleted file mode 100644 index f559ff3..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.theme.css +++ /dev/null @@ -1,443 +0,0 @@ -/*! - * jQuery UI CSS Framework 1.12.1 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/category/theming/ - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif - */ - - -/* Component containers -----------------------------------*/ -.ui-widget { - font-family: Arial,Helvetica,sans-serif; - font-size: 1em; -} -.ui-widget .ui-widget { - font-size: 1em; -} -.ui-widget input, -.ui-widget select, -.ui-widget textarea, -.ui-widget button { - font-family: Arial,Helvetica,sans-serif; - font-size: 1em; -} -.ui-widget.ui-widget-content { - border: 1px solid #c5c5c5; -} -.ui-widget-content { - border: 1px solid #dddddd; - background: #ffffff; - color: #333333; -} -.ui-widget-content a { - color: #333333; -} -.ui-widget-header { - border: 1px solid #dddddd; - background: #e9e9e9; - color: #333333; - font-weight: bold; -} -.ui-widget-header a { - color: #333333; -} - -/* Interaction states -----------------------------------*/ -.ui-state-default, -.ui-widget-content .ui-state-default, -.ui-widget-header .ui-state-default, -.ui-button, - -/* We use html here because we need a greater specificity to make sure disabled -works properly when clicked or hovered */ -html .ui-button.ui-state-disabled:hover, -html .ui-button.ui-state-disabled:active { - border: 1px solid #c5c5c5; - background: #f6f6f6; - font-weight: normal; - color: #454545; -} -.ui-state-default a, -.ui-state-default a:link, -.ui-state-default a:visited, -a.ui-button, -a:link.ui-button, -a:visited.ui-button, -.ui-button { - color: #454545; - text-decoration: none; -} -.ui-state-hover, -.ui-widget-content .ui-state-hover, -.ui-widget-header .ui-state-hover, -.ui-state-focus, -.ui-widget-content .ui-state-focus, -.ui-widget-header .ui-state-focus, -.ui-button:hover, -.ui-button:focus { - border: 1px solid #cccccc; - background: #ededed; - font-weight: normal; - color: #2b2b2b; -} -.ui-state-hover a, -.ui-state-hover a:hover, -.ui-state-hover a:link, -.ui-state-hover a:visited, -.ui-state-focus a, -.ui-state-focus a:hover, -.ui-state-focus a:link, -.ui-state-focus a:visited, -a.ui-button:hover, -a.ui-button:focus { - color: #2b2b2b; - text-decoration: none; -} - -.ui-visual-focus { - box-shadow: 0 0 3px 1px rgb(94, 158, 214); -} -.ui-state-active, -.ui-widget-content .ui-state-active, -.ui-widget-header .ui-state-active, -a.ui-button:active, -.ui-button:active, -.ui-button.ui-state-active:hover { - border: 1px solid #003eff; - background: #007fff; - font-weight: normal; - color: #ffffff; -} -.ui-icon-background, -.ui-state-active .ui-icon-background { - border: #003eff; - background-color: #ffffff; -} -.ui-state-active a, -.ui-state-active a:link, -.ui-state-active a:visited { - color: #ffffff; - text-decoration: none; -} - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, -.ui-widget-content .ui-state-highlight, -.ui-widget-header .ui-state-highlight { - border: 1px solid #dad55e; - background: #fffa90; - color: #777620; -} -.ui-state-checked { - border: 1px solid #dad55e; - background: #fffa90; -} -.ui-state-highlight a, -.ui-widget-content .ui-state-highlight a, -.ui-widget-header .ui-state-highlight a { - color: #777620; -} -.ui-state-error, -.ui-widget-content .ui-state-error, -.ui-widget-header .ui-state-error { - border: 1px solid #f1a899; - background: #fddfdf; - color: #5f3f3f; -} -.ui-state-error a, -.ui-widget-content .ui-state-error a, -.ui-widget-header .ui-state-error a { - color: #5f3f3f; -} -.ui-state-error-text, -.ui-widget-content .ui-state-error-text, -.ui-widget-header .ui-state-error-text { - color: #5f3f3f; -} -.ui-priority-primary, -.ui-widget-content .ui-priority-primary, -.ui-widget-header .ui-priority-primary { - font-weight: bold; -} -.ui-priority-secondary, -.ui-widget-content .ui-priority-secondary, -.ui-widget-header .ui-priority-secondary { - opacity: .7; - filter:Alpha(Opacity=70); /* support: IE8 */ - font-weight: normal; -} -.ui-state-disabled, -.ui-widget-content .ui-state-disabled, -.ui-widget-header .ui-state-disabled { - opacity: .35; - filter:Alpha(Opacity=35); /* support: IE8 */ - background-image: none; -} -.ui-state-disabled .ui-icon { - filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */ -} - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { - width: 16px; - height: 16px; -} -.ui-icon, -.ui-widget-content .ui-icon { - background-image: url("images/ui-icons_444444_256x240.png"); -} -.ui-widget-header .ui-icon { - background-image: url("images/ui-icons_444444_256x240.png"); -} -.ui-state-hover .ui-icon, -.ui-state-focus .ui-icon, -.ui-button:hover .ui-icon, -.ui-button:focus .ui-icon { - background-image: url("images/ui-icons_555555_256x240.png"); -} -.ui-state-active .ui-icon, -.ui-button:active .ui-icon { - background-image: url("images/ui-icons_ffffff_256x240.png"); -} -.ui-state-highlight .ui-icon, -.ui-button .ui-state-highlight.ui-icon { - background-image: url("images/ui-icons_777620_256x240.png"); -} -.ui-state-error .ui-icon, -.ui-state-error-text .ui-icon { - background-image: url("images/ui-icons_cc0000_256x240.png"); -} -.ui-button .ui-icon { - background-image: url("images/ui-icons_777777_256x240.png"); -} - -/* positioning */ -.ui-icon-blank { background-position: 16px 16px; } -.ui-icon-caret-1-n { background-position: 0 0; } -.ui-icon-caret-1-ne { background-position: -16px 0; } -.ui-icon-caret-1-e { background-position: -32px 0; } -.ui-icon-caret-1-se { background-position: -48px 0; } -.ui-icon-caret-1-s { background-position: -65px 0; } -.ui-icon-caret-1-sw { background-position: -80px 0; } -.ui-icon-caret-1-w { background-position: -96px 0; } -.ui-icon-caret-1-nw { background-position: -112px 0; } -.ui-icon-caret-2-n-s { background-position: -128px 0; } -.ui-icon-caret-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -65px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -65px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 1px -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-on { background-position: -96px -144px; } -.ui-icon-radio-off { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, -.ui-corner-top, -.ui-corner-left, -.ui-corner-tl { - border-top-left-radius: 3px; -} -.ui-corner-all, -.ui-corner-top, -.ui-corner-right, -.ui-corner-tr { - border-top-right-radius: 3px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-left, -.ui-corner-bl { - border-bottom-left-radius: 3px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-right, -.ui-corner-br { - border-bottom-right-radius: 3px; -} - -/* Overlays */ -.ui-widget-overlay { - background: #aaaaaa; - opacity: .3; - filter: Alpha(Opacity=30); /* support: IE8 */ -} -.ui-widget-shadow { - -webkit-box-shadow: 0px 0px 5px #666666; - box-shadow: 0px 0px 5px #666666; -} diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.theme.min.css b/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.theme.min.css deleted file mode 100644 index f99db91..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/jquery-ui.theme.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! jQuery UI - v1.12.1 - 2018-03-18 -* http://jqueryui.com -* Copyright jQuery Foundation and other contributors; Licensed MIT */ - -.ui-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #c5c5c5}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;color:#333;font-weight:bold}.ui-widget-header a{color:#333}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,.ui-button,html .ui-button.ui-state-disabled:hover,html .ui-button.ui-state-disabled:active{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button,.ui-button{color:#454545;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus,.ui-button:hover,.ui-button:focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,a.ui-button:hover,a.ui-button:focus{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#003eff;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-button:hover .ui-icon,.ui-button:focus .ui-icon{background-image:url("images/ui-icons_555555_256x240.png")}.ui-state-active .ui-icon,.ui-button:active .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-highlight .ui-icon,.ui-button .ui-state-highlight.ui-icon{background-image:url("images/ui-icons_777620_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cc0000_256x240.png")}.ui-button .ui-icon{background-image:url("images/ui-icons_777777_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:3px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}
\ No newline at end of file diff --git a/javascript/vendor/jquery-ui-1.12.1.custom/package.json b/javascript/vendor/jquery-ui-1.12.1.custom/package.json deleted file mode 100644 index e3c846e..0000000 --- a/javascript/vendor/jquery-ui-1.12.1.custom/package.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "name": "jquery-ui", - "title": "jQuery UI", - "description": "A curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library.", - "version": "1.12.1", - "homepage": "http://jqueryui.com", - "author": { - "name": "jQuery Foundation and other contributors", - "url": "https://github.com/jquery/jquery-ui/blob/1.12.1/AUTHORS.txt" - }, - "main": "ui/widget.js", - "maintainers": [ - { - "name": "Scott González", - "email": "scott.gonzalez@gmail.com", - "url": "http://scottgonzalez.com" - }, - { - "name": "Jörn Zaefferer", - "email": "joern.zaefferer@gmail.com", - "url": "http://bassistance.de" - }, - { - "name": "Mike Sherov", - "email": "mike.sherov@gmail.com", - "url": "http://mike.sherov.com" - }, - { - "name": "TJ VanToll", - "email": "tj.vantoll@gmail.com", - "url": "http://tjvantoll.com" - }, - { - "name": "Felix Nagel", - "email": "info@felixnagel.com", - "url": "http://www.felixnagel.com" - }, - { - "name": "Alex Schmitz", - "email": "arschmitz@gmail.com", - "url": "https://github.com/arschmitz" - } - ], - "repository": { - "type": "git", - "url": "git://github.com/jquery/jquery-ui.git" - }, - "bugs": "https://bugs.jqueryui.com/", - "license": "MIT", - "scripts": { - "test": "grunt" - }, - "dependencies": {}, - "devDependencies": { - "commitplease": "2.3.0", - "grunt": "0.4.5", - "grunt-bowercopy": "1.2.4", - "grunt-cli": "0.1.13", - "grunt-compare-size": "0.4.0", - "grunt-contrib-concat": "0.5.1", - "grunt-contrib-csslint": "0.5.0", - "grunt-contrib-jshint": "0.12.0", - "grunt-contrib-qunit": "1.0.1", - "grunt-contrib-requirejs": "0.4.4", - "grunt-contrib-uglify": "0.11.1", - "grunt-git-authors": "3.1.0", - "grunt-html": "6.0.0", - "grunt-jscs": "2.1.0", - "load-grunt-tasks": "3.4.0", - "rimraf": "2.5.1", - "testswarm": "1.1.0" - }, - "keywords": [] -} |