From 55fc14da96d17aee8d054c633fe632428ca58312 Mon Sep 17 00:00:00 2001 From: pkempenaers Date: Tue, 21 Mar 2017 15:59:04 +0100 Subject: [PATCH 01/13] Release 2.0.0-beta.4 --- bower.json | 2 +- component/component.js | 2 +- component/maps/component.js.map | 2 +- docs/maps/scripts/app.js.map | 2 +- docs/scripts/app.js | 2 +- package.json | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bower.json b/bower.json index 87870a32..f29cb09b 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "angularjs-dropdown-multiselect", - "version": "2.0.0-beta.3", + "version": "2.0.0-beta.4", "authors": [ "Dotan Simha ", "Pieter Kempenaers " diff --git a/component/component.js b/component/component.js index 2daf4f21..6530cc4a 100644 --- a/component/component.js +++ b/component/component.js @@ -1,4 +1,4 @@ /******/!function(e){function t(l){if(n[l])return n[l].exports;var s=n[l]={exports:{},id:l,loaded:!1};return e[l].call(s.exports,s,s.exports,t),s.loaded=!0,s.exports}// webpackBootstrap /******/ -var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}var s=n(1),o=l(s);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,n,l){var s=l.dmDropdownStaticInclude,o=n.html(s).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function s(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:i["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=s;var o=n(2),i=l(o)},function(e,t){"use strict";function n(e,t){var n=!1;return e.some(function(e){return e===t?(n=!0,!0):!1}),n}function l(e,t,l,s){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function i(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function r(t,n){e.setSelectedItem(n,!1,!0),t.stopImmediatePropagation()}function c(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function a(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(n){n[e.settings.groupBy]===t&&e.setSelectedItem(n,!1,!1)}),e.externalEvents.onSelectionChanged()}function d(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function u(e){var n=t.find("button"),l=document.createElement("canvas"),s=l.getContext("2d");return s.font=n.css("font-size")+n.css("font-family"),s.originalFont=n.css("font-size")+n.css("font-family"),s.fillStyle="#000000",s.measureText(e).width}function g(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var n=24,l=2,s=8,o=t[0].offsetWidth-n-l-s,i=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var n=e.getPropertyForObject(t,e.settings.displayProp),l=e.settings.smartButtonTextConverter(n,t);i.push(l||n)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(i=i.slice(0,e.settings.smartButtonMaxItems),i.push("..."));var r=i.join(", "),c=r.length-4;if(0===t[0].offsetWidth)return r;if(o<=u("..."))return"...";for(;u(r)>o;)"..."!==i[i.length-1]&&(i.push("..."),r+="...",c=r.length-4),r=r.slice(0,c)+r.slice(c+1),c-=1;return r}var a=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===a?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&a===e.options.length?e.texts.allSelectedText:a+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function p(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function h(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=l("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function f(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function m(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,l=arguments[2],s=-1!==e.selectedModel.indexOf(t);!n&&s?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!s&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||s||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),l&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),l&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function y(t){return-1!==e.selectedModel.indexOf(t)}function k(t){var n=angular.element(t.target).scope(),l=void 0,s=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),n.option?e.setSelectedItem(n.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),s.previousElementSibling&&(l=s.previousElementSibling.querySelector("a")||s.previousElementSibling.querySelector("input"));!l&&s;)s=s.previousElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else if(40===t.keyCode){for(t.preventDefault(),s.nextElementSibling&&(l=s.nextElementSibling.querySelector("a")||s.nextElementSibling.querySelector("input"));!l&&s;)s=s.nextElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function b(t){var n=t.target.parentNode.parentNode,l=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),n.previousElementSibling&&(l=n.previousElementSibling.querySelector("a")||n.previousElementSibling.querySelector("input"));!l&&n;)n=n.previousElementSibling,n&&(l=n.querySelector("a")||n.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function v(t,n){var s=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(s=l("filter")(e.options,e.getFilter(n)),1===s.length&&e.setSelectedItem(s[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function x(t){var n={};return n[e.settings.searchField]=t,n}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function w(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function C(t,n){if(angular.isUndefined(n))return 1;if(angular.isUndefined(t))return-1;if("object"!==t.type||"object"!==n.type)return t.index')}]); +var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}var s=n(1),o=l(s);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,n,l){var s=l.dmDropdownStaticInclude,o=n.html(s).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function s(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:i["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=s;var o=n(2),i=l(o)},function(e,t){"use strict";function n(e,t){var n=!1;return e.some(function(e){return e===t?(n=!0,!0):!1}),n}function l(e,t,l,s){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function i(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function c(t,n){e.setSelectedItem(n,!1,!0),t.stopImmediatePropagation()}function r(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function a(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(n){n[e.settings.groupBy]===t&&e.setSelectedItem(n,!1,!1)}),e.externalEvents.onSelectionChanged()}function d(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function u(e){var n=t.find("button"),l=document.createElement("canvas"),s=l.getContext("2d");return s.font=n.css("font-size")+n.css("font-family"),s.originalFont=n.css("font-size")+n.css("font-family"),s.fillStyle="#000000",s.measureText(e).width}function g(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var n=24,l=2,s=8,o=t[0].offsetWidth-n-l-s,i=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var n=e.getPropertyForObject(t,e.settings.displayProp),l=e.settings.smartButtonTextConverter(n,t);i.push(l||n)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(i=i.slice(0,e.settings.smartButtonMaxItems),i.push("..."));var c=i.join(", "),r=c.length-4;if(0===t[0].offsetWidth)return c;if(o<=u("..."))return"...";for(;u(c)>o;)"..."!==i[i.length-1]&&(i.push("..."),c+="...",r=c.length-4),c=c.slice(0,r)+c.slice(r+1),r-=1;return c}var a=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===a?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&a===e.options.length?e.texts.allSelectedText:a+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function p(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function h(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=l("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function f(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function m(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,l=arguments[2],s=-1!==e.selectedModel.indexOf(t);!n&&s?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!s&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||s||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),l&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),l&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function y(t){return-1!==e.selectedModel.indexOf(t)}function k(t){var n=angular.element(t.target).scope(),l=void 0,s=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),n.option?e.setSelectedItem(n.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),s.previousElementSibling&&(l=s.previousElementSibling.querySelector("a")||s.previousElementSibling.querySelector("input"));!l&&s;)s=s.previousElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else if(40===t.keyCode){for(t.preventDefault(),s.nextElementSibling&&(l=s.nextElementSibling.querySelector("a")||s.nextElementSibling.querySelector("input"));!l&&s;)s=s.nextElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function b(t){var n=t.target.parentNode.parentNode,l=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),n.previousElementSibling&&(l=n.previousElementSibling.querySelector("a")||n.previousElementSibling.querySelector("input"));!l&&n;)n=n.previousElementSibling,n&&(l=n.querySelector("a")||n.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function v(t,n){var s=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(s=l("filter")(e.options,e.getFilter(n)),1===s.length&&e.setSelectedItem(s[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function x(t){var n={};return n[e.settings.searchField]=t,n}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function w(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function C(t,n){if(angular.isUndefined(n))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==n.type)return t.index')}]); //# sourceMappingURL=maps/component.js.map diff --git a/component/maps/component.js.map b/component/maps/component.js.map index d932055d..52c8f9a8 100644 --- a/component/maps/component.js.map +++ b/component/maps/component.js.map @@ -1 +1 @@ -{"version":3,"sources":["component.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","angular","directive","$compile","scope","element","attrs","template","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","run","$templateCache","put"],"mappings":"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","file":"component.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["component.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","angular","directive","$compile","scope","element","attrs","template","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","run","$templateCache","put"],"mappings":"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","file":"component.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/maps/scripts/app.js.map b/docs/maps/scripts/app.js.map index d6d5cbee..a5dc84c4 100644 --- a/docs/maps/scripts/app.js.map +++ b/docs/maps/scripts/app.js.map @@ -1 +1 @@ -{"version":3,"sources":["scripts/app.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_main","_main2","_v1docs","_v1docs2","angular","component","config","$stateProvider","$urlRouterProvider","state","name","url","template","otherwise","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","directive","$compile","scope","element","attrs","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","mainComponent","_classCallCheck","instance","Constructor","TypeError","MainController","$log","this","testing","testmodel","testdata","testsettings","externalIdProp","skip","testevents","debug","example1model","example1data","label","example2model","example2data","example2settings","example5model","example5data","example5settings","example5customTexts","example6data","example6model","example6settings","example7model","example7data","example7settings","customFilter","example8model","example8data","example8settings","example9model","example9data","example9settings","example10model","example10data","example10settings","example12model","example12data","example12settings","example11model","example11data","gender","example11settings","selectByGroupModel","selectByGroupData","selectByGroupSettings","selectByGroups","example13model","example13data","example13settings","itemText","example14model","example14data","example14settings","example15model","example15data","example15settings","example16model","example16data","example16settings","example17model","example17data","example17settings","example18model","example18data","example18settings","example19model","example19data","example19settings","example20model","example20data","age","example20settings","example21model","example21data","example21settings","searchSelectAllModel","searchSelectAllData","searchSelectAllSettings","disabledModel","disabledData","selectedToTopModel","selectedToTopData","selectedToTopSettings","stringModel","stringData","stringSettings","v1Component","run","$templateCache","put"],"mappings":"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","file":"scripts/app.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["scripts/app.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_main","_main2","_v1docs","_v1docs2","angular","component","config","$stateProvider","$urlRouterProvider","state","name","url","template","otherwise","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","directive","$compile","scope","element","attrs","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","mainComponent","_classCallCheck","instance","Constructor","TypeError","MainController","$log","this","testing","testmodel","testdata","testsettings","externalIdProp","skip","testevents","debug","example1model","example1data","label","example2model","example2data","example2settings","example5model","example5data","example5settings","example5customTexts","example6data","example6model","example6settings","example7model","example7data","example7settings","customFilter","example8model","example8data","example8settings","example9model","example9data","example9settings","example10model","example10data","example10settings","example12model","example12data","example12settings","example11model","example11data","gender","example11settings","selectByGroupModel","selectByGroupData","selectByGroupSettings","selectByGroups","example13model","example13data","example13settings","itemText","example14model","example14data","example14settings","example15model","example15data","example15settings","example16model","example16data","example16settings","example17model","example17data","example17settings","example18model","example18data","example18settings","example19model","example19data","example19settings","example20model","example20data","age","example20settings","example21model","example21data","example21settings","searchSelectAllModel","searchSelectAllData","searchSelectAllSettings","disabledModel","disabledData","selectedToTopModel","selectedToTopData","selectedToTopSettings","stringModel","stringData","stringSettings","v1Component","run","$templateCache","put"],"mappings":"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","file":"scripts/app.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/scripts/app.js b/docs/scripts/app.js index 530f88ff..d8e4f963 100644 --- a/docs/scripts/app.js +++ b/docs/scripts/app.js @@ -1,5 +1,5 @@ /******/!function(e){function t(d){if(l[d])return l[d].exports;var i=l[d]={exports:{},id:d,loaded:!1};return e[d].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}// webpackBootstrap /******/ -var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),o=d(i),s=l(6),a=d(s);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,o["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
"}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),o=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,o=l.html(i).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:s["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var o=l(3),s=d(o)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function s(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,o=t[0].offsetWidth-l-d-i,s=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);s.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(s=s.slice(0,e.settings.smartButtonMaxItems),s.push("..."));var a=s.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(o<=h("..."))return"...";for(;h(a)>o;)"..."!==s[s.length-1]&&(s.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function T(t,l){if(angular.isUndefined(l))return 1;if(angular.isUndefined(t))return-1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

What is AngularJS Dropdown Multiselect?

This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

In this page you can see basic and advanced usage examples.

Download

There are several options to do that:
  1. Using bower: `bower install angular-dropdown-multiselect`
  2. Download the .zip file from here
  3. Using it from GitHub raw using this link
This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
test

Demo

The model:

{{testmodel|json}}

Demo

The model:

{{example1model|json}}

Code

// HTML
// JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
This example shows the ability to select the property to display as text label.
In this case, the property the used as label is "id".

Demo

The model:

{{example2model|json}}

Code

// HTML
// JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
You can use the feature in order to show which items are selected instead the items count.
In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

Demo

The model:

{{example13model|json}}

Code

//HTML
//JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

Demo

The model:

{{example14model|json}}

Code

//HTML
//JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

Demo

The model:

{{example9model|json}}

Code

// HTML
// JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

Demo

The model:

{{example20model|json}}

Code

// HTML
// JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

Demo

The model:

{{example21model|json}}

Code

// HTML
// JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

Demo

The model:

{{searchSelectAllModel|json}}

Code

// HTML
// JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
By default, there is no limit on the maximum selected items.
You can limit the selection by providing selectionLimit using the settings attribute.
Note 1: limit the selection to 0 is the default and won\'t limit the selection!
Note 2: When using this limit, the "Select All" button will not appear!

Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

Demo

The model:

{{example10model|json}}

Code

// HTML
// JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
Please read the notes in the "Selection Limit" example.
This example shows an example of using selection limit and single selection.

Demo

The model:

{{example12model|json}}

Code

// HTML
// JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

Demo

The model:

{{example11model|json}}

Code

// HTML
// JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

Demo

The model:

{{selectByGroupModel|json}}

Code

// HTML
// JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
You can select your own text of the button using the "defaultText" in settings.

Demo

The model:

{{example5model|json}}

Code

// HTML
// JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
This example shows a demostration of using a pre-setted model.
Note:The model should have the same objects as in the options array.

Demo

The model:

{{example6model|json}}

Code

// HTML
// JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
This example shows a demostration of access and set the search filter from outside the directive.
This can be done by settings the "search-filter" attribute.

Demo

The model:

{{example7model|json}}

Search Filter:

{{customFilter|json}}

Code

// HTML
// JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
You can also use a checkboxes list by setting checkBoxes setting to true!

Demo

The model:

{{example8model|json}}

Code

// HTML
// JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

Demo

You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

The model:

{{example16model|json}}

Code

// HTML
// JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

Demo

When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

The model:

{{example17model|json}}

Code

// HTML
// JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

Demo

When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

The model:

{{example18model|json}}

Code

// HTML
// JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

Demo

Instead of using the default template you can use an own custom temlpate.

The model:

{{example19model|json}}

Code

// HTML
// JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

Demo

The model:

{{disabledModel|json}}

Code

// HTML
// JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

Demo

The model:

{{selectedToTopModel|json}}

Code

// HTML
// JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
Example to show that options no longer need to be an object with an id property

Demo

The model:

{{stringModel|json}}

Code

// HTML
$scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };

Full API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
'), +var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),o=d(i),s=l(6),a=d(s);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,o["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
"}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),o=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,o=l.html(i).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:s["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var o=l(3),s=d(o)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function s(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,o=t[0].offsetWidth-l-d-i,s=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);s.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(s=s.slice(0,e.settings.smartButtonMaxItems),s.push("..."));var a=s.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(o<=h("..."))return"...";for(;h(a)>o;)"..."!==s[s.length-1]&&(s.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function T(t,l){if(angular.isUndefined(l))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

What is AngularJS Dropdown Multiselect?

This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

In this page you can see basic and advanced usage examples.

Download

There are several options to do that:
  1. Using bower: `bower install angular-dropdown-multiselect`
  2. Download the .zip file from here
  3. Using it from GitHub raw using this link
This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
test

Demo

The model:

{{testmodel|json}}

Demo

The model:

{{example1model|json}}

Code

// HTML
// JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
This example shows the ability to select the property to display as text label.
In this case, the property the used as label is "id".

Demo

The model:

{{example2model|json}}

Code

// HTML
// JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
You can use the feature in order to show which items are selected instead the items count.
In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

Demo

The model:

{{example13model|json}}

Code

//HTML
//JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

Demo

The model:

{{example14model|json}}

Code

//HTML
//JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

Demo

The model:

{{example9model|json}}

Code

// HTML
// JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

Demo

The model:

{{example20model|json}}

Code

// HTML
// JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

Demo

The model:

{{example21model|json}}

Code

// HTML
// JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

Demo

The model:

{{searchSelectAllModel|json}}

Code

// HTML
// JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
By default, there is no limit on the maximum selected items.
You can limit the selection by providing selectionLimit using the settings attribute.
Note 1: limit the selection to 0 is the default and won\'t limit the selection!
Note 2: When using this limit, the "Select All" button will not appear!

Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

Demo

The model:

{{example10model|json}}

Code

// HTML
// JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
Please read the notes in the "Selection Limit" example.
This example shows an example of using selection limit and single selection.

Demo

The model:

{{example12model|json}}

Code

// HTML
// JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

Demo

The model:

{{example11model|json}}

Code

// HTML
// JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

Demo

The model:

{{selectByGroupModel|json}}

Code

// HTML
// JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
You can select your own text of the button using the "defaultText" in settings.

Demo

The model:

{{example5model|json}}

Code

// HTML
// JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
This example shows a demostration of using a pre-setted model.
Note:The model should have the same objects as in the options array.

Demo

The model:

{{example6model|json}}

Code

// HTML
// JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
This example shows a demostration of access and set the search filter from outside the directive.
This can be done by settings the "search-filter" attribute.

Demo

The model:

{{example7model|json}}

Search Filter:

{{customFilter|json}}

Code

// HTML
// JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
You can also use a checkboxes list by setting checkBoxes setting to true!

Demo

The model:

{{example8model|json}}

Code

// HTML
// JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

Demo

You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

The model:

{{example16model|json}}

Code

// HTML
// JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

Demo

When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

The model:

{{example17model|json}}

Code

// HTML
// JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

Demo

When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

The model:

{{example18model|json}}

Code

// HTML
// JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

Demo

Instead of using the default template you can use an own custom temlpate.

The model:

{{example19model|json}}

Code

// HTML
// JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

Demo

The model:

{{disabledModel|json}}

Code

// HTML
// JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

Demo

The model:

{{selectedToTopModel|json}}

Code

// HTML
// JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
Example to show that options no longer need to be an object with an id property

Demo

The model:

{{stringModel|json}}

Code

// HTML
$scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };

Full API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
'), e.put("app/v1docs/v1docs.template.html",'Main docs

Full V1 API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
group-byStringThe name of the property which you like to group by your options. See grouping example.
checkboxesBooleanIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
idPropStringidThe name of the property that contains the id for the elements.
externalIdPropStringidThe name of the property that will use for the selected items model.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using group-by attribute. The parameter for the function will be the value of the group-by property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
')}]); //# sourceMappingURL=../maps/scripts/app.js.map diff --git a/package.json b/package.json index be3d3e69..932efe28 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "author": "pkempenaers@myforce.be", "name": "angularjs-dropdown-multiselect", - "version": "2.0.0-beta.3", + "version": "2.0.0-beta.4", "description": "This directive gives you a Bootstrap Dropdown with the power of AngularJS directives.", "homepage": "http://dotansimha.github.io/angularjs-dropdown-multiselect/#/", "dependencies": { From b8c39291ad16faaac868ebbd1057cf259dd25c87 Mon Sep 17 00:00:00 2001 From: pkempenaers Date: Fri, 24 Mar 2017 15:43:56 +0100 Subject: [PATCH 02/13] Update documentation --- docs/scripts/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/scripts/app.js b/docs/scripts/app.js index d8e4f963..b0184704 100644 --- a/docs/scripts/app.js +++ b/docs/scripts/app.js @@ -1,5 +1,5 @@ /******/!function(e){function t(d){if(l[d])return l[d].exports;var i=l[d]={exports:{},id:d,loaded:!1};return e[d].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}// webpackBootstrap /******/ -var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),o=d(i),s=l(6),a=d(s);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,o["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
"}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),o=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,o=l.html(i).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:s["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var o=l(3),s=d(o)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function s(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,o=t[0].offsetWidth-l-d-i,s=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);s.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(s=s.slice(0,e.settings.smartButtonMaxItems),s.push("..."));var a=s.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(o<=h("..."))return"...";for(;h(a)>o;)"..."!==s[s.length-1]&&(s.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function T(t,l){if(angular.isUndefined(l))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

What is AngularJS Dropdown Multiselect?

This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

In this page you can see basic and advanced usage examples.

Download

There are several options to do that:
  1. Using bower: `bower install angular-dropdown-multiselect`
  2. Download the .zip file from here
  3. Using it from GitHub raw using this link
This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
test

Demo

The model:

{{testmodel|json}}

Demo

The model:

{{example1model|json}}

Code

// HTML
// JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
This example shows the ability to select the property to display as text label.
In this case, the property the used as label is "id".

Demo

The model:

{{example2model|json}}

Code

// HTML
// JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
You can use the feature in order to show which items are selected instead the items count.
In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

Demo

The model:

{{example13model|json}}

Code

//HTML
//JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

Demo

The model:

{{example14model|json}}

Code

//HTML
//JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

Demo

The model:

{{example9model|json}}

Code

// HTML
// JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

Demo

The model:

{{example20model|json}}

Code

// HTML
// JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

Demo

The model:

{{example21model|json}}

Code

// HTML
// JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

Demo

The model:

{{searchSelectAllModel|json}}

Code

// HTML
// JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
By default, there is no limit on the maximum selected items.
You can limit the selection by providing selectionLimit using the settings attribute.
Note 1: limit the selection to 0 is the default and won\'t limit the selection!
Note 2: When using this limit, the "Select All" button will not appear!

Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

Demo

The model:

{{example10model|json}}

Code

// HTML
// JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
Please read the notes in the "Selection Limit" example.
This example shows an example of using selection limit and single selection.

Demo

The model:

{{example12model|json}}

Code

// HTML
// JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

Demo

The model:

{{example11model|json}}

Code

// HTML
// JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

Demo

The model:

{{selectByGroupModel|json}}

Code

// HTML
// JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
You can select your own text of the button using the "defaultText" in settings.

Demo

The model:

{{example5model|json}}

Code

// HTML
// JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
This example shows a demostration of using a pre-setted model.
Note:The model should have the same objects as in the options array.

Demo

The model:

{{example6model|json}}

Code

// HTML
// JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
This example shows a demostration of access and set the search filter from outside the directive.
This can be done by settings the "search-filter" attribute.

Demo

The model:

{{example7model|json}}

Search Filter:

{{customFilter|json}}

Code

// HTML
// JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
You can also use a checkboxes list by setting checkBoxes setting to true!

Demo

The model:

{{example8model|json}}

Code

// HTML
// JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

Demo

You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

The model:

{{example16model|json}}

Code

// HTML
// JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

Demo

When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

The model:

{{example17model|json}}

Code

// HTML
// JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

Demo

When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

The model:

{{example18model|json}}

Code

// HTML
// JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

Demo

Instead of using the default template you can use an own custom temlpate.

The model:

{{example19model|json}}

Code

// HTML
// JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

Demo

The model:

{{disabledModel|json}}

Code

// HTML
// JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

Demo

The model:

{{selectedToTopModel|json}}

Code

// HTML
// JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
Example to show that options no longer need to be an object with an id property

Demo

The model:

{{stringModel|json}}

Code

// HTML
$scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };

Full API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
'), +var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),o=d(i),s=l(6),a=d(s);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,o["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
"}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),o=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,o=l.html(i).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:s["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var o=l(3),s=d(o)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function s(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,o=t[0].offsetWidth-l-d-i,s=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);s.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(s=s.slice(0,e.settings.smartButtonMaxItems),s.push("..."));var a=s.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(o<=h("..."))return"...";for(;h(a)>o;)"..."!==s[s.length-1]&&(s.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function T(t,l){if(angular.isUndefined(l))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

What is AngularJS Dropdown Multiselect?

This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

In this page you can see basic and advanced usage examples.

Download

There are several options to do that:
  1. Using bower: `bower install angularjs-dropdown-multiselect`
  2. Using npm: `npm install angularjs-dropdown-multiselect`
  3. Download the .zip file from here
  4. Using it from GitHub raw using this link
This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
test

Demo

The model:

{{testmodel|json}}

Demo

The model:

{{example1model|json}}

Code

// HTML
// JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
This example shows the ability to select the property to display as text label.
In this case, the property the used as label is "id".

Demo

The model:

{{example2model|json}}

Code

// HTML
// JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
You can use the feature in order to show which items are selected instead the items count.
In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

Demo

The model:

{{example13model|json}}

Code

//HTML
//JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

Demo

The model:

{{example14model|json}}

Code

//HTML
//JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

Demo

The model:

{{example9model|json}}

Code

// HTML
// JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

Demo

The model:

{{example20model|json}}

Code

// HTML
// JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

Demo

The model:

{{example21model|json}}

Code

// HTML
// JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

Demo

The model:

{{searchSelectAllModel|json}}

Code

// HTML
// JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
By default, there is no limit on the maximum selected items.
You can limit the selection by providing selectionLimit using the settings attribute.
Note 1: limit the selection to 0 is the default and won\'t limit the selection!
Note 2: When using this limit, the "Select All" button will not appear!

Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

Demo

The model:

{{example10model|json}}

Code

// HTML
// JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
Please read the notes in the "Selection Limit" example.
This example shows an example of using selection limit and single selection.

Demo

The model:

{{example12model|json}}

Code

// HTML
// JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

Demo

The model:

{{example11model|json}}

Code

// HTML
// JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

Demo

The model:

{{selectByGroupModel|json}}

Code

// HTML
// JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
You can select your own text of the button using the "defaultText" in settings.

Demo

The model:

{{example5model|json}}

Code

// HTML
// JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
This example shows a demostration of using a pre-setted model.
Note:The model should have the same objects as in the options array.

Demo

The model:

{{example6model|json}}

Code

// HTML
// JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
This example shows a demostration of access and set the search filter from outside the directive.
This can be done by settings the "search-filter" attribute.

Demo

The model:

{{example7model|json}}

Search Filter:

{{customFilter|json}}

Code

// HTML
// JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
You can also use a checkboxes list by setting checkBoxes setting to true!

Demo

The model:

{{example8model|json}}

Code

// HTML
// JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

Demo

You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

The model:

{{example16model|json}}

Code

// HTML
// JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

Demo

When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

The model:

{{example17model|json}}

Code

// HTML
// JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

Demo

When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

The model:

{{example18model|json}}

Code

// HTML
// JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

Demo

Instead of using the default template you can use an own custom temlpate.

The model:

{{example19model|json}}

Code

// HTML
// JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

Demo

The model:

{{disabledModel|json}}

Code

// HTML
// JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

Demo

The model:

{{selectedToTopModel|json}}

Code

// HTML
// JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
Example to show that options no longer need to be an object with an id property

Demo

The model:

{{stringModel|json}}

Code

// HTML
$scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };

Full API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
'), e.put("app/v1docs/v1docs.template.html",'Main docs

Full V1 API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
group-byStringThe name of the property which you like to group by your options. See grouping example.
checkboxesBooleanIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
idPropStringidThe name of the property that contains the id for the elements.
externalIdPropStringidThe name of the property that will use for the selected items model.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using group-by attribute. The parameter for the function will be the value of the group-by property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
')}]); //# sourceMappingURL=../maps/scripts/app.js.map From 5832bdd4a8faa851301b82ddc432d5891d4a1252 Mon Sep 17 00:00:00 2001 From: pkempenaers Date: Thu, 30 Mar 2017 11:59:21 +0200 Subject: [PATCH 03/13] Release 2.0.0-beta.5 --- bower.json | 2 +- component/component.js | 2 +- component/maps/component.js.map | 2 +- docs/index.html | 2 +- docs/maps/scripts/app.js.map | 2 +- docs/maps/scripts/vendor.js.map | 2 +- docs/scripts/app.js | 2 +- docs/scripts/vendor.js | 43 ++++++++++++++++----------------- docs/styles/app.css | 2 +- docs/styles/vendor.css | 1 + package.json | 2 +- 11 files changed, 31 insertions(+), 31 deletions(-) create mode 100644 docs/styles/vendor.css diff --git a/bower.json b/bower.json index f29cb09b..996b72fe 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "angularjs-dropdown-multiselect", - "version": "2.0.0-beta.4", + "version": "2.0.0-beta.5", "authors": [ "Dotan Simha ", "Pieter Kempenaers " diff --git a/component/component.js b/component/component.js index 6530cc4a..2528d072 100644 --- a/component/component.js +++ b/component/component.js @@ -1,4 +1,4 @@ /******/!function(e){function t(l){if(n[l])return n[l].exports;var s=n[l]={exports:{},id:l,loaded:!1};return e[l].call(s.exports,s,s.exports,t),s.loaded=!0,s.exports}// webpackBootstrap /******/ -var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}var s=n(1),o=l(s);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,n,l){var s=l.dmDropdownStaticInclude,o=n.html(s).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function s(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:i["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=s;var o=n(2),i=l(o)},function(e,t){"use strict";function n(e,t){var n=!1;return e.some(function(e){return e===t?(n=!0,!0):!1}),n}function l(e,t,l,s){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function i(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function c(t,n){e.setSelectedItem(n,!1,!0),t.stopImmediatePropagation()}function r(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function a(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(n){n[e.settings.groupBy]===t&&e.setSelectedItem(n,!1,!1)}),e.externalEvents.onSelectionChanged()}function d(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function u(e){var n=t.find("button"),l=document.createElement("canvas"),s=l.getContext("2d");return s.font=n.css("font-size")+n.css("font-family"),s.originalFont=n.css("font-size")+n.css("font-family"),s.fillStyle="#000000",s.measureText(e).width}function g(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var n=24,l=2,s=8,o=t[0].offsetWidth-n-l-s,i=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var n=e.getPropertyForObject(t,e.settings.displayProp),l=e.settings.smartButtonTextConverter(n,t);i.push(l||n)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(i=i.slice(0,e.settings.smartButtonMaxItems),i.push("..."));var c=i.join(", "),r=c.length-4;if(0===t[0].offsetWidth)return c;if(o<=u("..."))return"...";for(;u(c)>o;)"..."!==i[i.length-1]&&(i.push("..."),c+="...",r=c.length-4),c=c.slice(0,r)+c.slice(r+1),r-=1;return c}var a=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===a?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&a===e.options.length?e.texts.allSelectedText:a+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function p(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function h(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=l("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function f(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function m(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,l=arguments[2],s=-1!==e.selectedModel.indexOf(t);!n&&s?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!s&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||s||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),l&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),l&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function y(t){return-1!==e.selectedModel.indexOf(t)}function k(t){var n=angular.element(t.target).scope(),l=void 0,s=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),n.option?e.setSelectedItem(n.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),s.previousElementSibling&&(l=s.previousElementSibling.querySelector("a")||s.previousElementSibling.querySelector("input"));!l&&s;)s=s.previousElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else if(40===t.keyCode){for(t.preventDefault(),s.nextElementSibling&&(l=s.nextElementSibling.querySelector("a")||s.nextElementSibling.querySelector("input"));!l&&s;)s=s.nextElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function b(t){var n=t.target.parentNode.parentNode,l=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),n.previousElementSibling&&(l=n.previousElementSibling.querySelector("a")||n.previousElementSibling.querySelector("input"));!l&&n;)n=n.previousElementSibling,n&&(l=n.querySelector("a")||n.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function v(t,n){var s=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(s=l("filter")(e.options,e.getFilter(n)),1===s.length&&e.setSelectedItem(s[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function x(t){var n={};return n[e.settings.searchField]=t,n}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function w(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function C(t,n){if(angular.isUndefined(n))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==n.type)return t.index')}]); +var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}var s=n(1),o=l(s);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,n,l){var s=l.dmDropdownStaticInclude,o=n.html(s).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function s(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},transclude:!0,controller:i["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=s;var o=n(2),i=l(o)},function(e,t){"use strict";function n(e,t){var n=!1;return e.some(function(e){return e===t?(n=!0,!0):!1}),n}function l(e,t,l,s){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function i(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function c(t,n){e.setSelectedItem(n,!1,!0),t.stopImmediatePropagation()}function r(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function a(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(n){n[e.settings.groupBy]===t&&e.setSelectedItem(n,!1,!1)}),e.externalEvents.onSelectionChanged()}function d(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function u(e){var n=t.find("button"),l=document.createElement("canvas"),s=l.getContext("2d");return s.font=n.css("font-size")+n.css("font-family"),s.originalFont=n.css("font-size")+n.css("font-family"),s.fillStyle="#000000",s.measureText(e).width}function g(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var n=24,l=2,s=8,o=t[0].offsetWidth-n-l-s,i=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var n=e.getPropertyForObject(t,e.settings.displayProp),l=e.settings.smartButtonTextConverter(n,t);i.push(l||n)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(i=i.slice(0,e.settings.smartButtonMaxItems),i.push("..."));var c=i.join(", "),r=c.length-4;if(0===t[0].offsetWidth)return c;if(o<=u("..."))return"...";for(;u(c)>o;)"..."!==i[i.length-1]&&(i.push("..."),c+="...",r=c.length-4),c=c.slice(0,r)+c.slice(r+1),r-=1;return c}var a=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===a?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&a===e.options.length?e.texts.allSelectedText:a+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function p(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function h(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=l("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function f(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function m(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,l=arguments[2],s=-1!==e.selectedModel.indexOf(t);!n&&s?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!s&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||s||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),l&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),l&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function y(t){return-1!==e.selectedModel.indexOf(t)}function k(t){var n=angular.element(t.target).scope(),l=void 0,s=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),n.option?e.setSelectedItem(n.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),s.previousElementSibling&&(l=s.previousElementSibling.querySelector("a")||s.previousElementSibling.querySelector("input"));!l&&s;)s=s.previousElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else if(40===t.keyCode){for(t.preventDefault(),s.nextElementSibling&&(l=s.nextElementSibling.querySelector("a")||s.nextElementSibling.querySelector("input"));!l&&s;)s=s.nextElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function b(t){var n=t.target.parentNode.parentNode,l=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),n.previousElementSibling&&(l=n.previousElementSibling.querySelector("a")||n.previousElementSibling.querySelector("input"));!l&&n;)n=n.previousElementSibling,n&&(l=n.querySelector("a")||n.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function v(t,n){var s=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(s=l("filter")(e.options,e.getFilter(n)),1===s.length&&e.setSelectedItem(s[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function x(t){var n={};return n[e.settings.searchField]=t,n}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function w(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function C(t,n){if(angular.isUndefined(n))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==n.type)return t.index')}]); //# sourceMappingURL=maps/component.js.map diff --git a/component/maps/component.js.map b/component/maps/component.js.map index 52c8f9a8..da57916d 100644 --- a/component/maps/component.js.map +++ b/component/maps/component.js.map @@ -1 +1 @@ -{"version":3,"sources":["component.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","angular","directive","$compile","scope","element","attrs","template","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","run","$templateCache","put"],"mappings":"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","file":"component.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["component.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","angular","directive","$compile","scope","element","attrs","template","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","transclude","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","run","$templateCache","put"],"mappings":"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","file":"component.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 456559ee..c9503a95 100644 --- a/docs/index.html +++ b/docs/index.html @@ -3,6 +3,6 @@ .carousel, .panel-title a { cursor: pointer; - }
View project on
GitHub

AngularJS Dropdown Multiselect

based on Bootstrap's dropdown

\ No newline at end of file diff --git a/docs/maps/scripts/app.js.map b/docs/maps/scripts/app.js.map index a5dc84c4..2080cb13 100644 --- a/docs/maps/scripts/app.js.map +++ b/docs/maps/scripts/app.js.map @@ -1 +1 @@ -{"version":3,"sources":["scripts/app.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_main","_main2","_v1docs","_v1docs2","angular","component","config","$stateProvider","$urlRouterProvider","state","name","url","template","otherwise","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","directive","$compile","scope","element","attrs","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","mainComponent","_classCallCheck","instance","Constructor","TypeError","MainController","$log","this","testing","testmodel","testdata","testsettings","externalIdProp","skip","testevents","debug","example1model","example1data","label","example2model","example2data","example2settings","example5model","example5data","example5settings","example5customTexts","example6data","example6model","example6settings","example7model","example7data","example7settings","customFilter","example8model","example8data","example8settings","example9model","example9data","example9settings","example10model","example10data","example10settings","example12model","example12data","example12settings","example11model","example11data","gender","example11settings","selectByGroupModel","selectByGroupData","selectByGroupSettings","selectByGroups","example13model","example13data","example13settings","itemText","example14model","example14data","example14settings","example15model","example15data","example15settings","example16model","example16data","example16settings","example17model","example17data","example17settings","example18model","example18data","example18settings","example19model","example19data","example19settings","example20model","example20data","age","example20settings","example21model","example21data","example21settings","searchSelectAllModel","searchSelectAllData","searchSelectAllSettings","disabledModel","disabledData","selectedToTopModel","selectedToTopData","selectedToTopSettings","stringModel","stringData","stringSettings","v1Component","run","$templateCache","put"],"mappings":"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","file":"scripts/app.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["scripts/app.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_main","_main2","_v1docs","_v1docs2","angular","component","config","$stateProvider","$urlRouterProvider","state","name","url","template","otherwise","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","directive","$compile","scope","element","attrs","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","transclude","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","mainComponent","_classCallCheck","instance","Constructor","TypeError","MainController","$log","this","testing","testmodel","testdata","testsettings","externalIdProp","skip","testevents","debug","example1model","example1data","label","example2model","example2data","example2settings","example5model","example5data","example5settings","example5customTexts","example6data","example6model","example6settings","example7model","example7data","example7settings","customFilter","example8model","example8data","example8settings","example9model","example9data","example9settings","example10model","example10data","example10settings","example12model","example12data","example12settings","example11model","example11data","gender","example11settings","selectByGroupModel","selectByGroupData","selectByGroupSettings","selectByGroups","example13model","example13data","example13settings","itemText","example14model","example14data","example14settings","example15model","example15data","example15settings","example16model","example16data","example16settings","example17model","example17data","example17settings","example18model","example18data","example18settings","example19model","example19data","example19settings","example20model","example20data","age","example20settings","example21model","example21data","example21settings","searchSelectAllModel","searchSelectAllData","searchSelectAllSettings","disabledModel","disabledData","selectedToTopModel","selectedToTopData","selectedToTopSettings","stringModel","stringData","stringSettings","transclusionModel","transclusionData","transclusionSettings","v1Component","run","$templateCache","put"],"mappings":"SAAS,SAAUA,GAKT,QAASC,GAAoBC,GAG5B,GAAGC,EAAiBD,GACnB,MAAOC,GAAiBD,GAAUE,OAGnC,IAAIC,GAASF,EAAiBD,IAC7BE,WACAE,GAAIJ,EACJK,QAAQ,EAUT,OANAP,GAAQE,GAAUM,KAAKH,EAAOD,QAASC,EAAQA,EAAOD,QAASH,GAG/DI,EAAOE,QAAS,EAGTF,EAAOD;;AAvBf,GAAID,KAqCJ,OATAF,GAAoBQ,EAAIT,EAGxBC,EAAoBS,EAAIP,EAGxBF,EAAoBU,EAAI,GAGjBV,EAAoB,KAK/B,SAASI,EAAQD,EAASH,GAE/B,YAYA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAVvFZ,EAAoB,EAEpB,IAAIe,GAAQf,EAAoB,GAE5BgB,EAASL,EAAuBI,GAEhCE,EAAUjB,EAAoB,GAE9BkB,EAAWP,EAAuBM,EAItCE,SAAQf,OAAO,uCAAwC,iCAAkC,OAAQ,eAAgB,cAAcgB,UAAU,QAAS,EAAGJ,EAAAA,eAAmBI,UAAU,UAAW,EAAGF,EAAAA,eAAqBG,QAAQ,iBAAkB,qBAAsB,SAAUC,EAAgBC,GAC9RD,EAAeE,OACdC,KAAM,OACNC,IAAK,QACLC,SAAU,kBAGXL,EAAeE,OACdC,KAAM,KACNC,IAAK,MACLC,SAAU,wBAGXJ,EAAmBK,UAAU,aAKzB,SAASxB,EAAQD,EAASH,GAE/B,YAMA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAJvF,GAAIiB,GAAgC7B,EAAoB,GAEpD8B,EAAiCnB,EAAuBkB,EAI5DV,SAAQf,OAAO,qCAAsC2B,UAAU,2BAA4B,WAAY,SAAUC,GAChH,UAEA,OAAO,UAAmBC,EAAOC,EAASC,GACzC,GAAIR,GAAWQ,EAAMC,wBACjBC,EAAWH,EAAQI,KAAKX,GAAUU,UACtCL,GAASK,GAAUJ,OAEjBF,UAAU,wBAAyBD,EAAAA,aAIlC,SAAS1B,EAAQD,EAASH,GAE/B,YAWA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAEvF,QAAS2B,KACR,OACCC,SAAU,KACVP,OACCQ,cAAe,IACfC,QAAS,IACTC,cAAe,IACfC,OAAQ,IACRC,aAAc,KACdC,iBAAkB,IAClBC,SAAU,KAEXC,YAAY,EACZC,WAAYnB,EAAAA,WACZoB,YAAa,qDAzBfC,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkBoC,CAElB,IAAIV,GAAgC7B,EAAoB,GAEpD8B,EAAiCnB,EAAuBkB,IAwBvD,SAASzB,EAAQD,GAEtB,YAmBA,SAASmD,GAASC,EAAYC,GAC7B,GAAIC,IAAiB,CAQrB,OAPAF,GAAWG,KAAK,SAAUC,GACzB,MAAIA,KAAWH,GACdC,GAAiB,GACV,IAED,IAEDA,EAGR,QAASG,GAA8BC,EAAQC,EAAUC,EAASC,GACjE,UAmHA,SAASC,KACRC,WAAW,WACV,GAAIC,GAAiBhD,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,UAC5DjD,SAAQkD,UAAUF,IAAqC,MAAlBA,GACxCA,EAAeG,SAEd,GAGJ,QAASC,KACJV,EAAOW,KACVX,EAAOY,QAEPZ,EAAOW,MAAO,EAEXX,EAAOa,SAASC,kBACfd,EAAOW,OAC6B,IAAnCX,EAAOa,SAASE,gBAAwBf,EAAOa,SAASG,aAC3DX,WAAW,WACV/C,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,gBAAgBE,SACzD,GAEHL,KAICJ,EAAOa,SAASG,cACfhB,EAAOW,MACVN,WAAW,WACV/C,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,gBAAgBE,SACzD,GAKN,QAASQ,GAAcC,EAAQC,GAC9BnB,EAAOoB,gBAAgBD,GAAQ,GAAO,GACtCD,EAAOG,2BAGR,QAAST,KACRZ,EAAOW,MAAO,EACdX,EAAOsB,MAAMtC,aAAegB,EAAOa,SAASU,mBAAqB,GAAKvB,EAAOsB,MAAMtC,aACnFgB,EAAOwB,eAAeC,UAGvB,QAASC,GAAmBC,GAC3B3B,EAAOpB,cAAcgD,OAAO,EAAG5B,EAAOpB,cAAciD,QACpD7B,EAAOnB,QAAQiD,QAAQ,SAAUC,GAC5BA,EAAK/B,EAAOa,SAASmB,WAAaL,GACrC3B,EAAOoB,gBAAgBW,GAAM,GAAO,KAGtC/B,EAAOwB,eAAeS,qBAGvB,QAASC,GAAcC,GACtB,MAA4C,QAAxCnC,EAAOa,SAASuB,oBACZpC,EAAOa,SAASuB,oBAAoBD,GAGrCA,EAGR,QAASE,GAAUC,GAClB,GAAIC,GAAOtC,EAASuC,KAAK,UACrBC,EAASC,SAASC,cAAc,UAChCC,EAAMH,EAAOI,WAAW,KAK5B,OAJAD,GAAIE,KAAOP,EAAKQ,IAAI,aAAeR,EAAKQ,IAAI,eAE5CH,EAAII,aAAeT,EAAKQ,IAAI,aAAeR,EAAKQ,IAAI,eACpDH,EAAIK,UAAY,UACTL,EAAIM,YAAYZ,GAAMa,MAG9B,QAASC,KACR,GAAIpD,EAAOa,SAASwC,cAAgBrD,EAAOpB,eAAiBoB,EAAOpB,cAAciD,OAAS,EAAG,CAC5F,GAAI7B,EAAOa,SAASyC,oBAAsB,EAAG,CAC5C,GAAIC,GAAe,GACfC,EAAc,EACdC,EAAoB,EACpBC,EAAazD,EAAS,GAAG0D,YAAcJ,EAAeC,EAAcC,EAEpEG,IAEJtG,SAAQwE,QAAQ9B,EAAOnB,QAAS,SAAUgF,GACzC,GAAI7D,EAAO8D,UAAUD,GAAa,CACjC,GAAIE,GAAc/D,EAAOgE,qBAAqBH,EAAY7D,EAAOa,SAASoD,aACtEC,EAAoBlE,EAAOa,SAASsD,yBAAyBJ,EAAaF,EAE9ED,GAAUQ,KAAKF,GAAqBH,MAIlC/D,EAAOpB,cAAciD,OAAS7B,EAAOa,SAASyC,sBACjDM,EAAYA,EAAUS,MAAM,EAAGrE,EAAOa,SAASyC,qBAC/CM,EAAUQ,KAAK,OAGhB,IAAIE,GAASV,EAAUW,KAAK,MACxBC,EAAQF,EAAOzC,OAAS,CAC5B,IAAgC,IAA5B5B,EAAS,GAAG0D,YACf,MAAOW,EAER,IAAIZ,GAAcrB,EAAU,OAC3B,MAAO,KAER,MAAOA,EAAUiC,GAAUZ,GACc,QAApCE,EAAUA,EAAU/B,OAAS,KAChC+B,EAAUQ,KAAK,OACfE,GAAkB,MAClBE,EAAQF,EAAOzC,OAAS,GAEzByC,EAASA,EAAOD,MAAM,EAAGG,GAASF,EAAOD,MAAMG,EAAQ,GACvDA,GAAS,CAGV,OAAOF,GAER,GAAIG,GAAgBnH,QAAQkD,UAAUR,EAAOpB,eAAiBoB,EAAOpB,cAAciD,OAAS,CAE5F,OAAsB,KAAlB4C,EACIzE,EAAO0E,MAAMC,kBAGjB3E,EAAOa,SAAS+D,qBAAuBH,IAAkBzE,EAAOnB,QAAQgD,OACpE7B,EAAO0E,MAAMG,gBAGdJ,EAAgB,IAAMzE,EAAO0E,MAAMI,wBAE3C,MAAO9E,GAAO0E,MAAMC,kBAGrB,QAASX,GAAqBlE,EAAQiF,GACrC,MAAIzH,SAAQkD,UAAUV,IAAWR,OAAO0F,UAAUC,eAAevI,KAAKoD,EAAQiF,GACtEjF,EAAOiF,GAGRG,OAGR,QAASC,KACRnF,EAAOoF,aAAY,GACnBpF,EAAOwB,eAAe6D,aAEtB,IAAIC,GAAepF,EAAQ,UAAUF,EAAOnB,QAASmB,EAAOuF,UAAUvF,EAAOsB,MAAMtC,cACnF1B,SAAQwE,QAAQwD,EAAc,SAAU9F,GACvCQ,EAAOoB,gBAAgB5B,GAAO,GAAM,KAErCQ,EAAOwB,eAAeS,qBACtBjC,EAAOwF,cAAgB,KAGxB,QAASJ,KACR,GAAIK,GAAgBC,UAAU7D,OAAS,GAAsBqD,SAAjBQ,UAAU,GAAmBA,UAAU,IAAK,CAEnFD,IACJzF,EAAOwB,eAAemE,gBAGvB3F,EAAOpB,cAAcgD,OAAO,EAAG5B,EAAOpB,cAAciD,QAC/C4D,GACJzF,EAAOwB,eAAeS,qBAEvBjC,EAAOwF,cAAgB,KAGxB,QAASpE,GAAgBD,GACxB,GAAIyE,GAAaF,UAAU7D,OAAS,GAAsBqD,SAAjBQ,UAAU,GAAmBA,UAAU,IAAK,EACjFG,EAAsBH,UAAU,GAEhCI,EAAkD,KAAzC9F,EAAOpB,cAAcmH,QAAQ5E,IAErCyE,GAAcE,GAClB9F,EAAOpB,cAAcgD,OAAO5B,EAAOpB,cAAcmH,QAAQ5E,GAAS,GAClEnB,EAAOwB,eAAewE,eAAe7E,GACjCnB,EAAOa,SAASoF,iBACnBjG,EAAOY,UAEGkF,IAA8C,IAAnC9F,EAAOa,SAASE,gBAAwBf,EAAOpB,cAAciD,OAAS7B,EAAOa,SAASE,iBAC5Gf,EAAOpB,cAAcwF,KAAKjD,GACtB0E,GACH7F,EAAOwB,eAAe0E,aAAa/E,GAEhCnB,EAAOa,SAASsF,eACnBnG,EAAOY,QAEJZ,EAAOa,SAASE,eAAiB,GAAKf,EAAOpB,cAAciD,SAAW7B,EAAOa,SAASE,gBACzFf,EAAOwB,eAAe4E,yBAEsB,IAAnCpG,EAAOa,SAASE,gBAAyB+E,GAAU9F,EAAOpB,cAAciD,SAAW7B,EAAOa,SAASE,iBAC7Gf,EAAOpB,cAAcgD,OAAO,EAAG,GAC/B5B,EAAOpB,cAAcwF,KAAKjD,GACtB0E,GACH7F,EAAOwB,eAAe0E,aAAa/E,GAEhCnB,EAAOa,SAASsF,eACnBnG,EAAOY,SAGLiF,GACH7F,EAAOwB,eAAeS,qBAEvBjC,EAAOwF,cAAgB,KAGxB,QAAS1B,GAAU3C,GAClB,MAAgD,KAAzCnB,EAAOpB,cAAcmH,QAAQ5E,GAGrC,QAASkF,GAAYC,GACpB,GAAIC,GAAcjJ,QAAQe,QAAQiI,EAAM3G,QAAQvB,QAC5CoI,EAAa,OACbC,EAASH,EAAM3G,OAAO+G,UAC1B,IAAK1G,EAAOa,SAASC,iBAGrB,GAAsB,KAAlBwF,EAAMK,SAAoC,KAAlBL,EAAMK,QAEjCL,EAAMM,iBACFL,EAAYpF,OACfnB,EAAOoB,gBAAgBmF,EAAYpF,QAAQ,GAAO,GACpB,gBAApBmF,EAAM3G,OAAOnD,GACvBwD,EAAOoF,cACuB,cAApBkB,EAAM3G,OAAOnD,IACvBwD,EAAOmF,gBAEF,IAAsB,KAAlBmB,EAAMK,QAAgB,CAMhC,IAJAL,EAAMM,iBACFH,EAAOI,yBACVL,EAAaC,EAAOI,uBAAuBtG,cAAc,MAAQkG,EAAOI,uBAAuBtG,cAAc,WAEtGiG,GAAgBC,GACvBA,EAASA,EAAOI,uBACZJ,IACHD,EAAaC,EAAOlG,cAAc,MAAQkG,EAAOlG,cAAc,SAG7DiG,IACHA,EAAW/F,YAEN,IAAsB,KAAlB6F,EAAMK,QAAgB,CAMhC,IAJAL,EAAMM,iBACFH,EAAOK,qBACVN,EAAaC,EAAOK,mBAAmBvG,cAAc,MAAQkG,EAAOK,mBAAmBvG,cAAc,WAE9FiG,GAAgBC,GACvBA,EAASA,EAAOK,mBACZL,IACHD,EAAaC,EAAOlG,cAAc,MAAQkG,EAAOlG,cAAc,SAG7DiG,IACHA,EAAW/F,YAEgB,MAAlB6F,EAAMK,UAChBL,EAAMM,iBAEN5G,EAAOU,kBAIT,QAASqG,GAAqBT,GAC7B,GAAIG,GAASH,EAAM3G,OAAO+G,WAAWA,WACjCF,EAAa,MACjB,IAAKxG,EAAOa,SAASC,iBAGrB,GAAsB,IAAlBwF,EAAMK,SAAmC,KAAlBL,EAAMK,QAEhCL,EAAMM,iBACNxG,QACM,IAAsB,KAAlBkG,EAAMK,QAAgB,CAKhC,IAJAL,EAAMM,iBACFH,EAAOI,yBACVL,EAAaC,EAAOI,uBAAuBtG,cAAc,MAAQkG,EAAOI,uBAAuBtG,cAAc,WAEtGiG,GAAgBC,GACvBA,EAASA,EAAOI,uBACZJ,IACHD,EAAaC,EAAOlG,cAAc,MAAQkG,EAAOlG,cAAc,SAG7DiG,IACHA,EAAW/F,YAEgB,MAAlB6F,EAAMK,UAChBL,EAAMM,iBAEN5G,EAAOU,kBAIT,QAASsG,GAAcV,EAAOtH,GAC7B,GAAIsG,GAAe,MACdtF,GAAOa,SAASC,kBAGC,KAAlBwF,EAAMK,UAC8B,IAAnC3G,EAAOa,SAASE,gBAAwBf,EAAOa,SAASG,cAC3DsE,EAAepF,EAAQ,UAAUF,EAAOnB,QAASmB,EAAOuF,UAAUvG,IACtC,IAAxBsG,EAAazD,QAChB7B,EAAOoB,gBAAgBkE,EAAa,IAAI,GAAO,IAEtCtF,EAAOa,SAASG,cAC1BhB,EAAOmF,aAKV,QAASI,GAAUvG,GAClB,GAAIiI,KAEJ,OADAA,GAAOjH,EAAOa,SAASqG,aAAelI,EAC/BiI,EAGR,QAASE,GAAajG,GACjBA,GACHA,EAAOkG,kBAERpH,EAAOa,SAASG,cAAgBhB,EAAOa,SAASG,aAC3ChB,EAAOa,SAASG,eACpBhB,EAAOsB,MAAMtC,aAAe,IAI9B,QAASqI,KACHrH,EAAOa,SAASC,kBAGC,KAAlBwF,MAAMK,UACT3G,EAAOmH,eACHnH,EAAOa,SAASG,aACnBX,WAAW,WACV/C,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,gBAAgBE,SACzD,GAEHL,KAKH,QAASkH,GAAcC,EAASC,GAC/B,GAAIlK,QAAQmK,YAAYD,GACvB,MAAO,EAER,IAAIlK,QAAQmK,YAAYF,GACvB,MAAO,EAER,IAAqB,WAAjBA,EAAQG,MAAsC,WAAjBF,EAAQE,KACxC,MAAOH,GAAQ/C,MAAQgD,EAAQhD,MAAQ,GAAK,CAE7C,IAAImD,GAAKJ,EAAQ/H,MACboI,EAAKJ,EAAQhI,KAEjB,OAAIQ,GAAOa,SAASmB,SACf2F,EAAG3H,EAAOa,SAASmB,WAAa4F,EAAG5H,EAAOa,SAASmB,SAClD2F,EAAG3H,EAAOa,SAASmB,SAAW4F,EAAG5H,EAAOa,SAASmB,SAC7C,EAED,GAGJhC,EAAOa,SAASgH,eAIhB7H,EAAO8D,UAAU6D,KAAQ3H,EAAO8D,UAAU8D,IAAO5H,EAAO8D,UAAU6D,IAAO3H,EAAO8D,UAAU8D,GACvF5H,EAAOnB,QAAQkH,QAAQ4B,GAAM3H,EAAOnB,QAAQkH,QAAQ6B,GAAM,GAAK,EAEnE5H,EAAO8D,UAAU6D,GACb,GAED,EATC3H,EAAOnB,QAAQkH,QAAQ4B,GAAM3H,EAAOnB,QAAQkH,QAAQ6B,GAAM,GAAK,EAhexE,GAAIE,GAAmB7H,EAAS8H,WAAW,GACvCvG,GACH0E,aAAc5I,QAAQ0K,KACtBhC,eAAgB1I,QAAQ0K,KACxB3C,YAAa/H,QAAQ0K,KACrBrC,cAAerI,QAAQ0K,KACvBC,WAAY3K,QAAQ0K,KACpB5B,sBAAuB9I,QAAQ0K,KAC/B/F,mBAAoB3E,QAAQ0K,KAC5BvG,QAASnE,QAAQ0K,MAGdnH,GACHwC,cAAc,EACd6E,YAAY,EACZC,iBAAkB,QAClBC,aAAa,EACbnE,YAAa,QACbjD,cAAc,EACdO,oBAAoB,EACpBR,eAAgB,EAChBsH,cAAc,EACdC,gBAAgB,EAChBC,wBAAwB,EACxBpC,eAAe,EACfqC,cAAe,kBACfvC,iBAAiB,EACjBjE,QAASkD,OACTuD,YAAY,EACZrG,oBAAqB,KACrBkB,oBAAqB,EACrBa,yBAA0B7G,QAAQ0K,KAClCU,aAAa,EACbb,eAAe,EACf/G,kBAAkB,EAClBhD,SAAU,yDACVoJ,YAAa,IACbtC,qBAAqB,GAGlBF,GACHiE,SAAU,YACVC,WAAY,cACZC,eAAgB,UAChBC,YAAa,IACbC,kBAAmB,YACnBpE,kBAAmB,SACnBG,wBAAyB,UACzBkE,cAAe,iBACfhI,aAAc,gBACdiI,YAAa,cACbpE,gBAAiB,OAGdvD,GACHtC,aAAcgB,EAAOhB,cAAgB,GAGtC1B,SAAQ4L,OAAOrI,EAAUb,EAAOlB,mBAChCxB,QAAQ4L,OAAO1H,EAAgBxB,EAAOjB,YACtCzB,QAAQ4L,OAAOxE,EAAO1E,EAAOf,kBAEzB4B,EAASuH,aACZjI,EAAUgJ,GAAG,QAAS,SAAUC,GAC/B,GAAIpJ,EAAOW,KAAM,CAIhB,IAHA,GAAIhB,GAASyJ,EAAEzJ,OAAO0J,cAClBC,GAAc,EAEXhM,QAAQkD,UAAUb,IAAsB,OAAXA,IAAoB2J,GACjD3J,EAAO4J,UAAUC,OAAS/J,EAASE,EAAO4J,UAAUC,MAAM,KAAM,wBAA0BF,GAC3F3J,IAAWmI,IACdwB,GAAc,GAGhB3J,EAASA,EAAO0J,aAGZC,IACJtJ,EAAOyJ,OAAO,WACbzJ,EAAOY,aAOZtD,QAAQ4L,OAAOlJ,GACdU,eAAgBA,EAChBO,cAAeA,EACfO,eAAgBA,EAChBX,SAAUA,EACV6D,MAAOA,EACPpD,MAAOA,EACPV,MAAOA,EACPc,mBAAoBA,EACpBQ,cAAeA,EACfkB,cAAeA,EACfY,qBAAsBA,EACtBmB,UAAWA,EACXC,YAAaA,EACbhE,gBAAiBA,EACjB0C,UAAWA,EACXuC,YAAaA,EACbU,qBAAsBA,EACtBC,cAAeA,EACfzB,UAAWA,EACX4B,aAAcA,EACdE,oBAAqBA,EACrBC,cAAeA,IAGhBtH,EAAOwB,eAAeyG,aA/IvBlI,EAA8B2J,SAAW,SAAU,WAAY,UAAW,aAC1EpK,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkByD,GA2gBb,SAASxD,EAAQD,EAASH,GAE/B,YAWA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAEvF,QAAS4M,KACR,GAAIpM,IACH8B,YAAa,8BACbD,WAAYjC,EAAAA,WAGb,OAAOI,GAjBR+B,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkBqN,CAElB,IAAIzM,GAAQf,EAAoB,GAE5BgB,EAASL,EAAuBI,IAe/B,SAASX,EAAQD,GAEtB,YAMA,SAASsN,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCAJhHzK,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,GAiBR,IAAIwK,GAAiB,QAASA,GAAehK,EAAQiK,GACpD,UAEAL,GAAgBM,KAAMF,GAEtBhK,EAAOmK,SAAU,EACjBnK,EAAOoK,aACPpK,EAAOqK,UAAY,QAAS,OAAQ,SACpCrK,EAAOsK,cACNC,eAAgB,GAChBxJ,eAAgB,EAChBuC,oBAAqB,EACrBuE,eAAe,EACf/J,SAAU,aACVqG,yBAA0B,SAAkCqG,EAAMrJ,GACjE,MAAOA,KAGTnB,EAAOyK,YACNxI,mBAAoB,WAEnBgI,EAAKS,MAAM,2BAIb1K,EAAO2K,iBACP3K,EAAO4K,eAAkBpO,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE5F7K,EAAO8K,iBACP9K,EAAO+K,eAAkBvO,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOgL,kBAAqB/G,YAAa,MAEzCjE,EAAOiL,iBACPjL,EAAOkL,eAAkB1O,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOmL,oBACPnL,EAAOoL,qBAAwBzG,kBAAmB,gBAElD3E,EAAOqL,eAAkB7O,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOsL,eAAiBtL,EAAOqL,aAAa,GAAIrL,EAAOqL,aAAa,IACpErL,EAAOuL,oBAEPvL,EAAOwL,iBACPxL,EAAOyL,eAAkBjP,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAO0L,kBAAqBnB,eAAgB,IAC5CvK,EAAO2L,aAAe,IAEtB3L,EAAO4L,iBACP5L,EAAO6L,eAAkBrP,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAO8L,kBACNrD,YAAY,GAGbzI,EAAO+L,iBACP/L,EAAOgM,eAAkBxP,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOiM,kBAAqBjL,cAAc,GAE1ChB,EAAOkM,kBACPlM,EAAOmM,gBAAmB3P,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE7F7K,EAAOoM,mBAAsBrL,eAAgB,GAE7Cf,EAAOqM,kBACPrM,EAAOsM,gBAAmB9P,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE7F7K,EAAOuM,mBAAsBxL,eAAgB,GAE7Cf,EAAOwM,kBACPxM,EAAOyM,gBAAmBjQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,SAAU6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAExN1M,EAAO2M,mBACNvK,oBAAqB,SAA6BD,GACjD,MAAmB,MAAfA,EACI,OAED,UAGRH,QAAS,UAGVhC,EAAO4M,sBACP5M,EAAO6M,oBAAuBrQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,SAAU6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,UAAW6B,OAAQ,MAEtQ1M,EAAO8M,uBACNC,gBAAiB,IAAK,KACtB3K,oBAAqB,SAA6BD,GACjD,OAAQA,GACP,IAAK,IACJ,MAAO,MACR,KAAK,IACJ,MAAO,QACR,SACC,MAAO,UAIVH,QAAS,UAGVhC,EAAOgN,kBACPhN,EAAOiN,gBAAmBzQ,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UAEnJ7K,EAAOkN,mBACN5J,oBAAqB,EACrBa,yBAA0B,SAAkCgJ,GAC3D,MAAiB,SAAbA,EACI,UAGDA,IAITnN,EAAOoN,kBACPpN,EAAOqN,gBAAmB7Q,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,QAAWrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,QAAWrO,GAAI,GAAIqO,MAAO,SAErR7K,EAAOsN,mBACNnF,iBAAkB,QAClBD,YAAY,GAGblI,EAAOuN,kBACPvN,EAAOwN,gBAAmBhR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UAEnJ7K,EAAOyN,mBACNzM,cAAc,GAGfhB,EAAO0N,kBACP1N,EAAO2N,gBAAmBnR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UACnJ7K,EAAO4N,mBACNlF,aAAa,GAGd1I,EAAO6N,kBACP7N,EAAO8N,gBAAmBtR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UACnJ7K,EAAO+N,mBACNjN,kBAAkB,GAGnBd,EAAOgO,kBACPhO,EAAOiO,gBAAmBzR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UACnJ7K,EAAOkO,mBACNpN,kBAAkB,EAClBE,cAAc,EACdD,eAAgB,GAGjBf,EAAOmO,kBACPnO,EAAOoO,gBAAmB5R,GAAI,EAAGoB,KAAM,UAAapB,GAAI,EAAGoB,KAAM,SAAYpB,GAAI,EAAGoB,KAAM,SAAYpB,GAAI,EAAGoB,KAAM,WAAcpB,GAAI,EAAGoB,KAAM,UAC9IoC,EAAOqO,mBACNvQ,SAAU,0BAGXkC,EAAOsO,kBACPtO,EAAOuO,gBAAmB/R,GAAI,EAAGqO,MAAO,QAAS2D,IAAK,KAAQhS,GAAI,EAAGqO,MAAO,OAAQ2D,IAAK,KAAQhS,GAAI,EAAGqO,MAAO,QAAS2D,IAAK,KAC7HxO,EAAOyO,mBACNvH,YAAa,MACblG,cAAc,GAGfhB,EAAO0O,kBACP1O,EAAO2O,gBAAmBnS,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC7F7K,EAAO4O,mBACNrG,wBAAwB,GAGzBvI,EAAO6O,wBACP7O,EAAO8O,sBAAyBtS,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UACnG7K,EAAO+O,yBACN/N,cAAc,EACdF,kBAAkB,GAGnBd,EAAOgP,iBACPhP,EAAOiP,eAAkBzS,GAAI,EAAGqO,MAAO,QAAS3L,UAAU,IAAU1C,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE5G7K,EAAOkP,sBACPlP,EAAOmP,oBAAuB3S,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UACjG7K,EAAOoP,uBACNvH,eAAe,GAGhB7H,EAAOqP,eACPrP,EAAOsP,YAAc,QAAS,OAAQ,SACtCtP,EAAOuP,gBACNzR,SAAU,aACVqG,yBAA0B,SAAkCqG,EAAMrJ,GACjE,MAAOA,KAITnB,EAAOwP,qBACPxP,EAAOyP,mBAAsBjT,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAChG7K,EAAO0P,wBAER1F,GAAeN,SAAW,SAAU,QAEpCpN,EAAAA,WAAkB0N,GAIb,SAASzN,EAAQD,GAEtB,YAMA,SAASqT,KACR,GAAIpS,IACH8B,YAAa,kCAGd,OAAO9B,GATR+B,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkBqT,KAWnBrS,QAAQf,OAAO,uCAAuCqT,KAAK,iBAAkB,SAASC,GAAiBA,EAAeC,IAAI,oDAAoD,s9IAC9KD,EAAeC,IAAI,8BAA8B;AACjDD,EAAeC,IAAI,kCAAkC","file":"scripts/app.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/maps/scripts/vendor.js.map b/docs/maps/scripts/vendor.js.map index 426a5cfe..bf9ed38a 100644 --- a/docs/maps/scripts/vendor.js.map +++ b/docs/maps/scripts/vendor.js.map @@ -1 +1 @@ -{"version":3,"sources":["scripts/vendor.js"],"names":["global","factory","module","exports","document","w","Error","window","this","noGlobal","DOMEval","code","doc","script","createElement","text","head","appendChild","parentNode","removeChild","isArrayLike","obj","length","type","jQuery","isWindow","nodeName","elem","name","toLowerCase","winnow","elements","qualifier","not","isFunction","grep","i","call","nodeType","indexOf","risSimple","test","filter","sibling","cur","dir","createOptions","options","object","each","match","rnothtmlwhite","_","flag","Identity","v","Thrower","ex","adoptValue","value","resolve","reject","noValue","method","promise","done","fail","then","apply","undefined","slice","completed","removeEventListener","ready","Data","expando","uid","getData","data","rbrace","JSON","parse","dataAttr","key","replace","rmultiDash","getAttribute","e","dataUser","set","adjustCSS","prop","valueParts","tween","adjusted","scale","maxIterations","currentValue","css","initial","unit","cssNumber","initialInUnit","rcssNum","exec","style","start","end","getDefaultDisplay","temp","ownerDocument","display","defaultDisplayMap","body","showHide","show","values","index","dataPriv","get","isHiddenWithinTree","getAll","context","tag","ret","getElementsByTagName","querySelectorAll","merge","setGlobalEval","elems","refElements","l","buildFragment","scripts","selection","ignored","tmp","wrap","contains","j","fragment","createDocumentFragment","nodes","rhtml","rtagName","wrapMap","_default","innerHTML","htmlPrefilter","lastChild","childNodes","firstChild","textContent","push","createTextNode","inArray","rscriptType","returnTrue","returnFalse","safeActiveElement","activeElement","err","on","types","selector","fn","one","origFn","event","off","arguments","guid","add","manipulationTarget","content","disableScript","restoreScript","rscriptTypeMasked","removeAttribute","cloneCopyEvent","src","dest","pdataOld","pdataCur","udataOld","udataCur","events","hasData","access","handle","extend","fixInput","rcheckableType","checked","defaultValue","domManip","collection","args","callback","concat","first","hasScripts","node","iNoClone","support","checkClone","rchecked","self","eq","html","map","clone","_evalUrl","rcleanScript","remove","keepData","cleanData","curCSS","computed","width","minWidth","maxWidth","getStyles","getPropertyValue","pixelMarginRight","rnumnonpx","rmargin","addGetHookIf","conditionFn","hookFn","vendorPropName","emptyStyle","capName","toUpperCase","cssPrefixes","finalPropName","cssProps","setPositiveNumber","subtract","matches","Math","max","augmentWidthOrHeight","extra","isBorderBox","styles","val","cssExpand","getWidthOrHeight","valueIsBorderBox","boxSizingReliable","parseFloat","Tween","easing","prototype","init","schedule","inProgress","hidden","requestAnimationFrame","setTimeout","fx","interval","tick","createFxNow","fxNow","now","genFx","includeWidth","which","attrs","height","opacity","createTween","animation","Animation","tweeners","defaultPrefilter","props","opts","toggle","hooks","oldfire","propTween","restoreDisplay","isBox","anim","orig","dataShow","queue","_queueHooks","unqueued","empty","fire","always","rfxtypes","isEmptyObject","overflow","overflowX","overflowY","propFilter","specialEasing","camelCase","Array","isArray","cssHooks","expand","properties","result","stopped","prefilters","deferred","Deferred","currentTime","remaining","startTime","duration","percent","tweens","run","notifyWith","resolveWith","originalProperties","originalOptions","stop","gotoEnd","rejectWith","proxy","progress","complete","timer","stripAndCollapse","tokens","join","getClass","buildParams","prefix","traditional","rbracket","addToPrefiltersOrTransports","structure","dataTypeExpression","func","dataType","dataTypes","unshift","inspectPrefiltersOrTransports","jqXHR","inspect","selected","inspected","prefilterOrFactory","dataTypeOrTransport","seekingTransport","transports","ajaxExtend","target","deep","flatOptions","ajaxSettings","ajaxHandleResponses","s","responses","ct","finalDataType","firstDataType","contents","shift","mimeType","getResponseHeader","converters","ajaxConvert","response","isSuccess","conv2","current","conv","prev","responseFields","dataFilter","split","state","error","arr","getProto","Object","getPrototypeOf","class2type","toString","hasOwn","hasOwnProperty","fnToString","ObjectFunctionString","version","rtrim","rmsPrefix","rdashAlpha","fcamelCase","all","letter","jquery","constructor","toArray","num","pushStack","prevObject","last","len","sort","splice","copy","copyIsArray","isPlainObject","random","isReady","msg","noop","isNumeric","isNaN","proto","Ctor","globalEval","string","trim","makeArray","results","second","invert","callbackInverse","callbackExpect","arg","Date","Symbol","iterator","Sizzle","seed","m","nid","groups","newSelector","newContext","preferredDoc","setDocument","documentIsHTML","rquickExpr","getElementById","id","getElementsByClassName","qsa","compilerCache","rbuggyQSA","rcssescape","fcssescape","setAttribute","tokenize","toSelector","rsibling","testContext","qsaError","select","createCache","cache","keys","Expr","cacheLength","markFunction","assert","el","addHandle","handler","attrHandle","siblingCheck","a","b","diff","sourceIndex","nextSibling","createInputPseudo","createButtonPseudo","createDisabledPseudo","disabled","isDisabled","disabledAncestor","createPositionalPseudo","argument","matchIndexes","setFilters","addCombinator","matcher","combinator","base","skip","next","checkNonElements","doneName","xml","oldCache","uniqueCache","outerCache","newCache","dirruns","uniqueID","elementMatcher","matchers","multipleContexts","contexts","condense","unmatched","newUnmatched","mapped","setMatcher","preFilter","postFilter","postFinder","postSelector","preMap","postMap","preexisting","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","relative","implicitRelative","matchContext","matchAnyContext","outermostContext","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","find","dirrunsUnique","pop","uniqueSort","getText","isXML","compile","sortInput","hasDuplicate","docElem","rbuggyMatches","classCache","tokenCache","sortOrder","push_native","list","booleans","whitespace","identifier","attributes","pseudos","rwhitespace","RegExp","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","runescape","funescape","escaped","escapedWhitespace","high","String","fromCharCode","ch","asCodePoint","charCodeAt","unloadHandler","els","documentElement","hasCompare","subWindow","defaultView","top","addEventListener","attachEvent","className","createComment","getById","getElementsByName","attrId","getAttributeNode","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","expr","attr","specified","escape","sel","duplicates","detectDuplicates","sortStable","nodeValue","selectors","createPseudo",">"," ","+","~","excess","unquoted","nodeNameSelector","pattern","operator","check","what","simple","forward","ofType","nodeIndex","parent","useCache","pseudo","idx","matched","has","innerText","lang","elemLang","hash","location","root","focus","hasFocus","href","tabIndex","enabled","selectedIndex","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","soFar","preFilters","cached","token","compiled","unique","isXMLDoc","escapeSelector","until","truncate","is","siblings","n","rneedsContext","rsingleTag","rootjQuery","parseHTML","rparentsprev","guaranteedUnique","children","targets","closest","prevAll","addBack","parents","parentsUntil","nextAll","nextUntil","prevUntil","contentDocument","reverse","Callbacks","firing","memory","fired","locked","firingIndex","once","stopOnFalse","disable","lock","fireWith","tuples","catch","pipe","fns","newDefer","tuple","returned","notify","onFulfilled","onRejected","onProgress","depth","special","that","mightThrow","maxDepth","TypeError","process","exceptionHook","stackTrace","getStackHook","stateString","when","singleValue","resolveContexts","resolveValues","master","updateFunc","rerrorNames","stack","console","warn","message","readyException","readyList","readyWait","wait","readyState","doScroll","chainable","emptyGet","raw","bulk","acceptData","owner","defineProperty","configurable","removeData","_data","_removeData","dequeue","startLength","setter","clearQueue","count","defer","pnum","source","swap","old","hide","option","thead","col","tr","td","optgroup","tbody","tfoot","colgroup","caption","th","div","cloneNode","noCloneChecked","rkeyEvent","rmouseEvent","rtypenamespace","handleObjIn","eventHandle","t","handleObj","handlers","namespaces","origType","elemData","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","nativeEvent","handlerQueue","fix","delegateTarget","preDispatch","isPropagationStopped","currentTarget","isImmediatePropagationStopped","rnamespace","preventDefault","stopPropagation","postDispatch","matchedHandlers","matchedSelectors","addProp","hook","Event","enumerable","originalEvent","writable","load","noBubble","trigger","blur","click","beforeunload","returnValue","isDefaultPrevented","defaultPrevented","relatedTarget","timeStamp","isSimulated","stopImmediatePropagation","altKey","bubbles","cancelable","changedTouches","ctrlKey","detail","eventPhase","metaKey","pageX","pageY","shiftKey","view","char","charCode","keyCode","buttons","clientX","clientY","offsetX","offsetY","pointerId","pointerType","screenX","screenY","targetTouches","toElement","touches","mouseenter","mouseleave","pointerenter","pointerleave","related","rxhtmlTag","rnoInnerhtml","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","detach","append","prepend","insertBefore","before","after","replaceWith","replaceChild","appendTo","prependTo","insertAfter","replaceAll","original","insert","opener","getComputedStyle","computeStyleTests","cssText","container","divStyle","pixelPositionVal","reliableMarginLeftVal","marginLeft","boxSizingReliableVal","marginRight","pixelMarginRightVal","backgroundClip","clearCloneStyle","pixelPosition","reliableMarginLeft","rdisplayswap","rcustomProp","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","animationIterationCount","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","float","origName","isCustomProp","setProperty","isFinite","getClientRects","getBoundingClientRect","left","margin","padding","border","suffix","expanded","parts","propHooks","eased","pos","step","scrollTop","scrollLeft","linear","p","swing","cos","PI","rrun","*","tweener","prefilter","speed","opt","speeds","fadeTo","to","animate","optall","doAnimation","finish","stopQueue","timers","cssFn","slideDown","slideUp","slideToggle","fadeIn","fadeOut","fadeToggle","slow","fast","delay","time","timeout","clearTimeout","checkOn","optSelected","radioValue","boolHook","removeAttr","nType","attrHooks","attrNames","getter","lowercaseName","rfocusable","rclickable","removeProp","propFix","tabindex","parseInt","for","class","addClass","classes","curValue","clazz","finalValue","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","valHooks","optionSet","rfocusMorph","onlyHandlers","bubbleType","ontype","eventPath","isTrigger","parentWindow","simulate","triggerHandler","hover","fnOver","fnOut","focusin","attaches","nonce","rquery","parseXML","DOMParser","parseFromString","rCRLF","rsubmitterTypes","rsubmittable","param","valueOrFunction","encodeURIComponent","serialize","serializeArray","r20","rhash","rantiCache","rheaders","rlocalProtocol","rnoContent","rprotocol","allTypes","originAnchor","active","lastModified","etag","url","isLocal","protocol","processData","async","contentType","accepts","json","* text","text html","text json","text xml","ajaxSetup","settings","ajaxPrefilter","ajaxTransport","ajax","status","nativeStatusText","headers","success","modified","statusText","timeoutTimer","transport","responseHeadersString","ifModified","cacheURL","callbackContext","statusCode","fireGlobals","globalEventContext","completeDeferred","responseHeaders","urlAnchor","uncached","requestHeaders","requestHeadersNames","strAbort","getAllResponseHeaders","setRequestHeader","overrideMimeType","abort","finalText","crossDomain","host","hasContent","beforeSend","send","getJSON","getScript","throws","wrapAll","firstElementChild","wrapInner","unwrap","visible","offsetWidth","offsetHeight","xhr","XMLHttpRequest","xhrSuccessStatus","0","1223","xhrSupported","cors","errorCallback","open","username","xhrFields","onload","onerror","onabort","onreadystatechange","responseType","responseText","binary","text script","charset","scriptCharset","evt","oldCallbacks","rjsonp","jsonp","jsonpCallback","originalSettings","callbackName","overwritten","responseContainer","jsonProp","createHTMLDocument","implementation","keepScripts","parsed","params","animated","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","using","rect","win","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","parentOffset","scrollTo","Height","Width","","defaultExtra","funcName","bind","unbind","delegate","undelegate","holdReady","hold","parseJSON","define","amd","_jQuery","_$","$","noConflict","minErr","ErrorConstructor","paramPrefix","SKIP_INDEXES","templateArgs","template","shiftedIndex","toDebugString","isString","jqLite","isNumber","item","forEach","isPrimitive","isBlankObject","forEachSorted","reverseParams","iteratorFn","nextUid","setHashKey","h","$$hashKey","baseExtend","dst","objs","ii","isObject","jj","isDate","valueOf","isRegExp","isElement","toInt","str","inherit","create","identity","valueFn","hasCustomToString","isUndefined","isDefined","isScope","$evalAsync","$watch","isFile","isFormData","isBlob","isBoolean","isPromiseLike","isTypedArray","TYPED_ARRAY_REGEXP","isArrayBuffer","makeMap","items","nodeName_","element","lowercase","arrayRemove","array","destination","copyRecurse","copyElement","stackSource","stackDest","ngMinErr","needsRecurse","copyType","buffer","byteOffset","copied","ArrayBuffer","byteLength","Uint8Array","re","lastIndex","equals","o1","o2","keySet","t1","t2","getTime","createMap","charAt","array1","array2","sliceArgs","startIndex","curryArgs","toJsonReplacer","toJson","pretty","stringify","fromJson","timezoneToOffset","timezone","fallback","ALL_COLONS","requestedTimezoneOffset","isNumberNaN","addDateMinutes","date","minutes","setMinutes","getMinutes","convertTimezoneToLocal","dateTimezoneOffset","getTimezoneOffset","timezoneOffset","startingTag","elemHtml","NODE_TYPE_TEXT","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","splitPoint","substring","toKeyValue","arrayValue","encodeUriQuery","encodeUriSegment","pctEncodeSpaces","getNgAttribute","ngAttr","ngAttrPrefixes","allowAutoBootstrap","currentScript","link","origin","angularInit","bootstrap","appElement","config","hasAttribute","candidate","querySelector","isAutoBootstrapAllowed","strictDi","modules","defaultConfig","doBootstrap","injector","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","scope","$apply","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","angular","resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","reload","getTestability","rootElement","snake_case","separator","SNAKE_CASE_REGEXP","bindJQuery","originalCleanData","bindJQueryFired","jqName","jq","JQLitePrototype","isolateScope","controller","inheritedData","$destroy","JQLite","assertArg","reason","assertArgFn","acceptArrayAnnotation","assertNotHasOwnProperty","path","bindFnToScope","lastInstance","getBlockNodes","blockNodes","endNode","setupModuleLoader","ensure","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","insertMethod","invokeQueue","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","decorator","directive","component","block","shallowCopy","serializeObject","seen","publishExternalAPI","uppercase","callbacks","$$counter","$$csp","csp","angularModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","htmlAnchorDirective","inputDirective","textarea","form","formDirective","scriptDirective","selectDirective","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$animateCss","$CoreAnimateCssProvider","$$animateJs","$$CoreAnimateJsProvider","$$animateQueue","$$CoreAnimateQueueProvider","$$AnimateRunner","$$AnimateRunnerFactoryProvider","$$animateAsyncRun","$$AnimateAsyncRunFactoryProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$$forceReflow","$$ForceReflowProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpParamSerializer","$HttpParamSerializerProvider","$httpParamSerializerJQLike","$HttpParamSerializerJQLikeProvider","$httpBackend","$HttpBackendProvider","$xhrFactory","$xhrFactoryProvider","$jsonpCallbacks","$jsonpCallbacksProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$jqLite","$$jqLiteProvider","$$HashMap","$$HashMapProvider","$$cookieReader","$$CookieReaderProvider","jqNextId","jqId","SPECIAL_CHARS_REGEXP","MOZ_HACK_REGEXP","jqLiteIsTextNode","HTML_REGEXP","jqLiteAcceptsData","NODE_TYPE_ELEMENT","NODE_TYPE_DOCUMENT","jqLiteHasData","jqCache","ng339","jqLiteCleanData","jqLiteRemoveData","jqLiteBuildFragment","TAG_NAME_REGEXP","XHTML_TAG_REGEXP","jqLiteParseHTML","SINGLE_TAG_REGEXP","jqLiteWrapNode","wrapper","argIsString","jqLiteMinErr","jqLiteAddNodes","jqLiteClone","jqLiteDealoc","onlyDescendants","descendants","jqLiteOff","unsupported","expandoStore","jqLiteExpandoStore","removeHandler","listenerFns","removeEventListenerFn","MOUSE_EVENT_MAP","expandoId","createIfNecessary","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","jqLiteRemoveClass","cssClasses","cssClass","jqLiteAddClass","existingClasses","jqLiteController","jqLiteInheritedData","names","NODE_TYPE_DOCUMENT_FRAGMENT","jqLiteEmpty","jqLiteRemove","jqLiteDocumentLoaded","action","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","getAliasedAttrName","ALIASED_ATTR","createEventHandler","eventHandler","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","handlerWrapper","specialHandlerWrapper","defaultHandlerWrapper","specialMouseHandlerWrapper","jqLiteContains","$get","hashKey","nextUidFn","objType","HashMap","isolatedUid","put","stringifyFn","Function","extractArgs","fnText","STRIP_COMMENTS","ARROW_ARG","FN_ARGS","anonFn","annotate","$inject","argDecl","FN_ARG_SPLIT","FN_ARG","underscore","modulesToLoad","supportObject","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","instanceInjector","factoryFn","enforce","$injector","instanceCache","serviceName","decorFn","origProvider","orig$get","origInstance","$delegate","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","createInternalInjector","getService","caller","INSTANTIATING","injectionArgs","locals","$$annotate","isClass","msie","Type","ctor","protoInstanceInjector","autoScrollingEnabled","disableAutoScrolling","getFirstAnchor","some","getYOffset","scroll","yOffset","bottom","scrollIntoView","elemTop","scrollBy","elm","newVal","oldVal","mergeClasses","extractElementNode","ELEMENT_NODE","splitClasses","klass","prepareAnimateOptions","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","getHash","substr","cacheStateAndFireUrlChange","pendingLocation","cacheState","fireUrlChange","cachedState","getCurrentState","lastCachedState","lastBrowserUrl","lastHistoryState","urlChangeListeners","listener","history","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","baseElement","sameState","sameBase","stripHash","urlChangeInit","onUrlChange","$$applicationDestroyed","$$checkUrlChange","baseHref","timeoutId","cancel","deferId","cacheFactory","cacheId","refresh","entry","freshEnd","staleEnd","nextEntry","prevEntry","caches","size","stats","capacity","Number","MAX_VALUE","lruHash","lruEntry","removeAll","destroy","info","UNINITIALIZED_VALUE","$$sanitizeUriProvider","parseIsolateBindings","directiveName","isController","LOCAL_REGEXP","bindings","definition","scopeName","bindingCache","$compileMinErr","mode","optional","attrName","parseDirectiveBindings","bindToController","assertValidDirectiveName","getDirectiveRequire","require","REQUIRE_PREFIX_REGEXP","getDirectiveRestrict","restrict","hasDirectives","Suffix","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","EVENT_HANDLER_ATTR_REGEXP","registerDirective","directiveFactory","directives","priority","makeInjectable","tElement","tAttrs","$element","$attrs","templateUrl","ddo","controllerAs","identifierForController","transclude","aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","preAssignBindingsEnabled","TTL","onChangesTtl","commentDirectivesEnabledConfig","commentDirectivesEnabled","cssClassDirectivesEnabledConfig","cssClassDirectivesEnabled","flushOnChangesQueue","onChangesQueue","errors","Attributes","attributesToCopy","$attr","$$element","setSpecialAttr","specialAttrHolder","attribute","removeNamedItem","setNamedItem","safeAddClass","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","NOT_EMPTY","domNode","compositeLinkFn","compileNodes","$$addScopeClass","cloneConnectFn","needsNewScope","$parent","$new","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","detectNamespaceForChildElements","$linkNode","wrapTemplate","controllerName","instance","$$addScopeInfo","parentElement","nodeList","$rootElement","nodeLinkFn","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","nodeListLength","linkFns","transcludeOnThisElement","createBoundTranscludeFn","templateOnThisElement","linkFnFound","collectDirectives","applyDirectivesToNode","terminal","previousBoundTranscludeFn","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","boundSlots","$$slots","slotName","attrsMap","addDirective","directiveNormalize","nName","ngAttrName","isNgAttr","nAttrs","attrStartName","attrEndName","NG_ATTR_BINDING","PREFIX_REGEXP","multiElementMatch","MULTI_ELEMENT_DIR_RE","directiveIsMultiElement","addAttrInterpolateDirective","animVal","addTextInterpolateDirective","NODE_TYPE_COMMENT","collectCommentDirectives","byPriority","groupScan","attrStart","attrEnd","groupElementsLinkFnWrapper","linkFn","compilationGenerator","eager","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","elementControllers","scopeToChild","slotTranscludeFn","controllerScope","scopeBindingInfo","newScopeDirective","isSlotFilled","controllerDirectives","setupControllers","templateDirective","$$originalDirective","$$isolateBindings","initializeDirectiveBindings","removeWatches","$on","controllerDirective","$$bindings","bindingInfo","controllerResult","getControllers","controllerInstance","$onChanges","initialChanges","$onInit","$doCheck","$onDestroy","invokeLinkFn","$postLink","$template","directiveValue","terminalPriority","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","replaceDirective","childTranscludeFn","didScanForMultipleTransclusion","mightHaveMultipleTransclusionError","$$start","$$end","assertNoDuplicate","$$tlb","candidateDirective","scanningIndex","$$createComment","$$parentNode","slots","slotMap","filledSlots","elementSelector","filled","$$newScope","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectiveScope","mergeTemplateAttributes","compileTemplateUrl","inheritType","dataName","property","controllerKey","$scope","$transclude","newScope","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","linkQueue","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","ignoreChildLinkFn","previousDirective","wrapModuleNameIfDefined","moduleName","interpolateFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","$$addBindingInfo","expressions","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","trustedContext","mustHaveExpression","allOrNothing","$$observers","newValue","$$inter","$$scope","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","annotation","recordChanges","previousValue","$$postDigest","changes","triggerOnChangesHook","SimpleChange","removeWatchCollection","lastValue","parentGet","parentSet","removeWatch","$observe","_UNINITIALIZED_VALUE","literal","assign","parentValueWatch","parentValue","$stateful","$watchCollection","deepWatch","initialValue","SIMPLE_ATTR_NAME","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","comment","previous","str1","str2","tokens1","tokens2","outer","jqNodes","ident","CNTRL_REG","globals","register","allowGlobals","addIdentifier","expression","later","$controllerMinErr","controllerPrototype","exception","cause","serializeValue","toISOString","toSerialize","topLevel","defaultHttpResponseTransform","tempData","JSON_PROTECTION_PREFIX","APPLICATION_JSON","isJsonLike","jsonStart","JSON_START","JSON_ENDS","parseHeaders","fillInParsed","line","headerVal","headerKey","headersGetter","headersObj","transformData","defaults","transformResponse","transformRequest","d","common","Accept","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","paramSerializer","useApplyAsync","useLegacyPromise","useLegacyPromiseExtensions","interceptorFactories","interceptors","requestConfig","chainInterceptors","thenFn","rejectFn","executeHeaderFns","headerContent","processedHeaders","headerFn","mergeHeaders","defHeaderName","lowercaseDefHeaderName","reqHeaderName","defHeaders","reqHeaders","defaultHeadersIteration","serverRequest","reqData","withCredentials","sendReq","resp","requestInterceptors","responseInterceptors","reversedInterceptors","interceptor","request","requestError","responseError","$httpMinErrLegacyFn","createShortMethods","createShortMethodsWithData","createApplyHandlers","eventHandlers","applyHandlers","callEventHandler","$applyAsync","$$phase","headersString","resolveHttpPromise","resolvePromise","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","defaultCache","xsrfValue","urlIsSameOrigin","uploadEventHandlers","serializedParams","interceptorFactory","createHttpBackend","createXhr","$browserDefer","rawDocument","jsonpReq","callbackPath","wasCalled","addEventListenerFn","timeoutRequest","jsonpDone","completeRequest","createCallback","getResponse","removeCallback","urlResolve","ontimeout","upload","unescapeText","escapedStartRegexp","escapedEndRegexp","constantWatchDelegate","objectEquality","constantInterp","unwatch","parseStringifyInterceptor","getValue","$interpolateMinErr","interr","unescapedText","exp","$$watchDelegate","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","endSymbolLength","throwNoconcat","compute","getTrusted","$watchGroup","oldValues","currValue","invokeApply","hasParams","iteration","setInterval","clearInterval","skipApply","$$intervalId","intervals","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","DOUBLE_SLASH_REGEX","$locationMinErr","prefixed","$$path","pathname","$$search","search","$$hash","startsWith","stripBaseUrl","trimEmptyHash","stripFile","lastIndexOf","serverBase","LocationHtml5Url","appBase","appBaseNoFile","basePrefix","$$html5","$$parse","pathUrl","$$compose","$$url","$$absUrl","$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","removeWindowsDriveName","firstPathSegmentMatch","windowsFilePathExp","withoutHashUrl","withoutBaseUrl","LocationHashbangInHtml5Url","locationGetter","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","IGNORE_URI_REGEXP","absHref","initializing","newUrl","newState","$digest","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","formatError","sourceURL","consoleLog","logFn","log","hasApply","arg1","arg2","ensureSafeMemberName","fullExpression","$parseMinErr","getStringValue","ensureSafeObject","ensureSafeFunction","CALL","APPLY","BIND","ensureSafeAssignContext","ARRAY_CTOR","BOOLEAN_CTOR","FUNCTION_CTOR","NUMBER_CTOR","OBJECT_CTOR","STRING_CTOR","ARRAY_CTOR_PROTO","BOOLEAN_CTOR_PROTO","FUNCTION_CTOR_PROTO","NUMBER_CTOR_PROTO","OBJECT_CTOR_PROTO","STRING_CTOR_PROTO","ifDefined","plusFn","r","isStateless","filterName","findConstantAndWatchExpressions","ast","allConstants","argsToWatch","isStatelessFilter","AST","Program","Literal","toWatch","UnaryExpression","BinaryExpression","right","LogicalExpression","ConditionalExpression","alternate","consequent","Identifier","MemberExpression","CallExpression","callee","AssignmentExpression","ArrayExpression","ObjectExpression","ThisExpression","LocalsExpression","getInputs","lastExpression","isAssignable","assignableAST","NGValueParameter","isLiteral","isConstant","ASTCompiler","astBuilder","ASTInterpreter","isPossiblyDangerousMemberName","getValueOf","objectValueOf","identStart","identContinue","cacheDefault","cacheExpensive","literals","true","false","null","addLiteral","literalName","literalValue","setIdentifierFns","identifierStart","identifierContinue","interceptorFn","expensiveChecks","parsedExpression","oneTime","cacheKey","runningChecksEnabled","parseOptions","$parseOptionsExpensive","$parseOptions","lexer","Lexer","parser","Parser","oneTimeLiteralWatchDelegate","oneTimeWatchDelegate","inputs","inputsWatchDelegate","expensiveChecksInterceptor","addInterceptor","expensiveCheckFn","expensiveCheckOldValue","expressionInputDirtyCheck","oldValueOfValue","prettyPrintExpression","lastResult","inputExpressions","oldInputValueOf","newInputValue","oldInputValueOfValues","oldInputValues","changed","isAllDefined","allDefined","watchDelegate","useInputs","regularWatch","noUnsafeEval","isIdentifierStart","isIdentifierContinue","$$runningExpensiveChecks","qFactory","nextTick","exceptionHandler","simpleBind","Promise","processQueue","pending","processScheduled","scheduleProcessQueue","handleCallback","resolver","callbackOutput","errback","progressBack","promises","counter","race","$Q","resolveFn","$qMinErr","finally","$$reject","$$resolve","rejectPromise","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","supported","createChildScopeClass","ChildScope","$$watchers","$$nextSibling","$$childHead","$$childTail","$$listeners","$$listenerCount","$$watchersCount","$id","$$ChildScope","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","destroyChildScope","$event","currentScope","cleanUpScope","$$prevSibling","$root","Scope","beginPhase","phase","clearPhase","incrementWatchersCount","decrementListenerCount","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","child","watchExp","watcher","$$digestWatchIndex","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","unwatchFn","$watchCollectionInterceptor","_value","newLength","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","internalObject","$watchCollectionAction","initRun","veryOldValue","trackVeryOldValue","changeDetector","watch","watchers","dirty","logIdx","asyncTask","ttl","watchLog","asyncQueuePosition","asyncQueue","$eval","traverseScopesLoop","postDigestQueuePosition","postDigestQueue","eventName","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","uri","isImage","normalizedVal","regex","adjustMatcher","$sceMinErr","escapeForRegexp","adjustMatchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","matchUrl","isResourceUrlAllowedByPolicy","allowed","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","trustAs","Constructor","byType","maybeTrusted","trustedValueHolderBase","htmlSanitizer","CSS","URL","JS","sce","isEnabled","parseAs","enumValue","lName","vendorPrefix","eventSupport","isChromePackagedApp","chrome","app","runtime","hasHistoryPushState","pushState","android","navigator","userAgent","boxee","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","hasEvent","divElm","httpOptions","handleRequestFn","tpl","ignoreRequestError","handleError","$templateRequestMinErr","totalPendingRequests","getTrustedResourceUrl","transformer","testability","findBindings","opt_exactMatch","dataBinding","bindingName","findModels","prefixes","attributeEquals","getLocation","setLocation","whenStable","deferreds","$$timeoutId","urlParsingNode","requestUrl","originUrl","$$CookieReader","safeGetCookie","cookie","safeDecodeURIComponent","lastCookies","lastCookieString","cookieArray","currentCookieString","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","anyPropertyKey","predicateFn","matchAgainstAnyProp","expressionType","getTypeForFilter","createPredicateFn","shouldMatchPrimitives","actual","expected","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","NUMBER_FORMATS","amount","currencySymbol","fractionSize","CURRENCY_SYM","PATTERNS","maxFrac","formatNumber","GROUP_SEP","DECIMAL_SEP","number","numStr","digits","numberOfIntegerDigits","zeros","exponent","ZERO_CHAR","MAX_DIGITS","roundNumber","parsedNumber","minFrac","fractionLen","min","roundAt","digit","k","carry","reduceRight","groupSep","decimalSep","isInfinity","isZero","abs","formattedText","integerLen","decimals","reduce","lgSize","gSize","negPre","negSuf","posPre","posSuf","padNumber","negWrap","neg","dateGetter","dateStrGetter","shortForm","standAlone","propPrefix","timeZoneGetter","zone","paddedZone","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","getThursdayThisWeek","datetime","getFullYear","getMonth","getDate","weekGetter","firstThurs","thisThurs","round","ampmGetter","getHours","AMPMS","eraGetter","ERAS","longEraGetter","ERANAMES","jsonStringToDate","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","ms","format","DATETIME_FORMATS","NUMBER_STRING","DATE_FORMATS_SPLIT","DATE_FORMATS","spacing","limit","begin","Infinity","sliceFn","processPredicates","sortPredicates","predicate","descending","objectValue","getPredicateValue","defaultCompare","v1","v2","type1","type2","value1","value2","sortPredicate","reverseOrder","compareFn","getComparisonObject","tieBreaker","predicateValues","predicates","doComparison","compareValues","ngDirective","nullFormRenameControl","control","$name","FormController","controls","$error","$$success","$pending","$dirty","$pristine","$valid","$invalid","$submitted","$$parentForm","nullFormCtrl","$rollbackViewValue","$commitViewValue","$addControl","$$renameControl","newName","oldName","$removeControl","$setValidity","addSetValidityMethod","ctrl","unset","$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","$setSubmitted","stringBasedInputType","$formatters","$isEmpty","textInputType","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","PARTIAL_VALIDATION_TYPES","PARTIAL_VALIDATION_EVENTS","validity","VALIDITY_STATE_PROPERTY","origBadInput","badInput","origTypeMismatch","typeMismatch","$render","weekParser","isoWeek","existingDate","WEEK_REGEXP","week","hours","seconds","milliseconds","addDays","getSeconds","getMilliseconds","NaN","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","mm","ss","sss","part","createDateInputType","parseDate","isValidDate","parseObservedDateValue","badInputChecker","previousDate","$options","$$parserName","$parsers","parsedDate","ngModelMinErr","ngMin","minVal","$validators","$validate","ngMax","maxVal","nativeValidation","numberFormatterParser","NUMBER_REGEXP","parseNumberAttrVal","isNumberInteger","countDecimals","numString","decimalSymbolIndex","isValidForStep","viewValue","stepBase","decimalCount","multiplier","pow","numberInputType","rangeInputType","setInitialValueAndObserver","htmlAttrName","changeFn","minChange","$modelValue","supportsRange","elVal","maxChange","stepChange","stepVal","hasMinAttr","hasMaxAttr","hasStepAttr","originalRender","rangeUnderflow","rangeOverflow","modelValue","stepMismatch","urlInputType","URL_REGEXP","emailInputType","email","EMAIL_REGEXP","radioInputType","parseConstantExpr","parseFn","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","classDirective","arrayDifference","arrayClasses","addClasses","digestClassCounts","removeClasses","classCounts","classesToUpdate","updateClasses","ngClassWatchAction","$index","old$index","mod","setValidity","validationErrorKey","createAndSet","unsetAndCleanup","cachedToggleClass","PENDING_CLASS","toggleValidationCss","isObjectEmpty","combinedState","switchValue","isValid","VALID_CLASS","INVALID_CLASS","chromeHack","optionElement","REGEX_STRING_REGEXP","manualLowercase","manualUppercase","documentMode","rules","ngCspElement","ngCspAttribute","noInlineStyle","name_","NODE_TYPE_ATTRIBUTE","full","major","minor","dot","codeName","Node","lowercasedName","getNamedItem","$dv","multiple","nodeCount","addHandler","noEventListener","onFn","replaceNode","wrapNode","newElement","condition","classCondition","nextElementSibling","extraParameters","dummyEvent","eventFnsCopy","handlerArgs","arg3","$animateMinErr","NG_ANIMATE_CLASSNAME","postDigestElements","updateData","handleCSSClassChanges","existing","addRemoveClassesPostDigest","classesAdded","classesRemoved","pin","domOperation","from","runner","$$registeredAnimations","classNameFilter","$$classNameFilter","reservedRegex","domInsert","afterElement","afterNode","previousElementSibling","enter","move","leave","addclass","tempClasses","waitForTick","waitQueue","passed","AnimateRunner","setHost","rafTick","timeoutTick","_doneCallbacks","_tick","_state","INITIAL_STATE","DONE_PENDING_STATE","DONE_COMPLETE_STATE","chain","runners","getPromise","resolveHandler","rejectHandler","pause","resume","_resolve","initialOptions","applyAnimationContents","closed","$$prepared","cleanupStyles","isFirstChange","Content-Type","[","{","$httpMinErr","callbackId","called","callbackMap","PATH_MATCH","http","https","ftp","locationPrototype","paramValue","Location","OPERATORS","ESCAPE","f","'","\"","lex","readString","peek","readNumber","peekMultichar","readIdent","isWhitespace","ch2","ch3","op1","op2","op3","throwError","chars","codePointAt","isValidIdentifierStart","isValidIdentifierContinue","cp","cp1","cp2","isExpOperator","colStr","peekCh","quote","rawString","hex","rep","ExpressionStatement","Property","program","expressionStatement","expect","filterChain","assignment","ternary","logicalOR","consume","logicalAND","equality","relational","additive","multiplicative","unary","primary","arrayDeclaration","selfReferential","parseArguments","baseExpression","peekToken","kind","e1","e2","e3","e4","peekAhead","$locals","nextId","vars","own","assignable","stage","computing","recurse","return_","generateFunction","fnKey","intoId","watchId","fnString","USE","STRICT","filterPrefix","watchFns","varsPrefix","section","nameId","recursionFn","skipWatchIdCheck","if_","lazyAssign","computedMember","lazyRecurse","plus","getHasOwnProperty","nonComputedMember","addEnsureSafeObject","notNull","addEnsureSafeAssignContext","addEnsureSafeMemberName","addEnsureSafeFunction","member","SAFE_IDENTIFIER","UNSAFE_CHARACTERS","stringEscapeFn","stringEscapeRegex","c","rhs","lhs","unary+","unary-","unary!","binary+","binary-","binary*","binary/","binary%","binary===","binary!==","binary==","binary!=","binary<","binary>","binary<=","binary>=","binary&&","binary||","ternary?:","astCompiler","yy","y","MMMM","MMM","M","LLLL","H","hh","EEEE","EEE","Z","ww","G","GG","GGG","GGGG","xlinkHref","propName","defaultLinkFn","normalized","htmlAttr","formDirectiveFactory","isNgForm","getSetter","formElement","nameAttr","ctrls","handleFormSubmission","parentFormCtrl","DATE_REGEXP","DATETIMELOCAL_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","datetime-local","month","range","CONSTANT_VALUE_REGEXP","tplAttr","$compile","templateElement","ngBindHtmlGetter","ngBindHtmlWatch","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","previousElements","srcExp","onloadExp","autoScrollExp","autoscroll","previousElement","currentElement","changeCounter","cleanupLastIncludeContent","afterAnimation","thisChangeId","trimValues","UNTOUCHED_CLASS","TOUCHED_CLASS","EMPTY_CLASS","NOT_EMPTY_CLASS","NgModelController","$$rawModelValue","$asyncValidators","$untouched","$touched","parserValid","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","$$setOptions","getterSetter","invokeModelGetter","invokeModelSetter","$$$p","$$updateEmptyClasses","currentValidationRunId","$setTouched","$$lastCommittedViewValue","prevValid","prevModelValue","allowInvalid","$$runValidators","allValid","$$writeModelToScope","doneCallback","processParseErrors","errorKey","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","$$parseAndValidate","writeToModelIfNeeded","updateOnDefault","$$debounceViewValueCommit","debounce","debounceDelay","formatters","modelCtrl","formCtrl","updateOn","DEFAULT_REGEXP","ngOptionsMinErr","NG_OPTIONS_REGEXP","parseOptionsExpression","optionsExp","selectElement","Option","selectValue","label","group","getOptionValuesKeys","optionValues","optionValuesKeys","keyName","itemKey","valueName","selectAs","trackBy","selectAsFn","viewValueFn","trackByFn","getTrackByValueFn","getTrackByValue","getLocals","displayFn","groupByFn","disableWhenFn","valuesFn","getWatchables","watchedArray","optionValuesLength","disableWhen","getOptions","optionItems","selectValueMap","optionItem","getOptionFromViewValue","getViewValueFromOption","ngOptionsPostLink","addOptionElement","optionTemplate","updateOptionElement","updateOptions","selectCtrl","readValue","groupElementMap","providedEmptyOption","emptyOption","groupElement","optGroupTemplate","listFragment","ngModelCtrl","nextValue","isNotPrimitive","emptyOptionRendered","unknownOption","renderEmptyOption","removeEmptyOption","renderUnknownOption","removeUnknownOption","writeValue","selectedValues","selections","selectedOption","registerOption","optionScope","optionEl","BRACE","IS_WHEN","updateElementText","newText","lastCount","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","attributeName","tmpMatch","whenKey","countIsNaN","pluralCat","whenExpFn","NG_REMOVED","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","getBlockStart","getBlockEnd","ngRepeatEndComment","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","lastBlockMap","nextNode","collectionLength","trackById","trackByIdFn","collectionKeys","nextBlockOrder","previousNode","nextBlockMap","blockKey","NG_HIDE_CLASS","NG_HIDE_IN_PROGRESS_CLASS","newStyles","oldStyles","cases","ngSwitchController","watchExpr","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","selectedTransclude","caseElement","selectedScope","anchor","ngSwitchWhenSeparator","whenCase","ngTranscludeMinErr","fallbackLinkFn","ngTranscludeCloneAttachFn","useFallbackContent","ngTranscludeSlot","noopNgModelController","SelectController","optionsMap","unknownVal","hasOption","addOption","removeOption","optionAttrs","hasDynamicValueAttr","interpolateTextFn","selectPreLink","lastView","lastViewRef","selectPostLink","selectCtrlName","patternExp","intVal","getDecimals","getVF","opt_precision","PLURAL_CATEGORY","ZERO","ONE","TWO","FEW","MANY","OTHER","DAY","FIRSTDAYOFWEEK","MONTH","SHORTDAY","SHORTMONTH","STANDALONEMONTH","WEEKENDRANGE","fullDate","longDate","medium","mediumDate","mediumTime","short","shortDate","shortTime","minInt","localeID","vf","returnExports","hljs","attrGetter","hljsEscape","hljsNoEscape","noEscape","hljsOnhighlight","onhighlight","shouldHighlightStatics","should","ngModule","_hljsOptions","setOptions","configure","hljsCache","hljsService","immediate","callNow","escapeRe","asString","replacement","extractInterpolations","interpolateTokens","RE_INTERPOLATION_STR","newCode","INTERPOLATION_SYMBOL","recoverInterpolations","_elm","_lang","_code","_interpolateScope","_stopInterpolateWatch","_hlCb","codeElm","setInterpolateScope","highlight","setLanguage","highlightCallback","cb","_highlight","res","interpolateData","_cacheKey","fixMarkup","highlightAuto","language","clear","release","glue","hljsDir","interpolateDirFactory","languageDirFactory","sourceDirFactory","includeDirFactory","tElm","staticHTML","staticText","iElm","iAttrs","escapeCheck","dirName","oldCode","srcExpr","templateCachePromise","dfd","horizontal","cssTo","uibCollapse","getScrollFromElement","scrollWidth","scrollHeight","expandingExpr","expandDone","expandedExpr","collapse","collapsingExpr","collapseDone","collapsedExpr","expanding","collapsing","collapsed","shouldCollapse","closeOthers","accordionConfig","openGroup","isOpen","addGroup","groupScope","removeGroup","heading","panelClass","setHeading","accordionCtrl","openClass","toggleOpen","headingId","panelId","accordionGroupCtrl","getHeaderSelectors","uibAccordionTransclude","closeable","close","dismissOnTimeout","activeClass","toggleEvent","buttonConfig","buttonsCtrl","uncheckableExpr","uibUncheckable","uibBtnRadio","isActive","uncheckable","getTrueValue","getCheckboxValue","btnCheckboxTrue","getFalseValue","btnCheckboxFalse","clearBufferedTransitions","bufferedTransitions","setActive","slides","slide","goNext","direction","destroyed","currentIndex","$currentTransition","SLIDE_DIRECTION","currentIdx","getCurrentIndex","nextSlide","nextIndex","nextDirection","restartTimer","findSlideIndex","resetTimer","currentInterval","resetTransition","timerFn","isPlaying","addSlide","play","newIndex","noWrap","removeSlide","bufferedIndex","indexOfSlide","isPrevDisabled","isNextDisabled","noPause","noTransition","carouselCtrl","beforeAddClass","directionClass","removeClassFn","beforeRemoveClass","createParser","quoteIndex","inLiteral","formatCodeToRegex","createFormatter","formatter","literalIdx","constructLiteralFormatter","constructFormatterFromIdx","endIdx","currentPosStr","toTimezone","fromTimezone","localeId","SPECIAL_CHARACTERS_REGEXP","parsers","_date","sign","baseDate","tzOffset","fields","dt","mapper","datesetter","timesetter","ON_REGEXP","IS_REGEXP","linkedScopes","instances","exps","addForExp","removeScope","compareWithExp","expToData","watchFn","compareWithVal","newActivated","thisVal","onExp","lastActivated","removedScope","newWatchScope","onExpMatches","uibIsClass","expsStr","datepickerMode","formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","maxDate","maxMode","minDate","minMode","monthColumns","shortcutPropagation","showWeeks","yearColumns","yearRows","datepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","dateParser","setMode","datepickerOptions","watchListeners","modes","startingDay","refreshView","uniqueId","ngDisabled","dateObject","activeDate","activeDateId","ngModelCtrl_","initDate","render","selectedDt","_refreshView","activeDt","createDateObject","model","today","past","future","customClass","dateDisabled","arrays","years","months","toggleMode","13","32","33","34","35","36","37","38","39","40","focusElement","keydown","handleKeyDown","getDaysInMonth","DAYS_IN_MONTH","getISO8601WeekNumber","checkDate","setDate","setMonth","getDates","startDate","dates","firstDayOfMonth","difference","numDisplayedFromPreviousMonth","firstDate","days","secondary","labels","abbr","title","rows","weekNumbers","thursdayIndex","numWeeks","curWeek","date1","date2","_date1","_date2","yearHeaderColspan","getStartingYear","columns","yearpickerInit","datepickerCtrl","daypickerCtrl","monthpickerCtrl","SCROLLBAR_WIDTH","BODY_SCROLLBAR_WIDTH","OVERFLOW_REGEX","normal","PLACEMENT_REGEX","auto","vertical","BODY_REGEX","getRawNode","parseStyle","isStaticPositioned","scrollbarWidth","isBody","bodyElem","innerWidth","clientWidth","scrollElem","scrollbarPadding","elemStyle","paddingRight","paddingBottom","scrollParent","tagName","widthOverflow","originalRight","heightOverflow","clientHeight","originalBottom","isScrollable","includeHidden","overflowRegex","includeSelf","documentEl","excludeStatic","spStyle","includeMagins","elemOffset","marginTop","elemBCR","viewportOffset","useDocument","includePadding","offsetBCR","offsetParentBCR","offsetParentStyle","paddingTop","paddingLeft","parsePlacement","placement","autoPlace","positionElements","hostElem","targetElem","appendToBody","targetWidth","targetHeight","hostElemPos","targetElemPos","targetElemStyle","adjustedSize","marginBottom","xOverflow","yOverflow","adjustTop","placementClasses","containerPosition","initialHeight","currentHeight","positionArrow","innerElem","isTooltip","arrowElem","arrowCss","borderProp","borderWidth","borderRadiusProp","borderRadius","altInputFormats","clearText","closeOnDateSelection","closeText","currentText","datepickerPopup","datepickerPopupTemplateUrl","datepickerTemplateUrl","html5Types","onOpenFocus","showButtonBar","$position","datepickerPopupConfig","$datepickerPopupLiteralWarning","parseDateString","dateFormat","documentClickBind","popup","$popup","dpContainsTarget","popupContainsTarget","inputKeydownBind","positionPopup","dpElement","popupPlacement","popupEl","datepickerEl","scrollParentEl","isHtml5DateInput","_ngModel_","datepickerAppendToBody","uibDatepickerPopup","newDateFormat","ng-model","ng-change","template-url","dateSelection","debounceTime","timeoutPromise","appendToOpenClass","openScope","dropdownScope","closeDropdown","keybindFilter","getAutoClose","toggleElement","getToggleElement","dropdownElement","getDropdownElement","focusToggleElement","dropdownElementTargeted","toggleElementTargeted","isKeynavEnabled","focusDropdownEntry","dropdownConfig","uibDropdownService","templateScope","getIsOpen","setIsOpen","toggleInvoker","onToggle","keynavEnabled","dropdownAppendTo","appendToEl","dropdownAppendToBody","keyboardNav","dropdownMenu","autoClose","getElement","wasOpen","rightalign","appendOffset","openContainer","hasOpenClass","dropdownMenuTemplateUrl","tplContent","newEl","dropdownCtrl","dropdownNested","tplUrl","toggleDropdown","aria-haspopup","aria-expanded","createNew","removeTop","entries","hasKey","setResolver","invocables","resolves","resolveObj","resolveIter","$modalStack","modalInClass","NOW_CLOSING_EVENT","setIsAsync","modalOptions","backdropClass","windowTopClass","modal","getTop","backdrop","dismiss","$isRendered","modalRenderDeferObj","animationPromise","modalRendered","inputWithAutofocus","modalAnimation","uibModalAnimationClass","$$multiMap","$$stackedMap","$uibPosition","isVisible","backdropIndex","topBackdropIndex","opened","openedWindows","topModalIndex","removeModalWindow","modalInstance","elementToReceiveFocus","modalWindow","appendToElement","previousTopOpenedModal","modalDomEl","removeAfterAnimate","modalScope","modalBodyClass","openedClass","OPENED_MODAL_CLASS","openedClasses","areAnyOpen","toggleTopWindowClass","closedDeferred","checkRemoveBackdrop","toggleSwitch","backdropDomEl","backdropScopeRef","backdropScope","domEl","afterAnimating","asyncDeferred","asyncPromise","keydownListener","keyboard","loadFocusElementList","focusChanged","isFocusInFirstItem","isModalFocused","focusLastFocusableElement","isFocusInLastItem","focusFirstFocusableElement","broadcastClosing","resultOrReason","closing","tabbableSelector","newBackdropIndex","modalOpener","renderDeferred","currBackdropIndex","ng-style","uib-modal-animation-class","modal-in-class","modal-instance","angularDomEl","windowTemplateUrl","window-top-class","role","aria-labelledby","ariaLabelledBy","aria-describedby","ariaDescribedBy","windowClass","$$topModalIndex","$$uibDestructionScheduled","dismissAll","topModal","srcElement","modalDomE1","$modalProvider","$uibResolve","getTemplatePromise","$modal","promiseChain","getPromiseChain","resolveWithTemplate","templateAndResolvePromise","modalResultDeferred","modalOpenedDeferred","modalClosedDeferred","modalRenderDeferred","rendered","samePromise","tplAndVars","constructLocals","instanceOnScope","injectable","$resolve","$uibModalInstance","providedScope","$close","$dismiss","ctrlInstance","ctrlInstantiate","ctrlLocals","setNumPages","numPages","_watchers","itemsPerPage","totalPages","calculateTotalPages","updatePage","newTotal","oldTotal","ceil","totalItems","page","selectPage","clickAllowed","noPrevious","noNext","uibPaging","uibPagerConfig","align","previousText","nextText","paginationCtrl","uibPaginationConfig","makePage","getPages","currentPage","pages","startPage","endPage","isMaxSized","maxSize","rotate","pageLabel","forceEllipses","boundaryLinkNumbers","previousPageSet","secondPageLink","firstPageLink","nextPageSet","secondToLastPageLink","lastPageLink","$page","boundaryLinks","directionLinks","firstText","lastText","defaultOptions","placementClassPrefix","popupDelay","popupCloseDelay","useContentExp","triggerMap","outsideClick","none","globalOptions","setTriggers","triggers","keypressListener","openedTooltips","ttType","defaultTriggerShow","getTriggers","startSym","endSym","tElem","tooltipLinker","tooltipCtrl","toggleTooltipBind","ttScope","hideTooltipBind","showTooltipBind","hasEnableExp","cancelHide","prepareTooltip","showTimeout","cancelShow","hideTimeout","createTooltip","assignIsOpen","positionTooltip","positionTimeout","transitionTimeout","removeTooltip","tooltip","tooltipLinkedScope","prepObservers","unregisterObservers","contentParse","popupClass","lastPlacement","closeDelay","isOpenParse","observers","repositionScheduled","bodyHideTooltipBind","prepTriggers","showTriggers","hideTriggers","unregisterTriggers","ttPosition","elementPos","adjustment","origScope","contentExp","appendToBodyVal","appendKey","tooltipTemplateTranscludeScope","parseAsResourceUrl","uibTooltipTemplateTransclude","tooltipAnimationClass","$uibTooltip","originScope","uibTitle","progressConfig","getMaxOrDefault","maxParam","bars","addBar","bar","transition","recalculatePercentage","totalPercentage","total","toFixed","removeBar","progressCtrl","stateOn","stateOff","enableReset","titles","ratingConfig","tmpTitles","ratingStates","buildTemplateObjects","states","getTitle","rate","readonly","newViewValue","onHover","onLeave","onKeydown","ratingCtrl","findTabIndex","tabs","oldIndex","previousIndex","previousSelected","tab","onDeselect","$selectedIndex","onSelect","addTab","newActiveIndex","removeTab","newActiveTabIndex","justified","tabsetCtrl","$transcludeFn","isTabHeading","uibTabContentTransclude","headingElement","hourStep","minuteStep","secondStep","showMeridian","showSeconds","meridians","readonlyInput","mousewheel","arrowkeys","showSpinners","timepickerConfig","getHoursFromTemplate","valid","meridian","getMinutesFromTemplate","getSecondsFromTemplate","pad","noPad","keyboardChange","makeValid","updateTemplate","invalidHours","invalidMinutes","invalidSeconds","padHours","addSecondsToSelected","addSeconds","addMinutes","newDate","modelIsEmpty","hoursInputEl","minutesInputEl","secondsInputEl","setupMousewheelEvents","setupArrowkeyEvents","setupInputEvents","noIncrementHours","incrementedSelected","noDecrementHours","decrementedSelected","noIncrementMinutes","noDecrementMinutes","noIncrementSeconds","noDecrementSeconds","noToggleMeridian","isScrollingUp","delta","wheelDelta","deltaY","incrementHours","decrementHours","incrementMinutes","decrementMinutes","incrementSeconds","decrementSeconds","updateHours","updateMinutes","updateSeconds","invalidate","setSeconds","toggleMeridian","uibTimepickerConfig","timepickerCtrl","TYPEAHEAD_REGEXP","itemName","viewMapper","modelMapper","originalScope","$$debounce","typeaheadParser","fireRecalculating","moveInProgress","debouncedRecalculate","recalculatePosition","HOT_KEYS","eventDebounceTime","minLength","typeaheadMinLength","waitTime","typeaheadWaitMs","isEditable","typeaheadEditable","isLoadingSetter","typeaheadLoading","isSelectEvent","typeaheadShouldSelect","vals","onSelectCallback","typeaheadOnSelect","isSelectOnBlur","typeaheadSelectOnBlur","isNoResultsSetter","typeaheadNoResults","inputFormatter","typeaheadInputFormatter","typeaheadAppendToBody","typeaheadAppendTo","focusFirst","typeaheadFocusFirst","selectOnExact","typeaheadSelectOnExact","isOpenSetter","typeaheadIsOpen","showHint","typeaheadShowHint","parsedModel","$setModelValue","parserResult","uibTypeahead","offDestroy","popupId","aria-autocomplete","aria-owns","inputsContainer","hintInputElem","border-color","box-shadow","background","color","vertical-align","background-color","popUpEl","move-in-progress","query","assign-is-open","typeaheadTemplateUrl","typeaheadPopupTemplateUrl","resetHint","resetMatches","activeIdx","getMatchId","inputIsExactMatch","inputValue","getMatchesAsync","onCurrentRequest","debounceUpdate","firstLabel","scheduleSearchWithTimeout","cancelPreviousTimeout","$item","$model","$label","typeaheadFocusOnSelect","shouldSelect","offsetTop","editable","dismissClickHandler","_modelCtrl","_ngModelOptions","candidateViewValue","emptyViewValue","popupTemplateUrl","isDropdownOpen","matchIdx","selectActive","selectMatch","tplEl","escapeRegexp","queryToEscape","containsHtml","matchItem","isSanitizePresent","trustAsHtml","$$uibCarouselCss","$$uibDatepickerCss","$$uibPositionCss","$$uibDatepickerpopupCss","$$uibTooltipCss","$$uibTimepickerCss","$$uibTypeaheadCss","ancestors","objectKeys","inheritParams","currentParams","newParams","$current","$to","parentParams","inherited","inheritList","equalForKeys","filterByKeys","filtered","pick","omit","silenceUncaughtInPromise","$Resolve","VISIT_IN_PROGRESS","VISIT_DONE","NOTHING","NO_DEPENDENCIES","NO_LOCALS","NO_PARENT","$$promises","$$values","study","visit","visited","cycle","plan","isResolve","invocableKeys","merged","$$inheritedValues","resolution","$$failure","invocable","onfailure","invocation","proceed","waitParams","dep","TemplateFactoryProvider","shouldUnsafelyUseHttp","TemplateFactory","fromConfig","fromString","fromUrl","templateProvider","fromProvider","UrlMatcher","parentMatcher","addParameter","paramNames","$$UMFP","Param","quoteRegExp","squash","surroundPattern","matchDetails","isSearch","segment","cfg","caseInsensitive","placeholder","searchPlaceholder","$$new","ParamSet","isOptional","sourceSearch","sourcePath","strict","$$paramNames","$UrlMatcherFactory","valToString","/","valFromString","~~","~2F","getDefaultConfig","isStrictMode","isCaseInsensitive","isInjectable","flushTypeQueue","typeQueue","$types","def","defaultSquashPolicy","enqueue","defaultTypes","encode","decode","int","capture","any","$$getDefaultValue","strictMode","isMatcher","o","definitionFn","unwrapShorthand","isShorthand","$$fn","getType","urlType","getArrayMode","arrayDefaults","arrayParamNomenclature","getSquashPolicy","getReplace","arrayMode","configuredKeys","defaultPolicy","$value","hasReplaceVal","$replace","$asArray","dynamic","$$parent","$$keys","ignore","paramset","paramValues","$$equals","paramValues1","paramValues2","equal","$$validates","rawVal","encoded","$UrlRouterProvider","$locationProvider","$urlMatcherFactory","regExpPrefix","interpolate","handleIfMatch","$match","appendBasePath","isHtml5","absolute","update","rule","handled","lastPushedUrl","otherwise","listen","interceptDeferred","sync","read","urlMatcher","$$avoidResync","validates","slash","redirect","handlerIsString","strategies","sticky","deferIntercept","$StateProvider","$urlRouterProvider","isRelative","stateName","findState","stateOrName","isStr","rel","pathLength","queueState","parentName","flushQueuedChildren","queued","registerState","stateBuilder","$delegates","abstractKey","$stateParams","$state","navigable","transitionTo","isGlob","doesStateMatchGlob","glob","globSegments","$view","$urlRouter","handleRedirect","TransitionAborted","retry","$retry","TransitionFailed","retryTransition","toParams","TransitionSuperseded","resolveState","paramsAreFiltered","resolveViews","viewsPromises","views","injectables","controllerProvider","injectLocals","$$controller","$$controllerAs","$$resolveAs","resolveAs","TransitionSupersededError","TransitionPrevented","go","fromParams","fromPath","toState","redirectResult","toPath","keep","toLocals","reloadState","ownParams","shouldSkipReload","resolved","entering","exiting","onExit","onEnter","acc","paramDef","includes","lossy","nav","nonSearchParamsEqual","fromAndToState","notSearchParam","nonQueryParamKeys","nonQueryParams","nonQueryParamSet","reloadOnSearch","compositeName","abstract","$ViewProvider","$templateFactory","$ViewScrollProvider","useAnchorScroll","$ViewDirective","$uiViewScroll","getRenderer","statics","$animator","cleanupLastView","previousEl","currentEl","$uiViewData","renderer","$$animLeave","updateView","firstTime","getUiViewName","previousLocals","latestLocals","animEnter","animLeave","viewAnimData","$animEnter","$animLeave","$ViewDirectiveFill","resolveData","uiView","uiViewCreatedBy","parseStateRef","ref","preparsed","paramExpr","stateContext","stateData","getTypeInfo","isSvg","isForm","isAnchor","clickable","clickHook","ignorePreventDefaultCount","defaultOpts","$StateRefDirective","uiSrefActive","uiSref","unlinkInfoFn","uiSrefOpts","$$addStateInfo","$StateRefDynamicDirective","runStateRefLink","uiState","uiStateParams","uiStateOpts","$StateRefActiveDirective","addState","stateParams","stateHash","createStateHash","stateInfo","activeClasses","anyMatch","exactMatch","activeEqClass","uiSrefActiveEq","deregister","$IsStateFilter","isFilter","$IncludedByStateFilter","includesFilter","searchParams","decodePathArray","reverseString","unquoteDashes","allReversed","paramName","parameters","nTotal","nPath","paramVal","encodeDashes","isPathParam","isDefaultValue","nextSegment","isFinalPathParam","$subPattern","sub","ArrayType","bindTo","arrayWrap","arrayUnwrap","falsey","arrayHandler","allTruthyMode","arrayEqualsHandler","val1","val2","$arrayMode","autoinject"],"mappings":"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","file":"scripts/vendor.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["scripts/vendor.js"],"names":["global","factory","module","exports","document","w","Error","window","this","noGlobal","DOMEval","code","doc","script","createElement","text","head","appendChild","parentNode","removeChild","isArrayLike","obj","length","type","jQuery","isWindow","nodeName","elem","name","toLowerCase","winnow","elements","qualifier","not","isFunction","grep","i","call","nodeType","indexOf","risSimple","test","filter","sibling","cur","dir","createOptions","options","object","each","match","rnothtmlwhite","_","flag","Identity","v","Thrower","ex","adoptValue","value","resolve","reject","noValue","method","promise","done","fail","then","apply","undefined","slice","completed","removeEventListener","ready","Data","expando","uid","getData","data","rbrace","JSON","parse","dataAttr","key","replace","rmultiDash","getAttribute","e","dataUser","set","adjustCSS","prop","valueParts","tween","adjusted","scale","maxIterations","currentValue","css","initial","unit","cssNumber","initialInUnit","rcssNum","exec","style","start","end","getDefaultDisplay","temp","ownerDocument","display","defaultDisplayMap","body","showHide","show","values","index","dataPriv","get","isHiddenWithinTree","getAll","context","tag","ret","getElementsByTagName","querySelectorAll","merge","setGlobalEval","elems","refElements","l","buildFragment","scripts","selection","ignored","tmp","wrap","contains","j","fragment","createDocumentFragment","nodes","rhtml","rtagName","wrapMap","_default","innerHTML","htmlPrefilter","lastChild","childNodes","firstChild","textContent","push","createTextNode","inArray","rscriptType","returnTrue","returnFalse","safeActiveElement","activeElement","err","on","types","selector","fn","one","origFn","event","off","arguments","guid","add","manipulationTarget","content","disableScript","restoreScript","rscriptTypeMasked","removeAttribute","cloneCopyEvent","src","dest","pdataOld","pdataCur","udataOld","udataCur","events","hasData","access","handle","extend","fixInput","rcheckableType","checked","defaultValue","domManip","collection","args","callback","concat","first","hasScripts","node","iNoClone","support","checkClone","rchecked","self","eq","html","map","clone","_evalUrl","rcleanScript","remove","keepData","cleanData","curCSS","computed","width","minWidth","maxWidth","getStyles","getPropertyValue","pixelMarginRight","rnumnonpx","rmargin","addGetHookIf","conditionFn","hookFn","vendorPropName","emptyStyle","capName","toUpperCase","cssPrefixes","finalPropName","cssProps","setPositiveNumber","subtract","matches","Math","max","augmentWidthOrHeight","extra","isBorderBox","styles","val","cssExpand","getWidthOrHeight","valueIsBorderBox","boxSizingReliable","parseFloat","Tween","easing","prototype","init","schedule","inProgress","hidden","requestAnimationFrame","setTimeout","fx","interval","tick","createFxNow","fxNow","now","genFx","includeWidth","which","attrs","height","opacity","createTween","animation","Animation","tweeners","defaultPrefilter","props","opts","toggle","hooks","oldfire","propTween","restoreDisplay","isBox","anim","orig","dataShow","queue","_queueHooks","unqueued","empty","fire","always","rfxtypes","isEmptyObject","overflow","overflowX","overflowY","propFilter","specialEasing","camelCase","Array","isArray","cssHooks","expand","properties","result","stopped","prefilters","deferred","Deferred","currentTime","remaining","startTime","duration","percent","tweens","run","notifyWith","resolveWith","originalProperties","originalOptions","stop","gotoEnd","rejectWith","proxy","progress","complete","timer","stripAndCollapse","tokens","join","getClass","buildParams","prefix","traditional","rbracket","addToPrefiltersOrTransports","structure","dataTypeExpression","func","dataType","dataTypes","unshift","inspectPrefiltersOrTransports","jqXHR","inspect","selected","inspected","prefilterOrFactory","dataTypeOrTransport","seekingTransport","transports","ajaxExtend","target","deep","flatOptions","ajaxSettings","ajaxHandleResponses","s","responses","ct","finalDataType","firstDataType","contents","shift","mimeType","getResponseHeader","converters","ajaxConvert","response","isSuccess","conv2","current","conv","prev","responseFields","dataFilter","split","state","error","arr","getProto","Object","getPrototypeOf","class2type","toString","hasOwn","hasOwnProperty","fnToString","ObjectFunctionString","version","rtrim","rmsPrefix","rdashAlpha","fcamelCase","all","letter","jquery","constructor","toArray","num","pushStack","prevObject","last","len","sort","splice","copy","copyIsArray","isPlainObject","random","isReady","msg","noop","isNumeric","isNaN","proto","Ctor","globalEval","string","trim","makeArray","results","second","invert","callbackInverse","callbackExpect","arg","Date","Symbol","iterator","Sizzle","seed","m","nid","groups","newSelector","newContext","preferredDoc","setDocument","documentIsHTML","rquickExpr","getElementById","id","getElementsByClassName","qsa","compilerCache","rbuggyQSA","rcssescape","fcssescape","setAttribute","tokenize","toSelector","rsibling","testContext","qsaError","select","createCache","cache","keys","Expr","cacheLength","markFunction","assert","el","addHandle","handler","attrHandle","siblingCheck","a","b","diff","sourceIndex","nextSibling","createInputPseudo","createButtonPseudo","createDisabledPseudo","disabled","isDisabled","disabledAncestor","createPositionalPseudo","argument","matchIndexes","setFilters","addCombinator","matcher","combinator","base","skip","next","checkNonElements","doneName","xml","oldCache","uniqueCache","outerCache","newCache","dirruns","uniqueID","elementMatcher","matchers","multipleContexts","contexts","condense","unmatched","newUnmatched","mapped","setMatcher","preFilter","postFilter","postFinder","postSelector","preMap","postMap","preexisting","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","relative","implicitRelative","matchContext","matchAnyContext","outermostContext","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","find","dirrunsUnique","pop","uniqueSort","getText","isXML","compile","sortInput","hasDuplicate","docElem","rbuggyMatches","classCache","tokenCache","sortOrder","push_native","list","booleans","whitespace","identifier","attributes","pseudos","rwhitespace","RegExp","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","runescape","funescape","escaped","escapedWhitespace","high","String","fromCharCode","ch","asCodePoint","charCodeAt","unloadHandler","els","documentElement","hasCompare","subWindow","defaultView","top","addEventListener","attachEvent","className","createComment","getById","getElementsByName","attrId","getAttributeNode","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","expr","attr","specified","escape","sel","duplicates","detectDuplicates","sortStable","nodeValue","selectors","createPseudo",">"," ","+","~","excess","unquoted","nodeNameSelector","pattern","operator","check","what","simple","forward","ofType","nodeIndex","parent","useCache","pseudo","idx","matched","has","innerText","lang","elemLang","hash","location","root","focus","hasFocus","href","tabIndex","enabled","selectedIndex","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","soFar","preFilters","cached","token","compiled","unique","isXMLDoc","escapeSelector","until","truncate","is","siblings","n","rneedsContext","rsingleTag","rootjQuery","parseHTML","rparentsprev","guaranteedUnique","children","targets","closest","prevAll","addBack","parents","parentsUntil","nextAll","nextUntil","prevUntil","contentDocument","reverse","Callbacks","firing","memory","fired","locked","firingIndex","once","stopOnFalse","disable","lock","fireWith","tuples","catch","pipe","fns","newDefer","tuple","returned","notify","onFulfilled","onRejected","onProgress","depth","special","that","mightThrow","maxDepth","TypeError","process","exceptionHook","stackTrace","getStackHook","stateString","when","singleValue","resolveContexts","resolveValues","master","updateFunc","rerrorNames","stack","console","warn","message","readyException","readyList","readyWait","wait","readyState","doScroll","chainable","emptyGet","raw","bulk","acceptData","owner","defineProperty","configurable","removeData","_data","_removeData","dequeue","startLength","setter","clearQueue","count","defer","pnum","source","swap","old","hide","option","thead","col","tr","td","optgroup","tbody","tfoot","colgroup","caption","th","div","cloneNode","noCloneChecked","rkeyEvent","rmouseEvent","rtypenamespace","handleObjIn","eventHandle","t","handleObj","handlers","namespaces","origType","elemData","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","nativeEvent","handlerQueue","fix","delegateTarget","preDispatch","isPropagationStopped","currentTarget","isImmediatePropagationStopped","rnamespace","preventDefault","stopPropagation","postDispatch","matchedHandlers","matchedSelectors","addProp","hook","Event","enumerable","originalEvent","writable","load","noBubble","trigger","blur","click","beforeunload","returnValue","isDefaultPrevented","defaultPrevented","relatedTarget","timeStamp","isSimulated","stopImmediatePropagation","altKey","bubbles","cancelable","changedTouches","ctrlKey","detail","eventPhase","metaKey","pageX","pageY","shiftKey","view","char","charCode","keyCode","buttons","clientX","clientY","offsetX","offsetY","pointerId","pointerType","screenX","screenY","targetTouches","toElement","touches","mouseenter","mouseleave","pointerenter","pointerleave","related","rxhtmlTag","rnoInnerhtml","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","detach","append","prepend","insertBefore","before","after","replaceWith","replaceChild","appendTo","prependTo","insertAfter","replaceAll","original","insert","opener","getComputedStyle","computeStyleTests","cssText","container","divStyle","pixelPositionVal","reliableMarginLeftVal","marginLeft","boxSizingReliableVal","marginRight","pixelMarginRightVal","backgroundClip","clearCloneStyle","pixelPosition","reliableMarginLeft","rdisplayswap","rcustomProp","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","animationIterationCount","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","float","origName","isCustomProp","setProperty","isFinite","getClientRects","getBoundingClientRect","left","margin","padding","border","suffix","expanded","parts","propHooks","eased","pos","step","scrollTop","scrollLeft","linear","p","swing","cos","PI","rrun","*","tweener","prefilter","speed","opt","speeds","fadeTo","to","animate","optall","doAnimation","finish","stopQueue","timers","cssFn","slideDown","slideUp","slideToggle","fadeIn","fadeOut","fadeToggle","slow","fast","delay","time","timeout","clearTimeout","checkOn","optSelected","radioValue","boolHook","removeAttr","nType","attrHooks","attrNames","getter","lowercaseName","rfocusable","rclickable","removeProp","propFix","tabindex","parseInt","for","class","addClass","classes","curValue","clazz","finalValue","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","valHooks","optionSet","rfocusMorph","onlyHandlers","bubbleType","ontype","eventPath","isTrigger","parentWindow","simulate","triggerHandler","hover","fnOver","fnOut","focusin","attaches","nonce","rquery","parseXML","DOMParser","parseFromString","rCRLF","rsubmitterTypes","rsubmittable","param","valueOrFunction","encodeURIComponent","serialize","serializeArray","r20","rhash","rantiCache","rheaders","rlocalProtocol","rnoContent","rprotocol","allTypes","originAnchor","active","lastModified","etag","url","isLocal","protocol","processData","async","contentType","accepts","json","* text","text html","text json","text xml","ajaxSetup","settings","ajaxPrefilter","ajaxTransport","ajax","status","nativeStatusText","headers","success","modified","statusText","timeoutTimer","transport","responseHeadersString","ifModified","cacheURL","callbackContext","statusCode","fireGlobals","globalEventContext","completeDeferred","responseHeaders","urlAnchor","uncached","requestHeaders","requestHeadersNames","strAbort","getAllResponseHeaders","setRequestHeader","overrideMimeType","abort","finalText","crossDomain","host","hasContent","beforeSend","send","getJSON","getScript","throws","wrapAll","firstElementChild","wrapInner","unwrap","visible","offsetWidth","offsetHeight","xhr","XMLHttpRequest","xhrSuccessStatus","0","1223","xhrSupported","cors","errorCallback","open","username","xhrFields","onload","onerror","onabort","onreadystatechange","responseType","responseText","binary","text script","charset","scriptCharset","evt","oldCallbacks","rjsonp","jsonp","jsonpCallback","originalSettings","callbackName","overwritten","responseContainer","jsonProp","createHTMLDocument","implementation","keepScripts","parsed","params","animated","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","using","rect","win","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","parentOffset","scrollTo","Height","Width","","defaultExtra","funcName","bind","unbind","delegate","undelegate","holdReady","hold","parseJSON","define","amd","_jQuery","_$","$","noConflict","minErr","ErrorConstructor","paramPrefix","SKIP_INDEXES","templateArgs","template","shiftedIndex","toDebugString","isString","jqLite","isNumber","item","forEach","isPrimitive","isBlankObject","forEachSorted","reverseParams","iteratorFn","nextUid","setHashKey","h","$$hashKey","baseExtend","dst","objs","ii","isObject","jj","isDate","valueOf","isRegExp","isElement","toInt","str","inherit","create","identity","valueFn","hasCustomToString","isUndefined","isDefined","isScope","$evalAsync","$watch","isFile","isFormData","isBlob","isBoolean","isPromiseLike","isTypedArray","TYPED_ARRAY_REGEXP","isArrayBuffer","makeMap","items","nodeName_","element","lowercase","arrayRemove","array","destination","copyRecurse","copyElement","stackSource","stackDest","ngMinErr","needsRecurse","copyType","buffer","byteOffset","copied","ArrayBuffer","byteLength","Uint8Array","re","lastIndex","equals","o1","o2","keySet","t1","t2","getTime","createMap","charAt","array1","array2","sliceArgs","startIndex","curryArgs","toJsonReplacer","toJson","pretty","stringify","fromJson","timezoneToOffset","timezone","fallback","ALL_COLONS","requestedTimezoneOffset","isNumberNaN","addDateMinutes","date","minutes","setMinutes","getMinutes","convertTimezoneToLocal","dateTimezoneOffset","getTimezoneOffset","timezoneOffset","startingTag","elemHtml","NODE_TYPE_TEXT","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","splitPoint","substring","toKeyValue","arrayValue","encodeUriQuery","encodeUriSegment","pctEncodeSpaces","getNgAttribute","ngAttr","ngAttrPrefixes","allowAutoBootstrap","currentScript","link","origin","angularInit","bootstrap","appElement","config","hasAttribute","candidate","querySelector","isAutoBootstrapAllowed","strictDi","modules","defaultConfig","doBootstrap","injector","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","scope","$apply","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","angular","resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","reload","getTestability","rootElement","snake_case","separator","SNAKE_CASE_REGEXP","bindJQuery","originalCleanData","bindJQueryFired","jqName","jq","JQLitePrototype","isolateScope","controller","inheritedData","$destroy","JQLite","assertArg","reason","assertArgFn","acceptArrayAnnotation","assertNotHasOwnProperty","path","bindFnToScope","lastInstance","getBlockNodes","blockNodes","endNode","setupModuleLoader","ensure","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","insertMethod","invokeQueue","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","decorator","directive","component","block","shallowCopy","serializeObject","seen","publishExternalAPI","uppercase","callbacks","$$counter","$$csp","csp","angularModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","htmlAnchorDirective","inputDirective","textarea","form","formDirective","scriptDirective","selectDirective","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$animateCss","$CoreAnimateCssProvider","$$animateJs","$$CoreAnimateJsProvider","$$animateQueue","$$CoreAnimateQueueProvider","$$AnimateRunner","$$AnimateRunnerFactoryProvider","$$animateAsyncRun","$$AnimateAsyncRunFactoryProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$$forceReflow","$$ForceReflowProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpParamSerializer","$HttpParamSerializerProvider","$httpParamSerializerJQLike","$HttpParamSerializerJQLikeProvider","$httpBackend","$HttpBackendProvider","$xhrFactory","$xhrFactoryProvider","$jsonpCallbacks","$jsonpCallbacksProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$jqLite","$$jqLiteProvider","$$HashMap","$$HashMapProvider","$$cookieReader","$$CookieReaderProvider","jqNextId","jqId","SPECIAL_CHARS_REGEXP","MOZ_HACK_REGEXP","jqLiteIsTextNode","HTML_REGEXP","jqLiteAcceptsData","NODE_TYPE_ELEMENT","NODE_TYPE_DOCUMENT","jqLiteHasData","jqCache","ng339","jqLiteCleanData","jqLiteRemoveData","jqLiteBuildFragment","TAG_NAME_REGEXP","XHTML_TAG_REGEXP","jqLiteParseHTML","SINGLE_TAG_REGEXP","jqLiteWrapNode","wrapper","argIsString","jqLiteMinErr","jqLiteAddNodes","jqLiteClone","jqLiteDealoc","onlyDescendants","descendants","jqLiteOff","unsupported","expandoStore","jqLiteExpandoStore","removeHandler","listenerFns","removeEventListenerFn","MOUSE_EVENT_MAP","expandoId","createIfNecessary","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","jqLiteRemoveClass","cssClasses","cssClass","jqLiteAddClass","existingClasses","jqLiteController","jqLiteInheritedData","names","NODE_TYPE_DOCUMENT_FRAGMENT","jqLiteEmpty","jqLiteRemove","jqLiteDocumentLoaded","action","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","getAliasedAttrName","ALIASED_ATTR","createEventHandler","eventHandler","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","handlerWrapper","specialHandlerWrapper","defaultHandlerWrapper","specialMouseHandlerWrapper","jqLiteContains","$get","hashKey","nextUidFn","objType","HashMap","isolatedUid","put","stringifyFn","Function","extractArgs","fnText","STRIP_COMMENTS","ARROW_ARG","FN_ARGS","anonFn","annotate","$inject","argDecl","FN_ARG_SPLIT","FN_ARG","underscore","modulesToLoad","supportObject","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","instanceInjector","factoryFn","enforce","$injector","instanceCache","serviceName","decorFn","origProvider","orig$get","origInstance","$delegate","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","createInternalInjector","getService","caller","INSTANTIATING","injectionArgs","locals","$$annotate","isClass","msie","Type","ctor","protoInstanceInjector","autoScrollingEnabled","disableAutoScrolling","getFirstAnchor","some","getYOffset","scroll","yOffset","bottom","scrollIntoView","elemTop","scrollBy","elm","newVal","oldVal","mergeClasses","extractElementNode","ELEMENT_NODE","splitClasses","klass","prepareAnimateOptions","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","getHash","substr","cacheStateAndFireUrlChange","pendingLocation","cacheState","fireUrlChange","cachedState","getCurrentState","lastCachedState","lastBrowserUrl","lastHistoryState","urlChangeListeners","listener","history","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","baseElement","sameState","sameBase","stripHash","urlChangeInit","onUrlChange","$$applicationDestroyed","$$checkUrlChange","baseHref","timeoutId","cancel","deferId","cacheFactory","cacheId","refresh","entry","freshEnd","staleEnd","nextEntry","prevEntry","caches","size","stats","capacity","Number","MAX_VALUE","lruHash","lruEntry","removeAll","destroy","info","UNINITIALIZED_VALUE","$$sanitizeUriProvider","parseIsolateBindings","directiveName","isController","LOCAL_REGEXP","bindings","definition","scopeName","bindingCache","$compileMinErr","mode","optional","attrName","parseDirectiveBindings","bindToController","assertValidDirectiveName","getDirectiveRequire","require","REQUIRE_PREFIX_REGEXP","getDirectiveRestrict","restrict","hasDirectives","Suffix","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","EVENT_HANDLER_ATTR_REGEXP","registerDirective","directiveFactory","directives","priority","makeInjectable","tElement","tAttrs","$element","$attrs","templateUrl","ddo","controllerAs","identifierForController","transclude","aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","preAssignBindingsEnabled","TTL","onChangesTtl","commentDirectivesEnabledConfig","commentDirectivesEnabled","cssClassDirectivesEnabledConfig","cssClassDirectivesEnabled","flushOnChangesQueue","onChangesQueue","errors","Attributes","attributesToCopy","$attr","$$element","setSpecialAttr","specialAttrHolder","attribute","removeNamedItem","setNamedItem","safeAddClass","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","NOT_EMPTY","domNode","compositeLinkFn","compileNodes","$$addScopeClass","cloneConnectFn","needsNewScope","$parent","$new","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","detectNamespaceForChildElements","$linkNode","wrapTemplate","controllerName","instance","$$addScopeInfo","parentElement","nodeList","$rootElement","nodeLinkFn","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","nodeListLength","linkFns","transcludeOnThisElement","createBoundTranscludeFn","templateOnThisElement","linkFnFound","collectDirectives","applyDirectivesToNode","terminal","previousBoundTranscludeFn","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","boundSlots","$$slots","slotName","attrsMap","addDirective","directiveNormalize","nName","ngAttrName","isNgAttr","nAttrs","attrStartName","attrEndName","NG_ATTR_BINDING","PREFIX_REGEXP","multiElementMatch","MULTI_ELEMENT_DIR_RE","directiveIsMultiElement","addAttrInterpolateDirective","animVal","addTextInterpolateDirective","NODE_TYPE_COMMENT","collectCommentDirectives","byPriority","groupScan","attrStart","attrEnd","groupElementsLinkFnWrapper","linkFn","compilationGenerator","eager","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","elementControllers","scopeToChild","slotTranscludeFn","controllerScope","scopeBindingInfo","newScopeDirective","isSlotFilled","controllerDirectives","setupControllers","templateDirective","$$originalDirective","$$isolateBindings","initializeDirectiveBindings","removeWatches","$on","controllerDirective","$$bindings","bindingInfo","controllerResult","getControllers","controllerInstance","$onChanges","initialChanges","$onInit","$doCheck","$onDestroy","invokeLinkFn","$postLink","$template","directiveValue","terminalPriority","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","replaceDirective","childTranscludeFn","didScanForMultipleTransclusion","mightHaveMultipleTransclusionError","$$start","$$end","assertNoDuplicate","$$tlb","candidateDirective","scanningIndex","$$createComment","$$parentNode","slots","slotMap","filledSlots","elementSelector","filled","$$newScope","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectiveScope","mergeTemplateAttributes","compileTemplateUrl","inheritType","dataName","property","controllerKey","$scope","$transclude","newScope","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","linkQueue","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","ignoreChildLinkFn","previousDirective","wrapModuleNameIfDefined","moduleName","interpolateFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","$$addBindingInfo","expressions","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","trustedContext","mustHaveExpression","allOrNothing","$$observers","newValue","$$inter","$$scope","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","annotation","recordChanges","previousValue","$$postDigest","changes","triggerOnChangesHook","SimpleChange","removeWatchCollection","lastValue","parentGet","parentSet","removeWatch","$observe","_UNINITIALIZED_VALUE","literal","assign","parentValueWatch","parentValue","$stateful","$watchCollection","deepWatch","initialValue","SIMPLE_ATTR_NAME","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","comment","previous","str1","str2","tokens1","tokens2","outer","jqNodes","ident","CNTRL_REG","globals","register","allowGlobals","addIdentifier","expression","later","$controllerMinErr","controllerPrototype","exception","cause","serializeValue","toISOString","toSerialize","topLevel","defaultHttpResponseTransform","tempData","JSON_PROTECTION_PREFIX","APPLICATION_JSON","isJsonLike","jsonStart","JSON_START","JSON_ENDS","parseHeaders","fillInParsed","line","headerVal","headerKey","headersGetter","headersObj","transformData","defaults","transformResponse","transformRequest","d","common","Accept","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","paramSerializer","useApplyAsync","useLegacyPromise","useLegacyPromiseExtensions","interceptorFactories","interceptors","requestConfig","chainInterceptors","thenFn","rejectFn","executeHeaderFns","headerContent","processedHeaders","headerFn","mergeHeaders","defHeaderName","lowercaseDefHeaderName","reqHeaderName","defHeaders","reqHeaders","defaultHeadersIteration","serverRequest","reqData","withCredentials","sendReq","resp","requestInterceptors","responseInterceptors","reversedInterceptors","interceptor","request","requestError","responseError","$httpMinErrLegacyFn","createShortMethods","createShortMethodsWithData","createApplyHandlers","eventHandlers","applyHandlers","callEventHandler","$applyAsync","$$phase","headersString","resolveHttpPromise","resolvePromise","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","defaultCache","xsrfValue","urlIsSameOrigin","uploadEventHandlers","serializedParams","interceptorFactory","createHttpBackend","createXhr","$browserDefer","rawDocument","jsonpReq","callbackPath","wasCalled","addEventListenerFn","timeoutRequest","jsonpDone","completeRequest","createCallback","getResponse","removeCallback","urlResolve","ontimeout","upload","unescapeText","escapedStartRegexp","escapedEndRegexp","constantWatchDelegate","objectEquality","constantInterp","unwatch","parseStringifyInterceptor","getValue","$interpolateMinErr","interr","unescapedText","exp","$$watchDelegate","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","endSymbolLength","throwNoconcat","compute","getTrusted","$watchGroup","oldValues","currValue","invokeApply","hasParams","iteration","setInterval","clearInterval","skipApply","$$intervalId","intervals","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","DOUBLE_SLASH_REGEX","$locationMinErr","prefixed","$$path","pathname","$$search","search","$$hash","startsWith","stripBaseUrl","trimEmptyHash","stripFile","lastIndexOf","serverBase","LocationHtml5Url","appBase","appBaseNoFile","basePrefix","$$html5","$$parse","pathUrl","$$compose","$$url","$$absUrl","$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","removeWindowsDriveName","firstPathSegmentMatch","windowsFilePathExp","withoutHashUrl","withoutBaseUrl","LocationHashbangInHtml5Url","locationGetter","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","IGNORE_URI_REGEXP","absHref","initializing","newUrl","newState","$digest","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","formatError","sourceURL","consoleLog","logFn","log","hasApply","arg1","arg2","ensureSafeMemberName","fullExpression","$parseMinErr","getStringValue","ensureSafeObject","ensureSafeFunction","CALL","APPLY","BIND","ensureSafeAssignContext","ARRAY_CTOR","BOOLEAN_CTOR","FUNCTION_CTOR","NUMBER_CTOR","OBJECT_CTOR","STRING_CTOR","ARRAY_CTOR_PROTO","BOOLEAN_CTOR_PROTO","FUNCTION_CTOR_PROTO","NUMBER_CTOR_PROTO","OBJECT_CTOR_PROTO","STRING_CTOR_PROTO","ifDefined","plusFn","r","isStateless","filterName","findConstantAndWatchExpressions","ast","allConstants","argsToWatch","isStatelessFilter","AST","Program","Literal","toWatch","UnaryExpression","BinaryExpression","right","LogicalExpression","ConditionalExpression","alternate","consequent","Identifier","MemberExpression","CallExpression","callee","AssignmentExpression","ArrayExpression","ObjectExpression","ThisExpression","LocalsExpression","getInputs","lastExpression","isAssignable","assignableAST","NGValueParameter","isLiteral","isConstant","ASTCompiler","astBuilder","ASTInterpreter","isPossiblyDangerousMemberName","getValueOf","objectValueOf","identStart","identContinue","cacheDefault","cacheExpensive","literals","true","false","null","addLiteral","literalName","literalValue","setIdentifierFns","identifierStart","identifierContinue","interceptorFn","expensiveChecks","parsedExpression","oneTime","cacheKey","runningChecksEnabled","parseOptions","$parseOptionsExpensive","$parseOptions","lexer","Lexer","parser","Parser","oneTimeLiteralWatchDelegate","oneTimeWatchDelegate","inputs","inputsWatchDelegate","expensiveChecksInterceptor","addInterceptor","expensiveCheckFn","expensiveCheckOldValue","expressionInputDirtyCheck","oldValueOfValue","prettyPrintExpression","lastResult","inputExpressions","oldInputValueOf","newInputValue","oldInputValueOfValues","oldInputValues","changed","isAllDefined","allDefined","watchDelegate","useInputs","regularWatch","noUnsafeEval","isIdentifierStart","isIdentifierContinue","$$runningExpensiveChecks","qFactory","nextTick","exceptionHandler","simpleBind","Promise","processQueue","pending","processScheduled","scheduleProcessQueue","handleCallback","resolver","callbackOutput","errback","progressBack","promises","counter","race","$Q","resolveFn","$qMinErr","finally","$$reject","$$resolve","rejectPromise","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","supported","createChildScopeClass","ChildScope","$$watchers","$$nextSibling","$$childHead","$$childTail","$$listeners","$$listenerCount","$$watchersCount","$id","$$ChildScope","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","destroyChildScope","$event","currentScope","cleanUpScope","$$prevSibling","$root","Scope","beginPhase","phase","clearPhase","incrementWatchersCount","decrementListenerCount","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","child","watchExp","watcher","$$digestWatchIndex","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","unwatchFn","$watchCollectionInterceptor","_value","newLength","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","internalObject","$watchCollectionAction","initRun","veryOldValue","trackVeryOldValue","changeDetector","watch","watchers","dirty","logIdx","asyncTask","ttl","watchLog","asyncQueuePosition","asyncQueue","$eval","traverseScopesLoop","postDigestQueuePosition","postDigestQueue","eventName","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","uri","isImage","normalizedVal","regex","adjustMatcher","$sceMinErr","escapeForRegexp","adjustMatchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","matchUrl","isResourceUrlAllowedByPolicy","allowed","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","trustAs","Constructor","byType","maybeTrusted","trustedValueHolderBase","htmlSanitizer","CSS","URL","JS","sce","isEnabled","parseAs","enumValue","lName","vendorPrefix","eventSupport","isChromePackagedApp","chrome","app","runtime","hasHistoryPushState","pushState","android","navigator","userAgent","boxee","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","hasEvent","divElm","httpOptions","handleRequestFn","tpl","ignoreRequestError","handleError","$templateRequestMinErr","totalPendingRequests","getTrustedResourceUrl","transformer","testability","findBindings","opt_exactMatch","dataBinding","bindingName","findModels","prefixes","attributeEquals","getLocation","setLocation","whenStable","deferreds","$$timeoutId","urlParsingNode","requestUrl","originUrl","$$CookieReader","safeGetCookie","cookie","safeDecodeURIComponent","lastCookies","lastCookieString","cookieArray","currentCookieString","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","anyPropertyKey","predicateFn","matchAgainstAnyProp","expressionType","getTypeForFilter","createPredicateFn","shouldMatchPrimitives","actual","expected","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","NUMBER_FORMATS","amount","currencySymbol","fractionSize","CURRENCY_SYM","PATTERNS","maxFrac","formatNumber","GROUP_SEP","DECIMAL_SEP","number","numStr","digits","numberOfIntegerDigits","zeros","exponent","ZERO_CHAR","MAX_DIGITS","roundNumber","parsedNumber","minFrac","fractionLen","min","roundAt","digit","k","carry","reduceRight","groupSep","decimalSep","isInfinity","isZero","abs","formattedText","integerLen","decimals","reduce","lgSize","gSize","negPre","negSuf","posPre","posSuf","padNumber","negWrap","neg","dateGetter","dateStrGetter","shortForm","standAlone","propPrefix","timeZoneGetter","zone","paddedZone","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","getThursdayThisWeek","datetime","getFullYear","getMonth","getDate","weekGetter","firstThurs","thisThurs","round","ampmGetter","getHours","AMPMS","eraGetter","ERAS","longEraGetter","ERANAMES","jsonStringToDate","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","ms","format","DATETIME_FORMATS","NUMBER_STRING","DATE_FORMATS_SPLIT","DATE_FORMATS","spacing","limit","begin","Infinity","sliceFn","processPredicates","sortPredicates","predicate","descending","objectValue","getPredicateValue","defaultCompare","v1","v2","type1","type2","value1","value2","sortPredicate","reverseOrder","compareFn","getComparisonObject","tieBreaker","predicateValues","predicates","doComparison","compareValues","ngDirective","nullFormRenameControl","control","$name","FormController","controls","$error","$$success","$pending","$dirty","$pristine","$valid","$invalid","$submitted","$$parentForm","nullFormCtrl","$rollbackViewValue","$commitViewValue","$addControl","$$renameControl","newName","oldName","$removeControl","$setValidity","addSetValidityMethod","ctrl","unset","$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","$setSubmitted","stringBasedInputType","$formatters","$isEmpty","textInputType","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","PARTIAL_VALIDATION_TYPES","PARTIAL_VALIDATION_EVENTS","validity","VALIDITY_STATE_PROPERTY","origBadInput","badInput","origTypeMismatch","typeMismatch","$render","weekParser","isoWeek","existingDate","WEEK_REGEXP","week","hours","seconds","milliseconds","addDays","getSeconds","getMilliseconds","NaN","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","mm","ss","sss","part","createDateInputType","parseDate","isValidDate","parseObservedDateValue","badInputChecker","previousDate","$options","$$parserName","$parsers","parsedDate","ngModelMinErr","ngMin","minVal","$validators","$validate","ngMax","maxVal","nativeValidation","numberFormatterParser","NUMBER_REGEXP","parseNumberAttrVal","isNumberInteger","countDecimals","numString","decimalSymbolIndex","isValidForStep","viewValue","stepBase","decimalCount","multiplier","pow","numberInputType","rangeInputType","setInitialValueAndObserver","htmlAttrName","changeFn","minChange","$modelValue","supportsRange","elVal","maxChange","stepChange","stepVal","hasMinAttr","hasMaxAttr","hasStepAttr","originalRender","rangeUnderflow","rangeOverflow","modelValue","stepMismatch","urlInputType","URL_REGEXP","emailInputType","email","EMAIL_REGEXP","radioInputType","parseConstantExpr","parseFn","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","classDirective","arrayDifference","arrayClasses","addClasses","digestClassCounts","removeClasses","classCounts","classesToUpdate","updateClasses","ngClassWatchAction","$index","old$index","mod","setValidity","validationErrorKey","createAndSet","unsetAndCleanup","cachedToggleClass","PENDING_CLASS","toggleValidationCss","isObjectEmpty","combinedState","switchValue","isValid","VALID_CLASS","INVALID_CLASS","chromeHack","optionElement","REGEX_STRING_REGEXP","manualLowercase","manualUppercase","documentMode","rules","ngCspElement","ngCspAttribute","noInlineStyle","name_","NODE_TYPE_ATTRIBUTE","full","major","minor","dot","codeName","Node","lowercasedName","getNamedItem","$dv","multiple","nodeCount","addHandler","noEventListener","onFn","replaceNode","wrapNode","newElement","condition","classCondition","nextElementSibling","extraParameters","dummyEvent","eventFnsCopy","handlerArgs","arg3","$animateMinErr","NG_ANIMATE_CLASSNAME","postDigestElements","updateData","handleCSSClassChanges","existing","addRemoveClassesPostDigest","classesAdded","classesRemoved","pin","domOperation","from","runner","$$registeredAnimations","classNameFilter","$$classNameFilter","reservedRegex","domInsert","afterElement","afterNode","previousElementSibling","enter","move","leave","addclass","tempClasses","waitForTick","waitQueue","passed","AnimateRunner","setHost","rafTick","timeoutTick","_doneCallbacks","_tick","_state","INITIAL_STATE","DONE_PENDING_STATE","DONE_COMPLETE_STATE","chain","runners","getPromise","resolveHandler","rejectHandler","pause","resume","_resolve","initialOptions","applyAnimationContents","closed","$$prepared","cleanupStyles","isFirstChange","Content-Type","[","{","$httpMinErr","callbackId","called","callbackMap","PATH_MATCH","http","https","ftp","locationPrototype","paramValue","Location","OPERATORS","ESCAPE","f","'","\"","lex","readString","peek","readNumber","peekMultichar","readIdent","isWhitespace","ch2","ch3","op1","op2","op3","throwError","chars","codePointAt","isValidIdentifierStart","isValidIdentifierContinue","cp","cp1","cp2","isExpOperator","colStr","peekCh","quote","rawString","hex","rep","ExpressionStatement","Property","program","expressionStatement","expect","filterChain","assignment","ternary","logicalOR","consume","logicalAND","equality","relational","additive","multiplicative","unary","primary","arrayDeclaration","selfReferential","parseArguments","baseExpression","peekToken","kind","e1","e2","e3","e4","peekAhead","$locals","nextId","vars","own","assignable","stage","computing","recurse","return_","generateFunction","fnKey","intoId","watchId","fnString","USE","STRICT","filterPrefix","watchFns","varsPrefix","section","nameId","recursionFn","skipWatchIdCheck","if_","lazyAssign","computedMember","lazyRecurse","plus","getHasOwnProperty","nonComputedMember","addEnsureSafeObject","notNull","addEnsureSafeAssignContext","addEnsureSafeMemberName","addEnsureSafeFunction","member","SAFE_IDENTIFIER","UNSAFE_CHARACTERS","stringEscapeFn","stringEscapeRegex","c","rhs","lhs","unary+","unary-","unary!","binary+","binary-","binary*","binary/","binary%","binary===","binary!==","binary==","binary!=","binary<","binary>","binary<=","binary>=","binary&&","binary||","ternary?:","astCompiler","yy","y","MMMM","MMM","M","LLLL","H","hh","EEEE","EEE","Z","ww","G","GG","GGG","GGGG","xlinkHref","propName","defaultLinkFn","normalized","htmlAttr","formDirectiveFactory","isNgForm","getSetter","formElement","nameAttr","ctrls","handleFormSubmission","parentFormCtrl","DATE_REGEXP","DATETIMELOCAL_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","datetime-local","month","range","CONSTANT_VALUE_REGEXP","tplAttr","$compile","templateElement","ngBindHtmlGetter","ngBindHtmlWatch","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","previousElements","srcExp","onloadExp","autoScrollExp","autoscroll","previousElement","currentElement","changeCounter","cleanupLastIncludeContent","afterAnimation","thisChangeId","trimValues","UNTOUCHED_CLASS","TOUCHED_CLASS","EMPTY_CLASS","NOT_EMPTY_CLASS","NgModelController","$$rawModelValue","$asyncValidators","$untouched","$touched","parserValid","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","$$setOptions","getterSetter","invokeModelGetter","invokeModelSetter","$$$p","$$updateEmptyClasses","currentValidationRunId","$setTouched","$$lastCommittedViewValue","prevValid","prevModelValue","allowInvalid","$$runValidators","allValid","$$writeModelToScope","doneCallback","processParseErrors","errorKey","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","$$parseAndValidate","writeToModelIfNeeded","updateOnDefault","$$debounceViewValueCommit","debounce","debounceDelay","formatters","modelCtrl","formCtrl","updateOn","DEFAULT_REGEXP","ngOptionsMinErr","NG_OPTIONS_REGEXP","parseOptionsExpression","optionsExp","selectElement","Option","selectValue","label","group","getOptionValuesKeys","optionValues","optionValuesKeys","keyName","itemKey","valueName","selectAs","trackBy","selectAsFn","viewValueFn","trackByFn","getTrackByValueFn","getTrackByValue","getLocals","displayFn","groupByFn","disableWhenFn","valuesFn","getWatchables","watchedArray","optionValuesLength","disableWhen","getOptions","optionItems","selectValueMap","optionItem","getOptionFromViewValue","getViewValueFromOption","ngOptionsPostLink","addOptionElement","optionTemplate","updateOptionElement","updateOptions","selectCtrl","readValue","groupElementMap","providedEmptyOption","emptyOption","groupElement","optGroupTemplate","listFragment","ngModelCtrl","nextValue","isNotPrimitive","emptyOptionRendered","unknownOption","renderEmptyOption","removeEmptyOption","renderUnknownOption","removeUnknownOption","writeValue","selectedValues","selections","selectedOption","registerOption","optionScope","optionEl","BRACE","IS_WHEN","updateElementText","newText","lastCount","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","attributeName","tmpMatch","whenKey","countIsNaN","pluralCat","whenExpFn","NG_REMOVED","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","getBlockStart","getBlockEnd","ngRepeatEndComment","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","lastBlockMap","nextNode","collectionLength","trackById","trackByIdFn","collectionKeys","nextBlockOrder","previousNode","nextBlockMap","blockKey","NG_HIDE_CLASS","NG_HIDE_IN_PROGRESS_CLASS","newStyles","oldStyles","cases","ngSwitchController","watchExpr","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","selectedTransclude","caseElement","selectedScope","anchor","ngSwitchWhenSeparator","whenCase","ngTranscludeMinErr","fallbackLinkFn","ngTranscludeCloneAttachFn","useFallbackContent","ngTranscludeSlot","noopNgModelController","SelectController","optionsMap","unknownVal","hasOption","addOption","removeOption","optionAttrs","hasDynamicValueAttr","interpolateTextFn","selectPreLink","lastView","lastViewRef","selectPostLink","selectCtrlName","patternExp","intVal","getDecimals","getVF","opt_precision","PLURAL_CATEGORY","ZERO","ONE","TWO","FEW","MANY","OTHER","DAY","FIRSTDAYOFWEEK","MONTH","SHORTDAY","SHORTMONTH","STANDALONEMONTH","WEEKENDRANGE","fullDate","longDate","medium","mediumDate","mediumTime","short","shortDate","shortTime","minInt","localeID","vf","hljs","x","useBR","o","u","z","A","q","C","B","I","F","E","D","cI","bK","lR","bR","eW","eR","tE","iR","starts","Boolean","continuation","S","L","J","R","U","V","T","X","W","classPrefix","Y","N","sL","g","subLanguageMode","language","Q","P","cN","rB","eB","rE","eE","K","O","languages","second_best","tabReplace","createElementNS","aliases","highlight","highlightAuto","fixMarkup","highlightBlock","configure","initHighlighting","initHighlightingOnLoad","registerLanguage","getLanguage","IR","UIR","NR","CNR","BNR","RSR","BE","ASM","QSM","CLCM","CBLCLM","HCM","NM","CNM","BNM","REGEXP_MODE","TM","UTM","keyword","built_in","title","reserved","aggregate","special_functions","flow","stream","winutils","typename","command","_hljsOptions","setOptions","hljsCache","hljsService","_elm","_lang","_code","_hlCb","codeElm","setLanguage","highlightCallback","cb","res","_cacheKey","clear","release","glue","tElm","staticCode","iElm","iAttrs","onhighlight","newCode","oldCode","srcExpr","include","templateCachePromise","dfd","expandingExpr","scrollHeight","expandDone","expandedExpr","collapse","collapsingExpr","collapseDone","collapsedExpr","expanding","collapsing","collapsed","uibCollapse","shouldCollapse","closeOthers","accordionConfig","openGroup","isOpen","addGroup","groupScope","removeGroup","heading","panelClass","setHeading","accordionCtrl","openClass","toggleOpen","headingId","panelId","accordionGroupCtrl","getHeaderSelectors","uibAccordionTransclude","closeable","close","dismissOnTimeout","activeClass","toggleEvent","buttonConfig","buttonsCtrl","uncheckableExpr","uibUncheckable","uibBtnRadio","isActive","uncheckable","getTrueValue","getCheckboxValue","btnCheckboxTrue","getFalseValue","btnCheckboxFalse","clearBufferedTransitions","bufferedTransitions","setActive","slides","slide","goNext","direction","destroyed","currentIndex","$currentTransition","SLIDE_DIRECTION","currentIdx","getCurrentIndex","nextSlide","nextIndex","nextDirection","restartTimer","findSlideIndex","resetTimer","currentInterval","resetTransition","timerFn","isPlaying","addSlide","play","newIndex","noWrap","removeSlide","bufferedIndex","indexOfSlide","isPrevDisabled","isNextDisabled","noPause","noTransition","carouselCtrl","beforeAddClass","directionClass","removeClassFn","beforeRemoveClass","createParser","quoteIndex","inLiteral","formatCodeToRegex","toTimezone","fromTimezone","localeId","SPECIAL_CHARACTERS_REGEXP","parsers","formatter","_date","sign","_format","mapper","endStr","baseDate","tzOffset","fields","dt","datesetter","timesetter","ON_REGEXP","IS_REGEXP","linkedScopes","instances","exps","addForExp","removeScope","compareWithExp","expToData","watchFn","compareWithVal","newActivated","thisVal","onExp","lastActivated","removedScope","newWatchScope","onExpMatches","uibIsClass","expsStr","datepickerMode","formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","maxDate","maxMode","minDate","minMode","shortcutPropagation","showWeeks","yearColumns","yearRows","datepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","dateParser","setMode","datepickerOptions","watchListeners","modes","startingDay","refreshView","uniqueId","ngDisabled","dateObject","activeDate","activeDateId","ngModelCtrl_","initDate","render","selectedDt","_refreshView","activeDt","createDateObject","model","today","past","future","customClass","dateDisabled","arrays","years","months","toggleMode","13","32","33","34","35","36","37","38","39","40","focusElement","keydown","handleKeyDown","getDaysInMonth","DAYS_IN_MONTH","getISO8601WeekNumber","checkDate","setDate","setMonth","getDates","startDate","dates","firstDayOfMonth","difference","numDisplayedFromPreviousMonth","firstDate","days","secondary","labels","abbr","rows","weekNumbers","thursdayIndex","numWeeks","curWeek","date1","date2","_date1","_date2","getStartingYear","columns","yearpickerInit","datepickerCtrl","daypickerCtrl","monthpickerCtrl","SCROLLBAR_WIDTH","BODY_SCROLLBAR_WIDTH","OVERFLOW_REGEX","normal","PLACEMENT_REGEX","auto","vertical","BODY_REGEX","getRawNode","parseStyle","isStaticPositioned","scrollbarWidth","isBody","bodyElem","innerWidth","clientWidth","scrollElem","scrollbarPadding","elemStyle","paddingRight","paddingBottom","scrollParent","tagName","widthOverflow","scrollWidth","originalRight","heightOverflow","clientHeight","originalBottom","isScrollable","includeHidden","overflowRegex","includeSelf","documentEl","excludeStatic","spStyle","includeMagins","elemOffset","marginTop","elemBCR","viewportOffset","useDocument","includePadding","offsetBCR","offsetParentBCR","offsetParentStyle","paddingTop","paddingLeft","parsePlacement","placement","autoPlace","positionElements","hostElem","targetElem","appendToBody","targetWidth","targetHeight","hostElemPos","targetElemPos","targetElemStyle","adjustedSize","marginBottom","xOverflow","yOverflow","positionArrow","innerElem","isTooltip","arrowElem","arrowCss","borderProp","borderWidth","borderRadiusProp","borderRadius","altInputFormats","clearText","closeOnDateSelection","closeText","currentText","datepickerPopup","datepickerPopupTemplateUrl","datepickerTemplateUrl","html5Types","onOpenFocus","showButtonBar","$position","datepickerPopupConfig","$datepickerPopupLiteralWarning","parseDateString","dateFormat","documentClickBind","popup","$popup","dpContainsTarget","popupContainsTarget","inputKeydownBind","positionPopup","dpElement","popupPlacement","popupEl","datepickerEl","scrollParentEl","isHtml5DateInput","_ngModel_","datepickerAppendToBody","uibDatepickerPopup","newDateFormat","ng-model","ng-change","template-url","dateSelection","debounceTime","timeoutPromise","appendToOpenClass","openScope","dropdownScope","closeDropdown","keybindFilter","getAutoClose","toggleElement","getToggleElement","dropdownElement","getDropdownElement","focusToggleElement","isKeynavEnabled","focusDropdownEntry","dropdownConfig","uibDropdownService","templateScope","getIsOpen","setIsOpen","toggleInvoker","onToggle","keynavEnabled","dropdownAppendTo","appendToEl","dropdownAppendToBody","keyboardNav","dropdownMenu","autoClose","getElement","wasOpen","rightalign","appendOffset","openContainer","hasOpenClass","dropdownMenuTemplateUrl","tplContent","newEl","dropdownCtrl","dropdownNested","tplUrl","toggleDropdown","aria-haspopup","aria-expanded","createNew","removeTop","entries","hasKey","setResolver","invocables","resolves","resolveObj","resolveIter","$modalStack","modalInClass","NOW_CLOSING_EVENT","setIsAsync","modalOptions","backdropClass","windowClass","windowTopClass","modal","getTop","backdrop","dismiss","$isRendered","modalRenderDeferObj","animationPromise","modalRendered","inputWithAutofocus","modalAnimation","uibModalAnimationClass","$$multiMap","$$stackedMap","$uibPosition","isVisible","backdropIndex","topBackdropIndex","opened","openedWindows","topModalIndex","removeModalWindow","modalInstance","elementToReceiveFocus","modalWindow","appendToElement","previousTopOpenedModal","modalDomEl","removeAfterAnimate","modalScope","modalBodyClass","openedClass","OPENED_MODAL_CLASS","openedClasses","areAnyOpen","toggleTopWindowClass","closedDeferred","checkRemoveBackdrop","toggleSwitch","backdropDomEl","backdropScopeRef","backdropScope","domEl","afterAnimating","asyncDeferred","asyncPromise","keydownListener","keyboard","loadFocusElementList","focusChanged","isFocusInFirstItem","isModalFocused","focusLastFocusableElement","isFocusInLastItem","focusFirstFocusableElement","broadcastClosing","resultOrReason","closing","tabableSelector","newBackdropIndex","modalOpener","renderDeferred","currBackdropIndex","angularDomEl","windowTemplateUrl","window-class","window-top-class","$$uibDestructionScheduled","dismissAll","topModal","srcElement","modalDomE1","$modalProvider","$uibResolve","getTemplatePromise","$modal","promiseChain","getPromiseChain","resolveWithTemplate","templateAndResolvePromise","modalResultDeferred","modalOpenedDeferred","modalClosedDeferred","modalRenderDeferred","rendered","samePromise","tplAndVars","providedScope","$close","$dismiss","ctrlInstance","ctrlInstantiate","ctrlLocals","$resolve","$uibModalInstance","setNumPages","numPages","_watchers","itemsPerPage","totalPages","calculateTotalPages","updatePage","newTotal","oldTotal","ceil","totalItems","page","selectPage","clickAllowed","noPrevious","noNext","uibPaging","uibPagerConfig","align","previousText","nextText","paginationCtrl","uibPaginationConfig","makePage","getPages","currentPage","pages","startPage","endPage","isMaxSized","maxSize","rotate","pageLabel","forceEllipses","boundaryLinkNumbers","previousPageSet","secondPageLink","firstPageLink","nextPageSet","secondToLastPageLink","lastPageLink","$page","boundaryLinks","directionLinks","firstText","lastText","defaultOptions","placementClassPrefix","popupDelay","popupCloseDelay","useContentExp","triggerMap","outsideClick","none","globalOptions","setTriggers","triggers","keypressListener","openedTooltips","ttType","defaultTriggerShow","getTriggers","startSym","endSym","tElem","tooltipLinker","tooltipCtrl","toggleTooltipBind","ttScope","hideTooltipBind","showTooltipBind","hasEnableExp","cancelHide","prepareTooltip","showTimeout","cancelShow","hideTimeout","createTooltip","assignIsOpen","positionTooltip","positionTimeout","transitionTimeout","removeTooltip","tooltip","tooltipLinkedScope","prepObservers","unregisterObservers","contentParse","popupClass","lastPlacement","closeDelay","isOpenParse","observers","repositionScheduled","bodyHideTooltipBind","prepTriggers","unregisterTriggers","ttPosition","origScope","contentExp","appendToBodyVal","appendKey","tooltipTemplateTranscludeScope","parseAsResourceUrl","uibTooltipTemplateTransclude","tooltipAnimationClass","$uibTooltip","originScope","uibTitle","progressConfig","getMaxOrDefault","maxParam","bars","addBar","bar","transition","recalculatePercentage","totalPercentage","total","toFixed","removeBar","progressCtrl","stateOn","stateOff","enableReset","titles","ratingConfig","tmpTitles","ratingStates","buildTemplateObjects","states","getTitle","rate","readonly","newViewValue","onHover","onLeave","onKeydown","ratingCtrl","findTabIndex","tabs","oldIndex","previousIndex","previousSelected","tab","onDeselect","$selectedIndex","onSelect","addTab","newActiveIndex","removeTab","newActiveTabIndex","justified","tabsetCtrl","$transcludeFn","isTabHeading","uibTabContentTransclude","headingElement","hourStep","minuteStep","secondStep","showMeridian","showSeconds","meridians","readonlyInput","mousewheel","arrowkeys","showSpinners","timepickerConfig","getHoursFromTemplate","valid","meridian","getMinutesFromTemplate","getSecondsFromTemplate","pad","noPad","keyboardChange","makeValid","updateTemplate","invalidHours","invalidMinutes","invalidSeconds","padHours","addSecondsToSelected","addSeconds","addMinutes","newDate","modelIsEmpty","hoursInputEl","minutesInputEl","secondsInputEl","setupMousewheelEvents","setupArrowkeyEvents","setupInputEvents","noIncrementHours","incrementedSelected","noDecrementHours","decrementedSelected","noIncrementMinutes","noDecrementMinutes","noIncrementSeconds","noDecrementSeconds","noToggleMeridian","isScrollingUp","delta","wheelDelta","deltaY","incrementHours","decrementHours","incrementMinutes","decrementMinutes","incrementSeconds","decrementSeconds","updateHours","updateMinutes","updateSeconds","invalidate","setSeconds","toggleMeridian","uibTimepickerConfig","timepickerCtrl","TYPEAHEAD_REGEXP","itemName","viewMapper","modelMapper","originalScope","$$debounce","typeaheadParser","fireRecalculating","moveInProgress","debouncedRecalculate","recalculatePosition","HOT_KEYS","eventDebounceTime","minLength","typeaheadMinLength","waitTime","typeaheadWaitMs","isEditable","typeaheadEditable","isLoadingSetter","typeaheadLoading","isSelectEvent","typeaheadShouldSelect","vals","onSelectCallback","typeaheadOnSelect","isSelectOnBlur","typeaheadSelectOnBlur","isNoResultsSetter","typeaheadNoResults","inputFormatter","typeaheadInputFormatter","typeaheadAppendToBody","typeaheadAppendTo","focusFirst","typeaheadFocusFirst","selectOnExact","typeaheadSelectOnExact","isOpenSetter","typeaheadIsOpen","showHint","typeaheadShowHint","parsedModel","$setModelValue","parserResult","uibTypeahead","offDestroy","popupId","aria-autocomplete","aria-owns","inputsContainer","hintInputElem","border-color","box-shadow","background","color","vertical-align","background-color","popUpEl","move-in-progress","query","assign-is-open","typeaheadTemplateUrl","typeaheadPopupTemplateUrl","resetHint","resetMatches","activeIdx","getMatchId","inputIsExactMatch","inputValue","getMatchesAsync","onCurrentRequest","debounceUpdate","firstLabel","scheduleSearchWithTimeout","cancelPreviousTimeout","$item","$model","$label","typeaheadFocusOnSelect","shouldSelect","offsetTop","editable","dismissClickHandler","_modelCtrl","_ngModelOptions","candidateViewValue","emptyViewValue","popupTemplateUrl","isDropdownOpen","matchIdx","selectActive","selectMatch","tplEl","escapeRegexp","queryToEscape","containsHtml","matchItem","isSanitizePresent","trustAsHtml","$$uibCarouselCss","$$uibDatepickerCss","$$uibPositionCss","$$uibDatepickerpopupCss","$$uibTooltipCss","$$uibTimepickerCss","$$uibTypeaheadCss","ancestors","objectKeys","inheritParams","currentParams","newParams","$current","$to","parentParams","inherited","inheritList","equalForKeys","filterByKeys","filtered","pick","omit","silenceUncaughtInPromise","$Resolve","VISIT_IN_PROGRESS","VISIT_DONE","NOTHING","NO_DEPENDENCIES","NO_LOCALS","NO_PARENT","$$promises","$$values","study","visit","visited","cycle","plan","isResolve","invocableKeys","merged","$$inheritedValues","resolution","$$failure","invocable","onfailure","invocation","proceed","waitParams","dep","TemplateFactoryProvider","shouldUnsafelyUseHttp","TemplateFactory","fromConfig","fromString","fromUrl","templateProvider","fromProvider","UrlMatcher","parentMatcher","addParameter","paramNames","$$UMFP","Param","quoteRegExp","squash","surroundPattern","matchDetails","isSearch","segment","cfg","caseInsensitive","placeholder","searchPlaceholder","$$new","ParamSet","isOptional","sourceSearch","sourcePath","strict","$$paramNames","$UrlMatcherFactory","valToString","/","valFromString","~~","~2F","getDefaultConfig","isStrictMode","isCaseInsensitive","isInjectable","flushTypeQueue","typeQueue","$types","def","defaultSquashPolicy","enqueue","defaultTypes","encode","decode","int","capture","any","$$getDefaultValue","strictMode","isMatcher","definitionFn","unwrapShorthand","isShorthand","$$fn","getType","urlType","getArrayMode","arrayDefaults","arrayParamNomenclature","getSquashPolicy","getReplace","arrayMode","configuredKeys","defaultPolicy","$value","hasReplaceVal","$replace","replacement","$asArray","dynamic","$$parent","$$keys","ignore","paramset","paramValues","$$equals","paramValues1","paramValues2","equal","$$validates","rawVal","encoded","$UrlRouterProvider","$locationProvider","$urlMatcherFactory","regExpPrefix","interpolate","handleIfMatch","$match","appendBasePath","isHtml5","absolute","update","rule","handled","lastPushedUrl","otherwise","listen","interceptDeferred","sync","read","urlMatcher","$$avoidResync","validates","slash","redirect","handlerIsString","strategies","sticky","deferIntercept","$StateProvider","$urlRouterProvider","isRelative","stateName","findState","stateOrName","isStr","rel","pathLength","queueState","parentName","flushQueuedChildren","queued","registerState","stateBuilder","$delegates","abstractKey","$stateParams","$state","navigable","transitionTo","isGlob","doesStateMatchGlob","glob","globSegments","$view","$urlRouter","handleRedirect","TransitionAborted","retry","$retry","TransitionFailed","retryTransition","toParams","TransitionSuperseded","resolveState","paramsAreFiltered","resolveViews","viewsPromises","views","injectables","controllerProvider","injectLocals","$$controller","$$controllerAs","$$resolveAs","resolveAs","TransitionSupersededError","TransitionPrevented","go","fromParams","fromPath","toState","redirectResult","toPath","keep","toLocals","reloadState","ownParams","shouldSkipReload","resolved","entering","exiting","onExit","onEnter","acc","paramDef","includes","lossy","nav","nonSearchParamsEqual","fromAndToState","notSearchParam","nonQueryParamKeys","nonQueryParams","nonQueryParamSet","reloadOnSearch","compositeName","abstract","$ViewProvider","$templateFactory","$ViewScrollProvider","useAnchorScroll","$ViewDirective","$uiViewScroll","getRenderer","statics","$animator","cleanupLastView","previousEl","currentEl","$uiViewData","renderer","$$animLeave","updateView","firstTime","getUiViewName","previousLocals","latestLocals","animEnter","animLeave","viewAnimData","$animEnter","$animLeave","$ViewDirectiveFill","resolveData","uiView","uiViewCreatedBy","parseStateRef","ref","preparsed","paramExpr","stateContext","stateData","getTypeInfo","isSvg","isForm","isAnchor","clickable","clickHook","ignorePreventDefaultCount","defaultOpts","$StateRefDirective","uiSrefActive","uiSref","unlinkInfoFn","uiSrefOpts","$$addStateInfo","$StateRefDynamicDirective","runStateRefLink","uiState","uiStateParams","uiStateOpts","$StateRefActiveDirective","addState","stateParams","stateHash","createStateHash","stateInfo","activeClasses","anyMatch","exactMatch","activeEqClass","uiSrefActiveEq","deregister","$IsStateFilter","isFilter","$IncludedByStateFilter","includesFilter","searchParams","decodePathArray","reverseString","unquoteDashes","allReversed","paramName","parameters","nTotal","nPath","paramVal","encodeDashes","isPathParam","isDefaultValue","nextSegment","isFinalPathParam","$subPattern","sub","ArrayType","bindTo","arrayWrap","arrayUnwrap","falsey","arrayHandler","allTruthyMode","arrayEqualsHandler","val1","val2","$arrayMode","autoinject"],"mappings":"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","file":"scripts/vendor.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/scripts/app.js b/docs/scripts/app.js index b0184704..e9ae5962 100644 --- a/docs/scripts/app.js +++ b/docs/scripts/app.js @@ -1,5 +1,5 @@ /******/!function(e){function t(d){if(l[d])return l[d].exports;var i=l[d]={exports:{},id:d,loaded:!1};return e[d].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}// webpackBootstrap /******/ -var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),o=d(i),s=l(6),a=d(s);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,o["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
"}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),o=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,o=l.html(i).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},controller:s["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var o=l(3),s=d(o)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function s(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,o=t[0].offsetWidth-l-d-i,s=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);s.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(s=s.slice(0,e.settings.smartButtonMaxItems),s.push("..."));var a=s.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(o<=h("..."))return"...";for(;h(a)>o;)"..."!==s[s.length-1]&&(s.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function T(t,l){if(angular.isUndefined(l))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

What is AngularJS Dropdown Multiselect?

This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

In this page you can see basic and advanced usage examples.

Download

There are several options to do that:
  1. Using bower: `bower install angularjs-dropdown-multiselect`
  2. Using npm: `npm install angularjs-dropdown-multiselect`
  3. Download the .zip file from here
  4. Using it from GitHub raw using this link
This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
test

Demo

The model:

{{testmodel|json}}

Demo

The model:

{{example1model|json}}

Code

// HTML
// JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
This example shows the ability to select the property to display as text label.
In this case, the property the used as label is "id".

Demo

The model:

{{example2model|json}}

Code

// HTML
// JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
You can use the feature in order to show which items are selected instead the items count.
In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

Demo

The model:

{{example13model|json}}

Code

//HTML
//JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

Demo

The model:

{{example14model|json}}

Code

//HTML
//JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

Demo

The model:

{{example9model|json}}

Code

// HTML
// JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

Demo

The model:

{{example20model|json}}

Code

// HTML
// JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

Demo

The model:

{{example21model|json}}

Code

// HTML
// JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

Demo

The model:

{{searchSelectAllModel|json}}

Code

// HTML
// JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
By default, there is no limit on the maximum selected items.
You can limit the selection by providing selectionLimit using the settings attribute.
Note 1: limit the selection to 0 is the default and won\'t limit the selection!
Note 2: When using this limit, the "Select All" button will not appear!

Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

Demo

The model:

{{example10model|json}}

Code

// HTML
// JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
Please read the notes in the "Selection Limit" example.
This example shows an example of using selection limit and single selection.

Demo

The model:

{{example12model|json}}

Code

// HTML
// JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

Demo

The model:

{{example11model|json}}

Code

// HTML
// JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

Demo

The model:

{{selectByGroupModel|json}}

Code

// HTML
// JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
You can select your own text of the button using the "defaultText" in settings.

Demo

The model:

{{example5model|json}}

Code

// HTML
// JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
This example shows a demostration of using a pre-setted model.
Note:The model should have the same objects as in the options array.

Demo

The model:

{{example6model|json}}

Code

// HTML
// JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
This example shows a demostration of access and set the search filter from outside the directive.
This can be done by settings the "search-filter" attribute.

Demo

The model:

{{example7model|json}}

Search Filter:

{{customFilter|json}}

Code

// HTML
// JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
You can also use a checkboxes list by setting checkBoxes setting to true!

Demo

The model:

{{example8model|json}}

Code

// HTML
// JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

Demo

You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

The model:

{{example16model|json}}

Code

// HTML
// JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

Demo

When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

The model:

{{example17model|json}}

Code

// HTML
// JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

Demo

When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

The model:

{{example18model|json}}

Code

// HTML
// JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

Demo

Instead of using the default template you can use an own custom temlpate.

The model:

{{example19model|json}}

Code

// HTML
// JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

Demo

The model:

{{disabledModel|json}}

Code

// HTML
// JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

Demo

The model:

{{selectedToTopModel|json}}

Code

// HTML
// JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
Example to show that options no longer need to be an object with an id property

Demo

The model:

{{stringModel|json}}

Code

// HTML
$scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };

Full API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
'), +var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),s=d(i),o=l(6),a=d(o);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,s["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
"}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),s=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,s=l.html(i).contents();e(s)(t)}}]).directive("ngDropdownMultiselect",s["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},transclude:!0,controller:o["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var s=l(3),o=d(s)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function s(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function o(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):s()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,s=t[0].offsetWidth-l-d-i,o=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);o.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(o=o.slice(0,e.settings.smartButtonMaxItems),o.push("..."));var a=o.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(s<=h("..."))return"...";for(;h(a)>s;)"..."!==o[o.length-1]&&(o.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),s();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):s())}function T(t,l){if(angular.isUndefined(l))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}},e.transclusionModel=[],e.transclusionData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.transclusionSettings={}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

What is AngularJS Dropdown Multiselect?

This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

In this page you can see basic and advanced usage examples.

Download

There are several options to do that:
  1. Using bower: `bower install angularjs-dropdown-multiselect`
  2. Using npm: `npm install angularjs-dropdown-multiselect`
  3. Download the .zip file from here
  4. Using it from GitHub raw using this link
This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
test

Demo

The model:

{{testmodel|json}}

Demo

The model:

{{example1model|json}}

Code

// HTML
// JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
This example shows the ability to select the property to display as text label.
In this case, the property the used as label is "id".

Demo

The model:

{{example2model|json}}

Code

// HTML
// JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
You can use the feature in order to show which items are selected instead the items count.
In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

Demo

The model:

{{example13model|json}}

Code

//HTML
//JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

Demo

The model:

{{example14model|json}}

Code

//HTML
//JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

Demo

The model:

{{example9model|json}}

Code

// HTML
// JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

Demo

The model:

{{example20model|json}}

Code

// HTML
// JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

Demo

The model:

{{example21model|json}}

Code

// HTML
// JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

Demo

The model:

{{searchSelectAllModel|json}}

Code

// HTML
// JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
By default, there is no limit on the maximum selected items.
You can limit the selection by providing selectionLimit using the settings attribute.
Note 1: limit the selection to 0 is the default and won\'t limit the selection!
Note 2: When using this limit, the "Select All" button will not appear!

Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

Demo

The model:

{{example10model|json}}

Code

// HTML
// JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
Please read the notes in the "Selection Limit" example.
This example shows an example of using selection limit and single selection.

Demo

The model:

{{example12model|json}}

Code

// HTML
// JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

Demo

The model:

{{example11model|json}}

Code

// HTML
// JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

Demo

The model:

{{selectByGroupModel|json}}

Code

// HTML
// JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
You can select your own text of the button using the "defaultText" in settings.

Demo

The model:

{{example5model|json}}

Code

// HTML
// JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
This example shows a demostration of using a pre-setted model.
Note:The model should have the same objects as in the options array.

Demo

The model:

{{example6model|json}}

Code

// HTML
// JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
This example shows a demostration of access and set the search filter from outside the directive.
This can be done by settings the "search-filter" attribute.

Demo

The model:

{{example7model|json}}

Search Filter:

{{customFilter|json}}

Code

// HTML
// JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
You can also use a checkboxes list by setting checkBoxes setting to true!

Demo

The model:

{{example8model|json}}

Code

// HTML
// JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

Demo

You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

The model:

{{example16model|json}}

Code

// HTML
// JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

Demo

When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

The model:

{{example17model|json}}

Code

// HTML
// JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

Demo

When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

The model:

{{example18model|json}}

Code

// HTML
// JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

Demo

Instead of using the default template you can use an own custom temlpate.

The model:

{{example19model|json}}

Code

// HTML
// JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

Demo

The model:

{{disabledModel|json}}

Code

// HTML
// JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

Demo

The model:

{{selectedToTopModel|json}}

Code

// HTML
// JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
Example to show that options no longer need to be an object with an id property

Demo

The model:

{{stringModel|json}}

Code

// HTML
$scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };
Example to show that you can replace the button with a custom element

Demo

My Custom trigger

The model:

{{transclusionModel|json}}

Code

// HTML
My Custom trigger
$scope.transclusionModel = []; $scope.transclusionData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.transclusionSettings = { };

Full API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
'), e.put("app/v1docs/v1docs.template.html",'Main docs

Full V1 API Documentation

Attributes

List of allowed attributes, you can find more information about them in the usage examples above.

Attribute NameTypeDescription
selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
optionsObject / ArrayThe options for the dropdown.
extra-settingsObjectThe settings for the directive, more information about these settings are available below.
eventsObjectEvents callbacks, more information below.
translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
group-byStringThe name of the property which you like to group by your options. See grouping example.
checkboxesBooleanIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
search-filterStringUses for settings the search filter from outside the direcrtive.
disabledBooleanUsed for disabling the dropdown.

Settings

Available settings that effects the display or behavior of the directive.
These setting are set with the "extra-settings" attribute.

Property NameTypeDefault ValueDescription
dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
displayPropStringlabelThe name of the property that contains the text for the item.
idPropStringidThe name of the property that contains the id for the elements.
externalIdPropStringidThe name of the property that will use for the selected items model.
enableSearchBooleanfalseIndicated if to show the search input or not.
clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
searchFieldString"$"Indicates on which field the search should be done
selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
showCheckAllBooleantrueIndicates if to show the "Check All" item.
showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using group-by attribute. The parameter for the function will be the value of the group-by property.
scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group

Events

Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

Event NameParametersDescription
onItemSelectitemFired when selecting an item.
onItemDeselectitemFired when unselecting an item.
onSelectAllFired when clicking select all.
onDeselectAllFired when clicking unselect all.
onInitDoneFired when the directive done with the "link" phase.
onMaxSelectionReachedFired when the user reaches the max allowed selected items.
onSelectionChangedFired when the selection changes.

Translation Texts

Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

Property NameDefault ValueDescription
checkAllCheck All"Check All" item\'s text.
uncheckAllUncheck All"Uncheck All" item\'s text.
enableSearchEnable search"enable search" item\'s text.
disableSearchDisable search"disable search" item\'s text.
selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
selectionOf/The value between the selected values and the max values when using selection limit.
searchPlaceholderSearch...The placeholder for the search input.
buttonDefaultTextSelectThe default text that used for the button when no items selected.
dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
selectGroupSelect All:The prefix of the group selection.
')}]); //# sourceMappingURL=../maps/scripts/app.js.map diff --git a/docs/scripts/vendor.js b/docs/scripts/vendor.js index 87506fdf..bdce7166 100644 --- a/docs/scripts/vendor.js +++ b/docs/scripts/vendor.js @@ -11,7 +11,7 @@ * * Date: 2017-03-16T21:26Z */ -!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){t=t||ne;var n=t.createElement("script");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}function r(e){var t=!!e&&"length"in e&&e.length,n=me.type(e);return"function"===n||me.isWindow(e)?!1:"array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e}function i(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}function o(e,t,n){return me.isFunction(t)?me.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?me.grep(e,function(e){return e===t!==n}):"string"!=typeof t?me.grep(e,function(e){return se.call(t,e)>-1!==n}):Se.test(t)?me.filter(t,e,n):(t=me.filter(t,e),me.grep(e,function(e){return se.call(t,e)>-1!==n&&1===e.nodeType}))}function a(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function s(e){var t={};return me.each(e.match(Oe)||[],function(e,n){t[n]=!0}),t}function u(e){return e}function l(e){throw e}function c(e,t,n,r){var i;try{e&&me.isFunction(i=e.promise)?i.call(e).done(t).fail(n):e&&me.isFunction(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}function p(){ne.removeEventListener("DOMContentLoaded",p),e.removeEventListener("load",p),me.ready()}function f(){this.expando=me.expando+f.uid++}function d(e){return"true"===e?!0:"false"===e?!1:"null"===e?null:e===+e+""?+e:Ve.test(e)?JSON.parse(e):e}function h(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Re,"-$&").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n=d(n)}catch(i){}Fe.set(e,t,n)}else n=void 0;return n}function m(e,t,n,r){var i,o=1,a=20,s=r?function(){return r.cur()}:function(){return me.css(e,t,"")},u=s(),l=n&&n[3]||(me.cssNumber[t]?"":"px"),c=(me.cssNumber[t]||"px"!==l&&+u)&&Ue.exec(me.css(e,t));if(c&&c[3]!==l){l=l||c[3],n=n||[],c=+u||1;do o=o||".5",c/=o,me.style(e,t,c+l);while(o!==(o=s()/u)&&1!==o&&--a)}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}function g(e){var t,n=e.ownerDocument,r=e.nodeName,i=We[r];return i?i:(t=n.body.appendChild(n.createElement(r)),i=me.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),We[r]=i,i)}function v(e,t){for(var n,r,i=[],o=0,a=e.length;a>o;o++)r=e[o],r.style&&(n=r.style.display,t?("none"===n&&(i[o]=qe.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&_e(r)&&(i[o]=g(r))):"none"!==n&&(i[o]="none",qe.set(r,"display",n)));for(o=0;a>o;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}function $(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&i(e,t)?me.merge([e],n):n}function b(e,t){for(var n=0,r=e.length;r>n;n++)qe.set(e[n],"globalEval",!t||qe.get(t[n],"globalEval"))}function y(e,t,n,r,i){for(var o,a,s,u,l,c,p=t.createDocumentFragment(),f=[],d=0,h=e.length;h>d;d++)if(o=e[d],o||0===o)if("object"===me.type(o))me.merge(f,o.nodeType?[o]:o);else if(Xe.test(o)){for(a=a||p.appendChild(t.createElement("div")),s=(Ye.exec(o)||["",""])[1].toLowerCase(),u=Ke[s]||Ke._default,a.innerHTML=u[1]+me.htmlPrefilter(o)+u[2],c=u[0];c--;)a=a.lastChild;me.merge(f,a.childNodes),a=p.firstChild,a.textContent=""}else f.push(t.createTextNode(o));for(p.textContent="",d=0;o=f[d++];)if(r&&me.inArray(o,r)>-1)i&&i.push(o);else if(l=me.contains(o.ownerDocument,o),a=$(p.appendChild(o),"script"),l&&b(a),n)for(c=0;o=a[c++];)Ge.test(o.type||"")&&n.push(o);return p}function w(){return!0}function x(){return!1}function k(){try{return ne.activeElement}catch(e){}}function C(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)C(e,s,n,r,t[s],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)),i===!1)i=x;else if(!i)return e;return 1===o&&(a=i,i=function(e){return me().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=me.guid++)),e.each(function(){me.event.add(this,t,i,r,n)})}function S(e,t){return i(e,"table")&&i(11!==t.nodeType?t:t.firstChild,"tr")?me(">tbody",e)[0]||e:e}function T(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function E(e){var t=it.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function D(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(qe.hasData(e)&&(o=qe.access(e),a=qe.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;r>n;n++)me.event.add(t,i,l[i][n])}Fe.hasData(e)&&(s=Fe.access(e),u=me.extend({},s),Fe.set(t,u))}}function A(e,t){var n=t.nodeName.toLowerCase();"input"===n&&ze.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}function M(e,t,r,i){t=oe.apply([],t);var o,a,s,u,l,c,p=0,f=e.length,d=f-1,h=t[0],m=me.isFunction(h);if(m||f>1&&"string"==typeof h&&!de.checkClone&&rt.test(h))return e.each(function(n){var o=e.eq(n);m&&(t[0]=h.call(this,n,o.html())),M(o,t,r,i)});if(f&&(o=y(t,e[0].ownerDocument,!1,e,i),a=o.firstChild,1===o.childNodes.length&&(o=a),a||i)){for(s=me.map($(o,"script"),T),u=s.length;f>p;p++)l=o,p!==d&&(l=me.clone(l,!0,!0),u&&me.merge(s,$(l,"script"))),r.call(e[p],l,p);if(u)for(c=s[s.length-1].ownerDocument,me.map(s,E),p=0;u>p;p++)l=s[p],Ge.test(l.type||"")&&!qe.access(l,"globalEval")&&me.contains(c,l)&&(l.src?me._evalUrl&&me._evalUrl(l.src):n(l.textContent.replace(ot,""),c))}return e}function O(e,t,n){for(var r,i=t?me.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||me.cleanData($(r)),r.parentNode&&(n&&me.contains(r.ownerDocument,r)&&b($(r,"script")),r.parentNode.removeChild(r));return e}function P(e,t,n){var r,i,o,a,s=e.style;return n=n||ut(e),n&&(a=n.getPropertyValue(t)||n[t],""!==a||me.contains(e.ownerDocument,e)||(a=me.style(e,t)),!de.pixelMarginRight()&&st.test(a)&&at.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function N(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function j(e){if(e in ht)return e;for(var t=e[0].toUpperCase()+e.slice(1),n=dt.length;n--;)if(e=dt[n]+t,e in ht)return e}function I(e){var t=me.cssProps[e];return t||(t=me.cssProps[e]=j(e)||e),t}function q(e,t,n){var r=Ue.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function F(e,t,n,r,i){var o,a=0;for(o=n===(r?"border":"content")?4:"width"===t?1:0;4>o;o+=2)"margin"===n&&(a+=me.css(e,n+Le[o],!0,i)),r?("content"===n&&(a-=me.css(e,"padding"+Le[o],!0,i)),"margin"!==n&&(a-=me.css(e,"border"+Le[o]+"Width",!0,i))):(a+=me.css(e,"padding"+Le[o],!0,i),"padding"!==n&&(a+=me.css(e,"border"+Le[o]+"Width",!0,i)));return a}function V(e,t,n){var r,i=ut(e),o=P(e,t,i),a="border-box"===me.css(e,"boxSizing",!1,i);return st.test(o)?o:(r=a&&(de.boxSizingReliable()||o===e.style[t]),o=parseFloat(o)||0,o+F(e,t,n||(a?"border":"content"),r,i)+"px")}function R(e,t,n,r,i){return new R.prototype.init(e,t,n,r,i)}function H(){gt&&(ne.hidden===!1&&e.requestAnimationFrame?e.requestAnimationFrame(H):e.setTimeout(H,me.fx.interval),me.fx.tick())}function U(){return e.setTimeout(function(){mt=void 0}),mt=me.now()}function L(e,t){var n,r=0,i={height:e};for(t=t?1:0;4>r;r+=2-t)n=Le[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function _(e,t,n){for(var r,i=(z.tweeners[t]||[]).concat(z.tweeners["*"]),o=0,a=i.length;a>o;o++)if(r=i[o].call(n,t,e))return r}function B(e,t,n){var r,i,o,a,s,u,l,c,p="width"in t||"height"in t,f=this,d={},h=e.style,m=e.nodeType&&_e(e),g=qe.get(e,"fxshow");n.queue||(a=me._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,f.always(function(){f.always(function(){a.unqueued--,me.queue(e,"fx").length||a.empty.fire()})}));for(r in t)if(i=t[r],vt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(m?"hide":"show")){if("show"!==i||!g||void 0===g[r])continue;m=!0}d[r]=g&&g[r]||me.style(e,r)}if(u=!me.isEmptyObject(t),u||!me.isEmptyObject(d)){p&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],l=g&&g.display,null==l&&(l=qe.get(e,"display")),c=me.css(e,"display"),"none"===c&&(l?c=l:(v([e],!0),l=e.style.display||l,c=me.css(e,"display"),v([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===me.css(e,"float")&&(u||(f.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",f.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1;for(r in d)u||(g?"hidden"in g&&(m=g.hidden):g=qe.access(e,"fxshow",{display:l}),o&&(g.hidden=!m),m&&v([e],!0),f.done(function(){m||v([e]),qe.remove(e,"fxshow");for(r in d)me.style(e,r,d[r])})),u=_(m?g[r]:0,r,f),r in g||(g[r]=u.start,m&&(u.end=u.start,u.start=0))}}function W(e,t){var n,r,i,o,a;for(n in e)if(r=me.camelCase(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]),a=me.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function z(e,t,n){var r,i,o=0,a=z.prefilters.length,s=me.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=mt||U(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;u>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&u?n:(u||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:me.extend({},t),opts:me.extend(!0,{specialEasing:{},easing:me.easing._default},n),originalProperties:t,originalOptions:n,startTime:mt||U(),duration:n.duration,tweens:[],createTween:function(t,n){var r=me.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(W(c,l.opts.specialEasing);a>o;o++)if(r=z.prefilters[o].call(l,e,c,l.opts))return me.isFunction(r.stop)&&(me._queueHooks(l.elem,l.opts.queue).stop=me.proxy(r.stop,r)),r;return me.map(c,_,l),me.isFunction(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),me.fx.timer(me.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l}function Y(e){var t=e.match(Oe)||[];return t.join(" ")}function G(e){return e.getAttribute&&e.getAttribute("class")||""}function K(e,t,n,r){var i;if(Array.isArray(t))me.each(t,function(t,i){n||Dt.test(e)?r(e,i):K(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==me.type(t))r(e,t);else for(i in t)K(e+"["+i+"]",t[i],n,r)}function X(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(Oe)||[];if(me.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Z(e,t,n,r){function i(s){var u;return o[s]=!0,me.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!=typeof l||a||o[l]?a?!(u=l):void 0:(t.dataTypes.unshift(l),i(l),!1)}),u}var o={},a=e===Ht;return i(t.dataTypes[0])||!o["*"]&&i("*")}function J(e,t){var n,r,i=me.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&me.extend(!0,e,r),e}function Q(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[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}a||(a=i)}o=o||a}return o?(o!==u[0]&&u.unshift(o),n[o]):void 0}function ee(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(a=l[u+" "+o]||l["* "+o],!a)for(i in l)if(s=i.split(" "),s[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){a===!0?a=l[i]:l[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}var te=[],ne=e.document,re=Object.getPrototypeOf,ie=te.slice,oe=te.concat,ae=te.push,se=te.indexOf,ue={},le=ue.toString,ce=ue.hasOwnProperty,pe=ce.toString,fe=pe.call(Object),de={},he="3.2.0",me=function(e,t){return new me.fn.init(e,t)},ge=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ve=/^-ms-/,$e=/-([a-z])/g,be=function(e,t){return t.toUpperCase()};me.fn=me.prototype={jquery:he,constructor:me,length:0,toArray:function(){return ie.call(this)},get:function(e){return null==e?ie.call(this):0>e?this[e+this.length]:this[e]},pushStack:function(e){var t=me.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return me.each(this,e)},map:function(e){return this.pushStack(me.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ie.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:ae,sort:te.sort,splice:te.splice},me.extend=me.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||me.isFunction(a)||(a={}),s===u&&(a=this,s--);u>s;s++)if(null!=(e=arguments[s]))for(t in e)n=a[t],r=e[t],a!==r&&(l&&r&&(me.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&me.isPlainObject(n)?n:{},a[t]=me.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},me.extend({expando:"jQuery"+(he+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===me.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=me.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return e&&"[object Object]"===le.call(e)?(t=re(e))?(n=ce.call(t,"constructor")&&t.constructor,"function"==typeof n&&pe.call(n)===fe):!0:!1},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?ue[le.call(e)]||"object":typeof e},globalEval:function(e){n(e)},camelCase:function(e){return e.replace(ve,"ms-").replace($e,be)},each:function(e,t){var n,i=0;if(r(e))for(n=e.length;n>i&&t.call(e[i],i,e[i])!==!1;i++);else for(i in e)if(t.call(e[i],i,e[i])===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(ge,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(r(Object(e))?me.merge(n,"string"==typeof e?[e]:e):ae.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:se.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;n>r;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;a>o;o++)r=!t(e[o],o),r!==s&&i.push(e[o]);return i},map:function(e,t,n){var i,o,a=0,s=[];if(r(e))for(i=e.length;i>a;a++)o=t(e[a],a,n),null!=o&&s.push(o);else for(a in e)o=t(e[a],a,n),null!=o&&s.push(o);return oe.apply([],s)},guid:1,proxy:function(e,t){var n,r,i;return"string"==typeof t&&(n=e[t],t=e,e=n),me.isFunction(e)?(r=ie.call(arguments,2),i=function(){return e.apply(t||this,r.concat(ie.call(arguments)))},i.guid=e.guid=e.guid||me.guid++,i):void 0},now:Date.now,support:de}),"function"==typeof Symbol&&(me.fn[Symbol.iterator]=te[Symbol.iterator]),me.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){ue["[object "+t+"]"]=t.toLowerCase()});var ye=/*! +!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){t=t||ne;var n=t.createElement("script");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}function r(e){var t=!!e&&"length"in e&&e.length,n=me.type(e);return"function"===n||me.isWindow(e)?!1:"array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e}function i(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}function o(e,t,n){return me.isFunction(t)?me.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?me.grep(e,function(e){return e===t!==n}):"string"!=typeof t?me.grep(e,function(e){return se.call(t,e)>-1!==n}):De.test(t)?me.filter(t,e,n):(t=me.filter(t,e),me.grep(e,function(e){return se.call(t,e)>-1!==n&&1===e.nodeType}))}function a(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function s(e){var t={};return me.each(e.match(Ae)||[],function(e,n){t[n]=!0}),t}function l(e){return e}function u(e){throw e}function c(e,t,n,r){var i;try{e&&me.isFunction(i=e.promise)?i.call(e).done(t).fail(n):e&&me.isFunction(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}function p(){ne.removeEventListener("DOMContentLoaded",p),e.removeEventListener("load",p),me.ready()}function d(){this.expando=me.expando+d.uid++}function f(e){return"true"===e?!0:"false"===e?!1:"null"===e?null:e===+e+""?+e:Be.test(e)?JSON.parse(e):e}function h(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(_e,"-$&").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n=f(n)}catch(i){}Re.set(e,t,n)}else n=void 0;return n}function m(e,t,n,r){var i,o=1,a=20,s=r?function(){return r.cur()}:function(){return me.css(e,t,"")},l=s(),u=n&&n[3]||(me.cssNumber[t]?"":"px"),c=(me.cssNumber[t]||"px"!==u&&+l)&&Ve.exec(me.css(e,t));if(c&&c[3]!==u){u=u||c[3],n=n||[],c=+l||1;do o=o||".5",c/=o,me.style(e,t,c+u);while(o!==(o=s()/l)&&1!==o&&--a)}return n&&(c=+c||+l||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=u,r.start=c,r.end=i)),i}function g(e){var t,n=e.ownerDocument,r=e.nodeName,i=He[r];return i?i:(t=n.body.appendChild(n.createElement(r)),i=me.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),He[r]=i,i)}function v(e,t){for(var n,r,i=[],o=0,a=e.length;a>o;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&&qe(r)&&(i[o]=g(r))):"none"!==n&&(i[o]="none",Fe.set(r,"display",n)));for(o=0;a>o;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}function b(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&i(e,t)?me.merge([e],n):n}function y(e,t){for(var n=0,r=e.length;r>n;n++)Fe.set(e[n],"globalEval",!t||Fe.get(t[n],"globalEval"))}function $(e,t,n,r,i){for(var o,a,s,l,u,c,p=t.createDocumentFragment(),d=[],f=0,h=e.length;h>f;f++)if(o=e[f],o||0===o)if("object"===me.type(o))me.merge(d,o.nodeType?[o]:o);else if(Ze.test(o)){for(a=a||p.appendChild(t.createElement("div")),s=(We.exec(o)||["",""])[1].toLowerCase(),l=Ke[s]||Ke._default,a.innerHTML=l[1]+me.htmlPrefilter(o)+l[2],c=l[0];c--;)a=a.lastChild;me.merge(d,a.childNodes),a=p.firstChild,a.textContent=""}else d.push(t.createTextNode(o));for(p.textContent="",f=0;o=d[f++];)if(r&&me.inArray(o,r)>-1)i&&i.push(o);else if(u=me.contains(o.ownerDocument,o),a=b(p.appendChild(o),"script"),u&&y(a),n)for(c=0;o=a[c++];)Qe.test(o.type||"")&&n.push(o);return p}function x(){return!0}function C(){return!1}function w(){try{return ne.activeElement}catch(e){}}function S(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)S(e,s,n,r,t[s],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)),i===!1)i=C;else if(!i)return e;return 1===o&&(a=i,i=function(e){return me().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=me.guid++)),e.each(function(){me.event.add(this,t,i,r,n)})}function D(e,t){return i(e,"table")&&i(11!==t.nodeType?t:t.firstChild,"tr")?me(">tbody",e)[0]||e:e}function T(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function k(e){var t=it.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function M(e,t){var n,r,i,o,a,s,l,u;if(1===t.nodeType){if(Fe.hasData(e)&&(o=Fe.access(e),a=Fe.set(t,o),u=o.events)){delete a.handle,a.events={};for(i in u)for(n=0,r=u[i].length;r>n;n++)me.event.add(t,i,u[i][n])}Re.hasData(e)&&(s=Re.access(e),l=me.extend({},s),Re.set(t,l))}}function E(e,t){var n=t.nodeName.toLowerCase();"input"===n&&ze.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}function N(e,t,r,i){t=oe.apply([],t);var o,a,s,l,u,c,p=0,d=e.length,f=d-1,h=t[0],m=me.isFunction(h);if(m||d>1&&"string"==typeof h&&!fe.checkClone&&rt.test(h))return e.each(function(n){var o=e.eq(n);m&&(t[0]=h.call(this,n,o.html())),N(o,t,r,i)});if(d&&(o=$(t,e[0].ownerDocument,!1,e,i),a=o.firstChild,1===o.childNodes.length&&(o=a),a||i)){for(s=me.map(b(o,"script"),T),l=s.length;d>p;p++)u=o,p!==f&&(u=me.clone(u,!0,!0),l&&me.merge(s,b(u,"script"))),r.call(e[p],u,p);if(l)for(c=s[s.length-1].ownerDocument,me.map(s,k),p=0;l>p;p++)u=s[p],Qe.test(u.type||"")&&!Fe.access(u,"globalEval")&&me.contains(c,u)&&(u.src?me._evalUrl&&me._evalUrl(u.src):n(u.textContent.replace(ot,""),c))}return e}function A(e,t,n){for(var r,i=t?me.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||me.cleanData(b(r)),r.parentNode&&(n&&me.contains(r.ownerDocument,r)&&y(b(r,"script")),r.parentNode.removeChild(r));return e}function P(e,t,n){var r,i,o,a,s=e.style;return n=n||lt(e),n&&(a=n.getPropertyValue(t)||n[t],""!==a||me.contains(e.ownerDocument,e)||(a=me.style(e,t)),!fe.pixelMarginRight()&&st.test(a)&&at.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function L(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function I(e){if(e in ht)return e;for(var t=e[0].toUpperCase()+e.slice(1),n=ft.length;n--;)if(e=ft[n]+t,e in ht)return e}function O(e){var t=me.cssProps[e];return t||(t=me.cssProps[e]=I(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 R(e,t,n,r,i){var o,a=0;for(o=n===(r?"border":"content")?4:"width"===t?1:0;4>o;o+=2)"margin"===n&&(a+=me.css(e,n+je[o],!0,i)),r?("content"===n&&(a-=me.css(e,"padding"+je[o],!0,i)),"margin"!==n&&(a-=me.css(e,"border"+je[o]+"Width",!0,i))):(a+=me.css(e,"padding"+je[o],!0,i),"padding"!==n&&(a+=me.css(e,"border"+je[o]+"Width",!0,i)));return a}function B(e,t,n){var r,i=lt(e),o=P(e,t,i),a="border-box"===me.css(e,"boxSizing",!1,i);return st.test(o)?o:(r=a&&(fe.boxSizingReliable()||o===e.style[t]),o=parseFloat(o)||0,o+R(e,t,n||(a?"border":"content"),r,i)+"px")}function _(e,t,n,r,i){return new _.prototype.init(e,t,n,r,i)}function U(){gt&&(ne.hidden===!1&&e.requestAnimationFrame?e.requestAnimationFrame(U):e.setTimeout(U,me.fx.interval),me.fx.tick())}function V(){return e.setTimeout(function(){mt=void 0}),mt=me.now()}function j(e,t){var n,r=0,i={height:e};for(t=t?1:0;4>r;r+=2-t)n=je[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function q(e,t,n){for(var r,i=(z.tweeners[t]||[]).concat(z.tweeners["*"]),o=0,a=i.length;a>o;o++)if(r=i[o].call(n,t,e))return r}function G(e,t,n){var r,i,o,a,s,l,u,c,p="width"in t||"height"in t,d=this,f={},h=e.style,m=e.nodeType&&qe(e),g=Fe.get(e,"fxshow");n.queue||(a=me._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,d.always(function(){d.always(function(){a.unqueued--,me.queue(e,"fx").length||a.empty.fire()})}));for(r in t)if(i=t[r],vt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(m?"hide":"show")){if("show"!==i||!g||void 0===g[r])continue;m=!0}f[r]=g&&g[r]||me.style(e,r)}if(l=!me.isEmptyObject(t),l||!me.isEmptyObject(f)){p&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],u=g&&g.display,null==u&&(u=Fe.get(e,"display")),c=me.css(e,"display"),"none"===c&&(u?c=u:(v([e],!0),u=e.style.display||u,c=me.css(e,"display"),v([e]))),("inline"===c||"inline-block"===c&&null!=u)&&"none"===me.css(e,"float")&&(l||(d.done(function(){h.display=u}),null==u&&(c=h.display,u="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",d.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),l=!1;for(r in f)l||(g?"hidden"in g&&(m=g.hidden):g=Fe.access(e,"fxshow",{display:u}),o&&(g.hidden=!m),m&&v([e],!0),d.done(function(){m||v([e]),Fe.remove(e,"fxshow");for(r in f)me.style(e,r,f[r])})),l=q(m?g[r]:0,r,d),r in g||(g[r]=l.start,m&&(l.end=l.start,l.start=0))}}function H(e,t){var n,r,i,o,a;for(n in e)if(r=me.camelCase(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]),a=me.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function z(e,t,n){var r,i,o=0,a=z.prefilters.length,s=me.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;for(var t=mt||V(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens.length;l>a;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),1>o&&l?n:(l||s.notifyWith(e,[u,1,0]),s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:me.extend({},t),opts:me.extend(!0,{specialEasing:{},easing:me.easing._default},n),originalProperties:t,originalOptions:n,startTime:mt||V(),duration:n.duration,tweens:[],createTween:function(t,n){var r=me.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)u.tweens[n].run(1);return t?(s.notifyWith(e,[u,1,0]),s.resolveWith(e,[u,t])):s.rejectWith(e,[u,t]),this}}),c=u.props;for(H(c,u.opts.specialEasing);a>o;o++)if(r=z.prefilters[o].call(u,e,c,u.opts))return me.isFunction(r.stop)&&(me._queueHooks(u.elem,u.opts.queue).stop=me.proxy(r.stop,r)),r;return me.map(c,q,u),me.isFunction(u.opts.start)&&u.opts.start.call(e,u),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always),me.fx.timer(me.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u}function W(e){var t=e.match(Ae)||[];return t.join(" ")}function Q(e){return e.getAttribute&&e.getAttribute("class")||""}function K(e,t,n,r){var i;if(Array.isArray(t))me.each(t,function(t,i){n||Mt.test(e)?r(e,i):K(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==me.type(t))r(e,t);else for(i in t)K(e+"["+i+"]",t[i],n,r)}function Z(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(Ae)||[];if(me.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function X(e,t,n,r){function i(s){var l;return o[s]=!0,me.each(e[s]||[],function(e,s){var u=s(t,n,r);return"string"!=typeof u||a||o[u]?a?!(l=u):void 0:(t.dataTypes.unshift(u),i(u),!1)}),l}var o={},a=e===Ut;return i(t.dataTypes[0])||!o["*"]&&i("*")}function Y(e,t){var n,r,i=me.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&me.extend(!0,e,r),e}function J(e,t,n){for(var r,i,o,a,s=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){l.unshift(i);break}if(l[0]in n)o=l[0];else{for(i in n){if(!l[0]||e.converters[i+" "+l[0]]){o=i;break}a||(a=i)}o=o||a}return o?(o!==l[0]&&l.unshift(o),n[o]):void 0}function ee(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}var te=[],ne=e.document,re=Object.getPrototypeOf,ie=te.slice,oe=te.concat,ae=te.push,se=te.indexOf,le={},ue=le.toString,ce=le.hasOwnProperty,pe=ce.toString,de=pe.call(Object),fe={},he="3.2.0",me=function(e,t){return new me.fn.init(e,t)},ge=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ve=/^-ms-/,be=/-([a-z])/g,ye=function(e,t){return t.toUpperCase()};me.fn=me.prototype={jquery:he,constructor:me,length:0,toArray:function(){return ie.call(this)},get:function(e){return null==e?ie.call(this):0>e?this[e+this.length]:this[e]},pushStack:function(e){var t=me.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return me.each(this,e)},map:function(e){return this.pushStack(me.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ie.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:ae,sort:te.sort,splice:te.splice},me.extend=me.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,l=arguments.length,u=!1;for("boolean"==typeof a&&(u=a,a=arguments[s]||{},s++),"object"==typeof a||me.isFunction(a)||(a={}),s===l&&(a=this,s--);l>s;s++)if(null!=(e=arguments[s]))for(t in e)n=a[t],r=e[t],a!==r&&(u&&r&&(me.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&me.isPlainObject(n)?n:{},a[t]=me.extend(u,o,r)):void 0!==r&&(a[t]=r));return a},me.extend({expando:"jQuery"+(he+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===me.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=me.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return e&&"[object Object]"===ue.call(e)?(t=re(e))?(n=ce.call(t,"constructor")&&t.constructor,"function"==typeof n&&pe.call(n)===de):!0:!1},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?le[ue.call(e)]||"object":typeof e},globalEval:function(e){n(e)},camelCase:function(e){return e.replace(ve,"ms-").replace(be,ye)},each:function(e,t){var n,i=0;if(r(e))for(n=e.length;n>i&&t.call(e[i],i,e[i])!==!1;i++);else for(i in e)if(t.call(e[i],i,e[i])===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(ge,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(r(Object(e))?me.merge(n,"string"==typeof e?[e]:e):ae.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:se.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;n>r;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;a>o;o++)r=!t(e[o],o),r!==s&&i.push(e[o]);return i},map:function(e,t,n){var i,o,a=0,s=[];if(r(e))for(i=e.length;i>a;a++)o=t(e[a],a,n),null!=o&&s.push(o);else for(a in e)o=t(e[a],a,n),null!=o&&s.push(o);return oe.apply([],s)},guid:1,proxy:function(e,t){var n,r,i;return"string"==typeof t&&(n=e[t],t=e,e=n),me.isFunction(e)?(r=ie.call(arguments,2),i=function(){return e.apply(t||this,r.concat(ie.call(arguments)))},i.guid=e.guid=e.guid||me.guid++,i):void 0},now:Date.now,support:fe}),"function"==typeof Symbol&&(me.fn[Symbol.iterator]=te[Symbol.iterator]),me.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){le["[object "+t+"]"]=t.toLowerCase()});var $e=/*! * Sizzle CSS Selector Engine v2.3.3 * https://sizzlejs.com/ * @@ -21,39 +21,38 @@ * * Date: 2016-08-08 */ -function(e){function t(e,t,n,r){var i,o,a,s,u,l,c,f=t&&t.ownerDocument,h=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==h&&9!==h&&11!==h)return n;if(!r&&((t?t.ownerDocument||t:U)!==N&&P(t),t=t||N,I)){if(11!==h&&(u=ve.exec(e)))if(i=u[1]){if(9===h){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&R(t,a)&&a.id===i)return n.push(a),n}else{if(u[2])return J.apply(n,t.getElementsByTagName(e)),n;if((i=u[3])&&x.getElementsByClassName&&t.getElementsByClassName)return J.apply(n,t.getElementsByClassName(i)),n}if(x.qsa&&!z[e+" "]&&(!q||!q.test(e))){if(1!==h)f=t,c=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(we,xe):t.setAttribute("id",s=H),l=T(e),o=l.length;o--;)l[o]="#"+s+" "+d(l[o]);c=l.join(","),f=$e.test(e)&&p(t.parentNode)||t}if(c)try{return J.apply(n,f.querySelectorAll(c)),n}catch(m){}finally{s===H&&t.removeAttribute("id")}}}return D(e.replace(se,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>k.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[H]=!0,e}function i(e){var t=N.createElement("fieldset");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)k.attrHandle[n[r]]=t}function a(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 s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function u(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function l(e){return function(t){return"form"in t?t.parentNode&&t.disabled===!1?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Ce(t)===e:t.disabled===e:"label"in t?t.disabled===e:!1}}function c(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function p(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function f(){}function d(e){for(var t=0,n=e.length,r="";n>t;t++)r+=e[t].value;return r}function h(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=_++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,p,f=[L,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(p=t[H]||(t[H]={}),c=p[t.uniqueID]||(p[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===L&&l[1]===s)return f[2]=l[2];if(c[o]=f,f[2]=e(t,n,u))return!0}return!1}}function m(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 g(e,n,r){for(var i=0,o=n.length;o>i;i++)t(e,n[i],r);return r}function v(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;u>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),l&&t.push(s));return a}function $(e,t,n,i,o,a){return i&&!i[H]&&(i=$(i)),o&&!o[H]&&(o=$(o,a)),r(function(r,a,s,u){var l,c,p,f=[],d=[],h=a.length,m=r||g(t||"*",s.nodeType?[s]:s,[]),$=!e||!r&&t?m:v(m,f,e,s,u),b=n?o||(r?e:h||i)?[]:a:$;if(n&&n($,b,s,u),i)for(l=v(b,d),i(l,[],s,u),c=l.length;c--;)(p=l[c])&&(b[d[c]]=!($[d[c]]=p));if(r){if(o||e){if(o){for(l=[],c=b.length;c--;)(p=b[c])&&l.push($[c]=p);o(null,b=[],l,u)}for(c=b.length;c--;)(p=b[c])&&(l=o?ee(r,p):f[c])>-1&&(r[l]=!(a[l]=p))}}else b=v(b===a?b.splice(h,b.length):b),o?o(null,a,b,u):J.apply(a,b)})}function b(e){for(var t,n,r,i=e.length,o=k.relative[e[0].type],a=o||k.relative[" "],s=o?1:0,u=h(function(e){return e===t},a,!0),l=h(function(e){return ee(t,e)>-1},a,!0),c=[function(e,n,r){var i=!o&&(r||n!==A)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,i}];i>s;s++)if(n=k.relative[e[s].type])c=[h(m(c),n)];else{if(n=k.filter[e[s].type].apply(null,e[s].matches),n[H]){for(r=++s;i>r&&!k.relative[e[r].type];r++);return $(s>1&&m(c),s>1&&d(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),n,r>s&&b(e.slice(s,r)),i>r&&b(e=e.slice(r)),i>r&&d(e))}c.push(n)}return m(c)}function y(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,u,l){var c,p,f,d=0,h="0",m=r&&[],g=[],$=A,b=r||o&&k.find.TAG("*",l),y=L+=null==$?1:Math.random()||.1,w=b.length;for(l&&(A=a===N||a||l);h!==w&&null!=(c=b[h]);h++){if(o&&c){for(p=0,a||c.ownerDocument===N||(P(c),s=!I);f=e[p++];)if(f(c,a||N,s)){u.push(c);break}l&&(L=y)}i&&((c=!f&&c)&&d--,r&&m.push(c))}if(d+=h,i&&h!==d){for(p=0;f=n[p++];)f(m,g,a,s);if(r){if(d>0)for(;h--;)m[h]||g[h]||(g[h]=X.call(u));g=v(g)}J.apply(u,g),l&&!r&&g.length>0&&d+n.length>1&&t.uniqueSort(u)}return l&&(L=y,A=$),m};return i?r(a):a}var w,x,k,C,S,T,E,D,A,M,O,P,N,j,I,q,F,V,R,H="sizzle"+1*new Date,U=e.document,L=0,_=0,B=n(),W=n(),z=n(),Y=function(e,t){return e===t&&(O=!0),0},G={}.hasOwnProperty,K=[],X=K.pop,Z=K.push,J=K.push,Q=K.slice,ee=function(e,t){for(var n=0,r=e.length;r>n;n++)if(e[n]===t)return n;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ne="[\\x20\\t\\r\\n\\f]",re="(?:\\\\.|[\\w-]|[^\x00-\\xa0])+",ie="\\["+ne+"*("+re+")(?:"+ne+"*([*^$|!~]?=)"+ne+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+re+"))|)"+ne+"*\\]",oe=":("+re+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ie+")*)|.*)\\)|)",ae=new RegExp(ne+"+","g"),se=new RegExp("^"+ne+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ne+"+$","g"),ue=new RegExp("^"+ne+"*,"+ne+"*"),le=new RegExp("^"+ne+"*([>+~]|"+ne+")"+ne+"*"),ce=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),pe=new RegExp(oe),fe=new RegExp("^"+re+"$"),de={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+ie),PSEUDO:new RegExp("^"+oe),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},he=/^(?:input|select|textarea|button)$/i,me=/^h\d$/i,ge=/^[^{]+\{\s*\[native \w/,ve=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$e=/[+~]/,be=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),ye=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},we=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,xe=function(e,t){return t?"\x00"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ke=function(){P()},Ce=h(function(e){return e.disabled===!0&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{J.apply(K=Q.call(U.childNodes),U.childNodes),K[U.childNodes.length].nodeType}catch(Se){J={apply:K.length?function(e,t){Z.apply(e,Q.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}x=t.support={},S=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},P=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:U;return r!==N&&9===r.nodeType&&r.documentElement?(N=r,j=N.documentElement,I=!S(N),U!==N&&(n=N.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",ke,!1):n.attachEvent&&n.attachEvent("onunload",ke)),x.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),x.getElementsByTagName=i(function(e){return e.appendChild(N.createComment("")),!e.getElementsByTagName("*").length}),x.getElementsByClassName=ge.test(N.getElementsByClassName),x.getById=i(function(e){return j.appendChild(e).id=H,!N.getElementsByName||!N.getElementsByName(H).length}),x.getById?(k.filter.ID=function(e){var t=e.replace(be,ye);return function(e){return e.getAttribute("id")===t}},k.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&I){var n=t.getElementById(e);return n?[n]:[]}}):(k.filter.ID=function(e){var t=e.replace(be,ye);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},k.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&I){var n,r,i,o=t.getElementById(e);if(o){if(n=o.getAttributeNode("id"),n&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if(n=o.getAttributeNode("id"),n&&n.value===e)return[o]}return[]}}),k.find.TAG=x.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):x.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},k.find.CLASS=x.getElementsByClassName&&function(e,t){return"undefined"!=typeof t.getElementsByClassName&&I?t.getElementsByClassName(e):void 0},F=[],q=[],(x.qsa=ge.test(N.querySelectorAll))&&(i(function(e){j.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||q.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+H+"-]").length||q.push("~="),e.querySelectorAll(":checked").length||q.push(":checked"),e.querySelectorAll("a#"+H+"+*").length||q.push(".#.+[+~]")}),i(function(e){e.innerHTML="";var t=N.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&q.push("name"+ne+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&q.push(":enabled",":disabled"),j.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&q.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),q.push(",.*:")})),(x.matchesSelector=ge.test(V=j.matches||j.webkitMatchesSelector||j.mozMatchesSelector||j.oMatchesSelector||j.msMatchesSelector))&&i(function(e){x.disconnectedMatch=V.call(e,"*"),V.call(e,"[s!='']:x"),F.push("!=",oe)}),q=q.length&&new RegExp(q.join("|")),F=F.length&&new RegExp(F.join("|")),t=ge.test(j.compareDocumentPosition),R=t||ge.test(j.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},Y=t?function(e,t){if(e===t)return O=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!x.sortDetached&&t.compareDocumentPosition(e)===n?e===N||e.ownerDocument===U&&R(U,e)?-1:t===N||t.ownerDocument===U&&R(U,t)?1:M?ee(M,e)-ee(M,t):0:4&n?-1:1)}:function(e,t){if(e===t)return O=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===N?-1:t===N?1:i?-1:o?1:M?ee(M,e)-ee(M,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===U?-1:u[r]===U?1:0},N):N},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==N&&P(e),n=n.replace(ce,"='$1']"),x.matchesSelector&&I&&!z[n+" "]&&(!F||!F.test(n))&&(!q||!q.test(n)))try{var r=V.call(e,n);if(r||x.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return t(n,N,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==N&&P(e),R(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==N&&P(e);var n=k.attrHandle[t.toLowerCase()],r=n&&G.call(k.attrHandle,t.toLowerCase())?n(e,t,!I):void 0;return void 0!==r?r:x.attributes||!I?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(we,xe)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(O=!x.detectDuplicates,M=!x.sortStable&&e.slice(0),e.sort(Y),O){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return M=null,e},C=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+=C(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=C(t);return n},k=t.selectors={cacheLength:50,createPseudo:r,match:de,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(be,ye),e[3]=(e[3]||e[4]||e[5]||"").replace(be,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 de.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&pe.test(n)&&(t=T(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(be,ye).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=B[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&B(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof 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(ae," ")+" ").indexOf(r)>-1:"|="===n?o===r||o.slice(0,r.length+1)===r+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,p,f,d,h,m=o!==a?"nextSibling":"previousSibling",g=t.parentNode,v=s&&t.nodeName.toLowerCase(),$=!u&&!s,b=!1;if(g){if(o){for(;m;){for(f=t;f=f[m];)if(s?f.nodeName.toLowerCase()===v:1===f.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&$){for(f=g,p=f[H]||(f[H]={}),c=p[f.uniqueID]||(p[f.uniqueID]={}),l=c[e]||[],d=l[0]===L&&l[1],b=d&&l[2],f=d&&g.childNodes[d];f=++d&&f&&f[m]||(b=d=0)||h.pop();)if(1===f.nodeType&&++b&&f===t){c[e]=[L,d,b];break}}else if($&&(f=t,p=f[H]||(f[H]={}),c=p[f.uniqueID]||(p[f.uniqueID]={}),l=c[e]||[],d=l[0]===L&&l[1],b=d),b===!1)for(;(f=++d&&f&&f[m]||(b=d=0)||h.pop())&&((s?f.nodeName.toLowerCase()!==v:1!==f.nodeType)||!++b||($&&(p=f[H]||(f[H]={}),c=p[f.uniqueID]||(p[f.uniqueID]={}),c[e]=[L,b]),f!==t)););return b-=i,b===r||b%r===0&&b/r>=0}}},PSEUDO:function(e,n){var i,o=k.pseudos[e]||k.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[H]?o(n):o.length>1?(i=[e,e,"",n],k.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=ee(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=E(e.replace(se,"$1"));return i[H]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=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(be,ye),function(t){return(t.textContent||t.innerText||C(t)).indexOf(e)>-1}}),lang:r(function(e){return fe.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(be,ye).toLowerCase(),function(t){var n;do if(n=I?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===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===j},focus:function(e){return e===N.activeElement&&(!N.hasFocus||N.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:l(!1),disabled:l(!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,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!k.pseudos.empty(e)},header:function(e){return me.test(e.nodeName)},input:function(e){return he.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:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,n){return[0>n?n+t:n]}),even:c(function(e,t){for(var n=0;t>n;n+=2)e.push(n);return e}),odd:c(function(e,t){for(var n=1;t>n;n+=2)e.push(n);return e}),lt:c(function(e,t,n){for(var r=0>n?n+t:n;--r>=0;)e.push(r);return e}),gt:c(function(e,t,n){for(var r=0>n?n+t:n;++r2&&"ID"===(a=o[0]).type&&9===t.nodeType&&I&&k.relative[o[1].type]){if(t=(k.find.ID(a.matches[0].replace(be,ye),t)||[])[0],!t)return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=de.needsContext.test(e)?0:o.length;i--&&(a=o[i],!k.relative[s=a.type]);)if((u=k.find[s])&&(r=u(a.matches[0].replace(be,ye),$e.test(o[0].type)&&p(t.parentNode)||t))){if(o.splice(i,1),e=r.length&&d(o),!e)return J.apply(n,r),n;break}}return(l||E(e,c))(r,t,!I,n,!t||$e.test(e)&&p(t.parentNode)||t),n},x.sortStable=H.split("").sort(Y).join("")===H,x.detectDuplicates=!!O,P(),x.sortDetached=i(function(e){return 1&e.compareDocumentPosition(N.createElement("fieldset"))}),i(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){return n?void 0:e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),x.attributes&&i(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){return n||"input"!==e.nodeName.toLowerCase()?void 0:e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(te,function(e,t,n){var r;return n?void 0:e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);me.find=ye,me.expr=ye.selectors,me.expr[":"]=me.expr.pseudos,me.uniqueSort=me.unique=ye.uniqueSort,me.text=ye.getText,me.isXMLDoc=ye.isXML,me.contains=ye.contains,me.escapeSelector=ye.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&&me(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=me.expr.match.needsContext,Ce=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,Se=/^.[^:#\[\.,]*$/;me.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?me.find.matchesSelector(r,e)?[r]:[]:me.find.matches(e,me.grep(t,function(e){return 1===e.nodeType}))},me.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(me(e).filter(function(){for(t=0;r>t;t++)if(me.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;r>t;t++)me.find(e,i[t],n);return r>1?me.uniqueSort(n):n},filter:function(e){return this.pushStack(o(this,e||[],!1))},not:function(e){return this.pushStack(o(this,e||[],!0))},is:function(e){return!!o(this,"string"==typeof e&&ke.test(e)?me(e):e||[],!1).length}});var Te,Ee=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,De=me.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||Te,"string"==typeof e){if(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:Ee.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof me?t[0]:t,me.merge(this,me.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:ne,!0)),Ce.test(r[1])&&me.isPlainObject(t))for(r in t)me.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=ne.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):me.isFunction(e)?void 0!==n.ready?n.ready(e):e(me):me.makeArray(e,this)};De.prototype=me.fn,Te=me(ne);var Ae=/^(?:parents|prev(?:Until|All))/,Me={children:!0,contents:!0,next:!0,prev:!0};me.fn.extend({has:function(e){var t=me(e,this),n=t.length;return this.filter(function(){for(var e=0;n>e;e++)if(me.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&me(e);if(!ke.test(e))for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&me.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?me.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?se.call(me(e),this[0]):se.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(me.uniqueSort(me.merge(this.get(),me(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),me.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 i(e,"iframe")?e.contentDocument:(i(e,"template")&&(e=e.content||e),me.merge([],e.childNodes))}},function(e,t){me.fn[e]=function(n,r){var i=me.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=me.filter(r,i)),this.length>1&&(Me[e]||me.uniqueSort(i),Ae.test(e)&&i.reverse()),this.pushStack(i)}});var Oe=/[^\x20\t\r\n\f]+/g;me.Callbacks=function(e){e="string"==typeof e?s(e):me.extend({},e);var t,n,r,i,o=[],a=[],u=-1,l=function(){for(i=i||e.once,r=t=!0;a.length;u=-1)for(n=a.shift();++u-1;)o.splice(n,1),u>=n&&u--}),this},has:function(e){return e?me.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],a.push(n),t||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},me.extend({Deferred:function(t){var n=[["notify","progress",me.Callbacks("memory"),me.Callbacks("memory"),2],["resolve","done",me.Callbacks("once memory"),me.Callbacks("once memory"),0,"resolved"],["reject","fail",me.Callbacks("once memory"),me.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 me.Deferred(function(t){me.each(n,function(n,r){var i=me.isFunction(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&me.isFunction(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 s=this,c=arguments,p=function(){var e,p;if(!(a>t)){if(e=r.apply(s,c),e===n.promise())throw new TypeError("Thenable self-resolution");p=e&&("object"==typeof e||"function"==typeof e)&&e.then,me.isFunction(p)?i?p.call(e,o(a,n,u,i),o(a,n,l,i)):(a++,p.call(e,o(a,n,u,i),o(a,n,l,i),o(a,n,u,n.notifyWith))):(r!==u&&(s=void 0,c=[e]),(i||n.resolveWith)(s,c))}},f=i?p:function(){try{p()}catch(e){me.Deferred.exceptionHook&&me.Deferred.exceptionHook(e,f.stackTrace),t+1>=a&&(r!==l&&(s=void 0,c=[e]),n.rejectWith(s,c))}};t?f():(me.Deferred.getStackHook&&(f.stackTrace=me.Deferred.getStackHook()),e.setTimeout(f))}}var a=0;return me.Deferred(function(e){n[0][3].add(o(0,e,me.isFunction(i)?i:u,e.notifyWith)),n[1][3].add(o(0,e,me.isFunction(t)?t:u)),n[2][3].add(o(0,e,me.isFunction(r)?r:l))}).promise()},promise:function(e){return null!=e?me.extend(e,i):i}},o={};return me.each(n,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){r=s},n[3-e][2].disable,n[0][2].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=ie.call(arguments),o=me.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?ie.call(arguments):n,--t||o.resolveWith(r,i)}};if(1>=t&&(c(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||me.isFunction(i[n]&&i[n].then)))return o.then();for(;n--;)c(i[n],a(n),o.reject);return o.promise()}});var Pe=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;me.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&Pe.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},me.readyException=function(t){e.setTimeout(function(){throw t})};var Ne=me.Deferred();me.fn.ready=function(e){return Ne.then(e)["catch"](function(e){me.readyException(e)}),this},me.extend({isReady:!1,readyWait:1,ready:function(e){(e===!0?--me.readyWait:me.isReady)||(me.isReady=!0,e!==!0&&--me.readyWait>0||Ne.resolveWith(ne,[me]))}}),me.ready.then=Ne.then,"complete"===ne.readyState||"loading"!==ne.readyState&&!ne.documentElement.doScroll?e.setTimeout(me.ready):(ne.addEventListener("DOMContentLoaded",p),e.addEventListener("load",p));var je=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===me.type(n)){i=!0;for(s in n)je(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,me.isFunction(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(me(e),n)})),t))for(;u>s;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},Ie=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};f.uid=1,f.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Ie(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[me.camelCase(t)]=n;else for(r in t)i[me.camelCase(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][me.camelCase(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(me.camelCase):(t=me.camelCase(t),t=t in r?[t]:t.match(Oe)||[]),n=t.length;for(;n--;)delete r[t[n]]}(void 0===t||me.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&&!me.isEmptyObject(t)}};var qe=new f,Fe=new f,Ve=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Re=/[A-Z]/g;me.extend({hasData:function(e){return Fe.hasData(e)||qe.hasData(e)},data:function(e,t,n){return Fe.access(e,t,n)},removeData:function(e,t){Fe.remove(e,t)},_data:function(e,t,n){return qe.access(e,t,n)},_removeData:function(e,t){qe.remove(e,t)}}),me.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=Fe.get(o),1===o.nodeType&&!qe.get(o,"hasDataAttrs"))){for(n=a.length;n--;)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=me.camelCase(r.slice(5)),h(o,r,i[r])));qe.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){Fe.set(this,e)}):je(this,function(t){var n;if(o&&void 0===t){if(n=Fe.get(o,e),void 0!==n)return n;if(n=h(o,e),void 0!==n)return n}else this.each(function(){Fe.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Fe.remove(this,e)})}}),me.extend({queue:function(e,t,n){var r;return e?(t=(t||"fx")+"queue",r=qe.get(e,t),n&&(!r||Array.isArray(n)?r=qe.access(e,t,me.makeArray(n)):r.push(n)),r||[]):void 0},dequeue:function(e,t){t=t||"fx";var n=me.queue(e,t),r=n.length,i=n.shift(),o=me._queueHooks(e,t),a=function(){me.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return qe.get(e,n)||qe.access(e,n,{empty:me.Callbacks("once memory").add(function(){qe.remove(e,[t+"queue",n])})})}}),me.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,Ge=/^$|\/(?:java|ecma)script/i,Ke={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};Ke.optgroup=Ke.option,Ke.tbody=Ke.tfoot=Ke.colgroup=Ke.caption=Ke.thead, -Ke.th=Ke.td;var Xe=/<|&#?\w+;/;!function(){var e=ne.createDocumentFragment(),t=e.appendChild(ne.createElement("div")),n=ne.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),de.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="",de.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Ze=ne.documentElement,Je=/^key/,Qe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,et=/^([^.]*)(?:\.(.+)|)/;me.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,p,f,d,h,m,g=qe.get(e);if(g)for(n.handler&&(o=n,n=o.handler,i=o.selector),i&&me.find.matchesSelector(Ze,i),n.guid||(n.guid=me.guid++),(u=g.events)||(u=g.events={}),(a=g.handle)||(a=g.handle=function(t){return"undefined"!=typeof me&&me.event.triggered!==t.type?me.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Oe)||[""],l=t.length;l--;)s=et.exec(t[l])||[],d=m=s[1],h=(s[2]||"").split(".").sort(),d&&(p=me.event.special[d]||{},d=(i?p.delegateType:p.bindType)||d,p=me.event.special[d]||{},c=me.extend({type:d,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&me.expr.match.needsContext.test(i),namespace:h.join(".")},o),(f=u[d])||(f=u[d]=[],f.delegateCount=0,p.setup&&p.setup.call(e,r,h,a)!==!1||e.addEventListener&&e.addEventListener(d,a)),p.add&&(p.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?f.splice(f.delegateCount++,0,c):f.push(c),me.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,p,f,d,h,m,g=qe.hasData(e)&&qe.get(e);if(g&&(u=g.events)){for(t=(t||"").match(Oe)||[""],l=t.length;l--;)if(s=et.exec(t[l])||[],d=m=s[1],h=(s[2]||"").split(".").sort(),d){for(p=me.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=u[d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=f.length;o--;)c=f[o],!i&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(f.splice(o,1),c.selector&&f.delegateCount--,p.remove&&p.remove.call(e,c));a&&!f.length&&(p.teardown&&p.teardown.call(e,h,g.handle)!==!1||me.removeEvent(e,d,g.handle),delete u[d])}else for(d in u)me.event.remove(e,d+t[l],n,r,!0);me.isEmptyObject(u)&&qe.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=me.event.fix(e),u=new Array(arguments.length),l=(qe.get(this,"events")||{})[s.type]||[],c=me.event.special[s.type]||{};for(u[0]=s,t=1;t=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||l.disabled!==!0)){for(o=[],a={},n=0;u>n;n++)r=t[n],i=r.selector+" ",void 0===a[i]&&(a[i]=r.needsContext?me(i,this).index(l)>-1:me.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u\x20\t\r\n\f]*)[^>]*)\/>/gi,nt=/\s*$/g;me.extend({htmlPrefilter:function(e){return e.replace(tt,"<$1>")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=me.contains(e.ownerDocument,e);if(!(de.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||me.isXMLDoc(e)))for(a=$(s),o=$(e),r=0,i=o.length;i>r;r++)A(o[r],a[r]);if(t)if(n)for(o=o||$(e),a=a||$(s),r=0,i=o.length;i>r;r++)D(o[r],a[r]);else D(e,s);return a=$(s,"script"),a.length>0&&b(a,!u&&$(e,"script")),s},cleanData:function(e){for(var t,n,r,i=me.event.special,o=0;void 0!==(n=e[o]);o++)if(Ie(n)){if(t=n[qe.expando]){if(t.events)for(r in t.events)i[r]?me.event.remove(n,r):me.removeEvent(n,r,t.handle);n[qe.expando]=void 0}n[Fe.expando]&&(n[Fe.expando]=void 0)}}}),me.fn.extend({detach:function(e){return O(this,e,!0)},remove:function(e){return O(this,e)},text:function(e){return je(this,function(e){return void 0===e?me.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 M(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=S(this,e);t.appendChild(e)}})},prepend:function(){return M(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=S(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return M(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return M(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&&(me.cleanData($(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return me.clone(this,e,t)})},html:function(e){return je(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&&!nt.test(e)&&!Ke[(Ye.exec(e)||["",""])[1].toLowerCase()]){e=me.htmlPrefilter(e);try{for(;r>n;n++)t=this[n]||{},1===t.nodeType&&(me.cleanData($(t,!1)),t.innerHTML=e);t=0}catch(i){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return M(this,arguments,function(t){var n=this.parentNode;me.inArray(this,e)<0&&(me.cleanData($(this)),n&&n.replaceChild(t,this))},e)}}),me.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){me.fn[e]=function(e){for(var n,r=[],i=me(e),o=i.length-1,a=0;o>=a;a++)n=a===o?this:this.clone(!0),me(i[a])[t](n),ae.apply(r,n.get());return this.pushStack(r)}});var at=/^margin/,st=new RegExp("^("+He+")(?!px)[a-z%]+$","i"),ut=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)};!function(){function t(){if(s){s.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",s.innerHTML="",Ze.appendChild(a);var t=e.getComputedStyle(s);n="1%"!==t.top,o="2px"===t.marginLeft,r="4px"===t.width,s.style.marginRight="50%",i="4px"===t.marginRight,Ze.removeChild(a),s=null}}var n,r,i,o,a=ne.createElement("div"),s=ne.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",de.clearCloneStyle="content-box"===s.style.backgroundClip,a.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.appendChild(s),me.extend(de,{pixelPosition:function(){return t(),n},boxSizingReliable:function(){return t(),r},pixelMarginRight:function(){return t(),i},reliableMarginLeft:function(){return t(),o}}))}();var lt=/^(none|table(?!-c[ea]).+)/,ct=/^--/,pt={position:"absolute",visibility:"hidden",display:"block"},ft={letterSpacing:"0",fontWeight:"400"},dt=["Webkit","Moz","ms"],ht=ne.createElement("div").style;me.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=P(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:{"float":"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=me.camelCase(t),u=ct.test(t),l=e.style;return u||(t=I(s)),a=me.cssHooks[t]||me.cssHooks[s],void 0===n?a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t]:(o=typeof n,"string"===o&&(i=Ue.exec(n))&&i[1]&&(n=m(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(me.cssNumber[s]?"":"px")),de.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n)),void 0)}},css:function(e,t,n,r){var i,o,a,s=me.camelCase(t),u=ct.test(t);return u||(t=I(s)),a=me.cssHooks[t]||me.cssHooks[s],a&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=P(e,t,r)),"normal"===i&&t in ft&&(i=ft[t]),""===n||n?(o=parseFloat(i),n===!0||isFinite(o)?o||0:i):i}}),me.each(["height","width"],function(e,t){me.cssHooks[t]={get:function(e,n,r){return n?!lt.test(me.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?V(e,t,r):Be(e,pt,function(){return V(e,t,r)}):void 0},set:function(e,n,r){var i,o=r&&ut(e),a=r&&F(e,t,r,"border-box"===me.css(e,"boxSizing",!1,o),o);return a&&(i=Ue.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=me.css(e,t)),q(e,n,a)}}}),me.cssHooks.marginLeft=N(de.reliableMarginLeft,function(e,t){return t?(parseFloat(P(e,"marginLeft"))||e.getBoundingClientRect().left-Be(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px":void 0}),me.each({margin:"",padding:"",border:"Width"},function(e,t){me.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+Le[r]+t]=o[r]||o[r-2]||o[0];return i}},at.test(e)||(me.cssHooks[e+t].set=q)}),me.fn.extend({css:function(e,t){return je(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=ut(e),i=t.length;i>a;a++)o[t[a]]=me.css(e,t[a],!1,r);return o}return void 0!==n?me.style(e,t,n):me.css(e,t)},e,t,arguments.length>1)}}),me.Tween=R,R.prototype={constructor:R,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||me.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(me.cssNumber[n]?"":"px")},cur:function(){var e=R.propHooks[this.prop];return e&&e.get?e.get(this):R.propHooks._default.get(this)},run:function(e){var t,n=R.propHooks[this.prop];return this.options.duration?this.pos=t=me.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):R.propHooks._default.set(this),this}},R.prototype.init.prototype=R.prototype,R.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=me.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){me.fx.step[e.prop]?me.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[me.cssProps[e.prop]]&&!me.cssHooks[e.prop]?e.elem[e.prop]=e.now:me.style(e.elem,e.prop,e.now+e.unit)}}},R.propHooks.scrollTop=R.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},me.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},me.fx=R.prototype.init,me.fx.step={};var mt,gt,vt=/^(?:toggle|show|hide)$/,$t=/queueHooks$/;me.Animation=me.extend(z,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return m(n.elem,e,Ue.exec(t),n),n}]},tweener:function(e,t){me.isFunction(e)?(t=e,e=["*"]):e=e.match(Oe);for(var n,r=0,i=e.length;i>r;r++)n=e[r],z.tweeners[n]=z.tweeners[n]||[],z.tweeners[n].unshift(t)},prefilters:[B],prefilter:function(e,t){t?z.prefilters.unshift(e):z.prefilters.push(e)}}),me.speed=function(e,t,n){var r=e&&"object"==typeof e?me.extend({},e):{complete:n||!n&&t||me.isFunction(e)&&e,duration:e,easing:n&&t||t&&!me.isFunction(t)&&t};return me.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in me.fx.speeds?r.duration=me.fx.speeds[r.duration]:r.duration=me.fx.speeds._default),(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){me.isFunction(r.old)&&r.old.call(this),r.queue&&me.dequeue(this,r.queue)},r},me.fn.extend({fadeTo:function(e,t,n,r){return this.filter(_e).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=me.isEmptyObject(e),o=me.speed(t,n,r),a=function(){var t=z(this,me.extend({},e),o);(i||qe.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},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&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=me.timers,a=qe.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&$t.test(i)&&r(a[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)&&me.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=qe.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=me.timers,a=r?r.length:0;for(n.finish=!0,me.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;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),me.each(["toggle","show","hide"],function(e,t){var n=me.fn[t];me.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(L(t,!0),e,r,i)}}),me.each({slideDown:L("show"),slideUp:L("hide"),slideToggle:L("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){me.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),me.timers=[],me.fx.tick=function(){var e,t=0,n=me.timers;for(mt=me.now();t1)},removeAttr:function(e){return this.each(function(){me.removeAttr(this,e)})}}),me.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?me.prop(e,t,n):(1===o&&me.isXMLDoc(e)||(i=me.attrHooks[t.toLowerCase()]||(me.expr.match.bool.test(t)?bt:void 0)),void 0!==n?null===n?void me.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=me.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!de.radioValue&&"radio"===t&&i(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)}}),bt={set:function(e,t,n){return t===!1?me.removeAttr(e,n):e.setAttribute(n,n),n}},me.each(me.expr.match.bool.source.match(/\w+/g),function(e,t){var n=yt[t]||me.find.attr;yt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=yt[a],yt[a]=i,i=null!=n(e,t,r)?a:null,yt[a]=o),i}});var wt=/^(?:input|select|textarea|button)$/i,xt=/^(?:a|area)$/i;me.fn.extend({prop:function(e,t){return je(this,me.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[me.propFix[e]||e]})}}),me.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&me.isXMLDoc(e)||(t=me.propFix[t]||t,i=me.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=me.find.attr(e,"tabindex");return t?parseInt(t,10):wt.test(e.nodeName)||xt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),de.optSelected||(me.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)}}),me.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){me.propFix[this.toLowerCase()]=this}),me.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(me.isFunction(e))return this.each(function(t){me(this).addClass(e.call(this,t,G(this)))});if("string"==typeof e&&e)for(t=e.match(Oe)||[];n=this[u++];)if(i=G(n),r=1===n.nodeType&&" "+Y(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=Y(r),i!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(me.isFunction(e))return this.each(function(t){me(this).removeClass(e.call(this,t,G(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(Oe)||[];n=this[u++];)if(i=G(n),r=1===n.nodeType&&" "+Y(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=Y(r),i!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):me.isFunction(e)?this.each(function(n){me(this).toggleClass(e.call(this,n,G(this),t),t)}):this.each(function(){var t,r,i,o;if("string"===n)for(r=0,i=me(this),o=e.match(Oe)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else(void 0===e||"boolean"===n)&&(t=G(this),t&&qe.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||e===!1?"":qe.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+Y(G(n))+" ").indexOf(t)>-1)return!0;return!1}});var kt=/\r/g;me.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=me.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,me(this).val()):e,null==i?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=me.map(i,function(e){return null==e?"":e+""})),t=me.valHooks[this.type]||me.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=me.valHooks[i.type]||me.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(kt,""):null==n?"":n)}}}),me.extend({valHooks:{option:{get:function(e){var t=me.find.attr(e,"value");return null!=t?t:Y(me.text(e))}},select:{get:function(e){var t,n,r,o=e.options,a=e.selectedIndex,s="select-one"===e.type,u=s?null:[],l=s?a+1:o.length;for(r=0>a?l:s?a:0;l>r;r++)if(n=o[r],(n.selected||r===a)&&!n.disabled&&(!n.parentNode.disabled||!i(n.parentNode,"optgroup"))){if(t=me(n).val(),s)return t;u.push(t)}return u},set:function(e,t){for(var n,r,i=e.options,o=me.makeArray(t),a=i.length;a--;)r=i[a],(r.selected=me.inArray(me.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),me.each(["radio","checkbox"],function(){me.valHooks[this]={set:function(e,t){return Array.isArray(t)?e.checked=me.inArray(me(e).val(),t)>-1:void 0}},de.checkOn||(me.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Ct=/^(?:focusinfocus|focusoutblur)$/;me.extend(me.event,{trigger:function(t,n,r,i){var o,a,s,u,l,c,p,f=[r||ne],d=ce.call(t,"type")?t.type:t,h=ce.call(t,"namespace")?t.namespace.split("."):[];if(a=s=r=r||ne,3!==r.nodeType&&8!==r.nodeType&&!Ct.test(d+me.event.triggered)&&(d.indexOf(".")>-1&&(h=d.split("."),d=h.shift(),h.sort()),l=d.indexOf(":")<0&&"on"+d,t=t[me.expando]?t:new me.Event(d,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:me.makeArray(n,[t]),p=me.event.special[d]||{},i||!p.trigger||p.trigger.apply(r,n)!==!1)){if(!i&&!p.noBubble&&!me.isWindow(r)){for(u=p.delegateType||d,Ct.test(u+d)||(a=a.parentNode);a;a=a.parentNode)f.push(a),s=a;s===(r.ownerDocument||ne)&&f.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=f[o++])&&!t.isPropagationStopped();)t.type=o>1?u:p.bindType||d,c=(qe.get(a,"events")||{})[t.type]&&qe.get(a,"handle"),c&&c.apply(a,n),c=l&&a[l],c&&c.apply&&Ie(a)&&(t.result=c.apply(a,n),t.result===!1&&t.preventDefault());return t.type=d,i||t.isDefaultPrevented()||p._default&&p._default.apply(f.pop(),n)!==!1||!Ie(r)||l&&me.isFunction(r[d])&&!me.isWindow(r)&&(s=r[l],s&&(r[l]=null),me.event.triggered=d,r[d](),me.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(e,t,n){var r=me.extend(new me.Event,n,{type:e,isSimulated:!0});me.event.trigger(r,null,t)}}),me.fn.extend({trigger:function(e,t){return this.each(function(){me.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];return n?me.event.trigger(e,t,n,!0):void 0}}),me.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){me.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),me.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),de.focusin="onfocusin"in e,de.focusin||me.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){me.event.simulate(t,e.target,me.event.fix(e))};me.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=qe.access(r,t);i||r.addEventListener(e,n,!0),qe.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=qe.access(r,t)-1;i?qe.access(r,t,i):(r.removeEventListener(e,n,!0),qe.remove(r,t))}}});var St=e.location,Tt=me.now(),Et=/\?/;me.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(r){n=void 0}return(!n||n.getElementsByTagName("parsererror").length)&&me.error("Invalid XML: "+t),n};var Dt=/\[\]$/,At=/\r?\n/g,Mt=/^(?:submit|button|image|reset|file)$/i,Ot=/^(?:input|select|textarea|keygen)/i;me.param=function(e,t){var n,r=[],i=function(e,t){var n=me.isFunction(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!me.isPlainObject(e))me.each(e,function(){i(this.name,this.value)});else for(n in e)K(n,e[n],t,i);return r.join("&")},me.fn.extend({serialize:function(){return me.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=me.prop(this,"elements");return e?me.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!me(this).is(":disabled")&&Ot.test(this.nodeName)&&!Mt.test(e)&&(this.checked||!ze.test(e))}).map(function(e,t){var n=me(this).val();return null==n?null:Array.isArray(n)?me.map(n,function(e){return{name:t.name,value:e.replace(At,"\r\n")}}):{name:t.name,value:n.replace(At,"\r\n")}}).get()}});var Pt=/%20/g,Nt=/#.*$/,jt=/([?&])_=[^&]*/,It=/^(.*?):[ \t]*([^\r\n]*)$/gm,qt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ft=/^(?:GET|HEAD)$/,Vt=/^\/\//,Rt={},Ht={},Ut="*/".concat("*"),Lt=ne.createElement("a");Lt.href=St.href,me.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:St.href,type:"GET",isLocal:qt.test(St.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ut,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":me.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?J(J(e,me.ajaxSettings),t):J(me.ajaxSettings,e)},ajaxPrefilter:X(Rt),ajaxTransport:X(Ht),ajax:function(t,n){function r(t,n,r,s){var l,f,d,y,w,x=n;c||(c=!0,u&&e.clearTimeout(u),i=void 0,a=s||"",k.readyState=t>0?4:0,l=t>=200&&300>t||304===t,r&&(y=Q(h,k,r)),y=ee(h,y,k,l),l?(h.ifModified&&(w=k.getResponseHeader("Last-Modified"),w&&(me.lastModified[o]=w),w=k.getResponseHeader("etag"),w&&(me.etag[o]=w)),204===t||"HEAD"===h.type?x="nocontent":304===t?x="notmodified":(x=y.state,f=y.data,d=y.error,l=!d)):(d=x,(t||!x)&&(x="error",0>t&&(t=0))),k.status=t,k.statusText=(n||x)+"",l?v.resolveWith(m,[f,x,k]):v.rejectWith(m,[k,x,d]),k.statusCode(b),b=void 0,p&&g.trigger(l?"ajaxSuccess":"ajaxError",[k,h,l?f:d]),$.fireWith(m,[k,x]),p&&(g.trigger("ajaxComplete",[k,h]),--me.active||me.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var i,o,a,s,u,l,c,p,f,d,h=me.ajaxSetup({},n),m=h.context||h,g=h.context&&(m.nodeType||m.jquery)?me(m):me.event,v=me.Deferred(),$=me.Callbacks("once memory"),b=h.statusCode||{},y={},w={},x="canceled",k={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s)for(s={};t=It.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return c?a:null},setRequestHeader:function(e,t){return null==c&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,y[e]=t),this},overrideMimeType:function(e){return null==c&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)k.always(e[k.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||x;return i&&i.abort(t),r(0,t),this}};if(v.promise(k),h.url=((t||h.url||St.href)+"").replace(Vt,St.protocol+"//"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(Oe)||[""],null==h.crossDomain){l=ne.createElement("a");try{l.href=h.url,l.href=l.href,h.crossDomain=Lt.protocol+"//"+Lt.host!=l.protocol+"//"+l.host}catch(C){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=me.param(h.data,h.traditional)),Z(Rt,h,n,k),c)return k;p=me.event&&h.global,p&&0===me.active++&&me.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Ft.test(h.type),o=h.url.replace(Nt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(Pt,"+")):(d=h.url.slice(o.length),h.data&&(o+=(Et.test(o)?"&":"?")+h.data,delete h.data),h.cache===!1&&(o=o.replace(jt,"$1"),d=(Et.test(o)?"&":"?")+"_="+Tt++ +d),h.url=o+d),h.ifModified&&(me.lastModified[o]&&k.setRequestHeader("If-Modified-Since",me.lastModified[o]),me.etag[o]&&k.setRequestHeader("If-None-Match",me.etag[o])),(h.data&&h.hasContent&&h.contentType!==!1||n.contentType)&&k.setRequestHeader("Content-Type",h.contentType),k.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+Ut+"; q=0.01":""):h.accepts["*"]);for(f in h.headers)k.setRequestHeader(f,h.headers[f]);if(h.beforeSend&&(h.beforeSend.call(m,k,h)===!1||c))return k.abort();if(x="abort",$.add(h.complete),k.done(h.success),k.fail(h.error),i=Z(Ht,h,n,k)){if(k.readyState=1,p&&g.trigger("ajaxSend",[k,h]),c)return k;h.async&&h.timeout>0&&(u=e.setTimeout(function(){k.abort("timeout")},h.timeout));try{c=!1,i.send(y,r)}catch(C){if(c)throw C;r(-1,C)}}else r(-1,"No Transport");return k},getJSON:function(e,t,n){return me.get(e,t,n,"json")},getScript:function(e,t){return me.get(e,void 0,t,"script")}}),me.each(["get","post"],function(e,t){me[t]=function(e,n,r,i){return me.isFunction(n)&&(i=i||r,r=n,n=void 0),me.ajax(me.extend({url:e,type:t,dataType:i,data:n,success:r},me.isPlainObject(e)&&e))}}),me._evalUrl=function(e){return me.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},me.fn.extend({wrapAll:function(e){var t;return this[0]&&(me.isFunction(e)&&(e=e.call(this[0])),t=me(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 me.isFunction(e)?this.each(function(t){me(this).wrapInner(e.call(this,t))}):this.each(function(){var t=me(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=me.isFunction(e);return this.each(function(n){me(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){me(this).replaceWith(this.childNodes)}),this}}),me.expr.pseudos.hidden=function(e){return!me.expr.pseudos.visible(e); -},me.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},me.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(t){}};var _t={0:200,1223:204},Bt=me.ajaxSettings.xhr();de.cors=!!Bt&&"withCredentials"in Bt,de.ajax=Bt=!!Bt,me.ajaxTransport(function(t){var n,r;return de.cors||Bt&&!t.crossDomain?{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(a in i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(_t[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(u){if(n)throw u}},abort:function(){n&&n()}}:void 0}),me.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),me.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 me.globalEval(e),e}}}),me.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),me.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=me("",rE:!0,sL:"javascript"}},{b:"<%",e:"%>",sL:"vbscript"},n,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"",c:[{cN:"title",b:"[^ /><]+",r:0},r]}]}}),hljs.registerLanguage("asciidoc",function(e){return{c:[{cN:"comment",b:"^/{4,}\\n",e:"\\n/{4,}$",r:10},{cN:"comment",b:"^//",e:"$",r:0},{cN:"title",b:"^\\.\\w.*$"},{b:"^[=\\*]{4,}\\n",e:"\\n^[=\\*]{4,}$",r:10},{cN:"header",b:"^(={1,5}) .+?( \\1)?$",r:10},{cN:"header",b:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$",r:10},{cN:"attribute",b:"^:.+?:",e:"\\s",eE:!0,r:10},{cN:"attribute",b:"^\\[.+?\\]$",r:0},{cN:"blockquote",b:"^_{4,}\\n",e:"\\n_{4,}$",r:10},{cN:"code",b:"^[\\-\\.]{4,}\\n",e:"\\n[\\-\\.]{4,}$",r:10},{b:"^\\+{4,}\\n",e:"\\n\\+{4,}$",c:[{b:"<",e:">",sL:"xml",r:0}],r:10},{cN:"bullet",b:"^(\\*+|\\-+|\\.+|[^\\n]+?::)\\s+"},{cN:"label",b:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",r:10},{cN:"strong",b:"\\B\\*(?![\\*\\s])",e:"(\\n{2}|\\*)",c:[{b:"\\\\*\\w",r:0}]},{cN:"emphasis",b:"\\B'(?!['\\s])",e:"(\\n{2}|')",c:[{b:"\\\\'\\w",r:0}],r:0},{cN:"emphasis",b:"_(?![_\\s])",e:"(\\n{2}|_)",r:0},{cN:"smartquote",b:"``.+?''",r:10},{cN:"smartquote",b:"`.+?'",r:10},{cN:"code",b:"(`.+?`|\\+.+?\\+)",r:0},{cN:"code",b:"^[ \\t]",e:"$",r:0},{cN:"horizontal_rule",b:"^'{3,}[ \\t]*$",r:10},{b:"(link:)?(http|https|ftp|file|irc|image:?):\\S+\\[.*?\\]",rB:!0,c:[{b:"(link|image:?):",r:0},{cN:"link_url",b:"\\w",e:"[^\\[]+",r:0},{cN:"link_label",b:"\\[",e:"\\]",eB:!0,eE:!0,r:0}],r:10}]}}),hljs.registerLanguage("coffeescript",function(e){var t={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off",reserved:"case default function var void with const let enum export import native __hasProp __extends __slice __bind __indexOf",built_in:"npm require console print module exports global window document"},n="[A-Za-z$_][0-9A-Za-z$_]*",r=e.inherit(e.TM,{b:n}),i={cN:"subst",b:/#\{/,e:/}/,k:t},o=[e.BNM,e.inherit(e.CNM,{starts:{e:"(\\s*/)?",r:0}}),{cN:"string",v:[{b:/'''/,e:/'''/,c:[e.BE]},{b:/'/,e:/'/,c:[e.BE]},{b:/"""/,e:/"""/,c:[e.BE,i]},{b:/"/,e:/"/,c:[e.BE,i]}]},{cN:"regexp",v:[{b:"///",e:"///",c:[i,e.HCM]},{b:"//[gim]*",r:0},{b:"/\\S(\\\\.|[^\\n])*?/[gim]*(?=\\s|\\W|$)"}]},{cN:"property",b:"@"+n},{b:"`",e:"`",eB:!0,eE:!0,sL:"javascript"}];return i.c=o,{k:t,c:o.concat([{cN:"comment",b:"###",e:"###"},e.HCM,{cN:"function",b:"("+n+"\\s*=\\s*)?(\\(.*\\))?\\s*\\B[-=]>",e:"[-=]>",rB:!0,c:[r,{cN:"params",b:"\\(",rB:!0,c:[{b:/\(/,e:/\)/,k:t,c:["self"].concat(o)}]}]},{cN:"class",bK:"class",e:"$",i:/[:="\[\]]/,c:[{bK:"extends",eW:!0,i:/[:="\[\]]/,c:[r]},r]},{cN:"attribute",b:n+":",e:":",rB:!0,eE:!0,r:0}])}}),hljs.registerLanguage("fix",function(e){return{c:[{b:/[^\u2401\u0001]+/,e:/[\u2401\u0001]/,eE:!0,rB:!0,rE:!1,c:[{b:/([^\u2401\u0001=]+)/,e:/=([^\u2401\u0001=]+)/,rE:!0,rB:!1,cN:"attribute"},{b:/=/,e:/([\u2401\u0001])/,eE:!0,eB:!0,cN:"string"}]}],cI:!0}}),hljs.registerLanguage("mel",function(e){return{k:"int float string vector matrix if else switch case default while do for in break continue global proc return about abs addAttr addAttributeEditorNodeHelp addDynamic addNewShelfTab addPP addPanelCategory addPrefixToName advanceToNextDrivenKey affectedNet affects aimConstraint air alias aliasAttr align alignCtx alignCurve alignSurface allViewFit ambientLight angle angleBetween animCone animCurveEditor animDisplay animView annotate appendStringArray applicationName applyAttrPreset applyTake arcLenDimContext arcLengthDimension arclen arrayMapper art3dPaintCtx artAttrCtx artAttrPaintVertexCtx artAttrSkinPaintCtx artAttrTool artBuildPaintMenu artFluidAttrCtx artPuttyCtx artSelectCtx artSetPaintCtx artUserPaintCtx assignCommand assignInputDevice assignViewportFactories attachCurve attachDeviceAttr attachSurface attrColorSliderGrp attrCompatibility attrControlGrp attrEnumOptionMenu attrEnumOptionMenuGrp attrFieldGrp attrFieldSliderGrp attrNavigationControlGrp attrPresetEditWin attributeExists attributeInfo attributeMenu attributeQuery autoKeyframe autoPlace bakeClip bakeFluidShading bakePartialHistory bakeResults bakeSimulation basename basenameEx batchRender bessel bevel bevelPlus binMembership bindSkin blend2 blendShape blendShapeEditor blendShapePanel blendTwoAttr blindDataType boneLattice boundary boxDollyCtx boxZoomCtx bufferCurve buildBookmarkMenu buildKeyframeMenu button buttonManip CBG cacheFile cacheFileCombine cacheFileMerge cacheFileTrack camera cameraView canCreateManip canvas capitalizeString catch catchQuiet ceil changeSubdivComponentDisplayLevel changeSubdivRegion channelBox character characterMap characterOutlineEditor characterize chdir checkBox checkBoxGrp checkDefaultRenderGlobals choice circle circularFillet clamp clear clearCache clip clipEditor clipEditorCurrentTimeCtx clipSchedule clipSchedulerOutliner clipTrimBefore closeCurve closeSurface cluster cmdFileOutput cmdScrollFieldExecuter cmdScrollFieldReporter cmdShell coarsenSubdivSelectionList collision color colorAtPoint colorEditor colorIndex colorIndexSliderGrp colorSliderButtonGrp colorSliderGrp columnLayout commandEcho commandLine commandPort compactHairSystem componentEditor compositingInterop computePolysetVolume condition cone confirmDialog connectAttr connectControl connectDynamic connectJoint connectionInfo constrain constrainValue constructionHistory container containsMultibyte contextInfo control convertFromOldLayers convertIffToPsd convertLightmap convertSolidTx convertTessellation convertUnit copyArray copyFlexor copyKey copySkinWeights cos cpButton cpCache cpClothSet cpCollision cpConstraint cpConvClothToMesh cpForces cpGetSolverAttr cpPanel cpProperty cpRigidCollisionFilter cpSeam cpSetEdit cpSetSolverAttr cpSolver cpSolverTypes cpTool cpUpdateClothUVs createDisplayLayer createDrawCtx createEditor createLayeredPsdFile createMotionField createNewShelf createNode createRenderLayer createSubdivRegion cross crossProduct ctxAbort ctxCompletion ctxEditMode ctxTraverse currentCtx currentTime currentTimeCtx currentUnit curve curveAddPtCtx curveCVCtx curveEPCtx curveEditorCtx curveIntersect curveMoveEPCtx curveOnSurface curveSketchCtx cutKey cycleCheck cylinder dagPose date defaultLightListCheckBox defaultNavigation defineDataServer defineVirtualDevice deformer deg_to_rad delete deleteAttr deleteShadingGroupsAndMaterials deleteShelfTab deleteUI deleteUnusedBrushes delrandstr detachCurve detachDeviceAttr detachSurface deviceEditor devicePanel dgInfo dgdirty dgeval dgtimer dimWhen directKeyCtx directionalLight dirmap dirname disable disconnectAttr disconnectJoint diskCache displacementToPoly displayAffected displayColor displayCull displayLevelOfDetail displayPref displayRGBColor displaySmoothness displayStats displayString displaySurface distanceDimContext distanceDimension doBlur dolly dollyCtx dopeSheetEditor dot dotProduct doubleProfileBirailSurface drag dragAttrContext draggerContext dropoffLocator duplicate duplicateCurve duplicateSurface dynCache dynControl dynExport dynExpression dynGlobals dynPaintEditor dynParticleCtx dynPref dynRelEdPanel dynRelEditor dynamicLoad editAttrLimits editDisplayLayerGlobals editDisplayLayerMembers editRenderLayerAdjustment editRenderLayerGlobals editRenderLayerMembers editor editorTemplate effector emit emitter enableDevice encodeString endString endsWith env equivalent equivalentTol erf error eval evalDeferred evalEcho event exactWorldBoundingBox exclusiveLightCheckBox exec executeForEachObject exists exp expression expressionEditorListen extendCurve extendSurface extrude fcheck fclose feof fflush fgetline fgetword file fileBrowserDialog fileDialog fileExtension fileInfo filetest filletCurve filter filterCurve filterExpand filterStudioImport findAllIntersections findAnimCurves findKeyframe findMenuItem findRelatedSkinCluster finder firstParentOf fitBspline flexor floatEq floatField floatFieldGrp floatScrollBar floatSlider floatSlider2 floatSliderButtonGrp floatSliderGrp floor flow fluidCacheInfo fluidEmitter fluidVoxelInfo flushUndo fmod fontDialog fopen formLayout format fprint frameLayout fread freeFormFillet frewind fromNativePath fwrite gamma gauss geometryConstraint getApplicationVersionAsFloat getAttr getClassification getDefaultBrush getFileList getFluidAttr getInputDeviceRange getMayaPanelTypes getModifiers getPanel getParticleAttr getPluginResource getenv getpid glRender glRenderEditor globalStitch gmatch goal gotoBindPose grabColor gradientControl gradientControlNoAttr graphDollyCtx graphSelectContext graphTrackCtx gravity grid gridLayout group groupObjectsByName HfAddAttractorToAS HfAssignAS HfBuildEqualMap HfBuildFurFiles HfBuildFurImages HfCancelAFR HfConnectASToHF HfCreateAttractor HfDeleteAS HfEditAS HfPerformCreateAS HfRemoveAttractorFromAS HfSelectAttached HfSelectAttractors HfUnAssignAS hardenPointCurve hardware hardwareRenderPanel headsUpDisplay headsUpMessage help helpLine hermite hide hilite hitTest hotBox hotkey hotkeyCheck hsv_to_rgb hudButton hudSlider hudSliderButton hwReflectionMap hwRender hwRenderLoad hyperGraph hyperPanel hyperShade hypot iconTextButton iconTextCheckBox iconTextRadioButton iconTextRadioCollection iconTextScrollList iconTextStaticLabel ikHandle ikHandleCtx ikHandleDisplayScale ikSolver ikSplineHandleCtx ikSystem ikSystemInfo ikfkDisplayMethod illustratorCurves image imfPlugins inheritTransform insertJoint insertJointCtx insertKeyCtx insertKnotCurve insertKnotSurface instance instanceable instancer intField intFieldGrp intScrollBar intSlider intSliderGrp interToUI internalVar intersect iprEngine isAnimCurve isConnected isDirty isParentOf isSameObject isTrue isValidObjectName isValidString isValidUiName isolateSelect itemFilter itemFilterAttr itemFilterRender itemFilterType joint jointCluster jointCtx jointDisplayScale jointLattice keyTangent keyframe keyframeOutliner keyframeRegionCurrentTimeCtx keyframeRegionDirectKeyCtx keyframeRegionDollyCtx keyframeRegionInsertKeyCtx keyframeRegionMoveKeyCtx keyframeRegionScaleKeyCtx keyframeRegionSelectKeyCtx keyframeRegionSetKeyCtx keyframeRegionTrackCtx keyframeStats lassoContext lattice latticeDeformKeyCtx launch launchImageEditor layerButton layeredShaderPort layeredTexturePort layout layoutDialog lightList lightListEditor lightListPanel lightlink lineIntersection linearPrecision linstep listAnimatable listAttr listCameras listConnections listDeviceAttachments listHistory listInputDeviceAxes listInputDeviceButtons listInputDevices listMenuAnnotation listNodeTypes listPanelCategories listRelatives listSets listTransforms listUnselected listerEditor loadFluid loadNewShelf loadPlugin loadPluginLanguageResources loadPrefObjects localizedPanelLabel lockNode loft log longNameOf lookThru ls lsThroughFilter lsType lsUI Mayatomr mag makeIdentity makeLive makePaintable makeRoll makeSingleSurface makeTubeOn makebot manipMoveContext manipMoveLimitsCtx manipOptions manipRotateContext manipRotateLimitsCtx manipScaleContext manipScaleLimitsCtx marker match max memory menu menuBarLayout menuEditor menuItem menuItemToShelf menuSet menuSetPref messageLine min minimizeApp mirrorJoint modelCurrentTimeCtx modelEditor modelPanel mouse movIn movOut move moveIKtoFK moveKeyCtx moveVertexAlongDirection multiProfileBirailSurface mute nParticle nameCommand nameField namespace namespaceInfo newPanelItems newton nodeCast nodeIconButton nodeOutliner nodePreset nodeType noise nonLinear normalConstraint normalize nurbsBoolean nurbsCopyUVSet nurbsCube nurbsEditUV nurbsPlane nurbsSelect nurbsSquare nurbsToPoly nurbsToPolygonsPref nurbsToSubdiv nurbsToSubdivPref nurbsUVSet nurbsViewDirectionVector objExists objectCenter objectLayer objectType objectTypeUI obsoleteProc oceanNurbsPreviewPlane offsetCurve offsetCurveOnSurface offsetSurface openGLExtension openMayaPref optionMenu optionMenuGrp optionVar orbit orbitCtx orientConstraint outlinerEditor outlinerPanel overrideModifier paintEffectsDisplay pairBlend palettePort paneLayout panel panelConfiguration panelHistory paramDimContext paramDimension paramLocator parent parentConstraint particle particleExists particleInstancer particleRenderInfo partition pasteKey pathAnimation pause pclose percent performanceOptions pfxstrokes pickWalk picture pixelMove planarSrf plane play playbackOptions playblast plugAttr plugNode pluginInfo pluginResourceUtil pointConstraint pointCurveConstraint pointLight pointMatrixMult pointOnCurve pointOnSurface pointPosition poleVectorConstraint polyAppend polyAppendFacetCtx polyAppendVertex polyAutoProjection polyAverageNormal polyAverageVertex polyBevel polyBlendColor polyBlindData polyBoolOp polyBridgeEdge polyCacheMonitor polyCheck polyChipOff polyClipboard polyCloseBorder polyCollapseEdge polyCollapseFacet polyColorBlindData polyColorDel polyColorPerVertex polyColorSet polyCompare polyCone polyCopyUV polyCrease polyCreaseCtx polyCreateFacet polyCreateFacetCtx polyCube polyCut polyCutCtx polyCylinder polyCylindricalProjection polyDelEdge polyDelFacet polyDelVertex polyDuplicateAndConnect polyDuplicateEdge polyEditUV polyEditUVShell polyEvaluate polyExtrudeEdge polyExtrudeFacet polyExtrudeVertex polyFlipEdge polyFlipUV polyForceUV polyGeoSampler polyHelix polyInfo polyInstallAction polyLayoutUV polyListComponentConversion polyMapCut polyMapDel polyMapSew polyMapSewMove polyMergeEdge polyMergeEdgeCtx polyMergeFacet polyMergeFacetCtx polyMergeUV polyMergeVertex polyMirrorFace polyMoveEdge polyMoveFacet polyMoveFacetUV polyMoveUV polyMoveVertex polyNormal polyNormalPerVertex polyNormalizeUV polyOptUvs polyOptions polyOutput polyPipe polyPlanarProjection polyPlane polyPlatonicSolid polyPoke polyPrimitive polyPrism polyProjection polyPyramid polyQuad polyQueryBlindData polyReduce polySelect polySelectConstraint polySelectConstraintMonitor polySelectCtx polySelectEditCtx polySeparate polySetToFaceNormal polySewEdge polyShortestPathCtx polySmooth polySoftEdge polySphere polySphericalProjection polySplit polySplitCtx polySplitEdge polySplitRing polySplitVertex polyStraightenUVBorder polySubdivideEdge polySubdivideFacet polyToSubdiv polyTorus polyTransfer polyTriangulate polyUVSet polyUnite polyWedgeFace popen popupMenu pose pow preloadRefEd print progressBar progressWindow projFileViewer projectCurve projectTangent projectionContext projectionManip promptDialog propModCtx propMove psdChannelOutliner psdEditTextureFile psdExport psdTextureFile putenv pwd python querySubdiv quit rad_to_deg radial radioButton radioButtonGrp radioCollection radioMenuItemCollection rampColorPort rand randomizeFollicles randstate rangeControl readTake rebuildCurve rebuildSurface recordAttr recordDevice redo reference referenceEdit referenceQuery refineSubdivSelectionList refresh refreshAE registerPluginResource rehash reloadImage removeJoint removeMultiInstance removePanelCategory rename renameAttr renameSelectionList renameUI render renderGlobalsNode renderInfo renderLayerButton renderLayerParent renderLayerPostProcess renderLayerUnparent renderManip renderPartition renderQualityNode renderSettings renderThumbnailUpdate renderWindowEditor renderWindowSelectContext renderer reorder reorderDeformers requires reroot resampleFluid resetAE resetPfxToPolyCamera resetTool resolutionNode retarget reverseCurve reverseSurface revolve rgb_to_hsv rigidBody rigidSolver roll rollCtx rootOf rot rotate rotationInterpolation roundConstantRadius rowColumnLayout rowLayout runTimeCommand runup sampleImage saveAllShelves saveAttrPreset saveFluid saveImage saveInitialState saveMenu savePrefObjects savePrefs saveShelf saveToolSettings scale scaleBrushBrightness scaleComponents scaleConstraint scaleKey scaleKeyCtx sceneEditor sceneUIReplacement scmh scriptCtx scriptEditorInfo scriptJob scriptNode scriptTable scriptToShelf scriptedPanel scriptedPanelType scrollField scrollLayout sculpt searchPathArray seed selLoadSettings select selectContext selectCurveCV selectKey selectKeyCtx selectKeyframeRegionCtx selectMode selectPref selectPriority selectType selectedNodes selectionConnection separator setAttr setAttrEnumResource setAttrMapping setAttrNiceNameResource setConstraintRestPosition setDefaultShadingGroup setDrivenKeyframe setDynamic setEditCtx setEditor setFluidAttr setFocus setInfinity setInputDeviceMapping setKeyCtx setKeyPath setKeyframe setKeyframeBlendshapeTargetWts setMenuMode setNodeNiceNameResource setNodeTypeFlag setParent setParticleAttr setPfxToPolyCamera setPluginResource setProject setStampDensity setStartupMessage setState setToolTo setUITemplate setXformManip sets shadingConnection shadingGeometryRelCtx shadingLightRelCtx shadingNetworkCompare shadingNode shapeCompare shelfButton shelfLayout shelfTabLayout shellField shortNameOf showHelp showHidden showManipCtx showSelectionInTitle showShadingGroupAttrEditor showWindow sign simplify sin singleProfileBirailSurface size sizeBytes skinCluster skinPercent smoothCurve smoothTangentSurface smoothstep snap2to2 snapKey snapMode snapTogetherCtx snapshot soft softMod softModCtx sort sound soundControl source spaceLocator sphere sphrand spotLight spotLightPreviewPort spreadSheetEditor spring sqrt squareSurface srtContext stackTrace startString startsWith stitchAndExplodeShell stitchSurface stitchSurfacePoints strcmp stringArrayCatenate stringArrayContains stringArrayCount stringArrayInsertAtIndex stringArrayIntersector stringArrayRemove stringArrayRemoveAtIndex stringArrayRemoveDuplicates stringArrayRemoveExact stringArrayToString stringToStringArray strip stripPrefixFromName stroke subdAutoProjection subdCleanTopology subdCollapse subdDuplicateAndConnect subdEditUV subdListComponentConversion subdMapCut subdMapSewMove subdMatchTopology subdMirror subdToBlind subdToPoly subdTransferUVsToCache subdiv subdivCrease subdivDisplaySmoothness substitute substituteAllString substituteGeometry substring surface surfaceSampler surfaceShaderList swatchDisplayPort switchTable symbolButton symbolCheckBox sysFile system tabLayout tan tangentConstraint texLatticeDeformContext texManipContext texMoveContext texMoveUVShellContext texRotateContext texScaleContext texSelectContext texSelectShortestPathCtx texSmudgeUVContext texWinToolCtx text textCurves textField textFieldButtonGrp textFieldGrp textManip textScrollList textToShelf textureDisplacePlane textureHairColor texturePlacementContext textureWindow threadCount threePointArcCtx timeControl timePort timerX toNativePath toggle toggleAxis toggleWindowVisibility tokenize tokenizeList tolerance tolower toolButton toolCollection toolDropped toolHasOptions toolPropertyWindow torus toupper trace track trackCtx transferAttributes transformCompare transformLimits translator trim trunc truncateFluidCache truncateHairCache tumble tumbleCtx turbulence twoPointArcCtx uiRes uiTemplate unassignInputDevice undo undoInfo ungroup uniform unit unloadPlugin untangleUV untitledFileName untrim upAxis updateAE userCtx uvLink uvSnapshot validateShelfName vectorize view2dToolCtx viewCamera viewClipPlane viewFit viewHeadOn viewLookAt viewManip viewPlace viewSet visor volumeAxis vortex waitCursor warning webBrowser webBrowserPrefs whatIs window windowPref wire wireContext workspace wrinkle wrinkleContext writeTake xbmLangPathList xform", +i:""}]},{cN:"preprocessor",b:"#",e:"$"},{cN:"class",b:"("+r.split(" ").join("|")+")\\b",e:"({|$)",k:r,l:n,c:[e.UTM]},{cN:"variable",b:"\\."+e.UIR,r:0}]}}),hljs.registerLanguage("apache",function(e){var t={cN:"number",b:"[\\$%]\\d+"};return{cI:!0,c:[e.HCM,{cN:"tag",b:""},{cN:"keyword",b:/\w+/,r:0,k:{common:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{e:/$/,r:0,k:{literal:"on off all"},c:[{cN:"sqbracket",b:"\\s\\[",e:"\\]$"},{cN:"cbracket",b:"[\\$%]\\{",e:"\\}",c:["self",t]},t,e.QSM]}}],i:/\S/}}),hljs.registerLanguage("livecodeserver",function(e){var t={cN:"variable",b:"\\b[gtps][A-Z]+[A-Za-z0-9_\\-]*\\b|\\$_[A-Z]+",r:0},n={cN:"comment",e:"$",v:[e.CBLCLM,e.HCM,{b:"--"},{b:"[^:]//"}]},r=e.inherit(e.TM,{v:[{b:"\\b_*rig[A-Z]+[A-Za-z0-9_\\-]*"},{b:"\\b_[a-z0-9\\-]+"}]}),i=e.inherit(e.TM,{b:"\\b([A-Za-z0-9_\\-]+)\\b"});return{cI:!1,k:{keyword:"after byte bytes english the until http forever descending using line real8 with seventh for stdout finally element word fourth before black ninth sixth characters chars stderr uInt1 uInt1s uInt2 uInt2s stdin string lines relative rel any fifth items from middle mid at else of catch then third it file milliseconds seconds second secs sec int1 int1s int4 int4s internet int2 int2s normal text item last long detailed effective uInt4 uInt4s repeat end repeat URL in try into switch to words https token binfile each tenth as ticks tick system real4 by dateItems without char character ascending eighth whole dateTime numeric short first ftp integer abbreviated abbr abbrev private case while if",constant:"SIX TEN FORMFEED NINE ZERO NONE SPACE FOUR FALSE COLON CRLF PI COMMA ENDOFFILE EOF EIGHT FIVE QUOTE EMPTY ONE TRUE RETURN CR LINEFEED RIGHT BACKSLASH NULL SEVEN TAB THREE TWO six ten formfeed nine zero none space four false colon crlf pi comma endoffile eof eight five quote empty one true return cr linefeed right backslash null seven tab three two RIVERSION RISTATE FILE_READ_MODE FILE_WRITE_MODE FILE_WRITE_MODE DIR_WRITE_MODE FILE_READ_UMASK FILE_WRITE_UMASK DIR_READ_UMASK DIR_WRITE_UMASK",operator:"div mod wrap and or bitAnd bitNot bitOr bitXor among not in a an within contains ends with begins the keys of keys",built_in:"put abs acos aliasReference annuity arrayDecode arrayEncode asin atan atan2 average avg base64Decode base64Encode baseConvert binaryDecode binaryEncode byteToNum cachedURL cachedURLs charToNum cipherNames commandNames compound compress constantNames cos date dateFormat decompress directories diskSpace DNSServers exp exp1 exp2 exp10 extents files flushEvents folders format functionNames global globals hasMemory hostAddress hostAddressToName hostName hostNameToAddress isNumber ISOToMac itemOffset keys len length libURLErrorData libUrlFormData libURLftpCommand libURLLastHTTPHeaders libURLLastRHHeaders libUrlMultipartFormAddPart libUrlMultipartFormData libURLVersion lineOffset ln ln1 localNames log log2 log10 longFilePath lower macToISO matchChunk matchText matrixMultiply max md5Digest median merge millisec millisecs millisecond milliseconds min monthNames num number numToByte numToChar offset open openfiles openProcesses openProcessIDs openSockets paramCount param params peerAddress pendingMessages platform processID random randomBytes replaceText result revCreateXMLTree revCreateXMLTreeFromFile revCurrentRecord revCurrentRecordIsFirst revCurrentRecordIsLast revDatabaseColumnCount revDatabaseColumnIsNull revDatabaseColumnLengths revDatabaseColumnNames revDatabaseColumnNamed revDatabaseColumnNumbered revDatabaseColumnTypes revDatabaseConnectResult revDatabaseCursors revDatabaseID revDatabaseTableNames revDatabaseType revDataFromQuery revdb_closeCursor revdb_columnbynumber revdb_columncount revdb_columnisnull revdb_columnlengths revdb_columnnames revdb_columntypes revdb_commit revdb_connect revdb_connections revdb_connectionerr revdb_currentrecord revdb_cursorconnection revdb_cursorerr revdb_cursors revdb_dbtype revdb_disconnect revdb_execute revdb_iseof revdb_isbof revdb_movefirst revdb_movelast revdb_movenext revdb_moveprev revdb_query revdb_querylist revdb_recordcount revdb_rollback revdb_tablenames revGetDatabaseDriverPath revNumberOfRecords revOpenDatabase revOpenDatabases revQueryDatabase revQueryDatabaseBlob revQueryResult revQueryIsAtStart revQueryIsAtEnd revUnixFromMacPath revXMLAttribute revXMLAttributes revXMLAttributeValues revXMLChildContents revXMLChildNames revXMLFirstChild revXMLMatchingNode revXMLNextSibling revXMLNodeContents revXMLNumberOfChildren revXMLParent revXMLPreviousSibling revXMLRootNode revXMLRPC_CreateRequest revXMLRPC_Documents revXMLRPC_Error revXMLRPC_Execute revXMLRPC_GetHost revXMLRPC_GetMethod revXMLRPC_GetParam revXMLText revXMLRPC_GetParamCount revXMLRPC_GetParamNode revXMLRPC_GetParamType revXMLRPC_GetPath revXMLRPC_GetPort revXMLRPC_GetProtocol revXMLRPC_GetRequest revXMLRPC_GetResponse revXMLRPC_GetSocket revXMLTree revXMLTrees revXMLValidateDTD revZipDescribeItem revZipEnumerateItems revZipOpenArchives round sec secs seconds sha1Digest shell shortFilePath sin specialFolderPath sqrt standardDeviation statRound stdDev sum sysError systemVersion tan tempName tick ticks time to toLower toUpper transpose trunc uniDecode uniEncode upper URLDecode URLEncode URLStatus value variableNames version waitDepth weekdayNames wordOffset add breakpoint cancel clear local variable file word line folder directory URL close socket process combine constant convert create new alias folder directory decrypt delete variable word line folder directory URL dispatch divide do encrypt filter get include intersect kill libURLDownloadToFile libURLFollowHttpRedirects libURLftpUpload libURLftpUploadFile libURLresetAll libUrlSetAuthCallback libURLSetCustomHTTPHeaders libUrlSetExpect100 libURLSetFTPListCommand libURLSetFTPMode libURLSetFTPStopTime libURLSetStatusCallback load multiply socket process post seek rel relative read from process rename replace require resetAll revAddXMLNode revAppendXML revCloseCursor revCloseDatabase revCommitDatabase revCopyFile revCopyFolder revCopyXMLNode revDeleteFolder revDeleteXMLNode revDeleteAllXMLTrees revDeleteXMLTree revExecuteSQL revGoURL revInsertXMLNode revMoveFolder revMoveToFirstRecord revMoveToLastRecord revMoveToNextRecord revMoveToPreviousRecord revMoveToRecord revMoveXMLNode revPutIntoXMLNode revRollBackDatabase revSetDatabaseDriverPath revSetXMLAttribute revXMLRPC_AddParam revXMLRPC_DeleteAllDocuments revXMLAddDTD revXMLRPC_Free revXMLRPC_FreeAll revXMLRPC_DeleteDocument revXMLRPC_DeleteParam revXMLRPC_SetHost revXMLRPC_SetMethod revXMLRPC_SetPort revXMLRPC_SetProtocol revXMLRPC_SetSocket revZipAddItemWithData revZipAddItemWithFile revZipAddUncompressedItemWithData revZipAddUncompressedItemWithFile revZipCancel revZipCloseArchive revZipDeleteItem revZipExtractItemToFile revZipExtractItemToVariable revZipSetProgressCallback revZipRenameItem revZipReplaceItemWithData revZipReplaceItemWithFile revZipOpenArchive send set sort split subtract union unload wait write"},c:[t,{cN:"keyword",b:"\\bend\\sif\\b"},{cN:"function",bK:"function",e:"$",c:[t,i,e.ASM,e.QSM,e.BNM,e.CNM,r]},{cN:"function",bK:"end",e:"$",c:[i,r]},{cN:"command",bK:"command on",e:"$",c:[t,i,e.ASM,e.QSM,e.BNM,e.CNM,r]},{cN:"command",bK:"end",e:"$",c:[i,r]},{cN:"preprocessor",b:"<\\?rev|<\\?lc|<\\?livecode",r:10},{cN:"preprocessor",b:"<\\?"},{cN:"preprocessor",b:"\\?>"},n,e.ASM,e.QSM,e.BNM,e.CNM,r],i:";$|^\\[|^="}}),hljs.registerLanguage("glsl",function(e){return{k:{keyword:"atomic_uint attribute bool break bvec2 bvec3 bvec4 case centroid coherent const continue default discard dmat2 dmat2x2 dmat2x3 dmat2x4 dmat3 dmat3x2 dmat3x3 dmat3x4 dmat4 dmat4x2 dmat4x3 dmat4x4 do double dvec2 dvec3 dvec4 else flat float for highp if iimage1D iimage1DArray iimage2D iimage2DArray iimage2DMS iimage2DMSArray iimage2DRect iimage3D iimageBuffer iimageCube iimageCubeArray image1D image1DArray image2D image2DArray image2DMS image2DMSArray image2DRect image3D imageBuffer imageCube imageCubeArray in inout int invariant isampler1D isampler1DArray isampler2D isampler2DArray isampler2DMS isampler2DMSArray isampler2DRect isampler3D isamplerBuffer isamplerCube isamplerCubeArray ivec2 ivec3 ivec4 layout lowp mat2 mat2x2 mat2x3 mat2x4 mat3 mat3x2 mat3x3 mat3x4 mat4 mat4x2 mat4x3 mat4x4 mediump noperspective out patch precision readonly restrict return sample sampler1D sampler1DArray sampler1DArrayShadow sampler1DShadow sampler2D sampler2DArray sampler2DArrayShadow sampler2DMS sampler2DMSArray sampler2DRect sampler2DRectShadow sampler2DShadow sampler3D samplerBuffer samplerCube samplerCubeArray samplerCubeArrayShadow samplerCubeShadow smooth struct subroutine switch uimage1D uimage1DArray uimage2D uimage2DArray uimage2DMS uimage2DMSArray uimage2DRect uimage3D uimageBuffer uimageCube uimageCubeArray uint uniform usampler1D usampler1DArray usampler2D usampler2DArray usampler2DMS usampler2DMSArray usampler2DRect usampler3D usamplerBuffer usamplerCube usamplerCubeArray uvec2 uvec3 uvec4 varying vec2 vec3 vec4 void volatile while writeonly",built_in:"gl_BackColor gl_BackLightModelProduct gl_BackLightProduct gl_BackMaterial gl_BackSecondaryColor gl_ClipDistance gl_ClipPlane gl_ClipVertex gl_Color gl_DepthRange gl_EyePlaneQ gl_EyePlaneR gl_EyePlaneS gl_EyePlaneT gl_Fog gl_FogCoord gl_FogFragCoord gl_FragColor gl_FragCoord gl_FragData gl_FragDepth gl_FrontColor gl_FrontFacing gl_FrontLightModelProduct gl_FrontLightProduct gl_FrontMaterial gl_FrontSecondaryColor gl_InstanceID gl_InvocationID gl_Layer gl_LightModel gl_LightSource gl_MaxAtomicCounterBindings gl_MaxAtomicCounterBufferSize gl_MaxClipDistances gl_MaxClipPlanes gl_MaxCombinedAtomicCounterBuffers gl_MaxCombinedAtomicCounters gl_MaxCombinedImageUniforms gl_MaxCombinedImageUnitsAndFragmentOutputs gl_MaxCombinedTextureImageUnits gl_MaxDrawBuffers gl_MaxFragmentAtomicCounterBuffers gl_MaxFragmentAtomicCounters gl_MaxFragmentImageUniforms gl_MaxFragmentInputComponents gl_MaxFragmentUniformComponents gl_MaxFragmentUniformVectors gl_MaxGeometryAtomicCounterBuffers gl_MaxGeometryAtomicCounters gl_MaxGeometryImageUniforms gl_MaxGeometryInputComponents gl_MaxGeometryOutputComponents gl_MaxGeometryOutputVertices gl_MaxGeometryTextureImageUnits gl_MaxGeometryTotalOutputComponents gl_MaxGeometryUniformComponents gl_MaxGeometryVaryingComponents gl_MaxImageSamples gl_MaxImageUnits gl_MaxLights gl_MaxPatchVertices gl_MaxProgramTexelOffset gl_MaxTessControlAtomicCounterBuffers gl_MaxTessControlAtomicCounters gl_MaxTessControlImageUniforms gl_MaxTessControlInputComponents gl_MaxTessControlOutputComponents gl_MaxTessControlTextureImageUnits gl_MaxTessControlTotalOutputComponents gl_MaxTessControlUniformComponents gl_MaxTessEvaluationAtomicCounterBuffers gl_MaxTessEvaluationAtomicCounters gl_MaxTessEvaluationImageUniforms gl_MaxTessEvaluationInputComponents gl_MaxTessEvaluationOutputComponents gl_MaxTessEvaluationTextureImageUnits gl_MaxTessEvaluationUniformComponents gl_MaxTessGenLevel gl_MaxTessPatchComponents gl_MaxTextureCoords gl_MaxTextureImageUnits gl_MaxTextureUnits gl_MaxVaryingComponents gl_MaxVaryingFloats gl_MaxVaryingVectors gl_MaxVertexAtomicCounterBuffers gl_MaxVertexAtomicCounters gl_MaxVertexAttribs gl_MaxVertexImageUniforms gl_MaxVertexOutputComponents gl_MaxVertexTextureImageUnits gl_MaxVertexUniformComponents gl_MaxVertexUniformVectors gl_MaxViewports gl_MinProgramTexelOffsetgl_ModelViewMatrix gl_ModelViewMatrixInverse gl_ModelViewMatrixInverseTranspose gl_ModelViewMatrixTranspose gl_ModelViewProjectionMatrix gl_ModelViewProjectionMatrixInverse gl_ModelViewProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixTranspose gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_Normal gl_NormalMatrix gl_NormalScale gl_ObjectPlaneQ gl_ObjectPlaneR gl_ObjectPlaneS gl_ObjectPlaneT gl_PatchVerticesIn gl_PerVertex gl_Point gl_PointCoord gl_PointSize gl_Position gl_PrimitiveID gl_PrimitiveIDIn gl_ProjectionMatrix gl_ProjectionMatrixInverse gl_ProjectionMatrixInverseTranspose gl_ProjectionMatrixTranspose gl_SampleID gl_SampleMask gl_SampleMaskIn gl_SamplePosition gl_SecondaryColor gl_TessCoord gl_TessLevelInner gl_TessLevelOuter gl_TexCoord gl_TextureEnvColor gl_TextureMatrixInverseTranspose gl_TextureMatrixTranspose gl_Vertex gl_VertexID gl_ViewportIndex gl_in gl_out EmitStreamVertex EmitVertex EndPrimitive EndStreamPrimitive abs acos acosh all any asin asinh atan atanh atomicCounter atomicCounterDecrement atomicCounterIncrement barrier bitCount bitfieldExtract bitfieldInsert bitfieldReverse ceil clamp cos cosh cross dFdx dFdy degrees determinant distance dot equal exp exp2 faceforward findLSB findMSB floatBitsToInt floatBitsToUint floor fma fract frexp ftransform fwidth greaterThan greaterThanEqual imageAtomicAdd imageAtomicAnd imageAtomicCompSwap imageAtomicExchange imageAtomicMax imageAtomicMin imageAtomicOr imageAtomicXor imageLoad imageStore imulExtended intBitsToFloat interpolateAtCentroid interpolateAtOffset interpolateAtSample inverse inversesqrt isinf isnan ldexp length lessThan lessThanEqual log log2 matrixCompMult max memoryBarrier min mix mod modf noise1 noise2 noise3 noise4 normalize not notEqual outerProduct packDouble2x32 packHalf2x16 packSnorm2x16 packSnorm4x8 packUnorm2x16 packUnorm4x8 pow radians reflect refract round roundEven shadow1D shadow1DLod shadow1DProj shadow1DProjLod shadow2D shadow2DLod shadow2DProj shadow2DProjLod sign sin sinh smoothstep sqrt step tan tanh texelFetch texelFetchOffset texture texture1D texture1DLod texture1DProj texture1DProjLod texture2D texture2DLod texture2DProj texture2DProjLod texture3D texture3DLod texture3DProj texture3DProjLod textureCube textureCubeLod textureGather textureGatherOffset textureGatherOffsets textureGrad textureGradOffset textureLod textureLodOffset textureOffset textureProj textureProjGrad textureProjGradOffset textureProjLod textureProjLodOffset textureProjOffset textureQueryLod textureSize transpose trunc uaddCarry uintBitsToFloat umulExtended unpackDouble2x32 unpackHalf2x16 unpackSnorm2x16 unpackSnorm4x8 unpackUnorm2x16 unpackUnorm4x8 usubBorrow gl_TextureMatrix gl_TextureMatrixInverse",literal:"true false"},i:'"',c:[e.CLCM,e.CBLCLM,e.CNM,{cN:"preprocessor",b:"#",e:"$"}]}}),hljs.registerLanguage("lasso",function(e){var t="[a-zA-Z_][a-zA-Z0-9_.]*",n="<\\?(lasso(script)?|=)",r="\\]|\\?>",i={literal:"true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft",built_in:"array date decimal duration integer map pair string tag xml null bytes list queue set stack staticarray tie local var variable global data self inherited",keyword:"error_code error_msg error_pop error_push error_reset cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome"},o={cN:"comment",b:"",r:0},a={cN:"preprocessor",b:"\\[noprocess\\]",starts:{cN:"markup",e:"\\[/noprocess\\]",rE:!0,c:[o]}},s={cN:"preprocessor",b:"\\[/noprocess|"+n},l={cN:"variable",b:"'"+t+"'"},u=[e.CLCM,{cN:"javadoc",b:"/\\*\\*!",e:"\\*/"},e.CBLCLM,e.inherit(e.CNM,{b:e.CNR+"|-?(infinity|nan)\\b"}),e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null}),{cN:"string",b:"`",e:"`"},{cN:"variable",v:[{b:"[#$]"+t},{b:"#",e:"\\d+",i:"\\W"}]},{cN:"tag",b:"::\\s*",e:t,i:"\\W"},{cN:"attribute",b:"\\.\\.\\.|-"+e.UIR},{cN:"subst",v:[{b:"->\\s*",c:[l]},{b:":=|/(?!\\w)=?|[-+*%=<>&|!?\\\\]+",r:0}]},{cN:"built_in",b:"\\.\\.?",r:0,c:[l]},{cN:"class",bK:"define",rE:!0,e:"\\(|=>",c:[e.inherit(e.TM,{b:e.UIR+"(=(?!>))?"})]}];return{aliases:["ls","lassoscript"],cI:!0,l:t+"|&[lg]t;",k:i,c:[{cN:"preprocessor",b:r,r:0,starts:{cN:"markup",e:"\\[|"+n,rE:!0,r:0,c:[o]}},a,s,{cN:"preprocessor",b:"\\[no_square_brackets",starts:{e:"\\[/no_square_brackets\\]",l:t+"|&[lg]t;",k:i,c:[{cN:"preprocessor",b:r,r:0,starts:{cN:"markup",e:n,rE:!0,c:[o]}},a,s].concat(u)}},{cN:"preprocessor",b:"\\[",r:0},{cN:"shebang",b:"^#!.+lasso9\\b",r:10}].concat(u)}}),hljs.registerLanguage("mathematica",function(e){return{aliases:["mma"],l:"(\\$|\\b)"+e.IR+"\\b",k:"AbelianGroup Abort AbortKernels AbortProtect Above Abs Absolute AbsoluteCorrelation AbsoluteCorrelationFunction AbsoluteCurrentValue AbsoluteDashing AbsoluteFileName AbsoluteOptions AbsolutePointSize AbsoluteThickness AbsoluteTime AbsoluteTiming AccountingForm Accumulate Accuracy AccuracyGoal ActionDelay ActionMenu ActionMenuBox ActionMenuBoxOptions Active ActiveItem ActiveStyle AcyclicGraphQ AddOnHelpPath AddTo AdjacencyGraph AdjacencyList AdjacencyMatrix AdjustmentBox AdjustmentBoxOptions AdjustTimeSeriesForecast AffineTransform After AiryAi AiryAiPrime AiryAiZero AiryBi AiryBiPrime AiryBiZero AlgebraicIntegerQ AlgebraicNumber AlgebraicNumberDenominator AlgebraicNumberNorm AlgebraicNumberPolynomial AlgebraicNumberTrace AlgebraicRules AlgebraicRulesData Algebraics AlgebraicUnitQ Alignment AlignmentMarker AlignmentPoint All AllowedDimensions AllowGroupClose AllowInlineCells AllowKernelInitialization AllowReverseGroupClose AllowScriptLevelChange AlphaChannel AlternatingGroup AlternativeHypothesis Alternatives AmbientLight Analytic AnchoredSearch And AndersonDarlingTest AngerJ AngleBracket AngularGauge Animate AnimationCycleOffset AnimationCycleRepetitions AnimationDirection AnimationDisplayTime AnimationRate AnimationRepetitions AnimationRunning Animator AnimatorBox AnimatorBoxOptions AnimatorElements Annotation Annuity AnnuityDue Antialiasing Antisymmetric Apart ApartSquareFree Appearance AppearanceElements AppellF1 Append AppendTo Apply ArcCos ArcCosh ArcCot ArcCoth ArcCsc ArcCsch ArcSec ArcSech ArcSin ArcSinDistribution ArcSinh ArcTan ArcTanh Arg ArgMax ArgMin ArgumentCountQ ARIMAProcess ArithmeticGeometricMean ARMAProcess ARProcess Array ArrayComponents ArrayDepth ArrayFlatten ArrayPad ArrayPlot ArrayQ ArrayReshape ArrayRules Arrays Arrow Arrow3DBox ArrowBox Arrowheads AspectRatio AspectRatioFixed Assert Assuming Assumptions AstronomicalData Asynchronous AsynchronousTaskObject AsynchronousTasks AtomQ Attributes AugmentedSymmetricPolynomial AutoAction AutoDelete AutoEvaluateEvents AutoGeneratedPackage AutoIndent AutoIndentSpacings AutoItalicWords AutoloadPath AutoMatch Automatic AutomaticImageSize AutoMultiplicationSymbol AutoNumberFormatting AutoOpenNotebooks AutoOpenPalettes AutorunSequencing AutoScaling AutoScroll AutoSpacing AutoStyleOptions AutoStyleWords Axes AxesEdge AxesLabel AxesOrigin AxesStyle Axis BabyMonsterGroupB Back Background BackgroundTasksSettings Backslash Backsubstitution Backward Band BandpassFilter BandstopFilter BarabasiAlbertGraphDistribution BarChart BarChart3D BarLegend BarlowProschanImportance BarnesG BarOrigin BarSpacing BartlettHannWindow BartlettWindow BaseForm Baseline BaselinePosition BaseStyle BatesDistribution BattleLemarieWavelet Because BeckmannDistribution Beep Before Begin BeginDialogPacket BeginFrontEndInteractionPacket BeginPackage BellB BellY Below BenfordDistribution BeniniDistribution BenktanderGibratDistribution BenktanderWeibullDistribution BernoulliB BernoulliDistribution BernoulliGraphDistribution BernoulliProcess BernsteinBasis BesselFilterModel BesselI BesselJ BesselJZero BesselK BesselY BesselYZero Beta BetaBinomialDistribution BetaDistribution BetaNegativeBinomialDistribution BetaPrimeDistribution BetaRegularized BetweennessCentrality BezierCurve BezierCurve3DBox BezierCurve3DBoxOptions BezierCurveBox BezierCurveBoxOptions BezierFunction BilateralFilter Binarize BinaryFormat BinaryImageQ BinaryRead BinaryReadList BinaryWrite BinCounts BinLists Binomial BinomialDistribution BinomialProcess BinormalDistribution BiorthogonalSplineWavelet BipartiteGraphQ BirnbaumImportance BirnbaumSaundersDistribution BitAnd BitClear BitGet BitLength BitNot BitOr BitSet BitShiftLeft BitShiftRight BitXor Black BlackmanHarrisWindow BlackmanNuttallWindow BlackmanWindow Blank BlankForm BlankNullSequence BlankSequence Blend Block BlockRandom BlomqvistBeta BlomqvistBetaTest Blue Blur BodePlot BohmanWindow Bold Bookmarks Boole BooleanConsecutiveFunction BooleanConvert BooleanCountingFunction BooleanFunction BooleanGraph BooleanMaxterms BooleanMinimize BooleanMinterms Booleans BooleanTable BooleanVariables BorderDimensions BorelTannerDistribution Bottom BottomHatTransform BoundaryStyle Bounds Box BoxBaselineShift BoxData BoxDimensions Boxed Boxes BoxForm BoxFormFormatTypes BoxFrame BoxID BoxMargins BoxMatrix BoxRatios BoxRotation BoxRotationPoint BoxStyle BoxWhiskerChart Bra BracketingBar BraKet BrayCurtisDistance BreadthFirstScan Break Brown BrownForsytheTest BrownianBridgeProcess BrowserCategory BSplineBasis BSplineCurve BSplineCurve3DBox BSplineCurveBox BSplineCurveBoxOptions BSplineFunction BSplineSurface BSplineSurface3DBox BubbleChart BubbleChart3D BubbleScale BubbleSizes BulletGauge BusinessDayQ ButterflyGraph ButterworthFilterModel Button ButtonBar ButtonBox ButtonBoxOptions ButtonCell ButtonContents ButtonData ButtonEvaluator ButtonExpandable ButtonFrame ButtonFunction ButtonMargins ButtonMinHeight ButtonNote ButtonNotebook ButtonSource ButtonStyle ButtonStyleMenuListing Byte ByteCount ByteOrdering C CachedValue CacheGraphics CalendarData CalendarType CallPacket CanberraDistance Cancel CancelButton CandlestickChart Cap CapForm CapitalDifferentialD CardinalBSplineBasis CarmichaelLambda Cases Cashflow Casoratian Catalan CatalanNumber Catch CauchyDistribution CauchyWindow CayleyGraph CDF CDFDeploy CDFInformation CDFWavelet Ceiling Cell CellAutoOverwrite CellBaseline CellBoundingBox CellBracketOptions CellChangeTimes CellContents CellContext CellDingbat CellDynamicExpression CellEditDuplicate CellElementsBoundingBox CellElementSpacings CellEpilog CellEvaluationDuplicate CellEvaluationFunction CellEventActions CellFrame CellFrameColor CellFrameLabelMargins CellFrameLabels CellFrameMargins CellGroup CellGroupData CellGrouping CellGroupingRules CellHorizontalScrolling CellID CellLabel CellLabelAutoDelete CellLabelMargins CellLabelPositioning CellMargins CellObject CellOpen CellPrint CellProlog Cells CellSize CellStyle CellTags CellularAutomaton CensoredDistribution Censoring Center CenterDot CentralMoment CentralMomentGeneratingFunction CForm ChampernowneNumber ChanVeseBinarize Character CharacterEncoding CharacterEncodingsPath CharacteristicFunction CharacteristicPolynomial CharacterRange Characters ChartBaseStyle ChartElementData ChartElementDataFunction ChartElementFunction ChartElements ChartLabels ChartLayout ChartLegends ChartStyle Chebyshev1FilterModel Chebyshev2FilterModel ChebyshevDistance ChebyshevT ChebyshevU Check CheckAbort CheckAll Checkbox CheckboxBar CheckboxBox CheckboxBoxOptions ChemicalData ChessboardDistance ChiDistribution ChineseRemainder ChiSquareDistribution ChoiceButtons ChoiceDialog CholeskyDecomposition Chop Circle CircleBox CircleDot CircleMinus CirclePlus CircleTimes CirculantGraph CityData Clear ClearAll ClearAttributes ClearSystemCache ClebschGordan ClickPane Clip ClipboardNotebook ClipFill ClippingStyle ClipPlanes ClipRange Clock ClockGauge ClockwiseContourIntegral Close Closed CloseKernels ClosenessCentrality Closing ClosingAutoSave ClosingEvent ClusteringComponents CMYKColor Coarse Coefficient CoefficientArrays CoefficientDomain CoefficientList CoefficientRules CoifletWavelet Collect Colon ColonForm ColorCombine ColorConvert ColorData ColorDataFunction ColorFunction ColorFunctionScaling Colorize ColorNegate ColorOutput ColorProfileData ColorQuantize ColorReplace ColorRules ColorSelectorSettings ColorSeparate ColorSetter ColorSetterBox ColorSetterBoxOptions ColorSlider ColorSpace Column ColumnAlignments ColumnBackgrounds ColumnForm ColumnLines ColumnsEqual ColumnSpacings ColumnWidths CommonDefaultFormatTypes Commonest CommonestFilter CommonUnits CommunityBoundaryStyle CommunityGraphPlot CommunityLabels CommunityRegionStyle CompatibleUnitQ CompilationOptions CompilationTarget Compile Compiled CompiledFunction Complement CompleteGraph CompleteGraphQ CompleteKaryTree CompletionsListPacket Complex Complexes ComplexExpand ComplexInfinity ComplexityFunction ComponentMeasurements ComponentwiseContextMenu Compose ComposeList ComposeSeries Composition CompoundExpression CompoundPoissonDistribution CompoundPoissonProcess CompoundRenewalProcess Compress CompressedData Condition ConditionalExpression Conditioned Cone ConeBox ConfidenceLevel ConfidenceRange ConfidenceTransform ConfigurationPath Congruent Conjugate ConjugateTranspose Conjunction Connect ConnectedComponents ConnectedGraphQ ConnesWindow ConoverTest ConsoleMessage ConsoleMessagePacket ConsolePrint Constant ConstantArray Constants ConstrainedMax ConstrainedMin ContentPadding ContentsBoundingBox ContentSelectable ContentSize Context ContextMenu Contexts ContextToFilename ContextToFileName Continuation Continue ContinuedFraction ContinuedFractionK ContinuousAction ContinuousMarkovProcess ContinuousTimeModelQ ContinuousWaveletData ContinuousWaveletTransform ContourDetect ContourGraphics ContourIntegral ContourLabels ContourLines ContourPlot ContourPlot3D Contours ContourShading ContourSmoothing ContourStyle ContraharmonicMean Control ControlActive ControlAlignment ControllabilityGramian ControllabilityMatrix ControllableDecomposition ControllableModelQ ControllerDuration ControllerInformation ControllerInformationData ControllerLinking ControllerManipulate ControllerMethod ControllerPath ControllerState ControlPlacement ControlsRendering ControlType Convergents ConversionOptions ConversionRules ConvertToBitmapPacket ConvertToPostScript ConvertToPostScriptPacket Convolve ConwayGroupCo1 ConwayGroupCo2 ConwayGroupCo3 CoordinateChartData CoordinatesToolOptions CoordinateTransform CoordinateTransformData CoprimeQ Coproduct CopulaDistribution Copyable CopyDirectory CopyFile CopyTag CopyToClipboard CornerFilter CornerNeighbors Correlation CorrelationDistance CorrelationFunction CorrelationTest Cos Cosh CoshIntegral CosineDistance CosineWindow CosIntegral Cot Coth Count CounterAssignments CounterBox CounterBoxOptions CounterClockwiseContourIntegral CounterEvaluator CounterFunction CounterIncrements CounterStyle CounterStyleMenuListing CountRoots CountryData Covariance CovarianceEstimatorFunction CovarianceFunction CoxianDistribution CoxIngersollRossProcess CoxModel CoxModelFit CramerVonMisesTest CreateArchive CreateDialog CreateDirectory CreateDocument CreateIntermediateDirectories CreatePalette CreatePalettePacket CreateScheduledTask CreateTemporary CreateWindow CriticalityFailureImportance CriticalitySuccessImportance CriticalSection Cross CrossingDetect CrossMatrix Csc Csch CubeRoot Cubics Cuboid CuboidBox Cumulant CumulantGeneratingFunction Cup CupCap Curl CurlyDoubleQuote CurlyQuote CurrentImage CurrentlySpeakingPacket CurrentValue CurvatureFlowFilter CurveClosed Cyan CycleGraph CycleIndexPolynomial Cycles CyclicGroup Cyclotomic Cylinder CylinderBox CylindricalDecomposition D DagumDistribution DamerauLevenshteinDistance DampingFactor Darker Dashed Dashing DataCompression DataDistribution DataRange DataReversed Date DateDelimiters DateDifference DateFunction DateList DateListLogPlot DateListPlot DatePattern DatePlus DateRange DateString DateTicksFormat DaubechiesWavelet DavisDistribution DawsonF DayCount DayCountConvention DayMatchQ DayName DayPlus DayRange DayRound DeBruijnGraph Debug DebugTag Decimal DeclareKnownSymbols DeclarePackage Decompose Decrement DedekindEta Default DefaultAxesStyle DefaultBaseStyle DefaultBoxStyle DefaultButton DefaultColor DefaultControlPlacement DefaultDuplicateCellStyle DefaultDuration DefaultElement DefaultFaceGridsStyle DefaultFieldHintStyle DefaultFont DefaultFontProperties DefaultFormatType DefaultFormatTypeForStyle DefaultFrameStyle DefaultFrameTicksStyle DefaultGridLinesStyle DefaultInlineFormatType DefaultInputFormatType DefaultLabelStyle DefaultMenuStyle DefaultNaturalLanguage DefaultNewCellStyle DefaultNewInlineCellStyle DefaultNotebook DefaultOptions DefaultOutputFormatType DefaultStyle DefaultStyleDefinitions DefaultTextFormatType DefaultTextInlineFormatType DefaultTicksStyle DefaultTooltipStyle DefaultValues Defer DefineExternal DefineInputStreamMethod DefineOutputStreamMethod Definition Degree DegreeCentrality DegreeGraphDistribution DegreeLexicographic DegreeReverseLexicographic Deinitialization Del Deletable Delete DeleteBorderComponents DeleteCases DeleteContents DeleteDirectory DeleteDuplicates DeleteFile DeleteSmallComponents DeleteWithContents DeletionWarning Delimiter DelimiterFlashTime DelimiterMatching Delimiters Denominator DensityGraphics DensityHistogram DensityPlot DependentVariables Deploy Deployed Depth DepthFirstScan Derivative DerivativeFilter DescriptorStateSpace DesignMatrix Det DGaussianWavelet DiacriticalPositioning Diagonal DiagonalMatrix Dialog DialogIndent DialogInput DialogLevel DialogNotebook DialogProlog DialogReturn DialogSymbols Diamond DiamondMatrix DiceDissimilarity DictionaryLookup DifferenceDelta DifferenceOrder DifferenceRoot DifferenceRootReduce Differences DifferentialD DifferentialRoot DifferentialRootReduce DifferentiatorFilter DigitBlock DigitBlockMinimum DigitCharacter DigitCount DigitQ DihedralGroup Dilation Dimensions DiracComb DiracDelta DirectedEdge DirectedEdges DirectedGraph DirectedGraphQ DirectedInfinity Direction Directive Directory DirectoryName DirectoryQ DirectoryStack DirichletCharacter DirichletConvolve DirichletDistribution DirichletL DirichletTransform DirichletWindow DisableConsolePrintPacket DiscreteChirpZTransform DiscreteConvolve DiscreteDelta DiscreteHadamardTransform DiscreteIndicator DiscreteLQEstimatorGains DiscreteLQRegulatorGains DiscreteLyapunovSolve DiscreteMarkovProcess DiscretePlot DiscretePlot3D DiscreteRatio DiscreteRiccatiSolve DiscreteShift DiscreteTimeModelQ DiscreteUniformDistribution DiscreteVariables DiscreteWaveletData DiscreteWaveletPacketTransform DiscreteWaveletTransform Discriminant Disjunction Disk DiskBox DiskMatrix Dispatch DispersionEstimatorFunction Display DisplayAllSteps DisplayEndPacket DisplayFlushImagePacket DisplayForm DisplayFunction DisplayPacket DisplayRules DisplaySetSizePacket DisplayString DisplayTemporary DisplayWith DisplayWithRef DisplayWithVariable DistanceFunction DistanceTransform Distribute Distributed DistributedContexts DistributeDefinitions DistributionChart DistributionDomain DistributionFitTest DistributionParameterAssumptions DistributionParameterQ Dithering Div Divergence Divide DivideBy Dividers Divisible Divisors DivisorSigma DivisorSum DMSList DMSString Do DockedCells DocumentNotebook DominantColors DOSTextFormat Dot DotDashed DotEqual Dotted DoubleBracketingBar DoubleContourIntegral DoubleDownArrow DoubleLeftArrow DoubleLeftRightArrow DoubleLeftTee DoubleLongLeftArrow DoubleLongLeftRightArrow DoubleLongRightArrow DoubleRightArrow DoubleRightTee DoubleUpArrow DoubleUpDownArrow DoubleVerticalBar DoublyInfinite Down DownArrow DownArrowBar DownArrowUpArrow DownLeftRightVector DownLeftTeeVector DownLeftVector DownLeftVectorBar DownRightTeeVector DownRightVector DownRightVectorBar Downsample DownTee DownTeeArrow DownValues DragAndDrop DrawEdges DrawFrontFaces DrawHighlighted Drop DSolve Dt DualLinearProgramming DualSystemsModel DumpGet DumpSave DuplicateFreeQ Dynamic DynamicBox DynamicBoxOptions DynamicEvaluationTimeout DynamicLocation DynamicModule DynamicModuleBox DynamicModuleBoxOptions DynamicModuleParent DynamicModuleValues DynamicName DynamicNamespace DynamicReference DynamicSetting DynamicUpdating DynamicWrapper DynamicWrapperBox DynamicWrapperBoxOptions E EccentricityCentrality EdgeAdd EdgeBetweennessCentrality EdgeCapacity EdgeCapForm EdgeColor EdgeConnectivity EdgeCost EdgeCount EdgeCoverQ EdgeDashing EdgeDelete EdgeDetect EdgeForm EdgeIndex EdgeJoinForm EdgeLabeling EdgeLabels EdgeLabelStyle EdgeList EdgeOpacity EdgeQ EdgeRenderingFunction EdgeRules EdgeShapeFunction EdgeStyle EdgeThickness EdgeWeight Editable EditButtonSettings EditCellTagsSettings EditDistance EffectiveInterest Eigensystem Eigenvalues EigenvectorCentrality Eigenvectors Element ElementData Eliminate EliminationOrder EllipticE EllipticExp EllipticExpPrime EllipticF EllipticFilterModel EllipticK EllipticLog EllipticNomeQ EllipticPi EllipticReducedHalfPeriods EllipticTheta EllipticThetaPrime EmitSound EmphasizeSyntaxErrors EmpiricalDistribution Empty EmptyGraphQ EnableConsolePrintPacket Enabled Encode End EndAdd EndDialogPacket EndFrontEndInteractionPacket EndOfFile EndOfLine EndOfString EndPackage EngineeringForm Enter EnterExpressionPacket EnterTextPacket Entropy EntropyFilter Environment Epilog Equal EqualColumns EqualRows EqualTilde EquatedTo Equilibrium EquirippleFilterKernel Equivalent Erf Erfc Erfi ErlangB ErlangC ErlangDistribution Erosion ErrorBox ErrorBoxOptions ErrorNorm ErrorPacket ErrorsDialogSettings EstimatedDistribution EstimatedProcess EstimatorGains EstimatorRegulator EuclideanDistance EulerE EulerGamma EulerianGraphQ EulerPhi Evaluatable Evaluate Evaluated EvaluatePacket EvaluationCell EvaluationCompletionAction EvaluationElements EvaluationMode EvaluationMonitor EvaluationNotebook EvaluationObject EvaluationOrder Evaluator EvaluatorNames EvenQ EventData EventEvaluator EventHandler EventHandlerTag EventLabels ExactBlackmanWindow ExactNumberQ ExactRootIsolation ExampleData Except ExcludedForms ExcludePods Exclusions ExclusionsStyle Exists Exit ExitDialog Exp Expand ExpandAll ExpandDenominator ExpandFileName ExpandNumerator Expectation ExpectationE ExpectedValue ExpGammaDistribution ExpIntegralE ExpIntegralEi Exponent ExponentFunction ExponentialDistribution ExponentialFamily ExponentialGeneratingFunction ExponentialMovingAverage ExponentialPowerDistribution ExponentPosition ExponentStep Export ExportAutoReplacements ExportPacket ExportString Expression ExpressionCell ExpressionPacket ExpToTrig ExtendedGCD Extension ExtentElementFunction ExtentMarkers ExtentSize ExternalCall ExternalDataCharacterEncoding Extract ExtractArchive ExtremeValueDistribution FaceForm FaceGrids FaceGridsStyle Factor FactorComplete Factorial Factorial2 FactorialMoment FactorialMomentGeneratingFunction FactorialPower FactorInteger FactorList FactorSquareFree FactorSquareFreeList FactorTerms FactorTermsList Fail FailureDistribution False FARIMAProcess FEDisableConsolePrintPacket FeedbackSector FeedbackSectorStyle FeedbackType FEEnableConsolePrintPacket Fibonacci FieldHint FieldHintStyle FieldMasked FieldSize File FileBaseName FileByteCount FileDate FileExistsQ FileExtension FileFormat FileHash FileInformation FileName FileNameDepth FileNameDialogSettings FileNameDrop FileNameJoin FileNames FileNameSetter FileNameSplit FileNameTake FilePrint FileType FilledCurve FilledCurveBox Filling FillingStyle FillingTransform FilterRules FinancialBond FinancialData FinancialDerivative FinancialIndicator Find FindArgMax FindArgMin FindClique FindClusters FindCurvePath FindDistributionParameters FindDivisions FindEdgeCover FindEdgeCut FindEulerianCycle FindFaces FindFile FindFit FindGeneratingFunction FindGeoLocation FindGeometricTransform FindGraphCommunities FindGraphIsomorphism FindGraphPartition FindHamiltonianCycle FindIndependentEdgeSet FindIndependentVertexSet FindInstance FindIntegerNullVector FindKClan FindKClique FindKClub FindKPlex FindLibrary FindLinearRecurrence FindList FindMaximum FindMaximumFlow FindMaxValue FindMinimum FindMinimumCostFlow FindMinimumCut FindMinValue FindPermutation FindPostmanTour FindProcessParameters FindRoot FindSequenceFunction FindSettings FindShortestPath FindShortestTour FindThreshold FindVertexCover FindVertexCut Fine FinishDynamic FiniteAbelianGroupCount FiniteGroupCount FiniteGroupData First FirstPassageTimeDistribution FischerGroupFi22 FischerGroupFi23 FischerGroupFi24Prime FisherHypergeometricDistribution FisherRatioTest FisherZDistribution Fit FitAll FittedModel FixedPoint FixedPointList FlashSelection Flat Flatten FlattenAt FlatTopWindow FlipView Floor FlushPrintOutputPacket Fold FoldList Font FontColor FontFamily FontForm FontName FontOpacity FontPostScriptName FontProperties FontReencoding FontSize FontSlant FontSubstitutions FontTracking FontVariations FontWeight For ForAll Format FormatRules FormatType FormatTypeAutoConvert FormatValues FormBox FormBoxOptions FortranForm Forward ForwardBackward Fourier FourierCoefficient FourierCosCoefficient FourierCosSeries FourierCosTransform FourierDCT FourierDCTFilter FourierDCTMatrix FourierDST FourierDSTMatrix FourierMatrix FourierParameters FourierSequenceTransform FourierSeries FourierSinCoefficient FourierSinSeries FourierSinTransform FourierTransform FourierTrigSeries FractionalBrownianMotionProcess FractionalPart FractionBox FractionBoxOptions FractionLine Frame FrameBox FrameBoxOptions Framed FrameInset FrameLabel Frameless FrameMargins FrameStyle FrameTicks FrameTicksStyle FRatioDistribution FrechetDistribution FreeQ FrequencySamplingFilterKernel FresnelC FresnelS Friday FrobeniusNumber FrobeniusSolve FromCharacterCode FromCoefficientRules FromContinuedFraction FromDate FromDigits FromDMS Front FrontEndDynamicExpression FrontEndEventActions FrontEndExecute FrontEndObject FrontEndResource FrontEndResourceString FrontEndStackSize FrontEndToken FrontEndTokenExecute FrontEndValueCache FrontEndVersion FrontFaceColor FrontFaceOpacity Full FullAxes FullDefinition FullForm FullGraphics FullOptions FullSimplify Function FunctionExpand FunctionInterpolation FunctionSpace FussellVeselyImportance GaborFilter GaborMatrix GaborWavelet GainMargins GainPhaseMargins Gamma GammaDistribution GammaRegularized GapPenalty Gather GatherBy GaugeFaceElementFunction GaugeFaceStyle GaugeFrameElementFunction GaugeFrameSize GaugeFrameStyle GaugeLabels GaugeMarkers GaugeStyle GaussianFilter GaussianIntegers GaussianMatrix GaussianWindow GCD GegenbauerC General GeneralizedLinearModelFit GenerateConditions GeneratedCell GeneratedParameters GeneratingFunction Generic GenericCylindricalDecomposition GenomeData GenomeLookup GeodesicClosing GeodesicDilation GeodesicErosion GeodesicOpening GeoDestination GeodesyData GeoDirection GeoDistance GeoGridPosition GeometricBrownianMotionProcess GeometricDistribution GeometricMean GeometricMeanFilter GeometricTransformation GeometricTransformation3DBox GeometricTransformation3DBoxOptions GeometricTransformationBox GeometricTransformationBoxOptions GeoPosition GeoPositionENU GeoPositionXYZ GeoProjectionData GestureHandler GestureHandlerTag Get GetBoundingBoxSizePacket GetContext GetEnvironment GetFileName GetFrontEndOptionsDataPacket GetLinebreakInformationPacket GetMenusPacket GetPageBreakInformationPacket Glaisher GlobalClusteringCoefficient GlobalPreferences GlobalSession Glow GoldenRatio GompertzMakehamDistribution GoodmanKruskalGamma GoodmanKruskalGammaTest Goto Grad Gradient GradientFilter GradientOrientationFilter Graph GraphAssortativity GraphCenter GraphComplement GraphData GraphDensity GraphDiameter GraphDifference GraphDisjointUnion GraphDistance GraphDistanceMatrix GraphElementData GraphEmbedding GraphHighlight GraphHighlightStyle GraphHub Graphics Graphics3D Graphics3DBox Graphics3DBoxOptions GraphicsArray GraphicsBaseline GraphicsBox GraphicsBoxOptions GraphicsColor GraphicsColumn GraphicsComplex GraphicsComplex3DBox GraphicsComplex3DBoxOptions GraphicsComplexBox GraphicsComplexBoxOptions GraphicsContents GraphicsData GraphicsGrid GraphicsGridBox GraphicsGroup GraphicsGroup3DBox GraphicsGroup3DBoxOptions GraphicsGroupBox GraphicsGroupBoxOptions GraphicsGrouping GraphicsHighlightColor GraphicsRow GraphicsSpacing GraphicsStyle GraphIntersection GraphLayout GraphLinkEfficiency GraphPeriphery GraphPlot GraphPlot3D GraphPower GraphPropertyDistribution GraphQ GraphRadius GraphReciprocity GraphRoot GraphStyle GraphUnion Gray GrayLevel GreatCircleDistance Greater GreaterEqual GreaterEqualLess GreaterFullEqual GreaterGreater GreaterLess GreaterSlantEqual GreaterTilde Green Grid GridBaseline GridBox GridBoxAlignment GridBoxBackground GridBoxDividers GridBoxFrame GridBoxItemSize GridBoxItemStyle GridBoxOptions GridBoxSpacings GridCreationSettings GridDefaultElement GridElementStyleOptions GridFrame GridFrameMargins GridGraph GridLines GridLinesStyle GroebnerBasis GroupActionBase GroupCentralizer GroupElementFromWord GroupElementPosition GroupElementQ GroupElements GroupElementToWord GroupGenerators GroupMultiplicationTable GroupOrbits GroupOrder GroupPageBreakWithin GroupSetwiseStabilizer GroupStabilizer GroupStabilizerChain Gudermannian GumbelDistribution HaarWavelet HadamardMatrix HalfNormalDistribution HamiltonianGraphQ HammingDistance HammingWindow HankelH1 HankelH2 HankelMatrix HannPoissonWindow HannWindow HaradaNortonGroupHN HararyGraph HarmonicMean HarmonicMeanFilter HarmonicNumber Hash HashTable Haversine HazardFunction Head HeadCompose Heads HeavisideLambda HeavisidePi HeavisideTheta HeldGroupHe HeldPart HelpBrowserLookup HelpBrowserNotebook HelpBrowserSettings HermiteDecomposition HermiteH HermitianMatrixQ HessenbergDecomposition Hessian HexadecimalCharacter Hexahedron HexahedronBox HexahedronBoxOptions HiddenSurface HighlightGraph HighlightImage HighpassFilter HigmanSimsGroupHS HilbertFilter HilbertMatrix Histogram Histogram3D HistogramDistribution HistogramList HistogramTransform HistogramTransformInterpolation HitMissTransform HITSCentrality HodgeDual HoeffdingD HoeffdingDTest Hold HoldAll HoldAllComplete HoldComplete HoldFirst HoldForm HoldPattern HoldRest HolidayCalendar HomeDirectory HomePage Horizontal HorizontalForm HorizontalGauge HorizontalScrollPosition HornerForm HotellingTSquareDistribution HoytDistribution HTMLSave Hue HumpDownHump HumpEqual HurwitzLerchPhi HurwitzZeta HyperbolicDistribution HypercubeGraph HyperexponentialDistribution Hyperfactorial Hypergeometric0F1 Hypergeometric0F1Regularized Hypergeometric1F1 Hypergeometric1F1Regularized Hypergeometric2F1 Hypergeometric2F1Regularized HypergeometricDistribution HypergeometricPFQ HypergeometricPFQRegularized HypergeometricU Hyperlink HyperlinkCreationSettings Hyphenation HyphenationOptions HypoexponentialDistribution HypothesisTestData I Identity IdentityMatrix If IgnoreCase Im Image Image3D Image3DSlices ImageAccumulate ImageAdd ImageAdjust ImageAlign ImageApply ImageAspectRatio ImageAssemble ImageCache ImageCacheValid ImageCapture ImageChannels ImageClip ImageColorSpace ImageCompose ImageConvolve ImageCooccurrence ImageCorners ImageCorrelate ImageCorrespondingPoints ImageCrop ImageData ImageDataPacket ImageDeconvolve ImageDemosaic ImageDifference ImageDimensions ImageDistance ImageEffect ImageFeatureTrack ImageFileApply ImageFileFilter ImageFileScan ImageFilter ImageForestingComponents ImageForwardTransformation ImageHistogram ImageKeypoints ImageLevels ImageLines ImageMargins ImageMarkers ImageMeasurements ImageMultiply ImageOffset ImagePad ImagePadding ImagePartition ImagePeriodogram ImagePerspectiveTransformation ImageQ ImageRangeCache ImageReflect ImageRegion ImageResize ImageResolution ImageRotate ImageRotated ImageScaled ImageScan ImageSize ImageSizeAction ImageSizeCache ImageSizeMultipliers ImageSizeRaw ImageSubtract ImageTake ImageTransformation ImageTrim ImageType ImageValue ImageValuePositions Implies Import ImportAutoReplacements ImportString ImprovementImportance In IncidenceGraph IncidenceList IncidenceMatrix IncludeConstantBasis IncludeFileExtension IncludePods IncludeSingularTerm Increment Indent IndentingNewlineSpacings IndentMaxFraction IndependenceTest IndependentEdgeSetQ IndependentUnit IndependentVertexSetQ Indeterminate IndexCreationOptions Indexed IndexGraph IndexTag Inequality InexactNumberQ InexactNumbers Infinity Infix Information Inherited InheritScope Initialization InitializationCell InitializationCellEvaluation InitializationCellWarning InlineCounterAssignments InlineCounterIncrements InlineRules Inner Inpaint Input InputAliases InputAssumptions InputAutoReplacements InputField InputFieldBox InputFieldBoxOptions InputForm InputGrouping InputNamePacket InputNotebook InputPacket InputSettings InputStream InputString InputStringPacket InputToBoxFormPacket Insert InsertionPointObject InsertResults Inset Inset3DBox Inset3DBoxOptions InsetBox InsetBoxOptions Install InstallService InString Integer IntegerDigits IntegerExponent IntegerLength IntegerPart IntegerPartitions IntegerQ Integers IntegerString Integral Integrate Interactive InteractiveTradingChart Interlaced Interleaving InternallyBalancedDecomposition InterpolatingFunction InterpolatingPolynomial Interpolation InterpolationOrder InterpolationPoints InterpolationPrecision Interpretation InterpretationBox InterpretationBoxOptions InterpretationFunction InterpretTemplate InterquartileRange Interrupt InterruptSettings Intersection Interval IntervalIntersection IntervalMemberQ IntervalUnion Inverse InverseBetaRegularized InverseCDF InverseChiSquareDistribution InverseContinuousWaveletTransform InverseDistanceTransform InverseEllipticNomeQ InverseErf InverseErfc InverseFourier InverseFourierCosTransform InverseFourierSequenceTransform InverseFourierSinTransform InverseFourierTransform InverseFunction InverseFunctions InverseGammaDistribution InverseGammaRegularized InverseGaussianDistribution InverseGudermannian InverseHaversine InverseJacobiCD InverseJacobiCN InverseJacobiCS InverseJacobiDC InverseJacobiDN InverseJacobiDS InverseJacobiNC InverseJacobiND InverseJacobiNS InverseJacobiSC InverseJacobiSD InverseJacobiSN InverseLaplaceTransform InversePermutation InverseRadon InverseSeries InverseSurvivalFunction InverseWaveletTransform InverseWeierstrassP InverseZTransform Invisible InvisibleApplication InvisibleTimes IrreduciblePolynomialQ IsolatingInterval IsomorphicGraphQ IsotopeData Italic Item ItemBox ItemBoxOptions ItemSize ItemStyle ItoProcess JaccardDissimilarity JacobiAmplitude Jacobian JacobiCD JacobiCN JacobiCS JacobiDC JacobiDN JacobiDS JacobiNC JacobiND JacobiNS JacobiP JacobiSC JacobiSD JacobiSN JacobiSymbol JacobiZeta JankoGroupJ1 JankoGroupJ2 JankoGroupJ3 JankoGroupJ4 JarqueBeraALMTest JohnsonDistribution Join Joined JoinedCurve JoinedCurveBox JoinForm JordanDecomposition JordanModelDecomposition K KagiChart KaiserBesselWindow KaiserWindow KalmanEstimator KalmanFilter KarhunenLoeveDecomposition KaryTree KatzCentrality KCoreComponents KDistribution KelvinBei KelvinBer KelvinKei KelvinKer KendallTau KendallTauTest KernelExecute KernelMixtureDistribution KernelObject Kernels Ket Khinchin KirchhoffGraph KirchhoffMatrix KleinInvariantJ KnightTourGraph KnotData KnownUnitQ KolmogorovSmirnovTest KroneckerDelta KroneckerModelDecomposition KroneckerProduct KroneckerSymbol KuiperTest KumaraswamyDistribution Kurtosis KuwaharaFilter Label Labeled LabeledSlider LabelingFunction LabelStyle LaguerreL LambdaComponents LambertW LanczosWindow LandauDistribution Language LanguageCategory LaplaceDistribution LaplaceTransform Laplacian LaplacianFilter LaplacianGaussianFilter Large Larger Last Latitude LatitudeLongitude LatticeData LatticeReduce Launch LaunchKernels LayeredGraphPlot LayerSizeFunction LayoutInformation LCM LeafCount LeapYearQ LeastSquares LeastSquaresFilterKernel Left LeftArrow LeftArrowBar LeftArrowRightArrow LeftDownTeeVector LeftDownVector LeftDownVectorBar LeftRightArrow LeftRightVector LeftTee LeftTeeArrow LeftTeeVector LeftTriangle LeftTriangleBar LeftTriangleEqual LeftUpDownVector LeftUpTeeVector LeftUpVector LeftUpVectorBar LeftVector LeftVectorBar LegendAppearance Legended LegendFunction LegendLabel LegendLayout LegendMargins LegendMarkers LegendMarkerSize LegendreP LegendreQ LegendreType Length LengthWhile LerchPhi Less LessEqual LessEqualGreater LessFullEqual LessGreater LessLess LessSlantEqual LessTilde LetterCharacter LetterQ Level LeveneTest LeviCivitaTensor LevyDistribution Lexicographic LibraryFunction LibraryFunctionError LibraryFunctionInformation LibraryFunctionLoad LibraryFunctionUnload LibraryLoad LibraryUnload LicenseID LiftingFilterData LiftingWaveletTransform LightBlue LightBrown LightCyan Lighter LightGray LightGreen Lighting LightingAngle LightMagenta LightOrange LightPink LightPurple LightRed LightSources LightYellow Likelihood Limit LimitsPositioning LimitsPositioningTokens LindleyDistribution Line Line3DBox LinearFilter LinearFractionalTransform LinearModelFit LinearOffsetFunction LinearProgramming LinearRecurrence LinearSolve LinearSolveFunction LineBox LineBreak LinebreakAdjustments LineBreakChart LineBreakWithin LineColor LineForm LineGraph LineIndent LineIndentMaxFraction LineIntegralConvolutionPlot LineIntegralConvolutionScale LineLegend LineOpacity LineSpacing LineWrapParts LinkActivate LinkClose LinkConnect LinkConnectedQ LinkCreate LinkError LinkFlush LinkFunction LinkHost LinkInterrupt LinkLaunch LinkMode LinkObject LinkOpen LinkOptions LinkPatterns LinkProtocol LinkRead LinkReadHeld LinkReadyQ Links LinkWrite LinkWriteHeld LiouvilleLambda List Listable ListAnimate ListContourPlot ListContourPlot3D ListConvolve ListCorrelate ListCurvePathPlot ListDeconvolve ListDensityPlot Listen ListFourierSequenceTransform ListInterpolation ListLineIntegralConvolutionPlot ListLinePlot ListLogLinearPlot ListLogLogPlot ListLogPlot ListPicker ListPickerBox ListPickerBoxBackground ListPickerBoxOptions ListPlay ListPlot ListPlot3D ListPointPlot3D ListPolarPlot ListQ ListStreamDensityPlot ListStreamPlot ListSurfacePlot3D ListVectorDensityPlot ListVectorPlot ListVectorPlot3D ListZTransform Literal LiteralSearch LocalClusteringCoefficient LocalizeVariables LocationEquivalenceTest LocationTest Locator LocatorAutoCreate LocatorBox LocatorBoxOptions LocatorCentering LocatorPane LocatorPaneBox LocatorPaneBoxOptions LocatorRegion Locked Log Log10 Log2 LogBarnesG LogGamma LogGammaDistribution LogicalExpand LogIntegral LogisticDistribution LogitModelFit LogLikelihood LogLinearPlot LogLogisticDistribution LogLogPlot LogMultinormalDistribution LogNormalDistribution LogPlot LogRankTest LogSeriesDistribution LongEqual Longest LongestAscendingSequence LongestCommonSequence LongestCommonSequencePositions LongestCommonSubsequence LongestCommonSubsequencePositions LongestMatch LongForm Longitude LongLeftArrow LongLeftRightArrow LongRightArrow Loopback LoopFreeGraphQ LowerCaseQ LowerLeftArrow LowerRightArrow LowerTriangularize LowpassFilter LQEstimatorGains LQGRegulator LQOutputRegulatorGains LQRegulatorGains LUBackSubstitution LucasL LuccioSamiComponents LUDecomposition LyapunovSolve LyonsGroupLy MachineID MachineName MachineNumberQ MachinePrecision MacintoshSystemPageSetup Magenta Magnification Magnify MainSolve MaintainDynamicCaches Majority MakeBoxes MakeExpression MakeRules MangoldtLambda ManhattanDistance Manipulate Manipulator MannWhitneyTest MantissaExponent Manual Map MapAll MapAt MapIndexed MAProcess MapThread MarcumQ MardiaCombinedTest MardiaKurtosisTest MardiaSkewnessTest MarginalDistribution MarkovProcessProperties Masking MatchingDissimilarity MatchLocalNameQ MatchLocalNames MatchQ Material MathematicaNotation MathieuC MathieuCharacteristicA MathieuCharacteristicB MathieuCharacteristicExponent MathieuCPrime MathieuGroupM11 MathieuGroupM12 MathieuGroupM22 MathieuGroupM23 MathieuGroupM24 MathieuS MathieuSPrime MathMLForm MathMLText Matrices MatrixExp MatrixForm MatrixFunction MatrixLog MatrixPlot MatrixPower MatrixQ MatrixRank Max MaxBend MaxDetect MaxExtraBandwidths MaxExtraConditions MaxFeatures MaxFilter Maximize MaxIterations MaxMemoryUsed MaxMixtureKernels MaxPlotPoints MaxPoints MaxRecursion MaxStableDistribution MaxStepFraction MaxSteps MaxStepSize MaxValue MaxwellDistribution McLaughlinGroupMcL Mean MeanClusteringCoefficient MeanDegreeConnectivity MeanDeviation MeanFilter MeanGraphDistance MeanNeighborDegree MeanShift MeanShiftFilter Median MedianDeviation MedianFilter Medium MeijerG MeixnerDistribution MemberQ MemoryConstrained MemoryInUse Menu MenuAppearance MenuCommandKey MenuEvaluator MenuItem MenuPacket MenuSortingValue MenuStyle MenuView MergeDifferences Mesh MeshFunctions MeshRange MeshShading MeshStyle Message MessageDialog MessageList MessageName MessageOptions MessagePacket Messages MessagesNotebook MetaCharacters MetaInformation Method MethodOptions MexicanHatWavelet MeyerWavelet Min MinDetect MinFilter MinimalPolynomial MinimalStateSpaceModel Minimize Minors MinRecursion MinSize MinStableDistribution Minus MinusPlus MinValue Missing MissingDataMethod MittagLefflerE MixedRadix MixedRadixQuantity MixtureDistribution Mod Modal Mode Modular ModularLambda Module Modulus MoebiusMu Moment Momentary MomentConvert MomentEvaluate MomentGeneratingFunction Monday Monitor MonomialList MonomialOrder MonsterGroupM MorletWavelet MorphologicalBinarize MorphologicalBranchPoints MorphologicalComponents MorphologicalEulerNumber MorphologicalGraph MorphologicalPerimeter MorphologicalTransform Most MouseAnnotation MouseAppearance MouseAppearanceTag MouseButtons Mouseover MousePointerNote MousePosition MovingAverage MovingMedian MoyalDistribution MultiedgeStyle MultilaunchWarning MultiLetterItalics MultiLetterStyle MultilineFunction Multinomial MultinomialDistribution MultinormalDistribution MultiplicativeOrder Multiplicity Multiselection MultivariateHypergeometricDistribution MultivariatePoissonDistribution MultivariateTDistribution N NakagamiDistribution NameQ Names NamespaceBox Nand NArgMax NArgMin NBernoulliB NCache NDSolve NDSolveValue Nearest NearestFunction NeedCurrentFrontEndPackagePacket NeedCurrentFrontEndSymbolsPacket NeedlemanWunschSimilarity Needs Negative NegativeBinomialDistribution NegativeMultinomialDistribution NeighborhoodGraph Nest NestedGreaterGreater NestedLessLess NestedScriptRules NestList NestWhile NestWhileList NevilleThetaC NevilleThetaD NevilleThetaN NevilleThetaS NewPrimitiveStyle NExpectation Next NextPrime NHoldAll NHoldFirst NHoldRest NicholsGridLines NicholsPlot NIntegrate NMaximize NMaxValue NMinimize NMinValue NominalVariables NonAssociative NoncentralBetaDistribution NoncentralChiSquareDistribution NoncentralFRatioDistribution NoncentralStudentTDistribution NonCommutativeMultiply NonConstants None NonlinearModelFit NonlocalMeansFilter NonNegative NonPositive Nor NorlundB Norm Normal NormalDistribution NormalGrouping Normalize NormalizedSquaredEuclideanDistance NormalsFunction NormFunction Not NotCongruent NotCupCap NotDoubleVerticalBar Notebook NotebookApply NotebookAutoSave NotebookClose NotebookConvertSettings NotebookCreate NotebookCreateReturnObject NotebookDefault NotebookDelete NotebookDirectory NotebookDynamicExpression NotebookEvaluate NotebookEventActions NotebookFileName NotebookFind NotebookFindReturnObject NotebookGet NotebookGetLayoutInformationPacket NotebookGetMisspellingsPacket NotebookInformation NotebookInterfaceObject NotebookLocate NotebookObject NotebookOpen NotebookOpenReturnObject NotebookPath NotebookPrint NotebookPut NotebookPutReturnObject NotebookRead NotebookResetGeneratedCells Notebooks NotebookSave NotebookSaveAs NotebookSelection NotebookSetupLayoutInformationPacket NotebooksMenu NotebookWrite NotElement NotEqualTilde NotExists NotGreater NotGreaterEqual NotGreaterFullEqual NotGreaterGreater NotGreaterLess NotGreaterSlantEqual NotGreaterTilde NotHumpDownHump NotHumpEqual NotLeftTriangle NotLeftTriangleBar NotLeftTriangleEqual NotLess NotLessEqual NotLessFullEqual NotLessGreater NotLessLess NotLessSlantEqual NotLessTilde NotNestedGreaterGreater NotNestedLessLess NotPrecedes NotPrecedesEqual NotPrecedesSlantEqual NotPrecedesTilde NotReverseElement NotRightTriangle NotRightTriangleBar NotRightTriangleEqual NotSquareSubset NotSquareSubsetEqual NotSquareSuperset NotSquareSupersetEqual NotSubset NotSubsetEqual NotSucceeds NotSucceedsEqual NotSucceedsSlantEqual NotSucceedsTilde NotSuperset NotSupersetEqual NotTilde NotTildeEqual NotTildeFullEqual NotTildeTilde NotVerticalBar NProbability NProduct NProductFactors NRoots NSolve NSum NSumTerms Null NullRecords NullSpace NullWords Number NumberFieldClassNumber NumberFieldDiscriminant NumberFieldFundamentalUnits NumberFieldIntegralBasis NumberFieldNormRepresentatives NumberFieldRegulator NumberFieldRootsOfUnity NumberFieldSignature NumberForm NumberFormat NumberMarks NumberMultiplier NumberPadding NumberPoint NumberQ NumberSeparator NumberSigns NumberString Numerator NumericFunction NumericQ NuttallWindow NValues NyquistGridLines NyquistPlot O ObservabilityGramian ObservabilityMatrix ObservableDecomposition ObservableModelQ OddQ Off Offset OLEData On ONanGroupON OneIdentity Opacity Open OpenAppend Opener OpenerBox OpenerBoxOptions OpenerView OpenFunctionInspectorPacket Opening OpenRead OpenSpecialOptions OpenTemporary OpenWrite Operate OperatingSystem OptimumFlowData Optional OptionInspectorSettings OptionQ Options OptionsPacket OptionsPattern OptionValue OptionValueBox OptionValueBoxOptions Or Orange Order OrderDistribution OrderedQ Ordering Orderless OrnsteinUhlenbeckProcess Orthogonalize Out Outer OutputAutoOverwrite OutputControllabilityMatrix OutputControllableModelQ OutputForm OutputFormData OutputGrouping OutputMathEditExpression OutputNamePacket OutputResponse OutputSizeLimit OutputStream Over OverBar OverDot Overflow OverHat Overlaps Overlay OverlayBox OverlayBoxOptions Overscript OverscriptBox OverscriptBoxOptions OverTilde OverVector OwenT OwnValues PackingMethod PaddedForm Padding PadeApproximant PadLeft PadRight PageBreakAbove PageBreakBelow PageBreakWithin PageFooterLines PageFooters PageHeaderLines PageHeaders PageHeight PageRankCentrality PageWidth PairedBarChart PairedHistogram PairedSmoothHistogram PairedTTest PairedZTest PaletteNotebook PalettePath Pane PaneBox PaneBoxOptions Panel PanelBox PanelBoxOptions Paneled PaneSelector PaneSelectorBox PaneSelectorBoxOptions PaperWidth ParabolicCylinderD ParagraphIndent ParagraphSpacing ParallelArray ParallelCombine ParallelDo ParallelEvaluate Parallelization Parallelize ParallelMap ParallelNeeds ParallelProduct ParallelSubmit ParallelSum ParallelTable ParallelTry Parameter ParameterEstimator ParameterMixtureDistribution ParameterVariables ParametricFunction ParametricNDSolve ParametricNDSolveValue ParametricPlot ParametricPlot3D ParentConnect ParentDirectory ParentForm Parenthesize ParentList ParetoDistribution Part PartialCorrelationFunction PartialD ParticleData Partition PartitionsP PartitionsQ ParzenWindow PascalDistribution PassEventsDown PassEventsUp Paste PasteBoxFormInlineCells PasteButton Path PathGraph PathGraphQ Pattern PatternSequence PatternTest PauliMatrix PaulWavelet Pause PausedTime PDF PearsonChiSquareTest PearsonCorrelationTest PearsonDistribution PerformanceGoal PeriodicInterpolation Periodogram PeriodogramArray PermutationCycles PermutationCyclesQ PermutationGroup PermutationLength PermutationList PermutationListQ PermutationMax PermutationMin PermutationOrder PermutationPower PermutationProduct PermutationReplace Permutations PermutationSupport Permute PeronaMalikFilter Perpendicular PERTDistribution PetersenGraph PhaseMargins Pi Pick PIDData PIDDerivativeFilter PIDFeedforward PIDTune Piecewise PiecewiseExpand PieChart PieChart3D PillaiTrace PillaiTraceTest Pink Pivoting PixelConstrained PixelValue PixelValuePositions Placed Placeholder PlaceholderReplace Plain PlanarGraphQ Play PlayRange Plot Plot3D Plot3Matrix PlotDivision PlotJoined PlotLabel PlotLayout PlotLegends PlotMarkers PlotPoints PlotRange PlotRangeClipping PlotRangePadding PlotRegion PlotStyle Plus PlusMinus Pochhammer PodStates PodWidth Point Point3DBox PointBox PointFigureChart PointForm PointLegend PointSize PoissonConsulDistribution PoissonDistribution PoissonProcess PoissonWindow PolarAxes PolarAxesOrigin PolarGridLines PolarPlot PolarTicks PoleZeroMarkers PolyaAeppliDistribution PolyGamma Polygon Polygon3DBox Polygon3DBoxOptions PolygonBox PolygonBoxOptions PolygonHoleScale PolygonIntersections PolygonScale PolyhedronData PolyLog PolynomialExtendedGCD PolynomialForm PolynomialGCD PolynomialLCM PolynomialMod PolynomialQ PolynomialQuotient PolynomialQuotientRemainder PolynomialReduce PolynomialRemainder Polynomials PopupMenu PopupMenuBox PopupMenuBoxOptions PopupView PopupWindow Position Positive PositiveDefiniteMatrixQ PossibleZeroQ Postfix PostScript Power PowerDistribution PowerExpand PowerMod PowerModList PowerSpectralDensity PowersRepresentations PowerSymmetricPolynomial Precedence PrecedenceForm Precedes PrecedesEqual PrecedesSlantEqual PrecedesTilde Precision PrecisionGoal PreDecrement PredictionRoot PreemptProtect PreferencesPath Prefix PreIncrement Prepend PrependTo PreserveImageOptions Previous PriceGraphDistribution PrimaryPlaceholder Prime PrimeNu PrimeOmega PrimePi PrimePowerQ PrimeQ Primes PrimeZetaP PrimitiveRoot PrincipalComponents PrincipalValue Print PrintAction PrintForm PrintingCopies PrintingOptions PrintingPageRange PrintingStartingPageNumber PrintingStyleEnvironment PrintPrecision PrintTemporary Prism PrismBox PrismBoxOptions PrivateCellOptions PrivateEvaluationOptions PrivateFontOptions PrivateFrontEndOptions PrivateNotebookOptions PrivatePaths Probability ProbabilityDistribution ProbabilityPlot ProbabilityPr ProbabilityScalePlot ProbitModelFit ProcessEstimator ProcessParameterAssumptions ProcessParameterQ ProcessStateDomain ProcessTimeDomain Product ProductDistribution ProductLog ProgressIndicator ProgressIndicatorBox ProgressIndicatorBoxOptions Projection Prolog PromptForm Properties Property PropertyList PropertyValue Proportion Proportional Protect Protected ProteinData Pruning PseudoInverse Purple Put PutAppend Pyramid PyramidBox PyramidBoxOptions QBinomial QFactorial QGamma QHypergeometricPFQ QPochhammer QPolyGamma QRDecomposition QuadraticIrrationalQ Quantile QuantilePlot Quantity QuantityForm QuantityMagnitude QuantityQ QuantityUnit Quartics QuartileDeviation Quartiles QuartileSkewness QueueingNetworkProcess QueueingProcess QueueProperties Quiet Quit Quotient QuotientRemainder RadialityCentrality RadicalBox RadicalBoxOptions RadioButton RadioButtonBar RadioButtonBox RadioButtonBoxOptions Radon RamanujanTau RamanujanTauL RamanujanTauTheta RamanujanTauZ Random RandomChoice RandomComplex RandomFunction RandomGraph RandomImage RandomInteger RandomPermutation RandomPrime RandomReal RandomSample RandomSeed RandomVariate RandomWalkProcess Range RangeFilter RangeSpecification RankedMax RankedMin Raster Raster3D Raster3DBox Raster3DBoxOptions RasterArray RasterBox RasterBoxOptions Rasterize RasterSize Rational RationalFunctions Rationalize Rationals Ratios Raw RawArray RawBoxes RawData RawMedium RayleighDistribution Re Read ReadList ReadProtected Real RealBlockDiagonalForm RealDigits RealExponent Reals Reap Record RecordLists RecordSeparators Rectangle RectangleBox RectangleBoxOptions RectangleChart RectangleChart3D RecurrenceFilter RecurrenceTable RecurringDigitsForm Red Reduce RefBox ReferenceLineStyle ReferenceMarkers ReferenceMarkerStyle Refine ReflectionMatrix ReflectionTransform Refresh RefreshRate RegionBinarize RegionFunction RegionPlot RegionPlot3D RegularExpression Regularization Reinstall Release ReleaseHold ReliabilityDistribution ReliefImage ReliefPlot Remove RemoveAlphaChannel RemoveAsynchronousTask Removed RemoveInputStreamMethod RemoveOutputStreamMethod RemoveProperty RemoveScheduledTask RenameDirectory RenameFile RenderAll RenderingOptions RenewalProcess RenkoChart Repeated RepeatedNull RepeatedString Replace ReplaceAll ReplaceHeldPart ReplaceImageValue ReplaceList ReplacePart ReplacePixelValue ReplaceRepeated Resampling Rescale RescalingTransform ResetDirectory ResetMenusPacket ResetScheduledTask Residue Resolve Rest Resultant ResumePacket Return ReturnExpressionPacket ReturnInputFormPacket ReturnPacket ReturnTextPacket Reverse ReverseBiorthogonalSplineWavelet ReverseElement ReverseEquilibrium ReverseGraph ReverseUpEquilibrium RevolutionAxis RevolutionPlot3D RGBColor RiccatiSolve RiceDistribution RidgeFilter RiemannR RiemannSiegelTheta RiemannSiegelZ Riffle Right RightArrow RightArrowBar RightArrowLeftArrow RightCosetRepresentative RightDownTeeVector RightDownVector RightDownVectorBar RightTee RightTeeArrow RightTeeVector RightTriangle RightTriangleBar RightTriangleEqual RightUpDownVector RightUpTeeVector RightUpVector RightUpVectorBar RightVector RightVectorBar RiskAchievementImportance RiskReductionImportance RogersTanimotoDissimilarity Root RootApproximant RootIntervals RootLocusPlot RootMeanSquare RootOfUnityQ RootReduce Roots RootSum Rotate RotateLabel RotateLeft RotateRight RotationAction RotationBox RotationBoxOptions RotationMatrix RotationTransform Round RoundImplies RoundingRadius Row RowAlignments RowBackgrounds RowBox RowHeights RowLines RowMinHeight RowReduce RowsEqual RowSpacings RSolve RudvalisGroupRu Rule RuleCondition RuleDelayed RuleForm RulerUnits Run RunScheduledTask RunThrough RuntimeAttributes RuntimeOptions RussellRaoDissimilarity SameQ SameTest SampleDepth SampledSoundFunction SampledSoundList SampleRate SamplingPeriod SARIMAProcess SARMAProcess SatisfiabilityCount SatisfiabilityInstances SatisfiableQ Saturday Save Saveable SaveAutoDelete SaveDefinitions SawtoothWave Scale Scaled ScaleDivisions ScaledMousePosition ScaleOrigin ScalePadding ScaleRanges ScaleRangeStyle ScalingFunctions ScalingMatrix ScalingTransform Scan ScheduledTaskActiveQ ScheduledTaskData ScheduledTaskObject ScheduledTasks SchurDecomposition ScientificForm ScreenRectangle ScreenStyleEnvironment ScriptBaselineShifts ScriptLevel ScriptMinSize ScriptRules ScriptSizeMultipliers Scrollbars ScrollingOptions ScrollPosition Sec Sech SechDistribution SectionGrouping SectorChart SectorChart3D SectorOrigin SectorSpacing SeedRandom Select Selectable SelectComponents SelectedCells SelectedNotebook Selection SelectionAnimate SelectionCell SelectionCellCreateCell SelectionCellDefaultStyle SelectionCellParentStyle SelectionCreateCell SelectionDebuggerTag SelectionDuplicateCell SelectionEvaluate SelectionEvaluateCreateCell SelectionMove SelectionPlaceholder SelectionSetStyle SelectWithContents SelfLoops SelfLoopStyle SemialgebraicComponentInstances SendMail Sequence SequenceAlignment SequenceForm SequenceHold SequenceLimit Series SeriesCoefficient SeriesData SessionTime Set SetAccuracy SetAlphaChannel SetAttributes Setbacks SetBoxFormNamesPacket SetDelayed SetDirectory SetEnvironment SetEvaluationNotebook SetFileDate SetFileLoadingContext SetNotebookStatusLine SetOptions SetOptionsPacket SetPrecision SetProperty SetSelectedNotebook SetSharedFunction SetSharedVariable SetSpeechParametersPacket SetStreamPosition SetSystemOptions Setter SetterBar SetterBox SetterBoxOptions Setting SetValue Shading Shallow ShannonWavelet ShapiroWilkTest Share Sharpen ShearingMatrix ShearingTransform ShenCastanMatrix Short ShortDownArrow Shortest ShortestMatch ShortestPathFunction ShortLeftArrow ShortRightArrow ShortUpArrow Show ShowAutoStyles ShowCellBracket ShowCellLabel ShowCellTags ShowClosedCellArea ShowContents ShowControls ShowCursorTracker ShowGroupOpenCloseIcon ShowGroupOpener ShowInvisibleCharacters ShowPageBreaks ShowPredictiveInterface ShowSelection ShowShortBoxForm ShowSpecialCharacters ShowStringCharacters ShowSyntaxStyles ShrinkingDelay ShrinkWrapBoundingBox SiegelTheta SiegelTukeyTest Sign Signature SignedRankTest SignificanceLevel SignPadding SignTest SimilarityRules SimpleGraph SimpleGraphQ Simplify Sin Sinc SinghMaddalaDistribution SingleEvaluation SingleLetterItalics SingleLetterStyle SingularValueDecomposition SingularValueList SingularValuePlot SingularValues Sinh SinhIntegral SinIntegral SixJSymbol Skeleton SkeletonTransform SkellamDistribution Skewness SkewNormalDistribution Skip SliceDistribution Slider Slider2D Slider2DBox Slider2DBoxOptions SliderBox SliderBoxOptions SlideView Slot SlotSequence Small SmallCircle Smaller SmithDelayCompensator SmithWatermanSimilarity SmoothDensityHistogram SmoothHistogram SmoothHistogram3D SmoothKernelDistribution SocialMediaData Socket SokalSneathDissimilarity Solve SolveAlways SolveDelayed Sort SortBy Sound SoundAndGraphics SoundNote SoundVolume Sow Space SpaceForm Spacer Spacings Span SpanAdjustments SpanCharacterRounding SpanFromAbove SpanFromBoth SpanFromLeft SpanLineThickness SpanMaxSize SpanMinSize SpanningCharacters SpanSymmetric SparseArray SpatialGraphDistribution Speak SpeakTextPacket SpearmanRankTest SpearmanRho Spectrogram SpectrogramArray Specularity SpellingCorrection SpellingDictionaries SpellingDictionariesPath SpellingOptions SpellingSuggestionsPacket Sphere SphereBox SphericalBesselJ SphericalBesselY SphericalHankelH1 SphericalHankelH2 SphericalHarmonicY SphericalPlot3D SphericalRegion SpheroidalEigenvalue SpheroidalJoiningFactor SpheroidalPS SpheroidalPSPrime SpheroidalQS SpheroidalQSPrime SpheroidalRadialFactor SpheroidalS1 SpheroidalS1Prime SpheroidalS2 SpheroidalS2Prime Splice SplicedDistribution SplineClosed SplineDegree SplineKnots SplineWeights Split SplitBy SpokenString Sqrt SqrtBox SqrtBoxOptions Square SquaredEuclideanDistance SquareFreeQ SquareIntersection SquaresR SquareSubset SquareSubsetEqual SquareSuperset SquareSupersetEqual SquareUnion SquareWave StabilityMargins StabilityMarginsStyle StableDistribution Stack StackBegin StackComplete StackInhibit StandardDeviation StandardDeviationFilter StandardForm Standardize StandbyDistribution Star StarGraph StartAsynchronousTask StartingStepSize StartOfLine StartOfString StartScheduledTask StartupSound StateDimensions StateFeedbackGains StateOutputEstimator StateResponse StateSpaceModel StateSpaceRealization StateSpaceTransform StationaryDistribution StationaryWaveletPacketTransform StationaryWaveletTransform StatusArea StatusCentrality StepMonitor StieltjesGamma StirlingS1 StirlingS2 StopAsynchronousTask StopScheduledTask StrataVariables StratonovichProcess StreamColorFunction StreamColorFunctionScaling StreamDensityPlot StreamPlot StreamPoints StreamPosition Streams StreamScale StreamStyle String StringBreak StringByteCount StringCases StringCount StringDrop StringExpression StringForm StringFormat StringFreeQ StringInsert StringJoin StringLength StringMatchQ StringPosition StringQ StringReplace StringReplaceList StringReplacePart StringReverse StringRotateLeft StringRotateRight StringSkeleton StringSplit StringTake StringToStream StringTrim StripBoxes StripOnInput StripWrapperBoxes StrokeForm StructuralImportance StructuredArray StructuredSelection StruveH StruveL Stub StudentTDistribution Style StyleBox StyleBoxAutoDelete StyleBoxOptions StyleData StyleDefinitions StyleForm StyleKeyMapping StyleMenuListing StyleNameDialogSettings StyleNames StylePrint StyleSheetPath Subfactorial Subgraph SubMinus SubPlus SubresultantPolynomialRemainders SubresultantPolynomials Subresultants Subscript SubscriptBox SubscriptBoxOptions Subscripted Subset SubsetEqual Subsets SubStar Subsuperscript SubsuperscriptBox SubsuperscriptBoxOptions Subtract SubtractFrom SubValues Succeeds SucceedsEqual SucceedsSlantEqual SucceedsTilde SuchThat Sum SumConvergence Sunday SuperDagger SuperMinus SuperPlus Superscript SuperscriptBox SuperscriptBoxOptions Superset SupersetEqual SuperStar Surd SurdForm SurfaceColor SurfaceGraphics SurvivalDistribution SurvivalFunction SurvivalModel SurvivalModelFit SuspendPacket SuzukiDistribution SuzukiGroupSuz SwatchLegend Switch Symbol SymbolName SymletWavelet Symmetric SymmetricGroup SymmetricMatrixQ SymmetricPolynomial SymmetricReduction Symmetrize SymmetrizedArray SymmetrizedArrayRules SymmetrizedDependentComponents SymmetrizedIndependentComponents SymmetrizedReplacePart SynchronousInitialization SynchronousUpdating Syntax SyntaxForm SyntaxInformation SyntaxLength SyntaxPacket SyntaxQ SystemDialogInput SystemException SystemHelpPath SystemInformation SystemInformationData SystemOpen SystemOptions SystemsModelDelay SystemsModelDelayApproximate SystemsModelDelete SystemsModelDimensions SystemsModelExtract SystemsModelFeedbackConnect SystemsModelLabels SystemsModelOrder SystemsModelParallelConnect SystemsModelSeriesConnect SystemsModelStateFeedbackConnect SystemStub Tab TabFilling Table TableAlignments TableDepth TableDirections TableForm TableHeadings TableSpacing TableView TableViewBox TabSpacings TabView TabViewBox TabViewBoxOptions TagBox TagBoxNote TagBoxOptions TaggingRules TagSet TagSetDelayed TagStyle TagUnset Take TakeWhile Tally Tan Tanh TargetFunctions TargetUnits TautologyQ TelegraphProcess TemplateBox TemplateBoxOptions TemplateSlotSequence TemporalData Temporary TemporaryVariable TensorContract TensorDimensions TensorExpand TensorProduct TensorQ TensorRank TensorReduce TensorSymmetry TensorTranspose TensorWedge Tetrahedron TetrahedronBox TetrahedronBoxOptions TeXForm TeXSave Text Text3DBox Text3DBoxOptions TextAlignment TextBand TextBoundingBox TextBox TextCell TextClipboardType TextData TextForm TextJustification TextLine TextPacket TextParagraph TextRecognize TextRendering TextStyle Texture TextureCoordinateFunction TextureCoordinateScaling Therefore ThermometerGauge Thick Thickness Thin Thinning ThisLink ThompsonGroupTh Thread ThreeJSymbol Threshold Through Throw Thumbnail Thursday Ticks TicksStyle Tilde TildeEqual TildeFullEqual TildeTilde TimeConstrained TimeConstraint Times TimesBy TimeSeriesForecast TimeSeriesInvertibility TimeUsed TimeValue TimeZone Timing Tiny TitleGrouping TitsGroupT ToBoxes ToCharacterCode ToColor ToContinuousTimeModel ToDate ToDiscreteTimeModel ToeplitzMatrix ToExpression ToFileName Together Toggle ToggleFalse Toggler TogglerBar TogglerBox TogglerBoxOptions ToHeldExpression ToInvertibleTimeSeries TokenWords Tolerance ToLowerCase ToNumberField TooBig Tooltip TooltipBox TooltipBoxOptions TooltipDelay TooltipStyle Top TopHatTransform TopologicalSort ToRadicals ToRules ToString Total TotalHeight TotalVariationFilter TotalWidth TouchscreenAutoZoom TouchscreenControlPlacement ToUpperCase Tr Trace TraceAbove TraceAction TraceBackward TraceDepth TraceDialog TraceForward TraceInternal TraceLevel TraceOff TraceOn TraceOriginal TracePrint TraceScan TrackedSymbols TradingChart TraditionalForm TraditionalFunctionNotation TraditionalNotation TraditionalOrder TransferFunctionCancel TransferFunctionExpand TransferFunctionFactor TransferFunctionModel TransferFunctionPoles TransferFunctionTransform TransferFunctionZeros TransformationFunction TransformationFunctions TransformationMatrix TransformedDistribution TransformedField Translate TranslationTransform TransparentColor Transpose TreeForm TreeGraph TreeGraphQ TreePlot TrendStyle TriangleWave TriangularDistribution Trig TrigExpand TrigFactor TrigFactorList Trigger TrigReduce TrigToExp TrimmedMean True TrueQ TruncatedDistribution TsallisQExponentialDistribution TsallisQGaussianDistribution TTest Tube TubeBezierCurveBox TubeBezierCurveBoxOptions TubeBox TubeBSplineCurveBox TubeBSplineCurveBoxOptions Tuesday TukeyLambdaDistribution TukeyWindow Tuples TuranGraph TuringMachine Transparent UnateQ Uncompress Undefined UnderBar Underflow Underlined Underoverscript UnderoverscriptBox UnderoverscriptBoxOptions Underscript UnderscriptBox UnderscriptBoxOptions UndirectedEdge UndirectedGraph UndirectedGraphQ UndocumentedTestFEParserPacket UndocumentedTestGetSelectionPacket Unequal Unevaluated UniformDistribution UniformGraphDistribution UniformSumDistribution Uninstall Union UnionPlus Unique UnitBox UnitConvert UnitDimensions Unitize UnitRootTest UnitSimplify UnitStep UnitTriangle UnitVector Unprotect UnsameQ UnsavedVariables Unset UnsetShared UntrackedVariables Up UpArrow UpArrowBar UpArrowDownArrow Update UpdateDynamicObjects UpdateDynamicObjectsSynchronous UpdateInterval UpDownArrow UpEquilibrium UpperCaseQ UpperLeftArrow UpperRightArrow UpperTriangularize Upsample UpSet UpSetDelayed UpTee UpTeeArrow UpValues URL URLFetch URLFetchAsynchronous URLSave URLSaveAsynchronous UseGraphicsRange Using UsingFrontEnd V2Get ValidationLength Value ValueBox ValueBoxOptions ValueForm ValueQ ValuesData Variables Variance VarianceEquivalenceTest VarianceEstimatorFunction VarianceGammaDistribution VarianceTest VectorAngle VectorColorFunction VectorColorFunctionScaling VectorDensityPlot VectorGlyphData VectorPlot VectorPlot3D VectorPoints VectorQ Vectors VectorScale VectorStyle Vee Verbatim Verbose VerboseConvertToPostScriptPacket VerifyConvergence VerifySolutions VerifyTestAssumptions Version VersionNumber VertexAdd VertexCapacity VertexColors VertexComponent VertexConnectivity VertexCoordinateRules VertexCoordinates VertexCorrelationSimilarity VertexCosineSimilarity VertexCount VertexCoverQ VertexDataCoordinates VertexDegree VertexDelete VertexDiceSimilarity VertexEccentricity VertexInComponent VertexInDegree VertexIndex VertexJaccardSimilarity VertexLabeling VertexLabels VertexLabelStyle VertexList VertexNormals VertexOutComponent VertexOutDegree VertexQ VertexRenderingFunction VertexReplace VertexShape VertexShapeFunction VertexSize VertexStyle VertexTextureCoordinates VertexWeight Vertical VerticalBar VerticalForm VerticalGauge VerticalSeparator VerticalSlider VerticalTilde ViewAngle ViewCenter ViewMatrix ViewPoint ViewPointSelectorSettings ViewPort ViewRange ViewVector ViewVertical VirtualGroupData Visible VisibleCell VoigtDistribution VonMisesDistribution WaitAll WaitAsynchronousTask WaitNext WaitUntil WakebyDistribution WalleniusHypergeometricDistribution WaringYuleDistribution WatershedComponents WatsonUSquareTest WattsStrogatzGraphDistribution WaveletBestBasis WaveletFilterCoefficients WaveletImagePlot WaveletListPlot WaveletMapIndexed WaveletMatrixPlot WaveletPhi WaveletPsi WaveletScale WaveletScalogram WaveletThreshold WeaklyConnectedComponents WeaklyConnectedGraphQ WeakStationarity WeatherData WeberE Wedge Wednesday WeibullDistribution WeierstrassHalfPeriods WeierstrassInvariants WeierstrassP WeierstrassPPrime WeierstrassSigma WeierstrassZeta WeightedAdjacencyGraph WeightedAdjacencyMatrix WeightedData WeightedGraphQ Weights WelchWindow WheelGraph WhenEvent Which While White Whitespace WhitespaceCharacter WhittakerM WhittakerW WienerFilter WienerProcess WignerD WignerSemicircleDistribution WilksW WilksWTest WindowClickSelect WindowElements WindowFloating WindowFrame WindowFrameElements WindowMargins WindowMovable WindowOpacity WindowSelected WindowSize WindowStatusArea WindowTitle WindowToolbars WindowWidth With WolframAlpha WolframAlphaDate WolframAlphaQuantity WolframAlphaResult Word WordBoundary WordCharacter WordData WordSearch WordSeparators WorkingPrecision Write WriteString Wronskian XMLElement XMLObject Xnor Xor Yellow YuleDissimilarity ZernikeR ZeroSymmetric ZeroTest ZeroWidthTimes Zeta ZetaZero ZipfDistribution ZTest ZTransform $Aborted $ActivationGroupID $ActivationKey $ActivationUserRegistered $AddOnsDirectory $AssertFunction $Assumptions $AsynchronousTask $BaseDirectory $BatchInput $BatchOutput $BoxForms $ByteOrdering $Canceled $CharacterEncoding $CharacterEncodings $CommandLine $CompilationTarget $ConditionHold $ConfiguredKernels $Context $ContextPath $ControlActiveSetting $CreationDate $CurrentLink $DateStringFormat $DefaultFont $DefaultFrontEnd $DefaultImagingDevice $DefaultPath $Display $DisplayFunction $DistributedContexts $DynamicEvaluation $Echo $Epilog $ExportFormats $Failed $FinancialDataSource $FormatType $FrontEnd $FrontEndSession $GeoLocation $HistoryLength $HomeDirectory $HTTPCookies $IgnoreEOF $ImagingDevices $ImportFormats $InitialDirectory $Input $InputFileName $InputStreamMethods $Inspector $InstallationDate $InstallationDirectory $InterfaceEnvironment $IterationLimit $KernelCount $KernelID $Language $LaunchDirectory $LibraryPath $LicenseExpirationDate $LicenseID $LicenseProcesses $LicenseServer $LicenseSubprocesses $LicenseType $Line $Linked $LinkSupported $LoadedFiles $MachineAddresses $MachineDomain $MachineDomains $MachineEpsilon $MachineID $MachineName $MachinePrecision $MachineType $MaxExtraPrecision $MaxLicenseProcesses $MaxLicenseSubprocesses $MaxMachineNumber $MaxNumber $MaxPiecewiseCases $MaxPrecision $MaxRootDegree $MessageGroups $MessageList $MessagePrePrint $Messages $MinMachineNumber $MinNumber $MinorReleaseNumber $MinPrecision $ModuleNumber $NetworkLicense $NewMessage $NewSymbol $Notebooks $NumberMarks $Off $OperatingSystem $Output $OutputForms $OutputSizeLimit $OutputStreamMethods $Packages $ParentLink $ParentProcessID $PasswordFile $PatchLevelID $Path $PathnameSeparator $PerformanceGoal $PipeSupported $Post $Pre $PreferencesDirectory $PrePrint $PreRead $PrintForms $PrintLiteral $ProcessID $ProcessorCount $ProcessorType $ProductInformation $ProgramName $RandomState $RecursionLimit $ReleaseNumber $RootDirectory $ScheduledTask $ScriptCommandLine $SessionID $SetParentLink $SharedFunctions $SharedVariables $SoundDisplay $SoundDisplayFunction $SuppressInputFormHeads $SynchronousEvaluation $SyntaxHandler $System $SystemCharacterEncoding $SystemID $SystemWordLength $TemporaryDirectory $TemporaryPrefix $TextStyle $TimedOut $TimeUnit $TimeZone $TopDirectory $TraceOff $TraceOn $TracePattern $TracePostAction $TracePreAction $Urgent $UserAddOnsDirectory $UserBaseDirectory $UserDocumentsDirectory $UserName $Version $VersionNumber", +c:[{cN:"comment",b:/\(\*/,e:/\*\)/},e.ASM,e.QSM,e.CNM,{cN:"list",b:/\{/,e:/\}/,i:/:/}]}}),hljs.registerLanguage("tex",function(e){var t={cN:"command",b:"\\\\[a-zA-Zа-яА-я]+[\\*]?"},n={cN:"command",b:"\\\\[^a-zA-Zа-яА-я0-9]"},r={cN:"special",b:"[{}\\[\\]\\&#~]",r:0};return{c:[{b:"\\\\[a-zA-Zа-яА-я]+[\\*]? *= *-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?",rB:!0,c:[t,n,{cN:"number",b:" *=",e:"-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?",eB:!0}],r:10},t,n,r,{cN:"formula",b:"\\$\\$",e:"\\$\\$",c:[t,n,r],r:0},{cN:"formula",b:"\\$",e:"\\$",c:[t,n,r],r:0},{cN:"comment",b:"%",e:"$",r:0}]}}),hljs.registerLanguage("cs",function(e){var t="abstract as base bool break byte case catch char checked const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach goto if implicit in int interface internal is lock long new null object operator out override params private protected public readonly ref return sbyte sealed short sizeof stackalloc static string struct switch this throw true try typeof uint ulong unchecked unsafe ushort using virtual volatile void while async await ascending descending from get group into join let orderby partial select set value var where yield";return{k:t,c:[{cN:"comment",b:"///",e:"$",rB:!0,c:[{cN:"xmlDocTag",b:"///|"},{cN:"xmlDocTag",b:""}]},e.CLCM,e.CBLCLM,{cN:"preprocessor",b:"#",e:"$",k:"if else elif endif define undef warning error line region endregion pragma checksum"},{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},e.ASM,e.QSM,e.CNM,{bK:"protected public private internal",e:/[{;=]/,k:t,c:[{bK:"class namespace interface",starts:{c:[e.TM]}},{b:e.IR+"\\s*\\(",rB:!0,c:[e.TM]}]}]}}),hljs.registerLanguage("css",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",n={cN:"function",b:t+"\\(",e:"\\)",c:["self",e.NM,e.ASM,e.QSM]};return{cI:!0,i:"[=/|']",c:[e.CBLCLM,{cN:"id",b:"\\#[A-Za-z0-9_-]+"},{cN:"class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"attr_selector",b:"\\[",e:"\\]",i:"$"},{cN:"pseudo",b:":(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\\\"\\']+"},{cN:"at_rule",b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{cN:"at_rule",b:"@",e:"[{;]",c:[{cN:"keyword",b:/\S+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[n,e.ASM,e.QSM,e.NM]}]},{cN:"tag",b:t,r:0},{cN:"rules",b:"{",e:"}",i:"[^\\s]",r:0,c:[e.CBLCLM,{cN:"rule",b:"[^\\s]",rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:!0,i:"[^\\s]",starts:{cN:"value",eW:!0,eE:!0,c:[n,e.NM,e.QSM,e.ASM,e.CBLCLM,{cN:"hexcolor",b:"#[0-9A-Fa-f]+"},{cN:"important",b:"!important"}]}}]}]}]}}),hljs.registerLanguage("python",function(e){var t={cN:"prompt",b:/^(>>>|\.\.\.) /},n={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[t],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[t],r:10},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},e.ASM,e.QSM]},r={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},i={cN:"params",b:/\(/,e:/\)/,c:["self",t,r,n]},o={e:/:/,i:/[${=;\n]/,c:[e.UTM,i]};return{k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},i:/(<\/|->|\?)/,c:[t,r,n,e.HCM,e.inherit(o,{cN:"function",bK:"def",r:10}),e.inherit(o,{cN:"class",bK:"class"}),{cN:"decorator",b:/@/,e:/$/},{b:/\b(print|exec)\(/}]}}),hljs.registerLanguage("profile",function(e){return{c:[e.CNM,{cN:"built_in",b:"{",e:"}$",eB:!0,eE:!0,c:[e.ASM,e.QSM],r:0},{cN:"filename",b:"[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}",e:":",eE:!0},{cN:"header",b:"(ncalls|tottime|cumtime)",e:"$",k:"ncalls tottime|10 cumtime|10 filename",r:10},{cN:"summary",b:"function calls",e:"$",c:[e.CNM],r:10},e.ASM,e.QSM,{cN:"function",b:"\\(",e:"\\)$",c:[e.UTM],r:0}]}}),hljs.registerLanguage("django",function(e){var t={cN:"filter",b:/\|[A-Za-z]+\:?/,k:"truncatewords removetags linebreaksbr yesno get_digit timesince random striptags filesizeformat escape linebreaks length_is ljust rjust cut urlize fix_ampersands title floatformat capfirst pprint divisibleby add make_list unordered_list urlencode timeuntil urlizetrunc wordcount stringformat linenumbers slice date dictsort dictsortreversed default_if_none pluralize lower join center default truncatewords_html upper length phone2numeric wordwrap time addslashes slugify first escapejs force_escape iriencode last safe safeseq truncatechars localize unlocalize localtime utc timezone",c:[{cN:"argument",b:/"/,e:/"/},{cN:"argument",b:/'/,e:/'/}]};return{cI:!0,sL:"xml",subLanguageMode:"continuous",c:[{cN:"template_comment",b:/\{%\s*comment\s*%}/,e:/\{%\s*endcomment\s*%}/},{cN:"template_comment",b:/\{#/,e:/#}/},{cN:"template_tag",b:/\{%/,e:/%}/,k:"comment endcomment load templatetag ifchanged endifchanged if endif firstof for endfor in ifnotequal endifnotequal widthratio extends include spaceless endspaceless regroup by as ifequal endifequal ssi now with cycle url filter endfilter debug block endblock else autoescape endautoescape csrf_token empty elif endwith static trans blocktrans endblocktrans get_static_prefix get_media_prefix plural get_current_language language get_available_languages get_current_language_bidi get_language_info get_language_info_list localize endlocalize localtime endlocaltime timezone endtimezone get_current_timezone verbatim",c:[t]},{cN:"variable",b:/\{\{/,e:/}}/,c:[t]}]}}),hljs.registerLanguage("nginx",function(e){var t={cN:"variable",v:[{b:/\$\d+/},{b:/\$\{/,e:/}/},{b:"[\\$\\@]"+e.UIR}]},n={eW:!0,l:"[a-z/_]+",k:{built_in:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},r:0,i:"=>",c:[e.HCM,{cN:"string",c:[e.BE,t],v:[{b:/"/,e:/"/},{b:/'/,e:/'/}]},{cN:"url",b:"([a-z]+):/",e:"\\s",eW:!0,eE:!0},{cN:"regexp",c:[e.BE,t],v:[{b:"\\s\\^",e:"\\s|{|;",rE:!0},{b:"~\\*?\\s+",e:"\\s|{|;",rE:!0},{b:"\\*(\\.[a-z\\-]+)+"},{b:"([a-z\\-]+\\.)+\\*"}]},{cN:"number",b:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{cN:"number",b:"\\b\\d+[kKmMgGdshdwy]*\\b",r:0},t]};return{c:[e.HCM,{b:e.UIR+"\\s",e:";|{",rB:!0,c:[e.inherit(e.UTM,{starts:n})],r:0}],i:"[^\\s\\}]"}}),hljs.registerLanguage("smalltalk",function(e){var t="[a-z][a-zA-Z0-9_]*",n={cN:"char",b:"\\$.{1}"},r={cN:"symbol",b:"#"+e.UIR};return{k:"self super nil true false thisContext",c:[{cN:"comment",b:'"',e:'"'},e.ASM,{cN:"class",b:"\\b[A-Z][A-Za-z0-9_]*",r:0},{cN:"method",b:t+":",r:0},e.CNM,r,n,{cN:"localvars",b:"\\|[ ]*"+t+"([ ]+"+t+")*[ ]*\\|",rB:!0,e:/\|/,i:/\S/,c:[{b:"(\\|[ ]*)?"+t}]},{cN:"array",b:"\\#\\(",e:"\\)",c:[e.ASM,n,e.CNM,r]}]}}),hljs.registerLanguage("sql",function(e){return{cI:!0,i:/[<>]/,c:[{cN:"operator",b:"\\b(begin|end|start|commit|rollback|savepoint|lock|alter|create|drop|rename|call|delete|do|handler|insert|load|replace|select|truncate|update|set|show|pragma|grant|merge)\\b(?!:)",e:";",eW:!0,k:{keyword:"all partial global month current_timestamp using go revoke smallint indicator end-exec disconnect zone with character assertion to add current_user usage input local alter match collate real then rollback get read timestamp session_user not integer bit unique day minute desc insert execute like ilike|2 level decimal drop continue isolation found where constraints domain right national some module transaction relative second connect escape close system_user for deferred section cast current sqlstate allocate intersect deallocate numeric public preserve full goto initially asc no key output collation group by union session both last language constraint column of space foreign deferrable prior connection unknown action commit view or first into float year primary cascaded except restrict set references names table outer open select size are rows from prepare distinct leading create only next inner authorization schema corresponding option declare precision immediate else timezone_minute external varying translation true case exception join hour default double scroll value cursor descriptor values dec fetch procedure delete and false int is describe char as at in varchar null trailing any absolute current_time end grant privileges when cross check write current_date pad begin temporary exec time update catalog user sql date on identity timezone_hour natural whenever interval work order cascade diagnostics nchar having left call do handler load replace truncate start lock show pragma exists number trigger if before after each row merge matched database",aggregate:"count sum min max avg"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM]},e.CBLCLM,{cN:"comment",b:"--",e:"$"}]}}),hljs.registerLanguage("oxygene",function(e){var t="abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained",n={cN:"comment",b:"{",e:"}",r:0},r={cN:"comment",b:"\\(\\*",e:"\\*\\)",r:10},i={cN:"string",b:"'",e:"'",c:[{b:"''"}]},o={cN:"string",b:"(#\\d+)+"},a={cN:"function",bK:"function constructor destructor procedure method",e:"[:;]",k:"function constructor|10 destructor|10 procedure|10 method|10",c:[e.TM,{cN:"params",b:"\\(",e:"\\)",k:t,c:[i,o]},n,r]};return{cI:!0,k:t,i:'("|\\$[G-Zg-z]|\\/\\*|{",e:"}"},i={cN:"variable",v:[{b:/\$\d/},{b:/[\$\%\@\*](\^\w\b|#\w+(\:\:\w+)*|{\w+}|\w+(\:\:\w*)*)/},{b:/[\$\%\@\*][^\s\w{]/,r:0}]},o={cN:"comment",b:"^(__END__|__DATA__)",e:"\\n$",r:5},a=[e.BE,n,i],s=[i,e.HCM,o,{cN:"comment",b:"^\\=\\w",e:"\\=cut",eW:!0},r,{cN:"string",c:a,v:[{b:"q[qwxr]?\\s*\\(",e:"\\)",r:5},{b:"q[qwxr]?\\s*\\[",e:"\\]",r:5},{b:"q[qwxr]?\\s*\\{",e:"\\}",r:5},{b:"q[qwxr]?\\s*\\|",e:"\\|",r:5},{b:"q[qwxr]?\\s*\\<",e:"\\>",r:5},{b:"qw\\s+q",e:"q",r:5},{b:"'",e:"'",c:[e.BE]},{b:'"',e:'"'},{b:"`",e:"`",c:[e.BE]},{b:"{\\w+}",c:[],r:0},{b:"-?\\w+\\s*\\=\\>",c:[],r:0}]},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\/\\/|"+e.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[e.HCM,o,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[e.BE],r:0}]},{cN:"sub",bK:"sub",e:"(\\s*\\(.*?\\))?[;{]",r:5},{cN:"operator",b:"-\\w\\b",r:0}];return n.c=s,r.c=s,{k:t,c:s}}),hljs.registerLanguage("ini",function(e){return{cI:!0,i:/\S/,c:[{cN:"comment",b:";",e:"$"},{cN:"title",b:"^\\[",e:"\\]"},{cN:"setting",b:"^[a-z0-9\\[\\]_-]+[ \\t]*=[ \\t]*",e:"$",c:[{cN:"value",eW:!0,k:"on off true false yes no",c:[e.QSM,e.NM],r:0}]}]}}),hljs.registerLanguage("erlang",function(e){var t="[a-z'][a-zA-Z0-9_']*",n="("+t+":"+t+"|"+t+")",r={keyword:"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun let not of orelse|10 query receive rem try when xor",literal:"false true"},i={cN:"comment",b:"%",e:"$",r:0},o={cN:"number",b:"\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)",r:0},a={b:"fun\\s+"+t+"/\\d+"},s={b:n+"\\(",e:"\\)",rB:!0,r:0,c:[{cN:"function_name",b:n,r:0},{b:"\\(",e:"\\)",eW:!0,rE:!0,r:0}]},l={cN:"tuple",b:"{",e:"}",r:0},u={cN:"variable",b:"\\b_([A-Z][A-Za-z0-9_]*)?",r:0},c={cN:"variable",b:"[A-Z][a-zA-Z0-9_]*",r:0},p={b:"#"+e.UIR,r:0,rB:!0,c:[{cN:"record_name",b:"#"+e.UIR,r:0},{b:"{",e:"}",r:0}]},d={bK:"fun receive if try case",e:"end",k:r};d.c=[i,a,e.inherit(e.ASM,{cN:""}),d,s,e.QSM,o,l,u,c,p];var f=[i,a,d,s,e.QSM,o,l,u,c,p];s.c[1].c=f,l.c=f,p.c[1].c=f;var h={cN:"params",b:"\\(",e:"\\)",c:f};return{k:r,i:"(",rB:!0,i:"\\(|#|//|/\\*|\\\\|:|;",c:[h,e.inherit(e.TM,{b:t})],starts:{e:";|\\.",k:r,c:f}},i,{cN:"pp",b:"^-",e:"\\.",r:0,eE:!0,rB:!0,l:"-"+e.IR,k:"-module -record -undef -export -ifdef -ifndef -author -copyright -doc -vsn -import -include -include_lib -compile -define -else -endif -file -behaviour -behavior",c:[h]},o,e.QSM,p,u,c,l]}}),hljs.registerLanguage("1c",function(e){var t="[a-zA-Zа-яА-Я][a-zA-Z0-9_а-яА-Я]*",n="возврат дата для если и или иначе иначеесли исключение конецесли конецпопытки конецпроцедуры конецфункции конеццикла константа не перейти перем перечисление по пока попытка прервать продолжить процедура строка тогда фс функция цикл число экспорт",r="ansitooem oemtoansi ввестивидсубконто ввестидату ввестизначение ввестиперечисление ввестипериод ввестиплансчетов ввестистроку ввестичисло вопрос восстановитьзначение врег выбранныйплансчетов вызватьисключение датагод датамесяц датачисло добавитьмесяц завершитьработусистемы заголовоксистемы записьжурналарегистрации запуститьприложение зафиксироватьтранзакцию значениевстроку значениевстрокувнутр значениевфайл значениеизстроки значениеизстрокивнутр значениеизфайла имякомпьютера имяпользователя каталогвременныхфайлов каталогиб каталогпользователя каталогпрограммы кодсимв командасистемы конгода конецпериодаби конецрассчитанногопериодаби конецстандартногоинтервала конквартала конмесяца коннедели лев лог лог10 макс максимальноеколичествосубконто мин монопольныйрежим названиеинтерфейса названиенабораправ назначитьвид назначитьсчет найти найтипомеченныенаудаление найтиссылки началопериодаби началостандартногоинтервала начатьтранзакцию начгода начквартала начмесяца начнедели номерднягода номерднянедели номернеделигода нрег обработкаожидания окр описаниеошибки основнойжурналрасчетов основнойплансчетов основнойязык открытьформу открытьформумодально отменитьтранзакцию очиститьокносообщений периодстр полноеимяпользователя получитьвремята получитьдатута получитьдокументта получитьзначенияотбора получитьпозициюта получитьпустоезначение получитьта прав праводоступа предупреждение префиксавтонумерации пустаястрока пустоезначение рабочаядаттьпустоезначение рабочаядата разделительстраниц разделительстрок разм разобратьпозициюдокумента рассчитатьрегистрына рассчитатьрегистрыпо сигнал симв символтабуляции создатьобъект сокрл сокрлп сокрп сообщить состояние сохранитьзначение сред статусвозврата стрдлина стрзаменить стрколичествострок стрполучитьстроку стрчисловхождений сформироватьпозициюдокумента счетпокоду текущаядата текущеевремя типзначения типзначениястр удалитьобъекты установитьтана установитьтапо фиксшаблон формат цел шаблон",i={cN:"dquote",b:'""'},o={cN:"string",b:'"',e:'"|$',c:[i]},a={cN:"string",b:"\\|",e:'"|$',c:[i]};return{cI:!0,l:t,k:{keyword:n,built_in:r},c:[e.CLCM,e.NM,o,a,{cN:"function",b:"(процедура|функция)",e:"$",l:t,k:"процедура функция",c:[e.inherit(e.TM,{b:t}),{cN:"tail",eW:!0,c:[{cN:"params",b:"\\(",e:"\\)",l:t,k:"знач",c:[o,a]},{cN:"export",b:"экспорт",eW:!0,l:t,k:"экспорт",c:[e.CLCM]}]},e.CLCM]},{cN:"preprocessor",b:"#",e:"$"},{cN:"date",b:"'\\d{2}\\.\\d{2}\\.(\\d{2}|\\d{4})'"}]}}),hljs.registerLanguage("haskell",function(e){var t={cN:"comment",v:[{b:"--",e:"$"},{b:"{-",e:"-}",c:["self"]}]},n={cN:"pragma",b:"{-#",e:"#-}"},r={cN:"preprocessor",b:"^#",e:"$"},i={cN:"type",b:"\\b[A-Z][\\w']*",r:0},o={cN:"container",b:"\\(",e:"\\)",i:'"',c:[n,t,r,{cN:"type",b:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TM,{b:"[_a-z][\\w']*"})]},a={cN:"container",b:"{",e:"}",c:o.c};return{k:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",c:[{cN:"module",b:"\\bmodule\\b",e:"where",k:"module where",c:[o,t],i:"\\W\\.|;"},{cN:"import",b:"\\bimport\\b",e:"$",k:"import|0 qualified as hiding",c:[o,t],i:"\\W\\.|;"},{cN:"class",b:"^(\\s*)?(class|instance)\\b",e:"where",k:"class family instance where",c:[i,o,t]},{cN:"typedef",b:"\\b(data|(new)?type)\\b",e:"$",k:"data family type newtype deriving",c:[n,t,i,o,a]},{cN:"default",bK:"default",e:"$",c:[i,o,t]},{cN:"infix",bK:"infix infixl infixr",e:"$",c:[e.CNM,t]},{cN:"foreign",b:"\\bforeign\\b",e:"$",k:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",c:[i,e.QSM,t]},{cN:"shebang",b:"#!\\/usr\\/bin\\/env runhaskell",e:"$"},n,t,r,e.QSM,e.CNM,i,e.inherit(e.TM,{b:"^[_a-z][\\w']*"}),{b:"->|<-"}]}}),hljs.registerLanguage("delphi",function(e){var t="exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure",n={cN:"comment",v:[{b:/\{/,e:/\}/,r:0},{b:/\(\*/,e:/\*\)/,r:10}]},r={cN:"string",b:/'/,e:/'/,c:[{b:/''/}]},i={cN:"string",b:/(#\d+)+/},o={b:e.IR+"\\s*=\\s*class\\s*\\(",rB:!0,c:[e.TM]},a={cN:"function",bK:"function constructor destructor procedure",e:/[:;]/,k:"function constructor|10 destructor|10 procedure|10",c:[e.TM,{cN:"params",b:/\(/,e:/\)/,k:t,c:[r,i]},n]};return{cI:!0,k:t,i:/("|\$[G-Zg-z]|\/\*|<\/)/,c:[n,e.CLCM,r,i,e.NM,o,a]}}),hljs.registerLanguage("markdown",function(e){return{c:[{cN:"header",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"blockquote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"`.+?`"},{b:"^( {4}| )",e:"$",r:0}]},{cN:"horizontal_rule",b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].+?[\\)\\]]",rB:!0,c:[{cN:"link_label",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link_url",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"link_reference", +b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:"^\\[.+\\]:",e:"$",rB:!0,c:[{cN:"link_reference",b:"\\[",e:"\\]",eB:!0,eE:!0},{cN:"link_url",b:"\\s",e:"$"}]}]}}),hljs.registerLanguage("avrasm",function(e){return{cI:!0,k:{keyword:"adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub subi swap tst wdr",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27 r28 r29 r30 r31 x|0 xh xl y|0 yh yl z|0 zh zl ucsr1c udr1 ucsr1a ucsr1b ubrr1l ubrr1h ucsr0c ubrr0h tccr3c tccr3a tccr3b tcnt3h tcnt3l ocr3ah ocr3al ocr3bh ocr3bl ocr3ch ocr3cl icr3h icr3l etimsk etifr tccr1c ocr1ch ocr1cl twcr twdr twar twsr twbr osccal xmcra xmcrb eicra spmcsr spmcr portg ddrg ping portf ddrf sreg sph spl xdiv rampz eicrb eimsk gimsk gicr eifr gifr timsk tifr mcucr mcucsr tccr0 tcnt0 ocr0 assr tccr1a tccr1b tcnt1h tcnt1l ocr1ah ocr1al ocr1bh ocr1bl icr1h icr1l tccr2 tcnt2 ocr2 ocdr wdtcr sfior eearh eearl eedr eecr porta ddra pina portb ddrb pinb portc ddrc pinc portd ddrd pind spdr spsr spcr udr0 ucsr0a ucsr0b ubrr0l acsr admux adcsr adch adcl porte ddre pine pinf"},c:[e.CBLCLM,{cN:"comment",b:";",e:"$",r:0},e.CNM,e.BNM,{cN:"number",b:"\\b(\\$[a-zA-Z0-9]+|0o[0-7]+)"},e.QSM,{cN:"string",b:"'",e:"[^\\\\]'",i:"[^\\\\][^']"},{cN:"label",b:"^[A-Za-z0-9_.$]+:"},{cN:"preprocessor",b:"#",e:"$"},{cN:"preprocessor",b:"\\.[a-zA-Z]+"},{cN:"localvars",b:"@[0-9]+"}]}}),hljs.registerLanguage("lisp",function(e){var t="[a-zA-Z_\\-\\+\\*\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\/\\<\\=\\>\\&\\#!]*",n="(\\-|\\+)?\\d+(\\.\\d+|\\/\\d+)?((d|e|f|l|s)(\\+|\\-)?\\d+)?",r={cN:"shebang",b:"^#!",e:"$"},i={cN:"literal",b:"\\b(t{1}|nil)\\b"},o={cN:"number",v:[{b:n,r:0},{b:"#b[0-1]+(/[0-1]+)?"},{b:"#o[0-7]+(/[0-7]+)?"},{b:"#x[0-9a-f]+(/[0-9a-f]+)?"},{b:"#c\\("+n+" +"+n,e:"\\)"}]},a=e.inherit(e.QSM,{i:null}),s={cN:"comment",b:";",e:"$"},l={cN:"variable",b:"\\*",e:"\\*"},u={cN:"keyword",b:"[:&]"+t},c={b:"\\(",e:"\\)",c:["self",i,a,o]},p={cN:"quoted",c:[o,a,l,u,c],v:[{b:"['`]\\(",e:"\\)"},{b:"\\(quote ",e:"\\)",k:{title:"quote"}}]},d={cN:"list",b:"\\(",e:"\\)"},f={eW:!0,r:0};return d.c=[{cN:"title",b:t},f],f.c=[p,d,i,o,a,s,l,u],{i:/\S/,c:[o,r,i,a,s,p,d]}}),hljs.registerLanguage("vbnet",function(e){return{cI:!0,k:{keyword:"addhandler addressof alias and andalso aggregate ansi as assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into is isfalse isnot istrue join key let lib like loop me mid mod module mustinherit mustoverride mybase myclass namespace narrowing new next not notinheritable notoverridable of off on operator option optional or order orelse overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim rem removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly xor",built_in:"boolean byte cbool cbyte cchar cdate cdec cdbl char cint clng cobj csbyte cshort csng cstr ctype date decimal directcast double gettype getxmlnamespace iif integer long object sbyte short single string trycast typeof uinteger ulong ushort",literal:"true false nothing"},i:"//|{|}|endif|gosub|variant|wend",c:[e.inherit(e.QSM,{c:[{b:'""'}]}),{cN:"comment",b:"'",e:"$",rB:!0,c:[{cN:"xmlDocTag",b:"'''|"},{cN:"xmlDocTag",b:""}]},e.CNM,{cN:"preprocessor",b:"#",e:"$",k:"if else elseif end region externalsource"}]}}),hljs.registerLanguage("axapta",function(e){return{k:"false int abstract private char boolean static null if for true while long throw finally protected final return void enum else break new catch byte super case short default double public try this switch continue reverse firstfast firstonly forupdate nofetch sum avg minof maxof count order group by asc desc index hint like dispaly edit client server ttsbegin ttscommit str real date container anytype common div mod",c:[e.CLCM,e.CBLCLM,e.ASM,e.QSM,e.CNM,{cN:"preprocessor",b:"#",e:"$"},{cN:"class",bK:"class interface",e:"{",i:":",c:[{cN:"inheritance",bK:"extends implements",r:10},e.UTM]}]}}),hljs.registerLanguage("ocaml",function(e){return{k:{keyword:"and as assert asr begin class constraint do done downto else end exception external false for fun function functor if in include inherit initializer land lazy let lor lsl lsr lxor match method mod module mutable new object of open or private rec ref sig struct then to true try type val virtual when while with parser value",built_in:"bool char float int list unit array exn option int32 int64 nativeint format4 format6 lazy_t in_channel out_channel string"},i:/\/\//,c:[{cN:"string",b:'"""',e:'"""'},{cN:"comment",b:"\\(\\*",e:"\\*\\)",c:["self"]},{cN:"class",bK:"type",e:"\\(|=|$",c:[e.UTM]},{cN:"annotation",b:"\\[<",e:">\\]"},e.CBLCLM,e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null}),e.CNM]}}),hljs.registerLanguage("erlang-repl",function(e){return{k:{special_functions:"spawn spawn_link self",reserved:"after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor"},c:[{cN:"prompt",b:"^[0-9]+> ",r:10},{cN:"comment",b:"%",e:"$"},{cN:"number",b:"\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)",r:0},e.ASM,e.QSM,{cN:"constant",b:"\\?(::)?([A-Z]\\w*(::)?)+"},{cN:"arrow",b:"->"},{cN:"ok",b:"ok"},{cN:"exclamation_mark",b:"!"},{cN:"function_or_atom",b:"(\\b[a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*)|(\\b[a-z'][a-zA-Z0-9_']*)",r:0},{cN:"variable",b:"[A-Z][a-zA-Z0-9_']*",r:0}]}}),hljs.registerLanguage("vala",function(e){return{k:{keyword:"char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 uint16 uint32 uint64 float double bool struct enum string void weak unowned owned async signal static abstract interface override while do for foreach else switch case break default return try catch public private protected internal using new this get set const stdout stdin stderr var",built_in:"DBus GLib CCode Gee Object",literal:"false true null"},c:[{cN:"class",bK:"class interface delegate namespace",e:"{",i:"[^,:\\n\\s\\.]",c:[e.UTM]},e.CLCM,e.CBLCLM,{cN:"string",b:'"""',e:'"""',r:5},e.ASM,e.QSM,e.CNM,{cN:"preprocessor",b:"^#",e:"$",r:2},{cN:"constant",b:" [A-Z_]+ ",r:0}]}}),hljs.registerLanguage("dos",function(e){return{cI:!0,k:{flow:"if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq",keyword:"shift cd dir echo setlocal endlocal set pause copy",stream:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux",winutils:"ping net ipconfig taskkill xcopy ren del"},c:[{cN:"envvar",b:"%%[^ ]"},{cN:"envvar",b:"%[^ ]+?%"},{cN:"envvar",b:"![^ ]+?!"},{cN:"number",b:"\\b\\d+",r:0},{cN:"comment",b:"@?rem",e:"$"}]}}),hljs.registerLanguage("clojure",function(e){var t={built_in:"def cond apply if-not if-let if not not= = < < > <= <= >= == + / * - rem quot neg? pos? delay? symbol? keyword? true? false? integer? empty? coll? list? set? ifn? fn? associative? sequential? sorted? counted? reversible? number? decimal? class? distinct? isa? float? rational? reduced? ratio? odd? even? char? seq? vector? string? map? nil? contains? zero? instance? not-every? not-any? libspec? -> ->> .. . inc compare do dotimes mapcat take remove take-while drop letfn drop-last take-last drop-while while intern condp case reduced cycle split-at split-with repeat replicate iterate range merge zipmap declare line-seq sort comparator sort-by dorun doall nthnext nthrest partition eval doseq await await-for let agent atom send send-off release-pending-sends add-watch mapv filterv remove-watch agent-error restart-agent set-error-handler error-handler set-error-mode! error-mode shutdown-agents quote var fn loop recur throw try monitor-enter monitor-exit defmacro defn defn- macroexpand macroexpand-1 for dosync and or when when-not when-let comp juxt partial sequence memoize constantly complement identity assert peek pop doto proxy defstruct first rest cons defprotocol cast coll deftype defrecord last butlast sigs reify second ffirst fnext nfirst nnext defmulti defmethod meta with-meta ns in-ns create-ns import refer keys select-keys vals key val rseq name namespace promise into transient persistent! conj! assoc! dissoc! pop! disj! use class type num float double short byte boolean bigint biginteger bigdec print-method print-dup throw-if printf format load compile get-in update-in pr pr-on newline flush read slurp read-line subvec with-open memfn time re-find re-groups rand-int rand mod locking assert-valid-fdecl alias resolve ref deref refset swap! reset! set-validator! compare-and-set! alter-meta! reset-meta! commute get-validator alter ref-set ref-history-count ref-min-history ref-max-history ensure sync io! new next conj set! to-array future future-call into-array aset gen-class reduce map filter find empty hash-map hash-set sorted-map sorted-map-by sorted-set sorted-set-by vec vector seq flatten reverse assoc dissoc list disj get union difference intersection extend extend-type extend-protocol int nth delay count concat chunk chunk-buffer chunk-append chunk-first chunk-rest max min dec unchecked-inc-int unchecked-inc unchecked-dec-inc unchecked-dec unchecked-negate unchecked-add-int unchecked-add unchecked-subtract-int unchecked-subtract chunk-next chunk-cons chunked-seq? prn vary-meta lazy-seq spread list* str find-keyword keyword symbol gensym force rationalize"},n="[a-zA-Z_0-9\\!\\.\\?\\-\\+\\*\\/\\<\\=\\>\\&\\#\\$';]+",r="[\\s:\\(\\{]+\\d+(\\.\\d+)?",i={cN:"number",b:r,r:0},o=e.inherit(e.QSM,{i:null}),a={cN:"comment",b:";",e:"$",r:0},s={cN:"collection",b:"[\\[\\{]",e:"[\\]\\}]"},l={cN:"comment",b:"\\^"+n},u={cN:"comment",b:"\\^\\{",e:"\\}"},c={cN:"attribute",b:"[:]"+n},p={cN:"list",b:"\\(",e:"\\)"},d={eW:!0,k:{literal:"true false nil"},r:0},f={k:t,l:n,cN:"title",b:n,starts:d};return p.c=[{cN:"comment",b:"comment"},f,d],d.c=[p,o,l,u,a,c,s,i],s.c=[p,o,l,a,c,s,i],{i:/\S/,c:[a,p,{cN:"prompt",b:/^=> /,starts:{e:/\n\n|\Z/}}]}}),hljs.registerLanguage("go",function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer",constant:"true false iota nil",typename:"bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{aliases:["golang"],k:t,i:"]/,c:[{bK:"extends implements",r:10},e.UTM]},{b:e.UIR+"\\s*\\(",rB:!0,c:[e.UTM]}]},e.CNM,{cN:"annotation",b:"@[A-Za-z]+"}]}}),hljs.registerLanguage("lua",function(e){var t="\\[=*\\[",n="\\]=*\\]",r={b:t,e:n,c:["self"]},i=[{cN:"comment",b:"--(?!"+t+")",e:"$"},{cN:"comment",b:"--"+t,e:n,c:[r],r:10}];return{l:e.UIR,k:{keyword:"and break do else elseif end false for if in local nil not or repeat return then true until while",built_in:"_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug io math os package string table"},c:i.concat([{cN:"function",bK:"function",e:"\\)",c:[e.inherit(e.TM,{b:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{cN:"params",b:"\\(",eW:!0,c:i}].concat(i)},e.CNM,e.ASM,e.QSM,{cN:"string",b:t,e:n,c:[r],r:10}])}}),hljs.registerLanguage("rsl",function(e){return{k:{keyword:"float color point normal vector matrix while for if do return else break extern continue",built_in:"abs acos ambient area asin atan atmosphere attribute calculatenormal ceil cellnoise clamp comp concat cos degrees depth Deriv diffuse distance Du Dv environment exp faceforward filterstep floor format fresnel incident length lightsource log match max min mod noise normalize ntransform opposite option phong pnoise pow printf ptlined radians random reflect refract renderinfo round setcomp setxcomp setycomp setzcomp shadow sign sin smoothstep specular specularbrdf spline sqrt step tan texture textureinfo trace transform vtransform xcomp ycomp zcomp"},i:";/,r:0,sL:"xml"}],r:0},{cN:"function",bK:"function",e:/\{/,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{cN:"params",b:/\(/,e:/\)/,c:[e.CLCM,e.CBLCLM],i:/["'\(]/}],i:/\[|%/},{b:/\$[(.]/},{b:"\\."+e.IR,r:0}]}}),hljs.registerLanguage("r",function(e){var t="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{c:[e.HCM,{b:t,l:t,k:{keyword:"function if in break next repeat else for return switch while try tryCatch|10 stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...|10",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10"},r:0},{cN:"number",b:"0[xX][0-9a-fA-F]+[Li]?\\b",r:0},{cN:"number",b:"\\d+(?:[eE][+\\-]?\\d*)?L\\b",r:0},{cN:"number",b:"\\d+\\.(?!\\d)(?:i\\b)?",r:0},{cN:"number",b:"\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",r:0},{cN:"number",b:"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",r:0},{b:"`",e:"`",r:0},{cN:"string",c:[e.BE],v:[{b:'"',e:'"'},{b:"'",e:"'"}]}]}}),hljs.registerLanguage("ruby",function(e){var t="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",n="and false then defined module in return redo if BEGIN retry end for true self when next until do begin unless END rescue nil else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",r={cN:"yardoctag",b:"@[A-Za-z]+"},i={cN:"comment",v:[{b:"#",e:"$",c:[r]},{b:"^\\=begin",e:"^\\=end",c:[r],r:10},{b:"^__END__",e:"\\n$"}]},o={cN:"subst",b:"#\\{",e:"}",k:n},a={cN:"string",c:[e.BE,o],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:"%[qw]?\\(",e:"\\)"},{b:"%[qw]?\\[",e:"\\]"},{b:"%[qw]?{",e:"}"},{b:"%[qw]?<",e:">",r:10},{b:"%[qw]?/",e:"/",r:10},{b:"%[qw]?%",e:"%",r:10},{b:"%[qw]?-",e:"-",r:10},{b:"%[qw]?\\|",e:"\\|",r:10},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/}]},s={cN:"params",b:"\\(",e:"\\)",k:n},l=[a,i,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[e.inherit(e.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{cN:"inheritance",b:"<\\s*",c:[{cN:"parent",b:"("+e.IR+"::)?"+e.IR}]},i]},{cN:"function",bK:"def",e:" |$|;",r:0,c:[e.inherit(e.TM,{b:t}),s,i]},{cN:"constant",b:"(::)?(\\b[A-Z]\\w*(::)?)+",r:0},{cN:"symbol",b:":",c:[a,{b:t}],r:0},{cN:"symbol",b:e.UIR+"(\\!|\\?)?:",r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{cN:"variable",b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{b:"("+e.RSR+")\\s*",c:[i,{cN:"regexp",c:[e.BE,o],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}],r:0}];return o.c=l,s.c=l,{k:n,c:l}}),hljs.registerLanguage("haml",function(e){return{cI:!0,c:[{cN:"doctype",b:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",r:10},{cN:"comment",b:"^\\s*(!=#|=#|-#|/).*$",r:0},{b:"^\\s*(-|=|!=)(?!#)",starts:{e:"\\n",sL:"ruby"}},{cN:"tag",b:"^\\s*%",c:[{cN:"title",b:"\\w+"},{cN:"value",b:"[#\\.]\\w+"},{b:"{\\s*",e:"\\s*}",eE:!0,c:[{b:":\\w+\\s*=>",e:",\\s+",rB:!0,eW:!0,c:[{cN:"symbol",b:":\\w+"},{cN:"string",b:'"',e:'"'},{cN:"string",b:"'",e:"'"},{b:"\\w+",r:0}]}]},{b:"\\(\\s*",e:"\\s*\\)",eE:!0,c:[{b:"\\w+\\s*=",e:"\\s+",rB:!0,eW:!0,c:[{cN:"attribute",b:"\\w+",r:0},{cN:"string",b:'"',e:'"'},{cN:"string",b:"'",e:"'"},{b:"\\w+",r:0}]}]}]},{cN:"bullet",b:"^\\s*[=~]\\s*",r:0},{b:"#{",starts:{e:"}",sL:"ruby"}}]}}),hljs.registerLanguage("brainfuck",function(e){var t={cN:"literal",b:"[\\+\\-]",r:0};return{c:[{cN:"comment",b:"[^\\[\\]\\.,\\+\\-<> \r\n]",rE:!0,e:"[\\[\\]\\.,\\+\\-<> \r\n]",r:0},{cN:"title",b:"[\\[\\]]",r:0},{cN:"string",b:"[\\.,]",r:0},{b:/\+\+|\-\-/,rB:!0,c:[t]},t]}}),hljs.registerLanguage("matlab",function(e){var t=[e.CNM,{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]}];return{k:{keyword:"break case catch classdef continue else elseif end enumerated events for function global if methods otherwise parfor persistent properties return spmd switch try while",built_in:"sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i inf nan isnan isinf isfinite j why compan gallery hadamard hankel hilb invhilb magic pascal rosser toeplitz vander wilkinson"},i:'(//|"|#|/\\*|\\s+/\\w+)',c:[{cN:"function",bK:"function",e:"$",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)"},{cN:"params",b:"\\[",e:"\\]"}]},{cN:"transposed_variable",b:"[a-zA-Z_][a-zA-Z_0-9]*('+[\\.']*|[\\.']+)",e:"",r:0},{cN:"matrix",b:"\\[",e:"\\]'*[\\.']*",c:t,r:0},{cN:"cell",b:"\\{",e:"\\}'*[\\.']*",c:t,i:/:/},{cN:"comment",b:"\\%",e:"$"}].concat(t)}}),hljs.registerLanguage("vbscript",function(e){return{cI:!0,k:{keyword:"call class const dim do loop erase execute executeglobal exit for each next function if then else on error option explicit new private property let get public randomize redim rem select case set stop sub while wend with end to elseif is or xor and not class_initialize class_terminate default preserve in me byval byref step resume goto",built_in:"lcase month vartype instrrev ubound setlocale getobject rgb getref string weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency conversions csng timevalue second year space abs clng timeserial fixs len asc isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim strcomp int createobject loadpicture tan formatnumber mid scriptenginebuildversion scriptengine split scriptengineminorversion cint sin datepart ltrim sqr scriptenginemajorversion time derived eval date formatpercent exp inputbox left ascw chrw regexp server response request cstr err",literal:"true false null nothing empty"},i:"//",c:[e.inherit(e.QSM,{c:[{b:'""'}]}),{cN:"comment",b:/'/,e:/$/,r:0},e.CNM]}}),hljs.registerLanguage("fsharp",function(e){return{k:"abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",c:[{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},{cN:"string",b:'"""',e:'"""'},{cN:"comment",b:"\\(\\*",e:"\\*\\)"},{cN:"class",bK:"type",e:"\\(|=|$",c:[e.UTM]},{cN:"annotation",b:"\\[<",e:">\\]"},{cN:"attribute",b:"\\B('[A-Za-z])\\b",c:[e.BE]},e.CLCM,e.inherit(e.QSM,{i:null}),e.CNM]}}),hljs.registerLanguage("makefile",function(e){var t={cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]};return{c:[e.HCM,{b:/^\w+\s*\W*=/,rB:!0,r:0,starts:{cN:"constant",e:/\s*\W*=/,eE:!0,starts:{e:/$/,r:0,c:[t]}}},{cN:"title",b:/^[\w]+:\s*$/},{cN:"phony",b:/^\.PHONY:/,e:/$/,k:".PHONY",l:/[\.\w]+/},{b:/^\t+/,e:/$/,c:[e.QSM,t]}]}}),hljs.registerLanguage("diff",function(e){return{c:[{cN:"chunk",r:10,v:[{b:/^\@\@ +\-\d+,\d+ +\+\d+,\d+ +\@\@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"header",v:[{b:/Index: /,e:/$/},{b:/=====/,e:/=====$/},{b:/^\-\-\-/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+\+\+/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"change",b:"^\\!",e:"$"}]}}),hljs.registerLanguage("rib",function(e){return{k:"ArchiveRecord AreaLightSource Atmosphere Attribute AttributeBegin AttributeEnd Basis Begin Blobby Bound Clipping ClippingPlane Color ColorSamples ConcatTransform Cone CoordinateSystem CoordSysTransform CropWindow Curves Cylinder DepthOfField Detail DetailRange Disk Displacement Display End ErrorHandler Exposure Exterior Format FrameAspectRatio FrameBegin FrameEnd GeneralPolygon GeometricApproximation Geometry Hider Hyperboloid Identity Illuminate Imager Interior LightSource MakeCubeFaceEnvironment MakeLatLongEnvironment MakeShadow MakeTexture Matte MotionBegin MotionEnd NuPatch ObjectBegin ObjectEnd ObjectInstance Opacity Option Orientation Paraboloid Patch PatchMesh Perspective PixelFilter PixelSamples PixelVariance Points PointsGeneralPolygons PointsPolygons Polygon Procedural Projection Quantize ReadArchive RelativeDetail ReverseOrientation Rotate Scale ScreenWindow ShadingInterpolation ShadingRate Shutter Sides Skew SolidBegin SolidEnd Sphere SubdivisionMesh Surface TextureCoordinates Torus Transform TransformBegin TransformEnd TransformPoints Translate TrimCurve WorldBegin WorldEnd",i:"/},r={cN:"string",c:[e.BE,n],v:[{b:'b"',e:'"'},{b:"b'",e:"'"},e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null})]},i={v:[e.BNM,e.CNM]};return{cI:!0,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",c:[e.CLCM,e.HCM,{cN:"comment",b:"/\\*",e:"\\*/",c:[{cN:"phpdoc",b:"\\s@[A-Za-z]+"},n]},{cN:"comment",b:"__halt_compiler.+?;",eW:!0,k:"__halt_compiler",l:e.UIR},{cN:"string",b:"<<<['\"]?\\w+['\"]?$",e:"^\\w+;",c:[e.BE]},n,t,{cN:"function",bK:"function",e:/[;{]/,i:"\\$|\\[|%",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)",c:["self",t,e.CBLCLM,r,i]}]},{cN:"class",bK:"class interface",e:"{",i:/[:\(\$"]/,c:[{bK:"extends implements",r:10},e.UTM]},{bK:"namespace",e:";",i:/[\.']/,c:[e.UTM]},{bK:"use",e:";",c:[e.UTM]},{b:"=>"},r,i]}}),hljs.registerLanguage("cmake",function(e){return{cI:!0,k:{keyword:"add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_subdirectory add_test aux_source_directory break build_command cmake_minimum_required cmake_policy configure_file create_test_sourcelist define_property else elseif enable_language enable_testing endforeach endfunction endif endmacro endwhile execute_process export find_file find_library find_package find_path find_program fltk_wrap_ui foreach function get_cmake_property get_directory_property get_filename_component get_property get_source_file_property get_target_property get_test_property if include include_directories include_external_msproject include_regular_expression install link_directories load_cache load_command macro mark_as_advanced message option output_required_files project qt_wrap_cpp qt_wrap_ui remove_definitions return separate_arguments set set_directory_properties set_property set_source_files_properties set_target_properties set_tests_properties site_name source_group string target_link_libraries try_compile try_run unset variable_watch while build_name exec_program export_library_dependencies install_files install_programs install_targets link_libraries make_directory remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or",operator:"equal less greater strless strgreater strequal matches"},c:[{cN:"envvar",b:"\\${",e:"}"},e.HCM,e.QSM,e.NM]}}),hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)\}/}]},n={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},r={cN:"string",b:/'/,e:/'/};return{l:/-?[a-z\.]+/,k:{keyword:"if then else elif fi for break continue while in do done exit return set declare case esac export exec",literal:"true false",built_in:"printf echo read cd pwd pushd popd dirs let eval unset typeset readonly getopts source shopt caller type hash bind help sudo",operator:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"shebang",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,e.NM,n,r,t]}}),hljs.registerLanguage("applescript",function(e){var t=e.inherit(e.QSM,{i:""}),n={cN:"params",b:"\\(",e:"\\)",c:["self",e.CNM,t]},r=[{cN:"comment",b:"--",e:"$"},{cN:"comment",b:"\\(\\*",e:"\\*\\)",c:["self",{b:"--",e:"$"}]},e.HCM];return{k:{keyword:"about above after against and around as at back before beginning behind below beneath beside between but by considering contain contains continue copy div does eighth else end equal equals error every exit fifth first for fourth from front get given global if ignoring in into is it its last local me middle mod my ninth not of on onto or over prop property put ref reference repeat returning script second set seventh since sixth some tell tenth that the then third through thru timeout times to transaction try until where while whose with without", +constant:"AppleScript false linefeed return pi quote result space tab true",type:"alias application boolean class constant date file integer list number real record string text",command:"activate beep count delay launch log offset read round run say summarize write",property:"character characters contents day frontmost id item length month name paragraph paragraphs rest reverse running time version weekday word words year"},c:[t,e.CNM,{cN:"type",b:"\\bPOSIX file\\b"},{cN:"command",b:"\\b(clipboard info|the clipboard|info for|list (disks|folder)|mount volume|path to|(close|open for) access|(get|set) eof|current date|do shell script|get volume settings|random number|set volume|system attribute|system info|time to GMT|(load|run|store) script|scripting components|ASCII (character|number)|localized string|choose (application|color|file|file name|folder|from list|remote application|URL)|display (alert|dialog))\\b|^\\s*return\\b"},{cN:"constant",b:"\\b(text item delimiters|current application|missing value)\\b"},{cN:"keyword",b:"\\b(apart from|aside from|instead of|out of|greater than|isn't|(doesn't|does not) (equal|come before|come after|contain)|(greater|less) than( or equal)?|(starts?|ends|begins?) with|contained by|comes (before|after)|a (ref|reference))\\b"},{cN:"property",b:"\\b(POSIX path|(date|time) string|quoted form)\\b"},{cN:"function_start",bK:"on",i:"[${=;\\n]",c:[e.UTM,n]}].concat(r),i:"//"}}),hljs.registerLanguage("vhdl",function(e){return{cI:!0,k:{keyword:"abs access after alias all and architecture array assert attribute begin block body buffer bus case component configuration constant context cover disconnect downto default else elsif end entity exit fairness file for force function generate generic group guarded if impure in inertial inout is label library linkage literal loop map mod nand new next nor not null of on open or others out package port postponed procedure process property protected pure range record register reject release rem report restrict restrict_guarantee return rol ror select sequence severity shared signal sla sll sra srl strong subtype then to transport type unaffected units until use variable vmode vprop vunit wait when while with xnor xor",typename:"boolean bit character severity_level integer time delay_length natural positive string bit_vector file_open_kind file_open_status std_ulogic std_ulogic_vector std_logic std_logic_vector unsigned signed boolean_vector integer_vector real_vector time_vector"},i:"{",c:[e.CBLCLM,{cN:"comment",b:"--",e:"$"},e.QSM,e.CNM,{cN:"literal",b:"'(U|X|0|1|Z|W|L|H|-)'",c:[e.BE]},{cN:"attribute",b:"'[A-Za-z](_?[A-Za-z0-9])*",c:[e.BE]}]}}),hljs.registerLanguage("parser3",function(e){return{sL:"xml",r:0,c:[{cN:"comment",b:"^#",e:"$"},{cN:"comment",b:"\\^rem{",e:"}",r:10,c:[{b:"{",e:"}",c:["self"]}]},{cN:"preprocessor",b:"^@(?:BASE|USE|CLASS|OPTIONS)$",r:10},{cN:"title",b:"@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$"},{cN:"variable",b:"\\$\\{?[\\w\\-\\.\\:]+\\}?"},{cN:"keyword",b:"\\^[\\w\\-\\.\\:]+"},{cN:"number",b:"\\^#[0-9a-fA-F]+"},e.CNM]}}),hljs.registerLanguage("scala",function(e){var t={cN:"annotation",b:"@[A-Za-z]+"},n={cN:"string",b:'u?r?"""',e:'"""',r:10};return{k:"type yield lazy override def with val var false true sealed abstract private trait object null if for while throw finally protected extends import final return else break new catch super class case package default try this match continue throws",c:[{cN:"javadoc",b:"/\\*\\*",e:"\\*/",c:[{cN:"javadoctag",b:"@[A-Za-z]+"}],r:10},e.CLCM,e.CBLCLM,n,e.ASM,e.QSM,{cN:"class",b:"((case )?class |object |trait )",e:"({|$)",i:":",k:"case class trait object",c:[{bK:"extends with",r:10},e.UTM,{cN:"params",b:"\\(",e:"\\)",c:[e.ASM,e.QSM,n,t]}]},e.CNM,t]}}),hljs.registerLanguage("cpp",function(e){var t={keyword:"false int float while private char catch export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace unsigned long throw volatile static protected bool template mutable if public friend do return goto auto void enum else break new extern using true class asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue wchar_t inline delete alignof char16_t char32_t constexpr decltype noexcept nullptr static_assert thread_local restrict _Bool complex _Complex _Imaginary",built_in:"std string cin cout cerr clog stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf"};return{aliases:["c"],k:t,i:"",i:"\\n"},e.CLCM]},{cN:"stl_container",b:"\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",e:">",k:t,r:10,c:["self"]}]}}),angular.module("hljs",[]).provider("hljsService",function(){var e={};return{setOptions:function(t){angular.extend(e,t)},getOptions:function(){return angular.copy(e)},$get:["$window",function(t){return(t.hljs.configure||angular.noop)(e),t.hljs}]}}).factory("hljsCache",["$cacheFactory",function(e){return e("hljsCache")}]).controller("HljsCtrl",["hljsCache","hljsService",function(e,t){var n=this,r=null,i=null,o=null,a=null;n.init=function(e){r=e},n.setLanguage=function(e){i=e,o&&n.highlight(o)},n.highlightCallback=function(e){a=e},n.highlight=function(s){if(r){var l,u;o=s,i?(u=n._cacheKey(i,o),l=e.get(u),l||(l=t.highlight(i,t.fixMarkup(o),!0),e.put(u,l))):(u=n._cacheKey(o),l=e.get(u),l||(l=t.highlightAuto(t.fixMarkup(o)),e.put(u,l))),r.html(l.value),r.addClass(l.language),null!==a&&angular.isFunction(a)&&a()}},n.clear=function(){r&&(o=null,r.text(""))},n.release=function(){r=null},n._cacheKey=function(){var e=Array.prototype.slice.call(arguments),t="!angular-highlightjs!";return e.join(t)}}]).directive("hljs",[function(){return{restrict:"EA",controller:"HljsCtrl",compile:function(e,t,n){var r=e[0].innerHTML.replace(/^(\r\n|\r|\n)/m,"");return e.html('
'),function(e,t,n,i){i.init(t.find("code")),n.onhighlight&&i.highlightCallback(function(){e.$eval(n.onhighlight)}),r&&i.highlight(r),e.$on("$destroy",function(){i.release()})}}}}]).directive("language",[function(){return{require:"hljs",restrict:"A",link:function(e,t,n,r){n.$observe("language",function(e){angular.isDefined(e)&&r.setLanguage(e)})}}}]).directive("source",[function(){return{require:"hljs",restrict:"A",link:function(e,t,n,r){e.$watch(n.source,function(e,t){e?r.highlight(e):r.clear()})}}}]).directive("include",["$http","$templateCache","$q",function(e,t,n){return{require:"hljs",restrict:"A",compile:function(r,i,o){var a=i.include;return function(r,i,o,s){var l=0;r.$watch(a,function(r){var i=++l;if(r&&angular.isString(r)){var o,a;o=t.get(r),o||(a=n.defer(),e.get(r,{cache:t,transformResponse:function(e,t){return e}}).success(function(e){i===l&&a.resolve(e)}).error(function(){i===l&&s.clear(),a.resolve()}),o=a.promise),n.when(o).then(function(e){e&&(angular.isArray(e)?e=e[1]:angular.isObject(e)&&(e=e.data),e=e.replace(/^(\r\n|\r|\n)/m,""),s.highlight(e))})}else s.clear()})}}}}]),/* * angular-ui-bootstrap * http://angular-ui.github.io/bootstrap/ - * Version: 2.1.4 - 2016-09-23 + * Version: 1.3.3 - 2016-05-22 * License: MIT */ -angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.collapse","ui.bootstrap.tabindex","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.dateparser","ui.bootstrap.isClass","ui.bootstrap.datepicker","ui.bootstrap.position","ui.bootstrap.datepickerPopup","ui.bootstrap.debounce","ui.bootstrap.dropdown","ui.bootstrap.stackedMap","ui.bootstrap.modal","ui.bootstrap.paging","ui.bootstrap.pager","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.tpls",["uib/template/accordion/accordion-group.html","uib/template/accordion/accordion.html","uib/template/alert/alert.html","uib/template/carousel/carousel.html","uib/template/carousel/slide.html","uib/template/datepicker/datepicker.html","uib/template/datepicker/day.html","uib/template/datepicker/month.html","uib/template/datepicker/year.html","uib/template/datepickerPopup/popup.html","uib/template/modal/window.html","uib/template/pager/pager.html","uib/template/pagination/pagination.html","uib/template/tooltip/tooltip-html-popup.html","uib/template/tooltip/tooltip-popup.html","uib/template/tooltip/tooltip-template-popup.html","uib/template/popover/popover-html.html","uib/template/popover/popover-template.html","uib/template/popover/popover.html","uib/template/progressbar/bar.html","uib/template/progressbar/progress.html","uib/template/progressbar/progressbar.html","uib/template/rating/rating.html","uib/template/tabs/tab.html","uib/template/tabs/tabset.html","uib/template/timepicker/timepicker.html","uib/template/typeahead/typeahead-match.html","uib/template/typeahead/typeahead-popup.html"]),angular.module("ui.bootstrap.collapse",[]).directive("uibCollapse",["$animate","$q","$parse","$injector",function(e,t,n,r){var i=r.has("$animateCss")?r.get("$animateCss"):null;return{link:function(r,o,a){function s(){v=!!("horizontal"in a),v?($={width:""},b={width:"0"}):($={height:""},b={height:"0"}),r.$eval(a.uibCollapse)||o.addClass("in").addClass("collapse").attr("aria-expanded",!0).attr("aria-hidden",!1).css($)}function u(e){return v?{width:e.scrollWidth+"px"}:{height:e.scrollHeight+"px"}}function l(){o.hasClass("collapse")&&o.hasClass("in")||t.resolve(d(r)).then(function(){o.removeClass("collapse").addClass("collapsing").attr("aria-expanded",!0).attr("aria-hidden",!1),i?i(o,{addClass:"in",easing:"ease",css:{overflow:"hidden"},to:u(o[0])}).start()["finally"](c):e.addClass(o,"in",{css:{overflow:"hidden"},to:u(o[0])}).then(c)})}function c(){o.removeClass("collapsing").addClass("collapse").css($),h(r)}function p(){return o.hasClass("collapse")||o.hasClass("in")?void t.resolve(m(r)).then(function(){o.css(u(o[0])).removeClass("collapse").addClass("collapsing").attr("aria-expanded",!1).attr("aria-hidden",!0),i?i(o,{removeClass:"in",to:b}).start()["finally"](f):e.removeClass(o,"in",{to:b}).then(f)}):f()}function f(){o.css(b),o.removeClass("collapsing").addClass("collapse"),g(r)}var d=n(a.expanding),h=n(a.expanded),m=n(a.collapsing),g=n(a.collapsed),v=!1,$={},b={};s(),r.$watch(a.uibCollapse,function(e){e?p():l()})}}}]),angular.module("ui.bootstrap.tabindex",[]).directive("uibTabindexToggle",function(){return{restrict:"A",link:function(e,t,n){n.$observe("disabled",function(e){n.$set("tabindex",e?-1:null)})}}}),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse","ui.bootstrap.tabindex"]).constant("uibAccordionConfig",{closeOthers:!0}).controller("UibAccordionController",["$scope","$attrs","uibAccordionConfig",function(e,t,n){this.groups=[],this.closeOthers=function(r){var i=angular.isDefined(t.closeOthers)?e.$eval(t.closeOthers):n.closeOthers;i&&angular.forEach(this.groups,function(e){e!==r&&(e.isOpen=!1)})},this.addGroup=function(e){var t=this;this.groups.push(e),e.$on("$destroy",function(n){t.removeGroup(e)})},this.removeGroup=function(e){var t=this.groups.indexOf(e);-1!==t&&this.groups.splice(t,1)}}]).directive("uibAccordion",function(){return{controller:"UibAccordionController",controllerAs:"accordion",transclude:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/accordion/accordion.html"}}}).directive("uibAccordionGroup",function(){return{require:"^uibAccordion",transclude:!0,restrict:"A",templateUrl:function(e,t){return t.templateUrl||"uib/template/accordion/accordion-group.html"},scope:{heading:"@",panelClass:"@?",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(e){this.heading=e}},link:function(e,t,n,r){t.addClass("panel"),r.addGroup(e),e.openClass=n.openClass||"panel-open",e.panelClass=n.panelClass||"panel-default",e.$watch("isOpen",function(n){t.toggleClass(e.openClass,!!n),n&&r.closeOthers(e)}),e.toggleOpen=function(t){e.isDisabled||t&&32!==t.which||(e.isOpen=!e.isOpen)};var i="accordiongroup-"+e.$id+"-"+Math.floor(1e4*Math.random());e.headingId=i+"-tab",e.panelId=i+"-panel"}}}).directive("uibAccordionHeading",function(){return{transclude:!0,template:"",replace:!0,require:"^uibAccordionGroup",link:function(e,t,n,r,i){r.setHeading(i(e,angular.noop))}}}).directive("uibAccordionTransclude",function(){function e(){return"uib-accordion-header,data-uib-accordion-header,x-uib-accordion-header,uib\\:accordion-header,[uib-accordion-header],[data-uib-accordion-header],[x-uib-accordion-header]"}return{require:"^uibAccordionGroup",link:function(t,n,r,i){t.$watch(function(){return i[r.uibAccordionTransclude]},function(t){if(t){var r=angular.element(n[0].querySelector(e()));r.html(""),r.append(t)}})}}}),angular.module("ui.bootstrap.alert",[]).controller("UibAlertController",["$scope","$element","$attrs","$interpolate","$timeout",function(e,t,n,r,i){e.closeable=!!n.close,t.addClass("alert"),n.$set("role","alert"),e.closeable&&t.addClass("alert-dismissible");var o=angular.isDefined(n.dismissOnTimeout)?r(n.dismissOnTimeout)(e.$parent):null;o&&i(function(){e.close()},parseInt(o,10))}]).directive("uibAlert",function(){return{controller:"UibAlertController",controllerAs:"alert",restrict:"A",templateUrl:function(e,t){return t.templateUrl||"uib/template/alert/alert.html"},transclude:!0,scope:{close:"&"}}}),angular.module("ui.bootstrap.buttons",[]).constant("uibButtonConfig",{activeClass:"active",toggleEvent:"click"}).controller("UibButtonsController",["uibButtonConfig",function(e){this.activeClass=e.activeClass||"active",this.toggleEvent=e.toggleEvent||"click"}]).directive("uibBtnRadio",["$parse",function(e){return{require:["uibBtnRadio","ngModel"],controller:"UibButtonsController",controllerAs:"buttons",link:function(t,n,r,i){var o=i[0],a=i[1],s=e(r.uibUncheckable);n.find("input").css({display:"none"}),a.$render=function(){n.toggleClass(o.activeClass,angular.equals(a.$modelValue,t.$eval(r.uibBtnRadio)))},n.on(o.toggleEvent,function(){if(!r.disabled){var e=n.hasClass(o.activeClass);(!e||angular.isDefined(r.uncheckable))&&t.$apply(function(){a.$setViewValue(e?null:t.$eval(r.uibBtnRadio)),a.$render()})}}),r.uibUncheckable&&t.$watch(s,function(e){r.$set("uncheckable",e?"":void 0)})}}}]).directive("uibBtnCheckbox",function(){return{require:["uibBtnCheckbox","ngModel"],controller:"UibButtonsController",controllerAs:"button",link:function(e,t,n,r){function i(){return a(n.btnCheckboxTrue,!0)}function o(){return a(n.btnCheckboxFalse,!1)}function a(t,n){return angular.isDefined(t)?e.$eval(t):n}var s=r[0],u=r[1];t.find("input").css({display:"none"}),u.$render=function(){t.toggleClass(s.activeClass,angular.equals(u.$modelValue,i()))},t.on(s.toggleEvent,function(){n.disabled||e.$apply(function(){u.$setViewValue(t.hasClass(s.activeClass)?o():i()),u.$render()})})}}}),angular.module("ui.bootstrap.carousel",[]).controller("UibCarouselController",["$scope","$element","$interval","$timeout","$animate",function(e,t,n,r,i){function o(){for(;b.length;)b.shift()}function a(e){for(var t=0;t1){g[r].element.data(v,n.direction);var l=m.getCurrentIndex();angular.isNumber(l)&&g[l].element&&g[l].element.data(v,n.direction),e.$currentTransition=!0,i.on("addClass",g[r].element,function(t,n){if("close"===n&&(e.$currentTransition=null,i.off("addClass",t),b.length)){var r=b.pop().slide,a=r.index,u=a>m.getCurrentIndex()?"next":"prev";o(),s(r,a,u)}})}e.active=n.index,$=n.index,a(r),p()}}function u(e){for(var t=0;t0&&(d=n(f,t))}function f(){var t=+e.interval;h&&!isNaN(t)&&t>0&&g.length?e.next():e.pause()}var d,h,m=this,g=m.slides=e.slides=[],v="uib-slideDirection",$=e.active,b=[],y=!1;t.addClass("carousel"),m.addSlide=function(t,n){g.push({slide:t,element:n}),g.sort(function(e,t){return+e.slide.index-+t.slide.index}),(t.index===e.active||1===g.length&&!angular.isNumber(e.active))&&(e.$currentTransition&&(e.$currentTransition=null),$=t.index,e.active=t.index,a($),m.select(g[u(t)]),1===g.length&&e.play())},m.getCurrentIndex=function(){for(var e=0;e0&&$===n?n>=g.length?($=g.length-1,e.active=$,a($),m.select(g[g.length-1])):($=n,e.active=$,a($),m.select(g[n])):$>n&&($--,e.active=$),0===g.length&&($=null,e.active=null,o())},m.select=e.select=function(t,n){var r=u(t.slide);void 0===n&&(n=r>m.getCurrentIndex()?"next":"prev"),t.slide.index===$||e.$currentTransition?t&&t.slide.index!==$&&e.$currentTransition&&b.push(g[r]):s(t.slide,r,n)},e.indexOfSlide=function(e){return+e.slide.index},e.isActive=function(t){return e.active===t.slide.index},e.isPrevDisabled=function(){return 0===e.active&&e.noWrap()},e.isNextDisabled=function(){return e.active===g.length-1&&e.noWrap()},e.pause=function(){e.noPause||(h=!1,l())},e.play=function(){h||(h=!0,p())},t.on("mouseenter",e.pause),t.on("mouseleave",e.play),e.$on("$destroy",function(){y=!0,l()}),e.$watch("noTransition",function(e){i.enabled(t,!e)}),e.$watch("interval",p),e.$watchCollection("slides",c),e.$watch("active",function(e){if(angular.isNumber(e)&&$!==e){for(var t=0;t-1){var o=!1;e=e.split("");for(var a=i;a-1){e=e.split(""),n[i]="("+r.regex+")",e[i]="$";for(var o=i+1,a=i+r.key.length;a>o;o++)n[o]="",e[o]="$";e=e.join(""),t.push({index:i,key:r.key,apply:r.apply,matcher:r.regex})}}),{regex:new RegExp("^"+n.join("")+"$"),map:r(t,"index")}}function o(e){for(var t,n,r=[],i=0;i=e.length||"'"!==e.charAt(i+1))&&(r.push(a(e,n,i)),n=null);else if(i===e.length)for(;nn?!1:1===t&&n>28?29===n&&(e%4===0&&e%100!==0||e%400===0):3===t||5===t||8===t||10===t?31>n:!0}function l(e){return parseInt(e,10)}function c(e,t){return e&&t?h(e,t):e}function p(e,t){return e&&t?h(e,t,!0):e}function f(e,t){e=e.replace(/:/g,"");var n=Date.parse("Jan 01, 1970 00:00:00 "+e)/6e4;return isNaN(n)?t:n}function d(e,t){return e=new Date(e.getTime()),e.setMinutes(e.getMinutes()+t),e}function h(e,t,n){n=n?-1:1;var r=e.getTimezoneOffset(),i=f(t,r);return d(e,n*(i-r))}var m,g,v=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;this.init=function(){m=t.id,this.parsers={},this.formatters={},g=[{key:"yyyy",regex:"\\d{4}",apply:function(e){this.year=+e},formatter:function(e){var t=new Date;return t.setFullYear(Math.abs(e.getFullYear())),n(t,"yyyy")}},{key:"yy",regex:"\\d{2}",apply:function(e){e=+e,this.year=69>e?e+2e3:e+1900},formatter:function(e){var t=new Date;return t.setFullYear(Math.abs(e.getFullYear())),n(t,"yy")}},{key:"y",regex:"\\d{1,4}",apply:function(e){this.year=+e},formatter:function(e){var t=new Date;return t.setFullYear(Math.abs(e.getFullYear())),n(t,"y")}},{key:"M!",regex:"0?[1-9]|1[0-2]",apply:function(e){this.month=e-1},formatter:function(e){var t=e.getMonth();return/^[0-9]$/.test(t)?n(e,"MM"):n(e,"M")}},{key:"MMMM",regex:t.DATETIME_FORMATS.MONTH.join("|"),apply:function(e){this.month=t.DATETIME_FORMATS.MONTH.indexOf(e)},formatter:function(e){return n(e,"MMMM")}},{key:"MMM",regex:t.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(e){this.month=t.DATETIME_FORMATS.SHORTMONTH.indexOf(e)},formatter:function(e){return n(e,"MMM")}},{key:"MM",regex:"0[1-9]|1[0-2]",apply:function(e){this.month=e-1},formatter:function(e){return n(e,"MM")}},{key:"M",regex:"[1-9]|1[0-2]",apply:function(e){this.month=e-1},formatter:function(e){return n(e,"M")}},{key:"d!",regex:"[0-2]?[0-9]{1}|3[0-1]{1}",apply:function(e){this.date=+e},formatter:function(e){var t=e.getDate();return/^[1-9]$/.test(t)?n(e,"dd"):n(e,"d")}},{key:"dd",regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(e){this.date=+e},formatter:function(e){return n(e,"dd")}},{key:"d",regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(e){this.date=+e},formatter:function(e){return n(e,"d")}},{key:"EEEE",regex:t.DATETIME_FORMATS.DAY.join("|"),formatter:function(e){return n(e,"EEEE")}},{key:"EEE",regex:t.DATETIME_FORMATS.SHORTDAY.join("|"),formatter:function(e){return n(e,"EEE")}},{key:"HH",regex:"(?:0|1)[0-9]|2[0-3]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"HH")}},{key:"hh",regex:"0[0-9]|1[0-2]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"hh")}},{key:"H",regex:"1?[0-9]|2[0-3]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"H")}},{key:"h",regex:"[0-9]|1[0-2]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"h")}},{key:"mm",regex:"[0-5][0-9]",apply:function(e){this.minutes=+e},formatter:function(e){return n(e,"mm")}},{key:"m",regex:"[0-9]|[1-5][0-9]",apply:function(e){this.minutes=+e},formatter:function(e){return n(e,"m")}},{key:"sss",regex:"[0-9][0-9][0-9]",apply:function(e){this.milliseconds=+e},formatter:function(e){return n(e,"sss")}},{key:"ss",regex:"[0-5][0-9]",apply:function(e){this.seconds=+e},formatter:function(e){return n(e,"ss")}},{key:"s",regex:"[0-9]|[1-5][0-9]",apply:function(e){this.seconds=+e},formatter:function(e){return n(e,"s")}},{key:"a",regex:t.DATETIME_FORMATS.AMPMS.join("|"),apply:function(e){12===this.hours&&(this.hours=0),"PM"===e&&(this.hours+=12)},formatter:function(e){return n(e,"a")}},{key:"Z",regex:"[+-]\\d{4}",apply:function(e){var t=e.match(/([+-])(\d{2})(\d{2})/),n=t[1],r=t[2],i=t[3];this.hours+=l(n+r),this.minutes+=l(n+i)},formatter:function(e){return n(e,"Z")}},{key:"ww",regex:"[0-4][0-9]|5[0-3]",formatter:function(e){return n(e,"ww")}},{key:"w",regex:"[0-9]|[1-4][0-9]|5[0-3]",formatter:function(e){return n(e,"w")}},{key:"GGGG",regex:t.DATETIME_FORMATS.ERANAMES.join("|").replace(/\s/g,"\\s"),formatter:function(e){return n(e,"GGGG")}},{key:"GGG",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(e){return n(e,"GGG")}},{key:"GG",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(e){return n(e,"GG")}},{key:"G",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(e){return n(e,"G")}}]},this.init(),this.filter=function(e,n){if(!angular.isDate(e)||isNaN(e)||!n)return"";n=t.DATETIME_FORMATS[n]||n,t.id!==m&&this.init(),this.formatters[n]||(this.formatters[n]=o(n));var r=this.formatters[n];return r.reduce(function(t,n){return t+n(e)},"")},this.parse=function(n,r,o){if(!angular.isString(n)||!r)return n;r=t.DATETIME_FORMATS[r]||r,r=r.replace(v,"\\$&"),t.id!==m&&this.init(),this.parsers[r]||(this.parsers[r]=i(r,"apply"));var a=this.parsers[r],s=a.regex,l=a.map,c=n.match(s),p=!1;if(c&&c.length){var f,d;angular.isDate(o)&&!isNaN(o.getTime())?f={year:o.getFullYear(),month:o.getMonth(),date:o.getDate(),hours:o.getHours(),minutes:o.getMinutes(),seconds:o.getSeconds(),milliseconds:o.getMilliseconds()}:(o&&e.warn("dateparser:","baseDate is not a valid date"),f={year:1900,month:0,date:1,hours:0,minutes:0,seconds:0,milliseconds:0});for(var h=1,g=c.length;g>h;h++){var $=l[h-1];"Z"===$.matcher&&(p=!0),$.apply&&$.apply.call(f,c[h])}var b=p?Date.prototype.setUTCFullYear:Date.prototype.setFullYear,y=p?Date.prototype.setUTCHours:Date.prototype.setHours;return u(f.year,f.month,f.date)&&(!angular.isDate(o)||isNaN(o.getTime())||p?(d=new Date(0),b.call(d,f.year,f.month,f.date),y.call(d,f.hours||0,f.minutes||0,f.seconds||0,f.milliseconds||0)):(d=new Date(o),b.call(d,f.year,f.month,f.date),y.call(d,f.hours,f.minutes,f.seconds,f.milliseconds))),d}},this.toTimezone=c,this.fromTimezone=p,this.timezoneToOffset=f,this.addDateMinutes=d,this.convertTimezoneToLocal=h}]),angular.module("ui.bootstrap.isClass",[]).directive("uibIsClass",["$animate",function(e){var t=/^\s*([\s\S]+?)\s+on\s+([\s\S]+?)\s*$/,n=/^\s*([\s\S]+?)\s+for\s+([\s\S]+?)\s*$/;return{restrict:"A",compile:function(r,i){function o(e,t,n){u.push(e),l.push({scope:e,element:t}),h.forEach(function(t,n){a(t,e)}),e.$on("$destroy",s)}function a(t,r){var i=t.match(n),o=r.$eval(i[1]),a=i[2],s=c[t];if(!s){var u=function(t){var n=null;l.some(function(e){var r=e.scope.$eval(f);return r===t?(n=e,!0):void 0}),s.lastActivated!==n&&(s.lastActivated&&e.removeClass(s.lastActivated.element,o),n&&e.addClass(n.element,o),s.lastActivated=n)};c[t]=s={lastActivated:null,scope:r,watchFn:u,compareWithExp:a,watcher:r.$watch(a,u)}}s.watchFn(r.$eval(a))}function s(e){var t=e.targetScope,n=u.indexOf(t);if(u.splice(n,1),l.splice(n,1),u.length){var r=u[0];angular.forEach(c,function(e){e.scope===t&&(e.watcher=r.$watch(e.compareWithExp,e.watchFn),e.scope=r)})}else c={}}var u=[],l=[],c={},p=i.uibIsClass.match(t),f=p[2],d=p[1],h=d.split(",");return o}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.isClass"]).value("$datepickerSuppressError",!1).value("$datepickerLiteralWarning",!0).constant("uibDatepickerConfig",{datepickerMode:"day",formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",maxDate:null,maxMode:"year",minDate:null,minMode:"day",monthColumns:3,ngModelOptions:{},shortcutPropagation:!1,showWeeks:!0,yearColumns:5,yearRows:4}).controller("UibDatepickerController",["$scope","$element","$attrs","$parse","$interpolate","$locale","$log","dateFilter","uibDatepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","uibDateParser",function(e,t,n,r,i,o,a,s,u,l,c,p){function f(t){e.datepickerMode=t,e.datepickerOptions.datepickerMode=t}var d=this,h={$setViewValue:angular.noop},m={},g=[];t.addClass("uib-datepicker"),n.$set("role","application"),e.datepickerOptions||(e.datepickerOptions={}),this.modes=["day","month","year"],["customClass","dateDisabled","datepickerMode","formatDay","formatDayHeader","formatDayTitle","formatMonth","formatMonthTitle","formatYear","maxDate","maxMode","minDate","minMode","monthColumns","showWeeks","shortcutPropagation","startingDay","yearColumns","yearRows"].forEach(function(t){switch(t){case"customClass":case"dateDisabled":e[t]=e.datepickerOptions[t]||angular.noop;break;case"datepickerMode":e.datepickerMode=angular.isDefined(e.datepickerOptions.datepickerMode)?e.datepickerOptions.datepickerMode:u.datepickerMode;break;case"formatDay":case"formatDayHeader":case"formatDayTitle":case"formatMonth":case"formatMonthTitle":case"formatYear":d[t]=angular.isDefined(e.datepickerOptions[t])?i(e.datepickerOptions[t])(e.$parent):u[t];break;case"monthColumns":case"showWeeks":case"shortcutPropagation":case"yearColumns":case"yearRows":d[t]=angular.isDefined(e.datepickerOptions[t])?e.datepickerOptions[t]:u[t];break;case"startingDay":angular.isDefined(e.datepickerOptions.startingDay)?d.startingDay=e.datepickerOptions.startingDay:angular.isNumber(u.startingDay)?d.startingDay=u.startingDay:d.startingDay=(o.DATETIME_FORMATS.FIRSTDAYOFWEEK+8)%7;break;case"maxDate":case"minDate":e.$watch("datepickerOptions."+t,function(e){e?angular.isDate(e)?d[t]=p.fromTimezone(new Date(e),m.timezone):(l&&a.warn("Literal date support has been deprecated, please switch to date object usage"),d[t]=new Date(s(e,"medium"))):d[t]=u[t]?p.fromTimezone(new Date(u[t]),m.timezone):null,d.refreshView()});break;case"maxMode":case"minMode":e.datepickerOptions[t]?e.$watch(function(){return e.datepickerOptions[t]},function(n){d[t]=e[t]=angular.isDefined(n)?n:e.datepickerOptions[t],("minMode"===t&&d.modes.indexOf(e.datepickerOptions.datepickerMode)d.modes.indexOf(d[t]))&&(e.datepickerMode=d[t],e.datepickerOptions.datepickerMode=d[t])}):d[t]=e[t]=u[t]||null}}),e.uniqueId="datepicker-"+e.$id+"-"+Math.floor(1e4*Math.random()),e.disabled=angular.isDefined(n.disabled)||!1,angular.isDefined(n.ngDisabled)&&g.push(e.$parent.$watch(n.ngDisabled,function(t){e.disabled=t,d.refreshView()})),e.isActive=function(t){return 0===d.compare(t.date,d.activeDate)?(e.activeDateId=t.uid,!0):!1},this.init=function(t){h=t,m=t.$options||e.datepickerOptions.ngModelOptions||u.ngModelOptions,e.datepickerOptions.initDate?(d.activeDate=p.fromTimezone(e.datepickerOptions.initDate,m.timezone)||new Date,e.$watch("datepickerOptions.initDate",function(e){e&&(h.$isEmpty(h.$modelValue)||h.$invalid)&&(d.activeDate=p.fromTimezone(e,m.timezone),d.refreshView())})):d.activeDate=new Date;var n=h.$modelValue?new Date(h.$modelValue):new Date;this.activeDate=isNaN(n)?p.fromTimezone(new Date,m.timezone):p.fromTimezone(n,m.timezone),h.$render=function(){d.render()}},this.render=function(){if(h.$viewValue){var e=new Date(h.$viewValue),t=!isNaN(e);t?this.activeDate=p.fromTimezone(e,m.timezone):c||a.error('Datepicker directive: "ng-model" value must be a Date object')}this.refreshView()},this.refreshView=function(){if(this.element){e.selectedDt=null,this._refreshView(),e.activeDt&&(e.activeDateId=e.activeDt.uid);var t=h.$viewValue?new Date(h.$viewValue):null;t=p.fromTimezone(t,m.timezone),h.$setValidity("dateDisabled",!t||this.element&&!this.isDisabled(t))}},this.createDateObject=function(t,n){var r=h.$viewValue?new Date(h.$viewValue):null;r=p.fromTimezone(r,m.timezone);var i=new Date;i=p.fromTimezone(i,m.timezone);var o=this.compare(t,i),a={date:t,label:p.filter(t,n),selected:r&&0===this.compare(t,r),disabled:this.isDisabled(t),past:0>o,current:0===o,future:o>0,customClass:this.customClass(t)||null};return r&&0===this.compare(t,r)&&(e.selectedDt=a),d.activeDate&&0===this.compare(a.date,d.activeDate)&&(e.activeDt=a),a},this.isDisabled=function(t){return e.disabled||this.minDate&&this.compare(t,this.minDate)<0||this.maxDate&&this.compare(t,this.maxDate)>0||e.dateDisabled&&e.dateDisabled({date:t,mode:e.datepickerMode})},this.customClass=function(t){return e.customClass({date:t,mode:e.datepickerMode})},this.split=function(e,t){for(var n=[];e.length>0;)n.push(e.splice(0,t));return n},e.select=function(t){if(e.datepickerMode===d.minMode){var n=h.$viewValue?p.fromTimezone(new Date(h.$viewValue),m.timezone):new Date(0,0,0,0,0,0,0);n.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),n=p.toTimezone(n,m.timezone),h.$setViewValue(n),h.$render()}else d.activeDate=t,f(d.modes[d.modes.indexOf(e.datepickerMode)-1]),e.$emit("uib:datepicker.mode");e.$broadcast("uib:datepicker.focus")},e.move=function(e){var t=d.activeDate.getFullYear()+e*(d.step.years||0),n=d.activeDate.getMonth()+e*(d.step.months||0);d.activeDate.setFullYear(t,n,1),d.refreshView()},e.toggleMode=function(t){t=t||1,e.datepickerMode===d.maxMode&&1===t||e.datepickerMode===d.minMode&&-1===t||(f(d.modes[d.modes.indexOf(e.datepickerMode)+t]),e.$emit("uib:datepicker.mode"))},e.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};var v=function(){d.element[0].focus()};e.$on("uib:datepicker.focus",v),e.keydown=function(t){var n=e.keys[t.which];if(n&&!t.shiftKey&&!t.altKey&&!e.disabled)if(t.preventDefault(),d.shortcutPropagation||t.stopPropagation(),"enter"===n||"space"===n){if(d.isDisabled(d.activeDate))return;e.select(d.activeDate)}else!t.ctrlKey||"up"!==n&&"down"!==n?(d.handleKeyDown(n,t),d.refreshView()):e.toggleMode("up"===n?1:-1)},t.on("keydown",function(t){e.$apply(function(){e.keydown(t)})}),e.$on("$destroy",function(){for(;g.length;)g.shift()()})}]).controller("UibDaypickerController",["$scope","$element","dateFilter",function(e,t,n){function r(e,t){return 1!==t||e%4!==0||e%100===0&&e%400!==0?o[t]:29}function i(e){var t=new Date(e);t.setDate(t.getDate()+4-(t.getDay()||7));var n=t.getTime();return t.setMonth(0),t.setDate(1),Math.floor(Math.round((n-t)/864e5)/7)+1}var o=[31,28,31,30,31,30,31,31,30,31,30,31];this.step={months:1},this.element=t,this.init=function(t){angular.extend(t,this),e.showWeeks=t.showWeeks,t.refreshView()},this.getDates=function(e,t){for(var n,r=new Array(t),i=new Date(e),o=0;t>o;)n=new Date(i),r[o++]=n,i.setDate(i.getDate()+1);return r},this._refreshView=function(){var t=this.activeDate.getFullYear(),r=this.activeDate.getMonth(),o=new Date(this.activeDate);o.setFullYear(t,r,1);var a=this.startingDay-o.getDay(),s=a>0?7-a:-a,u=new Date(o);s>0&&u.setDate(-s+1);for(var l=this.getDates(u,42),c=0;42>c;c++)l[c]=angular.extend(this.createDateObject(l[c],this.formatDay),{secondary:l[c].getMonth()!==r,uid:e.uniqueId+"-"+c});e.labels=new Array(7);for(var p=0;7>p;p++)e.labels[p]={abbr:n(l[p].date,this.formatDayHeader),full:n(l[p].date,"EEEE")};if(e.title=n(this.activeDate,this.formatDayTitle),e.rows=this.split(l,7),e.showWeeks){e.weekNumbers=[];for(var f=(11-this.startingDay)%7,d=e.rows.length,h=0;d>h;h++)e.weekNumbers.push(i(e.rows[h][f].date))}},this.compare=function(e,t){var n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),r=new Date(t.getFullYear(),t.getMonth(),t.getDate());return n.setFullYear(e.getFullYear()),r.setFullYear(t.getFullYear()),n-r},this.handleKeyDown=function(e,t){var n=this.activeDate.getDate();if("left"===e)n-=1;else if("up"===e)n-=7;else if("right"===e)n+=1;else if("down"===e)n+=7;else if("pageup"===e||"pagedown"===e){var i=this.activeDate.getMonth()+("pageup"===e?-1:1);this.activeDate.setMonth(i,1),n=Math.min(r(this.activeDate.getFullYear(),this.activeDate.getMonth()),n)}else"home"===e?n=1:"end"===e&&(n=r(this.activeDate.getFullYear(),this.activeDate.getMonth()));this.activeDate.setDate(n)}}]).controller("UibMonthpickerController",["$scope","$element","dateFilter",function(e,t,n){this.step={years:1},this.element=t,this.init=function(e){angular.extend(e,this),e.refreshView()},this._refreshView=function(){for(var t,r=new Array(12),i=this.activeDate.getFullYear(),o=0;12>o;o++)t=new Date(this.activeDate),t.setFullYear(i,o,1),r[o]=angular.extend(this.createDateObject(t,this.formatMonth),{uid:e.uniqueId+"-"+o});e.title=n(this.activeDate,this.formatMonthTitle),e.rows=this.split(r,this.monthColumns),e.yearHeaderColspan=this.monthColumns>3?this.monthColumns-2:1},this.compare=function(e,t){var n=new Date(e.getFullYear(),e.getMonth()),r=new Date(t.getFullYear(),t.getMonth());return n.setFullYear(e.getFullYear()),r.setFullYear(t.getFullYear()),n-r},this.handleKeyDown=function(e,t){var n=this.activeDate.getMonth();if("left"===e)n-=1;else if("up"===e)n-=this.monthColumns;else if("right"===e)n+=1;else if("down"===e)n+=this.monthColumns;else if("pageup"===e||"pagedown"===e){var r=this.activeDate.getFullYear()+("pageup"===e?-1:1);this.activeDate.setFullYear(r)}else"home"===e?n=0:"end"===e&&(n=11);this.activeDate.setMonth(n)}}]).controller("UibYearpickerController",["$scope","$element","dateFilter",function(e,t,n){function r(e){return parseInt((e-1)/o,10)*o+1}var i,o;this.element=t,this.yearpickerInit=function(){i=this.yearColumns,o=this.yearRows*i,this.step={years:o}},this._refreshView=function(){for(var t,n=new Array(o),a=0,s=r(this.activeDate.getFullYear());o>a;a++)t=new Date(this.activeDate),t.setFullYear(s+a,0,1),n[a]=angular.extend(this.createDateObject(t,this.formatYear),{uid:e.uniqueId+"-"+a});e.title=[n[0].label,n[o-1].label].join(" - "),e.rows=this.split(n,i),e.columns=i},this.compare=function(e,t){return e.getFullYear()-t.getFullYear()},this.handleKeyDown=function(e,t){var n=this.activeDate.getFullYear();"left"===e?n-=1:"up"===e?n-=i:"right"===e?n+=1:"down"===e?n+=i:"pageup"===e||"pagedown"===e?n+=("pageup"===e?-1:1)*o:"home"===e?n=r(this.activeDate.getFullYear()):"end"===e&&(n=r(this.activeDate.getFullYear())+o-1),this.activeDate.setFullYear(n)}}]).directive("uibDatepicker",function(){return{templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/datepicker.html"},scope:{datepickerOptions:"=?"},require:["uibDatepicker","^ngModel"],restrict:"A",controller:"UibDatepickerController",controllerAs:"datepicker",link:function(e,t,n,r){var i=r[0],o=r[1];i.init(o)}}}).directive("uibDaypicker",function(){return{templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/day.html"},require:["^uibDatepicker","uibDaypicker"],restrict:"A",controller:"UibDaypickerController",link:function(e,t,n,r){var i=r[0],o=r[1];o.init(i)}}}).directive("uibMonthpicker",function(){return{templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/month.html"},require:["^uibDatepicker","uibMonthpicker"],restrict:"A",controller:"UibMonthpickerController",link:function(e,t,n,r){var i=r[0],o=r[1];o.init(i)}}}).directive("uibYearpicker",function(){return{templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/year.html"},require:["^uibDatepicker","uibYearpicker"],restrict:"A",controller:"UibYearpickerController",link:function(e,t,n,r){var i=r[0];angular.extend(i,r[1]),i.yearpickerInit(),i.refreshView()}}}),angular.module("ui.bootstrap.position",[]).factory("$uibPosition",["$document","$window",function(e,t){var n,r,i={normal:/(auto|scroll)/, -hidden:/(auto|scroll|hidden)/},o={auto:/\s?auto?\s?/i,primary:/^(top|bottom|left|right)$/,secondary:/^(top|bottom|left|right|center)$/,vertical:/^(top|bottom)$/},a=/(HTML|BODY)/;return{getRawNode:function(e){return e.nodeName?e:e[0]||e},parseStyle:function(e){return e=parseFloat(e),isFinite(e)?e:0},offsetParent:function(n){function r(e){return"static"===(t.getComputedStyle(e).position||"static")}n=this.getRawNode(n);for(var i=n.offsetParent||e[0].documentElement;i&&i!==e[0].documentElement&&r(i);)i=i.offsetParent;return i||e[0].documentElement},scrollbarWidth:function(i){if(i){if(angular.isUndefined(r)){var o=e.find("body");o.addClass("uib-position-body-scrollbar-measure"),r=t.innerWidth-o[0].clientWidth,r=isFinite(r)?r:0,o.removeClass("uib-position-body-scrollbar-measure")}return r}if(angular.isUndefined(n)){var a=angular.element('
');e.find("body").append(a),n=a[0].offsetWidth-a[0].clientWidth,n=isFinite(n)?n:0,a.remove()}return n},scrollbarPadding:function(e){e=this.getRawNode(e);var n=t.getComputedStyle(e),r=this.parseStyle(n.paddingRight),i=this.parseStyle(n.paddingBottom),o=this.scrollParent(e,!1,!0),s=this.scrollbarWidth(o,a.test(o.tagName));return{scrollbarWidth:s,widthOverflow:o.scrollWidth>o.clientWidth,right:r+s,originalRight:r,heightOverflow:o.scrollHeight>o.clientHeight,bottom:i+s,originalBottom:i}},isScrollable:function(e,n){e=this.getRawNode(e);var r=n?i.hidden:i.normal,o=t.getComputedStyle(e);return r.test(o.overflow+o.overflowY+o.overflowX)},scrollParent:function(n,r,o){n=this.getRawNode(n);var a=r?i.hidden:i.normal,s=e[0].documentElement,u=t.getComputedStyle(n);if(o&&a.test(u.overflow+u.overflowY+u.overflowX))return n;var l="absolute"===u.position,c=n.parentElement||s;if(c===s||"fixed"===u.position)return s;for(;c.parentElement&&c!==s;){var p=t.getComputedStyle(c);if(l&&"static"!==p.position&&(l=!1),!l&&a.test(p.overflow+p.overflowY+p.overflowX))break;c=c.parentElement}return c},position:function(n,r){n=this.getRawNode(n);var i=this.offset(n);if(r){var o=t.getComputedStyle(n);i.top-=this.parseStyle(o.marginTop),i.left-=this.parseStyle(o.marginLeft)}var a=this.offsetParent(n),s={top:0,left:0};return a!==e[0].documentElement&&(s=this.offset(a),s.top+=a.clientTop-a.scrollTop,s.left+=a.clientLeft-a.scrollLeft),{width:Math.round(angular.isNumber(i.width)?i.width:n.offsetWidth),height:Math.round(angular.isNumber(i.height)?i.height:n.offsetHeight),top:Math.round(i.top-s.top),left:Math.round(i.left-s.left)}},offset:function(n){n=this.getRawNode(n);var r=n.getBoundingClientRect();return{width:Math.round(angular.isNumber(r.width)?r.width:n.offsetWidth),height:Math.round(angular.isNumber(r.height)?r.height:n.offsetHeight),top:Math.round(r.top+(t.pageYOffset||e[0].documentElement.scrollTop)),left:Math.round(r.left+(t.pageXOffset||e[0].documentElement.scrollLeft))}},viewportOffset:function(n,r,i){n=this.getRawNode(n),i=i!==!1?!0:!1;var o=n.getBoundingClientRect(),a={top:0,left:0,bottom:0,right:0},s=r?e[0].documentElement:this.scrollParent(n),u=s.getBoundingClientRect();if(a.top=u.top+s.clientTop,a.left=u.left+s.clientLeft,s===e[0].documentElement&&(a.top+=t.pageYOffset,a.left+=t.pageXOffset),a.bottom=a.top+s.clientHeight,a.right=a.left+s.clientWidth,i){var l=t.getComputedStyle(s);a.top+=this.parseStyle(l.paddingTop),a.bottom-=this.parseStyle(l.paddingBottom),a.left+=this.parseStyle(l.paddingLeft),a.right-=this.parseStyle(l.paddingRight)}return{top:Math.round(o.top-a.top),bottom:Math.round(a.bottom-o.bottom),left:Math.round(o.left-a.left),right:Math.round(a.right-o.right)}},parsePlacement:function(e){var t=o.auto.test(e);return t&&(e=e.replace(o.auto,"")),e=e.split("-"),e[0]=e[0]||"top",o.primary.test(e[0])||(e[0]="top"),e[1]=e[1]||"center",o.secondary.test(e[1])||(e[1]="center"),t?e[2]=!0:e[2]=!1,e},positionElements:function(e,n,r,i){e=this.getRawNode(e),n=this.getRawNode(n);var a=angular.isDefined(n.offsetWidth)?n.offsetWidth:n.prop("offsetWidth"),s=angular.isDefined(n.offsetHeight)?n.offsetHeight:n.prop("offsetHeight");r=this.parsePlacement(r);var u=i?this.offset(e):this.position(e),l={top:0,left:0,placement:""};if(r[2]){var c=this.viewportOffset(e,i),p=t.getComputedStyle(n),f={width:a+Math.round(Math.abs(this.parseStyle(p.marginLeft)+this.parseStyle(p.marginRight))),height:s+Math.round(Math.abs(this.parseStyle(p.marginTop)+this.parseStyle(p.marginBottom)))};if(r[0]="top"===r[0]&&f.height>c.top&&f.height<=c.bottom?"bottom":"bottom"===r[0]&&f.height>c.bottom&&f.height<=c.top?"top":"left"===r[0]&&f.width>c.left&&f.width<=c.right?"right":"right"===r[0]&&f.width>c.right&&f.width<=c.left?"left":r[0],r[1]="top"===r[1]&&f.height-u.height>c.bottom&&f.height-u.height<=c.top?"bottom":"bottom"===r[1]&&f.height-u.height>c.top&&f.height-u.height<=c.bottom?"top":"left"===r[1]&&f.width-u.width>c.right&&f.width-u.width<=c.left?"right":"right"===r[1]&&f.width-u.width>c.left&&f.width-u.width<=c.right?"left":r[1],"center"===r[1])if(o.vertical.test(r[0])){var d=u.width/2-a/2;c.left+d<0&&f.width-u.width<=c.right?r[1]="left":c.right+d<0&&f.width-u.width<=c.left&&(r[1]="right")}else{var h=u.height/2-f.height/2;c.top+h<0&&f.height-u.height<=c.bottom?r[1]="top":c.bottom+h<0&&f.height-u.height<=c.top&&(r[1]="bottom")}}switch(r[0]){case"top":l.top=u.top-s;break;case"bottom":l.top=u.top+u.height;break;case"left":l.left=u.left-a;break;case"right":l.left=u.left+u.width}switch(r[1]){case"top":l.top=u.top;break;case"bottom":l.top=u.top+u.height-s;break;case"left":l.left=u.left;break;case"right":l.left=u.left+u.width-a;break;case"center":o.vertical.test(r[0])?l.left=u.left+u.width/2-a/2:l.top=u.top+u.height/2-s/2}return l.top=Math.round(l.top),l.left=Math.round(l.left),l.placement="center"===r[1]?r[0]:r[0]+"-"+r[1],l},adjustTop:function(e,t,n,r){return-1!==e.indexOf("top")&&n!==r?{top:t.top-r+"px"}:void 0},positionArrow:function(e,n){e=this.getRawNode(e);var r=e.querySelector(".tooltip-inner, .popover-inner");if(r){var i=angular.element(r).hasClass("tooltip-inner"),a=i?e.querySelector(".tooltip-arrow"):e.querySelector(".arrow");if(a){var s={top:"",bottom:"",left:"",right:""};if(n=this.parsePlacement(n),"center"===n[1])return void angular.element(a).css(s);var u="border-"+n[0]+"-width",l=t.getComputedStyle(a)[u],c="border-";c+=o.vertical.test(n[0])?n[0]+"-"+n[1]:n[1]+"-"+n[0],c+="-radius";var p=t.getComputedStyle(i?r:e)[c];switch(n[0]){case"top":s.bottom=i?"0":"-"+l;break;case"bottom":s.top=i?"0":"-"+l;break;case"left":s.right=i?"0":"-"+l;break;case"right":s.left=i?"0":"-"+l}s[n[1]]=p,angular.element(a).css(s)}}}}}]),angular.module("ui.bootstrap.datepickerPopup",["ui.bootstrap.datepicker","ui.bootstrap.position"]).value("$datepickerPopupLiteralWarning",!0).constant("uibDatepickerPopupConfig",{altInputFormats:[],appendToBody:!1,clearText:"Clear",closeOnDateSelection:!0,closeText:"Done",currentText:"Today",datepickerPopup:"yyyy-MM-dd",datepickerPopupTemplateUrl:"uib/template/datepickerPopup/popup.html",datepickerTemplateUrl:"uib/template/datepicker/datepicker.html",html5Types:{date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm:ss.sss",month:"yyyy-MM"},onOpenFocus:!0,showButtonBar:!0,placement:"auto bottom-left"}).controller("UibDatepickerPopupController",["$scope","$element","$attrs","$compile","$log","$parse","$window","$document","$rootScope","$uibPosition","dateFilter","uibDateParser","uibDatepickerPopupConfig","$timeout","uibDatepickerConfig","$datepickerPopupLiteralWarning",function(e,t,n,r,i,o,a,s,u,l,c,p,f,d,h,m){function g(t){var n=p.parse(t,x,e.date);if(isNaN(n))for(var r=0;r
"),D.attr({"ng-model":"date","ng-change":"dateSelection(date)","template-url":T}),A=angular.element(D.children()[0]),A.attr("template-url",E),e.datepickerOptions||(e.datepickerOptions={}),I&&"month"===n.type&&(e.datepickerOptions.datepickerMode="month",e.datepickerOptions.minMode="month"),A.attr("datepicker-options","datepickerOptions"),I?O.$formatters.push(function(t){return e.date=p.fromTimezone(t,P.timezone),t}):(O.$$parserName="date",O.$validators.date=$,O.$parsers.unshift(v),O.$formatters.push(function(t){return O.$isEmpty(t)?(e.date=t,t):(angular.isNumber(t)&&(t=new Date(t)),e.date=p.fromTimezone(t,P.timezone),p.filter(e.date,x))})),O.$viewChangeListeners.push(function(){e.date=g(O.$viewValue)}),t.on("keydown",y),N=r(D)(e),D.remove(),C?s.find("body").append(N):t.after(N),e.$on("$destroy",function(){for(e.isOpen===!0&&(u.$$phase||e.$apply(function(){e.isOpen=!1})),N.remove(),t.off("keydown",y),s.off("click",b),M&&M.off("scroll",w),angular.element(a).off("resize",w);q.length;)q.shift()()})},e.getText=function(t){return e[t+"Text"]||f[t+"Text"]},e.isDisabled=function(t){"today"===t&&(t=p.fromTimezone(new Date,P.timezone));var n={};return angular.forEach(["minDate","maxDate"],function(t){e.datepickerOptions[t]?angular.isDate(e.datepickerOptions[t])?n[t]=new Date(e.datepickerOptions[t]):(m&&i.warn("Literal date support has been deprecated, please switch to date object usage"),n[t]=new Date(c(e.datepickerOptions[t],"medium"))):n[t]=null}),e.datepickerOptions&&n.minDate&&e.compare(t,n.minDate)<0||n.maxDate&&e.compare(t,n.maxDate)>0},e.compare=function(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate())-new Date(t.getFullYear(),t.getMonth(),t.getDate())},e.dateSelection=function(n){e.date=n;var r=e.date?p.filter(e.date,x):null;t.val(r),O.$setViewValue(r),k&&(e.isOpen=!1,t[0].focus())},e.keydown=function(n){27===n.which&&(n.stopPropagation(),e.isOpen=!1,t[0].focus())},e.select=function(t,n){if(n.stopPropagation(),"today"===t){var r=new Date;angular.isDate(e.date)?(t=new Date(e.date),t.setFullYear(r.getFullYear(),r.getMonth(),r.getDate())):(t=p.fromTimezone(r,P.timezone),t.setHours(0,0,0,0))}e.dateSelection(t)},e.close=function(n){n.stopPropagation(),e.isOpen=!1,t[0].focus()},e.disabled=angular.isDefined(n.disabled)||!1,n.ngDisabled&&q.push(e.$parent.$watch(o(n.ngDisabled),function(t){e.disabled=t})),e.$watch("isOpen",function(r){r?e.disabled?e.isOpen=!1:d(function(){w(),S&&e.$broadcast("uib:datepicker.focus"),s.on("click",b);var r=n.popupPlacement?n.popupPlacement:f.placement;C||l.parsePlacement(r)[2]?(M=M||angular.element(l.scrollParent(t)),M&&M.on("scroll",w)):M=null,angular.element(a).on("resize",w)},0,!1):(s.off("click",b),M&&M.off("scroll",w),angular.element(a).off("resize",w))}),e.$on("uib:datepicker.mode",function(){d(w,0,!1)})}]).directive("uibDatepickerPopup",function(){return{require:["ngModel","uibDatepickerPopup"],controller:"UibDatepickerPopupController",scope:{datepickerOptions:"=?",isOpen:"=?",currentText:"@",clearText:"@",closeText:"@"},link:function(e,t,n,r){var i=r[0],o=r[1];o.init(i)}}}).directive("uibDatepickerPopupWrap",function(){return{restrict:"A",transclude:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/datepickerPopup/popup.html"}}}),angular.module("ui.bootstrap.debounce",[]).factory("$$debounce",["$timeout",function(e){return function(t,n){var r;return function(){var i=this,o=Array.prototype.slice.call(arguments);r&&e.cancel(r),r=e(function(){t.apply(i,o)},n)}}}]),angular.module("ui.bootstrap.dropdown",["ui.bootstrap.position"]).constant("uibDropdownConfig",{appendToOpenClass:"uib-dropdown-open",openClass:"open"}).service("uibDropdownService",["$document","$rootScope",function(e,t){var n=null;this.open=function(t,i){n||e.on("click",r),n&&n!==t&&(n.isOpen=!1),n=t},this.close=function(t,i){n===t&&(n=null,e.off("click",r),e.off("keydown",this.keybindFilter))};var r=function(e){if(n&&!(e&&"disabled"===n.getAutoClose()||e&&3===e.which)){var r=n.getToggleElement();if(!(e&&r&&r[0].contains(e.target))){var i=n.getDropdownElement();e&&"outsideClick"===n.getAutoClose()&&i&&i[0].contains(e.target)||(n.focusToggleElement(),n.isOpen=!1,t.$$phase||n.$apply())}}};this.keybindFilter=function(e){var t=n.getDropdownElement(),i=n.getToggleElement(),o=t&&t[0].contains(e.target),a=i&&i[0].contains(e.target);27===e.which?(e.stopPropagation(),n.focusToggleElement(),r()):n.isKeynavEnabled()&&-1!==[38,40].indexOf(e.which)&&n.isOpen&&(o||a)&&(e.preventDefault(),e.stopPropagation(),n.focusDropdownEntry(e.which))}}]).controller("UibDropdownController",["$scope","$element","$attrs","$parse","uibDropdownConfig","uibDropdownService","$animate","$uibPosition","$document","$compile","$templateRequest",function(e,t,n,r,i,o,a,s,u,l,c){var p,f,d=this,h=e.$new(),m=i.appendToOpenClass,g=i.openClass,v=angular.noop,$=n.onToggle?r(n.onToggle):angular.noop,b=!1,y=null,w=!1,x=u.find("body");t.addClass("dropdown"),this.init=function(){if(n.isOpen&&(f=r(n.isOpen),v=f.assign,e.$watch(f,function(e){h.isOpen=!!e})),angular.isDefined(n.dropdownAppendTo)){var i=r(n.dropdownAppendTo)(h);i&&(y=angular.element(i))}b=angular.isDefined(n.dropdownAppendToBody),w=angular.isDefined(n.keyboardNav),b&&!y&&(y=x),y&&d.dropdownMenu&&(y.append(d.dropdownMenu),t.on("$destroy",function(){d.dropdownMenu.remove()}))},this.toggle=function(e){return h.isOpen=arguments.length?!!e:!h.isOpen,angular.isFunction(v)&&v(h,h.isOpen),h.isOpen},this.isOpen=function(){return h.isOpen},h.getToggleElement=function(){return d.toggleElement},h.getAutoClose=function(){return n.autoClose||"always"},h.getElement=function(){return t},h.isKeynavEnabled=function(){return w},h.focusDropdownEntry=function(e){var n=d.dropdownMenu?angular.element(d.dropdownMenu).find("a"):t.find("ul").eq(0).find("a");switch(e){case 40:angular.isNumber(d.selectedOption)?d.selectedOption=d.selectedOption===n.length-1?d.selectedOption:d.selectedOption+1:d.selectedOption=0;break;case 38:angular.isNumber(d.selectedOption)?d.selectedOption=0===d.selectedOption?0:d.selectedOption-1:d.selectedOption=n.length-1}n[d.selectedOption].focus()},h.getDropdownElement=function(){return d.dropdownMenu},h.focusToggleElement=function(){d.toggleElement&&d.toggleElement[0].focus()},h.$watch("isOpen",function(n,r){if(y&&d.dropdownMenu){var i,f,w,x=s.positionElements(t,d.dropdownMenu,"bottom-left",!0),k=0;if(i={top:x.top+"px",display:n?"block":"none"},f=d.dropdownMenu.hasClass("dropdown-menu-right"),f?(i.left="auto",w=s.scrollbarPadding(y),w.heightOverflow&&w.scrollbarWidth&&(k=w.scrollbarWidth),i.right=window.innerWidth-k-(x.left+t.prop("offsetWidth"))+"px"):(i.left=x.left+"px",i.right="auto"),!b){var C=s.offset(y);i.top=x.top-C.top+"px",f?i.right=window.innerWidth-(x.left-C.left+t.prop("offsetWidth"))+"px":i.left=x.left-C.left+"px"}d.dropdownMenu.css(i)}var S=y?y:t,T=S.hasClass(y?m:g);if(T===!n&&a[n?"addClass":"removeClass"](S,y?m:g).then(function(){angular.isDefined(n)&&n!==r&&$(e,{open:!!n})}),n)d.dropdownMenuTemplateUrl?c(d.dropdownMenuTemplateUrl).then(function(e){p=h.$new(),l(e.trim())(p,function(e){var t=e;d.dropdownMenu.replaceWith(t),d.dropdownMenu=t,u.on("keydown",o.keybindFilter)})}):u.on("keydown",o.keybindFilter),h.focusToggleElement(),o.open(h,t);else{if(o.close(h,t),d.dropdownMenuTemplateUrl){p&&p.$destroy();var E=angular.element('');d.dropdownMenu.replaceWith(E),d.dropdownMenu=E}d.selectedOption=null}angular.isFunction(v)&&v(e,n)})}]).directive("uibDropdown",function(){return{controller:"UibDropdownController",link:function(e,t,n,r){r.init()}}}).directive("uibDropdownMenu",function(){return{restrict:"A",require:"?^uibDropdown",link:function(e,t,n,r){if(r&&!angular.isDefined(n.dropdownNested)){t.addClass("dropdown-menu");var i=n.templateUrl;i&&(r.dropdownMenuTemplateUrl=i),r.dropdownMenu||(r.dropdownMenu=t)}}}}).directive("uibDropdownToggle",function(){return{require:"?^uibDropdown",link:function(e,t,n,r){if(r){t.addClass("dropdown-toggle"),r.toggleElement=t;var i=function(i){i.preventDefault(),t.hasClass("disabled")||n.disabled||e.$apply(function(){r.toggle()})};t.bind("click",i),t.attr({"aria-haspopup":!0,"aria-expanded":!1}),e.$watch(r.isOpen,function(e){t.attr("aria-expanded",!!e)}),e.$on("$destroy",function(){t.unbind("click",i)})}}}}),angular.module("ui.bootstrap.stackedMap",[]).factory("$$stackedMap",function(){return{createNew:function(){var e=[];return{add:function(t,n){e.push({key:t,value:n})},get:function(t){for(var n=0;n-1&&S>e&&(e=S),e}function f(e,t){var n=x.get(e).value,r=n.appendTo;x.remove(e),T=x.top(),T&&(S=parseInt(T.value.modalDomEl.attr("index"),10)),m(n.modalDomEl,n.modalScope,function(){var t=n.openedClass||w;k.remove(t,e);var i=k.hasKey(t);r.toggleClass(t,i),!i&&y&&y.heightOverflow&&y.scrollbarWidth&&(y.originalRight?r.css({paddingRight:y.originalRight+"px"}):r.css({paddingRight:""}),y=null),d(!0)},n.closedDeferred),h(),t&&t.focus?t.focus():r.focus&&r.focus()}function d(e){var t;x.length()>0&&(t=x.top().value,t.modalDomEl.toggleClass(t.windowTopClass||"",e))}function h(){if($&&-1===p()){var e=b;m($,b,function(){e=null}),$=void 0,b=void 0}}function m(t,n,r,i){function a(){a.done||(a.done=!0,e.leave(t).then(function(){r&&r(),t.remove(),i&&i.resolve()}),n.$destroy())}var s,u=null,l=function(){return s||(s=o.defer(),u=s.promise),function(){s.resolve()}};return n.$broadcast(C.NOW_CLOSING_EVENT,l),o.when(u).then(a)}function g(e){if(e.isDefaultPrevented())return e;var t=x.top();if(t)switch(e.which){case 27:t.value.keyboard&&(e.preventDefault(),i.$apply(function(){C.dismiss(t.key,"escape key press")}));break;case 9:var n=C.loadFocusElementList(t),r=!1;e.shiftKey?(C.isFocusInFirstItem(e,n)||C.isModalFocused(e,t))&&(r=C.focusLastFocusableElement(n)):C.isFocusInLastItem(e,n)&&(r=C.focusFirstFocusableElement(n)),r&&(e.preventDefault(),e.stopPropagation())}}function v(e,t,n){return!e.value.modalScope.$broadcast("modal.closing",t,n).defaultPrevented}var $,b,y,w="modal-open",x=s.createNew(),k=a.createNew(),C={NOW_CLOSING_EVENT:"modal.stack.now-closing"},S=0,T=null,E="a[href], area[href], input:not([disabled]):not([tabindex='-1']), button:not([disabled]):not([tabindex='-1']),select:not([disabled]):not([tabindex='-1']), textarea:not([disabled]):not([tabindex='-1']), iframe, object, embed, *[tabindex]:not([tabindex='-1']), *[contenteditable=true]",D=/[A-Z]/g;return i.$watch(p,function(e){b&&(b.index=e)}),n.on("keydown",g),i.$on("$destroy",function(){n.off("keydown",g)}),C.open=function(t,o){var a=n[0].activeElement,s=o.openedClass||w;d(!1),T=x.top(),x.add(t,{deferred:o.deferred,renderDeferred:o.renderDeferred,closedDeferred:o.closedDeferred,modalScope:o.scope,backdrop:o.backdrop,keyboard:o.keyboard,openedClass:o.openedClass,windowTopClass:o.windowTopClass,animation:o.animation,appendTo:o.appendTo}),k.put(s,t);var c=o.appendTo,f=p();if(!c.length)throw new Error("appendTo element not found. Make sure that the element passed is in DOM.");f>=0&&!$&&(b=i.$new(!0),b.modalOptions=o,b.index=f,$=angular.element('
'),$.attr({"class":"modal-backdrop","ng-style":"{'z-index': 1040 + (index && 1 || 0) + index*10}","uib-modal-animation-class":"fade","modal-in-class":"in"}),o.backdropClass&&$.addClass(o.backdropClass),o.animation&&$.attr("modal-animation","true"),r($)(b),e.enter($,c),u.isScrollable(c)&&(y=u.scrollbarPadding(c),y.heightOverflow&&y.scrollbarWidth&&c.css({paddingRight:y.right+"px"})));var h;o.component?(h=document.createElement(l(o.component.name)),h=angular.element(h),h.attr({resolve:"$resolve","modal-instance":"$uibModalInstance",close:"$close($value)",dismiss:"$dismiss($value)"})):h=o.content,S=T?parseInt(T.value.modalDomEl.attr("index"),10)+1:0;var m=angular.element('
');m.attr({"class":"modal","template-url":o.windowTemplateUrl,"window-top-class":o.windowTopClass,role:"dialog","aria-labelledby":o.ariaLabelledBy,"aria-describedby":o.ariaDescribedBy,size:o.size,index:S,animate:"animate","ng-style":"{'z-index': 1050 + $$topModalIndex*10, display: 'block'}",tabindex:-1,"uib-modal-animation-class":"fade","modal-in-class":"in"}).append(h),o.windowClass&&m.addClass(o.windowClass),o.animation&&m.attr("modal-animation","true"),c.addClass(s),o.scope&&(o.scope.$$topModalIndex=S),e.enter(r(m)(o.scope),c),x.top().value.modalDomEl=m,x.top().value.modalOpener=a},C.close=function(e,t){var n=x.get(e);return n&&v(n,t,!0)?(n.value.modalScope.$$uibDestructionScheduled=!0,n.value.deferred.resolve(t),f(e,n.value.modalOpener),!0):!n},C.dismiss=function(e,t){var n=x.get(e);return n&&v(n,t,!1)?(n.value.modalScope.$$uibDestructionScheduled=!0,n.value.deferred.reject(t),f(e,n.value.modalOpener),!0):!n},C.dismissAll=function(e){for(var t=this.getTop();t&&this.dismiss(t.key,e);)t=this.getTop()},C.getTop=function(){return x.top()},C.modalRendered=function(e){var t=x.get(e);t&&t.value.renderDeferred.resolve()},C.focusFirstFocusableElement=function(e){return e.length>0?(e[0].focus(),!0):!1},C.focusLastFocusableElement=function(e){return e.length>0?(e[e.length-1].focus(),!0):!1},C.isModalFocused=function(e,t){if(e&&t){var n=t.value.modalDomEl;if(n&&n.length)return(e.target||e.srcElement)===n[0]}return!1},C.isFocusInFirstItem=function(e,t){return t.length>0?(e.target||e.srcElement)===t[0]:!1},C.isFocusInLastItem=function(e,t){return t.length>0?(e.target||e.srcElement)===t[t.length-1]:!1},C.loadFocusElementList=function(e){if(e){var t=e.value.modalDomEl;if(t&&t.length){var n=t[0].querySelectorAll(E);return n?Array.prototype.filter.call(n,function(e){return c(e)}):n}}},C}]).provider("$uibModal",function(){var e={options:{animation:!0,backdrop:!0,keyboard:!0},$get:["$rootScope","$q","$document","$templateRequest","$controller","$uibResolve","$uibModalStack",function(t,n,r,i,o,a,s){function u(e){return e.template?n.when(e.template):i(angular.isFunction(e.templateUrl)?e.templateUrl():e.templateUrl)}var l={},c=null;return l.getPromiseChain=function(){return c},l.open=function(i){function l(){return g}var p=n.defer(),f=n.defer(),d=n.defer(),h=n.defer(),m={result:p.promise,opened:f.promise,closed:d.promise,rendered:h.promise,close:function(e){return s.close(m,e)},dismiss:function(e){return s.dismiss(m,e)}};if(i=angular.extend({},e.options,i),i.resolve=i.resolve||{},i.appendTo=i.appendTo||r.find("body").eq(0),!i.component&&!i.template&&!i.templateUrl)throw new Error("One of component or template or templateUrl options is required.");var g;g=i.component?n.when(a.resolve(i.resolve,{},null,null)):n.all([u(i),a.resolve(i.resolve,{},null,null)]);var v;return v=c=n.all([c]).then(l,l).then(function(e){function n(t,n,r,i){t.$scope=a,t.$scope.$resolve={},r?t.$scope.$uibModalInstance=m:t.$uibModalInstance=m;var o=n?e[1]:e;angular.forEach(o,function(e,n){i&&(t[n]=e),t.$scope.$resolve[n]=e})}var r=i.scope||t,a=r.$new();a.$close=m.close,a.$dismiss=m.dismiss,a.$on("$destroy",function(){a.$$uibDestructionScheduled||a.$dismiss("$uibUnscheduledDestruction")});var u,l,c={scope:a,deferred:p,renderDeferred:h,closedDeferred:d,animation:i.animation,backdrop:i.backdrop,keyboard:i.keyboard,backdropClass:i.backdropClass,windowTopClass:i.windowTopClass,windowClass:i.windowClass,windowTemplateUrl:i.windowTemplateUrl,ariaLabelledBy:i.ariaLabelledBy,ariaDescribedBy:i.ariaDescribedBy,size:i.size,openedClass:i.openedClass,appendTo:i.appendTo},g={},v={};i.component?(n(g,!1,!0,!1),g.name=i.component,c.component=g):i.controller&&(n(v,!0,!1,!0),l=o(i.controller,v,!0,i.controllerAs),i.controllerAs&&i.bindToController&&(u=l.instance,u.$close=a.$close,u.$dismiss=a.$dismiss,angular.extend(u,{$resolve:v.$scope.$resolve},r)),u=l(),angular.isFunction(u.$onInit)&&u.$onInit()),i.component||(c.content=e[0]),s.open(m,c),f.resolve(!0)},function(e){f.reject(e),p.reject(e)})["finally"](function(){c===v&&(c=null)}),m},l}]};return e}),angular.module("ui.bootstrap.paging",[]).factory("uibPaging",["$parse",function(e){return{create:function(t,n,r){t.setNumPages=r.numPages?e(r.numPages).assign:angular.noop,t.ngModelCtrl={$setViewValue:angular.noop},t._watchers=[],t.init=function(e,i){t.ngModelCtrl=e,t.config=i,e.$render=function(){t.render()},r.itemsPerPage?t._watchers.push(n.$parent.$watch(r.itemsPerPage,function(e){t.itemsPerPage=parseInt(e,10),n.totalPages=t.calculateTotalPages(),t.updatePage()})):t.itemsPerPage=i.itemsPerPage,n.$watch("totalItems",function(e,r){(angular.isDefined(e)||e!==r)&&(n.totalPages=t.calculateTotalPages(),t.updatePage())})},t.calculateTotalPages=function(){var e=t.itemsPerPage<1?1:Math.ceil(n.totalItems/t.itemsPerPage);return Math.max(e||0,1)},t.render=function(){n.page=parseInt(t.ngModelCtrl.$viewValue,10)||1},n.selectPage=function(e,r){r&&r.preventDefault();var i=!n.ngDisabled||!r;i&&n.page!==e&&e>0&&e<=n.totalPages&&(r&&r.target&&r.target.blur(),t.ngModelCtrl.$setViewValue(e),t.ngModelCtrl.$render())},n.getText=function(e){return n[e+"Text"]||t.config[e+"Text"]},n.noPrevious=function(){return 1===n.page},n.noNext=function(){return n.page===n.totalPages},t.updatePage=function(){t.setNumPages(n.$parent,n.totalPages),n.page>n.totalPages?n.selectPage(n.totalPages):t.ngModelCtrl.$render()},n.$on("$destroy",function(){for(;t._watchers.length;)t._watchers.shift()()})}}}]),angular.module("ui.bootstrap.pager",["ui.bootstrap.paging","ui.bootstrap.tabindex"]).controller("UibPagerController",["$scope","$attrs","uibPaging","uibPagerConfig",function(e,t,n,r){e.align=angular.isDefined(t.align)?e.$parent.$eval(t.align):r.align,n.create(this,e,t)}]).constant("uibPagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("uibPager",["uibPagerConfig",function(e){return{scope:{totalItems:"=",previousText:"@",nextText:"@",ngDisabled:"="},require:["uibPager","?ngModel"],restrict:"A",controller:"UibPagerController",controllerAs:"pager",templateUrl:function(e,t){return t.templateUrl||"uib/template/pager/pager.html"},link:function(t,n,r,i){n.addClass("pager");var o=i[0],a=i[1];a&&o.init(a,e)}}}]),angular.module("ui.bootstrap.pagination",["ui.bootstrap.paging","ui.bootstrap.tabindex"]).controller("UibPaginationController",["$scope","$attrs","$parse","uibPaging","uibPaginationConfig",function(e,t,n,r,i){function o(e,t,n){return{number:e,text:t,active:n}}function a(e,t){var n=[],r=1,i=t,a=angular.isDefined(u)&&t>u;a&&(l?(r=Math.max(e-Math.floor(u/2),1),i=r+u-1,i>t&&(i=t,r=i-u+1)):(r=(Math.ceil(e/u)-1)*u+1,i=Math.min(r+u-1,t)));for(var s=r;i>=s;s++){var d=o(s,f(s),s===e);n.push(d)}if(a&&u>0&&(!l||c||p)){if(r>1){if(!p||r>3){var h=o(r-1,"...",!1); -n.unshift(h)}if(p){if(3===r){var m=o(2,"2",!1);n.unshift(m)}var g=o(1,"1",!1);n.unshift(g)}}if(t>i){if(!p||t-2>i){var v=o(i+1,"...",!1);n.push(v)}if(p){if(i===t-2){var $=o(t-1,t-1,!1);n.push($)}var b=o(t,t,!1);n.push(b)}}}return n}var s=this,u=angular.isDefined(t.maxSize)?e.$parent.$eval(t.maxSize):i.maxSize,l=angular.isDefined(t.rotate)?e.$parent.$eval(t.rotate):i.rotate,c=angular.isDefined(t.forceEllipses)?e.$parent.$eval(t.forceEllipses):i.forceEllipses,p=angular.isDefined(t.boundaryLinkNumbers)?e.$parent.$eval(t.boundaryLinkNumbers):i.boundaryLinkNumbers,f=angular.isDefined(t.pageLabel)?function(n){return e.$parent.$eval(t.pageLabel,{$page:n})}:angular.identity;e.boundaryLinks=angular.isDefined(t.boundaryLinks)?e.$parent.$eval(t.boundaryLinks):i.boundaryLinks,e.directionLinks=angular.isDefined(t.directionLinks)?e.$parent.$eval(t.directionLinks):i.directionLinks,r.create(this,e,t),t.maxSize&&s._watchers.push(e.$parent.$watch(n(t.maxSize),function(e){u=parseInt(e,10),s.render()}));var d=this.render;this.render=function(){d(),e.page>0&&e.page<=e.totalPages&&(e.pages=a(e.page,e.totalPages))}}]).constant("uibPaginationConfig",{itemsPerPage:10,boundaryLinks:!1,boundaryLinkNumbers:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0,forceEllipses:!1}).directive("uibPagination",["$parse","uibPaginationConfig",function(e,t){return{scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@",ngDisabled:"="},require:["uibPagination","?ngModel"],restrict:"A",controller:"UibPaginationController",controllerAs:"pagination",templateUrl:function(e,t){return t.templateUrl||"uib/template/pagination/pagination.html"},link:function(e,n,r,i){n.addClass("pagination");var o=i[0],a=i[1];a&&o.init(a,t)}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.stackedMap"]).provider("$uibTooltip",function(){function e(e){var t=/[A-Z]/g,n="-";return e.replace(t,function(e,t){return(t?n:"")+e.toLowerCase()})}var t={placement:"top",placementClassPrefix:"",animation:!0,popupDelay:0,popupCloseDelay:0,useContentExp:!1},n={mouseenter:"mouseleave",click:"click",outsideClick:"outsideClick",focus:"blur",none:""},r={};this.options=function(e){angular.extend(r,e)},this.setTriggers=function(e){angular.extend(n,e)},this.$get=["$window","$compile","$timeout","$document","$uibPosition","$interpolate","$rootScope","$parse","$$stackedMap",function(i,o,a,s,u,l,c,p,f){function d(e){if(27===e.which){var t=h.top();t&&(t.value.close(),t=null)}}var h=f.createNew();return s.on("keyup",d),c.$on("$destroy",function(){s.off("keyup",d)}),function(i,c,f,d){function m(e){var t=(e||d.trigger||f).split(" "),r=t.map(function(e){return n[e]||e});return{show:t,hide:r}}d=angular.extend({},t,r,d);var g=e(i),v=l.startSymbol(),$=l.endSymbol(),b="
';return{compile:function(e,t){var n=o(b);return function(e,t,r,o){function l(){R.isOpen?g():f()}function f(){(!V||e.$eval(r[c+"Enable"]))&&(y(),k(),R.popupDelay?P||(P=a(v,R.popupDelay,!1)):v())}function g(){$(),R.popupCloseDelay?N||(N=a(b,R.popupCloseDelay,!1)):b()}function v(){return $(),y(),R.content?(w(),void R.$evalAsync(function(){R.isOpen=!0,C(!0),B()})):angular.noop}function $(){P&&(a.cancel(P),P=null),j&&(a.cancel(j),j=null)}function b(){R&&R.$evalAsync(function(){R&&(R.isOpen=!1,C(!1),R.animation?O||(O=a(x,150,!1)):x())})}function y(){N&&(a.cancel(N),N=null),O&&(a.cancel(O),O=null)}function w(){A||(M=R.$new(),A=n(M,function(e){q?s.find("body").append(e):t.after(e)}),h.add(R,{close:b}),S())}function x(){$(),y(),T(),A&&(A.remove(),A=null),h.remove(R),M&&(M.$destroy(),M=null)}function k(){R.title=r[c+"Title"],L?R.content=L(e):R.content=r[i],R.popupClass=r[c+"Class"],R.placement=angular.isDefined(r[c+"Placement"])?r[c+"Placement"]:d.placement;var t=u.parsePlacement(R.placement);I=t[1]?t[0]+"-"+t[1]:t[0];var n=parseInt(r[c+"PopupDelay"],10),o=parseInt(r[c+"PopupCloseDelay"],10);R.popupDelay=isNaN(n)?d.popupDelay:n,R.popupCloseDelay=isNaN(o)?d.popupCloseDelay:o}function C(t){U&&angular.isFunction(U.assign)&&U.assign(e,t)}function S(){_.length=0,L?(_.push(e.$watch(L,function(e){R.content=e,!e&&R.isOpen&&b()})),_.push(M.$watch(function(){H||(H=!0,M.$$postDigest(function(){H=!1,R&&R.isOpen&&B()}))}))):_.push(r.$observe(i,function(e){R.content=e,!e&&R.isOpen?b():B()})),_.push(r.$observe(c+"Title",function(e){R.title=e,R.isOpen&&B()})),_.push(r.$observe(c+"Placement",function(e){R.placement=e?e:d.placement,R.isOpen&&B()}))}function T(){_.length&&(angular.forEach(_,function(e){e()}),_.length=0)}function E(e){R&&R.isOpen&&A&&(t[0].contains(e.target)||A[0].contains(e.target)||g())}function D(){var n=[],i=[],o=e.$eval(r[c+"Trigger"]);W(),angular.isObject(o)?(Object.keys(o).forEach(function(e){n.push(e),i.push(o[e])}),F={show:n,hide:i}):F=m(o),"none"!==F.show&&F.show.forEach(function(e,n){"outsideClick"===e?(t.on("click",l),s.on("click",E)):e===F.hide[n]?t.on(e,l):e&&(t.on(e,f),t.on(F.hide[n],g)),t.on("keypress",function(e){27===e.which&&g()})})}var A,M,O,P,N,j,I,q=angular.isDefined(d.appendToBody)?d.appendToBody:!1,F=m(void 0),V=angular.isDefined(r[c+"Enable"]),R=e.$new(!0),H=!1,U=angular.isDefined(r[c+"IsOpen"])?p(r[c+"IsOpen"]):!1,L=d.useContentExp?p(r[i]):!1,_=[],B=function(){A&&A.html()&&(j||(j=a(function(){var e=u.positionElements(t,A,R.placement,q),n=angular.isDefined(A.offsetHeight)?A.offsetHeight:A.prop("offsetHeight"),r=q?u.offset(t):u.position(t);A.css({top:e.top+"px",left:e.left+"px"});var i=e.placement.split("-");A.hasClass(i[0])||(A.removeClass(I.split("-")[0]),A.addClass(i[0])),A.hasClass(d.placementClassPrefix+e.placement)||(A.removeClass(d.placementClassPrefix+I),A.addClass(d.placementClassPrefix+e.placement)),a(function(){var e=angular.isDefined(A.offsetHeight)?A.offsetHeight:A.prop("offsetHeight"),t=u.adjustTop(i,r,n,e);t&&A.css(t)},0,!1),A.hasClass("uib-position-measure")?(u.positionArrow(A,e.placement),A.removeClass("uib-position-measure")):I!==e.placement&&u.positionArrow(A,e.placement),I=e.placement,j=null},0,!1)))};R.origScope=e,R.isOpen=!1,R.contentExp=function(){return R.content},r.$observe("disabled",function(e){e&&$(),e&&R.isOpen&&b()}),U&&e.$watch(U,function(e){R&&!e===R.isOpen&&l()});var W=function(){F.show.forEach(function(e){"outsideClick"===e?t.off("click",l):(t.off(e,f),t.off(e,l))}),F.hide.forEach(function(e){"outsideClick"===e?s.off("click",E):t.off(e,g)})};D();var z=e.$eval(r[c+"Animation"]);R.animation=angular.isDefined(z)?!!z:d.animation;var Y,G=c+"AppendToBody";Y=G in r&&void 0===r[G]?!0:e.$eval(r[G]),q=angular.isDefined(Y)?Y:q,e.$on("$destroy",function(){W(),x(),R=null})}}}}}]}).directive("uibTooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(e,t,n,r){return{link:function(i,o,a){var s,u,l,c=i.$eval(a.tooltipTemplateTranscludeScope),p=0,f=function(){u&&(u.remove(),u=null),s&&(s.$destroy(),s=null),l&&(e.leave(l).then(function(){u=null}),u=l,l=null)};i.$watch(t.parseAsResourceUrl(a.uibTooltipTemplateTransclude),function(t){var a=++p;t?(r(t,!0).then(function(r){if(a===p){var i=c.$new(),u=r,d=n(u)(i,function(t){f(),e.enter(t,o)});s=i,l=d,s.$emit("$includeContentLoaded",t)}},function(){a===p&&(f(),i.$emit("$includeContentError",t))}),i.$emit("$includeContentRequested",t)):f()}),i.$on("$destroy",f)}}}]).directive("uibTooltipClasses",["$uibPosition",function(e){return{restrict:"A",link:function(t,n,r){if(t.placement){var i=e.parsePlacement(t.placement);n.addClass(i[0])}t.popupClass&&n.addClass(t.popupClass),t.animation&&n.addClass(r.tooltipAnimationClass)}}}]).directive("uibTooltipPopup",function(){return{restrict:"A",scope:{content:"@"},templateUrl:"uib/template/tooltip/tooltip-popup.html"}}).directive("uibTooltip",["$uibTooltip",function(e){return e("uibTooltip","tooltip","mouseenter")}]).directive("uibTooltipTemplatePopup",function(){return{restrict:"A",scope:{contentExp:"&",originScope:"&"},templateUrl:"uib/template/tooltip/tooltip-template-popup.html"}}).directive("uibTooltipTemplate",["$uibTooltip",function(e){return e("uibTooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("uibTooltipHtmlPopup",function(){return{restrict:"A",scope:{contentExp:"&"},templateUrl:"uib/template/tooltip/tooltip-html-popup.html"}}).directive("uibTooltipHtml",["$uibTooltip",function(e){return e("uibTooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("uibPopoverTemplatePopup",function(){return{restrict:"A",scope:{uibTitle:"@",contentExp:"&",originScope:"&"},templateUrl:"uib/template/popover/popover-template.html"}}).directive("uibPopoverTemplate",["$uibTooltip",function(e){return e("uibPopoverTemplate","popover","click",{useContentExp:!0})}]).directive("uibPopoverHtmlPopup",function(){return{restrict:"A",scope:{contentExp:"&",uibTitle:"@"},templateUrl:"uib/template/popover/popover-html.html"}}).directive("uibPopoverHtml",["$uibTooltip",function(e){return e("uibPopoverHtml","popover","click",{useContentExp:!0})}]).directive("uibPopoverPopup",function(){return{restrict:"A",scope:{uibTitle:"@",content:"@"},templateUrl:"uib/template/popover/popover.html"}}).directive("uibPopover",["$uibTooltip",function(e){return e("uibPopover","popover","click")}]),angular.module("ui.bootstrap.progressbar",[]).constant("uibProgressConfig",{animate:!0,max:100}).controller("UibProgressController",["$scope","$attrs","uibProgressConfig",function(e,t,n){function r(){return angular.isDefined(e.maxParam)?e.maxParam:n.max}var i=this,o=angular.isDefined(t.animate)?e.$parent.$eval(t.animate):n.animate;this.bars=[],e.max=r(),this.addBar=function(e,t,n){o||t.css({transition:"none"}),this.bars.push(e),e.max=r(),e.title=n&&angular.isDefined(n.title)?n.title:"progressbar",e.$watch("value",function(t){e.recalculatePercentage()}),e.recalculatePercentage=function(){var t=i.bars.reduce(function(e,t){return t.percent=+(100*t.value/t.max).toFixed(2),e+t.percent},0);t>100&&(e.percent-=t-100)},e.$on("$destroy",function(){t=null,i.removeBar(e)})},this.removeBar=function(e){this.bars.splice(this.bars.indexOf(e),1),this.bars.forEach(function(e){e.recalculatePercentage()})},e.$watch("maxParam",function(e){i.bars.forEach(function(e){e.max=r(),e.recalculatePercentage()})})}]).directive("uibProgress",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",require:"uibProgress",scope:{maxParam:"=?max"},templateUrl:"uib/template/progressbar/progress.html"}}).directive("uibBar",function(){return{replace:!0,transclude:!0,require:"^uibProgress",scope:{value:"=",type:"@"},templateUrl:"uib/template/progressbar/bar.html",link:function(e,t,n,r){r.addBar(e,t,n)}}}).directive("uibProgressbar",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",scope:{value:"=",maxParam:"=?max",type:"@"},templateUrl:"uib/template/progressbar/progressbar.html",link:function(e,t,n,r){r.addBar(e,angular.element(t.children()[0]),{title:n.title})}}}),angular.module("ui.bootstrap.rating",[]).constant("uibRatingConfig",{max:5,stateOn:null,stateOff:null,enableReset:!0,titles:["one","two","three","four","five"]}).controller("UibRatingController",["$scope","$attrs","uibRatingConfig",function(e,t,n){var r={$setViewValue:angular.noop},i=this;this.init=function(i){r=i,r.$render=this.render,r.$formatters.push(function(e){return angular.isNumber(e)&&e<<0!==e&&(e=Math.round(e)),e}),this.stateOn=angular.isDefined(t.stateOn)?e.$parent.$eval(t.stateOn):n.stateOn,this.stateOff=angular.isDefined(t.stateOff)?e.$parent.$eval(t.stateOff):n.stateOff,this.enableReset=angular.isDefined(t.enableReset)?e.$parent.$eval(t.enableReset):n.enableReset;var o=angular.isDefined(t.titles)?e.$parent.$eval(t.titles):n.titles;this.titles=angular.isArray(o)&&o.length>0?o:n.titles;var a=angular.isDefined(t.ratingStates)?e.$parent.$eval(t.ratingStates):new Array(angular.isDefined(t.max)?e.$parent.$eval(t.max):n.max);e.range=this.buildTemplateObjects(a)},this.buildTemplateObjects=function(e){for(var t=0,n=e.length;n>t;t++)e[t]=angular.extend({index:t},{stateOn:this.stateOn,stateOff:this.stateOff,title:this.getTitle(t)},e[t]);return e},this.getTitle=function(e){return e>=this.titles.length?e+1:this.titles[e]},e.rate=function(t){if(!e.readonly&&t>=0&&t<=e.range.length){var n=i.enableReset&&r.$viewValue===t?0:t;r.$setViewValue(n),r.$render()}},e.enter=function(t){e.readonly||(e.value=t),e.onHover({value:t})},e.reset=function(){e.value=r.$viewValue,e.onLeave()},e.onKeydown=function(t){/(37|38|39|40)/.test(t.which)&&(t.preventDefault(),t.stopPropagation(),e.rate(e.value+(38===t.which||39===t.which?1:-1)))},this.render=function(){e.value=r.$viewValue,e.title=i.getTitle(e.value-1)}}]).directive("uibRating",function(){return{require:["uibRating","ngModel"],restrict:"A",scope:{readonly:"=?readOnly",onHover:"&",onLeave:"&"},controller:"UibRatingController",templateUrl:"uib/template/rating/rating.html",link:function(e,t,n,r){var i=r[0],o=r[1];i.init(o)}}}),angular.module("ui.bootstrap.tabs",[]).controller("UibTabsetController",["$scope",function(e){function t(e){for(var t=0;tt.index?1:e.index0&&13>t:t>=0&&24>t;return n&&""!==e.hours?(e.showMeridian&&(12===t&&(t=0),e.meridian===w[1]&&(t+=12)),t):void 0}function u(){var t=+e.minutes,n=t>=0&&60>t;return n&&""!==e.minutes?t:void 0}function l(){var t=+e.seconds;return t>=0&&60>t?t:void 0}function c(e,t){return null===e?"":angular.isDefined(e)&&e.toString().length<2&&!t?"0"+e:e.toString()}function p(e){f(),y.$setViewValue(new Date($)),d(e)}function f(){y.$setValidity("time",!0),e.invalidHours=!1,e.invalidMinutes=!1,e.invalidSeconds=!1}function d(t){if(y.$modelValue){var n=$.getHours(),r=$.getMinutes(),i=$.getSeconds();e.showMeridian&&(n=0===n||12===n?12:n%12),e.hours="h"===t?n:c(n,!x),"m"!==t&&(e.minutes=c(r)),e.meridian=$.getHours()<12?w[0]:w[1],"s"!==t&&(e.seconds=c(i)),e.meridian=$.getHours()<12?w[0]:w[1]}else e.hours=null,e.minutes=null,e.seconds=null,e.meridian=w[0]}function h(e){$=g($,e),p()}function m(e,t){return g(e,60*t)}function g(e,t){var n=new Date(e.getTime()+1e3*t),r=new Date(e);return r.setHours(n.getHours(),n.getMinutes(),n.getSeconds()),r}function v(){return(null===e.hours||""===e.hours)&&(null===e.minutes||""===e.minutes)&&(!e.showSeconds||e.showSeconds&&(null===e.seconds||""===e.seconds))}var $=new Date,b=[],y={$setViewValue:angular.noop},w=angular.isDefined(n.meridians)?e.$parent.$eval(n.meridians):a.meridians||o.DATETIME_FORMATS.AMPMS,x=angular.isDefined(n.padHours)?e.$parent.$eval(n.padHours):!0;e.tabindex=angular.isDefined(n.tabindex)?n.tabindex:0,t.removeAttr("tabindex"),this.init=function(t,r){y=t,y.$render=this.render,y.$formatters.unshift(function(e){return e?new Date(e):null});var i=r.eq(0),o=r.eq(1),s=r.eq(2),u=angular.isDefined(n.mousewheel)?e.$parent.$eval(n.mousewheel):a.mousewheel;u&&this.setupMousewheelEvents(i,o,s);var l=angular.isDefined(n.arrowkeys)?e.$parent.$eval(n.arrowkeys):a.arrowkeys;l&&this.setupArrowkeyEvents(i,o,s),e.readonlyInput=angular.isDefined(n.readonlyInput)?e.$parent.$eval(n.readonlyInput):a.readonlyInput,this.setupInputEvents(i,o,s)};var k=a.hourStep;n.hourStep&&b.push(e.$parent.$watch(r(n.hourStep),function(e){k=+e}));var C=a.minuteStep;n.minuteStep&&b.push(e.$parent.$watch(r(n.minuteStep),function(e){C=+e}));var S;b.push(e.$parent.$watch(r(n.min),function(e){var t=new Date(e);S=isNaN(t)?void 0:t}));var T;b.push(e.$parent.$watch(r(n.max),function(e){var t=new Date(e);T=isNaN(t)?void 0:t}));var E=!1;n.ngDisabled&&b.push(e.$parent.$watch(r(n.ngDisabled),function(e){E=e})),e.noIncrementHours=function(){var e=m($,60*k);return E||e>T||$>e&&S>e},e.noDecrementHours=function(){var e=m($,60*-k);return E||S>e||e>$&&e>T},e.noIncrementMinutes=function(){var e=m($,C);return E||e>T||$>e&&S>e},e.noDecrementMinutes=function(){var e=m($,-C);return E||S>e||e>$&&e>T},e.noIncrementSeconds=function(){var e=g($,D);return E||e>T||$>e&&S>e},e.noDecrementSeconds=function(){var e=g($,-D);return E||S>e||e>$&&e>T},e.noToggleMeridian=function(){return $.getHours()<12?E||m($,720)>T:E||m($,-720)0};t.bind("mousewheel wheel",function(t){E||e.$apply(i(t)?e.incrementHours():e.decrementHours()),t.preventDefault()}),n.bind("mousewheel wheel",function(t){E||e.$apply(i(t)?e.incrementMinutes():e.decrementMinutes()),t.preventDefault()}),r.bind("mousewheel wheel",function(t){E||e.$apply(i(t)?e.incrementSeconds():e.decrementSeconds()),t.preventDefault()})},this.setupArrowkeyEvents=function(t,n,r){t.bind("keydown",function(t){E||(38===t.which?(t.preventDefault(),e.incrementHours(),e.$apply()):40===t.which&&(t.preventDefault(),e.decrementHours(),e.$apply()))}),n.bind("keydown",function(t){E||(38===t.which?(t.preventDefault(),e.incrementMinutes(),e.$apply()):40===t.which&&(t.preventDefault(),e.decrementMinutes(),e.$apply()))}),r.bind("keydown",function(t){E||(38===t.which?(t.preventDefault(),e.incrementSeconds(),e.$apply()):40===t.which&&(t.preventDefault(),e.decrementSeconds(),e.$apply()))})},this.setupInputEvents=function(t,n,r){if(e.readonlyInput)return e.updateHours=angular.noop,e.updateMinutes=angular.noop,void(e.updateSeconds=angular.noop);var i=function(t,n,r){y.$setViewValue(null),y.$setValidity("time",!1),angular.isDefined(t)&&(e.invalidHours=t),angular.isDefined(n)&&(e.invalidMinutes=n),angular.isDefined(r)&&(e.invalidSeconds=r)};e.updateHours=function(){var e=s(),t=u();y.$setDirty(),angular.isDefined(e)&&angular.isDefined(t)?($.setHours(e),$.setMinutes(t),S>$||$>T?i(!0):p("h")):i(!0)},t.bind("blur",function(t){y.$setTouched(),v()?f():null===e.hours||""===e.hours?i(!0):!e.invalidHours&&e.hours<10&&e.$apply(function(){e.hours=c(e.hours,!x)})}),e.updateMinutes=function(){var e=u(),t=s();y.$setDirty(),angular.isDefined(e)&&angular.isDefined(t)?($.setHours(t),$.setMinutes(e),S>$||$>T?i(void 0,!0):p("m")):i(void 0,!0)},n.bind("blur",function(t){y.$setTouched(),v()?f():null===e.minutes?i(void 0,!0):!e.invalidMinutes&&e.minutes<10&&e.$apply(function(){e.minutes=c(e.minutes)})}),e.updateSeconds=function(){var e=l();y.$setDirty(),angular.isDefined(e)?($.setSeconds(e),p("s")):i(void 0,void 0,!0)},r.bind("blur",function(t){v()?f():!e.invalidSeconds&&e.seconds<10&&e.$apply(function(){e.seconds=c(e.seconds)})})},this.render=function(){var t=y.$viewValue;isNaN(t)?(y.$setValidity("time",!1),i.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(t&&($=t),S>$||$>T?(y.$setValidity("time",!1),e.invalidHours=!0,e.invalidMinutes=!0):f(),d())},e.showSpinners=angular.isDefined(n.showSpinners)?e.$parent.$eval(n.showSpinners):a.showSpinners,e.incrementHours=function(){e.noIncrementHours()||h(60*k*60)},e.decrementHours=function(){e.noDecrementHours()||h(60*-k*60)},e.incrementMinutes=function(){e.noIncrementMinutes()||h(60*C)},e.decrementMinutes=function(){e.noDecrementMinutes()||h(60*-C)},e.incrementSeconds=function(){e.noIncrementSeconds()||h(D)},e.decrementSeconds=function(){e.noDecrementSeconds()||h(-D)},e.toggleMeridian=function(){var t=u(),n=s();e.noToggleMeridian()||(angular.isDefined(t)&&angular.isDefined(n)?h(720*($.getHours()<12?60:-60)):e.meridian=e.meridian===w[0]?w[1]:w[0])},e.blur=function(){y.$setTouched()},e.$on("$destroy",function(){for(;b.length;)b.shift()()})}]).directive("uibTimepicker",["uibTimepickerConfig",function(e){return{require:["uibTimepicker","?^ngModel"],restrict:"A",controller:"UibTimepickerController",controllerAs:"timepicker",scope:{},templateUrl:function(t,n){return n.templateUrl||e.templateUrl},link:function(e,t,n,r){var i=r[0],o=r[1];o&&i.init(o,t.find("input"))}}}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.debounce","ui.bootstrap.position"]).factory("uibTypeaheadParser",["$parse",function(e){var t=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(n){var r=n.match(t);if(!r)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+n+'".');return{itemName:r[3],source:e(r[4]),viewMapper:e(r[2]||r[1]),modelMapper:e(r[1])}}}}]).controller("UibTypeaheadController",["$scope","$element","$attrs","$compile","$parse","$q","$timeout","$document","$window","$rootScope","$$debounce","$uibPosition","uibTypeaheadParser",function(e,t,n,r,i,o,a,s,u,l,c,p,f){function d(){H.moveInProgress||(H.moveInProgress=!0,H.$digest()),Z()}function h(){H.position=M?p.offset(t):p.position(t),H.position.top+=t.prop("offsetHeight")}var m,g,v=[9,13,27,38,40],$=200,b=e.$eval(n.typeaheadMinLength);b||0===b||(b=1),e.$watch(n.typeaheadMinLength,function(e){b=e||0===e?e:1});var y=e.$eval(n.typeaheadWaitMs)||0,w=e.$eval(n.typeaheadEditable)!==!1;e.$watch(n.typeaheadEditable,function(e){w=e!==!1});var x,k,C=i(n.typeaheadLoading).assign||angular.noop,S=n.typeaheadShouldSelect?i(n.typeaheadShouldSelect):function(e,t){var n=t.$event;return 13===n.which||9===n.which},T=i(n.typeaheadOnSelect),E=angular.isDefined(n.typeaheadSelectOnBlur)?e.$eval(n.typeaheadSelectOnBlur):!1,D=i(n.typeaheadNoResults).assign||angular.noop,A=n.typeaheadInputFormatter?i(n.typeaheadInputFormatter):void 0,M=n.typeaheadAppendToBody?e.$eval(n.typeaheadAppendToBody):!1,O=n.typeaheadAppendTo?e.$eval(n.typeaheadAppendTo):null,P=e.$eval(n.typeaheadFocusFirst)!==!1,N=n.typeaheadSelectOnExact?e.$eval(n.typeaheadSelectOnExact):!1,j=i(n.typeaheadIsOpen).assign||angular.noop,I=e.$eval(n.typeaheadShowHint)||!1,q=i(n.ngModel),F=i(n.ngModel+"($$$p)"),V=function(t,n){return angular.isFunction(q(e))&&g&&g.$options&&g.$options.getterSetter?F(t,{$$$p:n}):q.assign(t,n)},R=f.parse(n.uibTypeahead),H=e.$new(),U=e.$on("$destroy",function(){H.$destroy()});H.$on("$destroy",U);var L="typeahead-"+H.$id+"-"+Math.floor(1e4*Math.random());t.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":L});var _,B;I&&(_=angular.element("
"),_.css("position","relative"),t.after(_),B=t.clone(),B.attr("placeholder",""),B.attr("tabindex","-1"),B.val(""),B.css({position:"absolute",top:"0px",left:"0px","border-color":"transparent","box-shadow":"none",opacity:1,background:"none 0% 0% / auto repeat scroll padding-box border-box rgb(255, 255, 255)",color:"#999"}),t.css({position:"relative","vertical-align":"top","background-color":"transparent"}),B.attr("id")&&B.removeAttr("id"),_.append(B),B.after(t));var W=angular.element("
");W.attr({id:L,matches:"matches",active:"activeIdx",select:"select(activeIdx, evt)","move-in-progress":"moveInProgress",query:"query",position:"position","assign-is-open":"assignIsOpen(isOpen)",debounce:"debounceUpdate"}),angular.isDefined(n.typeaheadTemplateUrl)&&W.attr("template-url",n.typeaheadTemplateUrl),angular.isDefined(n.typeaheadPopupTemplateUrl)&&W.attr("popup-template-url",n.typeaheadPopupTemplateUrl);var z=function(){I&&B.val("")},Y=function(){H.matches=[],H.activeIdx=-1,t.attr("aria-expanded",!1),z()},G=function(e){return L+"-option-"+e};H.$watch("activeIdx",function(e){0>e?t.removeAttr("aria-activedescendant"):t.attr("aria-activedescendant",G(e))});var K=function(e,t){return H.matches.length>t&&e?e.toUpperCase()===H.matches[t].label.toUpperCase():!1},X=function(n,r){var i={$viewValue:n};C(e,!0),D(e,!1),o.when(R.source(e,i)).then(function(o){var a=n===m.$viewValue;if(a&&x)if(o&&o.length>0){H.activeIdx=P?0:-1,D(e,!1),H.matches.length=0;for(var s=0;s0&&u.slice(0,n.length).toUpperCase()===n.toUpperCase()?B.val(n+u.slice(n.length)):B.val("")}}else Y(),D(e,!0);a&&C(e,!1)},function(){Y(),C(e,!1),D(e,!0)})};M&&(angular.element(u).on("resize",d),s.find("body").on("scroll",d));var Z=c(function(){H.matches.length&&h(),H.moveInProgress=!1},$);H.moveInProgress=!1,H.query=void 0;var J,Q=function(e){J=a(function(){X(e)},y)},ee=function(){J&&a.cancel(J)};Y(),H.assignIsOpen=function(t){j(e,t)},H.select=function(r,i){var o,s,u={};k=!0,u[R.itemName]=s=H.matches[r].model,o=R.modelMapper(e,u),V(e,o),m.$setValidity("editable",!0),m.$setValidity("parse",!0),T(e,{$item:s,$model:o,$label:R.viewMapper(e,u),$event:i}),Y(),H.$eval(n.typeaheadFocusOnSelect)!==!1&&a(function(){t[0].focus()},0,!1)},t.on("keydown",function(t){if(0!==H.matches.length&&-1!==v.indexOf(t.which)){var n=S(e,{$event:t});if(-1===H.activeIdx&&n||9===t.which&&t.shiftKey)return Y(),void H.$digest();t.preventDefault();var r;switch(t.which){case 27:t.stopPropagation(),Y(),e.$digest();break;case 38:H.activeIdx=(H.activeIdx>0?H.activeIdx:H.matches.length)-1,H.$digest(),r=W[0].querySelectorAll(".uib-typeahead-match")[H.activeIdx],r.parentNode.scrollTop=r.offsetTop;break;case 40:H.activeIdx=(H.activeIdx+1)%H.matches.length,H.$digest(),r=W[0].querySelectorAll(".uib-typeahead-match")[H.activeIdx],r.parentNode.scrollTop=r.offsetTop;break;default:n&&H.$apply(function(){angular.isNumber(H.debounceUpdate)||angular.isObject(H.debounceUpdate)?c(function(){H.select(H.activeIdx,t)},angular.isNumber(H.debounceUpdate)?H.debounceUpdate:H.debounceUpdate["default"]):H.select(H.activeIdx,t)})}}}),t.bind("focus",function(e){x=!0,0!==b||m.$viewValue||a(function(){X(m.$viewValue,e)},0)}),t.bind("blur",function(e){E&&H.matches.length&&-1!==H.activeIdx&&!k&&(k=!0,H.$apply(function(){angular.isObject(H.debounceUpdate)&&angular.isNumber(H.debounceUpdate.blur)?c(function(){H.select(H.activeIdx,e)},H.debounceUpdate.blur):H.select(H.activeIdx,e)})),!w&&m.$error.editable&&(m.$setViewValue(),H.$apply(function(){m.$setValidity("editable",!0),m.$setValidity("parse",!0)}),t.val("")),x=!1,k=!1});var te=function(n){t[0]!==n.target&&3!==n.which&&0!==H.matches.length&&(Y(),l.$$phase||e.$digest())};s.on("click",te),e.$on("$destroy",function(){s.off("click",te),(M||O)&&ne.remove(),M&&(angular.element(u).off("resize",d),s.find("body").off("scroll",d)),W.remove(),I&&_.remove()});var ne=r(W)(H);M?s.find("body").append(ne):O?angular.element(O).eq(0).append(ne):t.after(ne),this.init=function(t,n){m=t,g=n,H.debounceUpdate=m.$options&&i(m.$options.debounce)(e),m.$parsers.unshift(function(t){return x=!0,0===b||t&&t.length>=b?y>0?(ee(),Q(t)):X(t):(C(e,!1),ee(),Y()),w?t:t?void m.$setValidity("editable",!1):(m.$setValidity("editable",!0),null)}),m.$formatters.push(function(t){var n,r,i={};return w||m.$setValidity("editable",!0),A?(i.$model=t,A(e,i)):(i[R.itemName]=t,n=R.viewMapper(e,i),i[R.itemName]=void 0,r=R.viewMapper(e,i),n!==r?n:t)})}}]).directive("uibTypeahead",function(){return{controller:"UibTypeaheadController",require:["ngModel","^?ngModelOptions","uibTypeahead"],link:function(e,t,n,r){r[2].init(r[0],r[1])}}}).directive("uibTypeaheadPopup",["$$debounce",function(e){return{scope:{matches:"=",query:"=",active:"=",position:"&",moveInProgress:"=",select:"&",assignIsOpen:"&",debounce:"&"},replace:!0,templateUrl:function(e,t){return t.popupTemplateUrl||"uib/template/typeahead/typeahead-popup.html"},link:function(t,n,r){t.templateUrl=r.templateUrl,t.isOpen=function(){var e=t.matches.length>0;return t.assignIsOpen({isOpen:e}),e},t.isActive=function(e){return t.active===e},t.selectActive=function(e){t.active=e},t.selectMatch=function(n,r){var i=t.debounce();angular.isNumber(i)||angular.isObject(i)?e(function(){t.select({activeIdx:n,evt:r})},angular.isNumber(i)?i:i["default"]):t.select({activeIdx:n,evt:r})}}}}]).directive("uibTypeaheadMatch",["$templateRequest","$compile","$parse",function(e,t,n){return{scope:{index:"=",match:"=",query:"="},link:function(r,i,o){var a=n(o.templateUrl)(r.$parent)||"uib/template/typeahead/typeahead-match.html"; -e(a).then(function(e){var n=angular.element(e.trim());i.replaceWith(n),t(n)(r)})}}}]).filter("uibTypeaheadHighlight",["$sce","$injector","$log",function(e,t,n){function r(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}function i(e){return/<.*>/g.test(e)}var o;return o=t.has("$sanitize"),function(t,a){return!o&&i(t)&&n.warn("Unsafe use of typeahead please use ngSanitize"),t=a?(""+t).replace(new RegExp(r(a),"gi"),"$&"):t,o||(t=e.trustAsHtml(t)),t}}]),angular.module("uib/template/accordion/accordion-group.html",[]).run(["$templateCache",function(e){e.put("uib/template/accordion/accordion-group.html",'\n
\n
\n
\n')}]),angular.module("uib/template/accordion/accordion.html",[]).run(["$templateCache",function(e){e.put("uib/template/accordion/accordion.html",'
')}]),angular.module("uib/template/alert/alert.html",[]).run(["$templateCache",function(e){e.put("uib/template/alert/alert.html",'\n
\n')}]),angular.module("uib/template/carousel/carousel.html",[]).run(["$templateCache",function(e){e.put("uib/template/carousel/carousel.html",'\n\n \n previous\n\n\n \n next\n\n\n')}]),angular.module("uib/template/carousel/slide.html",[]).run(["$templateCache",function(e){e.put("uib/template/carousel/slide.html",'
\n')}]),angular.module("uib/template/datepicker/datepicker.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/datepicker.html",'
\n
\n
\n
\n
\n')}]),angular.module("uib/template/datepicker/day.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/day.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{::label.abbr}}
{{ weekNumbers[$index] }}\n \n
\n')}]),angular.module("uib/template/datepicker/month.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/month.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n')}]),angular.module("uib/template/datepicker/year.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/year.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n')}]),angular.module("uib/template/datepickerPopup/popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepickerPopup/popup.html",'\n')}]),angular.module("uib/template/modal/window.html",[]).run(["$templateCache",function(e){e.put("uib/template/modal/window.html","
\n")}]),angular.module("uib/template/pager/pager.html",[]).run(["$templateCache",function(e){e.put("uib/template/pager/pager.html",'
  • {{::getText(\'previous\')}}
  • \n
  • {{::getText(\'next\')}}
  • \n')}]),angular.module("uib/template/pagination/pagination.html",[]).run(["$templateCache",function(e){e.put("uib/template/pagination/pagination.html",'
  • {{::getText(\'first\')}}
  • \n
  • {{::getText(\'previous\')}}
  • \n
  • {{page.text}}
  • \n
  • {{::getText(\'next\')}}
  • \n
  • {{::getText(\'last\')}}
  • \n')}]),angular.module("uib/template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/tooltip/tooltip-html-popup.html",'
    \n
    \n')}]),angular.module("uib/template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/tooltip/tooltip-popup.html",'
    \n
    \n')}]),angular.module("uib/template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/tooltip/tooltip-template-popup.html",'
    \n
    \n')}]),angular.module("uib/template/popover/popover-html.html",[]).run(["$templateCache",function(e){e.put("uib/template/popover/popover-html.html",'
    \n\n
    \n

    \n
    \n
    \n')}]),angular.module("uib/template/popover/popover-template.html",[]).run(["$templateCache",function(e){e.put("uib/template/popover/popover-template.html",'
    \n\n
    \n

    \n
    \n
    \n')}]),angular.module("uib/template/popover/popover.html",[]).run(["$templateCache",function(e){e.put("uib/template/popover/popover.html",'
    \n\n
    \n

    \n
    \n
    \n')}]),angular.module("uib/template/progressbar/bar.html",[]).run(["$templateCache",function(e){e.put("uib/template/progressbar/bar.html",'
    \n')}]),angular.module("uib/template/progressbar/progress.html",[]).run(["$templateCache",function(e){e.put("uib/template/progressbar/progress.html",'
    ')}]),angular.module("uib/template/progressbar/progressbar.html",[]).run(["$templateCache",function(e){e.put("uib/template/progressbar/progressbar.html",'
    \n
    \n
    \n')}]),angular.module("uib/template/rating/rating.html",[]).run(["$templateCache",function(e){e.put("uib/template/rating/rating.html",'\n ({{ $index < value ? \'*\' : \' \' }})\n \n\n')}]),angular.module("uib/template/tabs/tab.html",[]).run(["$templateCache",function(e){e.put("uib/template/tabs/tab.html",'\n')}]),angular.module("uib/template/tabs/tabset.html",[]).run(["$templateCache",function(e){e.put("uib/template/tabs/tabset.html",'
    \n \n
    \n
    \n
    \n
    \n
    \n')}]),angular.module("uib/template/timepicker/timepicker.html",[]).run(["$templateCache",function(e){e.put("uib/template/timepicker/timepicker.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
      
    \n \n :\n \n :\n \n
      
    \n')}]),angular.module("uib/template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(e){e.put("uib/template/typeahead/typeahead-match.html",'\n')}]),angular.module("uib/template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/typeahead/typeahead-popup.html",'\n')}]),angular.module("ui.bootstrap.carousel").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibCarouselCss&&angular.element(document).find("head").prepend(''),angular.$$uibCarouselCss=!0}),angular.module("ui.bootstrap.datepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerCss=!0}),angular.module("ui.bootstrap.position").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibPositionCss&&angular.element(document).find("head").prepend(''),angular.$$uibPositionCss=!0}),angular.module("ui.bootstrap.datepickerPopup").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerpopupCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerpopupCss=!0}),angular.module("ui.bootstrap.tooltip").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTooltipCss&&angular.element(document).find("head").prepend(''),angular.$$uibTooltipCss=!0}),angular.module("ui.bootstrap.timepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTimepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibTimepickerCss=!0}),angular.module("ui.bootstrap.typeahead").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTypeaheadCss&&angular.element(document).find("head").prepend(''),angular.$$uibTypeaheadCss=!0}),/** +angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.dateparser","ui.bootstrap.isClass","ui.bootstrap.datepicker","ui.bootstrap.position","ui.bootstrap.datepickerPopup","ui.bootstrap.debounce","ui.bootstrap.dropdown","ui.bootstrap.stackedMap","ui.bootstrap.modal","ui.bootstrap.paging","ui.bootstrap.pager","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.tpls",["uib/template/accordion/accordion-group.html","uib/template/accordion/accordion.html","uib/template/alert/alert.html","uib/template/carousel/carousel.html","uib/template/carousel/slide.html","uib/template/datepicker/datepicker.html","uib/template/datepicker/day.html","uib/template/datepicker/month.html","uib/template/datepicker/year.html","uib/template/datepickerPopup/popup.html","uib/template/modal/backdrop.html","uib/template/modal/window.html","uib/template/pager/pager.html","uib/template/pagination/pagination.html","uib/template/tooltip/tooltip-html-popup.html","uib/template/tooltip/tooltip-popup.html","uib/template/tooltip/tooltip-template-popup.html","uib/template/popover/popover-html.html","uib/template/popover/popover-template.html","uib/template/popover/popover.html","uib/template/progressbar/bar.html","uib/template/progressbar/progress.html","uib/template/progressbar/progressbar.html","uib/template/rating/rating.html","uib/template/tabs/tab.html","uib/template/tabs/tabset.html","uib/template/timepicker/timepicker.html","uib/template/typeahead/typeahead-match.html","uib/template/typeahead/typeahead-popup.html"]),angular.module("ui.bootstrap.collapse",[]).directive("uibCollapse",["$animate","$q","$parse","$injector",function(e,t,n,r){var i=r.has("$animateCss")?r.get("$animateCss"):null;return{link:function(r,o,a){function s(){o.hasClass("collapse")&&o.hasClass("in")||t.resolve(p(r)).then(function(){o.removeClass("collapse").addClass("collapsing").attr("aria-expanded",!0).attr("aria-hidden",!1),i?i(o,{addClass:"in",easing:"ease",to:{height:o[0].scrollHeight+"px"}}).start()["finally"](l):e.addClass(o,"in",{to:{height:o[0].scrollHeight+"px"}}).then(l)})}function l(){o.removeClass("collapsing").addClass("collapse").css({height:"auto"}),d(r)}function u(){return o.hasClass("collapse")||o.hasClass("in")?void t.resolve(f(r)).then(function(){o.css({height:o[0].scrollHeight+"px"}).removeClass("collapse").addClass("collapsing").attr("aria-expanded",!1).attr("aria-hidden",!0),i?i(o,{removeClass:"in",to:{height:"0"}}).start()["finally"](c):e.removeClass(o,"in",{to:{height:"0"}}).then(c)}):c()}function c(){o.css({height:"0"}),o.removeClass("collapsing").addClass("collapse"),h(r)}var p=n(a.expanding),d=n(a.expanded),f=n(a.collapsing),h=n(a.collapsed);r.$eval(a.uibCollapse)||o.addClass("in").addClass("collapse").attr("aria-expanded",!0).attr("aria-hidden",!1).css({height:"auto"}),r.$watch(a.uibCollapse,function(e){e?u():s()})}}}]),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("uibAccordionConfig",{closeOthers:!0}).controller("UibAccordionController",["$scope","$attrs","uibAccordionConfig",function(e,t,n){this.groups=[],this.closeOthers=function(r){var i=angular.isDefined(t.closeOthers)?e.$eval(t.closeOthers):n.closeOthers;i&&angular.forEach(this.groups,function(e){e!==r&&(e.isOpen=!1)})},this.addGroup=function(e){var t=this;this.groups.push(e),e.$on("$destroy",function(n){t.removeGroup(e)})},this.removeGroup=function(e){var t=this.groups.indexOf(e);-1!==t&&this.groups.splice(t,1)}}]).directive("uibAccordion",function(){return{controller:"UibAccordionController",controllerAs:"accordion",transclude:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/accordion/accordion.html"}}}).directive("uibAccordionGroup",function(){return{require:"^uibAccordion",transclude:!0,replace:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/accordion/accordion-group.html"},scope:{heading:"@",panelClass:"@?",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(e){this.heading=e}},link:function(e,t,n,r){r.addGroup(e),e.openClass=n.openClass||"panel-open",e.panelClass=n.panelClass||"panel-default",e.$watch("isOpen",function(n){t.toggleClass(e.openClass,!!n),n&&r.closeOthers(e)}),e.toggleOpen=function(t){e.isDisabled||t&&32!==t.which||(e.isOpen=!e.isOpen)};var i="accordiongroup-"+e.$id+"-"+Math.floor(1e4*Math.random());e.headingId=i+"-tab",e.panelId=i+"-panel"}}}).directive("uibAccordionHeading",function(){return{transclude:!0,template:"",replace:!0,require:"^uibAccordionGroup",link:function(e,t,n,r,i){r.setHeading(i(e,angular.noop))}}}).directive("uibAccordionTransclude",function(){function e(){return"uib-accordion-header,data-uib-accordion-header,x-uib-accordion-header,uib\\:accordion-header,[uib-accordion-header],[data-uib-accordion-header],[x-uib-accordion-header]"}return{require:"^uibAccordionGroup",link:function(t,n,r,i){t.$watch(function(){return i[r.uibAccordionTransclude]},function(t){if(t){var r=angular.element(n[0].querySelector(e()));r.html(""),r.append(t)}})}}}),angular.module("ui.bootstrap.alert",[]).controller("UibAlertController",["$scope","$attrs","$interpolate","$timeout",function(e,t,n,r){e.closeable=!!t.close;var i=angular.isDefined(t.dismissOnTimeout)?n(t.dismissOnTimeout)(e.$parent):null;i&&r(function(){e.close()},parseInt(i,10))}]).directive("uibAlert",function(){return{controller:"UibAlertController",controllerAs:"alert",templateUrl:function(e,t){return t.templateUrl||"uib/template/alert/alert.html"},transclude:!0,replace:!0,scope:{type:"@",close:"&"}}}),angular.module("ui.bootstrap.buttons",[]).constant("uibButtonConfig",{activeClass:"active",toggleEvent:"click"}).controller("UibButtonsController",["uibButtonConfig",function(e){this.activeClass=e.activeClass||"active",this.toggleEvent=e.toggleEvent||"click"}]).directive("uibBtnRadio",["$parse",function(e){return{require:["uibBtnRadio","ngModel"],controller:"UibButtonsController",controllerAs:"buttons",link:function(t,n,r,i){var o=i[0],a=i[1],s=e(r.uibUncheckable);n.find("input").css({display:"none"}),a.$render=function(){n.toggleClass(o.activeClass,angular.equals(a.$modelValue,t.$eval(r.uibBtnRadio)))},n.on(o.toggleEvent,function(){if(!r.disabled){var e=n.hasClass(o.activeClass);(!e||angular.isDefined(r.uncheckable))&&t.$apply(function(){a.$setViewValue(e?null:t.$eval(r.uibBtnRadio)),a.$render()})}}),r.uibUncheckable&&t.$watch(s,function(e){r.$set("uncheckable",e?"":void 0)})}}}]).directive("uibBtnCheckbox",function(){return{require:["uibBtnCheckbox","ngModel"],controller:"UibButtonsController",controllerAs:"button",link:function(e,t,n,r){function i(){return a(n.btnCheckboxTrue,!0)}function o(){return a(n.btnCheckboxFalse,!1)}function a(t,n){return angular.isDefined(t)?e.$eval(t):n}var s=r[0],l=r[1];t.find("input").css({display:"none"}),l.$render=function(){t.toggleClass(s.activeClass,angular.equals(l.$modelValue,i()))},t.on(s.toggleEvent,function(){n.disabled||e.$apply(function(){l.$setViewValue(t.hasClass(s.activeClass)?o():i()),l.$render()})})}}}),angular.module("ui.bootstrap.carousel",[]).controller("UibCarouselController",["$scope","$element","$interval","$timeout","$animate",function(e,t,n,r,i){function o(){for(;y.length;)y.shift()}function a(e){for(var t=0;t1){g[r].element.data(v,n.direction);var u=m.getCurrentIndex();angular.isNumber(u)&&g[u].element&&g[u].element.data(v,n.direction),e.$currentTransition=!0,i.on("addClass",g[r].element,function(t,n){if("close"===n&&(e.$currentTransition=null,i.off("addClass",t),y.length)){var r=y.pop().slide,a=r.index,l=a>m.getCurrentIndex()?"next":"prev";o(),s(r,a,l)}})}e.active=n.index,b=n.index,a(r),p()}}function l(e){for(var t=0;t0&&(f=n(d,t))}function d(){var t=+e.interval;h&&!isNaN(t)&&t>0&&g.length?e.next():e.pause()}var f,h,m=this,g=m.slides=e.slides=[],v="uib-slideDirection",b=e.active,y=[],$=!1;m.addSlide=function(t,n){g.push({slide:t,element:n}),g.sort(function(e,t){return+e.slide.index-+t.slide.index}),(t.index===e.active||1===g.length&&!angular.isNumber(e.active))&&(e.$currentTransition&&(e.$currentTransition=null),b=t.index,e.active=t.index,a(b),m.select(g[l(t)]),1===g.length&&e.play())},m.getCurrentIndex=function(){for(var e=0;e0&&b===n?n>=g.length?(b=g.length-1,e.active=b,a(b),m.select(g[g.length-1])):(b=n,e.active=b,a(b),m.select(g[n])):b>n&&(b--,e.active=b),0===g.length&&(b=null,e.active=null,o())},m.select=e.select=function(t,n){var r=l(t.slide);void 0===n&&(n=r>m.getCurrentIndex()?"next":"prev"),t.slide.index===b||e.$currentTransition?t&&t.slide.index!==b&&e.$currentTransition&&y.push(g[r]):s(t.slide,r,n)},e.indexOfSlide=function(e){return+e.slide.index},e.isActive=function(t){return e.active===t.slide.index},e.isPrevDisabled=function(){return 0===e.active&&e.noWrap()},e.isNextDisabled=function(){return e.active===g.length-1&&e.noWrap()},e.pause=function(){e.noPause||(h=!1,u())},e.play=function(){h||(h=!0,p())},e.$on("$destroy",function(){$=!0,u()}),e.$watch("noTransition",function(e){i.enabled(t,!e)}),e.$watch("interval",p),e.$watchCollection("slides",c),e.$watch("active",function(e){if(angular.isNumber(e)&&b!==e){for(var t=0;t-1){var a=!1;e=e.split("");for(var s=o;s-1){e=e.split(""),i[o]="("+r.regex+")",e[o]="$";for(var a=o+1,s=o+r.key.length;s>a;a++)i[a]="",e[a]="$";e=e.join(""),n.push({index:o,key:r.key,apply:r[t],matcher:r.regex})}}),{regex:new RegExp("^"+i.join("")+"$"),map:r(n,"index")}}function o(e,t,n){return 1>n?!1:1===t&&n>28?29===n&&(e%4===0&&e%100!==0||e%400===0):3===t||5===t||8===t||10===t?31>n:!0}function a(e){return parseInt(e,10)}function s(e,t){return e&&t?p(e,t):e}function l(e,t){return e&&t?p(e,t,!0):e}function u(e,t){e=e.replace(/:/g,"");var n=Date.parse("Jan 01, 1970 00:00:00 "+e)/6e4;return isNaN(n)?t:n}function c(e,t){return e=new Date(e.getTime()),e.setMinutes(e.getMinutes()+t),e}function p(e,t,n){n=n?-1:1;var r=e.getTimezoneOffset(),i=u(t,r);return c(e,n*(i-r))}var d,f,h=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;this.init=function(){d=t.id,this.parsers={},this.formatters={},f=[{key:"yyyy",regex:"\\d{4}",apply:function(e){this.year=+e},formatter:function(e){var t=new Date;return t.setFullYear(Math.abs(e.getFullYear())),n(t,"yyyy")}},{key:"yy",regex:"\\d{2}",apply:function(e){e=+e,this.year=69>e?e+2e3:e+1900},formatter:function(e){var t=new Date;return t.setFullYear(Math.abs(e.getFullYear())),n(t,"yy")}},{key:"y",regex:"\\d{1,4}",apply:function(e){this.year=+e},formatter:function(e){var t=new Date;return t.setFullYear(Math.abs(e.getFullYear())),n(t,"y")}},{key:"M!",regex:"0?[1-9]|1[0-2]",apply:function(e){this.month=e-1},formatter:function(e){var t=e.getMonth();return/^[0-9]$/.test(t)?n(e,"MM"):n(e,"M")}},{key:"MMMM",regex:t.DATETIME_FORMATS.MONTH.join("|"),apply:function(e){this.month=t.DATETIME_FORMATS.MONTH.indexOf(e)},formatter:function(e){return n(e,"MMMM")}},{key:"MMM",regex:t.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(e){this.month=t.DATETIME_FORMATS.SHORTMONTH.indexOf(e)},formatter:function(e){return n(e,"MMM")}},{key:"MM",regex:"0[1-9]|1[0-2]",apply:function(e){this.month=e-1},formatter:function(e){return n(e,"MM")}},{key:"M",regex:"[1-9]|1[0-2]",apply:function(e){this.month=e-1},formatter:function(e){return n(e,"M")}},{key:"d!",regex:"[0-2]?[0-9]{1}|3[0-1]{1}",apply:function(e){this.date=+e},formatter:function(e){var t=e.getDate();return/^[1-9]$/.test(t)?n(e,"dd"):n(e,"d")}},{key:"dd",regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(e){this.date=+e},formatter:function(e){return n(e,"dd")}},{key:"d",regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(e){this.date=+e},formatter:function(e){return n(e,"d")}},{key:"EEEE",regex:t.DATETIME_FORMATS.DAY.join("|"),formatter:function(e){return n(e,"EEEE")}},{key:"EEE",regex:t.DATETIME_FORMATS.SHORTDAY.join("|"),formatter:function(e){return n(e,"EEE")}},{key:"HH",regex:"(?:0|1)[0-9]|2[0-3]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"HH")}},{key:"hh",regex:"0[0-9]|1[0-2]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"hh")}},{key:"H",regex:"1?[0-9]|2[0-3]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"H")}},{key:"h",regex:"[0-9]|1[0-2]",apply:function(e){this.hours=+e},formatter:function(e){return n(e,"h")}},{key:"mm",regex:"[0-5][0-9]",apply:function(e){this.minutes=+e},formatter:function(e){return n(e,"mm")}},{key:"m",regex:"[0-9]|[1-5][0-9]",apply:function(e){this.minutes=+e},formatter:function(e){return n(e,"m")}},{key:"sss",regex:"[0-9][0-9][0-9]",apply:function(e){this.milliseconds=+e},formatter:function(e){return n(e,"sss")}},{key:"ss",regex:"[0-5][0-9]",apply:function(e){this.seconds=+e},formatter:function(e){return n(e,"ss")}},{key:"s",regex:"[0-9]|[1-5][0-9]",apply:function(e){this.seconds=+e},formatter:function(e){return n(e,"s")}},{key:"a",regex:t.DATETIME_FORMATS.AMPMS.join("|"),apply:function(e){12===this.hours&&(this.hours=0),"PM"===e&&(this.hours+=12)},formatter:function(e){return n(e,"a")}},{key:"Z",regex:"[+-]\\d{4}",apply:function(e){var t=e.match(/([+-])(\d{2})(\d{2})/),n=t[1],r=t[2],i=t[3];this.hours+=a(n+r),this.minutes+=a(n+i)},formatter:function(e){return n(e,"Z")}},{key:"ww",regex:"[0-4][0-9]|5[0-3]",formatter:function(e){return n(e,"ww")}},{key:"w",regex:"[0-9]|[1-4][0-9]|5[0-3]",formatter:function(e){return n(e,"w")}},{key:"GGGG",regex:t.DATETIME_FORMATS.ERANAMES.join("|").replace(/\s/g,"\\s"),formatter:function(e){return n(e,"GGGG")}},{key:"GGG",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(e){return n(e,"GGG")}},{key:"GG",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(e){return n(e,"GG")}},{key:"G",regex:t.DATETIME_FORMATS.ERAS.join("|"),formatter:function(e){return n(e,"G")}}]},this.init(),this.filter=function(e,n){if(!angular.isDate(e)||isNaN(e)||!n)return"";n=t.DATETIME_FORMATS[n]||n,t.id!==d&&this.init(),this.formatters[n]||(this.formatters[n]=i(n,"formatter"));var r=this.formatters[n],o=r.map,a=n;return o.reduce(function(t,n,r){var i=a.match(new RegExp("(.*)"+n.key));i&&angular.isString(i[1])&&(t+=i[1],a=a.replace(i[1]+n.key,""));var s=r===o.length-1?a:"";return n.apply?t+n.apply.call(null,e)+s:t+s},"")},this.parse=function(n,r,a){if(!angular.isString(n)||!r)return n;r=t.DATETIME_FORMATS[r]||r,r=r.replace(h,"\\$&"),t.id!==d&&this.init(),this.parsers[r]||(this.parsers[r]=i(r,"apply"));var s=this.parsers[r],l=s.regex,u=s.map,c=n.match(l),p=!1;if(c&&c.length){var f,m;angular.isDate(a)&&!isNaN(a.getTime())?f={year:a.getFullYear(),month:a.getMonth(),date:a.getDate(),hours:a.getHours(),minutes:a.getMinutes(),seconds:a.getSeconds(),milliseconds:a.getMilliseconds()}:(a&&e.warn("dateparser:","baseDate is not a valid date"),f={year:1900,month:0,date:1,hours:0,minutes:0,seconds:0,milliseconds:0});for(var g=1,v=c.length;v>g;g++){var b=u[g-1];"Z"===b.matcher&&(p=!0),b.apply&&b.apply.call(f,c[g])}var y=p?Date.prototype.setUTCFullYear:Date.prototype.setFullYear,$=p?Date.prototype.setUTCHours:Date.prototype.setHours;return o(f.year,f.month,f.date)&&(!angular.isDate(a)||isNaN(a.getTime())||p?(m=new Date(0),y.call(m,f.year,f.month,f.date),$.call(m,f.hours||0,f.minutes||0,f.seconds||0,f.milliseconds||0)):(m=new Date(a),y.call(m,f.year,f.month,f.date),$.call(m,f.hours,f.minutes,f.seconds,f.milliseconds))),m}},this.toTimezone=s,this.fromTimezone=l,this.timezoneToOffset=u,this.addDateMinutes=c,this.convertTimezoneToLocal=p}]),angular.module("ui.bootstrap.isClass",[]).directive("uibIsClass",["$animate",function(e){var t=/^\s*([\s\S]+?)\s+on\s+([\s\S]+?)\s*$/,n=/^\s*([\s\S]+?)\s+for\s+([\s\S]+?)\s*$/;return{restrict:"A",compile:function(r,i){function o(e,t,n){l.push(e),u.push({scope:e,element:t}),h.forEach(function(t,n){a(t,e)}),e.$on("$destroy",s)}function a(t,r){var i=t.match(n),o=r.$eval(i[1]),a=i[2],s=c[t];if(!s){var l=function(t){var n=null;u.some(function(e){var r=e.scope.$eval(d);return r===t?(n=e,!0):void 0}),s.lastActivated!==n&&(s.lastActivated&&e.removeClass(s.lastActivated.element,o),n&&e.addClass(n.element,o),s.lastActivated=n)};c[t]=s={lastActivated:null,scope:r,watchFn:l,compareWithExp:a,watcher:r.$watch(a,l)}}s.watchFn(r.$eval(a))}function s(e){var t=e.targetScope,n=l.indexOf(t);if(l.splice(n,1),u.splice(n,1),l.length){var r=l[0];angular.forEach(c,function(e){e.scope===t&&(e.watcher=r.$watch(e.compareWithExp,e.watchFn),e.scope=r)})}else c={}}var l=[],u=[],c={},p=i.uibIsClass.match(t),d=p[2],f=p[1],h=f.split(",");return o}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.isClass"]).value("$datepickerSuppressError",!1).value("$datepickerLiteralWarning",!0).constant("uibDatepickerConfig",{datepickerMode:"day",formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",maxDate:null,maxMode:"year",minDate:null,minMode:"day",ngModelOptions:{},shortcutPropagation:!1,showWeeks:!0,yearColumns:5,yearRows:4}).controller("UibDatepickerController",["$scope","$attrs","$parse","$interpolate","$locale","$log","dateFilter","uibDatepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","uibDateParser",function(e,t,n,r,i,o,a,s,l,u,c){function p(t){e.datepickerMode=t,e.datepickerOptions.datepickerMode=t}var d=this,f={$setViewValue:angular.noop},h={},m=[];!!t.datepickerOptions;e.datepickerOptions||(e.datepickerOptions={}),this.modes=["day","month","year"],["customClass","dateDisabled","datepickerMode","formatDay","formatDayHeader","formatDayTitle","formatMonth","formatMonthTitle","formatYear","maxDate","maxMode","minDate","minMode","showWeeks","shortcutPropagation","startingDay","yearColumns","yearRows"].forEach(function(t){switch(t){case"customClass":case"dateDisabled":e[t]=e.datepickerOptions[t]||angular.noop;break;case"datepickerMode":e.datepickerMode=angular.isDefined(e.datepickerOptions.datepickerMode)?e.datepickerOptions.datepickerMode:s.datepickerMode;break;case"formatDay":case"formatDayHeader":case"formatDayTitle":case"formatMonth":case"formatMonthTitle":case"formatYear":d[t]=angular.isDefined(e.datepickerOptions[t])?r(e.datepickerOptions[t])(e.$parent):s[t];break;case"showWeeks":case"shortcutPropagation":case"yearColumns":case"yearRows":d[t]=angular.isDefined(e.datepickerOptions[t])?e.datepickerOptions[t]:s[t];break;case"startingDay":angular.isDefined(e.datepickerOptions.startingDay)?d.startingDay=e.datepickerOptions.startingDay:angular.isNumber(s.startingDay)?d.startingDay=s.startingDay:d.startingDay=(i.DATETIME_FORMATS.FIRSTDAYOFWEEK+8)%7;break;case"maxDate":case"minDate":e.$watch("datepickerOptions."+t,function(e){e?angular.isDate(e)?d[t]=c.fromTimezone(new Date(e),h.timezone):(l&&o.warn("Literal date support has been deprecated, please switch to date object usage"),d[t]=new Date(a(e,"medium"))):d[t]=s[t]?c.fromTimezone(new Date(s[t]),h.timezone):null,d.refreshView()});break;case"maxMode":case"minMode":e.datepickerOptions[t]?e.$watch(function(){return e.datepickerOptions[t]},function(n){d[t]=e[t]=angular.isDefined(n)?n:datepickerOptions[t],("minMode"===t&&d.modes.indexOf(e.datepickerOptions.datepickerMode)d.modes.indexOf(d[t]))&&(e.datepickerMode=d[t],e.datepickerOptions.datepickerMode=d[t])}):d[t]=e[t]=s[t]||null}}),e.uniqueId="datepicker-"+e.$id+"-"+Math.floor(1e4*Math.random()),e.disabled=angular.isDefined(t.disabled)||!1,angular.isDefined(t.ngDisabled)&&m.push(e.$parent.$watch(t.ngDisabled,function(t){e.disabled=t,d.refreshView()})),e.isActive=function(t){return 0===d.compare(t.date,d.activeDate)?(e.activeDateId=t.uid,!0):!1},this.init=function(t){f=t,h=t.$options||s.ngModelOptions,e.datepickerOptions.initDate?(d.activeDate=c.fromTimezone(e.datepickerOptions.initDate,h.timezone)||new Date,e.$watch("datepickerOptions.initDate",function(e){e&&(f.$isEmpty(f.$modelValue)||f.$invalid)&&(d.activeDate=c.fromTimezone(e,h.timezone),d.refreshView())})):d.activeDate=new Date;var n=f.$modelValue?new Date(f.$modelValue):new Date;this.activeDate=isNaN(n)?c.fromTimezone(new Date,h.timezone):c.fromTimezone(n,h.timezone),f.$render=function(){d.render()}},this.render=function(){if(f.$viewValue){var e=new Date(f.$viewValue),t=!isNaN(e);t?this.activeDate=c.fromTimezone(e,h.timezone):u||o.error('Datepicker directive: "ng-model" value must be a Date object')}this.refreshView()},this.refreshView=function(){if(this.element){e.selectedDt=null,this._refreshView(),e.activeDt&&(e.activeDateId=e.activeDt.uid);var t=f.$viewValue?new Date(f.$viewValue):null;t=c.fromTimezone(t,h.timezone),f.$setValidity("dateDisabled",!t||this.element&&!this.isDisabled(t))}},this.createDateObject=function(t,n){var r=f.$viewValue?new Date(f.$viewValue):null;r=c.fromTimezone(r,h.timezone);var i=new Date;i=c.fromTimezone(i,h.timezone);var o=this.compare(t,i),a={date:t,label:c.filter(t,n),selected:r&&0===this.compare(t,r),disabled:this.isDisabled(t),past:0>o,current:0===o,future:o>0,customClass:this.customClass(t)||null};return r&&0===this.compare(t,r)&&(e.selectedDt=a),d.activeDate&&0===this.compare(a.date,d.activeDate)&&(e.activeDt=a),a},this.isDisabled=function(t){return e.disabled||this.minDate&&this.compare(t,this.minDate)<0||this.maxDate&&this.compare(t,this.maxDate)>0||e.dateDisabled&&e.dateDisabled({date:t,mode:e.datepickerMode})},this.customClass=function(t){return e.customClass({date:t,mode:e.datepickerMode})},this.split=function(e,t){for(var n=[];e.length>0;)n.push(e.splice(0,t));return n},e.select=function(t){if(e.datepickerMode===d.minMode){var n=f.$viewValue?c.fromTimezone(new Date(f.$viewValue),h.timezone):new Date(0,0,0,0,0,0,0);n.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),n=c.toTimezone(n,h.timezone),f.$setViewValue(n),f.$render()}else d.activeDate=t,p(d.modes[d.modes.indexOf(e.datepickerMode)-1]),e.$emit("uib:datepicker.mode");e.$broadcast("uib:datepicker.focus")},e.move=function(e){var t=d.activeDate.getFullYear()+e*(d.step.years||0),n=d.activeDate.getMonth()+e*(d.step.months||0);d.activeDate.setFullYear(t,n,1),d.refreshView()},e.toggleMode=function(t){t=t||1,e.datepickerMode===d.maxMode&&1===t||e.datepickerMode===d.minMode&&-1===t||(p(d.modes[d.modes.indexOf(e.datepickerMode)+t]),e.$emit("uib:datepicker.mode"))},e.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};var g=function(){d.element[0].focus()};e.$on("uib:datepicker.focus",g),e.keydown=function(t){var n=e.keys[t.which];if(n&&!t.shiftKey&&!t.altKey&&!e.disabled)if(t.preventDefault(),d.shortcutPropagation||t.stopPropagation(),"enter"===n||"space"===n){if(d.isDisabled(d.activeDate))return;e.select(d.activeDate)}else!t.ctrlKey||"up"!==n&&"down"!==n?(d.handleKeyDown(n,t),d.refreshView()):e.toggleMode("up"===n?1:-1)},e.$on("$destroy",function(){for(;m.length;)m.shift()()})}]).controller("UibDaypickerController",["$scope","$element","dateFilter",function(e,t,n){function r(e,t){return 1!==t||e%4!==0||e%100===0&&e%400!==0?o[t]:29}function i(e){var t=new Date(e);t.setDate(t.getDate()+4-(t.getDay()||7));var n=t.getTime();return t.setMonth(0),t.setDate(1),Math.floor(Math.round((n-t)/864e5)/7)+1}var o=[31,28,31,30,31,30,31,31,30,31,30,31];this.step={months:1},this.element=t,this.init=function(t){angular.extend(t,this),e.showWeeks=t.showWeeks,t.refreshView()},this.getDates=function(e,t){for(var n,r=new Array(t),i=new Date(e),o=0;t>o;)n=new Date(i),r[o++]=n,i.setDate(i.getDate()+1);return r},this._refreshView=function(){var t=this.activeDate.getFullYear(),r=this.activeDate.getMonth(),o=new Date(this.activeDate);o.setFullYear(t,r,1);var a=this.startingDay-o.getDay(),s=a>0?7-a:-a,l=new Date(o);s>0&&l.setDate(-s+1);for(var u=this.getDates(l,42),c=0;42>c;c++)u[c]=angular.extend(this.createDateObject(u[c],this.formatDay),{secondary:u[c].getMonth()!==r,uid:e.uniqueId+"-"+c});e.labels=new Array(7);for(var p=0;7>p;p++)e.labels[p]={abbr:n(u[p].date,this.formatDayHeader),full:n(u[p].date,"EEEE")};if(e.title=n(this.activeDate,this.formatDayTitle),e.rows=this.split(u,7),e.showWeeks){e.weekNumbers=[];for(var d=(11-this.startingDay)%7,f=e.rows.length,h=0;f>h;h++)e.weekNumbers.push(i(e.rows[h][d].date))}},this.compare=function(e,t){var n=new Date(e.getFullYear(),e.getMonth(),e.getDate()),r=new Date(t.getFullYear(),t.getMonth(),t.getDate());return n.setFullYear(e.getFullYear()),r.setFullYear(t.getFullYear()),n-r},this.handleKeyDown=function(e,t){var n=this.activeDate.getDate();if("left"===e)n-=1;else if("up"===e)n-=7;else if("right"===e)n+=1;else if("down"===e)n+=7;else if("pageup"===e||"pagedown"===e){var i=this.activeDate.getMonth()+("pageup"===e?-1:1);this.activeDate.setMonth(i,1),n=Math.min(r(this.activeDate.getFullYear(),this.activeDate.getMonth()),n)}else"home"===e?n=1:"end"===e&&(n=r(this.activeDate.getFullYear(),this.activeDate.getMonth()));this.activeDate.setDate(n)}}]).controller("UibMonthpickerController",["$scope","$element","dateFilter",function(e,t,n){this.step={years:1},this.element=t,this.init=function(e){angular.extend(e,this),e.refreshView()},this._refreshView=function(){for(var t,r=new Array(12),i=this.activeDate.getFullYear(),o=0;12>o;o++)t=new Date(this.activeDate),t.setFullYear(i,o,1),r[o]=angular.extend(this.createDateObject(t,this.formatMonth),{uid:e.uniqueId+"-"+o});e.title=n(this.activeDate,this.formatMonthTitle),e.rows=this.split(r,3)},this.compare=function(e,t){var n=new Date(e.getFullYear(),e.getMonth()),r=new Date(t.getFullYear(),t.getMonth());return n.setFullYear(e.getFullYear()),r.setFullYear(t.getFullYear()),n-r},this.handleKeyDown=function(e,t){var n=this.activeDate.getMonth();if("left"===e)n-=1;else if("up"===e)n-=3;else if("right"===e)n+=1;else if("down"===e)n+=3;else if("pageup"===e||"pagedown"===e){var r=this.activeDate.getFullYear()+("pageup"===e?-1:1);this.activeDate.setFullYear(r)}else"home"===e?n=0:"end"===e&&(n=11);this.activeDate.setMonth(n)}}]).controller("UibYearpickerController",["$scope","$element","dateFilter",function(e,t,n){function r(e){return parseInt((e-1)/o,10)*o+1}var i,o;this.element=t,this.yearpickerInit=function(){i=this.yearColumns,o=this.yearRows*i,this.step={years:o}},this._refreshView=function(){for(var t,n=new Array(o),a=0,s=r(this.activeDate.getFullYear());o>a;a++)t=new Date(this.activeDate),t.setFullYear(s+a,0,1),n[a]=angular.extend(this.createDateObject(t,this.formatYear),{uid:e.uniqueId+"-"+a});e.title=[n[0].label,n[o-1].label].join(" - "),e.rows=this.split(n,i),e.columns=i},this.compare=function(e,t){return e.getFullYear()-t.getFullYear()},this.handleKeyDown=function(e,t){var n=this.activeDate.getFullYear();"left"===e?n-=1:"up"===e?n-=i:"right"===e?n+=1:"down"===e?n+=i:"pageup"===e||"pagedown"===e?n+=("pageup"===e?-1:1)*o:"home"===e?n=r(this.activeDate.getFullYear()):"end"===e&&(n=r(this.activeDate.getFullYear())+o-1),this.activeDate.setFullYear(n)}}]).directive("uibDatepicker",function(){return{replace:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/datepicker.html"},scope:{datepickerOptions:"=?"},require:["uibDatepicker","^ngModel"],controller:"UibDatepickerController",controllerAs:"datepicker",link:function(e,t,n,r){var i=r[0],o=r[1];i.init(o)}}}).directive("uibDaypicker",function(){return{replace:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/day.html"},require:["^uibDatepicker","uibDaypicker"],controller:"UibDaypickerController",link:function(e,t,n,r){var i=r[0],o=r[1];o.init(i)}}}).directive("uibMonthpicker",function(){return{replace:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/month.html"},require:["^uibDatepicker","uibMonthpicker"],controller:"UibMonthpickerController",link:function(e,t,n,r){var i=r[0],o=r[1];o.init(i)}}}).directive("uibYearpicker",function(){return{replace:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/datepicker/year.html"},require:["^uibDatepicker","uibYearpicker"],controller:"UibYearpickerController",link:function(e,t,n,r){var i=r[0];angular.extend(i,r[1]),i.yearpickerInit(),i.refreshView()}}}),angular.module("ui.bootstrap.position",[]).factory("$uibPosition",["$document","$window",function(e,t){var n,r,i={normal:/(auto|scroll)/,hidden:/(auto|scroll|hidden)/},o={auto:/\s?auto?\s?/i,primary:/^(top|bottom|left|right)$/,secondary:/^(top|bottom|left|right|center)$/,vertical:/^(top|bottom)$/},a=/(HTML|BODY)/;return{getRawNode:function(e){return e.nodeName?e:e[0]||e},parseStyle:function(e){return e=parseFloat(e),isFinite(e)?e:0},offsetParent:function(n){function r(e){return"static"===(t.getComputedStyle(e).position||"static")}n=this.getRawNode(n);for(var i=n.offsetParent||e[0].documentElement;i&&i!==e[0].documentElement&&r(i);)i=i.offsetParent;return i||e[0].documentElement},scrollbarWidth:function(i){if(i){if(angular.isUndefined(r)){var o=e.find("body");o.addClass("uib-position-body-scrollbar-measure"),r=t.innerWidth-o[0].clientWidth,r=isFinite(r)?r:0,o.removeClass("uib-position-body-scrollbar-measure")}return r}if(angular.isUndefined(n)){var a=angular.element('
    ');e.find("body").append(a),n=a[0].offsetWidth-a[0].clientWidth,n=isFinite(n)?n:0,a.remove()}return n},scrollbarPadding:function(e){e=this.getRawNode(e);var n=t.getComputedStyle(e),r=this.parseStyle(n.paddingRight),i=this.parseStyle(n.paddingBottom),o=this.scrollParent(e,!1,!0),s=this.scrollbarWidth(o,a.test(o.tagName));return{scrollbarWidth:s,widthOverflow:o.scrollWidth>o.clientWidth,right:r+s,originalRight:r,heightOverflow:o.scrollHeight>o.clientHeight, +bottom:i+s,originalBottom:i}},isScrollable:function(e,n){e=this.getRawNode(e);var r=n?i.hidden:i.normal,o=t.getComputedStyle(e);return r.test(o.overflow+o.overflowY+o.overflowX)},scrollParent:function(n,r,o){n=this.getRawNode(n);var a=r?i.hidden:i.normal,s=e[0].documentElement,l=t.getComputedStyle(n);if(o&&a.test(l.overflow+l.overflowY+l.overflowX))return n;var u="absolute"===l.position,c=n.parentElement||s;if(c===s||"fixed"===l.position)return s;for(;c.parentElement&&c!==s;){var p=t.getComputedStyle(c);if(u&&"static"!==p.position&&(u=!1),!u&&a.test(p.overflow+p.overflowY+p.overflowX))break;c=c.parentElement}return c},position:function(n,r){n=this.getRawNode(n);var i=this.offset(n);if(r){var o=t.getComputedStyle(n);i.top-=this.parseStyle(o.marginTop),i.left-=this.parseStyle(o.marginLeft)}var a=this.offsetParent(n),s={top:0,left:0};return a!==e[0].documentElement&&(s=this.offset(a),s.top+=a.clientTop-a.scrollTop,s.left+=a.clientLeft-a.scrollLeft),{width:Math.round(angular.isNumber(i.width)?i.width:n.offsetWidth),height:Math.round(angular.isNumber(i.height)?i.height:n.offsetHeight),top:Math.round(i.top-s.top),left:Math.round(i.left-s.left)}},offset:function(n){n=this.getRawNode(n);var r=n.getBoundingClientRect();return{width:Math.round(angular.isNumber(r.width)?r.width:n.offsetWidth),height:Math.round(angular.isNumber(r.height)?r.height:n.offsetHeight),top:Math.round(r.top+(t.pageYOffset||e[0].documentElement.scrollTop)),left:Math.round(r.left+(t.pageXOffset||e[0].documentElement.scrollLeft))}},viewportOffset:function(n,r,i){n=this.getRawNode(n),i=i!==!1?!0:!1;var o=n.getBoundingClientRect(),a={top:0,left:0,bottom:0,right:0},s=r?e[0].documentElement:this.scrollParent(n),l=s.getBoundingClientRect();if(a.top=l.top+s.clientTop,a.left=l.left+s.clientLeft,s===e[0].documentElement&&(a.top+=t.pageYOffset,a.left+=t.pageXOffset),a.bottom=a.top+s.clientHeight,a.right=a.left+s.clientWidth,i){var u=t.getComputedStyle(s);a.top+=this.parseStyle(u.paddingTop),a.bottom-=this.parseStyle(u.paddingBottom),a.left+=this.parseStyle(u.paddingLeft),a.right-=this.parseStyle(u.paddingRight)}return{top:Math.round(o.top-a.top),bottom:Math.round(a.bottom-o.bottom),left:Math.round(o.left-a.left),right:Math.round(a.right-o.right)}},parsePlacement:function(e){var t=o.auto.test(e);return t&&(e=e.replace(o.auto,"")),e=e.split("-"),e[0]=e[0]||"top",o.primary.test(e[0])||(e[0]="top"),e[1]=e[1]||"center",o.secondary.test(e[1])||(e[1]="center"),t?e[2]=!0:e[2]=!1,e},positionElements:function(e,n,r,i){e=this.getRawNode(e),n=this.getRawNode(n);var a=angular.isDefined(n.offsetWidth)?n.offsetWidth:n.prop("offsetWidth"),s=angular.isDefined(n.offsetHeight)?n.offsetHeight:n.prop("offsetHeight");r=this.parsePlacement(r);var l=i?this.offset(e):this.position(e),u={top:0,left:0,placement:""};if(r[2]){var c=this.viewportOffset(e,i),p=t.getComputedStyle(n),d={width:a+Math.round(Math.abs(this.parseStyle(p.marginLeft)+this.parseStyle(p.marginRight))),height:s+Math.round(Math.abs(this.parseStyle(p.marginTop)+this.parseStyle(p.marginBottom)))};if(r[0]="top"===r[0]&&d.height>c.top&&d.height<=c.bottom?"bottom":"bottom"===r[0]&&d.height>c.bottom&&d.height<=c.top?"top":"left"===r[0]&&d.width>c.left&&d.width<=c.right?"right":"right"===r[0]&&d.width>c.right&&d.width<=c.left?"left":r[0],r[1]="top"===r[1]&&d.height-l.height>c.bottom&&d.height-l.height<=c.top?"bottom":"bottom"===r[1]&&d.height-l.height>c.top&&d.height-l.height<=c.bottom?"top":"left"===r[1]&&d.width-l.width>c.right&&d.width-l.width<=c.left?"right":"right"===r[1]&&d.width-l.width>c.left&&d.width-l.width<=c.right?"left":r[1],"center"===r[1])if(o.vertical.test(r[0])){var f=l.width/2-a/2;c.left+f<0&&d.width-l.width<=c.right?r[1]="left":c.right+f<0&&d.width-l.width<=c.left&&(r[1]="right")}else{var h=l.height/2-d.height/2;c.top+h<0&&d.height-l.height<=c.bottom?r[1]="top":c.bottom+h<0&&d.height-l.height<=c.top&&(r[1]="bottom")}}switch(r[0]){case"top":u.top=l.top-s;break;case"bottom":u.top=l.top+l.height;break;case"left":u.left=l.left-a;break;case"right":u.left=l.left+l.width}switch(r[1]){case"top":u.top=l.top;break;case"bottom":u.top=l.top+l.height-s;break;case"left":u.left=l.left;break;case"right":u.left=l.left+l.width-a;break;case"center":o.vertical.test(r[0])?u.left=l.left+l.width/2-a/2:u.top=l.top+l.height/2-s/2}return u.top=Math.round(u.top),u.left=Math.round(u.left),u.placement="center"===r[1]?r[0]:r[0]+"-"+r[1],u},positionArrow:function(e,n){e=this.getRawNode(e);var r=e.querySelector(".tooltip-inner, .popover-inner");if(r){var i=angular.element(r).hasClass("tooltip-inner"),a=i?e.querySelector(".tooltip-arrow"):e.querySelector(".arrow");if(a){var s={top:"",bottom:"",left:"",right:""};if(n=this.parsePlacement(n),"center"===n[1])return void angular.element(a).css(s);var l="border-"+n[0]+"-width",u=t.getComputedStyle(a)[l],c="border-";c+=o.vertical.test(n[0])?n[0]+"-"+n[1]:n[1]+"-"+n[0],c+="-radius";var p=t.getComputedStyle(i?r:e)[c];switch(n[0]){case"top":s.bottom=i?"0":"-"+u;break;case"bottom":s.top=i?"0":"-"+u;break;case"left":s.right=i?"0":"-"+u;break;case"right":s.left=i?"0":"-"+u}s[n[1]]=p,angular.element(a).css(s)}}}}}]),angular.module("ui.bootstrap.datepickerPopup",["ui.bootstrap.datepicker","ui.bootstrap.position"]).value("$datepickerPopupLiteralWarning",!0).constant("uibDatepickerPopupConfig",{altInputFormats:[],appendToBody:!1,clearText:"Clear",closeOnDateSelection:!0,closeText:"Done",currentText:"Today",datepickerPopup:"yyyy-MM-dd",datepickerPopupTemplateUrl:"uib/template/datepickerPopup/popup.html",datepickerTemplateUrl:"uib/template/datepicker/datepicker.html",html5Types:{date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm:ss.sss",month:"yyyy-MM"},onOpenFocus:!0,showButtonBar:!0,placement:"auto bottom-left"}).controller("UibDatepickerPopupController",["$scope","$element","$attrs","$compile","$log","$parse","$window","$document","$rootScope","$uibPosition","dateFilter","uibDateParser","uibDatepickerPopupConfig","$timeout","uibDatepickerConfig","$datepickerPopupLiteralWarning",function(e,t,n,r,i,o,a,s,l,u,c,p,d,f,h,m){function g(t){var n=p.parse(t,C,e.date);if(isNaN(n))for(var r=0;r
    "),P?(O=P.timezone,e.ngModelOptions=angular.copy(P),e.ngModelOptions.timezone=null,e.ngModelOptions.updateOnDefault===!0&&(e.ngModelOptions.updateOn=e.ngModelOptions.updateOn?e.ngModelOptions.updateOn+" default":"default"),M.attr("ng-model-options","ngModelOptions")):O=null,M.attr({"ng-model":"date","ng-change":"dateSelection(date)","template-url":T}),E=angular.element(M.children()[0]),E.attr("template-url",k),e.datepickerOptions||(e.datepickerOptions={}),F&&"month"===n.type&&(e.datepickerOptions.datepickerMode="month",e.datepickerOptions.minMode="month"),E.attr("datepicker-options","datepickerOptions"),F?A.$formatters.push(function(t){return e.date=p.fromTimezone(t,O),t}):(A.$$parserName="date",A.$validators.date=b,A.$parsers.unshift(v),A.$formatters.push(function(t){return A.$isEmpty(t)?(e.date=t,t):(angular.isNumber(t)&&(t=new Date(t)),e.date=p.fromTimezone(t,O),p.filter(e.date,C))})),A.$viewChangeListeners.push(function(){e.date=g(A.$viewValue)}),t.on("keydown",$),L=r(M)(e),M.remove(),S?s.find("body").append(L):t.after(L),e.$on("$destroy",function(){for(e.isOpen===!0&&(l.$$phase||e.$apply(function(){e.isOpen=!1})),L.remove(),t.off("keydown",$),s.off("click",y),N&&N.off("scroll",x),angular.element(a).off("resize",x);R.length;)R.shift()()})},e.getText=function(t){return e[t+"Text"]||d[t+"Text"]},e.isDisabled=function(t){"today"===t&&(t=p.fromTimezone(new Date,O));var n={};return angular.forEach(["minDate","maxDate"],function(t){e.datepickerOptions[t]?angular.isDate(e.datepickerOptions[t])?n[t]=p.fromTimezone(new Date(e.datepickerOptions[t]),O):(m&&i.warn("Literal date support has been deprecated, please switch to date object usage"),n[t]=new Date(c(e.datepickerOptions[t],"medium"))):n[t]=null}),e.datepickerOptions&&n.minDate&&e.compare(t,n.minDate)<0||n.maxDate&&e.compare(t,n.maxDate)>0},e.compare=function(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate())-new Date(t.getFullYear(),t.getMonth(),t.getDate())},e.dateSelection=function(n){angular.isDefined(n)&&(e.date=n);var r=e.date?p.filter(e.date,C):null;t.val(r),A.$setViewValue(r),w&&(e.isOpen=!1,t[0].focus())},e.keydown=function(n){27===n.which&&(n.stopPropagation(),e.isOpen=!1,t[0].focus())},e.select=function(t,n){if(n.stopPropagation(),"today"===t){var r=new Date;angular.isDate(e.date)?(t=new Date(e.date),t.setFullYear(r.getFullYear(),r.getMonth(),r.getDate())):t=new Date(r.setHours(0,0,0,0))}e.dateSelection(t)},e.close=function(n){n.stopPropagation(),e.isOpen=!1,t[0].focus()},e.disabled=angular.isDefined(n.disabled)||!1,n.ngDisabled&&R.push(e.$parent.$watch(o(n.ngDisabled),function(t){e.disabled=t})),e.$watch("isOpen",function(r){r?e.disabled?e.isOpen=!1:f(function(){x(),D&&e.$broadcast("uib:datepicker.focus"),s.on("click",y);var r=n.popupPlacement?n.popupPlacement:d.placement;S||u.parsePlacement(r)[2]?(N=N||angular.element(u.scrollParent(t)),N&&N.on("scroll",x)):N=null,angular.element(a).on("resize",x)},0,!1):(s.off("click",y),N&&N.off("scroll",x),angular.element(a).off("resize",x))}),e.$on("uib:datepicker.mode",function(){f(x,0,!1)})}]).directive("uibDatepickerPopup",function(){return{require:["ngModel","uibDatepickerPopup"],controller:"UibDatepickerPopupController",scope:{datepickerOptions:"=?",isOpen:"=?",currentText:"@",clearText:"@",closeText:"@"},link:function(e,t,n,r){var i=r[0],o=r[1];o.init(i)}}}).directive("uibDatepickerPopupWrap",function(){return{replace:!0,transclude:!0,templateUrl:function(e,t){return t.templateUrl||"uib/template/datepickerPopup/popup.html"}}}),angular.module("ui.bootstrap.debounce",[]).factory("$$debounce",["$timeout",function(e){return function(t,n){var r;return function(){var i=this,o=Array.prototype.slice.call(arguments);r&&e.cancel(r),r=e(function(){t.apply(i,o)},n)}}}]),angular.module("ui.bootstrap.dropdown",["ui.bootstrap.position"]).constant("uibDropdownConfig",{appendToOpenClass:"uib-dropdown-open",openClass:"open"}).service("uibDropdownService",["$document","$rootScope",function(e,t){var n=null;this.open=function(t,o){n||(e.on("click",r),o.on("keydown",i)),n&&n!==t&&(n.isOpen=!1),n=t},this.close=function(t,o){n===t&&(n=null,e.off("click",r),o.off("keydown",i))};var r=function(e){if(n&&!(e&&"disabled"===n.getAutoClose()||e&&3===e.which)){var r=n.getToggleElement();if(!(e&&r&&r[0].contains(e.target))){var i=n.getDropdownElement();e&&"outsideClick"===n.getAutoClose()&&i&&i[0].contains(e.target)||(n.isOpen=!1,t.$$phase||n.$apply())}}},i=function(e){27===e.which?(e.stopPropagation(),n.focusToggleElement(),r()):n.isKeynavEnabled()&&-1!==[38,40].indexOf(e.which)&&n.isOpen&&(e.preventDefault(),e.stopPropagation(),n.focusDropdownEntry(e.which))}}]).controller("UibDropdownController",["$scope","$element","$attrs","$parse","uibDropdownConfig","uibDropdownService","$animate","$uibPosition","$document","$compile","$templateRequest",function(e,t,n,r,i,o,a,s,l,u,c){var p,d,f=this,h=e.$new(),m=i.appendToOpenClass,g=i.openClass,v=angular.noop,b=n.onToggle?r(n.onToggle):angular.noop,y=!1,$=null,x=!1,C=l.find("body");t.addClass("dropdown"),this.init=function(){if(n.isOpen&&(d=r(n.isOpen),v=d.assign,e.$watch(d,function(e){h.isOpen=!!e})),angular.isDefined(n.dropdownAppendTo)){var i=r(n.dropdownAppendTo)(h);i&&($=angular.element(i))}y=angular.isDefined(n.dropdownAppendToBody),x=angular.isDefined(n.keyboardNav),y&&!$&&($=C),$&&f.dropdownMenu&&($.append(f.dropdownMenu),t.on("$destroy",function(){f.dropdownMenu.remove()}))},this.toggle=function(e){return h.isOpen=arguments.length?!!e:!h.isOpen,angular.isFunction(v)&&v(h,h.isOpen),h.isOpen},this.isOpen=function(){return h.isOpen},h.getToggleElement=function(){return f.toggleElement},h.getAutoClose=function(){return n.autoClose||"always"},h.getElement=function(){return t},h.isKeynavEnabled=function(){return x},h.focusDropdownEntry=function(e){var n=f.dropdownMenu?angular.element(f.dropdownMenu).find("a"):t.find("ul").eq(0).find("a");switch(e){case 40:angular.isNumber(f.selectedOption)?f.selectedOption=f.selectedOption===n.length-1?f.selectedOption:f.selectedOption+1:f.selectedOption=0;break;case 38:angular.isNumber(f.selectedOption)?f.selectedOption=0===f.selectedOption?0:f.selectedOption-1:f.selectedOption=n.length-1}n[f.selectedOption].focus()},h.getDropdownElement=function(){return f.dropdownMenu},h.focusToggleElement=function(){f.toggleElement&&f.toggleElement[0].focus()},h.$watch("isOpen",function(n,r){if($&&f.dropdownMenu){var i,l,d,x=s.positionElements(t,f.dropdownMenu,"bottom-left",!0);if(i={top:x.top+"px",display:n?"block":"none"},l=f.dropdownMenu.hasClass("dropdown-menu-right"),l?(i.left="auto",d=s.scrollbarWidth(!0),i.right=window.innerWidth-d-(x.left+t.prop("offsetWidth"))+"px"):(i.left=x.left+"px",i.right="auto"),!y){var C=s.offset($);i.top=x.top-C.top+"px",l?i.right=window.innerWidth-(x.left-C.left+t.prop("offsetWidth"))+"px":i.left=x.left-C.left+"px"}f.dropdownMenu.css(i)}var w=$?$:t,S=w.hasClass($?m:g);if(S===!n&&a[n?"addClass":"removeClass"](w,$?m:g).then(function(){angular.isDefined(n)&&n!==r&&b(e,{open:!!n})}),n)f.dropdownMenuTemplateUrl&&c(f.dropdownMenuTemplateUrl).then(function(e){p=h.$new(),u(e.trim())(p,function(e){var t=e;f.dropdownMenu.replaceWith(t),f.dropdownMenu=t})}),h.focusToggleElement(),o.open(h,t);else{if(f.dropdownMenuTemplateUrl){p&&p.$destroy();var D=angular.element('');f.dropdownMenu.replaceWith(D),f.dropdownMenu=D}o.close(h,t),f.selectedOption=null}angular.isFunction(v)&&v(e,n)})}]).directive("uibDropdown",function(){return{controller:"UibDropdownController",link:function(e,t,n,r){r.init()}}}).directive("uibDropdownMenu",function(){return{restrict:"A",require:"?^uibDropdown",link:function(e,t,n,r){if(r&&!angular.isDefined(n.dropdownNested)){t.addClass("dropdown-menu");var i=n.templateUrl;i&&(r.dropdownMenuTemplateUrl=i),r.dropdownMenu||(r.dropdownMenu=t)}}}}).directive("uibDropdownToggle",function(){return{require:"?^uibDropdown",link:function(e,t,n,r){if(r){t.addClass("dropdown-toggle"),r.toggleElement=t;var i=function(i){i.preventDefault(),t.hasClass("disabled")||n.disabled||e.$apply(function(){r.toggle()})};t.bind("click",i),t.attr({"aria-haspopup":!0,"aria-expanded":!1}),e.$watch(r.isOpen,function(e){t.attr("aria-expanded",!!e)}),e.$on("$destroy",function(){t.unbind("click",i)})}}}}),angular.module("ui.bootstrap.stackedMap",[]).factory("$$stackedMap",function(){return{createNew:function(){var e=[];return{add:function(t,n){e.push({key:t,value:n})},get:function(t){for(var n=0;n-1&&S>e&&(e=S),e}function p(e,t){var n=x.get(e).value,r=n.appendTo;x.remove(e),D=x.top(),D&&(S=parseInt(D.value.modalDomEl.attr("index"),10)),h(n.modalDomEl,n.modalScope,function(){var t=n.openedClass||$;C.remove(t,e);var i=C.hasKey(t);r.toggleClass(t,i),!i&&y&&y.heightOverflow&&y.scrollbarWidth&&(y.originalRight?r.css({paddingRight:y.originalRight+"px"}):r.css({paddingRight:""}),y=null),d(!0)},n.closedDeferred),f(),t&&t.focus?t.focus():r.focus&&r.focus()}function d(e){var t;x.length()>0&&(t=x.top().value,t.modalDomEl.toggleClass(t.windowTopClass||"",e))}function f(){if(v&&-1===c()){var e=b;h(v,b,function(){e=null}),v=void 0,b=void 0}}function h(t,n,r,i){function a(){a.done||(a.done=!0,e.leave(t).then(function(){t.remove(),i&&i.resolve()}),n.$destroy(),r&&r())}var s,l=null,u=function(){return s||(s=o.defer(),l=s.promise),function(){s.resolve()}};return n.$broadcast(w.NOW_CLOSING_EVENT,u),o.when(l).then(a)}function m(e){if(e.isDefaultPrevented())return e;var t=x.top();if(t)switch(e.which){case 27:t.value.keyboard&&(e.preventDefault(),i.$apply(function(){w.dismiss(t.key,"escape key press")}));break;case 9:var n=w.loadFocusElementList(t),r=!1;e.shiftKey?(w.isFocusInFirstItem(e,n)||w.isModalFocused(e,t))&&(r=w.focusLastFocusableElement(n)):w.isFocusInLastItem(e,n)&&(r=w.focusFirstFocusableElement(n)),r&&(e.preventDefault(),e.stopPropagation())}}function g(e,t,n){return!e.value.modalScope.$broadcast("modal.closing",t,n).defaultPrevented}var v,b,y,$="modal-open",x=s.createNew(),C=a.createNew(),w={NOW_CLOSING_EVENT:"modal.stack.now-closing"},S=0,D=null,T="a[href], area[href], input:not([disabled]), button:not([disabled]),select:not([disabled]), textarea:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable=true]";return i.$watch(c,function(e){b&&(b.index=e)}),n.on("keydown",m),i.$on("$destroy",function(){n.off("keydown",m)}),w.open=function(t,o){var a=n[0].activeElement,s=o.openedClass||$;d(!1),D=x.top(),x.add(t,{deferred:o.deferred,renderDeferred:o.renderDeferred,closedDeferred:o.closedDeferred,modalScope:o.scope,backdrop:o.backdrop,keyboard:o.keyboard,openedClass:o.openedClass,windowTopClass:o.windowTopClass,animation:o.animation,appendTo:o.appendTo}),C.put(s,t);var u=o.appendTo,p=c();if(!u.length)throw new Error("appendTo element not found. Make sure that the element passed is in DOM.");p>=0&&!v&&(b=i.$new(!0),b.modalOptions=o,b.index=p,v=angular.element('
    '),v.attr("backdrop-class",o.backdropClass),o.animation&&v.attr("modal-animation","true"),r(v)(b),e.enter(v,u),y=l.scrollbarPadding(u),y.heightOverflow&&y.scrollbarWidth&&u.css({paddingRight:y.right+"px"})),S=D?parseInt(D.value.modalDomEl.attr("index"),10)+1:0;var f=angular.element('
    ');f.attr({"template-url":o.windowTemplateUrl,"window-class":o.windowClass,"window-top-class":o.windowTopClass,size:o.size,index:S,animate:"animate"}).html(o.content),o.animation&&f.attr("modal-animation","true"),u.addClass(s),e.enter(r(f)(o.scope),u),x.top().value.modalDomEl=f,x.top().value.modalOpener=a},w.close=function(e,t){var n=x.get(e);return n&&g(n,t,!0)?(n.value.modalScope.$$uibDestructionScheduled=!0,n.value.deferred.resolve(t),p(e,n.value.modalOpener),!0):!n},w.dismiss=function(e,t){var n=x.get(e);return n&&g(n,t,!1)?(n.value.modalScope.$$uibDestructionScheduled=!0,n.value.deferred.reject(t),p(e,n.value.modalOpener),!0):!n},w.dismissAll=function(e){for(var t=this.getTop();t&&this.dismiss(t.key,e);)t=this.getTop()},w.getTop=function(){return x.top()},w.modalRendered=function(e){var t=x.get(e);t&&t.value.renderDeferred.resolve()},w.focusFirstFocusableElement=function(e){return e.length>0?(e[0].focus(),!0):!1},w.focusLastFocusableElement=function(e){return e.length>0?(e[e.length-1].focus(),!0):!1},w.isModalFocused=function(e,t){if(e&&t){var n=t.value.modalDomEl;if(n&&n.length)return(e.target||e.srcElement)===n[0]}return!1},w.isFocusInFirstItem=function(e,t){return t.length>0?(e.target||e.srcElement)===t[0]:!1},w.isFocusInLastItem=function(e,t){return t.length>0?(e.target||e.srcElement)===t[t.length-1]:!1},w.loadFocusElementList=function(e){if(e){var t=e.value.modalDomEl;if(t&&t.length){var n=t[0].querySelectorAll(T);return n?Array.prototype.filter.call(n,function(e){return u(e)}):n}}},w}]).provider("$uibModal",function(){var e={options:{animation:!0,backdrop:!0,keyboard:!0},$get:["$rootScope","$q","$document","$templateRequest","$controller","$uibResolve","$uibModalStack",function(t,n,r,i,o,a,s){function l(e){return e.template?n.when(e.template):i(angular.isFunction(e.templateUrl)?e.templateUrl():e.templateUrl)}var u={},c=null;return u.getPromiseChain=function(){return c},u.open=function(i){function u(){return v}var p=n.defer(),d=n.defer(),f=n.defer(),h=n.defer(),m={result:p.promise,opened:d.promise,closed:f.promise,rendered:h.promise,close:function(e){return s.close(m,e)},dismiss:function(e){return s.dismiss(m,e)}};if(i=angular.extend({},e.options,i),i.resolve=i.resolve||{},i.appendTo=i.appendTo||r.find("body").eq(0),!i.template&&!i.templateUrl)throw new Error("One of template or templateUrl options is required.");var g,v=n.all([l(i),a.resolve(i.resolve,{},null,null)]);return g=c=n.all([c]).then(u,u).then(function(e){var n=i.scope||t,r=n.$new();r.$close=m.close,r.$dismiss=m.dismiss,r.$on("$destroy",function(){r.$$uibDestructionScheduled||r.$dismiss("$uibUnscheduledDestruction")});var a,l,u={};i.controller&&(u.$scope=r,u.$scope.$resolve={},u.$uibModalInstance=m,angular.forEach(e[1],function(e,t){u[t]=e,u.$scope.$resolve[t]=e}),l=o(i.controller,u,!0,i.controllerAs),i.controllerAs&&i.bindToController&&(a=l.instance,a.$close=r.$close,a.$dismiss=r.$dismiss,angular.extend(a,{$resolve:u.$scope.$resolve},n)),a=l(),angular.isFunction(a.$onInit)&&a.$onInit()),s.open(m,{scope:r,deferred:p,renderDeferred:h,closedDeferred:f,content:e[0],animation:i.animation,backdrop:i.backdrop,keyboard:i.keyboard,backdropClass:i.backdropClass,windowTopClass:i.windowTopClass,windowClass:i.windowClass,windowTemplateUrl:i.windowTemplateUrl,size:i.size,openedClass:i.openedClass,appendTo:i.appendTo}),d.resolve(!0)},function(e){d.reject(e),p.reject(e)})["finally"](function(){c===g&&(c=null)}),m},u}]};return e}),angular.module("ui.bootstrap.paging",[]).factory("uibPaging",["$parse",function(e){return{create:function(t,n,r){t.setNumPages=r.numPages?e(r.numPages).assign:angular.noop,t.ngModelCtrl={$setViewValue:angular.noop},t._watchers=[],t.init=function(e,i){t.ngModelCtrl=e,t.config=i,e.$render=function(){t.render()},r.itemsPerPage?t._watchers.push(n.$parent.$watch(r.itemsPerPage,function(e){t.itemsPerPage=parseInt(e,10),n.totalPages=t.calculateTotalPages(),t.updatePage()})):t.itemsPerPage=i.itemsPerPage,n.$watch("totalItems",function(e,r){(angular.isDefined(e)||e!==r)&&(n.totalPages=t.calculateTotalPages(),t.updatePage())})},t.calculateTotalPages=function(){var e=t.itemsPerPage<1?1:Math.ceil(n.totalItems/t.itemsPerPage);return Math.max(e||0,1)},t.render=function(){n.page=parseInt(t.ngModelCtrl.$viewValue,10)||1},n.selectPage=function(e,r){r&&r.preventDefault();var i=!n.ngDisabled||!r;i&&n.page!==e&&e>0&&e<=n.totalPages&&(r&&r.target&&r.target.blur(),t.ngModelCtrl.$setViewValue(e),t.ngModelCtrl.$render())},n.getText=function(e){return n[e+"Text"]||t.config[e+"Text"]},n.noPrevious=function(){return 1===n.page},n.noNext=function(){return n.page===n.totalPages},t.updatePage=function(){t.setNumPages(n.$parent,n.totalPages),n.page>n.totalPages?n.selectPage(n.totalPages):t.ngModelCtrl.$render()},n.$on("$destroy",function(){for(;t._watchers.length;)t._watchers.shift()()})}}}]),angular.module("ui.bootstrap.pager",["ui.bootstrap.paging"]).controller("UibPagerController",["$scope","$attrs","uibPaging","uibPagerConfig",function(e,t,n,r){e.align=angular.isDefined(t.align)?e.$parent.$eval(t.align):r.align,n.create(this,e,t)}]).constant("uibPagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("uibPager",["uibPagerConfig",function(e){return{scope:{totalItems:"=",previousText:"@",nextText:"@",ngDisabled:"="},require:["uibPager","?ngModel"],controller:"UibPagerController",controllerAs:"pager",templateUrl:function(e,t){return t.templateUrl||"uib/template/pager/pager.html"},replace:!0,link:function(t,n,r,i){var o=i[0],a=i[1];a&&o.init(a,e)}}}]),angular.module("ui.bootstrap.pagination",["ui.bootstrap.paging"]).controller("UibPaginationController",["$scope","$attrs","$parse","uibPaging","uibPaginationConfig",function(e,t,n,r,i){function o(e,t,n){return{number:e,text:t,active:n}}function a(e,t){var n=[],r=1,i=t,a=angular.isDefined(l)&&t>l;a&&(u?(r=Math.max(e-Math.floor(l/2),1),i=r+l-1,i>t&&(i=t,r=i-l+1)):(r=(Math.ceil(e/l)-1)*l+1,i=Math.min(r+l-1,t)));for(var s=r;i>=s;s++){var f=o(s,d(s),s===e);n.push(f)}if(a&&l>0&&(!u||c||p)){if(r>1){if(!p||r>3){var h=o(r-1,"...",!1);n.unshift(h)}if(p){if(3===r){var m=o(2,"2",!1);n.unshift(m)}var g=o(1,"1",!1);n.unshift(g)}}if(t>i){if(!p||t-2>i){var v=o(i+1,"...",!1);n.push(v)}if(p){if(i===t-2){var b=o(t-1,t-1,!1);n.push(b)}var y=o(t,t,!1);n.push(y)}}}return n}var s=this,l=angular.isDefined(t.maxSize)?e.$parent.$eval(t.maxSize):i.maxSize,u=angular.isDefined(t.rotate)?e.$parent.$eval(t.rotate):i.rotate,c=angular.isDefined(t.forceEllipses)?e.$parent.$eval(t.forceEllipses):i.forceEllipses,p=angular.isDefined(t.boundaryLinkNumbers)?e.$parent.$eval(t.boundaryLinkNumbers):i.boundaryLinkNumbers,d=angular.isDefined(t.pageLabel)?function(n){return e.$parent.$eval(t.pageLabel,{$page:n})}:angular.identity;e.boundaryLinks=angular.isDefined(t.boundaryLinks)?e.$parent.$eval(t.boundaryLinks):i.boundaryLinks,e.directionLinks=angular.isDefined(t.directionLinks)?e.$parent.$eval(t.directionLinks):i.directionLinks,r.create(this,e,t),t.maxSize&&s._watchers.push(e.$parent.$watch(n(t.maxSize),function(e){l=parseInt(e,10),s.render()}));var f=this.render;this.render=function(){f(),e.page>0&&e.page<=e.totalPages&&(e.pages=a(e.page,e.totalPages))}}]).constant("uibPaginationConfig",{itemsPerPage:10,boundaryLinks:!1,boundaryLinkNumbers:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0,forceEllipses:!1}).directive("uibPagination",["$parse","uibPaginationConfig",function(e,t){return{scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@",ngDisabled:"="},require:["uibPagination","?ngModel"],controller:"UibPaginationController",controllerAs:"pagination",templateUrl:function(e,t){return t.templateUrl||"uib/template/pagination/pagination.html"},replace:!0,link:function(e,n,r,i){var o=i[0],a=i[1];a&&o.init(a,t)}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.stackedMap"]).provider("$uibTooltip",function(){function e(e){var t=/[A-Z]/g,n="-";return e.replace(t,function(e,t){return(t?n:"")+e.toLowerCase()})}var t={placement:"top",placementClassPrefix:"",animation:!0,popupDelay:0,popupCloseDelay:0,useContentExp:!1},n={mouseenter:"mouseleave",click:"click",outsideClick:"outsideClick",focus:"blur",none:""},r={};this.options=function(e){angular.extend(r,e)},this.setTriggers=function(e){angular.extend(n,e)},this.$get=["$window","$compile","$timeout","$document","$uibPosition","$interpolate","$rootScope","$parse","$$stackedMap",function(i,o,a,s,l,u,c,p,d){function f(e){if(27===e.which){var t=h.top();t&&(t.value.close(),h.removeTop(),t=null)}}var h=d.createNew();return s.on("keypress",f),c.$on("$destroy",function(){s.off("keypress",f)}),function(i,c,d,f){function m(e){var t=(e||f.trigger||d).split(" "),r=t.map(function(e){ +return n[e]||e});return{show:t,hide:r}}f=angular.extend({},t,r,f);var g=e(i),v=u.startSymbol(),b=u.endSymbol(),y="
    ';return{compile:function(e,t){var n=o(y);return function(e,t,r,o){function u(){_.isOpen?g():d()}function d(){(!B||e.$eval(r[c+"Enable"]))&&($(),w(),_.popupDelay?P||(P=a(v,_.popupDelay,!1)):v())}function g(){b(),_.popupCloseDelay?L||(L=a(y,_.popupCloseDelay,!1)):y()}function v(){return b(),$(),_.content?(x(),void _.$evalAsync(function(){_.isOpen=!0,S(!0),G()})):angular.noop}function b(){P&&(a.cancel(P),P=null),I&&(a.cancel(I),I=null)}function y(){_&&_.$evalAsync(function(){_&&(_.isOpen=!1,S(!1),_.animation?A||(A=a(C,150,!1)):C())})}function $(){L&&(a.cancel(L),L=null),A&&(a.cancel(A),A=null)}function x(){E||(N=_.$new(),E=n(N,function(e){F?s.find("body").append(e):t.after(e)}),D())}function C(){b(),$(),T(),E&&(E.remove(),E=null),N&&(N.$destroy(),N=null)}function w(){_.title=r[c+"Title"],j?_.content=j(e):_.content=r[i],_.popupClass=r[c+"Class"],_.placement=angular.isDefined(r[c+"Placement"])?r[c+"Placement"]:f.placement;var t=l.parsePlacement(_.placement);O=t[1]?t[0]+"-"+t[1]:t[0];var n=parseInt(r[c+"PopupDelay"],10),o=parseInt(r[c+"PopupCloseDelay"],10);_.popupDelay=isNaN(n)?f.popupDelay:n,_.popupCloseDelay=isNaN(o)?f.popupCloseDelay:o}function S(t){V&&angular.isFunction(V.assign)&&V.assign(e,t)}function D(){q.length=0,j?(q.push(e.$watch(j,function(e){_.content=e,!e&&_.isOpen&&y()})),q.push(N.$watch(function(){U||(U=!0,N.$$postDigest(function(){U=!1,_&&_.isOpen&&G()}))}))):q.push(r.$observe(i,function(e){_.content=e,!e&&_.isOpen?y():G()})),q.push(r.$observe(c+"Title",function(e){_.title=e,_.isOpen&&G()})),q.push(r.$observe(c+"Placement",function(e){_.placement=e?e:f.placement,_.isOpen&&G()}))}function T(){q.length&&(angular.forEach(q,function(e){e()}),q.length=0)}function k(e){_&&_.isOpen&&E&&(t[0].contains(e.target)||E[0].contains(e.target)||g())}function M(){var e=r[c+"Trigger"];H(),R=m(e),"none"!==R.show&&R.show.forEach(function(e,n){"outsideClick"===e?(t.on("click",u),s.on("click",k)):e===R.hide[n]?t.on(e,u):e&&(t.on(e,d),t.on(R.hide[n],g)),t.on("keypress",function(e){27===e.which&&g()})})}var E,N,A,P,L,I,O,F=angular.isDefined(f.appendToBody)?f.appendToBody:!1,R=m(void 0),B=angular.isDefined(r[c+"Enable"]),_=e.$new(!0),U=!1,V=angular.isDefined(r[c+"IsOpen"])?p(r[c+"IsOpen"]):!1,j=f.useContentExp?p(r[i]):!1,q=[],G=function(){E&&E.html()&&(I||(I=a(function(){var e=l.positionElements(t,E,_.placement,F);E.css({top:e.top+"px",left:e.left+"px"}),E.hasClass(e.placement.split("-")[0])||(E.removeClass(O.split("-")[0]),E.addClass(e.placement.split("-")[0])),E.hasClass(f.placementClassPrefix+e.placement)||(E.removeClass(f.placementClassPrefix+O),E.addClass(f.placementClassPrefix+e.placement)),E.hasClass("uib-position-measure")?(l.positionArrow(E,e.placement),E.removeClass("uib-position-measure")):O!==e.placement&&l.positionArrow(E,e.placement),O=e.placement,I=null},0,!1)))};_.origScope=e,_.isOpen=!1,h.add(_,{close:y}),_.contentExp=function(){return _.content},r.$observe("disabled",function(e){e&&b(),e&&_.isOpen&&y()}),V&&e.$watch(V,function(e){_&&!e===_.isOpen&&u()});var H=function(){R.show.forEach(function(e){"outsideClick"===e?t.off("click",u):(t.off(e,d),t.off(e,u))}),R.hide.forEach(function(e){"outsideClick"===e?s.off("click",k):t.off(e,g)})};M();var z=e.$eval(r[c+"Animation"]);_.animation=angular.isDefined(z)?!!z:f.animation;var W,Q=c+"AppendToBody";W=Q in r&&void 0===r[Q]?!0:e.$eval(r[Q]),F=angular.isDefined(W)?W:F,e.$on("$destroy",function(){H(),C(),h.remove(_),_=null})}}}}}]}).directive("uibTooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(e,t,n,r){return{link:function(i,o,a){var s,l,u,c=i.$eval(a.tooltipTemplateTranscludeScope),p=0,d=function(){l&&(l.remove(),l=null),s&&(s.$destroy(),s=null),u&&(e.leave(u).then(function(){l=null}),l=u,u=null)};i.$watch(t.parseAsResourceUrl(a.uibTooltipTemplateTransclude),function(t){var a=++p;t?(r(t,!0).then(function(r){if(a===p){var i=c.$new(),l=r,f=n(l)(i,function(t){d(),e.enter(t,o)});s=i,u=f,s.$emit("$includeContentLoaded",t)}},function(){a===p&&(d(),i.$emit("$includeContentError",t))}),i.$emit("$includeContentRequested",t)):d()}),i.$on("$destroy",d)}}}]).directive("uibTooltipClasses",["$uibPosition",function(e){return{restrict:"A",link:function(t,n,r){if(t.placement){var i=e.parsePlacement(t.placement);n.addClass(i[0])}t.popupClass&&n.addClass(t.popupClass),t.animation()&&n.addClass(r.tooltipAnimationClass)}}}]).directive("uibTooltipPopup",function(){return{replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-popup.html"}}).directive("uibTooltip",["$uibTooltip",function(e){return e("uibTooltip","tooltip","mouseenter")}]).directive("uibTooltipTemplatePopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/tooltip/tooltip-template-popup.html"}}).directive("uibTooltipTemplate",["$uibTooltip",function(e){return e("uibTooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("uibTooltipHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-html-popup.html"}}).directive("uibTooltipHtml",["$uibTooltip",function(e){return e("uibTooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("uibPopoverTemplatePopup",function(){return{replace:!0,scope:{uibTitle:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/popover/popover-template.html"}}).directive("uibPopoverTemplate",["$uibTooltip",function(e){return e("uibPopoverTemplate","popover","click",{useContentExp:!0})}]).directive("uibPopoverHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",uibTitle:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover-html.html"}}).directive("uibPopoverHtml",["$uibTooltip",function(e){return e("uibPopoverHtml","popover","click",{useContentExp:!0})}]).directive("uibPopoverPopup",function(){return{replace:!0,scope:{uibTitle:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover.html"}}).directive("uibPopover",["$uibTooltip",function(e){return e("uibPopover","popover","click")}]),angular.module("ui.bootstrap.progressbar",[]).constant("uibProgressConfig",{animate:!0,max:100}).controller("UibProgressController",["$scope","$attrs","uibProgressConfig",function(e,t,n){function r(){return angular.isDefined(e.maxParam)?e.maxParam:n.max}var i=this,o=angular.isDefined(t.animate)?e.$parent.$eval(t.animate):n.animate;this.bars=[],e.max=r(),this.addBar=function(e,t,n){o||t.css({transition:"none"}),this.bars.push(e),e.max=r(),e.title=n&&angular.isDefined(n.title)?n.title:"progressbar",e.$watch("value",function(t){e.recalculatePercentage()}),e.recalculatePercentage=function(){var t=i.bars.reduce(function(e,t){return t.percent=+(100*t.value/t.max).toFixed(2),e+t.percent},0);t>100&&(e.percent-=t-100)},e.$on("$destroy",function(){t=null,i.removeBar(e)})},this.removeBar=function(e){this.bars.splice(this.bars.indexOf(e),1),this.bars.forEach(function(e){e.recalculatePercentage()})},e.$watch("maxParam",function(e){i.bars.forEach(function(e){e.max=r(),e.recalculatePercentage()})})}]).directive("uibProgress",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",require:"uibProgress",scope:{maxParam:"=?max"},templateUrl:"uib/template/progressbar/progress.html"}}).directive("uibBar",function(){return{replace:!0,transclude:!0,require:"^uibProgress",scope:{value:"=",type:"@"},templateUrl:"uib/template/progressbar/bar.html",link:function(e,t,n,r){r.addBar(e,t,n)}}}).directive("uibProgressbar",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",scope:{value:"=",maxParam:"=?max",type:"@"},templateUrl:"uib/template/progressbar/progressbar.html",link:function(e,t,n,r){r.addBar(e,angular.element(t.children()[0]),{title:n.title})}}}),angular.module("ui.bootstrap.rating",[]).constant("uibRatingConfig",{max:5,stateOn:null,stateOff:null,enableReset:!0,titles:["one","two","three","four","five"]}).controller("UibRatingController",["$scope","$attrs","uibRatingConfig",function(e,t,n){var r={$setViewValue:angular.noop},i=this;this.init=function(i){r=i,r.$render=this.render,r.$formatters.push(function(e){return angular.isNumber(e)&&e<<0!==e&&(e=Math.round(e)),e}),this.stateOn=angular.isDefined(t.stateOn)?e.$parent.$eval(t.stateOn):n.stateOn,this.stateOff=angular.isDefined(t.stateOff)?e.$parent.$eval(t.stateOff):n.stateOff,this.enableReset=angular.isDefined(t.enableReset)?e.$parent.$eval(t.enableReset):n.enableReset;var o=angular.isDefined(t.titles)?e.$parent.$eval(t.titles):n.titles;this.titles=angular.isArray(o)&&o.length>0?o:n.titles;var a=angular.isDefined(t.ratingStates)?e.$parent.$eval(t.ratingStates):new Array(angular.isDefined(t.max)?e.$parent.$eval(t.max):n.max);e.range=this.buildTemplateObjects(a)},this.buildTemplateObjects=function(e){for(var t=0,n=e.length;n>t;t++)e[t]=angular.extend({index:t},{stateOn:this.stateOn,stateOff:this.stateOff,title:this.getTitle(t)},e[t]);return e},this.getTitle=function(e){return e>=this.titles.length?e+1:this.titles[e]},e.rate=function(t){if(!e.readonly&&t>=0&&t<=e.range.length){var n=i.enableReset&&r.$viewValue===t?0:t;r.$setViewValue(n),r.$render()}},e.enter=function(t){e.readonly||(e.value=t),e.onHover({value:t})},e.reset=function(){e.value=r.$viewValue,e.onLeave()},e.onKeydown=function(t){/(37|38|39|40)/.test(t.which)&&(t.preventDefault(),t.stopPropagation(),e.rate(e.value+(38===t.which||39===t.which?1:-1)))},this.render=function(){e.value=r.$viewValue,e.title=i.getTitle(e.value-1)}}]).directive("uibRating",function(){return{require:["uibRating","ngModel"],scope:{readonly:"=?readOnly",onHover:"&",onLeave:"&"},controller:"UibRatingController",templateUrl:"uib/template/rating/rating.html",replace:!0,link:function(e,t,n,r){var i=r[0],o=r[1];i.init(o)}}}),angular.module("ui.bootstrap.tabs",[]).controller("UibTabsetController",["$scope",function(e){function t(e){for(var t=0;tt.index?1:e.index0&&13>t:t>=0&&24>t;return n&&""!==e.hours?(e.showMeridian&&(12===t&&(t=0),e.meridian===x[1]&&(t+=12)),t):void 0}function l(){var t=+e.minutes,n=t>=0&&60>t;return n&&""!==e.minutes?t:void 0}function u(){var t=+e.seconds;return t>=0&&60>t?t:void 0}function c(e,t){return null===e?"":angular.isDefined(e)&&e.toString().length<2&&!t?"0"+e:e.toString()}function p(e){d(),$.$setViewValue(new Date(b)),f(e)}function d(){$.$setValidity("time",!0),e.invalidHours=!1,e.invalidMinutes=!1,e.invalidSeconds=!1}function f(t){if($.$modelValue){var n=b.getHours(),r=b.getMinutes(),i=b.getSeconds();e.showMeridian&&(n=0===n||12===n?12:n%12),e.hours="h"===t?n:c(n,!C),"m"!==t&&(e.minutes=c(r)),e.meridian=b.getHours()<12?x[0]:x[1],"s"!==t&&(e.seconds=c(i)),e.meridian=b.getHours()<12?x[0]:x[1]}else e.hours=null,e.minutes=null,e.seconds=null,e.meridian=x[0]}function h(e){b=g(b,e),p()}function m(e,t){return g(e,60*t)}function g(e,t){var n=new Date(e.getTime()+1e3*t),r=new Date(e);return r.setHours(n.getHours(),n.getMinutes(),n.getSeconds()),r}function v(){return(null===e.hours||""===e.hours)&&(null===e.minutes||""===e.minutes)&&(!e.showSeconds||e.showSeconds&&(null===e.seconds||""===e.seconds))}var b=new Date,y=[],$={$setViewValue:angular.noop},x=angular.isDefined(n.meridians)?e.$parent.$eval(n.meridians):a.meridians||o.DATETIME_FORMATS.AMPMS,C=angular.isDefined(n.padHours)?e.$parent.$eval(n.padHours):!0;e.tabindex=angular.isDefined(n.tabindex)?n.tabindex:0,t.removeAttr("tabindex"),this.init=function(t,r){$=t,$.$render=this.render,$.$formatters.unshift(function(e){return e?new Date(e):null});var i=r.eq(0),o=r.eq(1),s=r.eq(2),l=angular.isDefined(n.mousewheel)?e.$parent.$eval(n.mousewheel):a.mousewheel;l&&this.setupMousewheelEvents(i,o,s);var u=angular.isDefined(n.arrowkeys)?e.$parent.$eval(n.arrowkeys):a.arrowkeys;u&&this.setupArrowkeyEvents(i,o,s),e.readonlyInput=angular.isDefined(n.readonlyInput)?e.$parent.$eval(n.readonlyInput):a.readonlyInput,this.setupInputEvents(i,o,s)};var w=a.hourStep;n.hourStep&&y.push(e.$parent.$watch(r(n.hourStep),function(e){w=+e}));var S=a.minuteStep;n.minuteStep&&y.push(e.$parent.$watch(r(n.minuteStep),function(e){S=+e}));var D;y.push(e.$parent.$watch(r(n.min),function(e){var t=new Date(e);D=isNaN(t)?void 0:t}));var T;y.push(e.$parent.$watch(r(n.max),function(e){var t=new Date(e);T=isNaN(t)?void 0:t}));var k=!1;n.ngDisabled&&y.push(e.$parent.$watch(r(n.ngDisabled),function(e){k=e})),e.noIncrementHours=function(){var e=m(b,60*w);return k||e>T||b>e&&D>e},e.noDecrementHours=function(){var e=m(b,60*-w);return k||D>e||e>b&&e>T},e.noIncrementMinutes=function(){var e=m(b,S);return k||e>T||b>e&&D>e},e.noDecrementMinutes=function(){var e=m(b,-S);return k||D>e||e>b&&e>T},e.noIncrementSeconds=function(){var e=g(b,M);return k||e>T||b>e&&D>e},e.noDecrementSeconds=function(){var e=g(b,-M);return k||D>e||e>b&&e>T},e.noToggleMeridian=function(){return b.getHours()<12?k||m(b,720)>T:k||m(b,-720)0};t.bind("mousewheel wheel",function(t){k||e.$apply(i(t)?e.incrementHours():e.decrementHours()),t.preventDefault()}),n.bind("mousewheel wheel",function(t){k||e.$apply(i(t)?e.incrementMinutes():e.decrementMinutes()),t.preventDefault()}),r.bind("mousewheel wheel",function(t){k||e.$apply(i(t)?e.incrementSeconds():e.decrementSeconds()),t.preventDefault()})},this.setupArrowkeyEvents=function(t,n,r){t.bind("keydown",function(t){k||(38===t.which?(t.preventDefault(),e.incrementHours(),e.$apply()):40===t.which&&(t.preventDefault(),e.decrementHours(),e.$apply()))}),n.bind("keydown",function(t){k||(38===t.which?(t.preventDefault(),e.incrementMinutes(),e.$apply()):40===t.which&&(t.preventDefault(),e.decrementMinutes(),e.$apply()))}),r.bind("keydown",function(t){k||(38===t.which?(t.preventDefault(),e.incrementSeconds(),e.$apply()):40===t.which&&(t.preventDefault(),e.decrementSeconds(),e.$apply()))})},this.setupInputEvents=function(t,n,r){if(e.readonlyInput)return e.updateHours=angular.noop,e.updateMinutes=angular.noop,void(e.updateSeconds=angular.noop);var i=function(t,n,r){$.$setViewValue(null),$.$setValidity("time",!1),angular.isDefined(t)&&(e.invalidHours=t),angular.isDefined(n)&&(e.invalidMinutes=n),angular.isDefined(r)&&(e.invalidSeconds=r)};e.updateHours=function(){var e=s(),t=l();$.$setDirty(),angular.isDefined(e)&&angular.isDefined(t)?(b.setHours(e),b.setMinutes(t),D>b||b>T?i(!0):p("h")):i(!0)},t.bind("blur",function(t){$.$setTouched(),v()?d():null===e.hours||""===e.hours?i(!0):!e.invalidHours&&e.hours<10&&e.$apply(function(){e.hours=c(e.hours,!C)})}),e.updateMinutes=function(){var e=l(),t=s();$.$setDirty(),angular.isDefined(e)&&angular.isDefined(t)?(b.setHours(t),b.setMinutes(e),D>b||b>T?i(void 0,!0):p("m")):i(void 0,!0)},n.bind("blur",function(t){$.$setTouched(),v()?d():null===e.minutes?i(void 0,!0):!e.invalidMinutes&&e.minutes<10&&e.$apply(function(){e.minutes=c(e.minutes)})}),e.updateSeconds=function(){var e=u();$.$setDirty(),angular.isDefined(e)?(b.setSeconds(e),p("s")):i(void 0,void 0,!0)},r.bind("blur",function(t){v()?d():!e.invalidSeconds&&e.seconds<10&&e.$apply(function(){e.seconds=c(e.seconds)})})},this.render=function(){var t=$.$viewValue;isNaN(t)?($.$setValidity("time",!1),i.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(t&&(b=t),D>b||b>T?($.$setValidity("time",!1),e.invalidHours=!0,e.invalidMinutes=!0):d(),f())},e.showSpinners=angular.isDefined(n.showSpinners)?e.$parent.$eval(n.showSpinners):a.showSpinners,e.incrementHours=function(){e.noIncrementHours()||h(60*w*60)},e.decrementHours=function(){e.noDecrementHours()||h(60*-w*60)},e.incrementMinutes=function(){e.noIncrementMinutes()||h(60*S)},e.decrementMinutes=function(){e.noDecrementMinutes()||h(60*-S)},e.incrementSeconds=function(){e.noIncrementSeconds()||h(M)},e.decrementSeconds=function(){e.noDecrementSeconds()||h(-M)},e.toggleMeridian=function(){var t=l(),n=s();e.noToggleMeridian()||(angular.isDefined(t)&&angular.isDefined(n)?h(720*(b.getHours()<12?60:-60)):e.meridian=e.meridian===x[0]?x[1]:x[0])},e.blur=function(){$.$setTouched()},e.$on("$destroy",function(){for(;y.length;)y.shift()()})}]).directive("uibTimepicker",["uibTimepickerConfig",function(e){return{require:["uibTimepicker","?^ngModel"],controller:"UibTimepickerController",controllerAs:"timepicker",replace:!0,scope:{},templateUrl:function(t,n){return n.templateUrl||e.templateUrl},link:function(e,t,n,r){var i=r[0],o=r[1];o&&i.init(o,t.find("input"))}}}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.debounce","ui.bootstrap.position"]).factory("uibTypeaheadParser",["$parse",function(e){var t=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(n){var r=n.match(t);if(!r)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+n+'".');return{itemName:r[3],source:e(r[4]),viewMapper:e(r[2]||r[1]),modelMapper:e(r[1])}}}}]).controller("UibTypeaheadController",["$scope","$element","$attrs","$compile","$parse","$q","$timeout","$document","$window","$rootScope","$$debounce","$uibPosition","uibTypeaheadParser",function(e,t,n,r,i,o,a,s,l,u,c,p,d){function f(){U.moveInProgress||(U.moveInProgress=!0,U.$digest()),X()}function h(){U.position=N?p.offset(t):p.position(t),U.position.top+=t.prop("offsetHeight")}var m,g,v=[9,13,27,38,40],b=200,y=e.$eval(n.typeaheadMinLength);y||0===y||(y=1),e.$watch(n.typeaheadMinLength,function(e){y=e||0===e?e:1});var $=e.$eval(n.typeaheadWaitMs)||0,x=e.$eval(n.typeaheadEditable)!==!1;e.$watch(n.typeaheadEditable,function(e){x=e!==!1});var C,w,S=i(n.typeaheadLoading).assign||angular.noop,D=n.typeaheadShouldSelect?i(n.typeaheadShouldSelect):function(e,t){var n=t.$event;return 13===n.which||9===n.which},T=i(n.typeaheadOnSelect),k=angular.isDefined(n.typeaheadSelectOnBlur)?e.$eval(n.typeaheadSelectOnBlur):!1,M=i(n.typeaheadNoResults).assign||angular.noop,E=n.typeaheadInputFormatter?i(n.typeaheadInputFormatter):void 0,N=n.typeaheadAppendToBody?e.$eval(n.typeaheadAppendToBody):!1,A=n.typeaheadAppendTo?e.$eval(n.typeaheadAppendTo):null,P=e.$eval(n.typeaheadFocusFirst)!==!1,L=n.typeaheadSelectOnExact?e.$eval(n.typeaheadSelectOnExact):!1,I=i(n.typeaheadIsOpen).assign||angular.noop,O=e.$eval(n.typeaheadShowHint)||!1,F=i(n.ngModel),R=i(n.ngModel+"($$$p)"),B=function(t,n){return angular.isFunction(F(e))&&g&&g.$options&&g.$options.getterSetter?R(t,{$$$p:n}):F.assign(t,n)},_=d.parse(n.uibTypeahead),U=e.$new(),V=e.$on("$destroy",function(){U.$destroy()});U.$on("$destroy",V);var j="typeahead-"+U.$id+"-"+Math.floor(1e4*Math.random());t.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":j});var q,G;O&&(q=angular.element("
    "),q.css("position","relative"),t.after(q),G=t.clone(),G.attr("placeholder",""),G.attr("tabindex","-1"),G.val(""),G.css({position:"absolute",top:"0px",left:"0px","border-color":"transparent","box-shadow":"none",opacity:1,background:"none 0% 0% / auto repeat scroll padding-box border-box rgb(255, 255, 255)",color:"#999"}),t.css({position:"relative","vertical-align":"top","background-color":"transparent"}),q.append(G),G.after(t));var H=angular.element("
    ");H.attr({id:j,matches:"matches",active:"activeIdx",select:"select(activeIdx, evt)","move-in-progress":"moveInProgress",query:"query",position:"position","assign-is-open":"assignIsOpen(isOpen)",debounce:"debounceUpdate"}),angular.isDefined(n.typeaheadTemplateUrl)&&H.attr("template-url",n.typeaheadTemplateUrl),angular.isDefined(n.typeaheadPopupTemplateUrl)&&H.attr("popup-template-url",n.typeaheadPopupTemplateUrl);var z=function(){O&&G.val("")},W=function(){U.matches=[],U.activeIdx=-1,t.attr("aria-expanded",!1),z()},Q=function(e){return j+"-option-"+e};U.$watch("activeIdx",function(e){0>e?t.removeAttr("aria-activedescendant"):t.attr("aria-activedescendant",Q(e))});var K=function(e,t){return U.matches.length>t&&e?e.toUpperCase()===U.matches[t].label.toUpperCase():!1},Z=function(n,r){var i={$viewValue:n};S(e,!0),M(e,!1),o.when(_.source(e,i)).then(function(o){var a=n===m.$viewValue;if(a&&C)if(o&&o.length>0){U.activeIdx=P?0:-1,M(e,!1),U.matches.length=0;for(var s=0;s0&&l.slice(0,n.length).toUpperCase()===n.toUpperCase()?G.val(n+l.slice(n.length)):G.val("")}}else W(),M(e,!0);a&&S(e,!1)},function(){W(),S(e,!1),M(e,!0)})};N&&(angular.element(l).on("resize",f),s.find("body").on("scroll",f));var X=c(function(){U.matches.length&&h(),U.moveInProgress=!1},b);U.moveInProgress=!1,U.query=void 0;var Y,J=function(e){Y=a(function(){Z(e)},$)},ee=function(){Y&&a.cancel(Y)};W(),U.assignIsOpen=function(t){I(e,t)},U.select=function(r,i){var o,s,l={};w=!0,l[_.itemName]=s=U.matches[r].model,o=_.modelMapper(e,l),B(e,o),m.$setValidity("editable",!0),m.$setValidity("parse",!0),T(e,{$item:s,$model:o,$label:_.viewMapper(e,l),$event:i}),W(),U.$eval(n.typeaheadFocusOnSelect)!==!1&&a(function(){t[0].focus()},0,!1)},t.on("keydown",function(t){if(0!==U.matches.length&&-1!==v.indexOf(t.which)){var n=D(e,{$event:t});if(-1===U.activeIdx&&n||9===t.which&&t.shiftKey)return W(),void U.$digest();t.preventDefault();var r;switch(t.which){case 27:t.stopPropagation(),W(),e.$digest();break;case 38:U.activeIdx=(U.activeIdx>0?U.activeIdx:U.matches.length)-1,U.$digest(),r=H.find("li")[U.activeIdx],r.parentNode.scrollTop=r.offsetTop;break;case 40:U.activeIdx=(U.activeIdx+1)%U.matches.length,U.$digest(),r=H.find("li")[U.activeIdx],r.parentNode.scrollTop=r.offsetTop;break;default:n&&U.$apply(function(){angular.isNumber(U.debounceUpdate)||angular.isObject(U.debounceUpdate)?c(function(){U.select(U.activeIdx,t)},angular.isNumber(U.debounceUpdate)?U.debounceUpdate:U.debounceUpdate["default"]):U.select(U.activeIdx,t)})}}}),t.bind("focus",function(e){C=!0,0!==y||m.$viewValue||a(function(){Z(m.$viewValue,e)},0)}),t.bind("blur",function(e){k&&U.matches.length&&-1!==U.activeIdx&&!w&&(w=!0,U.$apply(function(){angular.isObject(U.debounceUpdate)&&angular.isNumber(U.debounceUpdate.blur)?c(function(){U.select(U.activeIdx,e)},U.debounceUpdate.blur):U.select(U.activeIdx,e)})),!x&&m.$error.editable&&(m.$setViewValue(),m.$setValidity("editable",!0),m.$setValidity("parse",!0),t.val("")),C=!1,w=!1});var te=function(n){t[0]!==n.target&&3!==n.which&&0!==U.matches.length&&(W(),u.$$phase||e.$digest())};s.on("click",te),e.$on("$destroy",function(){s.off("click",te),(N||A)&&ne.remove(),N&&(angular.element(l).off("resize",f),s.find("body").off("scroll",f)),H.remove(),O&&q.remove()});var ne=r(H)(U);N?s.find("body").append(ne):A?angular.element(A).eq(0).append(ne):t.after(ne),this.init=function(t,n){m=t,g=n,U.debounceUpdate=m.$options&&i(m.$options.debounce)(e),m.$parsers.unshift(function(t){return C=!0,0===y||t&&t.length>=y?$>0?(ee(),J(t)):Z(t):(S(e,!1),ee(),W()),x?t:t?void m.$setValidity("editable",!1):(m.$setValidity("editable",!0),null)}),m.$formatters.push(function(t){var n,r,i={};return x||m.$setValidity("editable",!0),E?(i.$model=t,E(e,i)):(i[_.itemName]=t,n=_.viewMapper(e,i),i[_.itemName]=void 0,r=_.viewMapper(e,i),n!==r?n:t)})}}]).directive("uibTypeahead",function(){return{controller:"UibTypeaheadController",require:["ngModel","^?ngModelOptions","uibTypeahead"],link:function(e,t,n,r){r[2].init(r[0],r[1])}}}).directive("uibTypeaheadPopup",["$$debounce",function(e){return{scope:{matches:"=",query:"=",active:"=",position:"&",moveInProgress:"=",select:"&",assignIsOpen:"&",debounce:"&"},replace:!0,templateUrl:function(e,t){return t.popupTemplateUrl||"uib/template/typeahead/typeahead-popup.html"},link:function(t,n,r){t.templateUrl=r.templateUrl,t.isOpen=function(){var e=t.matches.length>0;return t.assignIsOpen({isOpen:e}),e},t.isActive=function(e){return t.active===e},t.selectActive=function(e){t.active=e},t.selectMatch=function(n,r){var i=t.debounce();angular.isNumber(i)||angular.isObject(i)?e(function(){t.select({activeIdx:n,evt:r})},angular.isNumber(i)?i:i["default"]):t.select({activeIdx:n,evt:r})}}}}]).directive("uibTypeaheadMatch",["$templateRequest","$compile","$parse",function(e,t,n){return{scope:{index:"=",match:"=",query:"="},link:function(r,i,o){var a=n(o.templateUrl)(r.$parent)||"uib/template/typeahead/typeahead-match.html";e(a).then(function(e){var n=angular.element(e.trim());i.replaceWith(n),t(n)(r)})}}}]).filter("uibTypeaheadHighlight",["$sce","$injector","$log",function(e,t,n){function r(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}function i(e){return/<.*>/g.test(e)}var o;return o=t.has("$sanitize"),function(t,a){return!o&&i(t)&&n.warn("Unsafe use of typeahead please use ngSanitize"),t=a?(""+t).replace(new RegExp(r(a),"gi"),"$&"):t,o||(t=e.trustAsHtml(t)),t}}]),angular.module("uib/template/accordion/accordion-group.html",[]).run(["$templateCache",function(e){e.put("uib/template/accordion/accordion-group.html",'
    \n \n
    \n
    \n
    \n
    \n')}]),angular.module("uib/template/accordion/accordion.html",[]).run(["$templateCache",function(e){e.put("uib/template/accordion/accordion.html",'
    ')}]),angular.module("uib/template/alert/alert.html",[]).run(["$templateCache",function(e){e.put("uib/template/alert/alert.html",'\n')}]),angular.module("uib/template/carousel/carousel.html",[]).run(["$templateCache",function(e){e.put("uib/template/carousel/carousel.html",'\n'); +}]),angular.module("uib/template/carousel/slide.html",[]).run(["$templateCache",function(e){e.put("uib/template/carousel/slide.html",'
    \n')}]),angular.module("uib/template/datepicker/datepicker.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/datepicker.html",'
    \n \n \n \n
    \n')}]),angular.module("uib/template/datepicker/day.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/day.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{::label.abbr}}
    {{ weekNumbers[$index] }}\n \n
    \n')}]),angular.module("uib/template/datepicker/month.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/month.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n')}]),angular.module("uib/template/datepicker/year.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepicker/year.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n')}]),angular.module("uib/template/datepickerPopup/popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/datepickerPopup/popup.html",'
    \n \n
    \n')}]),angular.module("uib/template/modal/backdrop.html",[]).run(["$templateCache",function(e){e.put("uib/template/modal/backdrop.html",'\n')}]),angular.module("uib/template/modal/window.html",[]).run(["$templateCache",function(e){e.put("uib/template/modal/window.html",'\n')}]),angular.module("uib/template/pager/pager.html",[]).run(["$templateCache",function(e){e.put("uib/template/pager/pager.html",'\n')}]),angular.module("uib/template/pagination/pagination.html",[]).run(["$templateCache",function(e){e.put("uib/template/pagination/pagination.html",'\n')}]),angular.module("uib/template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/tooltip/tooltip-html-popup.html",'
    \n
    \n
    \n
    \n')}]),angular.module("uib/template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/tooltip/tooltip-popup.html",'
    \n
    \n
    \n
    \n')}]),angular.module("uib/template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/tooltip/tooltip-template-popup.html",'
    \n
    \n
    \n
    \n')}]),angular.module("uib/template/popover/popover-html.html",[]).run(["$templateCache",function(e){e.put("uib/template/popover/popover-html.html",'
    \n
    \n\n
    \n

    \n
    \n
    \n
    \n')}]),angular.module("uib/template/popover/popover-template.html",[]).run(["$templateCache",function(e){e.put("uib/template/popover/popover-template.html",'
    \n
    \n\n
    \n

    \n
    \n
    \n
    \n')}]),angular.module("uib/template/popover/popover.html",[]).run(["$templateCache",function(e){e.put("uib/template/popover/popover.html",'
    \n
    \n\n
    \n

    \n
    \n
    \n
    \n')}]),angular.module("uib/template/progressbar/bar.html",[]).run(["$templateCache",function(e){e.put("uib/template/progressbar/bar.html",'
    \n')}]),angular.module("uib/template/progressbar/progress.html",[]).run(["$templateCache",function(e){e.put("uib/template/progressbar/progress.html",'
    ')}]),angular.module("uib/template/progressbar/progressbar.html",[]).run(["$templateCache",function(e){e.put("uib/template/progressbar/progressbar.html",'
    \n
    \n
    \n')}]),angular.module("uib/template/rating/rating.html",[]).run(["$templateCache",function(e){e.put("uib/template/rating/rating.html",'\n ({{ $index < value ? \'*\' : \' \' }})\n \n\n')}]),angular.module("uib/template/tabs/tab.html",[]).run(["$templateCache",function(e){e.put("uib/template/tabs/tab.html",'\n')}]),angular.module("uib/template/tabs/tabset.html",[]).run(["$templateCache",function(e){e.put("uib/template/tabs/tabset.html",'
    \n \n
    \n
    \n
    \n
    \n
    \n')}]),angular.module("uib/template/timepicker/timepicker.html",[]).run(["$templateCache",function(e){e.put("uib/template/timepicker/timepicker.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
      
    \n \n :\n \n :\n \n
      
    \n')}]),angular.module("uib/template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(e){e.put("uib/template/typeahead/typeahead-match.html",'\n')}]),angular.module("uib/template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(e){e.put("uib/template/typeahead/typeahead-popup.html",'\n')}]),angular.module("ui.bootstrap.carousel").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibCarouselCss&&angular.element(document).find("head").prepend(''),angular.$$uibCarouselCss=!0}),angular.module("ui.bootstrap.datepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerCss=!0}),angular.module("ui.bootstrap.position").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibPositionCss&&angular.element(document).find("head").prepend(''),angular.$$uibPositionCss=!0}),angular.module("ui.bootstrap.datepickerPopup").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerpopupCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerpopupCss=!0}),angular.module("ui.bootstrap.tooltip").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTooltipCss&&angular.element(document).find("head").prepend(''),angular.$$uibTooltipCss=!0}),angular.module("ui.bootstrap.timepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTimepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibTimepickerCss=!0}),angular.module("ui.bootstrap.typeahead").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTypeaheadCss&&angular.element(document).find("head").prepend(''),angular.$$uibTypeaheadCss=!0}),/** * State-based routing for AngularJS * @version v0.4.2 * @link http://angular-ui.github.com/ * @license MIT License, http://www.opensource.org/licenses/MIT */ -"undefined"!=typeof module&&"undefined"!=typeof exports&&module.exports===exports&&(module.exports="ui.router"),function(e,t,n){"use strict";function r(e,t){return W(new(W(function(){},{prototype:e})),t)}function i(e){return B(arguments,function(t){t!==e&&B(t,function(t,n){e.hasOwnProperty(n)||(e[n]=t)})}),e}function o(e,t){var n=[];for(var r in e.path){if(e.path[r]!==t.path[r])break;n.push(e.path[r])}return n}function a(e){if(Object.keys)return Object.keys(e);var t=[];return B(e,function(e,n){t.push(n)}),t}function s(e,t){if(Array.prototype.indexOf)return e.indexOf(t,Number(arguments[2])||0);var n=e.length>>>0,r=Number(arguments[2])||0;for(r=0>r?Math.ceil(r):Math.floor(r),0>r&&(r+=n);n>r;r++)if(r in e&&e[r]===t)return r;return-1}function u(e,t,n,r){var i,u=o(n,r),l={},c=[];for(var p in u)if(u[p]&&u[p].params&&(i=a(u[p].params),i.length))for(var f in i)s(c,i[f])>=0||(c.push(i[f]),l[i[f]]=e[i[f]]);return W({},l,t)}function l(e,t,n){if(!n){n=[];for(var r in e)n.push(r)}for(var i=0;i "));if(b[n]=r,U(e))v.push(n,[function(){return t.get(e)}],l);else{var i=t.annotate(e);B(i,function(e){e!==n&&u.hasOwnProperty(e)&&d(u[e],e)}),v.push(n,e,i)}$.pop(),b[n]=o}}function h(e){return L(e)&&e.then&&e.$$promises}if(!L(u))throw new Error("'invocables' must be an object");var g=a(u||{}),v=[],$=[],b={};return B(u,d),u=$=b=null,function(r,o,a){function s(){--w||(x||i(y,o.$$values),$.$$values=y,$.$$promises=$.$$promises||!0,delete $.$$inheritedValues,d.resolve(y))}function u(e){$.$$failure=e,d.reject(e)}function l(n,i,o){function l(e){p.reject(e),u(e)}function c(){if(!R($.$$failure))try{p.resolve(t.invoke(i,a,y)),p.promise.then(function(e){y[n]=e,s()},l)}catch(e){l(e)}}var p=e.defer(),f=0;B(o,function(e){b.hasOwnProperty(e)&&!r.hasOwnProperty(e)&&(f++,b[e].then(function(t){y[e]=t,--f||c()},l))}),f||c(),b[n]=m(p.promise)}if(h(r)&&a===n&&(a=o,o=r,r=null),r){if(!L(r))throw new Error("'locals' must be an object")}else r=c;if(o){if(!h(o))throw new Error("'parent' must be a promise returned by $resolve.resolve()")}else o=p;var d=e.defer(),$=m(d.promise),b=$.$$promises={},y=W({},r),w=1+v.length/3,x=!1;if(m($),R(o.$$failure))return u(o.$$failure),$;o.$$inheritedValues&&i(y,f(o.$$inheritedValues,g)),W(b,o.$$promises),o.$$values?(x=i(y,f(o.$$values,g)),$.$$inheritedValues=f(o.$$values,g),s()):(o.$$inheritedValues&&($.$$inheritedValues=f(o.$$inheritedValues,g)),o.then(s,u));for(var k=0,C=v.length;C>k;k+=3)r.hasOwnProperty(v[k])?s():l(v[k],v[k+1],v[k+2]);return $}},this.resolve=function(e,t,n,r){return this.study(e)(t,n,r)}}function v(){var e=t.version.minor<3;this.shouldUnsafelyUseHttp=function(t){e=!!t},this.$get=["$http","$templateCache","$injector",function(t,n,r){return new $(t,n,r,e)}]}function $(e,t,n,r){this.fromConfig=function(e,t,n){return R(e.template)?this.fromString(e.template,t):R(e.templateUrl)?this.fromUrl(e.templateUrl,t):R(e.templateProvider)?this.fromProvider(e.templateProvider,t,n):null},this.fromString=function(e,t){return H(e)?e(t):e},this.fromUrl=function(i,o){return H(i)&&(i=i(o)),null==i?null:r?e.get(i,{cache:t,headers:{Accept:"text/html"}}).then(function(e){return e.data}):n.get("$templateRequest")(i)},this.fromProvider=function(e,t,r){return n.invoke(e,null,r||{params:t})}}function b(e,t,i){function o(t,n,r,i){if(g.push(t),h[t])return h[t];if(!/^\w+([-.]+\w+)*(?:\[\])?$/.test(t))throw new Error("Invalid parameter name '"+t+"' in pattern '"+e+"'");if(m[t])throw new Error("Duplicate parameter name '"+t+"' in pattern '"+e+"'");return m[t]=new G.Param(t,n,r,i),m[t]}function a(e,t,n,r){var i=["",""],o=e.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!t)return o;switch(n){case!1:i=["(",")"+(r?"?":"")];break;case!0:o=o.replace(/\/$/,""),i=["(?:/(",")|/)?"];break;default:i=["("+n+"|",")?"]}return o+i[0]+t+i[1]}function s(i,o){var a,s,u,l,c;return a=i[2]||i[3],c=t.params[a],u=e.substring(f,i.index),s=o?i[4]:i[4]||("*"==i[1]?".*":null),s&&(l=G.type(s)||r(G.type("string"),{pattern:new RegExp(s,t.caseInsensitive?"i":n)})),{id:a,regexp:s,segment:u,type:l,cfg:c}}t=W({params:{}},L(t)?t:{});var u,l=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,c=/([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,p="^",f=0,d=this.segments=[],h=i?i.params:{},m=this.params=i?i.params.$$new():new G.ParamSet,g=[];this.source=e;for(var v,$,b;(u=l.exec(e))&&(v=s(u,!1),!(v.segment.indexOf("?")>=0));)$=o(v.id,v.type,v.cfg,"path"),p+=a(v.segment,$.type.pattern.source,$.squash,$.isOptional),d.push(v.segment),f=l.lastIndex;b=e.substring(f);var y=b.indexOf("?");if(y>=0){var w=this.sourceSearch=b.substring(y);if(b=b.substring(0,y),this.sourcePath=e.substring(0,f+y),w.length>0)for(f=0;u=c.exec(w);)v=s(u,!0),$=o(v.id,v.type,v.cfg,"search"),f=l.lastIndex}else this.sourcePath=e,this.sourceSearch="";p+=a(b)+(t.strict===!1?"/?":"")+"$",d.push(b),this.regexp=new RegExp(p,t.caseInsensitive?"i":n),this.prefix=d[0],this.$$paramNames=g}function y(e){W(this,e)}function w(){function e(e){return null!=e?e.toString().replace(/(~|\/)/g,function(e){return{"~":"~~","/":"~2F"}[e]}):e}function i(e){return null!=e?e.toString().replace(/(~~|~2F)/g,function(e){return{"~~":"~","~2F":"/"}[e]}):e}function o(){return{strict:m,caseInsensitive:f}}function u(e){return H(e)||_(e)&&H(e[e.length-1])}function l(){for(;x.length;){var e=x.shift();if(e.pattern)throw new Error("You cannot override a type's .pattern at runtime.");t.extend(v[e.name],p.invoke(e.def))}}function c(e){W(this,e||{})}G=this;var p,f=!1,m=!0,g=!1,v={},$=!0,x=[],k={string:{encode:e,decode:i,is:function(e){return null==e||!R(e)||"string"==typeof e},pattern:/[^\/]*/},"int":{encode:e,decode:function(e){return parseInt(e,10)},is:function(e){return e!==n&&null!==e&&this.decode(e.toString())===e},pattern:/\d+/},bool:{encode:function(e){return e?1:0},decode:function(e){return 0!==parseInt(e,10)},is:function(e){return e===!0||e===!1},pattern:/0|1/},date:{encode:function(e){return this.is(e)?[e.getFullYear(),("0"+(e.getMonth()+1)).slice(-2),("0"+e.getDate()).slice(-2)].join("-"):n},decode:function(e){if(this.is(e))return e;var t=this.capture.exec(e);return t?new Date(t[1],t[2]-1,t[3]):n},is:function(e){return e instanceof Date&&!isNaN(e.valueOf())},equals:function(e,t){return this.is(e)&&this.is(t)&&e.toISOString()===t.toISOString()},pattern:/[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/,capture:/([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/},json:{encode:t.toJson,decode:t.fromJson,is:t.isObject,equals:t.equals,pattern:/[^\/]*/},any:{encode:t.identity,decode:t.identity,equals:t.equals,pattern:/.*/}};w.$$getDefaultValue=function(e){if(!u(e.value))return e.value;if(!p)throw new Error("Injectable functions cannot be called at configuration time");return p.invoke(e.value)},this.caseInsensitive=function(e){return R(e)&&(f=e),f},this.strictMode=function(e){return R(e)&&(m=e),m},this.defaultSquashPolicy=function(e){if(!R(e))return g;if(e!==!0&&e!==!1&&!U(e))throw new Error("Invalid squash policy: "+e+". Valid policies: false, true, arbitrary-string");return g=e,e},this.compile=function(e,t){return new b(e,W(o(),t))},this.isMatcher=function(e){if(!L(e))return!1;var t=!0;return B(b.prototype,function(n,r){H(n)&&(t=t&&R(e[r])&&H(e[r]))}),t},this.type=function(e,t,n){if(!R(t))return v[e];if(v.hasOwnProperty(e))throw new Error("A type named '"+e+"' has already been defined.");return v[e]=new y(W({name:e},t)),n&&(x.push({name:e,def:n}),$||l()),this},B(k,function(e,t){v[t]=new y(W({name:t},e))}),v=r(v,{}),this.$get=["$injector",function(e){return p=e,$=!1,l(),B(k,function(e,t){v[t]||(v[t]=new y(e))}),this}],this.Param=function(e,r,i,o){function l(e){var t=L(e)?a(e):[],n=-1===s(t,"value")&&-1===s(t,"type")&&-1===s(t,"squash")&&-1===s(t,"array");return n&&(e={value:e}),e.$$fn=u(e.value)?e.value:function(){return e.value},e}function c(n,r,i){if(n.type&&r)throw new Error("Param '"+e+"' has two type configurations.");return r?r:n.type?t.isString(n.type)?v[n.type]:n.type instanceof y?n.type:new y(n.type):"config"===i?v.any:v.string}function f(){var t={array:"search"===o?"auto":!1},n=e.match(/\[\]$/)?{array:!0}:{};return W(t,n,i).array}function m(e,t){var n=e.squash;if(!t||n===!1)return!1;if(!R(n)||null==n)return g;if(n===!0||U(n))return n;throw new Error("Invalid squash policy: '"+n+"'. Valid policies: false, true, or arbitrary string")}function $(e,t,r,i){var o,a,u=[{from:"",to:r||t?n:""},{from:null,to:r||t?n:""}];return o=_(e.replace)?e.replace:[],U(i)&&o.push({from:i,to:n}),a=h(o,function(e){return e.from}),d(u,function(e){return-1===s(a,e.from)}).concat(o)}function b(){if(!p)throw new Error("Injectable functions cannot be called at configuration time");var e=p.invoke(i.$$fn);if(null!==e&&e!==n&&!k.type.is(e))throw new Error("Default value ("+e+") for parameter '"+k.id+"' is not an instance of Type ("+k.type.name+")");return e}function w(e){function t(e){return function(t){return t.from===e}}function n(e){var n=h(d(k.replace,t(e)),function(e){return e.to});return n.length?n[0]:e}return e=n(e),R(e)?k.type.$normalize(e):b()}function x(){return"{Param:"+e+" "+r+" squash: '"+T+"' optional: "+S+"}"}var k=this;i=l(i),r=c(i,r,o);var C=f();r=C?r.$asArray(C,"search"===o):r,"string"!==r.name||C||"path"!==o||i.value!==n||(i.value="");var S=i.value!==n,T=m(i,S),E=$(i,C,S,T);W(this,{id:e,type:r,location:o,array:C,squash:T,replace:E,isOptional:S,value:w,dynamic:n,config:i,toString:x})},c.prototype={$$new:function(){return r(this,W(new c,{$$parent:this}))},$$keys:function(){for(var e=[],t=[],n=this,r=a(c.prototype);n;)t.push(n),n=n.$$parent;return t.reverse(),B(t,function(t){B(a(t),function(t){-1===s(e,t)&&-1===s(r,t)&&e.push(t)})}),e},$$values:function(e){var t={},n=this;return B(n.$$keys(),function(r){t[r]=n[r].value(e&&e[r])}),t},$$equals:function(e,t){var n=!0,r=this;return B(r.$$keys(),function(i){var o=e&&e[i],a=t&&t[i];r[i].type.equals(o,a)||(n=!1)}),n},$$validates:function(e){var r,i,o,a,s,u=this.$$keys();for(r=0;ri;i++)if(t(l[i]))return;c&&t(c)}}function h(){return u=u||i.$on("$locationChangeSuccess",d)}var m,g=a.baseHref(),v=r.url();return p||h(),{sync:function(){d()},listen:function(){return h()},update:function(e){return e?void(v=r.url()):void(r.url()!==v&&(r.url(v),r.replace()))},push:function(e,t,i){var o=e.format(t||{});null!==o&&t&&t["#"]&&(o+="#"+t["#"]),r.url(o),m=i&&i.$$avoidResync?r.url():n,i&&i.replace&&r.replace()},href:function(n,i,o){if(!n.validates(i))return null;var a=e.html5Mode();t.isObject(a)&&(a=a.enabled),a=a&&s.history;var u=n.format(i);if(o=o||{},a||null===u||(u="#"+e.hashPrefix()+u),null!==u&&i&&i["#"]&&(u+="#"+i["#"]),u=f(u,a,o.absolute),!o.absolute||!u)return u;var l=!a&&u?"/":"",c=r.port();return c=80===c||443===c?"":":"+c,[r.protocol(),"://",r.host(),c,l,u].join("")}}}var u,l=[],c=null,p=!1;this.rule=function(e){if(!H(e))throw new Error("'rule' must be a function");return l.push(e),this},this.otherwise=function(e){if(U(e)){var t=e;e=function(){return t}}else if(!H(e))throw new Error("'rule' must be a function");return c=e,this},this.when=function(e,t){var n,s=U(t);if(U(e)&&(e=r.compile(e)),!s&&!H(t)&&!_(t))throw new Error("invalid 'handler' in when()");var u={matcher:function(e,t){return s&&(n=r.compile(t),t=["$match",function(e){return n.format(e)}]),W(function(n,r){return a(n,t,e.exec(r.path(),r.search()))},{prefix:U(e.prefix)?e.prefix:""})},regex:function(e,t){if(e.global||e.sticky)throw new Error("when() RegExp must not be global or sticky");return s&&(n=t,t=["$match",function(e){return o(n,e)}]),W(function(n,r){return a(n,t,e.exec(r.path()))},{prefix:i(e)})}},l={matcher:r.isMatcher(e),regex:e instanceof RegExp};for(var c in l)if(l[c])return this.rule(u[c](e,t));throw new Error("invalid 'what' in when()")},this.deferIntercept=function(e){e===n&&(e=!0),p=e},this.$get=s,s.$inject=["$location","$rootScope","$injector","$browser","$sniffer"]}function k(e,i){function o(e){return 0===e.indexOf(".")||0===e.indexOf("^")}function f(e,t){if(!e)return n;var r=U(e),i=r?e:e.name,a=o(i);if(a){if(!t)throw new Error("No reference point given for path '"+i+"'");t=f(t);for(var s=i.split("."),u=0,l=s.length,c=t;l>u;u++)if(""!==s[u]||0!==u){if("^"!==s[u])break;if(!c.parent)throw new Error("Path '"+i+"' not valid for state '"+t.name+"'");c=c.parent}else c=t;s=s.slice(u).join("."),i=c.name+(c.name&&s?".":"")+s}var p=T[i];return!p||!r&&(r||p!==e&&p.self!==e)?n:p}function d(e,t){E[e]||(E[e]=[]),E[e].push(t)}function g(e){for(var t=E[e]||[];t.length;)v(t.shift())}function v(t){t=r(t,{self:t,resolve:t.resolve||{},toString:function(){return this.name}});var n=t.name;if(!U(n)||n.indexOf("@")>=0)throw new Error("State must have a valid name");if(T.hasOwnProperty(n))throw new Error("State '"+n+"' is already defined");var i=-1!==n.indexOf(".")?n.substring(0,n.lastIndexOf(".")):U(t.parent)?t.parent:L(t.parent)&&U(t.parent.name)?t.parent.name:"";if(i&&!T[i])return d(i,t.self);for(var o in A)H(A[o])&&(t[o]=A[o](t,A.$delegates[o]));return T[n]=t,!t[D]&&t.url&&e.when(t.url,["$match","$stateParams",function(e,n){S.$current.navigable==t&&l(e,n)||S.transitionTo(t,e,{inherit:!0,location:!1})}]),g(n),t}function $(e){return e.indexOf("*")>-1}function b(e){for(var t=e.split("."),n=S.$current.name.split("."),r=0,i=t.length;i>r;r++)"*"===t[r]&&(n[r]="*");return"**"===t[0]&&(n=n.slice(s(n,t[1])),n.unshift("**")),"**"===t[t.length-1]&&(n.splice(s(n,t[t.length-2])+1,Number.MAX_VALUE),n.push("**")),t.length!=n.length?!1:n.join("")===t.join("")}function y(e,t){return U(e)&&!R(t)?A[e]:H(t)&&U(e)?(A[e]&&!A.$delegates[e]&&(A.$delegates[e]=A[e]),A[e]=t,this):this}function w(e,t){return L(e)?t=e:t.name=e,v(t),this}function x(e,i,o,s,l,p,d,g,v){function y(t,n,r,o){var a=e.$broadcast("$stateNotFound",t,n,r);if(a.defaultPrevented)return d.update(),M;if(!a.retry)return null;if(o.$retry)return d.update(),O;var s=S.transition=i.when(a.retry);return s.then(function(){return s!==S.transition?(e.$broadcast("$stateChangeCancel",t.to,t.toParams,n,r),E):(t.options.$retry=!0,S.transitionTo(t.to,t.toParams,t.options))},function(){return M}),d.update(),s}function w(e,n,r,a,u,p){function f(){var n=[];return B(e.views,function(r,i){var a=r.resolve&&r.resolve!==e.resolve?r.resolve:{};a.$template=[function(){return o.load(i,{view:r,locals:u.globals,params:d,notify:p.notify})||""}],n.push(l.resolve(a,u.globals,u.resolve,e).then(function(n){if(H(r.controllerProvider)||_(r.controllerProvider)){var o=t.extend({},a,u.globals);n.$$controller=s.invoke(r.controllerProvider,null,o)}else n.$$controller=r.controller;n.$$state=e,n.$$controllerAs=r.controllerAs,n.$$resolveAs=r.resolveAs,u[i]=n}))}),i.all(n).then(function(){return u.globals})}var d=r?n:c(e.params.$$keys(),n),h={$stateParams:d};u.resolve=l.resolve(e.resolve,h,u.resolve,e);var m=[u.resolve.then(function(e){u.globals=e})];return a&&m.push(a),i.all(m).then(f).then(function(e){return u})}var x=new Error("transition superseded"),E=m(i.reject(x)),A=m(i.reject(new Error("transition prevented"))),M=m(i.reject(new Error("transition aborted"))),O=m(i.reject(new Error("transition failed")));return C.locals={resolve:null,globals:{$stateParams:{}}},S={params:{},current:C.self,$current:C,transition:null},S.reload=function(e){return S.transitionTo(S.current,p,{reload:e||!0,inherit:!1,notify:!0})},S.go=function(e,t,n){return S.transitionTo(e,t,W({inherit:!0,relative:S.$current},n))},S.transitionTo=function(t,n,o){n=n||{},o=W({location:!0,inherit:!1,relative:null,notify:!0,reload:!1,$retry:!1},o||{});var a,l=S.$current,h=S.params,g=l.path,v=f(t,o.relative),$=n["#"];if(!R(v)){var b={to:t,toParams:n,options:o},T=y(b,l.self,h,o);if(T)return T;if(t=b.to,n=b.toParams,o=b.options,v=f(t,o.relative),!R(v)){if(!o.relative)throw new Error("No such state '"+t+"'");throw new Error("Could not resolve '"+t+"' from state '"+o.relative+"'")}}if(v[D])throw new Error("Cannot transition to abstract state '"+t+"'");if(o.inherit&&(n=u(p,n||{},S.$current,v)),!v.params.$$validates(n))return O;n=v.params.$$values(n),t=v;var M=t.path,P=0,N=M[P],j=C.locals,I=[];if(o.reload){if(U(o.reload)||L(o.reload)){if(L(o.reload)&&!o.reload.name)throw new Error("Invalid reload state object");var q=o.reload===!0?g[0]:f(o.reload);if(o.reload&&!q)throw new Error("No such reload state '"+(U(o.reload)?o.reload:o.reload.name)+"'");for(;N&&N===g[P]&&N!==q;)j=I[P]=N.locals,P++,N=M[P]}}else for(;N&&N===g[P]&&N.ownParams.$$equals(n,h);)j=I[P]=N.locals,P++,N=M[P];if(k(t,n,l,h,j,o))return $&&(n["#"]=$),S.params=n,z(S.params,p),z(c(t.params.$$keys(),p),t.locals.globals.$stateParams),o.location&&t.navigable&&t.navigable.url&&(d.push(t.navigable.url,n,{$$avoidResync:!0,replace:"replace"===o.location}),d.update(!0)),S.transition=null,i.when(S.current);if(n=c(t.params.$$keys(),n||{}),$&&(n["#"]=$),o.notify&&e.$broadcast("$stateChangeStart",t.self,n,l.self,h,o).defaultPrevented)return e.$broadcast("$stateChangeCancel",t.self,n,l.self,h),null==S.transition&&d.update(),A;for(var F=i.when(j),V=P;V=P;r--)a=g[r],a.self.onExit&&s.invoke(a.self.onExit,a.self,a.locals.globals),a.locals=null;for(r=P;r2?c.enter(e,null,n).then(r):c.enter(e,null,n,r)},leave:function(e,n){t.version.minor>2?c.leave(e).then(n):c.leave(e,n)}};if(l){var i=l&&l(n,e);return{enter:function(e,t,n){i.enter(e,null,t),n()},leave:function(e,t){i.leave(e),t()}}}return r()}var u=a(),l=u("$animator"),c=u("$animate"),p={restrict:"ECA",terminal:!0,priority:400,transclude:"element",compile:function(n,a,u){return function(n,a,l){function c(){if(f&&(f.remove(),f=null),h&&(h.$destroy(),h=null),d){var e=d.data("$uiViewAnim");$.leave(d,function(){e.$$animLeave.resolve(),f=null}),f=d,d=null}}function p(s){var p,f=D(n,l,a,i),b=f&&e.$current&&e.$current.locals[f];if(s||b!==m){p=n.$new(),m=e.$current.locals[f],p.$emit("$viewContentLoading",f);var y=u(p,function(e){var i=o.defer(),s=o.defer(),u={$animEnter:i.promise,$animLeave:s.promise,$$animLeave:s};e.data("$uiViewAnim",u),$.enter(e,a,function(){i.resolve(),h&&h.$emit("$viewContentAnimationEnded"),(t.isDefined(v)&&!v||n.$eval(v))&&r(e)}),c()});d=y,h=p,h.$emit("$viewContentLoaded",f),h.$eval(g)}}var f,d,h,m,g=l.onload||"",v=l.autoscroll,$=s(l,n);a.inheritedData("$uiView");n.$on("$stateChangeSuccess",function(){p(!1)}),p(!0)}}};return p}function E(e,n,r,i){return{restrict:"ECA",priority:-400,compile:function(o){var a=o.html();return o.empty?o.empty():o[0].innerHTML=null,function(o,s,u){var l=r.$current,c=D(o,u,s,i),p=l&&l.locals[c];if(!p)return s.html(a),void e(s.contents())(o);s.data("$uiView",{name:c,state:p.$$state}),s.html(p.$template?p.$template:a);var f=t.extend({},p);o[p.$$resolveAs]=f;var d=e(s.contents());if(p.$$controller){p.$scope=o,p.$element=s;var h=n(p.$$controller,p);p.$$controllerAs&&(o[p.$$controllerAs]=h,o[p.$$controllerAs][p.$$resolveAs]=f),H(h.$onInit)&&h.$onInit(),s.data("$ngControllerController",h),s.children().data("$ngControllerController",h)}d(o)}}}}function D(e,t,n,r){var i=r(t.uiView||t.name||"")(e),o=n.inheritedData("$uiView");return i.indexOf("@")>=0?i:i+"@"+(o?o.state.name:"")}function A(e,t){var n,r=e.match(/^\s*({[^}]*})\s*$/);if(r&&(e=t+"("+r[1]+")"),n=e.replace(/\n/g," ").match(/^([^(]+?)\s*(\((.*)\))?$/),!n||4!==n.length)throw new Error("Invalid state ref '"+e+"'");return{state:n[1],paramExpr:n[3]||null}}function M(e){var t=e.parent().inheritedData("$uiView");return t&&t.state&&t.state.name?t.state:void 0}function O(e){var t="[object SVGAnimatedString]"===Object.prototype.toString.call(e.prop("href")),n="FORM"===e[0].nodeName;return{attr:n?"action":t?"xlink:href":"href",isAnchor:"A"===e.prop("tagName").toUpperCase(),clickable:!n}}function P(e,t,n,r,i){return function(o){var a=o.which||o.button,s=i();if(!(a>1||o.ctrlKey||o.metaKey||o.shiftKey||e.attr("target"))){var u=n(function(){t.go(s.state,s.params,s.options)});o.preventDefault();var l=r.isAnchor&&!s.href?1:0;o.preventDefault=function(){l--<=0&&n.cancel(u)}}}}function N(e,t){return{relative:M(e)||t.$current,inherit:!0}}function j(e,n){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(r,i,o,a){var s,u=A(o.uiSref,e.current.name),l={state:u.state,href:null,params:null},c=O(i),p=a[1]||a[0],f=null;l.options=W(N(i,e),o.uiSrefOpts?r.$eval(o.uiSrefOpts):{});var d=function(n){n&&(l.params=t.copy(n)),l.href=e.href(u.state,l.params,l.options),f&&f(),p&&(f=p.$$addStateInfo(u.state,l.params)),null!==l.href&&o.$set(c.attr,l.href)};u.paramExpr&&(r.$watch(u.paramExpr,function(e){e!==l.params&&d(e)},!0),l.params=t.copy(r.$eval(u.paramExpr))),d(),c.clickable&&(s=P(i,e,n,c,function(){return l}),i[i.on?"on":"bind"]("click",s),r.$on("$destroy",function(){i[i.off?"off":"unbind"]("click",s)}))}}}function I(e,t){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(n,r,i,o){function a(t){f.state=t[0],f.params=t[1],f.options=t[2],f.href=e.href(f.state,f.params,f.options),d&&d(),l&&(d=l.$$addStateInfo(f.state,f.params)),f.href&&i.$set(u.attr,f.href)}var s,u=O(r),l=o[1]||o[0],c=[i.uiState,i.uiStateParams||null,i.uiStateOpts||null],p="["+c.map(function(e){return e||"null"}).join(", ")+"]",f={state:null,params:null,options:null,href:null},d=null;n.$watch(p,a,!0),a(n.$eval(p)),u.clickable&&(s=P(r,e,t,u,function(){return f}),r[r.on?"on":"bind"]("click",s),n.$on("$destroy",function(){r[r.off?"off":"unbind"]("click",s)}))}}}function q(e,t,n){return{restrict:"A",controller:["$scope","$element","$attrs","$timeout",function(t,r,i,o){function a(t,n,i){var o=e.get(t,M(r)),a=s(t,n),u={state:o||{name:t},params:n,hash:a};return m.push(u),g[a]=i,function(){var e=m.indexOf(u);-1!==e&&m.splice(e,1)}}function s(e,n){if(!U(e))throw new Error("state should be a string");return L(n)?e+Y(n):(n=t.$eval(n),L(n)?e+Y(n):e)}function u(){for(var e=0;e0)){var n=a(e,t,h);return u(),n}},t.$on("$stateChangeSuccess",u),u()}]}}function F(e){var t=function(t,n){return e.is(t,n)};return t.$stateful=!0,t}function V(e){var t=function(t,n,r){return e.includes(t,n,r)};return t.$stateful=!0,t}var R=t.isDefined,H=t.isFunction,U=t.isString,L=t.isObject,_=t.isArray,B=t.forEach,W=t.extend,z=t.copy,Y=t.toJson;t.module("ui.router.util",["ng"]),t.module("ui.router.router",["ui.router.util"]),t.module("ui.router.state",["ui.router.router","ui.router.util"]),t.module("ui.router",["ui.router.state"]),t.module("ui.router.compat",["ui.router"]),g.$inject=["$q","$injector"],t.module("ui.router.util").service("$resolve",g),t.module("ui.router.util").provider("$templateFactory",v);var G;b.prototype.concat=function(e,t){var n={caseInsensitive:G.caseInsensitive(),strict:G.strictMode(),squash:G.defaultSquashPolicy()};return new b(this.sourcePath+e+this.sourceSearch,W(n,t),this)},b.prototype.toString=function(){return this.source},b.prototype.exec=function(e,t){function n(e){function t(e){return e.split("").reverse().join("")}function n(e){return e.replace(/\\-/g,"-")}var r=t(e).split(/-(?!\\)/),i=h(r,t);return h(i,n).reverse()}var r=this.regexp.exec(e);if(!r)return null;t=t||{};var i,o,a,s=this.parameters(),u=s.length,l=this.segments.length-1,c={};if(l!==r.length-1)throw new Error("Unbalanced capture group in route '"+this.source+"'");var p,f;for(i=0;l>i;i++){for(a=s[i],p=this.params[a],f=r[i+1],o=0;oi;i++){for(a=s[i],c[a]=this.params[a].value(t[a]),p=this.params[a],f=t[a],o=0;oo;o++){var c=s>o,p=r[o],f=i[p],d=f.value(e[p]),m=f.isOptional&&f.type.equals(f.value(),d),g=m?f.squash:!1,v=f.type.encode(d);if(c){var $=n[o+1],b=o+1===s;if(g===!1)null!=v&&(l+=_(v)?h(v,t).join("-"):encodeURIComponent(v)),l+=$;else if(g===!0){var y=l.match(/\/$/)?/\/?(.*)/:/(.*)/;l+=$.match(y)[1]}else U(g)&&(l+=g+$);b&&f.squash===!0&&"/"===l.slice(-1)&&(l=l.slice(0,-1))}else{if(null==v||m&&g!==!1)continue;if(_(v)||(v=[v]),0===v.length)continue;v=h(v,encodeURIComponent).join("&"+p+"="),l+=(a?"&":"?")+(p+"="+v),a=!0}}return l},y.prototype.is=function(e,t){return!0},y.prototype.encode=function(e,t){return e},y.prototype.decode=function(e,t){return e},y.prototype.equals=function(e,t){return e==t},y.prototype.$subPattern=function(){var e=this.pattern.toString();return e.substr(1,e.length-2)},y.prototype.pattern=/.*/,y.prototype.toString=function(){return"{Type:"+this.name+"}"},y.prototype.$normalize=function(e){return this.is(e)?e:this.decode(e)},y.prototype.$asArray=function(e,t){function r(e,t){function r(e,t){return function(){return e[t].apply(e,arguments)}}function i(e){return _(e)?e:R(e)?[e]:[]}function o(e){switch(e.length){case 0:return n;case 1:return"auto"===t?e[0]:e;default:return e}}function a(e){return!e}function s(e,t){return function(n){if(_(n)&&0===n.length)return n;n=i(n);var r=h(n,e);return t===!0?0===d(r,a).length:o(r)}}function u(e){return function(t,n){var r=i(t),o=i(n); -if(r.length!==o.length)return!1;for(var a=0;a>>0,r=Number(arguments[2])||0;for(r=0>r?Math.ceil(r):Math.floor(r),0>r&&(r+=n);n>r;r++)if(r in e&&e[r]===t)return r;return-1}function l(e,t,n,r){var i,l=o(n,r),u={},c=[];for(var p in l)if(l[p]&&l[p].params&&(i=a(l[p].params),i.length))for(var d in i)s(c,i[d])>=0||(c.push(i[d]),u[i[d]]=e[i[d]]);return H({},u,t)}function u(e,t,n){if(!n){n=[];for(var r in e)n.push(r)}for(var i=0;i "));if(y[n]=r,V(e))v.push(n,[function(){return t.get(e)}],u);else{var i=t.annotate(e);G(i,function(e){e!==n&&l.hasOwnProperty(e)&&f(l[e],e)}),v.push(n,e,i)}b.pop(),y[n]=o}}function h(e){return j(e)&&e.then&&e.$$promises}if(!j(l))throw new Error("'invocables' must be an object");var g=a(l||{}),v=[],b=[],y={};return G(l,f),l=b=y=null,function(r,o,a){function s(){--x||(C||i($,o.$$values),b.$$values=$,b.$$promises=b.$$promises||!0,delete b.$$inheritedValues,f.resolve($))}function l(e){b.$$failure=e,f.reject(e)}function u(n,i,o){function u(e){p.reject(e),l(e)}function c(){if(!_(b.$$failure))try{p.resolve(t.invoke(i,a,$)),p.promise.then(function(e){$[n]=e,s()},u)}catch(e){u(e)}}var p=e.defer(),d=0;G(o,function(e){y.hasOwnProperty(e)&&!r.hasOwnProperty(e)&&(d++,y[e].then(function(t){$[e]=t,--d||c()},u))}),d||c(),y[n]=m(p.promise)}if(h(r)&&a===n&&(a=o,o=r,r=null),r){if(!j(r))throw new Error("'locals' must be an object")}else r=c;if(o){if(!h(o))throw new Error("'parent' must be a promise returned by $resolve.resolve()")}else o=p;var f=e.defer(),b=m(f.promise),y=b.$$promises={},$=H({},r),x=1+v.length/3,C=!1;if(m(b),_(o.$$failure))return l(o.$$failure),b;o.$$inheritedValues&&i($,d(o.$$inheritedValues,g)),H(y,o.$$promises),o.$$values?(C=i($,d(o.$$values,g)),b.$$inheritedValues=d(o.$$values,g),s()):(o.$$inheritedValues&&(b.$$inheritedValues=d(o.$$inheritedValues,g)),o.then(s,l));for(var w=0,S=v.length;S>w;w+=3)r.hasOwnProperty(v[w])?s():u(v[w],v[w+1],v[w+2]);return b}},this.resolve=function(e,t,n,r){return this.study(e)(t,n,r)}}function v(){var e=t.version.minor<3;this.shouldUnsafelyUseHttp=function(t){e=!!t},this.$get=["$http","$templateCache","$injector",function(t,n,r){return new b(t,n,r,e)}]}function b(e,t,n,r){this.fromConfig=function(e,t,n){return _(e.template)?this.fromString(e.template,t):_(e.templateUrl)?this.fromUrl(e.templateUrl,t):_(e.templateProvider)?this.fromProvider(e.templateProvider,t,n):null},this.fromString=function(e,t){return U(e)?e(t):e},this.fromUrl=function(i,o){return U(i)&&(i=i(o)),null==i?null:r?e.get(i,{cache:t,headers:{Accept:"text/html"}}).then(function(e){return e.data}):n.get("$templateRequest")(i)},this.fromProvider=function(e,t,r){return n.invoke(e,null,r||{params:t})}}function y(e,t,i){function o(t,n,r,i){if(g.push(t),h[t])return h[t];if(!/^\w+([-.]+\w+)*(?:\[\])?$/.test(t))throw new Error("Invalid parameter name '"+t+"' in pattern '"+e+"'");if(m[t])throw new Error("Duplicate parameter name '"+t+"' in pattern '"+e+"'");return m[t]=new Q.Param(t,n,r,i),m[t]}function a(e,t,n,r){var i=["",""],o=e.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!t)return o;switch(n){case!1:i=["(",")"+(r?"?":"")];break;case!0:o=o.replace(/\/$/,""),i=["(?:/(",")|/)?"];break;default:i=["("+n+"|",")?"]}return o+i[0]+t+i[1]}function s(i,o){var a,s,l,u,c;return a=i[2]||i[3],c=t.params[a],l=e.substring(d,i.index),s=o?i[4]:i[4]||("*"==i[1]?".*":null),s&&(u=Q.type(s)||r(Q.type("string"),{pattern:new RegExp(s,t.caseInsensitive?"i":n)})),{id:a,regexp:s,segment:l,type:u,cfg:c}}t=H({params:{}},j(t)?t:{});var l,u=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,c=/([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,p="^",d=0,f=this.segments=[],h=i?i.params:{},m=this.params=i?i.params.$$new():new Q.ParamSet,g=[];this.source=e;for(var v,b,y;(l=u.exec(e))&&(v=s(l,!1),!(v.segment.indexOf("?")>=0));)b=o(v.id,v.type,v.cfg,"path"),p+=a(v.segment,b.type.pattern.source,b.squash,b.isOptional),f.push(v.segment),d=u.lastIndex;y=e.substring(d);var $=y.indexOf("?");if($>=0){var x=this.sourceSearch=y.substring($);if(y=y.substring(0,$),this.sourcePath=e.substring(0,d+$),x.length>0)for(d=0;l=c.exec(x);)v=s(l,!0),b=o(v.id,v.type,v.cfg,"search"),d=u.lastIndex}else this.sourcePath=e,this.sourceSearch="";p+=a(y)+(t.strict===!1?"/?":"")+"$",f.push(y),this.regexp=new RegExp(p,t.caseInsensitive?"i":n),this.prefix=f[0],this.$$paramNames=g}function $(e){H(this,e)}function x(){function e(e){return null!=e?e.toString().replace(/(~|\/)/g,function(e){return{"~":"~~","/":"~2F"}[e]}):e}function i(e){return null!=e?e.toString().replace(/(~~|~2F)/g,function(e){return{"~~":"~","~2F":"/"}[e]}):e}function o(){return{strict:m,caseInsensitive:d}}function l(e){return U(e)||q(e)&&U(e[e.length-1])}function u(){for(;C.length;){var e=C.shift();if(e.pattern)throw new Error("You cannot override a type's .pattern at runtime.");t.extend(v[e.name],p.invoke(e.def))}}function c(e){H(this,e||{})}Q=this;var p,d=!1,m=!0,g=!1,v={},b=!0,C=[],w={string:{encode:e,decode:i,is:function(e){return null==e||!_(e)||"string"==typeof e},pattern:/[^\/]*/},"int":{encode:e,decode:function(e){return parseInt(e,10)},is:function(e){return e!==n&&null!==e&&this.decode(e.toString())===e},pattern:/\d+/},bool:{encode:function(e){return e?1:0},decode:function(e){return 0!==parseInt(e,10)},is:function(e){return e===!0||e===!1},pattern:/0|1/},date:{encode:function(e){return this.is(e)?[e.getFullYear(),("0"+(e.getMonth()+1)).slice(-2),("0"+e.getDate()).slice(-2)].join("-"):n},decode:function(e){if(this.is(e))return e;var t=this.capture.exec(e);return t?new Date(t[1],t[2]-1,t[3]):n},is:function(e){return e instanceof Date&&!isNaN(e.valueOf())},equals:function(e,t){return this.is(e)&&this.is(t)&&e.toISOString()===t.toISOString()},pattern:/[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/,capture:/([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/},json:{encode:t.toJson,decode:t.fromJson,is:t.isObject,equals:t.equals,pattern:/[^\/]*/},any:{encode:t.identity,decode:t.identity,equals:t.equals,pattern:/.*/}};x.$$getDefaultValue=function(e){if(!l(e.value))return e.value;if(!p)throw new Error("Injectable functions cannot be called at configuration time");return p.invoke(e.value)},this.caseInsensitive=function(e){return _(e)&&(d=e),d},this.strictMode=function(e){return _(e)&&(m=e),m},this.defaultSquashPolicy=function(e){if(!_(e))return g;if(e!==!0&&e!==!1&&!V(e))throw new Error("Invalid squash policy: "+e+". Valid policies: false, true, arbitrary-string");return g=e,e},this.compile=function(e,t){return new y(e,H(o(),t))},this.isMatcher=function(e){if(!j(e))return!1;var t=!0;return G(y.prototype,function(n,r){U(n)&&(t=t&&_(e[r])&&U(e[r]))}),t},this.type=function(e,t,n){if(!_(t))return v[e];if(v.hasOwnProperty(e))throw new Error("A type named '"+e+"' has already been defined.");return v[e]=new $(H({name:e},t)),n&&(C.push({name:e,def:n}),b||u()),this},G(w,function(e,t){v[t]=new $(H({name:t},e))}),v=r(v,{}),this.$get=["$injector",function(e){return p=e,b=!1,u(),G(w,function(e,t){v[t]||(v[t]=new $(e))}),this}],this.Param=function(e,r,i,o){function u(e){var t=j(e)?a(e):[],n=-1===s(t,"value")&&-1===s(t,"type")&&-1===s(t,"squash")&&-1===s(t,"array");return n&&(e={value:e}),e.$$fn=l(e.value)?e.value:function(){return e.value},e}function c(n,r,i){if(n.type&&r)throw new Error("Param '"+e+"' has two type configurations.");return r?r:n.type?t.isString(n.type)?v[n.type]:n.type instanceof $?n.type:new $(n.type):"config"===i?v.any:v.string}function d(){var t={array:"search"===o?"auto":!1},n=e.match(/\[\]$/)?{array:!0}:{};return H(t,n,i).array}function m(e,t){var n=e.squash;if(!t||n===!1)return!1;if(!_(n)||null==n)return g;if(n===!0||V(n))return n;throw new Error("Invalid squash policy: '"+n+"'. Valid policies: false, true, or arbitrary string")}function b(e,t,r,i){var o,a,l=[{from:"",to:r||t?n:""},{from:null,to:r||t?n:""}];return o=q(e.replace)?e.replace:[],V(i)&&o.push({from:i,to:n}),a=h(o,function(e){return e.from}),f(l,function(e){return-1===s(a,e.from)}).concat(o)}function y(){if(!p)throw new Error("Injectable functions cannot be called at configuration time");var e=p.invoke(i.$$fn);if(null!==e&&e!==n&&!w.type.is(e))throw new Error("Default value ("+e+") for parameter '"+w.id+"' is not an instance of Type ("+w.type.name+")");return e}function x(e){function t(e){return function(t){return t.from===e}}function n(e){var n=h(f(w.replace,t(e)),function(e){return e.to});return n.length?n[0]:e}return e=n(e),_(e)?w.type.$normalize(e):y()}function C(){return"{Param:"+e+" "+r+" squash: '"+T+"' optional: "+D+"}"}var w=this;i=u(i),r=c(i,r,o);var S=d();r=S?r.$asArray(S,"search"===o):r,"string"!==r.name||S||"path"!==o||i.value!==n||(i.value="");var D=i.value!==n,T=m(i,D),k=b(i,S,D,T);H(this,{id:e,type:r,location:o,array:S,squash:T,replace:k,isOptional:D,value:x,dynamic:n,config:i,toString:C})},c.prototype={$$new:function(){return r(this,H(new c,{$$parent:this}))},$$keys:function(){for(var e=[],t=[],n=this,r=a(c.prototype);n;)t.push(n),n=n.$$parent;return t.reverse(),G(t,function(t){G(a(t),function(t){-1===s(e,t)&&-1===s(r,t)&&e.push(t)})}),e},$$values:function(e){var t={},n=this;return G(n.$$keys(),function(r){t[r]=n[r].value(e&&e[r])}),t},$$equals:function(e,t){var n=!0,r=this;return G(r.$$keys(),function(i){var o=e&&e[i],a=t&&t[i];r[i].type.equals(o,a)||(n=!1)}),n},$$validates:function(e){var r,i,o,a,s,l=this.$$keys();for(r=0;ri;i++)if(t(u[i]))return;c&&t(c)}}function h(){return l=l||i.$on("$locationChangeSuccess",f)}var m,g=a.baseHref(),v=r.url();return p||h(),{sync:function(){f()},listen:function(){return h()},update:function(e){return e?void(v=r.url()):void(r.url()!==v&&(r.url(v),r.replace()))},push:function(e,t,i){var o=e.format(t||{});null!==o&&t&&t["#"]&&(o+="#"+t["#"]),r.url(o),m=i&&i.$$avoidResync?r.url():n,i&&i.replace&&r.replace()},href:function(n,i,o){if(!n.validates(i))return null;var a=e.html5Mode();t.isObject(a)&&(a=a.enabled),a=a&&s.history;var l=n.format(i);if(o=o||{},a||null===l||(l="#"+e.hashPrefix()+l),null!==l&&i&&i["#"]&&(l+="#"+i["#"]),l=d(l,a,o.absolute),!o.absolute||!l)return l;var u=!a&&l?"/":"",c=r.port();return c=80===c||443===c?"":":"+c,[r.protocol(),"://",r.host(),c,u,l].join("")}}}var l,u=[],c=null,p=!1;this.rule=function(e){if(!U(e))throw new Error("'rule' must be a function");return u.push(e),this},this.otherwise=function(e){if(V(e)){var t=e;e=function(){return t}}else if(!U(e))throw new Error("'rule' must be a function");return c=e,this},this.when=function(e,t){var n,s=V(t);if(V(e)&&(e=r.compile(e)),!s&&!U(t)&&!q(t))throw new Error("invalid 'handler' in when()");var l={matcher:function(e,t){return s&&(n=r.compile(t),t=["$match",function(e){return n.format(e)}]),H(function(n,r){return a(n,t,e.exec(r.path(),r.search()))},{prefix:V(e.prefix)?e.prefix:""})},regex:function(e,t){if(e.global||e.sticky)throw new Error("when() RegExp must not be global or sticky");return s&&(n=t,t=["$match",function(e){return o(n,e)}]),H(function(n,r){return a(n,t,e.exec(r.path()))},{prefix:i(e)})}},u={matcher:r.isMatcher(e),regex:e instanceof RegExp};for(var c in u)if(u[c])return this.rule(l[c](e,t));throw new Error("invalid 'what' in when()")},this.deferIntercept=function(e){e===n&&(e=!0),p=e},this.$get=s,s.$inject=["$location","$rootScope","$injector","$browser","$sniffer"]}function w(e,i){function o(e){return 0===e.indexOf(".")||0===e.indexOf("^")}function d(e,t){if(!e)return n;var r=V(e),i=r?e:e.name,a=o(i);if(a){if(!t)throw new Error("No reference point given for path '"+i+"'");t=d(t);for(var s=i.split("."),l=0,u=s.length,c=t;u>l;l++)if(""!==s[l]||0!==l){if("^"!==s[l])break;if(!c.parent)throw new Error("Path '"+i+"' not valid for state '"+t.name+"'");c=c.parent}else c=t;s=s.slice(l).join("."),i=c.name+(c.name&&s?".":"")+s}var p=T[i];return!p||!r&&(r||p!==e&&p.self!==e)?n:p}function f(e,t){k[e]||(k[e]=[]),k[e].push(t)}function g(e){for(var t=k[e]||[];t.length;)v(t.shift())}function v(t){t=r(t,{self:t,resolve:t.resolve||{},toString:function(){return this.name}});var n=t.name;if(!V(n)||n.indexOf("@")>=0)throw new Error("State must have a valid name");if(T.hasOwnProperty(n))throw new Error("State '"+n+"' is already defined");var i=-1!==n.indexOf(".")?n.substring(0,n.lastIndexOf(".")):V(t.parent)?t.parent:j(t.parent)&&V(t.parent.name)?t.parent.name:"";if(i&&!T[i])return f(i,t.self);for(var o in E)U(E[o])&&(t[o]=E[o](t,E.$delegates[o]));return T[n]=t,!t[M]&&t.url&&e.when(t.url,["$match","$stateParams",function(e,n){D.$current.navigable==t&&u(e,n)||D.transitionTo(t,e,{inherit:!0,location:!1})}]),g(n),t}function b(e){return e.indexOf("*")>-1}function y(e){for(var t=e.split("."),n=D.$current.name.split("."),r=0,i=t.length;i>r;r++)"*"===t[r]&&(n[r]="*");return"**"===t[0]&&(n=n.slice(s(n,t[1])),n.unshift("**")),"**"===t[t.length-1]&&(n.splice(s(n,t[t.length-2])+1,Number.MAX_VALUE),n.push("**")),t.length!=n.length?!1:n.join("")===t.join("")}function $(e,t){return V(e)&&!_(t)?E[e]:U(t)&&V(e)?(E[e]&&!E.$delegates[e]&&(E.$delegates[e]=E[e]),E[e]=t,this):this}function x(e,t){return j(e)?t=e:t.name=e,v(t),this}function C(e,i,o,s,u,p,f,g,v){function $(t,n,r,o){var a=e.$broadcast("$stateNotFound",t,n,r);if(a.defaultPrevented)return f.update(),N;if(!a.retry)return null;if(o.$retry)return f.update(),A;var s=D.transition=i.when(a.retry);return s.then(function(){return s!==D.transition?(e.$broadcast("$stateChangeCancel",t.to,t.toParams,n,r),k):(t.options.$retry=!0,D.transitionTo(t.to,t.toParams,t.options))},function(){return N}),f.update(),s}function x(e,n,r,a,l,p){function d(){var n=[];return G(e.views,function(r,i){var a=r.resolve&&r.resolve!==e.resolve?r.resolve:{};a.$template=[function(){return o.load(i,{view:r,locals:l.globals,params:f,notify:p.notify})||""}],n.push(u.resolve(a,l.globals,l.resolve,e).then(function(n){if(U(r.controllerProvider)||q(r.controllerProvider)){var o=t.extend({},a,l.globals);n.$$controller=s.invoke(r.controllerProvider,null,o)}else n.$$controller=r.controller;n.$$state=e,n.$$controllerAs=r.controllerAs,n.$$resolveAs=r.resolveAs,l[i]=n}))}),i.all(n).then(function(){return l.globals})}var f=r?n:c(e.params.$$keys(),n),h={$stateParams:f};l.resolve=u.resolve(e.resolve,h,l.resolve,e);var m=[l.resolve.then(function(e){l.globals=e})];return a&&m.push(a),i.all(m).then(d).then(function(e){return l})}var C=new Error("transition superseded"),k=m(i.reject(C)),E=m(i.reject(new Error("transition prevented"))),N=m(i.reject(new Error("transition aborted"))),A=m(i.reject(new Error("transition failed")));return S.locals={resolve:null,globals:{$stateParams:{}}},D={params:{},current:S.self,$current:S,transition:null},D.reload=function(e){return D.transitionTo(D.current,p,{reload:e||!0,inherit:!1,notify:!0})},D.go=function(e,t,n){return D.transitionTo(e,t,H({inherit:!0,relative:D.$current},n))},D.transitionTo=function(t,n,o){n=n||{},o=H({location:!0,inherit:!1,relative:null,notify:!0,reload:!1,$retry:!1},o||{});var a,u=D.$current,h=D.params,g=u.path,v=d(t,o.relative),b=n["#"];if(!_(v)){var y={to:t,toParams:n,options:o},T=$(y,u.self,h,o);if(T)return T;if(t=y.to,n=y.toParams,o=y.options,v=d(t,o.relative),!_(v)){if(!o.relative)throw new Error("No such state '"+t+"'");throw new Error("Could not resolve '"+t+"' from state '"+o.relative+"'")}}if(v[M])throw new Error("Cannot transition to abstract state '"+t+"'");if(o.inherit&&(n=l(p,n||{},D.$current,v)),!v.params.$$validates(n))return A;n=v.params.$$values(n),t=v;var N=t.path,P=0,L=N[P],I=S.locals,O=[];if(o.reload){if(V(o.reload)||j(o.reload)){if(j(o.reload)&&!o.reload.name)throw new Error("Invalid reload state object");var F=o.reload===!0?g[0]:d(o.reload);if(o.reload&&!F)throw new Error("No such reload state '"+(V(o.reload)?o.reload:o.reload.name)+"'");for(;L&&L===g[P]&&L!==F;)I=O[P]=L.locals,P++,L=N[P]}}else for(;L&&L===g[P]&&L.ownParams.$$equals(n,h);)I=O[P]=L.locals,P++,L=N[P];if(w(t,n,u,h,I,o))return b&&(n["#"]=b),D.params=n,z(D.params,p),z(c(t.params.$$keys(),p),t.locals.globals.$stateParams),o.location&&t.navigable&&t.navigable.url&&(f.push(t.navigable.url,n,{$$avoidResync:!0,replace:"replace"===o.location}),f.update(!0)),D.transition=null,i.when(D.current);if(n=c(t.params.$$keys(),n||{}),b&&(n["#"]=b),o.notify&&e.$broadcast("$stateChangeStart",t.self,n,u.self,h,o).defaultPrevented)return e.$broadcast("$stateChangeCancel",t.self,n,u.self,h),null==D.transition&&f.update(),E;for(var R=i.when(I),B=P;B=P;r--)a=g[r],a.self.onExit&&s.invoke(a.self.onExit,a.self,a.locals.globals),a.locals=null;for(r=P;r2?c.enter(e,null,n).then(r):c.enter(e,null,n,r)},leave:function(e,n){t.version.minor>2?c.leave(e).then(n):c.leave(e,n)}};if(u){var i=u&&u(n,e);return{enter:function(e,t,n){i.enter(e,null,t),n()},leave:function(e,t){i.leave(e),t()}}}return r()}var l=a(),u=l("$animator"),c=l("$animate"),p={restrict:"ECA",terminal:!0,priority:400,transclude:"element",compile:function(n,a,l){return function(n,a,u){function c(){if(d&&(d.remove(),d=null),h&&(h.$destroy(),h=null),f){var e=f.data("$uiViewAnim");b.leave(f,function(){e.$$animLeave.resolve(),d=null}),d=f,f=null}}function p(s){var p,d=M(n,u,a,i),y=d&&e.$current&&e.$current.locals[d];if(s||y!==m){p=n.$new(),m=e.$current.locals[d],p.$emit("$viewContentLoading",d);var $=l(p,function(e){var i=o.defer(),s=o.defer(),l={$animEnter:i.promise,$animLeave:s.promise,$$animLeave:s};e.data("$uiViewAnim",l),b.enter(e,a,function(){i.resolve(),h&&h.$emit("$viewContentAnimationEnded"),(t.isDefined(v)&&!v||n.$eval(v))&&r(e)}),c()});f=$,h=p,h.$emit("$viewContentLoaded",d),h.$eval(g)}}var d,f,h,m,g=u.onload||"",v=u.autoscroll,b=s(u,n);a.inheritedData("$uiView");n.$on("$stateChangeSuccess",function(){p(!1)}),p(!0)}}};return p}function k(e,n,r,i){return{restrict:"ECA",priority:-400,compile:function(o){var a=o.html();return o.empty?o.empty():o[0].innerHTML=null,function(o,s,l){var u=r.$current,c=M(o,l,s,i),p=u&&u.locals[c];if(!p)return s.html(a),void e(s.contents())(o);s.data("$uiView",{name:c,state:p.$$state}),s.html(p.$template?p.$template:a);var d=t.extend({},p);o[p.$$resolveAs]=d;var f=e(s.contents());if(p.$$controller){p.$scope=o,p.$element=s;var h=n(p.$$controller,p);p.$$controllerAs&&(o[p.$$controllerAs]=h,o[p.$$controllerAs][p.$$resolveAs]=d),U(h.$onInit)&&h.$onInit(),s.data("$ngControllerController",h),s.children().data("$ngControllerController",h)}f(o)}}}}function M(e,t,n,r){var i=r(t.uiView||t.name||"")(e),o=n.inheritedData("$uiView");return i.indexOf("@")>=0?i:i+"@"+(o?o.state.name:"")}function E(e,t){var n,r=e.match(/^\s*({[^}]*})\s*$/);if(r&&(e=t+"("+r[1]+")"),n=e.replace(/\n/g," ").match(/^([^(]+?)\s*(\((.*)\))?$/),!n||4!==n.length)throw new Error("Invalid state ref '"+e+"'");return{state:n[1],paramExpr:n[3]||null}}function N(e){var t=e.parent().inheritedData("$uiView");return t&&t.state&&t.state.name?t.state:void 0}function A(e){var t="[object SVGAnimatedString]"===Object.prototype.toString.call(e.prop("href")),n="FORM"===e[0].nodeName;return{attr:n?"action":t?"xlink:href":"href",isAnchor:"A"===e.prop("tagName").toUpperCase(),clickable:!n}}function P(e,t,n,r,i){return function(o){var a=o.which||o.button,s=i();if(!(a>1||o.ctrlKey||o.metaKey||o.shiftKey||e.attr("target"))){var l=n(function(){t.go(s.state,s.params,s.options)});o.preventDefault();var u=r.isAnchor&&!s.href?1:0;o.preventDefault=function(){u--<=0&&n.cancel(l)}}}}function L(e,t){return{relative:N(e)||t.$current,inherit:!0}}function I(e,n){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(r,i,o,a){var s,l=E(o.uiSref,e.current.name),u={state:l.state,href:null,params:null},c=A(i),p=a[1]||a[0],d=null;u.options=H(L(i,e),o.uiSrefOpts?r.$eval(o.uiSrefOpts):{});var f=function(n){n&&(u.params=t.copy(n)),u.href=e.href(l.state,u.params,u.options),d&&d(),p&&(d=p.$$addStateInfo(l.state,u.params)),null!==u.href&&o.$set(c.attr,u.href)};l.paramExpr&&(r.$watch(l.paramExpr,function(e){e!==u.params&&f(e)},!0),u.params=t.copy(r.$eval(l.paramExpr))),f(),c.clickable&&(s=P(i,e,n,c,function(){return u}),i[i.on?"on":"bind"]("click",s),r.$on("$destroy",function(){i[i.off?"off":"unbind"]("click",s)}))}}}function O(e,t){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(n,r,i,o){function a(t){d.state=t[0],d.params=t[1],d.options=t[2],d.href=e.href(d.state,d.params,d.options),f&&f(),u&&(f=u.$$addStateInfo(d.state,d.params)),d.href&&i.$set(l.attr,d.href)}var s,l=A(r),u=o[1]||o[0],c=[i.uiState,i.uiStateParams||null,i.uiStateOpts||null],p="["+c.map(function(e){return e||"null"}).join(", ")+"]",d={state:null,params:null,options:null,href:null},f=null;n.$watch(p,a,!0),a(n.$eval(p)),l.clickable&&(s=P(r,e,t,l,function(){return d}),r[r.on?"on":"bind"]("click",s),n.$on("$destroy",function(){r[r.off?"off":"unbind"]("click",s)}))}}}function F(e,t,n){return{restrict:"A",controller:["$scope","$element","$attrs","$timeout",function(t,r,i,o){function a(t,n,i){var o=e.get(t,N(r)),a=s(t,n),l={state:o||{name:t},params:n,hash:a};return m.push(l),g[a]=i,function(){var e=m.indexOf(l);-1!==e&&m.splice(e,1)}}function s(e,n){if(!V(e))throw new Error("state should be a string");return j(n)?e+W(n):(n=t.$eval(n),j(n)?e+W(n):e)}function l(){for(var e=0;e0)){var n=a(e,t,h);return l(),n}},t.$on("$stateChangeSuccess",l),l()}]}}function R(e){var t=function(t,n){return e.is(t,n)};return t.$stateful=!0,t}function B(e){var t=function(t,n,r){return e.includes(t,n,r)};return t.$stateful=!0,t}var _=t.isDefined,U=t.isFunction,V=t.isString,j=t.isObject,q=t.isArray,G=t.forEach,H=t.extend,z=t.copy,W=t.toJson;t.module("ui.router.util",["ng"]),t.module("ui.router.router",["ui.router.util"]),t.module("ui.router.state",["ui.router.router","ui.router.util"]),t.module("ui.router",["ui.router.state"]),t.module("ui.router.compat",["ui.router"]),g.$inject=["$q","$injector"],t.module("ui.router.util").service("$resolve",g),t.module("ui.router.util").provider("$templateFactory",v);var Q;y.prototype.concat=function(e,t){var n={caseInsensitive:Q.caseInsensitive(),strict:Q.strictMode(),squash:Q.defaultSquashPolicy()};return new y(this.sourcePath+e+this.sourceSearch,H(n,t),this)},y.prototype.toString=function(){return this.source},y.prototype.exec=function(e,t){function n(e){function t(e){return e.split("").reverse().join("")}function n(e){return e.replace(/\\-/g,"-")}var r=t(e).split(/-(?!\\)/),i=h(r,t);return h(i,n).reverse()}var r=this.regexp.exec(e);if(!r)return null;t=t||{};var i,o,a,s=this.parameters(),l=s.length,u=this.segments.length-1,c={};if(u!==r.length-1)throw new Error("Unbalanced capture group in route '"+this.source+"'");var p,d;for(i=0;u>i;i++){for(a=s[i],p=this.params[a],d=r[i+1],o=0;oi;i++){for(a=s[i],c[a]=this.params[a].value(t[a]),p=this.params[a],d=t[a],o=0;oo;o++){var c=s>o,p=r[o],d=i[p],f=d.value(e[p]),m=d.isOptional&&d.type.equals(d.value(),f),g=m?d.squash:!1,v=d.type.encode(f);if(c){var b=n[o+1],y=o+1===s;if(g===!1)null!=v&&(u+=q(v)?h(v,t).join("-"):encodeURIComponent(v)),u+=b;else if(g===!0){var $=u.match(/\/$/)?/\/?(.*)/:/(.*)/;u+=b.match($)[1]}else V(g)&&(u+=g+b);y&&d.squash===!0&&"/"===u.slice(-1)&&(u=u.slice(0,-1))}else{if(null==v||m&&g!==!1)continue;if(q(v)||(v=[v]),0===v.length)continue;v=h(v,encodeURIComponent).join("&"+p+"="),u+=(a?"&":"?")+(p+"="+v),a=!0}}return u},$.prototype.is=function(e,t){return!0},$.prototype.encode=function(e,t){return e},$.prototype.decode=function(e,t){return e},$.prototype.equals=function(e,t){return e==t},$.prototype.$subPattern=function(){var e=this.pattern.toString();return e.substr(1,e.length-2)},$.prototype.pattern=/.*/,$.prototype.toString=function(){return"{Type:"+this.name+"}"},$.prototype.$normalize=function(e){return this.is(e)?e:this.decode(e)},$.prototype.$asArray=function(e,t){function r(e,t){function r(e,t){return function(){return e[t].apply(e,arguments)}}function i(e){return q(e)?e:_(e)?[e]:[]}function o(e){switch(e.length){case 0:return n;case 1:return"auto"===t?e[0]:e;default:return e}}function a(e){return!e}function s(e,t){return function(n){if(q(n)&&0===n.length)return n;n=i(n);var r=h(n,e);return t===!0?0===f(r,a).length:o(r)}}function l(e){return function(t,n){var r=i(t),o=i(n); +if(r.length!==o.length)return!1;for(var a=0;a.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{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}}@font-face{font-family:Glyphicons Halflings;src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format("embedded-opentype"),url(../fonts/glyphicons-halflings-regular.woff2) format("woff2"),url(../fonts/glyphicons-halflings-regular.woff) format("woff"),url(../fonts/glyphicons-halflings-regular.ttf) format("truetype"),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:Glyphicons Halflings;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before{content:"\e227"}.glyphicon-jpy:before,.glyphicon-yen:before{content:"\00a5"}.glyphicon-rub:before,.glyphicon-ruble:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*,:after,:before{box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.initialism,.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline{margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.428571429}dt{font-weight:700}dd{margin-left:0}.dl-horizontal dd:after,.dl-horizontal dd:before{content:" ";display:table}.dl-horizontal dd:after{clear:both}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.428571429;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:"\2014 \00A0"}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:""}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:"\00A0 \2014"}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,Courier New,monospace}code{color:#c7254e;background-color:#f9f2f4;border-radius:4px}code,kbd{padding:2px 4px;font-size:90%}kbd{color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container:after,.container:before{content:" ";display:table}.container:after{clear:both}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container-fluid:after,.container-fluid:before{content:" ";display:table}.container-fluid:after{clear:both}.row{margin-left:-15px;margin-right:-15px}.row:after,.row:before{content:" ";display:table}.row:after{clear:both}.col-lg-1,.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-10,.col-lg-11,.col-lg-12,.col-md-1,.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-10,.col-md-11,.col-md-12,.col-sm-1,.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-10,.col-sm-11,.col-sm-12,.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-1{width:8.3333333333%}.col-xs-2{width:16.6666666667%}.col-xs-3{width:25%}.col-xs-4{width:33.3333333333%}.col-xs-5{width:41.6666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.3333333333%}.col-xs-8{width:66.6666666667%}.col-xs-9{width:75%}.col-xs-10{width:83.3333333333%}.col-xs-11{width:91.6666666667%}.col-xs-12{width:100%}.col-xs-pull-0{right:auto}.col-xs-pull-1{right:8.3333333333%}.col-xs-pull-2{right:16.6666666667%}.col-xs-pull-3{right:25%}.col-xs-pull-4{right:33.3333333333%}.col-xs-pull-5{right:41.6666666667%}.col-xs-pull-6{right:50%}.col-xs-pull-7{right:58.3333333333%}.col-xs-pull-8{right:66.6666666667%}.col-xs-pull-9{right:75%}.col-xs-pull-10{right:83.3333333333%}.col-xs-pull-11{right:91.6666666667%}.col-xs-pull-12{right:100%}.col-xs-push-0{left:auto}.col-xs-push-1{left:8.3333333333%}.col-xs-push-2{left:16.6666666667%}.col-xs-push-3{left:25%}.col-xs-push-4{left:33.3333333333%}.col-xs-push-5{left:41.6666666667%}.col-xs-push-6{left:50%}.col-xs-push-7{left:58.3333333333%}.col-xs-push-8{left:66.6666666667%}.col-xs-push-9{left:75%}.col-xs-push-10{left:83.3333333333%}.col-xs-push-11{left:91.6666666667%}.col-xs-push-12{left:100%}.col-xs-offset-0{margin-left:0}.col-xs-offset-1{margin-left:8.3333333333%}.col-xs-offset-2{margin-left:16.6666666667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.3333333333%}.col-xs-offset-5{margin-left:41.6666666667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.3333333333%}.col-xs-offset-8{margin-left:66.6666666667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.3333333333%}.col-xs-offset-11{margin-left:91.6666666667%}.col-xs-offset-12{margin-left:100%}@media (min-width:768px){.col-sm-1,.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-10,.col-sm-11,.col-sm-12{float:left}.col-sm-1{width:8.3333333333%}.col-sm-2{width:16.6666666667%}.col-sm-3{width:25%}.col-sm-4{width:33.3333333333%}.col-sm-5{width:41.6666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.3333333333%}.col-sm-8{width:66.6666666667%}.col-sm-9{width:75%}.col-sm-10{width:83.3333333333%}.col-sm-11{width:91.6666666667%}.col-sm-12{width:100%}.col-sm-pull-0{right:auto}.col-sm-pull-1{right:8.3333333333%}.col-sm-pull-2{right:16.6666666667%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.3333333333%}.col-sm-pull-5{right:41.6666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.3333333333%}.col-sm-pull-8{right:66.6666666667%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.3333333333%}.col-sm-pull-11{right:91.6666666667%}.col-sm-pull-12{right:100%}.col-sm-push-0{left:auto}.col-sm-push-1{left:8.3333333333%}.col-sm-push-2{left:16.6666666667%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.3333333333%}.col-sm-push-5{left:41.6666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.3333333333%}.col-sm-push-8{left:66.6666666667%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.3333333333%}.col-sm-push-11{left:91.6666666667%}.col-sm-push-12{left:100%}.col-sm-offset-0{margin-left:0}.col-sm-offset-1{margin-left:8.3333333333%}.col-sm-offset-2{margin-left:16.6666666667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.3333333333%}.col-sm-offset-5{margin-left:41.6666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.3333333333%}.col-sm-offset-8{margin-left:66.6666666667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.3333333333%}.col-sm-offset-11{margin-left:91.6666666667%}.col-sm-offset-12{margin-left:100%}}@media (min-width:992px){.col-md-1,.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-10,.col-md-11,.col-md-12{float:left}.col-md-1{width:8.3333333333%}.col-md-2{width:16.6666666667%}.col-md-3{width:25%}.col-md-4{width:33.3333333333%}.col-md-5{width:41.6666666667%}.col-md-6{width:50%}.col-md-7{width:58.3333333333%}.col-md-8{width:66.6666666667%}.col-md-9{width:75%}.col-md-10{width:83.3333333333%}.col-md-11{width:91.6666666667%}.col-md-12{width:100%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.3333333333%}.col-md-pull-2{right:16.6666666667%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.3333333333%}.col-md-pull-5{right:41.6666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.3333333333%}.col-md-pull-8{right:66.6666666667%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.3333333333%}.col-md-pull-11{right:91.6666666667%}.col-md-pull-12{right:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.3333333333%}.col-md-push-2{left:16.6666666667%}.col-md-push-3{left:25%}.col-md-push-4{left:33.3333333333%}.col-md-push-5{left:41.6666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.3333333333%}.col-md-push-8{left:66.6666666667%}.col-md-push-9{left:75%}.col-md-push-10{left:83.3333333333%}.col-md-push-11{left:91.6666666667%}.col-md-push-12{left:100%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.3333333333%}.col-md-offset-2{margin-left:16.6666666667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.3333333333%}.col-md-offset-5{margin-left:41.6666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.3333333333%}.col-md-offset-8{margin-left:66.6666666667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.3333333333%}.col-md-offset-11{margin-left:91.6666666667%}.col-md-offset-12{margin-left:100%}}@media (min-width:1200px){.col-lg-1,.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-10,.col-lg-11,.col-lg-12{float:left}.col-lg-1{width:8.3333333333%}.col-lg-2{width:16.6666666667%}.col-lg-3{width:25%}.col-lg-4{width:33.3333333333%}.col-lg-5{width:41.6666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.3333333333%}.col-lg-8{width:66.6666666667%}.col-lg-9{width:75%}.col-lg-10{width:83.3333333333%}.col-lg-11{width:91.6666666667%}.col-lg-12{width:100%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.3333333333%}.col-lg-pull-2{right:16.6666666667%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.3333333333%}.col-lg-pull-5{right:41.6666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.3333333333%}.col-lg-pull-8{right:66.6666666667%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.3333333333%}.col-lg-pull-11{right:91.6666666667%}.col-lg-pull-12{right:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.3333333333%}.col-lg-push-2{left:16.6666666667%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.3333333333%}.col-lg-push-5{left:41.6666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.3333333333%}.col-lg-push-8{left:66.6666666667%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.3333333333%}.col-lg-push-11{left:91.6666666667%}.col-lg-push-12{left:100%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.3333333333%}.col-lg-offset-2{margin-left:16.6666666667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.3333333333%}.col-lg-offset-5{margin-left:41.6666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.3333333333%}.col-lg-offset-8{margin-left:66.6666666667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.3333333333%}.col-lg-offset-11{margin-left:91.6666666667%}.col-lg-offset-12{margin-left:100%}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777}caption,th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{margin:0;min-width:0}fieldset,legend{padding:0;border:0}legend{display:block;width:100%;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{padding-top:7px}.form-control,output{display:block;font-size:14px;line-height:1.428571429;color:#555}.form-control{width:100%;height:34px;padding:6px 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{border:0;background-color:transparent}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{line-height:34px}.input-group-sm>.input-group-btn>input[type=date].btn,.input-group-sm>.input-group-btn>input[type=datetime-local].btn,.input-group-sm>.input-group-btn>input[type=month].btn,.input-group-sm>.input-group-btn>input[type=time].btn,.input-group-sm>input[type=date].form-control,.input-group-sm>input[type=date].input-group-addon,.input-group-sm>input[type=datetime-local].form-control,.input-group-sm>input[type=datetime-local].input-group-addon,.input-group-sm>input[type=month].form-control,.input-group-sm>input[type=month].input-group-addon,.input-group-sm>input[type=time].form-control,.input-group-sm>input[type=time].input-group-addon,.input-group-sm input[type=date],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],.input-group-sm input[type=time],input[type=date].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm,input[type=time].input-sm{line-height:30px}.input-group-lg>.input-group-btn>input[type=date].btn,.input-group-lg>.input-group-btn>input[type=datetime-local].btn,.input-group-lg>.input-group-btn>input[type=month].btn,.input-group-lg>.input-group-btn>input[type=time].btn,.input-group-lg>input[type=date].form-control,.input-group-lg>input[type=date].input-group-addon,.input-group-lg>input[type=datetime-local].form-control,.input-group-lg>input[type=datetime-local].input-group-addon,.input-group-lg>input[type=month].form-control,.input-group-lg>input[type=month].input-group-addon,.input-group-lg>input[type=time].form-control,.input-group-lg>input[type=time].input-group-addon,.input-group-lg input[type=date],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],.input-group-lg input[type=time],input[type=date].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg,input[type=time].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox-inline input[type=checkbox],.checkbox input[type=checkbox],.radio-inline input[type=radio],.radio input[type=radio]{position:absolute;margin-left:-20px;margin-top:4px\9}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.checkbox-inline.disabled,.checkbox.disabled label,.radio-inline.disabled,.radio.disabled label,fieldset[disabled] .checkbox-inline,fieldset[disabled] .checkbox label,fieldset[disabled] .radio-inline,fieldset[disabled] .radio label,fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:34px}.form-control-static.input-lg,.form-control-static.input-sm,.input-group-lg>.form-control-static.form-control,.input-group-lg>.form-control-static.input-group-addon,.input-group-lg>.input-group-btn>.form-control-static.btn,.input-group-sm>.form-control-static.form-control,.input-group-sm>.form-control-static.input-group-addon,.input-group-sm>.input-group-btn>.form-control-static.btn{padding-left:0;padding-right:0}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.input-group-sm>.input-group-btn>select.btn,.input-group-sm>select.form-control,.input-group-sm>select.input-group-addon,select.input-sm{height:30px;line-height:30px}.input-group-sm>.input-group-btn>select[multiple].btn,.input-group-sm>.input-group-btn>textarea.btn,.input-group-sm>select[multiple].form-control,.input-group-sm>select[multiple].input-group-addon,.input-group-sm>textarea.form-control,.input-group-sm>textarea.input-group-addon,select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.input-group-lg>.input-group-btn>select.btn,.input-group-lg>select.form-control,.input-group-lg>select.input-group-addon,select.input-lg{height:46px;line-height:46px}.input-group-lg>.input-group-btn>select[multiple].btn,.input-group-lg>.input-group-btn>textarea.btn,.input-group-lg>select[multiple].form-control,.input-group-lg>select[multiple].input-group-addon,.input-group-lg>textarea.form-control,.input-group-lg>textarea.input-group-addon,select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:1;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-group-lg>.form-control+.form-control-feedback,.input-group-lg>.input-group-addon+.form-control-feedback,.input-group-lg>.input-group-btn>.btn+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-group-sm>.form-control+.form-control-feedback,.input-group-sm>.input-group-addon+.form-control-feedback,.input-group-sm>.input-group-btn>.btn+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success.checkbox-inline label,.has-success.checkbox label,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.radio-inline label,.has-success.radio label{color:#3c763d}.has-success .form-control{border-color:#3c763d;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning.checkbox-inline label,.has-warning.checkbox label,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.radio-inline label,.has-warning.radio label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error.checkbox-inline label,.has-error.checkbox label,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.radio-inline label,.has-error.radio label{color:#a94442}.has-error .form-control{border-color:#a94442;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-group:after,.form-horizontal .form-group:before{content:" ";display:table}.form-horizontal .form-group:after{clear:both}@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.btn-default:hover,.open>.btn-default.dropdown-toggle{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.btn-default.dropdown-toggle.focus,.open>.btn-default.dropdown-toggle:focus,.open>.btn-default.dropdown-toggle:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.btn-default.dropdown-toggle{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary.active,.btn-primary:active,.btn-primary:hover,.open>.btn-primary.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.btn-primary.dropdown-toggle.focus,.open>.btn-primary.dropdown-toggle:focus,.open>.btn-primary.dropdown-toggle:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.btn-primary.dropdown-toggle{background-image:none}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success.active,.btn-success:active,.btn-success:hover,.open>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.btn-success.dropdown-toggle.focus,.open>.btn-success.dropdown-toggle:focus,.open>.btn-success.dropdown-toggle:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.btn-success.dropdown-toggle{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info.active,.btn-info:active,.btn-info:hover,.open>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.btn-info.dropdown-toggle.focus,.open>.btn-info.dropdown-toggle:focus,.open>.btn-info.dropdown-toggle:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.btn-info.dropdown-toggle{background-image:none}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.btn-warning:hover,.open>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.btn-warning.dropdown-toggle.focus,.open>.btn-warning.dropdown-toggle:focus,.open>.btn-warning.dropdown-toggle:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.btn-warning.dropdown-toggle{background-image:none}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger.active,.btn-danger:active,.btn-danger:hover,.open>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.btn-danger.dropdown-toggle.focus,.open>.btn-danger.dropdown-toggle:focus,.open>.btn-danger.dropdown-toggle:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.btn-danger.dropdown-toggle{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#337ab7;font-weight:400;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:7;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#337ab7}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:6}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.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{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar:after,.btn-toolbar:before{content:" ";display:table}.btn-toolbar:after{clear:both}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group-lg.btn-group>.btn+.dropdown-toggle,.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{box-shadow:none}.btn .caret{margin-left:0}.btn-group-lg>.btn .caret,.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-group-lg>.btn .caret,.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before{content:" ";display:table}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.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}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio],[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:1;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:2}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.input-group-addon.btn{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.input-group-addon.btn{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group .form-control:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group .form-control:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{font-size:0;white-space:nowrap}.input-group-btn,.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:1}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:1;margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav:after,.nav:before{content:" ";display:table}.nav:after{clear:both}.nav>li,.nav>li>a{position:relative;display:block}.nav>li>a{padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified,.nav-tabs.nav-justified{width:100%}.nav-justified>li,.nav-tabs.nav-justified>li{float:none}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li,.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified,.nav-tabs.nav-justified{border-bottom:0}.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:after,.navbar:before{content:" ";display:table}.navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.navbar-header:after,.navbar-header:before{content:" ";display:table}.navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);-webkit-overflow-scrolling:touch}.navbar-collapse:after,.navbar-collapse:before{content:" ";display:table}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:7;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:8}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container-fluid .navbar-brand,.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin:8px -15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.btn-group-sm>.navbar-btn.btn,.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.btn-group-xs>.navbar-btn.btn,.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-nav>li>a,.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#090909}.navbar-inverse .navbar-brand{color:#5aadbb}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#5aadbb}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:#090909;color:#fff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#5aadbb}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#5aadbb}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#5aadbb}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/ ";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;color:#337ab7;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:1;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7;cursor:default}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager:after,.pager:before{content:" ";display:table}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label:empty{display:none}.btn .label{position:relative;top:-1px}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:middle;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;background-color:#eee}.jumbotron,.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container-fluid .jumbotron,.container .jumbotron{border-radius:6px;padding-left:15px;padding-right:15px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container-fluid .jumbotron,.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#333}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes a{0%{background-position:40px 0}to{background-position:0 0}}@keyframes a{0%{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:a 2s linear infinite;animation:a 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{zoom:1;overflow:hidden}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{text-decoration:none;color:#555;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:1;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-body:after,.panel-body:before{content:" ";display:table}.panel-body:after{clear:both}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle,.panel-title{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.list-group+.panel-footer,.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table-responsive>.table caption,.panel>.table caption{padding-left:15px;padding-right:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal,.modal-open{overflow:hidden}.modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translateY(-25%);transform:translateY(-25%);-webkit-transition:-webkit-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0);transform:translate(0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header:after,.modal-header:before{content:" ";display:table}.modal-header:after{clear:both}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:after,.modal-footer:before{content:" ";display:table}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:12;display:block;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.428571429;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:12px;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px}.tooltip.top-left .tooltip-arrow,.tooltip.top-right .tooltip-arrow{bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{left:5px}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:11;display:none;max-width:276px;padding:1px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.428571429;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:14px;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;box-shadow:0 5px 10px rgba(0,0,0,.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel,.carousel-inner{position:relative}.carousel-inner{overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:left .6s ease-in-out;transition:left .6s ease-in-out}.carousel-inner>.item>a>img,.carousel-inner>.item>img{display:block;max-width:100%;height:auto;line-height:1}@media (-webkit-transform-3d),(transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{-webkit-transform:translateZ(0);transform:translateZ(0);left:0}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:transparent}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),rgba(0,0,0,.0001));background-image:linear-gradient(90deg,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001));background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#80000000",endColorstr="#00000000",GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001),rgba(0,0,0,.5));background-image:linear-gradient(90deg,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5));background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000",endColorstr="#80000000",GradientType=1)}.carousel-control:focus,.carousel-control:hover{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;margin-top:-10px;z-index:3;display:inline-block}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;line-height:1;font-family:serif}.carousel-control .icon-prev:before{content:"\2039"}.carousel-control .icon-next:before{content:"\203a"}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:5;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000\9;background-color:transparent}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:4;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:after,.clearfix:before{content:" ";display:table}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}}.browsehappy{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.thumbnail{height:200px}.thumbnail img.pull-right{width:50px}body{background-color:#efefef;height:100vh}main{height:100%}main>section{padding-top:1em;background-color:#fefefe;height:calc(100% - 135px);overflow:auto}main>section h2{font-size:1.5em;color:#2e7bcf}main>section h3{font-size:1.2em;color:#2e7bcf}header{padding:40px;background:#2e7bcf;height:135px}header h1{font-size:2em;margin-top:.2em}.highlight{background:#fff}.highlight .c{color:#998;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .k,.highlight .o{font-weight:700}.highlight .cm{color:#998;font-style:italic}.highlight .cp{color:#999;font-weight:700}.highlight .c1{color:#998;font-style:italic}.highlight .cs{color:#999;font-weight:700;font-style:italic}.highlight .gd{color:#000;background-color:#fdd}.highlight .gd .x{color:#000;background-color:#faa}.highlight .ge{font-style:italic}.highlight .gr{color:#a00}.highlight .gh{color:#999}.highlight .gi{color:#000;background-color:#dfd}.highlight .gi .x{color:#000;background-color:#afa}.highlight .go{color:#888}.highlight .gp{color:#555}.highlight .gs,.highlight .gu{font-weight:700}.highlight .gu{color:purple}.highlight .gt{color:#a00}.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{font-weight:700}.highlight .kt{color:#458}.highlight .m{color:#099}.highlight .s{color:#d14}.highlight .na{color:teal}.highlight .nb{color:#0086b3}.highlight .nc{color:#458;font-weight:700}.highlight .no{color:teal}.highlight .ni{color:purple}.highlight .ne,.highlight .nf{color:#900;font-weight:700}.highlight .nn{color:#555}.highlight .nt{color:navy}.highlight .nv{color:teal}.highlight .ow{font-weight:700}.highlight .w{color:#bbb}.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:#099}.highlight .s2,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .bp{color:#999}.highlight .vc,.highlight .vg,.highlight .vi{color:teal}.highlight .il{color:#099}.type-csharp .highlight .k,.type-csharp .highlight .kt{color:#00f}.type-csharp .highlight .nf{color:#000;font-weight:400}.type-csharp .highlight .nc{color:#2b91af}.type-csharp .highlight .nn{color:#000}.type-csharp .highlight .s,.type-csharp .highlight .sc{color:#a31515}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}body{font-size:15px;line-height:1.5;background:#fafafa url(../assets/body-bg.jpg) 0 0 repeat;font-family:Helvetica Neue,Helvetica,Arial,serif;font-weight:400;color:#666}a{color:#2879d0}a:hover{color:#2268b2}header{padding-top:40px;padding-bottom:40px;font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;background:#2e7bcf url(../assets/header-bg.jpg) 0 0 repeat-x;border-bottom:1px solid #275da1;height:auto;margin-bottom:10px}header h1{letter-spacing:-1px;font-size:72px;color:#fff;line-height:1;margin-bottom:.2em;width:auto}header h2{font-size:26px;color:#9ddcff;font-weight:400;line-height:1.3;width:540px;letter-spacing:0}.inner{position:relative;width:1170px;margin:0 auto;padding-left:30px;padding-right:30px}#content-wrapper{border-top:1px solid #fff;padding-top:30px}#main-content{width:690px;float:left}#main-content img{max-width:100%}aside#sidebar{width:200px;padding-left:20px;min-height:504px;float:right;background:transparent url(../assets/sidebar-bg.jpg) 0 0 no-repeat;font-size:12px;line-height:1.3}aside#sidebar p.repo-owner,aside#sidebar p.repo-owner a{font-weight:700}#downloads{margin-bottom:40px}a.gh-button{width:134px;height:58px;line-height:1.2;font-size:23px;color:#fff;padding-left:68px;padding-top:22px;font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif}a.gh-button small{display:block;font-size:11px}header a.gh-button{position:absolute;right:0;top:0;background:transparent url(../assets/github-button.png) 0 0 no-repeat}aside a.gh-button{width:138px;padding-left:64px;display:block;background:transparent url(../assets/download-button.png) 0 0 no-repeat;margin-bottom:20px;font-size:21px}code,pre{font-family:Monaco,Bitstream Vera Sans Mono,Lucida Console,Terminal,monospace;color:#222;margin-bottom:30px;font-size:13px}code{background-color:#f2f8fc;border:1px solid #dbe7f3;padding:0 3px}pre{padding:20px;background:#fff;text-shadow:none;overflow:auto;border:1px solid #f2f2f2}pre code{color:#2879d0;background-color:#fff;border:none;padding:0}dl,ol,ul{margin-bottom:20px}hr{height:1px;line-height:1px;margin-top:1em;padding-bottom:1em;border:none}table{width:100%;border:1px solid #ebebeb}th{font-weight:500}td{border:1px solid #ebebeb;text-align:center;font-weight:300}form{background:#f2f2f2;padding:20px}#main-content h1{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:2.8em;letter-spacing:-1px;color:#474747}#main-content h1:before{content:"/";color:#9ddcff;padding-right:.3em;margin-left:-.9em}#main-content h2{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:22px;font-weight:700;margin-bottom:8px;color:#474747}#main-content h2:before{content:"//";color:#9ddcff;padding-right:.3em;margin-left:-1.5em}#main-content h3{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:18px;font-weight:700;margin-top:24px;margin-bottom:8px;color:#474747}#main-content h3:before{content:"///";color:#9ddcff;padding-right:.3em;margin-left:-2em}#main-content h4{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:15px;font-weight:700;color:#474747}h4:before{content:"////";color:#9ddcff;padding-right:.3em}#main-content h5{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:14px;color:#474747}h5:before{content:"/////";color:#9ddcff;padding-right:.3em;margin-left:-3.2em}#main-content h6{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:.8em;color:#474747}h6:before{content:"//////";color:#9ddcff;padding-right:.3em;margin-left:-3.7em}p{margin-bottom:20px}a{text-decoration:none}p a{font-weight:400}blockquote{font-size:1.6em;border-left:10px solid #e9e9e9;margin-bottom:20px;padding:0 0 0 30px}ul{list-style:disc inside;padding-left:20px}ol{list-style:decimal inside;padding-left:3px}dl dd{font-style:italic;font-weight:100}footer{margin-top:40px;padding-top:20px;padding-bottom:10px;font-size:13px;color:#aaa}footer a{color:#666}footer a:hover{color:#444}.clearfix:after{clear:both;content:".";display:block;visibility:hidden;height:0}.clearfix{display:inline-block}* html .clearfix{height:1%}.clearfix{display:block}@media only screen and (min-width:768px) and (max-width:959px){.inner,header h1,header h2{width:740px}header h1{font-size:60px}header h2{font-size:30px}#main-content{width:490px}#main-content h1:before,#main-content h2:before,#main-content h3:before,#main-content h4:before,#main-content h5:before,#main-content h6:before{content:none;padding-right:0;margin-left:0}}@media only screen and (max-width:767px){.inner{width:93%}header{padding:20px 0}header .inner{position:relative}header h1,header h2{width:100%}header h1{font-size:48px}header h2{font-size:24px}header a.gh-button{background-image:none;width:auto;height:auto;display:inline-block;margin-top:15px;padding:5px 10px;position:relative;text-align:center;font-size:13px;line-height:1;background-color:#9ddcff;color:#2879d0;border-radius:5px}header a.gh-button small{font-size:13px;display:inline}#main-content,aside#sidebar{float:none;width:100%!important}aside#sidebar{background-image:none;margin-top:20px;border-top:1px solid #ddd;padding:20px 0;min-height:0}aside#sidebar a.gh-button{display:none}#main-content h1:before,#main-content h2:before,#main-content h3:before,#main-content h4:before,#main-content h5:before,#main-content h6:before{content:none;padding-right:0;margin-left:0}a.option[disabled]{opacity:.5}} \ No newline at end of file +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{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}}@font-face{font-family:Glyphicons Halflings;src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format("embedded-opentype"),url(../fonts/glyphicons-halflings-regular.woff2) format("woff2"),url(../fonts/glyphicons-halflings-regular.woff) format("woff"),url(../fonts/glyphicons-halflings-regular.ttf) format("truetype"),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:Glyphicons Halflings;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before{content:"\e227"}.glyphicon-jpy:before,.glyphicon-yen:before{content:"\00a5"}.glyphicon-rub:before,.glyphicon-ruble:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*,:after,:before{box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.initialism,.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline{margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.428571429}dt{font-weight:700}dd{margin-left:0}.dl-horizontal dd:after,.dl-horizontal dd:before{content:" ";display:table}.dl-horizontal dd:after{clear:both}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.428571429;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:"\2014 \00A0"}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:""}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:"\00A0 \2014"}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,Courier New,monospace}code{color:#c7254e;background-color:#f9f2f4;border-radius:4px}code,kbd{padding:2px 4px;font-size:90%}kbd{color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container:after,.container:before{content:" ";display:table}.container:after{clear:both}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container-fluid:after,.container-fluid:before{content:" ";display:table}.container-fluid:after{clear:both}.row{margin-left:-15px;margin-right:-15px}.row:after,.row:before{content:" ";display:table}.row:after{clear:both}.col-lg-1,.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-10,.col-lg-11,.col-lg-12,.col-md-1,.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-10,.col-md-11,.col-md-12,.col-sm-1,.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-10,.col-sm-11,.col-sm-12,.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-1{width:8.3333333333%}.col-xs-2{width:16.6666666667%}.col-xs-3{width:25%}.col-xs-4{width:33.3333333333%}.col-xs-5{width:41.6666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.3333333333%}.col-xs-8{width:66.6666666667%}.col-xs-9{width:75%}.col-xs-10{width:83.3333333333%}.col-xs-11{width:91.6666666667%}.col-xs-12{width:100%}.col-xs-pull-0{right:auto}.col-xs-pull-1{right:8.3333333333%}.col-xs-pull-2{right:16.6666666667%}.col-xs-pull-3{right:25%}.col-xs-pull-4{right:33.3333333333%}.col-xs-pull-5{right:41.6666666667%}.col-xs-pull-6{right:50%}.col-xs-pull-7{right:58.3333333333%}.col-xs-pull-8{right:66.6666666667%}.col-xs-pull-9{right:75%}.col-xs-pull-10{right:83.3333333333%}.col-xs-pull-11{right:91.6666666667%}.col-xs-pull-12{right:100%}.col-xs-push-0{left:auto}.col-xs-push-1{left:8.3333333333%}.col-xs-push-2{left:16.6666666667%}.col-xs-push-3{left:25%}.col-xs-push-4{left:33.3333333333%}.col-xs-push-5{left:41.6666666667%}.col-xs-push-6{left:50%}.col-xs-push-7{left:58.3333333333%}.col-xs-push-8{left:66.6666666667%}.col-xs-push-9{left:75%}.col-xs-push-10{left:83.3333333333%}.col-xs-push-11{left:91.6666666667%}.col-xs-push-12{left:100%}.col-xs-offset-0{margin-left:0}.col-xs-offset-1{margin-left:8.3333333333%}.col-xs-offset-2{margin-left:16.6666666667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.3333333333%}.col-xs-offset-5{margin-left:41.6666666667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.3333333333%}.col-xs-offset-8{margin-left:66.6666666667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.3333333333%}.col-xs-offset-11{margin-left:91.6666666667%}.col-xs-offset-12{margin-left:100%}@media (min-width:768px){.col-sm-1,.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-10,.col-sm-11,.col-sm-12{float:left}.col-sm-1{width:8.3333333333%}.col-sm-2{width:16.6666666667%}.col-sm-3{width:25%}.col-sm-4{width:33.3333333333%}.col-sm-5{width:41.6666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.3333333333%}.col-sm-8{width:66.6666666667%}.col-sm-9{width:75%}.col-sm-10{width:83.3333333333%}.col-sm-11{width:91.6666666667%}.col-sm-12{width:100%}.col-sm-pull-0{right:auto}.col-sm-pull-1{right:8.3333333333%}.col-sm-pull-2{right:16.6666666667%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.3333333333%}.col-sm-pull-5{right:41.6666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.3333333333%}.col-sm-pull-8{right:66.6666666667%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.3333333333%}.col-sm-pull-11{right:91.6666666667%}.col-sm-pull-12{right:100%}.col-sm-push-0{left:auto}.col-sm-push-1{left:8.3333333333%}.col-sm-push-2{left:16.6666666667%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.3333333333%}.col-sm-push-5{left:41.6666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.3333333333%}.col-sm-push-8{left:66.6666666667%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.3333333333%}.col-sm-push-11{left:91.6666666667%}.col-sm-push-12{left:100%}.col-sm-offset-0{margin-left:0}.col-sm-offset-1{margin-left:8.3333333333%}.col-sm-offset-2{margin-left:16.6666666667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.3333333333%}.col-sm-offset-5{margin-left:41.6666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.3333333333%}.col-sm-offset-8{margin-left:66.6666666667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.3333333333%}.col-sm-offset-11{margin-left:91.6666666667%}.col-sm-offset-12{margin-left:100%}}@media (min-width:992px){.col-md-1,.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-10,.col-md-11,.col-md-12{float:left}.col-md-1{width:8.3333333333%}.col-md-2{width:16.6666666667%}.col-md-3{width:25%}.col-md-4{width:33.3333333333%}.col-md-5{width:41.6666666667%}.col-md-6{width:50%}.col-md-7{width:58.3333333333%}.col-md-8{width:66.6666666667%}.col-md-9{width:75%}.col-md-10{width:83.3333333333%}.col-md-11{width:91.6666666667%}.col-md-12{width:100%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.3333333333%}.col-md-pull-2{right:16.6666666667%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.3333333333%}.col-md-pull-5{right:41.6666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.3333333333%}.col-md-pull-8{right:66.6666666667%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.3333333333%}.col-md-pull-11{right:91.6666666667%}.col-md-pull-12{right:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.3333333333%}.col-md-push-2{left:16.6666666667%}.col-md-push-3{left:25%}.col-md-push-4{left:33.3333333333%}.col-md-push-5{left:41.6666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.3333333333%}.col-md-push-8{left:66.6666666667%}.col-md-push-9{left:75%}.col-md-push-10{left:83.3333333333%}.col-md-push-11{left:91.6666666667%}.col-md-push-12{left:100%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.3333333333%}.col-md-offset-2{margin-left:16.6666666667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.3333333333%}.col-md-offset-5{margin-left:41.6666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.3333333333%}.col-md-offset-8{margin-left:66.6666666667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.3333333333%}.col-md-offset-11{margin-left:91.6666666667%}.col-md-offset-12{margin-left:100%}}@media (min-width:1200px){.col-lg-1,.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-10,.col-lg-11,.col-lg-12{float:left}.col-lg-1{width:8.3333333333%}.col-lg-2{width:16.6666666667%}.col-lg-3{width:25%}.col-lg-4{width:33.3333333333%}.col-lg-5{width:41.6666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.3333333333%}.col-lg-8{width:66.6666666667%}.col-lg-9{width:75%}.col-lg-10{width:83.3333333333%}.col-lg-11{width:91.6666666667%}.col-lg-12{width:100%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.3333333333%}.col-lg-pull-2{right:16.6666666667%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.3333333333%}.col-lg-pull-5{right:41.6666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.3333333333%}.col-lg-pull-8{right:66.6666666667%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.3333333333%}.col-lg-pull-11{right:91.6666666667%}.col-lg-pull-12{right:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.3333333333%}.col-lg-push-2{left:16.6666666667%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.3333333333%}.col-lg-push-5{left:41.6666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.3333333333%}.col-lg-push-8{left:66.6666666667%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.3333333333%}.col-lg-push-11{left:91.6666666667%}.col-lg-push-12{left:100%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.3333333333%}.col-lg-offset-2{margin-left:16.6666666667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.3333333333%}.col-lg-offset-5{margin-left:41.6666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.3333333333%}.col-lg-offset-8{margin-left:66.6666666667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.3333333333%}.col-lg-offset-11{margin-left:91.6666666667%}.col-lg-offset-12{margin-left:100%}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777}caption,th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{margin:0;min-width:0}fieldset,legend{padding:0;border:0}legend{display:block;width:100%;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{padding-top:7px}.form-control,output{display:block;font-size:14px;line-height:1.428571429;color:#555}.form-control{width:100%;height:34px;padding:6px 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{border:0;background-color:transparent}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{line-height:34px}.input-group-sm>.input-group-btn>input[type=date].btn,.input-group-sm>.input-group-btn>input[type=datetime-local].btn,.input-group-sm>.input-group-btn>input[type=month].btn,.input-group-sm>.input-group-btn>input[type=time].btn,.input-group-sm>input[type=date].form-control,.input-group-sm>input[type=date].input-group-addon,.input-group-sm>input[type=datetime-local].form-control,.input-group-sm>input[type=datetime-local].input-group-addon,.input-group-sm>input[type=month].form-control,.input-group-sm>input[type=month].input-group-addon,.input-group-sm>input[type=time].form-control,.input-group-sm>input[type=time].input-group-addon,.input-group-sm input[type=date],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],.input-group-sm input[type=time],input[type=date].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm,input[type=time].input-sm{line-height:30px}.input-group-lg>.input-group-btn>input[type=date].btn,.input-group-lg>.input-group-btn>input[type=datetime-local].btn,.input-group-lg>.input-group-btn>input[type=month].btn,.input-group-lg>.input-group-btn>input[type=time].btn,.input-group-lg>input[type=date].form-control,.input-group-lg>input[type=date].input-group-addon,.input-group-lg>input[type=datetime-local].form-control,.input-group-lg>input[type=datetime-local].input-group-addon,.input-group-lg>input[type=month].form-control,.input-group-lg>input[type=month].input-group-addon,.input-group-lg>input[type=time].form-control,.input-group-lg>input[type=time].input-group-addon,.input-group-lg input[type=date],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],.input-group-lg input[type=time],input[type=date].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg,input[type=time].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox-inline input[type=checkbox],.checkbox input[type=checkbox],.radio-inline input[type=radio],.radio input[type=radio]{position:absolute;margin-left:-20px;margin-top:4px\9}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.checkbox-inline.disabled,.checkbox.disabled label,.radio-inline.disabled,.radio.disabled label,fieldset[disabled] .checkbox-inline,fieldset[disabled] .checkbox label,fieldset[disabled] .radio-inline,fieldset[disabled] .radio label,fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:34px}.form-control-static.input-lg,.form-control-static.input-sm,.input-group-lg>.form-control-static.form-control,.input-group-lg>.form-control-static.input-group-addon,.input-group-lg>.input-group-btn>.form-control-static.btn,.input-group-sm>.form-control-static.form-control,.input-group-sm>.form-control-static.input-group-addon,.input-group-sm>.input-group-btn>.form-control-static.btn{padding-left:0;padding-right:0}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.input-group-sm>.input-group-btn>select.btn,.input-group-sm>select.form-control,.input-group-sm>select.input-group-addon,select.input-sm{height:30px;line-height:30px}.input-group-sm>.input-group-btn>select[multiple].btn,.input-group-sm>.input-group-btn>textarea.btn,.input-group-sm>select[multiple].form-control,.input-group-sm>select[multiple].input-group-addon,.input-group-sm>textarea.form-control,.input-group-sm>textarea.input-group-addon,select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.input-group-lg>.input-group-btn>select.btn,.input-group-lg>select.form-control,.input-group-lg>select.input-group-addon,select.input-lg{height:46px;line-height:46px}.input-group-lg>.input-group-btn>select[multiple].btn,.input-group-lg>.input-group-btn>textarea.btn,.input-group-lg>select[multiple].form-control,.input-group-lg>select[multiple].input-group-addon,.input-group-lg>textarea.form-control,.input-group-lg>textarea.input-group-addon,select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:1;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-group-lg>.form-control+.form-control-feedback,.input-group-lg>.input-group-addon+.form-control-feedback,.input-group-lg>.input-group-btn>.btn+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-group-sm>.form-control+.form-control-feedback,.input-group-sm>.input-group-addon+.form-control-feedback,.input-group-sm>.input-group-btn>.btn+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success.checkbox-inline label,.has-success.checkbox label,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.radio-inline label,.has-success.radio label{color:#3c763d}.has-success .form-control{border-color:#3c763d;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning.checkbox-inline label,.has-warning.checkbox label,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.radio-inline label,.has-warning.radio label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error.checkbox-inline label,.has-error.checkbox label,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.radio-inline label,.has-error.radio label{color:#a94442}.has-error .form-control{border-color:#a94442;box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-group:after,.form-horizontal .form-group:before{content:" ";display:table}.form-horizontal .form-group:after{clear:both}@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.btn-default:hover,.open>.btn-default.dropdown-toggle{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.btn-default.dropdown-toggle.focus,.open>.btn-default.dropdown-toggle:focus,.open>.btn-default.dropdown-toggle:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.btn-default.dropdown-toggle{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary.active,.btn-primary:active,.btn-primary:hover,.open>.btn-primary.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.btn-primary.dropdown-toggle.focus,.open>.btn-primary.dropdown-toggle:focus,.open>.btn-primary.dropdown-toggle:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.btn-primary.dropdown-toggle{background-image:none}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success.active,.btn-success:active,.btn-success:hover,.open>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.btn-success.dropdown-toggle.focus,.open>.btn-success.dropdown-toggle:focus,.open>.btn-success.dropdown-toggle:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.btn-success.dropdown-toggle{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info.active,.btn-info:active,.btn-info:hover,.open>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.btn-info.dropdown-toggle.focus,.open>.btn-info.dropdown-toggle:focus,.open>.btn-info.dropdown-toggle:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.btn-info.dropdown-toggle{background-image:none}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.btn-warning:hover,.open>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.btn-warning.dropdown-toggle.focus,.open>.btn-warning.dropdown-toggle:focus,.open>.btn-warning.dropdown-toggle:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.btn-warning.dropdown-toggle{background-image:none}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger.active,.btn-danger:active,.btn-danger:hover,.open>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.btn-danger.dropdown-toggle.focus,.open>.btn-danger.dropdown-toggle:focus,.open>.btn-danger.dropdown-toggle:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.btn-danger.dropdown-toggle{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#337ab7;font-weight:400;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:7;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#337ab7}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:6}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.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{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar:after,.btn-toolbar:before{content:" ";display:table}.btn-toolbar:after{clear:both}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group-lg.btn-group>.btn+.dropdown-toggle,.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{box-shadow:none}.btn .caret{margin-left:0}.btn-group-lg>.btn .caret,.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-group-lg>.btn .caret,.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before{content:" ";display:table}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.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}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio],[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:1;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:2}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.input-group-addon.btn{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.input-group-addon.btn{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group .form-control:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group .form-control:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{font-size:0;white-space:nowrap}.input-group-btn,.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:1}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:1;margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav:after,.nav:before{content:" ";display:table}.nav:after{clear:both}.nav>li,.nav>li>a{position:relative;display:block}.nav>li>a{padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified,.nav-tabs.nav-justified{width:100%}.nav-justified>li,.nav-tabs.nav-justified>li{float:none}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li,.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified,.nav-tabs.nav-justified{border-bottom:0}.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:after,.navbar:before{content:" ";display:table}.navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.navbar-header:after,.navbar-header:before{content:" ";display:table}.navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);-webkit-overflow-scrolling:touch}.navbar-collapse:after,.navbar-collapse:before{content:" ";display:table}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:7;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:8}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container-fluid .navbar-brand,.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin:8px -15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.btn-group-sm>.navbar-btn.btn,.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.btn-group-xs>.navbar-btn.btn,.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-nav>li>a,.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#090909}.navbar-inverse .navbar-brand{color:#5aadbb}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#5aadbb}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:#090909;color:#fff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#5aadbb}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#5aadbb}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#5aadbb}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/ ";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;color:#337ab7;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:1;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7;cursor:default}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager:after,.pager:before{content:" ";display:table}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label:empty{display:none}.btn .label{position:relative;top:-1px}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:middle;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;background-color:#eee}.jumbotron,.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container-fluid .jumbotron,.container .jumbotron{border-radius:6px;padding-left:15px;padding-right:15px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container-fluid .jumbotron,.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#333}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes a{0%{background-position:40px 0}to{background-position:0 0}}@keyframes a{0%{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:a 2s linear infinite;animation:a 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{zoom:1;overflow:hidden}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{text-decoration:none;color:#555;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:1;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-body:after,.panel-body:before{content:" ";display:table}.panel-body:after{clear:both}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle,.panel-title{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.list-group+.panel-footer,.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table-responsive>.table caption,.panel>.table caption{padding-left:15px;padding-right:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal,.modal-open{overflow:hidden}.modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translateY(-25%);transform:translateY(-25%);-webkit-transition:-webkit-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0);transform:translate(0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header:after,.modal-header:before{content:" ";display:table}.modal-header:after{clear:both}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:after,.modal-footer:before{content:" ";display:table}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:12;display:block;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.428571429;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:12px;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px}.tooltip.top-left .tooltip-arrow,.tooltip.top-right .tooltip-arrow{bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{left:5px}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:11;display:none;max-width:276px;padding:1px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.428571429;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:14px;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;box-shadow:0 5px 10px rgba(0,0,0,.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel,.carousel-inner{position:relative}.carousel-inner{overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:left .6s ease-in-out;transition:left .6s ease-in-out}.carousel-inner>.item>a>img,.carousel-inner>.item>img{display:block;max-width:100%;height:auto;line-height:1}@media (-webkit-transform-3d),(transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{-webkit-transform:translateZ(0);transform:translateZ(0);left:0}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:transparent}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),rgba(0,0,0,.0001));background-image:linear-gradient(90deg,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001));background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#80000000",endColorstr="#00000000",GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001),rgba(0,0,0,.5));background-image:linear-gradient(90deg,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5));background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000",endColorstr="#80000000",GradientType=1)}.carousel-control:focus,.carousel-control:hover{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;margin-top:-10px;z-index:3;display:inline-block}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;line-height:1;font-family:serif}.carousel-control .icon-prev:before{content:"\2039"}.carousel-control .icon-next:before{content:"\203a"}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:5;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000\9;background-color:transparent}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:4;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:after,.clearfix:before{content:" ";display:table}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}}.browsehappy{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.thumbnail{height:200px}.thumbnail img.pull-right{width:50px}body{background-color:#efefef;height:100vh}main{height:100%}main>section{padding-top:1em;background-color:#fefefe;height:calc(100% - 135px);overflow:auto}main>section h2{font-size:1.5em;color:#2e7bcf}main>section h3{font-size:1.2em;color:#2e7bcf}header{padding:40px;background:#2e7bcf;height:135px}header h1{font-size:2em;margin-top:.2em}.highlight{background:#fff}.highlight .c{color:#998;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .k,.highlight .o{font-weight:700}.highlight .cm{color:#998;font-style:italic}.highlight .cp{color:#999;font-weight:700}.highlight .c1{color:#998;font-style:italic}.highlight .cs{color:#999;font-weight:700;font-style:italic}.highlight .gd{color:#000;background-color:#fdd}.highlight .gd .x{color:#000;background-color:#faa}.highlight .ge{font-style:italic}.highlight .gr{color:#a00}.highlight .gh{color:#999}.highlight .gi{color:#000;background-color:#dfd}.highlight .gi .x{color:#000;background-color:#afa}.highlight .go{color:#888}.highlight .gp{color:#555}.highlight .gs,.highlight .gu{font-weight:700}.highlight .gu{color:purple}.highlight .gt{color:#a00}.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{font-weight:700}.highlight .kt{color:#458}.highlight .m{color:#099}.highlight .s{color:#d14}.highlight .na{color:teal}.highlight .nb{color:#0086b3}.highlight .nc{color:#458;font-weight:700}.highlight .no{color:teal}.highlight .ni{color:purple}.highlight .ne,.highlight .nf{color:#900;font-weight:700}.highlight .nn{color:#555}.highlight .nt{color:navy}.highlight .nv{color:teal}.highlight .ow{font-weight:700}.highlight .w{color:#bbb}.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:#099}.highlight .s2,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .bp{color:#999}.highlight .vc,.highlight .vg,.highlight .vi{color:teal}.highlight .il{color:#099}.type-csharp .highlight .k,.type-csharp .highlight .kt{color:#00f}.type-csharp .highlight .nf{color:#000;font-weight:400}.type-csharp .highlight .nc{color:#2b91af}.type-csharp .highlight .nn{color:#000}.type-csharp .highlight .s,.type-csharp .highlight .sc{color:#a31515}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}body{font-size:15px;line-height:1.5;background:#fafafa url(../assets/body-bg.jpg) 0 0 repeat;font-family:Helvetica Neue,Helvetica,Arial,serif;font-weight:400;color:#666}a{color:#2879d0}a:hover{color:#2268b2}header{padding-top:40px;padding-bottom:40px;font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;background:#2e7bcf url(../assets/header-bg.jpg) 0 0 repeat-x;border-bottom:1px solid #275da1;height:auto;margin-bottom:10px}header h1{letter-spacing:-1px;font-size:72px;color:#fff;line-height:1;margin-bottom:.2em;width:auto}header h2{font-size:26px;color:#9ddcff;font-weight:400;line-height:1.3;width:540px;letter-spacing:0}.inner{position:relative;width:1170px;margin:0 auto;padding-left:30px;padding-right:30px}#content-wrapper{border-top:1px solid #fff;padding-top:30px}#main-content{width:690px;float:left}#main-content img{max-width:100%}aside#sidebar{width:200px;padding-left:20px;min-height:504px;float:right;background:transparent url(../assets/sidebar-bg.jpg) 0 0 no-repeat;font-size:12px;line-height:1.3}aside#sidebar p.repo-owner,aside#sidebar p.repo-owner a{font-weight:700}#downloads{margin-bottom:40px}a.gh-button{width:134px;height:58px;line-height:1.2;font-size:23px;color:#fff;padding-left:68px;padding-top:22px;font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif}a.gh-button small{display:block;font-size:11px}header a.gh-button{position:absolute;right:0;top:0;background:transparent url(../assets/github-button.png) 0 0 no-repeat}aside a.gh-button{width:138px;padding-left:64px;display:block;background:transparent url(../assets/download-button.png) 0 0 no-repeat;margin-bottom:20px;font-size:21px}code,pre{font-family:Monaco,Bitstream Vera Sans Mono,Lucida Console,Terminal,monospace;color:#222;margin-bottom:30px;font-size:13px}code{background-color:#f2f8fc;border:1px solid #dbe7f3;padding:0 3px}pre{padding:20px;background:#fff;text-shadow:none;overflow:auto;border:1px solid #f2f2f2}pre code{color:#2879d0;background-color:#fff;border:none;padding:0}dl,ol,ul{margin-bottom:20px}hr{height:1px;line-height:1px;margin-top:1em;padding-bottom:1em;border:none}table{width:100%;border:1px solid #ebebeb}th{font-weight:500}td{border:1px solid #ebebeb;text-align:center;font-weight:300}form{background:#f2f2f2;padding:20px}#main-content h1{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:2.8em;letter-spacing:-1px;color:#474747}#main-content h1:before{content:"/";color:#9ddcff;padding-right:.3em;margin-left:-.9em}#main-content h2{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:22px;font-weight:700;margin-bottom:8px;color:#474747}#main-content h2:before{content:"//";color:#9ddcff;padding-right:.3em;margin-left:-1.5em}#main-content h3{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:18px;font-weight:700;margin-top:24px;margin-bottom:8px;color:#474747}#main-content h3:before{content:"///";color:#9ddcff;padding-right:.3em;margin-left:-2em}#main-content h4{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:15px;font-weight:700;color:#474747}h4:before{content:"////";color:#9ddcff;padding-right:.3em}#main-content h5{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:14px;color:#474747}h5:before{content:"/////";color:#9ddcff;padding-right:.3em;margin-left:-3.2em}#main-content h6{font-family:Architects Daughter,Helvetica Neue,Helvetica,Arial,serif;font-size:.8em;color:#474747}h6:before{content:"//////";color:#9ddcff;padding-right:.3em;margin-left:-3.7em}p{margin-bottom:20px}a{text-decoration:none}p a{font-weight:400}blockquote{font-size:1.6em;border-left:10px solid #e9e9e9;margin-bottom:20px;padding:0 0 0 30px}ul{list-style:disc inside;padding-left:20px}ol{list-style:decimal inside;padding-left:3px}dl dd{font-style:italic;font-weight:100}footer{margin-top:40px;padding-top:20px;padding-bottom:10px;font-size:13px;color:#aaa}footer a{color:#666}footer a:hover{color:#444}.clearfix:after{clear:both;content:".";display:block;visibility:hidden;height:0}.clearfix{display:inline-block}* html .clearfix{height:1%}.clearfix{display:block}@media only screen and (min-width:768px) and (max-width:959px){.inner,header h1,header h2{width:740px}header h1{font-size:60px}header h2{font-size:30px}#main-content{width:490px}#main-content h1:before,#main-content h2:before,#main-content h3:before,#main-content h4:before,#main-content h5:before,#main-content h6:before{content:none;padding-right:0;margin-left:0}}@media only screen and (max-width:767px){.inner{width:93%}header{padding:20px 0}header .inner{position:relative}header h1,header h2{width:100%}header h1{font-size:48px}header h2{font-size:24px}header a.gh-button{background-image:none;width:auto;height:auto;display:inline-block;margin-top:15px;padding:5px 10px;position:relative;text-align:center;font-size:13px;line-height:1;background-color:#9ddcff;color:#2879d0;border-radius:5px}header a.gh-button small{font-size:13px;display:inline}#main-content,aside#sidebar{float:none;width:100%!important}aside#sidebar{background-image:none;margin-top:20px;border-top:1px solid #ddd;padding:20px 0;min-height:0}aside#sidebar a.gh-button{display:none}#main-content h1:before,#main-content h2:before,#main-content h3:before,#main-content h4:before,#main-content h5:before,#main-content h6:before{content:none;padding-right:0;margin-left:0}a.option[disabled]{opacity:.5}}.custom-trigger{padding:.75em;margin-top:1.5em;border:1px solid #ccc;cursor:pointer} \ No newline at end of file diff --git a/docs/styles/vendor.css b/docs/styles/vendor.css new file mode 100644 index 00000000..4f3f7710 --- /dev/null +++ b/docs/styles/vendor.css @@ -0,0 +1 @@ +.hljs{display:block;padding:.5em;background:#f0f0f0}.clojure .hljs-built_in,.hljs,.hljs-subst,.hljs-tag .hljs-title,.lisp .hljs-title,.nginx .hljs-title{color:#000}.apache .hljs-cbracket,.apache .hljs-tag,.asciidoc .hljs-header,.bash .hljs-variable,.coffeescript .hljs-attribute,.django .hljs-variable,.erlang_repl .hljs-function_or_atom,.haml .hljs-symbol,.hljs-addition,.hljs-aggregate,.hljs-constant,.hljs-flow,.hljs-parent,.hljs-pragma,.hljs-preprocessor,.hljs-rules .hljs-value,.hljs-rules .hljs-value .hljs-number,.hljs-stream,.hljs-string,.hljs-tag .hljs-value,.hljs-template_tag,.hljs-title,.markdown .hljs-header,.ruby .hljs-symbol,.ruby .hljs-symbol .hljs-string,.smalltalk .hljs-class,.tex .hljs-command,.tex .hljs-special{color:#800}.asciidoc .hljs-blockquote,.diff .hljs-header,.hljs-annotation,.hljs-chunk,.hljs-comment,.hljs-template_comment,.markdown .hljs-blockquote,.smartquote{color:#888}.asciidoc .hljs-bullet,.asciidoc .hljs-link_url,.go .hljs-constant,.hljs-change,.hljs-date,.hljs-hexcolor,.hljs-literal,.hljs-number,.hljs-regexp,.lasso .hljs-variable,.makefile .hljs-variable,.markdown .hljs-bullet,.markdown .hljs-link_url,.smalltalk .hljs-char,.smalltalk .hljs-symbol{color:#080}.apache .hljs-sqbracket,.asciidoc .hljs-attribute,.asciidoc .hljs-link_label,.clojure .hljs-attribute,.coffeescript .hljs-property,.erlang_repl .hljs-reserved,.haml .hljs-bullet,.hljs-array,.hljs-attr_selector,.hljs-decorator,.hljs-deletion,.hljs-doctype,.hljs-envvar,.hljs-filter .hljs-argument,.hljs-important,.hljs-javadoc,.hljs-label,.hljs-localvars,.hljs-phony,.hljs-pi,.hljs-prompt,.hljs-pseudo,.hljs-shebang,.lasso .hljs-attribute,.markdown .hljs-link_label,.nginx .hljs-built_in,.ruby .hljs-string,.tex .hljs-formula,.vhdl .hljs-attribute{color:#88f}.apache .hljs-tag,.asciidoc .hljs-strong,.bash .hljs-variable,.css .hljs-tag,.go .hljs-typename,.hljs-aggregate,.hljs-built_in,.hljs-id,.hljs-javadoctag,.hljs-keyword,.hljs-phpdoc,.hljs-request,.hljs-status,.hljs-title,.hljs-winutils,.hljs-yardoctag,.markdown .hljs-strong,.smalltalk .hljs-class,.tex .hljs-command{font-weight:700}.asciidoc .hljs-emphasis,.markdown .hljs-emphasis{font-style:italic}.nginx .hljs-built_in{font-weight:400}.coffeescript .javascript,.javascript .xml,.lasso .markup,.tex .hljs-formula,.xml .css,.xml .hljs-cdata,.xml .javascript,.xml .vbscript{opacity:.5} \ No newline at end of file diff --git a/package.json b/package.json index 932efe28..4f76ce6b 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "author": "pkempenaers@myforce.be", "name": "angularjs-dropdown-multiselect", - "version": "2.0.0-beta.4", + "version": "2.0.0-beta.5", "description": "This directive gives you a Bootstrap Dropdown with the power of AngularJS directives.", "homepage": "http://dotansimha.github.io/angularjs-dropdown-multiselect/#/", "dependencies": { From aac6ab877c0483cbeb1103164665bf2a56c42c34 Mon Sep 17 00:00:00 2001 From: pkempenaers Date: Thu, 30 Mar 2017 16:33:09 +0200 Subject: [PATCH 04/13] Release 2.0.0-beta.6 --- bower.json | 2 +- component/component.js | 4 +-- component/maps/component.js.map | 2 +- docs/index.html | 2 +- docs/maps/scripts/app.js.map | 2 +- docs/maps/scripts/vendor.js.map | 2 +- docs/scripts/app.js | 2 +- docs/scripts/vendor.js | 43 +++++++++++++++++---------------- docs/styles/vendor.css | 1 - package.json | 2 +- 10 files changed, 31 insertions(+), 31 deletions(-) delete mode 100644 docs/styles/vendor.css diff --git a/bower.json b/bower.json index 996b72fe..31a79ae9 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "angularjs-dropdown-multiselect", - "version": "2.0.0-beta.5", + "version": "2.0.0-beta.6", "authors": [ "Dotan Simha ", "Pieter Kempenaers " diff --git a/component/component.js b/component/component.js index 2528d072..8b98cbe0 100644 --- a/component/component.js +++ b/component/component.js @@ -1,4 +1,4 @@ -/******/!function(e){function t(l){if(n[l])return n[l].exports;var s=n[l]={exports:{},id:l,loaded:!1};return e[l].call(s.exports,s,s.exports,t),s.loaded=!0,s.exports}// webpackBootstrap +/******/!function(e){function t(l){if(n[l])return n[l].exports;var o=n[l]={exports:{},id:l,loaded:!1};return e[l].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}// webpackBootstrap /******/ -var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}var s=n(1),o=l(s);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,n,l){var s=l.dmDropdownStaticInclude,o=n.html(s).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function s(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},transclude:!0,controller:i["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=s;var o=n(2),i=l(o)},function(e,t){"use strict";function n(e,t){var n=!1;return e.some(function(e){return e===t?(n=!0,!0):!1}),n}function l(e,t,l,s){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function i(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function c(t,n){e.setSelectedItem(n,!1,!0),t.stopImmediatePropagation()}function r(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function a(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(n){n[e.settings.groupBy]===t&&e.setSelectedItem(n,!1,!1)}),e.externalEvents.onSelectionChanged()}function d(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function u(e){var n=t.find("button"),l=document.createElement("canvas"),s=l.getContext("2d");return s.font=n.css("font-size")+n.css("font-family"),s.originalFont=n.css("font-size")+n.css("font-family"),s.fillStyle="#000000",s.measureText(e).width}function g(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var n=24,l=2,s=8,o=t[0].offsetWidth-n-l-s,i=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var n=e.getPropertyForObject(t,e.settings.displayProp),l=e.settings.smartButtonTextConverter(n,t);i.push(l||n)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(i=i.slice(0,e.settings.smartButtonMaxItems),i.push("..."));var c=i.join(", "),r=c.length-4;if(0===t[0].offsetWidth)return c;if(o<=u("..."))return"...";for(;u(c)>o;)"..."!==i[i.length-1]&&(i.push("..."),c+="...",r=c.length-4),c=c.slice(0,r)+c.slice(r+1),r-=1;return c}var a=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===a?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&a===e.options.length?e.texts.allSelectedText:a+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function p(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function h(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=l("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function f(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function m(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,l=arguments[2],s=-1!==e.selectedModel.indexOf(t);!n&&s?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!s&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||s||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),l&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),l&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function y(t){return-1!==e.selectedModel.indexOf(t)}function k(t){var n=angular.element(t.target).scope(),l=void 0,s=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),n.option?e.setSelectedItem(n.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),s.previousElementSibling&&(l=s.previousElementSibling.querySelector("a")||s.previousElementSibling.querySelector("input"));!l&&s;)s=s.previousElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else if(40===t.keyCode){for(t.preventDefault(),s.nextElementSibling&&(l=s.nextElementSibling.querySelector("a")||s.nextElementSibling.querySelector("input"));!l&&s;)s=s.nextElementSibling,s&&(l=s.querySelector("a")||s.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function b(t){var n=t.target.parentNode.parentNode,l=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),n.previousElementSibling&&(l=n.previousElementSibling.querySelector("a")||n.previousElementSibling.querySelector("input"));!l&&n;)n=n.previousElementSibling,n&&(l=n.querySelector("a")||n.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function v(t,n){var s=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(s=l("filter")(e.options,e.getFilter(n)),1===s.length&&e.setSelectedItem(s[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function x(t){var n={};return n[e.settings.searchField]=t,n}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function w(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function C(t,n){if(angular.isUndefined(n))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==n.type)return t.index')}]); +var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}var o=n(1),s=l(o);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,n,l){var o=l.dmDropdownStaticInclude,s=n.html(o).contents();e(s)(t)}}]).directive("ngDropdownMultiselect",s["default"])},function(e,t,n){"use strict";function l(e){return e&&e.__esModule?e:{"default":e}}function o(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},transclude:{toggleDropdown:"?toggleDropdown"},controller:i["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=o;var s=n(2),i=l(s)},function(e,t){"use strict";function n(e,t){var n=!1;return e.some(function(e){return e===t?(n=!0,!0):!1}),n}function l(e,t,l,o){"ngInject";function s(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function i(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):s()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function r(t,n){e.setSelectedItem(n,!1,!0),t.stopImmediatePropagation()}function c(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function a(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(n){n[e.settings.groupBy]===t&&e.setSelectedItem(n,!1,!1)}),e.externalEvents.onSelectionChanged()}function d(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function u(e){var n=t.find("button"),l=document.createElement("canvas"),o=l.getContext("2d");return o.font=n.css("font-size")+n.css("font-family"),o.originalFont=n.css("font-size")+n.css("font-family"),o.fillStyle="#000000",o.measureText(e).width}function g(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var n=24,l=2,o=8,s=t[0].offsetWidth-n-l-o,i=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var n=e.getPropertyForObject(t,e.settings.displayProp),l=e.settings.smartButtonTextConverter(n,t);i.push(l||n)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(i=i.slice(0,e.settings.smartButtonMaxItems),i.push("..."));var r=i.join(", "),c=r.length-4;if(0===t[0].offsetWidth)return r;if(s<=u("..."))return"...";for(;u(r)>s;)"..."!==i[i.length-1]&&(i.push("..."),r+="...",c=r.length-4),r=r.slice(0,c)+r.slice(c+1),c-=1;return r}var a=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===a?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&a===e.options.length?e.texts.allSelectedText:a+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function p(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function h(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=l("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function f(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function m(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,l=arguments[2],o=-1!==e.selectedModel.indexOf(t);!n&&o?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!o&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||o||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),l&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),l&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function y(t){return-1!==e.selectedModel.indexOf(t)}function k(t){var n=angular.element(t.target).scope(),l=void 0,o=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),n.option?e.setSelectedItem(n.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),o.previousElementSibling&&(l=o.previousElementSibling.querySelector("a")||o.previousElementSibling.querySelector("input"));!l&&o;)o=o.previousElementSibling,o&&(l=o.querySelector("a")||o.querySelector("input"));l&&l.focus()}else if(40===t.keyCode){for(t.preventDefault(),o.nextElementSibling&&(l=o.nextElementSibling.querySelector("a")||o.nextElementSibling.querySelector("input"));!l&&o;)o=o.nextElementSibling,o&&(l=o.querySelector("a")||o.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function b(t){var n=t.target.parentNode.parentNode,l=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),s();else if(38===t.keyCode){for(t.preventDefault(),n.previousElementSibling&&(l=n.previousElementSibling.querySelector("a")||n.previousElementSibling.querySelector("input"));!l&&n;)n=n.previousElementSibling,n&&(l=n.querySelector("a")||n.querySelector("input"));l&&l.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function v(t,n){var o=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(o=l("filter")(e.options,e.getFilter(n)),1===o.length&&e.setSelectedItem(o[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function x(t){var n={};return n[e.settings.searchField]=t,n}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function w(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):s())}function C(t,n){if(angular.isUndefined(n))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==n.type)return t.index
    ')}]); //# sourceMappingURL=maps/component.js.map diff --git a/component/maps/component.js.map b/component/maps/component.js.map index da57916d..9eff3202 100644 --- a/component/maps/component.js.map +++ b/component/maps/component.js.map @@ -1 +1 @@ -{"version":3,"sources":["component.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","angular","directive","$compile","scope","element","attrs","template","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","transclude","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","run","$templateCache","put"],"mappings":"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","file":"component.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["component.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","angular","directive","$compile","scope","element","attrs","template","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","transclude","toggleDropdown","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","run","$templateCache","put"],"mappings":"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","file":"component.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index c9503a95..456559ee 100644 --- a/docs/index.html +++ b/docs/index.html @@ -3,6 +3,6 @@ .carousel, .panel-title a { cursor: pointer; - }
    View project on
    GitHub

    AngularJS Dropdown Multiselect

    based on Bootstrap's dropdown

    \ No newline at end of file diff --git a/docs/maps/scripts/app.js.map b/docs/maps/scripts/app.js.map index 2080cb13..705cc74f 100644 --- a/docs/maps/scripts/app.js.map +++ b/docs/maps/scripts/app.js.map @@ -1 +1 @@ -{"version":3,"sources":["scripts/app.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_main","_main2","_v1docs","_v1docs2","angular","component","config","$stateProvider","$urlRouterProvider","state","name","url","template","otherwise","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","directive","$compile","scope","element","attrs","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","transclude","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","toggleDropdown","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","mainComponent","_classCallCheck","instance","Constructor","TypeError","MainController","$log","this","testing","testmodel","testdata","testsettings","externalIdProp","skip","testevents","debug","example1model","example1data","label","example2model","example2data","example2settings","example5model","example5data","example5settings","example5customTexts","example6data","example6model","example6settings","example7model","example7data","example7settings","customFilter","example8model","example8data","example8settings","example9model","example9data","example9settings","example10model","example10data","example10settings","example12model","example12data","example12settings","example11model","example11data","gender","example11settings","selectByGroupModel","selectByGroupData","selectByGroupSettings","selectByGroups","example13model","example13data","example13settings","itemText","example14model","example14data","example14settings","example15model","example15data","example15settings","example16model","example16data","example16settings","example17model","example17data","example17settings","example18model","example18data","example18settings","example19model","example19data","example19settings","example20model","example20data","age","example20settings","example21model","example21data","example21settings","searchSelectAllModel","searchSelectAllData","searchSelectAllSettings","disabledModel","disabledData","selectedToTopModel","selectedToTopData","selectedToTopSettings","stringModel","stringData","stringSettings","transclusionModel","transclusionData","transclusionSettings","v1Component","run","$templateCache","put"],"mappings":"SAAS,SAAUA,GAKT,QAASC,GAAoBC,GAG5B,GAAGC,EAAiBD,GACnB,MAAOC,GAAiBD,GAAUE,OAGnC,IAAIC,GAASF,EAAiBD,IAC7BE,WACAE,GAAIJ,EACJK,QAAQ,EAUT,OANAP,GAAQE,GAAUM,KAAKH,EAAOD,QAASC,EAAQA,EAAOD,QAASH,GAG/DI,EAAOE,QAAS,EAGTF,EAAOD;;AAvBf,GAAID,KAqCJ,OATAF,GAAoBQ,EAAIT,EAGxBC,EAAoBS,EAAIP,EAGxBF,EAAoBU,EAAI,GAGjBV,EAAoB,KAK/B,SAASI,EAAQD,EAASH,GAE/B,YAYA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAVvFZ,EAAoB,EAEpB,IAAIe,GAAQf,EAAoB,GAE5BgB,EAASL,EAAuBI,GAEhCE,EAAUjB,EAAoB,GAE9BkB,EAAWP,EAAuBM,EAItCE,SAAQf,OAAO,uCAAwC,iCAAkC,OAAQ,eAAgB,cAAcgB,UAAU,QAAS,EAAGJ,EAAAA,eAAmBI,UAAU,UAAW,EAAGF,EAAAA,eAAqBG,QAAQ,iBAAkB,qBAAsB,SAAUC,EAAgBC,GAC9RD,EAAeE,OACdC,KAAM,OACNC,IAAK,QACLC,SAAU,kBAGXL,EAAeE,OACdC,KAAM,KACNC,IAAK,MACLC,SAAU,wBAGXJ,EAAmBK,UAAU,aAKzB,SAASxB,EAAQD,EAASH,GAE/B,YAMA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAJvF,GAAIiB,GAAgC7B,EAAoB,GAEpD8B,EAAiCnB,EAAuBkB,EAI5DV,SAAQf,OAAO,qCAAsC2B,UAAU,2BAA4B,WAAY,SAAUC,GAChH,UAEA,OAAO,UAAmBC,EAAOC,EAASC,GACzC,GAAIR,GAAWQ,EAAMC,wBACjBC,EAAWH,EAAQI,KAAKX,GAAUU,UACtCL,GAASK,GAAUJ,OAEjBF,UAAU,wBAAyBD,EAAAA,aAIlC,SAAS1B,EAAQD,EAASH,GAE/B,YAWA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAEvF,QAAS2B,KACR,OACCC,SAAU,KACVP,OACCQ,cAAe,IACfC,QAAS,IACTC,cAAe,IACfC,OAAQ,IACRC,aAAc,KACdC,iBAAkB,IAClBC,SAAU,KAEXC,YAAY,EACZC,WAAYnB,EAAAA,WACZoB,YAAa,qDAzBfC,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkBoC,CAElB,IAAIV,GAAgC7B,EAAoB,GAEpD8B,EAAiCnB,EAAuBkB,IAwBvD,SAASzB,EAAQD,GAEtB,YAmBA,SAASmD,GAASC,EAAYC,GAC7B,GAAIC,IAAiB,CAQrB,OAPAF,GAAWG,KAAK,SAAUC,GACzB,MAAIA,KAAWH,GACdC,GAAiB,GACV,IAED,IAEDA,EAGR,QAASG,GAA8BC,EAAQC,EAAUC,EAASC,GACjE,UAmHA,SAASC,KACRC,WAAW,WACV,GAAIC,GAAiBhD,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,UAC5DjD,SAAQkD,UAAUF,IAAqC,MAAlBA,GACxCA,EAAeG,SAEd,GAGJ,QAASC,KACJV,EAAOW,KACVX,EAAOY,QAEPZ,EAAOW,MAAO,EAEXX,EAAOa,SAASC,kBACfd,EAAOW,OAC6B,IAAnCX,EAAOa,SAASE,gBAAwBf,EAAOa,SAASG,aAC3DX,WAAW,WACV/C,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,gBAAgBE,SACzD,GAEHL,KAICJ,EAAOa,SAASG,cACfhB,EAAOW,MACVN,WAAW,WACV/C,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,gBAAgBE,SACzD,GAKN,QAASQ,GAAcC,EAAQC,GAC9BnB,EAAOoB,gBAAgBD,GAAQ,GAAO,GACtCD,EAAOG,2BAGR,QAAST,KACRZ,EAAOW,MAAO,EACdX,EAAOsB,MAAMtC,aAAegB,EAAOa,SAASU,mBAAqB,GAAKvB,EAAOsB,MAAMtC,aACnFgB,EAAOwB,eAAeC,UAGvB,QAASC,GAAmBC,GAC3B3B,EAAOpB,cAAcgD,OAAO,EAAG5B,EAAOpB,cAAciD,QACpD7B,EAAOnB,QAAQiD,QAAQ,SAAUC,GAC5BA,EAAK/B,EAAOa,SAASmB,WAAaL,GACrC3B,EAAOoB,gBAAgBW,GAAM,GAAO,KAGtC/B,EAAOwB,eAAeS,qBAGvB,QAASC,GAAcC,GACtB,MAA4C,QAAxCnC,EAAOa,SAASuB,oBACZpC,EAAOa,SAASuB,oBAAoBD,GAGrCA,EAGR,QAASE,GAAUC,GAClB,GAAIC,GAAOtC,EAASuC,KAAK,UACrBC,EAASC,SAASC,cAAc,UAChCC,EAAMH,EAAOI,WAAW,KAK5B,OAJAD,GAAIE,KAAOP,EAAKQ,IAAI,aAAeR,EAAKQ,IAAI,eAE5CH,EAAII,aAAeT,EAAKQ,IAAI,aAAeR,EAAKQ,IAAI,eACpDH,EAAIK,UAAY,UACTL,EAAIM,YAAYZ,GAAMa,MAG9B,QAASC,KACR,GAAIpD,EAAOa,SAASwC,cAAgBrD,EAAOpB,eAAiBoB,EAAOpB,cAAciD,OAAS,EAAG,CAC5F,GAAI7B,EAAOa,SAASyC,oBAAsB,EAAG,CAC5C,GAAIC,GAAe,GACfC,EAAc,EACdC,EAAoB,EACpBC,EAAazD,EAAS,GAAG0D,YAAcJ,EAAeC,EAAcC,EAEpEG,IAEJtG,SAAQwE,QAAQ9B,EAAOnB,QAAS,SAAUgF,GACzC,GAAI7D,EAAO8D,UAAUD,GAAa,CACjC,GAAIE,GAAc/D,EAAOgE,qBAAqBH,EAAY7D,EAAOa,SAASoD,aACtEC,EAAoBlE,EAAOa,SAASsD,yBAAyBJ,EAAaF,EAE9ED,GAAUQ,KAAKF,GAAqBH,MAIlC/D,EAAOpB,cAAciD,OAAS7B,EAAOa,SAASyC,sBACjDM,EAAYA,EAAUS,MAAM,EAAGrE,EAAOa,SAASyC,qBAC/CM,EAAUQ,KAAK,OAGhB,IAAIE,GAASV,EAAUW,KAAK,MACxBC,EAAQF,EAAOzC,OAAS,CAC5B,IAAgC,IAA5B5B,EAAS,GAAG0D,YACf,MAAOW,EAER,IAAIZ,GAAcrB,EAAU,OAC3B,MAAO,KAER,MAAOA,EAAUiC,GAAUZ,GACc,QAApCE,EAAUA,EAAU/B,OAAS,KAChC+B,EAAUQ,KAAK,OACfE,GAAkB,MAClBE,EAAQF,EAAOzC,OAAS,GAEzByC,EAASA,EAAOD,MAAM,EAAGG,GAASF,EAAOD,MAAMG,EAAQ,GACvDA,GAAS,CAGV,OAAOF,GAER,GAAIG,GAAgBnH,QAAQkD,UAAUR,EAAOpB,eAAiBoB,EAAOpB,cAAciD,OAAS,CAE5F,OAAsB,KAAlB4C,EACIzE,EAAO0E,MAAMC,kBAGjB3E,EAAOa,SAAS+D,qBAAuBH,IAAkBzE,EAAOnB,QAAQgD,OACpE7B,EAAO0E,MAAMG,gBAGdJ,EAAgB,IAAMzE,EAAO0E,MAAMI,wBAE3C,MAAO9E,GAAO0E,MAAMC,kBAGrB,QAASX,GAAqBlE,EAAQiF,GACrC,MAAIzH,SAAQkD,UAAUV,IAAWR,OAAO0F,UAAUC,eAAevI,KAAKoD,EAAQiF,GACtEjF,EAAOiF,GAGRG,OAGR,QAASC,KACRnF,EAAOoF,aAAY,GACnBpF,EAAOwB,eAAe6D,aAEtB,IAAIC,GAAepF,EAAQ,UAAUF,EAAOnB,QAASmB,EAAOuF,UAAUvF,EAAOsB,MAAMtC,cACnF1B,SAAQwE,QAAQwD,EAAc,SAAU9F,GACvCQ,EAAOoB,gBAAgB5B,GAAO,GAAM,KAErCQ,EAAOwB,eAAeS,qBACtBjC,EAAOwF,cAAgB,KAGxB,QAASJ,KACR,GAAIK,GAAgBC,UAAU7D,OAAS,GAAsBqD,SAAjBQ,UAAU,GAAmBA,UAAU,IAAK,CAEnFD,IACJzF,EAAOwB,eAAemE,gBAGvB3F,EAAOpB,cAAcgD,OAAO,EAAG5B,EAAOpB,cAAciD,QAC/C4D,GACJzF,EAAOwB,eAAeS,qBAEvBjC,EAAOwF,cAAgB,KAGxB,QAASpE,GAAgBD,GACxB,GAAIyE,GAAaF,UAAU7D,OAAS,GAAsBqD,SAAjBQ,UAAU,GAAmBA,UAAU,IAAK,EACjFG,EAAsBH,UAAU,GAEhCI,EAAkD,KAAzC9F,EAAOpB,cAAcmH,QAAQ5E,IAErCyE,GAAcE,GAClB9F,EAAOpB,cAAcgD,OAAO5B,EAAOpB,cAAcmH,QAAQ5E,GAAS,GAClEnB,EAAOwB,eAAewE,eAAe7E,GACjCnB,EAAOa,SAASoF,iBACnBjG,EAAOY,UAEGkF,IAA8C,IAAnC9F,EAAOa,SAASE,gBAAwBf,EAAOpB,cAAciD,OAAS7B,EAAOa,SAASE,iBAC5Gf,EAAOpB,cAAcwF,KAAKjD,GACtB0E,GACH7F,EAAOwB,eAAe0E,aAAa/E,GAEhCnB,EAAOa,SAASsF,eACnBnG,EAAOY,QAEJZ,EAAOa,SAASE,eAAiB,GAAKf,EAAOpB,cAAciD,SAAW7B,EAAOa,SAASE,gBACzFf,EAAOwB,eAAe4E,yBAEsB,IAAnCpG,EAAOa,SAASE,gBAAyB+E,GAAU9F,EAAOpB,cAAciD,SAAW7B,EAAOa,SAASE,iBAC7Gf,EAAOpB,cAAcgD,OAAO,EAAG,GAC/B5B,EAAOpB,cAAcwF,KAAKjD,GACtB0E,GACH7F,EAAOwB,eAAe0E,aAAa/E,GAEhCnB,EAAOa,SAASsF,eACnBnG,EAAOY,SAGLiF,GACH7F,EAAOwB,eAAeS,qBAEvBjC,EAAOwF,cAAgB,KAGxB,QAAS1B,GAAU3C,GAClB,MAAgD,KAAzCnB,EAAOpB,cAAcmH,QAAQ5E,GAGrC,QAASkF,GAAYC,GACpB,GAAIC,GAAcjJ,QAAQe,QAAQiI,EAAM3G,QAAQvB,QAC5CoI,EAAa,OACbC,EAASH,EAAM3G,OAAO+G,UAC1B,IAAK1G,EAAOa,SAASC,iBAGrB,GAAsB,KAAlBwF,EAAMK,SAAoC,KAAlBL,EAAMK,QAEjCL,EAAMM,iBACFL,EAAYpF,OACfnB,EAAOoB,gBAAgBmF,EAAYpF,QAAQ,GAAO,GACpB,gBAApBmF,EAAM3G,OAAOnD,GACvBwD,EAAOoF,cACuB,cAApBkB,EAAM3G,OAAOnD,IACvBwD,EAAOmF,gBAEF,IAAsB,KAAlBmB,EAAMK,QAAgB,CAMhC,IAJAL,EAAMM,iBACFH,EAAOI,yBACVL,EAAaC,EAAOI,uBAAuBtG,cAAc,MAAQkG,EAAOI,uBAAuBtG,cAAc,WAEtGiG,GAAgBC,GACvBA,EAASA,EAAOI,uBACZJ,IACHD,EAAaC,EAAOlG,cAAc,MAAQkG,EAAOlG,cAAc,SAG7DiG,IACHA,EAAW/F,YAEN,IAAsB,KAAlB6F,EAAMK,QAAgB,CAMhC,IAJAL,EAAMM,iBACFH,EAAOK,qBACVN,EAAaC,EAAOK,mBAAmBvG,cAAc,MAAQkG,EAAOK,mBAAmBvG,cAAc,WAE9FiG,GAAgBC,GACvBA,EAASA,EAAOK,mBACZL,IACHD,EAAaC,EAAOlG,cAAc,MAAQkG,EAAOlG,cAAc,SAG7DiG,IACHA,EAAW/F,YAEgB,MAAlB6F,EAAMK,UAChBL,EAAMM,iBAEN5G,EAAOU,kBAIT,QAASqG,GAAqBT,GAC7B,GAAIG,GAASH,EAAM3G,OAAO+G,WAAWA,WACjCF,EAAa,MACjB,IAAKxG,EAAOa,SAASC,iBAGrB,GAAsB,IAAlBwF,EAAMK,SAAmC,KAAlBL,EAAMK,QAEhCL,EAAMM,iBACNxG,QACM,IAAsB,KAAlBkG,EAAMK,QAAgB,CAKhC,IAJAL,EAAMM,iBACFH,EAAOI,yBACVL,EAAaC,EAAOI,uBAAuBtG,cAAc,MAAQkG,EAAOI,uBAAuBtG,cAAc,WAEtGiG,GAAgBC,GACvBA,EAASA,EAAOI,uBACZJ,IACHD,EAAaC,EAAOlG,cAAc,MAAQkG,EAAOlG,cAAc,SAG7DiG,IACHA,EAAW/F,YAEgB,MAAlB6F,EAAMK,UAChBL,EAAMM,iBAEN5G,EAAOU,kBAIT,QAASsG,GAAcV,EAAOtH,GAC7B,GAAIsG,GAAe,MACdtF,GAAOa,SAASC,kBAGC,KAAlBwF,EAAMK,UAC8B,IAAnC3G,EAAOa,SAASE,gBAAwBf,EAAOa,SAASG,cAC3DsE,EAAepF,EAAQ,UAAUF,EAAOnB,QAASmB,EAAOuF,UAAUvG,IACtC,IAAxBsG,EAAazD,QAChB7B,EAAOoB,gBAAgBkE,EAAa,IAAI,GAAO,IAEtCtF,EAAOa,SAASG,cAC1BhB,EAAOmF,aAKV,QAASI,GAAUvG,GAClB,GAAIiI,KAEJ,OADAA,GAAOjH,EAAOa,SAASqG,aAAelI,EAC/BiI,EAGR,QAASE,GAAajG,GACjBA,GACHA,EAAOkG,kBAERpH,EAAOa,SAASG,cAAgBhB,EAAOa,SAASG,aAC3ChB,EAAOa,SAASG,eACpBhB,EAAOsB,MAAMtC,aAAe,IAI9B,QAASqI,KACHrH,EAAOa,SAASC,kBAGC,KAAlBwF,MAAMK,UACT3G,EAAOmH,eACHnH,EAAOa,SAASG,aACnBX,WAAW,WACV/C,QAAQe,QAAQ4B,GAAU,GAAGM,cAAc,gBAAgBE,SACzD,GAEHL,KAKH,QAASkH,GAAcC,EAASC,GAC/B,GAAIlK,QAAQmK,YAAYD,GACvB,MAAO,EAER,IAAIlK,QAAQmK,YAAYF,GACvB,MAAO,EAER,IAAqB,WAAjBA,EAAQG,MAAsC,WAAjBF,EAAQE,KACxC,MAAOH,GAAQ/C,MAAQgD,EAAQhD,MAAQ,GAAK,CAE7C,IAAImD,GAAKJ,EAAQ/H,MACboI,EAAKJ,EAAQhI,KAEjB,OAAIQ,GAAOa,SAASmB,SACf2F,EAAG3H,EAAOa,SAASmB,WAAa4F,EAAG5H,EAAOa,SAASmB,SAClD2F,EAAG3H,EAAOa,SAASmB,SAAW4F,EAAG5H,EAAOa,SAASmB,SAC7C,EAED,GAGJhC,EAAOa,SAASgH,eAIhB7H,EAAO8D,UAAU6D,KAAQ3H,EAAO8D,UAAU8D,IAAO5H,EAAO8D,UAAU6D,IAAO3H,EAAO8D,UAAU8D,GACvF5H,EAAOnB,QAAQkH,QAAQ4B,GAAM3H,EAAOnB,QAAQkH,QAAQ6B,GAAM,GAAK,EAEnE5H,EAAO8D,UAAU6D,GACb,GAED,EATC3H,EAAOnB,QAAQkH,QAAQ4B,GAAM3H,EAAOnB,QAAQkH,QAAQ6B,GAAM,GAAK,EAhexE,GAAIE,GAAmB7H,EAAS8H,WAAW,GACvCvG,GACH0E,aAAc5I,QAAQ0K,KACtBhC,eAAgB1I,QAAQ0K,KACxB3C,YAAa/H,QAAQ0K,KACrBrC,cAAerI,QAAQ0K,KACvBC,WAAY3K,QAAQ0K,KACpB5B,sBAAuB9I,QAAQ0K,KAC/B/F,mBAAoB3E,QAAQ0K,KAC5BvG,QAASnE,QAAQ0K,MAGdnH,GACHwC,cAAc,EACd6E,YAAY,EACZC,iBAAkB,QAClBC,aAAa,EACbnE,YAAa,QACbjD,cAAc,EACdO,oBAAoB,EACpBR,eAAgB,EAChBsH,cAAc,EACdC,gBAAgB,EAChBC,wBAAwB,EACxBpC,eAAe,EACfqC,cAAe,kBACfvC,iBAAiB,EACjBjE,QAASkD,OACTuD,YAAY,EACZrG,oBAAqB,KACrBkB,oBAAqB,EACrBa,yBAA0B7G,QAAQ0K,KAClCU,aAAa,EACbb,eAAe,EACf/G,kBAAkB,EAClBhD,SAAU,yDACVoJ,YAAa,IACbtC,qBAAqB,GAGlBF,GACHiE,SAAU,YACVC,WAAY,cACZC,eAAgB,UAChBC,YAAa,IACbC,kBAAmB,YACnBpE,kBAAmB,SACnBG,wBAAyB,UACzBkE,cAAe,iBACfhI,aAAc,gBACdiI,YAAa,cACbpE,gBAAiB,OAGdvD,GACHtC,aAAcgB,EAAOhB,cAAgB,GAGtC1B,SAAQ4L,OAAOrI,EAAUb,EAAOlB,mBAChCxB,QAAQ4L,OAAO1H,EAAgBxB,EAAOjB,YACtCzB,QAAQ4L,OAAOxE,EAAO1E,EAAOf,kBAEzB4B,EAASuH,aACZjI,EAAUgJ,GAAG,QAAS,SAAUC,GAC/B,GAAIpJ,EAAOW,KAAM,CAIhB,IAHA,GAAIhB,GAASyJ,EAAEzJ,OAAO0J,cAClBC,GAAc,EAEXhM,QAAQkD,UAAUb,IAAsB,OAAXA,IAAoB2J,GACjD3J,EAAO4J,UAAUC,OAAS/J,EAASE,EAAO4J,UAAUC,MAAM,KAAM,wBAA0BF,GAC3F3J,IAAWmI,IACdwB,GAAc,GAGhB3J,EAASA,EAAO0J,aAGZC,IACJtJ,EAAOyJ,OAAO,WACbzJ,EAAOY,aAOZtD,QAAQ4L,OAAOlJ,GACdU,eAAgBA,EAChBO,cAAeA,EACfO,eAAgBA,EAChBX,SAAUA,EACV6D,MAAOA,EACPpD,MAAOA,EACPV,MAAOA,EACPc,mBAAoBA,EACpBQ,cAAeA,EACfkB,cAAeA,EACfY,qBAAsBA,EACtBmB,UAAWA,EACXC,YAAaA,EACbhE,gBAAiBA,EACjB0C,UAAWA,EACXuC,YAAaA,EACbU,qBAAsBA,EACtBC,cAAeA,EACfzB,UAAWA,EACX4B,aAAcA,EACdE,oBAAqBA,EACrBC,cAAeA,IAGhBtH,EAAOwB,eAAeyG,aA/IvBlI,EAA8B2J,SAAW,SAAU,WAAY,UAAW,aAC1EpK,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkByD,GA2gBb,SAASxD,EAAQD,EAASH,GAE/B,YAWA,SAASW,GAAuBC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,UAASF,GAEvF,QAAS4M,KACR,GAAIpM,IACH8B,YAAa,8BACbD,WAAYjC,EAAAA,WAGb,OAAOI,GAjBR+B,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkBqN,CAElB,IAAIzM,GAAQf,EAAoB,GAE5BgB,EAASL,EAAuBI,IAe/B,SAASX,EAAQD,GAEtB,YAMA,SAASsN,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCAJhHzK,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,GAiBR,IAAIwK,GAAiB,QAASA,GAAehK,EAAQiK,GACpD,UAEAL,GAAgBM,KAAMF,GAEtBhK,EAAOmK,SAAU,EACjBnK,EAAOoK,aACPpK,EAAOqK,UAAY,QAAS,OAAQ,SACpCrK,EAAOsK,cACNC,eAAgB,GAChBxJ,eAAgB,EAChBuC,oBAAqB,EACrBuE,eAAe,EACf/J,SAAU,aACVqG,yBAA0B,SAAkCqG,EAAMrJ,GACjE,MAAOA,KAGTnB,EAAOyK,YACNxI,mBAAoB,WAEnBgI,EAAKS,MAAM,2BAIb1K,EAAO2K,iBACP3K,EAAO4K,eAAkBpO,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE5F7K,EAAO8K,iBACP9K,EAAO+K,eAAkBvO,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOgL,kBAAqB/G,YAAa,MAEzCjE,EAAOiL,iBACPjL,EAAOkL,eAAkB1O,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOmL,oBACPnL,EAAOoL,qBAAwBzG,kBAAmB,gBAElD3E,EAAOqL,eAAkB7O,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOsL,eAAiBtL,EAAOqL,aAAa,GAAIrL,EAAOqL,aAAa,IACpErL,EAAOuL,oBAEPvL,EAAOwL,iBACPxL,EAAOyL,eAAkBjP,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAO0L,kBAAqBnB,eAAgB,IAC5CvK,EAAO2L,aAAe,IAEtB3L,EAAO4L,iBACP5L,EAAO6L,eAAkBrP,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAO8L,kBACNrD,YAAY,GAGbzI,EAAO+L,iBACP/L,EAAOgM,eAAkBxP,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC5F7K,EAAOiM,kBAAqBjL,cAAc,GAE1ChB,EAAOkM,kBACPlM,EAAOmM,gBAAmB3P,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE7F7K,EAAOoM,mBAAsBrL,eAAgB,GAE7Cf,EAAOqM,kBACPrM,EAAOsM,gBAAmB9P,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE7F7K,EAAOuM,mBAAsBxL,eAAgB,GAE7Cf,EAAOwM,kBACPxM,EAAOyM,gBAAmBjQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,SAAU6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAExN1M,EAAO2M,mBACNvK,oBAAqB,SAA6BD,GACjD,MAAmB,MAAfA,EACI,OAED,UAGRH,QAAS,UAGVhC,EAAO4M,sBACP5M,EAAO6M,oBAAuBrQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,OAAQ6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,SAAU6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,QAAS6B,OAAQ,MAASlQ,GAAI,EAAGqO,MAAO,UAAW6B,OAAQ,MAEtQ1M,EAAO8M,uBACNC,gBAAiB,IAAK,KACtB3K,oBAAqB,SAA6BD,GACjD,OAAQA,GACP,IAAK,IACJ,MAAO,MACR,KAAK,IACJ,MAAO,QACR,SACC,MAAO,UAIVH,QAAS,UAGVhC,EAAOgN,kBACPhN,EAAOiN,gBAAmBzQ,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UAEnJ7K,EAAOkN,mBACN5J,oBAAqB,EACrBa,yBAA0B,SAAkCgJ,GAC3D,MAAiB,SAAbA,EACI,UAGDA,IAITnN,EAAOoN,kBACPpN,EAAOqN,gBAAmB7Q,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,QAAWrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,QAAWrO,GAAI,GAAIqO,MAAO,SAErR7K,EAAOsN,mBACNnF,iBAAkB,QAClBD,YAAY,GAGblI,EAAOuN,kBACPvN,EAAOwN,gBAAmBhR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UAEnJ7K,EAAOyN,mBACNzM,cAAc,GAGfhB,EAAO0N,kBACP1N,EAAO2N,gBAAmBnR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UACnJ7K,EAAO4N,mBACNlF,aAAa,GAGd1I,EAAO6N,kBACP7N,EAAO8N,gBAAmBtR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UACnJ7K,EAAO+N,mBACNjN,kBAAkB,GAGnBd,EAAOgO,kBACPhO,EAAOiO,gBAAmBzR,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,WAAcrO,GAAI,EAAGqO,MAAO,UACnJ7K,EAAOkO,mBACNpN,kBAAkB,EAClBE,cAAc,EACdD,eAAgB,GAGjBf,EAAOmO,kBACPnO,EAAOoO,gBAAmB5R,GAAI,EAAGoB,KAAM,UAAapB,GAAI,EAAGoB,KAAM,SAAYpB,GAAI,EAAGoB,KAAM,SAAYpB,GAAI,EAAGoB,KAAM,WAAcpB,GAAI,EAAGoB,KAAM,UAC9IoC,EAAOqO,mBACNvQ,SAAU,0BAGXkC,EAAOsO,kBACPtO,EAAOuO,gBAAmB/R,GAAI,EAAGqO,MAAO,QAAS2D,IAAK,KAAQhS,GAAI,EAAGqO,MAAO,OAAQ2D,IAAK,KAAQhS,GAAI,EAAGqO,MAAO,QAAS2D,IAAK,KAC7HxO,EAAOyO,mBACNvH,YAAa,MACblG,cAAc,GAGfhB,EAAO0O,kBACP1O,EAAO2O,gBAAmBnS,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAC7F7K,EAAO4O,mBACNrG,wBAAwB,GAGzBvI,EAAO6O,wBACP7O,EAAO8O,sBAAyBtS,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UACnG7K,EAAO+O,yBACN/N,cAAc,EACdF,kBAAkB,GAGnBd,EAAOgP,iBACPhP,EAAOiP,eAAkBzS,GAAI,EAAGqO,MAAO,QAAS3L,UAAU,IAAU1C,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAE5G7K,EAAOkP,sBACPlP,EAAOmP,oBAAuB3S,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UACjG7K,EAAOoP,uBACNvH,eAAe,GAGhB7H,EAAOqP,eACPrP,EAAOsP,YAAc,QAAS,OAAQ,SACtCtP,EAAOuP,gBACNzR,SAAU,aACVqG,yBAA0B,SAAkCqG,EAAMrJ,GACjE,MAAOA,KAITnB,EAAOwP,qBACPxP,EAAOyP,mBAAsBjT,GAAI,EAAGqO,MAAO,UAAarO,GAAI,EAAGqO,MAAO,SAAYrO,GAAI,EAAGqO,MAAO,UAChG7K,EAAO0P,wBAER1F,GAAeN,SAAW,SAAU,QAEpCpN,EAAAA,WAAkB0N,GAIb,SAASzN,EAAQD,GAEtB,YAMA,SAASqT,KACR,GAAIpS,IACH8B,YAAa,kCAGd,OAAO9B,GATR+B,OAAOC,eAAejD,EAAS,cAC9BkD,OAAO,IAERlD,EAAAA,WAAkBqT,KAWnBrS,QAAQf,OAAO,uCAAuCqT,KAAK,iBAAkB,SAASC,GAAiBA,EAAeC,IAAI,oDAAoD,s9IAC9KD,EAAeC,IAAI,8BAA8B;AACjDD,EAAeC,IAAI,kCAAkC","file":"scripts/app.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["scripts/app.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","_main","_main2","_v1docs","_v1docs2","angular","component","config","$stateProvider","$urlRouterProvider","state","name","url","template","otherwise","_angularjsDropdownMultiselect","_angularjsDropdownMultiselect2","directive","$compile","scope","element","attrs","dmDropdownStaticInclude","contents","html","dropdownMultiselectDirective","restrict","selectedModel","options","extraSettings","events","searchFilter","translationTexts","disabled","transclude","toggleDropdown","controller","templateUrl","Object","defineProperty","value","contains","collection","target","containsTarget","some","object","dropdownMultiselectController","$scope","$element","$filter","$document","focusFirstOption","setTimeout","elementToFocus","querySelector","isDefined","focus","open","close","settings","keyboardControls","selectionLimit","enableSearch","checkboxClick","$event","option","setSelectedItem","stopImmediatePropagation","input","clearSearchOnClose","externalEvents","onClose","selectCurrentGroup","currentGroup","splice","length","forEach","item","groupBy","onSelectionChanged","getGroupLabel","groupValue","groupByTextProvider","textWidth","text","$btn","find","canvas","document","createElement","ctx","getContext","font","css","originalFont","fillStyle","measureText","width","getButtonText","dynamicTitle","smartButtonMaxItems","paddingWidth","borderWidth","dropdownIconWidth","widthLimit","offsetWidth","itemsText","optionItem","isChecked","displayText","getPropertyForObject","displayProp","converterResponse","smartButtonTextConverter","push","slice","result","join","index","totalSelected","texts","buttonDefaultText","showAllSelectedText","allSelectedText","dynamicButtonTextSuffix","property","prototype","hasOwnProperty","undefined","selectAll","deselectAll","onSelectAll","searchResult","getFilter","selectedGroup","dontSendEvent","arguments","onDeselectAll","dontRemove","fireSelectionChange","exists","indexOf","onItemDeselect","closeOnDeselect","onItemSelect","closeOnSelect","onMaxSelectionReached","keyDownLink","event","sourceScope","nextOption","parent","parentNode","keyCode","preventDefault","previousElementSibling","nextElementSibling","keyDownSearchDefault","keyDownSearch","filter","searchField","toggleSearch","stopPropagation","keyDownToggleSearch","orderFunction","object1","object2","isUndefined","type","v1","v2","selectedToTop","$dropdownTrigger","children","noop","onInitDone","scrollable","scrollableHeight","closeOnBlur","showCheckAll","showUncheckAll","showEnableSearchButton","buttonClasses","checkBoxes","styleActive","checkAll","uncheckAll","selectionCount","selectionOf","searchPlaceholder","disableSearch","selectGroup","extend","on","e","parentElement","parentFound","className","split","$apply","$inject","mainComponent","_classCallCheck","instance","Constructor","TypeError","MainController","$log","this","testing","testmodel","testdata","testsettings","externalIdProp","skip","testevents","debug","example1model","example1data","label","example2model","example2data","example2settings","example5model","example5data","example5settings","example5customTexts","example6data","example6model","example6settings","example7model","example7data","example7settings","customFilter","example8model","example8data","example8settings","example9model","example9data","example9settings","example10model","example10data","example10settings","example12model","example12data","example12settings","example11model","example11data","gender","example11settings","selectByGroupModel","selectByGroupData","selectByGroupSettings","selectByGroups","example13model","example13data","example13settings","itemText","example14model","example14data","example14settings","example15model","example15data","example15settings","example16model","example16data","example16settings","example17model","example17data","example17settings","example18model","example18data","example18settings","example19model","example19data","example19settings","example20model","example20data","age","example20settings","example21model","example21data","example21settings","searchSelectAllModel","searchSelectAllData","searchSelectAllSettings","disabledModel","disabledData","selectedToTopModel","selectedToTopData","selectedToTopSettings","stringModel","stringData","stringSettings","transclusionModel","transclusionData","transclusionSettings","v1Component","run","$templateCache","put"],"mappings":"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","file":"scripts/app.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/maps/scripts/vendor.js.map b/docs/maps/scripts/vendor.js.map index bf9ed38a..426a5cfe 100644 --- a/docs/maps/scripts/vendor.js.map +++ b/docs/maps/scripts/vendor.js.map @@ -1 +1 @@ -{"version":3,"sources":["scripts/vendor.js"],"names":["global","factory","module","exports","document","w","Error","window","this","noGlobal","DOMEval","code","doc","script","createElement","text","head","appendChild","parentNode","removeChild","isArrayLike","obj","length","type","jQuery","isWindow","nodeName","elem","name","toLowerCase","winnow","elements","qualifier","not","isFunction","grep","i","call","nodeType","indexOf","risSimple","test","filter","sibling","cur","dir","createOptions","options","object","each","match","rnothtmlwhite","_","flag","Identity","v","Thrower","ex","adoptValue","value","resolve","reject","noValue","method","promise","done","fail","then","apply","undefined","slice","completed","removeEventListener","ready","Data","expando","uid","getData","data","rbrace","JSON","parse","dataAttr","key","replace","rmultiDash","getAttribute","e","dataUser","set","adjustCSS","prop","valueParts","tween","adjusted","scale","maxIterations","currentValue","css","initial","unit","cssNumber","initialInUnit","rcssNum","exec","style","start","end","getDefaultDisplay","temp","ownerDocument","display","defaultDisplayMap","body","showHide","show","values","index","dataPriv","get","isHiddenWithinTree","getAll","context","tag","ret","getElementsByTagName","querySelectorAll","merge","setGlobalEval","elems","refElements","l","buildFragment","scripts","selection","ignored","tmp","wrap","contains","j","fragment","createDocumentFragment","nodes","rhtml","rtagName","wrapMap","_default","innerHTML","htmlPrefilter","lastChild","childNodes","firstChild","textContent","push","createTextNode","inArray","rscriptType","returnTrue","returnFalse","safeActiveElement","activeElement","err","on","types","selector","fn","one","origFn","event","off","arguments","guid","add","manipulationTarget","content","disableScript","restoreScript","rscriptTypeMasked","removeAttribute","cloneCopyEvent","src","dest","pdataOld","pdataCur","udataOld","udataCur","events","hasData","access","handle","extend","fixInput","rcheckableType","checked","defaultValue","domManip","collection","args","callback","concat","first","hasScripts","node","iNoClone","support","checkClone","rchecked","self","eq","html","map","clone","_evalUrl","rcleanScript","remove","keepData","cleanData","curCSS","computed","width","minWidth","maxWidth","getStyles","getPropertyValue","pixelMarginRight","rnumnonpx","rmargin","addGetHookIf","conditionFn","hookFn","vendorPropName","emptyStyle","capName","toUpperCase","cssPrefixes","finalPropName","cssProps","setPositiveNumber","subtract","matches","Math","max","augmentWidthOrHeight","extra","isBorderBox","styles","val","cssExpand","getWidthOrHeight","valueIsBorderBox","boxSizingReliable","parseFloat","Tween","easing","prototype","init","schedule","inProgress","hidden","requestAnimationFrame","setTimeout","fx","interval","tick","createFxNow","fxNow","now","genFx","includeWidth","which","attrs","height","opacity","createTween","animation","Animation","tweeners","defaultPrefilter","props","opts","toggle","hooks","oldfire","propTween","restoreDisplay","isBox","anim","orig","dataShow","queue","_queueHooks","unqueued","empty","fire","always","rfxtypes","isEmptyObject","overflow","overflowX","overflowY","propFilter","specialEasing","camelCase","Array","isArray","cssHooks","expand","properties","result","stopped","prefilters","deferred","Deferred","currentTime","remaining","startTime","duration","percent","tweens","run","notifyWith","resolveWith","originalProperties","originalOptions","stop","gotoEnd","rejectWith","proxy","progress","complete","timer","stripAndCollapse","tokens","join","getClass","buildParams","prefix","traditional","rbracket","addToPrefiltersOrTransports","structure","dataTypeExpression","func","dataType","dataTypes","unshift","inspectPrefiltersOrTransports","jqXHR","inspect","selected","inspected","prefilterOrFactory","dataTypeOrTransport","seekingTransport","transports","ajaxExtend","target","deep","flatOptions","ajaxSettings","ajaxHandleResponses","s","responses","ct","finalDataType","firstDataType","contents","shift","mimeType","getResponseHeader","converters","ajaxConvert","response","isSuccess","conv2","current","conv","prev","responseFields","dataFilter","split","state","error","arr","getProto","Object","getPrototypeOf","class2type","toString","hasOwn","hasOwnProperty","fnToString","ObjectFunctionString","version","rtrim","rmsPrefix","rdashAlpha","fcamelCase","all","letter","jquery","constructor","toArray","num","pushStack","prevObject","last","len","sort","splice","copy","copyIsArray","isPlainObject","random","isReady","msg","noop","isNumeric","isNaN","proto","Ctor","globalEval","string","trim","makeArray","results","second","invert","callbackInverse","callbackExpect","arg","Date","Symbol","iterator","Sizzle","seed","m","nid","groups","newSelector","newContext","preferredDoc","setDocument","documentIsHTML","rquickExpr","getElementById","id","getElementsByClassName","qsa","compilerCache","rbuggyQSA","rcssescape","fcssescape","setAttribute","tokenize","toSelector","rsibling","testContext","qsaError","select","createCache","cache","keys","Expr","cacheLength","markFunction","assert","el","addHandle","handler","attrHandle","siblingCheck","a","b","diff","sourceIndex","nextSibling","createInputPseudo","createButtonPseudo","createDisabledPseudo","disabled","isDisabled","disabledAncestor","createPositionalPseudo","argument","matchIndexes","setFilters","addCombinator","matcher","combinator","base","skip","next","checkNonElements","doneName","xml","oldCache","uniqueCache","outerCache","newCache","dirruns","uniqueID","elementMatcher","matchers","multipleContexts","contexts","condense","unmatched","newUnmatched","mapped","setMatcher","preFilter","postFilter","postFinder","postSelector","preMap","postMap","preexisting","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","relative","implicitRelative","matchContext","matchAnyContext","outermostContext","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","find","dirrunsUnique","pop","uniqueSort","getText","isXML","compile","sortInput","hasDuplicate","docElem","rbuggyMatches","classCache","tokenCache","sortOrder","push_native","list","booleans","whitespace","identifier","attributes","pseudos","rwhitespace","RegExp","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","runescape","funescape","escaped","escapedWhitespace","high","String","fromCharCode","ch","asCodePoint","charCodeAt","unloadHandler","els","documentElement","hasCompare","subWindow","defaultView","top","addEventListener","attachEvent","className","createComment","getById","getElementsByName","attrId","getAttributeNode","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","expr","attr","specified","escape","sel","duplicates","detectDuplicates","sortStable","nodeValue","selectors","createPseudo",">"," ","+","~","excess","unquoted","nodeNameSelector","pattern","operator","check","what","simple","forward","ofType","nodeIndex","parent","useCache","pseudo","idx","matched","has","innerText","lang","elemLang","hash","location","root","focus","hasFocus","href","tabIndex","enabled","selectedIndex","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","soFar","preFilters","cached","token","compiled","unique","isXMLDoc","escapeSelector","until","truncate","is","siblings","n","rneedsContext","rsingleTag","rootjQuery","parseHTML","rparentsprev","guaranteedUnique","children","targets","closest","prevAll","addBack","parents","parentsUntil","nextAll","nextUntil","prevUntil","contentDocument","reverse","Callbacks","firing","memory","fired","locked","firingIndex","once","stopOnFalse","disable","lock","fireWith","tuples","catch","pipe","fns","newDefer","tuple","returned","notify","onFulfilled","onRejected","onProgress","depth","special","that","mightThrow","maxDepth","TypeError","process","exceptionHook","stackTrace","getStackHook","stateString","when","singleValue","resolveContexts","resolveValues","master","updateFunc","rerrorNames","stack","console","warn","message","readyException","readyList","readyWait","wait","readyState","doScroll","chainable","emptyGet","raw","bulk","acceptData","owner","defineProperty","configurable","removeData","_data","_removeData","dequeue","startLength","setter","clearQueue","count","defer","pnum","source","swap","old","hide","option","thead","col","tr","td","optgroup","tbody","tfoot","colgroup","caption","th","div","cloneNode","noCloneChecked","rkeyEvent","rmouseEvent","rtypenamespace","handleObjIn","eventHandle","t","handleObj","handlers","namespaces","origType","elemData","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","nativeEvent","handlerQueue","fix","delegateTarget","preDispatch","isPropagationStopped","currentTarget","isImmediatePropagationStopped","rnamespace","preventDefault","stopPropagation","postDispatch","matchedHandlers","matchedSelectors","addProp","hook","Event","enumerable","originalEvent","writable","load","noBubble","trigger","blur","click","beforeunload","returnValue","isDefaultPrevented","defaultPrevented","relatedTarget","timeStamp","isSimulated","stopImmediatePropagation","altKey","bubbles","cancelable","changedTouches","ctrlKey","detail","eventPhase","metaKey","pageX","pageY","shiftKey","view","char","charCode","keyCode","buttons","clientX","clientY","offsetX","offsetY","pointerId","pointerType","screenX","screenY","targetTouches","toElement","touches","mouseenter","mouseleave","pointerenter","pointerleave","related","rxhtmlTag","rnoInnerhtml","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","detach","append","prepend","insertBefore","before","after","replaceWith","replaceChild","appendTo","prependTo","insertAfter","replaceAll","original","insert","opener","getComputedStyle","computeStyleTests","cssText","container","divStyle","pixelPositionVal","reliableMarginLeftVal","marginLeft","boxSizingReliableVal","marginRight","pixelMarginRightVal","backgroundClip","clearCloneStyle","pixelPosition","reliableMarginLeft","rdisplayswap","rcustomProp","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","animationIterationCount","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","float","origName","isCustomProp","setProperty","isFinite","getClientRects","getBoundingClientRect","left","margin","padding","border","suffix","expanded","parts","propHooks","eased","pos","step","scrollTop","scrollLeft","linear","p","swing","cos","PI","rrun","*","tweener","prefilter","speed","opt","speeds","fadeTo","to","animate","optall","doAnimation","finish","stopQueue","timers","cssFn","slideDown","slideUp","slideToggle","fadeIn","fadeOut","fadeToggle","slow","fast","delay","time","timeout","clearTimeout","checkOn","optSelected","radioValue","boolHook","removeAttr","nType","attrHooks","attrNames","getter","lowercaseName","rfocusable","rclickable","removeProp","propFix","tabindex","parseInt","for","class","addClass","classes","curValue","clazz","finalValue","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","valHooks","optionSet","rfocusMorph","onlyHandlers","bubbleType","ontype","eventPath","isTrigger","parentWindow","simulate","triggerHandler","hover","fnOver","fnOut","focusin","attaches","nonce","rquery","parseXML","DOMParser","parseFromString","rCRLF","rsubmitterTypes","rsubmittable","param","valueOrFunction","encodeURIComponent","serialize","serializeArray","r20","rhash","rantiCache","rheaders","rlocalProtocol","rnoContent","rprotocol","allTypes","originAnchor","active","lastModified","etag","url","isLocal","protocol","processData","async","contentType","accepts","json","* text","text html","text json","text xml","ajaxSetup","settings","ajaxPrefilter","ajaxTransport","ajax","status","nativeStatusText","headers","success","modified","statusText","timeoutTimer","transport","responseHeadersString","ifModified","cacheURL","callbackContext","statusCode","fireGlobals","globalEventContext","completeDeferred","responseHeaders","urlAnchor","uncached","requestHeaders","requestHeadersNames","strAbort","getAllResponseHeaders","setRequestHeader","overrideMimeType","abort","finalText","crossDomain","host","hasContent","beforeSend","send","getJSON","getScript","throws","wrapAll","firstElementChild","wrapInner","unwrap","visible","offsetWidth","offsetHeight","xhr","XMLHttpRequest","xhrSuccessStatus","0","1223","xhrSupported","cors","errorCallback","open","username","xhrFields","onload","onerror","onabort","onreadystatechange","responseType","responseText","binary","text script","charset","scriptCharset","evt","oldCallbacks","rjsonp","jsonp","jsonpCallback","originalSettings","callbackName","overwritten","responseContainer","jsonProp","createHTMLDocument","implementation","keepScripts","parsed","params","animated","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","using","rect","win","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","parentOffset","scrollTo","Height","Width","","defaultExtra","funcName","bind","unbind","delegate","undelegate","holdReady","hold","parseJSON","define","amd","_jQuery","_$","$","noConflict","minErr","ErrorConstructor","paramPrefix","SKIP_INDEXES","templateArgs","template","shiftedIndex","toDebugString","isString","jqLite","isNumber","item","forEach","isPrimitive","isBlankObject","forEachSorted","reverseParams","iteratorFn","nextUid","setHashKey","h","$$hashKey","baseExtend","dst","objs","ii","isObject","jj","isDate","valueOf","isRegExp","isElement","toInt","str","inherit","create","identity","valueFn","hasCustomToString","isUndefined","isDefined","isScope","$evalAsync","$watch","isFile","isFormData","isBlob","isBoolean","isPromiseLike","isTypedArray","TYPED_ARRAY_REGEXP","isArrayBuffer","makeMap","items","nodeName_","element","lowercase","arrayRemove","array","destination","copyRecurse","copyElement","stackSource","stackDest","ngMinErr","needsRecurse","copyType","buffer","byteOffset","copied","ArrayBuffer","byteLength","Uint8Array","re","lastIndex","equals","o1","o2","keySet","t1","t2","getTime","createMap","charAt","array1","array2","sliceArgs","startIndex","curryArgs","toJsonReplacer","toJson","pretty","stringify","fromJson","timezoneToOffset","timezone","fallback","ALL_COLONS","requestedTimezoneOffset","isNumberNaN","addDateMinutes","date","minutes","setMinutes","getMinutes","convertTimezoneToLocal","dateTimezoneOffset","getTimezoneOffset","timezoneOffset","startingTag","elemHtml","NODE_TYPE_TEXT","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","splitPoint","substring","toKeyValue","arrayValue","encodeUriQuery","encodeUriSegment","pctEncodeSpaces","getNgAttribute","ngAttr","ngAttrPrefixes","allowAutoBootstrap","currentScript","link","origin","angularInit","bootstrap","appElement","config","hasAttribute","candidate","querySelector","isAutoBootstrapAllowed","strictDi","modules","defaultConfig","doBootstrap","injector","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","scope","$apply","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","angular","resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","reload","getTestability","rootElement","snake_case","separator","SNAKE_CASE_REGEXP","bindJQuery","originalCleanData","bindJQueryFired","jqName","jq","JQLitePrototype","isolateScope","controller","inheritedData","$destroy","JQLite","assertArg","reason","assertArgFn","acceptArrayAnnotation","assertNotHasOwnProperty","path","bindFnToScope","lastInstance","getBlockNodes","blockNodes","endNode","setupModuleLoader","ensure","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","insertMethod","invokeQueue","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","decorator","directive","component","block","shallowCopy","serializeObject","seen","publishExternalAPI","uppercase","callbacks","$$counter","$$csp","csp","angularModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","htmlAnchorDirective","inputDirective","textarea","form","formDirective","scriptDirective","selectDirective","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$animateCss","$CoreAnimateCssProvider","$$animateJs","$$CoreAnimateJsProvider","$$animateQueue","$$CoreAnimateQueueProvider","$$AnimateRunner","$$AnimateRunnerFactoryProvider","$$animateAsyncRun","$$AnimateAsyncRunFactoryProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$$forceReflow","$$ForceReflowProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpParamSerializer","$HttpParamSerializerProvider","$httpParamSerializerJQLike","$HttpParamSerializerJQLikeProvider","$httpBackend","$HttpBackendProvider","$xhrFactory","$xhrFactoryProvider","$jsonpCallbacks","$jsonpCallbacksProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$jqLite","$$jqLiteProvider","$$HashMap","$$HashMapProvider","$$cookieReader","$$CookieReaderProvider","jqNextId","jqId","SPECIAL_CHARS_REGEXP","MOZ_HACK_REGEXP","jqLiteIsTextNode","HTML_REGEXP","jqLiteAcceptsData","NODE_TYPE_ELEMENT","NODE_TYPE_DOCUMENT","jqLiteHasData","jqCache","ng339","jqLiteCleanData","jqLiteRemoveData","jqLiteBuildFragment","TAG_NAME_REGEXP","XHTML_TAG_REGEXP","jqLiteParseHTML","SINGLE_TAG_REGEXP","jqLiteWrapNode","wrapper","argIsString","jqLiteMinErr","jqLiteAddNodes","jqLiteClone","jqLiteDealoc","onlyDescendants","descendants","jqLiteOff","unsupported","expandoStore","jqLiteExpandoStore","removeHandler","listenerFns","removeEventListenerFn","MOUSE_EVENT_MAP","expandoId","createIfNecessary","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","jqLiteRemoveClass","cssClasses","cssClass","jqLiteAddClass","existingClasses","jqLiteController","jqLiteInheritedData","names","NODE_TYPE_DOCUMENT_FRAGMENT","jqLiteEmpty","jqLiteRemove","jqLiteDocumentLoaded","action","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","getAliasedAttrName","ALIASED_ATTR","createEventHandler","eventHandler","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","handlerWrapper","specialHandlerWrapper","defaultHandlerWrapper","specialMouseHandlerWrapper","jqLiteContains","$get","hashKey","nextUidFn","objType","HashMap","isolatedUid","put","stringifyFn","Function","extractArgs","fnText","STRIP_COMMENTS","ARROW_ARG","FN_ARGS","anonFn","annotate","$inject","argDecl","FN_ARG_SPLIT","FN_ARG","underscore","modulesToLoad","supportObject","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","instanceInjector","factoryFn","enforce","$injector","instanceCache","serviceName","decorFn","origProvider","orig$get","origInstance","$delegate","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","createInternalInjector","getService","caller","INSTANTIATING","injectionArgs","locals","$$annotate","isClass","msie","Type","ctor","protoInstanceInjector","autoScrollingEnabled","disableAutoScrolling","getFirstAnchor","some","getYOffset","scroll","yOffset","bottom","scrollIntoView","elemTop","scrollBy","elm","newVal","oldVal","mergeClasses","extractElementNode","ELEMENT_NODE","splitClasses","klass","prepareAnimateOptions","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","getHash","substr","cacheStateAndFireUrlChange","pendingLocation","cacheState","fireUrlChange","cachedState","getCurrentState","lastCachedState","lastBrowserUrl","lastHistoryState","urlChangeListeners","listener","history","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","baseElement","sameState","sameBase","stripHash","urlChangeInit","onUrlChange","$$applicationDestroyed","$$checkUrlChange","baseHref","timeoutId","cancel","deferId","cacheFactory","cacheId","refresh","entry","freshEnd","staleEnd","nextEntry","prevEntry","caches","size","stats","capacity","Number","MAX_VALUE","lruHash","lruEntry","removeAll","destroy","info","UNINITIALIZED_VALUE","$$sanitizeUriProvider","parseIsolateBindings","directiveName","isController","LOCAL_REGEXP","bindings","definition","scopeName","bindingCache","$compileMinErr","mode","optional","attrName","parseDirectiveBindings","bindToController","assertValidDirectiveName","getDirectiveRequire","require","REQUIRE_PREFIX_REGEXP","getDirectiveRestrict","restrict","hasDirectives","Suffix","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","EVENT_HANDLER_ATTR_REGEXP","registerDirective","directiveFactory","directives","priority","makeInjectable","tElement","tAttrs","$element","$attrs","templateUrl","ddo","controllerAs","identifierForController","transclude","aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","preAssignBindingsEnabled","TTL","onChangesTtl","commentDirectivesEnabledConfig","commentDirectivesEnabled","cssClassDirectivesEnabledConfig","cssClassDirectivesEnabled","flushOnChangesQueue","onChangesQueue","errors","Attributes","attributesToCopy","$attr","$$element","setSpecialAttr","specialAttrHolder","attribute","removeNamedItem","setNamedItem","safeAddClass","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","NOT_EMPTY","domNode","compositeLinkFn","compileNodes","$$addScopeClass","cloneConnectFn","needsNewScope","$parent","$new","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","detectNamespaceForChildElements","$linkNode","wrapTemplate","controllerName","instance","$$addScopeInfo","parentElement","nodeList","$rootElement","nodeLinkFn","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","nodeListLength","linkFns","transcludeOnThisElement","createBoundTranscludeFn","templateOnThisElement","linkFnFound","collectDirectives","applyDirectivesToNode","terminal","previousBoundTranscludeFn","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","boundSlots","$$slots","slotName","attrsMap","addDirective","directiveNormalize","nName","ngAttrName","isNgAttr","nAttrs","attrStartName","attrEndName","NG_ATTR_BINDING","PREFIX_REGEXP","multiElementMatch","MULTI_ELEMENT_DIR_RE","directiveIsMultiElement","addAttrInterpolateDirective","animVal","addTextInterpolateDirective","NODE_TYPE_COMMENT","collectCommentDirectives","byPriority","groupScan","attrStart","attrEnd","groupElementsLinkFnWrapper","linkFn","compilationGenerator","eager","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","elementControllers","scopeToChild","slotTranscludeFn","controllerScope","scopeBindingInfo","newScopeDirective","isSlotFilled","controllerDirectives","setupControllers","templateDirective","$$originalDirective","$$isolateBindings","initializeDirectiveBindings","removeWatches","$on","controllerDirective","$$bindings","bindingInfo","controllerResult","getControllers","controllerInstance","$onChanges","initialChanges","$onInit","$doCheck","$onDestroy","invokeLinkFn","$postLink","$template","directiveValue","terminalPriority","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","replaceDirective","childTranscludeFn","didScanForMultipleTransclusion","mightHaveMultipleTransclusionError","$$start","$$end","assertNoDuplicate","$$tlb","candidateDirective","scanningIndex","$$createComment","$$parentNode","slots","slotMap","filledSlots","elementSelector","filled","$$newScope","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectiveScope","mergeTemplateAttributes","compileTemplateUrl","inheritType","dataName","property","controllerKey","$scope","$transclude","newScope","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","linkQueue","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","ignoreChildLinkFn","previousDirective","wrapModuleNameIfDefined","moduleName","interpolateFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","$$addBindingInfo","expressions","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","trustedContext","mustHaveExpression","allOrNothing","$$observers","newValue","$$inter","$$scope","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","annotation","recordChanges","previousValue","$$postDigest","changes","triggerOnChangesHook","SimpleChange","removeWatchCollection","lastValue","parentGet","parentSet","removeWatch","$observe","_UNINITIALIZED_VALUE","literal","assign","parentValueWatch","parentValue","$stateful","$watchCollection","deepWatch","initialValue","SIMPLE_ATTR_NAME","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","comment","previous","str1","str2","tokens1","tokens2","outer","jqNodes","ident","CNTRL_REG","globals","register","allowGlobals","addIdentifier","expression","later","$controllerMinErr","controllerPrototype","exception","cause","serializeValue","toISOString","toSerialize","topLevel","defaultHttpResponseTransform","tempData","JSON_PROTECTION_PREFIX","APPLICATION_JSON","isJsonLike","jsonStart","JSON_START","JSON_ENDS","parseHeaders","fillInParsed","line","headerVal","headerKey","headersGetter","headersObj","transformData","defaults","transformResponse","transformRequest","d","common","Accept","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","paramSerializer","useApplyAsync","useLegacyPromise","useLegacyPromiseExtensions","interceptorFactories","interceptors","requestConfig","chainInterceptors","thenFn","rejectFn","executeHeaderFns","headerContent","processedHeaders","headerFn","mergeHeaders","defHeaderName","lowercaseDefHeaderName","reqHeaderName","defHeaders","reqHeaders","defaultHeadersIteration","serverRequest","reqData","withCredentials","sendReq","resp","requestInterceptors","responseInterceptors","reversedInterceptors","interceptor","request","requestError","responseError","$httpMinErrLegacyFn","createShortMethods","createShortMethodsWithData","createApplyHandlers","eventHandlers","applyHandlers","callEventHandler","$applyAsync","$$phase","headersString","resolveHttpPromise","resolvePromise","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","defaultCache","xsrfValue","urlIsSameOrigin","uploadEventHandlers","serializedParams","interceptorFactory","createHttpBackend","createXhr","$browserDefer","rawDocument","jsonpReq","callbackPath","wasCalled","addEventListenerFn","timeoutRequest","jsonpDone","completeRequest","createCallback","getResponse","removeCallback","urlResolve","ontimeout","upload","unescapeText","escapedStartRegexp","escapedEndRegexp","constantWatchDelegate","objectEquality","constantInterp","unwatch","parseStringifyInterceptor","getValue","$interpolateMinErr","interr","unescapedText","exp","$$watchDelegate","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","endSymbolLength","throwNoconcat","compute","getTrusted","$watchGroup","oldValues","currValue","invokeApply","hasParams","iteration","setInterval","clearInterval","skipApply","$$intervalId","intervals","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","DOUBLE_SLASH_REGEX","$locationMinErr","prefixed","$$path","pathname","$$search","search","$$hash","startsWith","stripBaseUrl","trimEmptyHash","stripFile","lastIndexOf","serverBase","LocationHtml5Url","appBase","appBaseNoFile","basePrefix","$$html5","$$parse","pathUrl","$$compose","$$url","$$absUrl","$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","removeWindowsDriveName","firstPathSegmentMatch","windowsFilePathExp","withoutHashUrl","withoutBaseUrl","LocationHashbangInHtml5Url","locationGetter","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","IGNORE_URI_REGEXP","absHref","initializing","newUrl","newState","$digest","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","formatError","sourceURL","consoleLog","logFn","log","hasApply","arg1","arg2","ensureSafeMemberName","fullExpression","$parseMinErr","getStringValue","ensureSafeObject","ensureSafeFunction","CALL","APPLY","BIND","ensureSafeAssignContext","ARRAY_CTOR","BOOLEAN_CTOR","FUNCTION_CTOR","NUMBER_CTOR","OBJECT_CTOR","STRING_CTOR","ARRAY_CTOR_PROTO","BOOLEAN_CTOR_PROTO","FUNCTION_CTOR_PROTO","NUMBER_CTOR_PROTO","OBJECT_CTOR_PROTO","STRING_CTOR_PROTO","ifDefined","plusFn","r","isStateless","filterName","findConstantAndWatchExpressions","ast","allConstants","argsToWatch","isStatelessFilter","AST","Program","Literal","toWatch","UnaryExpression","BinaryExpression","right","LogicalExpression","ConditionalExpression","alternate","consequent","Identifier","MemberExpression","CallExpression","callee","AssignmentExpression","ArrayExpression","ObjectExpression","ThisExpression","LocalsExpression","getInputs","lastExpression","isAssignable","assignableAST","NGValueParameter","isLiteral","isConstant","ASTCompiler","astBuilder","ASTInterpreter","isPossiblyDangerousMemberName","getValueOf","objectValueOf","identStart","identContinue","cacheDefault","cacheExpensive","literals","true","false","null","addLiteral","literalName","literalValue","setIdentifierFns","identifierStart","identifierContinue","interceptorFn","expensiveChecks","parsedExpression","oneTime","cacheKey","runningChecksEnabled","parseOptions","$parseOptionsExpensive","$parseOptions","lexer","Lexer","parser","Parser","oneTimeLiteralWatchDelegate","oneTimeWatchDelegate","inputs","inputsWatchDelegate","expensiveChecksInterceptor","addInterceptor","expensiveCheckFn","expensiveCheckOldValue","expressionInputDirtyCheck","oldValueOfValue","prettyPrintExpression","lastResult","inputExpressions","oldInputValueOf","newInputValue","oldInputValueOfValues","oldInputValues","changed","isAllDefined","allDefined","watchDelegate","useInputs","regularWatch","noUnsafeEval","isIdentifierStart","isIdentifierContinue","$$runningExpensiveChecks","qFactory","nextTick","exceptionHandler","simpleBind","Promise","processQueue","pending","processScheduled","scheduleProcessQueue","handleCallback","resolver","callbackOutput","errback","progressBack","promises","counter","race","$Q","resolveFn","$qMinErr","finally","$$reject","$$resolve","rejectPromise","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","supported","createChildScopeClass","ChildScope","$$watchers","$$nextSibling","$$childHead","$$childTail","$$listeners","$$listenerCount","$$watchersCount","$id","$$ChildScope","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","destroyChildScope","$event","currentScope","cleanUpScope","$$prevSibling","$root","Scope","beginPhase","phase","clearPhase","incrementWatchersCount","decrementListenerCount","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","child","watchExp","watcher","$$digestWatchIndex","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","unwatchFn","$watchCollectionInterceptor","_value","newLength","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","internalObject","$watchCollectionAction","initRun","veryOldValue","trackVeryOldValue","changeDetector","watch","watchers","dirty","logIdx","asyncTask","ttl","watchLog","asyncQueuePosition","asyncQueue","$eval","traverseScopesLoop","postDigestQueuePosition","postDigestQueue","eventName","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","uri","isImage","normalizedVal","regex","adjustMatcher","$sceMinErr","escapeForRegexp","adjustMatchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","matchUrl","isResourceUrlAllowedByPolicy","allowed","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","trustAs","Constructor","byType","maybeTrusted","trustedValueHolderBase","htmlSanitizer","CSS","URL","JS","sce","isEnabled","parseAs","enumValue","lName","vendorPrefix","eventSupport","isChromePackagedApp","chrome","app","runtime","hasHistoryPushState","pushState","android","navigator","userAgent","boxee","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","hasEvent","divElm","httpOptions","handleRequestFn","tpl","ignoreRequestError","handleError","$templateRequestMinErr","totalPendingRequests","getTrustedResourceUrl","transformer","testability","findBindings","opt_exactMatch","dataBinding","bindingName","findModels","prefixes","attributeEquals","getLocation","setLocation","whenStable","deferreds","$$timeoutId","urlParsingNode","requestUrl","originUrl","$$CookieReader","safeGetCookie","cookie","safeDecodeURIComponent","lastCookies","lastCookieString","cookieArray","currentCookieString","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","anyPropertyKey","predicateFn","matchAgainstAnyProp","expressionType","getTypeForFilter","createPredicateFn","shouldMatchPrimitives","actual","expected","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","NUMBER_FORMATS","amount","currencySymbol","fractionSize","CURRENCY_SYM","PATTERNS","maxFrac","formatNumber","GROUP_SEP","DECIMAL_SEP","number","numStr","digits","numberOfIntegerDigits","zeros","exponent","ZERO_CHAR","MAX_DIGITS","roundNumber","parsedNumber","minFrac","fractionLen","min","roundAt","digit","k","carry","reduceRight","groupSep","decimalSep","isInfinity","isZero","abs","formattedText","integerLen","decimals","reduce","lgSize","gSize","negPre","negSuf","posPre","posSuf","padNumber","negWrap","neg","dateGetter","dateStrGetter","shortForm","standAlone","propPrefix","timeZoneGetter","zone","paddedZone","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","getThursdayThisWeek","datetime","getFullYear","getMonth","getDate","weekGetter","firstThurs","thisThurs","round","ampmGetter","getHours","AMPMS","eraGetter","ERAS","longEraGetter","ERANAMES","jsonStringToDate","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","ms","format","DATETIME_FORMATS","NUMBER_STRING","DATE_FORMATS_SPLIT","DATE_FORMATS","spacing","limit","begin","Infinity","sliceFn","processPredicates","sortPredicates","predicate","descending","objectValue","getPredicateValue","defaultCompare","v1","v2","type1","type2","value1","value2","sortPredicate","reverseOrder","compareFn","getComparisonObject","tieBreaker","predicateValues","predicates","doComparison","compareValues","ngDirective","nullFormRenameControl","control","$name","FormController","controls","$error","$$success","$pending","$dirty","$pristine","$valid","$invalid","$submitted","$$parentForm","nullFormCtrl","$rollbackViewValue","$commitViewValue","$addControl","$$renameControl","newName","oldName","$removeControl","$setValidity","addSetValidityMethod","ctrl","unset","$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","$setSubmitted","stringBasedInputType","$formatters","$isEmpty","textInputType","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","PARTIAL_VALIDATION_TYPES","PARTIAL_VALIDATION_EVENTS","validity","VALIDITY_STATE_PROPERTY","origBadInput","badInput","origTypeMismatch","typeMismatch","$render","weekParser","isoWeek","existingDate","WEEK_REGEXP","week","hours","seconds","milliseconds","addDays","getSeconds","getMilliseconds","NaN","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","mm","ss","sss","part","createDateInputType","parseDate","isValidDate","parseObservedDateValue","badInputChecker","previousDate","$options","$$parserName","$parsers","parsedDate","ngModelMinErr","ngMin","minVal","$validators","$validate","ngMax","maxVal","nativeValidation","numberFormatterParser","NUMBER_REGEXP","parseNumberAttrVal","isNumberInteger","countDecimals","numString","decimalSymbolIndex","isValidForStep","viewValue","stepBase","decimalCount","multiplier","pow","numberInputType","rangeInputType","setInitialValueAndObserver","htmlAttrName","changeFn","minChange","$modelValue","supportsRange","elVal","maxChange","stepChange","stepVal","hasMinAttr","hasMaxAttr","hasStepAttr","originalRender","rangeUnderflow","rangeOverflow","modelValue","stepMismatch","urlInputType","URL_REGEXP","emailInputType","email","EMAIL_REGEXP","radioInputType","parseConstantExpr","parseFn","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","classDirective","arrayDifference","arrayClasses","addClasses","digestClassCounts","removeClasses","classCounts","classesToUpdate","updateClasses","ngClassWatchAction","$index","old$index","mod","setValidity","validationErrorKey","createAndSet","unsetAndCleanup","cachedToggleClass","PENDING_CLASS","toggleValidationCss","isObjectEmpty","combinedState","switchValue","isValid","VALID_CLASS","INVALID_CLASS","chromeHack","optionElement","REGEX_STRING_REGEXP","manualLowercase","manualUppercase","documentMode","rules","ngCspElement","ngCspAttribute","noInlineStyle","name_","NODE_TYPE_ATTRIBUTE","full","major","minor","dot","codeName","Node","lowercasedName","getNamedItem","$dv","multiple","nodeCount","addHandler","noEventListener","onFn","replaceNode","wrapNode","newElement","condition","classCondition","nextElementSibling","extraParameters","dummyEvent","eventFnsCopy","handlerArgs","arg3","$animateMinErr","NG_ANIMATE_CLASSNAME","postDigestElements","updateData","handleCSSClassChanges","existing","addRemoveClassesPostDigest","classesAdded","classesRemoved","pin","domOperation","from","runner","$$registeredAnimations","classNameFilter","$$classNameFilter","reservedRegex","domInsert","afterElement","afterNode","previousElementSibling","enter","move","leave","addclass","tempClasses","waitForTick","waitQueue","passed","AnimateRunner","setHost","rafTick","timeoutTick","_doneCallbacks","_tick","_state","INITIAL_STATE","DONE_PENDING_STATE","DONE_COMPLETE_STATE","chain","runners","getPromise","resolveHandler","rejectHandler","pause","resume","_resolve","initialOptions","applyAnimationContents","closed","$$prepared","cleanupStyles","isFirstChange","Content-Type","[","{","$httpMinErr","callbackId","called","callbackMap","PATH_MATCH","http","https","ftp","locationPrototype","paramValue","Location","OPERATORS","ESCAPE","f","'","\"","lex","readString","peek","readNumber","peekMultichar","readIdent","isWhitespace","ch2","ch3","op1","op2","op3","throwError","chars","codePointAt","isValidIdentifierStart","isValidIdentifierContinue","cp","cp1","cp2","isExpOperator","colStr","peekCh","quote","rawString","hex","rep","ExpressionStatement","Property","program","expressionStatement","expect","filterChain","assignment","ternary","logicalOR","consume","logicalAND","equality","relational","additive","multiplicative","unary","primary","arrayDeclaration","selfReferential","parseArguments","baseExpression","peekToken","kind","e1","e2","e3","e4","peekAhead","$locals","nextId","vars","own","assignable","stage","computing","recurse","return_","generateFunction","fnKey","intoId","watchId","fnString","USE","STRICT","filterPrefix","watchFns","varsPrefix","section","nameId","recursionFn","skipWatchIdCheck","if_","lazyAssign","computedMember","lazyRecurse","plus","getHasOwnProperty","nonComputedMember","addEnsureSafeObject","notNull","addEnsureSafeAssignContext","addEnsureSafeMemberName","addEnsureSafeFunction","member","SAFE_IDENTIFIER","UNSAFE_CHARACTERS","stringEscapeFn","stringEscapeRegex","c","rhs","lhs","unary+","unary-","unary!","binary+","binary-","binary*","binary/","binary%","binary===","binary!==","binary==","binary!=","binary<","binary>","binary<=","binary>=","binary&&","binary||","ternary?:","astCompiler","yy","y","MMMM","MMM","M","LLLL","H","hh","EEEE","EEE","Z","ww","G","GG","GGG","GGGG","xlinkHref","propName","defaultLinkFn","normalized","htmlAttr","formDirectiveFactory","isNgForm","getSetter","formElement","nameAttr","ctrls","handleFormSubmission","parentFormCtrl","DATE_REGEXP","DATETIMELOCAL_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","datetime-local","month","range","CONSTANT_VALUE_REGEXP","tplAttr","$compile","templateElement","ngBindHtmlGetter","ngBindHtmlWatch","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","previousElements","srcExp","onloadExp","autoScrollExp","autoscroll","previousElement","currentElement","changeCounter","cleanupLastIncludeContent","afterAnimation","thisChangeId","trimValues","UNTOUCHED_CLASS","TOUCHED_CLASS","EMPTY_CLASS","NOT_EMPTY_CLASS","NgModelController","$$rawModelValue","$asyncValidators","$untouched","$touched","parserValid","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","$$setOptions","getterSetter","invokeModelGetter","invokeModelSetter","$$$p","$$updateEmptyClasses","currentValidationRunId","$setTouched","$$lastCommittedViewValue","prevValid","prevModelValue","allowInvalid","$$runValidators","allValid","$$writeModelToScope","doneCallback","processParseErrors","errorKey","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","$$parseAndValidate","writeToModelIfNeeded","updateOnDefault","$$debounceViewValueCommit","debounce","debounceDelay","formatters","modelCtrl","formCtrl","updateOn","DEFAULT_REGEXP","ngOptionsMinErr","NG_OPTIONS_REGEXP","parseOptionsExpression","optionsExp","selectElement","Option","selectValue","label","group","getOptionValuesKeys","optionValues","optionValuesKeys","keyName","itemKey","valueName","selectAs","trackBy","selectAsFn","viewValueFn","trackByFn","getTrackByValueFn","getTrackByValue","getLocals","displayFn","groupByFn","disableWhenFn","valuesFn","getWatchables","watchedArray","optionValuesLength","disableWhen","getOptions","optionItems","selectValueMap","optionItem","getOptionFromViewValue","getViewValueFromOption","ngOptionsPostLink","addOptionElement","optionTemplate","updateOptionElement","updateOptions","selectCtrl","readValue","groupElementMap","providedEmptyOption","emptyOption","groupElement","optGroupTemplate","listFragment","ngModelCtrl","nextValue","isNotPrimitive","emptyOptionRendered","unknownOption","renderEmptyOption","removeEmptyOption","renderUnknownOption","removeUnknownOption","writeValue","selectedValues","selections","selectedOption","registerOption","optionScope","optionEl","BRACE","IS_WHEN","updateElementText","newText","lastCount","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","attributeName","tmpMatch","whenKey","countIsNaN","pluralCat","whenExpFn","NG_REMOVED","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","getBlockStart","getBlockEnd","ngRepeatEndComment","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","lastBlockMap","nextNode","collectionLength","trackById","trackByIdFn","collectionKeys","nextBlockOrder","previousNode","nextBlockMap","blockKey","NG_HIDE_CLASS","NG_HIDE_IN_PROGRESS_CLASS","newStyles","oldStyles","cases","ngSwitchController","watchExpr","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","selectedTransclude","caseElement","selectedScope","anchor","ngSwitchWhenSeparator","whenCase","ngTranscludeMinErr","fallbackLinkFn","ngTranscludeCloneAttachFn","useFallbackContent","ngTranscludeSlot","noopNgModelController","SelectController","optionsMap","unknownVal","hasOption","addOption","removeOption","optionAttrs","hasDynamicValueAttr","interpolateTextFn","selectPreLink","lastView","lastViewRef","selectPostLink","selectCtrlName","patternExp","intVal","getDecimals","getVF","opt_precision","PLURAL_CATEGORY","ZERO","ONE","TWO","FEW","MANY","OTHER","DAY","FIRSTDAYOFWEEK","MONTH","SHORTDAY","SHORTMONTH","STANDALONEMONTH","WEEKENDRANGE","fullDate","longDate","medium","mediumDate","mediumTime","short","shortDate","shortTime","minInt","localeID","vf","hljs","x","useBR","o","u","z","A","q","C","B","I","F","E","D","cI","bK","lR","bR","eW","eR","tE","iR","starts","Boolean","continuation","S","L","J","R","U","V","T","X","W","classPrefix","Y","N","sL","g","subLanguageMode","language","Q","P","cN","rB","eB","rE","eE","K","O","languages","second_best","tabReplace","createElementNS","aliases","highlight","highlightAuto","fixMarkup","highlightBlock","configure","initHighlighting","initHighlightingOnLoad","registerLanguage","getLanguage","IR","UIR","NR","CNR","BNR","RSR","BE","ASM","QSM","CLCM","CBLCLM","HCM","NM","CNM","BNM","REGEXP_MODE","TM","UTM","keyword","built_in","title","reserved","aggregate","special_functions","flow","stream","winutils","typename","command","_hljsOptions","setOptions","hljsCache","hljsService","_elm","_lang","_code","_hlCb","codeElm","setLanguage","highlightCallback","cb","res","_cacheKey","clear","release","glue","tElm","staticCode","iElm","iAttrs","onhighlight","newCode","oldCode","srcExpr","include","templateCachePromise","dfd","expandingExpr","scrollHeight","expandDone","expandedExpr","collapse","collapsingExpr","collapseDone","collapsedExpr","expanding","collapsing","collapsed","uibCollapse","shouldCollapse","closeOthers","accordionConfig","openGroup","isOpen","addGroup","groupScope","removeGroup","heading","panelClass","setHeading","accordionCtrl","openClass","toggleOpen","headingId","panelId","accordionGroupCtrl","getHeaderSelectors","uibAccordionTransclude","closeable","close","dismissOnTimeout","activeClass","toggleEvent","buttonConfig","buttonsCtrl","uncheckableExpr","uibUncheckable","uibBtnRadio","isActive","uncheckable","getTrueValue","getCheckboxValue","btnCheckboxTrue","getFalseValue","btnCheckboxFalse","clearBufferedTransitions","bufferedTransitions","setActive","slides","slide","goNext","direction","destroyed","currentIndex","$currentTransition","SLIDE_DIRECTION","currentIdx","getCurrentIndex","nextSlide","nextIndex","nextDirection","restartTimer","findSlideIndex","resetTimer","currentInterval","resetTransition","timerFn","isPlaying","addSlide","play","newIndex","noWrap","removeSlide","bufferedIndex","indexOfSlide","isPrevDisabled","isNextDisabled","noPause","noTransition","carouselCtrl","beforeAddClass","directionClass","removeClassFn","beforeRemoveClass","createParser","quoteIndex","inLiteral","formatCodeToRegex","toTimezone","fromTimezone","localeId","SPECIAL_CHARACTERS_REGEXP","parsers","formatter","_date","sign","_format","mapper","endStr","baseDate","tzOffset","fields","dt","datesetter","timesetter","ON_REGEXP","IS_REGEXP","linkedScopes","instances","exps","addForExp","removeScope","compareWithExp","expToData","watchFn","compareWithVal","newActivated","thisVal","onExp","lastActivated","removedScope","newWatchScope","onExpMatches","uibIsClass","expsStr","datepickerMode","formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","maxDate","maxMode","minDate","minMode","shortcutPropagation","showWeeks","yearColumns","yearRows","datepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","dateParser","setMode","datepickerOptions","watchListeners","modes","startingDay","refreshView","uniqueId","ngDisabled","dateObject","activeDate","activeDateId","ngModelCtrl_","initDate","render","selectedDt","_refreshView","activeDt","createDateObject","model","today","past","future","customClass","dateDisabled","arrays","years","months","toggleMode","13","32","33","34","35","36","37","38","39","40","focusElement","keydown","handleKeyDown","getDaysInMonth","DAYS_IN_MONTH","getISO8601WeekNumber","checkDate","setDate","setMonth","getDates","startDate","dates","firstDayOfMonth","difference","numDisplayedFromPreviousMonth","firstDate","days","secondary","labels","abbr","rows","weekNumbers","thursdayIndex","numWeeks","curWeek","date1","date2","_date1","_date2","getStartingYear","columns","yearpickerInit","datepickerCtrl","daypickerCtrl","monthpickerCtrl","SCROLLBAR_WIDTH","BODY_SCROLLBAR_WIDTH","OVERFLOW_REGEX","normal","PLACEMENT_REGEX","auto","vertical","BODY_REGEX","getRawNode","parseStyle","isStaticPositioned","scrollbarWidth","isBody","bodyElem","innerWidth","clientWidth","scrollElem","scrollbarPadding","elemStyle","paddingRight","paddingBottom","scrollParent","tagName","widthOverflow","scrollWidth","originalRight","heightOverflow","clientHeight","originalBottom","isScrollable","includeHidden","overflowRegex","includeSelf","documentEl","excludeStatic","spStyle","includeMagins","elemOffset","marginTop","elemBCR","viewportOffset","useDocument","includePadding","offsetBCR","offsetParentBCR","offsetParentStyle","paddingTop","paddingLeft","parsePlacement","placement","autoPlace","positionElements","hostElem","targetElem","appendToBody","targetWidth","targetHeight","hostElemPos","targetElemPos","targetElemStyle","adjustedSize","marginBottom","xOverflow","yOverflow","positionArrow","innerElem","isTooltip","arrowElem","arrowCss","borderProp","borderWidth","borderRadiusProp","borderRadius","altInputFormats","clearText","closeOnDateSelection","closeText","currentText","datepickerPopup","datepickerPopupTemplateUrl","datepickerTemplateUrl","html5Types","onOpenFocus","showButtonBar","$position","datepickerPopupConfig","$datepickerPopupLiteralWarning","parseDateString","dateFormat","documentClickBind","popup","$popup","dpContainsTarget","popupContainsTarget","inputKeydownBind","positionPopup","dpElement","popupPlacement","popupEl","datepickerEl","scrollParentEl","isHtml5DateInput","_ngModel_","datepickerAppendToBody","uibDatepickerPopup","newDateFormat","ng-model","ng-change","template-url","dateSelection","debounceTime","timeoutPromise","appendToOpenClass","openScope","dropdownScope","closeDropdown","keybindFilter","getAutoClose","toggleElement","getToggleElement","dropdownElement","getDropdownElement","focusToggleElement","isKeynavEnabled","focusDropdownEntry","dropdownConfig","uibDropdownService","templateScope","getIsOpen","setIsOpen","toggleInvoker","onToggle","keynavEnabled","dropdownAppendTo","appendToEl","dropdownAppendToBody","keyboardNav","dropdownMenu","autoClose","getElement","wasOpen","rightalign","appendOffset","openContainer","hasOpenClass","dropdownMenuTemplateUrl","tplContent","newEl","dropdownCtrl","dropdownNested","tplUrl","toggleDropdown","aria-haspopup","aria-expanded","createNew","removeTop","entries","hasKey","setResolver","invocables","resolves","resolveObj","resolveIter","$modalStack","modalInClass","NOW_CLOSING_EVENT","setIsAsync","modalOptions","backdropClass","windowClass","windowTopClass","modal","getTop","backdrop","dismiss","$isRendered","modalRenderDeferObj","animationPromise","modalRendered","inputWithAutofocus","modalAnimation","uibModalAnimationClass","$$multiMap","$$stackedMap","$uibPosition","isVisible","backdropIndex","topBackdropIndex","opened","openedWindows","topModalIndex","removeModalWindow","modalInstance","elementToReceiveFocus","modalWindow","appendToElement","previousTopOpenedModal","modalDomEl","removeAfterAnimate","modalScope","modalBodyClass","openedClass","OPENED_MODAL_CLASS","openedClasses","areAnyOpen","toggleTopWindowClass","closedDeferred","checkRemoveBackdrop","toggleSwitch","backdropDomEl","backdropScopeRef","backdropScope","domEl","afterAnimating","asyncDeferred","asyncPromise","keydownListener","keyboard","loadFocusElementList","focusChanged","isFocusInFirstItem","isModalFocused","focusLastFocusableElement","isFocusInLastItem","focusFirstFocusableElement","broadcastClosing","resultOrReason","closing","tabableSelector","newBackdropIndex","modalOpener","renderDeferred","currBackdropIndex","angularDomEl","windowTemplateUrl","window-class","window-top-class","$$uibDestructionScheduled","dismissAll","topModal","srcElement","modalDomE1","$modalProvider","$uibResolve","getTemplatePromise","$modal","promiseChain","getPromiseChain","resolveWithTemplate","templateAndResolvePromise","modalResultDeferred","modalOpenedDeferred","modalClosedDeferred","modalRenderDeferred","rendered","samePromise","tplAndVars","providedScope","$close","$dismiss","ctrlInstance","ctrlInstantiate","ctrlLocals","$resolve","$uibModalInstance","setNumPages","numPages","_watchers","itemsPerPage","totalPages","calculateTotalPages","updatePage","newTotal","oldTotal","ceil","totalItems","page","selectPage","clickAllowed","noPrevious","noNext","uibPaging","uibPagerConfig","align","previousText","nextText","paginationCtrl","uibPaginationConfig","makePage","getPages","currentPage","pages","startPage","endPage","isMaxSized","maxSize","rotate","pageLabel","forceEllipses","boundaryLinkNumbers","previousPageSet","secondPageLink","firstPageLink","nextPageSet","secondToLastPageLink","lastPageLink","$page","boundaryLinks","directionLinks","firstText","lastText","defaultOptions","placementClassPrefix","popupDelay","popupCloseDelay","useContentExp","triggerMap","outsideClick","none","globalOptions","setTriggers","triggers","keypressListener","openedTooltips","ttType","defaultTriggerShow","getTriggers","startSym","endSym","tElem","tooltipLinker","tooltipCtrl","toggleTooltipBind","ttScope","hideTooltipBind","showTooltipBind","hasEnableExp","cancelHide","prepareTooltip","showTimeout","cancelShow","hideTimeout","createTooltip","assignIsOpen","positionTooltip","positionTimeout","transitionTimeout","removeTooltip","tooltip","tooltipLinkedScope","prepObservers","unregisterObservers","contentParse","popupClass","lastPlacement","closeDelay","isOpenParse","observers","repositionScheduled","bodyHideTooltipBind","prepTriggers","unregisterTriggers","ttPosition","origScope","contentExp","appendToBodyVal","appendKey","tooltipTemplateTranscludeScope","parseAsResourceUrl","uibTooltipTemplateTransclude","tooltipAnimationClass","$uibTooltip","originScope","uibTitle","progressConfig","getMaxOrDefault","maxParam","bars","addBar","bar","transition","recalculatePercentage","totalPercentage","total","toFixed","removeBar","progressCtrl","stateOn","stateOff","enableReset","titles","ratingConfig","tmpTitles","ratingStates","buildTemplateObjects","states","getTitle","rate","readonly","newViewValue","onHover","onLeave","onKeydown","ratingCtrl","findTabIndex","tabs","oldIndex","previousIndex","previousSelected","tab","onDeselect","$selectedIndex","onSelect","addTab","newActiveIndex","removeTab","newActiveTabIndex","justified","tabsetCtrl","$transcludeFn","isTabHeading","uibTabContentTransclude","headingElement","hourStep","minuteStep","secondStep","showMeridian","showSeconds","meridians","readonlyInput","mousewheel","arrowkeys","showSpinners","timepickerConfig","getHoursFromTemplate","valid","meridian","getMinutesFromTemplate","getSecondsFromTemplate","pad","noPad","keyboardChange","makeValid","updateTemplate","invalidHours","invalidMinutes","invalidSeconds","padHours","addSecondsToSelected","addSeconds","addMinutes","newDate","modelIsEmpty","hoursInputEl","minutesInputEl","secondsInputEl","setupMousewheelEvents","setupArrowkeyEvents","setupInputEvents","noIncrementHours","incrementedSelected","noDecrementHours","decrementedSelected","noIncrementMinutes","noDecrementMinutes","noIncrementSeconds","noDecrementSeconds","noToggleMeridian","isScrollingUp","delta","wheelDelta","deltaY","incrementHours","decrementHours","incrementMinutes","decrementMinutes","incrementSeconds","decrementSeconds","updateHours","updateMinutes","updateSeconds","invalidate","setSeconds","toggleMeridian","uibTimepickerConfig","timepickerCtrl","TYPEAHEAD_REGEXP","itemName","viewMapper","modelMapper","originalScope","$$debounce","typeaheadParser","fireRecalculating","moveInProgress","debouncedRecalculate","recalculatePosition","HOT_KEYS","eventDebounceTime","minLength","typeaheadMinLength","waitTime","typeaheadWaitMs","isEditable","typeaheadEditable","isLoadingSetter","typeaheadLoading","isSelectEvent","typeaheadShouldSelect","vals","onSelectCallback","typeaheadOnSelect","isSelectOnBlur","typeaheadSelectOnBlur","isNoResultsSetter","typeaheadNoResults","inputFormatter","typeaheadInputFormatter","typeaheadAppendToBody","typeaheadAppendTo","focusFirst","typeaheadFocusFirst","selectOnExact","typeaheadSelectOnExact","isOpenSetter","typeaheadIsOpen","showHint","typeaheadShowHint","parsedModel","$setModelValue","parserResult","uibTypeahead","offDestroy","popupId","aria-autocomplete","aria-owns","inputsContainer","hintInputElem","border-color","box-shadow","background","color","vertical-align","background-color","popUpEl","move-in-progress","query","assign-is-open","typeaheadTemplateUrl","typeaheadPopupTemplateUrl","resetHint","resetMatches","activeIdx","getMatchId","inputIsExactMatch","inputValue","getMatchesAsync","onCurrentRequest","debounceUpdate","firstLabel","scheduleSearchWithTimeout","cancelPreviousTimeout","$item","$model","$label","typeaheadFocusOnSelect","shouldSelect","offsetTop","editable","dismissClickHandler","_modelCtrl","_ngModelOptions","candidateViewValue","emptyViewValue","popupTemplateUrl","isDropdownOpen","matchIdx","selectActive","selectMatch","tplEl","escapeRegexp","queryToEscape","containsHtml","matchItem","isSanitizePresent","trustAsHtml","$$uibCarouselCss","$$uibDatepickerCss","$$uibPositionCss","$$uibDatepickerpopupCss","$$uibTooltipCss","$$uibTimepickerCss","$$uibTypeaheadCss","ancestors","objectKeys","inheritParams","currentParams","newParams","$current","$to","parentParams","inherited","inheritList","equalForKeys","filterByKeys","filtered","pick","omit","silenceUncaughtInPromise","$Resolve","VISIT_IN_PROGRESS","VISIT_DONE","NOTHING","NO_DEPENDENCIES","NO_LOCALS","NO_PARENT","$$promises","$$values","study","visit","visited","cycle","plan","isResolve","invocableKeys","merged","$$inheritedValues","resolution","$$failure","invocable","onfailure","invocation","proceed","waitParams","dep","TemplateFactoryProvider","shouldUnsafelyUseHttp","TemplateFactory","fromConfig","fromString","fromUrl","templateProvider","fromProvider","UrlMatcher","parentMatcher","addParameter","paramNames","$$UMFP","Param","quoteRegExp","squash","surroundPattern","matchDetails","isSearch","segment","cfg","caseInsensitive","placeholder","searchPlaceholder","$$new","ParamSet","isOptional","sourceSearch","sourcePath","strict","$$paramNames","$UrlMatcherFactory","valToString","/","valFromString","~~","~2F","getDefaultConfig","isStrictMode","isCaseInsensitive","isInjectable","flushTypeQueue","typeQueue","$types","def","defaultSquashPolicy","enqueue","defaultTypes","encode","decode","int","capture","any","$$getDefaultValue","strictMode","isMatcher","definitionFn","unwrapShorthand","isShorthand","$$fn","getType","urlType","getArrayMode","arrayDefaults","arrayParamNomenclature","getSquashPolicy","getReplace","arrayMode","configuredKeys","defaultPolicy","$value","hasReplaceVal","$replace","replacement","$asArray","dynamic","$$parent","$$keys","ignore","paramset","paramValues","$$equals","paramValues1","paramValues2","equal","$$validates","rawVal","encoded","$UrlRouterProvider","$locationProvider","$urlMatcherFactory","regExpPrefix","interpolate","handleIfMatch","$match","appendBasePath","isHtml5","absolute","update","rule","handled","lastPushedUrl","otherwise","listen","interceptDeferred","sync","read","urlMatcher","$$avoidResync","validates","slash","redirect","handlerIsString","strategies","sticky","deferIntercept","$StateProvider","$urlRouterProvider","isRelative","stateName","findState","stateOrName","isStr","rel","pathLength","queueState","parentName","flushQueuedChildren","queued","registerState","stateBuilder","$delegates","abstractKey","$stateParams","$state","navigable","transitionTo","isGlob","doesStateMatchGlob","glob","globSegments","$view","$urlRouter","handleRedirect","TransitionAborted","retry","$retry","TransitionFailed","retryTransition","toParams","TransitionSuperseded","resolveState","paramsAreFiltered","resolveViews","viewsPromises","views","injectables","controllerProvider","injectLocals","$$controller","$$controllerAs","$$resolveAs","resolveAs","TransitionSupersededError","TransitionPrevented","go","fromParams","fromPath","toState","redirectResult","toPath","keep","toLocals","reloadState","ownParams","shouldSkipReload","resolved","entering","exiting","onExit","onEnter","acc","paramDef","includes","lossy","nav","nonSearchParamsEqual","fromAndToState","notSearchParam","nonQueryParamKeys","nonQueryParams","nonQueryParamSet","reloadOnSearch","compositeName","abstract","$ViewProvider","$templateFactory","$ViewScrollProvider","useAnchorScroll","$ViewDirective","$uiViewScroll","getRenderer","statics","$animator","cleanupLastView","previousEl","currentEl","$uiViewData","renderer","$$animLeave","updateView","firstTime","getUiViewName","previousLocals","latestLocals","animEnter","animLeave","viewAnimData","$animEnter","$animLeave","$ViewDirectiveFill","resolveData","uiView","uiViewCreatedBy","parseStateRef","ref","preparsed","paramExpr","stateContext","stateData","getTypeInfo","isSvg","isForm","isAnchor","clickable","clickHook","ignorePreventDefaultCount","defaultOpts","$StateRefDirective","uiSrefActive","uiSref","unlinkInfoFn","uiSrefOpts","$$addStateInfo","$StateRefDynamicDirective","runStateRefLink","uiState","uiStateParams","uiStateOpts","$StateRefActiveDirective","addState","stateParams","stateHash","createStateHash","stateInfo","activeClasses","anyMatch","exactMatch","activeEqClass","uiSrefActiveEq","deregister","$IsStateFilter","isFilter","$IncludedByStateFilter","includesFilter","searchParams","decodePathArray","reverseString","unquoteDashes","allReversed","paramName","parameters","nTotal","nPath","paramVal","encodeDashes","isPathParam","isDefaultValue","nextSegment","isFinalPathParam","$subPattern","sub","ArrayType","bindTo","arrayWrap","arrayUnwrap","falsey","arrayHandler","allTruthyMode","arrayEqualsHandler","val1","val2","$arrayMode","autoinject"],"mappings":"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","file":"scripts/vendor.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file +{"version":3,"sources":["scripts/vendor.js"],"names":["global","factory","module","exports","document","w","Error","window","this","noGlobal","DOMEval","code","doc","script","createElement","text","head","appendChild","parentNode","removeChild","isArrayLike","obj","length","type","jQuery","isWindow","nodeName","elem","name","toLowerCase","winnow","elements","qualifier","not","isFunction","grep","i","call","nodeType","indexOf","risSimple","test","filter","sibling","cur","dir","createOptions","options","object","each","match","rnothtmlwhite","_","flag","Identity","v","Thrower","ex","adoptValue","value","resolve","reject","noValue","method","promise","done","fail","then","apply","undefined","slice","completed","removeEventListener","ready","Data","expando","uid","getData","data","rbrace","JSON","parse","dataAttr","key","replace","rmultiDash","getAttribute","e","dataUser","set","adjustCSS","prop","valueParts","tween","adjusted","scale","maxIterations","currentValue","css","initial","unit","cssNumber","initialInUnit","rcssNum","exec","style","start","end","getDefaultDisplay","temp","ownerDocument","display","defaultDisplayMap","body","showHide","show","values","index","dataPriv","get","isHiddenWithinTree","getAll","context","tag","ret","getElementsByTagName","querySelectorAll","merge","setGlobalEval","elems","refElements","l","buildFragment","scripts","selection","ignored","tmp","wrap","contains","j","fragment","createDocumentFragment","nodes","rhtml","rtagName","wrapMap","_default","innerHTML","htmlPrefilter","lastChild","childNodes","firstChild","textContent","push","createTextNode","inArray","rscriptType","returnTrue","returnFalse","safeActiveElement","activeElement","err","on","types","selector","fn","one","origFn","event","off","arguments","guid","add","manipulationTarget","content","disableScript","restoreScript","rscriptTypeMasked","removeAttribute","cloneCopyEvent","src","dest","pdataOld","pdataCur","udataOld","udataCur","events","hasData","access","handle","extend","fixInput","rcheckableType","checked","defaultValue","domManip","collection","args","callback","concat","first","hasScripts","node","iNoClone","support","checkClone","rchecked","self","eq","html","map","clone","_evalUrl","rcleanScript","remove","keepData","cleanData","curCSS","computed","width","minWidth","maxWidth","getStyles","getPropertyValue","pixelMarginRight","rnumnonpx","rmargin","addGetHookIf","conditionFn","hookFn","vendorPropName","emptyStyle","capName","toUpperCase","cssPrefixes","finalPropName","cssProps","setPositiveNumber","subtract","matches","Math","max","augmentWidthOrHeight","extra","isBorderBox","styles","val","cssExpand","getWidthOrHeight","valueIsBorderBox","boxSizingReliable","parseFloat","Tween","easing","prototype","init","schedule","inProgress","hidden","requestAnimationFrame","setTimeout","fx","interval","tick","createFxNow","fxNow","now","genFx","includeWidth","which","attrs","height","opacity","createTween","animation","Animation","tweeners","defaultPrefilter","props","opts","toggle","hooks","oldfire","propTween","restoreDisplay","isBox","anim","orig","dataShow","queue","_queueHooks","unqueued","empty","fire","always","rfxtypes","isEmptyObject","overflow","overflowX","overflowY","propFilter","specialEasing","camelCase","Array","isArray","cssHooks","expand","properties","result","stopped","prefilters","deferred","Deferred","currentTime","remaining","startTime","duration","percent","tweens","run","notifyWith","resolveWith","originalProperties","originalOptions","stop","gotoEnd","rejectWith","proxy","progress","complete","timer","stripAndCollapse","tokens","join","getClass","buildParams","prefix","traditional","rbracket","addToPrefiltersOrTransports","structure","dataTypeExpression","func","dataType","dataTypes","unshift","inspectPrefiltersOrTransports","jqXHR","inspect","selected","inspected","prefilterOrFactory","dataTypeOrTransport","seekingTransport","transports","ajaxExtend","target","deep","flatOptions","ajaxSettings","ajaxHandleResponses","s","responses","ct","finalDataType","firstDataType","contents","shift","mimeType","getResponseHeader","converters","ajaxConvert","response","isSuccess","conv2","current","conv","prev","responseFields","dataFilter","split","state","error","arr","getProto","Object","getPrototypeOf","class2type","toString","hasOwn","hasOwnProperty","fnToString","ObjectFunctionString","version","rtrim","rmsPrefix","rdashAlpha","fcamelCase","all","letter","jquery","constructor","toArray","num","pushStack","prevObject","last","len","sort","splice","copy","copyIsArray","isPlainObject","random","isReady","msg","noop","isNumeric","isNaN","proto","Ctor","globalEval","string","trim","makeArray","results","second","invert","callbackInverse","callbackExpect","arg","Date","Symbol","iterator","Sizzle","seed","m","nid","groups","newSelector","newContext","preferredDoc","setDocument","documentIsHTML","rquickExpr","getElementById","id","getElementsByClassName","qsa","compilerCache","rbuggyQSA","rcssescape","fcssescape","setAttribute","tokenize","toSelector","rsibling","testContext","qsaError","select","createCache","cache","keys","Expr","cacheLength","markFunction","assert","el","addHandle","handler","attrHandle","siblingCheck","a","b","diff","sourceIndex","nextSibling","createInputPseudo","createButtonPseudo","createDisabledPseudo","disabled","isDisabled","disabledAncestor","createPositionalPseudo","argument","matchIndexes","setFilters","addCombinator","matcher","combinator","base","skip","next","checkNonElements","doneName","xml","oldCache","uniqueCache","outerCache","newCache","dirruns","uniqueID","elementMatcher","matchers","multipleContexts","contexts","condense","unmatched","newUnmatched","mapped","setMatcher","preFilter","postFilter","postFinder","postSelector","preMap","postMap","preexisting","matcherIn","matcherOut","matcherFromTokens","checkContext","leadingRelative","relative","implicitRelative","matchContext","matchAnyContext","outermostContext","matcherFromGroupMatchers","elementMatchers","setMatchers","bySet","byElement","superMatcher","outermost","matchedCount","setMatched","contextBackup","find","dirrunsUnique","pop","uniqueSort","getText","isXML","compile","sortInput","hasDuplicate","docElem","rbuggyMatches","classCache","tokenCache","sortOrder","push_native","list","booleans","whitespace","identifier","attributes","pseudos","rwhitespace","RegExp","rcomma","rcombinators","rattributeQuotes","rpseudo","ridentifier","matchExpr","ID","CLASS","TAG","ATTR","PSEUDO","CHILD","bool","needsContext","rinputs","rheader","rnative","runescape","funescape","escaped","escapedWhitespace","high","String","fromCharCode","ch","asCodePoint","charCodeAt","unloadHandler","els","documentElement","hasCompare","subWindow","defaultView","top","addEventListener","attachEvent","className","createComment","getById","getElementsByName","attrId","getAttributeNode","input","matchesSelector","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","msMatchesSelector","disconnectedMatch","compareDocumentPosition","adown","bup","compare","sortDetached","aup","ap","bp","expr","attr","specified","escape","sel","duplicates","detectDuplicates","sortStable","nodeValue","selectors","createPseudo",">"," ","+","~","excess","unquoted","nodeNameSelector","pattern","operator","check","what","simple","forward","ofType","nodeIndex","parent","useCache","pseudo","idx","matched","has","innerText","lang","elemLang","hash","location","root","focus","hasFocus","href","tabIndex","enabled","selectedIndex","header","button","even","odd","lt","gt","radio","checkbox","file","password","image","submit","reset","filters","parseOnly","soFar","preFilters","cached","token","compiled","unique","isXMLDoc","escapeSelector","until","truncate","is","siblings","n","rneedsContext","rsingleTag","rootjQuery","parseHTML","rparentsprev","guaranteedUnique","children","targets","closest","prevAll","addBack","parents","parentsUntil","nextAll","nextUntil","prevUntil","contentDocument","reverse","Callbacks","firing","memory","fired","locked","firingIndex","once","stopOnFalse","disable","lock","fireWith","tuples","catch","pipe","fns","newDefer","tuple","returned","notify","onFulfilled","onRejected","onProgress","depth","special","that","mightThrow","maxDepth","TypeError","process","exceptionHook","stackTrace","getStackHook","stateString","when","singleValue","resolveContexts","resolveValues","master","updateFunc","rerrorNames","stack","console","warn","message","readyException","readyList","readyWait","wait","readyState","doScroll","chainable","emptyGet","raw","bulk","acceptData","owner","defineProperty","configurable","removeData","_data","_removeData","dequeue","startLength","setter","clearQueue","count","defer","pnum","source","swap","old","hide","option","thead","col","tr","td","optgroup","tbody","tfoot","colgroup","caption","th","div","cloneNode","noCloneChecked","rkeyEvent","rmouseEvent","rtypenamespace","handleObjIn","eventHandle","t","handleObj","handlers","namespaces","origType","elemData","triggered","dispatch","delegateType","bindType","namespace","delegateCount","setup","mappedTypes","origCount","teardown","removeEvent","nativeEvent","handlerQueue","fix","delegateTarget","preDispatch","isPropagationStopped","currentTarget","isImmediatePropagationStopped","rnamespace","preventDefault","stopPropagation","postDispatch","matchedHandlers","matchedSelectors","addProp","hook","Event","enumerable","originalEvent","writable","load","noBubble","trigger","blur","click","beforeunload","returnValue","isDefaultPrevented","defaultPrevented","relatedTarget","timeStamp","isSimulated","stopImmediatePropagation","altKey","bubbles","cancelable","changedTouches","ctrlKey","detail","eventPhase","metaKey","pageX","pageY","shiftKey","view","char","charCode","keyCode","buttons","clientX","clientY","offsetX","offsetY","pointerId","pointerType","screenX","screenY","targetTouches","toElement","touches","mouseenter","mouseleave","pointerenter","pointerleave","related","rxhtmlTag","rnoInnerhtml","dataAndEvents","deepDataAndEvents","srcElements","destElements","inPage","detach","append","prepend","insertBefore","before","after","replaceWith","replaceChild","appendTo","prependTo","insertAfter","replaceAll","original","insert","opener","getComputedStyle","computeStyleTests","cssText","container","divStyle","pixelPositionVal","reliableMarginLeftVal","marginLeft","boxSizingReliableVal","marginRight","pixelMarginRightVal","backgroundClip","clearCloneStyle","pixelPosition","reliableMarginLeft","rdisplayswap","rcustomProp","cssShow","position","visibility","cssNormalTransform","letterSpacing","fontWeight","animationIterationCount","columnCount","fillOpacity","flexGrow","flexShrink","lineHeight","order","orphans","widows","zIndex","zoom","float","origName","isCustomProp","setProperty","isFinite","getClientRects","getBoundingClientRect","left","margin","padding","border","suffix","expanded","parts","propHooks","eased","pos","step","scrollTop","scrollLeft","linear","p","swing","cos","PI","rrun","*","tweener","prefilter","speed","opt","speeds","fadeTo","to","animate","optall","doAnimation","finish","stopQueue","timers","cssFn","slideDown","slideUp","slideToggle","fadeIn","fadeOut","fadeToggle","slow","fast","delay","time","timeout","clearTimeout","checkOn","optSelected","radioValue","boolHook","removeAttr","nType","attrHooks","attrNames","getter","lowercaseName","rfocusable","rclickable","removeProp","propFix","tabindex","parseInt","for","class","addClass","classes","curValue","clazz","finalValue","removeClass","toggleClass","stateVal","classNames","hasClass","rreturn","valHooks","optionSet","rfocusMorph","onlyHandlers","bubbleType","ontype","eventPath","isTrigger","parentWindow","simulate","triggerHandler","hover","fnOver","fnOut","focusin","attaches","nonce","rquery","parseXML","DOMParser","parseFromString","rCRLF","rsubmitterTypes","rsubmittable","param","valueOrFunction","encodeURIComponent","serialize","serializeArray","r20","rhash","rantiCache","rheaders","rlocalProtocol","rnoContent","rprotocol","allTypes","originAnchor","active","lastModified","etag","url","isLocal","protocol","processData","async","contentType","accepts","json","* text","text html","text json","text xml","ajaxSetup","settings","ajaxPrefilter","ajaxTransport","ajax","status","nativeStatusText","headers","success","modified","statusText","timeoutTimer","transport","responseHeadersString","ifModified","cacheURL","callbackContext","statusCode","fireGlobals","globalEventContext","completeDeferred","responseHeaders","urlAnchor","uncached","requestHeaders","requestHeadersNames","strAbort","getAllResponseHeaders","setRequestHeader","overrideMimeType","abort","finalText","crossDomain","host","hasContent","beforeSend","send","getJSON","getScript","throws","wrapAll","firstElementChild","wrapInner","unwrap","visible","offsetWidth","offsetHeight","xhr","XMLHttpRequest","xhrSuccessStatus","0","1223","xhrSupported","cors","errorCallback","open","username","xhrFields","onload","onerror","onabort","onreadystatechange","responseType","responseText","binary","text script","charset","scriptCharset","evt","oldCallbacks","rjsonp","jsonp","jsonpCallback","originalSettings","callbackName","overwritten","responseContainer","jsonProp","createHTMLDocument","implementation","keepScripts","parsed","params","animated","offset","setOffset","curPosition","curLeft","curCSSTop","curTop","curOffset","curCSSLeft","calculatePosition","curElem","using","rect","win","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","parentOffset","scrollTo","Height","Width","","defaultExtra","funcName","bind","unbind","delegate","undelegate","holdReady","hold","parseJSON","define","amd","_jQuery","_$","$","noConflict","minErr","ErrorConstructor","paramPrefix","SKIP_INDEXES","templateArgs","template","shiftedIndex","toDebugString","isString","jqLite","isNumber","item","forEach","isPrimitive","isBlankObject","forEachSorted","reverseParams","iteratorFn","nextUid","setHashKey","h","$$hashKey","baseExtend","dst","objs","ii","isObject","jj","isDate","valueOf","isRegExp","isElement","toInt","str","inherit","create","identity","valueFn","hasCustomToString","isUndefined","isDefined","isScope","$evalAsync","$watch","isFile","isFormData","isBlob","isBoolean","isPromiseLike","isTypedArray","TYPED_ARRAY_REGEXP","isArrayBuffer","makeMap","items","nodeName_","element","lowercase","arrayRemove","array","destination","copyRecurse","copyElement","stackSource","stackDest","ngMinErr","needsRecurse","copyType","buffer","byteOffset","copied","ArrayBuffer","byteLength","Uint8Array","re","lastIndex","equals","o1","o2","keySet","t1","t2","getTime","createMap","charAt","array1","array2","sliceArgs","startIndex","curryArgs","toJsonReplacer","toJson","pretty","stringify","fromJson","timezoneToOffset","timezone","fallback","ALL_COLONS","requestedTimezoneOffset","isNumberNaN","addDateMinutes","date","minutes","setMinutes","getMinutes","convertTimezoneToLocal","dateTimezoneOffset","getTimezoneOffset","timezoneOffset","startingTag","elemHtml","NODE_TYPE_TEXT","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","splitPoint","substring","toKeyValue","arrayValue","encodeUriQuery","encodeUriSegment","pctEncodeSpaces","getNgAttribute","ngAttr","ngAttrPrefixes","allowAutoBootstrap","currentScript","link","origin","angularInit","bootstrap","appElement","config","hasAttribute","candidate","querySelector","isAutoBootstrapAllowed","strictDi","modules","defaultConfig","doBootstrap","injector","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","scope","$apply","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","angular","resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","reload","getTestability","rootElement","snake_case","separator","SNAKE_CASE_REGEXP","bindJQuery","originalCleanData","bindJQueryFired","jqName","jq","JQLitePrototype","isolateScope","controller","inheritedData","$destroy","JQLite","assertArg","reason","assertArgFn","acceptArrayAnnotation","assertNotHasOwnProperty","path","bindFnToScope","lastInstance","getBlockNodes","blockNodes","endNode","setupModuleLoader","ensure","$injectorMinErr","$$minErr","requires","configFn","invokeLater","provider","insertMethod","invokeQueue","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","decorator","directive","component","block","shallowCopy","serializeObject","seen","publishExternalAPI","uppercase","callbacks","$$counter","$$csp","csp","angularModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","htmlAnchorDirective","inputDirective","textarea","form","formDirective","scriptDirective","selectDirective","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$animateCss","$CoreAnimateCssProvider","$$animateJs","$$CoreAnimateJsProvider","$$animateQueue","$$CoreAnimateQueueProvider","$$AnimateRunner","$$AnimateRunnerFactoryProvider","$$animateAsyncRun","$$AnimateAsyncRunFactoryProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$$forceReflow","$$ForceReflowProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$http","$HttpProvider","$httpParamSerializer","$HttpParamSerializerProvider","$httpParamSerializerJQLike","$HttpParamSerializerJQLikeProvider","$httpBackend","$HttpBackendProvider","$xhrFactory","$xhrFactoryProvider","$jsonpCallbacks","$jsonpCallbacksProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$jqLite","$$jqLiteProvider","$$HashMap","$$HashMapProvider","$$cookieReader","$$CookieReaderProvider","jqNextId","jqId","SPECIAL_CHARS_REGEXP","MOZ_HACK_REGEXP","jqLiteIsTextNode","HTML_REGEXP","jqLiteAcceptsData","NODE_TYPE_ELEMENT","NODE_TYPE_DOCUMENT","jqLiteHasData","jqCache","ng339","jqLiteCleanData","jqLiteRemoveData","jqLiteBuildFragment","TAG_NAME_REGEXP","XHTML_TAG_REGEXP","jqLiteParseHTML","SINGLE_TAG_REGEXP","jqLiteWrapNode","wrapper","argIsString","jqLiteMinErr","jqLiteAddNodes","jqLiteClone","jqLiteDealoc","onlyDescendants","descendants","jqLiteOff","unsupported","expandoStore","jqLiteExpandoStore","removeHandler","listenerFns","removeEventListenerFn","MOUSE_EVENT_MAP","expandoId","createIfNecessary","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","jqLiteRemoveClass","cssClasses","cssClass","jqLiteAddClass","existingClasses","jqLiteController","jqLiteInheritedData","names","NODE_TYPE_DOCUMENT_FRAGMENT","jqLiteEmpty","jqLiteRemove","jqLiteDocumentLoaded","action","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","getAliasedAttrName","ALIASED_ATTR","createEventHandler","eventHandler","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","handlerWrapper","specialHandlerWrapper","defaultHandlerWrapper","specialMouseHandlerWrapper","jqLiteContains","$get","hashKey","nextUidFn","objType","HashMap","isolatedUid","put","stringifyFn","Function","extractArgs","fnText","STRIP_COMMENTS","ARROW_ARG","FN_ARGS","anonFn","annotate","$inject","argDecl","FN_ARG_SPLIT","FN_ARG","underscore","modulesToLoad","supportObject","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","instanceInjector","factoryFn","enforce","$injector","instanceCache","serviceName","decorFn","origProvider","orig$get","origInstance","$delegate","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","createInternalInjector","getService","caller","INSTANTIATING","injectionArgs","locals","$$annotate","isClass","msie","Type","ctor","protoInstanceInjector","autoScrollingEnabled","disableAutoScrolling","getFirstAnchor","some","getYOffset","scroll","yOffset","bottom","scrollIntoView","elemTop","scrollBy","elm","newVal","oldVal","mergeClasses","extractElementNode","ELEMENT_NODE","splitClasses","klass","prepareAnimateOptions","Browser","completeOutstandingRequest","outstandingRequestCount","outstandingRequestCallbacks","getHash","substr","cacheStateAndFireUrlChange","pendingLocation","cacheState","fireUrlChange","cachedState","getCurrentState","lastCachedState","lastBrowserUrl","lastHistoryState","urlChangeListeners","listener","history","pendingDeferIds","isMock","$$completeOutstandingRequest","$$incOutstandingRequestCount","notifyWhenNoOutstandingRequests","baseElement","sameState","sameBase","stripHash","urlChangeInit","onUrlChange","$$applicationDestroyed","$$checkUrlChange","baseHref","timeoutId","cancel","deferId","cacheFactory","cacheId","refresh","entry","freshEnd","staleEnd","nextEntry","prevEntry","caches","size","stats","capacity","Number","MAX_VALUE","lruHash","lruEntry","removeAll","destroy","info","UNINITIALIZED_VALUE","$$sanitizeUriProvider","parseIsolateBindings","directiveName","isController","LOCAL_REGEXP","bindings","definition","scopeName","bindingCache","$compileMinErr","mode","optional","attrName","parseDirectiveBindings","bindToController","assertValidDirectiveName","getDirectiveRequire","require","REQUIRE_PREFIX_REGEXP","getDirectiveRestrict","restrict","hasDirectives","Suffix","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","EVENT_HANDLER_ATTR_REGEXP","registerDirective","directiveFactory","directives","priority","makeInjectable","tElement","tAttrs","$element","$attrs","templateUrl","ddo","controllerAs","identifierForController","transclude","aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","preAssignBindingsEnabled","TTL","onChangesTtl","commentDirectivesEnabledConfig","commentDirectivesEnabled","cssClassDirectivesEnabledConfig","cssClassDirectivesEnabled","flushOnChangesQueue","onChangesQueue","errors","Attributes","attributesToCopy","$attr","$$element","setSpecialAttr","specialAttrHolder","attribute","removeNamedItem","setNamedItem","safeAddClass","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","NOT_EMPTY","domNode","compositeLinkFn","compileNodes","$$addScopeClass","cloneConnectFn","needsNewScope","$parent","$new","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","detectNamespaceForChildElements","$linkNode","wrapTemplate","controllerName","instance","$$addScopeInfo","parentElement","nodeList","$rootElement","nodeLinkFn","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","nodeListLength","linkFns","transcludeOnThisElement","createBoundTranscludeFn","templateOnThisElement","linkFnFound","collectDirectives","applyDirectivesToNode","terminal","previousBoundTranscludeFn","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","boundSlots","$$slots","slotName","attrsMap","addDirective","directiveNormalize","nName","ngAttrName","isNgAttr","nAttrs","attrStartName","attrEndName","NG_ATTR_BINDING","PREFIX_REGEXP","multiElementMatch","MULTI_ELEMENT_DIR_RE","directiveIsMultiElement","addAttrInterpolateDirective","animVal","addTextInterpolateDirective","NODE_TYPE_COMMENT","collectCommentDirectives","byPriority","groupScan","attrStart","attrEnd","groupElementsLinkFnWrapper","linkFn","compilationGenerator","eager","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","elementControllers","scopeToChild","slotTranscludeFn","controllerScope","scopeBindingInfo","newScopeDirective","isSlotFilled","controllerDirectives","setupControllers","templateDirective","$$originalDirective","$$isolateBindings","initializeDirectiveBindings","removeWatches","$on","controllerDirective","$$bindings","bindingInfo","controllerResult","getControllers","controllerInstance","$onChanges","initialChanges","$onInit","$doCheck","$onDestroy","invokeLinkFn","$postLink","$template","directiveValue","terminalPriority","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","replaceDirective","childTranscludeFn","didScanForMultipleTransclusion","mightHaveMultipleTransclusionError","$$start","$$end","assertNoDuplicate","$$tlb","candidateDirective","scanningIndex","$$createComment","$$parentNode","slots","slotMap","filledSlots","elementSelector","filled","$$newScope","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectiveScope","mergeTemplateAttributes","compileTemplateUrl","inheritType","dataName","property","controllerKey","$scope","$transclude","newScope","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","linkQueue","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","ignoreChildLinkFn","previousDirective","wrapModuleNameIfDefined","moduleName","interpolateFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","$$addBindingInfo","expressions","getTrustedContext","attrNormalizedName","HTML","RESOURCE_URL","trustedContext","mustHaveExpression","allOrNothing","$$observers","newValue","$$inter","$$scope","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","annotation","recordChanges","previousValue","$$postDigest","changes","triggerOnChangesHook","SimpleChange","removeWatchCollection","lastValue","parentGet","parentSet","removeWatch","$observe","_UNINITIALIZED_VALUE","literal","assign","parentValueWatch","parentValue","$stateful","$watchCollection","deepWatch","initialValue","SIMPLE_ATTR_NAME","$normalize","$addClass","classVal","$removeClass","newClasses","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","observer","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","floor","innerIdx","lastTuple","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","comment","previous","str1","str2","tokens1","tokens2","outer","jqNodes","ident","CNTRL_REG","globals","register","allowGlobals","addIdentifier","expression","later","$controllerMinErr","controllerPrototype","exception","cause","serializeValue","toISOString","toSerialize","topLevel","defaultHttpResponseTransform","tempData","JSON_PROTECTION_PREFIX","APPLICATION_JSON","isJsonLike","jsonStart","JSON_START","JSON_ENDS","parseHeaders","fillInParsed","line","headerVal","headerKey","headersGetter","headersObj","transformData","defaults","transformResponse","transformRequest","d","common","Accept","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","paramSerializer","useApplyAsync","useLegacyPromise","useLegacyPromiseExtensions","interceptorFactories","interceptors","requestConfig","chainInterceptors","thenFn","rejectFn","executeHeaderFns","headerContent","processedHeaders","headerFn","mergeHeaders","defHeaderName","lowercaseDefHeaderName","reqHeaderName","defHeaders","reqHeaders","defaultHeadersIteration","serverRequest","reqData","withCredentials","sendReq","resp","requestInterceptors","responseInterceptors","reversedInterceptors","interceptor","request","requestError","responseError","$httpMinErrLegacyFn","createShortMethods","createShortMethodsWithData","createApplyHandlers","eventHandlers","applyHandlers","callEventHandler","$applyAsync","$$phase","headersString","resolveHttpPromise","resolvePromise","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","buildUrl","defaultCache","xsrfValue","urlIsSameOrigin","uploadEventHandlers","serializedParams","interceptorFactory","createHttpBackend","createXhr","$browserDefer","rawDocument","jsonpReq","callbackPath","wasCalled","addEventListenerFn","timeoutRequest","jsonpDone","completeRequest","createCallback","getResponse","removeCallback","urlResolve","ontimeout","upload","unescapeText","escapedStartRegexp","escapedEndRegexp","constantWatchDelegate","objectEquality","constantInterp","unwatch","parseStringifyInterceptor","getValue","$interpolateMinErr","interr","unescapedText","exp","$$watchDelegate","endIndex","parseFns","textLength","expressionPositions","startSymbolLength","endSymbolLength","throwNoconcat","compute","getTrusted","$watchGroup","oldValues","currValue","invokeApply","hasParams","iteration","setInterval","clearInterval","skipApply","$$intervalId","intervals","encodePath","segments","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","DOUBLE_SLASH_REGEX","$locationMinErr","prefixed","$$path","pathname","$$search","search","$$hash","startsWith","stripBaseUrl","trimEmptyHash","stripFile","lastIndexOf","serverBase","LocationHtml5Url","appBase","appBaseNoFile","basePrefix","$$html5","$$parse","pathUrl","$$compose","$$url","$$absUrl","$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","removeWindowsDriveName","firstPathSegmentMatch","windowsFilePathExp","withoutHashUrl","withoutBaseUrl","LocationHashbangInHtml5Url","locationGetter","locationGetterSetter","preprocess","html5Mode","requireBase","rewriteLinks","setBrowserUrlWithFallback","oldUrl","oldState","$$state","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","IGNORE_URI_REGEXP","absHref","initializing","newUrl","newState","$digest","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","formatError","sourceURL","consoleLog","logFn","log","hasApply","arg1","arg2","ensureSafeMemberName","fullExpression","$parseMinErr","getStringValue","ensureSafeObject","ensureSafeFunction","CALL","APPLY","BIND","ensureSafeAssignContext","ARRAY_CTOR","BOOLEAN_CTOR","FUNCTION_CTOR","NUMBER_CTOR","OBJECT_CTOR","STRING_CTOR","ARRAY_CTOR_PROTO","BOOLEAN_CTOR_PROTO","FUNCTION_CTOR_PROTO","NUMBER_CTOR_PROTO","OBJECT_CTOR_PROTO","STRING_CTOR_PROTO","ifDefined","plusFn","r","isStateless","filterName","findConstantAndWatchExpressions","ast","allConstants","argsToWatch","isStatelessFilter","AST","Program","Literal","toWatch","UnaryExpression","BinaryExpression","right","LogicalExpression","ConditionalExpression","alternate","consequent","Identifier","MemberExpression","CallExpression","callee","AssignmentExpression","ArrayExpression","ObjectExpression","ThisExpression","LocalsExpression","getInputs","lastExpression","isAssignable","assignableAST","NGValueParameter","isLiteral","isConstant","ASTCompiler","astBuilder","ASTInterpreter","isPossiblyDangerousMemberName","getValueOf","objectValueOf","identStart","identContinue","cacheDefault","cacheExpensive","literals","true","false","null","addLiteral","literalName","literalValue","setIdentifierFns","identifierStart","identifierContinue","interceptorFn","expensiveChecks","parsedExpression","oneTime","cacheKey","runningChecksEnabled","parseOptions","$parseOptionsExpensive","$parseOptions","lexer","Lexer","parser","Parser","oneTimeLiteralWatchDelegate","oneTimeWatchDelegate","inputs","inputsWatchDelegate","expensiveChecksInterceptor","addInterceptor","expensiveCheckFn","expensiveCheckOldValue","expressionInputDirtyCheck","oldValueOfValue","prettyPrintExpression","lastResult","inputExpressions","oldInputValueOf","newInputValue","oldInputValueOfValues","oldInputValues","changed","isAllDefined","allDefined","watchDelegate","useInputs","regularWatch","noUnsafeEval","isIdentifierStart","isIdentifierContinue","$$runningExpensiveChecks","qFactory","nextTick","exceptionHandler","simpleBind","Promise","processQueue","pending","processScheduled","scheduleProcessQueue","handleCallback","resolver","callbackOutput","errback","progressBack","promises","counter","race","$Q","resolveFn","$qMinErr","finally","$$reject","$$resolve","rejectPromise","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","supported","createChildScopeClass","ChildScope","$$watchers","$$nextSibling","$$childHead","$$childTail","$$listeners","$$listenerCount","$$watchersCount","$id","$$ChildScope","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","destroyChildScope","$event","currentScope","cleanUpScope","$$prevSibling","$root","Scope","beginPhase","phase","clearPhase","incrementWatchersCount","decrementListenerCount","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","child","watchExp","watcher","$$digestWatchIndex","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","unwatchFn","$watchCollectionInterceptor","_value","newLength","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","internalObject","$watchCollectionAction","initRun","veryOldValue","trackVeryOldValue","changeDetector","watch","watchers","dirty","logIdx","asyncTask","ttl","watchLog","asyncQueuePosition","asyncQueue","$eval","traverseScopesLoop","postDigestQueuePosition","postDigestQueue","eventName","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","uri","isImage","normalizedVal","regex","adjustMatcher","$sceMinErr","escapeForRegexp","adjustMatchers","adjustedMatchers","SCE_CONTEXTS","resourceUrlWhitelist","resourceUrlBlacklist","matchUrl","isResourceUrlAllowedByPolicy","allowed","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","trustAs","Constructor","byType","maybeTrusted","trustedValueHolderBase","htmlSanitizer","CSS","URL","JS","sce","isEnabled","parseAs","enumValue","lName","vendorPrefix","eventSupport","isChromePackagedApp","chrome","app","runtime","hasHistoryPushState","pushState","android","navigator","userAgent","boxee","vendorRegex","bodyStyle","transitions","animations","webkitTransition","webkitAnimation","hasEvent","divElm","httpOptions","handleRequestFn","tpl","ignoreRequestError","handleError","$templateRequestMinErr","totalPendingRequests","getTrustedResourceUrl","transformer","testability","findBindings","opt_exactMatch","dataBinding","bindingName","findModels","prefixes","attributeEquals","getLocation","setLocation","whenStable","deferreds","$$timeoutId","urlParsingNode","requestUrl","originUrl","$$CookieReader","safeGetCookie","cookie","safeDecodeURIComponent","lastCookies","lastCookieString","cookieArray","currentCookieString","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","anyPropertyKey","predicateFn","matchAgainstAnyProp","expressionType","getTypeForFilter","createPredicateFn","shouldMatchPrimitives","actual","expected","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","NUMBER_FORMATS","amount","currencySymbol","fractionSize","CURRENCY_SYM","PATTERNS","maxFrac","formatNumber","GROUP_SEP","DECIMAL_SEP","number","numStr","digits","numberOfIntegerDigits","zeros","exponent","ZERO_CHAR","MAX_DIGITS","roundNumber","parsedNumber","minFrac","fractionLen","min","roundAt","digit","k","carry","reduceRight","groupSep","decimalSep","isInfinity","isZero","abs","formattedText","integerLen","decimals","reduce","lgSize","gSize","negPre","negSuf","posPre","posSuf","padNumber","negWrap","neg","dateGetter","dateStrGetter","shortForm","standAlone","propPrefix","timeZoneGetter","zone","paddedZone","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","getThursdayThisWeek","datetime","getFullYear","getMonth","getDate","weekGetter","firstThurs","thisThurs","round","ampmGetter","getHours","AMPMS","eraGetter","ERAS","longEraGetter","ERANAMES","jsonStringToDate","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","ms","format","DATETIME_FORMATS","NUMBER_STRING","DATE_FORMATS_SPLIT","DATE_FORMATS","spacing","limit","begin","Infinity","sliceFn","processPredicates","sortPredicates","predicate","descending","objectValue","getPredicateValue","defaultCompare","v1","v2","type1","type2","value1","value2","sortPredicate","reverseOrder","compareFn","getComparisonObject","tieBreaker","predicateValues","predicates","doComparison","compareValues","ngDirective","nullFormRenameControl","control","$name","FormController","controls","$error","$$success","$pending","$dirty","$pristine","$valid","$invalid","$submitted","$$parentForm","nullFormCtrl","$rollbackViewValue","$commitViewValue","$addControl","$$renameControl","newName","oldName","$removeControl","$setValidity","addSetValidityMethod","ctrl","unset","$setDirty","PRISTINE_CLASS","DIRTY_CLASS","$setPristine","setClass","SUBMITTED_CLASS","$setUntouched","$setSubmitted","stringBasedInputType","$formatters","$isEmpty","textInputType","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","PARTIAL_VALIDATION_TYPES","PARTIAL_VALIDATION_EVENTS","validity","VALIDITY_STATE_PROPERTY","origBadInput","badInput","origTypeMismatch","typeMismatch","$render","weekParser","isoWeek","existingDate","WEEK_REGEXP","week","hours","seconds","milliseconds","addDays","getSeconds","getMilliseconds","NaN","createDateParser","mapping","iso","ISO_DATE_REGEXP","yyyy","MM","dd","HH","mm","ss","sss","part","createDateInputType","parseDate","isValidDate","parseObservedDateValue","badInputChecker","previousDate","$options","$$parserName","$parsers","parsedDate","ngModelMinErr","ngMin","minVal","$validators","$validate","ngMax","maxVal","nativeValidation","numberFormatterParser","NUMBER_REGEXP","parseNumberAttrVal","isNumberInteger","countDecimals","numString","decimalSymbolIndex","isValidForStep","viewValue","stepBase","decimalCount","multiplier","pow","numberInputType","rangeInputType","setInitialValueAndObserver","htmlAttrName","changeFn","minChange","$modelValue","supportsRange","elVal","maxChange","stepChange","stepVal","hasMinAttr","hasMaxAttr","hasStepAttr","originalRender","rangeUnderflow","rangeOverflow","modelValue","stepMismatch","urlInputType","URL_REGEXP","emailInputType","email","EMAIL_REGEXP","radioInputType","parseConstantExpr","parseFn","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","classDirective","arrayDifference","arrayClasses","addClasses","digestClassCounts","removeClasses","classCounts","classesToUpdate","updateClasses","ngClassWatchAction","$index","old$index","mod","setValidity","validationErrorKey","createAndSet","unsetAndCleanup","cachedToggleClass","PENDING_CLASS","toggleValidationCss","isObjectEmpty","combinedState","switchValue","isValid","VALID_CLASS","INVALID_CLASS","chromeHack","optionElement","REGEX_STRING_REGEXP","manualLowercase","manualUppercase","documentMode","rules","ngCspElement","ngCspAttribute","noInlineStyle","name_","NODE_TYPE_ATTRIBUTE","full","major","minor","dot","codeName","Node","lowercasedName","getNamedItem","$dv","multiple","nodeCount","addHandler","noEventListener","onFn","replaceNode","wrapNode","newElement","condition","classCondition","nextElementSibling","extraParameters","dummyEvent","eventFnsCopy","handlerArgs","arg3","$animateMinErr","NG_ANIMATE_CLASSNAME","postDigestElements","updateData","handleCSSClassChanges","existing","addRemoveClassesPostDigest","classesAdded","classesRemoved","pin","domOperation","from","runner","$$registeredAnimations","classNameFilter","$$classNameFilter","reservedRegex","domInsert","afterElement","afterNode","previousElementSibling","enter","move","leave","addclass","tempClasses","waitForTick","waitQueue","passed","AnimateRunner","setHost","rafTick","timeoutTick","_doneCallbacks","_tick","_state","INITIAL_STATE","DONE_PENDING_STATE","DONE_COMPLETE_STATE","chain","runners","getPromise","resolveHandler","rejectHandler","pause","resume","_resolve","initialOptions","applyAnimationContents","closed","$$prepared","cleanupStyles","isFirstChange","Content-Type","[","{","$httpMinErr","callbackId","called","callbackMap","PATH_MATCH","http","https","ftp","locationPrototype","paramValue","Location","OPERATORS","ESCAPE","f","'","\"","lex","readString","peek","readNumber","peekMultichar","readIdent","isWhitespace","ch2","ch3","op1","op2","op3","throwError","chars","codePointAt","isValidIdentifierStart","isValidIdentifierContinue","cp","cp1","cp2","isExpOperator","colStr","peekCh","quote","rawString","hex","rep","ExpressionStatement","Property","program","expressionStatement","expect","filterChain","assignment","ternary","logicalOR","consume","logicalAND","equality","relational","additive","multiplicative","unary","primary","arrayDeclaration","selfReferential","parseArguments","baseExpression","peekToken","kind","e1","e2","e3","e4","peekAhead","$locals","nextId","vars","own","assignable","stage","computing","recurse","return_","generateFunction","fnKey","intoId","watchId","fnString","USE","STRICT","filterPrefix","watchFns","varsPrefix","section","nameId","recursionFn","skipWatchIdCheck","if_","lazyAssign","computedMember","lazyRecurse","plus","getHasOwnProperty","nonComputedMember","addEnsureSafeObject","notNull","addEnsureSafeAssignContext","addEnsureSafeMemberName","addEnsureSafeFunction","member","SAFE_IDENTIFIER","UNSAFE_CHARACTERS","stringEscapeFn","stringEscapeRegex","c","rhs","lhs","unary+","unary-","unary!","binary+","binary-","binary*","binary/","binary%","binary===","binary!==","binary==","binary!=","binary<","binary>","binary<=","binary>=","binary&&","binary||","ternary?:","astCompiler","yy","y","MMMM","MMM","M","LLLL","H","hh","EEEE","EEE","Z","ww","G","GG","GGG","GGGG","xlinkHref","propName","defaultLinkFn","normalized","htmlAttr","formDirectiveFactory","isNgForm","getSetter","formElement","nameAttr","ctrls","handleFormSubmission","parentFormCtrl","DATE_REGEXP","DATETIMELOCAL_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","datetime-local","month","range","CONSTANT_VALUE_REGEXP","tplAttr","$compile","templateElement","ngBindHtmlGetter","ngBindHtmlWatch","getTrustedHtml","$viewChangeListeners","forceAsyncEvents","previousElements","srcExp","onloadExp","autoScrollExp","autoscroll","previousElement","currentElement","changeCounter","cleanupLastIncludeContent","afterAnimation","thisChangeId","trimValues","UNTOUCHED_CLASS","TOUCHED_CLASS","EMPTY_CLASS","NOT_EMPTY_CLASS","NgModelController","$$rawModelValue","$asyncValidators","$untouched","$touched","parserValid","parsedNgModel","parsedNgModelAssign","ngModelGet","ngModelSet","pendingDebounce","$$setOptions","getterSetter","invokeModelGetter","invokeModelSetter","$$$p","$$updateEmptyClasses","currentValidationRunId","$setTouched","$$lastCommittedViewValue","prevValid","prevModelValue","allowInvalid","$$runValidators","allValid","$$writeModelToScope","doneCallback","processParseErrors","errorKey","processSyncValidators","syncValidatorsValid","validator","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","$$parseAndValidate","writeToModelIfNeeded","updateOnDefault","$$debounceViewValueCommit","debounce","debounceDelay","formatters","modelCtrl","formCtrl","updateOn","DEFAULT_REGEXP","ngOptionsMinErr","NG_OPTIONS_REGEXP","parseOptionsExpression","optionsExp","selectElement","Option","selectValue","label","group","getOptionValuesKeys","optionValues","optionValuesKeys","keyName","itemKey","valueName","selectAs","trackBy","selectAsFn","viewValueFn","trackByFn","getTrackByValueFn","getTrackByValue","getLocals","displayFn","groupByFn","disableWhenFn","valuesFn","getWatchables","watchedArray","optionValuesLength","disableWhen","getOptions","optionItems","selectValueMap","optionItem","getOptionFromViewValue","getViewValueFromOption","ngOptionsPostLink","addOptionElement","optionTemplate","updateOptionElement","updateOptions","selectCtrl","readValue","groupElementMap","providedEmptyOption","emptyOption","groupElement","optGroupTemplate","listFragment","ngModelCtrl","nextValue","isNotPrimitive","emptyOptionRendered","unknownOption","renderEmptyOption","removeEmptyOption","renderUnknownOption","removeUnknownOption","writeValue","selectedValues","selections","selectedOption","registerOption","optionScope","optionEl","BRACE","IS_WHEN","updateElementText","newText","lastCount","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","attributeName","tmpMatch","whenKey","countIsNaN","pluralCat","whenExpFn","NG_REMOVED","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","getBlockStart","getBlockEnd","ngRepeatEndComment","aliasAs","trackByExp","trackByExpGetter","trackByIdExpFn","trackByIdArrayFn","trackByIdObjFn","hashFnLocals","lastBlockMap","nextNode","collectionLength","trackById","trackByIdFn","collectionKeys","nextBlockOrder","previousNode","nextBlockMap","blockKey","NG_HIDE_CLASS","NG_HIDE_IN_PROGRESS_CLASS","newStyles","oldStyles","cases","ngSwitchController","watchExpr","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","selectedTransclude","caseElement","selectedScope","anchor","ngSwitchWhenSeparator","whenCase","ngTranscludeMinErr","fallbackLinkFn","ngTranscludeCloneAttachFn","useFallbackContent","ngTranscludeSlot","noopNgModelController","SelectController","optionsMap","unknownVal","hasOption","addOption","removeOption","optionAttrs","hasDynamicValueAttr","interpolateTextFn","selectPreLink","lastView","lastViewRef","selectPostLink","selectCtrlName","patternExp","intVal","getDecimals","getVF","opt_precision","PLURAL_CATEGORY","ZERO","ONE","TWO","FEW","MANY","OTHER","DAY","FIRSTDAYOFWEEK","MONTH","SHORTDAY","SHORTMONTH","STANDALONEMONTH","WEEKENDRANGE","fullDate","longDate","medium","mediumDate","mediumTime","short","shortDate","shortTime","minInt","localeID","vf","returnExports","hljs","attrGetter","hljsEscape","hljsNoEscape","noEscape","hljsOnhighlight","onhighlight","shouldHighlightStatics","should","ngModule","_hljsOptions","setOptions","configure","hljsCache","hljsService","immediate","callNow","escapeRe","asString","replacement","extractInterpolations","interpolateTokens","RE_INTERPOLATION_STR","newCode","INTERPOLATION_SYMBOL","recoverInterpolations","_elm","_lang","_code","_interpolateScope","_stopInterpolateWatch","_hlCb","codeElm","setInterpolateScope","highlight","setLanguage","highlightCallback","cb","_highlight","res","interpolateData","_cacheKey","fixMarkup","highlightAuto","language","clear","release","glue","hljsDir","interpolateDirFactory","languageDirFactory","sourceDirFactory","includeDirFactory","tElm","staticHTML","staticText","iElm","iAttrs","escapeCheck","dirName","oldCode","srcExpr","templateCachePromise","dfd","horizontal","cssTo","uibCollapse","getScrollFromElement","scrollWidth","scrollHeight","expandingExpr","expandDone","expandedExpr","collapse","collapsingExpr","collapseDone","collapsedExpr","expanding","collapsing","collapsed","shouldCollapse","closeOthers","accordionConfig","openGroup","isOpen","addGroup","groupScope","removeGroup","heading","panelClass","setHeading","accordionCtrl","openClass","toggleOpen","headingId","panelId","accordionGroupCtrl","getHeaderSelectors","uibAccordionTransclude","closeable","close","dismissOnTimeout","activeClass","toggleEvent","buttonConfig","buttonsCtrl","uncheckableExpr","uibUncheckable","uibBtnRadio","isActive","uncheckable","getTrueValue","getCheckboxValue","btnCheckboxTrue","getFalseValue","btnCheckboxFalse","clearBufferedTransitions","bufferedTransitions","setActive","slides","slide","goNext","direction","destroyed","currentIndex","$currentTransition","SLIDE_DIRECTION","currentIdx","getCurrentIndex","nextSlide","nextIndex","nextDirection","restartTimer","findSlideIndex","resetTimer","currentInterval","resetTransition","timerFn","isPlaying","addSlide","play","newIndex","noWrap","removeSlide","bufferedIndex","indexOfSlide","isPrevDisabled","isNextDisabled","noPause","noTransition","carouselCtrl","beforeAddClass","directionClass","removeClassFn","beforeRemoveClass","createParser","quoteIndex","inLiteral","formatCodeToRegex","createFormatter","formatter","literalIdx","constructLiteralFormatter","constructFormatterFromIdx","endIdx","currentPosStr","toTimezone","fromTimezone","localeId","SPECIAL_CHARACTERS_REGEXP","parsers","_date","sign","baseDate","tzOffset","fields","dt","mapper","datesetter","timesetter","ON_REGEXP","IS_REGEXP","linkedScopes","instances","exps","addForExp","removeScope","compareWithExp","expToData","watchFn","compareWithVal","newActivated","thisVal","onExp","lastActivated","removedScope","newWatchScope","onExpMatches","uibIsClass","expsStr","datepickerMode","formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","maxDate","maxMode","minDate","minMode","monthColumns","shortcutPropagation","showWeeks","yearColumns","yearRows","datepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","dateParser","setMode","datepickerOptions","watchListeners","modes","startingDay","refreshView","uniqueId","ngDisabled","dateObject","activeDate","activeDateId","ngModelCtrl_","initDate","render","selectedDt","_refreshView","activeDt","createDateObject","model","today","past","future","customClass","dateDisabled","arrays","years","months","toggleMode","13","32","33","34","35","36","37","38","39","40","focusElement","keydown","handleKeyDown","getDaysInMonth","DAYS_IN_MONTH","getISO8601WeekNumber","checkDate","setDate","setMonth","getDates","startDate","dates","firstDayOfMonth","difference","numDisplayedFromPreviousMonth","firstDate","days","secondary","labels","abbr","title","rows","weekNumbers","thursdayIndex","numWeeks","curWeek","date1","date2","_date1","_date2","yearHeaderColspan","getStartingYear","columns","yearpickerInit","datepickerCtrl","daypickerCtrl","monthpickerCtrl","SCROLLBAR_WIDTH","BODY_SCROLLBAR_WIDTH","OVERFLOW_REGEX","normal","PLACEMENT_REGEX","auto","vertical","BODY_REGEX","getRawNode","parseStyle","isStaticPositioned","scrollbarWidth","isBody","bodyElem","innerWidth","clientWidth","scrollElem","scrollbarPadding","elemStyle","paddingRight","paddingBottom","scrollParent","tagName","widthOverflow","originalRight","heightOverflow","clientHeight","originalBottom","isScrollable","includeHidden","overflowRegex","includeSelf","documentEl","excludeStatic","spStyle","includeMagins","elemOffset","marginTop","elemBCR","viewportOffset","useDocument","includePadding","offsetBCR","offsetParentBCR","offsetParentStyle","paddingTop","paddingLeft","parsePlacement","placement","autoPlace","positionElements","hostElem","targetElem","appendToBody","targetWidth","targetHeight","hostElemPos","targetElemPos","targetElemStyle","adjustedSize","marginBottom","xOverflow","yOverflow","adjustTop","placementClasses","containerPosition","initialHeight","currentHeight","positionArrow","innerElem","isTooltip","arrowElem","arrowCss","borderProp","borderWidth","borderRadiusProp","borderRadius","altInputFormats","clearText","closeOnDateSelection","closeText","currentText","datepickerPopup","datepickerPopupTemplateUrl","datepickerTemplateUrl","html5Types","onOpenFocus","showButtonBar","$position","datepickerPopupConfig","$datepickerPopupLiteralWarning","parseDateString","dateFormat","documentClickBind","popup","$popup","dpContainsTarget","popupContainsTarget","inputKeydownBind","positionPopup","dpElement","popupPlacement","popupEl","datepickerEl","scrollParentEl","isHtml5DateInput","_ngModel_","datepickerAppendToBody","uibDatepickerPopup","newDateFormat","ng-model","ng-change","template-url","dateSelection","debounceTime","timeoutPromise","appendToOpenClass","openScope","dropdownScope","closeDropdown","keybindFilter","getAutoClose","toggleElement","getToggleElement","dropdownElement","getDropdownElement","focusToggleElement","dropdownElementTargeted","toggleElementTargeted","isKeynavEnabled","focusDropdownEntry","dropdownConfig","uibDropdownService","templateScope","getIsOpen","setIsOpen","toggleInvoker","onToggle","keynavEnabled","dropdownAppendTo","appendToEl","dropdownAppendToBody","keyboardNav","dropdownMenu","autoClose","getElement","wasOpen","rightalign","appendOffset","openContainer","hasOpenClass","dropdownMenuTemplateUrl","tplContent","newEl","dropdownCtrl","dropdownNested","tplUrl","toggleDropdown","aria-haspopup","aria-expanded","createNew","removeTop","entries","hasKey","setResolver","invocables","resolves","resolveObj","resolveIter","$modalStack","modalInClass","NOW_CLOSING_EVENT","setIsAsync","modalOptions","backdropClass","windowTopClass","modal","getTop","backdrop","dismiss","$isRendered","modalRenderDeferObj","animationPromise","modalRendered","inputWithAutofocus","modalAnimation","uibModalAnimationClass","$$multiMap","$$stackedMap","$uibPosition","isVisible","backdropIndex","topBackdropIndex","opened","openedWindows","topModalIndex","removeModalWindow","modalInstance","elementToReceiveFocus","modalWindow","appendToElement","previousTopOpenedModal","modalDomEl","removeAfterAnimate","modalScope","modalBodyClass","openedClass","OPENED_MODAL_CLASS","openedClasses","areAnyOpen","toggleTopWindowClass","closedDeferred","checkRemoveBackdrop","toggleSwitch","backdropDomEl","backdropScopeRef","backdropScope","domEl","afterAnimating","asyncDeferred","asyncPromise","keydownListener","keyboard","loadFocusElementList","focusChanged","isFocusInFirstItem","isModalFocused","focusLastFocusableElement","isFocusInLastItem","focusFirstFocusableElement","broadcastClosing","resultOrReason","closing","tabbableSelector","newBackdropIndex","modalOpener","renderDeferred","currBackdropIndex","ng-style","uib-modal-animation-class","modal-in-class","modal-instance","angularDomEl","windowTemplateUrl","window-top-class","role","aria-labelledby","ariaLabelledBy","aria-describedby","ariaDescribedBy","windowClass","$$topModalIndex","$$uibDestructionScheduled","dismissAll","topModal","srcElement","modalDomE1","$modalProvider","$uibResolve","getTemplatePromise","$modal","promiseChain","getPromiseChain","resolveWithTemplate","templateAndResolvePromise","modalResultDeferred","modalOpenedDeferred","modalClosedDeferred","modalRenderDeferred","rendered","samePromise","tplAndVars","constructLocals","instanceOnScope","injectable","$resolve","$uibModalInstance","providedScope","$close","$dismiss","ctrlInstance","ctrlInstantiate","ctrlLocals","setNumPages","numPages","_watchers","itemsPerPage","totalPages","calculateTotalPages","updatePage","newTotal","oldTotal","ceil","totalItems","page","selectPage","clickAllowed","noPrevious","noNext","uibPaging","uibPagerConfig","align","previousText","nextText","paginationCtrl","uibPaginationConfig","makePage","getPages","currentPage","pages","startPage","endPage","isMaxSized","maxSize","rotate","pageLabel","forceEllipses","boundaryLinkNumbers","previousPageSet","secondPageLink","firstPageLink","nextPageSet","secondToLastPageLink","lastPageLink","$page","boundaryLinks","directionLinks","firstText","lastText","defaultOptions","placementClassPrefix","popupDelay","popupCloseDelay","useContentExp","triggerMap","outsideClick","none","globalOptions","setTriggers","triggers","keypressListener","openedTooltips","ttType","defaultTriggerShow","getTriggers","startSym","endSym","tElem","tooltipLinker","tooltipCtrl","toggleTooltipBind","ttScope","hideTooltipBind","showTooltipBind","hasEnableExp","cancelHide","prepareTooltip","showTimeout","cancelShow","hideTimeout","createTooltip","assignIsOpen","positionTooltip","positionTimeout","transitionTimeout","removeTooltip","tooltip","tooltipLinkedScope","prepObservers","unregisterObservers","contentParse","popupClass","lastPlacement","closeDelay","isOpenParse","observers","repositionScheduled","bodyHideTooltipBind","prepTriggers","showTriggers","hideTriggers","unregisterTriggers","ttPosition","elementPos","adjustment","origScope","contentExp","appendToBodyVal","appendKey","tooltipTemplateTranscludeScope","parseAsResourceUrl","uibTooltipTemplateTransclude","tooltipAnimationClass","$uibTooltip","originScope","uibTitle","progressConfig","getMaxOrDefault","maxParam","bars","addBar","bar","transition","recalculatePercentage","totalPercentage","total","toFixed","removeBar","progressCtrl","stateOn","stateOff","enableReset","titles","ratingConfig","tmpTitles","ratingStates","buildTemplateObjects","states","getTitle","rate","readonly","newViewValue","onHover","onLeave","onKeydown","ratingCtrl","findTabIndex","tabs","oldIndex","previousIndex","previousSelected","tab","onDeselect","$selectedIndex","onSelect","addTab","newActiveIndex","removeTab","newActiveTabIndex","justified","tabsetCtrl","$transcludeFn","isTabHeading","uibTabContentTransclude","headingElement","hourStep","minuteStep","secondStep","showMeridian","showSeconds","meridians","readonlyInput","mousewheel","arrowkeys","showSpinners","timepickerConfig","getHoursFromTemplate","valid","meridian","getMinutesFromTemplate","getSecondsFromTemplate","pad","noPad","keyboardChange","makeValid","updateTemplate","invalidHours","invalidMinutes","invalidSeconds","padHours","addSecondsToSelected","addSeconds","addMinutes","newDate","modelIsEmpty","hoursInputEl","minutesInputEl","secondsInputEl","setupMousewheelEvents","setupArrowkeyEvents","setupInputEvents","noIncrementHours","incrementedSelected","noDecrementHours","decrementedSelected","noIncrementMinutes","noDecrementMinutes","noIncrementSeconds","noDecrementSeconds","noToggleMeridian","isScrollingUp","delta","wheelDelta","deltaY","incrementHours","decrementHours","incrementMinutes","decrementMinutes","incrementSeconds","decrementSeconds","updateHours","updateMinutes","updateSeconds","invalidate","setSeconds","toggleMeridian","uibTimepickerConfig","timepickerCtrl","TYPEAHEAD_REGEXP","itemName","viewMapper","modelMapper","originalScope","$$debounce","typeaheadParser","fireRecalculating","moveInProgress","debouncedRecalculate","recalculatePosition","HOT_KEYS","eventDebounceTime","minLength","typeaheadMinLength","waitTime","typeaheadWaitMs","isEditable","typeaheadEditable","isLoadingSetter","typeaheadLoading","isSelectEvent","typeaheadShouldSelect","vals","onSelectCallback","typeaheadOnSelect","isSelectOnBlur","typeaheadSelectOnBlur","isNoResultsSetter","typeaheadNoResults","inputFormatter","typeaheadInputFormatter","typeaheadAppendToBody","typeaheadAppendTo","focusFirst","typeaheadFocusFirst","selectOnExact","typeaheadSelectOnExact","isOpenSetter","typeaheadIsOpen","showHint","typeaheadShowHint","parsedModel","$setModelValue","parserResult","uibTypeahead","offDestroy","popupId","aria-autocomplete","aria-owns","inputsContainer","hintInputElem","border-color","box-shadow","background","color","vertical-align","background-color","popUpEl","move-in-progress","query","assign-is-open","typeaheadTemplateUrl","typeaheadPopupTemplateUrl","resetHint","resetMatches","activeIdx","getMatchId","inputIsExactMatch","inputValue","getMatchesAsync","onCurrentRequest","debounceUpdate","firstLabel","scheduleSearchWithTimeout","cancelPreviousTimeout","$item","$model","$label","typeaheadFocusOnSelect","shouldSelect","offsetTop","editable","dismissClickHandler","_modelCtrl","_ngModelOptions","candidateViewValue","emptyViewValue","popupTemplateUrl","isDropdownOpen","matchIdx","selectActive","selectMatch","tplEl","escapeRegexp","queryToEscape","containsHtml","matchItem","isSanitizePresent","trustAsHtml","$$uibCarouselCss","$$uibDatepickerCss","$$uibPositionCss","$$uibDatepickerpopupCss","$$uibTooltipCss","$$uibTimepickerCss","$$uibTypeaheadCss","ancestors","objectKeys","inheritParams","currentParams","newParams","$current","$to","parentParams","inherited","inheritList","equalForKeys","filterByKeys","filtered","pick","omit","silenceUncaughtInPromise","$Resolve","VISIT_IN_PROGRESS","VISIT_DONE","NOTHING","NO_DEPENDENCIES","NO_LOCALS","NO_PARENT","$$promises","$$values","study","visit","visited","cycle","plan","isResolve","invocableKeys","merged","$$inheritedValues","resolution","$$failure","invocable","onfailure","invocation","proceed","waitParams","dep","TemplateFactoryProvider","shouldUnsafelyUseHttp","TemplateFactory","fromConfig","fromString","fromUrl","templateProvider","fromProvider","UrlMatcher","parentMatcher","addParameter","paramNames","$$UMFP","Param","quoteRegExp","squash","surroundPattern","matchDetails","isSearch","segment","cfg","caseInsensitive","placeholder","searchPlaceholder","$$new","ParamSet","isOptional","sourceSearch","sourcePath","strict","$$paramNames","$UrlMatcherFactory","valToString","/","valFromString","~~","~2F","getDefaultConfig","isStrictMode","isCaseInsensitive","isInjectable","flushTypeQueue","typeQueue","$types","def","defaultSquashPolicy","enqueue","defaultTypes","encode","decode","int","capture","any","$$getDefaultValue","strictMode","isMatcher","o","definitionFn","unwrapShorthand","isShorthand","$$fn","getType","urlType","getArrayMode","arrayDefaults","arrayParamNomenclature","getSquashPolicy","getReplace","arrayMode","configuredKeys","defaultPolicy","$value","hasReplaceVal","$replace","$asArray","dynamic","$$parent","$$keys","ignore","paramset","paramValues","$$equals","paramValues1","paramValues2","equal","$$validates","rawVal","encoded","$UrlRouterProvider","$locationProvider","$urlMatcherFactory","regExpPrefix","interpolate","handleIfMatch","$match","appendBasePath","isHtml5","absolute","update","rule","handled","lastPushedUrl","otherwise","listen","interceptDeferred","sync","read","urlMatcher","$$avoidResync","validates","slash","redirect","handlerIsString","strategies","sticky","deferIntercept","$StateProvider","$urlRouterProvider","isRelative","stateName","findState","stateOrName","isStr","rel","pathLength","queueState","parentName","flushQueuedChildren","queued","registerState","stateBuilder","$delegates","abstractKey","$stateParams","$state","navigable","transitionTo","isGlob","doesStateMatchGlob","glob","globSegments","$view","$urlRouter","handleRedirect","TransitionAborted","retry","$retry","TransitionFailed","retryTransition","toParams","TransitionSuperseded","resolveState","paramsAreFiltered","resolveViews","viewsPromises","views","injectables","controllerProvider","injectLocals","$$controller","$$controllerAs","$$resolveAs","resolveAs","TransitionSupersededError","TransitionPrevented","go","fromParams","fromPath","toState","redirectResult","toPath","keep","toLocals","reloadState","ownParams","shouldSkipReload","resolved","entering","exiting","onExit","onEnter","acc","paramDef","includes","lossy","nav","nonSearchParamsEqual","fromAndToState","notSearchParam","nonQueryParamKeys","nonQueryParams","nonQueryParamSet","reloadOnSearch","compositeName","abstract","$ViewProvider","$templateFactory","$ViewScrollProvider","useAnchorScroll","$ViewDirective","$uiViewScroll","getRenderer","statics","$animator","cleanupLastView","previousEl","currentEl","$uiViewData","renderer","$$animLeave","updateView","firstTime","getUiViewName","previousLocals","latestLocals","animEnter","animLeave","viewAnimData","$animEnter","$animLeave","$ViewDirectiveFill","resolveData","uiView","uiViewCreatedBy","parseStateRef","ref","preparsed","paramExpr","stateContext","stateData","getTypeInfo","isSvg","isForm","isAnchor","clickable","clickHook","ignorePreventDefaultCount","defaultOpts","$StateRefDirective","uiSrefActive","uiSref","unlinkInfoFn","uiSrefOpts","$$addStateInfo","$StateRefDynamicDirective","runStateRefLink","uiState","uiStateParams","uiStateOpts","$StateRefActiveDirective","addState","stateParams","stateHash","createStateHash","stateInfo","activeClasses","anyMatch","exactMatch","activeEqClass","uiSrefActiveEq","deregister","$IsStateFilter","isFilter","$IncludedByStateFilter","includesFilter","searchParams","decodePathArray","reverseString","unquoteDashes","allReversed","paramName","parameters","nTotal","nPath","paramVal","encodeDashes","isPathParam","isDefaultValue","nextSegment","isFinalPathParam","$subPattern","sub","ArrayType","bindTo","arrayWrap","arrayUnwrap","falsey","arrayHandler","allTruthyMode","arrayEqualsHandler","val1","val2","$arrayMode","autoinject"],"mappings":"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","file":"scripts/vendor.js","sourceRoot":"/source/","sourcesContent":[]} \ No newline at end of file diff --git a/docs/scripts/app.js b/docs/scripts/app.js index e9ae5962..edca5aa7 100644 --- a/docs/scripts/app.js +++ b/docs/scripts/app.js @@ -1,5 +1,5 @@ /******/!function(e){function t(d){if(l[d])return l[d].exports;var i=l[d]={exports:{},id:d,loaded:!1};return e[d].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}// webpackBootstrap /******/ -var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),s=d(i),o=l(6),a=d(o);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,s["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
    "}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),s=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,s=l.html(i).contents();e(s)(t)}}]).directive("ngDropdownMultiselect",s["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},transclude:!0,controller:o["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var s=l(3),o=d(s)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function s(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function o(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):s()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,s=t[0].offsetWidth-l-d-i,o=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);o.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(o=o.slice(0,e.settings.smartButtonMaxItems),o.push("..."));var a=o.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(s<=h("..."))return"...";for(;h(a)>s;)"..."!==o[o.length-1]&&(o.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),s();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):s())}function T(t,l){if(angular.isUndefined(l))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}},e.transclusionModel=[],e.transclusionData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.transclusionSettings={}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

    What is AngularJS Dropdown Multiselect?

    This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

    In this page you can see basic and advanced usage examples.

    Download

    There are several options to do that:
    1. Using bower: `bower install angularjs-dropdown-multiselect`
    2. Using npm: `npm install angularjs-dropdown-multiselect`
    3. Download the .zip file from here
    4. Using it from GitHub raw using this link
    This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
    test

    Demo

    The model:

    {{testmodel|json}}

    Demo

    The model:

    {{example1model|json}}

    Code

    // HTML
    // JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
    This example shows the ability to select the property to display as text label.
    In this case, the property the used as label is "id".

    Demo

    The model:

    {{example2model|json}}

    Code

    // HTML
    // JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
    You can use the feature in order to show which items are selected instead the items count.
    In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
    You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

    Demo

    The model:

    {{example13model|json}}

    Code

    //HTML
    //JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
    You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

    Demo

    The model:

    {{example14model|json}}

    Code

    //HTML
    //JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

    Demo

    The model:

    {{example9model|json}}

    Code

    // HTML
    // JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
    By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

    Demo

    The model:

    {{example20model|json}}

    Code

    // HTML
    // JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
    Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

    Demo

    The model:

    {{example21model|json}}

    Code

    // HTML
    // JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

    Demo

    The model:

    {{searchSelectAllModel|json}}

    Code

    // HTML
    // JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
    By default, there is no limit on the maximum selected items.
    You can limit the selection by providing selectionLimit using the settings attribute.
    Note 1: limit the selection to 0 is the default and won\'t limit the selection!
    Note 2: When using this limit, the "Select All" button will not appear!

    Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

    Demo

    The model:

    {{example10model|json}}

    Code

    // HTML
    // JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
    Please read the notes in the "Selection Limit" example.
    This example shows an example of using selection limit and single selection.

    Demo

    The model:

    {{example12model|json}}

    Code

    // HTML
    // JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
    You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
    Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
    Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

    Demo

    The model:

    {{example11model|json}}

    Code

    // HTML
    // JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
    When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

    Demo

    The model:

    {{selectByGroupModel|json}}

    Code

    // HTML
    // JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
    You can select your own text of the button using the "defaultText" in settings.

    Demo

    The model:

    {{example5model|json}}

    Code

    // HTML
    // JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
    This example shows a demostration of using a pre-setted model.
    Note:The model should have the same objects as in the options array.

    Demo

    The model:

    {{example6model|json}}

    Code

    // HTML
    // JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
    This example shows a demostration of access and set the search filter from outside the directive.
    This can be done by settings the "search-filter" attribute.

    Demo

    The model:

    {{example7model|json}}

    Search Filter:

    {{customFilter|json}}

    Code

    // HTML
    // JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
    You can also use a checkboxes list by setting checkBoxes setting to true!

    Demo

    The model:

    {{example8model|json}}

    Code

    // HTML
    // JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

    Demo

    You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

    The model:

    {{example16model|json}}

    Code

    // HTML
    // JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

    Demo

    When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

    The model:

    {{example17model|json}}

    Code

    // HTML
    // JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

    Demo

    When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

    The model:

    {{example18model|json}}

    Code

    // HTML
    // JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

    Demo

    Instead of using the default template you can use an own custom temlpate.

    The model:

    {{example19model|json}}

    Code

    // HTML
    // JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
    Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

    Demo

    The model:

    {{disabledModel|json}}

    Code

    // HTML
    // JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
    When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

    Demo

    The model:

    {{selectedToTopModel|json}}

    Code

    // HTML
    // JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
    Example to show that options no longer need to be an object with an id property

    Demo

    The model:

    {{stringModel|json}}

    Code

    // HTML
    $scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };
    Example to show that you can replace the button with a custom element

    Demo

    My Custom trigger

    The model:

    {{transclusionModel|json}}

    Code

    // HTML
    My Custom trigger
    $scope.transclusionModel = []; $scope.transclusionData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.transclusionSettings = { };

    Full API Documentation

    Attributes

    List of allowed attributes, you can find more information about them in the usage examples above.

    Attribute NameTypeDescription
    selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
    optionsObject / ArrayThe options for the dropdown.
    extra-settingsObjectThe settings for the directive, more information about these settings are available below.
    eventsObjectEvents callbacks, more information below.
    translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
    search-filterStringUses for settings the search filter from outside the direcrtive.
    disabledBooleanUsed for disabling the dropdown.

    Settings

    Available settings that effects the display or behavior of the directive.
    These setting are set with the "extra-settings" attribute.

    Property NameTypeDefault ValueDescription
    dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
    closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
    displayPropStringlabelThe name of the property that contains the text for the item.
    enableSearchBooleanfalseIndicated if to show the search input or not.
    clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
    searchFieldString"$"Indicates on which field the search should be done
    selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
    showCheckAllBooleantrueIndicates if to show the "Check All" item.
    showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
    showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
    closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
    closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
    buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
    groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
    groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
    scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
    scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
    smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
    smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
    styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
    keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
    templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
    selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
    checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
    selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

    Events

    Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

    Event NameParametersDescription
    onItemSelectitemFired when selecting an item.
    onItemDeselectitemFired when unselecting an item.
    onSelectAllFired when clicking select all.
    onDeselectAllFired when clicking unselect all.
    onInitDoneFired when the directive done with the "link" phase.
    onMaxSelectionReachedFired when the user reaches the max allowed selected items.
    onSelectionChangedFired when the selection changes.

    Translation Texts

    Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

    Property NameDefault ValueDescription
    checkAllCheck All"Check All" item\'s text.
    uncheckAllUncheck All"Uncheck All" item\'s text.
    enableSearchEnable search"enable search" item\'s text.
    disableSearchDisable search"disable search" item\'s text.
    selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
    selectionOf/The value between the selected values and the max values when using selection limit.
    searchPlaceholderSearch...The placeholder for the search input.
    buttonDefaultTextSelectThe default text that used for the button when no items selected.
    dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
    selectGroupSelect All:The prefix of the group selection.
    '), +var l={};return t.m=e,t.c=l,t.p="",t(0)}([function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}l(1);var i=l(4),o=d(i),s=l(6),a=d(s);angular.module("AngularjsDropdownMultiselectExample",["angularjs-dropdown-multiselect","hljs","ui.bootstrap","ui.router"]).component("main",(0,o["default"])()).component("v1Docs",(0,a["default"])()).config(["$stateProvider","$urlRouterProvider",function(e,t){e.state({name:"main",url:"/main",template:"
    "}),e.state({name:"v1",url:"/v1",template:""}),t.otherwise("/main")}])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}var i=l(2),o=d(i);angular.module("angularjs-dropdown-multiselect",[]).directive("dmDropdownStaticInclude",["$compile",function(e){"ngInject";return function(t,l,d){var i=d.dmDropdownStaticInclude,o=l.html(i).contents();e(o)(t)}}]).directive("ngDropdownMultiselect",o["default"])},function(e,t,l){"use strict";function d(e){return e&&e.__esModule?e:{"default":e}}function i(){return{restrict:"AE",scope:{selectedModel:"=",options:"=",extraSettings:"=",events:"=",searchFilter:"=?",translationTexts:"=",disabled:"="},transclude:{toggleDropdown:"?toggleDropdown"},controller:s["default"],templateUrl:"app/component/angularjs-dropdown-multiselect.html"}}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var o=l(3),s=d(o)},function(e,t){"use strict";function l(e,t){var l=!1;return e.some(function(e){return e===t?(l=!0,!0):!1}),l}function d(e,t,d,i){"ngInject";function o(){setTimeout(function(){var e=angular.element(t)[0].querySelector(".option");angular.isDefined(e)&&null!=e&&e.focus()},0)}function s(){e.open?e.close():e.open=!0,e.settings.keyboardControls&&e.open&&(1===e.settings.selectionLimit&&e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o()),e.settings.enableSearch&&e.open&&setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0)}function a(t,l){e.setSelectedItem(l,!1,!0),t.stopImmediatePropagation()}function n(){e.open=!1,e.input.searchFilter=e.settings.clearSearchOnClose?"":e.input.searchFilter,e.externalEvents.onClose()}function r(t){e.selectedModel.splice(0,e.selectedModel.length),e.options.forEach(function(l){l[e.settings.groupBy]===t&&e.setSelectedItem(l,!1,!1)}),e.externalEvents.onSelectionChanged()}function c(t){return null!==e.settings.groupByTextProvider?e.settings.groupByTextProvider(t):t}function h(e){var l=t.find("button"),d=document.createElement("canvas"),i=d.getContext("2d");return i.font=l.css("font-size")+l.css("font-family"),i.originalFont=l.css("font-size")+l.css("font-family"),i.fillStyle="#000000",i.measureText(e).width}function p(){if(e.settings.dynamicTitle&&e.selectedModel&&e.selectedModel.length>0){if(e.settings.smartButtonMaxItems>0){var l=24,d=2,i=8,o=t[0].offsetWidth-l-d-i,s=[];angular.forEach(e.options,function(t){if(e.isChecked(t)){var l=e.getPropertyForObject(t,e.settings.displayProp),d=e.settings.smartButtonTextConverter(l,t);s.push(d||l)}}),e.selectedModel.length>e.settings.smartButtonMaxItems&&(s=s.slice(0,e.settings.smartButtonMaxItems),s.push("..."));var a=s.join(", "),n=a.length-4;if(0===t[0].offsetWidth)return a;if(o<=h("..."))return"...";for(;h(a)>o;)"..."!==s[s.length-1]&&(s.push("..."),a+="...",n=a.length-4),a=a.slice(0,n)+a.slice(n+1),n-=1;return a}var r=angular.isDefined(e.selectedModel)?e.selectedModel.length:0;return 0===r?e.texts.buttonDefaultText:e.settings.showAllSelectedText&&r===e.options.length?e.texts.allSelectedText:r+" "+e.texts.dynamicButtonTextSuffix}return e.texts.buttonDefaultText}function m(e,t){return angular.isDefined(e)&&Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0}function u(){e.deselectAll(!0),e.externalEvents.onSelectAll();var t=d("filter")(e.options,e.getFilter(e.input.searchFilter));angular.forEach(t,function(t){e.setSelectedItem(t,!0,!1)}),e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1;t||e.externalEvents.onDeselectAll(),e.selectedModel.splice(0,e.selectedModel.length),t||e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function g(t){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,d=arguments[2],i=-1!==e.selectedModel.indexOf(t);!l&&i?(e.selectedModel.splice(e.selectedModel.indexOf(t),1),e.externalEvents.onItemDeselect(t),e.settings.closeOnDeselect&&e.close()):!i&&(0===e.settings.selectionLimit||e.selectedModel.length0&&e.selectedModel.length===e.settings.selectionLimit&&e.externalEvents.onMaxSelectionReached()):1!==e.settings.selectionLimit||i||e.selectedModel.length!==e.settings.selectionLimit||(e.selectedModel.splice(0,1),e.selectedModel.push(t),d&&e.externalEvents.onItemSelect(t),e.settings.closeOnSelect&&e.close()),d&&e.externalEvents.onSelectionChanged(),e.selectedGroup=null}function b(t){return-1!==e.selectedModel.indexOf(t)}function x(t){var l=angular.element(t.target).scope(),d=void 0,i=t.target.parentNode;if(e.settings.keyboardControls)if(13===t.keyCode||32===t.keyCode)t.preventDefault(),l.option?e.setSelectedItem(l.option,!1,!0):"deselectAll"===t.target.id?e.deselectAll():"selectAll"===t.target.id&&e.selectAll();else if(38===t.keyCode){for(t.preventDefault(),i.previousElementSibling&&(d=i.previousElementSibling.querySelector("a")||i.previousElementSibling.querySelector("input"));!d&&i;)i=i.previousElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else if(40===t.keyCode){for(t.preventDefault(),i.nextElementSibling&&(d=i.nextElementSibling.querySelector("a")||i.nextElementSibling.querySelector("input"));!d&&i;)i=i.nextElementSibling,i&&(d=i.querySelector("a")||i.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function f(t){var l=t.target.parentNode.parentNode,d=void 0;if(e.settings.keyboardControls)if(9===t.keyCode||40===t.keyCode)t.preventDefault(),o();else if(38===t.keyCode){for(t.preventDefault(),l.previousElementSibling&&(d=l.previousElementSibling.querySelector("a")||l.previousElementSibling.querySelector("input"));!d&&l;)l=l.previousElementSibling,l&&(d=l.querySelector("a")||l.querySelector("input"));d&&d.focus()}else 27===t.keyCode&&(t.preventDefault(),e.toggleDropdown())}function w(t,l){var i=void 0;e.settings.keyboardControls&&13===t.keyCode&&(1===e.settings.selectionLimit&&e.settings.enableSearch?(i=d("filter")(e.options,e.getFilter(l)),1===i.length&&e.setSelectedItem(i[0],!1,!0)):e.settings.enableSearch&&e.selectAll())}function y(t){var l={};return l[e.settings.searchField]=t,l}function S(t){t&&t.stopPropagation(),e.settings.enableSearch=!e.settings.enableSearch,e.settings.enableSearch||(e.input.searchFilter="")}function D(){e.settings.keyboardControls&&13===event.keyCode&&(e.toggleSearch(),e.settings.enableSearch?setTimeout(function(){angular.element(t)[0].querySelector(".searchField").focus()},0):o())}function T(t,l){if(angular.isUndefined(l))return-1;if(angular.isUndefined(t))return 1;if("object"!==t.type||"object"!==l.type)return t.index{{option.name}}"},e.example20model=[],e.example20data=[{id:1,label:"David",age:23},{id:2,label:"Jhon",age:24},{id:3,label:"Danny",age:26}],e.example20settings={searchField:"age",enableSearch:!0},e.example21model=[],e.example21data=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.example21settings={showEnableSearchButton:!0},e.searchSelectAllModel=[],e.searchSelectAllData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.searchSelectAllSettings={enableSearch:!0,keyboardControls:!0},e.disabledModel=[],e.disabledData=[{id:1,label:"David",disabled:!0},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopModel=[],e.selectedToTopData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.selectedToTopSettings={selectedToTop:!0},e.stringModel=[],e.stringData=["David","Jhon","Danny"],e.stringSettings={template:"{{option}}",smartButtonTextConverter:function(e,t){return t}},e.transclusionModel=[],e.transclusionData=[{id:1,label:"David"},{id:2,label:"Jhon"},{id:3,label:"Danny"}],e.transclusionSettings={}};d.$inject=["$scope","$log"],t["default"]=d},function(e,t){"use strict";function l(){var e={templateUrl:"app/v1docs/v1docs.template.html"};return e}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=l}]),angular.module("AngularjsDropdownMultiselectExample").run(["$templateCache",function(e){e.put("app/component/angularjs-dropdown-multiselect.html",''),e.put("app/main/main.template.html",'

    What is AngularJS Dropdown Multiselect?

    This directive uses Bootstrap\'s Dropdown with the power of AngularJS directives and binding. Bootstrap and AngularJS are the only dependencies.

    In this page you can see basic and advanced usage examples.

    Download

    There are several options to do that:
    1. Using bower: `bower install angularjs-dropdown-multiselect`
    2. Using npm: `npm install angularjs-dropdown-multiselect`
    3. Download the .zip file from here
    4. Using it from GitHub raw using this link
    This is documentation for the currently still in beta v2.0.0, the documentation for v1 can be found here: V1 docs
    test

    Demo

    The model:

    {{testmodel|json}}

    Demo

    The model:

    {{example1model|json}}

    Code

    // HTML
    // JavaScript $scope.example1model = []; $scope.example1data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ];
    This example shows the ability to select the property to display as text label.
    In this case, the property the used as label is "id".

    Demo

    The model:

    {{example2model|json}}

    Code

    // HTML
    // JavaScript $scope.example2model = []; $scope.example2data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example2settings = {displayProp: \'id\'};
    You can use the feature in order to show which items are selected instead the items count.
    In order to use this feature, set the "smartButtonMaxItems" settings parameter to a number bigger than 0.
    You can also provide "smartButtonTextConverter" parameter in order to add smart logic and convert the text.

    Demo

    The model:

    {{example13model|json}}

    Code

    //HTML
    //JS $scope.example13model = []; $scope.example13data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example13settings = { smartButtonMaxItems: 3, smartButtonTextConverter: function(itemText, originalItem) { if (itemText === \'Jhon\') { return \'Jhonny!\'; } return itemText; } };
    You can use the feature in order to make the list of items scrollable. Useful when you deal with a lot of items.

    Demo

    The model:

    {{example14model|json}}

    Code

    //HTML
    //JS $scope.example14model = []; $scope.example14data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"}, {id: 6, label: "Dan"}, {id: 7, label: "Dean"}, {id: 8, label: "Adam"}, {id: 9, label: "Uri"}, {id: 10, label: "Phil"} ]; $scope.example14settings = { scrollableHeight: \'100px\', scrollable: true };

    Demo

    The model:

    {{example9model|json}}

    Code

    // HTML
    // JavaScript $scope.example9model = []; $scope.example9data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example9settings = {enableSearch: true};
    By default, search is done on all items, by specifying the searchField in the settings object one can specify on which field of the objects the filtering should be done.

    Demo

    The model:

    {{example20model|json}}

    Code

    // HTML
    // JavaScript $scope.example20model = []; $scope.example20data = [ { id: 1, label: "David", age: 23 }, { id: 2, label: "Jhon", age: 24 }, { id: 3, label: "Danny", age: 26 } ]; $scope.example20settings = { searchField: \'age\', enableSearch: true };
    Setting showEnableSearchButton to true will add the enable/disable search button under the Select all / Deselect all buttons

    Demo

    The model:

    {{example21model|json}}

    Code

    // HTML
    // JavaScript $scope.example21model = []; $scope.example21data = [ { id: 1, label: "David"}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ]; $scope.example21settings = { showEnableSearchButton: true };

    Demo

    The model:

    {{searchSelectAllModel|json}}

    Code

    // HTML
    // JavaScript $scope.searchSelectAllModel = []; $scope.searchSelectAllData = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.searchSelectAllSettings = { enableSearch: true, showSelectAll: true, keyboardControls: true };
    By default, there is no limit on the maximum selected items.
    You can limit the selection by providing selectionLimit using the settings attribute.
    Note 1: limit the selection to 0 is the default and won\'t limit the selection!
    Note 2: When using this limit, the "Select All" button will not appear!

    Note 3: When using single selection (limit to 1) the selection will change automaticlly if another item is clicked!

    Demo

    The model:

    {{example10model|json}}

    Code

    // HTML
    // JavaScript $scope.example10model = []; $scope.example10data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example10settings = {selectionLimit: 2};
    Please read the notes in the "Selection Limit" example.
    This example shows an example of using selection limit and single selection.

    Demo

    The model:

    {{example12model|json}}

    Code

    // HTML
    // JavaScript $scope.example12model = {}; // ! IMPORTANT ! $scope.example12data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example12settings = { selectionLimit: 1, };
    You can also group the items by propery that you want, in order to to that, provide the groupBy setting.
    Also, you need to provide "groupByTextProvider" callback in the extra-settings attribute, in order to provide the header text for each group.
    Note: If you won\'t specify the "groupByTextProvider" callback in order to get the header for each group, the value of the group will be displayed!

    Demo

    The model:

    {{example11model|json}}

    Code

    // HTML
    // JavaScript $scope.example11model = []; $scope.example11data = [ {id: 1, label: "David", gender: \'M\'}, {id: 2, label: "Jhon", gender: \'M\'}, {id: 3, label: "Lisa", gender: \'F\'}, {id: 4, label: "Nicole", gender: \'F\'}, {id: 5, label: "Danny", gender: \'M\'} ]; $scope.example11settings = { groupByTextProvider: function(groupValue) { if (groupValue === \'M\') { return \'Male\'; } else { return \'Female\'; } }, groupBy: \'gender\', };
    When items are grouped by property you can also specify an array of groups that you can use to select the items by. The extra-settings property selectByGroups accepts an array of the values of the groups that you want to be selectable. The naming will use the groupByTextProvider function to give them an actual label.

    Demo

    The model:

    {{selectByGroupModel|json}}

    Code

    // HTML
    // JavaScript $scope.selectByGroupModel = []; $scope.selectByGroupData = [ { id: 1, label: "David", gender: \'M\' }, { id: 2, label: "Jhon", gender: \'M\' }, { id: 3, label: "Lisa", gender: \'F\' }, { id: 4, label: "Nicole", gender: \'F\' }, { id: 5, label: "Danny", gender: \'M\' }, { id: 6, label: "Unknown", gender: \'O\' } ]; $scope.selectByGroupSettings = { selectByGroups: [\'F\', \'M\'], groupByTextProvider: function(groupValue) { switch (groupValue) { case \'M\': return \'Male\'; case \'F\': return \'Female\'; case \'O\': return \'Other\'; } }, groupBy: \'gender\', };
    You can select your own text of the button using the "defaultText" in settings.

    Demo

    The model:

    {{example5model|json}}

    Code

    // HTML
    // JavaScript $scope.example5model = []; $scope.example5data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example5settings = {}; $scope.example5customTexts = {buttonDefaultText: \'Select Users\'};
    This example shows a demostration of using a pre-setted model.
    Note:The model should have the same objects as in the options array.

    Demo

    The model:

    {{example6model|json}}

    Code

    // HTML
    // JavaScript $scope.example6model = [{id: 1}, {id: 3}]; $scope.example6data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example6settings = {};
    This example shows a demostration of access and set the search filter from outside the directive.
    This can be done by settings the "search-filter" attribute.

    Demo

    The model:

    {{example7model|json}}

    Search Filter:

    {{customFilter|json}}

    Code

    // HTML
    // JavaScript $scope.example15model = []; $scope.example15data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Lisa"}, {id: 4, label: "Nicole"}, {id: 5, label: "Danny"} ]; $scope.example15settings = { enableSearch: true }; $scope.customFilter = \'a\';
    You can also use a checkboxes list by setting checkBoxes setting to true!

    Demo

    The model:

    {{example8model|json}}

    Code

    // HTML
    // JavaScript $scope.example8model = []; $scope.example8data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"} ]; $scope.example8settings = { checkBoxes: true, };

    Demo

    You can also aplly the active class to the selected list items. This can be done by setting the styleActive setting to true

    The model:

    {{example16model|json}}

    Code

    // HTML
    // JavaScript $scope.example16model = []; $scope.example16data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example16settings = {styleActive: true};

    Demo

    When activated the dropdown can be used with the keyboard instead of with the mouse. Up, down arrow change focused element, escape closes the dropdown, enter and space activate focused element.

    The model:

    {{example17model|json}}

    Code

    // HTML
    // JavaScript $scope.example17model = []; $scope.example17data = [ {id: 1, label: "David"}, {id: 2, label: "Jhon"}, {id: 3, label: "Danny"}]; $scope.example17settings = {keyboardControls: true};

    Demo

    When search is enabled and a single selection is active, wehn search returns a single match pressing enter in the search box will activate the matched option.

    The model:

    {{example18model|json}}

    Code

    // HTML
    // JavaScript $scope.example18model = {}; $scope.example18data = [ { id: 1, label: "David" }, { id: 2, label: "Jhon" }, { id: 3, label: "Lisa" }, { id: 4, label: "Nicole" }, { id: 5, label: "Danny" } ]; $scope.example18settings = { keyboardControls: true, enableSearch: true, selectionLimit: 1 };

    Demo

    Instead of using the default template you can use an own custom temlpate.

    The model:

    {{example19model|json}}

    Code

    // HTML
    // JavaScript $scope.example19model = {}; $scope.example19data = [ { id: 1, name: "David" }, { id: 2, name: "Jhon" }, { id: 3, name: "Lisa" }, { id: 4, name: "Nicole" }, { id: 5, name: "Danny" } ]; $scope.example19settings = { template: \'{{option.name}}\' };
    Setting the field disabled of an option to true will disable that option, if the option was previously checked it will still stay checked and will not be able to be unchecked.

    Demo

    The model:

    {{disabledModel|json}}

    Code

    // HTML
    // JavaScript $scope.disabledModel = []; $scope.disabledData = [ { id: 1, label: "David", disabled: true}, { id: 2, label: "Jhon"}, { id: 3, label: "Danny"} ];
    When setting "selectedToTop" to true, selected items will be ordered to the top. When group by is active, the selected items will be at the top of their group.

    Demo

    The model:

    {{selectedToTopModel|json}}

    Code

    // HTML
    // JavaScript $scope.selectedToTopModel = []; $scope.selectedToTopData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.selectedToTopSettings = { selectedToTop: true, };
    Example to show that options no longer need to be an object with an id property

    Demo

    The model:

    {{stringModel|json}}

    Code

    // HTML
    $scope.stringModel = []; $scope.stringData = [ \'David\', \'Jhon\', \'Danny\', ]; $scope.stringSettings = { template: \'{{option}}\', smartButtonTextConverter(skip, option) { return option; }, };
    Example to show that you can replace the button with a custom element.

    Demo

    My Custom trigger

    The model:

    {{transclusionModel|json}}

    Code

    // HTML
    My Custom trigger
    $scope.transclusionModel = []; $scope.transclusionData = [ { id: 1, label: \'David\' }, { id: 2, label: \'Jhon\' }, { id: 3, label: \'Danny\' }, ]; $scope.transclusionSettings = { };

    Full API Documentation

    Attributes

    List of allowed attributes, you can find more information about them in the usage examples above.

    Attribute NameTypeDescription
    selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
    optionsObject / ArrayThe options for the dropdown.
    extra-settingsObjectThe settings for the directive, more information about these settings are available below.
    eventsObjectEvents callbacks, more information below.
    translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
    search-filterStringUses for settings the search filter from outside the direcrtive.
    disabledBooleanUsed for disabling the dropdown.

    Settings

    Available settings that effects the display or behavior of the directive.
    These setting are set with the "extra-settings" attribute.

    Property NameTypeDefault ValueDescription
    dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
    closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
    displayPropStringlabelThe name of the property that contains the text for the item.
    enableSearchBooleanfalseIndicated if to show the search input or not.
    clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
    searchFieldString"$"Indicates on which field the search should be done
    selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
    showCheckAllBooleantrueIndicates if to show the "Check All" item.
    showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
    showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
    closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
    closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
    buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
    groupByStringundefinedThe name of the property which you like to group by your options. See grouping example.
    groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using groupBy setting. The parameter for the function will be the value of the groupBy property.
    scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
    scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
    smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
    smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
    styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
    keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
    templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
    selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group
    checkBoxesBooleanfalseIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
    selectedToTopBooleanfalseWhen true will put the selected options at the top of the list

    Events

    Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

    Event NameParametersDescription
    onItemSelectitemFired when selecting an item.
    onItemDeselectitemFired when unselecting an item.
    onSelectAllFired when clicking select all.
    onDeselectAllFired when clicking unselect all.
    onInitDoneFired when the directive done with the "link" phase.
    onMaxSelectionReachedFired when the user reaches the max allowed selected items.
    onSelectionChangedFired when the selection changes.

    Translation Texts

    Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

    Property NameDefault ValueDescription
    checkAllCheck All"Check All" item\'s text.
    uncheckAllUncheck All"Uncheck All" item\'s text.
    enableSearchEnable search"enable search" item\'s text.
    disableSearchDisable search"disable search" item\'s text.
    selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
    selectionOf/The value between the selected values and the max values when using selection limit.
    searchPlaceholderSearch...The placeholder for the search input.
    buttonDefaultTextSelectThe default text that used for the button when no items selected.
    dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
    selectGroupSelect All:The prefix of the group selection.
    '), e.put("app/v1docs/v1docs.template.html",'Main docs

    Full V1 API Documentation

    Attributes

    List of allowed attributes, you can find more information about them in the usage examples above.

    Attribute NameTypeDescription
    selected-modelObject / ArrayThe object the will contain the model for the selected items in the dropdown.
    optionsObject / ArrayThe options for the dropdown.
    extra-settingsObjectThe settings for the directive, more information about these settings are available below.
    eventsObjectEvents callbacks, more information below.
    translation-textsObjectGives the ability to modify the default texts in the directive. More information below.
    group-byStringThe name of the property which you like to group by your options. See grouping example.
    checkboxesBooleanIndicated if to show a normal dropdown with glyphicons or HTML checkboxes.
    search-filterStringUses for settings the search filter from outside the direcrtive.
    disabledBooleanUsed for disabling the dropdown.

    Settings

    Available settings that effects the display or behavior of the directive.
    These setting are set with the "extra-settings" attribute.

    Property NameTypeDefault ValueDescription
    dynamicTitleBooleantrueIndicates if the text of the button should change when selecting items from the list.
    closeOnBlurBooleantrueIndicates if the dropdown should close when clicking outside of it\'s scope.
    displayPropStringlabelThe name of the property that contains the text for the item.
    idPropStringidThe name of the property that contains the id for the elements.
    externalIdPropStringidThe name of the property that will use for the selected items model.
    enableSearchBooleanfalseIndicated if to show the search input or not.
    clearSearchOnCloseBooleanfalseIndicated if to clear the search field when the dropdown has closed.
    searchFieldString"$"Indicates on which field the search should be done
    selectionLimitNumber0The max allowed selected items for the list. For more information see the examples above.
    showCheckAllBooleantrueIndicates if to show the "Check All" item.
    showUncheckAllBooleantrueIndicates if to show the "Uncheck All" item.
    showEnableSearchButtonBooleanfalseIndicates if to show the "Enable search / Disable search" item.
    closeOnSelectBooleanfalseIndicates if to close the dropdown after checking an item on the list.
    closeOnDeselectBooleanfalseIndicates if to close the dropdown after unchecking an item on the list. With selectionLimit = 1 setting this to true does the same as setting closeOnSelect to true.
    buttonClassesStringbtn btn-defaultThe CSS classes that used for setting the style of the button.
    groupByTextProviderFunctionangular.noopA callback to a function that provide that name for each group when using group-by attribute. The parameter for the function will be the value of the group-by property.
    scrollableBooleanfalseIndicates if the dropdown is scrollable, useful if you have a lot of items.
    scrollableHeightNumber300pxIndicates the height of the drop down if the dropdown is scrollable.
    smartButtonMaxItemsNumber0Manages the "Smart Button Text" feature, defines the maximum amount of items to on the button.
    smartButtonTextConverterFunctionangular.noopRelated the "Smart Button Text" feature, if a function provided - it will called with two paramters: The item\'s text and the original item, the return value will displayed instead of the item\'s display property. This feature is useful when you want to convert the displayed text into something else.
    styleActiveBooleanfalseIndicates if the list items should get a class active applied when they are selected.
    keyboardControlBooleanfalseWhen activated the dropdown can be used with the keyboard instead of with the mouse.
    templateString{ {getPropertyForObject(option, settings.displayProp)} }Can be used to modify the appearance of an option in the list, each option is accessible as option.
    selectByGroupsArrayundefinedValues of the groupby property that you want to be selectable as group

    Events

    Available event callbacks what the directive fires. These callbacks are set with "events" attribute.

    Event NameParametersDescription
    onItemSelectitemFired when selecting an item.
    onItemDeselectitemFired when unselecting an item.
    onSelectAllFired when clicking select all.
    onDeselectAllFired when clicking unselect all.
    onInitDoneFired when the directive done with the "link" phase.
    onMaxSelectionReachedFired when the user reaches the max allowed selected items.
    onSelectionChangedFired when the selection changes.

    Translation Texts

    Available texts that you can override if you wan\'t to make a translation for your website. These are set with the "translation-texts" attribute.

    Property NameDefault ValueDescription
    checkAllCheck All"Check All" item\'s text.
    uncheckAllUncheck All"Uncheck All" item\'s text.
    enableSearchEnable search"enable search" item\'s text.
    disableSearchDisable search"disable search" item\'s text.
    selectionCountcheckedThe suffix for "X/Y" that showed when using selection limit.
    selectionOf/The value between the selected values and the max values when using selection limit.
    searchPlaceholderSearch...The placeholder for the search input.
    buttonDefaultTextSelectThe default text that used for the button when no items selected.
    dynamicButtonTextSuffixcheckedThe suffix for the button that used when using "dynamicText".
    selectGroupSelect All:The prefix of the group selection.
    ')}]); //# sourceMappingURL=../maps/scripts/app.js.map diff --git a/docs/scripts/vendor.js b/docs/scripts/vendor.js index bdce7166..87506fdf 100644 --- a/docs/scripts/vendor.js +++ b/docs/scripts/vendor.js @@ -11,7 +11,7 @@ * * Date: 2017-03-16T21:26Z */ -!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){t=t||ne;var n=t.createElement("script");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}function r(e){var t=!!e&&"length"in e&&e.length,n=me.type(e);return"function"===n||me.isWindow(e)?!1:"array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e}function i(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}function o(e,t,n){return me.isFunction(t)?me.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?me.grep(e,function(e){return e===t!==n}):"string"!=typeof t?me.grep(e,function(e){return se.call(t,e)>-1!==n}):De.test(t)?me.filter(t,e,n):(t=me.filter(t,e),me.grep(e,function(e){return se.call(t,e)>-1!==n&&1===e.nodeType}))}function a(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function s(e){var t={};return me.each(e.match(Ae)||[],function(e,n){t[n]=!0}),t}function l(e){return e}function u(e){throw e}function c(e,t,n,r){var i;try{e&&me.isFunction(i=e.promise)?i.call(e).done(t).fail(n):e&&me.isFunction(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}function p(){ne.removeEventListener("DOMContentLoaded",p),e.removeEventListener("load",p),me.ready()}function d(){this.expando=me.expando+d.uid++}function f(e){return"true"===e?!0:"false"===e?!1:"null"===e?null:e===+e+""?+e:Be.test(e)?JSON.parse(e):e}function h(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(_e,"-$&").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n=f(n)}catch(i){}Re.set(e,t,n)}else n=void 0;return n}function m(e,t,n,r){var i,o=1,a=20,s=r?function(){return r.cur()}:function(){return me.css(e,t,"")},l=s(),u=n&&n[3]||(me.cssNumber[t]?"":"px"),c=(me.cssNumber[t]||"px"!==u&&+l)&&Ve.exec(me.css(e,t));if(c&&c[3]!==u){u=u||c[3],n=n||[],c=+l||1;do o=o||".5",c/=o,me.style(e,t,c+u);while(o!==(o=s()/l)&&1!==o&&--a)}return n&&(c=+c||+l||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=u,r.start=c,r.end=i)),i}function g(e){var t,n=e.ownerDocument,r=e.nodeName,i=He[r];return i?i:(t=n.body.appendChild(n.createElement(r)),i=me.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),He[r]=i,i)}function v(e,t){for(var n,r,i=[],o=0,a=e.length;a>o;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&&qe(r)&&(i[o]=g(r))):"none"!==n&&(i[o]="none",Fe.set(r,"display",n)));for(o=0;a>o;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}function b(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&i(e,t)?me.merge([e],n):n}function y(e,t){for(var n=0,r=e.length;r>n;n++)Fe.set(e[n],"globalEval",!t||Fe.get(t[n],"globalEval"))}function $(e,t,n,r,i){for(var o,a,s,l,u,c,p=t.createDocumentFragment(),d=[],f=0,h=e.length;h>f;f++)if(o=e[f],o||0===o)if("object"===me.type(o))me.merge(d,o.nodeType?[o]:o);else if(Ze.test(o)){for(a=a||p.appendChild(t.createElement("div")),s=(We.exec(o)||["",""])[1].toLowerCase(),l=Ke[s]||Ke._default,a.innerHTML=l[1]+me.htmlPrefilter(o)+l[2],c=l[0];c--;)a=a.lastChild;me.merge(d,a.childNodes),a=p.firstChild,a.textContent=""}else d.push(t.createTextNode(o));for(p.textContent="",f=0;o=d[f++];)if(r&&me.inArray(o,r)>-1)i&&i.push(o);else if(u=me.contains(o.ownerDocument,o),a=b(p.appendChild(o),"script"),u&&y(a),n)for(c=0;o=a[c++];)Qe.test(o.type||"")&&n.push(o);return p}function x(){return!0}function C(){return!1}function w(){try{return ne.activeElement}catch(e){}}function S(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)S(e,s,n,r,t[s],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)),i===!1)i=C;else if(!i)return e;return 1===o&&(a=i,i=function(e){return me().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=me.guid++)),e.each(function(){me.event.add(this,t,i,r,n)})}function D(e,t){return i(e,"table")&&i(11!==t.nodeType?t:t.firstChild,"tr")?me(">tbody",e)[0]||e:e}function T(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function k(e){var t=it.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function M(e,t){var n,r,i,o,a,s,l,u;if(1===t.nodeType){if(Fe.hasData(e)&&(o=Fe.access(e),a=Fe.set(t,o),u=o.events)){delete a.handle,a.events={};for(i in u)for(n=0,r=u[i].length;r>n;n++)me.event.add(t,i,u[i][n])}Re.hasData(e)&&(s=Re.access(e),l=me.extend({},s),Re.set(t,l))}}function E(e,t){var n=t.nodeName.toLowerCase();"input"===n&&ze.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}function N(e,t,r,i){t=oe.apply([],t);var o,a,s,l,u,c,p=0,d=e.length,f=d-1,h=t[0],m=me.isFunction(h);if(m||d>1&&"string"==typeof h&&!fe.checkClone&&rt.test(h))return e.each(function(n){var o=e.eq(n);m&&(t[0]=h.call(this,n,o.html())),N(o,t,r,i)});if(d&&(o=$(t,e[0].ownerDocument,!1,e,i),a=o.firstChild,1===o.childNodes.length&&(o=a),a||i)){for(s=me.map(b(o,"script"),T),l=s.length;d>p;p++)u=o,p!==f&&(u=me.clone(u,!0,!0),l&&me.merge(s,b(u,"script"))),r.call(e[p],u,p);if(l)for(c=s[s.length-1].ownerDocument,me.map(s,k),p=0;l>p;p++)u=s[p],Qe.test(u.type||"")&&!Fe.access(u,"globalEval")&&me.contains(c,u)&&(u.src?me._evalUrl&&me._evalUrl(u.src):n(u.textContent.replace(ot,""),c))}return e}function A(e,t,n){for(var r,i=t?me.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||me.cleanData(b(r)),r.parentNode&&(n&&me.contains(r.ownerDocument,r)&&y(b(r,"script")),r.parentNode.removeChild(r));return e}function P(e,t,n){var r,i,o,a,s=e.style;return n=n||lt(e),n&&(a=n.getPropertyValue(t)||n[t],""!==a||me.contains(e.ownerDocument,e)||(a=me.style(e,t)),!fe.pixelMarginRight()&&st.test(a)&&at.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function L(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function I(e){if(e in ht)return e;for(var t=e[0].toUpperCase()+e.slice(1),n=ft.length;n--;)if(e=ft[n]+t,e in ht)return e}function O(e){var t=me.cssProps[e];return t||(t=me.cssProps[e]=I(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 R(e,t,n,r,i){var o,a=0;for(o=n===(r?"border":"content")?4:"width"===t?1:0;4>o;o+=2)"margin"===n&&(a+=me.css(e,n+je[o],!0,i)),r?("content"===n&&(a-=me.css(e,"padding"+je[o],!0,i)),"margin"!==n&&(a-=me.css(e,"border"+je[o]+"Width",!0,i))):(a+=me.css(e,"padding"+je[o],!0,i),"padding"!==n&&(a+=me.css(e,"border"+je[o]+"Width",!0,i)));return a}function B(e,t,n){var r,i=lt(e),o=P(e,t,i),a="border-box"===me.css(e,"boxSizing",!1,i);return st.test(o)?o:(r=a&&(fe.boxSizingReliable()||o===e.style[t]),o=parseFloat(o)||0,o+R(e,t,n||(a?"border":"content"),r,i)+"px")}function _(e,t,n,r,i){return new _.prototype.init(e,t,n,r,i)}function U(){gt&&(ne.hidden===!1&&e.requestAnimationFrame?e.requestAnimationFrame(U):e.setTimeout(U,me.fx.interval),me.fx.tick())}function V(){return e.setTimeout(function(){mt=void 0}),mt=me.now()}function j(e,t){var n,r=0,i={height:e};for(t=t?1:0;4>r;r+=2-t)n=je[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function q(e,t,n){for(var r,i=(z.tweeners[t]||[]).concat(z.tweeners["*"]),o=0,a=i.length;a>o;o++)if(r=i[o].call(n,t,e))return r}function G(e,t,n){var r,i,o,a,s,l,u,c,p="width"in t||"height"in t,d=this,f={},h=e.style,m=e.nodeType&&qe(e),g=Fe.get(e,"fxshow");n.queue||(a=me._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,d.always(function(){d.always(function(){a.unqueued--,me.queue(e,"fx").length||a.empty.fire()})}));for(r in t)if(i=t[r],vt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(m?"hide":"show")){if("show"!==i||!g||void 0===g[r])continue;m=!0}f[r]=g&&g[r]||me.style(e,r)}if(l=!me.isEmptyObject(t),l||!me.isEmptyObject(f)){p&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],u=g&&g.display,null==u&&(u=Fe.get(e,"display")),c=me.css(e,"display"),"none"===c&&(u?c=u:(v([e],!0),u=e.style.display||u,c=me.css(e,"display"),v([e]))),("inline"===c||"inline-block"===c&&null!=u)&&"none"===me.css(e,"float")&&(l||(d.done(function(){h.display=u}),null==u&&(c=h.display,u="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",d.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),l=!1;for(r in f)l||(g?"hidden"in g&&(m=g.hidden):g=Fe.access(e,"fxshow",{display:u}),o&&(g.hidden=!m),m&&v([e],!0),d.done(function(){m||v([e]),Fe.remove(e,"fxshow");for(r in f)me.style(e,r,f[r])})),l=q(m?g[r]:0,r,d),r in g||(g[r]=l.start,m&&(l.end=l.start,l.start=0))}}function H(e,t){var n,r,i,o,a;for(n in e)if(r=me.camelCase(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]),a=me.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function z(e,t,n){var r,i,o=0,a=z.prefilters.length,s=me.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;for(var t=mt||V(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens.length;l>a;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),1>o&&l?n:(l||s.notifyWith(e,[u,1,0]),s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:me.extend({},t),opts:me.extend(!0,{specialEasing:{},easing:me.easing._default},n),originalProperties:t,originalOptions:n,startTime:mt||V(),duration:n.duration,tweens:[],createTween:function(t,n){var r=me.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)u.tweens[n].run(1);return t?(s.notifyWith(e,[u,1,0]),s.resolveWith(e,[u,t])):s.rejectWith(e,[u,t]),this}}),c=u.props;for(H(c,u.opts.specialEasing);a>o;o++)if(r=z.prefilters[o].call(u,e,c,u.opts))return me.isFunction(r.stop)&&(me._queueHooks(u.elem,u.opts.queue).stop=me.proxy(r.stop,r)),r;return me.map(c,q,u),me.isFunction(u.opts.start)&&u.opts.start.call(e,u),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always),me.fx.timer(me.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u}function W(e){var t=e.match(Ae)||[];return t.join(" ")}function Q(e){return e.getAttribute&&e.getAttribute("class")||""}function K(e,t,n,r){var i;if(Array.isArray(t))me.each(t,function(t,i){n||Mt.test(e)?r(e,i):K(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==me.type(t))r(e,t);else for(i in t)K(e+"["+i+"]",t[i],n,r)}function Z(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(Ae)||[];if(me.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function X(e,t,n,r){function i(s){var l;return o[s]=!0,me.each(e[s]||[],function(e,s){var u=s(t,n,r);return"string"!=typeof u||a||o[u]?a?!(l=u):void 0:(t.dataTypes.unshift(u),i(u),!1)}),l}var o={},a=e===Ut;return i(t.dataTypes[0])||!o["*"]&&i("*")}function Y(e,t){var n,r,i=me.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&me.extend(!0,e,r),e}function J(e,t,n){for(var r,i,o,a,s=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){l.unshift(i);break}if(l[0]in n)o=l[0];else{for(i in n){if(!l[0]||e.converters[i+" "+l[0]]){o=i;break}a||(a=i)}o=o||a}return o?(o!==l[0]&&l.unshift(o),n[o]):void 0}function ee(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}var te=[],ne=e.document,re=Object.getPrototypeOf,ie=te.slice,oe=te.concat,ae=te.push,se=te.indexOf,le={},ue=le.toString,ce=le.hasOwnProperty,pe=ce.toString,de=pe.call(Object),fe={},he="3.2.0",me=function(e,t){return new me.fn.init(e,t)},ge=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ve=/^-ms-/,be=/-([a-z])/g,ye=function(e,t){return t.toUpperCase()};me.fn=me.prototype={jquery:he,constructor:me,length:0,toArray:function(){return ie.call(this)},get:function(e){return null==e?ie.call(this):0>e?this[e+this.length]:this[e]},pushStack:function(e){var t=me.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return me.each(this,e)},map:function(e){return this.pushStack(me.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ie.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:ae,sort:te.sort,splice:te.splice},me.extend=me.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,l=arguments.length,u=!1;for("boolean"==typeof a&&(u=a,a=arguments[s]||{},s++),"object"==typeof a||me.isFunction(a)||(a={}),s===l&&(a=this,s--);l>s;s++)if(null!=(e=arguments[s]))for(t in e)n=a[t],r=e[t],a!==r&&(u&&r&&(me.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&me.isPlainObject(n)?n:{},a[t]=me.extend(u,o,r)):void 0!==r&&(a[t]=r));return a},me.extend({expando:"jQuery"+(he+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===me.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=me.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return e&&"[object Object]"===ue.call(e)?(t=re(e))?(n=ce.call(t,"constructor")&&t.constructor,"function"==typeof n&&pe.call(n)===de):!0:!1},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?le[ue.call(e)]||"object":typeof e},globalEval:function(e){n(e)},camelCase:function(e){return e.replace(ve,"ms-").replace(be,ye)},each:function(e,t){var n,i=0;if(r(e))for(n=e.length;n>i&&t.call(e[i],i,e[i])!==!1;i++);else for(i in e)if(t.call(e[i],i,e[i])===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(ge,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(r(Object(e))?me.merge(n,"string"==typeof e?[e]:e):ae.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:se.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;n>r;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;a>o;o++)r=!t(e[o],o),r!==s&&i.push(e[o]);return i},map:function(e,t,n){var i,o,a=0,s=[];if(r(e))for(i=e.length;i>a;a++)o=t(e[a],a,n),null!=o&&s.push(o);else for(a in e)o=t(e[a],a,n),null!=o&&s.push(o);return oe.apply([],s)},guid:1,proxy:function(e,t){var n,r,i;return"string"==typeof t&&(n=e[t],t=e,e=n),me.isFunction(e)?(r=ie.call(arguments,2),i=function(){return e.apply(t||this,r.concat(ie.call(arguments)))},i.guid=e.guid=e.guid||me.guid++,i):void 0},now:Date.now,support:fe}),"function"==typeof Symbol&&(me.fn[Symbol.iterator]=te[Symbol.iterator]),me.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){le["[object "+t+"]"]=t.toLowerCase()});var $e=/*! +!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){t=t||ne;var n=t.createElement("script");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}function r(e){var t=!!e&&"length"in e&&e.length,n=me.type(e);return"function"===n||me.isWindow(e)?!1:"array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e}function i(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}function o(e,t,n){return me.isFunction(t)?me.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?me.grep(e,function(e){return e===t!==n}):"string"!=typeof t?me.grep(e,function(e){return se.call(t,e)>-1!==n}):Se.test(t)?me.filter(t,e,n):(t=me.filter(t,e),me.grep(e,function(e){return se.call(t,e)>-1!==n&&1===e.nodeType}))}function a(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function s(e){var t={};return me.each(e.match(Oe)||[],function(e,n){t[n]=!0}),t}function u(e){return e}function l(e){throw e}function c(e,t,n,r){var i;try{e&&me.isFunction(i=e.promise)?i.call(e).done(t).fail(n):e&&me.isFunction(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}function p(){ne.removeEventListener("DOMContentLoaded",p),e.removeEventListener("load",p),me.ready()}function f(){this.expando=me.expando+f.uid++}function d(e){return"true"===e?!0:"false"===e?!1:"null"===e?null:e===+e+""?+e:Ve.test(e)?JSON.parse(e):e}function h(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Re,"-$&").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n=d(n)}catch(i){}Fe.set(e,t,n)}else n=void 0;return n}function m(e,t,n,r){var i,o=1,a=20,s=r?function(){return r.cur()}:function(){return me.css(e,t,"")},u=s(),l=n&&n[3]||(me.cssNumber[t]?"":"px"),c=(me.cssNumber[t]||"px"!==l&&+u)&&Ue.exec(me.css(e,t));if(c&&c[3]!==l){l=l||c[3],n=n||[],c=+u||1;do o=o||".5",c/=o,me.style(e,t,c+l);while(o!==(o=s()/u)&&1!==o&&--a)}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}function g(e){var t,n=e.ownerDocument,r=e.nodeName,i=We[r];return i?i:(t=n.body.appendChild(n.createElement(r)),i=me.css(t,"display"),t.parentNode.removeChild(t),"none"===i&&(i="block"),We[r]=i,i)}function v(e,t){for(var n,r,i=[],o=0,a=e.length;a>o;o++)r=e[o],r.style&&(n=r.style.display,t?("none"===n&&(i[o]=qe.get(r,"display")||null,i[o]||(r.style.display="")),""===r.style.display&&_e(r)&&(i[o]=g(r))):"none"!==n&&(i[o]="none",qe.set(r,"display",n)));for(o=0;a>o;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}function $(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&i(e,t)?me.merge([e],n):n}function b(e,t){for(var n=0,r=e.length;r>n;n++)qe.set(e[n],"globalEval",!t||qe.get(t[n],"globalEval"))}function y(e,t,n,r,i){for(var o,a,s,u,l,c,p=t.createDocumentFragment(),f=[],d=0,h=e.length;h>d;d++)if(o=e[d],o||0===o)if("object"===me.type(o))me.merge(f,o.nodeType?[o]:o);else if(Xe.test(o)){for(a=a||p.appendChild(t.createElement("div")),s=(Ye.exec(o)||["",""])[1].toLowerCase(),u=Ke[s]||Ke._default,a.innerHTML=u[1]+me.htmlPrefilter(o)+u[2],c=u[0];c--;)a=a.lastChild;me.merge(f,a.childNodes),a=p.firstChild,a.textContent=""}else f.push(t.createTextNode(o));for(p.textContent="",d=0;o=f[d++];)if(r&&me.inArray(o,r)>-1)i&&i.push(o);else if(l=me.contains(o.ownerDocument,o),a=$(p.appendChild(o),"script"),l&&b(a),n)for(c=0;o=a[c++];)Ge.test(o.type||"")&&n.push(o);return p}function w(){return!0}function x(){return!1}function k(){try{return ne.activeElement}catch(e){}}function C(e,t,n,r,i,o){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)C(e,s,n,r,t[s],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)),i===!1)i=x;else if(!i)return e;return 1===o&&(a=i,i=function(e){return me().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=me.guid++)),e.each(function(){me.event.add(this,t,i,r,n)})}function S(e,t){return i(e,"table")&&i(11!==t.nodeType?t:t.firstChild,"tr")?me(">tbody",e)[0]||e:e}function T(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function E(e){var t=it.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function D(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(qe.hasData(e)&&(o=qe.access(e),a=qe.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;r>n;n++)me.event.add(t,i,l[i][n])}Fe.hasData(e)&&(s=Fe.access(e),u=me.extend({},s),Fe.set(t,u))}}function A(e,t){var n=t.nodeName.toLowerCase();"input"===n&&ze.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}function M(e,t,r,i){t=oe.apply([],t);var o,a,s,u,l,c,p=0,f=e.length,d=f-1,h=t[0],m=me.isFunction(h);if(m||f>1&&"string"==typeof h&&!de.checkClone&&rt.test(h))return e.each(function(n){var o=e.eq(n);m&&(t[0]=h.call(this,n,o.html())),M(o,t,r,i)});if(f&&(o=y(t,e[0].ownerDocument,!1,e,i),a=o.firstChild,1===o.childNodes.length&&(o=a),a||i)){for(s=me.map($(o,"script"),T),u=s.length;f>p;p++)l=o,p!==d&&(l=me.clone(l,!0,!0),u&&me.merge(s,$(l,"script"))),r.call(e[p],l,p);if(u)for(c=s[s.length-1].ownerDocument,me.map(s,E),p=0;u>p;p++)l=s[p],Ge.test(l.type||"")&&!qe.access(l,"globalEval")&&me.contains(c,l)&&(l.src?me._evalUrl&&me._evalUrl(l.src):n(l.textContent.replace(ot,""),c))}return e}function O(e,t,n){for(var r,i=t?me.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||me.cleanData($(r)),r.parentNode&&(n&&me.contains(r.ownerDocument,r)&&b($(r,"script")),r.parentNode.removeChild(r));return e}function P(e,t,n){var r,i,o,a,s=e.style;return n=n||ut(e),n&&(a=n.getPropertyValue(t)||n[t],""!==a||me.contains(e.ownerDocument,e)||(a=me.style(e,t)),!de.pixelMarginRight()&&st.test(a)&&at.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function N(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function j(e){if(e in ht)return e;for(var t=e[0].toUpperCase()+e.slice(1),n=dt.length;n--;)if(e=dt[n]+t,e in ht)return e}function I(e){var t=me.cssProps[e];return t||(t=me.cssProps[e]=j(e)||e),t}function q(e,t,n){var r=Ue.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function F(e,t,n,r,i){var o,a=0;for(o=n===(r?"border":"content")?4:"width"===t?1:0;4>o;o+=2)"margin"===n&&(a+=me.css(e,n+Le[o],!0,i)),r?("content"===n&&(a-=me.css(e,"padding"+Le[o],!0,i)),"margin"!==n&&(a-=me.css(e,"border"+Le[o]+"Width",!0,i))):(a+=me.css(e,"padding"+Le[o],!0,i),"padding"!==n&&(a+=me.css(e,"border"+Le[o]+"Width",!0,i)));return a}function V(e,t,n){var r,i=ut(e),o=P(e,t,i),a="border-box"===me.css(e,"boxSizing",!1,i);return st.test(o)?o:(r=a&&(de.boxSizingReliable()||o===e.style[t]),o=parseFloat(o)||0,o+F(e,t,n||(a?"border":"content"),r,i)+"px")}function R(e,t,n,r,i){return new R.prototype.init(e,t,n,r,i)}function H(){gt&&(ne.hidden===!1&&e.requestAnimationFrame?e.requestAnimationFrame(H):e.setTimeout(H,me.fx.interval),me.fx.tick())}function U(){return e.setTimeout(function(){mt=void 0}),mt=me.now()}function L(e,t){var n,r=0,i={height:e};for(t=t?1:0;4>r;r+=2-t)n=Le[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function _(e,t,n){for(var r,i=(z.tweeners[t]||[]).concat(z.tweeners["*"]),o=0,a=i.length;a>o;o++)if(r=i[o].call(n,t,e))return r}function B(e,t,n){var r,i,o,a,s,u,l,c,p="width"in t||"height"in t,f=this,d={},h=e.style,m=e.nodeType&&_e(e),g=qe.get(e,"fxshow");n.queue||(a=me._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,f.always(function(){f.always(function(){a.unqueued--,me.queue(e,"fx").length||a.empty.fire()})}));for(r in t)if(i=t[r],vt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(m?"hide":"show")){if("show"!==i||!g||void 0===g[r])continue;m=!0}d[r]=g&&g[r]||me.style(e,r)}if(u=!me.isEmptyObject(t),u||!me.isEmptyObject(d)){p&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],l=g&&g.display,null==l&&(l=qe.get(e,"display")),c=me.css(e,"display"),"none"===c&&(l?c=l:(v([e],!0),l=e.style.display||l,c=me.css(e,"display"),v([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===me.css(e,"float")&&(u||(f.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",f.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1;for(r in d)u||(g?"hidden"in g&&(m=g.hidden):g=qe.access(e,"fxshow",{display:l}),o&&(g.hidden=!m),m&&v([e],!0),f.done(function(){m||v([e]),qe.remove(e,"fxshow");for(r in d)me.style(e,r,d[r])})),u=_(m?g[r]:0,r,f),r in g||(g[r]=u.start,m&&(u.end=u.start,u.start=0))}}function W(e,t){var n,r,i,o,a;for(n in e)if(r=me.camelCase(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]),a=me.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function z(e,t,n){var r,i,o=0,a=z.prefilters.length,s=me.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=mt||U(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;u>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&u?n:(u||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:me.extend({},t),opts:me.extend(!0,{specialEasing:{},easing:me.easing._default},n),originalProperties:t,originalOptions:n,startTime:mt||U(),duration:n.duration,tweens:[],createTween:function(t,n){var r=me.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(W(c,l.opts.specialEasing);a>o;o++)if(r=z.prefilters[o].call(l,e,c,l.opts))return me.isFunction(r.stop)&&(me._queueHooks(l.elem,l.opts.queue).stop=me.proxy(r.stop,r)),r;return me.map(c,_,l),me.isFunction(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),me.fx.timer(me.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l}function Y(e){var t=e.match(Oe)||[];return t.join(" ")}function G(e){return e.getAttribute&&e.getAttribute("class")||""}function K(e,t,n,r){var i;if(Array.isArray(t))me.each(t,function(t,i){n||Dt.test(e)?r(e,i):K(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==me.type(t))r(e,t);else for(i in t)K(e+"["+i+"]",t[i],n,r)}function X(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(Oe)||[];if(me.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Z(e,t,n,r){function i(s){var u;return o[s]=!0,me.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!=typeof l||a||o[l]?a?!(u=l):void 0:(t.dataTypes.unshift(l),i(l),!1)}),u}var o={},a=e===Ht;return i(t.dataTypes[0])||!o["*"]&&i("*")}function J(e,t){var n,r,i=me.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&me.extend(!0,e,r),e}function Q(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[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}a||(a=i)}o=o||a}return o?(o!==u[0]&&u.unshift(o),n[o]):void 0}function ee(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(a=l[u+" "+o]||l["* "+o],!a)for(i in l)if(s=i.split(" "),s[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){a===!0?a=l[i]:l[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}var te=[],ne=e.document,re=Object.getPrototypeOf,ie=te.slice,oe=te.concat,ae=te.push,se=te.indexOf,ue={},le=ue.toString,ce=ue.hasOwnProperty,pe=ce.toString,fe=pe.call(Object),de={},he="3.2.0",me=function(e,t){return new me.fn.init(e,t)},ge=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ve=/^-ms-/,$e=/-([a-z])/g,be=function(e,t){return t.toUpperCase()};me.fn=me.prototype={jquery:he,constructor:me,length:0,toArray:function(){return ie.call(this)},get:function(e){return null==e?ie.call(this):0>e?this[e+this.length]:this[e]},pushStack:function(e){var t=me.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return me.each(this,e)},map:function(e){return this.pushStack(me.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ie.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:ae,sort:te.sort,splice:te.splice},me.extend=me.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||me.isFunction(a)||(a={}),s===u&&(a=this,s--);u>s;s++)if(null!=(e=arguments[s]))for(t in e)n=a[t],r=e[t],a!==r&&(l&&r&&(me.isPlainObject(r)||(i=Array.isArray(r)))?(i?(i=!1,o=n&&Array.isArray(n)?n:[]):o=n&&me.isPlainObject(n)?n:{},a[t]=me.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},me.extend({expando:"jQuery"+(he+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===me.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=me.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return e&&"[object Object]"===le.call(e)?(t=re(e))?(n=ce.call(t,"constructor")&&t.constructor,"function"==typeof n&&pe.call(n)===fe):!0:!1},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?ue[le.call(e)]||"object":typeof e},globalEval:function(e){n(e)},camelCase:function(e){return e.replace(ve,"ms-").replace($e,be)},each:function(e,t){var n,i=0;if(r(e))for(n=e.length;n>i&&t.call(e[i],i,e[i])!==!1;i++);else for(i in e)if(t.call(e[i],i,e[i])===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(ge,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(r(Object(e))?me.merge(n,"string"==typeof e?[e]:e):ae.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:se.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;n>r;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;a>o;o++)r=!t(e[o],o),r!==s&&i.push(e[o]);return i},map:function(e,t,n){var i,o,a=0,s=[];if(r(e))for(i=e.length;i>a;a++)o=t(e[a],a,n),null!=o&&s.push(o);else for(a in e)o=t(e[a],a,n),null!=o&&s.push(o);return oe.apply([],s)},guid:1,proxy:function(e,t){var n,r,i;return"string"==typeof t&&(n=e[t],t=e,e=n),me.isFunction(e)?(r=ie.call(arguments,2),i=function(){return e.apply(t||this,r.concat(ie.call(arguments)))},i.guid=e.guid=e.guid||me.guid++,i):void 0},now:Date.now,support:de}),"function"==typeof Symbol&&(me.fn[Symbol.iterator]=te[Symbol.iterator]),me.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){ue["[object "+t+"]"]=t.toLowerCase()});var ye=/*! * Sizzle CSS Selector Engine v2.3.3 * https://sizzlejs.com/ * @@ -21,38 +21,39 @@ * * Date: 2016-08-08 */ -function(e){function t(e,t,n,r){var i,o,a,s,l,u,c,d=t&&t.ownerDocument,h=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==h&&9!==h&&11!==h)return n;if(!r&&((t?t.ownerDocument||t:V)!==L&&P(t),t=t||L,O)){if(11!==h&&(l=ve.exec(e)))if(i=l[1]){if(9===h){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(d&&(a=d.getElementById(i))&&_(t,a)&&a.id===i)return n.push(a),n}else{if(l[2])return Y.apply(n,t.getElementsByTagName(e)),n;if((i=l[3])&&C.getElementsByClassName&&t.getElementsByClassName)return Y.apply(n,t.getElementsByClassName(i)),n}if(C.qsa&&!z[e+" "]&&(!F||!F.test(e))){if(1!==h)d=t,c=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(xe,Ce):t.setAttribute("id",s=U),u=T(e),o=u.length;o--;)u[o]="#"+s+" "+f(u[o]);c=u.join(","),d=be.test(e)&&p(t.parentNode)||t}if(c)try{return Y.apply(n,d.querySelectorAll(c)),n}catch(m){}finally{s===U&&t.removeAttribute("id")}}}return M(e.replace(se,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>w.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[U]=!0,e}function i(e){var t=L.createElement("fieldset");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)w.attrHandle[n[r]]=t}function a(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 s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function l(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function u(e){return function(t){return"form"in t?t.parentNode&&t.disabled===!1?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Se(t)===e:t.disabled===e:"label"in t?t.disabled===e:!1}}function c(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function p(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function d(){}function f(e){for(var t=0,n=e.length,r="";n>t;t++)r+=e[t].value;return r}function h(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=q++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,l){var u,c,p,d=[j,s];if(l){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,l))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(p=t[U]||(t[U]={}),c=p[t.uniqueID]||(p[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((u=c[o])&&u[0]===j&&u[1]===s)return d[2]=u[2];if(c[o]=d,d[2]=e(t,n,l))return!0}return!1}}function m(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 g(e,n,r){for(var i=0,o=n.length;o>i;i++)t(e,n[i],r);return r}function v(e,t,n,r,i){for(var o,a=[],s=0,l=e.length,u=null!=t;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function b(e,t,n,i,o,a){return i&&!i[U]&&(i=b(i)),o&&!o[U]&&(o=b(o,a)),r(function(r,a,s,l){var u,c,p,d=[],f=[],h=a.length,m=r||g(t||"*",s.nodeType?[s]:s,[]),b=!e||!r&&t?m:v(m,d,e,s,l),y=n?o||(r?e:h||i)?[]:a:b;if(n&&n(b,y,s,l),i)for(u=v(y,f),i(u,[],s,l),c=u.length;c--;)(p=u[c])&&(y[f[c]]=!(b[f[c]]=p));if(r){if(o||e){if(o){for(u=[],c=y.length;c--;)(p=y[c])&&u.push(b[c]=p);o(null,y=[],u,l)}for(c=y.length;c--;)(p=y[c])&&(u=o?ee(r,p):d[c])>-1&&(r[u]=!(a[u]=p))}}else y=v(y===a?y.splice(h,y.length):y),o?o(null,a,y,l):Y.apply(a,y)})}function y(e){for(var t,n,r,i=e.length,o=w.relative[e[0].type],a=o||w.relative[" "],s=o?1:0,l=h(function(e){return e===t},a,!0),u=h(function(e){return ee(t,e)>-1},a,!0),c=[function(e,n,r){var i=!o&&(r||n!==E)||((t=n).nodeType?l(e,n,r):u(e,n,r));return t=null,i}];i>s;s++)if(n=w.relative[e[s].type])c=[h(m(c),n)];else{if(n=w.filter[e[s].type].apply(null,e[s].matches),n[U]){for(r=++s;i>r&&!w.relative[e[r].type];r++);return b(s>1&&m(c),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),n,r>s&&y(e.slice(s,r)),i>r&&y(e=e.slice(r)),i>r&&f(e))}c.push(n)}return m(c)}function $(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,l,u){var c,p,d,f=0,h="0",m=r&&[],g=[],b=E,y=r||o&&w.find.TAG("*",u),$=j+=null==b?1:Math.random()||.1,x=y.length;for(u&&(E=a===L||a||u);h!==x&&null!=(c=y[h]);h++){if(o&&c){for(p=0,a||c.ownerDocument===L||(P(c),s=!O);d=e[p++];)if(d(c,a||L,s)){l.push(c);break}u&&(j=$)}i&&((c=!d&&c)&&f--,r&&m.push(c))}if(f+=h,i&&h!==f){for(p=0;d=n[p++];)d(m,g,a,s);if(r){if(f>0)for(;h--;)m[h]||g[h]||(g[h]=Z.call(l));g=v(g)}Y.apply(l,g),u&&!r&&g.length>0&&f+n.length>1&&t.uniqueSort(l)}return u&&(j=$,E=b),m};return i?r(a):a}var x,C,w,S,D,T,k,M,E,N,A,P,L,I,O,F,R,B,_,U="sizzle"+1*new Date,V=e.document,j=0,q=0,G=n(),H=n(),z=n(),W=function(e,t){return e===t&&(A=!0),0},Q={}.hasOwnProperty,K=[],Z=K.pop,X=K.push,Y=K.push,J=K.slice,ee=function(e,t){for(var n=0,r=e.length;r>n;n++)if(e[n]===t)return n;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ne="[\\x20\\t\\r\\n\\f]",re="(?:\\\\.|[\\w-]|[^\x00-\\xa0])+",ie="\\["+ne+"*("+re+")(?:"+ne+"*([*^$|!~]?=)"+ne+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+re+"))|)"+ne+"*\\]",oe=":("+re+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ie+")*)|.*)\\)|)",ae=new RegExp(ne+"+","g"),se=new RegExp("^"+ne+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ne+"+$","g"),le=new RegExp("^"+ne+"*,"+ne+"*"),ue=new RegExp("^"+ne+"*([>+~]|"+ne+")"+ne+"*"),ce=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),pe=new RegExp(oe),de=new RegExp("^"+re+"$"),fe={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+ie),PSEUDO:new RegExp("^"+oe),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},he=/^(?:input|select|textarea|button)$/i,me=/^h\d$/i,ge=/^[^{]+\{\s*\[native \w/,ve=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,be=/[+~]/,ye=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),$e=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,Ce=function(e,t){return t?"\x00"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},we=function(){P()},Se=h(function(e){return e.disabled===!0&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{Y.apply(K=J.call(V.childNodes),V.childNodes),K[V.childNodes.length].nodeType}catch(De){Y={apply:K.length?function(e,t){X.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}C=t.support={},D=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},P=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:V;return r!==L&&9===r.nodeType&&r.documentElement?(L=r,I=L.documentElement,O=!D(L),V!==L&&(n=L.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",we,!1):n.attachEvent&&n.attachEvent("onunload",we)),C.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),C.getElementsByTagName=i(function(e){return e.appendChild(L.createComment("")),!e.getElementsByTagName("*").length}),C.getElementsByClassName=ge.test(L.getElementsByClassName),C.getById=i(function(e){return I.appendChild(e).id=U,!L.getElementsByName||!L.getElementsByName(U).length}),C.getById?(w.filter.ID=function(e){var t=e.replace(ye,$e);return function(e){return e.getAttribute("id")===t}},w.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&O){var n=t.getElementById(e);return n?[n]:[]}}):(w.filter.ID=function(e){var t=e.replace(ye,$e);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},w.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&O){var n,r,i,o=t.getElementById(e);if(o){if(n=o.getAttributeNode("id"),n&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if(n=o.getAttributeNode("id"),n&&n.value===e)return[o]}return[]}}),w.find.TAG=C.getElementsByTagName?function(e,t){return"undefined"!=typeof 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},w.find.CLASS=C.getElementsByClassName&&function(e,t){return"undefined"!=typeof t.getElementsByClassName&&O?t.getElementsByClassName(e):void 0},R=[],F=[],(C.qsa=ge.test(L.querySelectorAll))&&(i(function(e){I.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&F.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||F.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+U+"-]").length||F.push("~="),e.querySelectorAll(":checked").length||F.push(":checked"),e.querySelectorAll("a#"+U+"+*").length||F.push(".#.+[+~]")}),i(function(e){e.innerHTML="";var t=L.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&F.push("name"+ne+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&F.push(":enabled",":disabled"),I.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&F.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),F.push(",.*:")})),(C.matchesSelector=ge.test(B=I.matches||I.webkitMatchesSelector||I.mozMatchesSelector||I.oMatchesSelector||I.msMatchesSelector))&&i(function(e){C.disconnectedMatch=B.call(e,"*"),B.call(e,"[s!='']:x"),R.push("!=",oe)}),F=F.length&&new RegExp(F.join("|")),R=R.length&&new RegExp(R.join("|")),t=ge.test(I.compareDocumentPosition),_=t||ge.test(I.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 A=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!C.sortDetached&&t.compareDocumentPosition(e)===n?e===L||e.ownerDocument===V&&_(V,e)?-1:t===L||t.ownerDocument===V&&_(V,t)?1:N?ee(N,e)-ee(N,t):0:4&n?-1:1)}:function(e,t){if(e===t)return A=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],l=[t];if(!i||!o)return e===L?-1:t===L?1:i?-1:o?1:N?ee(N,e)-ee(N,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)l.unshift(n);for(;s[r]===l[r];)r++;return r?a(s[r],l[r]):s[r]===V?-1:l[r]===V?1:0},L):L},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==L&&P(e),n=n.replace(ce,"='$1']"),C.matchesSelector&&O&&!z[n+" "]&&(!R||!R.test(n))&&(!F||!F.test(n)))try{var r=B.call(e,n);if(r||C.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return t(n,L,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==L&&P(e),_(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==L&&P(e);var n=w.attrHandle[t.toLowerCase()],r=n&&Q.call(w.attrHandle,t.toLowerCase())?n(e,t,!O):void 0;return void 0!==r?r:C.attributes||!O?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(xe,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(A=!C.detectDuplicates,N=!C.sortStable&&e.slice(0),e.sort(W),A){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return N=null,e},S=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+=S(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=S(t);return n},w=t.selectors={cacheLength:50,createPseudo:r,match:fe,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(ye,$e),e[3]=(e[3]||e[4]||e[5]||"").replace(ye,$e),"~="===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 fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&pe.test(n)&&(t=T(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(ye,$e).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=G[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&G(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof 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(ae," ")+" ").indexOf(r)>-1:"|="===n?o===r||o.slice(0,r.length+1)===r+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,d,f,h,m=o!==a?"nextSibling":"previousSibling",g=t.parentNode,v=s&&t.nodeName.toLowerCase(),b=!l&&!s,y=!1;if(g){if(o){for(;m;){for(d=t;d=d[m];)if(s?d.nodeName.toLowerCase()===v:1===d.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&b){for(d=g,p=d[U]||(d[U]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),u=c[e]||[],f=u[0]===j&&u[1],y=f&&u[2],d=f&&g.childNodes[f];d=++f&&d&&d[m]||(y=f=0)||h.pop();)if(1===d.nodeType&&++y&&d===t){c[e]=[j,f,y];break}}else if(b&&(d=t,p=d[U]||(d[U]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),u=c[e]||[],f=u[0]===j&&u[1],y=f),y===!1)for(;(d=++f&&d&&d[m]||(y=f=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==v:1!==d.nodeType)||!++y||(b&&(p=d[U]||(d[U]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),c[e]=[j,y]),d!==t)););return y-=i,y===r||y%r===0&&y/r>=0}}},PSEUDO:function(e,n){var i,o=w.pseudos[e]||w.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[U]?o(n):o.length>1?(i=[e,e,"",n],w.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=ee(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=k(e.replace(se,"$1"));return i[U]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=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(ye,$e),function(t){return(t.textContent||t.innerText||S(t)).indexOf(e)>-1}}),lang:r(function(e){return de.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(ye,$e).toLowerCase(),function(t){var n;do if(n=O?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===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===I},focus:function(e){return e===L.activeElement&&(!L.hasFocus||L.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:u(!1),disabled:u(!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,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!w.pseudos.empty(e)},header:function(e){return me.test(e.nodeName)},input:function(e){return he.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:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,n){return[0>n?n+t:n]}),even:c(function(e,t){for(var n=0;t>n;n+=2)e.push(n);return e}),odd:c(function(e,t){for(var n=1;t>n;n+=2)e.push(n);return e}),lt:c(function(e,t,n){for(var r=0>n?n+t:n;--r>=0;)e.push(r);return e}),gt:c(function(e,t,n){for(var r=0>n?n+t:n;++r2&&"ID"===(a=o[0]).type&&9===t.nodeType&&O&&w.relative[o[1].type]){if(t=(w.find.ID(a.matches[0].replace(ye,$e),t)||[])[0],!t)return n;u&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=fe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!w.relative[s=a.type]);)if((l=w.find[s])&&(r=l(a.matches[0].replace(ye,$e),be.test(o[0].type)&&p(t.parentNode)||t))){if(o.splice(i,1),e=r.length&&f(o),!e)return Y.apply(n,r),n;break}}return(u||k(e,c))(r,t,!O,n,!t||be.test(e)&&p(t.parentNode)||t),n},C.sortStable=U.split("").sort(W).join("")===U,C.detectDuplicates=!!A,P(),C.sortDetached=i(function(e){return 1&e.compareDocumentPosition(L.createElement("fieldset"))}),i(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){return n?void 0:e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),C.attributes&&i(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){return n||"input"!==e.nodeName.toLowerCase()?void 0:e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(te,function(e,t,n){var r;return n?void 0:e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);me.find=$e,me.expr=$e.selectors,me.expr[":"]=me.expr.pseudos,me.uniqueSort=me.unique=$e.uniqueSort,me.text=$e.getText,me.isXMLDoc=$e.isXML,me.contains=$e.contains,me.escapeSelector=$e.escape;var xe=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&me(e).is(n))break;r.push(e)}return r},Ce=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},we=me.expr.match.needsContext,Se=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,De=/^.[^:#\[\.,]*$/;me.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?me.find.matchesSelector(r,e)?[r]:[]:me.find.matches(e,me.grep(t,function(e){return 1===e.nodeType}))},me.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(me(e).filter(function(){for(t=0;r>t;t++)if(me.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;r>t;t++)me.find(e,i[t],n);return r>1?me.uniqueSort(n):n},filter:function(e){return this.pushStack(o(this,e||[],!1))},not:function(e){return this.pushStack(o(this,e||[],!0))},is:function(e){return!!o(this,"string"==typeof e&&we.test(e)?me(e):e||[],!1).length}});var Te,ke=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,Me=me.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||Te,"string"==typeof e){if(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:ke.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof me?t[0]:t,me.merge(this,me.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:ne,!0)),Se.test(r[1])&&me.isPlainObject(t))for(r in t)me.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=ne.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):me.isFunction(e)?void 0!==n.ready?n.ready(e):e(me):me.makeArray(e,this)};Me.prototype=me.fn,Te=me(ne);var Ee=/^(?:parents|prev(?:Until|All))/,Ne={children:!0,contents:!0,next:!0,prev:!0};me.fn.extend({has:function(e){var t=me(e,this),n=t.length;return this.filter(function(){for(var e=0;n>e;e++)if(me.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&me(e);if(!we.test(e))for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&me.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?me.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?se.call(me(e),this[0]):se.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(me.uniqueSort(me.merge(this.get(),me(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),me.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return xe(e,"parentNode")},parentsUntil:function(e,t,n){return xe(e,"parentNode",n)},next:function(e){return a(e,"nextSibling")},prev:function(e){return a(e,"previousSibling")},nextAll:function(e){return xe(e,"nextSibling")},prevAll:function(e){return xe(e,"previousSibling")},nextUntil:function(e,t,n){return xe(e,"nextSibling",n)},prevUntil:function(e,t,n){return xe(e,"previousSibling",n)},siblings:function(e){return Ce((e.parentNode||{}).firstChild,e)},children:function(e){return Ce(e.firstChild)},contents:function(e){return i(e,"iframe")?e.contentDocument:(i(e,"template")&&(e=e.content||e),me.merge([],e.childNodes))}},function(e,t){me.fn[e]=function(n,r){var i=me.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=me.filter(r,i)),this.length>1&&(Ne[e]||me.uniqueSort(i),Ee.test(e)&&i.reverse()),this.pushStack(i)}});var Ae=/[^\x20\t\r\n\f]+/g;me.Callbacks=function(e){e="string"==typeof e?s(e):me.extend({},e);var t,n,r,i,o=[],a=[],l=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;l=-1)for(n=a.shift();++l-1;)o.splice(n,1),l>=n&&l--}),this},has:function(e){return e?me.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},me.extend({Deferred:function(t){var n=[["notify","progress",me.Callbacks("memory"),me.Callbacks("memory"),2],["resolve","done",me.Callbacks("once memory"),me.Callbacks("once memory"),0,"resolved"],["reject","fail",me.Callbacks("once memory"),me.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 me.Deferred(function(t){me.each(n,function(n,r){var i=me.isFunction(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&me.isFunction(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 s=this,c=arguments,p=function(){var e,p;if(!(a>t)){if(e=r.apply(s,c),e===n.promise())throw new TypeError("Thenable self-resolution");p=e&&("object"==typeof e||"function"==typeof e)&&e.then,me.isFunction(p)?i?p.call(e,o(a,n,l,i),o(a,n,u,i)):(a++,p.call(e,o(a,n,l,i),o(a,n,u,i),o(a,n,l,n.notifyWith))):(r!==l&&(s=void 0,c=[e]),(i||n.resolveWith)(s,c))}},d=i?p:function(){try{p()}catch(e){me.Deferred.exceptionHook&&me.Deferred.exceptionHook(e,d.stackTrace),t+1>=a&&(r!==u&&(s=void 0,c=[e]),n.rejectWith(s,c))}};t?d():(me.Deferred.getStackHook&&(d.stackTrace=me.Deferred.getStackHook()),e.setTimeout(d))}}var a=0;return me.Deferred(function(e){n[0][3].add(o(0,e,me.isFunction(i)?i:l,e.notifyWith)),n[1][3].add(o(0,e,me.isFunction(t)?t:l)),n[2][3].add(o(0,e,me.isFunction(r)?r:u))}).promise()},promise:function(e){return null!=e?me.extend(e,i):i}},o={};return me.each(n,function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add(function(){r=s},n[3-e][2].disable,n[0][2].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=ie.call(arguments),o=me.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?ie.call(arguments):n,--t||o.resolveWith(r,i)}};if(1>=t&&(c(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||me.isFunction(i[n]&&i[n].then)))return o.then();for(;n--;)c(i[n],a(n),o.reject);return o.promise()}});var Pe=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;me.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&Pe.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},me.readyException=function(t){e.setTimeout(function(){throw t})};var Le=me.Deferred();me.fn.ready=function(e){return Le.then(e)["catch"](function(e){me.readyException(e)}),this},me.extend({isReady:!1,readyWait:1,ready:function(e){(e===!0?--me.readyWait:me.isReady)||(me.isReady=!0,e!==!0&&--me.readyWait>0||Le.resolveWith(ne,[me]))}}),me.ready.then=Le.then,"complete"===ne.readyState||"loading"!==ne.readyState&&!ne.documentElement.doScroll?e.setTimeout(me.ready):(ne.addEventListener("DOMContentLoaded",p),e.addEventListener("load",p));var Ie=function(e,t,n,r,i,o,a){var s=0,l=e.length,u=null==n;if("object"===me.type(n)){i=!0;for(s in n)Ie(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,me.isFunction(r)||(a=!0),u&&(a?(t.call(e,r),t=null):(u=t,t=function(e,t,n){return u.call(me(e),n)})),t))for(;l>s;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:u?t.call(e):l?t(e[0],n):o},Oe=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};d.uid=1,d.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Oe(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[me.camelCase(t)]=n;else for(r in t)i[me.camelCase(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][me.camelCase(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(me.camelCase):(t=me.camelCase(t),t=t in r?[t]:t.match(Ae)||[]),n=t.length;for(;n--;)delete r[t[n]]}(void 0===t||me.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&&!me.isEmptyObject(t)}};var Fe=new d,Re=new d,Be=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,_e=/[A-Z]/g;me.extend({hasData:function(e){return Re.hasData(e)||Fe.hasData(e)},data:function(e,t,n){return Re.access(e,t,n)},removeData:function(e,t){Re.remove(e,t)},_data:function(e,t,n){return Fe.access(e,t,n)},_removeData:function(e,t){Fe.remove(e,t)}}),me.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=Re.get(o),1===o.nodeType&&!Fe.get(o,"hasDataAttrs"))){for(n=a.length;n--;)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=me.camelCase(r.slice(5)),h(o,r,i[r])));Fe.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){Re.set(this,e)}):Ie(this,function(t){var n;if(o&&void 0===t){if(n=Re.get(o,e),void 0!==n)return n;if(n=h(o,e),void 0!==n)return n}else this.each(function(){Re.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Re.remove(this,e)})}}),me.extend({queue:function(e,t,n){var r;return e?(t=(t||"fx")+"queue",r=Fe.get(e,t),n&&(!r||Array.isArray(n)?r=Fe.access(e,t,me.makeArray(n)):r.push(n)),r||[]):void 0},dequeue:function(e,t){t=t||"fx";var n=me.queue(e,t),r=n.length,i=n.shift(),o=me._queueHooks(e,t),a=function(){me.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Fe.get(e,n)||Fe.access(e,n,{empty:me.Callbacks("once memory").add(function(){Fe.remove(e,[t+"queue",n])})})}}),me.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,Qe=/^$|\/(?:java|ecma)script/i,Ke={option:[1,""],thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};Ke.optgroup=Ke.option,Ke.tbody=Ke.tfoot=Ke.colgroup=Ke.caption=Ke.thead, -Ke.th=Ke.td;var Ze=/<|&#?\w+;/;!function(){var e=ne.createDocumentFragment(),t=e.appendChild(ne.createElement("div")),n=ne.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),fe.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="",fe.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Xe=ne.documentElement,Ye=/^key/,Je=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,et=/^([^.]*)(?:\.(.+)|)/;me.event={global:{},add:function(e,t,n,r,i){var o,a,s,l,u,c,p,d,f,h,m,g=Fe.get(e);if(g)for(n.handler&&(o=n,n=o.handler,i=o.selector),i&&me.find.matchesSelector(Xe,i),n.guid||(n.guid=me.guid++),(l=g.events)||(l=g.events={}),(a=g.handle)||(a=g.handle=function(t){return"undefined"!=typeof me&&me.event.triggered!==t.type?me.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Ae)||[""],u=t.length;u--;)s=et.exec(t[u])||[],f=m=s[1],h=(s[2]||"").split(".").sort(),f&&(p=me.event.special[f]||{},f=(i?p.delegateType:p.bindType)||f,p=me.event.special[f]||{},c=me.extend({type:f,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&me.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=l[f])||(d=l[f]=[],d.delegateCount=0,p.setup&&p.setup.call(e,r,h,a)!==!1||e.addEventListener&&e.addEventListener(f,a)),p.add&&(p.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),me.event.global[f]=!0)},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,d,f,h,m,g=Fe.hasData(e)&&Fe.get(e);if(g&&(l=g.events)){for(t=(t||"").match(Ae)||[""],u=t.length;u--;)if(s=et.exec(t[u])||[],f=m=s[1],h=(s[2]||"").split(".").sort(),f){for(p=me.event.special[f]||{},f=(r?p.delegateType:p.bindType)||f,d=l[f]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;o--;)c=d[o],!i&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,p.remove&&p.remove.call(e,c));a&&!d.length&&(p.teardown&&p.teardown.call(e,h,g.handle)!==!1||me.removeEvent(e,f,g.handle),delete l[f])}else for(f in l)me.event.remove(e,f+t[u],n,r,!0);me.isEmptyObject(l)&&Fe.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=me.event.fix(e),l=new Array(arguments.length),u=(Fe.get(this,"events")||{})[s.type]||[],c=me.event.special[s.type]||{};for(l[0]=s,t=1;t=1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&("click"!==e.type||u.disabled!==!0)){for(o=[],a={},n=0;l>n;n++)r=t[n],i=r.selector+" ",void 0===a[i]&&(a[i]=r.needsContext?me(i,this).index(u)>-1:me.find(i,this,null,[u]).length),a[i]&&o.push(r);o.length&&s.push({elem:u,handlers:o})}return u=this,l\x20\t\r\n\f]*)[^>]*)\/>/gi,nt=/\s*$/g;me.extend({htmlPrefilter:function(e){return e.replace(tt,"<$1>")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),l=me.contains(e.ownerDocument,e);if(!(fe.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||me.isXMLDoc(e)))for(a=b(s),o=b(e),r=0,i=o.length;i>r;r++)E(o[r],a[r]);if(t)if(n)for(o=o||b(e),a=a||b(s),r=0,i=o.length;i>r;r++)M(o[r],a[r]);else M(e,s);return a=b(s,"script"),a.length>0&&y(a,!l&&b(e,"script")),s},cleanData:function(e){for(var t,n,r,i=me.event.special,o=0;void 0!==(n=e[o]);o++)if(Oe(n)){if(t=n[Fe.expando]){if(t.events)for(r in t.events)i[r]?me.event.remove(n,r):me.removeEvent(n,r,t.handle);n[Fe.expando]=void 0}n[Re.expando]&&(n[Re.expando]=void 0)}}}),me.fn.extend({detach:function(e){return A(this,e,!0)},remove:function(e){return A(this,e)},text:function(e){return Ie(this,function(e){return void 0===e?me.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 N(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=D(this,e);t.appendChild(e)}})},prepend:function(){return N(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=D(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return N(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return N(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&&(me.cleanData(b(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return me.clone(this,e,t)})},html:function(e){return Ie(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&&!nt.test(e)&&!Ke[(We.exec(e)||["",""])[1].toLowerCase()]){e=me.htmlPrefilter(e);try{for(;r>n;n++)t=this[n]||{},1===t.nodeType&&(me.cleanData(b(t,!1)),t.innerHTML=e);t=0}catch(i){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return N(this,arguments,function(t){var n=this.parentNode;me.inArray(this,e)<0&&(me.cleanData(b(this)),n&&n.replaceChild(t,this))},e)}}),me.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){me.fn[e]=function(e){for(var n,r=[],i=me(e),o=i.length-1,a=0;o>=a;a++)n=a===o?this:this.clone(!0),me(i[a])[t](n),ae.apply(r,n.get());return this.pushStack(r)}});var at=/^margin/,st=new RegExp("^("+Ue+")(?!px)[a-z%]+$","i"),lt=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)};!function(){function t(){if(s){s.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",s.innerHTML="",Xe.appendChild(a);var t=e.getComputedStyle(s);n="1%"!==t.top,o="2px"===t.marginLeft,r="4px"===t.width,s.style.marginRight="50%",i="4px"===t.marginRight,Xe.removeChild(a),s=null}}var n,r,i,o,a=ne.createElement("div"),s=ne.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",fe.clearCloneStyle="content-box"===s.style.backgroundClip,a.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.appendChild(s),me.extend(fe,{pixelPosition:function(){return t(),n},boxSizingReliable:function(){return t(),r},pixelMarginRight:function(){return t(),i},reliableMarginLeft:function(){return t(),o}}))}();var ut=/^(none|table(?!-c[ea]).+)/,ct=/^--/,pt={position:"absolute",visibility:"hidden",display:"block"},dt={letterSpacing:"0",fontWeight:"400"},ft=["Webkit","Moz","ms"],ht=ne.createElement("div").style;me.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=P(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:{"float":"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=me.camelCase(t),l=ct.test(t),u=e.style;return l||(t=O(s)),a=me.cssHooks[t]||me.cssHooks[s],void 0===n?a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:u[t]:(o=typeof n,"string"===o&&(i=Ve.exec(n))&&i[1]&&(n=m(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(me.cssNumber[s]?"":"px")),fe.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(l?u.setProperty(t,n):u[t]=n)),void 0)}},css:function(e,t,n,r){var i,o,a,s=me.camelCase(t),l=ct.test(t);return l||(t=O(s)),a=me.cssHooks[t]||me.cssHooks[s],a&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=P(e,t,r)),"normal"===i&&t in dt&&(i=dt[t]),""===n||n?(o=parseFloat(i),n===!0||isFinite(o)?o||0:i):i}}),me.each(["height","width"],function(e,t){me.cssHooks[t]={get:function(e,n,r){return n?!ut.test(me.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?B(e,t,r):Ge(e,pt,function(){return B(e,t,r)}):void 0},set:function(e,n,r){var i,o=r&<(e),a=r&&R(e,t,r,"border-box"===me.css(e,"boxSizing",!1,o),o);return a&&(i=Ve.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=me.css(e,t)),F(e,n,a)}}}),me.cssHooks.marginLeft=L(fe.reliableMarginLeft,function(e,t){return t?(parseFloat(P(e,"marginLeft"))||e.getBoundingClientRect().left-Ge(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px":void 0}),me.each({margin:"",padding:"",border:"Width"},function(e,t){me.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+je[r]+t]=o[r]||o[r-2]||o[0];return i}},at.test(e)||(me.cssHooks[e+t].set=F)}),me.fn.extend({css:function(e,t){return Ie(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=lt(e),i=t.length;i>a;a++)o[t[a]]=me.css(e,t[a],!1,r);return o}return void 0!==n?me.style(e,t,n):me.css(e,t)},e,t,arguments.length>1)}}),me.Tween=_,_.prototype={constructor:_,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||me.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(me.cssNumber[n]?"":"px")},cur:function(){var e=_.propHooks[this.prop];return e&&e.get?e.get(this):_.propHooks._default.get(this)},run:function(e){var t,n=_.propHooks[this.prop];return this.options.duration?this.pos=t=me.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):_.propHooks._default.set(this),this}},_.prototype.init.prototype=_.prototype,_.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=me.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){me.fx.step[e.prop]?me.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[me.cssProps[e.prop]]&&!me.cssHooks[e.prop]?e.elem[e.prop]=e.now:me.style(e.elem,e.prop,e.now+e.unit)}}},_.propHooks.scrollTop=_.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},me.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},me.fx=_.prototype.init,me.fx.step={};var mt,gt,vt=/^(?:toggle|show|hide)$/,bt=/queueHooks$/;me.Animation=me.extend(z,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return m(n.elem,e,Ve.exec(t),n),n}]},tweener:function(e,t){me.isFunction(e)?(t=e,e=["*"]):e=e.match(Ae);for(var n,r=0,i=e.length;i>r;r++)n=e[r],z.tweeners[n]=z.tweeners[n]||[],z.tweeners[n].unshift(t)},prefilters:[G],prefilter:function(e,t){t?z.prefilters.unshift(e):z.prefilters.push(e)}}),me.speed=function(e,t,n){var r=e&&"object"==typeof e?me.extend({},e):{complete:n||!n&&t||me.isFunction(e)&&e,duration:e,easing:n&&t||t&&!me.isFunction(t)&&t};return me.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in me.fx.speeds?r.duration=me.fx.speeds[r.duration]:r.duration=me.fx.speeds._default),(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){me.isFunction(r.old)&&r.old.call(this),r.queue&&me.dequeue(this,r.queue)},r},me.fn.extend({fadeTo:function(e,t,n,r){return this.filter(qe).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=me.isEmptyObject(e),o=me.speed(t,n,r),a=function(){var t=z(this,me.extend({},e),o);(i||Fe.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},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&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=me.timers,a=Fe.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&bt.test(i)&&r(a[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)&&me.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=Fe.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=me.timers,a=r?r.length:0;for(n.finish=!0,me.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;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),me.each(["toggle","show","hide"],function(e,t){var n=me.fn[t];me.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(j(t,!0),e,r,i)}}),me.each({slideDown:j("show"),slideUp:j("hide"),slideToggle:j("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){me.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),me.timers=[],me.fx.tick=function(){var e,t=0,n=me.timers;for(mt=me.now();t1)},removeAttr:function(e){return this.each(function(){me.removeAttr(this,e)})}}),me.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?me.prop(e,t,n):(1===o&&me.isXMLDoc(e)||(i=me.attrHooks[t.toLowerCase()]||(me.expr.match.bool.test(t)?yt:void 0)),void 0!==n?null===n?void me.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=me.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!fe.radioValue&&"radio"===t&&i(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(Ae);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),yt={set:function(e,t,n){return t===!1?me.removeAttr(e,n):e.setAttribute(n,n),n}},me.each(me.expr.match.bool.source.match(/\w+/g),function(e,t){var n=$t[t]||me.find.attr;$t[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=$t[a],$t[a]=i,i=null!=n(e,t,r)?a:null,$t[a]=o),i}});var xt=/^(?:input|select|textarea|button)$/i,Ct=/^(?:a|area)$/i;me.fn.extend({prop:function(e,t){return Ie(this,me.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[me.propFix[e]||e]})}}),me.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&me.isXMLDoc(e)||(t=me.propFix[t]||t,i=me.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=me.find.attr(e,"tabindex");return t?parseInt(t,10):xt.test(e.nodeName)||Ct.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),fe.optSelected||(me.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)}}),me.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){me.propFix[this.toLowerCase()]=this}),me.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,l=0;if(me.isFunction(e))return this.each(function(t){me(this).addClass(e.call(this,t,Q(this)))});if("string"==typeof e&&e)for(t=e.match(Ae)||[];n=this[l++];)if(i=Q(n),r=1===n.nodeType&&" "+W(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=W(r),i!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,l=0;if(me.isFunction(e))return this.each(function(t){me(this).removeClass(e.call(this,t,Q(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(Ae)||[];n=this[l++];)if(i=Q(n),r=1===n.nodeType&&" "+W(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=W(r),i!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):me.isFunction(e)?this.each(function(n){me(this).toggleClass(e.call(this,n,Q(this),t),t)}):this.each(function(){var t,r,i,o;if("string"===n)for(r=0,i=me(this),o=e.match(Ae)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else(void 0===e||"boolean"===n)&&(t=Q(this),t&&Fe.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||e===!1?"":Fe.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+W(Q(n))+" ").indexOf(t)>-1)return!0;return!1}});var wt=/\r/g;me.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=me.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,me(this).val()):e,null==i?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=me.map(i,function(e){return null==e?"":e+""})),t=me.valHooks[this.type]||me.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=me.valHooks[i.type]||me.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(wt,""):null==n?"":n)}}}),me.extend({valHooks:{option:{get:function(e){var t=me.find.attr(e,"value");return null!=t?t:W(me.text(e))}},select:{get:function(e){var t,n,r,o=e.options,a=e.selectedIndex,s="select-one"===e.type,l=s?null:[],u=s?a+1:o.length;for(r=0>a?u:s?a:0;u>r;r++)if(n=o[r],(n.selected||r===a)&&!n.disabled&&(!n.parentNode.disabled||!i(n.parentNode,"optgroup"))){if(t=me(n).val(),s)return t;l.push(t)}return l},set:function(e,t){for(var n,r,i=e.options,o=me.makeArray(t),a=i.length;a--;)r=i[a],(r.selected=me.inArray(me.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),me.each(["radio","checkbox"],function(){me.valHooks[this]={set:function(e,t){return Array.isArray(t)?e.checked=me.inArray(me(e).val(),t)>-1:void 0}},fe.checkOn||(me.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var St=/^(?:focusinfocus|focusoutblur)$/;me.extend(me.event,{trigger:function(t,n,r,i){var o,a,s,l,u,c,p,d=[r||ne],f=ce.call(t,"type")?t.type:t,h=ce.call(t,"namespace")?t.namespace.split("."):[];if(a=s=r=r||ne,3!==r.nodeType&&8!==r.nodeType&&!St.test(f+me.event.triggered)&&(f.indexOf(".")>-1&&(h=f.split("."),f=h.shift(),h.sort()),u=f.indexOf(":")<0&&"on"+f,t=t[me.expando]?t:new me.Event(f,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:me.makeArray(n,[t]),p=me.event.special[f]||{},i||!p.trigger||p.trigger.apply(r,n)!==!1)){if(!i&&!p.noBubble&&!me.isWindow(r)){for(l=p.delegateType||f,St.test(l+f)||(a=a.parentNode);a;a=a.parentNode)d.push(a),s=a;s===(r.ownerDocument||ne)&&d.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=d[o++])&&!t.isPropagationStopped();)t.type=o>1?l:p.bindType||f,c=(Fe.get(a,"events")||{})[t.type]&&Fe.get(a,"handle"),c&&c.apply(a,n),c=u&&a[u],c&&c.apply&&Oe(a)&&(t.result=c.apply(a,n),t.result===!1&&t.preventDefault());return t.type=f,i||t.isDefaultPrevented()||p._default&&p._default.apply(d.pop(),n)!==!1||!Oe(r)||u&&me.isFunction(r[f])&&!me.isWindow(r)&&(s=r[u],s&&(r[u]=null),me.event.triggered=f,r[f](),me.event.triggered=void 0,s&&(r[u]=s)),t.result}},simulate:function(e,t,n){var r=me.extend(new me.Event,n,{type:e,isSimulated:!0});me.event.trigger(r,null,t)}}),me.fn.extend({trigger:function(e,t){return this.each(function(){me.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];return n?me.event.trigger(e,t,n,!0):void 0}}),me.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){me.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),me.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),fe.focusin="onfocusin"in e,fe.focusin||me.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){me.event.simulate(t,e.target,me.event.fix(e))};me.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 Dt=e.location,Tt=me.now(),kt=/\?/;me.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(r){n=void 0}return(!n||n.getElementsByTagName("parsererror").length)&&me.error("Invalid XML: "+t),n};var Mt=/\[\]$/,Et=/\r?\n/g,Nt=/^(?:submit|button|image|reset|file)$/i,At=/^(?:input|select|textarea|keygen)/i;me.param=function(e,t){var n,r=[],i=function(e,t){var n=me.isFunction(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!me.isPlainObject(e))me.each(e,function(){i(this.name,this.value)});else for(n in e)K(n,e[n],t,i);return r.join("&")},me.fn.extend({serialize:function(){return me.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=me.prop(this,"elements");return e?me.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!me(this).is(":disabled")&&At.test(this.nodeName)&&!Nt.test(e)&&(this.checked||!ze.test(e))}).map(function(e,t){var n=me(this).val();return null==n?null:Array.isArray(n)?me.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Pt=/%20/g,Lt=/#.*$/,It=/([?&])_=[^&]*/,Ot=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Rt=/^(?:GET|HEAD)$/,Bt=/^\/\//,_t={},Ut={},Vt="*/".concat("*"),jt=ne.createElement("a");jt.href=Dt.href,me.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Dt.href,type:"GET",isLocal:Ft.test(Dt.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":me.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Y(Y(e,me.ajaxSettings),t):Y(me.ajaxSettings,e)},ajaxPrefilter:Z(_t),ajaxTransport:Z(Ut),ajax:function(t,n){function r(t,n,r,s){var u,d,f,$,x,C=n;c||(c=!0,l&&e.clearTimeout(l),i=void 0,a=s||"",w.readyState=t>0?4:0,u=t>=200&&300>t||304===t,r&&($=J(h,w,r)),$=ee(h,$,w,u),u?(h.ifModified&&(x=w.getResponseHeader("Last-Modified"),x&&(me.lastModified[o]=x),x=w.getResponseHeader("etag"),x&&(me.etag[o]=x)),204===t||"HEAD"===h.type?C="nocontent":304===t?C="notmodified":(C=$.state,d=$.data,f=$.error,u=!f)):(f=C,(t||!C)&&(C="error",0>t&&(t=0))),w.status=t,w.statusText=(n||C)+"",u?v.resolveWith(m,[d,C,w]):v.rejectWith(m,[w,C,f]),w.statusCode(y),y=void 0,p&&g.trigger(u?"ajaxSuccess":"ajaxError",[w,h,u?d:f]),b.fireWith(m,[w,C]),p&&(g.trigger("ajaxComplete",[w,h]),--me.active||me.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var i,o,a,s,l,u,c,p,d,f,h=me.ajaxSetup({},n),m=h.context||h,g=h.context&&(m.nodeType||m.jquery)?me(m):me.event,v=me.Deferred(),b=me.Callbacks("once memory"),y=h.statusCode||{},$={},x={},C="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s)for(s={};t=Ot.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return c?a:null},setRequestHeader:function(e,t){return null==c&&(e=x[e.toLowerCase()]=x[e.toLowerCase()]||e,$[e]=t),this},overrideMimeType:function(e){return null==c&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)w.always(e[w.status]);else for(t in e)y[t]=[y[t],e[t]];return this},abort:function(e){var t=e||C;return i&&i.abort(t),r(0,t),this}};if(v.promise(w),h.url=((t||h.url||Dt.href)+"").replace(Bt,Dt.protocol+"//"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(Ae)||[""],null==h.crossDomain){u=ne.createElement("a");try{u.href=h.url,u.href=u.href,h.crossDomain=jt.protocol+"//"+jt.host!=u.protocol+"//"+u.host}catch(S){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=me.param(h.data,h.traditional)),X(_t,h,n,w),c)return w;p=me.event&&h.global,p&&0===me.active++&&me.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Rt.test(h.type),o=h.url.replace(Lt,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(Pt,"+")):(f=h.url.slice(o.length),h.data&&(o+=(kt.test(o)?"&":"?")+h.data,delete h.data),h.cache===!1&&(o=o.replace(It,"$1"),f=(kt.test(o)?"&":"?")+"_="+Tt++ +f),h.url=o+f),h.ifModified&&(me.lastModified[o]&&w.setRequestHeader("If-Modified-Since",me.lastModified[o]),me.etag[o]&&w.setRequestHeader("If-None-Match",me.etag[o])),(h.data&&h.hasContent&&h.contentType!==!1||n.contentType)&&w.setRequestHeader("Content-Type",h.contentType),w.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+Vt+"; q=0.01":""):h.accepts["*"]);for(d in h.headers)w.setRequestHeader(d,h.headers[d]);if(h.beforeSend&&(h.beforeSend.call(m,w,h)===!1||c))return w.abort();if(C="abort",b.add(h.complete),w.done(h.success),w.fail(h.error),i=X(Ut,h,n,w)){if(w.readyState=1,p&&g.trigger("ajaxSend",[w,h]),c)return w;h.async&&h.timeout>0&&(l=e.setTimeout(function(){w.abort("timeout")},h.timeout));try{c=!1,i.send($,r)}catch(S){if(c)throw S;r(-1,S)}}else r(-1,"No Transport");return w},getJSON:function(e,t,n){return me.get(e,t,n,"json")},getScript:function(e,t){return me.get(e,void 0,t,"script")}}),me.each(["get","post"],function(e,t){me[t]=function(e,n,r,i){return me.isFunction(n)&&(i=i||r,r=n,n=void 0),me.ajax(me.extend({url:e,type:t,dataType:i,data:n,success:r},me.isPlainObject(e)&&e))}}),me._evalUrl=function(e){return me.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},me.fn.extend({wrapAll:function(e){var t;return this[0]&&(me.isFunction(e)&&(e=e.call(this[0])),t=me(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 me.isFunction(e)?this.each(function(t){me(this).wrapInner(e.call(this,t))}):this.each(function(){var t=me(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=me.isFunction(e);return this.each(function(n){me(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){me(this).replaceWith(this.childNodes)}),this}}),me.expr.pseudos.hidden=function(e){return!me.expr.pseudos.visible(e); -},me.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},me.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(t){}};var qt={0:200,1223:204},Gt=me.ajaxSettings.xhr();fe.cors=!!Gt&&"withCredentials"in Gt,fe.ajax=Gt=!!Gt,me.ajaxTransport(function(t){var n,r;return fe.cors||Gt&&!t.crossDomain?{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(a in i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(qt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(l){if(n)throw l}},abort:function(){n&&n()}}:void 0}),me.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),me.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 me.globalEval(e),e}}}),me.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),me.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=me("",rE:!0,sL:"javascript"}},{b:"<%",e:"%>",sL:"vbscript"},n,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"",c:[{cN:"title",b:"[^ /><]+",r:0},r]}]}}),hljs.registerLanguage("asciidoc",function(e){return{c:[{cN:"comment",b:"^/{4,}\\n",e:"\\n/{4,}$",r:10},{cN:"comment",b:"^//",e:"$",r:0},{cN:"title",b:"^\\.\\w.*$"},{b:"^[=\\*]{4,}\\n",e:"\\n^[=\\*]{4,}$",r:10},{cN:"header",b:"^(={1,5}) .+?( \\1)?$",r:10},{cN:"header",b:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$",r:10},{cN:"attribute",b:"^:.+?:",e:"\\s",eE:!0,r:10},{cN:"attribute",b:"^\\[.+?\\]$",r:0},{cN:"blockquote",b:"^_{4,}\\n",e:"\\n_{4,}$",r:10},{cN:"code",b:"^[\\-\\.]{4,}\\n",e:"\\n[\\-\\.]{4,}$",r:10},{b:"^\\+{4,}\\n",e:"\\n\\+{4,}$",c:[{b:"<",e:">",sL:"xml",r:0}],r:10},{cN:"bullet",b:"^(\\*+|\\-+|\\.+|[^\\n]+?::)\\s+"},{cN:"label",b:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",r:10},{cN:"strong",b:"\\B\\*(?![\\*\\s])",e:"(\\n{2}|\\*)",c:[{b:"\\\\*\\w",r:0}]},{cN:"emphasis",b:"\\B'(?!['\\s])",e:"(\\n{2}|')",c:[{b:"\\\\'\\w",r:0}],r:0},{cN:"emphasis",b:"_(?![_\\s])",e:"(\\n{2}|_)",r:0},{cN:"smartquote",b:"``.+?''",r:10},{cN:"smartquote",b:"`.+?'",r:10},{cN:"code",b:"(`.+?`|\\+.+?\\+)",r:0},{cN:"code",b:"^[ \\t]",e:"$",r:0},{cN:"horizontal_rule",b:"^'{3,}[ \\t]*$",r:10},{b:"(link:)?(http|https|ftp|file|irc|image:?):\\S+\\[.*?\\]",rB:!0,c:[{b:"(link|image:?):",r:0},{cN:"link_url",b:"\\w",e:"[^\\[]+",r:0},{cN:"link_label",b:"\\[",e:"\\]",eB:!0,eE:!0,r:0}],r:10}]}}),hljs.registerLanguage("coffeescript",function(e){var t={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off",reserved:"case default function var void with const let enum export import native __hasProp __extends __slice __bind __indexOf",built_in:"npm require console print module exports global window document"},n="[A-Za-z$_][0-9A-Za-z$_]*",r=e.inherit(e.TM,{b:n}),i={cN:"subst",b:/#\{/,e:/}/,k:t},o=[e.BNM,e.inherit(e.CNM,{starts:{e:"(\\s*/)?",r:0}}),{cN:"string",v:[{b:/'''/,e:/'''/,c:[e.BE]},{b:/'/,e:/'/,c:[e.BE]},{b:/"""/,e:/"""/,c:[e.BE,i]},{b:/"/,e:/"/,c:[e.BE,i]}]},{cN:"regexp",v:[{b:"///",e:"///",c:[i,e.HCM]},{b:"//[gim]*",r:0},{b:"/\\S(\\\\.|[^\\n])*?/[gim]*(?=\\s|\\W|$)"}]},{cN:"property",b:"@"+n},{b:"`",e:"`",eB:!0,eE:!0,sL:"javascript"}];return i.c=o,{k:t,c:o.concat([{cN:"comment",b:"###",e:"###"},e.HCM,{cN:"function",b:"("+n+"\\s*=\\s*)?(\\(.*\\))?\\s*\\B[-=]>",e:"[-=]>",rB:!0,c:[r,{cN:"params",b:"\\(",rB:!0,c:[{b:/\(/,e:/\)/,k:t,c:["self"].concat(o)}]}]},{cN:"class",bK:"class",e:"$",i:/[:="\[\]]/,c:[{bK:"extends",eW:!0,i:/[:="\[\]]/,c:[r]},r]},{cN:"attribute",b:n+":",e:":",rB:!0,eE:!0,r:0}])}}),hljs.registerLanguage("fix",function(e){return{c:[{b:/[^\u2401\u0001]+/,e:/[\u2401\u0001]/,eE:!0,rB:!0,rE:!1,c:[{b:/([^\u2401\u0001=]+)/,e:/=([^\u2401\u0001=]+)/,rE:!0,rB:!1,cN:"attribute"},{b:/=/,e:/([\u2401\u0001])/,eE:!0,eB:!0,cN:"string"}]}],cI:!0}}),hljs.registerLanguage("mel",function(e){return{k:"int float string vector matrix if else switch case default while do for in break continue global proc return about abs addAttr addAttributeEditorNodeHelp addDynamic addNewShelfTab addPP addPanelCategory addPrefixToName advanceToNextDrivenKey affectedNet affects aimConstraint air alias aliasAttr align alignCtx alignCurve alignSurface allViewFit ambientLight angle angleBetween animCone animCurveEditor animDisplay animView annotate appendStringArray applicationName applyAttrPreset applyTake arcLenDimContext arcLengthDimension arclen arrayMapper art3dPaintCtx artAttrCtx artAttrPaintVertexCtx artAttrSkinPaintCtx artAttrTool artBuildPaintMenu artFluidAttrCtx artPuttyCtx artSelectCtx artSetPaintCtx artUserPaintCtx assignCommand assignInputDevice assignViewportFactories attachCurve attachDeviceAttr attachSurface attrColorSliderGrp attrCompatibility attrControlGrp attrEnumOptionMenu attrEnumOptionMenuGrp attrFieldGrp attrFieldSliderGrp attrNavigationControlGrp attrPresetEditWin attributeExists attributeInfo attributeMenu attributeQuery autoKeyframe autoPlace bakeClip bakeFluidShading bakePartialHistory bakeResults bakeSimulation basename basenameEx batchRender bessel bevel bevelPlus binMembership bindSkin blend2 blendShape blendShapeEditor blendShapePanel blendTwoAttr blindDataType boneLattice boundary boxDollyCtx boxZoomCtx bufferCurve buildBookmarkMenu buildKeyframeMenu button buttonManip CBG cacheFile cacheFileCombine cacheFileMerge cacheFileTrack camera cameraView canCreateManip canvas capitalizeString catch catchQuiet ceil changeSubdivComponentDisplayLevel changeSubdivRegion channelBox character characterMap characterOutlineEditor characterize chdir checkBox checkBoxGrp checkDefaultRenderGlobals choice circle circularFillet clamp clear clearCache clip clipEditor clipEditorCurrentTimeCtx clipSchedule clipSchedulerOutliner clipTrimBefore closeCurve closeSurface cluster cmdFileOutput cmdScrollFieldExecuter cmdScrollFieldReporter cmdShell coarsenSubdivSelectionList collision color colorAtPoint colorEditor colorIndex colorIndexSliderGrp colorSliderButtonGrp colorSliderGrp columnLayout commandEcho commandLine commandPort compactHairSystem componentEditor compositingInterop computePolysetVolume condition cone confirmDialog connectAttr connectControl connectDynamic connectJoint connectionInfo constrain constrainValue constructionHistory container containsMultibyte contextInfo control convertFromOldLayers convertIffToPsd convertLightmap convertSolidTx convertTessellation convertUnit copyArray copyFlexor copyKey copySkinWeights cos cpButton cpCache cpClothSet cpCollision cpConstraint cpConvClothToMesh cpForces cpGetSolverAttr cpPanel cpProperty cpRigidCollisionFilter cpSeam cpSetEdit cpSetSolverAttr cpSolver cpSolverTypes cpTool cpUpdateClothUVs createDisplayLayer createDrawCtx createEditor createLayeredPsdFile createMotionField createNewShelf createNode createRenderLayer createSubdivRegion cross crossProduct ctxAbort ctxCompletion ctxEditMode ctxTraverse currentCtx currentTime currentTimeCtx currentUnit curve curveAddPtCtx curveCVCtx curveEPCtx curveEditorCtx curveIntersect curveMoveEPCtx curveOnSurface curveSketchCtx cutKey cycleCheck cylinder dagPose date defaultLightListCheckBox defaultNavigation defineDataServer defineVirtualDevice deformer deg_to_rad delete deleteAttr deleteShadingGroupsAndMaterials deleteShelfTab deleteUI deleteUnusedBrushes delrandstr detachCurve detachDeviceAttr detachSurface deviceEditor devicePanel dgInfo dgdirty dgeval dgtimer dimWhen directKeyCtx directionalLight dirmap dirname disable disconnectAttr disconnectJoint diskCache displacementToPoly displayAffected displayColor displayCull displayLevelOfDetail displayPref displayRGBColor displaySmoothness displayStats displayString displaySurface distanceDimContext distanceDimension doBlur dolly dollyCtx dopeSheetEditor dot dotProduct doubleProfileBirailSurface drag dragAttrContext draggerContext dropoffLocator duplicate duplicateCurve duplicateSurface dynCache dynControl dynExport dynExpression dynGlobals dynPaintEditor dynParticleCtx dynPref dynRelEdPanel dynRelEditor dynamicLoad editAttrLimits editDisplayLayerGlobals editDisplayLayerMembers editRenderLayerAdjustment editRenderLayerGlobals editRenderLayerMembers editor editorTemplate effector emit emitter enableDevice encodeString endString endsWith env equivalent equivalentTol erf error eval evalDeferred evalEcho event exactWorldBoundingBox exclusiveLightCheckBox exec executeForEachObject exists exp expression expressionEditorListen extendCurve extendSurface extrude fcheck fclose feof fflush fgetline fgetword file fileBrowserDialog fileDialog fileExtension fileInfo filetest filletCurve filter filterCurve filterExpand filterStudioImport findAllIntersections findAnimCurves findKeyframe findMenuItem findRelatedSkinCluster finder firstParentOf fitBspline flexor floatEq floatField floatFieldGrp floatScrollBar floatSlider floatSlider2 floatSliderButtonGrp floatSliderGrp floor flow fluidCacheInfo fluidEmitter fluidVoxelInfo flushUndo fmod fontDialog fopen formLayout format fprint frameLayout fread freeFormFillet frewind fromNativePath fwrite gamma gauss geometryConstraint getApplicationVersionAsFloat getAttr getClassification getDefaultBrush getFileList getFluidAttr getInputDeviceRange getMayaPanelTypes getModifiers getPanel getParticleAttr getPluginResource getenv getpid glRender glRenderEditor globalStitch gmatch goal gotoBindPose grabColor gradientControl gradientControlNoAttr graphDollyCtx graphSelectContext graphTrackCtx gravity grid gridLayout group groupObjectsByName HfAddAttractorToAS HfAssignAS HfBuildEqualMap HfBuildFurFiles HfBuildFurImages HfCancelAFR HfConnectASToHF HfCreateAttractor HfDeleteAS HfEditAS HfPerformCreateAS HfRemoveAttractorFromAS HfSelectAttached HfSelectAttractors HfUnAssignAS hardenPointCurve hardware hardwareRenderPanel headsUpDisplay headsUpMessage help helpLine hermite hide hilite hitTest hotBox hotkey hotkeyCheck hsv_to_rgb hudButton hudSlider hudSliderButton hwReflectionMap hwRender hwRenderLoad hyperGraph hyperPanel hyperShade hypot iconTextButton iconTextCheckBox iconTextRadioButton iconTextRadioCollection iconTextScrollList iconTextStaticLabel ikHandle ikHandleCtx ikHandleDisplayScale ikSolver ikSplineHandleCtx ikSystem ikSystemInfo ikfkDisplayMethod illustratorCurves image imfPlugins inheritTransform insertJoint insertJointCtx insertKeyCtx insertKnotCurve insertKnotSurface instance instanceable instancer intField intFieldGrp intScrollBar intSlider intSliderGrp interToUI internalVar intersect iprEngine isAnimCurve isConnected isDirty isParentOf isSameObject isTrue isValidObjectName isValidString isValidUiName isolateSelect itemFilter itemFilterAttr itemFilterRender itemFilterType joint jointCluster jointCtx jointDisplayScale jointLattice keyTangent keyframe keyframeOutliner keyframeRegionCurrentTimeCtx keyframeRegionDirectKeyCtx keyframeRegionDollyCtx keyframeRegionInsertKeyCtx keyframeRegionMoveKeyCtx keyframeRegionScaleKeyCtx keyframeRegionSelectKeyCtx keyframeRegionSetKeyCtx keyframeRegionTrackCtx keyframeStats lassoContext lattice latticeDeformKeyCtx launch launchImageEditor layerButton layeredShaderPort layeredTexturePort layout layoutDialog lightList lightListEditor lightListPanel lightlink lineIntersection linearPrecision linstep listAnimatable listAttr listCameras listConnections listDeviceAttachments listHistory listInputDeviceAxes listInputDeviceButtons listInputDevices listMenuAnnotation listNodeTypes listPanelCategories listRelatives listSets listTransforms listUnselected listerEditor loadFluid loadNewShelf loadPlugin loadPluginLanguageResources loadPrefObjects localizedPanelLabel lockNode loft log longNameOf lookThru ls lsThroughFilter lsType lsUI Mayatomr mag makeIdentity makeLive makePaintable makeRoll makeSingleSurface makeTubeOn makebot manipMoveContext manipMoveLimitsCtx manipOptions manipRotateContext manipRotateLimitsCtx manipScaleContext manipScaleLimitsCtx marker match max memory menu menuBarLayout menuEditor menuItem menuItemToShelf menuSet menuSetPref messageLine min minimizeApp mirrorJoint modelCurrentTimeCtx modelEditor modelPanel mouse movIn movOut move moveIKtoFK moveKeyCtx moveVertexAlongDirection multiProfileBirailSurface mute nParticle nameCommand nameField namespace namespaceInfo newPanelItems newton nodeCast nodeIconButton nodeOutliner nodePreset nodeType noise nonLinear normalConstraint normalize nurbsBoolean nurbsCopyUVSet nurbsCube nurbsEditUV nurbsPlane nurbsSelect nurbsSquare nurbsToPoly nurbsToPolygonsPref nurbsToSubdiv nurbsToSubdivPref nurbsUVSet nurbsViewDirectionVector objExists objectCenter objectLayer objectType objectTypeUI obsoleteProc oceanNurbsPreviewPlane offsetCurve offsetCurveOnSurface offsetSurface openGLExtension openMayaPref optionMenu optionMenuGrp optionVar orbit orbitCtx orientConstraint outlinerEditor outlinerPanel overrideModifier paintEffectsDisplay pairBlend palettePort paneLayout panel panelConfiguration panelHistory paramDimContext paramDimension paramLocator parent parentConstraint particle particleExists particleInstancer particleRenderInfo partition pasteKey pathAnimation pause pclose percent performanceOptions pfxstrokes pickWalk picture pixelMove planarSrf plane play playbackOptions playblast plugAttr plugNode pluginInfo pluginResourceUtil pointConstraint pointCurveConstraint pointLight pointMatrixMult pointOnCurve pointOnSurface pointPosition poleVectorConstraint polyAppend polyAppendFacetCtx polyAppendVertex polyAutoProjection polyAverageNormal polyAverageVertex polyBevel polyBlendColor polyBlindData polyBoolOp polyBridgeEdge polyCacheMonitor polyCheck polyChipOff polyClipboard polyCloseBorder polyCollapseEdge polyCollapseFacet polyColorBlindData polyColorDel polyColorPerVertex polyColorSet polyCompare polyCone polyCopyUV polyCrease polyCreaseCtx polyCreateFacet polyCreateFacetCtx polyCube polyCut polyCutCtx polyCylinder polyCylindricalProjection polyDelEdge polyDelFacet polyDelVertex polyDuplicateAndConnect polyDuplicateEdge polyEditUV polyEditUVShell polyEvaluate polyExtrudeEdge polyExtrudeFacet polyExtrudeVertex polyFlipEdge polyFlipUV polyForceUV polyGeoSampler polyHelix polyInfo polyInstallAction polyLayoutUV polyListComponentConversion polyMapCut polyMapDel polyMapSew polyMapSewMove polyMergeEdge polyMergeEdgeCtx polyMergeFacet polyMergeFacetCtx polyMergeUV polyMergeVertex polyMirrorFace polyMoveEdge polyMoveFacet polyMoveFacetUV polyMoveUV polyMoveVertex polyNormal polyNormalPerVertex polyNormalizeUV polyOptUvs polyOptions polyOutput polyPipe polyPlanarProjection polyPlane polyPlatonicSolid polyPoke polyPrimitive polyPrism polyProjection polyPyramid polyQuad polyQueryBlindData polyReduce polySelect polySelectConstraint polySelectConstraintMonitor polySelectCtx polySelectEditCtx polySeparate polySetToFaceNormal polySewEdge polyShortestPathCtx polySmooth polySoftEdge polySphere polySphericalProjection polySplit polySplitCtx polySplitEdge polySplitRing polySplitVertex polyStraightenUVBorder polySubdivideEdge polySubdivideFacet polyToSubdiv polyTorus polyTransfer polyTriangulate polyUVSet polyUnite polyWedgeFace popen popupMenu pose pow preloadRefEd print progressBar progressWindow projFileViewer projectCurve projectTangent projectionContext projectionManip promptDialog propModCtx propMove psdChannelOutliner psdEditTextureFile psdExport psdTextureFile putenv pwd python querySubdiv quit rad_to_deg radial radioButton radioButtonGrp radioCollection radioMenuItemCollection rampColorPort rand randomizeFollicles randstate rangeControl readTake rebuildCurve rebuildSurface recordAttr recordDevice redo reference referenceEdit referenceQuery refineSubdivSelectionList refresh refreshAE registerPluginResource rehash reloadImage removeJoint removeMultiInstance removePanelCategory rename renameAttr renameSelectionList renameUI render renderGlobalsNode renderInfo renderLayerButton renderLayerParent renderLayerPostProcess renderLayerUnparent renderManip renderPartition renderQualityNode renderSettings renderThumbnailUpdate renderWindowEditor renderWindowSelectContext renderer reorder reorderDeformers requires reroot resampleFluid resetAE resetPfxToPolyCamera resetTool resolutionNode retarget reverseCurve reverseSurface revolve rgb_to_hsv rigidBody rigidSolver roll rollCtx rootOf rot rotate rotationInterpolation roundConstantRadius rowColumnLayout rowLayout runTimeCommand runup sampleImage saveAllShelves saveAttrPreset saveFluid saveImage saveInitialState saveMenu savePrefObjects savePrefs saveShelf saveToolSettings scale scaleBrushBrightness scaleComponents scaleConstraint scaleKey scaleKeyCtx sceneEditor sceneUIReplacement scmh scriptCtx scriptEditorInfo scriptJob scriptNode scriptTable scriptToShelf scriptedPanel scriptedPanelType scrollField scrollLayout sculpt searchPathArray seed selLoadSettings select selectContext selectCurveCV selectKey selectKeyCtx selectKeyframeRegionCtx selectMode selectPref selectPriority selectType selectedNodes selectionConnection separator setAttr setAttrEnumResource setAttrMapping setAttrNiceNameResource setConstraintRestPosition setDefaultShadingGroup setDrivenKeyframe setDynamic setEditCtx setEditor setFluidAttr setFocus setInfinity setInputDeviceMapping setKeyCtx setKeyPath setKeyframe setKeyframeBlendshapeTargetWts setMenuMode setNodeNiceNameResource setNodeTypeFlag setParent setParticleAttr setPfxToPolyCamera setPluginResource setProject setStampDensity setStartupMessage setState setToolTo setUITemplate setXformManip sets shadingConnection shadingGeometryRelCtx shadingLightRelCtx shadingNetworkCompare shadingNode shapeCompare shelfButton shelfLayout shelfTabLayout shellField shortNameOf showHelp showHidden showManipCtx showSelectionInTitle showShadingGroupAttrEditor showWindow sign simplify sin singleProfileBirailSurface size sizeBytes skinCluster skinPercent smoothCurve smoothTangentSurface smoothstep snap2to2 snapKey snapMode snapTogetherCtx snapshot soft softMod softModCtx sort sound soundControl source spaceLocator sphere sphrand spotLight spotLightPreviewPort spreadSheetEditor spring sqrt squareSurface srtContext stackTrace startString startsWith stitchAndExplodeShell stitchSurface stitchSurfacePoints strcmp stringArrayCatenate stringArrayContains stringArrayCount stringArrayInsertAtIndex stringArrayIntersector stringArrayRemove stringArrayRemoveAtIndex stringArrayRemoveDuplicates stringArrayRemoveExact stringArrayToString stringToStringArray strip stripPrefixFromName stroke subdAutoProjection subdCleanTopology subdCollapse subdDuplicateAndConnect subdEditUV subdListComponentConversion subdMapCut subdMapSewMove subdMatchTopology subdMirror subdToBlind subdToPoly subdTransferUVsToCache subdiv subdivCrease subdivDisplaySmoothness substitute substituteAllString substituteGeometry substring surface surfaceSampler surfaceShaderList swatchDisplayPort switchTable symbolButton symbolCheckBox sysFile system tabLayout tan tangentConstraint texLatticeDeformContext texManipContext texMoveContext texMoveUVShellContext texRotateContext texScaleContext texSelectContext texSelectShortestPathCtx texSmudgeUVContext texWinToolCtx text textCurves textField textFieldButtonGrp textFieldGrp textManip textScrollList textToShelf textureDisplacePlane textureHairColor texturePlacementContext textureWindow threadCount threePointArcCtx timeControl timePort timerX toNativePath toggle toggleAxis toggleWindowVisibility tokenize tokenizeList tolerance tolower toolButton toolCollection toolDropped toolHasOptions toolPropertyWindow torus toupper trace track trackCtx transferAttributes transformCompare transformLimits translator trim trunc truncateFluidCache truncateHairCache tumble tumbleCtx turbulence twoPointArcCtx uiRes uiTemplate unassignInputDevice undo undoInfo ungroup uniform unit unloadPlugin untangleUV untitledFileName untrim upAxis updateAE userCtx uvLink uvSnapshot validateShelfName vectorize view2dToolCtx viewCamera viewClipPlane viewFit viewHeadOn viewLookAt viewManip viewPlace viewSet visor volumeAxis vortex waitCursor warning webBrowser webBrowserPrefs whatIs window windowPref wire wireContext workspace wrinkle wrinkleContext writeTake xbmLangPathList xform", -i:""}]},{cN:"preprocessor",b:"#",e:"$"},{cN:"class",b:"("+r.split(" ").join("|")+")\\b",e:"({|$)",k:r,l:n,c:[e.UTM]},{cN:"variable",b:"\\."+e.UIR,r:0}]}}),hljs.registerLanguage("apache",function(e){var t={cN:"number",b:"[\\$%]\\d+"};return{cI:!0,c:[e.HCM,{cN:"tag",b:""},{cN:"keyword",b:/\w+/,r:0,k:{common:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{e:/$/,r:0,k:{literal:"on off all"},c:[{cN:"sqbracket",b:"\\s\\[",e:"\\]$"},{cN:"cbracket",b:"[\\$%]\\{",e:"\\}",c:["self",t]},t,e.QSM]}}],i:/\S/}}),hljs.registerLanguage("livecodeserver",function(e){var t={cN:"variable",b:"\\b[gtps][A-Z]+[A-Za-z0-9_\\-]*\\b|\\$_[A-Z]+",r:0},n={cN:"comment",e:"$",v:[e.CBLCLM,e.HCM,{b:"--"},{b:"[^:]//"}]},r=e.inherit(e.TM,{v:[{b:"\\b_*rig[A-Z]+[A-Za-z0-9_\\-]*"},{b:"\\b_[a-z0-9\\-]+"}]}),i=e.inherit(e.TM,{b:"\\b([A-Za-z0-9_\\-]+)\\b"});return{cI:!1,k:{keyword:"after byte bytes english the until http forever descending using line real8 with seventh for stdout finally element word fourth before black ninth sixth characters chars stderr uInt1 uInt1s uInt2 uInt2s stdin string lines relative rel any fifth items from middle mid at else of catch then third it file milliseconds seconds second secs sec int1 int1s int4 int4s internet int2 int2s normal text item last long detailed effective uInt4 uInt4s repeat end repeat URL in try into switch to words https token binfile each tenth as ticks tick system real4 by dateItems without char character ascending eighth whole dateTime numeric short first ftp integer abbreviated abbr abbrev private case while if",constant:"SIX TEN FORMFEED NINE ZERO NONE SPACE FOUR FALSE COLON CRLF PI COMMA ENDOFFILE EOF EIGHT FIVE QUOTE EMPTY ONE TRUE RETURN CR LINEFEED RIGHT BACKSLASH NULL SEVEN TAB THREE TWO six ten formfeed nine zero none space four false colon crlf pi comma endoffile eof eight five quote empty one true return cr linefeed right backslash null seven tab three two RIVERSION RISTATE FILE_READ_MODE FILE_WRITE_MODE FILE_WRITE_MODE DIR_WRITE_MODE FILE_READ_UMASK FILE_WRITE_UMASK DIR_READ_UMASK DIR_WRITE_UMASK",operator:"div mod wrap and or bitAnd bitNot bitOr bitXor among not in a an within contains ends with begins the keys of keys",built_in:"put abs acos aliasReference annuity arrayDecode arrayEncode asin atan atan2 average avg base64Decode base64Encode baseConvert binaryDecode binaryEncode byteToNum cachedURL cachedURLs charToNum cipherNames commandNames compound compress constantNames cos date dateFormat decompress directories diskSpace DNSServers exp exp1 exp2 exp10 extents files flushEvents folders format functionNames global globals hasMemory hostAddress hostAddressToName hostName hostNameToAddress isNumber ISOToMac itemOffset keys len length libURLErrorData libUrlFormData libURLftpCommand libURLLastHTTPHeaders libURLLastRHHeaders libUrlMultipartFormAddPart libUrlMultipartFormData libURLVersion lineOffset ln ln1 localNames log log2 log10 longFilePath lower macToISO matchChunk matchText matrixMultiply max md5Digest median merge millisec millisecs millisecond milliseconds min monthNames num number numToByte numToChar offset open openfiles openProcesses openProcessIDs openSockets paramCount param params peerAddress pendingMessages platform processID random randomBytes replaceText result revCreateXMLTree revCreateXMLTreeFromFile revCurrentRecord revCurrentRecordIsFirst revCurrentRecordIsLast revDatabaseColumnCount revDatabaseColumnIsNull revDatabaseColumnLengths revDatabaseColumnNames revDatabaseColumnNamed revDatabaseColumnNumbered revDatabaseColumnTypes revDatabaseConnectResult revDatabaseCursors revDatabaseID revDatabaseTableNames revDatabaseType revDataFromQuery revdb_closeCursor revdb_columnbynumber revdb_columncount revdb_columnisnull revdb_columnlengths revdb_columnnames revdb_columntypes revdb_commit revdb_connect revdb_connections revdb_connectionerr revdb_currentrecord revdb_cursorconnection revdb_cursorerr revdb_cursors revdb_dbtype revdb_disconnect revdb_execute revdb_iseof revdb_isbof revdb_movefirst revdb_movelast revdb_movenext revdb_moveprev revdb_query revdb_querylist revdb_recordcount revdb_rollback revdb_tablenames revGetDatabaseDriverPath revNumberOfRecords revOpenDatabase revOpenDatabases revQueryDatabase revQueryDatabaseBlob revQueryResult revQueryIsAtStart revQueryIsAtEnd revUnixFromMacPath revXMLAttribute revXMLAttributes revXMLAttributeValues revXMLChildContents revXMLChildNames revXMLFirstChild revXMLMatchingNode revXMLNextSibling revXMLNodeContents revXMLNumberOfChildren revXMLParent revXMLPreviousSibling revXMLRootNode revXMLRPC_CreateRequest revXMLRPC_Documents revXMLRPC_Error revXMLRPC_Execute revXMLRPC_GetHost revXMLRPC_GetMethod revXMLRPC_GetParam revXMLText revXMLRPC_GetParamCount revXMLRPC_GetParamNode revXMLRPC_GetParamType revXMLRPC_GetPath revXMLRPC_GetPort revXMLRPC_GetProtocol revXMLRPC_GetRequest revXMLRPC_GetResponse revXMLRPC_GetSocket revXMLTree revXMLTrees revXMLValidateDTD revZipDescribeItem revZipEnumerateItems revZipOpenArchives round sec secs seconds sha1Digest shell shortFilePath sin specialFolderPath sqrt standardDeviation statRound stdDev sum sysError systemVersion tan tempName tick ticks time to toLower toUpper transpose trunc uniDecode uniEncode upper URLDecode URLEncode URLStatus value variableNames version waitDepth weekdayNames wordOffset add breakpoint cancel clear local variable file word line folder directory URL close socket process combine constant convert create new alias folder directory decrypt delete variable word line folder directory URL dispatch divide do encrypt filter get include intersect kill libURLDownloadToFile libURLFollowHttpRedirects libURLftpUpload libURLftpUploadFile libURLresetAll libUrlSetAuthCallback libURLSetCustomHTTPHeaders libUrlSetExpect100 libURLSetFTPListCommand libURLSetFTPMode libURLSetFTPStopTime libURLSetStatusCallback load multiply socket process post seek rel relative read from process rename replace require resetAll revAddXMLNode revAppendXML revCloseCursor revCloseDatabase revCommitDatabase revCopyFile revCopyFolder revCopyXMLNode revDeleteFolder revDeleteXMLNode revDeleteAllXMLTrees revDeleteXMLTree revExecuteSQL revGoURL revInsertXMLNode revMoveFolder revMoveToFirstRecord revMoveToLastRecord revMoveToNextRecord revMoveToPreviousRecord revMoveToRecord revMoveXMLNode revPutIntoXMLNode revRollBackDatabase revSetDatabaseDriverPath revSetXMLAttribute revXMLRPC_AddParam revXMLRPC_DeleteAllDocuments revXMLAddDTD revXMLRPC_Free revXMLRPC_FreeAll revXMLRPC_DeleteDocument revXMLRPC_DeleteParam revXMLRPC_SetHost revXMLRPC_SetMethod revXMLRPC_SetPort revXMLRPC_SetProtocol revXMLRPC_SetSocket revZipAddItemWithData revZipAddItemWithFile revZipAddUncompressedItemWithData revZipAddUncompressedItemWithFile revZipCancel revZipCloseArchive revZipDeleteItem revZipExtractItemToFile revZipExtractItemToVariable revZipSetProgressCallback revZipRenameItem revZipReplaceItemWithData revZipReplaceItemWithFile revZipOpenArchive send set sort split subtract union unload wait write"},c:[t,{cN:"keyword",b:"\\bend\\sif\\b"},{cN:"function",bK:"function",e:"$",c:[t,i,e.ASM,e.QSM,e.BNM,e.CNM,r]},{cN:"function",bK:"end",e:"$",c:[i,r]},{cN:"command",bK:"command on",e:"$",c:[t,i,e.ASM,e.QSM,e.BNM,e.CNM,r]},{cN:"command",bK:"end",e:"$",c:[i,r]},{cN:"preprocessor",b:"<\\?rev|<\\?lc|<\\?livecode",r:10},{cN:"preprocessor",b:"<\\?"},{cN:"preprocessor",b:"\\?>"},n,e.ASM,e.QSM,e.BNM,e.CNM,r],i:";$|^\\[|^="}}),hljs.registerLanguage("glsl",function(e){return{k:{keyword:"atomic_uint attribute bool break bvec2 bvec3 bvec4 case centroid coherent const continue default discard dmat2 dmat2x2 dmat2x3 dmat2x4 dmat3 dmat3x2 dmat3x3 dmat3x4 dmat4 dmat4x2 dmat4x3 dmat4x4 do double dvec2 dvec3 dvec4 else flat float for highp if iimage1D iimage1DArray iimage2D iimage2DArray iimage2DMS iimage2DMSArray iimage2DRect iimage3D iimageBuffer iimageCube iimageCubeArray image1D image1DArray image2D image2DArray image2DMS image2DMSArray image2DRect image3D imageBuffer imageCube imageCubeArray in inout int invariant isampler1D isampler1DArray isampler2D isampler2DArray isampler2DMS isampler2DMSArray isampler2DRect isampler3D isamplerBuffer isamplerCube isamplerCubeArray ivec2 ivec3 ivec4 layout lowp mat2 mat2x2 mat2x3 mat2x4 mat3 mat3x2 mat3x3 mat3x4 mat4 mat4x2 mat4x3 mat4x4 mediump noperspective out patch precision readonly restrict return sample sampler1D sampler1DArray sampler1DArrayShadow sampler1DShadow sampler2D sampler2DArray sampler2DArrayShadow sampler2DMS sampler2DMSArray sampler2DRect sampler2DRectShadow sampler2DShadow sampler3D samplerBuffer samplerCube samplerCubeArray samplerCubeArrayShadow samplerCubeShadow smooth struct subroutine switch uimage1D uimage1DArray uimage2D uimage2DArray uimage2DMS uimage2DMSArray uimage2DRect uimage3D uimageBuffer uimageCube uimageCubeArray uint uniform usampler1D usampler1DArray usampler2D usampler2DArray usampler2DMS usampler2DMSArray usampler2DRect usampler3D usamplerBuffer usamplerCube usamplerCubeArray uvec2 uvec3 uvec4 varying vec2 vec3 vec4 void volatile while writeonly",built_in:"gl_BackColor gl_BackLightModelProduct gl_BackLightProduct gl_BackMaterial gl_BackSecondaryColor gl_ClipDistance gl_ClipPlane gl_ClipVertex gl_Color gl_DepthRange gl_EyePlaneQ gl_EyePlaneR gl_EyePlaneS gl_EyePlaneT gl_Fog gl_FogCoord gl_FogFragCoord gl_FragColor gl_FragCoord gl_FragData gl_FragDepth gl_FrontColor gl_FrontFacing gl_FrontLightModelProduct gl_FrontLightProduct gl_FrontMaterial gl_FrontSecondaryColor gl_InstanceID gl_InvocationID gl_Layer gl_LightModel gl_LightSource gl_MaxAtomicCounterBindings gl_MaxAtomicCounterBufferSize gl_MaxClipDistances gl_MaxClipPlanes gl_MaxCombinedAtomicCounterBuffers gl_MaxCombinedAtomicCounters gl_MaxCombinedImageUniforms gl_MaxCombinedImageUnitsAndFragmentOutputs gl_MaxCombinedTextureImageUnits gl_MaxDrawBuffers gl_MaxFragmentAtomicCounterBuffers gl_MaxFragmentAtomicCounters gl_MaxFragmentImageUniforms gl_MaxFragmentInputComponents gl_MaxFragmentUniformComponents gl_MaxFragmentUniformVectors gl_MaxGeometryAtomicCounterBuffers gl_MaxGeometryAtomicCounters gl_MaxGeometryImageUniforms gl_MaxGeometryInputComponents gl_MaxGeometryOutputComponents gl_MaxGeometryOutputVertices gl_MaxGeometryTextureImageUnits gl_MaxGeometryTotalOutputComponents gl_MaxGeometryUniformComponents gl_MaxGeometryVaryingComponents gl_MaxImageSamples gl_MaxImageUnits gl_MaxLights gl_MaxPatchVertices gl_MaxProgramTexelOffset gl_MaxTessControlAtomicCounterBuffers gl_MaxTessControlAtomicCounters gl_MaxTessControlImageUniforms gl_MaxTessControlInputComponents gl_MaxTessControlOutputComponents gl_MaxTessControlTextureImageUnits gl_MaxTessControlTotalOutputComponents gl_MaxTessControlUniformComponents gl_MaxTessEvaluationAtomicCounterBuffers gl_MaxTessEvaluationAtomicCounters gl_MaxTessEvaluationImageUniforms gl_MaxTessEvaluationInputComponents gl_MaxTessEvaluationOutputComponents gl_MaxTessEvaluationTextureImageUnits gl_MaxTessEvaluationUniformComponents gl_MaxTessGenLevel gl_MaxTessPatchComponents gl_MaxTextureCoords gl_MaxTextureImageUnits gl_MaxTextureUnits gl_MaxVaryingComponents gl_MaxVaryingFloats gl_MaxVaryingVectors gl_MaxVertexAtomicCounterBuffers gl_MaxVertexAtomicCounters gl_MaxVertexAttribs gl_MaxVertexImageUniforms gl_MaxVertexOutputComponents gl_MaxVertexTextureImageUnits gl_MaxVertexUniformComponents gl_MaxVertexUniformVectors gl_MaxViewports gl_MinProgramTexelOffsetgl_ModelViewMatrix gl_ModelViewMatrixInverse gl_ModelViewMatrixInverseTranspose gl_ModelViewMatrixTranspose gl_ModelViewProjectionMatrix gl_ModelViewProjectionMatrixInverse gl_ModelViewProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixTranspose gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_Normal gl_NormalMatrix gl_NormalScale gl_ObjectPlaneQ gl_ObjectPlaneR gl_ObjectPlaneS gl_ObjectPlaneT gl_PatchVerticesIn gl_PerVertex gl_Point gl_PointCoord gl_PointSize gl_Position gl_PrimitiveID gl_PrimitiveIDIn gl_ProjectionMatrix gl_ProjectionMatrixInverse gl_ProjectionMatrixInverseTranspose gl_ProjectionMatrixTranspose gl_SampleID gl_SampleMask gl_SampleMaskIn gl_SamplePosition gl_SecondaryColor gl_TessCoord gl_TessLevelInner gl_TessLevelOuter gl_TexCoord gl_TextureEnvColor gl_TextureMatrixInverseTranspose gl_TextureMatrixTranspose gl_Vertex gl_VertexID gl_ViewportIndex gl_in gl_out EmitStreamVertex EmitVertex EndPrimitive EndStreamPrimitive abs acos acosh all any asin asinh atan atanh atomicCounter atomicCounterDecrement atomicCounterIncrement barrier bitCount bitfieldExtract bitfieldInsert bitfieldReverse ceil clamp cos cosh cross dFdx dFdy degrees determinant distance dot equal exp exp2 faceforward findLSB findMSB floatBitsToInt floatBitsToUint floor fma fract frexp ftransform fwidth greaterThan greaterThanEqual imageAtomicAdd imageAtomicAnd imageAtomicCompSwap imageAtomicExchange imageAtomicMax imageAtomicMin imageAtomicOr imageAtomicXor imageLoad imageStore imulExtended intBitsToFloat interpolateAtCentroid interpolateAtOffset interpolateAtSample inverse inversesqrt isinf isnan ldexp length lessThan lessThanEqual log log2 matrixCompMult max memoryBarrier min mix mod modf noise1 noise2 noise3 noise4 normalize not notEqual outerProduct packDouble2x32 packHalf2x16 packSnorm2x16 packSnorm4x8 packUnorm2x16 packUnorm4x8 pow radians reflect refract round roundEven shadow1D shadow1DLod shadow1DProj shadow1DProjLod shadow2D shadow2DLod shadow2DProj shadow2DProjLod sign sin sinh smoothstep sqrt step tan tanh texelFetch texelFetchOffset texture texture1D texture1DLod texture1DProj texture1DProjLod texture2D texture2DLod texture2DProj texture2DProjLod texture3D texture3DLod texture3DProj texture3DProjLod textureCube textureCubeLod textureGather textureGatherOffset textureGatherOffsets textureGrad textureGradOffset textureLod textureLodOffset textureOffset textureProj textureProjGrad textureProjGradOffset textureProjLod textureProjLodOffset textureProjOffset textureQueryLod textureSize transpose trunc uaddCarry uintBitsToFloat umulExtended unpackDouble2x32 unpackHalf2x16 unpackSnorm2x16 unpackSnorm4x8 unpackUnorm2x16 unpackUnorm4x8 usubBorrow gl_TextureMatrix gl_TextureMatrixInverse",literal:"true false"},i:'"',c:[e.CLCM,e.CBLCLM,e.CNM,{cN:"preprocessor",b:"#",e:"$"}]}}),hljs.registerLanguage("lasso",function(e){var t="[a-zA-Z_][a-zA-Z0-9_.]*",n="<\\?(lasso(script)?|=)",r="\\]|\\?>",i={literal:"true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft",built_in:"array date decimal duration integer map pair string tag xml null bytes list queue set stack staticarray tie local var variable global data self inherited",keyword:"error_code error_msg error_pop error_push error_reset cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome"},o={cN:"comment",b:"",r:0},a={cN:"preprocessor",b:"\\[noprocess\\]",starts:{cN:"markup",e:"\\[/noprocess\\]",rE:!0,c:[o]}},s={cN:"preprocessor",b:"\\[/noprocess|"+n},l={cN:"variable",b:"'"+t+"'"},u=[e.CLCM,{cN:"javadoc",b:"/\\*\\*!",e:"\\*/"},e.CBLCLM,e.inherit(e.CNM,{b:e.CNR+"|-?(infinity|nan)\\b"}),e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null}),{cN:"string",b:"`",e:"`"},{cN:"variable",v:[{b:"[#$]"+t},{b:"#",e:"\\d+",i:"\\W"}]},{cN:"tag",b:"::\\s*",e:t,i:"\\W"},{cN:"attribute",b:"\\.\\.\\.|-"+e.UIR},{cN:"subst",v:[{b:"->\\s*",c:[l]},{b:":=|/(?!\\w)=?|[-+*%=<>&|!?\\\\]+",r:0}]},{cN:"built_in",b:"\\.\\.?",r:0,c:[l]},{cN:"class",bK:"define",rE:!0,e:"\\(|=>",c:[e.inherit(e.TM,{b:e.UIR+"(=(?!>))?"})]}];return{aliases:["ls","lassoscript"],cI:!0,l:t+"|&[lg]t;",k:i,c:[{cN:"preprocessor",b:r,r:0,starts:{cN:"markup",e:"\\[|"+n,rE:!0,r:0,c:[o]}},a,s,{cN:"preprocessor",b:"\\[no_square_brackets",starts:{e:"\\[/no_square_brackets\\]",l:t+"|&[lg]t;",k:i,c:[{cN:"preprocessor",b:r,r:0,starts:{cN:"markup",e:n,rE:!0,c:[o]}},a,s].concat(u)}},{cN:"preprocessor",b:"\\[",r:0},{cN:"shebang",b:"^#!.+lasso9\\b",r:10}].concat(u)}}),hljs.registerLanguage("mathematica",function(e){return{aliases:["mma"],l:"(\\$|\\b)"+e.IR+"\\b",k:"AbelianGroup Abort AbortKernels AbortProtect Above Abs Absolute AbsoluteCorrelation AbsoluteCorrelationFunction AbsoluteCurrentValue AbsoluteDashing AbsoluteFileName AbsoluteOptions AbsolutePointSize AbsoluteThickness AbsoluteTime AbsoluteTiming AccountingForm Accumulate Accuracy AccuracyGoal ActionDelay ActionMenu ActionMenuBox ActionMenuBoxOptions Active ActiveItem ActiveStyle AcyclicGraphQ AddOnHelpPath AddTo AdjacencyGraph AdjacencyList AdjacencyMatrix AdjustmentBox AdjustmentBoxOptions AdjustTimeSeriesForecast AffineTransform After AiryAi AiryAiPrime AiryAiZero AiryBi AiryBiPrime AiryBiZero AlgebraicIntegerQ AlgebraicNumber AlgebraicNumberDenominator AlgebraicNumberNorm AlgebraicNumberPolynomial AlgebraicNumberTrace AlgebraicRules AlgebraicRulesData Algebraics AlgebraicUnitQ Alignment AlignmentMarker AlignmentPoint All AllowedDimensions AllowGroupClose AllowInlineCells AllowKernelInitialization AllowReverseGroupClose AllowScriptLevelChange AlphaChannel AlternatingGroup AlternativeHypothesis Alternatives AmbientLight Analytic AnchoredSearch And AndersonDarlingTest AngerJ AngleBracket AngularGauge Animate AnimationCycleOffset AnimationCycleRepetitions AnimationDirection AnimationDisplayTime AnimationRate AnimationRepetitions AnimationRunning Animator AnimatorBox AnimatorBoxOptions AnimatorElements Annotation Annuity AnnuityDue Antialiasing Antisymmetric Apart ApartSquareFree Appearance AppearanceElements AppellF1 Append AppendTo Apply ArcCos ArcCosh ArcCot ArcCoth ArcCsc ArcCsch ArcSec ArcSech ArcSin ArcSinDistribution ArcSinh ArcTan ArcTanh Arg ArgMax ArgMin ArgumentCountQ ARIMAProcess ArithmeticGeometricMean ARMAProcess ARProcess Array ArrayComponents ArrayDepth ArrayFlatten ArrayPad ArrayPlot ArrayQ ArrayReshape ArrayRules Arrays Arrow Arrow3DBox ArrowBox Arrowheads AspectRatio AspectRatioFixed Assert Assuming Assumptions AstronomicalData Asynchronous AsynchronousTaskObject AsynchronousTasks AtomQ Attributes AugmentedSymmetricPolynomial AutoAction AutoDelete AutoEvaluateEvents AutoGeneratedPackage AutoIndent AutoIndentSpacings AutoItalicWords AutoloadPath AutoMatch Automatic AutomaticImageSize AutoMultiplicationSymbol AutoNumberFormatting AutoOpenNotebooks AutoOpenPalettes AutorunSequencing AutoScaling AutoScroll AutoSpacing AutoStyleOptions AutoStyleWords Axes AxesEdge AxesLabel AxesOrigin AxesStyle Axis BabyMonsterGroupB Back Background BackgroundTasksSettings Backslash Backsubstitution Backward Band BandpassFilter BandstopFilter BarabasiAlbertGraphDistribution BarChart BarChart3D BarLegend BarlowProschanImportance BarnesG BarOrigin BarSpacing BartlettHannWindow BartlettWindow BaseForm Baseline BaselinePosition BaseStyle BatesDistribution BattleLemarieWavelet Because BeckmannDistribution Beep Before Begin BeginDialogPacket BeginFrontEndInteractionPacket BeginPackage BellB BellY Below BenfordDistribution BeniniDistribution BenktanderGibratDistribution BenktanderWeibullDistribution BernoulliB BernoulliDistribution BernoulliGraphDistribution BernoulliProcess BernsteinBasis BesselFilterModel BesselI BesselJ BesselJZero BesselK BesselY BesselYZero Beta BetaBinomialDistribution BetaDistribution BetaNegativeBinomialDistribution BetaPrimeDistribution BetaRegularized BetweennessCentrality BezierCurve BezierCurve3DBox BezierCurve3DBoxOptions BezierCurveBox BezierCurveBoxOptions BezierFunction BilateralFilter Binarize BinaryFormat BinaryImageQ BinaryRead BinaryReadList BinaryWrite BinCounts BinLists Binomial BinomialDistribution BinomialProcess BinormalDistribution BiorthogonalSplineWavelet BipartiteGraphQ BirnbaumImportance BirnbaumSaundersDistribution BitAnd BitClear BitGet BitLength BitNot BitOr BitSet BitShiftLeft BitShiftRight BitXor Black BlackmanHarrisWindow BlackmanNuttallWindow BlackmanWindow Blank BlankForm BlankNullSequence BlankSequence Blend Block BlockRandom BlomqvistBeta BlomqvistBetaTest Blue Blur BodePlot BohmanWindow Bold Bookmarks Boole BooleanConsecutiveFunction BooleanConvert BooleanCountingFunction BooleanFunction BooleanGraph BooleanMaxterms BooleanMinimize BooleanMinterms Booleans BooleanTable BooleanVariables BorderDimensions BorelTannerDistribution Bottom BottomHatTransform BoundaryStyle Bounds Box BoxBaselineShift BoxData BoxDimensions Boxed Boxes BoxForm BoxFormFormatTypes BoxFrame BoxID BoxMargins BoxMatrix BoxRatios BoxRotation BoxRotationPoint BoxStyle BoxWhiskerChart Bra BracketingBar BraKet BrayCurtisDistance BreadthFirstScan Break Brown BrownForsytheTest BrownianBridgeProcess BrowserCategory BSplineBasis BSplineCurve BSplineCurve3DBox BSplineCurveBox BSplineCurveBoxOptions BSplineFunction BSplineSurface BSplineSurface3DBox BubbleChart BubbleChart3D BubbleScale BubbleSizes BulletGauge BusinessDayQ ButterflyGraph ButterworthFilterModel Button ButtonBar ButtonBox ButtonBoxOptions ButtonCell ButtonContents ButtonData ButtonEvaluator ButtonExpandable ButtonFrame ButtonFunction ButtonMargins ButtonMinHeight ButtonNote ButtonNotebook ButtonSource ButtonStyle ButtonStyleMenuListing Byte ByteCount ByteOrdering C CachedValue CacheGraphics CalendarData CalendarType CallPacket CanberraDistance Cancel CancelButton CandlestickChart Cap CapForm CapitalDifferentialD CardinalBSplineBasis CarmichaelLambda Cases Cashflow Casoratian Catalan CatalanNumber Catch CauchyDistribution CauchyWindow CayleyGraph CDF CDFDeploy CDFInformation CDFWavelet Ceiling Cell CellAutoOverwrite CellBaseline CellBoundingBox CellBracketOptions CellChangeTimes CellContents CellContext CellDingbat CellDynamicExpression CellEditDuplicate CellElementsBoundingBox CellElementSpacings CellEpilog CellEvaluationDuplicate CellEvaluationFunction CellEventActions CellFrame CellFrameColor CellFrameLabelMargins CellFrameLabels CellFrameMargins CellGroup CellGroupData CellGrouping CellGroupingRules CellHorizontalScrolling CellID CellLabel CellLabelAutoDelete CellLabelMargins CellLabelPositioning CellMargins CellObject CellOpen CellPrint CellProlog Cells CellSize CellStyle CellTags CellularAutomaton CensoredDistribution Censoring Center CenterDot CentralMoment CentralMomentGeneratingFunction CForm ChampernowneNumber ChanVeseBinarize Character CharacterEncoding CharacterEncodingsPath CharacteristicFunction CharacteristicPolynomial CharacterRange Characters ChartBaseStyle ChartElementData ChartElementDataFunction ChartElementFunction ChartElements ChartLabels ChartLayout ChartLegends ChartStyle Chebyshev1FilterModel Chebyshev2FilterModel ChebyshevDistance ChebyshevT ChebyshevU Check CheckAbort CheckAll Checkbox CheckboxBar CheckboxBox CheckboxBoxOptions ChemicalData ChessboardDistance ChiDistribution ChineseRemainder ChiSquareDistribution ChoiceButtons ChoiceDialog CholeskyDecomposition Chop Circle CircleBox CircleDot CircleMinus CirclePlus CircleTimes CirculantGraph CityData Clear ClearAll ClearAttributes ClearSystemCache ClebschGordan ClickPane Clip ClipboardNotebook ClipFill ClippingStyle ClipPlanes ClipRange Clock ClockGauge ClockwiseContourIntegral Close Closed CloseKernels ClosenessCentrality Closing ClosingAutoSave ClosingEvent ClusteringComponents CMYKColor Coarse Coefficient CoefficientArrays CoefficientDomain CoefficientList CoefficientRules CoifletWavelet Collect Colon ColonForm ColorCombine ColorConvert ColorData ColorDataFunction ColorFunction ColorFunctionScaling Colorize ColorNegate ColorOutput ColorProfileData ColorQuantize ColorReplace ColorRules ColorSelectorSettings ColorSeparate ColorSetter ColorSetterBox ColorSetterBoxOptions ColorSlider ColorSpace Column ColumnAlignments ColumnBackgrounds ColumnForm ColumnLines ColumnsEqual ColumnSpacings ColumnWidths CommonDefaultFormatTypes Commonest CommonestFilter CommonUnits CommunityBoundaryStyle CommunityGraphPlot CommunityLabels CommunityRegionStyle CompatibleUnitQ CompilationOptions CompilationTarget Compile Compiled CompiledFunction Complement CompleteGraph CompleteGraphQ CompleteKaryTree CompletionsListPacket Complex Complexes ComplexExpand ComplexInfinity ComplexityFunction ComponentMeasurements ComponentwiseContextMenu Compose ComposeList ComposeSeries Composition CompoundExpression CompoundPoissonDistribution CompoundPoissonProcess CompoundRenewalProcess Compress CompressedData Condition ConditionalExpression Conditioned Cone ConeBox ConfidenceLevel ConfidenceRange ConfidenceTransform ConfigurationPath Congruent Conjugate ConjugateTranspose Conjunction Connect ConnectedComponents ConnectedGraphQ ConnesWindow ConoverTest ConsoleMessage ConsoleMessagePacket ConsolePrint Constant ConstantArray Constants ConstrainedMax ConstrainedMin ContentPadding ContentsBoundingBox ContentSelectable ContentSize Context ContextMenu Contexts ContextToFilename ContextToFileName Continuation Continue ContinuedFraction ContinuedFractionK ContinuousAction ContinuousMarkovProcess ContinuousTimeModelQ ContinuousWaveletData ContinuousWaveletTransform ContourDetect ContourGraphics ContourIntegral ContourLabels ContourLines ContourPlot ContourPlot3D Contours ContourShading ContourSmoothing ContourStyle ContraharmonicMean Control ControlActive ControlAlignment ControllabilityGramian ControllabilityMatrix ControllableDecomposition ControllableModelQ ControllerDuration ControllerInformation ControllerInformationData ControllerLinking ControllerManipulate ControllerMethod ControllerPath ControllerState ControlPlacement ControlsRendering ControlType Convergents ConversionOptions ConversionRules ConvertToBitmapPacket ConvertToPostScript ConvertToPostScriptPacket Convolve ConwayGroupCo1 ConwayGroupCo2 ConwayGroupCo3 CoordinateChartData CoordinatesToolOptions CoordinateTransform CoordinateTransformData CoprimeQ Coproduct CopulaDistribution Copyable CopyDirectory CopyFile CopyTag CopyToClipboard CornerFilter CornerNeighbors Correlation CorrelationDistance CorrelationFunction CorrelationTest Cos Cosh CoshIntegral CosineDistance CosineWindow CosIntegral Cot Coth Count CounterAssignments CounterBox CounterBoxOptions CounterClockwiseContourIntegral CounterEvaluator CounterFunction CounterIncrements CounterStyle CounterStyleMenuListing CountRoots CountryData Covariance CovarianceEstimatorFunction CovarianceFunction CoxianDistribution CoxIngersollRossProcess CoxModel CoxModelFit CramerVonMisesTest CreateArchive CreateDialog CreateDirectory CreateDocument CreateIntermediateDirectories CreatePalette CreatePalettePacket CreateScheduledTask CreateTemporary CreateWindow CriticalityFailureImportance CriticalitySuccessImportance CriticalSection Cross CrossingDetect CrossMatrix Csc Csch CubeRoot Cubics Cuboid CuboidBox Cumulant CumulantGeneratingFunction Cup CupCap Curl CurlyDoubleQuote CurlyQuote CurrentImage CurrentlySpeakingPacket CurrentValue CurvatureFlowFilter CurveClosed Cyan CycleGraph CycleIndexPolynomial Cycles CyclicGroup Cyclotomic Cylinder CylinderBox CylindricalDecomposition D DagumDistribution DamerauLevenshteinDistance DampingFactor Darker Dashed Dashing DataCompression DataDistribution DataRange DataReversed Date DateDelimiters DateDifference DateFunction DateList DateListLogPlot DateListPlot DatePattern DatePlus DateRange DateString DateTicksFormat DaubechiesWavelet DavisDistribution DawsonF DayCount DayCountConvention DayMatchQ DayName DayPlus DayRange DayRound DeBruijnGraph Debug DebugTag Decimal DeclareKnownSymbols DeclarePackage Decompose Decrement DedekindEta Default DefaultAxesStyle DefaultBaseStyle DefaultBoxStyle DefaultButton DefaultColor DefaultControlPlacement DefaultDuplicateCellStyle DefaultDuration DefaultElement DefaultFaceGridsStyle DefaultFieldHintStyle DefaultFont DefaultFontProperties DefaultFormatType DefaultFormatTypeForStyle DefaultFrameStyle DefaultFrameTicksStyle DefaultGridLinesStyle DefaultInlineFormatType DefaultInputFormatType DefaultLabelStyle DefaultMenuStyle DefaultNaturalLanguage DefaultNewCellStyle DefaultNewInlineCellStyle DefaultNotebook DefaultOptions DefaultOutputFormatType DefaultStyle DefaultStyleDefinitions DefaultTextFormatType DefaultTextInlineFormatType DefaultTicksStyle DefaultTooltipStyle DefaultValues Defer DefineExternal DefineInputStreamMethod DefineOutputStreamMethod Definition Degree DegreeCentrality DegreeGraphDistribution DegreeLexicographic DegreeReverseLexicographic Deinitialization Del Deletable Delete DeleteBorderComponents DeleteCases DeleteContents DeleteDirectory DeleteDuplicates DeleteFile DeleteSmallComponents DeleteWithContents DeletionWarning Delimiter DelimiterFlashTime DelimiterMatching Delimiters Denominator DensityGraphics DensityHistogram DensityPlot DependentVariables Deploy Deployed Depth DepthFirstScan Derivative DerivativeFilter DescriptorStateSpace DesignMatrix Det DGaussianWavelet DiacriticalPositioning Diagonal DiagonalMatrix Dialog DialogIndent DialogInput DialogLevel DialogNotebook DialogProlog DialogReturn DialogSymbols Diamond DiamondMatrix DiceDissimilarity DictionaryLookup DifferenceDelta DifferenceOrder DifferenceRoot DifferenceRootReduce Differences DifferentialD DifferentialRoot DifferentialRootReduce DifferentiatorFilter DigitBlock DigitBlockMinimum DigitCharacter DigitCount DigitQ DihedralGroup Dilation Dimensions DiracComb DiracDelta DirectedEdge DirectedEdges DirectedGraph DirectedGraphQ DirectedInfinity Direction Directive Directory DirectoryName DirectoryQ DirectoryStack DirichletCharacter DirichletConvolve DirichletDistribution DirichletL DirichletTransform DirichletWindow DisableConsolePrintPacket DiscreteChirpZTransform DiscreteConvolve DiscreteDelta DiscreteHadamardTransform DiscreteIndicator DiscreteLQEstimatorGains DiscreteLQRegulatorGains DiscreteLyapunovSolve DiscreteMarkovProcess DiscretePlot DiscretePlot3D DiscreteRatio DiscreteRiccatiSolve DiscreteShift DiscreteTimeModelQ DiscreteUniformDistribution DiscreteVariables DiscreteWaveletData DiscreteWaveletPacketTransform DiscreteWaveletTransform Discriminant Disjunction Disk DiskBox DiskMatrix Dispatch DispersionEstimatorFunction Display DisplayAllSteps DisplayEndPacket DisplayFlushImagePacket DisplayForm DisplayFunction DisplayPacket DisplayRules DisplaySetSizePacket DisplayString DisplayTemporary DisplayWith DisplayWithRef DisplayWithVariable DistanceFunction DistanceTransform Distribute Distributed DistributedContexts DistributeDefinitions DistributionChart DistributionDomain DistributionFitTest DistributionParameterAssumptions DistributionParameterQ Dithering Div Divergence Divide DivideBy Dividers Divisible Divisors DivisorSigma DivisorSum DMSList DMSString Do DockedCells DocumentNotebook DominantColors DOSTextFormat Dot DotDashed DotEqual Dotted DoubleBracketingBar DoubleContourIntegral DoubleDownArrow DoubleLeftArrow DoubleLeftRightArrow DoubleLeftTee DoubleLongLeftArrow DoubleLongLeftRightArrow DoubleLongRightArrow DoubleRightArrow DoubleRightTee DoubleUpArrow DoubleUpDownArrow DoubleVerticalBar DoublyInfinite Down DownArrow DownArrowBar DownArrowUpArrow DownLeftRightVector DownLeftTeeVector DownLeftVector DownLeftVectorBar DownRightTeeVector DownRightVector DownRightVectorBar Downsample DownTee DownTeeArrow DownValues DragAndDrop DrawEdges DrawFrontFaces DrawHighlighted Drop DSolve Dt DualLinearProgramming DualSystemsModel DumpGet DumpSave DuplicateFreeQ Dynamic DynamicBox DynamicBoxOptions DynamicEvaluationTimeout DynamicLocation DynamicModule DynamicModuleBox DynamicModuleBoxOptions DynamicModuleParent DynamicModuleValues DynamicName DynamicNamespace DynamicReference DynamicSetting DynamicUpdating DynamicWrapper DynamicWrapperBox DynamicWrapperBoxOptions E EccentricityCentrality EdgeAdd EdgeBetweennessCentrality EdgeCapacity EdgeCapForm EdgeColor EdgeConnectivity EdgeCost EdgeCount EdgeCoverQ EdgeDashing EdgeDelete EdgeDetect EdgeForm EdgeIndex EdgeJoinForm EdgeLabeling EdgeLabels EdgeLabelStyle EdgeList EdgeOpacity EdgeQ EdgeRenderingFunction EdgeRules EdgeShapeFunction EdgeStyle EdgeThickness EdgeWeight Editable EditButtonSettings EditCellTagsSettings EditDistance EffectiveInterest Eigensystem Eigenvalues EigenvectorCentrality Eigenvectors Element ElementData Eliminate EliminationOrder EllipticE EllipticExp EllipticExpPrime EllipticF EllipticFilterModel EllipticK EllipticLog EllipticNomeQ EllipticPi EllipticReducedHalfPeriods EllipticTheta EllipticThetaPrime EmitSound EmphasizeSyntaxErrors EmpiricalDistribution Empty EmptyGraphQ EnableConsolePrintPacket Enabled Encode End EndAdd EndDialogPacket EndFrontEndInteractionPacket EndOfFile EndOfLine EndOfString EndPackage EngineeringForm Enter EnterExpressionPacket EnterTextPacket Entropy EntropyFilter Environment Epilog Equal EqualColumns EqualRows EqualTilde EquatedTo Equilibrium EquirippleFilterKernel Equivalent Erf Erfc Erfi ErlangB ErlangC ErlangDistribution Erosion ErrorBox ErrorBoxOptions ErrorNorm ErrorPacket ErrorsDialogSettings EstimatedDistribution EstimatedProcess EstimatorGains EstimatorRegulator EuclideanDistance EulerE EulerGamma EulerianGraphQ EulerPhi Evaluatable Evaluate Evaluated EvaluatePacket EvaluationCell EvaluationCompletionAction EvaluationElements EvaluationMode EvaluationMonitor EvaluationNotebook EvaluationObject EvaluationOrder Evaluator EvaluatorNames EvenQ EventData EventEvaluator EventHandler EventHandlerTag EventLabels ExactBlackmanWindow ExactNumberQ ExactRootIsolation ExampleData Except ExcludedForms ExcludePods Exclusions ExclusionsStyle Exists Exit ExitDialog Exp Expand ExpandAll ExpandDenominator ExpandFileName ExpandNumerator Expectation ExpectationE ExpectedValue ExpGammaDistribution ExpIntegralE ExpIntegralEi Exponent ExponentFunction ExponentialDistribution ExponentialFamily ExponentialGeneratingFunction ExponentialMovingAverage ExponentialPowerDistribution ExponentPosition ExponentStep Export ExportAutoReplacements ExportPacket ExportString Expression ExpressionCell ExpressionPacket ExpToTrig ExtendedGCD Extension ExtentElementFunction ExtentMarkers ExtentSize ExternalCall ExternalDataCharacterEncoding Extract ExtractArchive ExtremeValueDistribution FaceForm FaceGrids FaceGridsStyle Factor FactorComplete Factorial Factorial2 FactorialMoment FactorialMomentGeneratingFunction FactorialPower FactorInteger FactorList FactorSquareFree FactorSquareFreeList FactorTerms FactorTermsList Fail FailureDistribution False FARIMAProcess FEDisableConsolePrintPacket FeedbackSector FeedbackSectorStyle FeedbackType FEEnableConsolePrintPacket Fibonacci FieldHint FieldHintStyle FieldMasked FieldSize File FileBaseName FileByteCount FileDate FileExistsQ FileExtension FileFormat FileHash FileInformation FileName FileNameDepth FileNameDialogSettings FileNameDrop FileNameJoin FileNames FileNameSetter FileNameSplit FileNameTake FilePrint FileType FilledCurve FilledCurveBox Filling FillingStyle FillingTransform FilterRules FinancialBond FinancialData FinancialDerivative FinancialIndicator Find FindArgMax FindArgMin FindClique FindClusters FindCurvePath FindDistributionParameters FindDivisions FindEdgeCover FindEdgeCut FindEulerianCycle FindFaces FindFile FindFit FindGeneratingFunction FindGeoLocation FindGeometricTransform FindGraphCommunities FindGraphIsomorphism FindGraphPartition FindHamiltonianCycle FindIndependentEdgeSet FindIndependentVertexSet FindInstance FindIntegerNullVector FindKClan FindKClique FindKClub FindKPlex FindLibrary FindLinearRecurrence FindList FindMaximum FindMaximumFlow FindMaxValue FindMinimum FindMinimumCostFlow FindMinimumCut FindMinValue FindPermutation FindPostmanTour FindProcessParameters FindRoot FindSequenceFunction FindSettings FindShortestPath FindShortestTour FindThreshold FindVertexCover FindVertexCut Fine FinishDynamic FiniteAbelianGroupCount FiniteGroupCount FiniteGroupData First FirstPassageTimeDistribution FischerGroupFi22 FischerGroupFi23 FischerGroupFi24Prime FisherHypergeometricDistribution FisherRatioTest FisherZDistribution Fit FitAll FittedModel FixedPoint FixedPointList FlashSelection Flat Flatten FlattenAt FlatTopWindow FlipView Floor FlushPrintOutputPacket Fold FoldList Font FontColor FontFamily FontForm FontName FontOpacity FontPostScriptName FontProperties FontReencoding FontSize FontSlant FontSubstitutions FontTracking FontVariations FontWeight For ForAll Format FormatRules FormatType FormatTypeAutoConvert FormatValues FormBox FormBoxOptions FortranForm Forward ForwardBackward Fourier FourierCoefficient FourierCosCoefficient FourierCosSeries FourierCosTransform FourierDCT FourierDCTFilter FourierDCTMatrix FourierDST FourierDSTMatrix FourierMatrix FourierParameters FourierSequenceTransform FourierSeries FourierSinCoefficient FourierSinSeries FourierSinTransform FourierTransform FourierTrigSeries FractionalBrownianMotionProcess FractionalPart FractionBox FractionBoxOptions FractionLine Frame FrameBox FrameBoxOptions Framed FrameInset FrameLabel Frameless FrameMargins FrameStyle FrameTicks FrameTicksStyle FRatioDistribution FrechetDistribution FreeQ FrequencySamplingFilterKernel FresnelC FresnelS Friday FrobeniusNumber FrobeniusSolve FromCharacterCode FromCoefficientRules FromContinuedFraction FromDate FromDigits FromDMS Front FrontEndDynamicExpression FrontEndEventActions FrontEndExecute FrontEndObject FrontEndResource FrontEndResourceString FrontEndStackSize FrontEndToken FrontEndTokenExecute FrontEndValueCache FrontEndVersion FrontFaceColor FrontFaceOpacity Full FullAxes FullDefinition FullForm FullGraphics FullOptions FullSimplify Function FunctionExpand FunctionInterpolation FunctionSpace FussellVeselyImportance GaborFilter GaborMatrix GaborWavelet GainMargins GainPhaseMargins Gamma GammaDistribution GammaRegularized GapPenalty Gather GatherBy GaugeFaceElementFunction GaugeFaceStyle GaugeFrameElementFunction GaugeFrameSize GaugeFrameStyle GaugeLabels GaugeMarkers GaugeStyle GaussianFilter GaussianIntegers GaussianMatrix GaussianWindow GCD GegenbauerC General GeneralizedLinearModelFit GenerateConditions GeneratedCell GeneratedParameters GeneratingFunction Generic GenericCylindricalDecomposition GenomeData GenomeLookup GeodesicClosing GeodesicDilation GeodesicErosion GeodesicOpening GeoDestination GeodesyData GeoDirection GeoDistance GeoGridPosition GeometricBrownianMotionProcess GeometricDistribution GeometricMean GeometricMeanFilter GeometricTransformation GeometricTransformation3DBox GeometricTransformation3DBoxOptions GeometricTransformationBox GeometricTransformationBoxOptions GeoPosition GeoPositionENU GeoPositionXYZ GeoProjectionData GestureHandler GestureHandlerTag Get GetBoundingBoxSizePacket GetContext GetEnvironment GetFileName GetFrontEndOptionsDataPacket GetLinebreakInformationPacket GetMenusPacket GetPageBreakInformationPacket Glaisher GlobalClusteringCoefficient GlobalPreferences GlobalSession Glow GoldenRatio GompertzMakehamDistribution GoodmanKruskalGamma GoodmanKruskalGammaTest Goto Grad Gradient GradientFilter GradientOrientationFilter Graph GraphAssortativity GraphCenter GraphComplement GraphData GraphDensity GraphDiameter GraphDifference GraphDisjointUnion GraphDistance GraphDistanceMatrix GraphElementData GraphEmbedding GraphHighlight GraphHighlightStyle GraphHub Graphics Graphics3D Graphics3DBox Graphics3DBoxOptions GraphicsArray GraphicsBaseline GraphicsBox GraphicsBoxOptions GraphicsColor GraphicsColumn GraphicsComplex GraphicsComplex3DBox GraphicsComplex3DBoxOptions GraphicsComplexBox GraphicsComplexBoxOptions GraphicsContents GraphicsData GraphicsGrid GraphicsGridBox GraphicsGroup GraphicsGroup3DBox GraphicsGroup3DBoxOptions GraphicsGroupBox GraphicsGroupBoxOptions GraphicsGrouping GraphicsHighlightColor GraphicsRow GraphicsSpacing GraphicsStyle GraphIntersection GraphLayout GraphLinkEfficiency GraphPeriphery GraphPlot GraphPlot3D GraphPower GraphPropertyDistribution GraphQ GraphRadius GraphReciprocity GraphRoot GraphStyle GraphUnion Gray GrayLevel GreatCircleDistance Greater GreaterEqual GreaterEqualLess GreaterFullEqual GreaterGreater GreaterLess GreaterSlantEqual GreaterTilde Green Grid GridBaseline GridBox GridBoxAlignment GridBoxBackground GridBoxDividers GridBoxFrame GridBoxItemSize GridBoxItemStyle GridBoxOptions GridBoxSpacings GridCreationSettings GridDefaultElement GridElementStyleOptions GridFrame GridFrameMargins GridGraph GridLines GridLinesStyle GroebnerBasis GroupActionBase GroupCentralizer GroupElementFromWord GroupElementPosition GroupElementQ GroupElements GroupElementToWord GroupGenerators GroupMultiplicationTable GroupOrbits GroupOrder GroupPageBreakWithin GroupSetwiseStabilizer GroupStabilizer GroupStabilizerChain Gudermannian GumbelDistribution HaarWavelet HadamardMatrix HalfNormalDistribution HamiltonianGraphQ HammingDistance HammingWindow HankelH1 HankelH2 HankelMatrix HannPoissonWindow HannWindow HaradaNortonGroupHN HararyGraph HarmonicMean HarmonicMeanFilter HarmonicNumber Hash HashTable Haversine HazardFunction Head HeadCompose Heads HeavisideLambda HeavisidePi HeavisideTheta HeldGroupHe HeldPart HelpBrowserLookup HelpBrowserNotebook HelpBrowserSettings HermiteDecomposition HermiteH HermitianMatrixQ HessenbergDecomposition Hessian HexadecimalCharacter Hexahedron HexahedronBox HexahedronBoxOptions HiddenSurface HighlightGraph HighlightImage HighpassFilter HigmanSimsGroupHS HilbertFilter HilbertMatrix Histogram Histogram3D HistogramDistribution HistogramList HistogramTransform HistogramTransformInterpolation HitMissTransform HITSCentrality HodgeDual HoeffdingD HoeffdingDTest Hold HoldAll HoldAllComplete HoldComplete HoldFirst HoldForm HoldPattern HoldRest HolidayCalendar HomeDirectory HomePage Horizontal HorizontalForm HorizontalGauge HorizontalScrollPosition HornerForm HotellingTSquareDistribution HoytDistribution HTMLSave Hue HumpDownHump HumpEqual HurwitzLerchPhi HurwitzZeta HyperbolicDistribution HypercubeGraph HyperexponentialDistribution Hyperfactorial Hypergeometric0F1 Hypergeometric0F1Regularized Hypergeometric1F1 Hypergeometric1F1Regularized Hypergeometric2F1 Hypergeometric2F1Regularized HypergeometricDistribution HypergeometricPFQ HypergeometricPFQRegularized HypergeometricU Hyperlink HyperlinkCreationSettings Hyphenation HyphenationOptions HypoexponentialDistribution HypothesisTestData I Identity IdentityMatrix If IgnoreCase Im Image Image3D Image3DSlices ImageAccumulate ImageAdd ImageAdjust ImageAlign ImageApply ImageAspectRatio ImageAssemble ImageCache ImageCacheValid ImageCapture ImageChannels ImageClip ImageColorSpace ImageCompose ImageConvolve ImageCooccurrence ImageCorners ImageCorrelate ImageCorrespondingPoints ImageCrop ImageData ImageDataPacket ImageDeconvolve ImageDemosaic ImageDifference ImageDimensions ImageDistance ImageEffect ImageFeatureTrack ImageFileApply ImageFileFilter ImageFileScan ImageFilter ImageForestingComponents ImageForwardTransformation ImageHistogram ImageKeypoints ImageLevels ImageLines ImageMargins ImageMarkers ImageMeasurements ImageMultiply ImageOffset ImagePad ImagePadding ImagePartition ImagePeriodogram ImagePerspectiveTransformation ImageQ ImageRangeCache ImageReflect ImageRegion ImageResize ImageResolution ImageRotate ImageRotated ImageScaled ImageScan ImageSize ImageSizeAction ImageSizeCache ImageSizeMultipliers ImageSizeRaw ImageSubtract ImageTake ImageTransformation ImageTrim ImageType ImageValue ImageValuePositions Implies Import ImportAutoReplacements ImportString ImprovementImportance In IncidenceGraph IncidenceList IncidenceMatrix IncludeConstantBasis IncludeFileExtension IncludePods IncludeSingularTerm Increment Indent IndentingNewlineSpacings IndentMaxFraction IndependenceTest IndependentEdgeSetQ IndependentUnit IndependentVertexSetQ Indeterminate IndexCreationOptions Indexed IndexGraph IndexTag Inequality InexactNumberQ InexactNumbers Infinity Infix Information Inherited InheritScope Initialization InitializationCell InitializationCellEvaluation InitializationCellWarning InlineCounterAssignments InlineCounterIncrements InlineRules Inner Inpaint Input InputAliases InputAssumptions InputAutoReplacements InputField InputFieldBox InputFieldBoxOptions InputForm InputGrouping InputNamePacket InputNotebook InputPacket InputSettings InputStream InputString InputStringPacket InputToBoxFormPacket Insert InsertionPointObject InsertResults Inset Inset3DBox Inset3DBoxOptions InsetBox InsetBoxOptions Install InstallService InString Integer IntegerDigits IntegerExponent IntegerLength IntegerPart IntegerPartitions IntegerQ Integers IntegerString Integral Integrate Interactive InteractiveTradingChart Interlaced Interleaving InternallyBalancedDecomposition InterpolatingFunction InterpolatingPolynomial Interpolation InterpolationOrder InterpolationPoints InterpolationPrecision Interpretation InterpretationBox InterpretationBoxOptions InterpretationFunction InterpretTemplate InterquartileRange Interrupt InterruptSettings Intersection Interval IntervalIntersection IntervalMemberQ IntervalUnion Inverse InverseBetaRegularized InverseCDF InverseChiSquareDistribution InverseContinuousWaveletTransform InverseDistanceTransform InverseEllipticNomeQ InverseErf InverseErfc InverseFourier InverseFourierCosTransform InverseFourierSequenceTransform InverseFourierSinTransform InverseFourierTransform InverseFunction InverseFunctions InverseGammaDistribution InverseGammaRegularized InverseGaussianDistribution InverseGudermannian InverseHaversine InverseJacobiCD InverseJacobiCN InverseJacobiCS InverseJacobiDC InverseJacobiDN InverseJacobiDS InverseJacobiNC InverseJacobiND InverseJacobiNS InverseJacobiSC InverseJacobiSD InverseJacobiSN InverseLaplaceTransform InversePermutation InverseRadon InverseSeries InverseSurvivalFunction InverseWaveletTransform InverseWeierstrassP InverseZTransform Invisible InvisibleApplication InvisibleTimes IrreduciblePolynomialQ IsolatingInterval IsomorphicGraphQ IsotopeData Italic Item ItemBox ItemBoxOptions ItemSize ItemStyle ItoProcess JaccardDissimilarity JacobiAmplitude Jacobian JacobiCD JacobiCN JacobiCS JacobiDC JacobiDN JacobiDS JacobiNC JacobiND JacobiNS JacobiP JacobiSC JacobiSD JacobiSN JacobiSymbol JacobiZeta JankoGroupJ1 JankoGroupJ2 JankoGroupJ3 JankoGroupJ4 JarqueBeraALMTest JohnsonDistribution Join Joined JoinedCurve JoinedCurveBox JoinForm JordanDecomposition JordanModelDecomposition K KagiChart KaiserBesselWindow KaiserWindow KalmanEstimator KalmanFilter KarhunenLoeveDecomposition KaryTree KatzCentrality KCoreComponents KDistribution KelvinBei KelvinBer KelvinKei KelvinKer KendallTau KendallTauTest KernelExecute KernelMixtureDistribution KernelObject Kernels Ket Khinchin KirchhoffGraph KirchhoffMatrix KleinInvariantJ KnightTourGraph KnotData KnownUnitQ KolmogorovSmirnovTest KroneckerDelta KroneckerModelDecomposition KroneckerProduct KroneckerSymbol KuiperTest KumaraswamyDistribution Kurtosis KuwaharaFilter Label Labeled LabeledSlider LabelingFunction LabelStyle LaguerreL LambdaComponents LambertW LanczosWindow LandauDistribution Language LanguageCategory LaplaceDistribution LaplaceTransform Laplacian LaplacianFilter LaplacianGaussianFilter Large Larger Last Latitude LatitudeLongitude LatticeData LatticeReduce Launch LaunchKernels LayeredGraphPlot LayerSizeFunction LayoutInformation LCM LeafCount LeapYearQ LeastSquares LeastSquaresFilterKernel Left LeftArrow LeftArrowBar LeftArrowRightArrow LeftDownTeeVector LeftDownVector LeftDownVectorBar LeftRightArrow LeftRightVector LeftTee LeftTeeArrow LeftTeeVector LeftTriangle LeftTriangleBar LeftTriangleEqual LeftUpDownVector LeftUpTeeVector LeftUpVector LeftUpVectorBar LeftVector LeftVectorBar LegendAppearance Legended LegendFunction LegendLabel LegendLayout LegendMargins LegendMarkers LegendMarkerSize LegendreP LegendreQ LegendreType Length LengthWhile LerchPhi Less LessEqual LessEqualGreater LessFullEqual LessGreater LessLess LessSlantEqual LessTilde LetterCharacter LetterQ Level LeveneTest LeviCivitaTensor LevyDistribution Lexicographic LibraryFunction LibraryFunctionError LibraryFunctionInformation LibraryFunctionLoad LibraryFunctionUnload LibraryLoad LibraryUnload LicenseID LiftingFilterData LiftingWaveletTransform LightBlue LightBrown LightCyan Lighter LightGray LightGreen Lighting LightingAngle LightMagenta LightOrange LightPink LightPurple LightRed LightSources LightYellow Likelihood Limit LimitsPositioning LimitsPositioningTokens LindleyDistribution Line Line3DBox LinearFilter LinearFractionalTransform LinearModelFit LinearOffsetFunction LinearProgramming LinearRecurrence LinearSolve LinearSolveFunction LineBox LineBreak LinebreakAdjustments LineBreakChart LineBreakWithin LineColor LineForm LineGraph LineIndent LineIndentMaxFraction LineIntegralConvolutionPlot LineIntegralConvolutionScale LineLegend LineOpacity LineSpacing LineWrapParts LinkActivate LinkClose LinkConnect LinkConnectedQ LinkCreate LinkError LinkFlush LinkFunction LinkHost LinkInterrupt LinkLaunch LinkMode LinkObject LinkOpen LinkOptions LinkPatterns LinkProtocol LinkRead LinkReadHeld LinkReadyQ Links LinkWrite LinkWriteHeld LiouvilleLambda List Listable ListAnimate ListContourPlot ListContourPlot3D ListConvolve ListCorrelate ListCurvePathPlot ListDeconvolve ListDensityPlot Listen ListFourierSequenceTransform ListInterpolation ListLineIntegralConvolutionPlot ListLinePlot ListLogLinearPlot ListLogLogPlot ListLogPlot ListPicker ListPickerBox ListPickerBoxBackground ListPickerBoxOptions ListPlay ListPlot ListPlot3D ListPointPlot3D ListPolarPlot ListQ ListStreamDensityPlot ListStreamPlot ListSurfacePlot3D ListVectorDensityPlot ListVectorPlot ListVectorPlot3D ListZTransform Literal LiteralSearch LocalClusteringCoefficient LocalizeVariables LocationEquivalenceTest LocationTest Locator LocatorAutoCreate LocatorBox LocatorBoxOptions LocatorCentering LocatorPane LocatorPaneBox LocatorPaneBoxOptions LocatorRegion Locked Log Log10 Log2 LogBarnesG LogGamma LogGammaDistribution LogicalExpand LogIntegral LogisticDistribution LogitModelFit LogLikelihood LogLinearPlot LogLogisticDistribution LogLogPlot LogMultinormalDistribution LogNormalDistribution LogPlot LogRankTest LogSeriesDistribution LongEqual Longest LongestAscendingSequence LongestCommonSequence LongestCommonSequencePositions LongestCommonSubsequence LongestCommonSubsequencePositions LongestMatch LongForm Longitude LongLeftArrow LongLeftRightArrow LongRightArrow Loopback LoopFreeGraphQ LowerCaseQ LowerLeftArrow LowerRightArrow LowerTriangularize LowpassFilter LQEstimatorGains LQGRegulator LQOutputRegulatorGains LQRegulatorGains LUBackSubstitution LucasL LuccioSamiComponents LUDecomposition LyapunovSolve LyonsGroupLy MachineID MachineName MachineNumberQ MachinePrecision MacintoshSystemPageSetup Magenta Magnification Magnify MainSolve MaintainDynamicCaches Majority MakeBoxes MakeExpression MakeRules MangoldtLambda ManhattanDistance Manipulate Manipulator MannWhitneyTest MantissaExponent Manual Map MapAll MapAt MapIndexed MAProcess MapThread MarcumQ MardiaCombinedTest MardiaKurtosisTest MardiaSkewnessTest MarginalDistribution MarkovProcessProperties Masking MatchingDissimilarity MatchLocalNameQ MatchLocalNames MatchQ Material MathematicaNotation MathieuC MathieuCharacteristicA MathieuCharacteristicB MathieuCharacteristicExponent MathieuCPrime MathieuGroupM11 MathieuGroupM12 MathieuGroupM22 MathieuGroupM23 MathieuGroupM24 MathieuS MathieuSPrime MathMLForm MathMLText Matrices MatrixExp MatrixForm MatrixFunction MatrixLog MatrixPlot MatrixPower MatrixQ MatrixRank Max MaxBend MaxDetect MaxExtraBandwidths MaxExtraConditions MaxFeatures MaxFilter Maximize MaxIterations MaxMemoryUsed MaxMixtureKernels MaxPlotPoints MaxPoints MaxRecursion MaxStableDistribution MaxStepFraction MaxSteps MaxStepSize MaxValue MaxwellDistribution McLaughlinGroupMcL Mean MeanClusteringCoefficient MeanDegreeConnectivity MeanDeviation MeanFilter MeanGraphDistance MeanNeighborDegree MeanShift MeanShiftFilter Median MedianDeviation MedianFilter Medium MeijerG MeixnerDistribution MemberQ MemoryConstrained MemoryInUse Menu MenuAppearance MenuCommandKey MenuEvaluator MenuItem MenuPacket MenuSortingValue MenuStyle MenuView MergeDifferences Mesh MeshFunctions MeshRange MeshShading MeshStyle Message MessageDialog MessageList MessageName MessageOptions MessagePacket Messages MessagesNotebook MetaCharacters MetaInformation Method MethodOptions MexicanHatWavelet MeyerWavelet Min MinDetect MinFilter MinimalPolynomial MinimalStateSpaceModel Minimize Minors MinRecursion MinSize MinStableDistribution Minus MinusPlus MinValue Missing MissingDataMethod MittagLefflerE MixedRadix MixedRadixQuantity MixtureDistribution Mod Modal Mode Modular ModularLambda Module Modulus MoebiusMu Moment Momentary MomentConvert MomentEvaluate MomentGeneratingFunction Monday Monitor MonomialList MonomialOrder MonsterGroupM MorletWavelet MorphologicalBinarize MorphologicalBranchPoints MorphologicalComponents MorphologicalEulerNumber MorphologicalGraph MorphologicalPerimeter MorphologicalTransform Most MouseAnnotation MouseAppearance MouseAppearanceTag MouseButtons Mouseover MousePointerNote MousePosition MovingAverage MovingMedian MoyalDistribution MultiedgeStyle MultilaunchWarning MultiLetterItalics MultiLetterStyle MultilineFunction Multinomial MultinomialDistribution MultinormalDistribution MultiplicativeOrder Multiplicity Multiselection MultivariateHypergeometricDistribution MultivariatePoissonDistribution MultivariateTDistribution N NakagamiDistribution NameQ Names NamespaceBox Nand NArgMax NArgMin NBernoulliB NCache NDSolve NDSolveValue Nearest NearestFunction NeedCurrentFrontEndPackagePacket NeedCurrentFrontEndSymbolsPacket NeedlemanWunschSimilarity Needs Negative NegativeBinomialDistribution NegativeMultinomialDistribution NeighborhoodGraph Nest NestedGreaterGreater NestedLessLess NestedScriptRules NestList NestWhile NestWhileList NevilleThetaC NevilleThetaD NevilleThetaN NevilleThetaS NewPrimitiveStyle NExpectation Next NextPrime NHoldAll NHoldFirst NHoldRest NicholsGridLines NicholsPlot NIntegrate NMaximize NMaxValue NMinimize NMinValue NominalVariables NonAssociative NoncentralBetaDistribution NoncentralChiSquareDistribution NoncentralFRatioDistribution NoncentralStudentTDistribution NonCommutativeMultiply NonConstants None NonlinearModelFit NonlocalMeansFilter NonNegative NonPositive Nor NorlundB Norm Normal NormalDistribution NormalGrouping Normalize NormalizedSquaredEuclideanDistance NormalsFunction NormFunction Not NotCongruent NotCupCap NotDoubleVerticalBar Notebook NotebookApply NotebookAutoSave NotebookClose NotebookConvertSettings NotebookCreate NotebookCreateReturnObject NotebookDefault NotebookDelete NotebookDirectory NotebookDynamicExpression NotebookEvaluate NotebookEventActions NotebookFileName NotebookFind NotebookFindReturnObject NotebookGet NotebookGetLayoutInformationPacket NotebookGetMisspellingsPacket NotebookInformation NotebookInterfaceObject NotebookLocate NotebookObject NotebookOpen NotebookOpenReturnObject NotebookPath NotebookPrint NotebookPut NotebookPutReturnObject NotebookRead NotebookResetGeneratedCells Notebooks NotebookSave NotebookSaveAs NotebookSelection NotebookSetupLayoutInformationPacket NotebooksMenu NotebookWrite NotElement NotEqualTilde NotExists NotGreater NotGreaterEqual NotGreaterFullEqual NotGreaterGreater NotGreaterLess NotGreaterSlantEqual NotGreaterTilde NotHumpDownHump NotHumpEqual NotLeftTriangle NotLeftTriangleBar NotLeftTriangleEqual NotLess NotLessEqual NotLessFullEqual NotLessGreater NotLessLess NotLessSlantEqual NotLessTilde NotNestedGreaterGreater NotNestedLessLess NotPrecedes NotPrecedesEqual NotPrecedesSlantEqual NotPrecedesTilde NotReverseElement NotRightTriangle NotRightTriangleBar NotRightTriangleEqual NotSquareSubset NotSquareSubsetEqual NotSquareSuperset NotSquareSupersetEqual NotSubset NotSubsetEqual NotSucceeds NotSucceedsEqual NotSucceedsSlantEqual NotSucceedsTilde NotSuperset NotSupersetEqual NotTilde NotTildeEqual NotTildeFullEqual NotTildeTilde NotVerticalBar NProbability NProduct NProductFactors NRoots NSolve NSum NSumTerms Null NullRecords NullSpace NullWords Number NumberFieldClassNumber NumberFieldDiscriminant NumberFieldFundamentalUnits NumberFieldIntegralBasis NumberFieldNormRepresentatives NumberFieldRegulator NumberFieldRootsOfUnity NumberFieldSignature NumberForm NumberFormat NumberMarks NumberMultiplier NumberPadding NumberPoint NumberQ NumberSeparator NumberSigns NumberString Numerator NumericFunction NumericQ NuttallWindow NValues NyquistGridLines NyquistPlot O ObservabilityGramian ObservabilityMatrix ObservableDecomposition ObservableModelQ OddQ Off Offset OLEData On ONanGroupON OneIdentity Opacity Open OpenAppend Opener OpenerBox OpenerBoxOptions OpenerView OpenFunctionInspectorPacket Opening OpenRead OpenSpecialOptions OpenTemporary OpenWrite Operate OperatingSystem OptimumFlowData Optional OptionInspectorSettings OptionQ Options OptionsPacket OptionsPattern OptionValue OptionValueBox OptionValueBoxOptions Or Orange Order OrderDistribution OrderedQ Ordering Orderless OrnsteinUhlenbeckProcess Orthogonalize Out Outer OutputAutoOverwrite OutputControllabilityMatrix OutputControllableModelQ OutputForm OutputFormData OutputGrouping OutputMathEditExpression OutputNamePacket OutputResponse OutputSizeLimit OutputStream Over OverBar OverDot Overflow OverHat Overlaps Overlay OverlayBox OverlayBoxOptions Overscript OverscriptBox OverscriptBoxOptions OverTilde OverVector OwenT OwnValues PackingMethod PaddedForm Padding PadeApproximant PadLeft PadRight PageBreakAbove PageBreakBelow PageBreakWithin PageFooterLines PageFooters PageHeaderLines PageHeaders PageHeight PageRankCentrality PageWidth PairedBarChart PairedHistogram PairedSmoothHistogram PairedTTest PairedZTest PaletteNotebook PalettePath Pane PaneBox PaneBoxOptions Panel PanelBox PanelBoxOptions Paneled PaneSelector PaneSelectorBox PaneSelectorBoxOptions PaperWidth ParabolicCylinderD ParagraphIndent ParagraphSpacing ParallelArray ParallelCombine ParallelDo ParallelEvaluate Parallelization Parallelize ParallelMap ParallelNeeds ParallelProduct ParallelSubmit ParallelSum ParallelTable ParallelTry Parameter ParameterEstimator ParameterMixtureDistribution ParameterVariables ParametricFunction ParametricNDSolve ParametricNDSolveValue ParametricPlot ParametricPlot3D ParentConnect ParentDirectory ParentForm Parenthesize ParentList ParetoDistribution Part PartialCorrelationFunction PartialD ParticleData Partition PartitionsP PartitionsQ ParzenWindow PascalDistribution PassEventsDown PassEventsUp Paste PasteBoxFormInlineCells PasteButton Path PathGraph PathGraphQ Pattern PatternSequence PatternTest PauliMatrix PaulWavelet Pause PausedTime PDF PearsonChiSquareTest PearsonCorrelationTest PearsonDistribution PerformanceGoal PeriodicInterpolation Periodogram PeriodogramArray PermutationCycles PermutationCyclesQ PermutationGroup PermutationLength PermutationList PermutationListQ PermutationMax PermutationMin PermutationOrder PermutationPower PermutationProduct PermutationReplace Permutations PermutationSupport Permute PeronaMalikFilter Perpendicular PERTDistribution PetersenGraph PhaseMargins Pi Pick PIDData PIDDerivativeFilter PIDFeedforward PIDTune Piecewise PiecewiseExpand PieChart PieChart3D PillaiTrace PillaiTraceTest Pink Pivoting PixelConstrained PixelValue PixelValuePositions Placed Placeholder PlaceholderReplace Plain PlanarGraphQ Play PlayRange Plot Plot3D Plot3Matrix PlotDivision PlotJoined PlotLabel PlotLayout PlotLegends PlotMarkers PlotPoints PlotRange PlotRangeClipping PlotRangePadding PlotRegion PlotStyle Plus PlusMinus Pochhammer PodStates PodWidth Point Point3DBox PointBox PointFigureChart PointForm PointLegend PointSize PoissonConsulDistribution PoissonDistribution PoissonProcess PoissonWindow PolarAxes PolarAxesOrigin PolarGridLines PolarPlot PolarTicks PoleZeroMarkers PolyaAeppliDistribution PolyGamma Polygon Polygon3DBox Polygon3DBoxOptions PolygonBox PolygonBoxOptions PolygonHoleScale PolygonIntersections PolygonScale PolyhedronData PolyLog PolynomialExtendedGCD PolynomialForm PolynomialGCD PolynomialLCM PolynomialMod PolynomialQ PolynomialQuotient PolynomialQuotientRemainder PolynomialReduce PolynomialRemainder Polynomials PopupMenu PopupMenuBox PopupMenuBoxOptions PopupView PopupWindow Position Positive PositiveDefiniteMatrixQ PossibleZeroQ Postfix PostScript Power PowerDistribution PowerExpand PowerMod PowerModList PowerSpectralDensity PowersRepresentations PowerSymmetricPolynomial Precedence PrecedenceForm Precedes PrecedesEqual PrecedesSlantEqual PrecedesTilde Precision PrecisionGoal PreDecrement PredictionRoot PreemptProtect PreferencesPath Prefix PreIncrement Prepend PrependTo PreserveImageOptions Previous PriceGraphDistribution PrimaryPlaceholder Prime PrimeNu PrimeOmega PrimePi PrimePowerQ PrimeQ Primes PrimeZetaP PrimitiveRoot PrincipalComponents PrincipalValue Print PrintAction PrintForm PrintingCopies PrintingOptions PrintingPageRange PrintingStartingPageNumber PrintingStyleEnvironment PrintPrecision PrintTemporary Prism PrismBox PrismBoxOptions PrivateCellOptions PrivateEvaluationOptions PrivateFontOptions PrivateFrontEndOptions PrivateNotebookOptions PrivatePaths Probability ProbabilityDistribution ProbabilityPlot ProbabilityPr ProbabilityScalePlot ProbitModelFit ProcessEstimator ProcessParameterAssumptions ProcessParameterQ ProcessStateDomain ProcessTimeDomain Product ProductDistribution ProductLog ProgressIndicator ProgressIndicatorBox ProgressIndicatorBoxOptions Projection Prolog PromptForm Properties Property PropertyList PropertyValue Proportion Proportional Protect Protected ProteinData Pruning PseudoInverse Purple Put PutAppend Pyramid PyramidBox PyramidBoxOptions QBinomial QFactorial QGamma QHypergeometricPFQ QPochhammer QPolyGamma QRDecomposition QuadraticIrrationalQ Quantile QuantilePlot Quantity QuantityForm QuantityMagnitude QuantityQ QuantityUnit Quartics QuartileDeviation Quartiles QuartileSkewness QueueingNetworkProcess QueueingProcess QueueProperties Quiet Quit Quotient QuotientRemainder RadialityCentrality RadicalBox RadicalBoxOptions RadioButton RadioButtonBar RadioButtonBox RadioButtonBoxOptions Radon RamanujanTau RamanujanTauL RamanujanTauTheta RamanujanTauZ Random RandomChoice RandomComplex RandomFunction RandomGraph RandomImage RandomInteger RandomPermutation RandomPrime RandomReal RandomSample RandomSeed RandomVariate RandomWalkProcess Range RangeFilter RangeSpecification RankedMax RankedMin Raster Raster3D Raster3DBox Raster3DBoxOptions RasterArray RasterBox RasterBoxOptions Rasterize RasterSize Rational RationalFunctions Rationalize Rationals Ratios Raw RawArray RawBoxes RawData RawMedium RayleighDistribution Re Read ReadList ReadProtected Real RealBlockDiagonalForm RealDigits RealExponent Reals Reap Record RecordLists RecordSeparators Rectangle RectangleBox RectangleBoxOptions RectangleChart RectangleChart3D RecurrenceFilter RecurrenceTable RecurringDigitsForm Red Reduce RefBox ReferenceLineStyle ReferenceMarkers ReferenceMarkerStyle Refine ReflectionMatrix ReflectionTransform Refresh RefreshRate RegionBinarize RegionFunction RegionPlot RegionPlot3D RegularExpression Regularization Reinstall Release ReleaseHold ReliabilityDistribution ReliefImage ReliefPlot Remove RemoveAlphaChannel RemoveAsynchronousTask Removed RemoveInputStreamMethod RemoveOutputStreamMethod RemoveProperty RemoveScheduledTask RenameDirectory RenameFile RenderAll RenderingOptions RenewalProcess RenkoChart Repeated RepeatedNull RepeatedString Replace ReplaceAll ReplaceHeldPart ReplaceImageValue ReplaceList ReplacePart ReplacePixelValue ReplaceRepeated Resampling Rescale RescalingTransform ResetDirectory ResetMenusPacket ResetScheduledTask Residue Resolve Rest Resultant ResumePacket Return ReturnExpressionPacket ReturnInputFormPacket ReturnPacket ReturnTextPacket Reverse ReverseBiorthogonalSplineWavelet ReverseElement ReverseEquilibrium ReverseGraph ReverseUpEquilibrium RevolutionAxis RevolutionPlot3D RGBColor RiccatiSolve RiceDistribution RidgeFilter RiemannR RiemannSiegelTheta RiemannSiegelZ Riffle Right RightArrow RightArrowBar RightArrowLeftArrow RightCosetRepresentative RightDownTeeVector RightDownVector RightDownVectorBar RightTee RightTeeArrow RightTeeVector RightTriangle RightTriangleBar RightTriangleEqual RightUpDownVector RightUpTeeVector RightUpVector RightUpVectorBar RightVector RightVectorBar RiskAchievementImportance RiskReductionImportance RogersTanimotoDissimilarity Root RootApproximant RootIntervals RootLocusPlot RootMeanSquare RootOfUnityQ RootReduce Roots RootSum Rotate RotateLabel RotateLeft RotateRight RotationAction RotationBox RotationBoxOptions RotationMatrix RotationTransform Round RoundImplies RoundingRadius Row RowAlignments RowBackgrounds RowBox RowHeights RowLines RowMinHeight RowReduce RowsEqual RowSpacings RSolve RudvalisGroupRu Rule RuleCondition RuleDelayed RuleForm RulerUnits Run RunScheduledTask RunThrough RuntimeAttributes RuntimeOptions RussellRaoDissimilarity SameQ SameTest SampleDepth SampledSoundFunction SampledSoundList SampleRate SamplingPeriod SARIMAProcess SARMAProcess SatisfiabilityCount SatisfiabilityInstances SatisfiableQ Saturday Save Saveable SaveAutoDelete SaveDefinitions SawtoothWave Scale Scaled ScaleDivisions ScaledMousePosition ScaleOrigin ScalePadding ScaleRanges ScaleRangeStyle ScalingFunctions ScalingMatrix ScalingTransform Scan ScheduledTaskActiveQ ScheduledTaskData ScheduledTaskObject ScheduledTasks SchurDecomposition ScientificForm ScreenRectangle ScreenStyleEnvironment ScriptBaselineShifts ScriptLevel ScriptMinSize ScriptRules ScriptSizeMultipliers Scrollbars ScrollingOptions ScrollPosition Sec Sech SechDistribution SectionGrouping SectorChart SectorChart3D SectorOrigin SectorSpacing SeedRandom Select Selectable SelectComponents SelectedCells SelectedNotebook Selection SelectionAnimate SelectionCell SelectionCellCreateCell SelectionCellDefaultStyle SelectionCellParentStyle SelectionCreateCell SelectionDebuggerTag SelectionDuplicateCell SelectionEvaluate SelectionEvaluateCreateCell SelectionMove SelectionPlaceholder SelectionSetStyle SelectWithContents SelfLoops SelfLoopStyle SemialgebraicComponentInstances SendMail Sequence SequenceAlignment SequenceForm SequenceHold SequenceLimit Series SeriesCoefficient SeriesData SessionTime Set SetAccuracy SetAlphaChannel SetAttributes Setbacks SetBoxFormNamesPacket SetDelayed SetDirectory SetEnvironment SetEvaluationNotebook SetFileDate SetFileLoadingContext SetNotebookStatusLine SetOptions SetOptionsPacket SetPrecision SetProperty SetSelectedNotebook SetSharedFunction SetSharedVariable SetSpeechParametersPacket SetStreamPosition SetSystemOptions Setter SetterBar SetterBox SetterBoxOptions Setting SetValue Shading Shallow ShannonWavelet ShapiroWilkTest Share Sharpen ShearingMatrix ShearingTransform ShenCastanMatrix Short ShortDownArrow Shortest ShortestMatch ShortestPathFunction ShortLeftArrow ShortRightArrow ShortUpArrow Show ShowAutoStyles ShowCellBracket ShowCellLabel ShowCellTags ShowClosedCellArea ShowContents ShowControls ShowCursorTracker ShowGroupOpenCloseIcon ShowGroupOpener ShowInvisibleCharacters ShowPageBreaks ShowPredictiveInterface ShowSelection ShowShortBoxForm ShowSpecialCharacters ShowStringCharacters ShowSyntaxStyles ShrinkingDelay ShrinkWrapBoundingBox SiegelTheta SiegelTukeyTest Sign Signature SignedRankTest SignificanceLevel SignPadding SignTest SimilarityRules SimpleGraph SimpleGraphQ Simplify Sin Sinc SinghMaddalaDistribution SingleEvaluation SingleLetterItalics SingleLetterStyle SingularValueDecomposition SingularValueList SingularValuePlot SingularValues Sinh SinhIntegral SinIntegral SixJSymbol Skeleton SkeletonTransform SkellamDistribution Skewness SkewNormalDistribution Skip SliceDistribution Slider Slider2D Slider2DBox Slider2DBoxOptions SliderBox SliderBoxOptions SlideView Slot SlotSequence Small SmallCircle Smaller SmithDelayCompensator SmithWatermanSimilarity SmoothDensityHistogram SmoothHistogram SmoothHistogram3D SmoothKernelDistribution SocialMediaData Socket SokalSneathDissimilarity Solve SolveAlways SolveDelayed Sort SortBy Sound SoundAndGraphics SoundNote SoundVolume Sow Space SpaceForm Spacer Spacings Span SpanAdjustments SpanCharacterRounding SpanFromAbove SpanFromBoth SpanFromLeft SpanLineThickness SpanMaxSize SpanMinSize SpanningCharacters SpanSymmetric SparseArray SpatialGraphDistribution Speak SpeakTextPacket SpearmanRankTest SpearmanRho Spectrogram SpectrogramArray Specularity SpellingCorrection SpellingDictionaries SpellingDictionariesPath SpellingOptions SpellingSuggestionsPacket Sphere SphereBox SphericalBesselJ SphericalBesselY SphericalHankelH1 SphericalHankelH2 SphericalHarmonicY SphericalPlot3D SphericalRegion SpheroidalEigenvalue SpheroidalJoiningFactor SpheroidalPS SpheroidalPSPrime SpheroidalQS SpheroidalQSPrime SpheroidalRadialFactor SpheroidalS1 SpheroidalS1Prime SpheroidalS2 SpheroidalS2Prime Splice SplicedDistribution SplineClosed SplineDegree SplineKnots SplineWeights Split SplitBy SpokenString Sqrt SqrtBox SqrtBoxOptions Square SquaredEuclideanDistance SquareFreeQ SquareIntersection SquaresR SquareSubset SquareSubsetEqual SquareSuperset SquareSupersetEqual SquareUnion SquareWave StabilityMargins StabilityMarginsStyle StableDistribution Stack StackBegin StackComplete StackInhibit StandardDeviation StandardDeviationFilter StandardForm Standardize StandbyDistribution Star StarGraph StartAsynchronousTask StartingStepSize StartOfLine StartOfString StartScheduledTask StartupSound StateDimensions StateFeedbackGains StateOutputEstimator StateResponse StateSpaceModel StateSpaceRealization StateSpaceTransform StationaryDistribution StationaryWaveletPacketTransform StationaryWaveletTransform StatusArea StatusCentrality StepMonitor StieltjesGamma StirlingS1 StirlingS2 StopAsynchronousTask StopScheduledTask StrataVariables StratonovichProcess StreamColorFunction StreamColorFunctionScaling StreamDensityPlot StreamPlot StreamPoints StreamPosition Streams StreamScale StreamStyle String StringBreak StringByteCount StringCases StringCount StringDrop StringExpression StringForm StringFormat StringFreeQ StringInsert StringJoin StringLength StringMatchQ StringPosition StringQ StringReplace StringReplaceList StringReplacePart StringReverse StringRotateLeft StringRotateRight StringSkeleton StringSplit StringTake StringToStream StringTrim StripBoxes StripOnInput StripWrapperBoxes StrokeForm StructuralImportance StructuredArray StructuredSelection StruveH StruveL Stub StudentTDistribution Style StyleBox StyleBoxAutoDelete StyleBoxOptions StyleData StyleDefinitions StyleForm StyleKeyMapping StyleMenuListing StyleNameDialogSettings StyleNames StylePrint StyleSheetPath Subfactorial Subgraph SubMinus SubPlus SubresultantPolynomialRemainders SubresultantPolynomials Subresultants Subscript SubscriptBox SubscriptBoxOptions Subscripted Subset SubsetEqual Subsets SubStar Subsuperscript SubsuperscriptBox SubsuperscriptBoxOptions Subtract SubtractFrom SubValues Succeeds SucceedsEqual SucceedsSlantEqual SucceedsTilde SuchThat Sum SumConvergence Sunday SuperDagger SuperMinus SuperPlus Superscript SuperscriptBox SuperscriptBoxOptions Superset SupersetEqual SuperStar Surd SurdForm SurfaceColor SurfaceGraphics SurvivalDistribution SurvivalFunction SurvivalModel SurvivalModelFit SuspendPacket SuzukiDistribution SuzukiGroupSuz SwatchLegend Switch Symbol SymbolName SymletWavelet Symmetric SymmetricGroup SymmetricMatrixQ SymmetricPolynomial SymmetricReduction Symmetrize SymmetrizedArray SymmetrizedArrayRules SymmetrizedDependentComponents SymmetrizedIndependentComponents SymmetrizedReplacePart SynchronousInitialization SynchronousUpdating Syntax SyntaxForm SyntaxInformation SyntaxLength SyntaxPacket SyntaxQ SystemDialogInput SystemException SystemHelpPath SystemInformation SystemInformationData SystemOpen SystemOptions SystemsModelDelay SystemsModelDelayApproximate SystemsModelDelete SystemsModelDimensions SystemsModelExtract SystemsModelFeedbackConnect SystemsModelLabels SystemsModelOrder SystemsModelParallelConnect SystemsModelSeriesConnect SystemsModelStateFeedbackConnect SystemStub Tab TabFilling Table TableAlignments TableDepth TableDirections TableForm TableHeadings TableSpacing TableView TableViewBox TabSpacings TabView TabViewBox TabViewBoxOptions TagBox TagBoxNote TagBoxOptions TaggingRules TagSet TagSetDelayed TagStyle TagUnset Take TakeWhile Tally Tan Tanh TargetFunctions TargetUnits TautologyQ TelegraphProcess TemplateBox TemplateBoxOptions TemplateSlotSequence TemporalData Temporary TemporaryVariable TensorContract TensorDimensions TensorExpand TensorProduct TensorQ TensorRank TensorReduce TensorSymmetry TensorTranspose TensorWedge Tetrahedron TetrahedronBox TetrahedronBoxOptions TeXForm TeXSave Text Text3DBox Text3DBoxOptions TextAlignment TextBand TextBoundingBox TextBox TextCell TextClipboardType TextData TextForm TextJustification TextLine TextPacket TextParagraph TextRecognize TextRendering TextStyle Texture TextureCoordinateFunction TextureCoordinateScaling Therefore ThermometerGauge Thick Thickness Thin Thinning ThisLink ThompsonGroupTh Thread ThreeJSymbol Threshold Through Throw Thumbnail Thursday Ticks TicksStyle Tilde TildeEqual TildeFullEqual TildeTilde TimeConstrained TimeConstraint Times TimesBy TimeSeriesForecast TimeSeriesInvertibility TimeUsed TimeValue TimeZone Timing Tiny TitleGrouping TitsGroupT ToBoxes ToCharacterCode ToColor ToContinuousTimeModel ToDate ToDiscreteTimeModel ToeplitzMatrix ToExpression ToFileName Together Toggle ToggleFalse Toggler TogglerBar TogglerBox TogglerBoxOptions ToHeldExpression ToInvertibleTimeSeries TokenWords Tolerance ToLowerCase ToNumberField TooBig Tooltip TooltipBox TooltipBoxOptions TooltipDelay TooltipStyle Top TopHatTransform TopologicalSort ToRadicals ToRules ToString Total TotalHeight TotalVariationFilter TotalWidth TouchscreenAutoZoom TouchscreenControlPlacement ToUpperCase Tr Trace TraceAbove TraceAction TraceBackward TraceDepth TraceDialog TraceForward TraceInternal TraceLevel TraceOff TraceOn TraceOriginal TracePrint TraceScan TrackedSymbols TradingChart TraditionalForm TraditionalFunctionNotation TraditionalNotation TraditionalOrder TransferFunctionCancel TransferFunctionExpand TransferFunctionFactor TransferFunctionModel TransferFunctionPoles TransferFunctionTransform TransferFunctionZeros TransformationFunction TransformationFunctions TransformationMatrix TransformedDistribution TransformedField Translate TranslationTransform TransparentColor Transpose TreeForm TreeGraph TreeGraphQ TreePlot TrendStyle TriangleWave TriangularDistribution Trig TrigExpand TrigFactor TrigFactorList Trigger TrigReduce TrigToExp TrimmedMean True TrueQ TruncatedDistribution TsallisQExponentialDistribution TsallisQGaussianDistribution TTest Tube TubeBezierCurveBox TubeBezierCurveBoxOptions TubeBox TubeBSplineCurveBox TubeBSplineCurveBoxOptions Tuesday TukeyLambdaDistribution TukeyWindow Tuples TuranGraph TuringMachine Transparent UnateQ Uncompress Undefined UnderBar Underflow Underlined Underoverscript UnderoverscriptBox UnderoverscriptBoxOptions Underscript UnderscriptBox UnderscriptBoxOptions UndirectedEdge UndirectedGraph UndirectedGraphQ UndocumentedTestFEParserPacket UndocumentedTestGetSelectionPacket Unequal Unevaluated UniformDistribution UniformGraphDistribution UniformSumDistribution Uninstall Union UnionPlus Unique UnitBox UnitConvert UnitDimensions Unitize UnitRootTest UnitSimplify UnitStep UnitTriangle UnitVector Unprotect UnsameQ UnsavedVariables Unset UnsetShared UntrackedVariables Up UpArrow UpArrowBar UpArrowDownArrow Update UpdateDynamicObjects UpdateDynamicObjectsSynchronous UpdateInterval UpDownArrow UpEquilibrium UpperCaseQ UpperLeftArrow UpperRightArrow UpperTriangularize Upsample UpSet UpSetDelayed UpTee UpTeeArrow UpValues URL URLFetch URLFetchAsynchronous URLSave URLSaveAsynchronous UseGraphicsRange Using UsingFrontEnd V2Get ValidationLength Value ValueBox ValueBoxOptions ValueForm ValueQ ValuesData Variables Variance VarianceEquivalenceTest VarianceEstimatorFunction VarianceGammaDistribution VarianceTest VectorAngle VectorColorFunction VectorColorFunctionScaling VectorDensityPlot VectorGlyphData VectorPlot VectorPlot3D VectorPoints VectorQ Vectors VectorScale VectorStyle Vee Verbatim Verbose VerboseConvertToPostScriptPacket VerifyConvergence VerifySolutions VerifyTestAssumptions Version VersionNumber VertexAdd VertexCapacity VertexColors VertexComponent VertexConnectivity VertexCoordinateRules VertexCoordinates VertexCorrelationSimilarity VertexCosineSimilarity VertexCount VertexCoverQ VertexDataCoordinates VertexDegree VertexDelete VertexDiceSimilarity VertexEccentricity VertexInComponent VertexInDegree VertexIndex VertexJaccardSimilarity VertexLabeling VertexLabels VertexLabelStyle VertexList VertexNormals VertexOutComponent VertexOutDegree VertexQ VertexRenderingFunction VertexReplace VertexShape VertexShapeFunction VertexSize VertexStyle VertexTextureCoordinates VertexWeight Vertical VerticalBar VerticalForm VerticalGauge VerticalSeparator VerticalSlider VerticalTilde ViewAngle ViewCenter ViewMatrix ViewPoint ViewPointSelectorSettings ViewPort ViewRange ViewVector ViewVertical VirtualGroupData Visible VisibleCell VoigtDistribution VonMisesDistribution WaitAll WaitAsynchronousTask WaitNext WaitUntil WakebyDistribution WalleniusHypergeometricDistribution WaringYuleDistribution WatershedComponents WatsonUSquareTest WattsStrogatzGraphDistribution WaveletBestBasis WaveletFilterCoefficients WaveletImagePlot WaveletListPlot WaveletMapIndexed WaveletMatrixPlot WaveletPhi WaveletPsi WaveletScale WaveletScalogram WaveletThreshold WeaklyConnectedComponents WeaklyConnectedGraphQ WeakStationarity WeatherData WeberE Wedge Wednesday WeibullDistribution WeierstrassHalfPeriods WeierstrassInvariants WeierstrassP WeierstrassPPrime WeierstrassSigma WeierstrassZeta WeightedAdjacencyGraph WeightedAdjacencyMatrix WeightedData WeightedGraphQ Weights WelchWindow WheelGraph WhenEvent Which While White Whitespace WhitespaceCharacter WhittakerM WhittakerW WienerFilter WienerProcess WignerD WignerSemicircleDistribution WilksW WilksWTest WindowClickSelect WindowElements WindowFloating WindowFrame WindowFrameElements WindowMargins WindowMovable WindowOpacity WindowSelected WindowSize WindowStatusArea WindowTitle WindowToolbars WindowWidth With WolframAlpha WolframAlphaDate WolframAlphaQuantity WolframAlphaResult Word WordBoundary WordCharacter WordData WordSearch WordSeparators WorkingPrecision Write WriteString Wronskian XMLElement XMLObject Xnor Xor Yellow YuleDissimilarity ZernikeR ZeroSymmetric ZeroTest ZeroWidthTimes Zeta ZetaZero ZipfDistribution ZTest ZTransform $Aborted $ActivationGroupID $ActivationKey $ActivationUserRegistered $AddOnsDirectory $AssertFunction $Assumptions $AsynchronousTask $BaseDirectory $BatchInput $BatchOutput $BoxForms $ByteOrdering $Canceled $CharacterEncoding $CharacterEncodings $CommandLine $CompilationTarget $ConditionHold $ConfiguredKernels $Context $ContextPath $ControlActiveSetting $CreationDate $CurrentLink $DateStringFormat $DefaultFont $DefaultFrontEnd $DefaultImagingDevice $DefaultPath $Display $DisplayFunction $DistributedContexts $DynamicEvaluation $Echo $Epilog $ExportFormats $Failed $FinancialDataSource $FormatType $FrontEnd $FrontEndSession $GeoLocation $HistoryLength $HomeDirectory $HTTPCookies $IgnoreEOF $ImagingDevices $ImportFormats $InitialDirectory $Input $InputFileName $InputStreamMethods $Inspector $InstallationDate $InstallationDirectory $InterfaceEnvironment $IterationLimit $KernelCount $KernelID $Language $LaunchDirectory $LibraryPath $LicenseExpirationDate $LicenseID $LicenseProcesses $LicenseServer $LicenseSubprocesses $LicenseType $Line $Linked $LinkSupported $LoadedFiles $MachineAddresses $MachineDomain $MachineDomains $MachineEpsilon $MachineID $MachineName $MachinePrecision $MachineType $MaxExtraPrecision $MaxLicenseProcesses $MaxLicenseSubprocesses $MaxMachineNumber $MaxNumber $MaxPiecewiseCases $MaxPrecision $MaxRootDegree $MessageGroups $MessageList $MessagePrePrint $Messages $MinMachineNumber $MinNumber $MinorReleaseNumber $MinPrecision $ModuleNumber $NetworkLicense $NewMessage $NewSymbol $Notebooks $NumberMarks $Off $OperatingSystem $Output $OutputForms $OutputSizeLimit $OutputStreamMethods $Packages $ParentLink $ParentProcessID $PasswordFile $PatchLevelID $Path $PathnameSeparator $PerformanceGoal $PipeSupported $Post $Pre $PreferencesDirectory $PrePrint $PreRead $PrintForms $PrintLiteral $ProcessID $ProcessorCount $ProcessorType $ProductInformation $ProgramName $RandomState $RecursionLimit $ReleaseNumber $RootDirectory $ScheduledTask $ScriptCommandLine $SessionID $SetParentLink $SharedFunctions $SharedVariables $SoundDisplay $SoundDisplayFunction $SuppressInputFormHeads $SynchronousEvaluation $SyntaxHandler $System $SystemCharacterEncoding $SystemID $SystemWordLength $TemporaryDirectory $TemporaryPrefix $TextStyle $TimedOut $TimeUnit $TimeZone $TopDirectory $TraceOff $TraceOn $TracePattern $TracePostAction $TracePreAction $Urgent $UserAddOnsDirectory $UserBaseDirectory $UserDocumentsDirectory $UserName $Version $VersionNumber", -c:[{cN:"comment",b:/\(\*/,e:/\*\)/},e.ASM,e.QSM,e.CNM,{cN:"list",b:/\{/,e:/\}/,i:/:/}]}}),hljs.registerLanguage("tex",function(e){var t={cN:"command",b:"\\\\[a-zA-Zа-яА-я]+[\\*]?"},n={cN:"command",b:"\\\\[^a-zA-Zа-яА-я0-9]"},r={cN:"special",b:"[{}\\[\\]\\&#~]",r:0};return{c:[{b:"\\\\[a-zA-Zа-яА-я]+[\\*]? *= *-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?",rB:!0,c:[t,n,{cN:"number",b:" *=",e:"-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?",eB:!0}],r:10},t,n,r,{cN:"formula",b:"\\$\\$",e:"\\$\\$",c:[t,n,r],r:0},{cN:"formula",b:"\\$",e:"\\$",c:[t,n,r],r:0},{cN:"comment",b:"%",e:"$",r:0}]}}),hljs.registerLanguage("cs",function(e){var t="abstract as base bool break byte case catch char checked const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach goto if implicit in int interface internal is lock long new null object operator out override params private protected public readonly ref return sbyte sealed short sizeof stackalloc static string struct switch this throw true try typeof uint ulong unchecked unsafe ushort using virtual volatile void while async await ascending descending from get group into join let orderby partial select set value var where yield";return{k:t,c:[{cN:"comment",b:"///",e:"$",rB:!0,c:[{cN:"xmlDocTag",b:"///|"},{cN:"xmlDocTag",b:""}]},e.CLCM,e.CBLCLM,{cN:"preprocessor",b:"#",e:"$",k:"if else elif endif define undef warning error line region endregion pragma checksum"},{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},e.ASM,e.QSM,e.CNM,{bK:"protected public private internal",e:/[{;=]/,k:t,c:[{bK:"class namespace interface",starts:{c:[e.TM]}},{b:e.IR+"\\s*\\(",rB:!0,c:[e.TM]}]}]}}),hljs.registerLanguage("css",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",n={cN:"function",b:t+"\\(",e:"\\)",c:["self",e.NM,e.ASM,e.QSM]};return{cI:!0,i:"[=/|']",c:[e.CBLCLM,{cN:"id",b:"\\#[A-Za-z0-9_-]+"},{cN:"class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"attr_selector",b:"\\[",e:"\\]",i:"$"},{cN:"pseudo",b:":(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\\\"\\']+"},{cN:"at_rule",b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{cN:"at_rule",b:"@",e:"[{;]",c:[{cN:"keyword",b:/\S+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[n,e.ASM,e.QSM,e.NM]}]},{cN:"tag",b:t,r:0},{cN:"rules",b:"{",e:"}",i:"[^\\s]",r:0,c:[e.CBLCLM,{cN:"rule",b:"[^\\s]",rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:!0,i:"[^\\s]",starts:{cN:"value",eW:!0,eE:!0,c:[n,e.NM,e.QSM,e.ASM,e.CBLCLM,{cN:"hexcolor",b:"#[0-9A-Fa-f]+"},{cN:"important",b:"!important"}]}}]}]}]}}),hljs.registerLanguage("python",function(e){var t={cN:"prompt",b:/^(>>>|\.\.\.) /},n={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[t],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[t],r:10},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},e.ASM,e.QSM]},r={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},i={cN:"params",b:/\(/,e:/\)/,c:["self",t,r,n]},o={e:/:/,i:/[${=;\n]/,c:[e.UTM,i]};return{k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},i:/(<\/|->|\?)/,c:[t,r,n,e.HCM,e.inherit(o,{cN:"function",bK:"def",r:10}),e.inherit(o,{cN:"class",bK:"class"}),{cN:"decorator",b:/@/,e:/$/},{b:/\b(print|exec)\(/}]}}),hljs.registerLanguage("profile",function(e){return{c:[e.CNM,{cN:"built_in",b:"{",e:"}$",eB:!0,eE:!0,c:[e.ASM,e.QSM],r:0},{cN:"filename",b:"[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}",e:":",eE:!0},{cN:"header",b:"(ncalls|tottime|cumtime)",e:"$",k:"ncalls tottime|10 cumtime|10 filename",r:10},{cN:"summary",b:"function calls",e:"$",c:[e.CNM],r:10},e.ASM,e.QSM,{cN:"function",b:"\\(",e:"\\)$",c:[e.UTM],r:0}]}}),hljs.registerLanguage("django",function(e){var t={cN:"filter",b:/\|[A-Za-z]+\:?/,k:"truncatewords removetags linebreaksbr yesno get_digit timesince random striptags filesizeformat escape linebreaks length_is ljust rjust cut urlize fix_ampersands title floatformat capfirst pprint divisibleby add make_list unordered_list urlencode timeuntil urlizetrunc wordcount stringformat linenumbers slice date dictsort dictsortreversed default_if_none pluralize lower join center default truncatewords_html upper length phone2numeric wordwrap time addslashes slugify first escapejs force_escape iriencode last safe safeseq truncatechars localize unlocalize localtime utc timezone",c:[{cN:"argument",b:/"/,e:/"/},{cN:"argument",b:/'/,e:/'/}]};return{cI:!0,sL:"xml",subLanguageMode:"continuous",c:[{cN:"template_comment",b:/\{%\s*comment\s*%}/,e:/\{%\s*endcomment\s*%}/},{cN:"template_comment",b:/\{#/,e:/#}/},{cN:"template_tag",b:/\{%/,e:/%}/,k:"comment endcomment load templatetag ifchanged endifchanged if endif firstof for endfor in ifnotequal endifnotequal widthratio extends include spaceless endspaceless regroup by as ifequal endifequal ssi now with cycle url filter endfilter debug block endblock else autoescape endautoescape csrf_token empty elif endwith static trans blocktrans endblocktrans get_static_prefix get_media_prefix plural get_current_language language get_available_languages get_current_language_bidi get_language_info get_language_info_list localize endlocalize localtime endlocaltime timezone endtimezone get_current_timezone verbatim",c:[t]},{cN:"variable",b:/\{\{/,e:/}}/,c:[t]}]}}),hljs.registerLanguage("nginx",function(e){var t={cN:"variable",v:[{b:/\$\d+/},{b:/\$\{/,e:/}/},{b:"[\\$\\@]"+e.UIR}]},n={eW:!0,l:"[a-z/_]+",k:{built_in:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},r:0,i:"=>",c:[e.HCM,{cN:"string",c:[e.BE,t],v:[{b:/"/,e:/"/},{b:/'/,e:/'/}]},{cN:"url",b:"([a-z]+):/",e:"\\s",eW:!0,eE:!0},{cN:"regexp",c:[e.BE,t],v:[{b:"\\s\\^",e:"\\s|{|;",rE:!0},{b:"~\\*?\\s+",e:"\\s|{|;",rE:!0},{b:"\\*(\\.[a-z\\-]+)+"},{b:"([a-z\\-]+\\.)+\\*"}]},{cN:"number",b:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{cN:"number",b:"\\b\\d+[kKmMgGdshdwy]*\\b",r:0},t]};return{c:[e.HCM,{b:e.UIR+"\\s",e:";|{",rB:!0,c:[e.inherit(e.UTM,{starts:n})],r:0}],i:"[^\\s\\}]"}}),hljs.registerLanguage("smalltalk",function(e){var t="[a-z][a-zA-Z0-9_]*",n={cN:"char",b:"\\$.{1}"},r={cN:"symbol",b:"#"+e.UIR};return{k:"self super nil true false thisContext",c:[{cN:"comment",b:'"',e:'"'},e.ASM,{cN:"class",b:"\\b[A-Z][A-Za-z0-9_]*",r:0},{cN:"method",b:t+":",r:0},e.CNM,r,n,{cN:"localvars",b:"\\|[ ]*"+t+"([ ]+"+t+")*[ ]*\\|",rB:!0,e:/\|/,i:/\S/,c:[{b:"(\\|[ ]*)?"+t}]},{cN:"array",b:"\\#\\(",e:"\\)",c:[e.ASM,n,e.CNM,r]}]}}),hljs.registerLanguage("sql",function(e){return{cI:!0,i:/[<>]/,c:[{cN:"operator",b:"\\b(begin|end|start|commit|rollback|savepoint|lock|alter|create|drop|rename|call|delete|do|handler|insert|load|replace|select|truncate|update|set|show|pragma|grant|merge)\\b(?!:)",e:";",eW:!0,k:{keyword:"all partial global month current_timestamp using go revoke smallint indicator end-exec disconnect zone with character assertion to add current_user usage input local alter match collate real then rollback get read timestamp session_user not integer bit unique day minute desc insert execute like ilike|2 level decimal drop continue isolation found where constraints domain right national some module transaction relative second connect escape close system_user for deferred section cast current sqlstate allocate intersect deallocate numeric public preserve full goto initially asc no key output collation group by union session both last language constraint column of space foreign deferrable prior connection unknown action commit view or first into float year primary cascaded except restrict set references names table outer open select size are rows from prepare distinct leading create only next inner authorization schema corresponding option declare precision immediate else timezone_minute external varying translation true case exception join hour default double scroll value cursor descriptor values dec fetch procedure delete and false int is describe char as at in varchar null trailing any absolute current_time end grant privileges when cross check write current_date pad begin temporary exec time update catalog user sql date on identity timezone_hour natural whenever interval work order cascade diagnostics nchar having left call do handler load replace truncate start lock show pragma exists number trigger if before after each row merge matched database",aggregate:"count sum min max avg"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM]},e.CBLCLM,{cN:"comment",b:"--",e:"$"}]}}),hljs.registerLanguage("oxygene",function(e){var t="abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained",n={cN:"comment",b:"{",e:"}",r:0},r={cN:"comment",b:"\\(\\*",e:"\\*\\)",r:10},i={cN:"string",b:"'",e:"'",c:[{b:"''"}]},o={cN:"string",b:"(#\\d+)+"},a={cN:"function",bK:"function constructor destructor procedure method",e:"[:;]",k:"function constructor|10 destructor|10 procedure|10 method|10",c:[e.TM,{cN:"params",b:"\\(",e:"\\)",k:t,c:[i,o]},n,r]};return{cI:!0,k:t,i:'("|\\$[G-Zg-z]|\\/\\*|{",e:"}"},i={cN:"variable",v:[{b:/\$\d/},{b:/[\$\%\@\*](\^\w\b|#\w+(\:\:\w+)*|{\w+}|\w+(\:\:\w*)*)/},{b:/[\$\%\@\*][^\s\w{]/,r:0}]},o={cN:"comment",b:"^(__END__|__DATA__)",e:"\\n$",r:5},a=[e.BE,n,i],s=[i,e.HCM,o,{cN:"comment",b:"^\\=\\w",e:"\\=cut",eW:!0},r,{cN:"string",c:a,v:[{b:"q[qwxr]?\\s*\\(",e:"\\)",r:5},{b:"q[qwxr]?\\s*\\[",e:"\\]",r:5},{b:"q[qwxr]?\\s*\\{",e:"\\}",r:5},{b:"q[qwxr]?\\s*\\|",e:"\\|",r:5},{b:"q[qwxr]?\\s*\\<",e:"\\>",r:5},{b:"qw\\s+q",e:"q",r:5},{b:"'",e:"'",c:[e.BE]},{b:'"',e:'"'},{b:"`",e:"`",c:[e.BE]},{b:"{\\w+}",c:[],r:0},{b:"-?\\w+\\s*\\=\\>",c:[],r:0}]},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\/\\/|"+e.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[e.HCM,o,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[e.BE],r:0}]},{cN:"sub",bK:"sub",e:"(\\s*\\(.*?\\))?[;{]",r:5},{cN:"operator",b:"-\\w\\b",r:0}];return n.c=s,r.c=s,{k:t,c:s}}),hljs.registerLanguage("ini",function(e){return{cI:!0,i:/\S/,c:[{cN:"comment",b:";",e:"$"},{cN:"title",b:"^\\[",e:"\\]"},{cN:"setting",b:"^[a-z0-9\\[\\]_-]+[ \\t]*=[ \\t]*",e:"$",c:[{cN:"value",eW:!0,k:"on off true false yes no",c:[e.QSM,e.NM],r:0}]}]}}),hljs.registerLanguage("erlang",function(e){var t="[a-z'][a-zA-Z0-9_']*",n="("+t+":"+t+"|"+t+")",r={keyword:"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun let not of orelse|10 query receive rem try when xor",literal:"false true"},i={cN:"comment",b:"%",e:"$",r:0},o={cN:"number",b:"\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)",r:0},a={b:"fun\\s+"+t+"/\\d+"},s={b:n+"\\(",e:"\\)",rB:!0,r:0,c:[{cN:"function_name",b:n,r:0},{b:"\\(",e:"\\)",eW:!0,rE:!0,r:0}]},l={cN:"tuple",b:"{",e:"}",r:0},u={cN:"variable",b:"\\b_([A-Z][A-Za-z0-9_]*)?",r:0},c={cN:"variable",b:"[A-Z][a-zA-Z0-9_]*",r:0},p={b:"#"+e.UIR,r:0,rB:!0,c:[{cN:"record_name",b:"#"+e.UIR,r:0},{b:"{",e:"}",r:0}]},d={bK:"fun receive if try case",e:"end",k:r};d.c=[i,a,e.inherit(e.ASM,{cN:""}),d,s,e.QSM,o,l,u,c,p];var f=[i,a,d,s,e.QSM,o,l,u,c,p];s.c[1].c=f,l.c=f,p.c[1].c=f;var h={cN:"params",b:"\\(",e:"\\)",c:f};return{k:r,i:"(",rB:!0,i:"\\(|#|//|/\\*|\\\\|:|;",c:[h,e.inherit(e.TM,{b:t})],starts:{e:";|\\.",k:r,c:f}},i,{cN:"pp",b:"^-",e:"\\.",r:0,eE:!0,rB:!0,l:"-"+e.IR,k:"-module -record -undef -export -ifdef -ifndef -author -copyright -doc -vsn -import -include -include_lib -compile -define -else -endif -file -behaviour -behavior",c:[h]},o,e.QSM,p,u,c,l]}}),hljs.registerLanguage("1c",function(e){var t="[a-zA-Zа-яА-Я][a-zA-Z0-9_а-яА-Я]*",n="возврат дата для если и или иначе иначеесли исключение конецесли конецпопытки конецпроцедуры конецфункции конеццикла константа не перейти перем перечисление по пока попытка прервать продолжить процедура строка тогда фс функция цикл число экспорт",r="ansitooem oemtoansi ввестивидсубконто ввестидату ввестизначение ввестиперечисление ввестипериод ввестиплансчетов ввестистроку ввестичисло вопрос восстановитьзначение врег выбранныйплансчетов вызватьисключение датагод датамесяц датачисло добавитьмесяц завершитьработусистемы заголовоксистемы записьжурналарегистрации запуститьприложение зафиксироватьтранзакцию значениевстроку значениевстрокувнутр значениевфайл значениеизстроки значениеизстрокивнутр значениеизфайла имякомпьютера имяпользователя каталогвременныхфайлов каталогиб каталогпользователя каталогпрограммы кодсимв командасистемы конгода конецпериодаби конецрассчитанногопериодаби конецстандартногоинтервала конквартала конмесяца коннедели лев лог лог10 макс максимальноеколичествосубконто мин монопольныйрежим названиеинтерфейса названиенабораправ назначитьвид назначитьсчет найти найтипомеченныенаудаление найтиссылки началопериодаби началостандартногоинтервала начатьтранзакцию начгода начквартала начмесяца начнедели номерднягода номерднянедели номернеделигода нрег обработкаожидания окр описаниеошибки основнойжурналрасчетов основнойплансчетов основнойязык открытьформу открытьформумодально отменитьтранзакцию очиститьокносообщений периодстр полноеимяпользователя получитьвремята получитьдатута получитьдокументта получитьзначенияотбора получитьпозициюта получитьпустоезначение получитьта прав праводоступа предупреждение префиксавтонумерации пустаястрока пустоезначение рабочаядаттьпустоезначение рабочаядата разделительстраниц разделительстрок разм разобратьпозициюдокумента рассчитатьрегистрына рассчитатьрегистрыпо сигнал симв символтабуляции создатьобъект сокрл сокрлп сокрп сообщить состояние сохранитьзначение сред статусвозврата стрдлина стрзаменить стрколичествострок стрполучитьстроку стрчисловхождений сформироватьпозициюдокумента счетпокоду текущаядата текущеевремя типзначения типзначениястр удалитьобъекты установитьтана установитьтапо фиксшаблон формат цел шаблон",i={cN:"dquote",b:'""'},o={cN:"string",b:'"',e:'"|$',c:[i]},a={cN:"string",b:"\\|",e:'"|$',c:[i]};return{cI:!0,l:t,k:{keyword:n,built_in:r},c:[e.CLCM,e.NM,o,a,{cN:"function",b:"(процедура|функция)",e:"$",l:t,k:"процедура функция",c:[e.inherit(e.TM,{b:t}),{cN:"tail",eW:!0,c:[{cN:"params",b:"\\(",e:"\\)",l:t,k:"знач",c:[o,a]},{cN:"export",b:"экспорт",eW:!0,l:t,k:"экспорт",c:[e.CLCM]}]},e.CLCM]},{cN:"preprocessor",b:"#",e:"$"},{cN:"date",b:"'\\d{2}\\.\\d{2}\\.(\\d{2}|\\d{4})'"}]}}),hljs.registerLanguage("haskell",function(e){var t={cN:"comment",v:[{b:"--",e:"$"},{b:"{-",e:"-}",c:["self"]}]},n={cN:"pragma",b:"{-#",e:"#-}"},r={cN:"preprocessor",b:"^#",e:"$"},i={cN:"type",b:"\\b[A-Z][\\w']*",r:0},o={cN:"container",b:"\\(",e:"\\)",i:'"',c:[n,t,r,{cN:"type",b:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TM,{b:"[_a-z][\\w']*"})]},a={cN:"container",b:"{",e:"}",c:o.c};return{k:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",c:[{cN:"module",b:"\\bmodule\\b",e:"where",k:"module where",c:[o,t],i:"\\W\\.|;"},{cN:"import",b:"\\bimport\\b",e:"$",k:"import|0 qualified as hiding",c:[o,t],i:"\\W\\.|;"},{cN:"class",b:"^(\\s*)?(class|instance)\\b",e:"where",k:"class family instance where",c:[i,o,t]},{cN:"typedef",b:"\\b(data|(new)?type)\\b",e:"$",k:"data family type newtype deriving",c:[n,t,i,o,a]},{cN:"default",bK:"default",e:"$",c:[i,o,t]},{cN:"infix",bK:"infix infixl infixr",e:"$",c:[e.CNM,t]},{cN:"foreign",b:"\\bforeign\\b",e:"$",k:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",c:[i,e.QSM,t]},{cN:"shebang",b:"#!\\/usr\\/bin\\/env runhaskell",e:"$"},n,t,r,e.QSM,e.CNM,i,e.inherit(e.TM,{b:"^[_a-z][\\w']*"}),{b:"->|<-"}]}}),hljs.registerLanguage("delphi",function(e){var t="exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure",n={cN:"comment",v:[{b:/\{/,e:/\}/,r:0},{b:/\(\*/,e:/\*\)/,r:10}]},r={cN:"string",b:/'/,e:/'/,c:[{b:/''/}]},i={cN:"string",b:/(#\d+)+/},o={b:e.IR+"\\s*=\\s*class\\s*\\(",rB:!0,c:[e.TM]},a={cN:"function",bK:"function constructor destructor procedure",e:/[:;]/,k:"function constructor|10 destructor|10 procedure|10",c:[e.TM,{cN:"params",b:/\(/,e:/\)/,k:t,c:[r,i]},n]};return{cI:!0,k:t,i:/("|\$[G-Zg-z]|\/\*|<\/)/,c:[n,e.CLCM,r,i,e.NM,o,a]}}),hljs.registerLanguage("markdown",function(e){return{c:[{cN:"header",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"blockquote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"`.+?`"},{b:"^( {4}| )",e:"$",r:0}]},{cN:"horizontal_rule",b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].+?[\\)\\]]",rB:!0,c:[{cN:"link_label",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link_url",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"link_reference", -b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:"^\\[.+\\]:",e:"$",rB:!0,c:[{cN:"link_reference",b:"\\[",e:"\\]",eB:!0,eE:!0},{cN:"link_url",b:"\\s",e:"$"}]}]}}),hljs.registerLanguage("avrasm",function(e){return{cI:!0,k:{keyword:"adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub subi swap tst wdr",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27 r28 r29 r30 r31 x|0 xh xl y|0 yh yl z|0 zh zl ucsr1c udr1 ucsr1a ucsr1b ubrr1l ubrr1h ucsr0c ubrr0h tccr3c tccr3a tccr3b tcnt3h tcnt3l ocr3ah ocr3al ocr3bh ocr3bl ocr3ch ocr3cl icr3h icr3l etimsk etifr tccr1c ocr1ch ocr1cl twcr twdr twar twsr twbr osccal xmcra xmcrb eicra spmcsr spmcr portg ddrg ping portf ddrf sreg sph spl xdiv rampz eicrb eimsk gimsk gicr eifr gifr timsk tifr mcucr mcucsr tccr0 tcnt0 ocr0 assr tccr1a tccr1b tcnt1h tcnt1l ocr1ah ocr1al ocr1bh ocr1bl icr1h icr1l tccr2 tcnt2 ocr2 ocdr wdtcr sfior eearh eearl eedr eecr porta ddra pina portb ddrb pinb portc ddrc pinc portd ddrd pind spdr spsr spcr udr0 ucsr0a ucsr0b ubrr0l acsr admux adcsr adch adcl porte ddre pine pinf"},c:[e.CBLCLM,{cN:"comment",b:";",e:"$",r:0},e.CNM,e.BNM,{cN:"number",b:"\\b(\\$[a-zA-Z0-9]+|0o[0-7]+)"},e.QSM,{cN:"string",b:"'",e:"[^\\\\]'",i:"[^\\\\][^']"},{cN:"label",b:"^[A-Za-z0-9_.$]+:"},{cN:"preprocessor",b:"#",e:"$"},{cN:"preprocessor",b:"\\.[a-zA-Z]+"},{cN:"localvars",b:"@[0-9]+"}]}}),hljs.registerLanguage("lisp",function(e){var t="[a-zA-Z_\\-\\+\\*\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\/\\<\\=\\>\\&\\#!]*",n="(\\-|\\+)?\\d+(\\.\\d+|\\/\\d+)?((d|e|f|l|s)(\\+|\\-)?\\d+)?",r={cN:"shebang",b:"^#!",e:"$"},i={cN:"literal",b:"\\b(t{1}|nil)\\b"},o={cN:"number",v:[{b:n,r:0},{b:"#b[0-1]+(/[0-1]+)?"},{b:"#o[0-7]+(/[0-7]+)?"},{b:"#x[0-9a-f]+(/[0-9a-f]+)?"},{b:"#c\\("+n+" +"+n,e:"\\)"}]},a=e.inherit(e.QSM,{i:null}),s={cN:"comment",b:";",e:"$"},l={cN:"variable",b:"\\*",e:"\\*"},u={cN:"keyword",b:"[:&]"+t},c={b:"\\(",e:"\\)",c:["self",i,a,o]},p={cN:"quoted",c:[o,a,l,u,c],v:[{b:"['`]\\(",e:"\\)"},{b:"\\(quote ",e:"\\)",k:{title:"quote"}}]},d={cN:"list",b:"\\(",e:"\\)"},f={eW:!0,r:0};return d.c=[{cN:"title",b:t},f],f.c=[p,d,i,o,a,s,l,u],{i:/\S/,c:[o,r,i,a,s,p,d]}}),hljs.registerLanguage("vbnet",function(e){return{cI:!0,k:{keyword:"addhandler addressof alias and andalso aggregate ansi as assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into is isfalse isnot istrue join key let lib like loop me mid mod module mustinherit mustoverride mybase myclass namespace narrowing new next not notinheritable notoverridable of off on operator option optional or order orelse overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim rem removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly xor",built_in:"boolean byte cbool cbyte cchar cdate cdec cdbl char cint clng cobj csbyte cshort csng cstr ctype date decimal directcast double gettype getxmlnamespace iif integer long object sbyte short single string trycast typeof uinteger ulong ushort",literal:"true false nothing"},i:"//|{|}|endif|gosub|variant|wend",c:[e.inherit(e.QSM,{c:[{b:'""'}]}),{cN:"comment",b:"'",e:"$",rB:!0,c:[{cN:"xmlDocTag",b:"'''|"},{cN:"xmlDocTag",b:""}]},e.CNM,{cN:"preprocessor",b:"#",e:"$",k:"if else elseif end region externalsource"}]}}),hljs.registerLanguage("axapta",function(e){return{k:"false int abstract private char boolean static null if for true while long throw finally protected final return void enum else break new catch byte super case short default double public try this switch continue reverse firstfast firstonly forupdate nofetch sum avg minof maxof count order group by asc desc index hint like dispaly edit client server ttsbegin ttscommit str real date container anytype common div mod",c:[e.CLCM,e.CBLCLM,e.ASM,e.QSM,e.CNM,{cN:"preprocessor",b:"#",e:"$"},{cN:"class",bK:"class interface",e:"{",i:":",c:[{cN:"inheritance",bK:"extends implements",r:10},e.UTM]}]}}),hljs.registerLanguage("ocaml",function(e){return{k:{keyword:"and as assert asr begin class constraint do done downto else end exception external false for fun function functor if in include inherit initializer land lazy let lor lsl lsr lxor match method mod module mutable new object of open or private rec ref sig struct then to true try type val virtual when while with parser value",built_in:"bool char float int list unit array exn option int32 int64 nativeint format4 format6 lazy_t in_channel out_channel string"},i:/\/\//,c:[{cN:"string",b:'"""',e:'"""'},{cN:"comment",b:"\\(\\*",e:"\\*\\)",c:["self"]},{cN:"class",bK:"type",e:"\\(|=|$",c:[e.UTM]},{cN:"annotation",b:"\\[<",e:">\\]"},e.CBLCLM,e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null}),e.CNM]}}),hljs.registerLanguage("erlang-repl",function(e){return{k:{special_functions:"spawn spawn_link self",reserved:"after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor"},c:[{cN:"prompt",b:"^[0-9]+> ",r:10},{cN:"comment",b:"%",e:"$"},{cN:"number",b:"\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)",r:0},e.ASM,e.QSM,{cN:"constant",b:"\\?(::)?([A-Z]\\w*(::)?)+"},{cN:"arrow",b:"->"},{cN:"ok",b:"ok"},{cN:"exclamation_mark",b:"!"},{cN:"function_or_atom",b:"(\\b[a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*)|(\\b[a-z'][a-zA-Z0-9_']*)",r:0},{cN:"variable",b:"[A-Z][a-zA-Z0-9_']*",r:0}]}}),hljs.registerLanguage("vala",function(e){return{k:{keyword:"char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 uint16 uint32 uint64 float double bool struct enum string void weak unowned owned async signal static abstract interface override while do for foreach else switch case break default return try catch public private protected internal using new this get set const stdout stdin stderr var",built_in:"DBus GLib CCode Gee Object",literal:"false true null"},c:[{cN:"class",bK:"class interface delegate namespace",e:"{",i:"[^,:\\n\\s\\.]",c:[e.UTM]},e.CLCM,e.CBLCLM,{cN:"string",b:'"""',e:'"""',r:5},e.ASM,e.QSM,e.CNM,{cN:"preprocessor",b:"^#",e:"$",r:2},{cN:"constant",b:" [A-Z_]+ ",r:0}]}}),hljs.registerLanguage("dos",function(e){return{cI:!0,k:{flow:"if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq",keyword:"shift cd dir echo setlocal endlocal set pause copy",stream:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux",winutils:"ping net ipconfig taskkill xcopy ren del"},c:[{cN:"envvar",b:"%%[^ ]"},{cN:"envvar",b:"%[^ ]+?%"},{cN:"envvar",b:"![^ ]+?!"},{cN:"number",b:"\\b\\d+",r:0},{cN:"comment",b:"@?rem",e:"$"}]}}),hljs.registerLanguage("clojure",function(e){var t={built_in:"def cond apply if-not if-let if not not= = < < > <= <= >= == + / * - rem quot neg? pos? delay? symbol? keyword? true? false? integer? empty? coll? list? set? ifn? fn? associative? sequential? sorted? counted? reversible? number? decimal? class? distinct? isa? float? rational? reduced? ratio? odd? even? char? seq? vector? string? map? nil? contains? zero? instance? not-every? not-any? libspec? -> ->> .. . inc compare do dotimes mapcat take remove take-while drop letfn drop-last take-last drop-while while intern condp case reduced cycle split-at split-with repeat replicate iterate range merge zipmap declare line-seq sort comparator sort-by dorun doall nthnext nthrest partition eval doseq await await-for let agent atom send send-off release-pending-sends add-watch mapv filterv remove-watch agent-error restart-agent set-error-handler error-handler set-error-mode! error-mode shutdown-agents quote var fn loop recur throw try monitor-enter monitor-exit defmacro defn defn- macroexpand macroexpand-1 for dosync and or when when-not when-let comp juxt partial sequence memoize constantly complement identity assert peek pop doto proxy defstruct first rest cons defprotocol cast coll deftype defrecord last butlast sigs reify second ffirst fnext nfirst nnext defmulti defmethod meta with-meta ns in-ns create-ns import refer keys select-keys vals key val rseq name namespace promise into transient persistent! conj! assoc! dissoc! pop! disj! use class type num float double short byte boolean bigint biginteger bigdec print-method print-dup throw-if printf format load compile get-in update-in pr pr-on newline flush read slurp read-line subvec with-open memfn time re-find re-groups rand-int rand mod locking assert-valid-fdecl alias resolve ref deref refset swap! reset! set-validator! compare-and-set! alter-meta! reset-meta! commute get-validator alter ref-set ref-history-count ref-min-history ref-max-history ensure sync io! new next conj set! to-array future future-call into-array aset gen-class reduce map filter find empty hash-map hash-set sorted-map sorted-map-by sorted-set sorted-set-by vec vector seq flatten reverse assoc dissoc list disj get union difference intersection extend extend-type extend-protocol int nth delay count concat chunk chunk-buffer chunk-append chunk-first chunk-rest max min dec unchecked-inc-int unchecked-inc unchecked-dec-inc unchecked-dec unchecked-negate unchecked-add-int unchecked-add unchecked-subtract-int unchecked-subtract chunk-next chunk-cons chunked-seq? prn vary-meta lazy-seq spread list* str find-keyword keyword symbol gensym force rationalize"},n="[a-zA-Z_0-9\\!\\.\\?\\-\\+\\*\\/\\<\\=\\>\\&\\#\\$';]+",r="[\\s:\\(\\{]+\\d+(\\.\\d+)?",i={cN:"number",b:r,r:0},o=e.inherit(e.QSM,{i:null}),a={cN:"comment",b:";",e:"$",r:0},s={cN:"collection",b:"[\\[\\{]",e:"[\\]\\}]"},l={cN:"comment",b:"\\^"+n},u={cN:"comment",b:"\\^\\{",e:"\\}"},c={cN:"attribute",b:"[:]"+n},p={cN:"list",b:"\\(",e:"\\)"},d={eW:!0,k:{literal:"true false nil"},r:0},f={k:t,l:n,cN:"title",b:n,starts:d};return p.c=[{cN:"comment",b:"comment"},f,d],d.c=[p,o,l,u,a,c,s,i],s.c=[p,o,l,a,c,s,i],{i:/\S/,c:[a,p,{cN:"prompt",b:/^=> /,starts:{e:/\n\n|\Z/}}]}}),hljs.registerLanguage("go",function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer",constant:"true false iota nil",typename:"bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{aliases:["golang"],k:t,i:"]/,c:[{bK:"extends implements",r:10},e.UTM]},{b:e.UIR+"\\s*\\(",rB:!0,c:[e.UTM]}]},e.CNM,{cN:"annotation",b:"@[A-Za-z]+"}]}}),hljs.registerLanguage("lua",function(e){var t="\\[=*\\[",n="\\]=*\\]",r={b:t,e:n,c:["self"]},i=[{cN:"comment",b:"--(?!"+t+")",e:"$"},{cN:"comment",b:"--"+t,e:n,c:[r],r:10}];return{l:e.UIR,k:{keyword:"and break do else elseif end false for if in local nil not or repeat return then true until while",built_in:"_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug io math os package string table"},c:i.concat([{cN:"function",bK:"function",e:"\\)",c:[e.inherit(e.TM,{b:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{cN:"params",b:"\\(",eW:!0,c:i}].concat(i)},e.CNM,e.ASM,e.QSM,{cN:"string",b:t,e:n,c:[r],r:10}])}}),hljs.registerLanguage("rsl",function(e){return{k:{keyword:"float color point normal vector matrix while for if do return else break extern continue",built_in:"abs acos ambient area asin atan atmosphere attribute calculatenormal ceil cellnoise clamp comp concat cos degrees depth Deriv diffuse distance Du Dv environment exp faceforward filterstep floor format fresnel incident length lightsource log match max min mod noise normalize ntransform opposite option phong pnoise pow printf ptlined radians random reflect refract renderinfo round setcomp setxcomp setycomp setzcomp shadow sign sin smoothstep specular specularbrdf spline sqrt step tan texture textureinfo trace transform vtransform xcomp ycomp zcomp"},i:";/,r:0,sL:"xml"}],r:0},{cN:"function",bK:"function",e:/\{/,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{cN:"params",b:/\(/,e:/\)/,c:[e.CLCM,e.CBLCLM],i:/["'\(]/}],i:/\[|%/},{b:/\$[(.]/},{b:"\\."+e.IR,r:0}]}}),hljs.registerLanguage("r",function(e){var t="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{c:[e.HCM,{b:t,l:t,k:{keyword:"function if in break next repeat else for return switch while try tryCatch|10 stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...|10",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10"},r:0},{cN:"number",b:"0[xX][0-9a-fA-F]+[Li]?\\b",r:0},{cN:"number",b:"\\d+(?:[eE][+\\-]?\\d*)?L\\b",r:0},{cN:"number",b:"\\d+\\.(?!\\d)(?:i\\b)?",r:0},{cN:"number",b:"\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",r:0},{cN:"number",b:"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",r:0},{b:"`",e:"`",r:0},{cN:"string",c:[e.BE],v:[{b:'"',e:'"'},{b:"'",e:"'"}]}]}}),hljs.registerLanguage("ruby",function(e){var t="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",n="and false then defined module in return redo if BEGIN retry end for true self when next until do begin unless END rescue nil else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",r={cN:"yardoctag",b:"@[A-Za-z]+"},i={cN:"comment",v:[{b:"#",e:"$",c:[r]},{b:"^\\=begin",e:"^\\=end",c:[r],r:10},{b:"^__END__",e:"\\n$"}]},o={cN:"subst",b:"#\\{",e:"}",k:n},a={cN:"string",c:[e.BE,o],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:"%[qw]?\\(",e:"\\)"},{b:"%[qw]?\\[",e:"\\]"},{b:"%[qw]?{",e:"}"},{b:"%[qw]?<",e:">",r:10},{b:"%[qw]?/",e:"/",r:10},{b:"%[qw]?%",e:"%",r:10},{b:"%[qw]?-",e:"-",r:10},{b:"%[qw]?\\|",e:"\\|",r:10},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/}]},s={cN:"params",b:"\\(",e:"\\)",k:n},l=[a,i,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[e.inherit(e.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{cN:"inheritance",b:"<\\s*",c:[{cN:"parent",b:"("+e.IR+"::)?"+e.IR}]},i]},{cN:"function",bK:"def",e:" |$|;",r:0,c:[e.inherit(e.TM,{b:t}),s,i]},{cN:"constant",b:"(::)?(\\b[A-Z]\\w*(::)?)+",r:0},{cN:"symbol",b:":",c:[a,{b:t}],r:0},{cN:"symbol",b:e.UIR+"(\\!|\\?)?:",r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{cN:"variable",b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{b:"("+e.RSR+")\\s*",c:[i,{cN:"regexp",c:[e.BE,o],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}],r:0}];return o.c=l,s.c=l,{k:n,c:l}}),hljs.registerLanguage("haml",function(e){return{cI:!0,c:[{cN:"doctype",b:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",r:10},{cN:"comment",b:"^\\s*(!=#|=#|-#|/).*$",r:0},{b:"^\\s*(-|=|!=)(?!#)",starts:{e:"\\n",sL:"ruby"}},{cN:"tag",b:"^\\s*%",c:[{cN:"title",b:"\\w+"},{cN:"value",b:"[#\\.]\\w+"},{b:"{\\s*",e:"\\s*}",eE:!0,c:[{b:":\\w+\\s*=>",e:",\\s+",rB:!0,eW:!0,c:[{cN:"symbol",b:":\\w+"},{cN:"string",b:'"',e:'"'},{cN:"string",b:"'",e:"'"},{b:"\\w+",r:0}]}]},{b:"\\(\\s*",e:"\\s*\\)",eE:!0,c:[{b:"\\w+\\s*=",e:"\\s+",rB:!0,eW:!0,c:[{cN:"attribute",b:"\\w+",r:0},{cN:"string",b:'"',e:'"'},{cN:"string",b:"'",e:"'"},{b:"\\w+",r:0}]}]}]},{cN:"bullet",b:"^\\s*[=~]\\s*",r:0},{b:"#{",starts:{e:"}",sL:"ruby"}}]}}),hljs.registerLanguage("brainfuck",function(e){var t={cN:"literal",b:"[\\+\\-]",r:0};return{c:[{cN:"comment",b:"[^\\[\\]\\.,\\+\\-<> \r\n]",rE:!0,e:"[\\[\\]\\.,\\+\\-<> \r\n]",r:0},{cN:"title",b:"[\\[\\]]",r:0},{cN:"string",b:"[\\.,]",r:0},{b:/\+\+|\-\-/,rB:!0,c:[t]},t]}}),hljs.registerLanguage("matlab",function(e){var t=[e.CNM,{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]}];return{k:{keyword:"break case catch classdef continue else elseif end enumerated events for function global if methods otherwise parfor persistent properties return spmd switch try while",built_in:"sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i inf nan isnan isinf isfinite j why compan gallery hadamard hankel hilb invhilb magic pascal rosser toeplitz vander wilkinson"},i:'(//|"|#|/\\*|\\s+/\\w+)',c:[{cN:"function",bK:"function",e:"$",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)"},{cN:"params",b:"\\[",e:"\\]"}]},{cN:"transposed_variable",b:"[a-zA-Z_][a-zA-Z_0-9]*('+[\\.']*|[\\.']+)",e:"",r:0},{cN:"matrix",b:"\\[",e:"\\]'*[\\.']*",c:t,r:0},{cN:"cell",b:"\\{",e:"\\}'*[\\.']*",c:t,i:/:/},{cN:"comment",b:"\\%",e:"$"}].concat(t)}}),hljs.registerLanguage("vbscript",function(e){return{cI:!0,k:{keyword:"call class const dim do loop erase execute executeglobal exit for each next function if then else on error option explicit new private property let get public randomize redim rem select case set stop sub while wend with end to elseif is or xor and not class_initialize class_terminate default preserve in me byval byref step resume goto",built_in:"lcase month vartype instrrev ubound setlocale getobject rgb getref string weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency conversions csng timevalue second year space abs clng timeserial fixs len asc isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim strcomp int createobject loadpicture tan formatnumber mid scriptenginebuildversion scriptengine split scriptengineminorversion cint sin datepart ltrim sqr scriptenginemajorversion time derived eval date formatpercent exp inputbox left ascw chrw regexp server response request cstr err",literal:"true false null nothing empty"},i:"//",c:[e.inherit(e.QSM,{c:[{b:'""'}]}),{cN:"comment",b:/'/,e:/$/,r:0},e.CNM]}}),hljs.registerLanguage("fsharp",function(e){return{k:"abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",c:[{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},{cN:"string",b:'"""',e:'"""'},{cN:"comment",b:"\\(\\*",e:"\\*\\)"},{cN:"class",bK:"type",e:"\\(|=|$",c:[e.UTM]},{cN:"annotation",b:"\\[<",e:">\\]"},{cN:"attribute",b:"\\B('[A-Za-z])\\b",c:[e.BE]},e.CLCM,e.inherit(e.QSM,{i:null}),e.CNM]}}),hljs.registerLanguage("makefile",function(e){var t={cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]};return{c:[e.HCM,{b:/^\w+\s*\W*=/,rB:!0,r:0,starts:{cN:"constant",e:/\s*\W*=/,eE:!0,starts:{e:/$/,r:0,c:[t]}}},{cN:"title",b:/^[\w]+:\s*$/},{cN:"phony",b:/^\.PHONY:/,e:/$/,k:".PHONY",l:/[\.\w]+/},{b:/^\t+/,e:/$/,c:[e.QSM,t]}]}}),hljs.registerLanguage("diff",function(e){return{c:[{cN:"chunk",r:10,v:[{b:/^\@\@ +\-\d+,\d+ +\+\d+,\d+ +\@\@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"header",v:[{b:/Index: /,e:/$/},{b:/=====/,e:/=====$/},{b:/^\-\-\-/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+\+\+/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"change",b:"^\\!",e:"$"}]}}),hljs.registerLanguage("rib",function(e){return{k:"ArchiveRecord AreaLightSource Atmosphere Attribute AttributeBegin AttributeEnd Basis Begin Blobby Bound Clipping ClippingPlane Color ColorSamples ConcatTransform Cone CoordinateSystem CoordSysTransform CropWindow Curves Cylinder DepthOfField Detail DetailRange Disk Displacement Display End ErrorHandler Exposure Exterior Format FrameAspectRatio FrameBegin FrameEnd GeneralPolygon GeometricApproximation Geometry Hider Hyperboloid Identity Illuminate Imager Interior LightSource MakeCubeFaceEnvironment MakeLatLongEnvironment MakeShadow MakeTexture Matte MotionBegin MotionEnd NuPatch ObjectBegin ObjectEnd ObjectInstance Opacity Option Orientation Paraboloid Patch PatchMesh Perspective PixelFilter PixelSamples PixelVariance Points PointsGeneralPolygons PointsPolygons Polygon Procedural Projection Quantize ReadArchive RelativeDetail ReverseOrientation Rotate Scale ScreenWindow ShadingInterpolation ShadingRate Shutter Sides Skew SolidBegin SolidEnd Sphere SubdivisionMesh Surface TextureCoordinates Torus Transform TransformBegin TransformEnd TransformPoints Translate TrimCurve WorldBegin WorldEnd",i:"/},r={cN:"string",c:[e.BE,n],v:[{b:'b"',e:'"'},{b:"b'",e:"'"},e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null})]},i={v:[e.BNM,e.CNM]};return{cI:!0,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",c:[e.CLCM,e.HCM,{cN:"comment",b:"/\\*",e:"\\*/",c:[{cN:"phpdoc",b:"\\s@[A-Za-z]+"},n]},{cN:"comment",b:"__halt_compiler.+?;",eW:!0,k:"__halt_compiler",l:e.UIR},{cN:"string",b:"<<<['\"]?\\w+['\"]?$",e:"^\\w+;",c:[e.BE]},n,t,{cN:"function",bK:"function",e:/[;{]/,i:"\\$|\\[|%",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)",c:["self",t,e.CBLCLM,r,i]}]},{cN:"class",bK:"class interface",e:"{",i:/[:\(\$"]/,c:[{bK:"extends implements",r:10},e.UTM]},{bK:"namespace",e:";",i:/[\.']/,c:[e.UTM]},{bK:"use",e:";",c:[e.UTM]},{b:"=>"},r,i]}}),hljs.registerLanguage("cmake",function(e){return{cI:!0,k:{keyword:"add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_subdirectory add_test aux_source_directory break build_command cmake_minimum_required cmake_policy configure_file create_test_sourcelist define_property else elseif enable_language enable_testing endforeach endfunction endif endmacro endwhile execute_process export find_file find_library find_package find_path find_program fltk_wrap_ui foreach function get_cmake_property get_directory_property get_filename_component get_property get_source_file_property get_target_property get_test_property if include include_directories include_external_msproject include_regular_expression install link_directories load_cache load_command macro mark_as_advanced message option output_required_files project qt_wrap_cpp qt_wrap_ui remove_definitions return separate_arguments set set_directory_properties set_property set_source_files_properties set_target_properties set_tests_properties site_name source_group string target_link_libraries try_compile try_run unset variable_watch while build_name exec_program export_library_dependencies install_files install_programs install_targets link_libraries make_directory remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or",operator:"equal less greater strless strgreater strequal matches"},c:[{cN:"envvar",b:"\\${",e:"}"},e.HCM,e.QSM,e.NM]}}),hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)\}/}]},n={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},r={cN:"string",b:/'/,e:/'/};return{l:/-?[a-z\.]+/,k:{keyword:"if then else elif fi for break continue while in do done exit return set declare case esac export exec",literal:"true false",built_in:"printf echo read cd pwd pushd popd dirs let eval unset typeset readonly getopts source shopt caller type hash bind help sudo",operator:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"shebang",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,e.NM,n,r,t]}}),hljs.registerLanguage("applescript",function(e){var t=e.inherit(e.QSM,{i:""}),n={cN:"params",b:"\\(",e:"\\)",c:["self",e.CNM,t]},r=[{cN:"comment",b:"--",e:"$"},{cN:"comment",b:"\\(\\*",e:"\\*\\)",c:["self",{b:"--",e:"$"}]},e.HCM];return{k:{keyword:"about above after against and around as at back before beginning behind below beneath beside between but by considering contain contains continue copy div does eighth else end equal equals error every exit fifth first for fourth from front get given global if ignoring in into is it its last local me middle mod my ninth not of on onto or over prop property put ref reference repeat returning script second set seventh since sixth some tell tenth that the then third through thru timeout times to transaction try until where while whose with without", -constant:"AppleScript false linefeed return pi quote result space tab true",type:"alias application boolean class constant date file integer list number real record string text",command:"activate beep count delay launch log offset read round run say summarize write",property:"character characters contents day frontmost id item length month name paragraph paragraphs rest reverse running time version weekday word words year"},c:[t,e.CNM,{cN:"type",b:"\\bPOSIX file\\b"},{cN:"command",b:"\\b(clipboard info|the clipboard|info for|list (disks|folder)|mount volume|path to|(close|open for) access|(get|set) eof|current date|do shell script|get volume settings|random number|set volume|system attribute|system info|time to GMT|(load|run|store) script|scripting components|ASCII (character|number)|localized string|choose (application|color|file|file name|folder|from list|remote application|URL)|display (alert|dialog))\\b|^\\s*return\\b"},{cN:"constant",b:"\\b(text item delimiters|current application|missing value)\\b"},{cN:"keyword",b:"\\b(apart from|aside from|instead of|out of|greater than|isn't|(doesn't|does not) (equal|come before|come after|contain)|(greater|less) than( or equal)?|(starts?|ends|begins?) with|contained by|comes (before|after)|a (ref|reference))\\b"},{cN:"property",b:"\\b(POSIX path|(date|time) string|quoted form)\\b"},{cN:"function_start",bK:"on",i:"[${=;\\n]",c:[e.UTM,n]}].concat(r),i:"//"}}),hljs.registerLanguage("vhdl",function(e){return{cI:!0,k:{keyword:"abs access after alias all and architecture array assert attribute begin block body buffer bus case component configuration constant context cover disconnect downto default else elsif end entity exit fairness file for force function generate generic group guarded if impure in inertial inout is label library linkage literal loop map mod nand new next nor not null of on open or others out package port postponed procedure process property protected pure range record register reject release rem report restrict restrict_guarantee return rol ror select sequence severity shared signal sla sll sra srl strong subtype then to transport type unaffected units until use variable vmode vprop vunit wait when while with xnor xor",typename:"boolean bit character severity_level integer time delay_length natural positive string bit_vector file_open_kind file_open_status std_ulogic std_ulogic_vector std_logic std_logic_vector unsigned signed boolean_vector integer_vector real_vector time_vector"},i:"{",c:[e.CBLCLM,{cN:"comment",b:"--",e:"$"},e.QSM,e.CNM,{cN:"literal",b:"'(U|X|0|1|Z|W|L|H|-)'",c:[e.BE]},{cN:"attribute",b:"'[A-Za-z](_?[A-Za-z0-9])*",c:[e.BE]}]}}),hljs.registerLanguage("parser3",function(e){return{sL:"xml",r:0,c:[{cN:"comment",b:"^#",e:"$"},{cN:"comment",b:"\\^rem{",e:"}",r:10,c:[{b:"{",e:"}",c:["self"]}]},{cN:"preprocessor",b:"^@(?:BASE|USE|CLASS|OPTIONS)$",r:10},{cN:"title",b:"@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$"},{cN:"variable",b:"\\$\\{?[\\w\\-\\.\\:]+\\}?"},{cN:"keyword",b:"\\^[\\w\\-\\.\\:]+"},{cN:"number",b:"\\^#[0-9a-fA-F]+"},e.CNM]}}),hljs.registerLanguage("scala",function(e){var t={cN:"annotation",b:"@[A-Za-z]+"},n={cN:"string",b:'u?r?"""',e:'"""',r:10};return{k:"type yield lazy override def with val var false true sealed abstract private trait object null if for while throw finally protected extends import final return else break new catch super class case package default try this match continue throws",c:[{cN:"javadoc",b:"/\\*\\*",e:"\\*/",c:[{cN:"javadoctag",b:"@[A-Za-z]+"}],r:10},e.CLCM,e.CBLCLM,n,e.ASM,e.QSM,{cN:"class",b:"((case )?class |object |trait )",e:"({|$)",i:":",k:"case class trait object",c:[{bK:"extends with",r:10},e.UTM,{cN:"params",b:"\\(",e:"\\)",c:[e.ASM,e.QSM,n,t]}]},e.CNM,t]}}),hljs.registerLanguage("cpp",function(e){var t={keyword:"false int float while private char catch export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace unsigned long throw volatile static protected bool template mutable if public friend do return goto auto void enum else break new extern using true class asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue wchar_t inline delete alignof char16_t char32_t constexpr decltype noexcept nullptr static_assert thread_local restrict _Bool complex _Complex _Imaginary",built_in:"std string cin cout cerr clog stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf"};return{aliases:["c"],k:t,i:"",i:"\\n"},e.CLCM]},{cN:"stl_container",b:"\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",e:">",k:t,r:10,c:["self"]}]}}),angular.module("hljs",[]).provider("hljsService",function(){var e={};return{setOptions:function(t){angular.extend(e,t)},getOptions:function(){return angular.copy(e)},$get:["$window",function(t){return(t.hljs.configure||angular.noop)(e),t.hljs}]}}).factory("hljsCache",["$cacheFactory",function(e){return e("hljsCache")}]).controller("HljsCtrl",["hljsCache","hljsService",function(e,t){var n=this,r=null,i=null,o=null,a=null;n.init=function(e){r=e},n.setLanguage=function(e){i=e,o&&n.highlight(o)},n.highlightCallback=function(e){a=e},n.highlight=function(s){if(r){var l,u;o=s,i?(u=n._cacheKey(i,o),l=e.get(u),l||(l=t.highlight(i,t.fixMarkup(o),!0),e.put(u,l))):(u=n._cacheKey(o),l=e.get(u),l||(l=t.highlightAuto(t.fixMarkup(o)),e.put(u,l))),r.html(l.value),r.addClass(l.language),null!==a&&angular.isFunction(a)&&a()}},n.clear=function(){r&&(o=null,r.text(""))},n.release=function(){r=null},n._cacheKey=function(){var e=Array.prototype.slice.call(arguments),t="!angular-highlightjs!";return e.join(t)}}]).directive("hljs",[function(){return{restrict:"EA",controller:"HljsCtrl",compile:function(e,t,n){var r=e[0].innerHTML.replace(/^(\r\n|\r|\n)/m,"");return e.html('
    '),function(e,t,n,i){i.init(t.find("code")),n.onhighlight&&i.highlightCallback(function(){e.$eval(n.onhighlight)}),r&&i.highlight(r),e.$on("$destroy",function(){i.release()})}}}}]).directive("language",[function(){return{require:"hljs",restrict:"A",link:function(e,t,n,r){n.$observe("language",function(e){angular.isDefined(e)&&r.setLanguage(e)})}}}]).directive("source",[function(){return{require:"hljs",restrict:"A",link:function(e,t,n,r){e.$watch(n.source,function(e,t){e?r.highlight(e):r.clear()})}}}]).directive("include",["$http","$templateCache","$q",function(e,t,n){return{require:"hljs",restrict:"A",compile:function(r,i,o){var a=i.include;return function(r,i,o,s){var l=0;r.$watch(a,function(r){var i=++l;if(r&&angular.isString(r)){var o,a;o=t.get(r),o||(a=n.defer(),e.get(r,{cache:t,transformResponse:function(e,t){return e}}).success(function(e){i===l&&a.resolve(e)}).error(function(){i===l&&s.clear(),a.resolve()}),o=a.promise),n.when(o).then(function(e){e&&(angular.isArray(e)?e=e[1]:angular.isObject(e)&&(e=e.data),e=e.replace(/^(\r\n|\r|\n)/m,""),s.highlight(e))})}else s.clear()})}}}}]),/* +function(e){"use strict";function t(e,t){return t=t||Error,function(){var n,r,i=2,o=arguments,a=o[0],s="["+(e?e+":":"")+a+"] ",u=o[1];for(s+=u.replace(/\{\d+\}/g,function(e){var t=+e.slice(1,-1),n=t+i;return n=0&&(t-1 in e||e instanceof Array)||"function"==typeof e.item)}function r(e,t,i){var o,a;if(e)if(C(e))for(o in e)"prototype"===o||"length"===o||"name"===o||e.hasOwnProperty&&!e.hasOwnProperty(o)||t.call(i,e[o],o,e);else if(ri(e)||n(e)){var s="object"!=typeof e;for(o=0,a=e.length;a>o;o++)(s||o in e)&&t.call(i,e[o],o,e)}else if(e.forEach&&e.forEach!==r)e.forEach(t,i,e);else if(y(e))for(o in e)t.call(i,e[o],o,e);else if("function"==typeof e.hasOwnProperty)for(o in e)e.hasOwnProperty(o)&&t.call(i,e[o],o,e);else for(o in e)Rr.call(e,o)&&t.call(i,e[o],o,e);return e}function i(e,t,n){for(var r=Object.keys(e).sort(),i=0;ii;++i){var a=t[i];if(b(a)||C(a))for(var l=Object.keys(a),c=0,p=l.length;p>c;c++){var f=l[c],d=a[f];n&&b(d)?k(d)?e[f]=new Date(d.valueOf()):S(d)?e[f]=new RegExp(d):d.nodeName?e[f]=d.cloneNode(!0):I(d)?e[f]=d.clone():(b(e[f])||(e[f]=ri(d)?[]:{}),u(e[f],[d],!0)):e[f]=d}}return s(e,r),e}function l(e){return u(e,Gr.call(arguments,1),!1)}function c(e){return u(e,Gr.call(arguments,1),!0)}function p(e){return parseInt(e,10)}function f(e,t){return l(Object.create(e),t)}function d(){}function h(e){return e}function m(e){return function(){return e}}function g(e){return C(e.toString)&&e.toString!==Zr}function v(e){return"undefined"==typeof e}function $(e){return"undefined"!=typeof e}function b(e){return null!==e&&"object"==typeof e}function y(e){return null!==e&&"object"==typeof e&&!Jr(e)}function w(e){return"string"==typeof e}function x(e){return"number"==typeof e}function k(e){return"[object Date]"===Zr.call(e)}function C(e){return"function"==typeof e}function S(e){return"[object RegExp]"===Zr.call(e)}function T(e){return e&&e.window===e}function E(e){return e&&e.$evalAsync&&e.$watch}function D(e){return"[object File]"===Zr.call(e)}function A(e){return"[object FormData]"===Zr.call(e)}function M(e){return"[object Blob]"===Zr.call(e)}function O(e){return"boolean"==typeof e}function P(e){return e&&C(e.then)}function N(e){return e&&x(e.length)&&ii.test(Zr.call(e))}function j(e){return"[object ArrayBuffer]"===Zr.call(e)}function I(e){return!(!e||!(e.nodeName||e.prop&&e.attr&&e.find))}function q(e){var t,n={},r=e.split(",");for(t=0;t=0&&e.splice(n,1),n}function R(e,t){function n(e,t){var n,r=t.$$hashKey;if(ri(e))for(var o=0,a=e.length;a>o;o++)t.push(i(e[o]));else if(y(e))for(n in e)t[n]=i(e[n]);else if(e&&"function"==typeof e.hasOwnProperty)for(n in e)e.hasOwnProperty(n)&&(t[n]=i(e[n]));else for(n in e)Rr.call(e,n)&&(t[n]=i(e[n]));return s(t,r),t}function i(e){if(!b(e))return e;var t=a.indexOf(e);if(-1!==t)return u[t];if(T(e)||E(e))throw Qr("cpws","Can't copy! Making copies of Window or Scope instances is not supported.");var r=!1,i=o(e);return void 0===i&&(i=ri(e)?[]:Object.create(Jr(e)),r=!0),a.push(e),u.push(i),r?n(e,i):i}function o(e){switch(Zr.call(e)){case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Float32Array]":case"[object Float64Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return new e.constructor(i(e.buffer),e.byteOffset,e.length);case"[object ArrayBuffer]":if(!e.slice){var t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t}return e.slice(0);case"[object Boolean]":case"[object Number]":case"[object String]":case"[object Date]":return new e.constructor(e.valueOf());case"[object RegExp]":var n=new RegExp(e.source,e.toString().match(/[^\/]*$/)[0]);return n.lastIndex=e.lastIndex,n;case"[object Blob]":return new e.constructor([e],{type:e.type})}return C(e.cloneNode)?e.cloneNode(!0):void 0}var a=[],u=[];if(t){if(N(t)||j(t))throw Qr("cpta","Can't copy! TypedArray destination cannot be mutated.");if(e===t)throw Qr("cpi","Can't copy! Source and destination are identical.");return ri(t)?t.length=0:r(t,function(e,n){"$$hashKey"!==n&&delete t[n]}),a.push(e),u.push(t),n(e,t)}return i(e)}function H(e,t){if(e===t)return!0;if(null===e||null===t)return!1;if(e!==e&&t!==t)return!0;var n,r,i,o=typeof e,a=typeof t;if(o===a&&"object"===o){if(!ri(e)){if(k(e))return k(t)?H(e.getTime(),t.getTime()):!1;if(S(e))return S(t)?e.toString()===t.toString():!1;if(E(e)||E(t)||T(e)||T(t)||ri(t)||k(t)||S(t))return!1;i=me();for(r in e)if("$"!==r.charAt(0)&&!C(e[r])){if(!H(e[r],t[r]))return!1;i[r]=!0}for(r in t)if(!(r in i)&&"$"!==r.charAt(0)&&$(t[r])&&!C(t[r]))return!1;return!0}if(!ri(t))return!1;if((n=e.length)===t.length){for(r=0;n>r;r++)if(!H(e[r],t[r]))return!1;return!0}}return!1}function U(e,t,n){return e.concat(Gr.call(t,n))}function L(e,t){return Gr.call(e,t||0)}function _(e,t){var n=arguments.length>2?L(arguments,2):[];return!C(t)||t instanceof RegExp?t:n.length?function(){return arguments.length?t.apply(e,U(n,arguments,0)):t.apply(e,n)}:function(){return arguments.length?t.apply(e,arguments):t.call(e)}}function B(t,n){var r=n;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?r=void 0:T(n)?r="$WINDOW":n&&e.document===n?r="$DOCUMENT":E(n)&&(r="$SCOPE"),r}function W(e,t){return v(e)?void 0:(x(t)||(t=t?2:null),JSON.stringify(e,B,t))}function z(e){return w(e)?JSON.parse(e):e}function Y(e,t){e=e.replace(li,"");var n=Date.parse("Jan 01, 1970 00:00:00 "+e)/6e4;return ni(n)?t:n}function G(e,t){return e=new Date(e.getTime()),e.setMinutes(e.getMinutes()+t),e}function K(e,t,n){n=n?-1:1;var r=e.getTimezoneOffset(),i=Y(t,r);return G(e,n*(i-r))}function X(e){e=Wr(e).clone();try{e.empty()}catch(t){}var n=Wr("
    ").append(e).html();try{return e[0].nodeType===gi?Hr(n):n.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/,function(e,t){return"<"+Hr(t)})}catch(t){return Hr(n)}}function Z(e){try{return decodeURIComponent(e)}catch(t){}}function J(e){var t={};return r((e||"").split("&"),function(e){var n,r,i;e&&(r=e=e.replace(/\+/g,"%20"),n=e.indexOf("="),-1!==n&&(r=e.substring(0,n),i=e.substring(n+1)),r=Z(r),$(r)&&(i=$(i)?Z(i):!0,Rr.call(t,r)?ri(t[r])?t[r].push(i):t[r]=[t[r],i]:t[r]=i))}),t}function Q(e){var t=[];return r(e,function(e,n){ri(e)?r(e,function(e){t.push(te(n,!0)+(e===!0?"":"="+te(e,!0)))}):t.push(te(n,!0)+(e===!0?"":"="+te(e,!0)))}),t.length?t.join("&"):""}function ee(e){return te(e,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function te(e,t){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,t?"%20":"+")}function ne(e,t){var n,r,i=ci.length;for(r=0;i>r;++r)if(n=ci[r]+t,w(n=e.getAttribute(n)))return n;return null}function re(e){var t=e.currentScript,n=t&&t.getAttribute("src");if(!n)return!0;var r=e.createElement("a");if(r.href=n,e.location.origin===r.origin)return!0;switch(r.protocol){case"http:":case"https:":case"ftp:":case"blob:":case"file:":case"data:":return!0;default:return!1}}function ie(t,n){var i,o,a={};if(r(ci,function(e){var n=e+"app";!i&&t.hasAttribute&&t.hasAttribute(n)&&(i=t,o=t.getAttribute(n))}),r(ci,function(e){var n,r=e+"app";!i&&(n=t.querySelector("["+r.replace(":","\\:")+"]"))&&(i=n,o=n.getAttribute(r))}),i){if(!pi)return void e.console.error("Angular: disabling automatic bootstrap.