diff --git a/app/Gruntfile.coffee b/app/Gruntfile.coffee new file mode 100644 index 0000000..d59bb5b --- /dev/null +++ b/app/Gruntfile.coffee @@ -0,0 +1,149 @@ +module.exports = (grunt)-> + #config + grunt.initConfig + clean: + target: + src: 'target' + dist: + src: 'dist' + + coffee: + glob_to_multiple: + expand: true + flatten: false + src: ["src/**/*.coffee"] + dest: 'target' + ext: ".js" + + copy: + target: + files: [ + { + src: 'index.html' + dest:'target/index.html' + }, + { + src: 'src/app/server/appDev.js' + dest: 'target/src/app/server/appDev.js' + }, + { + expand: true + flatten: false + src: 'bower_components/**/*' + dest: 'target/' + }, + { + expand: true + flatten: false + src: 'vendor/**/*' + dest: 'target/' + }, + { + expand: true + flatten: true + src: 'data/*.json' + dest: 'target/data/' + }, + { + expand: true + src: ['assets/font/*', 'assets/fonts/*', 'assets/img/**/*'] + dest: 'target/' + + }, + { + expand: true + flatten: true + src: 'bower_components/requirejs/require.js' + dest: 'target/requirejs/' + } + ] + dist: + files: [ + { + src: 'target/index.html' + dest: 'dist/index.html' + }, + { + expand: true + cwd:'target' + src: ['assets/**/*'] + dest: 'dist/' + + }, + { + expand: true + flatten: true + src: 'target/src/app/partials/*.html' + dest: 'dist/src/app/partials' + }, + { + expand: true + flatten: true + src: 'target/data/*.json' + dest: 'dist/data/' + }, + { + expand: true + flatten: true + src: 'bower_components/requirejs/require.js' + dest: 'dist/requirejs/' + } + ] + cssmin: + options: + rebase: false + target: + files: + 'target/assets/css/compass.min.css':[ + 'bower_components/bootstrap/dist/css/bootstrap.css' + 'assets/css/font-awesome.min.css' + 'assets/css/ace.min.css' + 'assets/css/ace-skins.min.css' + 'assets/css/ace-fonts.css' + 'assets/css/style.css' + 'assets/css/chart.css' + 'assets/css/chosen.css' + 'assets/css/shelf.css' + 'bower_components/bootstrap-daterangepicker/daterangepicker-bs3.css' + ] + htmlmin: + target: + options: + removeComments: true + collapseWhitespace: true + files: [ + expand: true + src: 'src/app/partials/*' + dest: 'target/' + ] + watch: + build: + files: ["**/*.{css,coffee,html}"] + tasks: ['build'] + options: + spawn: false + requirejs: + dist: + options: + baseUrl: "target/src" + mainConfigFile: "target/src/main.js" + name: "main" + keepBuildDir: true + out: "dist/src/main.js" + optimize: "uglify2" + + #dependencis + grunt.loadNpmTasks('grunt-contrib-clean') + grunt.loadNpmTasks('grunt-contrib-copy') + grunt.loadNpmTasks('grunt-contrib-coffee') + grunt.loadNpmTasks('grunt-contrib-cssmin') + grunt.loadNpmTasks('grunt-contrib-htmlmin') + grunt.loadNpmTasks('grunt-contrib-watch') + grunt.loadNpmTasks('grunt-contrib-requirejs') + + #Alias tasks + grunt.registerTask('build', ['clean:target','copy:target','coffee','cssmin', 'htmlmin']) + grunt.registerTask('watcher', ['watch']) + grunt.registerTask('default',['build','watcher']) + grunt.registerTask('dist',['build','clean:dist', 'copy:dist', 'requirejs:dist','watch']) + diff --git a/app/README.md b/app/README.md deleted file mode 100644 index 2c4c3ea..0000000 --- a/app/README.md +++ /dev/null @@ -1,79 +0,0 @@ -Compass-Web V2 -============== - -`Compass-Web V2` is an [AngularJS](https://angularjs.org/) based project for distributed systems deployment and monitoring. - - -Why Compass-Web V2? -------------------- -`Compass-Web V2` is designed to help users have a streamlined OpenStack deployment experience, -and provide extensibility to deploy other distributed systems such as Ceph system. -It targets to make a great-practice structure to ensure code resuability and module extensibility. - -`Compass-Web V2` also comes prepackaged with the required frameworks: -[AngularUI Router](https://github.com/angular-ui/ui-router) -[Twitter Bootstrap](http://getbootstrap.com), -[Angular Bootstrap](http://angular-ui.github.io/bootstrap), -[ngTable](http://bazalt-cms.com/ng-table/), -[Font Awesome](http://fortawesome.github.com/Font-Awesome), -[D3](http://d3js.org/), -[NVD3](http://nvd3.org/) -etc. - - -Directory Structure -------------------- -``` -v2/ -├── assets/ -│   ├── css/ -│   │   ├── -│   ├── font/ -│   │   ├── -│   └── img/ -│   ├── -├── dash/ -│   ├── -├── data/ -│   ├── -├── index.html -├── src/ -│   ├── app/ -│   │   ├── app.js -│   │   ├── appDev.js -│   │   ├── services.js -│   │   ├── cluster/ -│   │   │   ├── -│   │   ├── login/ -│   │   │   ├── -│   │   ├── monitoring/ -│   │   │   ├── -│   │   ├── server/ -│   │   │   ├── -│   │   ├── topnav/ -│   │   │   ├── -│   │   ├── user/ -│   │   │   ├── -│   │   └── wizard/ -│   │   ├── -│   ├── common/ -│   │   ├── -│   ├── bootstrap.js -│   └── main.js -└── vendor/ - ├── -``` - -Functional Modules ------------------- - -* Cluster Module * - -* Monitoring Module * - -* Server Module * - -* Wizard Module * - - - diff --git a/app/vendor/angular-ui-tree/angular-ui-tree.min.css b/app/assets/css/angular-ui-tree.min.css old mode 100755 new mode 100644 similarity index 100% rename from app/vendor/angular-ui-tree/angular-ui-tree.min.css rename to app/assets/css/angular-ui-tree.min.css diff --git a/app/assets/css/chosen.css b/app/assets/css/chosen.css old mode 100755 new mode 100644 diff --git a/app/vendor/angular-daterangepicker/daterangepicker-bs3.css b/app/assets/css/daterangepicker-bs3.css similarity index 100% rename from app/vendor/angular-daterangepicker/daterangepicker-bs3.css rename to app/assets/css/daterangepicker-bs3.css diff --git a/app/vendor/font-awesome/css/font-awesome.min.css b/app/assets/css/font-awesome.min.css similarity index 100% rename from app/vendor/font-awesome/css/font-awesome.min.css rename to app/assets/css/font-awesome.min.css diff --git a/app/vendor/nvd3/nv.d3.min.css b/app/assets/css/nv.d3.min.css similarity index 100% rename from app/vendor/nvd3/nv.d3.min.css rename to app/assets/css/nv.d3.min.css diff --git a/app/assets/css/style.css b/app/assets/css/style.css index 40c286f..a727ad7 100644 --- a/app/assets/css/style.css +++ b/app/assets/css/style.css @@ -1082,18 +1082,46 @@ h4.widget-title:hover { .review-osconfig{ background:#69AA46; } -.table-border-green{ - border-bottom: 1px solid #69AA46; +.centerLoading{ + padding-top: 20%; + padding-left: 45%; } -.table-border-blue{ - border-bottom: 1px solid #307ECC; +.popover-title{ + background: #F2DEDE; } -.table-border-purple{ - border-bottom: 1px solid #7E6EB0; +.yellow{ + color: #FEE188 !important; } -.table-border-grey{ - border-bottom: 1px solid #DDD; +.input-spacing{ + margin-top: 8px; } -.table-review-padding{ - padding-left:20px; +.uploadContainer{ + width: 25px; + height: 25px; + background-color: #6FB3E0; + display: inline-block; + line-height: 25px; + margin-top: 10px; + margin-right: -35px; + border-radius: 20px; +} +.uploadContainer:hover { + background-color: #EBEBEB; + cursor:pointer; +} +.uploadFile{ + margin-left: 6px; + color: #fff; +} +.col1{ + margin-top:10px; + float: left; + width: 46%; +} +.col2{ + margin-top: 10px; + margin-left: 8%; + float: left; + position: relative; + width: 46%; } \ No newline at end of file diff --git a/app/vendor/font-awesome/fonts/FontAwesome.otf b/app/assets/fonts/FontAwesome.otf similarity index 100% rename from app/vendor/font-awesome/fonts/FontAwesome.otf rename to app/assets/fonts/FontAwesome.otf diff --git a/app/vendor/font-awesome/fonts/fontawesome-webfont.eot b/app/assets/fonts/fontawesome-webfont.eot similarity index 100% rename from app/vendor/font-awesome/fonts/fontawesome-webfont.eot rename to app/assets/fonts/fontawesome-webfont.eot diff --git a/app/vendor/font-awesome/fonts/fontawesome-webfont.svg b/app/assets/fonts/fontawesome-webfont.svg similarity index 100% rename from app/vendor/font-awesome/fonts/fontawesome-webfont.svg rename to app/assets/fonts/fontawesome-webfont.svg diff --git a/app/vendor/font-awesome/fonts/fontawesome-webfont.ttf b/app/assets/fonts/fontawesome-webfont.ttf similarity index 100% rename from app/vendor/font-awesome/fonts/fontawesome-webfont.ttf rename to app/assets/fonts/fontawesome-webfont.ttf diff --git a/app/vendor/font-awesome/fonts/fontawesome-webfont.woff b/app/assets/fonts/fontawesome-webfont.woff similarity index 100% rename from app/vendor/font-awesome/fonts/fontawesome-webfont.woff rename to app/assets/fonts/fontawesome-webfont.woff diff --git a/app/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff b/app/assets/fonts/glyphicons-halflings-regular.woff similarity index 100% rename from app/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff rename to app/assets/fonts/glyphicons-halflings-regular.woff diff --git a/app/bower.json b/app/bower.json new file mode 100644 index 0000000..7eb28f5 --- /dev/null +++ b/app/bower.json @@ -0,0 +1,43 @@ +{ + "name": "Compass_v2.5", + "version": "2.5", + "homepage": "https://github.com/stackforge/compass-web", + "authors": [ + "Compass Team" + ], + "license": "MIT", + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "test", + "tests" + ], + "devDependencies": { + "angular-bootstrap": "~0.12.0", + "angular": "1.2.16", + "angular-cookies": "1.2.16", + "angular-daterangepicker": "~0.1.12", + "bootstrap": "3.1.1", + "angular-ui-router": "~0.2.13", + "angular-mocks": "~1.2.18", + "angular-touch": "~1.3.0", + "ng-table": "0.3.2", + "angular-animate": "1.2.17", + "d3": "~3.5.5", + "nvd3": "~1.7.1", + "moment": "~2.9.0", + "ng-bs-daterangepicker-plus": "0.0.1", + "bootstrap-daterangepicker": "https://github.com/dangrossman/bootstrap-daterangepicker.git#1.3.12", + "angular-spinner": "https://github.com/urish/angular-spinner.git#~0.6.1", + "requirejs": "~2.1.16", + "components-font-awesome": "~4.3.0" + }, + "resolutions": { + "bootstrap": "3.1.1", + "moment": "~2.9.0", + "d3": "~3.5.5", + "angular": "1.2.16", + "bootstrap-daterangepicker": "1.3.12" + } +} diff --git a/app/dash/app/app.20ee1677.js b/app/dash/app/app.20ee1677.js deleted file mode 100644 index 480f0d4..0000000 --- a/app/dash/app/app.20ee1677.js +++ /dev/null @@ -1,28 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -var requirejs,require,define;!function(global){function isFunction(a){return"[object Function]"===ostring.call(a)}function isArray(a){return"[object Array]"===ostring.call(a)}function each(a,b){if(a){var c;for(c=0;c-1&&(!a[c]||!b(a[c],c,a));c-=1);}}function hasProp(a,b){return hasOwn.call(a,b)}function getOwn(a,b){return hasProp(a,b)&&a[b]}function eachProp(a,b){var c;for(c in a)if(hasProp(a,c)&&b(a[c],c))break}function mixin(a,b,c,d){return b&&eachProp(b,function(b,e){(c||!hasProp(a,e))&&(d&&"string"!=typeof b?(a[e]||(a[e]={}),mixin(a[e],b,c,d)):a[e]=b)}),a}function bind(a,b){return function(){return b.apply(a,arguments)}}function scripts(){return document.getElementsByTagName("script")}function defaultOnError(a){throw a}function getGlobal(a){if(!a)return a;var b=global;return each(a.split("."),function(a){b=b[a]}),b}function makeError(a,b,c,d){var e=new Error(b+"\nhttp://requirejs.org/docs/errors.html#"+a);return e.requireType=a,e.requireModules=d,c&&(e.originalError=c),e}function newContext(a){function b(a){var b,c;for(b=0;a[b];b+=1)if(c=a[b],"."===c)a.splice(b,1),b-=1;else if(".."===c){if(1===b&&(".."===a[2]||".."===a[0]))break;b>0&&(a.splice(b-1,2),b-=2)}}function c(a,c,d){var e,f,g,h,i,j,k,l,m,n,o,p=c&&c.split("/"),q=p,r=x.map,s=r&&r["*"];if(a&&"."===a.charAt(0)&&(c?(q=getOwn(x.pkgs,c)?p=[c]:p.slice(0,p.length-1),a=q.concat(a.split("/")),b(a),f=getOwn(x.pkgs,e=a[0]),a=a.join("/"),f&&a===e+"/"+f.main&&(a=e)):0===a.indexOf("./")&&(a=a.substring(2))),d&&r&&(p||s)){for(h=a.split("/"),i=h.length;i>0;i-=1){if(k=h.slice(0,i).join("/"),p)for(j=p.length;j>0;j-=1)if(g=getOwn(r,p.slice(0,j).join("/")),g&&(g=getOwn(g,k))){l=g,m=i;break}if(l)break;!n&&s&&getOwn(s,k)&&(n=getOwn(s,k),o=i)}!l&&n&&(l=n,m=o),l&&(h.splice(0,m,l),a=h.join("/"))}return a}function d(a){isBrowser&&each(scripts(),function(b){return b.getAttribute("data-requiremodule")===a&&b.getAttribute("data-requirecontext")===u.contextName?(b.parentNode.removeChild(b),!0):void 0})}function e(a){var b=getOwn(x.paths,a);return b&&isArray(b)&&b.length>1?(d(a),b.shift(),u.require.undef(a),u.require([a]),!0):void 0}function f(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function g(a,b,d,e){var g,h,i,j,k=null,l=b?b.name:null,m=a,n=!0,o="";return a||(n=!1,a="_@r"+(E+=1)),j=f(a),k=j[0],a=j[1],k&&(k=c(k,l,e),h=getOwn(C,k)),a&&(k?o=h&&h.normalize?h.normalize(a,function(a){return c(a,l,e)}):c(a,l,e):(o=c(a,l,e),j=f(o),k=j[0],o=j[1],d=!0,g=u.nameToUrl(o))),i=!k||h||d?"":"_unnormalized"+(F+=1),{prefix:k,name:o,parentMap:b,unnormalized:!!i,url:g,originalName:m,isDefine:n,id:(k?k+"!"+o:o)+i}}function h(a){var b=a.id,c=getOwn(y,b);return c||(c=y[b]=new u.Module(a)),c}function i(a,b,c){var d=a.id,e=getOwn(y,d);!hasProp(C,d)||e&&!e.defineEmitComplete?(e=h(a),e.error&&"error"===b?c(e.error):e.on(b,c)):"defined"===b&&c(C[d])}function j(a,b){var c=a.requireModules,d=!1;b?b(a):(each(c,function(b){var c=getOwn(y,b);c&&(c.error=a,c.events.error&&(d=!0,c.emit("error",a)))}),d||req.onError(a))}function k(){globalDefQueue.length&&(apsp.apply(B,[B.length-1,0].concat(globalDefQueue)),globalDefQueue=[])}function l(a){delete y[a],delete z[a]}function m(a,b,c){var d=a.map.id;a.error?a.emit("error",a.error):(b[d]=!0,each(a.depMaps,function(d,e){var f=d.id,g=getOwn(y,f);!g||a.depMatched[e]||c[f]||(getOwn(b,f)?(a.defineDep(e,C[f]),a.check()):m(g,b,c))}),c[d]=!0)}function n(){var a,b,c,f,g=1e3*x.waitSeconds,h=g&&u.startTime+g<(new Date).getTime(),i=[],k=[],l=!1,o=!0;if(!s){if(s=!0,eachProp(z,function(c){if(a=c.map,b=a.id,c.enabled&&(a.isDefine||k.push(c),!c.error))if(!c.inited&&h)e(b)?(f=!0,l=!0):(i.push(b),d(b));else if(!c.inited&&c.fetched&&a.isDefine&&(l=!0,!a.prefix))return o=!1}),h&&i.length)return c=makeError("timeout","Load timeout for modules: "+i,null,i),c.contextName=u.contextName,j(c);o&&each(k,function(a){m(a,{},{})}),h&&!f||!l||!isBrowser&&!isWebWorker||w||(w=setTimeout(function(){w=0,n()},50)),s=!1}}function o(a){hasProp(C,a[0])||h(g(a[0],null,!0)).init(a[1],a[2])}function p(a,b,c,d){a.detachEvent&&!isOpera?d&&a.detachEvent(d,b):a.removeEventListener(c,b,!1)}function q(a){var b=a.currentTarget||a.srcElement;return p(b,u.onScriptLoad,"load","onreadystatechange"),p(b,u.onScriptError,"error"),{node:b,id:b&&b.getAttribute("data-requiremodule")}}function r(){var a;for(k();B.length;){if(a=B.shift(),null===a[0])return j(makeError("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));o(a)}}var s,t,u,v,w,x={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{},config:{}},y={},z={},A={},B=[],C={},D={},E=1,F=1;return v={require:function(a){return a.require?a.require:a.require=u.makeRequire(a.map)},exports:function(a){return a.usingExports=!0,a.map.isDefine?a.exports?a.exports:a.exports=C[a.map.id]={}:void 0},module:function(a){return a.module?a.module:a.module={id:a.map.id,uri:a.map.url,config:function(){var b,c=getOwn(x.pkgs,a.map.id);return b=c?getOwn(x.config,a.map.id+"/"+c.main):getOwn(x.config,a.map.id),b||{}},exports:C[a.map.id]}}},t=function(a){this.events=getOwn(A,a.id)||{},this.map=a,this.shim=getOwn(x.shim,a.id),this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},t.prototype={init:function(a,b,c,d){d=d||{},this.inited||(this.factory=b,c?this.on("error",c):this.events.error&&(c=bind(this,function(a){this.emit("error",a)})),this.depMaps=a&&a.slice(0),this.errback=c,this.inited=!0,this.ignore=d.ignore,d.enabled||this.enabled?this.enable():this.check())},defineDep:function(a,b){this.depMatched[a]||(this.depMatched[a]=!0,this.depCount-=1,this.depExports[a]=b)},fetch:function(){if(!this.fetched){this.fetched=!0,u.startTime=(new Date).getTime();var a=this.map;return this.shim?void u.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],bind(this,function(){return a.prefix?this.callPlugin():this.load()})):a.prefix?this.callPlugin():this.load()}},load:function(){var a=this.map.url;D[a]||(D[a]=!0,u.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,b,c=this.map.id,d=this.depExports,e=this.exports,f=this.factory;if(this.inited){if(this.error)this.emit("error",this.error);else if(!this.defining){if(this.defining=!0,this.depCount<1&&!this.defined){if(isFunction(f)){if(this.events.error&&this.map.isDefine||req.onError!==defaultOnError)try{e=u.execCb(c,f,d,e)}catch(g){a=g}else e=u.execCb(c,f,d,e);if(this.map.isDefine&&(b=this.module,b&&void 0!==b.exports&&b.exports!==this.exports?e=b.exports:void 0===e&&this.usingExports&&(e=this.exports)),a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",j(this.error=a)}else e=f;this.exports=e,this.map.isDefine&&!this.ignore&&(C[c]=e,req.onResourceLoad&&req.onResourceLoad(u,this.map,this.depMaps)),l(c),this.defined=!0}this.defining=!1,this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var a=this.map,b=a.id,d=g(a.prefix);this.depMaps.push(d),i(d,"defined",bind(this,function(d){var e,f,k,m=this.map.name,n=this.map.parentMap?this.map.parentMap.name:null,o=u.makeRequire(a.parentMap,{enableBuildCallback:!0});return this.map.unnormalized?(d.normalize&&(m=d.normalize(m,function(a){return c(a,n,!0)})||""),f=g(a.prefix+"!"+m,this.map.parentMap),i(f,"defined",bind(this,function(a){this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),k=getOwn(y,f.id),void(k&&(this.depMaps.push(f),this.events.error&&k.on("error",bind(this,function(a){this.emit("error",a)})),k.enable()))):(e=bind(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),e.error=bind(this,function(a){this.inited=!0,this.error=a,a.requireModules=[b],eachProp(y,function(a){0===a.map.id.indexOf(b+"_unnormalized")&&l(a.map.id)}),j(a)}),e.fromText=bind(this,function(c,d){var f=a.name,i=g(f),k=useInteractive;d&&(c=d),k&&(useInteractive=!1),h(i),hasProp(x.config,b)&&(x.config[f]=x.config[b]);try{req.exec(c)}catch(l){return j(makeError("fromtexteval","fromText eval for "+b+" failed: "+l,l,[b]))}k&&(useInteractive=!0),this.depMaps.push(i),u.completeLoad(f),o([f],e)}),void d.load(a.name,o,e,x))})),u.enable(d,this),this.pluginMaps[d.id]=d},enable:function(){z[this.map.id]=this,this.enabled=!0,this.enabling=!0,each(this.depMaps,bind(this,function(a,b){var c,d,e;if("string"==typeof a){if(a=g(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap),this.depMaps[b]=a,e=getOwn(v,a.id))return void(this.depExports[b]=e(this));this.depCount+=1,i(a,"defined",bind(this,function(a){this.defineDep(b,a),this.check()})),this.errback&&i(a,"error",bind(this,this.errback))}c=a.id,d=y[c],hasProp(v,c)||!d||d.enabled||u.enable(a,this)})),eachProp(this.pluginMaps,bind(this,function(a){var b=getOwn(y,a.id);b&&!b.enabled&&u.enable(a,this)})),this.enabling=!1,this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]),c.push(b)},emit:function(a,b){each(this.events[a],function(a){a(b)}),"error"===a&&delete this.events[a]}},u={config:x,contextName:a,registry:y,defined:C,urlFetched:D,defQueue:B,Module:t,makeModuleMap:g,nextTick:req.nextTick,onError:j,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");var b=x.pkgs,c=x.shim,d={paths:!0,config:!0,map:!0};eachProp(a,function(a,b){d[b]?"map"===b?(x.map||(x.map={}),mixin(x[b],a,!0,!0)):mixin(x[b],a,!0):x[b]=a}),a.shim&&(eachProp(a.shim,function(a,b){isArray(a)&&(a={deps:a}),!a.exports&&!a.init||a.exportsFn||(a.exportsFn=u.makeShimExports(a)),c[b]=a}),x.shim=c),a.packages&&(each(a.packages,function(a){var c;a="string"==typeof a?{name:a}:a,c=a.location,b[a.name]={name:a.name,location:c||a.name,main:(a.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}}),x.pkgs=b),eachProp(y,function(a,b){a.inited||a.map.unnormalized||(a.map=g(b))}),(a.deps||a.callback)&&u.require(a.deps||[],a.callback)},makeShimExports:function(a){function b(){var b;return a.init&&(b=a.init.apply(global,arguments)),b||a.exports&&getGlobal(a.exports)}return b},makeRequire:function(b,d){function e(c,f,i){var k,l,m;return d.enableBuildCallback&&f&&isFunction(f)&&(f.__requireJsBuild=!0),"string"==typeof c?isFunction(f)?j(makeError("requireargs","Invalid require call"),i):b&&hasProp(v,c)?v[c](y[b.id]):req.get?req.get(u,c,b,e):(l=g(c,b,!1,!0),k=l.id,hasProp(C,k)?C[k]:j(makeError("notloaded",'Module name "'+k+'" has not been loaded yet for context: '+a+(b?"":". Use require([])")))):(r(),u.nextTick(function(){r(),m=h(g(null,b)),m.skipMap=d.skipMap,m.init(c,f,i,{enabled:!0}),n()}),e)}return d=d||{},mixin(e,{isBrowser:isBrowser,toUrl:function(a){var d,e=a.lastIndexOf("."),f=a.split("/")[0],g="."===f||".."===f;return-1!==e&&(!g||e>1)&&(d=a.substring(e,a.length),a=a.substring(0,e)),u.nameToUrl(c(a,b&&b.id,!0),d,!0)},defined:function(a){return hasProp(C,g(a,b,!1,!0).id)},specified:function(a){return a=g(a,b,!1,!0).id,hasProp(C,a)||hasProp(y,a)}}),b||(e.undef=function(a){k();var c=g(a,b,!0),d=getOwn(y,a);delete C[a],delete D[c.url],delete A[a],d&&(d.events.defined&&(A[a]=d.events),l(a))}),e},enable:function(a){var b=getOwn(y,a.id);b&&h(a).enable()},completeLoad:function(a){var b,c,d,f=getOwn(x.shim,a)||{},g=f.exports;for(k();B.length;){if(c=B.shift(),null===c[0]){if(c[0]=a,b)break;b=!0}else c[0]===a&&(b=!0);o(c)}if(d=getOwn(y,a),!b&&!hasProp(C,a)&&d&&!d.inited){if(!(!x.enforceDefine||g&&getGlobal(g)))return e(a)?void 0:j(makeError("nodefine","No define call for "+a,null,[a]));o([a,f.deps||[],f.exportsFn])}n()},nameToUrl:function(a,b,c){var d,e,f,g,h,i,j,k,l;if(req.jsExtRegExp.test(a))k=a+(b||"");else{for(d=x.paths,e=x.pkgs,h=a.split("/"),i=h.length;i>0;i-=1){if(j=h.slice(0,i).join("/"),f=getOwn(e,j),l=getOwn(d,j)){isArray(l)&&(l=l[0]),h.splice(0,i,l);break}if(f){g=a===f.name?f.location+"/"+f.main:f.location,h.splice(0,i,g);break}}k=h.join("/"),k+=b||(/\?/.test(k)||c?"":".js"),k=("/"===k.charAt(0)||k.match(/^[\w\+\.\-]+:/)?"":x.baseUrl)+k}return x.urlArgs?k+((-1===k.indexOf("?")?"?":"&")+x.urlArgs):k},load:function(a,b){req.load(u,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if("load"===a.type||readyRegExp.test((a.currentTarget||a.srcElement).readyState)){interactiveScript=null;var b=q(a);u.completeLoad(b.id)}},onScriptError:function(a){var b=q(a);return e(b.id)?void 0:j(makeError("scripterror","Script error for: "+b.id,a,[b.id]))}},u.require=u.makeRequire(),u}function getInteractiveScript(){return interactiveScript&&"interactive"===interactiveScript.readyState?interactiveScript:(eachReverse(scripts(),function(a){return"interactive"===a.readyState?interactiveScript=a:void 0}),interactiveScript)}var req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath,version="2.1.8",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,op=Object.prototype,ostring=op.toString,hasOwn=op.hasOwnProperty,ap=Array.prototype,apsp=ap.splice,isBrowser=!("undefined"==typeof window||!navigator||!window.document),isWebWorker=!isBrowser&&"undefined"!=typeof importScripts,readyRegExp=isBrowser&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),contexts={},cfg={},globalDefQueue=[],useInteractive=!1;if("undefined"==typeof define){if("undefined"!=typeof requirejs){if(isFunction(requirejs))return;cfg=requirejs,requirejs=void 0}"undefined"==typeof require||isFunction(require)||(cfg=require,require=void 0),req=requirejs=function(a,b,c,d){var e,f,g=defContextName;return isArray(a)||"string"==typeof a||(f=a,isArray(b)?(a=b,b=c,c=d):a=[]),f&&f.context&&(g=f.context),e=getOwn(contexts,g),e||(e=contexts[g]=req.s.newContext(g)),f&&e.configure(f),e.require(a,b,c)},req.config=function(a){return req(a)},req.nextTick="undefined"!=typeof setTimeout?function(a){setTimeout(a,4)}:function(a){a()},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),each(["toUrl","undef","defined","specified"],function(a){req[a]=function(){var b=contexts[defContextName];return b.require[a].apply(b,arguments)}}),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=defaultOnError,req.createNode=function(a){var b=a.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");return b.type=a.scriptType||"text/javascript",b.charset="utf-8",b.async=!0,b},req.load=function(a,b,c){var d,e=a&&a.config||{};if(isBrowser)return d=req.createNode(e,b,c),d.setAttribute("data-requirecontext",a.contextName),d.setAttribute("data-requiremodule",b),!d.attachEvent||d.attachEvent.toString&&d.attachEvent.toString().indexOf("[native code")<0||isOpera?(d.addEventListener("load",a.onScriptLoad,!1),d.addEventListener("error",a.onScriptError,!1)):(useInteractive=!0,d.attachEvent("onreadystatechange",a.onScriptLoad)),d.src=c,currentlyAddingScript=d,baseElement?head.insertBefore(d,baseElement):head.appendChild(d),currentlyAddingScript=null,d;if(isWebWorker)try{importScripts(c),a.completeLoad(b)}catch(f){a.onError(makeError("importscripts","importScripts failed for "+b+" at "+c,f,[b]))}},isBrowser&&eachReverse(scripts(),function(a){return head||(head=a.parentNode),dataMain=a.getAttribute("data-main"),dataMain?(mainScript=dataMain,cfg.baseUrl||(src=mainScript.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath),mainScript=mainScript.replace(jsSuffixRegExp,""),req.jsExtRegExp.test(mainScript)&&(mainScript=dataMain),cfg.deps=cfg.deps?cfg.deps.concat(mainScript):[mainScript],!0):void 0}),define=function(a,b,c){var d,e;"string"!=typeof a&&(c=b,b=a,a=null),isArray(b)||(c=b,b=null),!b&&isFunction(c)&&(b=[],c.length&&(c.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(a,c){b.push(c)}),b=(1===c.length?["require"]:["require","exports","module"]).concat(b))),useInteractive&&(d=currentlyAddingScript||getInteractiveScript(),d&&(a||(a=d.getAttribute("data-requiremodule")),e=contexts[d.getAttribute("data-requirecontext")])),(e?e.defQueue:globalDefQueue).push([a,b,c])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)}}(this),require.config({baseUrl:"app",paths:{config:["../config","../config.sample"],settings:"components/settings",kbn:"components/kbn",css:"../vendor/require/css",text:"../vendor/require/text",moment:"../vendor/moment",filesaver:"../vendor/filesaver",angular:"../vendor/angular/angular","angular-dragdrop":"../vendor/angular/angular-dragdrop","angular-strap":"../vendor/angular/angular-strap","angular-sanitize":"../vendor/angular/angular-sanitize",timepicker:"../vendor/angular/timepicker",datepicker:"../vendor/angular/datepicker",bindonce:"../vendor/angular/bindonce",crypto:"../vendor/crypto.min",spectrum:"../vendor/spectrum",underscore:"components/underscore.extended","underscore-src":"../vendor/underscore",bootstrap:"../vendor/bootstrap/bootstrap",jquery:"../vendor/jquery/jquery-1.8.0","jquery-ui":"../vendor/jquery/jquery-ui-1.10.3","extend-jquery":"components/extend-jquery","jquery.flot":"../vendor/jquery/jquery.flot","jquery.flot.pie":"../vendor/jquery/jquery.flot.pie","jquery.flot.events":"../vendor/jquery/jquery.flot.events","jquery.flot.selection":"../vendor/jquery/jquery.flot.selection","jquery.flot.stack":"../vendor/jquery/jquery.flot.stack","jquery.flot.stackpercent":"../vendor/jquery/jquery.flot.stackpercent","jquery.flot.time":"../vendor/jquery/jquery.flot.time","jquery.flot.byte":"../vendor/jquery/jquery.flot.byte",modernizr:"../vendor/modernizr-2.6.1",elasticjs:"../vendor/elasticjs/elastic-angular-client","bootstrap-tagsinput":"../vendor/tagsinput/bootstrap-tagsinput"},shim:{underscore:{exports:"_"},spectrum:{deps:["jquery"]},crypto:{exports:"Crypto"},angular:{deps:["jquery","config"],exports:"angular"},bootstrap:{deps:["jquery"]},modernizr:{exports:"Modernizr"},jquery:{exports:"jQuery"},"jquery-ui":["jquery"],"jquery.flot":["jquery"],"jquery.flot.byte":["jquery","jquery.flot"],"jquery.flot.pie":["jquery","jquery.flot"],"jquery.flot.events":["jquery","jquery.flot"],"jquery.flot.selection":["jquery","jquery.flot"],"jquery.flot.stack":["jquery","jquery.flot"],"jquery.flot.stackpercent":["jquery","jquery.flot"],"jquery.flot.time":["jquery","jquery.flot"],"angular-sanitize":["angular"],"angular-cookies":["angular"],"angular-dragdrop":["jquery","jquery-ui","angular"],"angular-loader":["angular"],"angular-mocks":["angular"],"angular-resource":["angular"],"angular-route":["angular"],"angular-touch":["angular"],bindonce:["angular"],"angular-strap":["angular","bootstrap","timepicker","datepicker"],timepicker:["jquery","bootstrap"],datepicker:["jquery","bootstrap"],elasticjs:["angular","../vendor/elasticjs/elastic"],"bootstrap-tagsinput":["jquery"]},waitSeconds:60}),function(a,b){function c(a){var b=ob[a]={};return $.each(a.split(bb),function(a,c){b[c]=!0}),b}function d(a,c,d){if(d===b&&1===a.nodeType){var e="data-"+c.replace(qb,"-$1").toLowerCase();if(d=a.getAttribute(e),"string"==typeof d){try{d="true"===d?!0:"false"===d?!1:"null"===d?null:+d+""===d?+d:pb.test(d)?$.parseJSON(d):d}catch(f){}$.data(a,c,d)}else d=b}return d}function e(a){var b;for(b in a)if(("data"!==b||!$.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function f(){return!1}function g(){return!0}function h(a){return!a||!a.parentNode||11===a.parentNode.nodeType}function i(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}function j(a,b,c){if(b=b||0,$.isFunction(b))return $.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return $.grep(a,function(a){return a===b===c});if("string"==typeof b){var d=$.grep(a,function(a){return 1===a.nodeType});if(Kb.test(b))return $.filter(b,d,!c);b=$.filter(b,d)}return $.grep(a,function(a){return $.inArray(a,b)>=0===c})}function k(a){var b=Nb.split("|"),c=a.createDocumentFragment();if(c.createElement)for(;b.length;)c.createElement(b.pop());return c}function l(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function m(a,b){if(1===b.nodeType&&$.hasData(a)){var c,d,e,f=$._data(a),g=$._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)$.event.add(b,c,h[c][d])}g.data&&(g.data=$.extend({},g.data))}}function n(a,b){var c;1===b.nodeType&&(b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),$.support.html5Clone&&a.innerHTML&&!$.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&Xb.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.selected=a.defaultSelected:"input"===c||"textarea"===c?b.defaultValue=a.defaultValue:"script"===c&&b.text!==a.text&&(b.text=a.text),b.removeAttribute($.expando))}function o(a){return"undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName("*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll("*"):[]}function p(a){Xb.test(a.type)&&(a.defaultChecked=a.checked)}function q(a,b){if(b in a)return b;for(var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=qc.length;e--;)if(b=qc[e]+c,b in a)return b;return d}function r(a,b){return a=b||a,"none"===$.css(a,"display")||!$.contains(a.ownerDocument,a)}function s(a,b){for(var c,d,e=[],f=0,g=a.length;g>f;f++)c=a[f],c.style&&(e[f]=$._data(c,"olddisplay"),b?(!e[f]&&"none"===c.style.display&&(c.style.display=""),""===c.style.display&&r(c)&&(e[f]=$._data(c,"olddisplay",w(c.nodeName)))):(d=cc(c,"display"),!e[f]&&"none"!==d&&$._data(c,"olddisplay",d)));for(f=0;g>f;f++)c=a[f],c.style&&(b&&"none"!==c.style.display&&""!==c.style.display||(c.style.display=b?e[f]||"":"none"));return a}function t(a,b,c){var d=jc.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function u(a,b,c,d){for(var e=c===(d?"border":"content")?4:"width"===b?1:0,f=0;4>e;e+=2)"margin"===c&&(f+=$.css(a,c+pc[e],!0)),d?("content"===c&&(f-=parseFloat(cc(a,"padding"+pc[e]))||0),"margin"!==c&&(f-=parseFloat(cc(a,"border"+pc[e]+"Width"))||0)):(f+=parseFloat(cc(a,"padding"+pc[e]))||0,"padding"!==c&&(f+=parseFloat(cc(a,"border"+pc[e]+"Width"))||0));return f}function v(a,b,c){var d="width"===b?a.offsetWidth:a.offsetHeight,e=!0,f=$.support.boxSizing&&"border-box"===$.css(a,"boxSizing");if(0>=d){if(d=cc(a,b),(0>d||null==d)&&(d=a.style[b]),kc.test(d))return d;e=f&&($.support.boxSizingReliable||d===a.style[b]),d=parseFloat(d)||0}return d+u(a,b,c||(f?"border":"content"),e)+"px"}function w(a){if(mc[a])return mc[a];var b=$("<"+a+">").appendTo(P.body),c=b.css("display");return b.remove(),("none"===c||""===c)&&(dc=P.body.appendChild(dc||$.extend(P.createElement("iframe"),{frameBorder:0,width:0,height:0})),ec&&dc.createElement||(ec=(dc.contentWindow||dc.contentDocument).document,ec.write(""),ec.close()),b=ec.body.appendChild(ec.createElement(a)),c=cc(b,"display"),P.body.removeChild(dc)),mc[a]=c,c}function x(a,b,c,d){var e;if($.isArray(b))$.each(b,function(b,e){c||tc.test(a)?d(a,e):x(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==$.type(b))d(a,b);else for(e in b)x(a+"["+e+"]",b[e],c,d)}function y(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(bb),h=0,i=g.length;if($.isFunction(c))for(;i>h;h++)d=g[h],f=/^\+/.test(d),f&&(d=d.substr(1)||"*"),e=a[d]=a[d]||[],e[f?"unshift":"push"](c)}}function z(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;for(var h,i=a[f],j=0,k=i?i.length:0,l=a===Jc;k>j&&(l||!h);j++)h=i[j](c,d,e),"string"==typeof h&&(!l||g[h]?h=b:(c.dataTypes.unshift(h),h=z(a,c,d,e,h,g)));return(l||!h)&&!g["*"]&&(h=z(a,c,d,e,"*",g)),h}function A(a,c){var d,e,f=$.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&$.extend(!0,a,e)}function B(a,c,d){var e,f,g,h,i=a.contents,j=a.dataTypes,k=a.responseFields;for(f in k)f in d&&(c[k[f]]=d[f]);for(;"*"===j[0];)j.shift(),e===b&&(e=a.mimeType||c.getResponseHeader("content-type"));if(e)for(f in i)if(i[f]&&i[f].test(e)){j.unshift(f);break}if(j[0]in d)g=j[0];else{for(f in d){if(!j[0]||a.converters[f+" "+j[0]]){g=f;break}h||(h=f)}g=g||h}return g?(g!==j[0]&&j.unshift(g),d[g]):void 0}function C(a,b){var c,d,e,f,g=a.dataTypes.slice(),h=g[0],i={},j=0;if(a.dataFilter&&(b=a.dataFilter(b,a.dataType)),g[1])for(c in a.converters)i[c.toLowerCase()]=a.converters[c];for(;e=g[++j];)if("*"!==e){if("*"!==h&&h!==e){if(c=i[h+" "+e]||i["* "+e],!c)for(d in i)if(f=d.split(" "),f[1]===e&&(c=i[h+" "+f[0]]||i["* "+f[0]])){c===!0?c=i[d]:i[d]!==!0&&(e=f[0],g.splice(j--,0,e));break}if(c!==!0)if(c&&a["throws"])b=c(b);else try{b=c(b)}catch(k){return{state:"parsererror",error:c?k:"No conversion from "+h+" to "+e}}}h=e}return{state:"success",data:b}}function D(){try{return new a.XMLHttpRequest}catch(b){}}function E(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function F(){return setTimeout(function(){Uc=b},0),Uc=$.now()}function G(a,b){$.each(b,function(b,c){for(var d=($c[b]||[]).concat($c["*"]),e=0,f=d.length;f>e;e++)if(d[e].call(a,b,c))return})}function H(a,b,c){var d,e=0,f=Zc.length,g=$.Deferred().always(function(){delete h.elem}),h=function(){for(var b=Uc||F(),c=Math.max(0,i.startTime+i.duration-b),d=1-(c/i.duration||0),e=0,f=i.tweens.length;f>e;e++)i.tweens[e].run(d);return g.notifyWith(a,[i,d,c]),1>d&&f?c:(g.resolveWith(a,[i]),!1)},i=g.promise({elem:a,props:$.extend({},b),opts:$.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:Uc||F(),duration:c.duration,tweens:[],createTween:function(b,c){var d=$.Tween(a,i.opts,b,c,i.opts.specialEasing[b]||i.opts.easing);return i.tweens.push(d),d},stop:function(b){for(var c=0,d=b?i.tweens.length:0;d>c;c++)i.tweens[c].run(1);return b?g.resolveWith(a,[i,b]):g.rejectWith(a,[i,b]),this}}),j=i.props;for(I(j,i.opts.specialEasing);f>e;e++)if(d=Zc[e].call(i,a,j,i.opts))return d;return G(i,j),$.isFunction(i.opts.start)&&i.opts.start.call(a,i),$.fx.timer($.extend(h,{anim:i,queue:i.opts.queue,elem:a})),i.progress(i.opts.progress).done(i.opts.done,i.opts.complete).fail(i.opts.fail).always(i.opts.always)}function I(a,b){var c,d,e,f,g;for(c in a)if(d=$.camelCase(c),e=b[d],f=a[c],$.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=$.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function J(a,b,c){var d,e,f,g,h,i,j,k,l=this,m=a.style,n={},o=[],p=a.nodeType&&r(a);c.queue||(j=$._queueHooks(a,"fx"),null==j.unqueued&&(j.unqueued=0,k=j.empty.fire,j.empty.fire=function(){j.unqueued||k()}),j.unqueued++,l.always(function(){l.always(function(){j.unqueued--,$.queue(a,"fx").length||j.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[m.overflow,m.overflowX,m.overflowY],"inline"===$.css(a,"display")&&"none"===$.css(a,"float")&&($.support.inlineBlockNeedsLayout&&"inline"!==w(a.nodeName)?m.zoom=1:m.display="inline-block")),c.overflow&&(m.overflow="hidden",$.support.shrinkWrapBlocks||l.done(function(){m.overflow=c.overflow[0],m.overflowX=c.overflow[1],m.overflowY=c.overflow[2]}));for(d in b)if(f=b[d],Wc.exec(f)){if(delete b[d],f===(p?"hide":"show"))continue;o.push(d)}if(g=o.length)for(h=$._data(a,"fxshow")||$._data(a,"fxshow",{}),p?$(a).show():l.done(function(){$(a).hide()}),l.done(function(){var b;$.removeData(a,"fxshow",!0);for(b in n)$.style(a,b,n[b])}),d=0;g>d;d++)e=o[d],i=l.createTween(e,p?h[e]:0),n[e]=h[e]||$.style(a,e),e in h||(h[e]=i.start,p&&(i.end=i.start,i.start="width"===e||"height"===e?1:0))}function K(a,b,c,d,e){return new K.prototype.init(a,b,c,d,e)}function L(a,b){for(var c,d={height:a},e=0;4>e;e+=2-b)c=pc[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function M(a){return $.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}var N,O,P=a.document,Q=a.location,R=a.navigator,S=a.jQuery,T=a.$,U=Array.prototype.push,V=Array.prototype.slice,W=Array.prototype.indexOf,X=Object.prototype.toString,Y=Object.prototype.hasOwnProperty,Z=String.prototype.trim,$=function(a,b){return new $.fn.init(a,b,N)},_=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,ab=/\S/,bb=/\s+/,cb=ab.test(" ")?/^[\s\xA0]+|[\s\xA0]+$/g:/^\s+|\s+$/g,db=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,eb=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,fb=/^[\],:{}\s]*$/,gb=/(?:^|:|,)(?:\s*\[)+/g,hb=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,ib=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,jb=/^-ms-/,kb=/-([\da-z])/gi,lb=function(a,b){return(b+"").toUpperCase()},mb=function(){P.addEventListener?(P.removeEventListener("DOMContentLoaded",mb,!1),$.ready()):"complete"===P.readyState&&(P.detachEvent("onreadystatechange",mb),$.ready())},nb={};$.fn=$.prototype={constructor:$,init:function(a,c,d){var e,f,g;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if("string"==typeof a){if(e="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:db.exec(a),e&&(e[1]||!c)){if(e[1])return c=c instanceof $?c[0]:c,g=c&&c.nodeType?c.ownerDocument||c:P,a=$.parseHTML(e[1],g,!0),eb.test(e[1])&&$.isPlainObject(c)&&this.attr.call(a,c,!0),$.merge(this,a);if(f=P.getElementById(e[2]),f&&f.parentNode){if(f.id!==e[2])return d.find(a);this.length=1,this[0]=f}return this.context=P,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return $.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),$.makeArray(a,this))},selector:"",jquery:"1.8.0",length:0,size:function(){return this.length},toArray:function(){return V.call(this)},get:function(a){return null==a?this.toArray():0>a?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=$.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,"find"===b?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return $.each(this,a,b)},ready:function(a){return $.ready.promise().done(a),this},eq:function(a){return a=+a,-1===a?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(V.apply(this,arguments),"slice",V.call(arguments).join(","))},map:function(a){return this.pushStack($.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:U,sort:[].sort,splice:[].splice},$.fn.init.prototype=$.fn,$.extend=$.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;for("boolean"==typeof h&&(k=h,h=arguments[1]||{},i=2),"object"!=typeof h&&!$.isFunction(h)&&(h={}),j===i&&(h=this,--i);j>i;i++)if(null!=(a=arguments[i]))for(c in a)d=h[c],e=a[c],h!==e&&(k&&e&&($.isPlainObject(e)||(f=$.isArray(e)))?(f?(f=!1,g=d&&$.isArray(d)?d:[]):g=d&&$.isPlainObject(d)?d:{},h[c]=$.extend(k,g,e)):e!==b&&(h[c]=e));return h},$.extend({noConflict:function(b){return a.$===$&&(a.$=T),b&&a.jQuery===$&&(a.jQuery=S),$},isReady:!1,readyWait:1,holdReady:function(a){a?$.readyWait++:$.ready(!0)},ready:function(a){if(a===!0?!--$.readyWait:!$.isReady){if(!P.body)return setTimeout($.ready,1);$.isReady=!0,a!==!0&&--$.readyWait>0||(O.resolveWith(P,[$]),$.fn.trigger&&$(P).trigger("ready").off("ready"))}},isFunction:function(a){return"function"===$.type(a)},isArray:Array.isArray||function(a){return"array"===$.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return null==a?String(a):nb[X.call(a)]||"object"},isPlainObject:function(a){if(!a||"object"!==$.type(a)||a.nodeType||$.isWindow(a))return!1;try{if(a.constructor&&!Y.call(a,"constructor")&&!Y.call(a.constructor.prototype,"isPrototypeOf"))return!1 -}catch(c){return!1}var d;for(d in a);return d===b||Y.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return a&&"string"==typeof a?("boolean"==typeof b&&(c=b,b=0),b=b||P,(d=eb.exec(a))?[b.createElement(d[1])]:(d=$.buildFragment([a],b,c?null:[]),$.merge([],(d.cacheable?$.clone(d.fragment):d.fragment).childNodes))):null},parseJSON:function(b){return b&&"string"==typeof b?(b=$.trim(b),a.JSON&&a.JSON.parse?a.JSON.parse(b):fb.test(b.replace(hb,"@").replace(ib,"]").replace(gb,""))?new Function("return "+b)():void $.error("Invalid JSON: "+b)):null},parseXML:function(c){var d,e;if(!c||"string"!=typeof c)return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&$.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&ab.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(jb,"ms-").replace(kb,lb)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||$.isFunction(a);if(d)if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;g>f&&c.apply(a[f++],d)!==!1;);else if(h){for(e in a)if(c.call(a[e],e,a[e])===!1)break}else for(;g>f&&c.call(a[f],f,a[f++])!==!1;);return a},trim:Z?function(a){return null==a?"":Z.call(a)}:function(a){return null==a?"":a.toString().replace(cb,"")},makeArray:function(a,b){var c,d=b||[];return null!=a&&(c=$.type(a),null==a.length||"string"===c||"function"===c||"regexp"===c||$.isWindow(a)?U.call(d,a):$.merge(d,a)),d},inArray:function(a,b,c){var d;if(b){if(W)return W.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=c.length,e=a.length,f=0;if("number"==typeof d)for(;d>f;f++)a[e++]=c[f];else for(;c[f]!==b;)a[e++]=c[f++];return a.length=e,a},grep:function(a,b,c){var d,e=[],f=0,g=a.length;for(c=!!c;g>f;f++)d=!!b(a[f],f),c!==d&&e.push(a[f]);return e},map:function(a,c,d){var e,f,g=[],h=0,i=a.length,j=a instanceof $||i!==b&&"number"==typeof i&&(i>0&&a[0]&&a[i-1]||0===i||$.isArray(a));if(j)for(;i>h;h++)e=c(a[h],h,d),null!=e&&(g[g.length]=e);else for(f in a)e=c(a[f],f,d),null!=e&&(g[g.length]=e);return g.concat.apply([],g)},guid:1,proxy:function(a,c){var d,e,f;return"string"==typeof c&&(d=a[c],c=a,a=d),$.isFunction(a)?(e=V.call(arguments,2),f=function(){return a.apply(c,e.concat(V.call(arguments)))},f.guid=a.guid=a.guid||f.guid||$.guid++,f):b},access:function(a,c,d,e,f,g,h){var i,j=null==d,k=0,l=a.length;if(d&&"object"==typeof d){for(k in d)$.access(a,c,k,d[k],1,g,e);f=1}else if(e!==b){if(i=h===b&&$.isFunction(e),j&&(i?(i=c,c=function(a,b,c){return i.call($(a),c)}):(c.call(a,e),c=null)),c)for(;l>k;k++)c(a[k],d,i?e.call(a[k],k,c(a[k],d)):e,h);f=1}return f?a:j?c.call(a):l?c(a[0],d):g},now:function(){return(new Date).getTime()}}),$.ready.promise=function(b){if(!O)if(O=$.Deferred(),"complete"===P.readyState||"loading"!==P.readyState&&P.addEventListener)setTimeout($.ready,1);else if(P.addEventListener)P.addEventListener("DOMContentLoaded",mb,!1),a.addEventListener("load",$.ready,!1);else{P.attachEvent("onreadystatechange",mb),a.attachEvent("onload",$.ready);var c=!1;try{c=null==a.frameElement&&P.documentElement}catch(d){}c&&c.doScroll&&function e(){if(!$.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}$.ready()}}()}return O.promise(b)},$.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){nb["[object "+b+"]"]=b.toLowerCase()}),N=$(P);var ob={};$.Callbacks=function(a){a="string"==typeof a?ob[a]||c(a):$.extend({},a);var d,e,f,g,h,i,j=[],k=!a.once&&[],l=function(b){for(d=a.memory&&b,e=!0,i=g||0,g=0,h=j.length,f=!0;j&&h>i;i++)if(j[i].apply(b[0],b[1])===!1&&a.stopOnFalse){d=!1;break}f=!1,j&&(k?k.length&&l(k.shift()):d?j=[]:m.disable())},m={add:function(){if(j){var b=j.length;!function c(b){$.each(b,function(b,d){!$.isFunction(d)||a.unique&&m.has(d)?d&&d.length&&c(d):j.push(d)})}(arguments),f?h=j.length:d&&(g=b,l(d))}return this},remove:function(){return j&&$.each(arguments,function(a,b){for(var c;(c=$.inArray(b,j,c))>-1;)j.splice(c,1),f&&(h>=c&&h--,i>=c&&i--)}),this},has:function(a){return $.inArray(a,j)>-1},empty:function(){return j=[],this},disable:function(){return j=k=d=b,this},disabled:function(){return!j},lock:function(){return k=b,d||m.disable(),this},locked:function(){return!k},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],j&&(!e||k)&&(f?k.push(b):l(b)),this},fire:function(){return m.fireWith(this,arguments),this},fired:function(){return!!e}};return m},$.extend({Deferred:function(a){var b=[["resolve","done",$.Callbacks("once memory"),"resolved"],["reject","fail",$.Callbacks("once memory"),"rejected"],["notify","progress",$.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return $.Deferred(function(c){$.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]]($.isFunction(g)?function(){var a=g.apply(this,arguments);a&&$.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return"object"==typeof a?$.extend(a,d):d}},e={};return d.pipe=d.then,$.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b,c,d,e=0,f=V.call(arguments),g=f.length,h=1!==g||a&&$.isFunction(a.promise)?g:0,i=1===h?a:$.Deferred(),j=function(a,c,d){return function(e){c[a]=this,d[a]=arguments.length>1?V.call(arguments):e,d===b?i.notifyWith(c,d):--h||i.resolveWith(c,d)}};if(g>1)for(b=new Array(g),c=new Array(g),d=new Array(g);g>e;e++)f[e]&&$.isFunction(f[e].promise)?f[e].promise().done(j(e,d,f)).fail(i.reject).progress(j(e,c,b)):--h;return h||i.resolveWith(d,f),i.promise()}}),$.support=function(){var b,c,d,e,f,g,h,i,j,k,l,m=P.createElement("div");if(m.setAttribute("className","t"),m.innerHTML="
a",c=m.getElementsByTagName("*"),d=m.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5",!c||!c.length||!d)return{};e=P.createElement("select"),f=e.appendChild(P.createElement("option")),g=m.getElementsByTagName("input")[0],b={leadingWhitespace:3===m.firstChild.nodeType,tbody:!m.getElementsByTagName("tbody").length,htmlSerialize:!!m.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:"/a"===d.getAttribute("href"),opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:"on"===g.value,optSelected:f.selected,getSetAttribute:"t"!==m.className,enctype:!!P.createElement("form").enctype,html5Clone:"<:nav>"!==P.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===P.compatMode,submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},g.checked=!0,b.noCloneChecked=g.cloneNode(!0).checked,e.disabled=!0,b.optDisabled=!f.disabled;try{delete m.test}catch(n){b.deleteExpando=!1}if(!m.addEventListener&&m.attachEvent&&m.fireEvent&&(m.attachEvent("onclick",l=function(){b.noCloneEvent=!1}),m.cloneNode(!0).fireEvent("onclick"),m.detachEvent("onclick",l)),g=P.createElement("input"),g.value="t",g.setAttribute("type","radio"),b.radioValue="t"===g.value,g.setAttribute("checked","checked"),g.setAttribute("name","t"),m.appendChild(g),h=P.createDocumentFragment(),h.appendChild(m.lastChild),b.checkClone=h.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=g.checked,h.removeChild(g),h.appendChild(m),m.attachEvent)for(j in{submit:!0,change:!0,focusin:!0})i="on"+j,k=i in m,k||(m.setAttribute(i,"return;"),k="function"==typeof m[i]),b[j+"Bubbles"]=k;return $(function(){var c,d,e,f,g="padding:0;margin:0;border:0;display:block;overflow:hidden;",h=P.getElementsByTagName("body")[0];h&&(c=P.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",h.insertBefore(c,h.firstChild),d=P.createElement("div"),c.appendChild(d),d.innerHTML="
t
",e=d.getElementsByTagName("td"),e[0].style.cssText="padding:0;margin:0;border:0;display:none",k=0===e[0].offsetHeight,e[0].style.display="",e[1].style.display="none",b.reliableHiddenOffsets=k&&0===e[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=4===d.offsetWidth,b.doesNotIncludeMarginInBodyOffset=1!==h.offsetTop,a.getComputedStyle&&(b.pixelPosition="1%"!==(a.getComputedStyle(d,null)||{}).top,b.boxSizingReliable="4px"===(a.getComputedStyle(d,null)||{width:"4px"}).width,f=P.createElement("div"),f.style.cssText=d.style.cssText=g,f.style.marginRight=f.style.width="0",d.style.width="1px",d.appendChild(f),b.reliableMarginRight=!parseFloat((a.getComputedStyle(f,null)||{}).marginRight)),"undefined"!=typeof d.style.zoom&&(d.innerHTML="",d.style.cssText=g+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.style.overflow="visible",d.innerHTML="
",d.firstChild.style.width="5px",b.shrinkWrapBlocks=3!==d.offsetWidth,c.style.zoom=1),h.removeChild(c),c=d=e=f=null)}),h.removeChild(m),c=d=e=f=g=h=m=null,b}();var pb=/^(?:\{.*\}|\[.*\])$/,qb=/([A-Z])/g;$.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+($.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?$.cache[a[$.expando]]:a[$.expando],!!a&&!e(a)},data:function(a,c,d,e){if($.acceptData(a)){var f,g,h=$.expando,i="string"==typeof c,j=a.nodeType,k=j?$.cache:a,l=j?a[h]:a[h]&&h;if(l&&k[l]&&(e||k[l].data)||!i||d!==b)return l||(j?a[h]=l=$.deletedIds.pop()||++$.uuid:l=h),k[l]||(k[l]={},j||(k[l].toJSON=$.noop)),("object"==typeof c||"function"==typeof c)&&(e?k[l]=$.extend(k[l],c):k[l].data=$.extend(k[l].data,c)),f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[$.camelCase(c)]=d),i?(g=f[c],null==g&&(g=f[$.camelCase(c)])):g=f,g}},removeData:function(a,b,c){if($.acceptData(a)){var d,f,g,h=a.nodeType,i=h?$.cache:a,j=h?a[$.expando]:$.expando;if(i[j]){if(b&&(d=c?i[j]:i[j].data)){$.isArray(b)||(b in d?b=[b]:(b=$.camelCase(b),b=b in d?[b]:b.split(" ")));for(f=0,g=b.length;g>f;f++)delete d[b[f]];if(!(c?e:$.isEmptyObject)(d))return}(c||(delete i[j].data,e(i[j])))&&(h?$.cleanData([a],!0):$.support.deleteExpando||i!=i.window?delete i[j]:i[j]=null)}}},_data:function(a,b,c){return $.data(a,b,c,!0)},acceptData:function(a){var b=a.nodeName&&$.noData[a.nodeName.toLowerCase()];return!b||b!==!0&&a.getAttribute("classid")===b}}),$.fn.extend({data:function(a,c){var e,f,g,h,i,j=this[0],k=0,l=null;if(a===b){if(this.length&&(l=$.data(j),1===j.nodeType&&!$._data(j,"parsedAttrs"))){for(g=j.attributes,i=g.length;i>k;k++)h=g[k].name,0===h.indexOf("data-")&&(h=$.camelCase(h.substring(5)),d(j,h,l[h]));$._data(j,"parsedAttrs",!0)}return l}return"object"==typeof a?this.each(function(){$.data(this,a)}):(e=a.split(".",2),e[1]=e[1]?"."+e[1]:"",f=e[1]+"!",$.access(this,function(c){return c===b?(l=this.triggerHandler("getData"+f,[e[0]]),l===b&&j&&(l=$.data(j,a),l=d(j,a,l)),l===b&&e[1]?this.data(e[0]):l):(e[1]=c,void this.each(function(){var b=$(this);b.triggerHandler("setData"+f,e),$.data(this,a,c),b.triggerHandler("changeData"+f,e)}))},null,c,arguments.length>1,null,!1))},removeData:function(a){return this.each(function(){$.removeData(this,a)})}}),$.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=$._data(a,b),c&&(!d||$.isArray(c)?d=$._data(a,b,$.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=$.queue(a,b),d=c.shift(),e=$._queueHooks(a,b),f=function(){$.dequeue(a,b)};"inprogress"===d&&(d=c.shift()),d&&("fx"===b&&c.unshift("inprogress"),delete e.stop,d.call(a,f,e)),!c.length&&e&&e.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return $._data(a,c)||$._data(a,c,{empty:$.Callbacks("once memory").add(function(){$.removeData(a,b+"queue",!0),$.removeData(a,c,!0)})})}}),$.fn.extend({queue:function(a,c){var d=2;return"string"!=typeof a&&(c=a,a="fx",d--),arguments.length1)},removeAttr:function(a){return this.each(function(){$.removeAttr(this,a)})},prop:function(a,b){return $.access(this,$.prop,a,b,arguments.length>1)},removeProp:function(a){return a=$.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if($.isFunction(a))return this.each(function(b){$(this).addClass(a.call(this,b,this.className))});if(a&&"string"==typeof a)for(b=a.split(bb),c=0,d=this.length;d>c;c++)if(e=this[c],1===e.nodeType)if(e.className||1!==b.length){for(f=" "+e.className+" ",g=0,h=b.length;h>g;g++)~f.indexOf(" "+b[g]+" ")||(f+=b[g]+" ");e.className=$.trim(f)}else e.className=a;return this},removeClass:function(a){var c,d,e,f,g,h,i;if($.isFunction(a))return this.each(function(b){$(this).removeClass(a.call(this,b,this.className))});if(a&&"string"==typeof a||a===b)for(c=(a||"").split(bb),h=0,i=this.length;i>h;h++)if(e=this[h],1===e.nodeType&&e.className){for(d=(" "+e.className+" ").replace(ub," "),f=0,g=c.length;g>f;f++)for(;d.indexOf(" "+c[f]+" ")>-1;)d=d.replace(" "+c[f]+" "," ");e.className=a?$.trim(d):""}return this},toggleClass:function(a,b){var c=typeof a,d="boolean"==typeof b;return this.each($.isFunction(a)?function(c){$(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c)for(var e,f=0,g=$(this),h=b,i=a.split(bb);e=i[f++];)h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e);else("undefined"===c||"boolean"===c)&&(this.className&&$._data(this,"__className__",this.className),this.className=this.className||a===!1?"":$._data(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(ub," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,f=this[0];{if(arguments.length)return e=$.isFunction(a),this.each(function(d){var f,g=$(this);1===this.nodeType&&(f=e?a.call(this,d,g.val()):a,null==f?f="":"number"==typeof f?f+="":$.isArray(f)&&(f=$.map(f,function(a){return null==a?"":a+""})),c=$.valHooks[this.type]||$.valHooks[this.nodeName.toLowerCase()],c&&"set"in c&&c.set(this,f,"value")!==b||(this.value=f))});if(f)return c=$.valHooks[f.type]||$.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,"string"==typeof d?d.replace(vb,""):null==d?"":d)}}}),$.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i="select-one"===a.type;if(0>f)return null;for(c=i?f:0,d=i?f+1:h.length;d>c;c++)if(e=h[c],!(!e.selected||($.support.optDisabled?e.disabled:null!==e.getAttribute("disabled"))||e.parentNode.disabled&&$.nodeName(e.parentNode,"optgroup"))){if(b=$(e).val(),i)return b;g.push(b)}return i&&!g.length&&h.length?$(h[f]).val():g},set:function(a,b){var c=$.makeArray(b);return $(a).find("option").each(function(){this.selected=$.inArray($(this).val(),c)>=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(a&&3!==i&&8!==i&&2!==i)return e&&$.isFunction($.fn[c])?$(a)[c](d):"undefined"==typeof a.getAttribute?$.prop(a,c,d):(h=1!==i||!$.isXMLDoc(a),h&&(c=c.toLowerCase(),g=$.attrHooks[c]||(zb.test(c)?sb:rb)),d!==b?null===d?void $.removeAttr(a,c):g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,""+d),d):g&&"get"in g&&h&&null!==(f=g.get(a,c))?f:(f=a.getAttribute(c),null===f?b:f))},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&1===a.nodeType)for(d=b.split(bb);g=0:void 0}})});var Bb=/^(?:textarea|input|select)$/i,Cb=/^([^\.]*|)(?:\.(.+)|)$/,Db=/(?:^|\s)hover(\.\S+|)\b/,Eb=/^key/,Fb=/^(?:mouse|contextmenu)|click/,Gb=/^(?:focusinfocus|focusoutblur)$/,Hb=function(a){return $.event.special.hover?a:a.replace(Db,"mouseenter$1 mouseleave$1")};$.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,p,q;if(3!==a.nodeType&&8!==a.nodeType&&c&&d&&(g=$._data(a))){for(d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=$.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return"undefined"==typeof $||a&&$.event.triggered===a.type?b:$.event.dispatch.apply(h.elem,arguments)},h.elem=a),c=$.trim(Hb(c)).split(" "),j=0;j=0&&(q=q.slice(0,-1),h=!0),q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),(!e||$.event.customEvent[q])&&!$.event.global[q])return;if(c="object"==typeof c?c[$.expando]?c:new $.Event(q,c):new $.Event(q),c.type=q,c.isTrigger=!0,c.exclusive=h,c.namespace=r.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,l=q.indexOf(":")<0?"on"+q:"",!e){g=$.cache;for(i in g)g[i].events&&g[i].events[q]&&$.event.trigger(c,d,g[i].handle.elem,!0);return}if(c.result=b,c.target||(c.target=e),d=null!=d?$.makeArray(d):[],d.unshift(c),m=$.event.special[q]||{},m.trigger&&m.trigger.apply(e,d)===!1)return;if(o=[[e,m.bindType||q]],!f&&!m.noBubble&&!$.isWindow(e)){for(p=m.delegateType||q,j=Gb.test(p+q)?e:e.parentNode,k=e;j;j=j.parentNode)o.push([j,p]),k=j;k===(e.ownerDocument||P)&&o.push([k.defaultView||k.parentWindow||a,p])}for(i=0;id;d++)l=n[d],m=l.selector,i[m]===b&&(i[m]=g.is(m)),i[m]&&k.push(l);k.length&&s.push({elem:f,matches:k})}for(n.length>o&&s.push({elem:this,matches:n.slice(o)}),d=0;d0?this.on(b,null,a,c):this.trigger(b)},Eb.test(b)&&($.event.fixHooks[b]=$.event.keyHooks),Fb.test(b)&&($.event.fixHooks[b]=$.event.mouseHooks) -}),function(a,b){function c(a,b,c,d){for(var e=0,f=b.length;f>e;e++)fb(a,b[e],c,d)}function d(a,b,d,e,f,g){var h,i=gb.setFilters[b.toLowerCase()];return i||fb.error(b),(a||!(h=f))&&c(a||"*",e,h=[],f),h.length>0?i(h,d,g):[]}function e(a,e,f,g,h){for(var i,j,k,l,m,n,o,p,q=0,r=h.length,s=S.POS,t=new RegExp("^"+s.source+"(?!"+y+")","i"),u=function(){for(var a=1,c=arguments.length-2;c>a;a++)arguments[a]===b&&(i[a]=b)};r>q;q++){for(s.exec(""),a=h[q],l=[],k=0,m=g;i=s.exec(a);)p=s.lastIndex=i.index+i[0].length,p>k&&(o=a.slice(k,i.index),k=p,n=[e],I.test(o)&&(m&&(n=m),m=g),(j=O.test(o))&&(o=o.slice(0,-5).replace(I,"$&*")),i.length>1&&i[0].replace(t,u),m=d(o,i[1],i[2],n,m,j));m?(l=l.concat(m),(o=a.slice(k))&&")"!==o?I.test(o)?c(o,l,f,g):fb(o,e,f,g?g.concat(m):m):w.apply(f,l)):fb(a,e,f,g)}return 1===r?f:fb.uniqueSort(f)}function f(a,b,c){for(var d,e,f,g=[],h=0,i=K.exec(a),j=!i.pop()&&!i.pop(),k=j&&a.match(J)||[""],l=gb.preFilter,m=gb.filter,n=!c&&b!==p;null!=(e=k[h])&&j;h++)for(g.push(d=[]),n&&(e=" "+e);e;){j=!1,(i=I.exec(e))&&(e=e.slice(i[0].length),j=d.push({part:i.pop().replace(H," "),captures:i}));for(f in m)(i=S[f].exec(e))&&(!l[f]||(i=l[f](i,b,c)))&&(e=e.slice(i.shift().length),j=d.push({part:f,captures:i}));if(!j)break}return j||fb.error(a),g}function g(a,b,c){var d=b.dir,e=u++;return a||(a=function(a){return a===c}),b.first?function(b,c){for(;b=b[d];)if(1===b.nodeType)return a(b,c)&&b}:function(b,c){for(var f,g=e+"."+l,h=g+"."+k;b=b[d];)if(1===b.nodeType){if((f=b[x])===h)return b.sizset;if("string"==typeof f&&0===f.indexOf(g)){if(b.sizset)return b}else{if(b[x]=h,a(b,c))return b.sizset=!0,b;b.sizset=!1}}}}function h(a,b){return a?function(c,d){var e=b(c,d);return e&&a(e===!0?c:e,d)}:b}function i(a,b,c){for(var d,e,f=0;d=a[f];f++)gb.relative[d.part]?e=g(e,gb.relative[d.part],b):(d.captures.push(b,c),e=h(e,gb.filter[d.part].apply(null,d.captures)));return e}function j(a){return function(b,c){for(var d,e=0;d=a[e];e++)if(d(b,c))return!0;return!1}}var k,l,m,n,o,p=a.document,q=p.documentElement,r="undefined",s=!1,t=!0,u=0,v=[].slice,w=[].push,x=("sizcache"+Math.random()).replace(".",""),y="[\\x20\\t\\r\\n\\f]",z="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",A=z.replace("w","w#"),B="([*^$|!~]?=)",C="\\["+y+"*("+z+")"+y+"*(?:"+B+y+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+A+")|)|)"+y+"*\\]",D=":("+z+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)",E=":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)",F=y+"*([\\x20\\t\\r\\n\\f>+~])"+y+"*",G="(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|"+C+"|"+D.replace(2,7)+"|[^\\\\(),])+",H=new RegExp("^"+y+"+|((?:^|[^\\\\])(?:\\\\.)*)"+y+"+$","g"),I=new RegExp("^"+F),J=new RegExp(G+"?(?="+y+"*,|$)","g"),K=new RegExp("^(?:(?!,)(?:(?:^|,)"+y+"*"+G+")*?|"+y+"*(.*?))(\\)|$)"),L=new RegExp(G.slice(19,-6)+"\\x20\\t\\r\\n\\f>+~])+|"+F,"g"),M=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,N=/[\x20\t\r\n\f]*[+~]/,O=/:not\($/,P=/h\d/i,Q=/input|select|textarea|button/i,R=/\\(?!\\)/g,S={ID:new RegExp("^#("+z+")"),CLASS:new RegExp("^\\.("+z+")"),NAME:new RegExp("^\\[name=['\"]?("+z+")['\"]?\\]"),TAG:new RegExp("^("+z.replace("[-","[-\\*")+")"),ATTR:new RegExp("^"+C),PSEUDO:new RegExp("^"+D),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+y+"*(even|odd|(([+-]|)(\\d*)n|)"+y+"*(?:([+-]|)"+y+"*(\\d+)|))"+y+"*\\)|)","i"),POS:new RegExp(E,"ig"),needsContext:new RegExp("^"+y+"*[>+~]|"+E,"i")},T={},U=[],V={},W=[],X=function(a){return a.sizzleFilter=!0,a},Y=function(a){return function(b){return"input"===b.nodeName.toLowerCase()&&b.type===a}},Z=function(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}},_=function(a){var b=!1,c=p.createElement("div");try{b=a(c)}catch(d){}return c=null,b},ab=_(function(a){a.innerHTML="";var b=typeof a.lastChild.getAttribute("multiple");return"boolean"!==b&&"string"!==b}),bb=_(function(a){a.id=x+0,a.innerHTML="
",q.insertBefore(a,q.firstChild);var b=p.getElementsByName&&p.getElementsByName(x).length===2+p.getElementsByName(x+0).length;return o=!p.getElementById(x),q.removeChild(a),b}),cb=_(function(a){return a.appendChild(p.createComment("")),0===a.getElementsByTagName("*").length}),db=_(function(a){return a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!==r&&"#"===a.firstChild.getAttribute("href")}),eb=_(function(a){return a.innerHTML="",a.getElementsByClassName&&0!==a.getElementsByClassName("e").length?(a.lastChild.className="e",1!==a.getElementsByClassName("e").length):!1}),fb=function(a,b,c,d){c=c||[],b=b||p;var e,f,g,h,i=b.nodeType;if(1!==i&&9!==i)return[];if(!a||"string"!=typeof a)return c;if(g=ib(b),!g&&!d&&(e=M.exec(a)))if(h=e[1]){if(9===i){if(f=b.getElementById(h),!f||!f.parentNode)return c;if(f.id===h)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(h))&&jb(b,f)&&f.id===h)return c.push(f),c}else{if(e[2])return w.apply(c,v.call(b.getElementsByTagName(a),0)),c;if((h=e[3])&&eb&&b.getElementsByClassName)return w.apply(c,v.call(b.getElementsByClassName(h),0)),c}return mb(a,b,c,d,g)},gb=fb.selectors={cacheLength:50,match:S,order:["ID","TAG"],attrHandle:{},createPseudo:X,find:{ID:o?function(a,b,c){if(typeof b.getElementById!==r&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==r&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==r&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:cb?function(a,b){return typeof b.getElementsByTagName!==r?b.getElementsByTagName(a):void 0}:function(a,b){var c=b.getElementsByTagName(a);if("*"===a){for(var d,e=[],f=0;d=c[f];f++)1===d.nodeType&&e.push(d);return e}return c}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(R,""),a[3]=(a[4]||a[5]||"").replace(R,""),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1]?(a[2]||fb.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*("even"===a[2]||"odd"===a[2])),a[4]=+(a[6]+a[7]||"odd"===a[2])):a[2]&&fb.error(a[0]),a},PSEUDO:function(a){var b,c=a[4];return S.CHILD.test(a[0])?null:(c&&(b=K.exec(c))&&b.pop()&&(a[0]=a[0].slice(0,b[0].length-c.length-1),c=b[0].slice(0,-1)),a.splice(2,3,c||a[3]),a)}},filter:{ID:o?function(a){return a=a.replace(R,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(R,""),function(b){var c=typeof b.getAttributeNode!==r&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return"*"===a?function(){return!0}:(a=a.replace(R,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=T[a];return b||(b=T[a]=new RegExp("(^|"+y+")"+a+"("+y+"|$)"),U.push(a),U.length>gb.cacheLength&&delete T[U.shift()]),function(a){return b.test(a.className||typeof a.getAttribute!==r&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return b?function(d){var e=fb.attr(d,a),f=e+"";if(null==e)return"!="===b;switch(b){case"=":return f===c;case"!=":return f!==c;case"^=":return c&&0===f.indexOf(c);case"*=":return c&&f.indexOf(c)>-1;case"$=":return c&&f.substr(f.length-c.length)===c;case"~=":return(" "+f+" ").indexOf(c)>-1;case"|=":return f===c||f.substr(0,c.length+1)===c+"-"}}:function(b){return null!=fb.attr(b,a)}},CHILD:function(a,b,c,d){if("nth"===a){var e=u++;return function(a){var b,f,g=0,h=a;if(1===c&&0===d)return!0;if(b=a.parentNode,b&&(b[x]!==e||!a.sizset)){for(h=b.firstChild;h&&(1!==h.nodeType||(h.sizset=++g,h!==a));h=h.nextSibling);b[x]=e}return f=a.sizset-d,0===c?0===f:f%c===0&&f/c>=0}}return function(b){var c=b;switch(a){case"only":case"first":for(;c=c.previousSibling;)if(1===c.nodeType)return!1;if("first"===a)return!0;c=b;case"last":for(;c=c.nextSibling;)if(1===c.nodeType)return!1;return!0}}},PSEUDO:function(a,b,c,d){var e=gb.pseudos[a]||gb.pseudos[a.toLowerCase()];return e||fb.error("unsupported pseudo: "+a),e.sizzleFilter?e(b,c,d):e}},pseudos:{not:X(function(a,b,c){var d=lb(a.replace(H,"$1"),b,c);return function(a){return!d(a)}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!gb.pseudos.empty(a)},empty:function(a){var b;for(a=a.firstChild;a;){if(a.nodeName>"@"||3===(b=a.nodeType)||4===b)return!1;a=a.nextSibling}return!0},contains:X(function(a){return function(b){return(b.textContent||b.innerText||kb(b)).indexOf(a)>-1}}),has:X(function(a){return function(b){return fb(a,b).length>0}}),header:function(a){return P.test(a.nodeName)},text:function(a){var b,c;return"input"===a.nodeName.toLowerCase()&&"text"===(b=a.type)&&(null==(c=a.getAttribute("type"))||c.toLowerCase()===b)},radio:Y("radio"),checkbox:Y("checkbox"),file:Y("file"),password:Y("password"),image:Y("image"),submit:Z("submit"),reset:Z("reset"),button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},input:function(a){return Q.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return!(a!==b.activeElement||b.hasFocus&&!b.hasFocus()||!a.type&&!a.href)},active:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b,c){return c?a.slice(1):[a[0]]},last:function(a,b,c){var d=a.pop();return c?a:[d]},even:function(a,b,c){for(var d=[],e=c?1:0,f=a.length;f>e;e+=2)d.push(a[e]);return d},odd:function(a,b,c){for(var d=[],e=c?0:1,f=a.length;f>e;e+=2)d.push(a[e]);return d},lt:function(a,b,c){return c?a.slice(+b):a.slice(0,+b)},gt:function(a,b,c){return c?a.slice(0,+b+1):a.slice(+b+1)},eq:function(a,b,c){var d=a.splice(+b,1);return c?a:d}}};gb.setFilters.nth=gb.setFilters.eq,gb.filters=gb.pseudos,db||(gb.attrHandle={href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}}),bb&&(gb.order.push("NAME"),gb.find.NAME=function(a,b){return typeof b.getElementsByName!==r?b.getElementsByName(a):void 0}),eb&&(gb.order.splice(1,0,"CLASS"),gb.find.CLASS=function(a,b,c){return typeof b.getElementsByClassName===r||c?void 0:b.getElementsByClassName(a)});try{v.call(q.childNodes,0)[0].nodeType}catch(hb){v=function(a){for(var b,c=[];b=this[a];a++)c.push(b);return c}}var ib=fb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},jb=fb.contains=q.compareDocumentPosition?function(a,b){return!!(16&a.compareDocumentPosition(b))}:q.contains?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b.parentNode;return a===d||!!(d&&1===d.nodeType&&c.contains&&c.contains(d))}:function(a,b){for(;b=b.parentNode;)if(b===a)return!0;return!1},kb=fb.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(1===e||9===e||11===e){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=kb(a)}else if(3===e||4===e)return a.nodeValue}else for(;b=a[d];d++)c+=kb(b);return c};fb.attr=function(a,b){var c,d=ib(a);return d||(b=b.toLowerCase()),gb.attrHandle[b]?gb.attrHandle[b](a):ab||d?a.getAttribute(b):(c=a.getAttributeNode(b),c?"boolean"==typeof a[b]?a[b]?b:null:c.specified?c.value:null:null)},fb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},[0,0].sort(function(){return t=0}),q.compareDocumentPosition?m=function(a,b){return a===b?(s=!0,0):(a.compareDocumentPosition&&b.compareDocumentPosition?4&a.compareDocumentPosition(b):a.compareDocumentPosition)?-1:1}:(m=function(a,b){if(a===b)return s=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,h=b.parentNode,i=g;if(g===h)return n(a,b);if(!g)return-1;if(!h)return 1;for(;i;)e.unshift(i),i=i.parentNode;for(i=h;i;)f.unshift(i),i=i.parentNode;c=e.length,d=f.length;for(var j=0;c>j&&d>j;j++)if(e[j]!==f[j])return n(e[j],f[j]);return j===c?n(a,f[j],-1):n(e[j],b,1)},n=function(a,b,c){if(a===b)return c;for(var d=a.nextSibling;d;){if(d===b)return-1;d=d.nextSibling}return 1}),fb.uniqueSort=function(a){var b,c=1;if(m&&(s=t,a.sort(m),s))for(;b=a[c];c++)b===a[c-1]&&a.splice(c--,1);return a};var lb=fb.compile=function(a,b,c){var d,e,g,h=V[a];if(h&&h.context===b)return h;for(e=f(a,b,c),g=0;d=e[g];g++)e[g]=i(d,b,c);return h=V[a]=j(e),h.context=b,h.runs=h.dirruns=0,W.push(a),W.length>gb.cacheLength&&delete V[W.shift()],h};fb.matches=function(a,b){return fb(a,null,null,b)},fb.matchesSelector=function(a,b){return fb(b,null,null,[a]).length>0};var mb=function(a,b,c,d,f){a=a.replace(H,"$1");var g,h,i,j,m,n,o,p,q,r=a.match(J),s=a.match(L),t=b.nodeType;if(S.POS.test(a))return e(a,b,c,d,r);if(d)g=v.call(d,0);else if(r&&1===r.length){if(s.length>1&&9===t&&!f&&(r=S.ID.exec(s[0]))){if(b=gb.find.ID(r[1],b,f)[0],!b)return c;a=a.slice(s.shift().length)}for(p=(r=N.exec(s[0]))&&!r.index&&b.parentNode||b,q=s.pop(),n=q.split(":not")[0],i=0,j=gb.order.length;j>i;i++)if(o=gb.order[i],r=S[o].exec(n)){if(g=gb.find[o]((r[1]||"").replace(R,""),p,f),null==g)continue;n===q&&(a=a.slice(0,a.length-q.length)+n.replace(S[o],""),a||w.apply(c,v.call(g,0)));break}}if(a)for(h=lb(a,b,f),l=h.dirruns++,null==g&&(g=gb.find.TAG("*",N.test(a)&&b.parentNode||b)),i=0;m=g[i];i++)k=h.runs++,h(m,b)&&c.push(m);return c};p.querySelectorAll&&function(){var a,b=mb,c=/'|\\/g,d=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,e=[],f=[":active"],g=q.matchesSelector||q.mozMatchesSelector||q.webkitMatchesSelector||q.oMatchesSelector||q.msMatchesSelector;_(function(a){a.innerHTML="",a.querySelectorAll("[selected]").length||e.push("\\["+y+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),_(function(a){a.innerHTML="

",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+y+"*(?:\"\"|'')"),a.innerHTML="",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=e.length&&new RegExp(e.join("|")),mb=function(a,d,f,g,h){if(!(g||h||e&&e.test(a)))if(9===d.nodeType)try{return w.apply(f,v.call(d.querySelectorAll(a),0)),f}catch(i){}else if(1===d.nodeType&&"object"!==d.nodeName.toLowerCase()){var j=d.getAttribute("id"),k=j||x,l=N.test(a)&&d.parentNode||d;j?k=k.replace(c,"\\$&"):d.setAttribute("id",k);try{return w.apply(f,v.call(l.querySelectorAll(a.replace(J,"[id='"+k+"'] $&")),0)),f}catch(i){}finally{j||d.removeAttribute("id")}}return b(a,d,f,g,h)},g&&(_(function(b){a=g.call(b,"div");try{g.call(b,"[test!='']:sizzle"),f.push(gb.match.PSEUDO)}catch(c){}}),f=new RegExp(f.join("|")),fb.matchesSelector=function(b,c){if(c=c.replace(d,"='$1']"),!(ib(b)||f.test(c)||e&&e.test(c)))try{var h=g.call(b,c);if(h||a||b.document&&11!==b.document.nodeType)return h}catch(i){}return fb(c,null,null,[b]).length>0})}(),fb.attr=$.attr,$.find=fb,$.expr=fb.selectors,$.expr[":"]=$.expr.pseudos,$.unique=fb.uniqueSort,$.text=fb.getText,$.isXMLDoc=fb.isXML,$.contains=fb.contains}(a);var Ib=/Until$/,Jb=/^(?:parents|prev(?:Until|All))/,Kb=/^.[^:#\[\.,]*$/,Lb=$.expr.match.needsContext,Mb={children:!0,contents:!0,next:!0,prev:!0};$.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if("string"!=typeof a)return $(a).filter(function(){for(b=0,c=h.length;c>b;b++)if($.contains(h[b],this))return!0});for(g=this.pushStack("","find",a),b=0,c=this.length;c>b;b++)if(d=g.length,$.find(a,this[b],g),b>0)for(e=d;ef;f++)if(g[f]===g[e]){g.splice(e--,1);break}return g},has:function(a){var b,c=$(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if($.contains(this,c[b]))return!0})},not:function(a){return this.pushStack(j(this,a,!1),"not",a)},filter:function(a){return this.pushStack(j(this,a,!0),"filter",a)},is:function(a){return!!a&&("string"==typeof a?Lb.test(a)?$(a,this.context).index(this[0])>=0:$.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=Lb.test(a)||"string"!=typeof a?$(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c.ownerDocument&&c!==b&&11!==c.nodeType;){if(g?g.index(c)>-1:$.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}return f=f.length>1?$.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?"string"==typeof a?$.inArray(this[0],$(a)):$.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c="string"==typeof a?$(a,b):$.makeArray(a&&a.nodeType?[a]:a),d=$.merge(this.get(),c);return this.pushStack(h(c[0])||h(d[0])?d:$.unique(d))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}}),$.fn.andSelf=$.fn.addBack,$.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return $.dir(a,"parentNode")},parentsUntil:function(a,b,c){return $.dir(a,"parentNode",c)},next:function(a){return i(a,"nextSibling")},prev:function(a){return i(a,"previousSibling")},nextAll:function(a){return $.dir(a,"nextSibling")},prevAll:function(a){return $.dir(a,"previousSibling")},nextUntil:function(a,b,c){return $.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return $.dir(a,"previousSibling",c)},siblings:function(a){return $.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return $.sibling(a.firstChild)},contents:function(a){return $.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:$.merge([],a.childNodes)}},function(a,b){$.fn[a]=function(c,d){var e=$.map(this,b,c);return Ib.test(a)||(d=c),d&&"string"==typeof d&&(e=$.filter(d,e)),e=this.length>1&&!Mb[a]?$.unique(e):e,this.length>1&&Jb.test(a)&&(e=e.reverse()),this.pushStack(e,a,V.call(arguments).join(","))}}),$.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),1===b.length?$.find.matchesSelector(b[0],a)?[b[0]]:[]:$.find.matches(a,b)},dir:function(a,c,d){for(var e=[],f=a[c];f&&9!==f.nodeType&&(d===b||1!==f.nodeType||!$(f).is(d));)1===f.nodeType&&e.push(f),f=f[c];return e},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}});var Nb="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",Ob=/ jQuery\d+="(?:null|\d+)"/g,Pb=/^\s+/,Qb=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Rb=/<([\w:]+)/,Sb=/]","i"),Xb=/^(?:checkbox|radio)$/,Yb=/checked\s*(?:[^=]|=\s*.checked.)/i,Zb=/\/(java|ecma)script/i,$b=/^\s*\s*$/g,_b={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},ac=k(P),bc=ac.appendChild(P.createElement("div"));_b.optgroup=_b.option,_b.tbody=_b.tfoot=_b.colgroup=_b.caption=_b.thead,_b.th=_b.td,$.support.htmlSerialize||(_b._default=[1,"X
","
"]),$.fn.extend({text:function(a){return $.access(this,function(a){return a===b?$.text(this):this.empty().append((this[0]&&this[0].ownerDocument||P).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if($.isFunction(a))return this.each(function(b){$(this).wrapAll(a.call(this,b))});if(this[0]){var b=$(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){for(var a=this;a.firstChild&&1===a.firstChild.nodeType;)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return this.each($.isFunction(a)?function(b){$(this).wrapInner(a.call(this,b))}:function(){var b=$(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=$.isFunction(a);return this.each(function(c){$(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){$.nodeName(this,"body")||$(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||11===this.nodeType)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||11===this.nodeType)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!h(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=$.clean(arguments);return this.pushStack($.merge(a,this),"before",this.selector)}},after:function(){if(!h(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=$.clean(arguments);return this.pushStack($.merge(this,a),"after",this.selector)}},remove:function(a,b){for(var c,d=0;null!=(c=this[d]);d++)(!a||$.filter(a,[c]).length)&&(!b&&1===c.nodeType&&($.cleanData(c.getElementsByTagName("*")),$.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)for(1===a.nodeType&&$.cleanData(a.getElementsByTagName("*"));a.firstChild;)a.removeChild(a.firstChild);return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return $.clone(this,a,b)})},html:function(a){return $.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return 1===c.nodeType?c.innerHTML.replace(Ob,""):b;if(!("string"!=typeof a||Ub.test(a)||!$.support.htmlSerialize&&Wb.test(a)||!$.support.leadingWhitespace&&Pb.test(a)||_b[(Rb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(Qb,"<$1>");try{for(;e>d;d++)c=this[d]||{},1===c.nodeType&&($.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(f){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return h(this[0])?this.length?this.pushStack($($.isFunction(a)?a():a),"replaceWith",a):this:$.isFunction(a)?this.each(function(b){var c=$(this),d=c.html();c.replaceWith(a.call(this,b,d))}):("string"!=typeof a&&(a=$(a).detach()),this.each(function(){var b=this.nextSibling,c=this.parentNode;$(this).remove(),b?$(b).before(a):$(c).append(a)}))},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){a=[].concat.apply([],a);var e,f,g,h,i=0,j=a[0],k=[],m=this.length;if(!$.support.checkClone&&m>1&&"string"==typeof j&&Yb.test(j))return this.each(function(){$(this).domManip(a,c,d)});if($.isFunction(j))return this.each(function(e){var f=$(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){if(e=$.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,1===g.childNodes.length&&(g=f),f)for(c=c&&$.nodeName(f,"tr"),h=e.cacheable||m-1;m>i;i++)d.call(c&&$.nodeName(this[i],"table")?l(this[i],"tbody"):this[i],i===h?g:$.clone(g,!0,!0));g=f=null,k.length&&$.each(k,function(a,b){b.src?$.ajax?$.ajax({url:b.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):$.error("no ajax"):$.globalEval((b.text||b.textContent||b.innerHTML||"").replace($b,"")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),$.buildFragment=function(a,c,d){var e,f,g,h=a[0];return c=c||P,c=(c[0]||c).ownerDocument||c[0]||c,"undefined"==typeof c.createDocumentFragment&&(c=P),1===a.length&&"string"==typeof h&&h.length<512&&c===P&&"<"===h.charAt(0)&&!Vb.test(h)&&($.support.checkClone||!Yb.test(h))&&($.support.html5Clone||!Wb.test(h))&&(f=!0,e=$.fragments[h],g=e!==b),e||(e=c.createDocumentFragment(),$.clean(a,c,e,d),f&&($.fragments[h]=g&&e)),{fragment:e,cacheable:f}},$.fragments={},$.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){$.fn[a]=function(c){var d,e=0,f=[],g=$(c),h=g.length,i=1===this.length&&this[0].parentNode;if((null==i||i&&11===i.nodeType&&1===i.childNodes.length)&&1===h)return g[b](this[0]),this;for(;h>e;e++)d=(e>0?this.clone(!0):this).get(),$(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),$.extend({clone:function(a,b,c){var d,e,f,g;if($.support.html5Clone||$.isXMLDoc(a)||!Wb.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bc.innerHTML=a.outerHTML,bc.removeChild(g=bc.firstChild)),!($.support.noCloneEvent&&$.support.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||$.isXMLDoc(a)))for(n(a,g),d=o(a),e=o(g),f=0;d[f];++f)e[f]&&n(d[f],e[f]);if(b&&(m(a,g),c))for(d=o(a),e=o(g),f=0;d[f];++f)m(d[f],e[f]);return d=e=null,g},clean:function(a,b,c,d){var e,f,g,h,i,j,l,m,n,o,q,r=0,s=[];for(b&&"undefined"!=typeof b.createDocumentFragment||(b=P),f=b===P&∾null!=(g=a[r]);r++)if("number"==typeof g&&(g+=""),g){if("string"==typeof g)if(Tb.test(g)){for(f=f||k(b),l=l||f.appendChild(b.createElement("div")),g=g.replace(Qb,"<$1>"),h=(Rb.exec(g)||["",""])[1].toLowerCase(),i=_b[h]||_b._default,j=i[0],l.innerHTML=i[1]+g+i[2];j--;)l=l.lastChild;if(!$.support.tbody)for(m=Sb.test(g),n="table"!==h||m?""!==i[1]||m?[]:l.childNodes:l.firstChild&&l.firstChild.childNodes,e=n.length-1;e>=0;--e)$.nodeName(n[e],"tbody")&&!n[e].childNodes.length&&n[e].parentNode.removeChild(n[e]);!$.support.leadingWhitespace&&Pb.test(g)&&l.insertBefore(b.createTextNode(Pb.exec(g)[0]),l.firstChild),g=l.childNodes,l=f.lastChild}else g=b.createTextNode(g);g.nodeType?s.push(g):s=$.merge(s,g)}if(l&&(f.removeChild(l),g=l=f=null),!$.support.appendChecked)for(r=0;null!=(g=s[r]);r++)$.nodeName(g,"input")?p(g):"undefined"!=typeof g.getElementsByTagName&&$.grep(g.getElementsByTagName("input"),p);if(c)for(o=function(a){return!a.type||Zb.test(a.type)?d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a):void 0},r=0;null!=(g=s[r]);r++)$.nodeName(g,"script")&&o(g)||(c.appendChild(g),"undefined"!=typeof g.getElementsByTagName&&(q=$.grep($.merge([],g.getElementsByTagName("script")),o),s.splice.apply(s,[r+1,0].concat(q)),r+=q.length));return s},cleanData:function(a,b){for(var c,d,e,f,g=0,h=$.expando,i=$.cache,j=$.support.deleteExpando,k=$.event.special;null!=(e=a[g]);g++)if((b||$.acceptData(e))&&(d=e[h],c=d&&i[d])){if(c.events)for(f in c.events)k[f]?$.event.remove(e,f):$.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,$.deletedIds.push(d))}}}),function(){var a,b;$.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=$.uaMatch(R.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.webkit&&(b.safari=!0),$.browser=b,$.sub=function(){function a(b,c){return new a.fn.init(b,c)}$.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof $&&!(d instanceof a)&&(d=a(d)),$.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(P);return a}}();var cc,dc,ec,fc=/alpha\([^)]*\)/i,gc=/opacity=([^)]*)/,hc=/^(top|right|bottom|left)$/,ic=/^margin/,jc=new RegExp("^("+_+")(.*)$","i"),kc=new RegExp("^("+_+")(?!px)[a-z%]+$","i"),lc=new RegExp("^([-+])=("+_+")","i"),mc={},nc={position:"absolute",visibility:"hidden",display:"block"},oc={letterSpacing:0,fontWeight:400,lineHeight:1},pc=["Top","Right","Bottom","Left"],qc=["Webkit","O","Moz","ms"],rc=$.fn.toggle;$.fn.extend({css:function(a,c){return $.access(this,function(a,c,d){return d!==b?$.style(a,c,d):$.css(a,c)},a,c,arguments.length>1)},show:function(){return s(this,!0)},hide:function(){return s(this)},toggle:function(a,b){var c="boolean"==typeof a;return $.isFunction(a)&&$.isFunction(b)?rc.apply(this,arguments):this.each(function(){(c?a:r(this))?$(this).show():$(this).hide()})}}),$.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=cc(a,"opacity");return""===c?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":$.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var f,g,h,i=$.camelCase(c),j=a.style;if(c=$.cssProps[i]||($.cssProps[i]=q(j,i)),h=$.cssHooks[c]||$.cssHooks[i],d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];if(g=typeof d,"string"===g&&(f=lc.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat($.css(a,c)),g="number"),!(null==d||"number"===g&&isNaN(d)||("number"===g&&!$.cssNumber[i]&&(d+="px"),h&&"set"in h&&(d=h.set(a,d,e))===b)))try{j[c]=d}catch(k){}}},css:function(a,c,d,e){var f,g,h,i=$.camelCase(c);return c=$.cssProps[i]||($.cssProps[i]=q(a.style,i)),h=$.cssHooks[c]||$.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=cc(a,c)),"normal"===f&&c in oc&&(f=oc[c]),d||e!==b?(g=parseFloat(f),d||$.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?cc=function(a,b){var c,d,e,f,g=getComputedStyle(a,null),h=a.style;return g&&(c=g[b],""===c&&!$.contains(a.ownerDocument.documentElement,a)&&(c=$.style(a,b)),kc.test(c)&&ic.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=c,c=g.width,h.width=d,h.minWidth=e,h.maxWidth=f)),c}:P.documentElement.currentStyle&&(cc=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return null==e&&f&&f[b]&&(e=f[b]),kc.test(e)&&!hc.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left="fontSize"===b?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),""===e?"auto":e}),$.each(["height","width"],function(a,b){$.cssHooks[b]={get:function(a,c,d){return c?0!==a.offsetWidth||"none"!==cc(a,"display")?v(a,b,d):$.swap(a,nc,function(){return v(a,b,d)}):void 0},set:function(a,c,d){return t(a,c,d?u(a,b,d,$.support.boxSizing&&"border-box"===$.css(a,"boxSizing")):0)}}}),$.support.opacity||($.cssHooks.opacity={get:function(a,b){return gc.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=$.isNumeric(b)?"alpha(opacity="+100*b+")":"",f=d&&d.filter||c.filter||"";c.zoom=1,b>=1&&""===$.trim(f.replace(fc,""))&&c.removeAttribute&&(c.removeAttribute("filter"),d&&!d.filter)||(c.filter=fc.test(f)?f.replace(fc,e):f+" "+e)}}),$(function(){$.support.reliableMarginRight||($.cssHooks.marginRight={get:function(a,b){return $.swap(a,{display:"inline-block"},function(){return b?cc(a,"marginRight"):void 0})}}),!$.support.pixelPosition&&$.fn.position&&$.each(["top","left"],function(a,b){$.cssHooks[b]={get:function(a,c){if(c){var d=cc(a,b);return kc.test(d)?$(a).position()[b]+"px":d}}}})}),$.expr&&$.expr.filters&&($.expr.filters.hidden=function(a){return 0===a.offsetWidth&&0===a.offsetHeight||!$.support.reliableHiddenOffsets&&"none"===(a.style&&a.style.display||cc(a,"display"))},$.expr.filters.visible=function(a){return!$.expr.filters.hidden(a)}),$.each({margin:"",padding:"",border:"Width"},function(a,b){$.cssHooks[a+b]={expand:function(c){var d,e="string"==typeof c?c.split(" "):[c],f={};for(d=0;4>d;d++)f[a+pc[d]+b]=e[d]||e[d-2]||e[0];return f}},ic.test(a)||($.cssHooks[a+b].set=t)});var sc=/%20/g,tc=/\[\]$/,uc=/\r?\n/g,vc=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,wc=/^(?:select|textarea)/i;$.fn.extend({serialize:function(){return $.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?$.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||wc.test(this.nodeName)||vc.test(this.type))}).map(function(a,b){var c=$(this).val();return null==c?null:$.isArray(c)?$.map(c,function(a){return{name:b.name,value:a.replace(uc,"\r\n")}}):{name:b.name,value:c.replace(uc,"\r\n")}}).get()}}),$.param=function(a,c){var d,e=[],f=function(a,b){b=$.isFunction(b)?b():null==b?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b) -};if(c===b&&(c=$.ajaxSettings&&$.ajaxSettings.traditional),$.isArray(a)||a.jquery&&!$.isPlainObject(a))$.each(a,function(){f(this.name,this.value)});else for(d in a)x(d,a[d],c,f);return e.join("&").replace(sc,"+")};var xc,yc,zc=/#.*$/,Ac=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Bc=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,Cc=/^(?:GET|HEAD)$/,Dc=/^\/\//,Ec=/\?/,Fc=/)<[^<]*)*<\/script>/gi,Gc=/([?&])_=[^&]*/,Hc=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Ic=$.fn.load,Jc={},Kc={},Lc=["*/"]+["*"];try{xc=Q.href}catch(Mc){xc=P.createElement("a"),xc.href="",xc=xc.href}yc=Hc.exec(xc.toLowerCase())||[],$.fn.load=function(a,c,d){if("string"!=typeof a&&Ic)return Ic.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),$.isFunction(c)?(d=c,c=b):"object"==typeof c&&(f="POST"),$.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?$("
").append(a.replace(Fc,"")).find(e):a)}),this},$.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){$.fn[b]=function(a){return this.on(b,a)}}),$.each(["get","post"],function(a,c){$[c]=function(a,d,e,f){return $.isFunction(d)&&(f=f||e,e=d,d=b),$.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),$.extend({getScript:function(a,c){return $.get(a,b,c,"script")},getJSON:function(a,b,c){return $.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?A(a,$.ajaxSettings):(b=a,a=$.ajaxSettings),A(a,b),a},ajaxSettings:{url:xc,isLocal:Bc.test(yc[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Lc},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":$.parseJSON,"text xml":$.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:y(Jc),ajaxTransport:y(Kc),ajax:function(a,c){function d(a,c,d,g){var j,l,s,t,v,x=c;2!==u&&(u=2,i&&clearTimeout(i),h=b,f=g||"",w.readyState=a>0?4:0,d&&(t=B(m,w,d)),a>=200&&300>a||304===a?(m.ifModified&&(v=w.getResponseHeader("Last-Modified"),v&&($.lastModified[e]=v),v=w.getResponseHeader("Etag"),v&&($.etag[e]=v)),304===a?(x="notmodified",j=!0):(j=C(m,t),x=j.state,l=j.data,s=j.error,j=!s)):(s=x,(!x||a)&&(x="error",0>a&&(a=0))),w.status=a,w.statusText=""+(c||x),j?p.resolveWith(n,[l,x,w]):p.rejectWith(n,[w,x,s]),w.statusCode(r),r=b,k&&o.trigger("ajax"+(j?"Success":"Error"),[w,m,j?l:s]),q.fireWith(n,[w,x]),k&&(o.trigger("ajaxComplete",[w,m]),--$.active||$.event.trigger("ajaxStop")))}"object"==typeof a&&(c=a,a=b),c=c||{};var e,f,g,h,i,j,k,l,m=$.ajaxSetup({},c),n=m.context||m,o=n!==m&&(n.nodeType||n instanceof $)?$(n):$.event,p=$.Deferred(),q=$.Callbacks("once memory"),r=m.statusCode||{},s={},t={},u=0,v="canceled",w={readyState:0,setRequestHeader:function(a,b){if(!u){var c=a.toLowerCase();a=t[c]=t[c]||a,s[a]=b}return this},getAllResponseHeaders:function(){return 2===u?f:null},getResponseHeader:function(a){var c;if(2===u){if(!g)for(g={};c=Ac.exec(f);)g[c[1].toLowerCase()]=c[2];c=g[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return u||(m.mimeType=a),this},abort:function(a){return a=a||v,h&&h.abort(a),d(0,a),this}};if(p.promise(w),w.success=w.done,w.error=w.fail,w.complete=q.add,w.statusCode=function(a){if(a){var b;if(2>u)for(b in a)r[b]=[r[b],a[b]];else b=a[w.status],w.always(b)}return this},m.url=((a||m.url)+"").replace(zc,"").replace(Dc,yc[1]+"//"),m.dataTypes=$.trim(m.dataType||"*").toLowerCase().split(bb),null==m.crossDomain&&(j=Hc.exec(m.url.toLowerCase()),m.crossDomain=!(!j||j[1]==yc[1]&&j[2]==yc[2]&&(j[3]||("http:"===j[1]?80:443))==(yc[3]||("http:"===yc[1]?80:443)))),m.data&&m.processData&&"string"!=typeof m.data&&(m.data=$.param(m.data,m.traditional)),z(Jc,m,c,w),2===u)return w;if(k=m.global,m.type=m.type.toUpperCase(),m.hasContent=!Cc.test(m.type),k&&0===$.active++&&$.event.trigger("ajaxStart"),!m.hasContent&&(m.data&&(m.url+=(Ec.test(m.url)?"&":"?")+m.data,delete m.data),e=m.url,m.cache===!1)){var x=$.now(),y=m.url.replace(Gc,"$1_="+x);m.url=y+(y===m.url?(Ec.test(m.url)?"&":"?")+"_="+x:"")}(m.data&&m.hasContent&&m.contentType!==!1||c.contentType)&&w.setRequestHeader("Content-Type",m.contentType),m.ifModified&&(e=e||m.url,$.lastModified[e]&&w.setRequestHeader("If-Modified-Since",$.lastModified[e]),$.etag[e]&&w.setRequestHeader("If-None-Match",$.etag[e])),w.setRequestHeader("Accept",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+("*"!==m.dataTypes[0]?", "+Lc+"; q=0.01":""):m.accepts["*"]);for(l in m.headers)w.setRequestHeader(l,m.headers[l]);if(!m.beforeSend||m.beforeSend.call(n,w,m)!==!1&&2!==u){v="abort";for(l in{success:1,error:1,complete:1})w[l](m[l]);if(h=z(Kc,m,c,w)){w.readyState=1,k&&o.trigger("ajaxSend",[w,m]),m.async&&m.timeout>0&&(i=setTimeout(function(){w.abort("timeout")},m.timeout));try{u=1,h.send(s,d)}catch(A){if(!(2>u))throw A;d(-1,A)}}else d(-1,"No Transport");return w}return w.abort()},active:0,lastModified:{},etag:{}});var Nc=[],Oc=/\?/,Pc=/(=)\?(?=&|$)|\?\?/,Qc=$.now();$.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Nc.pop()||$.expando+"_"+Qc++;return this[a]=!0,a}}),$.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&Pc.test(j),m=k&&!l&&"string"==typeof i&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&Pc.test(i);return"jsonp"===c.dataTypes[0]||l||m?(f=c.jsonpCallback=$.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(Pc,"$1"+f):m?c.data=i.replace(Pc,"$1"+f):k&&(c.url+=(Oc.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||$.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,Nc.push(f)),h&&$.isFunction(g)&&g(h[0]),h=g=b}),"script"):void 0}),$.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return $.globalEval(a),a}}}),$.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),$.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=P.head||P.getElementsByTagName("head")[0]||P.documentElement;return{send:function(e,f){c=P.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){(e||!c.readyState||/loaded|complete/.test(c.readyState))&&(c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||f(200,"success"))},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var Rc,Sc=a.ActiveXObject?function(){for(var a in Rc)Rc[a](0,1)}:!1,Tc=0;$.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&D()||E()}:D,function(a){$.extend($.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}($.ajaxSettings.xhr()),$.support.ajax&&$.ajaxTransport(function(c){if(!c.crossDomain||$.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();if(c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async),c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||4===i.readyState))if(d=b,g&&(i.onreadystatechange=$.noop,Sc&&delete Rc[g]),e)4!==i.readyState&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}h||!c.isLocal||c.crossDomain?1223===h&&(h=204):h=l.text?200:404}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?4===i.readyState?setTimeout(d,0):(g=++Tc,Sc&&(Rc||(Rc={},$(a).unload(Sc)),Rc[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var Uc,Vc,Wc=/^(?:toggle|show|hide)$/,Xc=new RegExp("^(?:([-+])=|)("+_+")([a-z%]*)$","i"),Yc=/queueHooks$/,Zc=[J],$c={"*":[function(a,b){var c,d,e,f=this.createTween(a,b),g=Xc.exec(b),h=f.cur(),i=+h||0,j=1;if(g){if(c=+g[2],d=g[3]||($.cssNumber[a]?"":"px"),"px"!==d&&i){i=$.css(f.elem,a,!0)||c||1;do e=j=j||".5",i/=j,$.style(f.elem,a,i+d),j=f.cur()/h;while(1!==j&&j!==e)}f.unit=d,f.start=i,f.end=g[1]?i+(g[1]+1)*c:c}return f}]};$.Animation=$.extend(H,{tweener:function(a,b){$.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],$c[c]=$c[c]||[],$c[c].unshift(b)},prefilter:function(a,b){b?Zc.unshift(a):Zc.push(a)}}),$.Tween=K,K.prototype={constructor:K,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||($.cssNumber[c]?"":"px")},cur:function(){var a=K.propHooks[this.prop];return a&&a.get?a.get(this):K.propHooks._default.get(this)},run:function(a){var b,c=K.propHooks[this.prop];return this.pos=b=$.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration),this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):K.propHooks._default.set(this),this}},K.prototype.init.prototype=K.prototype,K.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=$.css(a.elem,a.prop,!1,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){$.fx.step[a.prop]?$.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[$.cssProps[a.prop]]||$.cssHooks[a.prop])?$.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},K.propHooks.scrollTop=K.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},$.each(["toggle","show","hide"],function(a,b){var c=$.fn[b];$.fn[b]=function(d,e,f){return null==d||"boolean"==typeof d||!a&&$.isFunction(d)&&$.isFunction(e)?c.apply(this,arguments):this.animate(L(b,!0),d,e,f)}}),$.fn.extend({fadeTo:function(a,b,c,d){return this.filter(r).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=$.isEmptyObject(a),f=$.speed(b,c,d),g=function(){var b=H(this,$.extend({},a),f);e&&b.stop(!0)};return e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,c,d){var e=function(a){var b=a.stop;delete a.stop,b(d)};return"string"!=typeof a&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,c=null!=a&&a+"queueHooks",f=$.timers,g=$._data(this);if(c)g[c]&&g[c].stop&&e(g[c]);else for(c in g)g[c]&&g[c].stop&&Yc.test(c)&&e(g[c]);for(c=f.length;c--;)f[c].elem===this&&(null==a||f[c].queue===a)&&(f[c].anim.stop(d),b=!1,f.splice(c,1));(b||!d)&&$.dequeue(this,a)})}}),$.each({slideDown:L("show"),slideUp:L("hide"),slideToggle:L("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){$.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),$.speed=function(a,b,c){var d=a&&"object"==typeof a?$.extend({},a):{complete:c||!c&&b||$.isFunction(a)&&a,duration:a,easing:c&&b||b&&!$.isFunction(b)&&b};return d.duration=$.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in $.fx.speeds?$.fx.speeds[d.duration]:$.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){$.isFunction(d.old)&&d.old.call(this),d.queue&&$.dequeue(this,d.queue)},d},$.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},$.timers=[],$.fx=K.prototype.init,$.fx.tick=function(){for(var a,b=$.timers,c=0;c-1,l={},m={};k?(m=g.position(),e=m.top,f=m.left):(e=parseFloat(i)||0,f=parseFloat(j)||0),$.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(l.top=b.top-h.top+e),null!=b.left&&(l.left=b.left-h.left+f),"using"in b?b.using.call(a,l):g.css(l)}},$.fn.extend({position:function(){if(this[0]){var a=this[0],b=this.offsetParent(),c=this.offset(),d=_c.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat($.css(a,"marginTop"))||0,c.left-=parseFloat($.css(a,"marginLeft"))||0,d.top+=parseFloat($.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat($.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||P.body;a&&!_c.test(a.nodeName)&&"static"===$.css(a,"position");)a=a.offsetParent;return a||P.body})}}),$.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);$.fn[a]=function(e){return $.access(this,function(a,e,f){var g=M(a);return f===b?g?c in g?g[c]:g.document.documentElement[e]:a[e]:void(g?g.scrollTo(d?$(g).scrollLeft():f,d?f:$(g).scrollTop()):a[e]=f)},a,e,arguments.length,null)}}),$.each({Height:"height",Width:"width"},function(a,c){$.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){$.fn[e]=function(e,f){var g=arguments.length&&(d||"boolean"!=typeof e),h=d||(e===!0||f===!0?"margin":"border");return $.access(this,function(c,d,e){var f;return $.isWindow(c)?c.document.documentElement["client"+a]:9===c.nodeType?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?$.css(c,d,e,h):$.style(c,d,e,h)},c,g?e:b,g)}})}),a.jQuery=a.$=$,"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return $})}(window),function(){var a=this,b=a._,c={},d=Array.prototype,e=Object.prototype,f=Function.prototype,g=d.push,h=d.slice,i=d.concat,j=e.toString,k=e.hasOwnProperty,l=d.forEach,m=d.map,n=d.reduce,o=d.reduceRight,p=d.filter,q=d.every,r=d.some,s=d.indexOf,t=d.lastIndexOf,u=Array.isArray,v=Object.keys,w=f.bind,x=function(a){return a instanceof x?a:this instanceof x?void(this._wrapped=a):new x(a)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=x),exports._=x):a._=x,x.VERSION="1.5.1";var y=x.each=x.forEach=function(a,b,d){if(null!=a)if(l&&a.forEach===l)a.forEach(b,d);else if(a.length===+a.length){for(var e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===c)return}else for(var g in a)if(x.has(a,g)&&b.call(d,a[g],g,a)===c)return};x.map=x.collect=function(a,b,c){var d=[];return null==a?d:m&&a.map===m?a.map(b,c):(y(a,function(a,e,f){d.push(b.call(c,a,e,f))}),d)};var z="Reduce of empty array with no initial value";x.reduce=x.foldl=x.inject=function(a,b,c,d){var e=arguments.length>2;if(null==a&&(a=[]),n&&a.reduce===n)return d&&(b=x.bind(b,d)),e?a.reduce(b,c):a.reduce(b);if(y(a,function(a,f,g){e?c=b.call(d,c,a,f,g):(c=a,e=!0)}),!e)throw new TypeError(z);return c},x.reduceRight=x.foldr=function(a,b,c,d){var e=arguments.length>2;if(null==a&&(a=[]),o&&a.reduceRight===o)return d&&(b=x.bind(b,d)),e?a.reduceRight(b,c):a.reduceRight(b);var f=a.length;if(f!==+f){var g=x.keys(a);f=g.length}if(y(a,function(h,i,j){i=g?g[--f]:--f,e?c=b.call(d,c,a[i],i,j):(c=a[i],e=!0)}),!e)throw new TypeError(z);return c},x.find=x.detect=function(a,b,c){var d;return A(a,function(a,e,f){return b.call(c,a,e,f)?(d=a,!0):void 0}),d},x.filter=x.select=function(a,b,c){var d=[];return null==a?d:p&&a.filter===p?a.filter(b,c):(y(a,function(a,e,f){b.call(c,a,e,f)&&d.push(a)}),d)},x.reject=function(a,b,c){return x.filter(a,function(a,d,e){return!b.call(c,a,d,e)},c)},x.every=x.all=function(a,b,d){b||(b=x.identity);var e=!0;return null==a?e:q&&a.every===q?a.every(b,d):(y(a,function(a,f,g){return(e=e&&b.call(d,a,f,g))?void 0:c}),!!e)};var A=x.some=x.any=function(a,b,d){b||(b=x.identity);var e=!1;return null==a?e:r&&a.some===r?a.some(b,d):(y(a,function(a,f,g){return e||(e=b.call(d,a,f,g))?c:void 0}),!!e)};x.contains=x.include=function(a,b){return null==a?!1:s&&a.indexOf===s?-1!=a.indexOf(b):A(a,function(a){return a===b})},x.invoke=function(a,b){var c=h.call(arguments,2),d=x.isFunction(b);return x.map(a,function(a){return(d?b:a[b]).apply(a,c)})},x.pluck=function(a,b){return x.map(a,function(a){return a[b]})},x.where=function(a,b,c){return x.isEmpty(b)?c?void 0:[]:x[c?"find":"filter"](a,function(a){for(var c in b)if(b[c]!==a[c])return!1;return!0})},x.findWhere=function(a,b){return x.where(a,b,!0)},x.max=function(a,b,c){if(!b&&x.isArray(a)&&a[0]===+a[0]&&a.length<65535)return Math.max.apply(Math,a);if(!b&&x.isEmpty(a))return-1/0;var d={computed:-1/0,value:-1/0};return y(a,function(a,e,f){var g=b?b.call(c,a,e,f):a;g>d.computed&&(d={value:a,computed:g})}),d.value},x.min=function(a,b,c){if(!b&&x.isArray(a)&&a[0]===+a[0]&&a.length<65535)return Math.min.apply(Math,a);if(!b&&x.isEmpty(a))return 1/0;var d={computed:1/0,value:1/0};return y(a,function(a,e,f){var g=b?b.call(c,a,e,f):a;gd||void 0===c)return 1;if(d>c||void 0===d)return-1}return a.indexf;){var h=f+g>>>1;c.call(d,a[h])=0})})},x.difference=function(a){var b=i.apply(d,h.call(arguments,1));return x.filter(a,function(a){return!x.contains(b,a)})},x.zip=function(){for(var a=x.max(x.pluck(arguments,"length").concat(0)),b=new Array(a),c=0;a>c;c++)b[c]=x.pluck(arguments,""+c);return b},x.object=function(a,b){if(null==a)return{};for(var c={},d=0,e=a.length;e>d;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c},x.indexOf=function(a,b,c){if(null==a)return-1;var d=0,e=a.length;if(c){if("number"!=typeof c)return d=x.sortedIndex(a,b),a[d]===b?d:-1;d=0>c?Math.max(0,e+c):c}if(s&&a.indexOf===s)return a.indexOf(b,c);for(;e>d;d++)if(a[d]===b)return d;return-1},x.lastIndexOf=function(a,b,c){if(null==a)return-1;var d=null!=c;if(t&&a.lastIndexOf===t)return d?a.lastIndexOf(b,c):a.lastIndexOf(b);for(var e=d?c:a.length;e--;)if(a[e]===b)return e;return-1},x.range=function(a,b,c){arguments.length<=1&&(b=a||0,a=0),c=arguments[2]||1;for(var d=Math.max(Math.ceil((b-a)/c),0),e=0,f=new Array(d);d>e;)f[e++]=a,a+=c;return f};var E=function(){};x.bind=function(a,b){var c,d;if(w&&a.bind===w)return w.apply(a,h.call(arguments,1));if(!x.isFunction(a))throw new TypeError;return c=h.call(arguments,2),d=function(){if(!(this instanceof d))return a.apply(b,c.concat(h.call(arguments)));E.prototype=a.prototype;var e=new E;E.prototype=null;var f=a.apply(e,c.concat(h.call(arguments)));return Object(f)===f?f:e}},x.partial=function(a){var b=h.call(arguments,1);return function(){return a.apply(this,b.concat(h.call(arguments)))}},x.bindAll=function(a){var b=h.call(arguments,1);if(0===b.length)throw new Error("bindAll must be passed function names");return y(b,function(b){a[b]=x.bind(a[b],a)}),a},x.memoize=function(a,b){var c={};return b||(b=x.identity),function(){var d=b.apply(this,arguments);return x.has(c,d)?c[d]:c[d]=a.apply(this,arguments)}},x.delay=function(a,b){var c=h.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)},x.defer=function(a){return x.delay.apply(x,[a,1].concat(h.call(arguments,1)))},x.throttle=function(a,b,c){var d,e,f,g=null,h=0;c||(c={});var i=function(){h=c.leading===!1?0:new Date,g=null,f=a.apply(d,e)};return function(){var j=new Date;h||c.leading!==!1||(h=j);var k=b-(j-h);return d=this,e=arguments,0>=k?(clearTimeout(g),g=null,h=j,f=a.apply(d,e)):g||c.trailing===!1||(g=setTimeout(i,k)),f}},x.debounce=function(a,b,c){var d,e=null;return function(){var f=this,g=arguments,h=function(){e=null,c||(d=a.apply(f,g))},i=c&&!e;return clearTimeout(e),e=setTimeout(h,b),i&&(d=a.apply(f,g)),d}},x.once=function(a){var b,c=!1;return function(){return c?b:(c=!0,b=a.apply(this,arguments),a=null,b)}},x.wrap=function(a,b){return function(){var c=[a];return g.apply(c,arguments),b.apply(this,c)}},x.compose=function(){var a=arguments;return function(){for(var b=arguments,c=a.length-1;c>=0;c--)b=[a[c].apply(this,b)];return b[0]}},x.after=function(a,b){return function(){return--a<1?b.apply(this,arguments):void 0}},x.keys=v||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var b=[];for(var c in a)x.has(a,c)&&b.push(c);return b},x.values=function(a){var b=[];for(var c in a)x.has(a,c)&&b.push(a[c]);return b},x.pairs=function(a){var b=[];for(var c in a)x.has(a,c)&&b.push([c,a[c]]);return b},x.invert=function(a){var b={};for(var c in a)x.has(a,c)&&(b[a[c]]=c);return b},x.functions=x.methods=function(a){var b=[];for(var c in a)x.isFunction(a[c])&&b.push(c);return b.sort()},x.extend=function(a){return y(h.call(arguments,1),function(b){if(b)for(var c in b)a[c]=b[c]}),a},x.pick=function(a){var b={},c=i.apply(d,h.call(arguments,1));return y(c,function(c){c in a&&(b[c]=a[c])}),b},x.omit=function(a){var b={},c=i.apply(d,h.call(arguments,1));for(var e in a)x.contains(c,e)||(b[e]=a[e]);return b},x.defaults=function(a){return y(h.call(arguments,1),function(b){if(b)for(var c in b)void 0===a[c]&&(a[c]=b[c])}),a},x.clone=function(a){return x.isObject(a)?x.isArray(a)?a.slice():x.extend({},a):a},x.tap=function(a,b){return b(a),a};var F=function(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;if(null==a||null==b)return a===b;a instanceof x&&(a=a._wrapped),b instanceof x&&(b=b._wrapped);var e=j.call(a);if(e!=j.call(b))return!1;switch(e){case"[object String]":return a==String(b);case"[object Number]":return a!=+a?b!=+b:0==a?1/a==1/b:a==+b;case"[object Date]":case"[object Boolean]":return+a==+b;case"[object RegExp]":return a.source==b.source&&a.global==b.global&&a.multiline==b.multiline&&a.ignoreCase==b.ignoreCase}if("object"!=typeof a||"object"!=typeof b)return!1;for(var f=c.length;f--;)if(c[f]==a)return d[f]==b;var g=a.constructor,h=b.constructor;if(g!==h&&!(x.isFunction(g)&&g instanceof g&&x.isFunction(h)&&h instanceof h))return!1;c.push(a),d.push(b);var i=0,k=!0;if("[object Array]"==e){if(i=a.length,k=i==b.length)for(;i--&&(k=F(a[i],b[i],c,d)););}else{for(var l in a)if(x.has(a,l)&&(i++,!(k=x.has(b,l)&&F(a[l],b[l],c,d))))break;if(k){for(l in b)if(x.has(b,l)&&!i--)break;k=!i}}return c.pop(),d.pop(),k};x.isEqual=function(a,b){return F(a,b,[],[])},x.isEmpty=function(a){if(null==a)return!0;if(x.isArray(a)||x.isString(a))return 0===a.length;for(var b in a)if(x.has(a,b))return!1;return!0},x.isElement=function(a){return!(!a||1!==a.nodeType)},x.isArray=u||function(a){return"[object Array]"==j.call(a)},x.isObject=function(a){return a===Object(a)},y(["Arguments","Function","String","Number","Date","RegExp"],function(a){x["is"+a]=function(b){return j.call(b)=="[object "+a+"]"}}),x.isArguments(arguments)||(x.isArguments=function(a){return!(!a||!x.has(a,"callee"))}),"function"!=typeof/./&&(x.isFunction=function(a){return"function"==typeof a}),x.isFinite=function(a){return isFinite(a)&&!isNaN(parseFloat(a))},x.isNaN=function(a){return x.isNumber(a)&&a!=+a},x.isBoolean=function(a){return a===!0||a===!1||"[object Boolean]"==j.call(a)},x.isNull=function(a){return null===a},x.isUndefined=function(a){return void 0===a},x.has=function(a,b){return k.call(a,b)},x.noConflict=function(){return a._=b,this},x.identity=function(a){return a},x.times=function(a,b,c){for(var d=Array(Math.max(0,a)),e=0;a>e;e++)d[e]=b.call(c,e);return d},x.random=function(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))};var G={escape:{"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"}};G.unescape=x.invert(G.escape);var H={escape:new RegExp("["+x.keys(G.escape).join("")+"]","g"),unescape:new RegExp("("+x.keys(G.unescape).join("|")+")","g")};x.each(["escape","unescape"],function(a){x[a]=function(b){return null==b?"":(""+b).replace(H[a],function(b){return G[a][b]})}}),x.result=function(a,b){if(null==a)return void 0;var c=a[b];return x.isFunction(c)?c.call(a):c},x.mixin=function(a){y(x.functions(a),function(b){var c=x[b]=a[b];x.prototype[b]=function(){var a=[this._wrapped];return g.apply(a,arguments),M.call(this,c.apply(x,a))}})};var I=0;x.uniqueId=function(a){var b=++I+"";return a?a+b:b},x.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var J=/(.)^/,K={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},L=/\\|'|\r|\n|\t|\u2028|\u2029/g;x.template=function(a,b,c){var d;c=x.defaults({},c,x.templateSettings);var e=new RegExp([(c.escape||J).source,(c.interpolate||J).source,(c.evaluate||J).source].join("|")+"|$","g"),f=0,g="__p+='";a.replace(e,function(b,c,d,e,h){return g+=a.slice(f,h).replace(L,function(a){return"\\"+K[a]}),c&&(g+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'"),d&&(g+="'+\n((__t=("+d+"))==null?'':__t)+\n'"),e&&(g+="';\n"+e+"\n__p+='"),f=h+b.length,b}),g+="';\n",c.variable||(g="with(obj||{}){\n"+g+"}\n"),g="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+g+"return __p;\n";try{d=new Function(c.variable||"obj","_",g)}catch(h){throw h.source=g,h}if(b)return d(b,x);var i=function(a){return d.call(this,a,x)};return i.source="function("+(c.variable||"obj")+"){\n"+g+"}",i},x.chain=function(a){return x(a).chain()};var M=function(a){return this._chain?x(a).chain():a};x.mixin(x),y(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=d[a];x.prototype[a]=function(){var c=this._wrapped;return b.apply(c,arguments),"shift"!=a&&"splice"!=a||0!==c.length||delete c[0],M.call(this,c)}}),y(["concat","join","slice"],function(a){var b=d[a];x.prototype[a]=function(){return M.call(this,b.apply(this._wrapped,arguments))}}),x.extend(x.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}.call(this),define("underscore-src",function(){}),define("underscore",["underscore-src"],function(){var a=window._;return a.mixin({move:function(a,b,c){return a.splice(c,0,a.splice(b,1)[0]),a},remove:function(a,b){return a.splice(b,1),a},toggle:function(a,b,c){return a===b?c:b},toggleInOut:function(b,c){return a.contains(b,c)?b=a.without(b,c):b.push(c),b}}),a}),("undefined"==typeof Crypto||!Crypto.util)&&function(){var a=window.Crypto={},b=a.util={rotl:function(a,b){return a<>>32-b},rotr:function(a,b){return a<<32-b|a>>>b},endian:function(a){if(a.constructor==Number)return 16711935&b.rotl(a,8)|4278255360&b.rotl(a,24);for(var c=0;c0;a--)b.push(Math.floor(256*Math.random()));return b},bytesToWords:function(a){for(var b=[],c=0,d=0;c>>5]|=(255&a[c])<<24-d%32;return b},wordsToBytes:function(a){for(var b=[],c=0;c<32*a.length;c+=8)b.push(a[c>>>5]>>>24-c%32&255);return b},bytesToHex:function(a){for(var b=[],c=0;c>>4).toString(16)),b.push((15&a[c]).toString(16));return b.join("")},hexToBytes:function(a){for(var b=[],c=0;cf;f++)b.push(8*d+6*f<=8*a.length?"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>>6*(3-f)&63):"=");return b.join("")},base64ToBytes:function(a){if("function"==typeof atob)return c.stringToBytes(atob(a));for(var a=a.replace(/[^A-Z0-9+\/]/gi,""),b=[],d=0,e=0;d>>6-2*e);return b}},a=a.charenc={};a.UTF8={stringToBytes:function(a){return c.stringToBytes(unescape(encodeURIComponent(a)))},bytesToString:function(a){return decodeURIComponent(escape(c.bytesToString(a)))}};var c=a.Binary={stringToBytes:function(a){for(var b=[],c=0;c0){var d=a.url.indexOf("//")+2,e=a.url.substring(d,c),f=b.charenc.Binary.stringToBytes(e);a.basicAuth=b.util.bytesToBase64(f);var g=a.url.substring(0,d); -a.url=g+a.url.substring(c+1)}return a},g=function(b){return b.urls=a.map(b.url.split(","),function(a){return a.trim()}),b};c.graphiteUrl&&(e.datasources={graphite:{type:"graphite",url:c.graphiteUrl,"default":!0}}),a.each(e.datasources,function(a,b){a.name=b,f(a),"influxdb"===a.type&&g(a)});var h=f({url:e.elasticsearch});return e.elasticsearchBasicAuth=h.basicAuth,e.elasticsearch=h.url,e.plugins.panels&&(e.panels=a.union(e.panels,e.plugins.panels)),e}}),function(a,b,c){function d(){var b=a.angular;return a.angular=dd,b}function e(a){return a&&"number"==typeof a.length?"function"!=typeof a.hasOwnProperty&&"function"!=typeof a.constructor?!0:a instanceof gb||Yc&&a instanceof Yc||"[object Object]"!==cd.call(a)||"function"==typeof a.callee:!1}function f(a,b,c){var d;if(a)if(y(a))for(d in a)"prototype"!=d&&"length"!=d&&"name"!=d&&a.hasOwnProperty(d)&&b.call(c,a[d],d);else if(a.forEach&&a.forEach!==f)a.forEach(b,c);else if(e(a))for(d=0;d=0&&a.splice(c,1),b}function I(a,b){if(z(a)||A(a))throw Error("Can't copy Window or Scope");if(b){if(a===b)throw Error("Can't copy equivalent objects or arrays");if(x(a)){b.length=0;for(var c=0;ce;e++)if(!K(a[e],b[e]))return!1;return!0}}return!1}function L(a,b,c){return a.concat(ad.call(b,c))}function M(a,b){return ad.call(a,b||0)}function N(a,b){var c=arguments.length>2?M(arguments,2):[];return!y(b)||b instanceof RegExp?b:c.length?function(){return arguments.length?b.apply(a,c.concat(ad.call(arguments,0))):b.apply(a,c)}:function(){return arguments.length?b.apply(a,arguments):b.call(a)}}function O(a,d){var e=d;return/^\$+/.test(a)?e=c:z(d)?e="$WINDOW":d&&b===d?e="$DOCUMENT":A(d)&&(e="$SCOPE"),e}function P(a,b){return JSON.stringify(a,O,b?" ":null)}function Q(a){return u(a)?JSON.parse(a):a}function R(a){if(a&&0!==a.length){var b=Tc(""+a);a=!("f"==b||"0"==b||"false"==b||"no"==b||"n"==b||"[]"==b)}else a=!1;return a}function S(a){a=Xc(a).clone();try{a.html("")}catch(b){}var c=3,d=Xc("
").append(a).html();try{return a[0].nodeType===c?Tc(d):d.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+Tc(b)})}catch(b){return Tc(d)}}function T(a){var b,c,d={};return f((a||"").split("&"),function(a){a&&(b=a.split("="),c=decodeURIComponent(b[0]),d[c]=s(b[1])?decodeURIComponent(b[1]):!0)}),d}function U(a){var b=[];return f(a,function(a,c){b.push(W(c,!0)+(a===!0?"":"="+W(a,!0)))}),b.length?b.join("&"):""}function V(a){return W(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function W(a,b){return encodeURIComponent(a).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,b?"%20":"+")}function X(a,c){function d(a){a&&h.push(a)}var e,g,h=[a],i=["ng:app","ng-app","x-ng-app","data-ng-app"],j=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/;f(i,function(c){i[c]=!0,d(b.getElementById(c)),c=c.replace(":","\\:"),a.querySelectorAll&&(f(a.querySelectorAll("."+c),d),f(a.querySelectorAll("."+c+"\\:"),d),f(a.querySelectorAll("["+c+"]"),d))}),f(h,function(a){if(!e){var b=" "+a.className+" ",c=j.exec(b);c?(e=a,g=(c[2]||"").replace(/\s+/g,",")):f(a.attributes,function(b){!e&&i[b.name]&&(e=a,g=b.value)})}}),e&&c(e,g?[g]:[])}function Y(b,c){var d=function(){b=Xc(b),c=c||[],c.unshift(["$provide",function(a){a.value("$rootElement",b)}]),c.unshift("ng");var a=yb(c);return a.invoke(["$rootScope","$rootElement","$compile","$injector","$animator",function(a,b,c,d,e){a.$apply(function(){b.data("$injector",d),c(b)(a)}),e.enabled(!0)}]),a},e=/^NG_DEFER_BOOTSTRAP!/;return a&&!e.test(a.name)?d():(a.name=a.name.replace(e,""),void(ed.resumeBootstrap=function(a){f(a,function(a){c.push(a)}),d()}))}function Z(a,b){return b=b||"_",a.replace(gd,function(a,c){return(c?b:"")+a.toLowerCase()})}function $(){Yc=a.jQuery,Yc?(Xc=Yc,l(Yc.fn,{scope:pd.scope,controller:pd.controller,injector:pd.injector,inheritedData:pd.inheritedData}),fb("remove",!0),fb("empty"),fb("html")):Xc=gb,ed.element=Xc}function _(a,b,c){if(!a)throw new Error("Argument '"+(b||"?")+"' is "+(c||"required"));return a}function ab(a,b,c){return c&&x(a)&&(a=a[a.length-1]),_(y(a),b,"not a function, got "+(a&&"object"==typeof a?a.constructor.name||"Object":typeof a)),a}function bb(a){function b(a,b,c){return a[b]||(a[b]=c())}return b(b(a,"angular",Object),"module",function(){var a={};return function(c,d,e){return d&&a.hasOwnProperty(c)&&(a[c]=null),b(a,c,function(){function a(a,c,d){return function(){return b[d||"push"]([a,c,arguments]),h}}if(!d)throw Error("No module: "+c);var b=[],f=[],g=a("$injector","invoke"),h={_invokeQueue:b,_runBlocks:f,requires:d,name:c,provider:a("$provide","provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),animation:a("$animationProvider","register"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:g,run:function(a){return f.push(a),this}};return e&&g(e),h})}})}function cb(b){l(b,{bootstrap:Y,copy:I,extend:l,equals:K,element:Xc,forEach:f,injector:yb,noop:o,bind:N,toJson:P,fromJson:Q,identity:p,isUndefined:r,isDefined:s,isString:u,isFunction:y,isObject:t,isNumber:v,isElement:D,isArray:x,version:hd,isDate:w,lowercase:Tc,uppercase:Uc,callbacks:{counter:0},noConflict:d}),Zc=bb(a);try{Zc("ngLocale")}catch(c){Zc("ngLocale",[]).provider("$locale",tc)}Zc("ng",["ngLocale"],["$provide",function(a){a.provider("$compile",Fb).directive({a:Nd,input:Xd,textarea:Xd,form:Rd,script:Ge,select:Ie,style:Ke,option:Je,ngBind:he,ngBindHtmlUnsafe:je,ngBindTemplate:ie,ngClass:ke,ngClassEven:me,ngClassOdd:le,ngCsp:pe,ngCloak:ne,ngController:oe,ngForm:Sd,ngHide:ze,ngIf:se,ngInclude:te,ngInit:ue,ngNonBindable:ve,ngPluralize:we,ngRepeat:xe,ngShow:ye,ngSubmit:re,ngStyle:Ae,ngSwitch:Be,ngSwitchWhen:Ce,ngSwitchDefault:De,ngOptions:He,ngView:Fe,ngTransclude:Ee,ngModel:be,ngList:ee,ngChange:ce,required:de,ngRequired:de,ngValue:ge}).directive(Od).directive(qe),a.provider({$anchorScroll:zb,$animation:Ab,$animator:wd,$browser:Cb,$cacheFactory:Db,$controller:Hb,$document:Ib,$exceptionHandler:Jb,$filter:vc,$interpolate:Kb,$http:qc,$httpBackend:rc,$location:Xb,$log:Yb,$parse:dc,$route:gc,$routeParams:hc,$rootScope:ic,$q:ec,$sniffer:jc,$templateCache:Eb,$timeout:uc,$window:kc})}])}function db(){return++kd}function eb(a){return a.replace(nd,function(a,b,c,d){return d?c.toUpperCase():c}).replace(od,"Moz$1")}function fb(a,b){function c(){for(var a,c,e,f,g,h,i,j=[this],k=b;j.length;)for(a=j.shift(),c=0,e=a.length;e>c;c++)for(f=Xc(a[c]),k?f.triggerHandler("$destroy"):k=!k,g=0,h=(i=f.children()).length;h>g;g++)j.push(Yc(i[g]));return d.apply(this,arguments)}var d=Yc.fn[a];d=d.$original||d,c.$original=d,Yc.fn[a]=c}function gb(a){if(a instanceof gb)return a;if(!(this instanceof gb)){if(u(a)&&"<"!=a.charAt(0))throw Error("selectors not implemented");return new gb(a)}if(u(a)){var c=b.createElement("div");c.innerHTML="
 
"+a,c.removeChild(c.firstChild),qb(this,c.childNodes),this.remove()}else qb(this,a)}function hb(a){return a.cloneNode(!0)}function ib(a){kb(a);for(var b=0,c=a.childNodes||[];b-1}function ob(a,b){b&&f(b.split(" "),function(b){a.className=C((" "+a.className+" ").replace(/[\n\t]/g," ").replace(" "+C(b)+" "," "))})}function pb(a,b){b&&f(b.split(" "),function(b){nb(a,b)||(a.className=C(a.className+" "+C(b)))})}function qb(a,b){if(b){b=b.nodeName||!s(b.length)||z(b)?[b]:b;for(var c=0;c=_c?(d.preventDefault=null,d.stopPropagation=null,d.isDefaultPrevented=null):(delete d.preventDefault,delete d.stopPropagation,delete d.isDefaultPrevented)};return d.elem=a,d}function vb(a){var b,d=typeof a;return"object"==d&&null!==a?"function"==typeof(b=a.$$hashKey)?b=a.$$hashKey():b===c&&(b=a.$$hashKey=j()):b=a,d+":"+b}function wb(a){f(a,this.put,this)}function xb(a){var b,c,d,e;return"function"==typeof a?(b=a.$inject)||(b=[],c=a.toString().replace(vd,""),d=c.match(sd),f(d[1].split(td),function(a){a.replace(ud,function(a,c,d){b.push(d)})}),a.$inject=b):x(a)?(e=a.length-1,ab(a[e],"fn"),b=a.slice(0,e)):ab(a,"fn",!0),b}function yb(a){function b(a){return function(b,c){return t(b)?void f(b,i(a)):a(b,c)}}function c(a,b){if((y(b)||x(b))&&(b=v.instantiate(b)),!b.$get)throw Error("Provider "+a+" must define $get factory method.");return s[a+n]=b}function d(a,b){return c(a,{$get:b})}function e(a,b){return d(a,["$injector",function(a){return a.instantiate(b)}])}function g(a,b){return d(a,q(b))}function h(a,b){s[a]=b,w[a]=b}function j(a,b){var c=v.get(a+n),d=c.$get;c.$get=function(){var a=z.invoke(d,c);return z.invoke(b,null,{$delegate:a})}}function k(a){var b=[];return f(a,function(a){if(!r.get(a))if(r.put(a,!0),u(a)){var c=Zc(a);b=b.concat(k(c.requires)).concat(c._runBlocks);try{for(var d=c._invokeQueue,e=0,f=d.length;f>e;e++){var g=d[e],h=v.get(g[0]);h[g[1]].apply(h,g[2])}}catch(i){throw i.message&&(i.message+=" from "+a),i}}else if(y(a))try{b.push(v.invoke(a))}catch(i){throw i.message&&(i.message+=" from "+a),i}else if(x(a))try{b.push(v.invoke(a))}catch(i){throw i.message&&(i.message+=" from "+String(a[a.length-1])),i}else ab(a,"module")}),b}function l(a,b){function c(c){if("string"!=typeof c)throw Error("Service name expected");if(a.hasOwnProperty(c)){if(a[c]===m)throw Error("Circular dependency: "+p.join(" <- "));return a[c]}try{return p.unshift(c),a[c]=m,a[c]=b(c)}finally{p.shift()}}function d(a,b,d){var e,f,g,h=[],i=xb(a);for(f=0,e=i.length;e>f;f++)g=i[f],h.push(d&&d.hasOwnProperty(g)?d[g]:c(g));switch(a.$inject||(a=a[e]),b?-1:h.length){case 0:return a();case 1:return a(h[0]);case 2:return a(h[0],h[1]);case 3:return a(h[0],h[1],h[2]);case 4:return a(h[0],h[1],h[2],h[3]);case 5:return a(h[0],h[1],h[2],h[3],h[4]);case 6:return a(h[0],h[1],h[2],h[3],h[4],h[5]);case 7:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6]);case 8:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7]);case 9:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7],h[8]);case 10:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7],h[8],h[9]);default:return a.apply(b,h)}}function e(a,b){var c,e,f=function(){};return f.prototype=(x(a)?a[a.length-1]:a).prototype,c=new f,e=d(a,c,b),t(e)?e:c}return{invoke:d,instantiate:e,get:c,annotate:xb,has:function(b){return s.hasOwnProperty(b+n)||a.hasOwnProperty(b)}}}var m={},n="Provider",p=[],r=new wb,s={$provide:{provider:b(c),factory:b(d),service:b(e),value:b(g),constant:b(h),decorator:j}},v=s.$injector=l(s,function(){throw Error("Unknown provider: "+p.join(" <- "))}),w={},z=w.$injector=l(w,function(a){var b=v.get(a+n);return z.invoke(b.$get,b)});return f(k(a),function(a){z.invoke(a||o)}),z}function zb(){var a=!0;this.disableAutoScrolling=function(){a=!1},this.$get=["$window","$location","$rootScope",function(b,c,d){function e(a){var b=null;return f(a,function(a){b||"a"!==Tc(a.nodeName)||(b=a)}),b}function g(){var a,d=c.hash();d?(a=h.getElementById(d))?a.scrollIntoView():(a=e(h.getElementsByName(d)))?a.scrollIntoView():"top"===d&&b.scrollTo(0,0):b.scrollTo(0,0)}var h=b.document;return a&&d.$watch(function(){return c.hash()},function(){d.$evalAsync(g)}),g}]}function Ab(a){var b="Animation";this.register=function(c,d){a.factory(eb(c)+b,d)},this.$get=["$injector",function(a){return function(c){if(c){var d=eb(c)+b;if(a.has(d))return a.get(d)}}}]}function Bb(a,b,d,e){function g(a){try{a.apply(null,M(arguments,1))}finally{if(s--,0===s)for(;t.length;)try{t.pop()()}catch(b){d.error(b)}}}function h(a,b){!function c(){f(w,function(a){a()}),v=b(c,a)}()}function i(){x!=j.url()&&(x=j.url(),f(z,function(a){a(j.url())}))}var j=this,k=b[0],l=a.location,m=a.history,n=a.setTimeout,p=a.clearTimeout,q={};j.isMock=!1;var s=0,t=[];j.$$completeOutstandingRequest=g,j.$$incOutstandingRequestCount=function(){s++},j.notifyWhenNoOutstandingRequests=function(a){f(w,function(a){a()}),0===s?a():t.push(a)};var v,w=[];j.addPollFn=function(a){return r(v)&&h(100,n),w.push(a),a};var x=l.href,y=b.find("base");j.url=function(a,b){if(a){if(x==a)return;return x=a,e.history?b?m.replaceState(null,"",a):(m.pushState(null,"",a),y.attr("href",y.attr("href"))):b?l.replace(a):l.href=a,j}return l.href.replace(/%27/g,"'")};var z=[],A=!1;j.onUrlChange=function(b){return A||(e.history&&Xc(a).bind("popstate",i),e.hashchange?Xc(a).bind("hashchange",i):j.addPollFn(i),A=!0),z.push(b),b},j.baseHref=function(){var a=y.attr("href");return a?a.replace(/^https?\:\/\/[^\/]*/,""):""};var B={},C="",D=j.baseHref();j.cookies=function(a,b){var e,f,g,h,i;if(!a){if(k.cookie!==C)for(C=k.cookie,f=C.split("; "),B={},h=0;h0){var a=unescape(g.substring(0,i));B[a]===c&&(B[a]=unescape(g.substring(i+1)))}return B}b===c?k.cookie=escape(a)+"=;path="+D+";expires=Thu, 01 Jan 1970 00:00:00 GMT":u(b)&&(e=(k.cookie=escape(a)+"="+escape(b)+";path="+D).length+1,e>4096&&d.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+e+" > 4096 bytes)!"))},j.defer=function(a,b){var c;return s++,c=n(function(){delete q[c],g(a)},b||0),q[c]=!0,c},j.defer.cancel=function(a){return q[a]?(delete q[a],p(a),g(o),!0):!1}}function Cb(){this.$get=["$window","$log","$sniffer","$document",function(a,b,c,d){return new Bb(a,d,b,c)}]}function Db(){this.$get=function(){function a(a,c){function d(a){a!=k&&(m?m==a&&(m=a.n):m=a,e(a.n,a.p),e(a,k),k=a,k.n=null)}function e(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(a in b)throw Error("cacheId "+a+" taken");var f=0,g=l({},c,{id:a}),h={},i=c&&c.capacity||Number.MAX_VALUE,j={},k=null,m=null;return b[a]={put:function(a,b){var c=j[a]||(j[a]={key:a});return d(c),r(b)?void 0:(a in h||f++,h[a]=b,f>i&&this.remove(m.key),b)},get:function(a){var b=j[a];if(b)return d(b),h[a]},remove:function(a){var b=j[a];b&&(b==k&&(k=b.p),b==m&&(m=b.n),e(b.n,b.p),delete j[a],delete h[a],f--)},removeAll:function(){h={},f=0,j={},k=m=null},destroy:function(){h=null,g=null,j=null,delete b[a]},info:function(){return l({},g,{size:f})}}}var b={};return a.info=function(){var a={};return f(b,function(b,c){a[c]=b.info()}),a},a.get=function(a){return b[a]},a}}function Eb(){this.$get=["$cacheFactory",function(a){return a("templates")}]}function Fb(a){var d={},e="Directive",g=/^\s*directive\:\s*([\d\w\-_]+)\s+(.*)$/,h=/(([\d\w\-_]+)(?:\:([^;]+))?;?)/,j="Template must have exactly one root element. was: ",k=/^\s*(https?|ftp|mailto|file):/;this.directive=function m(b,c){return u(b)?(_(c,"directive"),d.hasOwnProperty(b)||(d[b]=[],a.factory(b+e,["$injector","$exceptionHandler",function(a,c){var e=[];return f(d[b],function(d){try{var f=a.invoke(d);y(f)?f={compile:q(f)}:!f.compile&&f.link&&(f.compile=q(f.link)),f.priority=f.priority||0,f.name=f.name||b,f.require=f.require||f.controller&&f.name,f.restrict=f.restrict||"A",e.push(f)}catch(g){c(g)}}),e}])),d[b].push(c)):f(b,i(m)),this},this.urlSanitizationWhitelist=function(a){return s(a)?(k=a,this):k},this.$get=["$injector","$interpolate","$exceptionHandler","$http","$templateCache","$parse","$controller","$rootScope","$document",function(a,i,m,n,o,r,s,v,w){function z(a,b,c){a instanceof Xc||(a=Xc(a)),f(a,function(b,c){3==b.nodeType&&b.nodeValue.match(/\S+/)&&(a[c]=Xc(b).wrap("").parent()[0])});var d=B(a,b,a,c);return function(b,c){_(b,"scope");for(var e=c?pd.clone.call(a):a,f=0,g=e.length;g>f;f++){var h=e[f];(1==h.nodeType||9==h.nodeType)&&e.eq(f).data("$scope",b)}return A(e,"ng-scope"),c&&c(e,b),d&&d(b,e,e),e}}function A(a,b){try{a.addClass(b)}catch(c){}}function B(a,b,d,e){function f(a,d,e,f){var g,h,i,j,k,m,n,o,p=[];for(m=0,n=d.length;n>m;m++)p.push(d[m]);for(m=0,o=0,n=l.length;n>m;o++)i=p[o],g=l[m++],h=l[m++],g?(g.scope?(j=a.$new(t(g.scope)),Xc(i).data("$scope",j)):j=a,k=g.transclude,k||!f&&b?g(h,j,i,e,function(b){return function(c){var d=a.$new();return d.$$transcluded=!0,b(d,c).bind("$destroy",N(d,d.$destroy))}}(k||b)):g(h,j,i,c,f)):h&&h(a,i.childNodes,c,f)}for(var g,h,i,j,k,l=[],m=0;mq;q++)k=p[q],k.specified&&(l=k.name,n=Gb(l),V.test(n)&&(l=n.substr(6).toLowerCase()),m=Gb(l.toLowerCase()),j[m]=l,c[m]=o=C(_c&&"href"==l?decodeURIComponent(a.getAttribute(l,2)):k.value),tb(a,m)&&(c[m]=!0),M(a,b,o,m),F(b,m,"A",d));if(f=a.className,u(f)&&""!==f)for(;e=h.exec(f);)m=Gb(e[2]),F(b,m,"C",d)&&(c[m]=C(e[3])),f=f.substr(e.index+e[0].length);break;case 3:L(b,a.nodeValue);break;case 8:try{e=g.exec(a.nodeValue),e&&(m=Gb(e[1]),F(b,m,"M",d)&&(c[m]=C(e[2])))}catch(s){}}return b.sort(I),b}function E(a,d,e,g,h){function k(a,b){a&&(a.require=o.require,I.push(a)),b&&(b.require=o.require,L.push(b))}function l(a,b){var c,d="data",e=!1;if(u(a)){for(;"^"==(c=a.charAt(0))||"?"==c;)a=a.substr(1),"^"==c&&(d="inheritedData"),e=e||"?"==c;if(c=b[d]("$"+a+"Controller"),!c&&!e)throw Error("No controller: "+a);return c}return x(a)&&(c=[],f(a,function(a){c.push(l(a,b))})),c}function n(a,b,g,h,j){var k,n,o,p,q,t;if(k=d===g?e:J(e,new P(Xc(g),e.$attr)),n=k.$$element,N){var u=/^\s*([@=&])(\??)\s*(\w*)\s*$/,v=b.$parent||b;f(N.scope,function(a,c){var d,e,f,g=a.match(u)||[],h=g[3]||c,j="?"==g[2],l=g[1];switch(b.$$isolateBindings[c]=l+h,l){case"@":k.$observe(h,function(a){b[c]=a}),k.$$observers[h].$$scope=v,k[h]&&(b[c]=i(k[h])(v));break;case"=":if(j&&!k[h])return;e=r(k[h]),f=e.assign||function(){throw d=b[c]=e(v),Error(xd+k[h]+" (directive: "+N.name+")")},d=b[c]=e(v),b.$watch(function(){var a=e(v);return a!==b[c]&&(a!==d?d=b[c]=a:f(v,a=d=b[c])),a});break;case"&":e=r(k[h]),b[c]=function(a){return e(v,a)};break;default:throw Error("Invalid isolate scope definition for directive "+N.name+": "+a)}})}for(w&&f(w,function(a){var c={$scope:b,$element:n,$attrs:k,$transclude:j};t=a.controller,"@"==t&&(t=k[a.name]),n.data("$"+a.name+"Controller",s(t,c))}),o=0,p=I.length;p>o;o++)try{q=I[o],q(b,n,k,q.require&&l(q.require,n))}catch(x){m(x,S(n))}for(a&&a(b,g.childNodes,c,j),o=0,p=L.length;p>o;o++)try{q=L[o],q(b,n,k,q.require&&l(q.require,n))}catch(x){m(x,S(n))}}for(var o,p,q,v,w,B,E,F=-Number.MAX_VALUE,I=[],L=[],M=null,N=null,Q=null,R=e.$$element=Xc(d),T=g,V=0,W=a.length;W>V&&(o=a[V],q=c,!(F>o.priority));V++){if((E=o.scope)&&(K("isolated scope",N,o,R),t(E)&&(A(R,"ng-isolate-scope"),N=o),A(R,"ng-scope"),M=M||o),p=o.name,(E=o.controller)&&(w=w||{},K("'"+p+"' controller",w[p],o,R),w[p]=o),(E=o.transclude)&&(K("transclusion",v,o,R),v=o,F=o.priority,"element"==E?(q=Xc(d),R=e.$$element=Xc(b.createComment(" "+p+": "+e[p]+" ")),d=R[0],O(h,Xc(q[0]),d),T=z(q,g,F)):(q=Xc(hb(d)).contents(),R.html(""),T=z(q,g))),o.template)if(K("template",Q,o,R),Q=o,E=y(o.template)?o.template(R,e):o.template,E=U(E),o.replace){if(q=Xc("
"+C(E)+"
").contents(),d=q[0],1!=q.length||1!==d.nodeType)throw new Error(j+E);O(h,R,d);var X={$attr:{}};a=a.concat(D(d,a.splice(V+1,a.length-(V+1)),X)),G(e,X),W=a.length}else R.html(E);if(o.templateUrl)K("template",Q,o,R),Q=o,n=H(a.splice(V,a.length-V),n,R,e,h,o.replace,T),W=a.length;else if(o.compile)try{B=o.compile(R,e,T),y(B)?k(null,B):B&&k(B.pre,B.post)}catch(Y){m(Y,S(R))}o.terminal&&(n.terminal=!0,F=Math.max(F,o.priority))}return n.scope=M&&M.scope,n.transclude=v&&T,n}function F(b,f,g,h){var i=!1;if(d.hasOwnProperty(f))for(var j,k=a.get(f+e),l=0,n=k.length;n>l;l++)try{j=k[l],(h===c||h>j.priority)&&-1!=j.restrict.indexOf(g)&&(b.push(j),i=!0)}catch(o){m(o)}return i}function G(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;f(a,function(d,e){"$"!=e.charAt(0)&&(b[e]&&(d+=("style"===e?";":" ")+b[e]),a.$set(e,d,!0,c[e]))}),f(b,function(b,f){"class"==f?(A(e,b),a["class"]=(a["class"]?a["class"]+" ":"")+b):"style"==f?e.attr("style",e.attr("style")+";"+b):"$"==f.charAt(0)||a.hasOwnProperty(f)||(a[f]=b,d[f]=c[f])})}function H(a,b,c,d,e,f,g){var h,i,k=[],m=c[0],p=a.shift(),q=l({},p,{controller:null,templateUrl:null,transclude:null,scope:null}),r=y(p.templateUrl)?p.templateUrl(c,d):p.templateUrl;return c.html(""),n.get(r,{cache:o}).success(function(l){var n,o,p;if(l=U(l),f){if(p=Xc("
"+C(l)+"
").contents(),n=p[0],1!=p.length||1!==n.nodeType)throw new Error(j+l);o={$attr:{}},O(e,c,n),D(n,a,o),G(d,o)}else n=m,c.html(l);for(a.unshift(q),h=E(a,n,d,g),i=B(c[0].childNodes,g);k.length;){var r=k.shift(),s=k.shift(),t=k.shift(),u=k.shift(),v=n;s!==m&&(v=hb(n),O(t,Xc(s),v)),h(function(){b(i,r,v,e,u)},r,v,e,u)}k=null}).error(function(a,b,c,d){throw Error("Failed to load template: "+d.url)}),function(a,c,d,e,f){k?(k.push(c),k.push(d),k.push(e),k.push(f)):h(function(){b(i,c,d,e,f)},c,d,e,f)}}function I(a,b){return b.priority-a.priority}function K(a,b,c,d){if(b)throw Error("Multiple directives ["+b.name+", "+c.name+"] asking for "+a+" on: "+S(d))}function L(a,b){var c=i(b,!0);c&&a.push({priority:0,compile:q(function(a,b){var d=b.parent(),e=d.data("$binding")||[];e.push(c),A(d.data("$binding",e),"ng-binding"),a.$watch(c,function(a){b[0].nodeValue=a})})})}function M(a,b,c,d){var e=i(c,!0);e&&b.push({priority:100,compile:q(function(a,b,c){var f=c.$$observers||(c.$$observers={});e=i(c[d],!0),e&&(c[d]=e(a),(f[d]||(f[d]=[])).$$inter=!0,(c.$$observers&&c.$$observers[d].$$scope||a).$watch(e,function(a){c.$set(d,a)}))})})}function O(a,b,c){var d,e,f=b[0],g=f.parentNode;if(a)for(d=0,e=a.length;e>d;d++)if(a[d]==f){a[d]=c;break}g&&g.replaceChild(c,f),c[Xc.expando]=f[Xc.expando],b[0]=c}var P=function(a,b){this.$$element=a,this.$attr=b||{}};P.prototype={$normalize:Gb,$set:function(a,b,d,e){var g,h=tb(this.$$element[0],a),i=this.$$observers;h&&(this.$$element.prop(a,b),e=h),this[a]=b,e?this.$attr[a]=e:(e=this.$attr[a],e||(this.$attr[a]=e=Z(a,"-"))),"A"===$c(this.$$element[0])&&"href"===a&&(Q.setAttribute("href",b),g=Q.href,g.match(k)||(this[a]=b="unsafe:"+g)),d!==!1&&(null===b||b===c?this.$$element.removeAttr(e):this.$$element.attr(e,b)),i&&f(i[a],function(a){try{a(b)}catch(c){m(c)}})},$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers={}),e=d[a]||(d[a]=[]);return e.push(b),v.$evalAsync(function(){e.$$inter||b(c[a])}),b}};var Q=w[0].createElement("a"),R=i.startSymbol(),T=i.endSymbol(),U="{{"==R||"}}"==T?p:function(a){return a.replace(/\{\{/g,R).replace(/}}/g,T)},V=/^ngAttr[A-Z]/;return z}]}function Gb(a){return eb(a.replace(yd,""))}function Hb(){var a={},b=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(b,c){t(b)?l(a,b):a[b]=c},this.$get=["$injector","$window",function(c,d){return function(e,f){var g,h,i,j;if(u(e)&&(h=e.match(b),i=h[1],j=h[3],e=a.hasOwnProperty(i)?a[i]:ac(f.$scope,i,!0)||ac(d,i,!0),ab(e,i,!0)),g=c.instantiate(e,f),j){if("object"!=typeof f.$scope)throw new Error('Can not export controller as "'+j+'". No scope object provided!');f.$scope[j]=g}return g}}]}function Ib(){this.$get=["$window",function(a){return Xc(a.document)}]}function Jb(){this.$get=["$log",function(a){return function(){a.error.apply(a,arguments)}}]}function Kb(){var a="{{",b="}}";this.startSymbol=function(b){return b?(a=b,this):a},this.endSymbol=function(a){return a?(b=a,this):b},this.$get=["$parse","$exceptionHandler",function(d,e){function f(f,i){for(var j,k,l,m,n=0,o=[],p=f.length,q=!1,r=[];p>n;)-1!=(j=f.indexOf(a,n))&&-1!=(k=f.indexOf(b,j+g))?(n!=j&&o.push(f.substring(n,j)),o.push(l=d(m=f.substring(j+g,k))),l.exp=m,n=k+h,q=!0):(n!=p&&o.push(f.substring(n)),n=p);return(p=o.length)||(o.push(""),p=1),!i||q?(r.length=p,l=function(a){try{for(var b,d=0,g=p;g>d;d++)"function"==typeof(b=o[d])&&(b=b(a),null==b||b==c?b="":"string"!=typeof b&&(b=P(b))),r[d]=b;return r.join("")}catch(h){var i=new Error("Error while interpolating: "+f+"\n"+h.toString());e(i)}},l.exp=f,l.parts=o,l):void 0}var g=a.length,h=b.length;return f.startSymbol=function(){return a},f.endSymbol=function(){return b},f}]}function Lb(a){for(var b=a.split("/"),c=b.length;c--;)b[c]=V(b[c]);return b.join("/")}function Mb(a,b){var c=zd.exec(a);b.$$protocol=c[1],b.$$host=c[3],b.$$port=m(c[5])||Bd[c[1]]||null}function Nb(a,b){var c=Ad.exec(a);b.$$path=decodeURIComponent(c[1]),b.$$search=T(c[3]),b.$$hash=decodeURIComponent(c[5]||""),b.$$path&&"/"!=b.$$path.charAt(0)&&(b.$$path="/"+b.$$path)}function Ob(a,b,c){return 0==b.indexOf(a)?b.substr(a.length):c}function Pb(a){var b=a.indexOf("#");return-1==b?a:a.substr(0,b)}function Qb(a){return a.substr(0,Pb(a).lastIndexOf("/")+1)}function Rb(a){return a.substring(0,a.indexOf("/",a.indexOf("//")+2))}function Sb(a,b){b=b||"";var d=Qb(a);this.$$parse=function(a){var b={};Mb(a,b);var c=Ob(d,a);if(!u(c))throw Error('Invalid url "'+a+'", missing path prefix "'+d+'".');Nb(c,b),l(this,b),this.$$path||(this.$$path="/"),this.$$compose()},this.$$compose=function(){var a=U(this.$$search),b=this.$$hash?"#"+V(this.$$hash):"";this.$$url=Lb(this.$$path)+(a?"?"+a:"")+b,this.$$absUrl=d+this.$$url.substr(1)},this.$$rewrite=function(e){var f,g;return(f=Ob(a,e))!==c?(g=f,(f=Ob(b,f))!==c?d+(Ob("/",f)||f):a+g):(f=Ob(d,e))!==c?d+f:d==e+"/"?d:void 0}}function Tb(a,b){var c=Qb(a);this.$$parse=function(d){Mb(d,this);var e=Ob(a,d)||Ob(c,d);if(!u(e))throw new Error('Invalid url "'+d+'", does not start with "'+a+'".');var f="#"==e.charAt(0)?Ob(b,e):e;if(!u(f))throw new Error('Invalid url "'+d+'", missing hash prefix "'+b+'".');Nb(f,this),this.$$compose()},this.$$compose=function(){var c=U(this.$$search),d=this.$$hash?"#"+V(this.$$hash):"";this.$$url=Lb(this.$$path)+(c?"?"+c:"")+d,this.$$absUrl=a+(this.$$url?b+this.$$url:"")},this.$$rewrite=function(b){return Pb(a)==Pb(b)?b:void 0}}function Ub(a,b){Tb.apply(this,arguments);var c=Qb(a);this.$$rewrite=function(d){var e;return a==Pb(d)?d:(e=Ob(c,d))?a+b+e:c===d+"/"?c:void 0}}function Vb(a){return function(){return this[a]}}function Wb(a,b){return function(c){return r(c)?this[a]:(this[a]=b(c),this.$$compose(),this)}}function Xb(){var b="",c=!1;this.hashPrefix=function(a){return s(a)?(b=a,this):b},this.html5Mode=function(a){return s(a)?(c=a,this):c},this.$get=["$rootScope","$browser","$sniffer","$rootElement",function(d,e,f,g){function h(a){d.$broadcast("$locationChangeSuccess",i.absUrl(),a)}var i,j,k,l=e.baseHref(),m=e.url();c?(k=l?Rb(m)+l:m,j=f.history?Sb:Ub):(k=Pb(m),j=Tb),i=new j(k,"#"+b),i.$$parse(i.$$rewrite(m)),g.bind("click",function(b){if(!b.ctrlKey&&!b.metaKey&&2!=b.which){for(var c=Xc(b.target);"a"!==Tc(c[0].nodeName);)if(c[0]===g[0]||!(c=c.parent())[0])return;var f=c.prop("href"),h=i.$$rewrite(f);f&&!c.attr("target")&&h&&!b.isDefaultPrevented()&&(b.preventDefault(),h!=e.url()&&(i.$$parse(h),d.$apply(),a.angular["ff-684208-preventDefault"]=!0))}}),i.absUrl()!=m&&e.url(i.absUrl(),!0),e.onUrlChange(function(a){if(i.absUrl()!=a){if(d.$broadcast("$locationChangeStart",a,i.absUrl()).defaultPrevented)return void e.url(i.absUrl());d.$evalAsync(function(){var b=i.absUrl();i.$$parse(a),h(b)}),d.$$phase||d.$digest()}});var n=0;return d.$watch(function(){var a=e.url(),b=i.$$replace;return n&&a==i.absUrl()||(n++,d.$evalAsync(function(){d.$broadcast("$locationChangeStart",i.absUrl(),a).defaultPrevented?i.$$parse(a):(e.url(i.absUrl(),b),h(a))})),i.$$replace=!1,n}),i}]}function Yb(){var a=!0,b=this;this.debugEnabled=function(b){return s(b)?(a=b,this):a},this.$get=["$window",function(c){function d(a){return a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line)),a}function e(a){var b=c.console||{},e=b[a]||b.log||o;return e.apply?function(){var a=[];return f(arguments,function(b){a.push(d(b))}),e.apply(b,a)}:function(a,b){e(a,b)}}return{log:e("log"),warn:e("warn"),info:e("info"),error:e("error"),debug:function(){var c=e("debug");return function(){a&&c.apply(b,arguments)}}()}}]}function Zb(a,b){function c(a){return-1!=a.indexOf(p)}function d(a){return-1!=a.indexOf(u)}function e(b){var c=b||1;return r+c="0"&&"9">=a}function g(a){return" "==a||"\r"==a||" "==a||"\n"==a||" "==a||" "==a}function h(a){return a>="a"&&"z">=a||a>="A"&&"Z">=a||"_"==a||"$"==a}function i(a){return"-"==a||"+"==a||f(a)}function j(b,c,d){throw d=d||r,Error("Lexer Error: "+b+" at column"+(s(c)?"s "+c+"-"+r+" ["+a.substring(c,d)+"]":" "+d)+" in expression ["+a+"].")}function k(){for(var b="",c=r;r0){var e=L[0],f=e.text;if(f==a||f==b||f==c||f==d||!a&&!b&&!c&&!d)return e}return!1}function i(a,c,d,e){var g=h(a,c,d,e);return g?(b&&!g.json&&f("is not valid json",g),L.shift(),g):!1}function j(a){i(a)||f("is unexpected, expecting ["+a+"]",h())}function k(a,b){return l(function(c,d){return a(c,d,b)},{constant:b.constant})}function m(a,b,c){return l(function(d,e){return a(d,e)?b(d,e):c(d,e)},{constant:a.constant&&b.constant&&c.constant})}function n(a,b,c){return l(function(d,e){return b(d,e,a,c)},{constant:a.constant&&c.constant})}function p(){for(var a=[];;)if(L.length>0&&!h("}",")",";","]")&&a.push(Q()),!i(";"))return 1==a.length?a[0]:function(b,c){for(var d,e=0;e","<=",">="))&&(b=n(b,a.fn,z())),b}function A(){for(var a,b=B();a=i("+","-");)b=n(b,a.fn,B());return b}function B(){for(var a,b=C();a=i("*","/","%");)b=n(b,a.fn,C());return b}function C(){var a;return i("+")?D():(a=i("-"))?n(K,a.fn,C()):(a=i("!"))?k(a.fn,C()):D()}function D(){var a;if(i("("))a=Q(),j(")");else if(i("["))a=H();else if(i("{"))a=I();else{var b=i();a=b.fn,a||f("not a primary expression",b),b.json&&(a.constant=a.literal=!0)}for(var c,d;c=i("(","[",".");)"("===c.text?(a=N(a,d),d=null):"["===c.text?(d=a,a=P(a)):"."===c.text?(d=a,a=O(a)):f("IMPOSSIBLE");return a}function E(a){var b=i().text,c=cc(b,e);return l(function(b,d,e){return c(e||a(b,d),d)},{assign:function(c,d,e){return _b(a(c,e),b,d)}})}function F(a){var b=t();return j("]"),l(function(d,e){var f,g,h=a(d,e),i=b(d,e);return h?(f=h[i],f&&f.then&&(g=f,"$$v"in f||(g.$$v=c,g.then(function(a){g.$$v=a})),f=f.$$v),f):c},{assign:function(c,d,e){return a(c,e)[b(c,e)]=d}})}function G(a,b){var c=[];if(")"!=g().text)do c.push(t());while(i(","));return j(")"),function(d,e){for(var f=[],g=b?b(d,e):d,h=0;h1;e++){var f=d.shift(),g=a[f];g||(g={},a[f]=g),a=g}return a[d.shift()]=c,c}function ac(a,b,c){if(!b)return a;for(var d,e=b.split("."),f=a,g=e.length,h=0;g>h;h++)d=e[h],a&&(a=(f=a)[d]);return!c&&y(a)?N(f,a):a}function bc(a,b,d,e,f){return function(g,h){var i,j=h&&h.hasOwnProperty(a)?h:g;return null===j||j===c?j:(j=j[a],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),b&&null!==j&&j!==c?(j=j[b],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),d&&null!==j&&j!==c?(j=j[d],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),e&&null!==j&&j!==c?(j=j[e],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),f&&null!==j&&j!==c?(j=j[f],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),j):j):j):j):j)}}function cc(a,b){if(Ed.hasOwnProperty(a))return Ed[a];var d,e=a.split("."),g=e.length;if(b)d=6>g?bc(e[0],e[1],e[2],e[3],e[4]):function(a,b){var d,f=0;do d=bc(e[f++],e[f++],e[f++],e[f++],e[f++])(a,b),b=c,a=d;while(g>f);return d};else{var h="var l, fn, p;\n";f(e,function(a,b){h+="if(s === null || s === undefined) return s;\nl=s;\ns="+(b?"s":'((k&&k.hasOwnProperty("'+a+'"))?k:s)')+'["'+a+'"];\nif (s && s.then) {\n if (!("$$v" in s)) {\n p=s;\n p.$$v = undefined;\n p.then(function(v) {p.$$v=v;});\n}\n s=s.$$v\n}\n'}),h+="return s;",d=Function("s","k",h),d.toString=function(){return h}}return Ed[a]=d}function dc(){var a={};this.$get=["$filter","$sniffer",function(b,c){return function(d){switch(typeof d){case"string":return a.hasOwnProperty(d)?a[d]:a[d]=$b(d,!1,b,c.csp);case"function":return d;default:return o}}}]}function ec(){this.$get=["$rootScope","$exceptionHandler",function(a,b){return fc(function(b){a.$evalAsync(b)},b)}]}function fc(a,b){function d(a){return a}function e(a){return j(a)}function g(a){var b=h(),c=0,d=x(a)?[]:{};return f(a,function(a,e){c++,i(a).then(function(a){d.hasOwnProperty(e)||(d[e]=a,--c||b.resolve(d))},function(a){d.hasOwnProperty(e)||b.reject(a)})}),0===c&&b.resolve(d),b.promise}var h=function(){var f,g,k=[];return g={resolve:function(b){if(k){var d=k;k=c,f=i(b),d.length&&a(function(){for(var a,b=0,c=d.length;c>b;b++)a=d[b],f.then(a[0],a[1])})}},reject:function(a){g.resolve(j(a))},promise:{then:function(a,c){var g=h(),i=function(c){try{g.resolve((a||d)(c))}catch(e){b(e),g.reject(e)}},j=function(a){try{g.resolve((c||e)(a))}catch(d){b(d),g.reject(d)}};return k?k.push([i,j]):f.then(i,j),g.promise},always:function(a){function b(a,b){var c=h();return b?c.resolve(a):c.reject(a),c.promise}function c(c,e){var f=null;try{f=(a||d)()}catch(g){return b(g,!1)}return f&&f.then?f.then(function(){return b(c,e)},function(a){return b(a,!1)}):b(c,e)}return this.then(function(a){return c(a,!0)},function(a){return c(a,!1)})}}}},i=function(b){return b&&b.then?b:{then:function(c){var d=h();return a(function(){d.resolve(c(b))}),d.promise}}},j=function(b){return{then:function(c,d){var f=h();return a(function(){f.resolve((d||e)(b))}),f.promise}}},k=function(c,f,g){var k,l=h(),m=function(a){try{return(f||d)(a)}catch(c){return b(c),j(c)}},n=function(a){try{return(g||e)(a)}catch(c){return b(c),j(c)}};return a(function(){i(c).then(function(a){k||(k=!0,l.resolve(i(a).then(m,n)))},function(a){k||(k=!0,l.resolve(n(a)))})}),l.promise};return{defer:h,reject:j,when:k,all:g}}function gc(){var a={};this.when=function(b,c){if(a[b]=l({reloadOnSearch:!0,caseInsensitiveMatch:!1},c),b){var d="/"==b[b.length-1]?b.substr(0,b.length-1):b+"/";a[d]={redirectTo:b}}return this},this.otherwise=function(a){return this.when(null,a),this},this.$get=["$rootScope","$location","$routeParams","$q","$injector","$http","$templateCache",function(b,c,d,e,g,h,i){function j(a,b,c){b="^"+b.replace(/[-\/\\^$:*+?.()|[\]{}]/g,"\\$&")+"$";for(var d,e="",g=[],h={},i=/\\([:*])(\w+)/g,j=0;null!==(d=i.exec(b));){switch(e+=b.slice(j,d.index),d[1]){case":":e+="([^\\/]*)";break;case"*":e+="(.*)"}g.push(d[2]),j=i.lastIndex}e+=b.substr(j);var k=a.match(new RegExp(e,c.caseInsensitiveMatch?"i":""));return k&&f(g,function(a,b){h[a]=k[b+1]}),k?h:null}function k(){var a=m(),j=q.current;a&&j&&a.$$route===j.$$route&&K(a.pathParams,j.pathParams)&&!a.reloadOnSearch&&!p?(j.params=a.params,I(j.params,d),b.$broadcast("$routeUpdate",j)):(a||j)&&(p=!1,b.$broadcast("$routeChangeStart",a,j),q.current=a,a&&a.redirectTo&&(u(a.redirectTo)?c.path(o(a.redirectTo,a.params)).search(a.params).replace():c.url(a.redirectTo(a.pathParams,c.path(),c.search())).replace()),e.when(a).then(function(){if(a){var b,c=l({},a.resolve);return f(c,function(a,b){c[b]=u(a)?g.get(a):g.invoke(a)}),s(b=a.template)?y(b)&&(b=b(a.params)):s(b=a.templateUrl)&&(y(b)&&(b=b(a.params)),s(b)&&(a.loadedTemplateUrl=b,b=h.get(b,{cache:i}).then(function(a){return a.data}))),s(b)&&(c.$template=b),e.all(c)}}).then(function(c){a==q.current&&(a&&(a.locals=c,I(a.params,d)),b.$broadcast("$routeChangeSuccess",a,j))},function(c){a==q.current&&b.$broadcast("$routeChangeError",a,j,c)}))}function m(){var b,d;return f(a,function(a,e){!d&&(b=j(c.path(),e,a))&&(d=n(a,{params:l({},c.search(),b),pathParams:b}),d.$$route=a)}),d||a[null]&&n(a[null],{params:{},pathParams:{}})}function o(a,b){var c=[];return f((a||"").split(":"),function(a,d){if(0==d)c.push(a);else{var e=a.match(/(\w+)(.*)/),f=e[1];c.push(b[f]),c.push(e[2]||""),delete b[f]}}),c.join("")}var p=!1,q={routes:a,reload:function(){p=!0,b.$evalAsync(k)}};return b.$on("$locationChangeSuccess",k),q}]}function hc(){this.$get=q({})}function ic(){var a=10;this.digestTtl=function(b){return arguments.length&&(a=b),a},this.$get=["$injector","$exceptionHandler","$parse",function(b,c,d){function f(){this.$id=j(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,this["this"]=this.$root=this,this.$$destroyed=!1,this.$$asyncQueue=[],this.$$listeners={},this.$$isolateBindings={}}function g(a){if(l.$$phase)throw Error(l.$$phase+" already in progress");l.$$phase=a}function h(){l.$$phase=null}function i(a,b){var c=d(a);return ab(c,b),c}function k(){}f.prototype={$new:function(a){var b,c;if(y(a))throw Error("API-CHANGE: Use $controller to instantiate controllers.");return a?(c=new f,c.$root=this.$root):(b=function(){},b.prototype=this,c=new b,c.$id=j()),c["this"]=c,c.$$listeners={},c.$parent=this,c.$$watchers=c.$$nextSibling=c.$$childHead=c.$$childTail=null,c.$$prevSibling=this.$$childTail,this.$$childHead?(this.$$childTail.$$nextSibling=c,this.$$childTail=c):this.$$childHead=this.$$childTail=c,c.$on("$destroy",function(){b&&(b.prototype=null),setTimeout(function(){c.__proto__={};for(var a in c)c[a]=null;return c=null,null})}),c},$watch:function(a,b,c){var d=this,e=i(a,"watch"),f=d.$$watchers,g={fn:b,last:k,get:e,exp:a,eq:!!c};if(!y(b)){var h=i(b||o,"listener");g.fn=function(a,b,c){h(c)}}if("string"==typeof a&&e.constant){var j=g.fn;g.fn=function(a,b,c){j.call(this,a,b,c),H(f,g)}}return f||(f=d.$$watchers=[]),f.unshift(g),function(){H(f,g)}},$watchCollection:function(a,b){function c(){h=k(i);var a,b;if(t(h))if(e(h)){g!==l&&(g=l,n=g.length=0,j++),a=h.length,n!==a&&(j++,g.length=n=a);for(var c=0;a>c;c++)g[c]!==h[c]&&(j++,g[c]=h[c])}else{g!==m&&(g=m={},n=0,j++),a=0;for(b in h)h.hasOwnProperty(b)&&(a++,g.hasOwnProperty(b)?g[b]!==h[b]&&(j++,g[b]=h[b]):(n++,g[b]=h[b],j++));if(n>a){j++;for(b in g)g.hasOwnProperty(b)&&!h.hasOwnProperty(b)&&(n--,delete g[b])}}else g!==h&&(g=h,j++);return j}function f(){b(h,g,i)}var g,h,i=this,j=0,k=d(a),l=[],m={},n=0;return this.$watch(c,f)},$digest:function(){var b,d,e,f,i,j,l,m,n,o,p=this.$$asyncQueue,q=a,r=this,s=[];g("$digest");do{for(j=!1,m=r;p.length;)try{m.$eval(p.shift())}catch(t){c(t)}do{if(f=m.$$watchers)for(i=f.length;i--;)try{b=f[i],(d=b.get(m))===(e=b.last)||(b.eq?K(d,e):"number"==typeof d&&"number"==typeof e&&isNaN(d)&&isNaN(e))||(j=!0,b.last=b.eq?I(d):d,b.fn(d,e===k?d:e,m),5>q&&(n=4-q,s[n]||(s[n]=[]),o=y(b.exp)?"fn: "+(b.exp.name||b.exp.toString()):b.exp,o+="; newVal: "+P(d)+"; oldVal: "+P(e),s[n].push(o)))}catch(t){c(t)}if(!(l=m.$$childHead||m!==r&&m.$$nextSibling))for(;m!==r&&!(l=m.$$nextSibling);)m=m.$parent}while(m=l);if(j&&!q--)throw h(),Error(a+" $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: "+P(s))}while(j||p.length);h()},$destroy:function(){if(l!=this&&!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy"),this.$$destroyed=!0,a.$$childHead==this&&(a.$$childHead=this.$$nextSibling),a.$$childTail==this&&(a.$$childTail=this.$$prevSibling),this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling),this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling),this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,a=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null}},$eval:function(a,b){return d(a)(this,b)},$evalAsync:function(a){this.$$asyncQueue.push(a)},$apply:function(a){try{return g("$apply"),this.$eval(a)}catch(b){c(b)}finally{h();try{l.$digest()}catch(b){throw c(b),b}}},$on:function(a,b){var c=this.$$listeners[a];return c||(this.$$listeners[a]=c=[]),c.push(b),function(){c[G(c,b)]=null}},$emit:function(a){var b,d,e,f=[],g=this,h=!1,i={name:a,targetScope:g,stopPropagation:function(){h=!0},preventDefault:function(){i.defaultPrevented=!0},defaultPrevented:!1},j=L([i],arguments,1);do{for(b=g.$$listeners[a]||f,i.currentScope=g,d=0,e=b.length;e>d;d++)if(b[d])try{if(b[d].apply(null,j),h)return i}catch(k){c(k)}else b.splice(d,1),d--,e--;g=g.$parent}while(g);return i},$broadcast:function(a){var b,d,e,f=this,g=f,h=f,i={name:a,targetScope:f,preventDefault:function(){i.defaultPrevented=!0},defaultPrevented:!1},j=L([i],arguments,1);do{for(g=h,i.currentScope=g,b=g.$$listeners[a]||[],d=0,e=b.length;e>d;d++)if(b[d])try{b[d].apply(null,j)}catch(k){c(k)}else b.splice(d,1),d--,e--;if(!(h=g.$$childHead||g!==f&&g.$$nextSibling))for(;g!==f&&!(h=g.$$nextSibling);)g=g.$parent}while(g=h);return i}};var l=new f;return l}]}function jc(){this.$get=["$window","$document",function(a,b){var c,d,e={},f=m((/android (\d+)/.exec(Tc((a.navigator||{}).userAgent))||[])[1]),g=b[0]||{},h=/^(Moz|webkit|O|ms)(?=[A-Z])/,i=g.body&&g.body.style,j=!1,k=!1;if(i){for(var l in i)if(d=h.exec(l)){c=d[0],c=c.substr(0,1).toUpperCase()+c.substr(1);break}j=!!("transition"in i||c+"Transition"in i),k=!!("animation"in i||c+"Animation"in i)}return{history:!(!a.history||!a.history.pushState||4>f),hashchange:"onhashchange"in a&&(!g.documentMode||g.documentMode>7),hasEvent:function(a){if("input"==a&&9==_c)return!1;if(r(e[a])){var b=g.createElement("div");e[a]="on"+a in b}return e[a]},csp:g.securityPolicy?g.securityPolicy.isActive:!1,vendorPrefix:c,transitions:j,animations:k}}]}function kc(){this.$get=q(a)}function lc(a){var b,c,d,e={};return a?(f(a.split("\n"),function(a){d=a.indexOf(":"),b=Tc(C(a.substr(0,d))),c=C(a.substr(d+1)),b&&(e[b]?e[b]+=", "+c:e[b]=c)}),e):e}function mc(a,b){var d=Fd.exec(a);if(null==d)return!0;var e={protocol:d[2],host:d[4],port:m(d[6])||Bd[d[2]]||null,relativeProtocol:d[2]===c||""===d[2]};d=zd.exec(b);var f={protocol:d[1],host:d[3],port:m(d[5])||Bd[d[1]]||null};return(e.protocol==f.protocol||e.relativeProtocol)&&e.host==f.host&&(e.port==f.port||e.relativeProtocol&&f.port==Bd[f.protocol])}function nc(a){var b=t(a)?a:c;return function(c){return b||(b=lc(a)),c?b[Tc(c)]||null:b}}function oc(a,b,c){return y(c)?c(a,b):(f(c,function(c){a=c(a,b)}),a)}function pc(a){return a>=200&&300>a}function qc(){var a=/^\s*(\[|\{[^\{])/,b=/[\}\]]\s*$/,d=/^\)\]\}',?\n/,e={"Content-Type":"application/json;charset=utf-8"},g=this.defaults={transformResponse:[function(c){return u(c)&&(c=c.replace(d,""),a.test(c)&&b.test(c)&&(c=Q(c,!0))),c}],transformRequest:[function(a){return t(a)&&!B(a)?P(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},post:e,put:e,patch:e},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},i=this.interceptors=[],j=this.responseInterceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(a,b,d,e,k,m){function n(a){function d(a){var b=l({},a,{data:oc(a.data,a.headers,e.transformResponse)});return pc(a.status)?b:k.reject(b)}var e={transformRequest:g.transformRequest,transformResponse:g.transformResponse},h={};l(e,a),e.headers=h,e.method=Uc(e.method),l(h,g.headers.common,g.headers[Tc(e.method)],a.headers);var i=mc(e.url,b.url())?b.cookies()[e.xsrfCookieName||g.xsrfCookieName]:c;i&&(h[e.xsrfHeaderName||g.xsrfHeaderName]=i);var j=function(a){var b=oc(a.data,nc(h),a.transformRequest);return r(a.data)&&delete h["Content-Type"],r(a.withCredentials)&&!r(g.withCredentials)&&(a.withCredentials=g.withCredentials),q(a,b,h).then(d,d)},m=[j,c],n=k.when(e);for(f(w,function(a){(a.request||a.requestError)&&m.unshift(a.request,a.requestError),(a.response||a.responseError)&&m.push(a.response,a.responseError)});m.length;){var o=m.shift(),p=m.shift();n=n.then(o,p)}return n.success=function(a){return n.then(function(b){a(b.data,b.status,b.headers,e)}),n},n.error=function(a){return n.then(null,function(b){a(b.data,b.status,b.headers,e)}),n},n}function o(){f(arguments,function(a){n[a]=function(b,c){return n(l(c||{},{method:a,url:b}))}})}function p(){f(arguments,function(a){n[a]=function(b,c,d){return n(l(d||{},{method:a,url:b,data:c}))}})}function q(b,c,d){function f(a,b,c){j&&(pc(a)?j.put(p,[a,b,lc(c)]):j.remove(p)),h(b,a,c),e.$$phase||e.$apply()}function h(a,c,d){c=Math.max(c,0),(pc(c)?m.resolve:m.reject)({data:a,status:c,headers:nc(d),config:b})}function i(){var a=G(n.pendingRequests,b);-1!==a&&n.pendingRequests.splice(a,1)}var j,l,m=k.defer(),o=m.promise,p=s(b.url,b.params);if(n.pendingRequests.push(b),o.then(i,i),(b.cache||g.cache)&&b.cache!==!1&&"GET"==b.method&&(j=t(b.cache)?b.cache:t(g.cache)?g.cache:v),j)if(l=j.get(p)){if(l.then)return l.then(i,i),l;x(l)?h(l[1],l[0],I(l[2])):h(l,200,{})}else j.put(p,o);return l||a(b.method,p,c,f,d,b.timeout,b.withCredentials,b.responseType),o}function s(a,b){if(!b)return a;var d=[];return h(b,function(a,b){null!=a&&a!=c&&(x(a)||(a=[a]),f(a,function(a){t(a)&&(a=P(a)),d.push(W(b)+"="+W(a))}))}),a+(-1==a.indexOf("?")?"?":"&")+d.join("&")}var v=d("$http"),w=[];return f(i,function(a){w.unshift(u(a)?m.get(a):m.invoke(a))}),f(j,function(a,b){var c=u(a)?m.get(a):m.invoke(a);w.splice(b,0,{response:function(a){return c(k.when(a))},responseError:function(a){return c(k.reject(a))}})}),n.pendingRequests=[],o("get","delete","head","jsonp"),p("post","put"),n.defaults=g,n}]}function rc(){this.$get=["$browser","$window","$document",function(a,b,c){return sc(a,Gd,a.defer,b.angular.callbacks,c[0],b.location.protocol.replace(":",""))}]}function sc(a,b,c,d,e,g){function h(a,b){var c=e.createElement("script"),d=function(){e.body.removeChild(c),b&&b()};return c.type="text/javascript",c.src=a,_c?c.onreadystatechange=function(){/loaded|complete/.test(c.readyState)&&d()}:c.onload=c.onerror=d,e.body.appendChild(c),d}return function(e,i,j,k,l,m,n,p){function q(){s=-1,u&&u(),v&&v.abort()}function r(b,d,e,f){var h=(i.match(zd)||["",g])[1];w&&c.cancel(w),u=v=null,d="file"==h?e?200:404:d,d=1223==d?204:d,b(d,e,f),a.$$completeOutstandingRequest(o)}var s;if(a.$$incOutstandingRequestCount(),i=i||a.url(),"jsonp"==Tc(e)){var t="_"+(d.counter++).toString(36);d[t]=function(a){d[t].data=a};var u=h(i.replace("JSON_CALLBACK","angular.callbacks."+t),function(){d[t].data?r(k,200,d[t].data):r(k,s||-2),delete d[t]})}else{var v=new b;v.open(e,i,!0),f(l,function(a,b){a&&v.setRequestHeader(b,a)}),v.onreadystatechange=function(){if(4==v.readyState){var a=v.getAllResponseHeaders(),b=["Cache-Control","Content-Language","Content-Type","Expires","Last-Modified","Pragma"];a||(a="",f(b,function(b){var c=v.getResponseHeader(b);c&&(a+=b+": "+c+"\n")})),r(k,s||v.status,v.responseType?v.response:v.responseText,a)}},n&&(v.withCredentials=!0),p&&(v.responseType=p),v.send(j||"")}if(m>0)var w=c(q,m);else m&&m.then&&m.then(q)}}function tc(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"¤",posSuf:"",negPre:"(¤",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(a){return 1===a?"one":"other"}}}}function uc(){this.$get=["$rootScope","$browser","$q","$exceptionHandler",function(a,b,c,d){function e(e,g,h){var i,j,k=c.defer(),l=k.promise,m=s(h)&&!h;return i=b.defer(function(){try{k.resolve(e())}catch(b){k.reject(b),d(b)}m||a.$apply()},g),j=function(){delete f[l.$$timeoutId]},l.$$timeoutId=i,f[i]=k,l.then(j,j),l}var f={};return e.cancel=function(a){return a&&a.$$timeoutId in f?(f[a.$$timeoutId].reject("canceled"),b.defer.cancel(a.$$timeoutId)):!1},e}]}function vc(a){function b(b,d){return a.factory(b+c,d)}var c="Filter";this.register=b,this.$get=["$injector",function(a){return function(b){return a.get(b+c)}}],b("currency",xc),b("date",Fc),b("filter",wc),b("json",Gc),b("limitTo",Hc),b("lowercase",Ld),b("number",yc),b("orderBy",Ic),b("uppercase",Md)}function wc(){return function(a,b,c){if(!x(a))return a;var d=[];switch(d.check=function(a){for(var b=0;b-1}}var e=function(a,b){if("string"==typeof b&&"!"===b.charAt(0))return!e(a,b.substr(1));switch(typeof a){case"boolean":case"number":case"string":return c(a,b);case"object":switch(typeof b){case"object":return c(a,b);default:for(var d in a)if("$"!==d.charAt(0)&&e(a[d],b))return!0}return!1;case"array":for(var f=0;fa;a=Math.abs(a);var g=a+"",h="",i=[],j=!1;if(-1!==g.indexOf("e")){var k=g.match(/([\d\.]+)e(-?)(\d+)/);k&&"-"==k[2]&&k[3]>e+1?g="0":(h=g,j=!0)}if(!j){var l=(g.split(Hd)[1]||"").length;r(e)&&(e=Math.min(Math.max(b.minFrac,l),b.maxFrac));var m=Math.pow(10,e);a=Math.round(a*m)/m;var n=(""+a).split(Hd),o=n[0];n=n[1]||"";var p=0,q=b.lgSize,s=b.gSize;if(o.length>=q+s){p=o.length-q;for(var t=0;p>t;t++)(p-t)%s===0&&0!==t&&(h+=c),h+=o.charAt(t)}for(t=p;ta&&(d="-",a=-a),a=""+a;a.length0||f>-c)&&(f+=c),0===f&&-12==c&&(f=12),Ac(f,b,d)}}function Cc(a,b){return function(c,d){var e=c["get"+a](),f=Uc(b?"SHORT"+a:a);return d[f][e]}}function Dc(a){var b=-1*a.getTimezoneOffset(),c=b>=0?"+":"";return c+=Ac(Math[b>0?"floor":"ceil"](b/60),2)+Ac(Math.abs(b%60),2)}function Ec(a,b){return a.getHours()<12?b.AMPMS[0]:b.AMPMS[1]}function Fc(a){function b(a){var b;if(b=a.match(c)){var d=new Date(0),e=0,f=0,g=b[8]?d.setUTCFullYear:d.setFullYear,h=b[8]?d.setUTCHours:d.setHours;b[9]&&(e=m(b[9]+b[10]),f=m(b[9]+b[11])),g.call(d,m(b[1]),m(b[2])-1,m(b[3]));var i=m(b[4]||0)-e,j=m(b[5]||0)-f,k=m(b[6]||0),l=Math.round(1e3*parseFloat("0."+(b[7]||0)));return h.call(d,i,j,k,l),d}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,d){var e,g,h="",i=[];if(d=d||"mediumDate",d=a.DATETIME_FORMATS[d]||d,u(c)&&(c=Kd.test(c)?m(c):b(c)),v(c)&&(c=new Date(c)),!w(c))return c;for(;d;)g=Jd.exec(d),g?(i=L(i,g,1),d=i.pop()):(i.push(d),d=null);return f(i,function(b){e=Id[b],h+=e?e(c,a.DATETIME_FORMATS):b.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),h}}function Gc(){return function(a){return P(a,!0)}}function Hc(){return function(a,b){if(!x(a)&&!u(a))return a;if(b=m(b),u(a))return b?b>=0?a.slice(0,b):a.slice(b,a.length):"";var c,d,e=[];for(b>a.length?b=a.length:b<-a.length&&(b=-a.length),b>0?(c=0,d=b):(c=a.length+b,d=a.length);d>c;c++)e.push(a[c]);return e}}function Ic(a){return function(b,c,d){function e(a,b){for(var d=0;da?-1:1):d>c?-1:1}if(!x(b))return b;if(!c)return b;c=x(c)?c:[c],c=E(c,function(b){var c=!1,d=b||p;return u(b)&&(("+"==b.charAt(0)||"-"==b.charAt(0))&&(c="-"==b.charAt(0),b=b.substring(1)),d=a(b)),f(function(a,b){return g(d(a),d(b))},c)});for(var h=[],i=0;i15&&19>b||b>=37&&40>=b||j()}),b.bind("change",h),f.hasEvent("paste")&&b.bind("paste cut",j)}e.$render=function(){b.val(Lc(e.$viewValue)?"":e.$viewValue)};var k,l,n=d.ngPattern,o=function(a,b){return Lc(b)||a.test(b)?(e.$setValidity("pattern",!0),b):(e.$setValidity("pattern",!1),c)};if(n&&(l=n.match(/^\/(.*)\/([gim]*)$/),l?(n=new RegExp(l[1],l[2]),k=function(a){return o(n,a)}):k=function(b){var c=a.$eval(n);if(!c||!c.test)throw new Error("Expected "+n+" to be a RegExp but was "+c);return o(c,b)},e.$formatters.push(k),e.$parsers.push(k)),d.ngMinlength){var p=m(d.ngMinlength),q=function(a){return!Lc(a)&&a.lengthr?(e.$setValidity("maxlength",!1),c):(e.$setValidity("maxlength",!0),a)};e.$parsers.push(s),e.$formatters.push(s)}}function Nc(a,b,d,e,f,g){if(Mc(a,b,d,e,f,g),e.$parsers.push(function(a){var b=Lc(a);return b||Vd.test(a)?(e.$setValidity("number",!0),""===a?null:b?a:parseFloat(a)):(e.$setValidity("number",!1),c)}),e.$formatters.push(function(a){return Lc(a)?"":""+a}),d.min){var h=parseFloat(d.min),i=function(a){return!Lc(a)&&h>a?(e.$setValidity("min",!1),c):(e.$setValidity("min",!0),a)};e.$parsers.push(i),e.$formatters.push(i)}if(d.max){var j=parseFloat(d.max),k=function(a){return!Lc(a)&&a>j?(e.$setValidity("max",!1),c):(e.$setValidity("max",!0),a)};e.$parsers.push(k),e.$formatters.push(k)}e.$formatters.push(function(a){return Lc(a)||v(a)?(e.$setValidity("number",!0),a):(e.$setValidity("number",!1),c)})}function Oc(a,b,d,e,f,g){Mc(a,b,d,e,f,g);var h=function(a){return Lc(a)||Td.test(a)?(e.$setValidity("url",!0),a):(e.$setValidity("url",!1),c)};e.$formatters.push(h),e.$parsers.push(h)}function Pc(a,b,d,e,f,g){Mc(a,b,d,e,f,g);var h=function(a){return Lc(a)||Ud.test(a)?(e.$setValidity("email",!0),a):(e.$setValidity("email",!1),c)};e.$formatters.push(h),e.$parsers.push(h)}function Qc(a,b,c,d){r(c.name)&&b.attr("name",j()),b.bind("click",function(){b[0].checked&&a.$apply(function(){d.$setViewValue(c.value)})}),d.$render=function(){var a=c.value;b[0].checked=a==d.$viewValue},c.$observe("value",d.$render)}function Rc(a,b,c,d){var e=c.ngTrueValue,f=c.ngFalseValue;u(e)||(e=!0),u(f)||(f=!1),b.bind("click",function(){a.$apply(function(){d.$setViewValue(b[0].checked)})}),d.$render=function(){b[0].checked=d.$viewValue},d.$formatters.push(function(a){return a===e}),d.$parsers.push(function(a){return a?e:f})}function Sc(a,b){return a="ngClass"+a,Jc(function(d,e,f){function g(a){(b===!0||d.$index%2===b)&&(j&&!K(a,j)&&h(j),i(a)),j=I(a)}function h(a){t(a)&&!x(a)&&(a=E(a,function(a,b){return a?b:void 0})),e.removeClass(x(a)?a.join(" "):a)}function i(a){t(a)&&!x(a)&&(a=E(a,function(a,b){return a?b:void 0})),a&&e.addClass(x(a)?a.join(" "):a)}var j=c;d.$watch(f[a],g,!0),f.$observe("class",function(){var b=d.$eval(f[a]);g(b,b)}),"ngClass"!==a&&d.$watch("$index",function(c,e){var g=1&c;g!==e&1&&(g===b?i(d.$eval(f[a])):h(d.$eval(f[a])))})})}var Tc=function(a){return u(a)?a.toLowerCase():a},Uc=function(a){return u(a)?a.toUpperCase():a},Vc=function(a){return u(a)?a.replace(/[A-Z]/g,function(a){return String.fromCharCode(32|a.charCodeAt(0)) -}):a},Wc=function(a){return u(a)?a.replace(/[a-z]/g,function(a){return String.fromCharCode(-33&a.charCodeAt(0))}):a};"i"!=="I".toLowerCase()&&(Tc=Vc,Uc=Wc);var Xc,Yc,Zc,$c,_c=m((/msie (\d+)/.exec(Tc(navigator.userAgent))||[])[1]),ad=[].slice,bd=[].push,cd=Object.prototype.toString,dd=a.angular,ed=a.angular||(a.angular={}),fd=["0","0","0"];o.$inject=[],p.$inject=[],$c=9>_c?function(a){return a=a.nodeName?a:a[0],a.scopeName&&"HTML"!=a.scopeName?Uc(a.scopeName+":"+a.nodeName):a.nodeName}:function(a){return a.nodeName?a.nodeName:a[0].nodeName};var gd=/[A-Z]/g,hd={full:"1.1.5",major:1,minor:1,dot:5,codeName:"triangle-squarification"},id=gb.cache={},jd=gb.expando="ng-"+(new Date).getTime(),kd=1,ld=a.document.addEventListener?function(a,b,c){a.addEventListener(b,c,!1)}:function(a,b,c){a.attachEvent("on"+b,c)},md=a.document.removeEventListener?function(a,b,c){a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent("on"+b,c)},nd=/([\:\-\_]+(.))/g,od=/^moz([A-Z])/,pd=gb.prototype={ready:function(c){function d(){e||(e=!0,c())}var e=!1;"complete"===b.readyState?setTimeout(d):(this.bind("DOMContentLoaded",d),gb(a).bind("load",d))},toString:function(){var a=[];return f(this,function(b){a.push(""+b)}),"["+a.join(", ")+"]"},eq:function(a){return Xc(a>=0?this[a]:this[this.length+a])},length:0,push:bd,sort:[].sort,splice:[].splice},qd={};f("multiple,selected,checked,disabled,readOnly,required,open".split(","),function(a){qd[Tc(a)]=a});var rd={};f("input,select,option,textarea,button,form,details".split(","),function(a){rd[Uc(a)]=!0}),f({data:mb,inheritedData:sb,scope:function(a){return sb(a,"$scope")},controller:rb,injector:function(a){return sb(a,"$injector")},removeAttr:function(a,b){a.removeAttribute(b)},hasClass:nb,css:function(a,b,d){if(b=eb(b),!s(d)){var e;return 8>=_c&&(e=a.currentStyle&&a.currentStyle[b],""===e&&(e="auto")),e=e||a.style[b],8>=_c&&(e=""===e?c:e),e}a.style[b]=d},attr:function(a,b,d){var e=Tc(b);if(qd[e]){if(!s(d))return a[b]||(a.attributes.getNamedItem(b)||o).specified?e:c;d?(a[b]=!0,a.setAttribute(b,e)):(a[b]=!1,a.removeAttribute(e))}else if(s(d))a.setAttribute(b,d);else if(a.getAttribute){var f=a.getAttribute(b,2);return null===f?c:f}},prop:function(a,b,c){return s(c)?void(a[b]=c):a[b]},text:l(9>_c?function(a,b){if(1==a.nodeType){if(r(b))return a.innerText;a.innerText=b}else{if(r(b))return a.nodeValue;a.nodeValue=b}}:function(a,b){return r(b)?a.textContent:void(a.textContent=b)},{$dv:""}),val:function(a,b){return r(b)?a.value:void(a.value=b)},html:function(a,b){if(r(b))return a.innerHTML;for(var c=0,d=a.childNodes;c0||parseFloat(p[c+h])>0)&&(f=a,k=c,o=Math.max(parseInt(p[f+j])||0,parseInt(p[k+j])||0,o));var q=Math.max(n(p[f+i]),n(p[k+i])),r=Math.max(n(p[f+h]),n(p[k+h]));l=Math.max(q+o*r,l)}}),d.setTimeout(q,1e3*l)}else q()}function q(){q.run||(q.run=!0,j(k,l,m),k.removeClass(s),k.removeClass(A),k.removeData(a))}var r=b.$eval(g.ngAnimate),s=r?t(r)?r[h]:r+"-"+h:"",v=c(s),w=v&&v.setup,x=v&&v.start,z=v&&v.cancel;if(s){var A=s+"-active";if(l||(l=m?m.parent():k.parent()),!e.transitions&&!w&&!x||(l.inheritedData(a)||o).running)return i(k,l,m),void j(k,l,m);var B=k.data(a)||{};if(B.running&&((z||o)(k),B.done()),k.data(a,{running:!0,done:q}),k.addClass(s),i(k,l,m),0==k.length)return q();var C=(w||o)(k);d.setTimeout(p,1)}else i(k,l,m),j(k,l,m)}}function i(a){a.css("display","")}function j(a){a.css("display","none")}function k(a,b,c){c?c.after(a):b.append(a)}function l(a){a.remove()}function m(a,b,c){k(a,b,c)}var n={};return n.enter=h("enter",k,o),n.leave=h("leave",o,l),n.move=h("move",m,o),n.show=h("show",i,o),n.hide=h("hide",o,j),n.animate=function(a,b){h(a,o,o)(b)},n};return h.enabled=function(a){return arguments.length&&(b.running=!a),!b.running},h}]},xd="Non-assignable model expression: ";Fb.$inject=["$provide"];var yd=/^(x[\:\-_]|data[\:\-_])/i,zd=/^([^:]+):\/\/(\w+:{0,1}\w*@)?(\{?[\w\.-]*\}?)(:([0-9]+))?(\/[^\?#]*)?(\?([^#]*))?(#(.*))?$/,Ad=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,Bd={http:80,https:443,ftp:21};Ub.prototype=Tb.prototype=Sb.prototype={$$replace:!1,absUrl:Vb("$$absUrl"),url:function(a,b){if(r(a))return this.$$url;var c=Ad.exec(a);return c[1]&&this.path(decodeURIComponent(c[1])),(c[2]||c[1])&&this.search(c[3]||""),this.hash(c[5]||"",b),this},protocol:Vb("$$protocol"),host:Vb("$$host"),port:Vb("$$port"),path:Wb("$$path",function(a){return"/"==a.charAt(0)?a:"/"+a}),search:function(a,b){return r(a)?this.$$search:(s(b)?null===b?delete this.$$search[a]:this.$$search[a]=b:this.$$search=u(a)?T(a):a,this.$$compose(),this)},hash:Wb("$$hash",p),replace:function(){return this.$$replace=!0,this}};var Cd={"null":function(){return null},"true":function(){return!0},"false":function(){return!1},undefined:o,"+":function(a,b,d,e){return d=d(a,b),e=e(a,b),s(d)?s(e)?d+e:d:s(e)?e:c},"-":function(a,b,c,d){return c=c(a,b),d=d(a,b),(s(c)?c:0)-(s(d)?d:0)},"*":function(a,b,c,d){return c(a,b)*d(a,b)},"/":function(a,b,c,d){return c(a,b)/d(a,b)},"%":function(a,b,c,d){return c(a,b)%d(a,b)},"^":function(a,b,c,d){return c(a,b)^d(a,b)},"=":o,"===":function(a,b,c,d){return c(a,b)===d(a,b)},"!==":function(a,b,c,d){return c(a,b)!==d(a,b)},"==":function(a,b,c,d){return c(a,b)==d(a,b)},"!=":function(a,b,c,d){return c(a,b)!=d(a,b)},"<":function(a,b,c,d){return c(a,b)":function(a,b,c,d){return c(a,b)>d(a,b)},"<=":function(a,b,c,d){return c(a,b)<=d(a,b)},">=":function(a,b,c,d){return c(a,b)>=d(a,b)},"&&":function(a,b,c,d){return c(a,b)&&d(a,b)},"||":function(a,b,c,d){return c(a,b)||d(a,b)},"&":function(a,b,c,d){return c(a,b)&d(a,b)},"|":function(a,b,c,d){return d(a,b)(a,b,c(a,b))},"!":function(a,b,c){return!c(a,b)}},Dd={n:"\n",f:"\f",r:"\r",t:" ",v:" ","'":"'",'"':'"'},Ed={},Fd=/^(([^:]+):)?\/\/(\w+:{0,1}\w*@)?([\w\.-]*)?(:([0-9]+))?(.*)$/,Gd=a.XMLHttpRequest||function(){try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(b){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(c){}throw new Error("This browser does not support XMLHttpRequest.")};vc.$inject=["$provide"],xc.$inject=["$locale"],yc.$inject=["$locale"];var Hd=".",Id={yyyy:Bc("FullYear",4),yy:Bc("FullYear",2,0,!0),y:Bc("FullYear",1),MMMM:Cc("Month"),MMM:Cc("Month",!0),MM:Bc("Month",2,1),M:Bc("Month",1,1),dd:Bc("Date",2),d:Bc("Date",1),HH:Bc("Hours",2),H:Bc("Hours",1),hh:Bc("Hours",2,-12),h:Bc("Hours",1,-12),mm:Bc("Minutes",2),m:Bc("Minutes",1),ss:Bc("Seconds",2),s:Bc("Seconds",1),sss:Bc("Milliseconds",3),EEEE:Cc("Day"),EEE:Cc("Day",!0),a:Ec,Z:Dc},Jd=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,Kd=/^\d+$/;Fc.$inject=["$locale"];var Ld=q(Tc),Md=q(Uc);Ic.$inject=["$parse"];var Nd=q({restrict:"E",compile:function(a,c){return 8>=_c&&(c.href||c.name||c.$set("href",""),a.append(b.createComment("IE fix"))),function(a,b){b.bind("click",function(a){b.attr("href")||a.preventDefault()})}}}),Od={};f(qd,function(a,b){var c=Gb("ng-"+b);Od[c]=function(){return{priority:100,compile:function(){return function(a,d,e){a.$watch(e[c],function(a){e.$set(b,!!a)})}}}}}),f(["src","srcset","href"],function(a){var b=Gb("ng-"+a);Od[b]=function(){return{priority:99,link:function(c,d,e){e.$observe(b,function(b){b&&(e.$set(a,b),_c&&d.prop(a,e[a]))})}}}});var Pd={$addControl:o,$removeControl:o,$setValidity:o,$setDirty:o,$setPristine:o};Kc.$inject=["$element","$attrs","$scope"];var Qd=function(a){return["$timeout",function(b){var d={name:"form",restrict:"E",controller:Kc,compile:function(){return{pre:function(a,d,e,f){if(!e.action){var g=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1};ld(d[0],"submit",g),d.bind("$destroy",function(){b(function(){md(d[0],"submit",g)},0,!1)})}var h=d.parent().controller("form"),i=e.name||e.ngForm;i&&(a[i]=f),h&&d.bind("$destroy",function(){h.$removeControl(f),i&&(a[i]=c),l(f,Pd)})}}}};return a?l(I(d),{restrict:"EAC"}):d}]},Rd=Qd(),Sd=Qd(!0),Td=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,Ud=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/,Vd=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,Wd={text:Mc,number:Nc,url:Oc,email:Pc,radio:Qc,checkbox:Rc,hidden:o,button:o,submit:o,reset:o},Xd=["$browser","$sniffer",function(a,b){return{restrict:"E",require:"?ngModel",link:function(c,d,e,f){f&&(Wd[Tc(e.type)]||Wd.text)(c,d,e,f,b,a)}}}],Yd="ng-valid",Zd="ng-invalid",$d="ng-pristine",_d="ng-dirty",ae=["$scope","$exceptionHandler","$attrs","$element","$parse",function(a,b,c,d,e){function g(a,b){b=b?"-"+Z(b,"-"):"",d.removeClass((a?Zd:Yd)+b).addClass((a?Yd:Zd)+b)}this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$name=c.name;var h=e(c.ngModel),i=h.assign;if(!i)throw Error(xd+c.ngModel+" ("+S(d)+")");this.$render=o;var j=d.inheritedData("$formController")||Pd,k=0,l=this.$error={};d.addClass($d),g(!0),this.$setValidity=function(a,b){l[a]!==!b&&(b?(l[a]&&k--,k||(g(!0),this.$valid=!0,this.$invalid=!1)):(g(!1),this.$invalid=!0,this.$valid=!1,k++),l[a]=!b,g(b,a),j.$setValidity(a,b,this))},this.$setPristine=function(){this.$dirty=!1,this.$pristine=!0,d.removeClass(_d).addClass($d)},this.$setViewValue=function(c){this.$viewValue=c,this.$pristine&&(this.$dirty=!0,this.$pristine=!1,d.removeClass($d).addClass(_d),j.$setDirty()),f(this.$parsers,function(a){c=a(c)}),this.$modelValue!==c&&(this.$modelValue=c,i(a,c),f(this.$viewChangeListeners,function(a){try{a()}catch(c){b(c)}}))};var m=this;a.$watch(function(){var b=h(a);if(m.$modelValue!==b){var c=m.$formatters,d=c.length;for(m.$modelValue=b;d--;)b=c[d](b);m.$viewValue!==b&&(m.$viewValue=b,m.$render())}})}],be=function(){return{require:["ngModel","^?form"],controller:ae,link:function(a,b,c,d){var e=d[0],f=d[1]||Pd;f.$addControl(e),b.bind("$destroy",function(){f.$removeControl(e)})}}},ce=q({require:"ngModel",link:function(a,b,c,d){d.$viewChangeListeners.push(function(){a.$eval(c.ngChange)})}}),de=function(){return{require:"?ngModel",link:function(a,b,c,d){if(d){c.required=!0;var e=function(a){return c.required&&(Lc(a)||a===!1)?void d.$setValidity("required",!1):(d.$setValidity("required",!0),a)};d.$formatters.push(e),d.$parsers.unshift(e),c.$observe("required",function(){e(d.$viewValue)})}}}},ee=function(){return{require:"ngModel",link:function(a,b,d,e){var g=/\/(.*)\//.exec(d.ngList),h=g&&new RegExp(g[1])||d.ngList||",",i=function(a){var b=[];return a&&f(a.split(h),function(a){a&&b.push(C(a))}),b};e.$parsers.push(i),e.$formatters.push(function(a){return x(a)?a.join(", "):c})}}},fe=/^(true|false|\d+)$/,ge=function(){return{priority:100,compile:function(a,b){return fe.test(b.ngValue)?function(a,b,c){c.$set("value",a.$eval(c.ngValue))}:function(a,b,c){a.$watch(c.ngValue,function(a){c.$set("value",a,!1)})}}}},he=Jc(function(a,b,d){b.addClass("ng-binding").data("$binding",d.ngBind),a.$watch(d.ngBind,function(a){b.text(a==c?"":a)})}),ie=["$interpolate",function(a){return function(b,c,d){var e=a(c.attr(d.$attr.ngBindTemplate));c.addClass("ng-binding").data("$binding",e),d.$observe("ngBindTemplate",function(a){c.text(a)})}}],je=[function(){return function(a,b,c){b.addClass("ng-binding").data("$binding",c.ngBindHtmlUnsafe),a.$watch(c.ngBindHtmlUnsafe,function(a){b.html(a||"")})}}],ke=Sc("",!0),le=Sc("Odd",0),me=Sc("Even",1),ne=Jc({compile:function(a,b){b.$set("ngCloak",c),a.removeClass("ng-cloak")}}),oe=[function(){return{scope:!0,controller:"@"}}],pe=["$sniffer",function(a){return{priority:1e3,compile:function(){a.csp=!0}}}],qe={};f("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress".split(" "),function(a){var b=Gb("ng-"+a);qe[b]=["$parse",function(c){return function(d,e,f){var g=c(f[b]);e.bind(Tc(a),function(a){d.$apply(function(){g(d,{$event:a})})})}}]});var re=Jc(function(a,b,c){b.bind("submit",function(){a.$apply(c.ngSubmit)})}),se=["$animator",function(a){return{transclude:"element",priority:1e3,terminal:!0,restrict:"A",compile:function(b,d,e){return function(b,d,f){var g,h,i=a(b,f);b.$watch(f.ngIf,function(a){g&&(i.leave(g),g=c),h&&(h.$destroy(),h=c),R(a)&&(h=b.$new(),e(h,function(a){g=a,i.enter(a,d.parent(),d)}))})}}}}],te=["$http","$templateCache","$anchorScroll","$compile","$animator",function(a,b,c,d,e){return{restrict:"ECA",terminal:!0,compile:function(f,g){var h=g.ngInclude||g.src,i=g.onload||"",j=g.autoscroll;return function(f,g,k){var l,m=e(f,k),n=0,o=function(){l&&(l.$destroy(),l=null),m.leave(g.contents(),g)};f.$watch(h,function(e){var h=++n;e?(a.get(e,{cache:b}).success(function(a){if(h===n){l&&l.$destroy(),l=f.$new(),m.leave(g.contents(),g);var b=Xc("
").html(a).contents();m.enter(b,g),d(b)(l),!s(j)||j&&!f.$eval(j)||c(),l.$emit("$includeContentLoaded"),f.$eval(i)}}).error(function(){h===n&&o()}),f.$emit("$includeContentRequested")):o()})}}}}],ue=Jc({compile:function(){return{pre:function(a,b,c){a.$eval(c.ngInit)}}}}),ve=Jc({terminal:!0,priority:1e3}),we=["$locale","$interpolate",function(a,b){var c=/{}/g;return{restrict:"EA",link:function(d,e,g){var h=g.count,i=e.attr(g.$attr.when),j=g.offset||0,k=d.$eval(i),l={},m=b.startSymbol(),n=b.endSymbol();f(k,function(a,d){l[d]=b(a.replace(c,m+h+"-"+j+n))}),d.$watch(function(){var b=parseFloat(d.$eval(h));return isNaN(b)?"":(b in k||(b=a.pluralCat(b-j)),l[b](d,e,!0))},function(a){e.text(a)})}}}],xe=["$parse","$animator",function(a,b){var c="$$NG_REMOVED";return{transclude:"element",priority:1e3,terminal:!0,compile:function(d,g,h){return function(d,g,i){var j,k,l,m,n,o,p,q=b(d,i),r=i.ngRepeat,s=r.match(/^\s*(.+)\s+in\s+(.*?)\s*(\s+track\s+by\s+(.+)\s*)?$/),t={$id:vb};if(!s)throw Error("Expected ngRepeat in form of '_item_ in _collection_[ track by _id_]' but got '"+r+"'.");if(m=s[1],n=s[2],j=s[4],j?(k=a(j),l=function(a,b,c){return p&&(t[p]=a),t[o]=b,t.$index=c,k(d,t)}):l=function(a,b){return vb(b)},s=m.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/),!s)throw Error("'item' in 'item in collection' should be identifier or (key, value) but got '"+m+"'.");o=s[3]||s[1],p=s[2];var u={};d.$watchCollection(n,function(a){var b,i,j,k,m,n,s,t,v,w,x=g,y={},z=[];if(e(a))v=a;else{v=[];for(n in a)a.hasOwnProperty(n)&&"$"!=n.charAt(0)&&v.push(n);v.sort()}for(k=v.length,i=z.length=v.length,b=0;i>b;b++)if(n=a===v?b:v[b],s=a[n],t=l(n,s,b),u.hasOwnProperty(t))w=u[t],delete u[t],y[t]=w,z[b]=w;else{if(y.hasOwnProperty(t))throw f(z,function(a){a&&a.element&&(u[a.id]=a)}),new Error("Duplicates in a repeater are not allowed. Repeater: "+r+" key: "+t);z[b]={id:t},y[t]=!1}for(n in u)u.hasOwnProperty(n)&&(w=u[n],q.leave(w.element),w.element[0][c]=!0,w.scope.$destroy());for(b=0,i=v.length;i>b;b++){if(n=a===v?b:v[b],s=a[n],w=z[b],w.element){m=w.scope,j=x[0];do j=j.nextSibling;while(j&&j[c]);w.element[0]==j?x=w.element:(q.move(w.element,null,x),x=w.element)}else m=d.$new();m[o]=s,p&&(m[p]=n),m.$index=b,m.$first=0===b,m.$last=b===k-1,m.$middle=!(m.$first||m.$last),w.element||h(m,function(a){q.enter(a,null,x),x=a,w.scope=m,w.element=a,y[w.id]=w})}u=y})}}}}],ye=["$animator",function(a){return function(b,c,d){var e=a(b,d);b.$watch(d.ngShow,function(a){e[R(a)?"show":"hide"](c)})}}],ze=["$animator",function(a){return function(b,c,d){var e=a(b,d);b.$watch(d.ngHide,function(a){e[R(a)?"hide":"show"](c)})}}],Ae=Jc(function(a,b,c){a.$watch(c.ngStyle,function(a,c){c&&a!==c&&f(c,function(a,c){b.css(c,"")}),a&&b.css(a)},!0)}),Be=["$animator",function(a){return{restrict:"EA",require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(b,c,d,e){var g,h,i=a(b,d),j=d.ngSwitch||d.on,k=[];b.$watch(j,function(a){for(var c=0,j=k.length;j>c;c++)k[c].$destroy(),i.leave(h[c]);h=[],k=[],(g=e.cases["!"+a]||e.cases["?"])&&(b.$eval(d.change),f(g,function(a){var c=b.$new();k.push(c),a.transclude(c,function(b){var c=a.element;h.push(b),i.enter(b,c.parent(),c)})}))})}}}],Ce=Jc({transclude:"element",priority:500,require:"^ngSwitch",compile:function(a,b,c){return function(a,d,e,f){f.cases["!"+b.ngSwitchWhen]=f.cases["!"+b.ngSwitchWhen]||[],f.cases["!"+b.ngSwitchWhen].push({transclude:c,element:d})}}}),De=Jc({transclude:"element",priority:500,require:"^ngSwitch",compile:function(a,b,c){return function(a,b,d,e){e.cases["?"]=e.cases["?"]||[],e.cases["?"].push({transclude:c,element:b})}}}),Ee=Jc({controller:["$transclude","$element",function(a,b){a(function(a){b.append(a)})}]}),Fe=["$http","$templateCache","$route","$anchorScroll","$compile","$controller","$animator",function(a,b,c,d,e,f,g){return{restrict:"ECA",terminal:!0,link:function(a,b,h){function i(){l&&(l.$destroy(),l=null)}function j(){n.leave(b.contents(),b),i()}function k(){var g=c.current&&c.current.locals,h=g&&g.$template;if(h){j();var i=Xc("
").html(h).contents();n.enter(i,b);var k,o=e(i),p=c.current;l=p.scope=a.$new(),p.controller&&(g.$scope=l,k=f(p.controller,g),p.controllerAs&&(l[p.controllerAs]=k),b.children().data("$ngControllerController",k)),o(l),l.$emit("$viewContentLoaded"),l.$eval(m),d()}else j()}var l,m=h.onload||"",n=g(a,h);a.$on("$routeChangeSuccess",k),k()}}}],Ge=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(b,c){if("text/ng-template"==c.type){var d=c.id,e=b[0].text;a.put(d,e)}}}}],He=q({terminal:!0}),Ie=["$compile","$parse",function(a,d){var e=/^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+group\s+by\s+(.*))?\s+for\s+(?:([\$\w][\$\w\d]*)|(?:\(\s*([\$\w][\$\w\d]*)\s*,\s*([\$\w][\$\w\d]*)\s*\)))\s+in\s+(.*?)(?:\s+track\s+by\s+(.*?))?$/,h={$setViewValue:o};return{restrict:"E",require:["select","?ngModel"],controller:["$element","$scope","$attrs",function(a,b,c){var d,e,f=this,g={},i=h;f.databound=c.ngModel,f.init=function(a,b,c){i=a,d=b,e=c},f.addOption=function(b){g[b]=!0,i.$viewValue==b&&(a.val(b),e.parent()&&e.remove())},f.removeOption=function(a){this.hasOption(a)&&(delete g[a],i.$viewValue==a&&this.renderUnknownOption(a))},f.renderUnknownOption=function(b){var c="? "+vb(b)+" ?";e.val(c),a.prepend(e),a.val(c),e.prop("selected",!0)},f.hasOption=function(a){return g.hasOwnProperty(a)},b.$on("$destroy",function(){f.renderUnknownOption=o})}],link:function(h,i,j,k){function l(a,b,c,d){c.$render=function(){var a=c.$viewValue;d.hasOption(a)?(z.parent()&&z.remove(),b.val(a),""===a&&o.prop("selected",!0)):r(a)&&o?b.val(""):d.renderUnknownOption(a)},b.bind("change",function(){a.$apply(function(){z.parent()&&z.remove(),c.$setViewValue(b.val())})})}function m(a,b,c){var d;c.$render=function(){var a=new wb(c.$viewValue);f(b.find("option"),function(b){b.selected=s(a.get(b.value))})},a.$watch(function(){K(d,c.$viewValue)||(d=I(c.$viewValue),c.$render())}),b.bind("change",function(){a.$apply(function(){var a=[];f(b.find("option"),function(b){b.selected&&a.push(b.value)}),c.$setViewValue(a)})})}function n(b,f,h){function i(){var a,d,e,i,j,q,u,z,A,B,C,D,E,F,G={"":[]},H=[""],I=h.$modelValue,J=p(b)||[],K=m?g(J):J,L={},M=!1;if(t)if(r&&x(I)){M=new wb([]);for(var N=0;NB;B++){if(L[l]=J[m?L[m]=K[B]:B],a=n(b,L)||"",(d=G[a])||(d=G[a]=[],H.push(a)),t)C=M.remove(r?r(b,L):o(b,L))!=c;else{if(r){var O={};O[l]=I,C=r(b,O)===r(b,L)}else C=I===o(b,L);M=M||C}F=k(b,L),F=F===c?"":F,d.push({id:r?r(b,L):m?K[B]:B,label:F,selected:C})}for(t||(v||null===I?G[""].unshift({id:"",label:"",selected:!M}):M||G[""].unshift({id:"?",label:"",selected:!0})),A=0,u=H.length;u>A;A++){for(a=H[A],d=G[a],s.length<=A?(i={element:y.clone().attr("label",a),label:d.label},j=[i],s.push(j),f.append(i.element)):(j=s[A],i=j[0],i.label!=a&&i.element.attr("label",i.label=a)),D=null,B=0,z=d.length;z>B;B++)e=d[B],(q=j[B+1])?(D=q.element,q.label!==e.label&&D.text(q.label=e.label),q.id!==e.id&&D.val(q.id=e.id),D[0].selected!==e.selected&&D.prop("selected",q.selected=e.selected)):(""===e.id&&v?E=v:(E=w.clone()).val(e.id).attr("selected",e.selected).text(e.label),j.push(q={element:E,label:e.label,id:e.id,selected:e.selected}),D?D.after(E):i.element.append(E),D=E);for(B++;j.length>B;)j.pop().element.remove()}for(;s.length>A;)s.pop()[0].element.remove()}var j;if(!(j=u.match(e)))throw Error("Expected ngOptions in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_ (track by _expr_)?' but got '"+u+"'.");var k=d(j[2]||j[1]),l=j[4]||j[6],m=j[5],n=d(j[3]||""),o=d(j[2]?j[1]:l),p=d(j[7]),q=j[8],r=q?d(j[8]):null,s=[[{element:f,label:""}]];v&&(a(v)(b),v.removeClass("ng-scope"),v.remove()),f.html(""),f.bind("change",function(){b.$apply(function(){var a,d,e,g,i,j,k,n,q=p(b)||[],u={};if(t){for(e=[],j=0,n=s.length;n>j;j++)for(a=s[j],i=1,k=a.length;k>i;i++)if((g=a[i].element)[0].selected){if(d=g.val(),m&&(u[m]=d),r)for(var v=0;vA;A++)if(""==B[A].value){o=v=B.eq(A);break}if(p.init(q,v,z),t&&(j.required||j.ngRequired)){var D=function(a){return q.$setValidity("required",!j.required||a&&a.length),a};q.$parsers.push(D),q.$formatters.unshift(D),j.$observe("required",function(){D(q.$viewValue)})}u?n(h,i,q):t?m(h,i,q):l(h,i,q,p)}}}}],Je=["$interpolate",function(a){var b={addOption:o,removeOption:o};return{restrict:"E",priority:100,compile:function(c,d){if(r(d.value)){var e=a(c.text(),!0);e||d.$set("value",c.text())}return function(a,c,d){var f="$selectController",g=c.parent(),h=g.data(f)||g.parent().data(f);h&&h.databound?c.prop("selected",!1):h=b,e?a.$watch(e,function(a,b){d.$set("value",a),a!==b&&h.removeOption(b),h.addOption(a)}):h.addOption(d.value),c.bind("$destroy",function(){h.removeOption(d.value)})}}}}],Ke=q({restrict:"E",terminal:!0});$(),cb(ed),Xc(b).ready(function(){X(b,Y)})}(window,document),angular.element(document).find("head").append(''),define("angular",["jquery","config"],function(a){return function(){var b;return b||a.angular}}(this)),function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F=this,G=F&&F.ejs,H=Array.prototype,I=Object.prototype,J=H.slice,K=I.toString,L=I.hasOwnProperty,M=H.forEach,N=Array.isArray,O=H.indexOf,P={};E="undefined"!=typeof exports?exports:F.ejs={},a=function(a,b){return L.call(a,b)},b=function(b,c,d){if(null!=b)if(M&&b.forEach===M)b.forEach(c,d);else if(b.length===+b.length){for(var e=0,f=b.length;f>e;e++)if(c.call(d,b[e],e,b)===P)return}else for(var g in b)if(a(b,g)&&c.call(d,b[g],g,b)===P)return},c=function(a){return b(J.call(arguments,1),function(b){for(var c in b)a[c]=b[c]}),a},d=function(a,b){if(null==a)return-1;var c=0,d=a.length;if(O&&a.indexOf===O)return a.indexOf(b);for(;d>c;c++)if(a[c]===b)return c;return-1},e=function(b,c){var e,f,h={};for(e in b)a(b,e)&&-1===d(c,e)&&(f=b[e],g(f)&&(f=f.join()),h[e]=f);return h},f=function(b,c){var d,f=e(b,c),g=[];for(d in f)a(f,d)&&g.push(d+"="+encodeURIComponent(f[d]));return g.join("&")},g=N||function(a){return"[object Array]"===K.call(a)},h=function(a){return a===Object(a)},i=function(a){return"[object String]"===K.call(a)},j=function(a){return"[object Number]"===K.call(a)},k="function"!=typeof/./?function(a){return"function"==typeof a}:function(a){return"[object Function]"===K.call(a)},l=function(b){return h(b)&&a(b,"_type")&&a(b,"_self")&&a(b,"toString")},m=function(a){return l(a)&&"query"===a._type()},n=function(a){return l(a)&&"rescore"===a._type()},o=function(a){return l(a)&&"filter"===a._type()},p=function(a){return l(a)&&"facet"===a._type()},q=function(a){return l(a)&&"script field"===a._type()},r=function(a){return l(a)&&"geo point"===a._type()},s=function(a){return l(a)&&"indexed shape"===a._type()},t=function(a){return l(a)&&"shape"===a._type()},u=function(a){return l(a)&&"sort"===a._type()},v=function(a){return l(a)&&"highlight"===a._type()},w=function(a){return l(a)&&"suggest"===a._type()},x=function(a){return l(a)&&"generator"===a._type()},y=function(a){return l(a)&&"cluster health"===a._type()},z=function(a){return l(a)&&"cluster state"===a._type()},A=function(a){return l(a)&&"node stats"===a._type()},B=function(a){return l(a)&&"node info"===a._type()},C=function(a){return l(a)&&"request"===a._type()},D=function(a){return l(a)&&"multi search request"===a._type()},E.DateHistogramFacet=function(a){var b={};return b[a]={date_histogram:{}},{field:function(c){return null==c?b[a].date_histogram.field:(b[a].date_histogram.field=c,this)},keyField:function(c){return null==c?b[a].date_histogram.key_field:(b[a].date_histogram.key_field=c,this)},valueField:function(c){return null==c?b[a].date_histogram.value_field:(b[a].date_histogram.value_field=c,this)},interval:function(c){return null==c?b[a].date_histogram.interval:(b[a].date_histogram.interval=c,this)},timeZone:function(c){return null==c?b[a].date_histogram.time_zone:(b[a].date_histogram.time_zone=c,this)},preZone:function(c){return null==c?b[a].date_histogram.pre_zone:(b[a].date_histogram.pre_zone=c,this)},preZoneAdjustLargeInterval:function(c){return null==c?b[a].date_histogram.pre_zone_adjust_large_interval:(b[a].date_histogram.pre_zone_adjust_large_interval=c,this)},postZone:function(c){return null==c?b[a].date_histogram.post_zone:(b[a].date_histogram.post_zone=c,this)},preOffset:function(c){return null==c?b[a].date_histogram.pre_offset:(b[a].date_histogram.pre_offset=c,this)},postOffset:function(c){return null==c?b[a].date_histogram.post_offset:(b[a].date_histogram.post_offset=c,this)},factor:function(c){return null==c?b[a].date_histogram.factor:(b[a].date_histogram.factor=c,this)},valueScript:function(c){return null==c?b[a].date_histogram.value_script:(b[a].date_histogram.value_script=c,this)},order:function(c){return null==c?b[a].date_histogram.order:(c=c.toLowerCase(),("time"===c||"count"===c||"total"===c)&&(b[a].date_histogram.order=c),this)},lang:function(c){return null==c?b[a].date_histogram.lang:(b[a].date_histogram.lang=c,this)},params:function(c){return null==c?b[a].date_histogram.params:(b[a].date_histogram.params=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.FilterFacet=function(a){var b={};return b[a]={},{filter:function(c){if(null==c)return b[a].filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].filter=c._self(),this},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.GeoDistanceFacet=function(a){var b={},c=E.GeoPoint([0,0]),d="location";return b[a]={geo_distance:{location:c._self(),ranges:[]}},{field:function(c){var e=b[a].geo_distance[d];return null==c?d:(delete b[a].geo_distance[d],d=c,b[a].geo_distance[c]=e,this)},point:function(e){if(null==e)return c;if(!r(e))throw new TypeError("Argument must be a GeoPoint");return c=e,b[a].geo_distance[d]=e._self(),this},addRange:function(c,d){return 0===arguments.length?b[a].geo_distance.ranges:(b[a].geo_distance.ranges.push({from:c,to:d}),this)},addUnboundedFrom:function(c){return null==c?b[a].geo_distance.ranges:(b[a].geo_distance.ranges.push({from:c}),this)},addUnboundedTo:function(c){return null==c?b[a].geo_distance.ranges:(b[a].geo_distance.ranges.push({to:c}),this)},unit:function(c){return null==c?b[a].geo_distance.unit:(c=c.toLowerCase(),("mi"===c||"km"===c)&&(b[a].geo_distance.unit=c),this) -},distanceType:function(c){return null==c?b[a].geo_distance.distance_type:(c=c.toLowerCase(),("arc"===c||"plane"===c)&&(b[a].geo_distance.distance_type=c),this)},normalize:function(c){return null==c?b[a].geo_distance.normalize:(b[a].geo_distance.normalize=c,this)},valueField:function(c){return null==c?b[a].geo_distance.value_field:(b[a].geo_distance.value_field=c,this)},valueScript:function(c){return null==c?b[a].geo_distance.value_script:(b[a].geo_distance.value_script=c,this)},lang:function(c){return null==c?b[a].geo_distance.lang:(b[a].geo_distance.lang=c,this)},params:function(c){return null==c?b[a].geo_distance.params:(b[a].geo_distance.params=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.HistogramFacet=function(a){var b={};return b[a]={histogram:{}},{field:function(c){return null==c?b[a].histogram.field:(b[a].histogram.field=c,this)},interval:function(c){return null==c?b[a].histogram.interval:(b[a].histogram.interval=c,this)},timeInterval:function(c){return null==c?b[a].histogram.time_interval:(b[a].histogram.time_interval=c,this)},from:function(c){return null==c?b[a].histogram.from:(b[a].histogram.from=c,this)},to:function(c){return null==c?b[a].histogram.to:(b[a].histogram.to=c,this)},valueField:function(c){return null==c?b[a].histogram.value_field:(b[a].histogram.value_field=c,this)},keyField:function(c){return null==c?b[a].histogram.key_field:(b[a].histogram.key_field=c,this)},valueScript:function(c){return null==c?b[a].histogram.value_script:(b[a].histogram.value_script=c,this)},keyScript:function(c){return null==c?b[a].histogram.key_script:(b[a].histogram.key_script=c,this)},lang:function(c){return null==c?b[a].histogram.lang:(b[a].histogram.lang=c,this)},params:function(c){return null==c?b[a].histogram.params:(b[a].histogram.params=c,this)},order:function(c){return null==c?b[a].histogram.order:(c=c.toLowerCase(),("key"===c||"count"===c||"total"===c)&&(b[a].histogram.order=c),this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.QueryFacet=function(a){var b={};return b[a]={},{query:function(c){if(null==c)return b[a].query;if(!m(c))throw new TypeError("Argument must be a Query");return b[a].query=c._self(),this},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argumnet must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.RangeFacet=function(a){var b={};return b[a]={range:{ranges:[]}},{field:function(c){return null==c?b[a].range.field:(b[a].range.field=c,this)},keyField:function(c){return null==c?b[a].range.key_field:(b[a].range.key_field=c,this)},valueField:function(c){return null==c?b[a].range.value_field:(b[a].range.value_field=c,this)},valueScript:function(c){return null==c?b[a].range.value_script:(b[a].range.value_script=c,this)},keyScript:function(c){return null==c?b[a].range.key_script:(b[a].range.key_script=c,this)},lang:function(c){return null==c?b[a].range.lang:(b[a].range.lang=c,this)},params:function(c){return null==c?b[a].range.params:(b[a].range.params=c,this)},addRange:function(c,d){return 0===arguments.length?b[a].range.ranges:(b[a].range.ranges.push({from:c,to:d}),this)},addUnboundedFrom:function(c){return null==c?b[a].range.ranges:(b[a].range.ranges.push({from:c}),this)},addUnboundedTo:function(c){return null==c?b[a].range.ranges:(b[a].range.ranges.push({to:c}),this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.StatisticalFacet=function(a){var b={};return b[a]={statistical:{}},{field:function(c){return null==c?b[a].statistical.field:(b[a].statistical.field=c,this)},fields:function(c){if(null==c)return b[a].statistical.fields;if(!g(c))throw new TypeError("Argument must be an array");return b[a].statistical.fields=c,this},script:function(c){return null==c?b[a].statistical.script:(b[a].statistical.script=c,this)},lang:function(c){return null==c?b[a].statistical.lang:(b[a].statistical.lang=c,this)},params:function(c){return null==c?b[a].statistical.params:(b[a].statistical.params=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.TermStatsFacet=function(a){var b={};return b[a]={terms_stats:{}},{valueField:function(c){return null==c?b[a].terms_stats.value_field:(b[a].terms_stats.value_field=c,this)},keyField:function(c){return null==c?b[a].terms_stats.key_field:(b[a].terms_stats.key_field=c,this)},scriptField:function(c){return null==c?b[a].terms_stats.script_field:(b[a].terms_stats.script_field=c,this)},valueScript:function(c){return null==c?b[a].terms_stats.value_script:(b[a].terms_stats.value_script=c,this)},allTerms:function(c){return null==c?b[a].terms_stats.all_terms:(b[a].terms_stats.all_terms=c,this)},lang:function(c){return null==c?b[a].terms_stats.lang:(b[a].terms_stats.lang=c,this)},params:function(c){return null==c?b[a].terms_stats.params:(b[a].terms_stats.params=c,this)},size:function(c){return null==c?b[a].terms_stats.size:(b[a].terms_stats.size=c,this)},order:function(c){return null==c?b[a].terms_stats.order:(c=c.toLowerCase(),("count"===c||"term"===c||"reverse_count"===c||"reverse_term"===c||"total"===c||"reverse_total"===c||"min"===c||"reverse_min"===c||"max"===c||"reverse_max"===c||"mean"===c||"reverse_mean"===c)&&(b[a].terms_stats.order=c),this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.TermsFacet=function(a){var b={};return b[a]={terms:{}},{field:function(c){return null==c?b[a].terms.field:(b[a].terms.field=c,this)},fields:function(c){if(null==c)return b[a].terms.fields;if(!g(c))throw new TypeError("Argument must be an array");return b[a].terms.fields=c,this},scriptField:function(c){return null==c?b[a].terms.script_field:(b[a].terms.script_field=c,this)},size:function(c){return null==c?b[a].terms.size:(b[a].terms.size=c,this)},order:function(c){return null==c?b[a].terms.order:(c=c.toLowerCase(),("count"===c||"term"===c||"reverse_count"===c||"reverse_term"===c)&&(b[a].terms.order=c),this)},allTerms:function(c){return null==c?b[a].terms.all_terms:(b[a].terms.all_terms=c,this)},exclude:function(c){if(null==b[a].terms.exclude&&(b[a].terms.exclude=[]),null==c)return b[a].terms.exclude;if(i(c))b[a].terms.exclude.push(c);else{if(!g(c))throw new TypeError("Argument must be string or array");b[a].terms.exclude=c}return this},regex:function(c){return null==c?b[a].terms.regex:(b[a].terms.regex=c,this)},regexFlags:function(c){return null==c?b[a].terms.regex_flags:(b[a].terms.regex_flags=c,this)},script:function(c){return null==c?b[a].terms.script:(b[a].terms.script=c,this)},lang:function(c){return null==c?b[a].terms.lang:(b[a].terms.lang=c,this)},params:function(c){return null==c?b[a].terms.params:(b[a].terms.params=c,this)},executionHint:function(c){return null==c?b[a].terms.execution_hint:(b[a].terms.execution_hint=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.AndFilter=function(a){var b,c,d={and:{filters:[]}};if(o(a))d.and.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or Array of Filters");for(b=0,c=a.length;c>b;b++){if(!o(a[b]))throw new TypeError("Array must contain only Filter objects");d.and.filters.push(a[b]._self())}}return{filters:function(a){var b,c;if(null==a)return d.and.filters;if(o(a))d.and.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or an Array of Filters");for(d.and.filters=[],b=0,c=a.length;c>b;b++){if(!o(a[b]))throw new TypeError("Array must contain only Filter objects");d.and.filters.push(a[b]._self())}}return this},name:function(a){return null==a?d.and._name:(d.and._name=a,this)},cache:function(a){return null==a?d.and._cache:(d.and._cache=a,this)},cacheKey:function(a){return null==a?d.and._cache_key:(d.and._cache_key=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"filter"},_self:function(){return d}}},E.BoolFilter=function(){var a={bool:{}};return{must:function(b){var c,d;if(null==a.bool.must&&(a.bool.must=[]),null==b)return a.bool.must;if(o(b))a.bool.must.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Filter or array of Filters");for(a.bool.must=[],c=0,d=b.length;d>c;c++){if(!o(b[c]))throw new TypeError("Argument must be an array of Filters");a.bool.must.push(b[c]._self())}}return this},mustNot:function(b){var c,d;if(null==a.bool.must_not&&(a.bool.must_not=[]),null==b)return a.bool.must_not;if(o(b))a.bool.must_not.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Filter or array of Filters");for(a.bool.must_not=[],c=0,d=b.length;d>c;c++){if(!o(b[c]))throw new TypeError("Argument must be an array of Filters");a.bool.must_not.push(b[c]._self())}}return this},should:function(b){var c,d;if(null==a.bool.should&&(a.bool.should=[]),null==b)return a.bool.should;if(o(b))a.bool.should.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Filter or array of Filters");for(a.bool.should=[],c=0,d=b.length;d>c;c++){if(!o(b[c]))throw new TypeError("Argument must be an array of Filters");a.bool.should.push(b[c]._self())}}return this},name:function(b){return null==b?a.bool._name:(a.bool._name=b,this)},cache:function(b){return null==b?a.bool._cache:(a.bool._cache=b,this)},cacheKey:function(b){return null==b?a.bool._cache_key:(a.bool._cache_key=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"filter"},_self:function(){return a}}},E.ExistsFilter=function(a){var b={exists:{field:a}};return{field:function(a){return null==a?b.exists.field:(b.exists.field=a,this)},name:function(a){return null==a?b.exists._name:(b.exists._name=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoBboxFilter=function(a){var b={geo_bounding_box:{}};return b.geo_bounding_box[a]={},{field:function(c){var d=b.geo_bounding_box[a];return null==c?a:(delete b.geo_bounding_box[a],a=c,b.geo_bounding_box[c]=d,this)},topLeft:function(c){if(null==c)return b.geo_bounding_box[a].top_left;if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_bounding_box[a].top_left=c._self(),this},bottomRight:function(c){if(null==c)return b.geo_bounding_box[a].bottom_right;if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_bounding_box[a].bottom_right=c._self(),this},type:function(a){return null==a?b.geo_bounding_box.type:(a=a.toLowerCase(),("memory"===a||"indexed"===a)&&(b.geo_bounding_box.type=a),this)},normalize:function(a){return null==a?b.geo_bounding_box.normalize:(b.geo_bounding_box.normalize=a,this)},name:function(a){return null==a?b.geo_bounding_box._name:(b.geo_bounding_box._name=a,this)},cache:function(a){return null==a?b.geo_bounding_box._cache:(b.geo_bounding_box._cache=a,this)},cacheKey:function(a){return null==a?b.geo_bounding_box._cache_key:(b.geo_bounding_box._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoDistanceFilter=function(a){var b={geo_distance:{}};return b.geo_distance[a]=[0,0],{field:function(c){var d=b.geo_distance[a];return null==c?a:(delete b.geo_distance[a],a=c,b.geo_distance[c]=d,this)},distance:function(a){if(null==a)return b.geo_distance.distance;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance.distance=a,this},unit:function(a){return null==a?b.geo_distance.unit:(a=a.toLowerCase(),("mi"===a||"km"===a)&&(b.geo_distance.unit=a),this)},point:function(c){if(null==c)return b.geo_distance[a];if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_distance[a]=c._self(),this},distanceType:function(a){return null==a?b.geo_distance.distance_type:(a=a.toLowerCase(),("arc"===a||"plane"===a)&&(b.geo_distance.distance_type=a),this)},normalize:function(a){return null==a?b.geo_distance.normalize:(b.geo_distance.normalize=a,this)},optimizeBbox:function(a){return null==a?b.geo_distance.optimize_bbox:(a=a.toLowerCase(),("memory"===a||"indexed"===a||"none"===a)&&(b.geo_distance.optimize_bbox=a),this)},name:function(a){return null==a?b.geo_distance._name:(b.geo_distance._name=a,this)},cache:function(a){return null==a?b.geo_distance._cache:(b.geo_distance._cache=a,this)},cacheKey:function(a){return null==a?b.geo_distance._cache_key:(b.geo_distance._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoDistanceRangeFilter=function(a){var b={geo_distance_range:{}};return b.geo_distance_range[a]=[0,0],{field:function(c){var d=b.geo_distance_range[a];return null==c?a:(delete b.geo_distance_range[a],a=c,b.geo_distance_range[c]=d,this)},from:function(a){if(null==a)return b.geo_distance_range.from;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.from=a,this},to:function(a){if(null==a)return b.geo_distance_range.to;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.to=a,this},includeLower:function(a){return null==a?b.geo_distance_range.include_lower:(b.geo_distance_range.include_lower=a,this)},includeUpper:function(a){return null==a?b.geo_distance_range.include_upper:(b.geo_distance_range.include_upper=a,this)},gt:function(a){if(null==a)return b.geo_distance_range.gt;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.gt=a,this},gte:function(a){if(null==a)return b.geo_distance_range.gte;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.gte=a,this},lt:function(a){if(null==a)return b.geo_distance_range.lt;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.lt=a,this},lte:function(a){if(null==a)return b.geo_distance_range.lte;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.lte=a,this},unit:function(a){return null==a?b.geo_distance_range.unit:(a=a.toLowerCase(),("mi"===a||"km"===a)&&(b.geo_distance_range.unit=a),this)},point:function(c){if(null==c)return b.geo_distance_range[a];if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_distance_range[a]=c._self(),this},distanceType:function(a){return null==a?b.geo_distance_range.distance_type:(a=a.toLowerCase(),("arc"===a||"plane"===a)&&(b.geo_distance_range.distance_type=a),this)},normalize:function(a){return null==a?b.geo_distance_range.normalize:(b.geo_distance_range.normalize=a,this)},optimizeBbox:function(a){return null==a?b.geo_distance_range.optimize_bbox:(a=a.toLowerCase(),("memory"===a||"indexed"===a||"none"===a)&&(b.geo_distance_range.optimize_bbox=a),this)},name:function(a){return null==a?b.geo_distance_range._name:(b.geo_distance_range._name=a,this)},cache:function(a){return null==a?b.geo_distance_range._cache:(b.geo_distance_range._cache=a,this)},cacheKey:function(a){return null==a?b.geo_distance_range._cache_key:(b.geo_distance_range._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoPolygonFilter=function(a){var b={geo_polygon:{}};return b.geo_polygon[a]={points:[]},{field:function(c){var d=b.geo_polygon[a];return null==c?a:(delete b.geo_polygon[a],a=c,b.geo_polygon[c]=d,this)},points:function(c){var d,e;if(null==c)return b.geo_polygon[a].points;if(r(c))b.geo_polygon[a].points.push(c._self());else{if(!g(c))throw new TypeError("Argument must be a GeoPoint or Array of GeoPoints");for(b.geo_polygon[a].points=[],d=0,e=c.length;e>d;d++){if(!r(c[d]))throw new TypeError("Argument must be Array of GeoPoints");b.geo_polygon[a].points.push(c[d]._self())}}return this},normalize:function(a){return null==a?b.geo_polygon.normalize:(b.geo_polygon.normalize=a,this)},name:function(a){return null==a?b.geo_polygon._name:(b.geo_polygon._name=a,this)},cache:function(a){return null==a?b.geo_polygon._cache:(b.geo_polygon._cache=a,this)},cacheKey:function(a){return null==a?b.geo_polygon._cache_key:(b.geo_polygon._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoShapeFilter=function(a){var b={geo_shape:{}};return b.geo_shape[a]={},{field:function(c){var d=b.geo_shape[a];return null==c?a:(delete b.geo_shape[a],a=c,b.geo_shape[c]=d,this)},shape:function(c){return null==c?b.geo_shape[a].shape:(null!=b.geo_shape[a].indexed_shape&&delete b.geo_shape[a].indexed_shape,b.geo_shape[a].shape=c._self(),this)},indexedShape:function(c){return null==c?b.geo_shape[a].indexed_shape:(null!=b.geo_shape[a].shape&&delete b.geo_shape[a].shape,b.geo_shape[a].indexed_shape=c._self(),this)},relation:function(c){return null==c?b.geo_shape[a].relation:(c=c.toLowerCase(),("intersects"===c||"disjoint"===c||"within"===c)&&(b.geo_shape[a].relation=c),this)},strategy:function(c){return null==c?b.geo_shape[a].strategy:(c=c.toLowerCase(),("recursive"===c||"term"===c)&&(b.geo_shape[a].strategy=c),this)},name:function(a){return null==a?b.geo_shape._name:(b.geo_shape._name=a,this)},cache:function(a){return null==a?b.geo_shape._cache:(b.geo_shape._cache=a,this)},cacheKey:function(a){return null==a?b.geo_shape._cache_key:(b.geo_shape._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.HasChildFilter=function(a,b){if(!m(a))throw new TypeError("No Query object found");var c={has_child:{query:a._self(),type:b}};return{query:function(a){if(null==a)return c.has_child.query;if(!m(a))throw new TypeError("Argument must be a Query object");return c.has_child.query=a._self(),this},filter:function(a){if(null==a)return c.has_child.filter;if(!o(a))throw new TypeError("Argument must be a Filter object");return c.has_child.filter=a._self(),this},type:function(a){return null==a?c.has_child.type:(c.has_child.type=a,this)},shortCircuitCutoff:function(a){return null==a?c.has_child.short_circuit_cutoff:(c.has_child.short_circuit_cutoff=a,this)},scope:function(){return this},name:function(a){return null==a?c.has_child._name:(c.has_child._name=a,this)},cache:function(a){return null==a?c.has_child._cache:(c.has_child._cache=a,this)},cacheKey:function(a){return null==a?c.has_child._cache_key:(c.has_child._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.HasParentFilter=function(a,b){if(!m(a))throw new TypeError("No Query object found");var c={has_parent:{query:a._self(),parent_type:b}};return{query:function(a){if(null==a)return c.has_parent.query;if(!m(a))throw new TypeError("Argument must be a Query object");return c.has_parent.query=a._self(),this},filter:function(a){if(null==a)return c.has_parent.filter;if(!o(a))throw new TypeError("Argument must be a Filter object");return c.has_parent.filter=a._self(),this},parentType:function(a){return null==a?c.has_parent.parent_type:(c.has_parent.parent_type=a,this)},scope:function(){return this},name:function(a){return null==a?c.has_parent._name:(c.has_parent._name=a,this)},cache:function(a){return null==a?c.has_parent._cache:(c.has_parent._cache=a,this)},cacheKey:function(a){return null==a?c.has_parent._cache_key:(c.has_parent._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.IdsFilter=function(a){var b={ids:{}};if(i(a))b.ids.values=[a];else{if(!g(a))throw new TypeError("Argument must be a string or an array");b.ids.values=a}return{values:function(a){if(null==a)return b.ids.values;if(i(a))b.ids.values.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or an array");b.ids.values=a}return this},type:function(a){if(null==b.ids.type&&(b.ids.type=[]),null==a)return b.ids.type;if(i(a))b.ids.type.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or an array");b.ids.type=a}return this},name:function(a){return null==a?b.ids._name:(b.ids._name=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.IndicesFilter=function(a,b){if(!o(a))throw new TypeError("Argument must be a Filter");var c={indices:{filter:a._self()}};if(i(b))c.indices.indices=[b];else{if(!g(b))throw new TypeError("Argument must be a string or array");c.indices.indices=b}return{indices:function(a){if(null==a)return c.indices.indices;if(i(a))c.indices.indices.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");c.indices.indices=a}return this},filter:function(a){if(null==a)return c.indices.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return c.indices.filter=a._self(),this},noMatchFilter:function(a){if(null==a)return c.indices.no_match_filter;if(i(a))a=a.toLowerCase(),("none"===a||"all"===a)&&(c.indices.no_match_filter=a);else{if(!o(a))throw new TypeError("Argument must be string or Filter");c.indices.no_match_filter=a._self()}return this},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.LimitFilter=function(a){var b={limit:{value:a}};return{value:function(a){if(null==a)return b.limit.value;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.limit.value=a,this},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.MatchAllFilter=function(){var a={match_all:{}};return{toString:function(){return JSON.stringify(a)},_type:function(){return"filter"},_self:function(){return a}}},E.MissingFilter=function(a){var b={missing:{field:a}};return{field:function(a){return null==a?b.missing.field:(b.missing.field=a,this)},existence:function(a){return null==a?b.missing.existence:(b.missing.existence=a,this)},nullValue:function(a){return null==a?b.missing.null_value:(b.missing.null_value=a,this)},name:function(a){return null==a?b.missing._name:(b.missing._name=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.NestedFilter=function(a){var b={nested:{path:a}};return{path:function(a){return null==a?b.nested.path:(b.nested.path=a,this)},query:function(a){if(null==a)return b.nested.query;if(!m(a))throw new TypeError("Argument must be a Query object");return b.nested.query=a._self(),this},filter:function(a){if(null==a)return b.nested.filter;if(!o(a))throw new TypeError("Argument must be a Filter object");return b.nested.filter=a._self(),this},boost:function(a){return null==a?b.nested.boost:(b.nested.boost=a,this)},join:function(a){return null==a?b.nested.join:(b.nested.join=a,this)},scope:function(){return this},name:function(a){return null==a?b.nested._name:(b.nested._name=a,this)},cache:function(a){return null==a?b.nested._cache:(b.nested._cache=a,this)},cacheKey:function(a){return null==a?b.nested._cache_key:(b.nested._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.NotFilter=function(a){if(!o(a))throw new TypeError("Argument must be a Filter");var b={not:a._self()};return{filter:function(a){if(null==a)return b.not;if(!o(a))throw new TypeError("Argument must be a Filter");return b.not=a._self(),this},name:function(a){return null==a?b.not._name:(b.not._name=a,this)},cache:function(a){return null==a?b.not._cache:(b.not._cache=a,this)},cacheKey:function(a){return null==a?b.not._cache_key:(b.not._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.NumericRangeFilter=function(a){var b={numeric_range:{}};return b.numeric_range[a]={},{field:function(c){var d=b.numeric_range[a];return null==c?a:(delete b.numeric_range[a],a=c,b.numeric_range[a]=d,this)},from:function(c){if(null==c)return b.numeric_range[a].from;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].from=c,this},to:function(c){if(null==c)return b.numeric_range[a].to;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].to=c,this},includeLower:function(c){return null==c?b.numeric_range[a].include_lower:(b.numeric_range[a].include_lower=c,this)},includeUpper:function(c){return null==c?b.numeric_range[a].include_upper:(b.numeric_range[a].include_upper=c,this)},gt:function(c){if(null==c)return b.numeric_range[a].gt;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].gt=c,this},gte:function(c){if(null==c)return b.numeric_range[a].gte;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].gte=c,this},lt:function(c){if(null==c)return b.numeric_range[a].lt;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].lt=c,this},lte:function(c){if(null==c)return b.numeric_range[a].lte;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].lte=c,this},name:function(a){return null==a?b.numeric_range._name:(b.numeric_range._name=a,this)},cache:function(a){return null==a?b.numeric_range._cache:(b.numeric_range._cache=a,this)},cacheKey:function(a){return null==a?b.numeric_range._cache_key:(b.numeric_range._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.OrFilter=function(a){var b,c,d;if(b={or:{filters:[]}},o(a))b.or.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or array of Filters");for(c=0,d=a.length;d>c;c++){if(!o(a[c]))throw new TypeError("Argument must be array of Filters");b.or.filters.push(a[c]._self())}}return{filters:function(a){var c,d;if(null==a)return b.or.filters;if(o(a))b.or.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or array of Filters");for(b.or.filters=[],c=0,d=a.length;d>c;c++){if(!o(a[c]))throw new TypeError("Argument must be an array of Filters");b.or.filters.push(a[c]._self())}}return this},name:function(a){return null==a?b.or._name:(b.or._name=a,this)},cache:function(a){return null==a?b.or._cache:(b.or._cache=a,this)},cacheKey:function(a){return null==a?b.or._cache_key:(b.or._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.PrefixFilter=function(a,b){var c={prefix:{}};return c.prefix[a]=b,{field:function(b){var d=c.prefix[a];return null==b?a:(delete c.prefix[a],a=b,c.prefix[a]=d,this)},prefix:function(b){return null==b?c.prefix[a]:(c.prefix[a]=b,this)},name:function(a){return null==a?c.prefix._name:(c.prefix._name=a,this)},cache:function(a){return null==a?c.prefix._cache:(c.prefix._cache=a,this)},cacheKey:function(a){return null==a?c.prefix._cache_key:(c.prefix._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.QueryFilter=function(a){if(!m(a))throw new TypeError("Argument must be a Query");var b={fquery:{query:a._self()}};return{query:function(a){if(null==a)return b.fquery.query;if(!m(a))throw new TypeError("Argument must be a Query");return b.fquery.query=a._self(),this},name:function(a){return null==a?b.fquery._name:(b.fquery._name=a,this)},cache:function(a){return null==a?b.fquery._cache:(b.fquery._cache=a,this)},cacheKey:function(a){return null==a?b.fquery._cache_key:(b.fquery._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.RangeFilter=function(a){var b={range:{}};return b.range[a]={},{field:function(c){var d=b.range[a];return null==c?a:(delete b.range[a],a=c,b.range[c]=d,this)},from:function(c){return null==c?b.range[a].from:(b.range[a].from=c,this)},to:function(c){return null==c?b.range[a].to:(b.range[a].to=c,this)},includeLower:function(c){return null==c?b.range[a].include_lower:(b.range[a].include_lower=c,this)},includeUpper:function(c){return null==c?b.range[a].include_upper:(b.range[a].include_upper=c,this)},gt:function(c){return null==c?b.range[a].gt:(b.range[a].gt=c,this)},gte:function(c){return null==c?b.range[a].gte:(b.range[a].gte=c,this)},lt:function(c){return null==c?b.range[a].lt:(b.range[a].lt=c,this)},lte:function(c){return null==c?b.range[a].lte:(b.range[a].lte=c,this)},name:function(a){return null==a?b.range._name:(b.range._name=a,this) -},cache:function(a){return null==a?b.range._cache:(b.range._cache=a,this)},cacheKey:function(a){return null==a?b.range._cache_key:(b.range._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.RegexpFilter=function(a,b){var c={regexp:{}};return c.regexp[a]={value:b},{field:function(b){var d=c.regexp[a];return null==b?a:(delete c.regexp[a],a=b,c.regexp[b]=d,this)},value:function(b){return null==b?c.regexp[a].value:(c.regexp[a].value=b,this)},flags:function(b){return null==b?c.regexp[a].flags:(c.regexp[a].flags=b,this)},flagsValue:function(b){return null==b?c.regexp[a].flags_value:(c.regexp[a].flags_value=b,this)},name:function(a){return null==a?c.regexp._name:(c.regexp._name=a,this)},cache:function(a){return null==a?c.regexp._cache:(c.regexp._cache=a,this)},cacheKey:function(a){return null==a?c.regexp._cache_key:(c.regexp._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.ScriptFilter=function(a){var b={script:{script:a}};return{script:function(a){return null==a?b.script.script:(b.script.script=a,this)},params:function(a){return null==a?b.script.params:(b.script.params=a,this)},lang:function(a){return null==a?b.script.lang:(b.script.lang=a,this)},name:function(a){return null==a?b.script._name:(b.script._name=a,this)},cache:function(a){return null==a?b.script._cache:(b.script._cache=a,this)},cacheKey:function(a){return null==a?b.script._cache_key:(b.script._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.TermFilter=function(a,b){var c={term:{}};return c.term[a]=b,{field:function(b){var d=c.term[a];return null==b?a:(delete c.term[a],a=b,c.term[a]=d,this)},term:function(b){return null==b?c.term[a]:(c.term[a]=b,this)},name:function(a){return null==a?c.term._name:(c.term._name=a,this)},cache:function(a){return null==a?c.term._cache:(c.term._cache=a,this)},cacheKey:function(a){return null==a?c.term._cache_key:(c.term._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.TermsFilter=function(a,b){var c={terms:{}},d=function(){g(c.terms[a])||(c.terms[a]=[])},e=function(){g(c.terms[a])&&(c.terms[a]={})};return c.terms[a]=g(b)?b:[b],{field:function(b){var d=c.terms[a];return null==b?a:(delete c.terms[a],a=b,c.terms[b]=d,this)},terms:function(b){return d(),null==b?c.terms[a]:(g(b)?c.terms[a]=b:c.terms[a].push(b),this)},index:function(b){return e(),null==b?c.terms[a].index:(c.terms[a].index=b,this)},type:function(b){return e(),null==b?c.terms[a].type:(c.terms[a].type=b,this)},id:function(b){return e(),null==b?c.terms[a].id:(c.terms[a].id=b,this)},path:function(b){return e(),null==b?c.terms[a].path:(c.terms[a].path=b,this)},routing:function(b){return e(),null==b?c.terms[a].routing:(c.terms[a].routing=b,this)},cacheLookup:function(b){return e(),null==b?c.terms[a].cache:(c.terms[a].cache=b,this)},execution:function(a){return null==a?c.terms.execution:(a=a.toLowerCase(),("plain"===a||"bool"===a||"bool_nocache"===a||"and"===a||"and_nocache"===a||"or"===a||"or_nocache"===a)&&(c.terms.execution=a),this)},name:function(a){return null==a?c.terms._name:(c.terms._name=a,this)},cache:function(a){return null==a?c.terms._cache:(c.terms._cache=a,this)},cacheKey:function(a){return null==a?c.terms._cache_key:(c.terms._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.TypeFilter=function(a){var b={type:{value:a}};return{type:function(a){return null==a?b.type.value:(b.type.value=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.Document=function(a,b,c){var d={},j=["upsert","source","script","lang","params"];return{index:function(b){return null==b?a:(a=b,this)},type:function(a){return null==a?b:(b=a,this)},id:function(a){return null==a?c:(c=a,this)},routing:function(a){return null==a?d.routing:(d.routing=a,this)},parent:function(a){return null==a?d.parent:(d.parent=a,this)},timestamp:function(a){return null==a?d.timestamp:(d.timestamp=a,this)},ttl:function(a){return null==a?d.ttl:(d.ttl=a,this)},timeout:function(a){return null==a?d.timeout:(d.timeout=a,this)},refresh:function(a){return null==a?d.refresh:(d.refresh=a,this)},version:function(a){return null==a?d.version:(d.version=a,this)},versionType:function(a){return null==a?d.version_type:(a=a.toLowerCase(),("internal"===a||"external"===a)&&(d.version_type=a),this)},opType:function(a){return null==a?d.op_type:(a=a.toLowerCase(),("index"===a||"create"===a)&&(d.op_type=a),this)},replication:function(a){return null==a?d.replication:(a=a.toLowerCase(),("async"===a||"sync"===a||"default"===a)&&(d.replication=a),this)},consistency:function(a){return null==a?d.consistency:(a=a.toLowerCase(),("default"===a||"one"===a||"quorum"===a||"all"===a)&&(d.consistency=a),this)},preference:function(a){return null==a?d.preference:(d.preference=a,this)},realtime:function(a){return null==a?d.realtime:(d.realtime=a,this)},fields:function(a){if(null==d.fields&&(d.fields=[]),null==a)return d.fields;if(i(a))d.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");d.fields=a}return this},script:function(a){return null==a?d.script:(d.script=a,this)},lang:function(a){return null==a?d.lang:(d.lang=a,this)},params:function(a){if(null==a)return d.params;if(!h(a))throw new TypeError("Argument must be an object");return d.params=a,this},retryOnConflict:function(a){return null==a?d.retry_on_conflict:(d.retry_on_conflict=a,this)},upsert:function(a){if(null==a)return d.upsert;if(!h(a))throw new TypeError("Argument must be an object");return d.upsert=a,this},docAsUpsert:function(a){return null==a?d.doc_as_upsert:(d.doc_as_upsert=a,this)},source:function(a){if(null==a)return d.source;if(!h(a))throw new TypeError("Argument must be an object");return d.source=a,this},toString:function(){return JSON.stringify(d)},_type:function(){return"document"},_self:function(){return d},doGet:function(f,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b||null==c)throw new Error("Index, Type, and ID must be set");var h="/"+a+"/"+b+"/"+c;return E.client.get(h,e(d,j),f,g)},doIndex:function(e,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b)throw new Error("Index and Type must be set");if(null==d.source)throw new Error("No source document found");var h,i="/"+a+"/"+b,k=JSON.stringify(d.source),l=f(d,j);return null!=c&&(i=i+"/"+c),""!==l&&(i=i+"?"+l),h=null==c?E.client.post(i,k,e,g):E.client.put(i,k,e,g)},doUpdate:function(e,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b||null==c)throw new Error("Index, Type, and ID must be set");if(null==d.script&&null==d.source)throw new Error("Update script or document required");var h="/"+a+"/"+b+"/"+c+"/_update",i={},k=f(d,j);return""!==k&&(h=h+"?"+k),null!=d.script&&(i.script=d.script),null!=d.lang&&(i.lang=d.lang),null!=d.params&&(i.params=d.params),null!=d.upsert&&(i.upsert=d.upsert),null!=d.source&&(i.doc=d.source),E.client.post(h,JSON.stringify(i),e,g)},doDelete:function(e,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b||null==c)throw new Error("Index, Type, and ID must be set");var h="/"+a+"/"+b+"/"+c,i="",k=f(d,j);return""!==k&&(h=h+"?"+k),E.client.del(h,i,e,g)}}},E.BoolQuery=function(){var a={bool:{}};return{must:function(b){var c,d;if(null==a.bool.must&&(a.bool.must=[]),null==b)return a.bool.must;if(m(b))a.bool.must.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.bool.must=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be an array of Queries");a.bool.must.push(b[c]._self())}}return this},mustNot:function(b){var c,d;if(null==a.bool.must_not&&(a.bool.must_not=[]),null==b)return a.bool.must_not;if(m(b))a.bool.must_not.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.bool.must_not=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be an array of Queries");a.bool.must_not.push(b[c]._self())}}return this},should:function(b){var c,d;if(null==a.bool.should&&(a.bool.should=[]),null==b)return a.bool.should;if(m(b))a.bool.should.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.bool.should=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be an array of Queries");a.bool.should.push(b[c]._self())}}return this},boost:function(b){return null==b?a.bool.boost:(a.bool.boost=b,this)},adjustPureNegative:function(b){return null==b?a.bool.adjust_pure_negative:(a.bool.adjust_pure_negative=b,this)},disableCoord:function(b){return null==b?a.bool.disable_coord:(a.bool.disable_coord=b,this)},minimumNumberShouldMatch:function(b){return null==b?a.bool.minimum_number_should_match:(a.bool.minimum_number_should_match=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.BoostingQuery=function(a,b,c){if(!m(a)||!m(b))throw new TypeError("Arguments must be Queries");var d={boosting:{positive:a._self(),negative:b._self(),negative_boost:c}};return{positive:function(a){if(null==a)return d.boosting.positive;if(!m(a))throw new TypeError("Argument must be a Query");return d.boosting.positive=a._self(),this},negative:function(a){if(null==a)return d.boosting.negative;if(!m(a))throw new TypeError("Argument must be a Query");return d.boosting.negative=a._self(),this},negativeBoost:function(a){return null==a?d.boosting.negative_boost:(d.boosting.negative_boost=a,this)},boost:function(a){return null==a?d.boosting.boost:(d.boosting.boost=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"query"},_self:function(){return d}}},E.CommonTermsQuery=function(a,b){var c={common:{}};return null==a&&(a="no_field_set"),c.common[a]={},null!=b&&(c.common[a].query=b),{field:function(b){var d=c.common[a];return null==b?a:(delete c.common[a],a=b,c.common[b]=d,this)},query:function(b){return null==b?c.common[a].query:(c.common[a].query=b,this)},analyzer:function(b){return null==b?c.common[a].analyzer:(c.common[a].analyzer=b,this)},disableCoord:function(b){return null==b?c.common[a].disable_coord:(c.common[a].disable_coord=b,this)},cutoffFrequency:function(b){return null==b?c.common[a].cutoff_frequency:(c.common[a].cutoff_frequency=b,this)},highFreqOperator:function(b){return null==b?c.common[a].high_freq_operator:(b=b.toLowerCase(),("and"===b||"or"===b)&&(c.common[a].high_freq_operator=b),this)},lowFreqOperator:function(b){return null==b?c.common[a].low_freq_operator:(b=b.toLowerCase(),("and"===b||"or"===b)&&(c.common[a].low_freq_operator=b),this)},minimumShouldMatch:function(b){return null==b?c.common[a].minimum_should_match.low_freq:(null==c.common[a].minimum_should_match&&(c.common[a].minimum_should_match={}),c.common[a].minimum_should_match.low_freq=b,this)},minimumShouldMatchLowFreq:function(a){return this.minimumShouldMatch(a)},minimumShouldMatchHighFreq:function(b){return null==b?c.common[a].minimum_should_match.high_freq:(null==c.common[a].minimum_should_match&&(c.common[a].minimum_should_match={}),c.common[a].minimum_should_match.high_freq=b,this)},boost:function(b){return null==b?c.common[a].boost:(c.common[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.ConstantScoreQuery=function(){var a={constant_score:{}};return{query:function(b){if(null==b)return a.constant_score.query;if(!m(b))throw new TypeError("Argument must be a Query");return a.constant_score.query=b._self(),this},filter:function(b){if(null==b)return a.constant_score.filter;if(!o(b))throw new TypeError("Argument must be a Filter");return a.constant_score.filter=b._self(),this},cache:function(b){return null==b?a.constant_score._cache:(a.constant_score._cache=b,this)},cacheKey:function(b){return null==b?a.constant_score._cache_key:(a.constant_score._cache_key=b,this)},boost:function(b){return null==b?a.constant_score.boost:(a.constant_score.boost=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.CustomBoostFactorQuery=function(a){if(!m(a))throw new TypeError("Argument must be a Query");var b={custom_boost_factor:{query:a._self()}};return{query:function(a){if(null==a)return b.custom_boost_factor.query;if(!m(a))throw new TypeError("Argument must be a Query");return b.custom_boost_factor.query=a._self(),this},boostFactor:function(a){return null==a?b.custom_boost_factor.boost_factor:(b.custom_boost_factor.boost_factor=a,this)},boost:function(a){return null==a?b.custom_boost_factor.boost:(b.custom_boost_factor.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.CustomFiltersScoreQuery=function(a,c){if(!m(a))throw new TypeError("Argument must be a Query");var d={custom_filters_score:{query:a._self(),filters:[]}},e=function(a){var b=null;return a.filter&&o(a.filter)&&(b={filter:a.filter._self()},a.boost?b.boost=a.boost:a.script?b.script=a.script:b=null),b};return b(g(c)?c:[c],function(a){var b=e(a);null!==b&&d.custom_filters_score.filters.push(b)}),{query:function(a){if(null==a)return d.custom_filters_score.query;if(!m(a))throw new TypeError("Argument must be a Query");return d.custom_filters_score.query=a._self(),this},filters:function(a){return null==a?d.custom_filters_score.filters:(g(a)&&(d.custom_filters_score.filters=[]),b(g(a)?a:[a],function(a){var b=e(a);null!==b&&d.custom_filters_score.filters.push(b)}),this)},scoreMode:function(a){return null==a?d.custom_filters_score.score_mode:(a=a.toLowerCase(),("first"===a||"min"===a||"max"===a||"total"===a||"avg"===a||"multiply"===a)&&(d.custom_filters_score.score_mode=a),this)},params:function(a){return null==a?d.custom_filters_score.params:(d.custom_filters_score.params=a,this)},lang:function(a){return null==a?d.custom_filters_score.lang:(d.custom_filters_score.lang=a,this)},maxBoost:function(a){return null==a?d.custom_filters_score.max_boost:(d.custom_filters_score.max_boost=a,this)},boost:function(a){return null==a?d.custom_filters_score.boost:(d.custom_filters_score.boost=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"query"},_self:function(){return d}}},E.CustomScoreQuery=function(a,b){if(!m(a)&&!o(a))throw new TypeError("Argument must be a Query or Filter");var c={custom_score:{script:b}};return m(a)?c.custom_score.query=a._self():o(a)&&(c.custom_score.filter=a._self()),{query:function(a){if(null==a)return c.custom_score.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.custom_score.query=a._self(),this},filter:function(a){if(null==a)return c.custom_score.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return c.custom_score.filter=a._self(),this},script:function(a){return null==a?c.custom_score.script:(c.custom_score.script=a,this)},params:function(a){return null==a?c.custom_score.params:(c.custom_score.params=a,this)},lang:function(a){return null==a?c.custom_score.lang:(c.custom_score.lang=a,this)},boost:function(a){return null==a?c.custom_score.boost:(c.custom_score.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.DisMaxQuery=function(){var a={dis_max:{}};return{queries:function(b){var c,d;if(null==b)return a.dis_max.queries;if(null==a.dis_max.queries&&(a.dis_max.queries=[]),m(b))a.dis_max.queries.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.dis_max.queries=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be array of Queries");a.dis_max.queries.push(b[c]._self())}}return this},boost:function(b){return null==b?a.dis_max.boost:(a.dis_max.boost=b,this)},tieBreaker:function(b){return null==b?a.dis_max.tie_breaker:(a.dis_max.tie_breaker=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.FieldMaskingSpanQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a SpanQuery");var c={field_masking_span:{query:a._self(),field:b}};return{query:function(a){if(null==a)return c.field_masking_span.query;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.field_masking_span.query=a._self(),this},field:function(a){return null==a?c.field_masking_span.field:(c.field_masking_span.field=a,this)},boost:function(a){return null==a?c.field_masking_span.boost:(c.field_masking_span.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FieldQuery=function(a,b){var c={field:{}};return c.field[a]={query:b},{field:function(b){var d=c.field[a];return null==b?a:(delete c.field[a],a=b,c.field[b]=d,this)},query:function(b){return null==b?c.field[a].query:(c.field[a].query=b,this)},defaultOperator:function(b){return null==b?c.field[a].default_operator:(b=b.toUpperCase(),("AND"===b||"OR"===b)&&(c.field[a].default_operator=b),this)},analyzer:function(b){return null==b?c.field[a].analyzer:(c.field[a].analyzer=b,this)},quoteAnalyzer:function(b){return null==b?c.field[a].quote_analyzer:(c.field[a].quote_analyzer=b,this)},autoGeneratePhraseQueries:function(b){return null==b?c.field[a].auto_generate_phrase_queries:(c.field[a].auto_generate_phrase_queries=b,this)},allowLeadingWildcard:function(b){return null==b?c.field[a].allow_leading_wildcard:(c.field[a].allow_leading_wildcard=b,this)},lowercaseExpandedTerms:function(b){return null==b?c.field[a].lowercase_expanded_terms:(c.field[a].lowercase_expanded_terms=b,this)},enablePositionIncrements:function(b){return null==b?c.field[a].enable_position_increments:(c.field[a].enable_position_increments=b,this)},fuzzyMinSim:function(b){return null==b?c.field[a].fuzzy_min_sim:(c.field[a].fuzzy_min_sim=b,this)},boost:function(b){return null==b?c.field[a].boost:(c.field[a].boost=b,this)},fuzzyPrefixLength:function(b){return null==b?c.field[a].fuzzy_prefix_length:(c.field[a].fuzzy_prefix_length=b,this)},fuzzyMaxExpansions:function(b){return null==b?c.field[a].fuzzy_max_expansions:(c.field[a].fuzzy_max_expansions=b,this)},fuzzyRewrite:function(b){return null==b?c.field[a].fuzzy_rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.field[a].fuzzy_rewrite=b),this)},rewrite:function(b){return null==b?c.field[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.field[a].rewrite=b),this)},quoteFieldSuffix:function(b){return null==b?c.field[a].quote_field_suffix:(c.field[a].quote_field_suffix=b,this)},phraseSlop:function(b){return null==b?c.field[a].phrase_slop:(c.field[a].phrase_slop=b,this)},analyzeWildcard:function(b){return null==b?c.field[a].analyze_wildcard:(c.field[a].analyze_wildcard=b,this)},escape:function(b){return null==b?c.field[a].escape:(c.field[a].escape=b,this)},minimumShouldMatch:function(b){return null==b?c.field[a].minimum_should_match:(c.field[a].minimum_should_match=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FilteredQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");if(null!=b&&!o(b))throw new TypeError("Argument must be a Filter");var c={filtered:{query:a._self()}};return null!=b&&(c.filtered.filter=b._self()),{query:function(a){if(null==a)return c.filtered.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.filtered.query=a._self(),this},filter:function(a){if(null==a)return c.filtered.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return c.filtered.filter=a._self(),this},strategy:function(a){return null==a?c.filtered.strategy:(a=a.toLowerCase(),("query_first"===a||"random_access_always"===a||"leap_frog"===a||"leap_frog_filter_first"===a||0===a.indexOf("random_access_"))&&(c.filtered.strategy=a),this)},cache:function(a){return null==a?c.filtered._cache:(c.filtered._cache=a,this)},cacheKey:function(a){return null==a?c.filtered._cache_key:(c.filtered._cache_key=a,this)},boost:function(a){return null==a?c.filtered.boost:(c.filtered.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FuzzyLikeThisFieldQuery=function(a,b){var c={flt_field:{}};return c.flt_field[a]={like_text:b},{field:function(b){var d=c.flt_field[a];return null==b?a:(delete c.flt_field[a],a=b,c.flt_field[b]=d,this)},likeText:function(b){return null==b?c.flt_field[a].like_text:(c.flt_field[a].like_text=b,this)},ignoreTf:function(b){return null==b?c.flt_field[a].ignore_tf:(c.flt_field[a].ignore_tf=b,this)},maxQueryTerms:function(b){return null==b?c.flt_field[a].max_query_terms:(c.flt_field[a].max_query_terms=b,this)},minSimilarity:function(b){return null==b?c.flt_field[a].min_similarity:(c.flt_field[a].min_similarity=b,this)},prefixLength:function(b){return null==b?c.flt_field[a].prefix_length:(c.flt_field[a].prefix_length=b,this)},analyzer:function(b){return null==b?c.flt_field[a].analyzer:(c.flt_field[a].analyzer=b,this)},failOnUnsupportedField:function(b){return null==b?c.flt_field[a].fail_on_unsupported_field:(c.flt_field[a].fail_on_unsupported_field=b,this)},boost:function(b){return null==b?c.flt_field[a].boost:(c.flt_field[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FuzzyLikeThisQuery=function(a){var b={flt:{like_text:a}};return{fields:function(a){if(null==b.flt.fields&&(b.flt.fields=[]),null==a)return b.flt.fields;if(i(a))b.flt.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");b.flt.fields=a}return this},likeText:function(a){return null==a?b.flt.like_text:(b.flt.like_text=a,this)},ignoreTf:function(a){return null==a?b.flt.ignore_tf:(b.flt.ignore_tf=a,this)},maxQueryTerms:function(a){return null==a?b.flt.max_query_terms:(b.flt.max_query_terms=a,this)},minSimilarity:function(a){return null==a?b.flt.min_similarity:(b.flt.min_similarity=a,this)},prefixLength:function(a){return null==a?b.flt.prefix_length:(b.flt.prefix_length=a,this)},analyzer:function(a){return null==a?b.flt.analyzer:(b.flt.analyzer=a,this)},failOnUnsupportedField:function(a){return null==a?b.flt.fail_on_unsupported_field:(b.flt.fail_on_unsupported_field=a,this)},boost:function(a){return null==a?b.flt.boost:(b.flt.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.FuzzyQuery=function(a,b){var c={fuzzy:{}};return c.fuzzy[a]={value:b},{field:function(b){var d=c.fuzzy[a];return null==b?a:(delete c.fuzzy[a],a=b,c.fuzzy[b]=d,this)},value:function(b){return null==b?c.fuzzy[a].value:(c.fuzzy[a].value=b,this)},transpositions:function(b){return null==b?c.fuzzy[a].transpositions:(c.fuzzy[a].transpositions=b,this)},maxExpansions:function(b){return null==b?c.fuzzy[a].max_expansions:(c.fuzzy[a].max_expansions=b,this)},minSimilarity:function(b){return null==b?c.fuzzy[a].min_similarity:(c.fuzzy[a].min_similarity=b,this)},prefixLength:function(b){return null==b?c.fuzzy[a].prefix_length:(c.fuzzy[a].prefix_length=b,this)},rewrite:function(b){return null==b?c.fuzzy[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.fuzzy[a].rewrite=b),this)},boost:function(b){return null==b?c.fuzzy[a].boost:(c.fuzzy[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.GeoShapeQuery=function(a){var b={geo_shape:{}};return b.geo_shape[a]={},{field:function(c){var d=b.geo_shape[a];return null==c?a:(delete b.geo_shape[a],a=c,b.geo_shape[c]=d,this)},shape:function(c){return null==c?b.geo_shape[a].shape:(null!=b.geo_shape[a].indexed_shape&&delete b.geo_shape[a].indexed_shape,b.geo_shape[a].shape=c._self(),this)},indexedShape:function(c){return null==c?b.geo_shape[a].indexed_shape:(null!=b.geo_shape[a].shape&&delete b.geo_shape[a].shape,b.geo_shape[a].indexed_shape=c._self(),this)},relation:function(c){return null==c?b.geo_shape[a].relation:(c=c.toLowerCase(),("intersects"===c||"disjoint"===c||"within"===c)&&(b.geo_shape[a].relation=c),this)},strategy:function(c){return null==c?b.geo_shape[a].strategy:(c=c.toLowerCase(),("recursive"===c||"term"===c)&&(b.geo_shape[a].strategy=c),this)},boost:function(c){return null==c?b.geo_shape[a].boost:(b.geo_shape[a].boost=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.HasChildQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a valid Query");var c={has_child:{query:a._self(),type:b}};return{query:function(a){if(null==a)return c.has_child.query;if(!m(a))throw new TypeError("Argument must be a valid Query");return c.has_child.query=a._self(),this},type:function(a){return null==a?c.has_child.type:(c.has_child.type=a,this)},scope:function(){return this},scoreType:function(a){return null==a?c.has_child.score_type:(a=a.toLowerCase(),("none"===a||"max"===a||"sum"===a||"avg"===a)&&(c.has_child.score_type=a),this)},scoreMode:function(a){return null==a?c.has_child.score_mode:(a=a.toLowerCase(),("none"===a||"max"===a||"sum"===a||"avg"===a)&&(c.has_child.score_mode=a),this)},shortCircuitCutoff:function(a){return null==a?c.has_child.short_circuit_cutoff:(c.has_child.short_circuit_cutoff=a,this)},boost:function(a){return null==a?c.has_child.boost:(c.has_child.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.HasParentQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");var c={has_parent:{query:a._self(),parent_type:b}};return{query:function(a){if(null==a)return c.has_parent.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.has_parent.query=a._self(),this},parentType:function(a){return null==a?c.has_parent.parent_type:(c.has_parent.parent_type=a,this)},scope:function(){return this},scoreType:function(a){return null==a?c.has_parent.score_type:(a=a.toLowerCase(),("none"===a||"score"===a)&&(c.has_parent.score_type=a),this)},scoreMode:function(a){return null==a?c.has_parent.score_mode:(a=a.toLowerCase(),("none"===a||"score"===a)&&(c.has_parent.score_mode=a),this)},boost:function(a){return null==a?c.has_parent.boost:(c.has_parent.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.IdsQuery=function(a){var b={ids:{}};if(i(a))b.ids.values=[a];else{if(!g(a))throw new TypeError("Argument must be string or array");b.ids.values=a}return{values:function(a){if(null==a)return b.ids.values;if(i(a))b.ids.values.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");b.ids.values=a}return this},type:function(a){if(null==b.ids.type&&(b.ids.type=[]),null==a)return b.ids.type;if(i(a))b.ids.type.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");b.ids.type=a}return this},boost:function(a){return null==a?b.ids.boost:(b.ids.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.IndicesQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");var c={indices:{query:a._self()}};if(i(b))c.indices.indices=[b];else{if(!g(b))throw new TypeError("Argument must be a string or array");c.indices.indices=b}return{indices:function(a){if(null==a)return c.indices.indices;if(i(a))c.indices.indices.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");c.indices.indices=a}return this},query:function(a){if(null==a)return c.indices.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.indices.query=a._self(),this},noMatchQuery:function(a){if(null==a)return c.indices.no_match_query;if(i(a))a=a.toLowerCase(),("none"===a||"all"===a)&&(c.indices.no_match_query=a);else{if(!m(a))throw new TypeError("Argument must be string or Query");c.indices.no_match_query=a._self()}return this},boost:function(a){return null==a?c.indices.boost:(c.indices.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MatchAllQuery=function(){var a={match_all:{}};return{boost:function(b){return null==b?a.match_all.boost:(a.match_all.boost=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.MatchQuery=function(a,b){var c={match:{}};return c.match[a]={query:b},{boost:function(b){return null==b?c.match[a].boost:(c.match[a].boost=b,this)},query:function(b){return null==b?c.match[a].query:(c.match[a].query=b,this)},type:function(b){return null==b?c.match[a].type:(b=b.toLowerCase(),("boolean"===b||"phrase"===b||"phrase_prefix"===b)&&(c.match[a].type=b),this)},fuzziness:function(b){return null==b?c.match[a].fuzziness:(c.match[a].fuzziness=b,this)},cutoffFrequency:function(b){return null==b?c.match[a].cutoff_frequency:(c.match[a].cutoff_frequency=b,this)},prefixLength:function(b){return null==b?c.match[a].prefix_length:(c.match[a].prefix_length=b,this)},maxExpansions:function(b){return null==b?c.match[a].max_expansions:(c.match[a].max_expansions=b,this)},operator:function(b){return null==b?c.match[a].operator:(b=b.toLowerCase(),("and"===b||"or"===b)&&(c.match[a].operator=b),this)},slop:function(b){return null==b?c.match[a].slop:(c.match[a].slop=b,this)},analyzer:function(b){return null==b?c.match[a].analyzer:(c.match[a].analyzer=b,this)},minimumShouldMatch:function(b){return null==b?c.match[a].minimum_should_match:(c.match[a].minimum_should_match=b,this)},rewrite:function(b){return null==b?c.match[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.match[a].rewrite=b),this)},fuzzyRewrite:function(b){return null==b?c.match[a].fuzzy_rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.match[a].fuzzy_rewrite=b),this)},fuzzyTranspositions:function(b){return null==b?c.match[a].fuzzy_transpositions:(c.match[a].fuzzy_transpositions=b,this)},lenient:function(b){return null==b?c.match[a].lenient:(c.match[a].lenient=b,this)},zeroTermsQuery:function(b){return null==b?c.match[a].zero_terms_query:(b=b.toLowerCase(),("all"===b||"none"===b)&&(c.match[a].zero_terms_query=b),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MoreLikeThisFieldQuery=function(a,b){var c={mlt_field:{}};return c.mlt_field[a]={like_text:b},{field:function(b){var d=c.mlt_field[a];return null==b?a:(delete c.mlt_field[a],a=b,c.mlt_field[b]=d,this)},likeText:function(b){return null==b?c.mlt_field[a].like_text:(c.mlt_field[a].like_text=b,this)},percentTermsToMatch:function(b){return null==b?c.mlt_field[a].percent_terms_to_match:(c.mlt_field[a].percent_terms_to_match=b,this)},minTermFreq:function(b){return null==b?c.mlt_field[a].min_term_freq:(c.mlt_field[a].min_term_freq=b,this)},maxQueryTerms:function(b){return null==b?c.mlt_field[a].max_query_terms:(c.mlt_field[a].max_query_terms=b,this)},stopWords:function(b){return null==b?c.mlt_field[a].stop_words:(c.mlt_field[a].stop_words=b,this) -},minDocFreq:function(b){return null==b?c.mlt_field[a].min_doc_freq:(c.mlt_field[a].min_doc_freq=b,this)},maxDocFreq:function(b){return null==b?c.mlt_field[a].max_doc_freq:(c.mlt_field[a].max_doc_freq=b,this)},minWordLen:function(b){return null==b?c.mlt_field[a].min_word_len:(c.mlt_field[a].min_word_len=b,this)},maxWordLen:function(b){return null==b?c.mlt_field[a].max_word_len:(c.mlt_field[a].max_word_len=b,this)},analyzer:function(b){return null==b?c.mlt_field[a].analyzer:(c.mlt_field[a].analyzer=b,this)},boostTerms:function(b){return null==b?c.mlt_field[a].boost_terms:(c.mlt_field[a].boost_terms=b,this)},failOnUnsupportedField:function(b){return null==b?c.mlt_field[a].fail_on_unsupported_field:(c.mlt_field[a].fail_on_unsupported_field=b,this)},boost:function(b){return null==b?c.mlt_field[a].boost:(c.mlt_field[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MoreLikeThisQuery=function(a,b){var c={mlt:{like_text:b,fields:[]}};if(i(a))c.mlt.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");c.mlt.fields=a}return{fields:function(a){if(null==a)return c.mlt.fields;if(i(a))c.mlt.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");c.mlt.fields=a}return this},likeText:function(a){return null==a?c.mlt.like_text:(c.mlt.like_text=a,this)},percentTermsToMatch:function(a){return null==a?c.mlt.percent_terms_to_match:(c.mlt.percent_terms_to_match=a,this)},minTermFreq:function(a){return null==a?c.mlt.min_term_freq:(c.mlt.min_term_freq=a,this)},maxQueryTerms:function(a){return null==a?c.mlt.max_query_terms:(c.mlt.max_query_terms=a,this)},stopWords:function(a){return null==a?c.mlt.stop_words:(c.mlt.stop_words=a,this)},minDocFreq:function(a){return null==a?c.mlt.min_doc_freq:(c.mlt.min_doc_freq=a,this)},maxDocFreq:function(a){return null==a?c.mlt.max_doc_freq:(c.mlt.max_doc_freq=a,this)},minWordLen:function(a){return null==a?c.mlt.min_word_len:(c.mlt.min_word_len=a,this)},maxWordLen:function(a){return null==a?c.mlt.max_word_len:(c.mlt.max_word_len=a,this)},analyzer:function(a){return null==a?c.mlt.analyzer:(c.mlt.analyzer=a,this)},boostTerms:function(a){return null==a?c.mlt.boost_terms:(c.mlt.boost_terms=a,this)},failOnUnsupportedField:function(a){return null==a?c.mlt.fail_on_unsupported_field:(c.mlt.fail_on_unsupported_field=a,this)},boost:function(a){return null==a?c.mlt.boost:(c.mlt.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MultiMatchQuery=function(a,b){var c={multi_match:{query:b,fields:[]}};if(i(a))c.multi_match.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");c.multi_match.fields=a}return{fields:function(a){if(null==a)return c.multi_match.fields;if(i(a))c.multi_match.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");c.multi_match.fields=a}return this},useDisMax:function(a){return null==a?c.multi_match.use_dis_max:(c.multi_match.use_dis_max=a,this)},tieBreaker:function(a){return null==a?c.multi_match.tie_breaker:(c.multi_match.tie_breaker=a,this)},cutoffFrequency:function(a){return null==a?c.multi_match.cutoff_frequency:(c.multi_match.cutoff_frequency=a,this)},minimumShouldMatch:function(a){return null==a?c.multi_match.minimum_should_match:(c.multi_match.minimum_should_match=a,this)},rewrite:function(a){return null==a?c.multi_match.rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(c.multi_match.rewrite=a),this)},fuzzyRewrite:function(a){return null==a?c.multi_match.fuzzy_rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(c.multi_match.fuzzy_rewrite=a),this)},lenient:function(a){return null==a?c.multi_match.lenient:(c.multi_match.lenient=a,this)},boost:function(a){return null==a?c.multi_match.boost:(c.multi_match.boost=a,this)},query:function(a){return null==a?c.multi_match.query:(c.multi_match.query=a,this)},type:function(a){return null==a?c.multi_match.type:(a=a.toLowerCase(),("boolean"===a||"phrase"===a||"phrase_prefix"===a)&&(c.multi_match.type=a),this)},fuzziness:function(a){return null==a?c.multi_match.fuzziness:(c.multi_match.fuzziness=a,this)},prefixLength:function(a){return null==a?c.multi_match.prefix_length:(c.multi_match.prefix_length=a,this)},maxExpansions:function(a){return null==a?c.multi_match.max_expansions:(c.multi_match.max_expansions=a,this)},operator:function(a){return null==a?c.multi_match.operator:(a=a.toLowerCase(),("and"===a||"or"===a)&&(c.multi_match.operator=a),this)},slop:function(a){return null==a?c.multi_match.slop:(c.multi_match.slop=a,this)},analyzer:function(a){return null==a?c.multi_match.analyzer:(c.multi_match.analyzer=a,this)},zeroTermsQuery:function(a){return null==a?c.multi_match.zero_terms_query:(a=a.toLowerCase(),("all"===a||"none"===a)&&(c.multi_match.zero_terms_query=a),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.NestedQuery=function(a){var b={nested:{path:a}};return{path:function(a){return null==a?b.nested.path:(b.nested.path=a,this)},query:function(a){if(null==a)return b.nested.query;if(!m(a))throw new TypeError("Argument must be a Query");return b.nested.query=a._self(),this},filter:function(a){if(null==a)return b.nested.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return b.nested.filter=a._self(),this},scoreMode:function(a){return null==a?b.nested.score_mode:(a=a.toLowerCase(),("avg"===a||"total"===a||"max"===a||"none"===a||"sum"===a)&&(b.nested.score_mode=a),this)},scope:function(){return this},boost:function(a){return null==a?b.nested.boost:(b.nested.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.PrefixQuery=function(a,b){var c={prefix:{}};return c.prefix[a]={value:b},{field:function(b){var d=c.prefix[a];return null==b?a:(delete c.prefix[a],a=b,c.prefix[b]=d,this)},value:function(b){return null==b?c.prefix[a].value:(c.prefix[a].value=b,this)},rewrite:function(b){return null==b?c.prefix[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.prefix[a].rewrite=b),this)},boost:function(b){return null==b?c.prefix[a].boost:(c.prefix[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.QueryStringQuery=function(a){var b={query_string:{}};return b.query_string.query=a,{query:function(a){return null==a?b.query_string.query:(b.query_string.query=a,this)},defaultField:function(a){return null==a?b.query_string.default_field:(b.query_string.default_field=a,this)},fields:function(a){if(null==b.query_string.fields&&(b.query_string.fields=[]),null==a)return b.query_string.fields;if(i(a))b.query_string.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");b.query_string.fields=a}return this},useDisMax:function(a){return null==a?b.query_string.use_dis_max:(b.query_string.use_dis_max=a,this)},defaultOperator:function(a){return null==a?b.query_string.default_operator:(a=a.toUpperCase(),("AND"===a||"OR"===a)&&(b.query_string.default_operator=a),this)},analyzer:function(a){return null==a?b.query_string.analyzer:(b.query_string.analyzer=a,this)},quoteAnalyzer:function(a){return null==a?b.query_string.quote_analyzer:(b.query_string.quote_analyzer=a,this)},allowLeadingWildcard:function(a){return null==a?b.query_string.allow_leading_wildcard:(b.query_string.allow_leading_wildcard=a,this)},lowercaseExpandedTerms:function(a){return null==a?b.query_string.lowercase_expanded_terms:(b.query_string.lowercase_expanded_terms=a,this)},enablePositionIncrements:function(a){return null==a?b.query_string.enable_position_increments:(b.query_string.enable_position_increments=a,this)},fuzzyPrefixLength:function(a){return null==a?b.query_string.fuzzy_prefix_length:(b.query_string.fuzzy_prefix_length=a,this)},fuzzyMinSim:function(a){return null==a?b.query_string.fuzzy_min_sim:(b.query_string.fuzzy_min_sim=a,this)},phraseSlop:function(a){return null==a?b.query_string.phrase_slop:(b.query_string.phrase_slop=a,this)},boost:function(a){return null==a?b.query_string.boost:(b.query_string.boost=a,this)},analyzeWildcard:function(a){return null==a?b.query_string.analyze_wildcard:(b.query_string.analyze_wildcard=a,this)},autoGeneratePhraseQueries:function(a){return null==a?b.query_string.auto_generate_phrase_queries:(b.query_string.auto_generate_phrase_queries=a,this)},minimumShouldMatch:function(a){return null==a?b.query_string.minimum_should_match:(b.query_string.minimum_should_match=a,this)},tieBreaker:function(a){return null==a?b.query_string.tie_breaker:(b.query_string.tie_breaker=a,this)},escape:function(a){return null==a?b.query_string.escape:(b.query_string.escape=a,this)},fuzzyMaxExpansions:function(a){return null==a?b.query_string.fuzzy_max_expansions:(b.query_string.fuzzy_max_expansions=a,this)},fuzzyRewrite:function(a){return null==a?b.query_string.fuzzy_rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(b.query_string.fuzzy_rewrite=a),this)},rewrite:function(a){return null==a?b.query_string.rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(b.query_string.rewrite=a),this)},quoteFieldSuffix:function(a){return null==a?b.query_string.quote_field_suffix:(b.query_string.quote_field_suffix=a,this)},lenient:function(a){return null==a?b.query_string.lenient:(b.query_string.lenient=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.RangeQuery=function(a){var b={range:{}};return b.range[a]={},{field:function(c){var d=b.range[a];return null==c?a:(delete b.range[a],a=c,b.range[c]=d,this)},from:function(c){return null==c?b.range[a].from:(b.range[a].from=c,this)},to:function(c){return null==c?b.range[a].to:(b.range[a].to=c,this)},includeLower:function(c){return null==c?b.range[a].include_lower:(b.range[a].include_lower=c,this)},includeUpper:function(c){return null==c?b.range[a].include_upper:(b.range[a].include_upper=c,this)},gt:function(c){return null==c?b.range[a].gt:(b.range[a].gt=c,this)},gte:function(c){return null==c?b.range[a].gte:(b.range[a].gte=c,this)},lt:function(c){return null==c?b.range[a].lt:(b.range[a].lt=c,this)},lte:function(c){return null==c?b.range[a].lte:(b.range[a].lte=c,this)},boost:function(c){return null==c?b.range[a].boost:(b.range[a].boost=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.RegexpQuery=function(a,b){var c={regexp:{}};return c.regexp[a]={value:b},{field:function(b){var d=c.regexp[a];return null==b?a:(delete c.regexp[a],a=b,c.regexp[b]=d,this)},value:function(b){return null==b?c.regexp[a].value:(c.regexp[a].value=b,this)},flags:function(b){return null==b?c.regexp[a].flags:(c.regexp[a].flags=b,this)},flagsValue:function(b){return null==b?c.regexp[a].flags_value:(c.regexp[a].flags_value=b,this)},rewrite:function(b){return null==b?c.regexp[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.regexp[a].rewrite=b),this)},boost:function(b){return null==b?c.regexp[a].boost:(c.regexp[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.SpanFirstQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a SpanQuery");var c={span_first:{match:a._self(),end:b}};return{match:function(a){if(null==a)return c.span_first.match;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.span_first.match=a._self(),this},end:function(a){return null==a?c.span_first.end:(c.span_first.end=a,this)},boost:function(a){return null==a?c.span_first.boost:(c.span_first.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.SpanMultiTermQuery=function(a){if(null!=a&&!m(a))throw new TypeError("Argument must be a MultiTermQuery");var b={span_multi:{match:{}}};return null!=a&&(b.span_multi.match=a._self()),{match:function(a){if(null==a)return b.span_multi.match;if(!m(a))throw new TypeError("Argument must be a MultiTermQuery");return b.span_multi.match=a._self(),this},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.SpanNearQuery=function(a,b){var c,d,e={span_near:{clauses:[],slop:b}};if(m(a))e.span_near.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(c=0,d=a.length;d>c;c++){if(!m(a[c]))throw new TypeError("Argument must be array of SpanQueries");e.span_near.clauses.push(a[c]._self())}}return{clauses:function(a){var b,c;if(null==a)return e.span_near.clauses;if(m(a))e.span_near.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(e.span_near.clauses=[],b=0,c=a.length;c>b;b++){if(!m(a[b]))throw new TypeError("Argument must be array of SpanQueries");e.span_near.clauses.push(a[b]._self())}}return this},slop:function(a){return null==a?e.span_near.slop:(e.span_near.slop=a,this)},inOrder:function(a){return null==a?e.span_near.in_order:(e.span_near.in_order=a,this)},collectPayloads:function(a){return null==a?e.span_near.collect_payloads:(e.span_near.collect_payloads=a,this)},boost:function(a){return null==a?e.span_near.boost:(e.span_near.boost=a,this)},toString:function(){return JSON.stringify(e)},_type:function(){return"query"},_self:function(){return e}}},E.SpanNotQuery=function(a,b){if(!m(a)||!m(b))throw new TypeError("Argument must be a SpanQuery");var c={span_not:{include:a._self(),exclude:b._self()}};return{include:function(a){if(null==a)return c.span_not.include;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.span_not.include=a._self(),this},exclude:function(a){if(null==a)return c.span_not.exclude;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.span_not.exclude=a._self(),this},boost:function(a){return null==a?c.span_not.boost:(c.span_not.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.SpanOrQuery=function(a){var b,c,d={span_or:{clauses:[]}};if(m(a))d.span_or.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(b=0,c=a.length;c>b;b++){if(!m(a[b]))throw new TypeError("Argument must be array of SpanQueries");d.span_or.clauses.push(a[b]._self())}}return{clauses:function(a){var b,c;if(null==a)return d.span_or.clauses;if(m(a))d.span_or.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(d.span_or.clauses=[],b=0,c=a.length;c>b;b++){if(!m(a[b]))throw new TypeError("Argument must be array of SpanQueries");d.span_or.clauses.push(a[b]._self())}}return this},boost:function(a){return null==a?d.span_or.boost:(d.span_or.boost=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"query"},_self:function(){return d}}},E.SpanTermQuery=function(a,b){var c={span_term:{}};return c.span_term[a]={term:b},{field:function(b){var d=c.span_term[a];return null==b?a:(delete c.span_term[a],a=b,c.span_term[b]=d,this)},term:function(b){return null==b?c.span_term[a].term:(c.span_term[a].term=b,this)},boost:function(b){return null==b?c.span_term[a].boost:(c.span_term[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.TermQuery=function(a,b){var c={term:{}};return c.term[a]={term:b},{field:function(b){var d=c.term[a];return null==b?a:(delete c.term[a],a=b,c.term[b]=d,this)},term:function(b){return null==b?c.term[a].term:(c.term[a].term=b,this)},boost:function(b){return null==b?c.term[a].boost:(c.term[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.TermsQuery=function(a,b){var c={terms:{}};if(i(b))c.terms[a]=[b];else{if(!g(b))throw new TypeError("Argument must be string or array");c.terms[a]=b}return{field:function(b){var d=c.terms[a];return null==b?a:(delete c.terms[a],a=b,c.terms[b]=d,this)},terms:function(b){if(null==b)return c.terms[a];if(i(b))c.terms[a].push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");c.terms[a]=b}return this},minimumShouldMatch:function(a){return null==a?c.terms.minimum_should_match:(c.terms.minimum_should_match=a,this)},disableCoord:function(a){return null==a?c.terms.disable_coord:(c.terms.disable_coord=a,this)},boost:function(a){return null==a?c.terms.boost:(c.terms.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.TopChildrenQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");var c={top_children:{query:a._self(),type:b}};return{query:function(a){if(null==a)return c.top_children.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.top_children.query=a._self(),this},type:function(a){return null==a?c.top_children.type:(c.top_children.type=a,this)},scope:function(){return this},score:function(a){return null==a?c.top_children.score:(a=a.toLowerCase(),("max"===a||"sum"===a||"avg"===a||"total"===a)&&(c.top_children.score=a),this)},scoreMode:function(a){return null==a?c.top_children.score_mode:(a=a.toLowerCase(),("max"===a||"sum"===a||"avg"===a||"total"===a)&&(c.top_children.score_mode=a),this)},factor:function(a){return null==a?c.top_children.factor:(c.top_children.factor=a,this)},incrementalFactor:function(a){return null==a?c.top_children.incremental_factor:(c.top_children.incremental_factor=a,this)},boost:function(a){return null==a?c.top_children.boost:(c.top_children.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.WildcardQuery=function(a,b){var c={wildcard:{}};return c.wildcard[a]={value:b},{field:function(b){var d=c.wildcard[a];return null==b?a:(delete c.wildcard[a],a=b,c.wildcard[b]=d,this)},value:function(b){return null==b?c.wildcard[a].value:(c.wildcard[a].value=b,this)},rewrite:function(b){return null==b?c.wildcard[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.wildcard[a].rewrite=b),this)},boost:function(b){return null==b?c.wildcard[a].boost:(c.wildcard[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.ClusterHealth=function(){var a={},b=["indices"];return{indices:function(b){if(null==a.indices&&(a.indices=[]),null==b)return a.indices;if(i(b))a.indices.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.indices=b}return this},local:function(b){return null==b?a.local:(a.local=b,this)},masterTimeout:function(b){return null==b?a.master_timeout:(a.master_timeout=b,this)},timeout:function(b){return null==b?a.timeout:(a.timeout=b,this)},waitForStatus:function(b){return null==b?a.wait_for_status:(b=b.toLowerCase(),("green"===b||"yellow"===b||"red"===b)&&(a.wait_for_status=b),this)},waitForRelocatingShards:function(b){return null==b?a.wait_for_relocating_shards:(a.wait_for_relocating_shards=b,this)},waitForActiveShards:function(b){return null==b?a.wait_for_active_shards:(a.wait_for_active_shards=b,this)},waitForNodes:function(b){return null==b?a.wait_for_nodes:(a.wait_for_nodes=b,this)},level:function(b){return null==b?a.level:(b=b.toLowerCase(),("cluster"===b||"indices"===b||"shards"===b)&&(a.level=b),this)},toString:function(){return JSON.stringify(a)},_type:function(){return"cluster health"},_self:function(){return a},doHealth:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_cluster/health";return a.indices&&a.indices.length>0&&(f=f+"/"+a.indices.join()),E.client.get(f,e(a,b),c,d)}}},E.ClusterState=function(){var a={},b=[];return{local:function(b){return null==b?a.local:(a.local=b,this)},masterTimeout:function(b){return null==b?a.master_timeout:(a.master_timeout=b,this)},filterNodes:function(b){return null==b?a.filter_nodes:(a.filter_nodes=b,this)},filterRoutingTable:function(b){return null==b?a.filter_routing_table:(a.filter_routing_table=b,this)},filterMetadata:function(b){return null==b?a.filter_metadata:(a.filter_metadata=b,this)},filterBlocks:function(b){return null==b?a.filter_blocks:(a.filter_blocks=b,this)},filterIndices:function(b){if(null==a.filter_indices&&(a.filter_indices=[]),null==b)return a.filter_indices;if(i(b))a.filter_indices.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.filter_indices=b}return this},filterIndexTemplates:function(b){if(null==a.filter_index_templates&&(a.filter_index_templates=[]),null==b)return a.filter_index_templates;if(i(b))a.filter_index_templates.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.filter_index_templates=b}return this},toString:function(){return JSON.stringify(a)},_type:function(){return"cluster state"},_self:function(){return a},doState:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_cluster/state";return E.client.get(f,e(a,b),c,d)}}},E.NodeInfo=function(){var a={},b=["nodes"];return{nodes:function(b){if(null==a.nodes&&(a.nodes=[]),null==b)return a.nodes;if(i(b))a.nodes.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.nodes=b}return this},clear:function(b){return null==b?a.clear:(a.clear=b,this)},all:function(b){return null==b?a.all:(a.all=b,this)},settings:function(b){return null==b?a.settings:(a.settings=b,this)},os:function(b){return null==b?a.os:(a.os=b,this)},process:function(b){return null==b?a.process:(a.process=b,this)},jvm:function(b){return null==b?a.jvm:(a.jvm=b,this)},threadPool:function(b){return null==b?a.thread_pool:(a.thread_pool=b,this)},network:function(b){return null==b?a.network:(a.network=b,this)},transport:function(b){return null==b?a.transport:(a.transport=b,this)},http:function(b){return null==b?a.http:(a.http=b,this)},plugin:function(b){return null==b?a.plugin:(a.plugin=b,this)},timeout:function(b){return null==b?a.timeout:(a.timeout=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"node info"},_self:function(){return a},doInfo:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_nodes";return a.nodes&&a.nodes.length>0&&(f=f+"/"+a.nodes.join()),E.client.get(f,e(a,b),c,d)}}},E.NodeStats=function(){var a={},b=["nodes"];return{nodes:function(b){if(null==a.nodes&&(a.nodes=[]),null==b)return a.nodes;if(i(b))a.nodes.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.nodes=b}return this},clear:function(b){return null==b?a.clear:(a.clear=b,this)},all:function(b){return null==b?a.all:(a.all=b,this)},indices:function(b){return null==b?a.indices:(a.indices=b,this)},os:function(b){return null==b?a.os:(a.os=b,this)},process:function(b){return null==b?a.process:(a.process=b,this)},jvm:function(b){return null==b?a.jvm:(a.jvm=b,this)},threadPool:function(b){return null==b?a.thread_pool:(a.thread_pool=b,this)},network:function(b){return null==b?a.network:(a.network=b,this)},fs:function(b){return null==b?a.fs:(a.fs=b,this)},transport:function(b){return null==b?a.transport:(a.transport=b,this)},http:function(b){return null==b?a.http:(a.http=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"node stats"},_self:function(){return a},doStats:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_nodes";return a.nodes&&a.nodes.length>0&&(f=f+"/"+a.nodes.join()),f+="/stats",E.client.get(f,e(a,b),c,d)}}},E.GeoPoint=function(b){var c=[0,0];return null!=b&&g(b)&&2===b.length&&(c=[b[1],b[0]]),{properties:function(b){return null==b?c:(h(b)&&a(b,"lat")&&a(b,"lon")?c={lat:b.lat,lon:b.lon}:h(b)&&a(b,"geohash")&&(c={geohash:b.geohash}),this)},string:function(a){return null==a?c:(i(a)&&-1!==a.indexOf(",")&&(c=a),this)},geohash:function(a,b){return b=null!=b&&j(b)?b:12,null==a?c:(i(a)&&a.length===b&&(c=a),this)},array:function(a){return null==a?c:(g(a)&&2===a.length&&(c=[a[1],a[0]]),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"geo point"},_self:function(){return c}}},E.Highlight=function(c){var d={fields:{}},e=function(b,c,e){null==b?d[c]=e:(a(d.fields,b)||(d.fields[b]={}),d.fields[b][c]=e)};return null!=c&&(i(c)?d.fields[c]={}:g(c)&&b(c,function(a){d.fields[a]={}})),{fields:function(c){return null==c?d.fields:void(i(c)?a(d.fields,c)||(d.fields[c]={}):g(c)&&b(c,function(b){a(d.fields,b)||(d.fields[b]={})}))},preTags:function(a,b){return null===a&&null!=b?d.fields[b].pre_tags:null==a?d.pre_tags:(i(a)?e(b,"pre_tags",[a]):g(a)&&e(b,"pre_tags",a),this)},postTags:function(a,b){return null===a&&null!=b?d.fields[b].post_tags:null==a?d.post_tags:(i(a)?e(b,"post_tags",[a]):g(a)&&e(b,"post_tags",a),this)},order:function(a,b){return null===a&&null!=b?d.fields[b].order:null==a?d.order:(a=a.toLowerCase(),"score"===a&&e(b,"order",a),this)},tagsSchema:function(a){return null==a?d.tags_schema:(a=a.toLowerCase(),"styled"===a&&(d.tags_schema=a),this)},highlightFilter:function(a,b){return null===a&&null!=b?d.fields[b].highlight_filter:null==a?d.highlight_filter:(e(b,"highlight_filter",a),this)},fragmentSize:function(a,b){return null===a&&null!=b?d.fields[b].fragment_size:null==a?d.fragment_size:(e(b,"fragment_size",a),this)},numberOfFragments:function(a,b){return null===a&&null!=b?d.fields[b].number_of_fragments:null==a?d.number_of_fragments:(e(b,"number_of_fragments",a),this)},encoder:function(a){return null==a?d.encoder:(a=a.toLowerCase(),("default"===a||"html"===a)&&(d.encoder=a),this)},requireFieldMatch:function(a,b){return null===a&&null!=b?d.fields[b].require_field_match:null==a?d.require_field_match:(e(b,"require_field_match",a),this)},boundaryMaxScan:function(a,b){return null===a&&null!=b?d.fields[b].boundary_max_scan:null==a?d.boundary_max_scan:(e(b,"boundary_max_scan",a),this)},boundaryChars:function(a,b){return null===a&&null!=b?d.fields[b].boundary_chars:null==a?d.boundary_chars:(e(b,"boundary_chars",a),this)},type:function(a,b){return null===a&&null!=b?d.fields[b].type:null==a?d.type:(a=a.toLowerCase(),("fast-vector-highlighter"===a||"highlighter"===a)&&e(b,"type",a),this)},fragmenter:function(a,b){return null===a&&null!=b?d.fields[b].fragmenter:null==a?d.fragmenter:(a=a.toLowerCase(),("simple"===a||"span"===a)&&e(b,"fragmenter",a),this)},options:function(a,b){if(null===a&&null!=b)return d.fields[b].options;if(null==a)return d.options;if(!h(a)||g(a)||l(a))throw new TypeError("Parameter must be an object");return e(b,"options",a),this},toString:function(){return JSON.stringify(d)},_type:function(){return"highlight"},_self:function(){return d}}},E.IndexedShape=function(a,b){var c={type:a,id:b};return{type:function(a){return null==a?c.type:(c.type=a,this)},id:function(a){return null==a?c.id:(c.id=a,this)},index:function(a){return null==a?c.index:(c.index=a,this)},shapeFieldName:function(a){return null==a?c.shape_field_name:(c.shape_field_name=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"indexed shape"},_self:function(){return c}}},E.MultiSearchRequest=function(b){var c,d,e,f={},h=function(){var b="",c=[];d.length>0&&(b=b+"/"+d.join()),e.length>0&&(b=b+"/"+e.join()),b+="/_msearch";for(var g in f)a(f,g)&&""!==f[g]&&c.push(g+"="+encodeURIComponent(f[g]));return c.length>0&&(b=b+"?"+c.join("&")),b};return c=[],b=b||{},d=null==b.indices?[]:i(b.indices)?[b.indices]:b.indices,e=null==b.types?[]:i(b.types)?[b.types]:b.types,0===d.length&&e.length>0&&(d=["_all"]),{requests:function(a){if(null==a)return c;if(C(a))c.push(a);else{if(!g(a))throw new TypeError("Argument must be request or array");c=a}return this},searchType:function(a){return null==a?f.search_type:(a=a.toLowerCase(),("dfs_query_then_fetch"===a||"dfs_query_and_fetch"===a||"query_then_fetch"===a||"query_and_fetch"===a||"scan"===a||"count"===a)&&(f.search_type=a),this)},indices:function(a){if(null==a)return d;if(i(a))d=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");d=a}return 0===d.length&&e.length>0&&(d=["_all"]),this},types:function(a){if(null==a)return e;if(i(a))e=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");e=a}return 0===d.length&&e.length>0&&(d=["_all"]),this},ignoreIndices:function(a){return null==a?f.ignore_indices:(a=a.toLowerCase(),("none"===a||"missing"===a)&&(f.ignore_indices=a),this)},toString:function(){var a,b,d=[];for(a=0,b=c.length;b>a;a++)d.push(c[a]._self());return JSON.stringify(d)},_type:function(){return"multi search request"},_self:function(){var a,b,d=[];for(a=0,b=c.length;b>a;a++)d.push(c[a]._self());return d},doSearch:function(a,b){var d,e,f,g,i,j="";if(null==E.client)throw new Error("No Client Set");for(d=0,e=c.length;e>d;d++)f=c[d],i={},f.indices().length>0&&(i.indices=f.indices()),f.types().length>0&&(i.types=f.types()),null!=f.searchType()&&(i.search_type=f.searchType()),null!=f.preference()&&(i.preference=f.preference()),null!=f.routing()&&(i.routing=f.routing()),null!=f.ignoreIndices()&&(i.ignore_indices=f.ignoreIndices()),j=j+JSON.stringify(i)+"\n",g=f._self(),null!=f.timeout()&&(g.timeout=f.timeout()),j=j+JSON.stringify(g)+"\n";return E.client.post(h(),j,a,b)}}},E.Request=function(b){var d,e,f,h={},j=function(b){var c="",d=[];e.length>0&&(c=c+"/"+e.join()),f.length>0&&(c=c+"/"+f.join()),b.length>0&&"/"!==b[0]&&(c+="/"),c+=b;for(var g in h)a(h,g)&&""!==h[g]&&d.push(g+"="+encodeURIComponent(h[g]));return d.length>0&&(c=c+"?"+d.join("&")),c};return d={},b=b||{},e=null==b.indices?[]:i(b.indices)?[b.indices]:b.indices,f=null==b.types?[]:i(b.types)?[b.types]:b.types,0===e.length&&f.length>0&&(e=["_all"]),null!=b.routing&&(h.routing=b.routing),{sort:function(){var b,c;if(a(d,"sort")||(d.sort=[]),0===arguments.length)return d.sort;if(1===arguments.length){var e=arguments[0];if(i(e))d.sort.push(e);else if(u(e))d.sort.push(e._self());else{if(!g(e))throw new TypeError("Argument must be string, Sort, or array");for(d.sort=[],b=0,c=e.length;c>b;b++)if(i(e[b]))d.sort.push(e[b]);else{if(!u(e[b]))throw new TypeError("Invalid object in array");d.sort.push(e[b]._self())}}}else if(2===arguments.length){var f=arguments[0],h=arguments[1];if(i(f)&&i(h)&&(h=h.toLowerCase(),"asc"===h||"desc"===h)){var j={};j[f]={order:h},d.sort.push(j)}}return this},trackScores:function(a){return null==a?d.track_scores:(d.track_scores=a,this)},size:function(a){return null==a?d.size:(d.size=a,this)},timeout:function(a){return null==a?h.timeout:(h.timeout=a,this)},routing:function(a){return null==a?h.routing:(h.routing=a,this)},replication:function(a){return null==a?h.replication:(a=a.toLowerCase(),("async"===a||"sync"===a||"default"===a)&&(h.replication=a),this)},consistency:function(a){return null==a?h.consistency:(a=a.toLowerCase(),("default"===a||"one"===a||"quorum"===a||"all"===a)&&(h.consistency=a),this)},searchType:function(a){return null==a?h.search_type:(a=a.toLowerCase(),("dfs_query_then_fetch"===a||"dfs_query_and_fetch"===a||"query_then_fetch"===a||"query_and_fetch"===a||"scan"===a||"count"===a)&&(h.search_type=a),this) -},fields:function(a){if(null==a)return d.fields;if(null==d.fields&&(d.fields=[]),i(a))d.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");d.fields=a}return this},rescore:function(a){if(null==a)return d.rescore;if(!n(a))throw new TypeError("Argument must be a Rescore");return d.rescore=a._self(),this},from:function(a){return null==a?d.from:(d.from=a,this)},query:function(a){if(null==a)return d.query;if(!m(a))throw new TypeError("Argument must be a Query");return d.query=a._self(),this},indices:function(a){if(null==a)return e;if(i(a))e=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");e=a}return 0===e.length&&f.length>0&&(e=["_all"]),this},types:function(a){if(null==a)return f;if(i(a))f=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");f=a}return 0===e.length&&f.length>0&&(e=["_all"]),this},facet:function(a){if(null==a)return d.facets;if(null==d.facets&&(d.facets={}),!p(a))throw new TypeError("Argument must be a Facet");return c(d.facets,a._self()),this},filter:function(a){if(null==a)return d.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return d.filter=a._self(),this},highlight:function(a){if(null==a)return d.highlight;if(!v(a))throw new TypeError("Argument must be a Highlight object");return d.highlight=a._self(),this},suggest:function(a){if(null==a)return d.suggest;if(null==d.suggest&&(d.suggest={}),i(a))d.suggest.text=a;else{if(!w(a))throw new TypeError("Argument must be a string or Suggest object");c(d.suggest,a._self())}return this},scriptField:function(a){if(null==a)return d.script_fields;if(null==d.script_fields&&(d.script_fields={}),!q(a))throw new TypeError("Argument must be a ScriptField");return c(d.script_fields,a._self()),this},preference:function(a){return null==a?h.preference:(h.preference=a,this)},local:function(a){return null==a?h.local:(h.local=a,this)},ignoreIndices:function(a){return null==a?h.ignore_indices:(a=a.toLowerCase(),("none"===a||"missing"===a)&&(h.ignore_indices=a),this)},indexBoost:function(a,b){return null==d.indices_boost&&(d.indices_boost={}),0===arguments.length?d.indices_boost:(d.indices_boost[a]=b,this)},explain:function(a){return null==a?d.explain:(d.explain=a,this)},version:function(a){return null==a?d.version:(d.version=a,this)},minScore:function(a){return null==a?d.min_score:(d.min_score=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"request"},_self:function(){return d},doDeleteByQuery:function(a,b){var c=JSON.stringify(d.query);if(null==E.client)throw new Error("No Client Set");return E.client.del(j("_query"),c,a,b)},doCount:function(a,b){var c=JSON.stringify(d.query);if(null==E.client)throw new Error("No Client Set");return E.client.post(j("_count"),c,a,b)},doSearch:function(a,b){var c=JSON.stringify(d);if(null==E.client)throw new Error("No Client Set");return E.client.post(j("_search"),c,a,b)},doSearchShards:function(a,b){if(null==E.client)throw new Error("No Client Set");return E.client.post(j("_search_shards"),"",a,b)}}},E.Rescore=function(a,b){if(null!=a&&!j(a))throw new TypeError("Argument must be a Number");if(null!=b&&!m(b))throw new TypeError("Argument must be a Query");var c={query:{}};return null!=a&&(c.window_size=a),null!=b&&(c.query.rescore_query=b._self()),{rescoreQuery:function(a){if(null==a)return c.query.rescore_query;if(!m(a))throw new TypeError("Argument must be a Query");return c.query.rescore_query=a._self(),this},queryWeight:function(a){if(null==a)return c.query.query_weight;if(!j(a))throw new TypeError("Argument must be a Number");return c.query.query_weight=a,this},rescoreQueryWeight:function(a){if(null==a)return c.query.rescore_query_weight;if(!j(a))throw new TypeError("Argument must be a Number");return c.query.rescore_query_weight=a,this},windowSize:function(a){if(null==a)return c.window_size;if(!j(a))throw new TypeError("Argument must be a Number");return c.window_size=a,this},scoreMode:function(a){return null==a?c.query.score_mode:(a=a.toLowerCase(),("total"===a||"min"===a||"max"===a||"multiply"===a||"avg"===a)&&(c.query.score_mode=a),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"rescore"},_self:function(){return c}}},E.ScriptField=function(a){var b={};return b[a]={},{lang:function(c){return null==c?b[a].lang:(b[a].lang=c,this)},script:function(c){return null==c?b[a].script:(b[a].script=c,this)},params:function(c){return null==c?b[a].params:(b[a].params=c,this)},ignoreFailure:function(c){return null==c?b[a].ignore_failure:(b[a].ignore_failure=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"script field"},_self:function(){return b}}},E.Shape=function(a,b){var c={},d=function(a){var b=!1;return("point"===a||"linestring"===a||"polygon"===a||"multipoint"===a||"envelope"===a||"multipolygon"===a||"circle"===a||"multilinestring"===a)&&(b=!0),b};return a=a.toLowerCase(),d(a)&&(c.type=a,c.coordinates=b),{type:function(a){return null==a?c.type:(a=a.toLowerCase(),d(a)&&(c.type=a),this)},coordinates:function(a){return null==a?c.coordinates:(c.coordinates=a,this)},radius:function(a){return null==a?c.radius:(c.radius=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"shape"},_self:function(){return c}}},E.Sort=function(a){null==a&&(a="_score");var b={},c=a,d="_geo_distance",e="_script";return b[c]={},{field:function(d){var e=b[c];return null==d?a:(delete b[c],a=d,c=d,b[c]=e,this)},geoDistance:function(e){var f=b[c];if(null==e)return b[c][a];if(!r(e))throw new TypeError("Argument must be a GeoPoint");return delete b[c],c=d,b[c]=f,b[c][a]=e._self(),this},script:function(a){var d=b[c];return null==a?b[c].script:(delete b[c],c=e,b[c]=d,b[c].script=a,this)},order:function(a){return null==a?b[c].order:(a=a.toLowerCase(),("asc"===a||"desc"===a)&&(b[c].order=a),this)},asc:function(){return b[c].order="asc",this},desc:function(){return b[c].order="desc",this},reverse:function(a){return null==a?b[c].reverse:(b[c].reverse=a,this)},missing:function(a){return null==a?b[c].missing:(b[c].missing=a,this)},ignoreUnmapped:function(a){return null==a?b[c].ignore_unmapped:(b[c].ignore_unmapped=a,this)},unit:function(a){return null==a?b[c].unit:(a=a.toLowerCase(),("mi"===a||"km"===a)&&(b[c].unit=a),this)},normalize:function(a){return null==a?b[c].normalize:(b[c].normalize=a,this)},distanceType:function(a){return null==a?b[c].distance_type:(a=a.toLowerCase(),("arc"===a||"plane"===a)&&(b[c].distance_type=a),this)},params:function(a){return null==a?b[c].params:(b[c].params=a,this)},lang:function(a){return null==a?b[c].lang:(b[c].lang=a,this)},type:function(a){return null==a?b[c].type:(a=a.toLowerCase(),("string"===a||"number"===a)&&(b[c].type=a),this)},mode:function(a){return null==a?b[c].mode:(a=a.toLowerCase(),("min"===a||"max"===a||"sum"===a||"avg"===a)&&(b[c].mode=a),this)},nestedPath:function(a){return null==a?b[c].nested_path:(b[c].nested_path=a,this)},nestedFilter:function(a){if(null==a)return b[c].nested_filter;if(!o(a))throw new TypeError("Argument must be a Filter");return b[c].nested_filter=a._self(),this},toString:function(){return JSON.stringify(b)},_type:function(){return"sort"},_self:function(){return b}}},E.DirectGenerator=function(){var a=E.DirectSettingsMixin(),b=a._self();return c(a,{preFilter:function(a){return null==a?b.pre_filter:(b.pre_filter=a,this)},postFilter:function(a){return null==a?b.post_filter:(b.post_filter=a,this)},field:function(a){return null==a?b.field:(b.field=a,this)},size:function(a){return null==a?b.size:(b.size=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"generator"},_self:function(){return b}})},E.DirectSettingsMixin=function(){var a={};return{accuracy:function(b){return null==b?a.accuracy:(a.accuracy=b,this)},suggestMode:function(b){return null==b?a.suggest_mode:(b=b.toLowerCase(),("missing"===b||"popular"===b||"always"===b)&&(a.suggest_mode=b),this)},sort:function(b){return null==b?a.sort:(b=b.toLowerCase(),("score"===b||"frequency"===b)&&(a.sort=b),this)},stringDistance:function(b){return null==b?a.string_distance:(b=b.toLowerCase(),("internal"===b||"damerau_levenshtein"===b||"levenstein"===b||"jarowinkler"===b||"ngram"===b)&&(a.string_distance=b),this)},maxEdits:function(b){return null==b?a.max_edits:(a.max_edits=b,this)},maxInspections:function(b){return null==b?a.max_inspections:(a.max_inspections=b,this)},maxTermFreq:function(b){return null==b?a.max_term_freq:(a.max_term_freq=b,this)},prefixLen:function(b){return null==b?a.prefix_len:(a.prefix_len=b,this)},minWordLen:function(b){return null==b?a.min_word_len:(a.min_word_len=b,this)},minDocFreq:function(b){return null==b?a.min_doc_freq:(a.min_doc_freq=b,this)},_self:function(){return a}}},E.PhraseSuggester=function(a){var b={};return b[a]={phrase:{}},{text:function(c){return null==c?b[a].text:(b[a].text=c,this)},analyzer:function(c){return null==c?b[a].phrase.analyzer:(b[a].phrase.analyzer=c,this)},field:function(c){return null==c?b[a].phrase.field:(b[a].phrase.field=c,this)},size:function(c){return null==c?b[a].phrase.size:(b[a].phrase.size=c,this)},shardSize:function(c){return null==c?b[a].phrase.shard_size:(b[a].phrase.shard_size=c,this)},realWorldErrorLikelihood:function(c){return null==c?b[a].phrase.real_world_error_likelihood:(b[a].phrase.real_world_error_likelihood=c,this)},confidence:function(c){return null==c?b[a].phrase.confidence:(b[a].phrase.confidence=c,this)},separator:function(c){return null==c?b[a].phrase.separator:(b[a].phrase.separator=c,this)},maxErrors:function(c){return null==c?b[a].phrase.max_errors:(b[a].phrase.max_errors=c,this)},gramSize:function(c){return null==c?b[a].phrase.gram_size:(b[a].phrase.gram_size=c,this)},forceUnigrams:function(c){return null==c?b[a].phrase.force_unigrams:(b[a].phrase.force_unigrams=c,this)},tokenLimit:function(c){return null==c?b[a].phrase.token_limit:(b[a].phrase.token_limit=c,this)},linearSmoothing:function(c,d,e){return 0===arguments.length?b[a].phrase.smoothing:(b[a].phrase.smoothing={linear:{trigram_lambda:c,bigram_lambda:d,unigram_lambda:e}},this)},laplaceSmoothing:function(c){return null==c?b[a].phrase.smoothing:(b[a].phrase.smoothing={laplace:{alpha:c}},this)},stupidBackoffSmoothing:function(c){return null==c?b[a].phrase.smoothing:(b[a].phrase.smoothing={stupid_backoff:{discount:c}},this)},highlight:function(c,d){return 0===arguments.length?b[a].phrase.highlight:(b[a].phrase.highlight={pre_tag:c,post_tag:d},this)},directGenerator:function(c){var d,e;if(null==b[a].phrase.direct_generator&&(b[a].phrase.direct_generator=[]),null==c)return b[a].phrase.direct_generator;if(x(c))b[a].phrase.direct_generator.push(c._self());else{if(!g(c))throw new TypeError("Argument must be a Generator or array of Generators");for(b[a].phrase.direct_generator=[],d=0,e=c.length;e>d;d++){if(!x(c[d]))throw new TypeError("Argument must be an array of Generators");b[a].phrase.direct_generator.push(c[d]._self())}}return this},toString:function(){return JSON.stringify(b)},_type:function(){return"suggest"},_self:function(){return b}}},E.TermSuggester=function(a){var b={},d=E.DirectSettingsMixin();return b[a]={term:d._self()},c(d,{text:function(c){return null==c?b[a].text:(b[a].text=c,this)},analyzer:function(c){return null==c?b[a].term.analyzer:(b[a].term.analyzer=c,this)},field:function(c){return null==c?b[a].term.field:(b[a].term.field=c,this)},size:function(c){return null==c?b[a].term.size:(b[a].term.size=c,this)},shardSize:function(c){return null==c?b[a].term.shard_size:(b[a].term.shard_size=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"suggest"},_self:function(){return b}})},E.noConflict=function(){return F.ejs=G,this}}.call(this),define("../vendor/elasticjs/elastic",function(){}),angular.module("elasticjs.service",[]).factory("ejsResource",["$http",function(a){return function(b,c){var d=window.ejs||{},e=function(a,b,c){return a.then(function(a){return(b||angular.noop)(a.data),a.data},function(a){return(c||angular.noop)(a.data),a.data})};return b!==Object(b)&&(b={server:b}),null==b.server&&(b.server=""),(c||b.basicAuth)&&(b.headers=angular.extend(b.headers||{},{Authorization:"Basic "+(c||b.basicAuth)})),d.client={server:function(a){return null==a?b.server:(b.server=a,this)},post:function(c,d,f,g){c=b.server+c;var h={url:c,data:d,method:"POST"};return e(a(angular.extend(h,b)),f,g)},get:function(c,d,f,g){c=b.server+c;var h={url:c,params:d,method:"GET"};return e(a(angular.extend(h,b)),f,g)},put:function(c,d,f,g){c=b.server+c;var h={url:c,data:d,method:"PUT"};return e(a(angular.extend(h,b)),f,g)},del:function(c,d,f,g){c=b.server+c;var h={url:c,data:d,method:"DELETE"};return e(a(angular.extend(h,b)),f,g)},head:function(c,d,e,f){c=b.server+c;var g={url:c,params:d,method:"HEAD"};return a(angular.extend(g,b)).then(function(a){return(e||angular.noop)(a.headers()),a.headers()},function(){return void(f||angular.noop)(void 0)})}},d}}]),define("elasticjs",function(){}),!function(a){a(function(){a.support.transition=function(){var a=function(){var a,b=document.createElement("bootstrap"),c={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(a in c)if(void 0!==b.style[a])return c[a]}();return a&&{end:a}}()})}(window.jQuery),!function(a){var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){d.trigger("closed").remove()}var d,e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,"")),d=a(f),b&&b.preventDefault(),d.length||(d=e.hasClass("alert")?e:e.parent()),d.trigger(b=a.Event("close")),b.isDefaultPrevented()||(d.removeClass("in"),a.support.transition&&d.hasClass("fade")?d.on(a.support.transition.end,c):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.alert.data-api",b,c.prototype.close)}(window.jQuery),!function(a){var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f="object"==typeof c&&c;e||d.data("button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle")})}(window.jQuery),!function(a){var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},getActiveIndex:function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},to:function(b){var c=this.getActiveIndex(),d=this;if(!(b>this.$items.length-1||0>b))return this.sliding?this.$element.one("slid",function(){d.to(b)}):c==b?this.pause().cycle():this.slide(b>c?"next":"prev",a(this.$items[b]))},pause:function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),clearInterval(this.interval),this.interval=null,this},next:function(){return this.sliding?void 0:this.slide("next")},prev:function(){return this.sliding?void 0:this.slide("prev")},slide:function(b,c){var d,e=this.$element.find(".item.active"),f=c||e[b](),g=this.interval,h="next"==b?"left":"right",i="next"==b?"first":"last",j=this;if(this.sliding=!0,g&&this.pause(),f=f.length?f:this.$element.find(".item")[i](),d=a.Event("slide",{relatedTarget:f[0],direction:h}),!f.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function(){var b=a(j.$indicators.children()[j.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(d),d.isDefaultPrevented())return;f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),this.$element.one(a.support.transition.end,function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),j.sliding=!1,setTimeout(function(){j.$element.trigger("slid")},0)})}else{if(this.$element.trigger(d),d.isDefaultPrevented())return;e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return g&&this.cycle(),this}}};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=a.extend({},a.fn.carousel.defaults,"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.defaults={interval:5e3,pause:"hover"},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d,e=a(this),f=a(e.attr("data-target")||(c=e.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),g=a.extend({},f.data(),e.data());f.carousel(g),(d=e.attr("data-slide-to"))&&f.data("carousel").pause().to(d).cycle(),b.preventDefault()})}(window.jQuery),!function(a){var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b,c,d,e;if(!this.transitioning&&!this.$element.hasClass("in")){if(b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find("> .accordion-group > .in"),d&&d.length){if(e=d.data("collapse"),e&&e.transitioning)return;d.collapse("hide"),e||d.data("collapse",null)}this.$element[b](0),this.transition("addClass",a.Event("show"),"shown"),a.support.transition&&this.$element[b](this.$element[0][c])}},hide:function(){var b;!this.transitioning&&this.$element.hasClass("in")&&(b=this.dimension(),this.reset(this.$element[b]()),this.transition("removeClass",a.Event("hide"),"hidden"),this.$element[b](0))},reset:function(a){var b=this.dimension();return this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element[null!==a?"addClass":"removeClass"]("collapse"),this},transition:function(b,c,d){var e=this,f=function(){"show"==c.type&&e.reset(),e.transitioning=0,e.$element.trigger(d)};this.$element.trigger(c),c.isDefaultPrevented()||(this.transitioning=1,this.$element[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f())},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=a.extend({},a.fn.collapse.defaults,d.data(),"object"==typeof c&&c);e||d.data("collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":d.data();d[a(e).hasClass("in")?"addClass":"removeClass"]("collapsed"),a(e).collapse(f)})}(window.jQuery),!function(a){function b(){a(".dropdown-backdrop").remove(),a(d).each(function(){c(a(this)).removeClass("open")})}function c(b){var c,d=b.attr("data-target");return d||(d=b.attr("href"),d=d&&/#/.test(d)&&d.replace(/.*(?=#[^\s]*$)/,"")),c=d&&a(d),c&&c.length||(c=b.parent()),c}var d="[data-toggle=dropdown]",e=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};e.prototype={constructor:e,toggle:function(){var d,e,f=a(this);if(!f.is(".disabled, :disabled"))return d=c(f),e=d.hasClass("open"),b(),e||("ontouchstart"in document.documentElement&&a('
'+(this.showSeconds?'':"")+(this.showMeridian?'':"")+" "+(this.showSeconds?'":"")+(this.showMeridian?'":"")+''+(this.showSeconds?'':"")+(this.showMeridian?'':"")+"
   
"+b+' :'+c+":'+d+" '+e+"
  
",this.template){case"modal":a='';break;case"dropdown":a='"}return a},getTime:function(){return this.formatTime(this.hour,this.minute,this.second,this.meridian)},hideWidget:function(){this.isOpen!==!1&&(this.showInputs&&this.updateFromWidgetInputs(),this.$element.trigger({type:"hide.timepicker",time:{value:this.getTime(),hours:this.hour,minutes:this.minute,seconds:this.second,meridian:this.meridian}}),"modal"===this.template?this.$widget.modal("hide"):this.$widget.removeClass("open"),a(c).off("mousedown.timepicker"),this.isOpen=!1)},highlightUnit:function(){this.position=this.getCursorPosition(),this.position>=0&&this.position<=2?this.highlightHour():this.position>=3&&this.position<=5?this.highlightMinute():this.position>=6&&this.position<=8?this.showSeconds?this.highlightSecond():this.highlightMeridian():this.position>=9&&this.position<=11&&this.highlightMeridian()},highlightNextUnit:function(){switch(this.highlightedUnit){case"hour":this.highlightMinute();break;case"minute":this.showSeconds?this.highlightSecond():this.showMeridian?this.highlightMeridian():this.highlightHour();break;case"second":this.showMeridian?this.highlightMeridian():this.highlightHour();break;case"meridian":this.highlightHour()}},highlightPrevUnit:function(){switch(this.highlightedUnit){case"hour":this.highlightMeridian();break;case"minute":this.highlightHour();break;case"second":this.highlightMinute();break;case"meridian":this.showSeconds?this.highlightSecond():this.highlightMinute()}},highlightHour:function(){var a=this.$element.get(0);this.highlightedUnit="hour",a.setSelectionRange&&setTimeout(function(){a.setSelectionRange(0,2)},0)},highlightMinute:function(){var a=this.$element.get(0);this.highlightedUnit="minute",a.setSelectionRange&&setTimeout(function(){a.setSelectionRange(3,5)},0)},highlightSecond:function(){var a=this.$element.get(0);this.highlightedUnit="second",a.setSelectionRange&&setTimeout(function(){a.setSelectionRange(6,8)},0)},highlightMeridian:function(){var a=this.$element.get(0);this.highlightedUnit="meridian",a.setSelectionRange&&(this.showSeconds?setTimeout(function(){a.setSelectionRange(9,11)},0):setTimeout(function(){a.setSelectionRange(6,8)},0))},incrementHour:function(){if(this.showMeridian){if(11===this.hour)return this.hour++,this.toggleMeridian();12===this.hour&&(this.hour=0)}return 23===this.hour?void(this.hour=0):(this.hour++,void this.update())},incrementMinute:function(a){var b;b=a?this.minute+a:this.minute+this.minuteStep-this.minute%this.minuteStep,b>59?(this.incrementHour(),this.minute=b-60):this.minute=b,this.update()},incrementSecond:function(){var a=this.second+this.secondStep-this.second%this.secondStep;a>59?(this.incrementMinute(!0),this.second=a-60):this.second=a,this.update()},remove:function(){a("document").off(".timepicker"),this.$widget&&this.$widget.remove(),delete this.$element.data().timepicker},setDefaultTime:function(a){if(this.$element.val())this.updateFromElementVal();else if("current"===a){var b=new Date,c=b.getHours(),d=Math.floor(b.getMinutes()/this.minuteStep)*this.minuteStep,e=Math.floor(b.getSeconds()/this.secondStep)*this.secondStep,f="AM";this.showMeridian&&(0===c?c=12:c>=12?(c>12&&(c-=12),f="PM"):f="AM"),this.hour=c,this.minute=d,this.second=e,this.meridian=f,this.update()}else a===!1?(this.hour=0,this.minute=0,this.second=0,this.meridian="AM"):this.setTime(a)},setTime:function(a){var b,c;this.showMeridian?(b=a.split(" "),c=b[0].split(":"),this.meridian=b[1]):c=a.split(":"),this.hour=parseInt(c[0],10),this.minute=parseInt(c[1],10),this.second=parseInt(c[2],10),isNaN(this.hour)&&(this.hour=0),isNaN(this.minute)&&(this.minute=0),this.showMeridian?(this.hour>12?this.hour=12:this.hour<1&&(this.hour=12),"am"===this.meridian||"a"===this.meridian?this.meridian="AM":("pm"===this.meridian||"p"===this.meridian)&&(this.meridian="PM"),"AM"!==this.meridian&&"PM"!==this.meridian&&(this.meridian="AM")):this.hour>=24?this.hour=23:this.hour<0&&(this.hour=0),this.minute<0?this.minute=0:this.minute>=60&&(this.minute=59),this.showSeconds&&(isNaN(this.second)?this.second=0:this.second<0?this.second=0:this.second>=60&&(this.second=59)),this.update()},showWidget:function(){if(!this.isOpen&&!this.$element.is(":disabled")){var b=this;a(c).on("mousedown.timepicker",function(c){0===a(c.target).closest(".bootstrap-timepicker-widget").length&&b.hideWidget()}),this.$element.trigger({type:"show.timepicker",time:{value:this.getTime(),hours:this.hour,minutes:this.minute,seconds:this.second,meridian:this.meridian}}),this.disableFocus&&this.$element.blur(),this.updateFromElementVal(),"modal"===this.template?this.$widget.modal("show").on("hidden",a.proxy(this.hideWidget,this)):this.isOpen===!1&&this.$widget.addClass("open"),this.isOpen=!0}},toggleMeridian:function(){this.meridian="AM"===this.meridian?"PM":"AM",this.update()},update:function(){this.$element.trigger({type:"changeTime.timepicker",time:{value:this.getTime(),hours:this.hour,minutes:this.minute,seconds:this.second,meridian:this.meridian}}),this.updateElement(),this.updateWidget()},updateElement:function(){this.$element.val(this.getTime()).change()},updateFromElementVal:function(){var a=this.$element.val();a&&this.setTime(a)},updateWidget:function(){if(this.$widget!==!1){var a=this.hour<10?"0"+this.hour:this.hour,b=this.minute<10?"0"+this.minute:this.minute,c=this.second<10?"0"+this.second:this.second;this.showInputs?(this.$widget.find("input.bootstrap-timepicker-hour").val(a),this.$widget.find("input.bootstrap-timepicker-minute").val(b),this.showSeconds&&this.$widget.find("input.bootstrap-timepicker-second").val(c),this.showMeridian&&this.$widget.find("input.bootstrap-timepicker-meridian").val(this.meridian)):(this.$widget.find("span.bootstrap-timepicker-hour").text(a),this.$widget.find("span.bootstrap-timepicker-minute").text(b),this.showSeconds&&this.$widget.find("span.bootstrap-timepicker-second").text(c),this.showMeridian&&this.$widget.find("span.bootstrap-timepicker-meridian").text(this.meridian))}},updateFromWidgetInputs:function(){if(this.$widget!==!1){var b=a("input.bootstrap-timepicker-hour",this.$widget).val()+":"+a("input.bootstrap-timepicker-minute",this.$widget).val()+(this.showSeconds?":"+a("input.bootstrap-timepicker-second",this.$widget).val():"")+(this.showMeridian?" "+a("input.bootstrap-timepicker-meridian",this.$widget).val():"");this.setTime(b)}},widgetClick:function(b){b.stopPropagation(),b.preventDefault();var c=a(b.target).closest("a").data("action");c&&this[c]()},widgetKeydown:function(b){var c=a(b.target).closest("input"),d=c.attr("name");switch(b.keyCode){case 9:if(this.showMeridian){if("meridian"===d)return this.hideWidget()}else if(this.showSeconds){if("second"===d)return this.hideWidget()}else if("minute"===d)return this.hideWidget();this.updateFromWidgetInputs();break;case 27:this.hideWidget();break;case 38:switch(b.preventDefault(),d){case"hour":this.incrementHour();break;case"minute":this.incrementMinute();break;case"second":this.incrementSecond();break;case"meridian":this.toggleMeridian()}break;case 40:switch(b.preventDefault(),d){case"hour":this.decrementHour();break;case"minute":this.decrementMinute();break;case"second":this.decrementSecond();break;case"meridian":this.toggleMeridian()}}}},a.fn.timepicker=function(b){var c=Array.apply(null,arguments);return c.shift(),this.each(function(){var d=a(this),f=d.data("timepicker"),g="object"==typeof b&&b;f||d.data("timepicker",f=new e(this,a.extend({},a.fn.timepicker.defaults,g,a(this).data()))),"string"==typeof b&&f[b].apply(f,c)})},a.fn.timepicker.defaults={defaultTime:"current",disableFocus:!1,isOpen:!1,minuteStep:15,modalBackdrop:!1,secondStep:15,showSeconds:!1,showInputs:!0,showMeridian:!0,template:"dropdown",appendWidgetTo:".bootstrap-timepicker"},a.fn.timepicker.Constructor=e}(jQuery,window,document),define("timepicker",function(){}),!function(a){function b(){return new Date(Date.UTC.apply(Date,arguments))}var c=function(b,c){switch(this.element=a(b),this.language=c.language||this.element.data("date-language")||"en",this.language=this.language in d?this.language:this.language.split("-")[0],this.language=this.language in d?this.language:"en",this.isRTL=d[this.language].rtl||!1,this.format=e.parseFormat(c.format||this.element.data("date-format")||d[this.language].format||"mm/dd/yyyy"),this.isInline=!1,this.isInput=this.element.is("input"),this.component=this.element.is(".date")?this.element.find(".add-on, .btn"):!1,this.hasInput=this.component&&this.element.find("input").length,this.component&&0===this.component.length&&(this.component=!1),this.forceParse=!0,"forceParse"in c?this.forceParse=c.forceParse:"dateForceParse"in this.element.data()&&(this.forceParse=this.element.data("date-force-parse")),this.picker=a(e.template),this._buildEvents(),this._attachEvents(),this.isInline?this.picker.addClass("datepicker-inline").appendTo(this.element):this.picker.addClass("datepicker-dropdown dropdown-menu"),this.isRTL&&(this.picker.addClass("datepicker-rtl"),this.picker.find(".prev i, .next i").toggleClass("icon-arrow-left icon-arrow-right")),this.autoclose=!1,"autoclose"in c?this.autoclose=c.autoclose:"dateAutoclose"in this.element.data()&&(this.autoclose=this.element.data("date-autoclose")),this.keyboardNavigation=!0,"keyboardNavigation"in c?this.keyboardNavigation=c.keyboardNavigation:"dateKeyboardNavigation"in this.element.data()&&(this.keyboardNavigation=this.element.data("date-keyboard-navigation")),this.viewMode=this.startViewMode=0,c.startView||this.element.data("date-start-view")){case 2:case"decade":this.viewMode=this.startViewMode=2;break;case 1:case"year":this.viewMode=this.startViewMode=1}if(this.minViewMode=c.minViewMode||this.element.data("date-min-view-mode")||0,"string"==typeof this.minViewMode)switch(this.minViewMode){case"months":this.minViewMode=1;break;case"years":this.minViewMode=2;break;default:this.minViewMode=0}this.viewMode=this.startViewMode=Math.max(this.startViewMode,this.minViewMode),this.todayBtn=c.todayBtn||this.element.data("date-today-btn")||!1,this.todayHighlight=c.todayHighlight||this.element.data("date-today-highlight")||!1,this.calendarWeeks=!1,"calendarWeeks"in c?this.calendarWeeks=c.calendarWeeks:"dateCalendarWeeks"in this.element.data()&&(this.calendarWeeks=this.element.data("date-calendar-weeks")),this.calendarWeeks&&this.picker.find("tfoot th.today").attr("colspan",function(a,b){return parseInt(b)+1}),this._allow_update=!1,this.weekStart=(c.weekStart||this.element.data("date-weekstart")||d[this.language].weekStart||0)%7,this.weekEnd=(this.weekStart+6)%7,this.startDate=-1/0,this.endDate=1/0,this.daysOfWeekDisabled=[],this.setStartDate(c.startDate||this.element.data("date-startdate")),this.setEndDate(c.endDate||this.element.data("date-enddate")),this.setDaysOfWeekDisabled(c.daysOfWeekDisabled||this.element.data("date-days-of-week-disabled")),this.fillDow(),this.fillMonths(),this._allow_update=!0,this.update(),this.showMode(),this.isInline&&this.show()};c.prototype={constructor:c,_events:[],_secondaryEvents:[],_applyEvents:function(a){for(var b,c,d=0;dthis.endDate?this.endDate:this.date),this.fill()}},fillDow:function(){var a=this.weekStart,b="";if(this.calendarWeeks){var c=' ';b+=c,this.picker.find(".datepicker-days thead tr:first-child").prepend(c)}for(;a'+d[this.language].daysMin[a++%7]+"";b+="",this.picker.find(".datepicker-days thead").append(b)},fillMonths:function(){for(var a="",b=0;12>b;)a+=''+d[this.language].monthsShort[b++]+"";this.picker.find(".datepicker-months td").html(a)},fill:function(){var c=new Date(this.viewDate),f=c.getUTCFullYear(),g=c.getUTCMonth(),h=this.startDate!==-1/0?this.startDate.getUTCFullYear():-1/0,i=this.startDate!==-1/0?this.startDate.getUTCMonth():-1/0,j=1/0!==this.endDate?this.endDate.getUTCFullYear():1/0,k=1/0!==this.endDate?this.endDate.getUTCMonth():1/0,l=this.date&&this.date.valueOf(),m=new Date;this.picker.find(".datepicker-days thead th.switch").text(d[this.language].months[g]+" "+f),this.picker.find("tfoot th.today").text(d[this.language].today).toggle(this.todayBtn!==!1),this.updateNavArrows(),this.fillMonths();var n=b(f,g-1,28,0,0,0,0),o=e.getDaysInMonth(n.getUTCFullYear(),n.getUTCMonth());n.setUTCDate(o),n.setUTCDate(o-(n.getUTCDay()-this.weekStart+7)%7);var p=new Date(n);p.setUTCDate(p.getUTCDate()+42),p=p.valueOf();for(var q,r=[];n.valueOf()"),this.calendarWeeks)){var s=new Date(+n+(this.weekStart-n.getUTCDay()-7)%7*864e5),t=new Date(+s+(11-s.getUTCDay())%7*864e5),u=new Date(+(u=b(t.getUTCFullYear(),0,1))+(11-u.getUTCDay())%7*864e5),v=(t-u)/864e5/7+1;r.push(''+v+"")}q="",n.getUTCFullYear()f||n.getUTCFullYear()==f&&n.getUTCMonth()>g)&&(q+=" new"),this.todayHighlight&&n.getUTCFullYear()==m.getFullYear()&&n.getUTCMonth()==m.getMonth()&&n.getUTCDate()==m.getDate()&&(q+=" today"),l&&n.valueOf()==l&&(q+=" active"),(n.valueOf()this.endDate||-1!==a.inArray(n.getUTCDay(),this.daysOfWeekDisabled))&&(q+=" disabled"),r.push(''+n.getUTCDate()+""),n.getUTCDay()==this.weekEnd&&r.push(""),n.setUTCDate(n.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").empty().append(r.join(""));var w=this.date&&this.date.getUTCFullYear(),x=this.picker.find(".datepicker-months").find("th:eq(1)").text(f).end().find("span").removeClass("active");w&&w==f&&x.eq(this.date.getUTCMonth()).addClass("active"),(h>f||f>j)&&x.addClass("disabled"),f==h&&x.slice(0,i).addClass("disabled"),f==j&&x.slice(k+1).addClass("disabled"),r="",f=10*parseInt(f/10,10);var y=this.picker.find(".datepicker-years").find("th:eq(1)").text(f+"-"+(f+9)).end().find("td");f-=1;for(var z=-1;11>z;z++)r+='f||f>j?" disabled":"")+'">'+f+"",f+=1;y.html(r)},updateNavArrows:function(){if(this._allow_update){var a=new Date(this.viewDate),b=a.getUTCFullYear(),c=a.getUTCMonth();switch(this.viewMode){case 0:this.picker.find(".prev").css(this.startDate!==-1/0&&b<=this.startDate.getUTCFullYear()&&c<=this.startDate.getUTCMonth()?{visibility:"hidden"}:{visibility:"visible"}),this.picker.find(".next").css(1/0!==this.endDate&&b>=this.endDate.getUTCFullYear()&&c>=this.endDate.getUTCMonth()?{visibility:"hidden"}:{visibility:"visible"});break;case 1:case 2:this.picker.find(".prev").css(this.startDate!==-1/0&&b<=this.startDate.getUTCFullYear()?{visibility:"hidden"}:{visibility:"visible"}),this.picker.find(".next").css(1/0!==this.endDate&&b>=this.endDate.getUTCFullYear()?{visibility:"hidden"}:{visibility:"visible"})}}},click:function(c){c.preventDefault();var d=a(c.target).closest("span, td, th");if(1==d.length)switch(d[0].nodeName.toLowerCase()){case"th":switch(d[0].className){case"switch":this.showMode(1);break;case"prev":case"next":var f=e.modes[this.viewMode].navStep*("prev"==d[0].className?-1:1);switch(this.viewMode){case 0:this.viewDate=this.moveMonth(this.viewDate,f);break;case 1:case 2:this.viewDate=this.moveYear(this.viewDate,f)}this.fill();break;case"today":var g=new Date;g=b(g.getFullYear(),g.getMonth(),g.getDate(),0,0,0),this.showMode(-2);var h="linked"==this.todayBtn?null:"view";this._setDate(g,h)}break;case"span":if(!d.is(".disabled")){if(this.viewDate.setUTCDate(1),d.is(".month")){var i=1,j=d.parent().find("span").index(d),k=this.viewDate.getUTCFullYear();this.viewDate.setUTCMonth(j),this.element.trigger({type:"changeMonth",date:this.viewDate}),1==this.minViewMode&&this._setDate(b(k,j,i,0,0,0,0))}else{var k=parseInt(d.text(),10)||0,i=1,j=0;this.viewDate.setUTCFullYear(k),this.element.trigger({type:"changeYear",date:this.viewDate}),2==this.minViewMode&&this._setDate(b(k,j,i,0,0,0,0))}this.showMode(-1),this.fill()}break;case"td":if(d.is(".day")&&!d.is(".disabled")){var i=parseInt(d.text(),10)||1,k=this.viewDate.getUTCFullYear(),j=this.viewDate.getUTCMonth();d.is(".old")?0===j?(j=11,k-=1):j-=1:d.is(".new")&&(11==j?(j=0,k+=1):j+=1),this._setDate(b(k,j,i,0,0,0,0))}}},_setDate:function(a,b){b&&"date"!=b||(this.date=a),b&&"view"!=b||(this.viewDate=a),this.fill(),this.setValue(),this.element.trigger({type:"changeDate",date:this.date});var c;this.isInput?c=this.element:this.component&&(c=this.element.find("input")),c&&(c.change(),!this.autoclose||b&&"date"!=b||this.hide())},moveMonth:function(a,b){if(!b)return a;var c,d,e=new Date(a.valueOf()),f=e.getUTCDate(),g=e.getUTCMonth(),h=Math.abs(b);if(b=b>0?1:-1,1==h)d=-1==b?function(){return e.getUTCMonth()==g}:function(){return e.getUTCMonth()!=c},c=g+b,e.setUTCMonth(c),(0>c||c>11)&&(c=(c+12)%12);else{for(var i=0;h>i;i++)e=this.moveMonth(e,b);c=e.getUTCMonth(),e.setUTCDate(f),d=function(){return c!=e.getUTCMonth()}}for(;d();)e.setUTCDate(--f),e.setUTCMonth(c);return e},moveYear:function(a,b){return this.moveMonth(a,12*b)},dateWithinRange:function(a){return a>=this.startDate&&a<=this.endDate},keydown:function(a){if(this.picker.is(":not(:visible)"))return void(27==a.keyCode&&this.show());var b,c,d,e=!1;switch(a.keyCode){case 27:this.hide(),a.preventDefault();break;case 37:case 39:if(!this.keyboardNavigation)break;b=37==a.keyCode?-1:1,a.ctrlKey?(c=this.moveYear(this.date,b),d=this.moveYear(this.viewDate,b)):a.shiftKey?(c=this.moveMonth(this.date,b),d=this.moveMonth(this.viewDate,b)):(c=new Date(this.date),c.setUTCDate(this.date.getUTCDate()+b),d=new Date(this.viewDate),d.setUTCDate(this.viewDate.getUTCDate()+b)),this.dateWithinRange(c)&&(this.date=c,this.viewDate=d,this.setValue(),this.update(),a.preventDefault(),e=!0);break;case 38:case 40:if(!this.keyboardNavigation)break;b=38==a.keyCode?-1:1,a.ctrlKey?(c=this.moveYear(this.date,b),d=this.moveYear(this.viewDate,b)):a.shiftKey?(c=this.moveMonth(this.date,b),d=this.moveMonth(this.viewDate,b)):(c=new Date(this.date),c.setUTCDate(this.date.getUTCDate()+7*b),d=new Date(this.viewDate),d.setUTCDate(this.viewDate.getUTCDate()+7*b)),this.dateWithinRange(c)&&(this.date=c,this.viewDate=d,this.setValue(),this.update(),a.preventDefault(),e=!0);break;case 13:this.hide(),a.preventDefault();break;case 9:this.hide()}if(e){this.element.trigger({type:"changeDate",date:this.date});var f;this.isInput?f=this.element:this.component&&(f=this.element.find("input")),f&&f.change()}},showMode:function(a){a&&(this.viewMode=Math.max(this.minViewMode,Math.min(2,this.viewMode+a))),this.picker.find(">div").hide().filter(".datepicker-"+e.modes[this.viewMode].clsName).css("display","block"),this.updateNavArrows()}},a.fn.datepicker=function(b){var d=Array.apply(null,arguments);return d.shift(),this.each(function(){var e=a(this),f=e.data("datepicker"),g="object"==typeof b&&b;f||e.data("datepicker",f=new c(this,a.extend({},a.fn.datepicker.defaults,g))),"string"==typeof b&&"function"==typeof f[b]&&f[b].apply(f,d)})},a.fn.datepicker.defaults={},a.fn.datepicker.Constructor=c;var d=a.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sun"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa","Su"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today"}},e={modes:[{clsName:"days",navFnc:"Month",navStep:1},{clsName:"months",navFnc:"FullYear",navStep:1},{clsName:"years",navFnc:"FullYear",navStep:10}],isLeapYear:function(a){return a%4===0&&a%100!==0||a%400===0},getDaysInMonth:function(a,b){return[31,e.isLeapYear(a)?29:28,31,30,31,30,31,31,30,31,30,31][b]},validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\[\u3400-\u9fff-`{-~\t\n\r]+/g,parseFormat:function(a){var b=a.replace(this.validParts,"\x00").split("\x00"),c=a.match(this.validParts);if(!b||!b.length||!c||0===c.length)throw new Error("Invalid date format.");return{separators:b,parts:c}},parseDate:function(e,f,g){if(e instanceof Date)return e;if(/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/.test(e)){var h,i,j=/([\-+]\d+)([dmwy])/,k=e.match(/([\-+]\d+)([dmwy])/g);e=new Date;for(var l=0;lb;)b+=12;for(b%=12,a.setUTCMonth(b);a.getUTCMonth()!=b;)a.setUTCDate(a.getUTCDate()-1);return a},d:function(a,b){return a.setUTCDate(b)}};q.M=q.MM=q.mm=q.m,q.dd=q.d,e=b(e.getFullYear(),e.getMonth(),e.getDate(),0,0,0);var r=f.parts.slice();if(k.length!=r.length&&(r=a(r).filter(function(b,c){return-1!==a.inArray(c,p)}).toArray()),k.length==r.length){for(var l=0,s=r.length;s>l;l++){if(m=parseInt(k[l],10),h=r[l],isNaN(m))switch(h){case"MM":n=a(d[g].months).filter(function(){var a=this.slice(0,k[l].length),b=k[l].slice(0,a.length);return a==b}),m=a.inArray(n[0],d[g].months)+1;break;case"M":n=a(d[g].monthsShort).filter(function(){var a=this.slice(0,k[l].length),b=k[l].slice(0,a.length);return a==b}),m=a.inArray(n[0],d[g].monthsShort)+1}o[h]=m}for(var t,l=0;lh;h++)g.length&&b.push(g.shift()),b.push(f[c.parts[h]]);return b.join("")},headTemplate:'',contTemplate:'',footTemplate:''};e.template='
'+e.headTemplate+""+e.footTemplate+'
'+e.headTemplate+e.contTemplate+e.footTemplate+'
'+e.headTemplate+e.contTemplate+e.footTemplate+"
",a.fn.datepicker.DPGlobal=e}(window.jQuery),define("datepicker",function(){}),angular.module("$strap.config",[]).value("$strapConfig",{}),angular.module("$strap.filters",["$strap.config"]),angular.module("$strap.directives",["$strap.config"]),angular.module("$strap",["$strap.filters","$strap.directives","$strap.config"]),angular.module("$strap.directives").directive("bsAlert",["$parse","$timeout","$compile",function(a,b,c){return{restrict:"A",link:function(d,e,f){var g=a(f.bsAlert),h=(g.assign,g(d)),i=function(a){b(function(){e.alert("close")},1*a)};f.bsAlert?d.$watch(f.bsAlert,function(a,b){h=a,e.html((a.title?""+a.title+" ":"")+a.content||""),a.closed&&e.hide(),c(e.contents())(d),(a.type||b.type)&&(b.type&&e.removeClass("alert-"+b.type),a.type&&e.addClass("alert-"+a.type)),angular.isDefined(a.closeAfter)?i(a.closeAfter):f.closeAfter&&i(f.closeAfter),(angular.isUndefined(f.closeButton)||"0"!==f.closeButton&&"false"!==f.closeButton)&&e.prepend('')},!0):((angular.isUndefined(f.closeButton)||"0"!==f.closeButton&&"false"!==f.closeButton)&&e.prepend(''),f.closeAfter&&i(f.closeAfter)),e.addClass("alert").alert(),e.hasClass("fade")&&(e.removeClass("in"),setTimeout(function(){e.addClass("in")}));var j=f.ngRepeat&&f.ngRepeat.split(" in ").pop();e.on("close",function(a){var b;j?(a.preventDefault(),e.removeClass("in"),b=function(){e.trigger("closed"),d.$parent&&d.$parent.$apply(function(){for(var a=j.split("."),b=d.$parent,c=0;cg.length-2?g[0]:g[i+1],b.$apply(function(){c.text(j),e&&e.$setViewValue(j)})})}}}]),angular.module("$strap.directives").directive("bsDatepicker",["$timeout","$strapConfig",function(a,b){var c=/(iP(a|o)d|iPhone)/g.test(navigator.userAgent),d=function(a){return a=a||"en",{"/":"[\\/]","-":"[-]",".":"[.]"," ":"[\\s]",dd:"(?:(?:[0-2]?[0-9]{1})|(?:[3][01]{1}))",d:"(?:(?:[0-2]?[0-9]{1})|(?:[3][01]{1}))",mm:"(?:[0]?[1-9]|[1][012])",m:"(?:[0]?[1-9]|[1][012])",DD:"(?:"+$.fn.datepicker.dates[a].days.join("|")+")",D:"(?:"+$.fn.datepicker.dates[a].daysShort.join("|")+")",MM:"(?:"+$.fn.datepicker.dates[a].months.join("|")+")",M:"(?:"+$.fn.datepicker.dates[a].monthsShort.join("|")+")",yyyy:"(?:(?:[1]{1}[0-9]{1}[0-9]{1}[0-9]{1})|(?:[2]{1}[0-9]{3}))(?![[0-9]])",yy:"(?:(?:[0-9]{1}[0-9]{1}))(?![[0-9]])"}},e=function(a,b){var c,e=a,f=d(b);return c=0,angular.forEach(f,function(a,b){e=e.split(b).join("${"+c+"}"),c++}),c=0,angular.forEach(f,function(a){e=e.split("${"+c+"}").join(a),c++}),new RegExp("^"+e+"$",["i"])};return{restrict:"A",require:"?ngModel",link:function(a,d,f,g){var h=angular.extend({autoclose:!0},b.datepicker||{}),i=f.dateType||h.type||"date";angular.forEach(["format","weekStart","calendarWeeks","startDate","endDate","daysOfWeekDisabled","autoclose","startView","minViewMode","todayBtn","todayHighlight","keyboardNavigation","language","forceParse"],function(a){angular.isDefined(f[a])&&(h[a]=f[a])});var j=h.language||"en",k=f.dateFormat||h.format||$.fn.datepicker.dates[j]&&$.fn.datepicker.dates[j].format||"mm/dd/yyyy",l=c?"yyyy-mm-dd":k,m=e(l,j);g&&(g.$formatters.unshift(function(a){return"date"===i&&angular.isString(a)&&a?$.fn.datepicker.DPGlobal.parseDate(a,$.fn.datepicker.DPGlobal.parseFormat(k),j):a}),g.$parsers.unshift(function(a){return a?"date"===i&&angular.isDate(a)?(g.$setValidity("date",!0),a):angular.isString(a)&&m.test(a)?(g.$setValidity("date",!0),c?new Date(a):"string"===i?a:$.fn.datepicker.DPGlobal.parseDate(a,$.fn.datepicker.DPGlobal.parseFormat(l),j)):void g.$setValidity("date",!1):(g.$setValidity("date",!0),null)}),g.$render=function(){if(c){var a=g.$viewValue?$.fn.datepicker.DPGlobal.formatDate(g.$viewValue,$.fn.datepicker.DPGlobal.parseFormat(l),j):"";return d.val(a),a}return g.$viewValue||d.val(""),d.datepicker("update",g.$viewValue)}),c?d.prop("type","date").css("-webkit-appearance","textfield"):(g&&d.on("changeDate",function(b){a.$apply(function(){g.$setViewValue("string"===i?d.val():b.date)})}),d.datepicker(angular.extend(h,{format:l,language:j})),a.$on("$destroy",function(){var a=d.data("datepicker");a&&(a.picker.remove(),d.data("datepicker",null))}),f.$observe("startDate",function(a){d.datepicker("setStartDate",a)}),f.$observe("endDate",function(a){d.datepicker("setEndDate",a)}));var n=d.siblings('[data-toggle="datepicker"]');n.length&&n.on("click",function(){d.prop("disabled")||d.trigger("focus")})}}}]),angular.module("$strap.directives").directive("bsDropdown",["$parse","$compile","$timeout",function(a,b,c){var d=function(a,b){return b||(b=['"]),angular.forEach(a,function(a,c){if(a.divider)return b.splice(c+1,0,'
  • ');var e=""+(a.text||"")+"";a.submenu&&a.submenu.length&&(e+=d(a.submenu).join("\n")),e+="",b.splice(c+1,0,e)}),b};return{restrict:"EA",scope:!0,link:function(e,f,g){var h=a(g.bsDropdown),i=h(e);c(function(){!angular.isArray(i);var a=angular.element(d(i).join(""));a.insertAfter(f),b(f.next("ul.dropdown-menu"))(e)}),f.addClass("dropdown-toggle").attr("data-toggle","dropdown")}}}]),angular.module("$strap.directives").factory("$modal",["$rootScope","$compile","$http","$timeout","$q","$templateCache","$strapConfig",function(a,b,c,d,e,f,g){var h=function(h){function i(h){var i=angular.extend({show:!0},g.modal,h),j=i.scope?i.scope:a.$new(),k=i.template;return e.when(f.get(k)||c.get(k,{cache:!0}).then(function(a){return a.data})).then(function(a){var c=k.replace(".html","").replace(/[\/|\.|:]/g,"-")+"-"+j.$id,e=$('').attr("id",c).addClass("fade").html(a);return i.modalClass&&e.addClass(i.modalClass),$("body").append(e),d(function(){b(e)(j)}),j.$modal=function(a){e.modal(a)},angular.forEach(["show","hide"],function(a){j[a]=function(){e.modal(a)}}),j.dismiss=j.hide,angular.forEach(["show","shown","hide","hidden"],function(a){e.on(a,function(b){j.$emit("modal-"+a,b)})}),e.on("shown",function(){$("input[autofocus], textarea[autofocus]",e).first().trigger("focus")}),e.on("hidden",function(){i.persist||j.$destroy()}),j.$on("$destroy",function(){e.remove()}),e.modal(i),e})}return new i(h)};return h}]).directive("bsModal",["$q","$modal",function(a,b){return{restrict:"A",scope:!0,link:function(c,d,e){var f={template:c.$eval(e.bsModal),persist:!0,show:!1,scope:c};angular.forEach(["modalClass","backdrop","keyboard"],function(a){angular.isDefined(e[a])&&(f[a]=e[a])}),a.when(b(f)).then(function(a){d.attr("data-target","#"+a.attr("id")).attr("data-toggle","modal")})}}}]),angular.module("$strap.directives").directive("bsNavbar",["$location",function(a){return{restrict:"A",link:function(b,c){b.$watch(function(){return a.path()},function(a){$("li[data-match-route]",c).each(function(b,c){var d=angular.element(c),e=d.attr("data-match-route"),f=new RegExp("^"+e+"$",["i"]);f.test(a)?d.addClass("active").find(".collapse.in").collapse("hide"):d.removeClass("active")})})}}}]),angular.module("$strap.directives").directive("bsPopover",["$parse","$compile","$http","$timeout","$q","$templateCache",function(a,b,c,d,e,f){return $("body").on("keyup",function(a){27===a.keyCode&&$(".popover.in").each(function(){$(this).popover("hide")})}),{restrict:"A",scope:!0,link:function(g,h,i){var j=a(i.bsPopover),k=(j.assign,j(g)),l={};angular.isObject(k)&&(l=k),e.when(l.content||f.get(k)||c.get(k,{cache:!0})).then(function(a){angular.isObject(a)&&(a=a.data),i.unique&&h.on("show",function(){$(".popover.in").each(function(){var a=$(this),b=a.data("popover");b&&!b.$element.is(h)&&a.popover("hide")})}),i.hide&&g.$watch(i.hide,function(a,b){a?c.hide():a!==b&&c.show()}),i.show&&g.$watch(i.show,function(a,b){a?d(function(){c.show()}):a!==b&&c.hide()}),h.popover(angular.extend({},l,{content:a,html:!0}));var c=h.data("popover");c.hasContent=function(){return this.getTitle()||a},c.getPosition=function(){var a=$.fn.popover.Constructor.prototype.getPosition.apply(this,arguments);return b(this.$tip)(g),g.$digest(),this.$tip.data("popover",this),a},g.$popover=function(a){c(a)},angular.forEach(["show","hide"],function(a){g[a]=function(){c[a]()}}),g.dismiss=g.hide,angular.forEach(["show","shown","hide","hidden"],function(a){h.on(a,function(b){g.$emit("popover-"+a,b)})})})}}}]),angular.module("$strap.directives").directive("bsSelect",["$timeout",function(a){return{restrict:"A",require:"?ngModel",link:function(b,c,d,e){var f=b.$eval(d.bsSelect)||{};a(function(){c.selectpicker(f),c.next().removeClass("ng-scope")}),e&&b.$watch(d.ngModel,function(a,b){angular.equals(a,b)||c.selectpicker("refresh")})}}}]),angular.module("$strap.directives").directive("bsTabs",["$parse","$compile","$timeout",function(a,b,c){var d='
    ';return{restrict:"A",require:"?ngModel",priority:0,scope:!0,template:d,replace:!0,transclude:!0,compile:function(){return function(b,d,e,f){{var g=a(e.bsTabs);g.assign,g(b)}b.panes=[];var h,i,j,k=d.find("ul.nav-tabs"),l=d.find("div.tab-content"),m=0;c(function(){l.find("[data-title], [data-tab]").each(function(a){var c=angular.element(this);h="tab-"+b.$id+"-"+a,i=c.data("title")||c.data("tab"),j=!j&&c.hasClass("active"),c.attr("id",h).addClass("tab-pane"),e.fade&&c.addClass("fade"),b.panes.push({id:h,title:i,content:this.innerHTML,active:j})}),b.panes.length&&!j&&(l.find(".tab-pane:first-child").addClass("active"+(e.fade?" in":"")),b.panes[0].active=!0)}),f&&(d.on("show",function(a){var c=$(a.target);b.$apply(function(){f.$setViewValue(c.data("index"))})}),b.$watch(e.ngModel,function(a){angular.isUndefined(a)||(m=a,setTimeout(function(){if(m===a){var b=$(k[0].querySelectorAll("li")[1*a]);b.hasClass("active")||b.children("a").tab("show")}}))}))}}}}]),angular.module("$strap.directives").directive("bsTimepicker",["$timeout","$strapConfig",function(a,b){var c="((?:(?:[0-1][0-9])|(?:[2][0-3])|(?:[0-9])):(?:[0-5][0-9])(?::[0-5][0-9])?(?:\\s?(?:am|AM|pm|PM))?)";return{restrict:"A",require:"?ngModel",link:function(d,e,f,g){if(g){e.on("changeTime.timepicker",function(){a(function(){g.$setViewValue(e.val())})});var h=new RegExp("^"+c+"$",["i"]);g.$parsers.unshift(function(a){return!a||h.test(a)?(g.$setValidity("time",!0),a):void g.$setValidity("time",!1)})}e.attr("data-toggle","timepicker"),e.parent().addClass("bootstrap-timepicker"),e.timepicker(b.timepicker||{});var i=e.data("timepicker"),j=e.siblings('[data-toggle="timepicker"]');j.length&&j.on("click",$.proxy(i.showWidget,i))}}}]),angular.module("$strap.directives").directive("bsTooltip",["$parse","$compile",function(a){return{restrict:"A",scope:!0,link:function(b,c,d){var e=a(d.bsTooltip),f=(e.assign,e(b));b.$watch(d.bsTooltip,function(a,b){a!==b&&(f=a)}),d.unique&&c.on("show",function(){$(".tooltip.in").each(function(){var a=$(this),b=a.data("tooltip");b&&!b.$element.is(c)&&a.tooltip("hide")})}),c.tooltip({title:function(){return angular.isFunction(f)?f.apply(null,arguments):f},html:!0});var g=c.data("tooltip");g.show=function(){var a=$.fn.tooltip.Constructor.prototype.show.apply(this,arguments);return this.tip().data("tooltip",this),a},b._tooltip=function(a){c.tooltip(a)},b.hide=function(){c.tooltip("hide")},b.show=function(){c.tooltip("show")},b.dismiss=b.hide}}}]),angular.module("$strap.directives").directive("bsTypeahead",["$parse",function(a){return{restrict:"A",require:"?ngModel",link:function(b,c,d,e){var f=a(d.bsTypeahead),g=(f.assign,f(b));b.$watch(d.bsTypeahead,function(a,b){a!==b&&(g=a)}),c.attr("data-provide","typeahead"),c.typeahead({source:function(){return angular.isFunction(g)?g.apply(null,arguments):g},minLength:d.minLength||1,items:d.items,updater:function(a){return e&&b.$apply(function(){e.$setViewValue(a)}),b.$emit("typeahead-updated",a),a}});var h=c.data("typeahead");h.lookup=function(){var a;return this.query=this.$element.val()||"",this.query.length=0)&&c(b,!e)}}),a("").outerWidth(1).jquery||a.each(["Width","Height"],function(c,d){function e(b,c,d,e){return a.each(f,function(){c-=parseFloat(a.css(b,"padding"+this))||0,d&&(c-=parseFloat(a.css(b,"border"+this+"Width"))||0),e&&(c-=parseFloat(a.css(b,"margin"+this))||0)}),c}var f="Width"===d?["Left","Right"]:["Top","Bottom"],g=d.toLowerCase(),h={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){return c===b?h["inner"+d].call(this):this.each(function(){a(this).css(g,e(this,c)+"px")})},a.fn["outer"+d]=function(b,c){return"number"!=typeof b?h["outer"+d].call(this,b):this.each(function(){a(this).css(g,e(this,b,!0,c)+"px")})}}),a.fn.addBack||(a.fn.addBack=function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}),a("").data("a-b","a").removeData("a-b").data("a-b")&&(a.fn.removeData=function(b){return function(c){return arguments.length?b.call(this,a.camelCase(c)):b.call(this)}}(a.fn.removeData)),a.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),a.support.selectstart="onselectstart"in document.createElement("div"),a.fn.extend({disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e,f=a.ui[b].prototype;for(e in d)f.plugins[e]=f.plugins[e]||[],f.plugins[e].push([c,d[e]])},call:function(a,b,c){var d,e=a.plugins[b];if(e&&a.element[0].parentNode&&11!==a.element[0].parentNode.nodeType)for(d=0;d0?!0:(b[d]=1,e=b[d]>0,b[d]=0,e)}})}(jQuery),function(a,b){var c=0,d=Array.prototype.slice,e=a.cleanData;a.cleanData=function(b){for(var c,d=0;null!=(c=b[d]);d++)try{a(c).triggerHandler("remove")}catch(f){}e(b)},a.widget=function(b,c,d){var e,f,g,h,i={},j=b.split(".")[0];b=b.split(".")[1],e=j+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][e.toLowerCase()]=function(b){return!!a.data(b,e)},a[j]=a[j]||{},f=a[j][b],g=a[j][b]=function(a,b){return this._createWidget?void(arguments.length&&this._createWidget(a,b)):new g(a,b)},a.extend(g,f,{version:d.version,_proto:a.extend({},d),_childConstructors:[]}),h=new c,h.options=a.widget.extend({},h.options),a.each(d,function(b,d){return a.isFunction(d)?void(i[b]=function(){var a=function(){return c.prototype[b].apply(this,arguments)},e=function(a){return c.prototype[b].apply(this,a)};return function(){var b,c=this._super,f=this._superApply;return this._super=a,this._superApply=e,b=d.apply(this,arguments),this._super=c,this._superApply=f,b}}()):void(i[b]=d)}),g.prototype=a.widget.extend(h,{widgetEventPrefix:f?h.widgetEventPrefix:b},i,{constructor:g,namespace:j,widgetName:b,widgetFullName:e}),f?(a.each(f._childConstructors,function(b,c){var d=c.prototype;a.widget(d.namespace+"."+d.widgetName,g,c._proto)}),delete f._childConstructors):c._childConstructors.push(g),a.widget.bridge(b,g)},a.widget.extend=function(c){for(var e,f,g=d.call(arguments,1),h=0,i=g.length;i>h;h++)for(e in g[h])f=g[h][e],g[h].hasOwnProperty(e)&&f!==b&&(c[e]=a.isPlainObject(f)?a.isPlainObject(c[e])?a.widget.extend({},c[e],f):a.widget.extend({},f):f);return c},a.widget.bridge=function(c,e){var f=e.prototype.widgetFullName||c;a.fn[c]=function(g){var h="string"==typeof g,i=d.call(arguments,1),j=this;return g=!h&&i.length?a.widget.extend.apply(null,[g].concat(i)):g,this.each(h?function(){var d,e=a.data(this,f);return e?a.isFunction(e[g])&&"_"!==g.charAt(0)?(d=e[g].apply(e,i),d!==e&&d!==b?(j=d&&d.jquery?j.pushStack(d.get()):d,!1):void 0):a.error("no such method '"+g+"' for "+c+" widget instance"):a.error("cannot call methods on "+c+" prior to initialization; attempted to call method '"+g+"'")}:function(){var b=a.data(this,f);b?b.option(g||{})._init():a.data(this,f,new e(g,this))}),j}},a.Widget=function(){},a.Widget._childConstructors=[],a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
    ",options:{disabled:!1,create:null},_createWidget:function(b,d){d=a(d||this.defaultElement||this)[0],this.element=a(d),this.uuid=c++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=a.widget.extend({},this.options,this._getCreateOptions(),b),this.bindings=a(),this.hoverable=a(),this.focusable=a(),d!==this&&(a.data(d,this.widgetFullName,this),this._on(!0,this.element,{remove:function(a){a.target===d&&this.destroy()}}),this.document=a(d.style?d.ownerDocument:d.document||d),this.window=a(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:a.noop,_getCreateEventData:a.noop,_create:a.noop,_init:a.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(a.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:a.noop,widget:function(){return this.element},option:function(c,d){var e,f,g,h=c;if(0===arguments.length)return a.widget.extend({},this.options);if("string"==typeof c)if(h={},e=c.split("."),c=e.shift(),e.length){for(f=h[c]=a.widget.extend({},this.options[c]),g=0;g=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})}(jQuery),function(a,b){function c(a,b,c){return[parseFloat(a[0])*(n.test(a[0])?b/100:1),parseFloat(a[1])*(n.test(a[1])?c/100:1)]}function d(b,c){return parseInt(a.css(b,c),10)||0}function e(b){var c=b[0];return 9===c.nodeType?{width:b.width(),height:b.height(),offset:{top:0,left:0}}:a.isWindow(c)?{width:b.width(),height:b.height(),offset:{top:b.scrollTop(),left:b.scrollLeft()}}:c.preventDefault?{width:0,height:0,offset:{top:c.pageY,left:c.pageX}}:{width:b.outerWidth(),height:b.outerHeight(),offset:b.offset()}}a.ui=a.ui||{};var f,g=Math.max,h=Math.abs,i=Math.round,j=/left|center|right/,k=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,m=/^\w+/,n=/%$/,o=a.fn.position;a.position={scrollbarWidth:function(){if(f!==b)return f;var c,d,e=a("
    "),g=e.children()[0];return a("body").append(e),c=g.offsetWidth,e.css("overflow","scroll"),d=g.offsetWidth,c===d&&(d=e[0].clientWidth),e.remove(),f=c-d},getScrollInfo:function(b){var c=b.isWindow?"":b.element.css("overflow-x"),d=b.isWindow?"":b.element.css("overflow-y"),e="scroll"===c||"auto"===c&&b.widthd?"left":c>0?"right":"center",vertical:0>f?"top":e>0?"bottom":"middle"};l>n&&h(c+d)p&&h(e+f)g(h(e),h(f))?"horizontal":"vertical",b.using.call(this,a,i)}),k.offset(a.extend(A,{using:j}))})},a.ui.position={fit:{left:function(a,b){var c,d=b.within,e=d.isWindow?d.scrollLeft:d.offset.left,f=d.width,h=a.left-b.collisionPosition.marginLeft,i=e-h,j=h+b.collisionWidth-f-e;b.collisionWidth>f?i>0&&0>=j?(c=a.left+i+b.collisionWidth-f-e,a.left+=i-c):a.left=j>0&&0>=i?e:i>j?e+f-b.collisionWidth:e:i>0?a.left+=i:j>0?a.left-=j:a.left=g(a.left-h,a.left)},top:function(a,b){var c,d=b.within,e=d.isWindow?d.scrollTop:d.offset.top,f=b.within.height,h=a.top-b.collisionPosition.marginTop,i=e-h,j=h+b.collisionHeight-f-e;b.collisionHeight>f?i>0&&0>=j?(c=a.top+i+b.collisionHeight-f-e,a.top+=i-c):a.top=j>0&&0>=i?e:i>j?e+f-b.collisionHeight:e:i>0?a.top+=i:j>0?a.top-=j:a.top=g(a.top-h,a.top)}},flip:{left:function(a,b){var c,d,e=b.within,f=e.offset.left+e.scrollLeft,g=e.width,i=e.isWindow?e.scrollLeft:e.offset.left,j=a.left-b.collisionPosition.marginLeft,k=j-i,l=j+b.collisionWidth-g-i,m="left"===b.my[0]?-b.elemWidth:"right"===b.my[0]?b.elemWidth:0,n="left"===b.at[0]?b.targetWidth:"right"===b.at[0]?-b.targetWidth:0,o=-2*b.offset[0];0>k?(c=a.left+m+n+o+b.collisionWidth-g-f,(0>c||c0&&(d=a.left-b.collisionPosition.marginLeft+m+n+o-i,(d>0||h(d)k?(d=a.top+n+o+p+b.collisionHeight-g-f,a.top+n+o+p>k&&(0>d||d0&&(c=a.top-b.collisionPosition.marginTop+n+o+p-i,a.top+n+o+p>l&&(c>0||h(c)10&&11>e,b.innerHTML="",c.removeChild(b)}()}(jQuery),function(a){a.widget("ui.draggable",a.ui.mouse,{version:"1.10.3",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"!==this.options.helper||/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},_destroy:function(){this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy()},_mouseCapture:function(b){var c=this.options;return this.helper||c.disabled||a(b.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(b),this.handle?(a(c.iframeFix===!0?"iframe":c.iframeFix).each(function(){a("
    ").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(a(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(b){var c=this.options;return this.helper=this._createHelper(b),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),a.ui.ddmanager&&(a.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offsetParent=this.helper.offsetParent(),this.offsetParentCssPosition=this.offsetParent.css("position"),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.offset.scroll=!1,a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,c.cursorAt&&this._adjustOffsetFromHelper(c.cursorAt),this._setContainment(),this._trigger("start",b)===!1?(this._clear(),!1):(this._cacheHelperProportions(),a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this._mouseDrag(b,!0),a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,b),!0)},_mouseDrag:function(b,c){if("fixed"===this.offsetParentCssPosition&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute"),!c){var d=this._uiHash();if(this._trigger("drag",b,d)===!1)return this._mouseUp({}),!1;this.position=d.position}return this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),!1},_mouseStop:function(b){var c=this,d=!1;return a.ui.ddmanager&&!this.options.dropBehaviour&&(d=a.ui.ddmanager.drop(this,b)),this.dropped&&(d=this.dropped,this.dropped=!1),"original"!==this.options.helper||a.contains(this.element[0].ownerDocument,this.element[0])?("invalid"===this.options.revert&&!d||"valid"===this.options.revert&&d||this.options.revert===!0||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,d)?a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",b)!==!1&&c._clear()}):this._trigger("stop",b)!==!1&&this._clear(),!1):!1},_mouseUp:function(b){return a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,b),a.ui.mouse.prototype._mouseUp.call(this,b)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(b){return this.options.handle?!!a(b.target).closest(this.element.find(this.options.handle)).length:!0},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b])):"clone"===c.helper?this.element.clone().removeAttr("id"):this.element;return d.parents("body").length||d.appendTo("parent"===c.appendTo?this.element[0].parentNode:c.appendTo),d[0]===this.element[0]||/(fixed|absolute)/.test(d.css("position"))||d.css("position","absolute"),d},_adjustOffsetFromHelper:function(b){"string"==typeof b&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left"in b&&(this.offset.click.left=b.left+this.margins.left),"right"in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top"in b&&(this.offset.click.top=b.top+this.margins.top),"bottom"in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top)},_getParentOffset:function(){var b=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&a.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&a.ui.ie)&&(b={top:0,left:0}),{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var b,c,d,e=this.options;return e.containment?"window"===e.containment?void(this.containment=[a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,a(window).scrollLeft()+a(window).width()-this.helperProportions.width-this.margins.left,a(window).scrollTop()+(a(window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):"document"===e.containment?void(this.containment=[0,0,a(document).width()-this.helperProportions.width-this.margins.left,(a(document).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):e.containment.constructor===Array?void(this.containment=e.containment):("parent"===e.containment&&(e.containment=this.helper[0].parentNode),c=a(e.containment),d=c[0],void(d&&(b="hidden"!==c.css("overflow"),this.containment=[(parseInt(c.css("borderLeftWidth"),10)||0)+(parseInt(c.css("paddingLeft"),10)||0),(parseInt(c.css("borderTopWidth"),10)||0)+(parseInt(c.css("paddingTop"),10)||0),(b?Math.max(d.scrollWidth,d.offsetWidth):d.offsetWidth)-(parseInt(c.css("borderRightWidth"),10)||0)-(parseInt(c.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(b?Math.max(d.scrollHeight,d.offsetHeight):d.offsetHeight)-(parseInt(c.css("borderBottomWidth"),10)||0)-(parseInt(c.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=c))):void(this.containment=null)},_convertPositionTo:function(b,c){c||(c=this.position);var d="absolute"===b?1:-1,e="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&a.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent;return this.offset.scroll||(this.offset.scroll={top:e.scrollTop(),left:e.scrollLeft()}),{top:c.top+this.offset.relative.top*d+this.offset.parent.top*d-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top)*d,left:c.left+this.offset.relative.left*d+this.offset.parent.left*d-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)*d}},_generatePosition:function(b){var c,d,e,f,g=this.options,h="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&a.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=b.pageX,j=b.pageY;return this.offset.scroll||(this.offset.scroll={top:h.scrollTop(),left:h.scrollLeft()}),this.originalPosition&&(this.containment&&(this.relative_container?(d=this.relative_container.offset(),c=[this.containment[0]+d.left,this.containment[1]+d.top,this.containment[2]+d.left,this.containment[3]+d.top]):c=this.containment,b.pageX-this.offset.click.leftc[2]&&(i=c[2]+this.offset.click.left),b.pageY-this.offset.click.top>c[3]&&(j=c[3]+this.offset.click.top)),g.grid&&(e=g.grid[1]?this.originalPageY+Math.round((j-this.originalPageY)/g.grid[1])*g.grid[1]:this.originalPageY,j=c?e-this.offset.click.top>=c[1]||e-this.offset.click.top>c[3]?e:e-this.offset.click.top>=c[1]?e-g.grid[1]:e+g.grid[1]:e,f=g.grid[0]?this.originalPageX+Math.round((i-this.originalPageX)/g.grid[0])*g.grid[0]:this.originalPageX,i=c?f-this.offset.click.left>=c[0]||f-this.offset.click.left>c[2]?f:f-this.offset.click.left>=c[0]?f-g.grid[0]:f+g.grid[0]:f)),{top:j-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top),left:i-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(b,c,d){return d=d||this._uiHash(),a.ui.plugin.call(this,b,[c,d]),"drag"===b&&(this.positionAbs=this._convertPositionTo("absolute")),a.Widget.prototype._trigger.call(this,b,c,d)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),a.ui.plugin.add("draggable","connectToSortable",{start:function(b,c){var d=a(this).data("ui-draggable"),e=d.options,f=a.extend({},c,{item:d.element});d.sortables=[],a(e.connectToSortable).each(function(){var c=a.data(this,"ui-sortable");c&&!c.options.disabled&&(d.sortables.push({instance:c,shouldRevert:c.options.revert}),c.refreshPositions(),c._trigger("activate",b,f))})},stop:function(b,c){var d=a(this).data("ui-draggable"),e=a.extend({},c,{item:d.element});a.each(d.sortables,function(){this.instance.isOver?(this.instance.isOver=0,d.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=this.shouldRevert),this.instance._mouseStop(b),this.instance.options.helper=this.instance.options._helper,"original"===d.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",b,e))})},drag:function(b,c){var d=a(this).data("ui-draggable"),e=this;a.each(d.sortables,function(){var f=!1,g=this;this.instance.positionAbs=d.positionAbs,this.instance.helperProportions=d.helperProportions,this.instance.offset.click=d.offset.click,this.instance._intersectsWith(this.instance.containerCache)&&(f=!0,a.each(d.sortables,function(){return this.instance.positionAbs=d.positionAbs,this.instance.helperProportions=d.helperProportions,this.instance.offset.click=d.offset.click,this!==g&&this.instance._intersectsWith(this.instance.containerCache)&&a.contains(g.instance.element[0],this.instance.element[0])&&(f=!1),f})),f?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=a(e).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return c.helper[0]},b.target=this.instance.currentItem[0],this.instance._mouseCapture(b,!0),this.instance._mouseStart(b,!0,!0),this.instance.offset.click.top=d.offset.click.top,this.instance.offset.click.left=d.offset.click.left,this.instance.offset.parent.left-=d.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=d.offset.parent.top-this.instance.offset.parent.top,d._trigger("toSortable",b),d.dropped=this.instance.element,d.currentItem=d.element,this.instance.fromOutside=d),this.instance.currentItem&&this.instance._mouseDrag(b)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",b,this.instance._uiHash(this.instance)),this.instance._mouseStop(b,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),d._trigger("fromSortable",b),d.dropped=!1)})}}),a.ui.plugin.add("draggable","cursor",{start:function(){var b=a("body"),c=a(this).data("ui-draggable").options;b.css("cursor")&&(c._cursor=b.css("cursor")),b.css("cursor",c.cursor)},stop:function(){var b=a(this).data("ui-draggable").options;b._cursor&&a("body").css("cursor",b._cursor)}}),a.ui.plugin.add("draggable","opacity",{start:function(b,c){var d=a(c.helper),e=a(this).data("ui-draggable").options;d.css("opacity")&&(e._opacity=d.css("opacity")),d.css("opacity",e.opacity)},stop:function(b,c){var d=a(this).data("ui-draggable").options;d._opacity&&a(c.helper).css("opacity",d._opacity)}}),a.ui.plugin.add("draggable","scroll",{start:function(){var b=a(this).data("ui-draggable");b.scrollParent[0]!==document&&"HTML"!==b.scrollParent[0].tagName&&(b.overflowOffset=b.scrollParent.offset())},drag:function(b){var c=a(this).data("ui-draggable"),d=c.options,e=!1;c.scrollParent[0]!==document&&"HTML"!==c.scrollParent[0].tagName?(d.axis&&"x"===d.axis||(c.overflowOffset.top+c.scrollParent[0].offsetHeight-b.pageY=0;l--)h=n.snapElements[l].left,i=h+n.snapElements[l].width,j=n.snapElements[l].top,k=j+n.snapElements[l].height,h-p>r||q>i+p||j-p>t||s>k+p||!a.contains(n.snapElements[l].item.ownerDocument,n.snapElements[l].item)?(n.snapElements[l].snapping&&n.options.snap.release&&n.options.snap.release.call(n.element,b,a.extend(n._uiHash(),{snapItem:n.snapElements[l].item})),n.snapElements[l].snapping=!1):("inner"!==o.snapMode&&(d=Math.abs(j-t)<=p,e=Math.abs(k-s)<=p,f=Math.abs(h-r)<=p,g=Math.abs(i-q)<=p,d&&(c.position.top=n._convertPositionTo("relative",{top:j-n.helperProportions.height,left:0}).top-n.margins.top),e&&(c.position.top=n._convertPositionTo("relative",{top:k,left:0}).top-n.margins.top),f&&(c.position.left=n._convertPositionTo("relative",{top:0,left:h-n.helperProportions.width}).left-n.margins.left),g&&(c.position.left=n._convertPositionTo("relative",{top:0,left:i}).left-n.margins.left)),m=d||e||f||g,"outer"!==o.snapMode&&(d=Math.abs(j-s)<=p,e=Math.abs(k-t)<=p,f=Math.abs(h-q)<=p,g=Math.abs(i-r)<=p,d&&(c.position.top=n._convertPositionTo("relative",{top:j,left:0}).top-n.margins.top),e&&(c.position.top=n._convertPositionTo("relative",{top:k-n.helperProportions.height,left:0}).top-n.margins.top),f&&(c.position.left=n._convertPositionTo("relative",{top:0,left:h}).left-n.margins.left),g&&(c.position.left=n._convertPositionTo("relative",{top:0,left:i-n.helperProportions.width}).left-n.margins.left)),!n.snapElements[l].snapping&&(d||e||f||g||m)&&n.options.snap.snap&&n.options.snap.snap.call(n.element,b,a.extend(n._uiHash(),{snapItem:n.snapElements[l].item})),n.snapElements[l].snapping=d||e||f||g||m)}}),a.ui.plugin.add("draggable","stack",{start:function(){var b,c=this.data("ui-draggable").options,d=a.makeArray(a(c.stack)).sort(function(b,c){return(parseInt(a(b).css("zIndex"),10)||0)-(parseInt(a(c).css("zIndex"),10)||0)});d.length&&(b=parseInt(a(d[0]).css("zIndex"),10)||0,a(d).each(function(c){a(this).css("zIndex",b+c)}),this.css("zIndex",b+d.length))}}),a.ui.plugin.add("draggable","zIndex",{start:function(b,c){var d=a(c.helper),e=a(this).data("ui-draggable").options;d.css("zIndex")&&(e._zIndex=d.css("zIndex")),d.css("zIndex",e.zIndex)},stop:function(b,c){var d=a(this).data("ui-draggable").options;d._zIndex&&a(c.helper).css("zIndex",d._zIndex)}})}(jQuery),function(a){function b(a,b,c){return a>b&&b+c>a}a.widget("ui.droppable",{version:"1.10.3",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var b=this.options,c=b.accept;this.isover=!1,this.isout=!0,this.accept=a.isFunction(c)?c:function(a){return a.is(c)},this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight},a.ui.ddmanager.droppables[b.scope]=a.ui.ddmanager.droppables[b.scope]||[],a.ui.ddmanager.droppables[b.scope].push(this),b.addClasses&&this.element.addClass("ui-droppable")},_destroy:function(){for(var b=0,c=a.ui.ddmanager.droppables[this.options.scope];b=k&&l>=h&&i>=m&&n>=j;case"intersect":return k=m&&n>=i||j>=m&&n>=j||m>i&&j>n)&&(g>=k&&l>=g||h>=k&&l>=h||k>g&&h>l);default:return!1}},a.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(b,c){var d,e,f=a.ui.ddmanager.droppables[b.options.scope]||[],g=c?c.type:null,h=(b.currentItem||b.element).find(":data(ui-droppable)").addBack();a:for(d=0;d
    ").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.data("ui-resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=h.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),b=this.handles.split(","),this.handles={},c=0;c
    "),e.css({zIndex:h.zIndex}),"se"===d&&e.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[d]=".ui-resizable-"+d,this.element.append(e);this._renderAxis=function(b){var c,d,e,f;b=b||this.element;for(c in this.handles)this.handles[c].constructor===String&&(this.handles[c]=a(this.handles[c],this.element).show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(d=a(this.handles[c],this.element),f=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth(),e=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join(""),b.css(e,f),this._proportionallyResize()),a(this.handles[c]).length},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){g.resizing||(this.className&&(e=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),g.axis=e&&e[1]?e[1]:"se")}),h.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").mouseenter(function(){h.disabled||(a(this).removeClass("ui-resizable-autohide"),g._handles.show())}).mouseleave(function(){h.disabled||g.resizing||(a(this).addClass("ui-resizable-autohide"),g._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var b,c=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(c(this.element),b=this.element,this.originalElement.css({position:b.css("position"),width:b.outerWidth(),height:b.outerHeight(),top:b.css("top"),left:b.css("left")}).insertAfter(b),b.remove()),this.originalElement.css("resize",this.originalResizeStyle),c(this.originalElement),this},_mouseCapture:function(b){var c,d,e=!1;for(c in this.handles)d=a(this.handles[c])[0],(d===b.target||a.contains(d,b.target))&&(e=!0);return!this.options.disabled&&e},_mouseStart:function(c){var d,e,f,g=this.options,h=this.element.position(),i=this.element;return this.resizing=!0,/absolute/.test(i.css("position"))?i.css({position:"absolute",top:i.css("top"),left:i.css("left")}):i.is(".ui-draggable")&&i.css({position:"absolute",top:h.top,left:h.left}),this._renderProxy(),d=b(this.helper.css("left")),e=b(this.helper.css("top")),g.containment&&(d+=a(g.containment).scrollLeft()||0,e+=a(g.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:d,top:e},this.size=this._helper?{width:i.outerWidth(),height:i.outerHeight()}:{width:i.width(),height:i.height()},this.originalSize=this._helper?{width:i.outerWidth(),height:i.outerHeight()}:{width:i.width(),height:i.height()},this.originalPosition={left:d,top:e},this.sizeDiff={width:i.outerWidth()-i.width(),height:i.outerHeight()-i.height()},this.originalMousePosition={left:c.pageX,top:c.pageY},this.aspectRatio="number"==typeof g.aspectRatio?g.aspectRatio:this.originalSize.width/this.originalSize.height||1,f=a(".ui-resizable-"+this.axis).css("cursor"),a("body").css("cursor","auto"===f?this.axis+"-resize":f),i.addClass("ui-resizable-resizing"),this._propagate("start",c),!0},_mouseDrag:function(b){var c,d=this.helper,e={},f=this.originalMousePosition,g=this.axis,h=this.position.top,i=this.position.left,j=this.size.width,k=this.size.height,l=b.pageX-f.left||0,m=b.pageY-f.top||0,n=this._change[g];return n?(c=n.apply(this,[b,l,m]),this._updateVirtualBoundaries(b.shiftKey),(this._aspectRatio||b.shiftKey)&&(c=this._updateRatio(c,b)),c=this._respectSize(c,b),this._updateCache(c),this._propagate("resize",b),this.position.top!==h&&(e.top=this.position.top+"px"),this.position.left!==i&&(e.left=this.position.left+"px"),this.size.width!==j&&(e.width=this.size.width+"px"),this.size.height!==k&&(e.height=this.size.height+"px"),d.css(e),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),a.isEmptyObject(e)||this._trigger("resize",b,this.ui()),!1):!1},_mouseStop:function(b){this.resizing=!1;var c,d,e,f,g,h,i,j=this.options,k=this;return this._helper&&(c=this._proportionallyResizeElements,d=c.length&&/textarea/i.test(c[0].nodeName),e=d&&a.ui.hasScroll(c[0],"left")?0:k.sizeDiff.height,f=d?0:k.sizeDiff.width,g={width:k.helper.width()-f,height:k.helper.height()-e},h=parseInt(k.element.css("left"),10)+(k.position.left-k.originalPosition.left)||null,i=parseInt(k.element.css("top"),10)+(k.position.top-k.originalPosition.top)||null,j.animate||this.element.css(a.extend(g,{top:i,left:h})),k.helper.height(k.size.height),k.helper.width(k.size.width),this._helper&&!j.animate&&this._proportionallyResize()),a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove(),!1},_updateVirtualBoundaries:function(a){var b,d,e,f,g,h=this.options;g={minWidth:c(h.minWidth)?h.minWidth:0,maxWidth:c(h.maxWidth)?h.maxWidth:1/0,minHeight:c(h.minHeight)?h.minHeight:0,maxHeight:c(h.maxHeight)?h.maxHeight:1/0},(this._aspectRatio||a)&&(b=g.minHeight*this.aspectRatio,e=g.minWidth/this.aspectRatio,d=g.maxHeight*this.aspectRatio,f=g.maxWidth/this.aspectRatio,b>g.minWidth&&(g.minWidth=b),e>g.minHeight&&(g.minHeight=e),da.width,h=c(a.height)&&b.minHeight&&b.minHeight>a.height,i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,k=/sw|nw|w/.test(d),l=/nw|ne|n/.test(d);return g&&(a.width=b.minWidth),h&&(a.height=b.minHeight),e&&(a.width=b.maxWidth),f&&(a.height=b.maxHeight),g&&k&&(a.left=i-b.minWidth),e&&k&&(a.left=i-b.maxWidth),h&&l&&(a.top=j-b.minHeight),f&&l&&(a.top=j-b.maxHeight),a.width||a.height||a.left||!a.top?a.width||a.height||a.top||!a.left||(a.left=null):a.top=null,a},_proportionallyResize:function(){if(this._proportionallyResizeElements.length){var a,b,c,d,e,f=this.helper||this.element;for(a=0;a"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(a,b){return{width:this.originalSize.width+b}},w:function(a,b){var c=this.originalSize,d=this.originalPosition;return{left:d.left+b,width:c.width-b}},n:function(a,b,c){var d=this.originalSize,e=this.originalPosition;return{top:e.top+c,height:d.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),"resize"!==b&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.ui.plugin.add("resizable","animate",{stop:function(b){var c=a(this).data("ui-resizable"),d=c.options,e=c._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:c.sizeDiff.height,h=f?0:c.sizeDiff.width,i={width:c.size.width-h,height:c.size.height-g},j=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null,k=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;c.element.animate(a.extend(i,k&&j?{top:k,left:j}:{}),{duration:d.animateDuration,easing:d.animateEasing,step:function(){var d={width:parseInt(c.element.css("width"),10),height:parseInt(c.element.css("height"),10),top:parseInt(c.element.css("top"),10),left:parseInt(c.element.css("left"),10)};e&&e.length&&a(e[0]).css({width:d.width,height:d.height}),c._updateCache(d),c._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(){var c,d,e,f,g,h,i,j=a(this).data("ui-resizable"),k=j.options,l=j.element,m=k.containment,n=m instanceof a?m.get(0):/parent/.test(m)?l.parent().get(0):m;n&&(j.containerElement=a(n),/document/.test(m)||m===document?(j.containerOffset={left:0,top:0},j.containerPosition={left:0,top:0},j.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight}):(c=a(n),d=[],a(["Top","Right","Left","Bottom"]).each(function(a,e){d[a]=b(c.css("padding"+e))}),j.containerOffset=c.offset(),j.containerPosition=c.position(),j.containerSize={height:c.innerHeight()-d[3],width:c.innerWidth()-d[1]},e=j.containerOffset,f=j.containerSize.height,g=j.containerSize.width,h=a.ui.hasScroll(n,"left")?n.scrollWidth:g,i=a.ui.hasScroll(n)?n.scrollHeight:f,j.parentData={element:n,left:e.left,top:e.top,width:h,height:i}))},resize:function(b){var c,d,e,f,g=a(this).data("ui-resizable"),h=g.options,i=g.containerOffset,j=g.position,k=g._aspectRatio||b.shiftKey,l={top:0,left:0},m=g.containerElement;m[0]!==document&&/static/.test(m.css("position"))&&(l=i),j.left<(g._helper?i.left:0)&&(g.size.width=g.size.width+(g._helper?g.position.left-i.left:g.position.left-l.left),k&&(g.size.height=g.size.width/g.aspectRatio),g.position.left=h.helper?i.left:0),j.top<(g._helper?i.top:0)&&(g.size.height=g.size.height+(g._helper?g.position.top-i.top:g.position.top),k&&(g.size.width=g.size.height*g.aspectRatio),g.position.top=g._helper?i.top:0),g.offset.left=g.parentData.left+g.position.left,g.offset.top=g.parentData.top+g.position.top,c=Math.abs((g._helper?g.offset.left-l.left:g.offset.left-l.left)+g.sizeDiff.width),d=Math.abs((g._helper?g.offset.top-l.top:g.offset.top-i.top)+g.sizeDiff.height),e=g.containerElement.get(0)===g.element.parent().get(0),f=/relative|absolute/.test(g.containerElement.css("position")),e&&f&&(c-=g.parentData.left),c+g.size.width>=g.parentData.width&&(g.size.width=g.parentData.width-c,k&&(g.size.height=g.size.width/g.aspectRatio)),d+g.size.height>=g.parentData.height&&(g.size.height=g.parentData.height-d,k&&(g.size.width=g.size.height*g.aspectRatio))},stop:function(){var b=a(this).data("ui-resizable"),c=b.options,d=b.containerOffset,e=b.containerPosition,f=b.containerElement,g=a(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width,j=g.outerHeight()-b.sizeDiff.height;b._helper&&!c.animate&&/relative/.test(f.css("position"))&&a(this).css({left:h.left-e.left-d.left,width:i,height:j}),b._helper&&!c.animate&&/static/.test(f.css("position"))&&a(this).css({left:h.left-e.left-d.left,width:i,height:j})}}),a.ui.plugin.add("resizable","alsoResize",{start:function(){var b=a(this).data("ui-resizable"),c=b.options,d=function(b){a(b).each(function(){var b=a(this);b.data("ui-resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};"object"!=typeof c.alsoResize||c.alsoResize.parentNode?d(c.alsoResize):c.alsoResize.length?(c.alsoResize=c.alsoResize[0],d(c.alsoResize)):a.each(c.alsoResize,function(a){d(a)})},resize:function(b,c){var d=a(this).data("ui-resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("ui-resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};"object"!=typeof e.alsoResize||e.alsoResize.nodeType?i(e.alsoResize):a.each(e.alsoResize,function(a,b){i(a,b)})},stop:function(){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","ghost",{start:function(){var b=a(this).data("ui-resizable"),c=b.options,d=b.size;b.ghost=b.originalElement.clone(),b.ghost.css({opacity:.25,display:"block",position:"relative",height:d.height,width:d.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof c.ghost?c.ghost:""),b.ghost.appendTo(b.helper)},resize:function(){var b=a(this).data("ui-resizable");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=a(this).data("ui-resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(){var b=a(this).data("ui-resizable"),c=b.options,d=b.size,e=b.originalSize,f=b.originalPosition,g=b.axis,h="number"==typeof c.grid?[c.grid,c.grid]:c.grid,i=h[0]||1,j=h[1]||1,k=Math.round((d.width-e.width)/i)*i,l=Math.round((d.height-e.height)/j)*j,m=e.width+k,n=e.height+l,o=c.maxWidth&&c.maxWidthm,r=c.minHeight&&c.minHeight>n;c.grid=h,q&&(m+=i),r&&(n+=j),o&&(m-=i),p&&(n-=j),/^(se|s|e)$/.test(g)?(b.size.width=m,b.size.height=n):/^(ne)$/.test(g)?(b.size.width=m,b.size.height=n,b.position.top=f.top-l):/^(sw)$/.test(g)?(b.size.width=m,b.size.height=n,b.position.left=f.left-k):(b.size.width=m,b.size.height=n,b.position.top=f.top-l,b.position.left=f.left-k)}})}(jQuery),function(a){a.widget("ui.selectable",a.ui.mouse,{version:"1.10.3",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var b,c=this;this.element.addClass("ui-selectable"),this.dragged=!1,this.refresh=function(){b=a(c.options.filter,c.element[0]),b.addClass("ui-selectee"),b.each(function(){var b=a(this),c=b.offset();a.data(this,"selectable-item",{element:this,$element:b,left:c.left,top:c.top,right:c.left+b.outerWidth(),bottom:c.top+b.outerHeight(),startselected:!1,selected:b.hasClass("ui-selected"),selecting:b.hasClass("ui-selecting"),unselecting:b.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=b.addClass("ui-selectee"),this._mouseInit(),this.helper=a("
    ")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled"),this._mouseDestroy()},_mouseStart:function(b){var c=this,d=this.options;this.opos=[b.pageX,b.pageY],this.options.disabled||(this.selectees=a(d.filter,this.element[0]),this._trigger("start",b),a(d.appendTo).append(this.helper),this.helper.css({left:b.pageX,top:b.pageY,width:0,height:0}),d.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var d=a.data(this,"selectable-item");d.startselected=!0,b.metaKey||b.ctrlKey||(d.$element.removeClass("ui-selected"),d.selected=!1,d.$element.addClass("ui-unselecting"),d.unselecting=!0,c._trigger("unselecting",b,{unselecting:d.element}))}),a(b.target).parents().addBack().each(function(){var d,e=a.data(this,"selectable-item");return e?(d=!b.metaKey&&!b.ctrlKey||!e.$element.hasClass("ui-selected"),e.$element.removeClass(d?"ui-unselecting":"ui-selected").addClass(d?"ui-selecting":"ui-unselecting"),e.unselecting=!d,e.selecting=d,e.selected=d,d?c._trigger("selecting",b,{selecting:e.element}):c._trigger("unselecting",b,{unselecting:e.element}),!1):void 0}))},_mouseDrag:function(b){if(this.dragged=!0,!this.options.disabled){var c,d=this,e=this.options,f=this.opos[0],g=this.opos[1],h=b.pageX,i=b.pageY;return f>h&&(c=h,h=f,f=c),g>i&&(c=i,i=g,g=c),this.helper.css({left:f,top:g,width:h-f,height:i-g}),this.selectees.each(function(){var c=a.data(this,"selectable-item"),j=!1;c&&c.element!==d.element[0]&&("touch"===e.tolerance?j=!(c.left>h||c.righti||c.bottomf&&c.rightg&&c.bottomb&&b+c>a}function c(a){return/left|right/.test(a.css("float"))||/inline|table-cell/.test(a.css("display"))}a.widget("ui.sortable",a.ui.mouse,{version:"1.10.3",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_create:function(){var a=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?"x"===a.axis||c(this.items[0].item):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData(this.widgetName+"-item");return this},_setOption:function(b,c){"disabled"===b?(this.options[b]=c,this.widget().toggleClass("ui-sortable-disabled",!!c)):a.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(b,c){var d=null,e=!1,f=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(b),a(b.target).parents().each(function(){return a.data(this,f.widgetName+"-item")===f?(d=a(this),!1):void 0}),a.data(b.target,f.widgetName+"-item")===f&&(d=a(b.target)),d&&(!this.options.handle||c||(a(this.options.handle,d).find("*").addBack().each(function(){this===b.target&&(e=!0)}),e))?(this.currentItem=d,this._removeCurrentsFromItems(),!0):!1)},_mouseStart:function(b,c,d){var e,f,g=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(b),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,g.cursorAt&&this._adjustOffsetFromHelper(g.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),g.containment&&this._setContainment(),g.cursor&&"auto"!==g.cursor&&(f=this.document.find("body"),this.storedCursor=f.css("cursor"),f.css("cursor",g.cursor),this.storedStylesheet=a("").appendTo(f)),g.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",g.opacity)),g.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",g.zIndex)),this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",b,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!d)for(e=this.containers.length-1;e>=0;e--)this.containers[e]._trigger("activate",b,this._uiHash(this)); -return a.ui.ddmanager&&(a.ui.ddmanager.current=this),a.ui.ddmanager&&!g.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(b),!0},_mouseDrag:function(b){var c,d,e,f,g=this.options,h=!1;for(this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-b.pageY=0;c--)if(d=this.items[c],e=d.item[0],f=this._intersectsWithPointer(d),f&&d.instance===this.currentContainer&&e!==this.currentItem[0]&&this.placeholder[1===f?"next":"prev"]()[0]!==e&&!a.contains(this.placeholder[0],e)&&("semi-dynamic"===this.options.type?!a.contains(this.element[0],e):!0)){if(this.direction=1===f?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(d))break;this._rearrange(b,d),this._trigger("change",b,this._uiHash());break}return this._contactContainers(b),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),this._trigger("sort",b,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(b,c){if(b){if(a.ui.ddmanager&&!this.options.dropBehaviour&&a.ui.ddmanager.drop(this,b),this.options.revert){var d=this,e=this.placeholder.offset(),f=this.options.axis,g={};f&&"x"!==f||(g.left=e.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft)),f&&"y"!==f||(g.top=e.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop)),this.reverting=!0,a(this.helper).animate(g,parseInt(this.options.revert,10)||500,function(){d._clear(b)})}else this._clear(b,c);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null}),"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--)this.containers[b]._trigger("deactivate",null,this._uiHash(this)),this.containers[b].containerCache.over&&(this.containers[b]._trigger("out",null,this._uiHash(this)),this.containers[b].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),a.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?a(this.domPosition.prev).after(this.currentItem):a(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},a(c).each(function(){var c=(a(b.item||this).attr(b.attribute||"id")||"").match(b.expression||/(.+)[\-=_](.+)/);c&&d.push((b.key||c[1]+"[]")+"="+(b.key&&b.expression?c[1]:c[2]))}),!d.length&&b.key&&d.push(b.key+"="),d.join("&")},toArray:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},c.each(function(){d.push(a(b.item||this).attr(b.attribute||"id")||"")}),d},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,d=this.positionAbs.top,e=d+this.helperProportions.height,f=a.left,g=f+a.width,h=a.top,i=h+a.height,j=this.offset.click.top,k=this.offset.click.left,l="x"===this.options.axis||d+j>h&&i>d+j,m="y"===this.options.axis||b+k>f&&g>b+k,n=l&&m;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?n:f0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return 0!==a&&(a>0?"right":"left")},refresh:function(a){return this._refreshItems(a),this.refreshPositions(),this},_connectWith:function(){var a=this.options;return a.connectWith.constructor===String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(b){var c,d,e,f,g=[],h=[],i=this._connectWith();if(i&&b)for(c=i.length-1;c>=0;c--)for(e=a(i[c]),d=e.length-1;d>=0;d--)f=a.data(e[d],this.widgetFullName),f&&f!==this&&!f.options.disabled&&h.push([a.isFunction(f.options.items)?f.options.items.call(f.element):a(f.options.items,f.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),f]);for(h.push([a.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):a(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),c=h.length-1;c>=0;c--)h[c][0].each(function(){g.push(this)});return a(g)},_removeCurrentsFromItems:function(){var b=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=a.grep(this.items,function(a){for(var c=0;c=0;c--)for(e=a(m[c]),d=e.length-1;d>=0;d--)f=a.data(e[d],this.widgetFullName),f&&f!==this&&!f.options.disabled&&(l.push([a.isFunction(f.options.items)?f.options.items.call(f.element[0],b,{item:this.currentItem}):a(f.options.items,f.element),f]),this.containers.push(f));for(c=l.length-1;c>=0;c--)for(g=l[c][1],h=l[c][0],d=0,j=h.length;j>d;d++)i=a(h[d]),i.data(this.widgetName+"-item",g),k.push({item:i,instance:g,width:0,height:0,left:0,top:0})},refreshPositions:function(b){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());var c,d,e,f;for(c=this.items.length-1;c>=0;c--)d=this.items[c],d.instance!==this.currentContainer&&this.currentContainer&&d.item[0]!==this.currentItem[0]||(e=this.options.toleranceElement?a(this.options.toleranceElement,d.item):d.item,b||(d.width=e.outerWidth(),d.height=e.outerHeight()),f=e.offset(),d.left=f.left,d.top=f.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(c=this.containers.length-1;c>=0;c--)f=this.containers[c].element.offset(),this.containers[c].containerCache.left=f.left,this.containers[c].containerCache.top=f.top,this.containers[c].containerCache.width=this.containers[c].element.outerWidth(),this.containers[c].containerCache.height=this.containers[c].element.outerHeight();return this},_createPlaceholder:function(b){b=b||this;var c,d=b.options;d.placeholder&&d.placeholder.constructor!==String||(c=d.placeholder,d.placeholder={element:function(){var d=b.currentItem[0].nodeName.toLowerCase(),e=a("<"+d+">",b.document[0]).addClass(c||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tr"===d?b.currentItem.children().each(function(){a(" ",b.document[0]).attr("colspan",a(this).attr("colspan")||1).appendTo(e)}):"img"===d&&e.attr("src",b.currentItem.attr("src")),c||e.css("visibility","hidden"),e},update:function(a,e){(!c||d.forcePlaceholderSize)&&(e.height()||e.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10)),e.width()||e.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")||0,10)))}}),b.placeholder=a(d.placeholder.element.call(b.element,b.currentItem)),b.currentItem.after(b.placeholder),d.placeholder.update(b,b.placeholder)},_contactContainers:function(d){var e,f,g,h,i,j,k,l,m,n,o=null,p=null;for(e=this.containers.length-1;e>=0;e--)if(!a.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(o&&a.contains(this.containers[e].element[0],o.element[0]))continue;o=this.containers[e],p=e}else this.containers[e].containerCache.over&&(this.containers[e]._trigger("out",d,this._uiHash(this)),this.containers[e].containerCache.over=0);if(o)if(1===this.containers.length)this.containers[p].containerCache.over||(this.containers[p]._trigger("over",d,this._uiHash(this)),this.containers[p].containerCache.over=1);else{for(g=1e4,h=null,n=o.floating||c(this.currentItem),i=n?"left":"top",j=n?"width":"height",k=this.positionAbs[i]+this.offset.click[i],f=this.items.length-1;f>=0;f--)a.contains(this.containers[p].element[0],this.items[f].item[0])&&this.items[f].item[0]!==this.currentItem[0]&&(!n||b(this.positionAbs.top+this.offset.click.top,this.items[f].top,this.items[f].height))&&(l=this.items[f].item.offset()[i],m=!1,Math.abs(l-k)>Math.abs(l+this.items[f][j]-k)&&(m=!0,l+=this.items[f][j]),Math.abs(l-k)this.containment[2]&&(f=this.containment[2]+this.offset.click.left),b.pageY-this.offset.click.top>this.containment[3]&&(g=this.containment[3]+this.offset.click.top)),e.grid&&(c=this.originalPageY+Math.round((g-this.originalPageY)/e.grid[1])*e.grid[1],g=this.containment?c-this.offset.click.top>=this.containment[1]&&c-this.offset.click.top<=this.containment[3]?c:c-this.offset.click.top>=this.containment[1]?c-e.grid[1]:c+e.grid[1]:c,d=this.originalPageX+Math.round((f-this.originalPageX)/e.grid[0])*e.grid[0],f=this.containment?d-this.offset.click.left>=this.containment[0]&&d-this.offset.click.left<=this.containment[2]?d:d-this.offset.click.left>=this.containment[0]?d-e.grid[0]:d+e.grid[0]:d)),{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():i?0:h.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():i?0:h.scrollLeft())}},_rearrange:function(a,b,c,d){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?b.item[0]:b.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var e=this.counter;this._delay(function(){e===this.counter&&this.refreshPositions(!d)})},_clear:function(a,b){this.reverting=!1;var c,d=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(c in this._storedCSS)("auto"===this._storedCSS[c]||"static"===this._storedCSS[c])&&(this._storedCSS[c]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!b&&d.push(function(a){this._trigger("receive",a,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||b||d.push(function(a){this._trigger("update",a,this._uiHash())}),this!==this.currentContainer&&(b||(d.push(function(a){this._trigger("remove",a,this._uiHash())}),d.push(function(a){return function(b){a._trigger("receive",b,this._uiHash(this))}}.call(this,this.currentContainer)),d.push(function(a){return function(b){a._trigger("update",b,this._uiHash(this))}}.call(this,this.currentContainer)))),c=this.containers.length-1;c>=0;c--)b||d.push(function(a){return function(b){a._trigger("deactivate",b,this._uiHash(this))}}.call(this,this.containers[c])),this.containers[c].containerCache.over&&(d.push(function(a){return function(b){a._trigger("out",b,this._uiHash(this))}}.call(this,this.containers[c])),this.containers[c].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,this.cancelHelperRemoval){if(!b){for(this._trigger("beforeStop",a,this._uiHash()),c=0;c0?n:b,null,"fast",j,null),this.move(n.length>0&&!j.multiple?n:[],a.parent("[jqyoui-droppable]"),jqyoui.startXY,"fast",j,function(){$timeout(function(){a.css({position:"relative",left:"",top:""}),n.css({position:"relative",left:"",top:""}),i.mutate!==!1&&this.mutateDraggable(p,j,i,g,h,m,a),j.mutate!==!1&&this.mutateDroppable(o,j,i,h,l,k),this.callEventCallback(o,j.onDrop,c,d,q)}.bind(this))}.bind(this))):$timeout(function(){i.mutate!==!1&&this.mutateDraggable(p,j,i,g,h,m,a),j.mutate!==!1&&this.mutateDroppable(o,j,i,h,l,k),this.callEventCallback(o,j.onDrop,c,d,q)}.bind(this))},this.move=function(a,b,c,d,e,f){if(0===a.length)return f&&window.setTimeout(function(){f()},300),!1;var g=9999,h=a.offset(),i=b&&b.is(":visible");null===c&&b.length>0&&(b.attr("jqyoui-draggable")!==undefined&&b.ngattr("ng-model")!==undefined&&b.is(":visible")&&e&&e.multiple?(c=b.offset(),e.stack===!1?c.left+=b.outerWidth(!0):c.top+=b.outerHeight(!0)):(c=b.css({visibility:"hidden",display:"block"}).offset(),b.css({visibility:"",display:i?"":"none"}))),a.css({position:"absolute","z-index":g}).css(h).animate(c,d,function(){f&&f()})},this.mutateDroppable=function(a,b,c,d,e,f){var g=a.$eval(d);a.__dragItem=e,angular.isArray(g)?(b&&b.index>=0?g[b.index]=e:g.push(e),c&&c.placeholder===!0&&(g[g.length-1].jqyoui_pos=f)):($parse(d+" = __dragItem")(a),c&&c.placeholder===!0&&(g.jqyoui_pos=f))},this.mutateDraggable=function(a,b,c,d,e,f,g){var h=angular.equals(angular.copy(f),{}),i=a.$eval(d);a.__dropItem=f,c&&c.placeholder?"keep"!=c.placeholder&&(angular.isArray(i)&&c.index!==undefined?i[c.index]=f:$parse(d+" = __dropItem")(a)):angular.isArray(i)?h?c&&c.placeholder!==!0&&"keep"!==c.placeholder&&i.splice(c.index,1):i[c.index]=f:($parse(d+" = __dropItem")(a),a.$parent&&$parse(d+" = __dropItem")(a.$parent)),g.css({"z-index":"",left:"",top:""})},this.fixIndex=function(a,b,c){if(b.applyFilter&&angular.isArray(c)&&c.length>0){var d=a[b.applyFilter](),e=d[b.index],f=undefined;return c.forEach(function(a,b){angular.equals(a,e)&&(f=b)}),f}return b.index}}]).directive("jqyouiDraggable",["ngDragDropService",function(a){return{require:"?jqyouiDroppable",restrict:"A",link:function(b,c,d){var e,f,g=function(g){g?(e=b.$eval(c.attr("jqyoui-draggable"))||[],c.draggable({disabled:!1}).draggable(b.$eval(d.jqyouiOptions)||{}).draggable({start:function(c,d){f=angular.element(this).css("z-index"),angular.element(this).css("z-index",99999),jqyoui.startXY=angular.element(this).offset(),a.callEventCallback(b,e.onStart,c,d)},stop:function(c,d){angular.element(this).css("z-index",f),a.callEventCallback(b,e.onStop,c,d)},drag:function(c,d){a.callEventCallback(b,e.onDrag,c,d)}})):c.draggable({disabled:!0})};b.$watch(function(){return b.$eval(d.drag)},g),g()}}}]).directive("jqyouiDroppable",["ngDragDropService",function(a){return{restrict:"A",priority:1,link:function(b,c,d){var e=function(e){e?c.droppable({disabled:!1}).droppable(b.$eval(d.jqyouiOptions)||{}).droppable({over:function(c,d){var e=b.$eval(angular.element(this).attr("jqyoui-droppable"))||[];a.callEventCallback(b,e.onOver,c,d)},out:function(c,d){var e=b.$eval(angular.element(this).attr("jqyoui-droppable"))||[];a.callEventCallback(b,e.onOut,c,d)},drop:function(c,e){angular.element(e.draggable).ngattr("ng-model")&&d.ngModel?a.invokeDrop(angular.element(e.draggable),angular.element(this),c,e):a.callEventCallback(b,(b.$eval(angular.element(this).attr("jqyoui-droppable"))||[]).onDrop,c,e)}}):c.droppable({disabled:!0})};b.$watch(function(){return b.$eval(d.drop)},e),e()}}}]);$.fn.ngattr=function(a){var b=angular.element(this).get(0);return b.getAttribute(a)||b.getAttribute("data-"+a)}}(window,window.angular),define("angular-dragdrop",function(){}),define("extend-jquery",["jquery"],function(a){var b=a(window);return a.fn.place_tt=function(){var c={offset:5,css:{position:"absolute",top:-1e3,left:0,color:"#c8c8c8",padding:"10px","font-size":"11pt","font-weight":200,"background-color":"#1f1f1f","border-radius":"5px","z-index":9999}};return function(d,e,f){return f=a.extend(!0,{},c,f),this.each(function(){var c,g,h=a(this);h.css(f.css),a.contains(document.body,h[0])||h.appendTo(document.body),c=h.outerWidth(!0),g=h.outerHeight(!0),h.css("left",d+f.offset+c>b.width()?d-f.offset-c:d+f.offset),h.css("top",e+f.offset+g>b.height()?e-f.offset-g:e+f.offset)})}}(),a}),angular.module("pasvaz.bindonce",[]).directive("bindonce",function(){var a=function(a){if(a&&0!==a.length){var b=angular.lowercase(""+a);a=!("f"==b||"0"==b||"false"==b||"no"==b||"n"==b||"[]"==b)}else a=!1;return a},b=parseInt((/msie (\d+)/.exec(angular.lowercase(navigator.userAgent))||[])[1],10);isNaN(b)&&(b=parseInt((/trident\/.*; rv:(\d+)/.exec(angular.lowercase(navigator.userAgent))||[])[1],10));var c={restrict:"AM",controller:["$scope","$element","$attrs","$interpolate",function(c,d,e,f){var g=function(b,c,d){var e="show"==c?"":"none",f="hide"==c?"":"none";b.css("display",a(d)?e:f)},h=function(a,b){if(angular.isObject(b)&&!angular.isArray(b)){var c=[];angular.forEach(b,function(a,b){a&&c.push(b)}),b=c}b&&a.addClass(angular.isArray(b)?b.join(" "):b)},i={watcherRemover:void 0,binders:[],group:e.boName,element:d,ran:!1,addBinder:function(a){this.binders.push(a),this.ran&&this.runBinders()},setupWatcher:function(a){var b=this;this.watcherRemover=c.$watch(a,function(a){void 0!=a&&(b.removeWatcher(),b.runBinders())},!0)},removeWatcher:function(){void 0!=this.watcherRemover&&(this.watcherRemover(),this.watcherRemover=void 0)},runBinders:function(){var c,d;for(c=0,d=this.binders.length;d>c;c++){var e=this.binders[c];if(!this.group||this.group==e.group){var i=e.scope.$eval(e.interpolate?f(e.value):e.value);switch(e.attr){case"if":a(i)&&e.transclude(e.scope.$new(),function(a){var b=e.element.parent(),c=e.element&&e.element[e.element.length-1],d=b&&b[0]||c&&c.parentNode,f=c&&c.nextSibling||null;angular.forEach(a,function(a){d.insertBefore(a,f)})});break;case"hide":case"show":g(e.element,e.attr,i);break;case"class":h(e.element,i);break;case"text":e.element.text(i);break;case"html":e.element.html(i);break;case"style":e.element.css(i);break;case"src":e.element.attr(e.attr,i),b&&e.element.prop("src",i);case"attr":angular.forEach(e.attrs,function(a,b){var c,d;b.match(/^boAttr./)&&e.attrs[b]&&(c=b.replace(/^boAttr/,"").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),d=e.scope.$eval(e.attrs[b]),e.element.attr(c,d))});break;case"href":case"alt":case"title":case"id":case"value":e.element.attr(e.attr,i)}}}this.ran=!0,this.binders=[]}};return i}],link:function(a,b,c,d){var e=c.bindonce?a.$eval(c.bindonce):!0;void 0!=e?d.runBinders():(d.setupWatcher(c.bindonce),b.bind("$destroy",d.removeWatcher))}};return c}),angular.forEach([{directiveName:"boShow",attribute:"show"},{directiveName:"boIf",attribute:"if",transclude:"element",terminal:!0,priority:1e3},{directiveName:"boHide",attribute:"hide"},{directiveName:"boClass",attribute:"class"},{directiveName:"boText",attribute:"text"},{directiveName:"boHtml",attribute:"html"},{directiveName:"boSrcI",attribute:"src",interpolate:!0},{directiveName:"boSrc",attribute:"src"},{directiveName:"boHrefI",attribute:"href",interpolate:!0},{directiveName:"boHref",attribute:"href"},{directiveName:"boAlt",attribute:"alt"},{directiveName:"boTitle",attribute:"title"},{directiveName:"boId",attribute:"id"},{directiveName:"boStyle",attribute:"style"},{directiveName:"boValue",attribute:"value"},{directiveName:"boAttr",attribute:"attr"}],function(a){var b=200;return angular.module("pasvaz.bindonce").directive(a.directiveName,function(){var c={priority:a.priority||b,transclude:a.transclude||!1,terminal:a.terminal||!1,require:"^bindonce",compile:function(b,c,d){return function(b,c,e,f){var g=e.boParent;if(g&&f.group!=g){var h=f.element.parent();f=void 0;for(var i;9!=h[0].nodeType&&h.length;){if((i=h.data("$bindonceController"))&&i.group==g){f=i;break}h=h.parent()}if(!f)throw Error("No bindonce controller: "+g)}f.addBinder({element:c,attr:a.attribute,attrs:e,value:e[a.directiveName],interpolate:a.interpolate,group:g,transclude:d,scope:b})}}};return c})}),define("bindonce",function(){}),define("services/alertSrv",["angular","underscore"],function(a,b){var c=a.module("kibana.services");c.service("alertSrv",["$timeout",function(c){var d=this;this.list=[],this.set=function(e,f,g,h){var i={title:e||"",text:f||"",severity:g||"info"},j=a.toJson(i),k=b.map(d.list,function(b){return a.toJson(b)});return b.contains(k,j)&&b.remove(d.list,b.indexOf(k,j)),d.list.push(i),h>0&&c(function(){d.list=b.without(d.list,i)},h),i},this.clear=function(a){d.list=b.without(d.list,a)},this.clearAll=function(){d.list=[]}}])}),function(a){function b(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function c(a,b){return function(c){return k(a.call(this,c),b)}}function d(a,b){return function(c){return this.lang().ordinal(a.call(this,c),b)}}function e(){}function f(a){w(a),h(this,a)}function g(a){var b=q(a),c=b.year||0,d=b.month||0,e=b.week||0,f=b.day||0,g=b.hour||0,h=b.minute||0,i=b.second||0,j=b.millisecond||0;this._milliseconds=+j+1e3*i+6e4*h+36e5*g,this._days=+f+7*e,this._months=+d+12*c,this._data={},this._bubble()}function h(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return b.hasOwnProperty("toString")&&(a.toString=b.toString),b.hasOwnProperty("valueOf")&&(a.valueOf=b.valueOf),a}function i(a){var b,c={};for(b in a)a.hasOwnProperty(b)&&qb.hasOwnProperty(b)&&(c[b]=a[b]);return c}function j(a){return 0>a?Math.ceil(a):Math.floor(a)}function k(a,b,c){for(var d=""+Math.abs(a),e=a>=0;d.lengthd;d++)(c&&a[d]!==b[d]||!c&&s(a[d])!==s(b[d]))&&g++;return g+f}function p(a){if(a){var b=a.toLowerCase().replace(/(.)s$/,"$1");a=Tb[a]||Ub[b]||b}return a}function q(a){var b,c,d={}; -for(c in a)a.hasOwnProperty(c)&&(b=p(c),b&&(d[b]=a[c]));return d}function r(b){var c,d;if(0===b.indexOf("week"))c=7,d="day";else{if(0!==b.indexOf("month"))return;c=12,d="month"}db[b]=function(e,f){var g,h,i=db.fn._lang[b],j=[];if("number"==typeof e&&(f=e,e=a),h=function(a){var b=db().utc().set(d,a);return i.call(db.fn._lang,b,e||"")},null!=f)return h(f);for(g=0;c>g;g++)j.push(h(g));return j}}function s(a){var b=+a,c=0;return 0!==b&&isFinite(b)&&(c=b>=0?Math.floor(b):Math.ceil(b)),c}function t(a,b){return new Date(Date.UTC(a,b+1,0)).getUTCDate()}function u(a){return v(a)?366:365}function v(a){return a%4===0&&a%100!==0||a%400===0}function w(a){var b;a._a&&-2===a._pf.overflow&&(b=a._a[jb]<0||a._a[jb]>11?jb:a._a[kb]<1||a._a[kb]>t(a._a[ib],a._a[jb])?kb:a._a[lb]<0||a._a[lb]>23?lb:a._a[mb]<0||a._a[mb]>59?mb:a._a[nb]<0||a._a[nb]>59?nb:a._a[ob]<0||a._a[ob]>999?ob:-1,a._pf._overflowDayOfYear&&(ib>b||b>kb)&&(b=kb),a._pf.overflow=b)}function x(a){return null==a._isValid&&(a._isValid=!isNaN(a._d.getTime())&&a._pf.overflow<0&&!a._pf.empty&&!a._pf.invalidMonth&&!a._pf.nullInput&&!a._pf.invalidFormat&&!a._pf.userInvalidated,a._strict&&(a._isValid=a._isValid&&0===a._pf.charsLeftOver&&0===a._pf.unusedTokens.length)),a._isValid}function y(a){return a?a.toLowerCase().replace("_","-"):a}function z(a,b){return b._isUTC?db(a).zone(b._offset||0):db(a).local()}function A(a,b){return b.abbr=a,pb[a]||(pb[a]=new e),pb[a].set(b),pb[a]}function B(a){delete pb[a]}function C(a){var b,c,d,e,f=0,g=function(a){if(!pb[a]&&rb)try{require("./lang/"+a)}catch(b){}return pb[a]};if(!a)return db.fn._lang;if(!m(a)){if(c=g(a))return c;a=[a]}for(;f0;){if(c=g(e.slice(0,b).join("-")))return c;if(d&&d.length>=b&&o(e,d,!0)>=b-1)break;b--}f++}return db.fn._lang}function D(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function E(a){var b,c,d=a.match(vb);for(b=0,c=d.length;c>b;b++)d[b]=Yb[d[b]]?Yb[d[b]]:D(d[b]);return function(e){var f="";for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];return f}}function F(a,b){return a.isValid()?(b=G(b,a.lang()),Vb[b]||(Vb[b]=E(b)),Vb[b](a)):a.lang().invalidDate()}function G(a,b){function c(a){return b.longDateFormat(a)||a}var d=5;for(wb.lastIndex=0;d>=0&&wb.test(a);)a=a.replace(wb,c),wb.lastIndex=0,d-=1;return a}function H(a,b){var c,d=b._strict;switch(a){case"DDDD":return Ib;case"YYYY":case"GGGG":case"gggg":return d?Jb:zb;case"Y":case"G":case"g":return Lb;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return d?Kb:Ab;case"S":if(d)return Gb;case"SS":if(d)return Hb;case"SSS":if(d)return Ib;case"DDD":return yb;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Cb;case"a":case"A":return C(b._l)._meridiemParse;case"X":return Fb;case"Z":case"ZZ":return Db;case"T":return Eb;case"SSSS":return Bb;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return d?Hb:xb;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return xb;default:return c=new RegExp(P(O(a.replace("\\","")),"i"))}}function I(a){a=a||"";var b=a.match(Db)||[],c=b[b.length-1]||[],d=(c+"").match(Qb)||["-",0,0],e=+(60*d[1])+s(d[2]);return"+"===d[0]?-e:e}function J(a,b,c){var d,e=c._a;switch(a){case"M":case"MM":null!=b&&(e[jb]=s(b)-1);break;case"MMM":case"MMMM":d=C(c._l).monthsParse(b),null!=d?e[jb]=d:c._pf.invalidMonth=b;break;case"D":case"DD":null!=b&&(e[kb]=s(b));break;case"DDD":case"DDDD":null!=b&&(c._dayOfYear=s(b));break;case"YY":e[ib]=s(b)+(s(b)>68?1900:2e3);break;case"YYYY":case"YYYYY":case"YYYYYY":e[ib]=s(b);break;case"a":case"A":c._isPm=C(c._l).isPM(b);break;case"H":case"HH":case"h":case"hh":e[lb]=s(b);break;case"m":case"mm":e[mb]=s(b);break;case"s":case"ss":e[nb]=s(b);break;case"S":case"SS":case"SSS":case"SSSS":e[ob]=s(1e3*("0."+b));break;case"X":c._d=new Date(1e3*parseFloat(b));break;case"Z":case"ZZ":c._useUTC=!0,c._tzm=I(b);break;case"w":case"ww":case"W":case"WW":case"d":case"dd":case"ddd":case"dddd":case"e":case"E":a=a.substr(0,1);case"gg":case"gggg":case"GG":case"GGGG":case"GGGGG":a=a.substr(0,2),b&&(c._w=c._w||{},c._w[a]=b)}}function K(a){var b,c,d,e,f,g,h,i,j,k,l=[];if(!a._d){for(d=M(a),a._w&&null==a._a[kb]&&null==a._a[jb]&&(f=function(b){var c=parseInt(b,10);return b?b.length<3?c>68?1900+c:2e3+c:c:null==a._a[ib]?db().weekYear():a._a[ib]},g=a._w,null!=g.GG||null!=g.W||null!=g.E?h=Z(f(g.GG),g.W||1,g.E,4,1):(i=C(a._l),j=null!=g.d?V(g.d,i):null!=g.e?parseInt(g.e,10)+i._week.dow:0,k=parseInt(g.w,10)||1,null!=g.d&&ju(e)&&(a._pf._overflowDayOfYear=!0),c=U(e,0,a._dayOfYear),a._a[jb]=c.getUTCMonth(),a._a[kb]=c.getUTCDate()),b=0;3>b&&null==a._a[b];++b)a._a[b]=l[b]=d[b];for(;7>b;b++)a._a[b]=l[b]=null==a._a[b]?2===b?1:0:a._a[b];l[lb]+=s((a._tzm||0)/60),l[mb]+=s((a._tzm||0)%60),a._d=(a._useUTC?U:T).apply(null,l)}}function L(a){var b;a._d||(b=q(a._i),a._a=[b.year,b.month,b.day,b.hour,b.minute,b.second,b.millisecond],K(a))}function M(a){var b=new Date;return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]}function N(a){a._a=[],a._pf.empty=!0;var b,c,d,e,f,g=C(a._l),h=""+a._i,i=h.length,j=0;for(d=G(a._f,g).match(vb)||[],b=0;b0&&a._pf.unusedInput.push(f),h=h.slice(h.indexOf(c)+c.length),j+=c.length),Yb[e]?(c?a._pf.empty=!1:a._pf.unusedTokens.push(e),J(e,c,a)):a._strict&&!c&&a._pf.unusedTokens.push(e);a._pf.charsLeftOver=i-j,h.length>0&&a._pf.unusedInput.push(h),a._isPm&&a._a[lb]<12&&(a._a[lb]+=12),a._isPm===!1&&12===a._a[lb]&&(a._a[lb]=0),K(a),w(a)}function O(a){return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e})}function P(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Q(a){var c,d,e,f,g;if(0===a._f.length)return a._pf.invalidFormat=!0,void(a._d=new Date(0/0));for(f=0;fg)&&(e=g,d=c));h(a,d||c)}function R(a){var b,c,d=a._i,e=Mb.exec(d);if(e){for(a._pf.iso=!0,b=0,c=Ob.length;c>b;b++)if(Ob[b][1].exec(d)){a._f=Ob[b][0]+(e[6]||" ");break}for(b=0,c=Pb.length;c>b;b++)if(Pb[b][1].exec(d)){a._f+=Pb[b][0];break}d.match(Db)&&(a._f+="Z"),N(a)}else a._d=new Date(d)}function S(b){var c=b._i,d=sb.exec(c);c===a?b._d=new Date:d?b._d=new Date(+d[1]):"string"==typeof c?R(b):m(c)?(b._a=c.slice(0),K(b)):n(c)?b._d=new Date(+c):"object"==typeof c?L(b):b._d=new Date(c)}function T(a,b,c,d,e,f,g){var h=new Date(a,b,c,d,e,f,g);return 1970>a&&h.setFullYear(a),h}function U(a){var b=new Date(Date.UTC.apply(null,arguments));return 1970>a&&b.setUTCFullYear(a),b}function V(a,b){if("string"==typeof a)if(isNaN(a)){if(a=b.weekdaysParse(a),"number"!=typeof a)return null}else a=parseInt(a,10);return a}function W(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function X(a,b,c){var d=hb(Math.abs(a)/1e3),e=hb(d/60),f=hb(e/60),g=hb(f/24),h=hb(g/365),i=45>d&&["s",d]||1===e&&["m"]||45>e&&["mm",e]||1===f&&["h"]||22>f&&["hh",f]||1===g&&["d"]||25>=g&&["dd",g]||45>=g&&["M"]||345>g&&["MM",hb(g/30)]||1===h&&["y"]||["yy",h];return i[2]=b,i[3]=a>0,i[4]=c,W.apply({},i)}function Y(a,b,c){var d,e=c-b,f=c-a.day();return f>e&&(f-=7),e-7>f&&(f+=7),d=db(a).add("d",f),{week:Math.ceil(d.dayOfYear()/7),year:d.year()}}function Z(a,b,c,d,e){var f,g,h=U(a,0,1).getUTCDay();return c=null!=c?c:e,f=e-h+(h>d?7:0)-(e>h?7:0),g=7*(b-1)+(c-e)+f+1,{year:g>0?a:a-1,dayOfYear:g>0?g:u(a-1)+g}}function $(a){var b=a._i,c=a._f;return null===b?db.invalid({nullInput:!0}):("string"==typeof b&&(a._i=b=C().preparse(b)),db.isMoment(b)?(a=i(b),a._d=new Date(+b._d)):c?m(c)?Q(a):N(a):S(a),new f(a))}function _(a,b){db.fn[a]=db.fn[a+"s"]=function(a){var c=this._isUTC?"UTC":"";return null!=a?(this._d["set"+c+b](a),db.updateOffset(this),this):this._d["get"+c+b]()}}function ab(a){db.duration.fn[a]=function(){return this._data[a]}}function bb(a,b){db.duration.fn["as"+a]=function(){return+this/b}}function cb(a){var b=!1,c=db;"undefined"==typeof ender&&(a?(gb.moment=function(){return!b&&console&&console.warn&&(b=!0,console.warn("Accessing Moment through the global scope is deprecated, and will be removed in an upcoming release.")),c.apply(null,arguments)},h(gb.moment,c)):gb.moment=db)}for(var db,eb,fb="2.5.1",gb=this,hb=Math.round,ib=0,jb=1,kb=2,lb=3,mb=4,nb=5,ob=6,pb={},qb={_isAMomentObject:null,_i:null,_f:null,_l:null,_strict:null,_isUTC:null,_offset:null,_pf:null,_lang:null},rb="undefined"!=typeof module&&module.exports&&"undefined"!=typeof require,sb=/^\/?Date\((\-?\d+)/i,tb=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ub=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,vb=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g,wb=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,xb=/\d\d?/,yb=/\d{1,3}/,zb=/\d{1,4}/,Ab=/[+\-]?\d{1,6}/,Bb=/\d+/,Cb=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,Db=/Z|[\+\-]\d\d:?\d\d/gi,Eb=/T/i,Fb=/[\+\-]?\d+(\.\d{1,3})?/,Gb=/\d/,Hb=/\d\d/,Ib=/\d{3}/,Jb=/\d{4}/,Kb=/[+-]?\d{6}/,Lb=/[+-]?\d+/,Mb=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Nb="YYYY-MM-DDTHH:mm:ssZ",Ob=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],Pb=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d{1,3}/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],Qb=/([\+\-]|\d\d)/gi,Rb="Date|Hours|Minutes|Seconds|Milliseconds".split("|"),Sb={Milliseconds:1,Seconds:1e3,Minutes:6e4,Hours:36e5,Days:864e5,Months:2592e6,Years:31536e6},Tb={ms:"millisecond",s:"second",m:"minute",h:"hour",d:"day",D:"date",w:"week",W:"isoWeek",M:"month",y:"year",DDD:"dayOfYear",e:"weekday",E:"isoWeekday",gg:"weekYear",GG:"isoWeekYear"},Ub={dayofyear:"dayOfYear",isoweekday:"isoWeekday",isoweek:"isoWeek",weekyear:"weekYear",isoweekyear:"isoWeekYear"},Vb={},Wb="DDD w W M D d".split(" "),Xb="M D H h m s w W".split(" "),Yb={M:function(){return this.month()+1},MMM:function(a){return this.lang().monthsShort(this,a)},MMMM:function(a){return this.lang().months(this,a)},D:function(){return this.date()},DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(a){return this.lang().weekdaysMin(this,a)},ddd:function(a){return this.lang().weekdaysShort(this,a)},dddd:function(a){return this.lang().weekdays(this,a)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return k(this.year()%100,2)},YYYY:function(){return k(this.year(),4)},YYYYY:function(){return k(this.year(),5)},YYYYYY:function(){var a=this.year(),b=a>=0?"+":"-";return b+k(Math.abs(a),6)},gg:function(){return k(this.weekYear()%100,2)},gggg:function(){return k(this.weekYear(),4)},ggggg:function(){return k(this.weekYear(),5)},GG:function(){return k(this.isoWeekYear()%100,2)},GGGG:function(){return k(this.isoWeekYear(),4)},GGGGG:function(){return k(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.lang().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.lang().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return s(this.milliseconds()/100)},SS:function(){return k(s(this.milliseconds()/10),2)},SSS:function(){return k(this.milliseconds(),3)},SSSS:function(){return k(this.milliseconds(),3)},Z:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+k(s(a/60),2)+":"+k(s(a)%60,2)},ZZ:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+k(s(a/60),2)+k(s(a)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()},Q:function(){return this.quarter()}},Zb=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];Wb.length;)eb=Wb.pop(),Yb[eb+"o"]=d(Yb[eb],eb);for(;Xb.length;)eb=Xb.pop(),Yb[eb+eb]=c(Yb[eb],2);for(Yb.DDDD=c(Yb.DDD,3),h(e.prototype,{set:function(a){var b,c;for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(a){return this._months[a.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a){var b,c,d;for(this._monthsParse||(this._monthsParse=[]),b=0;12>b;b++)if(this._monthsParse[b]||(c=db.utc([2e3,b]),d="^"+this.months(c,"")+"|^"+this.monthsShort(c,""),this._monthsParse[b]=new RegExp(d.replace(".",""),"i")),this._monthsParse[b].test(a))return b},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var b,c,d;for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=db([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},longDateFormat:function(a){var b=this._longDateFormat[a];return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=b),b},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,b,c){return a>11?c?"pm":"PM":c?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(a,b){var c=this._calendar[a];return"function"==typeof c?c.apply(b):c},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,b,c,d){var e=this._relativeTime[c];return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)},pastFuture:function(a,b){var c=this._relativeTime[a>0?"future":"past"];return"function"==typeof c?c(b):c.replace(/%s/i,b)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",preparse:function(a){return a},postformat:function(a){return a},week:function(a){return Y(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),db=function(c,d,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._i=c,g._f=d,g._l=e,g._strict=f,g._isUTC=!1,g._pf=b(),$(g)},db.utc=function(c,d,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._useUTC=!0,g._isUTC=!0,g._l=e,g._i=c,g._f=d,g._strict=f,g._pf=b(),$(g).utc()},db.unix=function(a){return db(1e3*a)},db.duration=function(a,b){var c,d,e,f=a,h=null;return db.isDuration(a)?f={ms:a._milliseconds,d:a._days,M:a._months}:"number"==typeof a?(f={},b?f[b]=a:f.milliseconds=a):(h=tb.exec(a))?(c="-"===h[1]?-1:1,f={y:0,d:s(h[kb])*c,h:s(h[lb])*c,m:s(h[mb])*c,s:s(h[nb])*c,ms:s(h[ob])*c}):(h=ub.exec(a))&&(c="-"===h[1]?-1:1,e=function(a){var b=a&&parseFloat(a.replace(",","."));return(isNaN(b)?0:b)*c},f={y:e(h[2]),M:e(h[3]),d:e(h[4]),h:e(h[5]),m:e(h[6]),s:e(h[7]),w:e(h[8])}),d=new g(f),db.isDuration(a)&&a.hasOwnProperty("_lang")&&(d._lang=a._lang),d},db.version=fb,db.defaultFormat=Nb,db.updateOffset=function(){},db.lang=function(a,b){var c;return a?(b?A(y(a),b):null===b?(B(a),a="en"):pb[a]||C(a),c=db.duration.fn._lang=db.fn._lang=C(a),c._abbr):db.fn._lang._abbr},db.langData=function(a){return a&&a._lang&&a._lang._abbr&&(a=a._lang._abbr),C(a)},db.isMoment=function(a){return a instanceof f||null!=a&&a.hasOwnProperty("_isAMomentObject")},db.isDuration=function(a){return a instanceof g},eb=Zb.length-1;eb>=0;--eb)r(Zb[eb]);for(db.normalizeUnits=function(a){return p(a)},db.invalid=function(a){var b=db.utc(0/0);return null!=a?h(b._pf,a):b._pf.userInvalidated=!0,b},db.parseZone=function(a){return db(a).parseZone()},h(db.fn=f.prototype,{clone:function(){return db(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().lang("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var a=db(this).utc();return 00:!1},parsingFlags:function(){return h({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(){return this.zone(0)},local:function(){return this.zone(0),this._isUTC=!1,this},format:function(a){var b=F(this,a||db.defaultFormat);return this.lang().postformat(b)},add:function(a,b){var c;return c="string"==typeof a?db.duration(+b,a):db.duration(a,b),l(this,c,1),this},subtract:function(a,b){var c;return c="string"==typeof a?db.duration(+b,a):db.duration(a,b),l(this,c,-1),this},diff:function(a,b,c){var d,e,f=z(a,this),g=6e4*(this.zone()-f.zone());return b=p(b),"year"===b||"month"===b?(d=432e5*(this.daysInMonth()+f.daysInMonth()),e=12*(this.year()-f.year())+(this.month()-f.month()),e+=(this-db(this).startOf("month")-(f-db(f).startOf("month")))/d,e-=6e4*(this.zone()-db(this).startOf("month").zone()-(f.zone()-db(f).startOf("month").zone()))/d,"year"===b&&(e/=12)):(d=this-f,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-g)/864e5:"week"===b?(d-g)/6048e5:d),c?e:j(e)},from:function(a,b){return db.duration(this.diff(a)).lang(this.lang()._abbr).humanize(!b)},fromNow:function(a){return this.from(db(),a)},calendar:function(){var a=z(db(),this).startOf("day"),b=this.diff(a,"days",!0),c=-6>b?"sameElse":-1>b?"lastWeek":0>b?"lastDay":1>b?"sameDay":2>b?"nextDay":7>b?"nextWeek":"sameElse";return this.format(this.lang().calendar(c,this))},isLeapYear:function(){return v(this.year())},isDST:function(){return this.zone()+db(a).startOf(b)},isBefore:function(a,b){return b="undefined"!=typeof b?b:"millisecond",+this.clone().startOf(b)<+db(a).startOf(b)},isSame:function(a,b){return b=b||"ms",+this.clone().startOf(b)===+z(a,this).startOf(b)},min:function(a){return a=db.apply(null,arguments),this>a?this:a},max:function(a){return a=db.apply(null,arguments),a>this?this:a},zone:function(a){var b=this._offset||0;return null==a?this._isUTC?b:this._d.getTimezoneOffset():("string"==typeof a&&(a=I(a)),Math.abs(a)<16&&(a=60*a),this._offset=a,this._isUTC=!0,b!==a&&l(this,db.duration(b-a,"m"),1,!0),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(a){return a=a?db(a).zone():0,(this.zone()-a)%60===0},daysInMonth:function(){return t(this.year(),this.month())},dayOfYear:function(a){var b=hb((db(this).startOf("day")-db(this).startOf("year"))/864e5)+1;return null==a?b:this.add("d",a-b)},quarter:function(){return Math.ceil((this.month()+1)/3)},weekYear:function(a){var b=Y(this,this.lang()._week.dow,this.lang()._week.doy).year;return null==a?b:this.add("y",a-b)},isoWeekYear:function(a){var b=Y(this,1,4).year;return null==a?b:this.add("y",a-b)},week:function(a){var b=this.lang().week(this);return null==a?b:this.add("d",7*(a-b))},isoWeek:function(a){var b=Y(this,1,4).week;return null==a?b:this.add("d",7*(a-b))},weekday:function(a){var b=(this.day()+7-this.lang()._week.dow)%7;return null==a?b:this.add("d",a-b)},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},get:function(a){return a=p(a),this[a]()},set:function(a,b){return a=p(a),"function"==typeof this[a]&&this[a](b),this},lang:function(b){return b===a?this._lang:(this._lang=C(b),this)}}),eb=0;eb=a:return 100;case 5e3>=a:return 1e3;case 7500>=a:return 5e3;case 15e3>=a:return 1e4;case 45e3>=a:return 3e4;case 18e4>=a:return 6e4;case 45e4>=a:return 3e5;case 12e5>=a:return 6e5;case 27e5>=a:return 18e5;case 72e5>=a:return 36e5;case 216e5>=a:return 108e5;case 864e5>=a:return 432e5;case 1728e5>=a:return 864e5;case 6048e5>=a:return 864e5;case 18144e5>=a:return 6048e5;case 36288e5>a:return 2592e6;default:return 31536e6}},d.secondsToHms=function(a){var b=Math.floor(a/31536e3);if(b)return b+"y";var c=Math.floor(a%31536e3/86400);if(c)return c+"d";var d=Math.floor(a%31536e3%86400/3600);if(d)return d+"h";var e=Math.floor(a%31536e3%86400%3600/60);if(e)return e+"m";var f=a%31536e3%86400%3600%60;return f?f+"s":"less then a second"},d.to_percent=function(a,b){return Math.floor(a/b*1e4)/100+"%"},d.addslashes=function(a){return a=a.replace(/\\/g,"\\\\"),a=a.replace(/\'/g,"\\'"),a=a.replace(/\"/g,'\\"'),a=a.replace(/\0/g,"\\0")},d.interval_regex=/(\d+(?:\.\d+)?)([Mwdhmsy])/,d.intervals_in_seconds={y:31536e3,M:2592e3,w:604800,d:86400,h:3600,m:60,s:1},d.describe_interval=function(a){var c=a.match(d.interval_regex);if(c&&b.has(d.intervals_in_seconds,c[2]))return{sec:d.intervals_in_seconds[c[2]],type:c[2],count:parseInt(c[1],10)};throw new Error('Invalid interval string, expexcting a number followed by one of "Mwdhmsy"')},d.interval_to_ms=function(a){var b=d.describe_interval(a);return 1e3*b.sec*b.count},d.interval_to_seconds=function(a){var b=d.describe_interval(a);return b.sec*b.count},d.time_ago=function(a){return new Date((new Date).getTime()-d.interval_to_ms(a))},d.parseDate=function(a){if(b.isDate(a))return a;var c,e,f,g="";return"now"===a.substring(0,3)?(c=new Date,g=a.substring("now".length)):(e=a.indexOf("||"),-1===e?(f=a,g=""):(f=a.substring(0,e),g=a.substring(e+2)),c=new Date(f)),g.length?d.parseDateMath(g,c):c},d.parseDateMath=function(a,b,d){for(var e=c(b),f=0;f'},d.byteFormat=function(a,c){var d,e=0;for(b.isUndefined(c)?c=2:0===c&&(c=void 0);Math.abs(a)>=1024;)e++,a/=1024;switch(e){case 0:d=" B";break;case 1:d=" KiB";break;case 2:d=" MiB";break;case 3:d=" GiB";break;case 4:d=" TiB";break;case 5:d=" PiB";break;case 6:d=" EiB";break;case 7:d=" ZiB";break;case 8:d=" YiB"}return a.toFixed(c)+d},d.bitFormat=function(a,c){var d,e=0;for(b.isUndefined(c)?c=2:0===c&&(c=void 0);Math.abs(a)>=1024;)e++,a/=1024;switch(e){case 0:d=" b";break;case 1:d=" Kib";break;case 2:d=" Mib";break;case 3:d=" Gib";break;case 4:d=" Tib";break;case 5:d=" Pib";break;case 6:d=" Eib";break;case 7:d=" Zib";break;case 8:d=" Yib"}return a.toFixed(c)+d},d.shortFormat=function(a,c){var d,e=0;for(b.isUndefined(c)?c=2:0===c&&(c=void 0);Math.abs(a)>=1e3;)e++,a/=1e3;switch(e){case 0:d="";break;case 1:d=" K";break;case 2:d=" Mil";break;case 3:d=" Bil";break;case 4:d=" Tri";break;case 5:d=" Quadr";break;case 6:d=" Quint";break;case 7:d=" Sext";break;case 8:d=" Sept"}return a.toFixed(c)+d},d.getFormatFunction=function(a,b){switch(a){case"short":return function(a){return d.shortFormat(a,b)};case"bytes":return function(a){return d.byteFormat(a,b)};case"bits":return function(a){return d.bitFormat(a,b)};case"s":return function(a){return d.sFormat(a,b)};case"ms":return function(a){return d.msFormat(a,b)};case"µs":return function(a){return d.microsFormat(a,b)};case"ns":return function(a){return d.nanosFormat(a,b)};default:return function(a){return a%1===0?a:a.toFixed(b)}}},d.msFormat=function(a,b){return 1e3>a?a.toFixed(0)+" ms":6e4>a?(a/1e3).toFixed(b)+" s":36e5>a?(a/6e4).toFixed(b)+" min":864e5>a?(a/36e5).toFixed(b)+" hour":31536e6>a?(a/864e5).toFixed(b)+" day":(a/31536e6).toFixed(b)+" year"},d.sFormat=function(a,b){return 600>a?a.toFixed(b)+" s":3600>a?(a/60).toFixed(b)+" min":86400>a?(a/3600).toFixed(b)+" hour":604800>a?(a/86400).toFixed(b)+" day":31536e3>a?(a/604800).toFixed(b)+" week":(a/31556900).toFixed(b)+" year"},d.microsFormat=function(a,b){return 1e3>a?a.toFixed(0)+" µs":1e6>a?(a/1e3).toFixed(b)+" ms":(a/1e6).toFixed(b)+" s"},d.nanosFormat=function(a,b){return 1e3>a?a.toFixed(0)+" ns":1e6>a?(a/1e3).toFixed(b)+" µs":1e9>a?(a/1e6).toFixed(b)+" ms":6e10>a?(a/1e9).toFixed(b)+" s":(a/6e10).toFixed(b)+" m"},d}),window.Modernizr=function(a,b,c){function d(a){t.cssText=a}function e(a,b){return d(x.join(a+";")+(b||""))}function f(a,b){return typeof a===b}function g(a,b){return!!~(""+a).indexOf(b)}function h(a,b){for(var d in a){var e=a[d];if(!g(e,"-")&&t[e]!==c)return"pfx"==b?e:!0}return!1}function i(a,b,d){for(var e in a){var g=b[a[e]];if(g!==c)return d===!1?a[e]:f(g,"function")?g.bind(d||b):g}return!1}function j(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+z.join(d+" ")+d).split(" ");return f(b,"string")||f(b,"undefined")?h(e,b):(e=(a+" "+A.join(d+" ")+d).split(" "),i(e,b,c))}function k(){o.input=function(c){for(var d=0,e=c.length;e>d;d++)E[c[d]]=c[d]in u;return E.list&&(E.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),E}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),o.inputtypes=function(a){for(var d,e,f,g=0,h=a.length;h>g;g++)u.setAttribute("type",e=a[g]),d="text"!==u.type,d&&(u.value=v,u.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(e)&&u.style.WebkitAppearance!==c?(q.appendChild(u),f=b.defaultView,d=f.getComputedStyle&&"textfield"!==f.getComputedStyle(u,null).WebkitAppearance&&0!==u.offsetHeight,q.removeChild(u)):/^(search|tel)$/.test(e)||(d=/^(url|email)$/.test(e)?u.checkValidity&&u.checkValidity()===!1:u.value!=v)),D[a[g]]=!!d;return D}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var l,m,n="2.6.1",o={},p=!0,q=b.documentElement,r="modernizr",s=b.createElement(r),t=s.style,u=b.createElement("input"),v=":)",w={}.toString,x=" -webkit- -moz- -o- -ms- ".split(" "),y="Webkit Moz O ms",z=y.split(" "),A=y.toLowerCase().split(" "),B={svg:"http://www.w3.org/2000/svg"},C={},D={},E={},F=[],G=F.slice,H=function(a,c,d,e){var f,g,h,i=b.createElement("div"),j=b.body,k=j?j:b.createElement("body");if(parseInt(d,10))for(;d--;)h=b.createElement("div"),h.id=e?e[d]:r+(d+1),i.appendChild(h);return f=["­",'"].join(""),i.id=r,(j?i:k).innerHTML+=f,k.appendChild(i),j||(k.style.background="",q.appendChild(k)),g=c(i,a),j?i.parentNode.removeChild(i):k.parentNode.removeChild(k),!!g -},I=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return H("@media "+b+" { #"+r+" { position: absolute; } }",function(b){d="absolute"==(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle).position}),d},J=function(){function a(a,e){e=e||b.createElement(d[a]||"div"),a="on"+a;var g=a in e;return g||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(a,""),g=f(e[a],"function"),f(e[a],"undefined")||(e[a]=c),e.removeAttribute(a))),e=null,g}var d={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return a}(),K={}.hasOwnProperty;m=f(K,"undefined")||f(K.call,"undefined")?function(a,b){return b in a&&f(a.constructor.prototype[b],"undefined")}:function(a,b){return K.call(a,b)},Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError;var c=G.call(arguments,1),d=function(){if(this instanceof d){var e=function(){};e.prototype=b.prototype;var f=new e,g=b.apply(f,c.concat(G.call(arguments)));return Object(g)===g?g:f}return b.apply(a,c.concat(G.call(arguments)))};return d}),C.flexbox=function(){return j("flexWrap")},C.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},C.canvastext=function(){return!!o.canvas&&!!f(b.createElement("canvas").getContext("2d").fillText,"function")},C.webgl=function(){return!!a.WebGLRenderingContext},C.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:H(["@media (",x.join("touch-enabled),("),r,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=9===a.offsetTop}),c},C.geolocation=function(){return"geolocation"in navigator},C.postmessage=function(){return!!a.postMessage},C.websqldatabase=function(){return!!a.openDatabase},C.indexedDB=function(){return!!j("indexedDB",a)},C.hashchange=function(){return J("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},C.history=function(){return!!a.history&&!!history.pushState},C.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},C.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},C.rgba=function(){return d("background-color:rgba(150,255,150,.5)"),g(t.backgroundColor,"rgba")},C.hsla=function(){return d("background-color:hsla(120,40%,100%,.5)"),g(t.backgroundColor,"rgba")||g(t.backgroundColor,"hsla")},C.multiplebgs=function(){return d("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(t.background)},C.backgroundsize=function(){return j("backgroundSize")},C.borderimage=function(){return j("borderImage")},C.borderradius=function(){return j("borderRadius")},C.boxshadow=function(){return j("boxShadow")},C.textshadow=function(){return""===b.createElement("div").style.textShadow},C.opacity=function(){return e("opacity:.55"),/^0.55$/.test(t.opacity)},C.cssanimations=function(){return j("animationName")},C.csscolumns=function(){return j("columnCount")},C.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return d((a+"-webkit- ".split(" ").join(b+a)+x.join(c+a)).slice(0,-a.length)),g(t.backgroundImage,"gradient")},C.cssreflections=function(){return j("boxReflect")},C.csstransforms=function(){return!!j("transform")},C.csstransforms3d=function(){var a=!!j("perspective");return a&&"webkitPerspective"in q.style&&H("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b){a=9===b.offsetLeft&&3===b.offsetHeight}),a},C.csstransitions=function(){return j("transition")},C.fontface=function(){var a;return H('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&0===g.indexOf(d.split(" ")[0])}),a},C.generatedcontent=function(){var a;return H(['#modernizr:after{content:"',v,'";visibility:hidden}'].join(""),function(b){a=b.offsetHeight>=1}),a},C.video=function(){var a=b.createElement("video"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(d){}return c},C.audio=function(){var a=b.createElement("audio"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(d){}return c},C.localstorage=function(){try{return localStorage.setItem(r,r),localStorage.removeItem(r),!0}catch(a){return!1}},C.sessionstorage=function(){try{return sessionStorage.setItem(r,r),sessionStorage.removeItem(r),!0}catch(a){return!1}},C.webworkers=function(){return!!a.Worker},C.applicationcache=function(){return!!a.applicationCache},C.svg=function(){return!!b.createElementNS&&!!b.createElementNS(B.svg,"svg").createSVGRect},C.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="",(a.firstChild&&a.firstChild.namespaceURI)==B.svg},C.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(w.call(b.createElementNS(B.svg,"animate")))},C.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(w.call(b.createElementNS(B.svg,"clipPath")))};for(var L in C)m(C,L)&&(l=L.toLowerCase(),o[l]=C[L](),F.push((o[l]?"":"no-")+l));return o.input||k(),o.addTest=function(a,b){if("object"==typeof a)for(var d in a)m(a,d)&&o.addTest(d,a[d]);else{if(a=a.toLowerCase(),o[a]!==c)return o;b="function"==typeof b?b():b,p&&(q.className+=" "+(b?"":"no-")+a),o[a]=b}return o},d(""),s=u=null,function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=r.elements;return"string"==typeof a?a.split(" "):a}function e(a){var b=q[a[o]];return b||(b={},p++,a[o]=p,q[p]=b),b}function f(a,c,d){if(c||(c=b),k)return c.createElement(a);d||(d=e(c));var f;return f=d.cache[a]?d.cache[a].cloneNode():n.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),f.canHaveChildren&&!m.test(a)?d.frag.appendChild(f):f}function g(a,c){if(a||(a=b),k)return a.createDocumentFragment();c=c||e(a);for(var f=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)f.createElement(h[g]);return f}function h(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?f(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function i(a){a||(a=b);var d=e(a);return r.shivCSS&&!j&&!d.hasCSS&&(d.hasCSS=!!c(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),k||h(a,d),a}var j,k,l=a.html5||{},m=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,n=/^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i,o="_html5shiv",p=0,q={};!function(){try{var a=b.createElement("a");a.innerHTML="",j="hidden"in a,k=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){j=!0,k=!0}}();var r={elements:l.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:l.shivCSS!==!1,supportsUnknownElements:k,shivMethods:l.shivMethods!==!1,type:"default",shivDocument:i,createElement:f,createDocumentFragment:g};a.html5=r,i(b)}(this,b),o._version=n,o._prefixes=x,o._domPrefixes=A,o._cssomPrefixes=z,o.mq=I,o.hasEvent=J,o.testProp=function(a){return h([a])},o.testAllProps=j,o.testStyles=H,o.prefixed=function(a,b,c){return b?j(a,b,c):j(a,"pfx")},q.className=q.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(p?" js "+F.join(" "):""),o}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==q.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=r.shift();s=1,a?a.t?o(function(){("c"==a.t?m.injectCss:m.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):s=0}function i(a,c,d,e,f,i,j){function k(b){if(!n&&g(l.readyState)&&(t.r=n=1,!s&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&o(function(){v.removeChild(l)},50);for(var d in A[c])A[c].hasOwnProperty(d)&&A[c][d].onload()}}var j=j||m.errorTimeout,l={},n=0,q=0,t={t:d,s:c,e:f,a:i,x:j};1===A[c]&&(q=1,A[c]=[],l=b.createElement(a)),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,q)},r.splice(e,0,t),"img"!=a&&(q||2===A[c]?(v.insertBefore(l,u?null:p),o(k,j)):A[c].push(l))}function j(a,b,c,d,f){return s=0,b=b||"j",e(a)?i("c"==b?x:w,a,b,this.i++,c,d,f):(r.splice(this.i++,0,a),1==r.length&&h()),this}function k(){var a=m;return a.loader={load:j,i:0},a}var l,m,n=b.documentElement,o=a.setTimeout,p=b.getElementsByTagName("script")[0],q={}.toString,r=[],s=0,t="MozAppearance"in n.style,u=t&&!!b.createRange().compareNode,v=u?n:p.parentNode,n=a.opera&&"[object Opera]"==q.call(a.opera),n=!!b.attachEvent&&!n,w=t?"object":n?"script":"img",x=n?"script":w,y=Array.isArray||function(a){return"[object Array]"==q.call(a)},z=[],A={},B={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}};m=function(a){function b(a){var b,c,d,a=a.split("!"),e=z.length,f=a.pop(),g=a.length,f={url:f,origUrl:f,prefixes:a};for(c=0;g>c;c++)d=a[c].split("="),(b=B[d.shift()])&&(f=b(f,d));for(c=0;e>c;c++)f=z[c](f);return f}function g(a,e,f,g,i){var j=b(a),l=j.autoCallback;j.url.split(".").pop().split("?").shift(),j.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]||h),j.instead?j.instead(a,e,f,g,i):(A[j.url]?j.noexec=!0:A[j.url]=1,f.load(j.url,j.forceCSS||!j.forceJS&&"css"==j.url.split(".").pop().split("?").shift()?"c":c,j.noexec,j.attrs,j.timeout),(d(e)||d(l))&&f.load(function(){k(),e&&e(j.origUrl,i,g),l&&l(j.origUrl,i,g),A[j.url]=2})))}function i(a,b){function c(a,c){if(a){if(e(a))c||(l=function(){var a=[].slice.call(arguments);m.apply(this,a),n()}),g(a,l,b,0,j);else if(Object(a)===a)for(i in h=function(){var b,c=0;for(b in a)a.hasOwnProperty(b)&&c++;return c}(),a)a.hasOwnProperty(i)&&(!c&&!--h&&(d(l)?l=function(){var a=[].slice.call(arguments);m.apply(this,a),n()}:l[i]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),n()}}(m[i])),g(a[i],l,b,i,j))}else!c&&n()}var h,i,j=!!a.test,k=a.load||a.both,l=a.callback||f,m=l,n=a.complete||f;c(j?a.yep:a.nope,!!k),k&&c(k)}var j,l,n=this.yepnope.loader;if(e(a))g(a,0,n,0);else if(y(a))for(j=0;jhere
    to load your old dashboard anyway.')):l.path(e.default_route);else{var a=h.kbnType,b=h.kbnId;switch(a){case"elasticsearch":u.elasticsearch_load("dashboard",b);break;case"temp":u.elasticsearch_load("temp",b);break;case"file":u.file_load(b);break;case"script":u.script_load(b);break;case"local":u.local_load();break;default:l.path(e.default_route)}}};this.refresh=function(){j.$broadcast("refresh")};var w=function(a){d.defaults(a,r),d.defaults(a.loader,r.loader);var b=d.findWhere(a.pulldowns,{type:"filtering"});b||a.pulldowns.push({type:"filtering",enable:!1});var c=d.findWhere(a.pulldowns,{type:"annotations"});return c||a.pulldowns.push({type:"annotations",enable:!1}),d.each(a.rows,function(a){d.each(a.panels,function(a){"graphite"===a.type&&(a.type="graph")})}),a};this.dash_load=function(b){return o.cancel_all(),j.fullscreen=!1,b=w(b),window.document.title="Metrics - "+b.title,u.current=a.copy(b),b.refresh&&u.set_interval(b.refresh),u.availablePanels=e.panels,j.$emit("dashboard-loaded",u.current),!0},this.gist_id=function(a){return u.is_gist(a)?a.match(t)[0].replace(/.*\//,""):void 0},this.is_gist=function(a){return d.isUndefined(a)||""===a||d.isNull(a.match(t))?!1:a.match(t).length>0?!0:!1},this.to_file=function(){var b=new Blob([a.toJson(u.current,!0)],{type:"application/json;charset=utf-8"});return window.saveAs(b,u.current.title+"-"+(new Date).getTime()),!0},this.set_default=function(a){return g.localstorage?(d.isUndefined(window.localStorage.dashboard)||delete window.localStorage.dashboard,window.localStorage.grafanaDashboardDefault=a,!0):!1},this.purge_default=function(){return g.localstorage?(d.isUndefined(window.localStorage.dashboard)||delete window.localStorage.dashboard,delete window.localStorage.grafanaDashboardDefault,!0):!1},this.share_link=function(a,b,c){return{location:window.location.href.replace(window.location.hash,""),type:b,id:c,link:window.location.href.replace(window.location.hash,"")+"#dashboard/"+b+"/"+c,title:a}};var x=function(b,c){var e;d.templateSettings={interpolate:/\{\{(.+?)\}\}/g};var f=d.template(b),g=f({ARGS:c});try{e=a.fromJson(g)}catch(h){e=!1}return e};this.local_load=function(){var a=JSON.parse(window.localStorage.dashboard);a.rows.unshift({height:"30",title:"Deprecation Notice",panels:[{title:"WARNING: Legacy dashboard",type:"text",span:12,mode:"html",content:'This dashboard has been loaded from the browsers local cache. If you use another brower or computer you will not be able to access it! \n\n

    Good news!

    Kibana now stores saved dashboards in Elasticsearch. Click the button in the top left to save this dashboard. Then select "Set as Home" from the "advanced" sub menu to automatically use the stored dashboard as your Kibana landing page afterwards

    Tip: You may with to remove this row before saving!'}]}),u.dash_load(a)},this.file_load=function(a){return i({url:"app/dashboards/"+a.replace(/\.(?!json)/,"/")+"?"+(new Date).getTime(),method:"GET",transformResponse:function(a){return x(a,h)}}).then(function(a){return a?(u.dash_load(w(a.data)),!0):!1},function(){return p.set("Error","Could not load dashboards/"+a+". Please make sure it exists","error"),!1})},this.elasticsearch_load=function(b,c){var d={url:e.elasticsearch+"/"+e.grafana_index+"/"+b+"/"+c+"?"+(new Date).getTime(),method:"GET",transformResponse:function(b){return x(a.fromJson(b)._source.dashboard,h)}};return e.elasticsearchBasicAuth&&(d.withCredentials=!0,d.headers={Authorization:"Basic "+e.elasticsearchBasicAuth}),i(d).error(function(a,b){return 0===b?p.set("Error","Could not contact Elasticsearch at "+e.elasticsearch+". Please ensure that Elasticsearch is reachable from your system.","error"):p.set("Error","Could not find "+c+". If you are using a proxy, ensure it is configured correctly","error"),!1}).success(function(a){u.dash_load(a)})},this.script_load=function(a){return i({url:"app/dashboards/"+a.replace(/\.(?!js)/,"/"),method:"GET"}).then(function(a){var e=new Function("ARGS","kbn","_","moment","window","document","$","jQuery",a.data),g=e(h,c,d,f,window,document,b,b);if(d.isFunction(g)){var i=q.defer();return g(function(a){j.$apply(function(){i.resolve({data:a})})}),i.promise}return{data:g}}).then(function(a){return a?(u.dash_load(w(a.data)),!0):!1},function(){return p.set("Error","Could not load scripts/"+a+". Please make sure it exists and returns a valid dashboard","error"),!1})},this.elasticsearch_save=function(b,c,f){var g,h=d.clone(u.current);"dashboard"===b&&(g=h.title=d.isUndefined(c)?u.current.title:c);var i=s.Document(e.grafana_index,b,g).source({user:"guest",group:"guest",title:h.title,tags:h.tags,dashboard:a.toJson(h)});return i="temp"===b&&f?i.ttl(f):i,i.doIndex(function(a){return"dashboard"===b&&l.path("/dashboard/elasticsearch/"+c),a},function(){return!1})},this.elasticsearch_delete=function(a){return s.Document(e.grafana_index,"dashboard",a).doDelete(function(a){return a},function(){return!1})},this.save_gist=function(b,c){var e=d.clone(c||u.current);return e.title=b||u.current.title,i({url:"https://api.github.com/gists",method:"POST",data:{description:e.title,"public":!1,files:{"kibana-dashboard.json":{content:a.toJson(e,!0)}}}}).then(function(a){return a.data.html_url},function(){return!1})},this.gist_list=function(a){return i.jsonp("https://api.github.com/gists/"+a+"?callback=JSON_CALLBACK").then(function(a){var b=[];return d.each(a.data.data.files,function(a){try{var c=JSON.parse(a.content);b.push(c)}catch(d){return!1}}),b},function(){return!1})},this.start_scheduled_refresh=function(a){this.cancel_scheduled_refresh(),u.refresh_timer=o.register(m(function(){u.start_scheduled_refresh(a),u.refresh()},a))},this.cancel_scheduled_refresh=function(){o.cancel(u.refresh_timer)},this.set_interval=function(a){if(u.current.refresh=a,a){var b=c.interval_to_ms(a);this.start_scheduled_refresh(b)}else this.cancel_scheduled_refresh()}}])}),define("services/graphite/graphiteDatasource",["angular","underscore","jquery","config","kbn","moment"],function(a,b,c,d,e,f){var g=a.module("kibana.services");g.factory("GraphiteDatasource",["dashboard","$q","$http",function(a,d,g){function h(a){this.type="graphite",this.basicAuth=a.basicAuth,this.url=a.url,this.editorSrc="app/partials/graphite/editor.html",this.name=a.name,this.render_method=a.render_method||"POST"}return h.prototype.query=function(a,b){try{var c={from:this.translateTime(b.range.from,"round-down"),until:this.translateTime(b.range.to,"round-up"),targets:b.targets,format:b.format,maxDataPoints:b.maxDataPoints},e=this.buildGraphiteParams(a,c);if("png"===b.format)return d.when(this.url+"/render?"+e.join("&"));var f={method:this.render_method,url:"/render"};return"GET"===f.method?f.url=f.url+"?"+e.join("&"):(f.data=e.join("&"),f.headers={"Content-Type":"application/x-www-form-urlencoded"}),this.doGraphiteRequest(f)}catch(g){return d.reject(g)}},h.prototype.events=function(a){try{var b="";return a.tags&&(b="&tags="+a.tags),this.doGraphiteRequest({method:"GET",url:"/events/get_data?from="+this.translateTime(a.range.from)+"&until="+this.translateTime(a.range.to)+b})}catch(c){return d.reject(c)}},h.prototype.translateTime=function(a,c){if(b.isString(a)){if("now"===a)return"now";if(a.indexOf("now")>=0)return a=a.substring(3),a=a.replace("m","min"),a=a.replace("M","mon");a=e.parseDate(a)}return a=f.utc(a),"round-up"===c?a.get("s")&&a.add("m",1):"round-down"===c&&a.get("s")&&a.subtract("m",1),a.unix()},h.prototype.metricFindQuery=function(a,c){var e;try{e=encodeURIComponent(a.applyTemplateToTarget(c))}catch(f){return d.reject(f)}return this.doGraphiteRequest({method:"GET",url:"/metrics/find/?query="+e}).then(function(a){return b.map(a.data,function(a){return{text:a.text,expandable:a.expandable?!0:!1}})})},h.prototype.listDashboards=function(a){return this.doGraphiteRequest({method:"GET",url:"/dashboard/find/",params:{query:a||""}}).then(function(a){return a.data.dashboards})},h.prototype.loadDashboard=function(a){return this.doGraphiteRequest({method:"GET",url:"/dashboard/load/"+encodeURIComponent(a)})},h.prototype.doGraphiteRequest=function(a){return this.basicAuth&&(a.withCredentials=!0,a.headers=a.headers||{},a.headers.Authorization="Basic "+this.basicAuth),a.url=this.url+a.url,g(a)},h.prototype.buildGraphiteParams=function(a,d){var e=[],f=["target","targets","from","until","rawData","format","maxDataPoints"];return"png"!==d.format&&(d.format="json"),b.each(d,function(d,g){-1!==c.inArray(g,f)&&("targets"===g?b.each(d,function(b){if(b.target&&!b.hide){var c=a.applyTemplateToTarget(b.target);e.push("target="+encodeURIComponent(c))}},this):null!==d&&e.push(g+"="+encodeURIComponent(d)))},this),e},h}])}),define("services/influxdb/influxdbDatasource",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services");d.factory("InfluxDatasource",["$q","$http",function(a,d){function e(a){this.type="influxDB",this.editorSrc="app/partials/influxdb/editor.html",this.urls=a.urls,this.username=a.username,this.password=a.password,this.name=a.name,this.templateSettings={interpolate:/\[\[([\s\S]+?)\]\]/g}}function f(a,b,c){return b().then(void 0,function(d){0!==d.status||d.status>=300?a.reject(d):setTimeout(function(){return f(a,b,Math.min(2*c,3e4))},c)})}function g(a,c,d){var e=[];return b.each(d,function(d){var f,g=d.columns.indexOf("time"),h=1,i=-1;c&&(i=d.columns.indexOf(c)),b.each(d.columns,function(a,b){"time"!==a&&"sequence_number"!==a&&a!==c&&(h=b)});var j={};c?j=b.groupBy(d.points,function(a){return a[i]}):j[d.columns[h]]=d.points,b.each(j,function(b,i){for(var j=[],k=0;k now() - "+b:"time > "+b+" and time < "+c}function i(a){if(b.isString(a)){if("now"===a)return"now()";if(a.indexOf("now")>=0)return a.substring(4);a=c.parseDate(a)}return j(a)}function j(a){return(a.getTime()/1e3).toFixed(0)+"s"}return e.prototype.query=function(c,d){var e=b.map(d.targets,function(a){var e,f="";if(a.hide||!(a.series&&a.column||a.query))return[];var i,j=h(d);if(a.rawQuery){e=a.query,e=e.replace(";","");var k=e.split(" "),l=e.toLowerCase().split(" "),m=l.indexOf("where"),n=l.indexOf("group"),o=l.indexOf("order");-1!==l[1].indexOf(",")&&(i=l[1].replace(",","")),-1!==m?k.splice(m+1,0,j,"and"):-1!==n?k.splice(n,0,"where",j):-1!==o?k.splice(o,0,"where",j):(k.push("where"),k.push(j)),e=k.join(" "),e=c.applyTemplateToTarget(e)}else{var p="select [[group]][[group_comma]] [[func]]([[column]]) from [[series]] where [[timeFilter]] [[condition_add]] [[condition_key]] [[condition_op]] [[condition_value]] group by time([[interval]])[[group_comma]] [[group]] order asc",q={series:a.series,column:a.column,func:a.function,timeFilter:j,interval:a.interval||d.interval,condition_add:a.condition_filter?"and":"",condition_key:a.condition_filter?a.condition_key:"",condition_op:a.condition_filter?a.condition_op:"",condition_value:a.condition_filter?a.condition_value:"",group_comma:a.groupby_field_add&&a.groupby_field?",":"",group:a.groupby_field_add?a.groupby_field:""};q.series.match("^/.*/")||(q.series='"'+q.series+'"'),e=b.template(p,q,this.templateSettings),e=c.applyTemplateToTarget(e),a.alias&&(f=c.applyTemplateToTarget(a.alias)),a.groupby_field_add&&(i=a.groupby_field),a.query=e}var r=b.partial(g,f,i);return this.doInfluxRequest(e,f).then(r)},this);return a.all(e).then(function(a){return{data:b.flatten(a)}})},e.prototype.listColumns=function(a){return this.doInfluxRequest("select * from /"+a+"/ limit 1").then(function(a){return a?a[0].columns:[]})},e.prototype.listSeries=function(){return this.doInfluxRequest("list series").then(function(a){return b.map(a,function(a){return a.name})})},e.prototype.metricFindQuery=function(c,d){var e;try{e=c.applyTemplateToTarget(d)}catch(f){return a.reject(f)}return this.doInfluxRequest(d).then(function(a){return b.map(a[0].points,function(a){return{text:a[1],expandable:!1}})})},e.prototype.doInfluxRequest=function(b){var c=this,e=a.defer();return f(e,function(){var a=c.urls.shift();c.urls.push(a);var f={u:c.username,p:c.password,time_precision:"s",q:b},g={method:"GET",url:a+"/series",params:f};return d(g).success(function(a){e.resolve(a)})},10),e.promise},e}])}),define("services/opentsdb/opentsdbDatasource",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services");d.factory("OpenTSDBDatasource",["$q","$http",function(d,e){function f(a){this.type="opentsdb",this.editorSrc="app/partials/opentsdb/editor.html",this.url=a.url,this.name=a.name}function g(a,c){var d=[];b.each(a.dps,function(a,b){d.push([a,b])});var e=a.metric;if(!b.isEmpty(a.tags)){var f=[];b.each(b.pairs(a.tags),function(a){b.has(c,a[0])&&f.push(a[0]+"="+a[1])}),b.isEmpty(f)||(e=e+"{"+f.join(", ")+"}")}return{target:e,datapoints:d}}function h(b){if(!b.metric)return null;var c={metric:b.metric,aggregator:"avg"};return b.aggregator&&(c.aggregator=b.aggregator),b.shouldComputeRate&&(c.rate=!0,c.rateOptions={counter:!!b.isCounter}),b.shouldDownsample&&(c.downsample=b.downsampleInterval+"-"+b.downsampleAggregator),c.tags=a.copy(b.tags),c}function i(a){return"now"===a?null:(a=c.parseDate(a),a.getTime())}return f.prototype.query=function(a,c){var e=i(c.range.from),f=i(c.range.to),j=b.compact(b.map(c.targets,h));if(b.isEmpty(j)){var k=d.defer();return k.resolve({data:[]}),k.promise}var l={};return b.each(j,function(a){b.each(a.tags,function(a,b){l[b]=!0})}),this.performTimeSeriesQuery(j,e,f).then(function(a){var c=b.map(a.data,function(a){return g(a,l)});return{data:c}})},f.prototype.performTimeSeriesQuery=function(a,b,c){var d={start:b,queries:a};c&&(d.end=c);var f={method:"POST",url:this.url+"/api/query",data:d};return e(f)},f.prototype.performSuggestQuery=function(a,b){var c={method:"GET",url:this.url+"/api/suggest",params:{type:b,q:a}};return e(c).then(function(a){return a.data})},f}])}),define("services/kairosdb/kairosdbDatasource",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services"),e=null;d.factory("KairosDBDatasource",["$q","$http",function(d,f){function g(a){this.type="kairosdb",this.editorSrc="app/partials/kairosdb/editor.html",this.url=a.url,this.name=a.name}function h(a,c,d){return a.data?"key"===c?b.keys(a.data.queries[0].results[0].tags):"value"===c&&b.has(a.data.queries[0].results[0].tags,d)?a.data.queries[0].results[0].tags[d]:[]:[]}function i(a){if(a.data.errors&&!b.isEmpty(a.data.errors)){var c={message:a.data.errors[0]};return d.reject(c)}return d.reject(a)}function j(a){var c=[];b.each(a.data.queries,function(a){var d=a.sample_size;console.log("sample_size:"+d+" samples"),b.each(a.results,function(a){var d=a.name;a.group_by&&(d+=" ( ",b.each(a.group_by,function(a){"tag"===a.name?b.each(a.group,function(a,b){d+=b+"="+a+" "}):"value"===a.name?d+="value_group="+a.group.group_number+" ":"time"===a.name&&(d+="time_group="+a.group.group_number+" ")}),d+=") ");for(var e=[],f=0;f=0){f=e+"_relative",a=a.substring(4);var g=/(\d+)\s*(\D+)/,h=g.exec(a);if(h){var i=h[1],j=h[2];switch(j){case"ms":j="milliseconds";break;case"s":j="seconds";break;case"m":j="minutes";break;case"h":j="hours";break;case"d":j="days";break;case"w":j="weeks";break;case"M":j="months";break;case"y":j="years";break;default:console.log("Unknown date ",a)}return void(d[f]={value:i,unit:j})}return void console.log("Unparseable date",a)}a=c.parseDate(a)}return b.isDate(a)?(f=e+"_absolute",void(d[f]=a.getTime())):void console.log("Date is neither string nor date")}return g.prototype.query=function(a,c){var e=c.range.from,f=c.range.to,g=b.compact(b.map(c.targets,b.partial(k,c)));if(b.isEmpty(g)){var h=d.defer();return h.resolve({data:[]}),h.promise}return this.performTimeSeriesQuery(g,e,f).then(j,i)},g.prototype.performTimeSeriesQuery=function(a,b,c){var d={metrics:a};d.cache_time=0,l(b,d,"start"),l(c,d,"end");var e={method:"POST",url:"/clusters/1/datapoints",data:d};return e.url=this.url+e.url,f(e)},g.prototype.performMetricSuggestQuery=function(){var a={url:this.url+"/metricnames",method:"GET"};return f(a).then(function(a){return a.data?a.data.results:[]})},g.prototype.performTagSuggestQuery=function(a,b,c,d){if(e&&a===e.metricName&&b.from===e.range.from&&b.to===e.range.to)return h(e.results,c,d);e={metricName:a,range:b};var g={metrics:[{name:a}]};l(b.from,g,"start"),l(b.to,g,"end");var i={url:this.url+"/clusters/1/datapointtags",method:"POST",data:g};return f(i).then(function(a){return e.results=a,h(a,c,d)})},g.prototype.convertToKairosInterval=function(a){var b=/(\d+(?:\.\d+)?)([Mwdhmsy])/,d=/(\d+(?:\.\d+)?)(ms)/,e=a.match(d);if(e||(e=a.match(b)),!e)throw new Error('Invalid interval string, expecting a number followed by one of "y M w d h m s ms"');var f=e[1],g=e[2];if(f%1!==0){if("ms"===g)throw new Error("Invalid interval value, cannot be smaller than the millisecond");f=Math.round(c.intervals_in_seconds[g]*f*1e3),g="ms"}switch(g){case"ms":g="milliseconds";break;case"s":g="seconds";break;case"m":g="minutes";break;case"h":g="hours";break;case"d":g="days";break;case"w":g="weeks";break;case"M":g="months";break;case"y":g="years";break;default:console.log("Unknown interval ",a)}return{value:f,unit:g}},g}])}),define("services/datasourceSrv",["angular","underscore","config","./graphite/graphiteDatasource","./influxdb/influxdbDatasource","./opentsdb/opentsdbDatasource","./kairosdb/kairosdbDatasource"],function(a,b,c){var d=a.module("kibana.services");d.service("datasourceSrv",["$q","filterSrv","$http","GraphiteDatasource","InfluxDatasource","OpenTSDBDatasource","KairosDBDatasource",function(a,d,e,f,g,h,i){this.init=function(){var a=b.findWhere(b.values(c.datasources),{"default":!0});a||(a=c.datasources[b.keys(c.datasources)[0]]),this.default=this.datasourceFactory(a)},this.datasourceFactory=function(a){switch(a.type){case"graphite":return new f(a);case"influxdb":return new g(a);case"opentsdb":return new h(a);case"kairosdb":return new i(a)}},this.get=function(a){if(!a)return this.default;var b=c.datasources[a];return b?this.datasourceFactory(b):null},this.listOptions=function(){return b.map(c.datasources,function(a,b){return{name:a.default?b+" (default)":b,value:a.default?null:b}})},this.init()}])}),define("services/filterSrv",["angular","underscore","config","kbn"],function(a,b,c,d){var e=a.module("kibana.services");e.factory("filterSrv",["dashboard","$rootScope","$timeout","$routeParams",function(a,c,e,f){var g={templateParameters:[],time:{}},h={updateTemplateData:function(a){var c={};b.each(this.templateParameters,function(b){if(a){var d=f[b.name];d&&(b.current={text:d,value:d})}b.current&&b.current.value&&(c[b.name]=b.current.value)}),this._templateData=c},addTemplateParameter:function(a){this.templateParameters.push(a),this.updateTemplateData()},applyTemplateToTarget:function(a){return-1===a.indexOf("[[")?a:b.template(a,this._templateData,this.templateSettings)},setTime:function(c){b.extend(this.time,c),"now"!==c.to?(this.old_refresh=this.dashboard.refresh,a.set_interval(!1)):this.old_refresh&&this.old_refresh!==this.dashboard.refresh&&(a.set_interval(this.old_refresh),this.old_refresh=null),e(function(){a.refresh()},0)},timeRange:function(a){var c=this.time;if(b.isUndefined(c)||b.isUndefined(c.from))return!1;if(a===!1)return{from:c.from,to:c.to};var e=c.from,f=c.to||new Date;return{from:d.parseDate(e),to:d.parseDate(f)}},removeTemplateParameter:function(a){this.templateParameters=b.without(this.templateParameters,a),this.dashboard.services.filter.list=this.templateParameters},init:function(a){b.defaults(this,g),this.dashboard=a,this.templateSettings={interpolate:/\[\[([\s\S]+?)\]\]/g},a.services&&a.services.filter&&(this.time=a.services.filter.time,this.templateParameters=a.services.filter.list||[],this.updateTemplateData(!0))}};return h}])}),define("services/timer",["angular","underscore"],function(a,b){var c=a.module("kibana.services");c.service("timer",["$timeout",function(a){var c=[];this.register=function(a){return c.push(a),a},this.cancel=function(d){c=b.without(c,d),a.cancel(d)},this.cancel_all=function(){b.each(c,function(b){a.cancel(b)}),c=[]}}])}),define("services/panelMove",["angular","underscore"],function(a,b){var c=a.module("kibana.services");c.service("panelMove",["dashboard","$rootScope",function(a,c){this.onStart=function(){a.panelDragging=!0,c.$apply()},this.onOver=function(){c.$apply()},this.onOut=function(){c.$apply()},this.onDrop=function(e,f,g){var h=g.draggableScope.$parent.$parent.row.panels,i=g.droppableScope.$parent.$parent.row.panels,j=g.dragSettings.index,k=g.dropSettings.index;h.splice(j,1),b.isUndefined(i)||i.splice(k,0,g.dragItem),a.panelDragging=!1,d(),c.$apply(),c.$broadcast("render")},this.onStop=function(){a.panelDragging=!1,d(),c.$apply()};var d=function(){b.each(a.current.rows,function(a){a.panels=b.without(a.panels,{}),a.panels=b.compact(a.panels)})}}])}),define("services/keyboardManager",["angular"],function(a){var b=a.module("kibana.services");b.factory("keyboardManager",["$window","$timeout",function(b,c){var d={},e={type:"keydown",propagate:!1,inputDisabled:!1,target:b.document,keyCode:!1};return d.keyboardEvent={},d.bind=function(f,g,h){var i,j,k,l;h=a.extend({},e,h),f=f.toLowerCase(),j=h.target,"string"==typeof h.target&&(j=document.getElementById(h.target)),i=function(a){if(a=a||b.event,h.inputDisabled){var d;if(a.target?d=a.target:a.srcElement&&(d=a.srcElement),3===d.nodeType&&(d=d.parentNode),"INPUT"===d.tagName||"TEXTAREA"===d.tagName)return}a.keyCode?k=a.keyCode:a.which&&(k=a.which);var e=String.fromCharCode(k).toLowerCase();188===k&&(e=","),190===k&&(e=".");for(var i=f.split("+"),j=0,m={"`":"~",1:"!",2:"@",3:"#",4:"$",5:"%",6:"^",7:"&",8:"*",9:"(",0:")","-":"_","=":"+",";":":","'":'"',",":"<",".":">","/":"?","\\":"|"},n={esc:27,escape:27,tab:9,space:32,"return":13,enter:13,backspace:8,scrolllock:145,scroll_lock:145,scroll:145,capslock:20,caps_lock:20,caps:20,numlock:144,num_lock:144,num:144,pause:19,"break":19,insert:45,home:36,"delete":46,end:35,pageup:33,page_up:33,pu:33,pagedown:34,page_down:34,pd:34,left:37,up:38,right:39,down:40,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123},o={shift:{wanted:!1,pressed:a.shiftKey?!0:!1},ctrl:{wanted:!1,pressed:a.ctrlKey?!0:!1},alt:{wanted:!1,pressed:a.altKey?!0:!1},meta:{wanted:!1,pressed:a.metaKey?!0:!1}},p=0,q=i.length;l=i[p],q>p;p++){switch(l){case"ctrl":case"control":j++,o.ctrl.wanted=!0;break;case"shift":case"alt":case"meta":j++,o[l].wanted=!0}l.length>1?n[l]===k&&j++:h.keyCode?h.keyCode===k&&j++:e===l?j++:m[e]&&a.shiftKey&&(e=m[e],e===l&&j++)}return j!==i.length||o.ctrl.pressed!==o.ctrl.wanted||o.shift.pressed!==o.shift.wanted||o.alt.pressed!==o.alt.wanted||o.meta.pressed!==o.meta.wanted||(c(function(){g(a)},1),h.propagate)?void 0:(a.cancelBubble=!0,a.returnValue=!1,a.stopPropagation&&(a.stopPropagation(),a.preventDefault()),!1)},d.keyboardEvent[f]={callback:i,target:j,event:h.type},j.addEventListener?j.addEventListener(h.type,i,!1):j.attachEvent?j.attachEvent("on"+h.type,i):j["on"+h.type]=i},d.unbind=function(a){a=a.toLowerCase();var b=d.keyboardEvent[a];if(delete d.keyboardEvent[a],b){var c=b.event,e=b.target,f=b.callback;e.detachEvent?e.detachEvent("on"+c,f):e.removeEventListener?e.removeEventListener(c,f,!1):e["on"+c]=!1}},d}])}),define("services/annotationsSrv",["angular","underscore","moment"],function(a,b,c){var d=a.module("kibana.services");d.service("annotationsSrv",["dashboard","datasourceSrv","$q","alertSrv","$rootScope",function(a,d,e,f,g){function h(a){console.log("Annotation error: ",a),f.set("Annotations","Could not fetch annotations","error")}function i(a,b){for(var c=0;c
    ";a.tags&&(b+=(a.tags||"")+"
    "),b+=""+c(a.time).format("YYYY-MM-DD HH:mm:ss")+"
    ",a.data&&(b+=a.data.replace(/\n/g,"
    ")),b+="",m.push({annotation:a.annotation,min:a.time,max:a.time,eventType:a.annotation.name,title:null,description:b,score:1})}var k,l,m=[];this.init=function(){g.$on("refresh",this.clearCache),g.$on("dashboard-loaded",this.dashboardLoaded),this.dashboardLoaded()},this.dashboardLoaded=function(){l=b.findWhere(a.current.pulldowns,{type:"annotations"})},this.clearCache=function(){k=null,m=[]},this.getAnnotations=function(a,b){if(!l.enable)return e.when(null);if(k)return k;var c=this.getGraphiteMetrics(a,b),d=this.getGraphiteEvents(b);return k=e.all(c.concat(d)).then(function(){return m})},this.getGraphiteEvents=function(a){var c=this.getAnnotationsByType("graphite events");if(0===c.length)return[];var e=b.map(c,function(c){return d.default.events({range:a,tags:c.tags}).then(function(a){b.each(a.data,function(a){j({annotation:c,time:1e3*a.when,description:a.what,tags:a.tags,data:a.data})})}).then(null,h)});return e},this.getAnnotationsByType=function(a){return b.where(l.annotations,{type:a,enable:!0})},this.getGraphiteMetrics=function(a,c){var e=this.getAnnotationsByType("graphite metric");if(0===e.length)return[];var f=b.map(e,function(e){var f={range:c,targets:[{target:e.target}],format:"json",maxDataPoints:100},g=b.partial(i,e);return d.default.query(a,f).then(g).then(null,h)});return f},this.init()}])}),define("services/playlistSrv",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services");d.service("playlistSrv",["dashboard","$location","$rootScope",function(d,e,f){var g,h={dashboards:[]};this.init=function(){var b=window.localStorage["grafana-favorites"];b&&(h=a.fromJson(b))},this._save=function(){window.localStorage["grafana-favorites"]=a.toJson(h)},this._find=function(a){return b.findWhere(h.dashboards,{title:a})},this._remove=function(a){a&&(h.dashboards=b.without(h.dashboards,a))},this.isCurrentFavorite=function(){return this._find(d.current.title)?!0:!1},this.markAsFavorite=function(){var a=this._find(d.current.title);this._remove(a),h.dashboards.push({url:e.path(),title:d.current.title}),this._save()},this.removeAsFavorite=function(a){var b=this._find(a.title);this._remove(b),this._save()},this.getFavorites=function(){return h},this.start=function(b,d){var h=c.interval_to_ms(d),i=0;f.playlist_active=!0,g=setInterval(function(){f.$apply(function(){a.element(window).unbind("resize"),e.path(b[i%b.length].url),i++})},h)},this.stop=function(){clearInterval(g),f.playlist_active=!1},this.init()}])}),define("services/unsavedChangesSrv",["angular","underscore","config"],function(a,b,c){if(c.unsaved_changes_warning){var d=a.module("kibana.services");d.service("unsavedChangesSrv",["$rootScope","$modal","dashboard","$q","$location","$timeout",function(c,d,e,f,g,h){var i=this,j=c.$new();c.$on("dashboard-loaded",function(b,c){i.original=a.copy(c)}),c.$on("dashboard-saved",function(b,c){i.original=a.copy(c)}),c.$on("$routeChangeSuccess",function(){i.original=null}),window.onbeforeunload=function(){return i.has_unsaved_changes()?"There are unsaved changes to this dashboard":void 0},this.init=function(){c.$on("$locationChangeStart",function(a,b){i.has_unsaved_changes()&&(a.preventDefault(),i.next=b,i.open_modal())})},this.open_modal=function(){var a=d({template:"./app/partials/unsaved-changes.html",persist:!0,show:!1,scope:j,keyboard:!1});f.when(a).then(function(a){a.modal("show")})},this.has_unsaved_changes=function(){if(!i.original)return!1;var c=a.copy(e.current),d=i.original;c.services.filter.time=d.services.filter.time={},c.refresh=d.refresh;var f=b.findWhere(c.nav,{type:"timepicker"}),g=b.findWhere(d.nav,{type:"timepicker"});f&&g&&(f.now=g.now);var h=a.toJson(c),j=a.toJson(d);return h!==j?!0:!1},this.goto_next=function(){var a=g.absUrl().length-g.url().length,b=i.next.substring(a);g.url(b)},j.ignore=function(){i.original=null,i.goto_next()},j.save=function(){var a=c.$on("dashboard-saved",function(){i.goto_next()});h(a,2e3),c.$emit("save-dashboard")}}]).run(["unsavedChangesSrv",function(a){a.init()}])}}),define("services/all",["./alertSrv","./dashboard","./datasourceSrv","./filterSrv","./timer","./panelMove","./keyboardManager","./annotationsSrv","./playlistSrv","./unsavedChangesSrv"],function(){}),define("services/dashboard/dashboardKeyBindings",["angular","jquery","services/all"],function(a,b){var c=a.module("kibana.services.dashboard");c.service("dashboardKeybindings",["$rootScope","keyboardManager","dashboard",function(a,c,d){this.shortcuts=function(){a.$on("panel-fullscreen-enter",function(){a.fullscreen=!0}),a.$on("panel-fullscreen-exit",function(){a.fullscreen=!1}),a.$on("dashboard-saved",function(){a.fullscreen&&a.$emit("panel-fullscreen-exit")}),c.bind("ctrl+f",function(b){a.$emit("open-search",b)},{inputDisabled:!0}),c.bind("ctrl+h",function(){var a=d.current.hideControls;d.current.hideControls=!a,d.current.panel_hints=a},{inputDisabled:!0}),c.bind("ctrl+s",function(b){a.$emit("save-dashboard",b)},{inputDisabled:!0}),c.bind("ctrl+r",function(){d.refresh()},{inputDisabled:!0}),c.bind("ctrl+z",function(b){a.$emit("zoom-out",b)},{inputDisabled:!0}),c.bind("esc",function(){var c=b(".popover.in");c.length>0||a.$emit("panel-fullscreen-exit")},{inputDisabled:!0})}}])}),define("services/dashboard/all",["./dashboardKeyBindings"],function(){}),define("controllers/dash",["angular","jquery","config","underscore","services/all","services/dashboard/all"],function(a,b,c,d){var e=a.module("kibana.controllers");e.controller("DashCtrl",["$scope","$rootScope","$timeout","ejsResource","dashboard","filterSrv","dashboardKeybindings","alertSrv","panelMove","keyboardManager","grafanaVersion",function(a,b,e,f,g,h,i,j,k,l,m){a.requiredElasticSearchVersion=">=0.90.3",a.editor={index:0},a.grafanaVersion="@"===m[0]?"master":m,a.panelMoveDrop=k.onDrop,a.panelMoveStart=k.onStart,a.panelMoveStop=k.onStop,a.panelMoveOver=k.onOver,a.panelMoveOut=k.onOut,a.init=function(){a.config=c,a._=d,a.dashboard=g,a.dashAlerts=j,a.filter=h,a.filter.init(g.current),b.$on("dashboard-loaded",function(b,c){a.filter.init(c)}),j.clearAll(),a.reset_row(),a.ejs=f(c.elasticsearch,c.elasticsearchBasicAuth),a.bindKeyboardShortcuts()},a.bindKeyboardShortcuts=i.shortcuts,a.isPanel=function(a){return d.isNull(a)||d.isUndefined(a)||d.isUndefined(a.type)?!1:!0},a.add_row=function(a,b){a.rows.push(b)},a.add_row_default=function(){a.reset_row(),a.row.title="New row",a.add_row(g.current,a.row)},a.reset_row=function(){a.row={title:"",height:"250px",editable:!0}},a.row_style=function(a){return{"min-height":a.collapse?"5px":a.height}},a.panel_path=function(a){return a?"app/panels/"+a.replace(".","/"):!1},a.edit_path=function(b){var c=a.panel_path(b);return c?c+"/editor.html":!1},a.setEditorTabs=function(b){return a.editorTabs=["General","Panel"],d.isUndefined(b.editorTabs)||(a.editorTabs=d.union(a.editorTabs,d.pluck(b.editorTabs,"title"))),a.editorTabs},a.parse_error=function(a){var b=a.match("nested: (.*?);");return d.isNull(b)?a:b[1]},a.colors=["#7EB26D","#EAB839","#6ED0E0","#EF843C","#E24D42","#1F78C1","#BA43A9","#705DA0","#508642","#CCA300","#447EBC","#C15C17","#890F02","#0A437C","#6D1F62","#584477","#B7DBAB","#F4D598","#70DBED","#F9BA8F","#F29191","#82B5D8","#E5A8E2","#AEA2E0","#629E51","#E5AC0E","#64B0C8","#E0752D","#BF1B00","#0A50A1","#962D82","#614D93","#9AC48A","#F2C96D","#65C5DB","#F9934E","#EA6460","#5195CE","#D683CE","#806EB7","#3F6833","#967302","#2F575E","#99440A","#58140C","#052B51","#511749","#3F2B5B","#E0F9D7","#FCEACA","#CFFAFF","#F9E2D2","#FCE2DE","#BADFF4","#F9D9F9","#DEDAF7"],a.init()}])}),define("controllers/dashLoader",["angular","underscore","moment"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("dashLoader",["$scope","$rootScope","$http","dashboard","alertSrv","$location","playlistSrv",function(a,d,e,f,g,h,i){a.loader=f.current.loader,a.init=function(){a.gist_pattern=/(^\d{5,}$)|(^[a-z0-9]{10,}$)|(gist.github.com(\/*.*)\/[a-z0-9]{5,}\/*$)/,a.gist=a.gist||{},a.elasticsearch=a.elasticsearch||{},d.$on("save-dashboard",function(){a.elasticsearch_save("dashboard",!1)}),d.$on("zoom-out",function(){a.zoom(2)})},a.exitFullscreen=function(){d.$emit("panel-fullscreen-exit")},a.showDropdown=function(a){if(b.isUndefined(f.current.loader))return!0;var c=f.current.loader;return"load"===a?c.load_elasticsearch||c.load_gist||c.load_local:"save"===a?c.save_elasticsearch||c.save_gist||c.save_local||c.save_default:"share"===a?c.save_temp:!1},a.set_default=function(){f.set_default(h.path())?g.set("Home Set","This page has been set as your default dashboard","success",5e3):g.set("Incompatible Browser","Sorry, your browser is too old for this feature","error",5e3)},a.purge_default=function(){f.purge_default()?g.set("Local Default Clear","Your default dashboard has been reset to the default","success",5e3):g.set("Incompatible Browser","Sorry, your browser is too old for this feature","error",5e3)},a.elasticsearch_save=function(c,e){f.elasticsearch_save(c,f.current.title,e).then(function(e){return b.isUndefined(e._id)?void g.set("Save failed","Dashboard could not be saved to Elasticsearch","error",5e3):(g.set("Dashboard Saved",'Dashboard has been saved to Elasticsearch as "'+e._id+'"',"success",5e3),"temp"===c&&(a.share=f.share_link(f.current.title,"temp",e._id)),void d.$emit("dashboard-saved",f.current))})},a.elasticsearch_delete=function(c){confirm("Are you sure you want to delete dashboard?")&&f.elasticsearch_delete(c).then(function(d){if(b.isUndefined(d))g.set("Dashboard Not Deleted","An error occurred deleting the dashboard","error",5e3);else if(d.found){g.set("Dashboard Deleted",c+" has been deleted","success",5e3);var e=b.where(a.elasticsearch.dashboards,{_id:c})[0];a.elasticsearch.dashboards=b.without(a.elasticsearch.dashboards,e)}else g.set("Dashboard Not Found","Could not find "+c+" in Elasticsearch","warning",5e3)})},a.save_gist=function(){f.save_gist(a.gist.title).then(function(c){b.isUndefined(c)?g.set("Save failed","Gist could not be saved","error",5e3):(a.gist.last=c,g.set("Gist saved",'You will be able to access your exported dashboard file at '+c+" in a moment","success"))})},a.gist_dblist=function(b){f.gist_list(b).then(function(b){b&&b.length>0?a.gist.files=b:g.set("Gist Failed","Could not retrieve dashboard list from gist","error",5e3)})},a.zoom=function(a){var b=this.filter.timeRange(),d=b.to.valueOf()-b.from.valueOf(),e=b.to.valueOf()-d/2,f=e+d*a/2,g=e-d*a/2;if(f>Date.now()&&b.to=e&&(1===d?(b.row.panels[0].span=6,a.span=6):2===d&&(b.row.panels[0].span=4,b.row.panels[1].span=4,a.span=4)),b.row.panels.push(a)},b.delete_row=function(){confirm("Are you sure you want to delete this row?")&&(b.dashboard.current.rows=c.without(b.dashboard.current.rows,b.row))},b.move_row=function(a){var d=b.dashboard.current.rows,e=c.indexOf(d,b.row),f=e+a;f>=0&&f<=d.length-1&&c.move(d,e,e+a)},b.add_panel_default=function(a){b.reset_panel(a),b.add_panel(b.panel),e(function(){b.$broadcast("render")})},b.set_height=function(a){b.row.height=a,b.$broadcast("render")},b.remove_panel_from_row=function(a,b){confirm("Are you sure you want to remove this "+b.type+" panel?")&&(a.panels=c.without(a.panels,b))},b.duplicatePanel=function(d,e){e=e||b.row;var f=b.rowSpan(e);if(9>=f)e.panels.push(a.copy(d));else{var g=b.dashboard.current.rows,h=c.indexOf(g,e);if(h===g.length-1){var i=a.copy(b.row);i.panels=[],b.dashboard.current.rows.push(i),b.duplicatePanel(d,i)}else b.duplicatePanel(d,g[h+1])}},b.reset_panel=function(a){function d(a){return a?c.isString(a)?a:a+"px":"200px"}var e=4,f=12-b.rowSpan(b.row);b.panel={error:!1,span:e>f&&f>0?f:e,editable:!0,type:a},b.row.height=d(b.row.height)},b.init()}])}),define("controllers/submenuCtrl",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("SubmenuCtrl",["$scope",function(a){var b={enable:!0};c.defaults(a.pulldown,b),a.init=function(){a.panel=a.pulldown,a.row=a.pulldown},a.init()}])}),define("controllers/pulldown",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("PulldownCtrl",["$scope","$rootScope","$timeout",function(a,b,d){var e={collapse:!1,notice:!1,enable:!0};c.defaults(a.pulldown,e),a.init=function(){a.panel=a.pulldown,a.row=a.pulldown},a.toggle_pulldown=function(b){b.collapse=b.collapse?!1:!0,b.collapse?a.row.notice=!1:d(function(){a.$broadcast("render")})},a.init()}])}),define("controllers/search",["angular","underscore","config","jquery"],function(a,b,c,d){var e=a.module("kibana.controllers");e.controller("SearchCtrl",["$scope","$rootScope","dashboard","$element","$location",function(a,e,f,g,h){a.init=function(){a.giveSearchFocus=0,a.selectedIndex=-1,a.results={dashboards:[],tags:[],metrics:[]},a.query={query:"title:"},e.$on("open-search",a.openSearch)},a.keyDown=function(b){if(27===b.keyCode&&g.find(".dropdown-toggle").dropdown("toggle"),40===b.keyCode&&a.selectedIndex++,38===b.keyCode&&a.selectedIndex--,13===b.keyCode){if(a.tagsOnly){var c=a.results.tags[a.selectedIndex];return void(c&&a.filterByTag(c.term))}var e=a.results.dashboards[a.selectedIndex];e&&(h.path("/dashboard/elasticsearch/"+encodeURIComponent(e._id)),setTimeout(function(){d("body").click()}))}},a.searchDasboards=function(d){var e=a.ejs.Request().indices(c.grafana_index).types("dashboard"),f=0===d.indexOf("tags!:");if(f){var g=d.substring(6,d.length);d="tags:"+g+"*"}else 0===d.length&&(d="title:"),"*"!==d[d.length-1]&&(d+="*");return e.query(a.ejs.QueryStringQuery(d)).sort("_uid").facet(a.ejs.TermsFacet("tags").field("tags").order("term").size(50)).size(20).doSearch().then(function(c){return b.isUndefined(c.hits)?(a.results.dashboards=[],void(a.results.tags=[])):(a.tagsOnly=f,a.results.dashboards=c.hits.hits,void(a.results.tags=c.facets.tags.terms))})},a.filterByTag=function(b,c){a.query.query="tags:"+b+" AND title:",a.search(),a.giveSearchFocus=a.giveSearchFocus+1,c&&(c.stopPropagation(),c.preventDefault())},a.showTags=function(b){b.stopPropagation(),a.tagsOnly=!a.tagsOnly,a.query.query=a.tagsOnly?"tags!:":"",a.giveSearchFocus=a.giveSearchFocus+1,a.selectedIndex=-1,a.search()},a.search=function(){a.showImport=!1,a.selectedIndex=-1;var d=a.query.query.toLowerCase();if(0!==d.indexOf("m:"))return d=d.replace(" and "," AND "),void a.searchDasboards(d);d=d.substring(2,d.length);var e=d.split(" "),f=a.ejs.BoolQuery(),g=b.map(e,function(b){return a.ejs.MatchQuery("metricPath_ng",b).boost(1.2)}),h=a.ejs.BoolQuery();h.must(g);var i=a.ejs.FieldQuery("metricPath",d+"*").boost(1.2);f.should([h,i]);var j=a.ejs.Request().indices(c.grafana_index).types("metricKey"),k=j.query(f).size(20).doSearch();k.then(function(b){a.results.metrics=b&&b.hits&&b.hits.hits.length>0?{metrics:b.hits.hits}:{metric:[]}})},a.openSearch=function(b){b&&g.find(".dropdown-toggle").dropdown("toggle"),a.giveSearchFocus=a.giveSearchFocus+1,a.query.query="title:",a.search()},a.addMetricToCurrentDashboard=function(a){f.current.rows.push({title:"",height:"250px",editable:!0,panels:[{type:"graphite",title:"test",span:12,targets:[{target:a}]}]})},a.toggleImport=function(b){b.stopPropagation(),a.showImport=!a.showImport},a.newDashboard=function(){h.url("/dashboard/file/empty.json")}}]),e.directive("xngFocus",function(){return function(a,b,c){d(b).click(function(a){a.stopPropagation()}),a.$watch(c.xngFocus,function(a){setTimeout(function(){a&&b.focus()},200)},!0)}})}),define("controllers/metricKeys",["angular","underscore","config"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("MetricKeysCtrl",["$scope","$http","$q",function(d,e,f){function g(a,d,g){return f.all(b.map(c.datasources,function(b){return(b.type="graphite")?e.get(b.url+a).then(d,g):void 0}))}function h(a,b){return a||a.data||0!==a.data.length?a.data.length===b?f.when("done"):(b=b||0,l(a.data[b]).then(function(){return h(a,b+1)})):f.reject("No metrics from graphite")}function i(){var a=f.defer();return e.delete(n,o).success(function(){a.resolve("ok")}).error(function(b,c){404===c?a.resolve("ok"):a.reject("elastic search returned unexpected error")}),a.promise}function j(){return e.put(n,{settings:{analysis:{analyzer:{metric_path_ngram:{tokenizer:"my_ngram_tokenizer"}},tokenizer:{my_ngram_tokenizer:{type:"nGram",min_gram:"3",max_gram:"8",token_chars:["letter","digit","punctuation","symbol"]}}}},mappings:{metricKey:{properties:{metricPath:{type:"multi_field",fields:{metricPath:{type:"string",index:"analyzed",index_analyzer:"standard"},metricPath_ng:{type:"string",index:"analyzed",index_analyzer:"metric_path_ngram"}}}}}}},o)}function k(a){var c=a.data;if(!c||0===c.length)return void console.log("no data");var d=b.map(c,function(a){return a.expandable?m(a.id+".*"):a.leaf?l(a.id):void 0});return f.all(d)}function l(a){var b=d.ejs.Document(c.grafana_metrics_index,"metricKey",a).source({metricPath:a});return b.doIndex(function(){d.infoText="Indexing "+a,d.metricCounter=d.metricCounter+1},function(){d.errorText="failed to save metric "+a})}function m(a){return g("/metrics/find/?query="+a,k)}var n=c.elasticsearch+"/"+c.grafana_metrics_index+"/",o={};c.elasticsearchBasicAuth&&(o.withCredentials=!0,o.headers={Authorization:"Basic "+c.elasticsearchBasicAuth}),d.init=function(){d.metricPath="prod.apps.api.boobarella.*",d.metricCounter=0},d.createIndex=function(){d.errorText=null,d.infoText=null,i().then(j).then(function(){d.infoText="Index created!"}).then(null,function(b){d.errorText=a.toJson(b)})},d.loadMetricsFromPath=function(){return d.errorText=null,d.infoText=null,d.metricCounter=0,m(d.metricPath).then(function(){d.infoText="Indexing completed!"},function(a){d.errorText="Error: "+a})},d.loadAll=function(){d.infoText="Fetching all metrics from graphite...",g("/metrics/index.json",h).then(function(){d.infoText="Indexing complete!"}).then(null,function(a){d.errorText=a})}}])}),define("services/graphite/gfunc",["underscore"],function(a){function b(a){a.params=a.params||[],a.defaultParams=a.defaultParams||[],a.category&&a.category.push(a),d[a.name]=a,d[a.shortName||a.name]=a}function c(a){this.def=a,this.params=a.defaultParams.slice(0),this.updateText()}var d=[],e={Combine:[],Transform:[],Calculate:[],Filter:[],Special:[]};return b({name:"scaleToSeconds",category:e.Transform,params:[{name:"seconds",type:"int"}],defaultParams:[1]}),b({name:"holtWintersForecast",category:e.Calculate}),b({name:"holtWintersConfidenceBands",category:e.Calculate,params:[{name:"delta",type:"int"}],defaultParams:[3]}),b({name:"holtWintersAberration",category:e.Calculate,params:[{name:"delta",type:"int"}],defaultParams:[3]}),b({name:"nPercentile",category:e.Calculate,params:[{name:"Nth percentile",type:"int"}],defaultParams:[95]}),b({name:"sumSeries",shortName:"sum",category:e.Combine}),b({name:"averageSeries",shortName:"avg",category:e.Combine}),b({name:"isNonNull",category:e.Combine}),b({name:"rangeOfSeries",category:e.Combine}),b({name:"percentileOfSeries",category:e.Combine,params:[{name:"n",type:"int"},{name:"interpolate",type:"select",options:["true","false"]}],defaultParams:[95,"false"]}),b({name:"sumSeriesWithWildcards",category:e.Combine,params:[{name:"node",type:"int"}],defaultParams:[3]}),b({name:"maxSeries",shortName:"max",category:e.Combine}),b({name:"minSeries",shortName:"min",category:e.Combine}),b({name:"averageSeriesWithWildcards",category:e.Combine,params:[{name:"node",type:"int"}],defaultParams:[3]}),b({name:"alias",category:e.Special,params:[{name:"alias",type:"string"}],defaultParams:["alias"]}),b({name:"aliasSub",category:e.Special,params:[{name:"search",type:"string"},{name:"replace",type:"string"}],defaultParams:["",""]}),b({name:"stacked",category:e.Special,params:[{name:"stack",type:"string"}],defaultParams:["stacked"]}),b({name:"consolidateBy",category:e.Special,params:[{name:"function",type:"string",options:["sum","average","min","max"]}],defaultParams:["max"]}),b({name:"groupByNode",category:e.Special,params:[{name:"node",type:"int",options:[1,2,3,4,5,6,7,8,9,10,12]},{name:"function",type:"string",options:["sum","avg"]}],defaultParams:[3,"sum"]}),b({name:"aliasByNode",category:e.Special,params:[{name:"node",type:"int",options:[0,1,2,3,4,5,6,7,8,9,10,12]},{name:"node",type:"int",options:[0,-1,-2,-3,-4,-5,-6,-7],optional:!0}],defaultParams:[3]}),b({name:"substr",category:e.Special,params:[{name:"start",type:"int",options:[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,12]},{name:"stop",type:"int",options:[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,12]}],defaultParams:[0,0]}),b({name:"sortByName",category:e.Special}),b({name:"sortByMaxima",category:e.Special}),b({name:"sortByMinima",category:e.Special}),b({name:"sortByTotal",category:e.Special}),b({name:"aliasByMetric",category:e.Special}),b({name:"randomWalk",category:e.Special,params:[{name:"name",type:"string"}],defaultParams:["randomWalk"]}),b({name:"countSeries",category:e.Special}),b({name:"constantLine",category:e.Special,params:[{name:"value",type:"int"}],defaultParams:[10]}),b({name:"cactiStyle",category:e.Special}),b({name:"keepLastValue",category:e.Special,params:[{name:"n",type:"int"}],defaultParams:[100]}),b({name:"scale",category:e.Transform,params:[{name:"factor",type:"int"}],defaultParams:[1]}),b({name:"offset",category:e.Transform,params:[{name:"amount",type:"int"}],defaultParams:[10]}),b({name:"transformNull",category:e.Transform,params:[{name:"amount",type:"int"}],defaultParams:[0]}),b({name:"integral",category:e.Transform}),b({name:"derivative",category:e.Transform}),b({name:"nonNegativeDerivative",category:e.Transform,params:[{name:"max value or 0",type:"int"}],defaultParams:[0]}),b({name:"timeShift",category:e.Transform,params:[{name:"amount",type:"select",options:["1h","6h","12h","1d","2d","7d","14d","30d"]}],defaultParams:["1d"]}),b({name:"summarize",category:e.Transform,params:[{name:"interval",type:"string"},{name:"func",type:"select",options:["sum","avg","min","max","last"]}],defaultParams:["1h","sum"]}),b({name:"smartSummarize",category:e.Transform,params:[{name:"interval",type:"string"},{name:"func",type:"select",options:["sum","avg","min","max","last"]}],defaultParams:["1h","sum"]}),b({name:"absolute",category:e.Transform}),b({name:"hitcount",category:e.Transform,params:[{name:"interval",type:"string"}],defaultParams:["10s"]}),b({name:"log",category:e.Transform,params:[{name:"base",type:"int"}],defaultParams:["10"]}),b({name:"averageAbove",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"averageBelow",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"currentAbove",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"currentBelow",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"maximumAbove",category:e.Filter,params:[{name:"value",type:"int"}],defaultParams:[0]}),b({name:"maximumBelow",category:e.Filter,params:[{name:"value",type:"int"}],defaultParams:[0]}),b({name:"minimumAbove",category:e.Filter,params:[{name:"value",type:"int"}],defaultParams:[0]}),b({name:"limit",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"mostDeviant",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[10]}),b({name:"exclude",category:e.Filter,params:[{name:"exclude",type:"string"}],defaultParams:["exclude"]}),b({name:"highestCurrent",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"highestMax",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"lowestCurrent",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"movingAverage",category:e.Filter,params:[{name:"window size",type:"int"}],defaultParams:[10]}),b({name:"movingMedian",category:e.Filter,params:[{name:"windowSize",type:"select",options:["1min","5min","15min","30min","1hour"]}],defaultParams:["1min"]}),b({name:"stdev",category:e.Filter,params:[{name:"n",type:"int"},{name:"tolerance",type:"int"}],defaultParams:[5,.1]}),b({name:"highestAverage",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"lowestAverage",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"removeAbovePercentile",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"removeAboveValue",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"removeBelowPercentile",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"removeBelowValue",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),a.each(e,function(b,c){e[c]=a.sortBy(b,"name") -}),c.prototype.render=function(b){var c=this.def.name+"(",d=a.map(this.params,function(b){return a.isString(b)?"'"+b+"'":b});return void 0!==b&&d.unshift(b),c+d.join(",")+")"},c.prototype._hasMultipleParamsInString=function(a,b){return-1===a.indexOf(",")?!1:this.def.params[b+1]&&this.def.params[b+1].optional},c.prototype.updateParam=function(b,c){return this._hasMultipleParamsInString(b,c)?void a.each(b.split(","),function(a,b){this.updateParam(a.trim(),b)},this):(""===b&&this.def.params[c].optional?this.params.splice(c,1):this.params[c]="int"===this.def.params[c].type?parseFloat(b,10):b,void this.updateText())},c.prototype.updateText=function(){if(0===this.params.length)return void(this.text=this.def.name+"()");var b=this.def.name+"(";a.each(this.def.params,function(a,c){a.optional&&void 0===this.params[c]||(b+=this.params[c]+", ")},this),b=b.substring(0,b.length-2),b+=")",this.text=b},{createFuncInstance:function(b){if(a.isString(b)){if(!d[b])throw{message:"Method not found "+name};b=d[b]}return new c(b)},getFuncDef:function(a){return d[a]},getCategories:function(){return e}}}),define("services/graphite/lexer",["underscore"],function(a){function b(a){this.input=a,this.char=1,this.from=1}for(var c=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4304,4346,4348,4348,4352,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7104,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11520,11557,11568,11621,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,13312,19893,19893,19968,19968,40907,40907,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42897,42912,42921,43002,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,44032,55203,55203,55216,55238,55243,55291,63744,64045,64048,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66334,66352,66378,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67840,67861,67872,67897,68096,68096,68112,68115,68117,68119,68121,68147,68192,68220,68352,68405,68416,68437,68448,68466,68608,68680,69635,69687,69763,69807,73728,74606,74752,74850,77824,78894,92160,92728,110592,110593,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,131072,131072,173782,173782,173824,173824,177972,177972,177984,177984,178205,178205,194560,195101],d=[],e=0;128>e;e++)d[e]=e>=48&&57>=e||36===e||e>=65&&90>=e||95===e||45===e||42===e||58===e||37===e||e>=97&&122>=e;for(var f=[],g=0;128>g;g++)f[g]=d[g]||g>=48&&57>=g;return b.prototype={peek:function(a){return this.input.charAt(a||0)},skip:function(a){a=a||1,this.char+=a,this.input=this.input.slice(a)},tokenize:function(){for(var a,b=[];a=this.next();)b.push(a);return b},next:function(){this.from=this.char;var a;if(/\s/.test(this.peek())){for(a=this.char;/\s/.test(this.peek());)this.from+=1,this.skip();if(""===this.peek())return null}var b=this.scanStringLiteral();return b?b:(b=this.scanPunctuator()||this.scanNumericLiteral()||this.scanIdentifier()||this.scanTemplateSequence(),b?(this.skip(b.value.length),b):null)},scanTemplateSequence:function(){return"["===this.peek()&&"["===this.peek(1)?{type:"templateStart",value:"[[",pos:this.char}:"]"===this.peek()&&"]"===this.peek(1)?{type:"templateEnd",value:"[[",pos:this.char}:null},scanIdentifier:function(){function b(a){for(var b=0;bc?d[c]?(j+=1,a):null:b(c)?(j+=1,a):null},this),m=a.bind(function(){var a=this.peek(j),c=a.charCodeAt(0);return 92===c?k():128>c?f[c]?(j+=1,a):null:b(c)?(j+=1,a):null},this);if(h=l(),null===h)return null;for(i=h;h=m(),null!==h;)i+=h;switch(i){default:g="identifier"}return{type:g,value:i,pos:this.char}},scanNumericLiteral:function(){function a(a){return/^[0-9]$/.test(a)}function b(a){return/^[0-7]$/.test(a)}function c(a){return/^[0-9a-fA-F]$/.test(a)}function d(a){return"$"===a||"_"===a||"\\"===a||a>="a"&&"z">=a||a>="A"&&"Z">=a}var e,f=0,g="",h=this.input.length,i=this.peek(f);if("-"===i&&(g+=i,f+=1,i=this.peek(f)),"."!==i&&!a(i))return null;if("."!==i){if(g+=this.peek(f),f+=1,i=this.peek(f),"0"===g){if("x"===i||"X"===i){for(f+=1,g+=i;h>f&&(i=this.peek(f),c(i));)g+=i,f+=1;return g.length<=2?{type:"number",value:g,isMalformed:!0,pos:this.char}:h>f&&(i=this.peek(f),d(i))?null:{type:"number",value:g,base:16,isMalformed:!1,pos:this.char}}if(b(i)){for(f+=1,g+=i,e=!1;h>f;){if(i=this.peek(f),a(i))e=!0;else if(!b(i))break;g+=i,f+=1}return h>f&&(i=this.peek(f),d(i))?null:{type:"number",value:g,base:8,isMalformed:!1}}a(i)&&(f+=1,g+=i)}for(;h>f&&(i=this.peek(f),a(i));)g+=i,f+=1}if("."===i)for(g+=i,f+=1;h>f&&(i=this.peek(f),a(i));)g+=i,f+=1;if("e"===i||"E"===i){if(g+=i,f+=1,i=this.peek(f),("+"===i||"-"===i)&&(g+=this.peek(f),f+=1),i=this.peek(f),!a(i))return null;for(g+=i,f+=1;h>f&&(i=this.peek(f),a(i));)g+=i,f+=1}return h>f&&(i=this.peek(f),!this.isPunctuator(i))?null:{type:"number",value:g,base:10,pos:this.char,isMalformed:!isFinite(g)}},isPunctuator:function(a){switch(a){case".":case"(":case")":case",":case"{":case"}":return!0}return!1},scanPunctuator:function(){var a=this.peek();return this.isPunctuator(a)?{type:a,value:a,pos:this.char}:null},scanStringLiteral:function(){var a=this.peek();if('"'!==a&&"'"!==a)return null;var b="";for(this.skip();this.peek()!==a;){if(""===this.peek())return{type:"string",value:b,isUnclosed:!0,quote:a,pos:this.char};var c=this.peek(),d=1;b+=c,this.skip(d)}return this.skip(),{type:"string",value:b,isUnclosed:!1,quote:a,pos:this.char}}},b}),define("services/graphite/parser",["./lexer"],function(a){function b(b){this.expression=b,this.lexer=new a(b),this.tokens=this.lexer.tokenize(),this.index=0}return b.prototype={getAst:function(){return this.start()},start:function(){try{return this.functionCall()||this.metricExpression()}catch(a){return{type:"error",message:a.message,pos:a.pos}}},curlyBraceSegment:function(){if(this.match("identifier","{")||this.match("{")){for(var a="";!this.match("")&&!this.match("}");)a+=this.consumeToken().value;return this.match("}")||this.errorMark("Expected closing '}'"),a+=this.consumeToken().value,this.match("identifier")&&(a+=this.consumeToken().value),{type:"segment",value:a}}return null},metricSegment:function(){var a=this.curlyBraceSegment();if(a)return a;if(this.match("identifier")||this.match("number"))return{type:"segment",value:this.consumeToken().value};this.match("templateStart")||this.errorMark("Expected metric identifier"),this.consumeToken(),this.match("identifier")||this.errorMark("Expected identifier after templateStart");var b={type:"template",value:this.consumeToken().value};return this.match("templateEnd")||this.errorMark("Expected templateEnd"),this.consumeToken(),b},metricExpression:function(){if(!this.match("templateStart")&&!this.match("identifier")&&!this.match("number"))return null;var a={type:"metric",segments:[]};for(a.segments.push(this.metricSegment());this.match(".");){this.consumeToken();var b=this.metricSegment();b||this.errorMark("Expected metric identifier"),a.segments.push(b)}return a},functionCall:function(){if(!this.match("identifier","("))return null;var a={type:"function",name:this.consumeToken().value};return this.consumeToken(),a.params=this.functionParameters(),this.match(")")||this.errorMark("Expected closing paranthesis"),this.consumeToken(),a},functionParameters:function(){if(this.match(")")||this.match(""))return[];var a=this.functionCall()||this.numericLiteral()||this.metricExpression()||this.stringLiteral();return this.match(",")?(this.consumeToken(),[a].concat(this.functionParameters())):[a]},numericLiteral:function(){return this.match("number")?{type:"number",value:parseFloat(this.consumeToken().value)}:null},stringLiteral:function(){if(!this.match("string"))return null;var a=this.consumeToken();if(a.isUnclosed)throw{message:"Unclosed string parameter",pos:a.pos};return{type:"string",value:a.value}},errorMark:function(a){var b=this.tokens[this.index],c=b?b.type:"end of string";throw{message:a+" instead found "+c,pos:b?b.pos:this.lexer.char}},consumeToken:function(){return this.index++,this.tokens[this.index-1]},matchToken:function(a,b){var c=this.tokens[this.index+b];return void 0===c&&""===a||c&&c.type===a},match:function(a,b){return this.matchToken(a,0)&&(!b||this.matchToken(b,1))}},b}),define("controllers/graphiteTarget",["angular","underscore","config","../services/graphite/gfunc","../services/graphite/parser"],function(a,b,c,d,e){var f=a.module("kibana.controllers");f.controller("GraphiteTargetCtrl",["$scope",function(c){function f(){c.functions=[],c.segments=[],c.showTextEditor=!1,delete c.parserError;var a=new e(c.target.target),b=a.getAst();if(null===b)return void i(0);if("error"===b.type)return c.parserError=b.message+" at position: "+b.pos,void(c.showTextEditor=!0);try{g(b)}catch(d){console.log("error parsing target:",d.message),c.parserError=d.message,c.showTextEditor=!0}i(c.segments.length-1)}function g(a,e,f){if(null===a)return null;switch(a.type){case"function":var h=d.createFuncInstance(a.name);b.each(a.params,function(a,b){g(a,h,b)}),h.updateText(),c.functions.push(h);break;case"string":case"number":if(f-1>=e.def.params.length)throw{message:"invalid number of parameters to method "+e.def.name};0===f?e.params[f]=a.value:e.params[f-1]=a.value;break;case"metric":if(c.segments.length>0)throw{message:"Multiple metric params not supported, use text editor."};c.segments=b.map(a.segments,function(a){var b={type:a.type,val:a.value,html:a.value};return"*"===a.value&&(b.html=''),"template"===a.type&&(b.val=b.html="[["+a.value+"]]",b.html=""+b.html+""),b})}}function h(a){var d=c.segments.slice(0,a);return b.reduce(d,function(a,b){return a?a+"."+b.val:b.val},"")}function i(a){if(0===a)return void c.segments.push({html:"select metric"});var b=h(a+1);return c.datasource.metricFindQuery(c.filter,b).then(function(b){if(0===b.length)return c.segments=c.segments.splice(0,a),void c.segments.push({html:"select metric"});if(b[0].expandable){if(c.segments.length!==a)return i(a+1);c.segments.push({html:"select metric"})}}).then(null,function(a){c.parserError=a.message||"Failed to issue metric query"})}function j(a){b.each(c.segments,function(b,c){b.focus=a===c})}function k(a,b){return b.render(a)}c.init=function(){c.target.target=c.target.target||"",f()},c.getAltSegments=function(a){c.altSegments=[];var d=0===a?"*":h(a)+".*";return c.datasource.metricFindQuery(c.filter,d).then(function(a){b.each(a,function(a){a.html=a.val=a.text}),b.each(c.filter.templateParameters,function(b){a.unshift({type:"template",html:"[["+b.name+"]]",val:"[["+b.name+"]]",expandable:!0})}),a.unshift({val:"*",html:'',expandable:!0}),c.altSegments=a}).then(null,function(a){c.parserError=a.message||"Failed to issue metric query"})},c.setSegment=function(a,b){return delete c.parserError,c.segments[b].val=c.altSegments[a].val,c.segments[b].html=c.altSegments[a].html,c.altSegments[a].expandable?i(b+1).then(function(){j(b+1),c.targetChanged()}):(c.segments=c.segments.splice(0,b+1),j(b+1),void c.targetChanged())},c.targetTextChanged=function(){f(),c.$parent.get_data()},c.targetChanged=function(){if(!c.parserError){var a=c.target.target,d=h(c.segments.length);c.target.target=b.reduce(c.functions,k,d),c.target.target!==a&&c.$parent.get_data()}},c.removeFunction=function(a){c.functions=b.without(c.functions,a),c.targetChanged()},c.addFunction=function(a){var b=d.createFuncInstance(a);b.added=!0,c.functions.push(b),c.moveAliasFuncLast(),c.smartlyHandleNewAliasByNode(b),!b.params.length&&b.added&&c.targetChanged()},c.moveAliasFuncLast=function(){var a=b.find(c.functions,function(a){return"alias"===a.def.name||"aliasByNode"===a.def.name||"aliasByMetric"===a.def.name});a&&(c.functions=b.without(c.functions,a),c.functions.push(a))},c.smartlyHandleNewAliasByNode=function(a){if("aliasByNode"===a.def.name)for(var b=0;b=0)return a.params[0]=b,a.added=!1,void c.targetChanged()},c.duplicate=function(){var b=a.copy(c.target);c.panel.targets.push(b)}}]),f.directive("focusMe",["$timeout","$parse",function(a,b){return{link:function(c,d,e){var f=b(e.focusMe);c.$watch(f,function(b){b===!0&&a(function(){d[0].focus()})})}}}])}),define("controllers/graphiteImport",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("GraphiteImportCtrl",["$scope","$rootScope","$timeout","datasourceSrv","dashboard",function(b,d,e,f,g){function h(b,d){var e,f,h,i=2,j=300;e={title:"",panels:[],height:j},f=a.copy(e);var k=a.copy(g.current);k.rows=[],k.title=b.name,k.rows.push(f),c.each(b.graphs,function(b){f.panels.length===i&&(f=a.copy(e),k.rows.push(f)),h={type:"graphite",span:12/i,title:b[1].title,targets:[],datasource:d},c.each(b[1].target,function(a){h.targets.push({target:a})}),f.panels.push(h)}),g.dash_load(k)}b.init=function(){console.log("hej!"),b.datasources=f.listOptions(),b.setDatasource(null)},b.setDatasource=function(a){return b.datasource=f.get(a),b.datasource?void 0:void(b.error="Cannot find datasource "+a)},b.listAll=function(a){delete b.error,b.datasource.listDashboards(a).then(function(a){b.dashboards=a}).then(null,function(a){b.error=a.message||"Error while fetching list of dashboards"})},b.import=function(a){delete b.error,b.datasource.loadDashboard(a).then(function(a){if(!a.data||!a.data.state)throw{message:"no dashboard state received from graphite"};h(a.data.state,b.datasource.name)}).then(null,function(a){b.error=a.message||"Failed to import dashboard"})}}])}),define("controllers/influxTargetCtrl",["angular"],function(a){var b=a.module("kibana.controllers"),c=null;b.controller("InfluxTargetCtrl",["$scope","$timeout",function(b,d){b.init=function(){b.target.function=b.target.function||"mean",b.target.column=b.target.column||"value",b.rawQuery=!1,b.functions=["count","mean","sum","min","max","mode","distinct","median","derivative","stddev","first","last","difference"],b.operators=["=","=~",">","<","!~","<>"],b.oldSeries=b.target.series,b.$on("typeahead-updated",function(){d(b.get_data)})},b.showQuery=function(){b.target.rawQuery=!0},b.hideQuery=function(){b.target.rawQuery=!1},b.seriesBlur=function(){b.oldSeries!==b.target.series&&(b.oldSeries=b.target.series,b.columnList=null,b.get_data())},b.changeFunction=function(a){b.target.function=a,b.get_data()},b.listColumns=function(a,c){return b.columnList?b.columnList:void b.$apply(function(){b.datasource.listColumns(b.target.series).then(function(a){b.columnList=a,c(a)})})},b.listSeries=function(a,d){return c&&""!==a?c:(c=[],void b.datasource.listSeries().then(function(a){c=a,d(c)}))},b.duplicate=function(){var c=a.copy(b.target);b.panel.targets.push(c)}}])}),define("controllers/playlistCtrl",["angular","underscore","config"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("PlaylistCtrl",["$scope","playlistSrv",function(a,d){a.init=function(){a.timespan=c.playlist_timespan,a.loadFavorites(),a.$on("modal-opened",a.loadFavorites)},a.loadFavorites=function(){a.favDashboards=d.getFavorites().dashboards,b.each(a.favDashboards,function(a){a.include=!0})},a.removeAsFavorite=function(b){d.removeAsFavorite(b),a.loadFavorites()},a.start=function(){var c=b.where(a.favDashboards,{include:!0});d.start(c,a.timespan)}}])}),define("controllers/inspectCtrl",["angular"],function(a){var b=a.module("kibana.controllers");b.controller("InspectCtrl",["$scope",function(a){function b(a){for(var b=[],c=a.split("&"),d=0;d0&&b.push({key:e[0],value:window.unescape(e[1])})}return b}var c=a.inspector;a.init=function(){a.editor={index:0},c.error&&(c.error.stack?(a.editor.index=2,a.stack_trace=c.error.stack,a.message=c.error.message):c.error.config&&c.error.config.data&&(a.editor.index=1,a.request_parameters=b(c.error.config.data),-1!==c.error.data.indexOf("DOCTYPE")&&(a.response_html=c.error.data)))}}]),a.module("kibana.directives").directive("iframeContent",["$parse",function(a){return{restrict:"A",link:function(b,c,d){var e=a(d.iframeContent),f=e(b);b.$on("$destroy",function(){c.remove()});var g=document.createElement("iframe");g.width="100%",g.height="400px",g.style.border="none",g.src="about:blank",c.append(g),g.contentWindow.document.open("text/html","replace"),g.contentWindow.document.write(f),g.contentWindow.document.close()}}}])}),define("controllers/opentsdbTargetCtrl",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("OpenTSDBTargetCtrl",["$scope","$timeout",function(d,e){function f(a){var d={};if(a.metric||(d.metric="You must supply a metric name."),a.shouldDownsample)try{a.downsampleInterval?c.describe_interval(a.downsampleInterval):d.downsampleInterval="You must supply a downsample interval (e.g. '1m' or '1h')."}catch(e){d.downsampleInterval=e.message}return a.tags&&b.has(a.tags,a.currentTagKey)&&(d.tags="Duplicate tag key '"+a.currentTagKey+"'."),d}d.init=function(){d.target.errors=f(d.target),d.aggregators=["avg","sum","min","max","dev","zimsum","mimmin","mimmax"],d.target.aggregator||(d.target.aggregator="sum"),d.target.downsampleAggregator||(d.target.downsampleAggregator="sum"),d.$on("typeahead-updated",function(){e(d.targetBlur)})},d.targetBlur=function(){d.target.errors=f(d.target),!b.isEqual(d.oldTarget,d.target)&&b.isEmpty(d.target.errors)&&(d.oldTarget=a.copy(d.target),d.get_data())},d.duplicate=function(){var b=a.copy(d.target);d.panel.targets.push(b)},d.suggestMetrics=function(a,b){d.datasource.performSuggestQuery(a,"metrics").then(b)},d.suggestTagKeys=function(a,b){d.datasource.performSuggestQuery(a,"tagk").then(b)},d.suggestTagValues=function(a,b){d.datasource.performSuggestQuery(a,"tagv").then(b)},d.addTag=function(){return d.addTagMode?(d.target.tags||(d.target.tags={}),d.target.errors=f(d.target),d.target.errors.tags||(d.target.tags[d.target.currentTagKey]=d.target.currentTagValue,d.target.currentTagKey="",d.target.currentTagValue="",d.targetBlur()),void(d.addTagMode=!1)):void(d.addTagMode=!0)},d.removeTag=function(a){delete d.target.tags[a],d.targetBlur()}}])}),define("controllers/kairosdbTargetCtrl",["angular","underscore"],function(a,b){var c=a.module("kibana.controllers"),d=null;c.controller("KairosDBTargetCtrl",["$scope",function(c){function e(a){return parseInt(a)%1===0}function f(a){var b={};a.metric||(b.metric="You must supply a metric name.");try{a.sampling&&c.datasource.convertToKairosInterval(a.sampling)}catch(d){b.sampling=d.message}return b}c.init=function(){c.panel.stack=!1,c.target.downsampling||(c.target.downsampling="avg"),c.target.errors=f(c.target)},c.targetBlur=function(){c.target.errors=f(c.target),!b.isEqual(c.oldTarget,c.target)&&b.isEmpty(c.target.errors)&&(c.oldTarget=a.copy(c.target),c.get_data())},c.duplicate=function(){var b=a.copy(c.target);c.panel.targets.push(b)},c.suggestMetrics=function(a,b){d?b(d):c.updateMetricList()},c.updateMetricList=function(){c.metricListLoading=!0,d=[],c.datasource.performMetricSuggestQuery().then(function(a){return d=a,c.metricListLoading=!1,d})},c.suggestTagKeys=function(a,b){c.updateTimeRange(),b(c.datasource.performTagSuggestQuery(c.target.metric,c.rangeUnparsed,"key",""))},c.suggestTagValues=function(a,b){b(c.datasource.performTagSuggestQuery(c.target.metric,c.rangeUnparsed,"value",c.target.currentTagKey))},c.addFilterTag=function(){return c.addFilterTagMode?(c.target.tags||(c.target.tags={}),c.validateFilterTag(),c.target.errors.tags||(b.has(c.target.tags,c.target.currentTagKey)||(c.target.tags[c.target.currentTagKey]=[]),c.target.tags[c.target.currentTagKey].push(c.target.currentTagValue),c.target.currentTagKey="",c.target.currentTagValue="",c.targetBlur()),void(c.addFilterTagMode=!1)):(c.addFilterTagMode=!0,void c.validateFilterTag())},c.removeFilterTag=function(a){delete c.target.tags[a],0===b.size(c.target.tags)&&(c.target.tags=null),c.targetBlur()},c.validateFilterTag=function(){c.target.errors.tags=null,c.target.currentTagKey&&c.target.currentTagValue||(c.target.errors.tags="You must specify a tag name and value.")},c.addGroupBy=function(){if(!c.addGroupByMode)return c.addGroupByMode=!0,c.target.currentGroupByType="tag",c.isTagGroupBy=!0,void c.validateGroupBy();if(c.validateGroupBy(),b.isEmpty(c.target.errors.groupBy)){if(c.isTagGroupBy)c.target.groupByTags||(c.target.groupByTags=[]),console.log(c.target.groupBy.tagKey),b.contains(c.target.groupByTags,c.target.groupBy.tagKey)||(c.target.groupByTags.push(c.target.groupBy.tagKey),c.targetBlur()),c.target.groupBy.tagKey="";else{c.target.nonTagGroupBys||(c.target.nonTagGroupBys=[]);var a={name:c.target.currentGroupByType};c.isValueGroupBy?a.range_size=c.target.groupBy.valueRange:c.isTimeGroupBy&&(a.range_size=c.target.groupBy.timeInterval,a.group_count=c.target.groupBy.groupCount),c.target.nonTagGroupBys.push(a)}c.targetBlur()}c.isTagGroupBy=!1,c.isValueGroupBy=!1,c.isTimeGroupBy=!1,c.addGroupByMode=!1},c.removeGroupByTag=function(a){c.target.groupByTags.splice(a,1),0===b.size(c.target.groupByTags)&&(c.target.groupByTags=null),c.targetBlur()},c.removeNonTagGroupBy=function(a){c.target.nonTagGroupBys.splice(a,1),0===b.size(c.target.nonTagGroupBys)&&(c.target.nonTagGroupBys=null),c.targetBlur()},c.changeGroupByInput=function(){c.isTagGroupBy="tag"===c.target.currentGroupByType,c.isValueGroupBy="value"===c.target.currentGroupByType,c.isTimeGroupBy="time"===c.target.currentGroupByType,c.validateGroupBy()},c.validateGroupBy=function(){delete c.target.errors.groupBy;var a={};if(c.isGroupByValid=!0,c.isTagGroupBy&&(c.target.groupBy.tagKey||(c.isGroupByValid=!1,a.tagKey="You must supply a tag name")),c.isValueGroupBy&&(c.target.groupBy.valueRange&&e(c.target.groupBy.valueRange)||(a.valueRange="Range must be an integer",c.isGroupByValid=!1)),c.isTimeGroupBy){try{c.datasource.convertToKairosInterval(c.target.groupBy.timeInterval)}catch(d){a.timeInterval=d.message,c.isGroupByValid=!1}c.target.groupBy.groupCount&&e(c.target.groupBy.groupCount)||(a.groupCount="Group count must be an integer",c.isGroupByValid=!1)}b.isEmpty(a)||(c.target.errors.groupBy=a)},c.addHorizontalAggregator=function(){if(!c.addHorizontalAggregatorMode)return c.addHorizontalAggregatorMode=!0,c.target.currentHorizontalAggregatorName="avg",c.hasSamplingRate=!0,void c.validateHorizontalAggregator();if(c.validateHorizontalAggregator(),b.isEmpty(c.target.errors.horAggregator)){c.target.horizontalAggregators||(c.target.horizontalAggregators=[]);var a={name:c.target.currentHorizontalAggregatorName};c.hasSamplingRate&&(a.sampling_rate=c.target.horAggregator.samplingRate),c.hasUnit&&(a.unit=c.target.horAggregator.unit),c.hasFactor&&(a.factor=c.target.horAggregator.factor),c.hasPercentile&&(a.percentile=c.target.horAggregator.percentile),c.target.horizontalAggregators.push(a),c.targetBlur()}c.addHorizontalAggregatorMode=!1,c.hasSamplingRate=!1,c.hasUnit=!1,c.hasFactor=!1,c.hasPercentile=!1},c.removeHorizontalAggregator=function(a){c.target.horizontalAggregators.splice(a,1),0===b.size(c.target.horizontalAggregators)&&(c.target.horizontalAggregators=null),c.targetBlur()},c.changeHorAggregationInput=function(){c.hasSamplingRate=b.contains(["avg","dev","max","min","sum","least_squares","count","percentile"],c.target.currentHorizontalAggregatorName),c.hasUnit=b.contains(["sampler","rate"],c.target.currentHorizontalAggregatorName),c.hasFactor=b.contains(["div","scale"],c.target.currentHorizontalAggregatorName),c.hasPercentile="percentile"===c.target.currentHorizontalAggregatorName,c.validateHorizontalAggregator()},c.validateHorizontalAggregator=function(){delete c.target.errors.horAggregator;var a={};if(c.isAggregatorValid=!0,c.hasSamplingRate)try{c.datasource.convertToKairosInterval(c.target.horAggregator.samplingRate)}catch(d){a.samplingRate=d.message,c.isAggregatorValid=!1}c.hasFactor&&(c.target.horAggregator.factor?0===parseInt(c.target.horAggregator.factor)&&"div"===c.target.currentHorizontalAggregatorName&&(a.factor="Cannot divide by 0",c.isAggregatorValid=!1):(a.factor="You must supply a numeric value for this aggregator",c.isAggregatorValid=!1)),c.hasPercentile&&(!c.target.horAggregator.percentile||c.target.horAggregator.percentile<=0||c.target.horAggregator.percentile>1)&&(a.percentile="Percentile must be between 0 and 1",c.isAggregatorValid=!1),b.isEmpty(a)||(c.target.errors.horAggregator=a)},c.alert=function(a){alert(a)}}])}),define("controllers/all",["./dash","./dashLoader","./row","./submenuCtrl","./pulldown","./search","./metricKeys","./graphiteTarget","./graphiteImport","./influxTargetCtrl","./playlistCtrl","./inspectCtrl","./opentsdbTargetCtrl","./kairosdbTargetCtrl"],function(){}),define("directives/addPanel",["angular","app","underscore"],function(a,b,c){a.module("kibana.directives").directive("addPanel",["$compile",function(b){return{restrict:"A",link:function(d,e){d.$on("$destroy",function(){e.remove()}),d.$watch("panel.type",function(){var f=d.panel.type;d.reset_panel(f),c.isUndefined(d.panel.type)||(d.panel.loadingEditor=!0,d.require(["panels/"+d.panel.type.replace(".","/")+"/module"],function(){var c='
    ';e.html(b(a.element(c))(d)),d.panel.loadingEditor=!1}))})}}}])}),define("directives/arrayJoin",["angular","app","underscore"],function(a,b,c){a.module("kibana.directives").directive("arrayJoin",function(){return{restrict:"A",require:"ngModel",link:function(a,b,d,e){function f(a){return(a||"").split(",")}function g(a){return c.isArray(a)?(a||"").join(","):a}e.$parsers.push(f),e.$formatters.push(g)}}})}),define("directives/dashUpload",["angular"],function(a){var b=a.module("kibana.directives");b.directive("dashUpload",["timer","dashboard","alertSrv",function(a,b,c){return{restrict:"A",link:function(a){function d(c){for(var d,e=c.target.files,f=function(){return function(c){b.dash_load(JSON.parse(c.target.result)),a.$apply()}},g=0;d=e[g];g++){var h=new FileReader;h.onload=f(d),h.readAsText(d)}}window.File&&window.FileReader&&window.FileList&&window.Blob?document.getElementById("dashupload").addEventListener("change",d,!1):c.set("Oops","Sorry, the HTML5 File APIs are not fully supported in this browser.","error")}}}])}),define("controllers/panelBaseCtrl",["angular","underscore","jquery"],function(a,b,c){function d(a,d,e){var f=[{text:"Edit",configModal:"app/partials/paneleditor.html",condition:!a.panelMeta.fullscreenEdit},{text:"Edit",click:"toggleFullscreenEdit()",condition:a.panelMeta.fullscreenEdit},{text:"Fullscreen",click:"toggleFullscreen()",condition:a.panelMeta.fullscreenView},{text:"Duplicate",click:"duplicatePanel(panel)",condition:!0},{text:"Span",submenu:[{text:"1",click:"updateColumnSpan(1)"},{text:"2",click:"updateColumnSpan(2)"},{text:"3",click:"updateColumnSpan(3)"},{text:"4",click:"updateColumnSpan(4)"},{text:"5",click:"updateColumnSpan(5)"},{text:"6",click:"updateColumnSpan(6)"},{text:"7",click:"updateColumnSpan(7)"},{text:"8",click:"updateColumnSpan(8)"},{text:"9",click:"updateColumnSpan(9)"},{text:"10",click:"updateColumnSpan(10)"},{text:"11",click:"updateColumnSpan(11)"},{text:"12",click:"updateColumnSpan(12)"}],condition:!0},{text:"Remove",click:"remove_panel_from_row(row, panel)",condition:!0}];a.inspector={},a.panelMeta.menu=b.where(f,{condition:!0}),a.updateColumnSpan=function(b){a.panel.span=b,e(function(){a.$emit("render")})},a.enterFullscreenMode=function(b){var f=c(window).height(),g=Math.floor(.3*f),h=Math.floor(.7*f),i=a.range;if(a.height=b.edit?g:h,a.editMode=b.edit,!a.fullscreen)var j=d.$on("panel-fullscreen-exit",function(){a.editMode=!1,a.fullscreen=!1,delete a.height,j(),e(function(){i!==a.range?a.dashboard.refresh():a.$emit("render")})});c(window).scrollTop(0),a.fullscreen=!0,d.$emit("panel-fullscreen-enter"),e(function(){a.$emit("render")})},a.toggleFullscreenEdit=function(){return a.editMode?void d.$emit("panel-fullscreen-exit"):void a.enterFullscreenMode({edit:!0}) -},a.toggleFullscreen=function(){return a.fullscreen&&!a.editMode?void d.$emit("panel-fullscreen-exit"):void a.enterFullscreenMode({edit:!1})}}return d.$inject=["$scope","$rootScope","$timeout"],d}),define("directives/kibanaPanel",["angular","jquery","underscore","../controllers/panelBaseCtrl"],function(a,b,c,d){a.module("kibana.directives").directive("kibanaPanel",["$compile","$timeout","$rootScope","$injector",function(a,c,e,f){var g='
    ',h='
    ',i='
    × Oops! {{panel.error}} View details
    \n
    {{panel.title || "No title"}}
    \n
    ';return{restrict:"E",link:function(c,e,j){function k(b){b.appendTo(e),e.wrap(g),a(e.contents())(l),e.removeClass("ng-cloak")}var l=c.$new();c.kbnJqUiDraggableOptions={revert:"invalid",helper:function(){return b('
    ')},placeholder:"keep"},l.$on("$destroy",function(){e.unbind(),e.remove()}),l.initBaseController=function(a,b){f.invoke(d,a,{$scope:b})},c.$watch(j.type,function(a){e.addClass("ng-cloak");var b=a.replace(".","/");c.require(["jquery","text!panels/"+b+"/module.html"],function(a,d){var e=a(d),f=e.filter("ngcontroller, [ng-controller], .ng-controller");f=f.add(e.find("ngcontroller, [ng-controller], .ng-controller")),f.length?(f.first().prepend(i),f.first().find(".panel-header").nextAll().wrapAll(h),c.require(["panels/"+b+"/module"],function(){k(e)})):k(e)})})}}}])}),define("directives/kibanaSimplePanel",["angular","underscore"],function(a,b){a.module("kibana.directives").directive("kibanaSimplePanel",["$compile",function(c){var d=' loading ...';return{restrict:"E",link:function(e,f,g){function h(a){a.appendTo(f),c(f.contents())(e),f.removeClass("ng-cloak")}function i(a){f.addClass("ng-cloak");var b=a.replace(".","/");e.require(["jquery","text!panels/"+b+"/module.html"],function(a,c){var f=a(c),g=f.filter("ngcontroller, [ng-controller], .ng-controller");g=g.add(f.find("ngcontroller, [ng-controller], .ng-controller")),g.length?(g.first().prepend(d),e.require(["panels/"+b+"/module"],function(){h(f)})):h(f)})}e.$watch(g.type,function(a){i(a)}),g.panel&&e.$watch(g.panel,function(c){b.isUndefined(c)||(e=e.$new(),e.panel=a.fromJson(c))})}}}])}),define("directives/ngBlur",["angular"],function(a){a.module("kibana.directives").directive("ngBlur",["$parse",function(a){return function(b,c,d){var e=a(d.ngBlur);c.bind("blur",function(a){b.$apply(function(){e(b,{$event:a})})})}}])}),define("directives/ngModelOnBlur",["angular"],function(a){a.module("kibana.directives").directive("ngModelOnblur",function(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){"radio"!==c.type&&"checkbox"!==c.type&&(b.unbind("input").unbind("keydown").unbind("change"),b.bind("blur",function(){a.$apply(function(){d.$setViewValue(b.val())})}))}}})}),define("directives/tip",["angular","kbn"],function(a,b){a.module("kibana.directives").directive("tip",["$compile",function(c){return{restrict:"E",link:function(d,e,f){var g='";e.replaceWith(c(a.element(g))(d))}}}])}),define("directives/confirmClick",["angular","kbn"],function(a){var b=a.module("kibana.directives");b.directive("confirmClick",function(){return{restrict:"A",link:function(a,b,c){b.bind("click",function(){var b=c.confirmation||"Are you sure you want to do that?";if(window.confirm(b)){var d=c.confirmClick;d&&a.$apply(a.$eval(d))}})}}})}),define("directives/configModal",["angular","underscore","jquery"],function(a,b,c){a.module("kibana.directives").directive("configModal",["$modal","$q","$timeout",function(a,b,d){return{restrict:"A",link:function(e,f,g){var h=g.configModal,i="#"+h.replace(".html","").replace(/[\/|\.|:]/g,"-")+"-"+e.$id;f.bind("click",function(){if(c(i).length)return f.attr("data-target",i).attr("data-toggle","modal"),void e.$apply(function(){e.$broadcast("modal-opened")});var g=a({template:h,persist:!0,show:!1,scope:e,keyboard:!1});b.when(g).then(function(a){f.attr("data-target",i).attr("data-toggle","modal"),d(function(){a.data("modal").isShown||a.modal("show")},50)}),e.$apply()})}}}])}),function(a,b,c){function d(a,b,c){for(var d=[],e=0;e')}else{var j="sp-clear-display";d.push('')}}return"
    "+d.join("")+"
    "}function e(){for(var a=0;a1&&(delete a.localStorage[U],b.each(e,function(a,b){u(b)}))}catch(f){}try{lb=a.localStorage[U].split(";")}catch(f){}}Kb.bind("click.spectrum touchstart.spectrum",function(a){rb||B(),a.stopPropagation(),b(a.target).is("input")||a.preventDefault()}),(qb.is(":disabled")||R.disabled===!0)&&Q(),sb.click(j),Ab.change(A),Ab.bind("paste",function(){setTimeout(A,1)}),Ab.keydown(function(a){13==a.keyCode&&A()}),Db.text(R.cancelText),Db.bind("click.spectrum",function(a){a.stopPropagation(),a.preventDefault(),D("cancel")}),Eb.attr("title",R.clearText),Eb.bind("click.spectrum",function(a){a.stopPropagation(),a.preventDefault(),Rb=!0,I(),S&&L(!0)}),Fb.text(R.chooseText),Fb.bind("click.spectrum",function(a){a.stopPropagation(),a.preventDefault(),H()&&(L(!0),D())}),l(yb,function(a,b,c){ib=a/cb,Rb=!1,c.shiftKey&&(ib=Math.round(10*ib)/10),I()},y,z),l(vb,function(a,b){fb=parseFloat(b/ab),Rb=!1,R.showAlpha||(ib=1),I()},y,z),l(tb,function(a,b,c){if(c.shiftKey){if(!ob){var d=gb*Z,e=$-hb*$,f=Math.abs(a-d)>Math.abs(b-e);ob=f?"x":"y"}}else ob=null;var g=!ob||"x"===ob,h=!ob||"y"===ob;g&&(gb=parseFloat(a/Z)),h&&(hb=parseFloat(($-b)/$)),Rb=!1,R.showAlpha||(ib=1),I()},y,z),Mb?(F(Mb),J(),Pb=Ob||tinycolor(Mb).format,u(Mb)):J(),S&&C();var g=p?"mousedown.spectrum":"click.spectrum touchstart.spectrum";Bb.delegate(".sp-thumb-el",g,c),Cb.delegate(".sp-thumb-el:nth-child(1)",g,{ignore:!0},c)}function u(c){if(T){var d=tinycolor(c).toRgbString();if(-1===b.inArray(d,lb))for(lb.push(d);lb.length>mb;)lb.shift();if(U&&a.localStorage)try{a.localStorage[U]=lb.join(";")}catch(e){}}}function v(){var a,b=[],c=lb,d={};if(R.showPalette){for(var e=0;e=$||0>=Z||0>=ab)&&M(),sb.addClass(nb),ob=null,qb.trigger("dragstart.spectrum",[G()])}function z(){sb.removeClass(nb),qb.trigger("dragstop.spectrum",[G()])}function A(){var a=Ab.val();if(null!==a&&""!==a||!Sb){var b=tinycolor(a);b.ok?(F(b),L(!0)):Ab.addClass("sp-validation-error")}else F(null),L(!0)}function B(){Y?D():C()}function C(){var c=b.Event("beforeShow.spectrum");return Y?void M():(qb.trigger(c,[G()]),void(W.beforeShow(G())===!1||c.isDefaultPrevented()||(e(),Y=!0,b(pb).bind("click.spectrum",D),b(a).bind("resize.spectrum",X),Jb.addClass("sp-active"),sb.removeClass("sp-hidden"),M(),J(),Nb=G(),x(),W.show(Nb),qb.trigger("show.spectrum",[Nb]))))}function D(c){if((!c||"click"!=c.type||2!=c.button)&&Y&&!S){Y=!1,b(pb).unbind("click.spectrum",D),b(a).unbind("resize.spectrum",X),Jb.removeClass("sp-active"),sb.addClass("sp-hidden");var d=!tinycolor.equals(G(),Nb);d&&(Qb&&"cancel"!==c?L(!0):E()),W.hide(G()),qb.trigger("hide.spectrum",[G()])}}function E(){F(Nb,!0)}function F(a,b){if(tinycolor.equals(a,G()))return void J();var c,d;!a&&Sb?Rb=!0:(Rb=!1,c=tinycolor(a),d=c.toHsv(),fb=d.h%360/360,gb=d.s,hb=d.v,ib=d.a),J(),c&&c.ok&&!b&&(Pb=Ob||c.format)}function G(a){return a=a||{},Sb&&Rb?null:tinycolor.fromRatio({h:fb,s:gb,v:hb,a:Math.round(100*ib)/100},{format:a.format||Pb})}function H(){return!Ab.hasClass("sp-validation-error")}function I(){J(),W.move(G()),qb.trigger("move.spectrum",[G()])}function J(){Ab.removeClass("sp-validation-error"),K();var a=tinycolor.fromRatio({h:fb,s:1,v:1});tb.css("background-color",a.toHexString());var b=Pb;1>ib&&(0!==ib||"name"!==b)&&("hex"===b||"hex3"===b||"hex6"===b||"name"===b)&&(b="rgb");var c=G({format:b}),d="";if(Lb.removeClass("sp-clear-display"),Lb.css("background-color","transparent"),!c&&Sb)Lb.addClass("sp-clear-display");else{var e=c.toHexString(),f=c.toRgbString();if(q||1===c.alpha?Lb.css("background-color",f):(Lb.css("background-color","transparent"),Lb.css("filter",c.toFilter())),R.showAlpha){var g=c.toRgb();g.a=0;var h=tinycolor(g).toRgbString(),i="linear-gradient(left, "+h+", "+e+")";p?xb.css("filter",tinycolor(h).toFilter({gradientType:1},e)):(xb.css("background","-webkit-"+i),xb.css("background","-moz-"+i),xb.css("background","-ms-"+i),xb.css("background",i))}d=c.toString(b)}R.showInput&&Ab.val(d),R.showPalette&&w(),x()}function K(){var a=gb,b=hb;if(Sb&&Rb)zb.hide(),wb.hide(),ub.hide();else{zb.show(),wb.show(),ub.show();var c=a*Z,d=$-b*$;c=Math.max(-_,Math.min(Z-_,c-_)),d=Math.max(-_,Math.min($-_,d-_)),ub.css({top:d+"px",left:c+"px"});var e=ib*cb;zb.css({left:e-db/2+"px"});var f=fb*ab;wb.css({top:f-eb+"px"})}}function L(a){var b=G(),c="",d=!tinycolor.equals(b,Nb);b&&(c=b.toString(Pb),u(b)),Gb&&qb.val(c),Nb=b,a&&d&&(W.change(b),qb.trigger("change",[b]))}function M(){Z=tb.width(),$=tb.height(),_=ub.height(),bb=vb.width(),ab=vb.height(),eb=wb.height(),cb=yb.width(),db=zb.width(),S||(sb.css("position","absolute"),sb.offset(h(sb,Kb))),K(),R.showPalette&&w(),qb.trigger("reflow.spectrum")}function N(){qb.show(),Kb.unbind("click.spectrum touchstart.spectrum"),sb.remove(),Jb.remove(),o[Tb.id]=null}function O(a,d){return a===c?b.extend({},R):d===c?R[a]:(R[a]=d,void k())}function P(){rb=!1,qb.attr("disabled",!1),Kb.removeClass("sp-disabled")}function Q(){D(),rb=!0,qb.attr("disabled",!0),Kb.addClass("sp-disabled")}var R=f(i,g),S=R.flat,T=R.showSelectionPalette,U=R.localStorageKey,V=R.theme,W=R.callbacks,X=m(M,10),Y=!1,Z=0,$=0,_=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=1,jb=[],kb=[],lb=R.selectionPalette.slice(0),mb=R.maxSelectionSize,nb="sp-dragging",ob=null,pb=g.ownerDocument,qb=(pb.body,b(g)),rb=!1,sb=b(t,pb).addClass(V),tb=sb.find(".sp-color"),ub=sb.find(".sp-dragger"),vb=sb.find(".sp-hue"),wb=sb.find(".sp-slider"),xb=sb.find(".sp-alpha-inner"),yb=sb.find(".sp-alpha"),zb=sb.find(".sp-alpha-handle"),Ab=sb.find(".sp-input"),Bb=sb.find(".sp-palette"),Cb=sb.find(".sp-initial"),Db=sb.find(".sp-cancel"),Eb=sb.find(".sp-clear"),Fb=sb.find(".sp-choose"),Gb=qb.is("input"),Hb=Gb&&r&&"color"===qb.attr("type"),Ib=Gb&&!S,Jb=Ib?b(s).addClass(V).addClass(R.className):b([]),Kb=Ib?Jb:qb,Lb=Jb.find(".sp-preview-inner"),Mb=R.color||Gb&&qb.val(),Nb=!1,Ob=R.preferredFormat,Pb=Ob,Qb=!R.showButtons||R.clickoutFiresChange,Rb=!Mb,Sb=R.allowEmpty&&!Hb;n();var Tb={show:C,hide:D,toggle:B,reflow:M,option:O,enable:P,disable:Q,set:function(a){F(a),L()},get:G,destroy:N,container:sb};return Tb.id=o.push(Tb)-1,Tb}function h(a,c){var d=0,e=a.outerWidth(),f=a.outerHeight(),g=c.outerHeight(),h=a[0].ownerDocument,i=h.documentElement,j=i.clientWidth+b(h).scrollLeft(),k=i.clientHeight+b(h).scrollTop(),l=c.offset();return l.top+=g,l.left-=Math.min(l.left,l.left+e>j&&j>e?Math.abs(l.left+e-j):0),l.top-=Math.min(l.top,l.top+f>k&&k>f?Math.abs(f+g-d):d),l}function i(){}function j(a){a.stopPropagation()}function k(a,b){var c=Array.prototype.slice,d=c.call(arguments,2);return function(){return a.apply(b,d.concat(c.call(arguments)))}}function l(c,d,e,f){function g(a){a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),a.returnValue=!1}function h(a){if(l){if(p&&document.documentMode<9&&!a.button)return j();var b=a.originalEvent.touches,e=b?b[0].pageX:a.pageX,f=b?b[0].pageY:a.pageY,h=Math.max(0,Math.min(e-m.left,o)),i=Math.max(0,Math.min(f-m.top,n));q&&g(a),d.apply(c,[h,i,a])}}function i(a){{var d=a.which?3==a.which:2==a.button;a.originalEvent.touches}d||l||e.apply(c,arguments)!==!1&&(l=!0,n=b(c).height(),o=b(c).width(),m=b(c).offset(),b(k).bind(r),b(k.body).addClass("sp-dragging"),q||h(a),g(a))}function j(){l&&(b(k).unbind(r),b(k.body).removeClass("sp-dragging"),f.apply(c,arguments)),l=!1}d=d||function(){},e=e||function(){},f=f||function(){};var k=c.ownerDocument||document,l=!1,m={},n=0,o=0,q="ontouchstart"in a,r={};r.selectstart=g,r.dragstart=g,r["touchmove mousemove"]=h,r["touchend mouseup"]=j,b(c).bind("touchstart mousedown",i)}function m(a,b,c){var d;return function(){var e=this,f=arguments,g=function(){d=null,a.apply(e,f)};c&&clearTimeout(d),(c||!d)&&(d=setTimeout(g,b))}}var n={beforeShow:i,move:i,change:i,show:i,hide:i,color:!1,flat:!1,showInput:!1,allowEmpty:!1,showButtons:!0,clickoutFiresChange:!1,showInitial:!1,showPalette:!1,showPaletteOnly:!1,showSelectionPalette:!0,localStorageKey:!1,appendTo:"body",maxSelectionSize:7,cancelText:"cancel",chooseText:"choose",clearText:"Clear Color Selection",preferredFormat:!1,className:"",showAlpha:!1,theme:"sp-light",palette:["fff","000"],selectionPalette:[],disabled:!1},o=[],p=!!/msie/i.exec(a.navigator.userAgent),q=function(){function a(a,b){return!!~(""+a).indexOf(b)}var b=document.createElement("div"),c=b.style;return c.cssText="background-color:rgba(0,0,0,.5)",a(c.backgroundColor,"rgba")||a(c.backgroundColor,"hsla")}(),r=function(){var a=b("")[0];return"color"===a.type&&"!"!==a.value}(),s=["
    ","
    ","
    ","
    "].join(""),t=function(){var a="";if(p)for(var b=1;6>=b;b++)a+="
    ";return["
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ",a,"
    ","
    ","
    ","
    ","
    ","","
    ","
    ","
    ","","","
    ","
    ","
    "].join("")}(),u="spectrum.id";b.fn.spectrum=function(a){if("string"==typeof a){var c=this,d=Array.prototype.slice.call(arguments,1);return this.each(function(){var e=o[b(this).data(u)];if(e){var f=e[a];if(!f)throw new Error("Spectrum: no such method: '"+a+"'");"get"==a?c=e.get():"container"==a?c=e.container:"option"==a?c=e.option.apply(e,d):"destroy"==a?(e.destroy(),b(this).removeData(u)):f.apply(e,d)}}),c}return this.spectrum("destroy").each(function(){var c=b.extend({},a,b(this).data()),d=g(this,c);b(this).data(u,d.id)})},b.fn.spectrum.load=!0,b.fn.spectrum.loadOpts={},b.fn.spectrum.draggable=l,b.fn.spectrum.defaults=n,b.spectrum={},b.spectrum.localization={},b.spectrum.palettes={},b.fn.spectrum.processNativeColorInputs=function(){r||b("input[type=color]").spectrum({preferredFormat:"hex6"})},function(){function b(a,d){if(a=a?a:"",d=d||{},"object"==typeof a&&a.hasOwnProperty("_tc_id"))return a;var f=c(a),h=f.r,j=f.g,m=f.b,n=f.a,o=x(100*n)/100,p=d.format||f.format;return 1>h&&(h=x(h)),1>j&&(j=x(j)),1>m&&(m=x(m)),{ok:f.ok,format:p,_tc_id:v++,alpha:n,getAlpha:function(){return n},setAlpha:function(a){n=k(a),o=x(100*n)/100},toHsv:function(){var a=g(h,j,m);return{h:360*a.h,s:a.s,v:a.v,a:n}},toHsvString:function(){var a=g(h,j,m),b=x(360*a.h),c=x(100*a.s),d=x(100*a.v);return 1==n?"hsv("+b+", "+c+"%, "+d+"%)":"hsva("+b+", "+c+"%, "+d+"%, "+o+")"},toHsl:function(){var a=e(h,j,m);return{h:360*a.h,s:a.s,l:a.l,a:n}},toHslString:function(){var a=e(h,j,m),b=x(360*a.h),c=x(100*a.s),d=x(100*a.l);return 1==n?"hsl("+b+", "+c+"%, "+d+"%)":"hsla("+b+", "+c+"%, "+d+"%, "+o+")"},toHex:function(a){return i(h,j,m,a)},toHexString:function(a){return"#"+i(h,j,m,a)},toRgb:function(){return{r:x(h),g:x(j),b:x(m),a:n}},toRgbString:function(){return 1==n?"rgb("+x(h)+", "+x(j)+", "+x(m)+")":"rgba("+x(h)+", "+x(j)+", "+x(m)+", "+o+")"},toPercentageRgb:function(){return{r:x(100*l(h,255))+"%",g:x(100*l(j,255))+"%",b:x(100*l(m,255))+"%",a:n}},toPercentageRgbString:function(){return 1==n?"rgb("+x(100*l(h,255))+"%, "+x(100*l(j,255))+"%, "+x(100*l(m,255))+"%)":"rgba("+x(100*l(h,255))+"%, "+x(100*l(j,255))+"%, "+x(100*l(m,255))+"%, "+o+")"},toName:function(){return 0===n?"transparent":C[i(h,j,m,!0)]||!1},toFilter:function(a){var c=i(h,j,m),e=c,f=Math.round(255*parseFloat(n)).toString(16),g=f,k=d&&d.gradientType?"GradientType = 1, ":"";if(a){var l=b(a);e=l.toHex(),g=Math.round(255*parseFloat(l.alpha)).toString(16)}return"progid:DXImageTransform.Microsoft.gradient("+k+"startColorstr=#"+q(f)+c+",endColorstr=#"+q(g)+e+")"},toString:function(a){var b=!!a;a=a||this.format;var c=!1,d=!b&&1>n&&n>0,e=d&&("hex"===a||"hex6"===a||"hex3"===a||"name"===a);return"rgb"===a&&(c=this.toRgbString()),"prgb"===a&&(c=this.toPercentageRgbString()),("hex"===a||"hex6"===a)&&(c=this.toHexString()),"hex3"===a&&(c=this.toHexString(!0)),"name"===a&&(c=this.toName()),"hsl"===a&&(c=this.toHslString()),"hsv"===a&&(c=this.toHsvString()),e?this.toRgbString():c||this.toHexString()}}}function c(a){var b={r:0,g:0,b:0},c=1,e=!1,g=!1;return"string"==typeof a&&(a=s(a)),"object"==typeof a&&(a.hasOwnProperty("r")&&a.hasOwnProperty("g")&&a.hasOwnProperty("b")?(b=d(a.r,a.g,a.b),e=!0,g="%"===String(a.r).substr(-1)?"prgb":"rgb"):a.hasOwnProperty("h")&&a.hasOwnProperty("s")&&a.hasOwnProperty("v")?(a.s=r(a.s),a.v=r(a.v),b=h(a.h,a.s,a.v),e=!0,g="hsv"):a.hasOwnProperty("h")&&a.hasOwnProperty("s")&&a.hasOwnProperty("l")&&(a.s=r(a.s),a.l=r(a.l),b=f(a.h,a.s,a.l),e=!0,g="hsl"),a.hasOwnProperty("a")&&(c=a.a)),c=k(c),{ok:e,format:a.format||g,r:y(255,z(b.r,0)),g:y(255,z(b.g,0)),b:y(255,z(b.b,0)),a:c}}function d(a,b,c){return{r:255*l(a,255),g:255*l(b,255),b:255*l(c,255)}}function e(a,b,c){a=l(a,255),b=l(b,255),c=l(c,255);var d,e,f=z(a,b,c),g=y(a,b,c),h=(f+g)/2;if(f==g)d=e=0;else{var i=f-g;switch(e=h>.5?i/(2-f-g):i/(f+g),f){case a:d=(b-c)/i+(c>b?6:0);break;case b:d=(c-a)/i+2;break;case c:d=(a-b)/i+4}d/=6}return{h:d,s:e,l:h}}function f(a,b,c){function d(a,b,c){return 0>c&&(c+=1),c>1&&(c-=1),1/6>c?a+6*(b-a)*c:.5>c?b:2/3>c?a+(b-a)*(2/3-c)*6:a}var e,f,g;if(a=l(a,360),b=l(b,100),c=l(c,100),0===b)e=f=g=c;else{var h=.5>c?c*(1+b):c+b-c*b,i=2*c-h;e=d(i,h,a+1/3),f=d(i,h,a),g=d(i,h,a-1/3)}return{r:255*e,g:255*f,b:255*g}}function g(a,b,c){a=l(a,255),b=l(b,255),c=l(c,255);var d,e,f=z(a,b,c),g=y(a,b,c),h=f,i=f-g;if(e=0===f?0:i/f,f==g)d=0;else{switch(f){case a:d=(b-c)/i+(c>b?6:0);break;case b:d=(c-a)/i+2;break;case c:d=(a-b)/i+4}d/=6}return{h:d,s:e,v:h}}function h(a,b,c){a=6*l(a,360),b=l(b,100),c=l(c,100);var d=w.floor(a),e=a-d,f=c*(1-b),g=c*(1-e*b),h=c*(1-(1-e)*b),i=d%6,j=[c,g,f,f,h,c][i],k=[h,c,c,g,f,f][i],m=[f,f,h,c,c,g][i];return{r:255*j,g:255*k,b:255*m}}function i(a,b,c,d){var e=[q(x(a).toString(16)),q(x(b).toString(16)),q(x(c).toString(16))];return d&&e[0].charAt(0)==e[0].charAt(1)&&e[1].charAt(0)==e[1].charAt(1)&&e[2].charAt(0)==e[2].charAt(1)?e[0].charAt(0)+e[1].charAt(0)+e[2].charAt(0):e.join("")}function j(a){var b={};for(var c in a)a.hasOwnProperty(c)&&(b[a[c]]=c);return b}function k(a){return a=parseFloat(a),(isNaN(a)||0>a||a>1)&&(a=1),a}function l(a,b){o(a)&&(a="100%");var c=p(a);return a=y(b,z(0,parseFloat(a))),c&&(a=parseInt(a*b,10)/100),w.abs(a-b)<1e-6?1:a%b/parseFloat(b)}function m(a){return y(1,z(0,a))}function n(a){return parseInt(a,16)}function o(a){return"string"==typeof a&&-1!=a.indexOf(".")&&1===parseFloat(a)}function p(a){return"string"==typeof a&&-1!=a.indexOf("%")}function q(a){return 1==a.length?"0"+a:""+a}function r(a){return 1>=a&&(a=100*a+"%"),a}function s(a){a=a.replace(t,"").replace(u,"").toLowerCase();var b=!1;if(B[a])a=B[a],b=!0;else if("transparent"==a)return{r:0,g:0,b:0,a:0,format:"name"};var c;return(c=D.rgb.exec(a))?{r:c[1],g:c[2],b:c[3]}:(c=D.rgba.exec(a))?{r:c[1],g:c[2],b:c[3],a:c[4]}:(c=D.hsl.exec(a))?{h:c[1],s:c[2],l:c[3]}:(c=D.hsla.exec(a))?{h:c[1],s:c[2],l:c[3],a:c[4]}:(c=D.hsv.exec(a))?{h:c[1],s:c[2],v:c[3]}:(c=D.hex6.exec(a))?{r:n(c[1]),g:n(c[2]),b:n(c[3]),format:b?"name":"hex"}:(c=D.hex3.exec(a))?{r:n(c[1]+""+c[1]),g:n(c[2]+""+c[2]),b:n(c[3]+""+c[3]),format:b?"name":"hex"}:!1}var t=/^[\s,#]+/,u=/\s+$/,v=0,w=Math,x=w.round,y=w.min,z=w.max,A=w.random;b.fromRatio=function(a,c){if("object"==typeof a){var d={};for(var e in a)a.hasOwnProperty(e)&&(d[e]="a"===e?a[e]:r(a[e]));a=d}return b(a,c)},b.equals=function(a,c){return a&&c?b(a).toRgbString()==b(c).toRgbString():!1},b.random=function(){return b.fromRatio({r:A(),g:A(),b:A()})},b.desaturate=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.s-=c/100,d.s=m(d.s),b(d)},b.saturate=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.s+=c/100,d.s=m(d.s),b(d)},b.greyscale=function(a){return b.desaturate(a,100)},b.lighten=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.l+=c/100,d.l=m(d.l),b(d)},b.darken=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.l-=c/100,d.l=m(d.l),b(d)},b.complement=function(a){var c=b(a).toHsl();return c.h=(c.h+180)%360,b(c)},b.triad=function(a){var c=b(a).toHsl(),d=c.h;return[b(a),b({h:(d+120)%360,s:c.s,l:c.l}),b({h:(d+240)%360,s:c.s,l:c.l})]},b.tetrad=function(a){var c=b(a).toHsl(),d=c.h;return[b(a),b({h:(d+90)%360,s:c.s,l:c.l}),b({h:(d+180)%360,s:c.s,l:c.l}),b({h:(d+270)%360,s:c.s,l:c.l})]},b.splitcomplement=function(a){var c=b(a).toHsl(),d=c.h;return[b(a),b({h:(d+72)%360,s:c.s,l:c.l}),b({h:(d+216)%360,s:c.s,l:c.l})]},b.analogous=function(a,c,d){c=c||6,d=d||30;var e=b(a).toHsl(),f=360/d,g=[b(a)];for(e.h=(e.h-(f*c>>1)+720)%360;--c;)e.h=(e.h+f)%360,g.push(b(e));return g},b.monochromatic=function(a,c){c=c||6;for(var d=b(a).toHsv(),e=d.h,f=d.s,g=d.v,h=[],i=1/c;c--;)h.push(b({h:e,s:f,v:g})),g=(g+i)%1;return h},b.readability=function(a,c){var d=b(a).toRgb(),e=b(c).toRgb(),f=(299*d.r+587*d.g+114*d.b)/1e3,g=(299*e.r+587*e.g+114*e.b)/1e3,h=Math.max(d.r,e.r)-Math.min(d.r,e.r)+Math.max(d.g,e.g)-Math.min(d.g,e.g)+Math.max(d.b,e.b)-Math.min(d.b,e.b);return{brightness:Math.abs(f-g),color:h}},b.readable=function(a,c){var d=b.readability(a,c);return d.brightness>125&&d.color>500},b.mostReadable=function(a,c){for(var d=null,e=0,f=!1,g=0;g125&&h.color>500,j=3*(h.brightness/125)+h.color/500;(i&&!f||i&&f&&j>e||!i&&!f&&j>e)&&(f=i,e=j,d=b(c[g]))}return d};var B=b.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},C=b.hexNames=j(B),D=function(){var a="[-\\+]?\\d+%?",b="[-\\+]?\\d*\\.\\d+%?",c="(?:"+b+")|(?:"+a+")",d="[\\s|\\(]+("+c+")[,|\\s]+("+c+")[,|\\s]+("+c+")\\s*\\)?",e="[\\s|\\(]+("+c+")[,|\\s]+("+c+")[,|\\s]+("+c+")[,|\\s]+("+c+")\\s*\\)?";return{rgb:new RegExp("rgb"+d),rgba:new RegExp("rgba"+e),hsl:new RegExp("hsl"+d),hsla:new RegExp("hsla"+e),hsv:new RegExp("hsv"+d),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();a.tinycolor=b}(),b(function(){b.fn.spectrum.load&&b.fn.spectrum.processNativeColorInputs()})}(window,jQuery),define("spectrum",["jquery"],function(){}),define("directives/spectrumPicker",["angular","spectrum"],function(a){a.module("kibana.directives").directive("spectrumPicker",function(){return{restrict:"E",require:"ngModel",scope:!1,replace:!0,template:"",link:function(b,c,d,e){var f=c.find("input"),g=a.extend({showAlpha:!0,showButtons:!1,color:e.$viewValue,change:function(a){b.$apply(function(){e.$setViewValue(a.toRgbString())})}},b.$eval(d.options));e.$render=function(){f.spectrum("set",e.$viewValue||"")},f.spectrum(g)}}})}),define("directives/grafanaGraph",["angular","jquery","kbn","moment","underscore"],function(a,b,c,d,e){var f=a.module("kibana.directives");f.directive("grafanaGraph",["$rootScope","dashboard",function(f,g){return{restrict:"A",template:"
    ",link:function(h,i){function j(){try{var a=h.height||h.panel.height||h.row.height;return e.isString(a)&&(a=parseInt(a.replace("px",""),10)),a-=32,h.panel.legend.show&&(a-=21),i.css("height",a+"px"),!0}catch(b){return!1}}function k(){return u?f.fullscreen&&!h.fullscreen?!0:j()?e.isString(u)?(t(u),!0):void 0:!0:!0}function l(){if(!k()){var a=h.panel;e.each(e.keys(h.hiddenSeries),function(a){var b=e.find(u,function(b){return b.info.alias===a});b&&(x[b.info.alias]=b,u=e.without(u,b))});for(var c=a.stack?!0:null,d={legend:{show:!1},series:{stackpercent:a.stack?a.percentage:!1,stack:a.percentage?null:c,lines:{show:a.lines,zero:!1,fill:0===a.fill?.001:a.fill/10,lineWidth:a.linewidth,steps:a.steppedLine},bars:{show:a.bars,fill:1,barWidth:1,zero:!1,lineWidth:0},points:{show:a.points,fill:1,fillColor:!1,radius:a.pointradius},shadowSize:1},yaxes:[],xaxis:{},grid:{markings:[],backgroundColor:null,borderWidth:0,hoverable:!0,color:"#c8c8c8"},selection:{mode:"x",color:"#666"}},f=0;fb.grid.threshold2?-1/0:+1/0,a.grid.markings.push({yaxis:{from:b.grid.threshold2,to:d},color:b.grid.threshold2Color})}}}function o(a){if(w&&0!==w.length){var b={};e.each(w,function(c){b[c.annotation.name]||(b[c.annotation.name]={level:e.keys(b).length+1,icon:{icon:"icon-chevron-down",size:c.annotation.iconSize,color:c.annotation.iconColor}}),c.annotation.showLine&&a.grid.markings.push({color:c.annotation.lineColor,lineWidth:1,xaxis:{from:c.min,to:c.max}})}),a.events={levels:e.keys(b).length+1,data:w,types:b}}}function p(){if(h.panel.leftYAxisLabel){i.css("margin-left","10px");var a=b("
    ").text(h.panel.leftYAxisLabel).appendTo(i);a.css("margin-top",a.width()/2-20)}else i.css("margin-left")&&i.css("margin-left","") -}function q(a,b){var c={position:"left",show:h.panel["y-axis"],min:h.panel.grid.leftMin,max:h.panel.percentage&&h.panel.stack?100:h.panel.grid.leftMax};if(b.yaxes.push(c),e.findWhere(a,{yaxis:2})){var d=e.clone(c);d.position="right",d.min=h.panel.grid.rightMin,d.max=h.panel.percentage&&h.panel.stack?100:h.panel.grid.rightMax,b.yaxes.push(d),r(b.yaxes[1],h.panel.y_formats[1])}r(b.yaxes[0],h.panel.y_formats[0])}function r(a,b){"none"!==b&&(a.tickFormatter=c.getFormatFunction(b,1))}function s(a,b,c,d){if(c&&d&&b){var e=(d-c)/b/1e3;return 45>=e?"%H:%M:%S":3600>=e?"%H:%M":8e4>=e?"%m/%d %H:%M":2419200>=e?"%m/%d":"%Y-%m"}return"%H:%M"}function t(a){switch(a+="&width="+i.width(),a+="&height="+i.css("height").replace("px",""),a+="&bgcolor=1f1f1f",a+="&fgcolor=BBBFC2",a+=h.panel.stack?"&areaMode=stacked":"",a+=0!==h.panel.fill?"&areaAlpha="+(h.panel.fill/10).toFixed(1):"",a+=0!==h.panel.linewidth?"&lineWidth="+h.panel.linewidth:"",a+=h.panel.legend.show?"&hideLegend=false":"&hideLegend=true",a+=null!==h.panel.grid.min?"&yMin="+h.panel.grid.min:"",a+=null!==h.panel.grid.max?"&yMax="+h.panel.grid.max:"",a+=h.panel["x-axis"]?"":"&hideAxes=true",a+=h.panel["y-axis"]?"":"&hideYAxis=true",h.panel.y_formats[0]){case"bytes":a+="&yUnitSystem=binary";break;case"bits":a+="&yUnitSystem=binary";break;case"short":a+="&yUnitSystem=si";break;case"none":a+="&yUnitSystem=none"}switch(h.panel.nullPointMode){case"connected":a+="&lineMode=connected";break;case"null":break;case"null as zero":a+="&drawNullAsZero=true"}a+=h.panel.steppedLine?"&lineMode=staircase":"",i.html('')}var u,v,w,x={};h.$on("refresh",function(){h.otherPanelInFullscreenMode()||h.get_data()}),h.$on("toggleLegend",function(a,b){e.each(b,function(a){x[a.alias]&&(u.push(x[a.alias]),delete x[a.alias])}),l()}),h.$on("render",function(a,b){u=b||u,w=u.annotations,l()}),a.element(window).bind("resize",function(){l()});var y=b("
    ");i.bind("plothover",function(a,b,e){var f,i,j,k,l;e?(k=e.series.info,l=h.panel.y_formats[k.yaxis-1],f=k.alias?' '+decodeURIComponent(k.alias)+"
    ":c.query_color_dot(e.series.color,15)+" ",i=h.panel.stack&&"individual"===h.panel.tooltip.value_type?e.datapoint[1]-e.datapoint[2]:e.datapoint[1],i=c.getFormatFunction(l,2)(i),j="browser"===g.current.timezone?d(e.datapoint[0]).format("YYYY-MM-DD HH:mm:ss"):d.utc(e.datapoint[0]).format("YYYY-MM-DD HH:mm:ss"),y.html(f+i+" @ "+j).place_tt(b.pageX,b.pageY)):y.detach()}),i.bind("plotselected",function(a,b){h.$apply(function(){h.filter.setTime({from:d.utc(b.xaxis.from).toDate(),to:d.utc(b.xaxis.to).toDate()})})})}}}])}),function(a){function b(b,c){this.itemsArray=[],this.$element=a(b),this.$element.hide(),this.isSelect="SELECT"===b.tagName,this.multiple=this.isSelect&&b.hasAttribute("multiple"),this.objectItems=c&&c.itemValue,this.placeholderText=b.hasAttribute("placeholder")?this.$element.attr("placeholder"):"",this.inputSize=Math.max(1,this.placeholderText.length),this.$container=a('
    '),this.$input=a('').appendTo(this.$container),this.$element.after(this.$container),this.build(c)}function c(a,b){if("function"!=typeof a[b]){var c=a[b];a[b]=function(a){return a[c]}}}function d(a,b){if("function"!=typeof a[b]){var c=a[b];a[b]=function(){return c}}}function e(a){return a?h.text(a).html():""}function f(a){var b=0;if(document.selection){a.focus();var c=document.selection.createRange();c.moveStart("character",-a.value.length),b=c.text.length}else(a.selectionStart||"0"==a.selectionStart)&&(b=a.selectionStart);return b}var g={tagClass:function(){return"label label-info"},itemValue:function(a){return a?a.toString():a},itemText:function(a){return this.itemValue(a)},freeInput:!0,maxTags:void 0,confirmKeys:[13],onTagExists:function(a,b){b.hide().fadeIn()}};b.prototype={constructor:b,add:function(b,c){var d=this;if(!(d.options.maxTags&&d.itemsArray.length>=d.options.maxTags||b!==!1&&!b)){if("object"==typeof b&&!d.objectItems)throw"Can't add objects when itemValue option is not set";if(!b.toString().match(/^\s*$/)){if(d.isSelect&&!d.multiple&&d.itemsArray.length>0&&d.remove(d.itemsArray[0]),"string"==typeof b&&"INPUT"===this.$element[0].tagName){var f=b.split(",");if(f.length>1){for(var g=0;g'+e(i)+'');if(m.data("item",b),d.findInputWrapper().before(m),m.after(" "),d.isSelect&&!a('option[value="'+escape(h)+'"]',d.$element)[0]){var n=a("");n.data("item",b),n.attr("value",h),d.$element.append(n)}c||d.pushVal(),d.options.maxTags===d.itemsArray.length&&d.$container.addClass("bootstrap-tagsinput-max"),d.$element.trigger(a.Event("itemAdded",{item:b}))}}}},remove:function(b,c){var d=this;d.objectItems&&(b="object"==typeof b?a.grep(d.itemsArray,function(a){return d.options.itemValue(a)==d.options.itemValue(b)})[0]:a.grep(d.itemsArray,function(a){return d.options.itemValue(a)==b})[0]),b&&(a(".tag",d.$container).filter(function(){return a(this).data("item")===b}).remove(),a("option",d.$element).filter(function(){return a(this).data("item")===b}).remove(),d.itemsArray.splice(a.inArray(b,d.itemsArray),1)),c||d.pushVal(),d.options.maxTags>d.itemsArray.length&&d.$container.removeClass("bootstrap-tagsinput-max"),d.$element.trigger(a.Event("itemRemoved",{item:b}))},removeAll:function(){var b=this;for(a(".tag",b.$container).remove(),a("option",b.$element).remove();b.itemsArray.length>0;)b.itemsArray.pop();b.pushVal(),b.options.maxTags&&!this.isEnabled()&&this.enable()},refresh:function(){var b=this;a(".tag",b.$container).each(function(){var c=a(this),d=c.data("item"),f=b.options.itemValue(d),g=b.options.itemText(d),h=b.options.tagClass(d);if(c.attr("class",null),c.addClass("tag "+e(h)),c.contents().filter(function(){return 3==this.nodeType})[0].nodeValue=e(g),b.isSelect){var i=a("option",b.$element).filter(function(){return a(this).data("item")===d});i.attr("value",f)}})},items:function(){return this.itemsArray},pushVal:function(){var b=this,c=a.map(b.items(),function(a){return b.options.itemValue(a).toString()});b.$element.val(c,!0).trigger("change")},build:function(b){var e=this;e.options=a.extend({},g,b);var h=e.options.typeahead||{};e.objectItems&&(e.options.freeInput=!1),c(e.options,"itemValue"),c(e.options,"itemText"),c(e.options,"tagClass"),e.options.source&&(h.source=e.options.source),h.source&&a.fn.typeahead&&(d(h,"source"),e.$input.typeahead({source:function(b,c){function d(a){for(var b=[],d=0;d$1")}})),e.$container.on("click",a.proxy(function(){e.$input.focus()},e)),e.$container.on("keydown","input",a.proxy(function(b){var c=a(b.target),d=e.findInputWrapper();switch(b.which){case 8:if(0===f(c[0])){var g=d.prev();g&&e.remove(g.data("item"))}break;case 46:if(0===f(c[0])){var h=d.next();h&&e.remove(h.data("item"))}break;case 37:var i=d.prev();0===c.val().length&&i[0]&&(i.before(d),c.focus());break;case 39:var j=d.next();0===c.val().length&&j[0]&&(j.after(d),c.focus());break;default:e.options.freeInput&&a.inArray(b.which,e.options.confirmKeys)>=0&&(e.add(c.val()),c.val(""),b.preventDefault())}c.attr("size",Math.max(this.inputSize,c.val().length))},e)),e.$container.on("click","[data-role=remove]",a.proxy(function(b){e.remove(a(b.target).closest(".tag").data("item"))},e)),e.options.itemValue===g.itemValue&&("INPUT"===e.$element[0].tagName?e.add(e.$element.val()):a("option",e.$element).each(function(){e.add(a(this).attr("value"),!0)}))},destroy:function(){var a=this;a.$container.off("keypress","input"),a.$container.off("click","[role=remove]"),a.$container.remove(),a.$element.removeData("tagsinput"),a.$element.show()},focus:function(){this.$input.focus()},input:function(){return this.$input},findInputWrapper:function(){for(var b=this.$input[0],c=this.$container[0];b&&b.parentNode!==c;)b=b.parentNode;return a(b)}},a.fn.tagsinput=function(c,d){var e=[];return this.each(function(){var f=a(this).data("tagsinput");if(f){var g=f[c](d);void 0!==g&&e.push(g)}else f=new b(this,c),a(this).data("tagsinput",f),e.push(f),"SELECT"===this.tagName&&a("option",a(this)).attr("selected","selected"),a(this).val(a(this).val())}),"string"==typeof c?e.length>1?e:e[0]:e},a.fn.tagsinput.Constructor=b;var h=a("
    ");a(function(){a("input[data-role=tagsinput], select[multiple][data-role=tagsinput]").tagsinput()})}(window.jQuery),define("bootstrap-tagsinput",function(){}),define("directives/bootstrap-tagsinput",["angular","jquery","bootstrap-tagsinput"],function(a,b){a.module("kibana.directives").directive("bootstrapTagsinput",function(){function c(b,c){return c?a.isFunction(b.$parent[c])?b.$parent[c]:function(a){return a[c]}:void 0}return{restrict:"EA",scope:{model:"=ngModel"},template:"",replace:!1,link:function(d,e,f){a.isArray(d.model)||(d.model=[]);var g=b("select",e);f.placeholder&&g.attr("placeholder",f.placeholder),g.tagsinput({typeahead:{source:a.isFunction(d.$parent[f.typeaheadSource])?d.$parent[f.typeaheadSource]:null},itemValue:c(d,f.itemvalue),itemText:c(d,f.itemtext),tagClass:a.isFunction(d.$parent[f.tagclass])?d.$parent[f.tagclass]:function(){return f.tagclass}}),g.on("itemAdded",function(a){-1===d.model.indexOf(a.item)&&d.model.push(a.item)}),g.on("itemRemoved",function(a){var b=d.model.indexOf(a.item);-1!==b&&d.model.splice(b,1)}),d.$watch("model",function(){a.isArray(d.model)||(d.model=[]),g.tagsinput("removeAll");for(var b=0;b',""];return a.forEach(b,function(a,b){if(a.divider)return f.splice(b+1,0,'
  • ');var c=""+(a.text||"")+"";a.submenu&&a.submenu.length&&(c+=e(a.submenu).join("\n")),c+="",f.splice(b+1,0,c)}),f}return{restrict:"EA",scope:!0,link:function(f,g,h){var i=b(h.gfDropdown),j=i(f);d(function(){var b=g.data("placement"),d=a.element(e(j,b).join(""));d.insertAfter(g),c(g.next("ul.dropdown-menu"))(f)}),g.addClass("dropdown-toggle").attr("data-toggle","dropdown")}}}])}),define("directives/bodyClass",["angular","app","underscore"],function(a,b,c){a.module("kibana.directives").directive("bodyClass",function(){return{link:function(a,b){var d,e;a.$watch("dashboard.current.pulldowns",function(){var e=c.find(a.dashboard.current.pulldowns,function(a){return a.enable}),f=e?e.enable:!1;d!==f&&(b.toggleClass("submenu-controls-visible",f),d=f)},!0),a.$watch("dashboard.current.hideControls",function(){var c=a.dashboard.current.hideControls||a.playlist_active;e!==c&&(b.toggleClass("hide-controls",c),e=c)}),a.$watch("playlist_active",function(){b.toggleClass("hide-controls",a.playlist_active===!0),b.toggleClass("playlist-active",a.playlist_active===!0)})}}})}),define("directives/addGraphiteFunc",["angular","app","underscore","jquery","../services/graphite/gfunc"],function(a,b,c,d,e){function f(a){return c.reduce(a,function(a,b){return c.each(b,function(b){a.push(b.name)}),a},[])}function g(a){return c.map(a,function(a,b){return{text:b,submenu:c.map(a,function(a){return{text:a.name,click:"addFunction('"+a.name+"')"}})}})}a.module("kibana.directives").directive("graphiteAddFunc",["$compile",function(a){var b='',c='';return{link:function(h,i){var j=e.getCategories(),k=f(j);h.functionMenu=g(j);var l=d(b),m=d(c);l.appendTo(i),m.appendTo(i),l.attr("data-provide","typeahead"),l.typeahead({source:k,minLength:1,items:10,updater:function(a){var b=e.getFuncDef(a);return h.$apply(function(){h.addFunction(b)}),l.trigger("blur"),""}}),m.click(function(){m.hide(),l.show(),l.focus()}),l.keyup(function(){i.toggleClass("open",""===l.val())}),l.blur(function(){l.hide(),l.val(""),m.show(),m.focus(),setTimeout(function(){i.removeClass("open")},200)}),a(i.contents())(h)}}}])}),define("directives/graphiteFuncEditor",["angular","underscore","jquery"],function(a,b,c){a.module("kibana.directives").directive("graphiteFuncEditor",["$compile",function(a){var d='{{func.def.name}}(',e='',f='
    ';return{restrict:"A",link:function(g,h){function i(a){var b=c(this),d=b.next();d.val(w.params[a]),d.css("width",b.width()+16+"px"),b.hide(),d.show(),d.focus(),d.select();var e=d.data("typeahead");e&&(d.val(""),e.lookup())}function j(){z!==w.params.length&&(y||(y=!0,setTimeout(function(){t(),y=!1},200)))}function k(a){var b=c(this),d=b.prev();(""!==b.val()||w.def.params[a].optional)&&(d.text(b.val()),w.updateParam(b.val(),a),j(),g.$apply(g.targetChanged)),b.hide(),d.show()}function l(a,b){13===b.which&&k.call(this,a)}function m(){this.style.width=8*(3+this.value.length)+"px"}function n(a,c){a.attr("data-provide","typeahead");var d=x.params[c].options;"int"===x.params[c].type&&(d=b.map(d,function(a){return a.toString()})),a.typeahead({source:d,minLength:0,items:20,updater:function(b){return setTimeout(function(){k.call(a[0],c)},0),b}});var e=a.data("typeahead");e.lookup=function(){return this.query=this.$element.val()||"",this.process(this.source)}}function o(){var a=h.closest(".grafana-target-inner");return h.hasClass("show-function-controls")?(h.removeClass("show-function-controls"),a.removeClass("has-open-function"),void v.hide()):(h.addClass("show-function-controls"),a.addClass("has-open-function"),void v.show())}function p(){v.appendTo(h),u.appendTo(h),b.each(x.params,function(a,d){if(!a.optional||w.params[d]){d>0&&c(", ").appendTo(h);var f=c(''+w.params[d]+""),g=c(e);z++,f.appendTo(h),g.appendTo(h),g.blur(b.partial(k,d)),g.keyup(m),g.keypress(b.partial(l,d)),f.click(b.partial(i,d)),x.params[d].options&&n(g,d)}}),c(")").appendTo(h),a(h.contents())(g)}function q(){g.func.added&&(g.func.added=!1,setTimeout(function(){h.find(".graphite-func-param-link").first().click()},10))}function r(){u.click(o)}function s(){v.click(function(a){var d=c(a.target);return d.hasClass("icon-remove")?(o(),void g.$apply(function(){g.removeFunction(g.func)})):d.hasClass("icon-arrow-left")?void g.$apply(function(){b.move(g.functions,g.$index,g.$index-1)}):d.hasClass("icon-arrow-right")?void g.$apply(function(){b.move(g.functions,g.$index,g.$index+1)}):d.hasClass("icon-info-sign")?void window.open("http://graphite.readthedocs.org/en/latest/functions.html#graphite.render.functions."+x.name,"_blank"):void 0})}function t(){h.children().remove(),p(),q(),r(),s()}var u=c(d),v=c(f),w=g.func,x=w.def,y=!1,z=0;t()}}}])}),define("directives/grafanaVersionCheck",["angular"],function(a){a.module("kibana.directives").directive("grafanaVersionCheck",["$http","grafanaVersion",function(a,b){return{restrict:"A",link:function(c,d){"@"!==b[0]&&a({method:"GET",url:"http://grafanarel.s3.amazonaws.com/latest.json"}).then(function(a){a.data&&a.data.version&&b!==a.data.version&&d.append('')})}}}])}),define("directives/influxdbFuncEditor",["angular","underscore","jquery"],function(a,b,c){a.module("kibana.directives").directive("influxdbFuncEditor",["$compile",function(a){var d='{{target.function}}(',e='';return{restrict:"A",link:function(f,g){function h(){var a=c(this),b=a.next();b.val(f.target.column),b.css("width",a.width()+16+"px"),a.hide(),b.show(),b.focus(),b.select();var d=b.data("typeahead");d&&(b.val(""),d.lookup())}function i(){var a=c(this),b=a.prev();""!==a.val()&&(b.text(a.val()),f.target.column=a.val(),f.$apply(f.get_data)),a.hide(),b.show()}function j(a){13===a.which&&i.call(this)}function k(){this.style.width=8*(3+this.value.length)+"px"}function l(a){a.attr("data-provide","typeahead"),a.typeahead({source:function(){return f.listColumns.apply(null,arguments)},minLength:0,items:20,updater:function(b){return setTimeout(function(){i.call(a[0])},0),b}});var b=a.data("typeahead");b.lookup=function(){var a;return this.query=this.$element.val()||"",a=this.source(this.query,c.proxy(this.process,this)),a?this.process(a):a}}function m(){n.appendTo(g);var b=c(''+f.target.column+""),d=c(e);b.appendTo(g),d.appendTo(g),d.blur(i),d.keyup(k),d.keypress(j),b.click(h),l(d),c(")").appendTo(g),a(g.contents())(f)}var n=c(d);f.functionMenu=b.map(f.functions,function(a){return{text:a,click:"changeFunction('"+a+"');"}}),m()}}}])}),define("directives/all",["./addPanel","./arrayJoin","./dashUpload","./kibanaPanel","./kibanaSimplePanel","./ngBlur","./ngModelOnBlur","./tip","./confirmClick","./configModal","./spectrumPicker","./grafanaGraph","./bootstrap-tagsinput","./bodyClass","./addGraphiteFunc","./graphiteFuncEditor","./grafanaVersionCheck","./influxdbFuncEditor"],function(){}),define("filters/all",["angular","jquery","underscore","moment"],function(a,b,c,d){var e=a.module("kibana.filters");e.filter("stringSort",function(){return function(a){return a.sort()}}),e.filter("esVersion",["esVersion",function(a){return function(b,d){var e=c.filter(b,function(b){return a.is(b[d])?!0:!1});return e}}]),e.filter("slice",function(){return function(a,b,d){return c.isUndefined(a)?void 0:a.slice(b,d)}}),e.filter("stringify",function(){return function(b){return c.isObject(b)&&!c.isArray(b)?a.toJson(b):c.isNull(b)?null:b.toString()}}),e.filter("moment",function(){return function(a,b){switch(b){case"ago":return d(a).fromNow()}return d(a).fromNow()}}),e.filter("noXml",function(){var a=function(a){return c.isString(a)?a.replace(/&/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):a};return function(b){return c.isArray(b)?c.map(b,a):a(b)}}),e.filter("urlLink",function(){var a=/(\b(https?|ftp):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gim,b=/(^|[^\/])(www\.[\S]+(\b|$))/gim,d=/(\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,6})/gim,e=function(e){var f,g,h;return c.isString(e)?(c.each(e.match(a),function(){f=e.replace(a,'$1')}),e=f||e,c.each(e.match(b),function(){g=e.replace(b,'$1$2')}),e=g||e,c.each(e.match(d),function(){h=e.replace(d,'$1')}),e=h||e):e};return function(a){return c.isArray(a)?c.map(a,e):e(a)}}),e.filter("gistid",function(){var a=/(\d{5,})|([a-z0-9]{10,})|(gist.github.com(\/*.*)\/[a-z0-9]{5,}\/*$)/;return function(b){if(!c.isUndefined(b)){var d=b.match(a);if(!c.isNull(d)&&!c.isUndefined(d))return d[0].replace(/.*\//,"")}}})}),define("components/partials",["angular"],function(a){a.module("kibana").run(["$templateCache",function(a){a.put("app/panels/annotations/editor.html",''),a.put("app/panels/graph/axisEditor.html",'
    Left Y Axis
    Right Y Axis
    Grid thresholds
    Legend
    Legend values
    Show Axes
    '),a.put("app/panels/graph/legend.html",' {{series.alias}}   Current: {{series.current}}    Min: {{series.min}}    Max: {{series.max}}    Total: {{series.total}}    Avg: {{series.avg}} '),a.put("app/panels/graph/styleEditor.html",'
    Chart Options
    Line options
    Multiple Series
    Rendering
    '),a.put("app/panels/text/editor.html","
    "),a.put("app/panels/timepicker/custom.html",''),a.put("app/panels/timepicker/editor.html",'
    '),a.put("app/panels/timepicker/refreshctrl.html",'

    '),a.put("app/partials/dashLoader.html",'
  • Back to dashboard
  • Zoom Out
  • Stop playlist
  • '),a.put("app/partials/dashLoaderShare.html",''),a.put("app/partials/dashboard.html",'
    '),a.put("app/partials/dasheditor.html",''),a.put("app/partials/graphite/editor.html",''),a.put("app/partials/import.html",'
    Import dashboards from graphite web
    {{dash.name}}
    {{error}}
    '),a.put("app/partials/influxdb/editor.html",'
    '),a.put("app/partials/inspector.html",''),a.put("app/partials/kairosdb/editor.html",'
    '),a.put("app/partials/load.html",'
    type:{{type}}
    id:{{id}}
    '),a.put("app/partials/loadmetrics.html",'
    Load metrics keys into elastic search

    Work in progress...

    '),a.put("app/partials/metrics.html",'
    '),a.put("app/partials/modal.html",''),a.put("app/partials/opentsdb/editor.html",'
    '),a.put("app/partials/paneladd.html",'
    {{tab.title}}
    '),a.put("app/partials/paneleditor.html",''),a.put("app/partials/panelgeneral.html",'
    General options
    '),a.put("app/partials/playlist.html",'
    '),a.put("app/partials/roweditor.html",''),a.put("app/partials/search.html",''),a.put("app/partials/unsaved-changes.html",'') -}])}),define("app",["angular","jquery","underscore","require","elasticjs","bootstrap","angular-sanitize","angular-strap","angular-dragdrop","extend-jquery","bindonce"],function(a,b,c,d){var e=a.module("kibana",[]),f=[],g={};e.constant("grafanaVersion","1.6.1"),e.constant("cacheBust","cache-bust="+Date.now()),e.useModule=function(a){return f?f.push(a):c.extend(a,g),a},e.safeApply=function(a,b){switch(a.$$phase){case"$apply":a.$eval(b);break;case"$digest":setTimeout(function(){e.safeApply(a,b)},10);break;default:a.$apply(b)}},e.config(["$routeProvider","$controllerProvider","$compileProvider","$filterProvider","$provide",function(a,b,c,d,e){a.when("/dashboard",{templateUrl:"app/partials/dashboard.html"}).when("/dashboard/:kbnType/:kbnId",{templateUrl:"app/partials/dashboard.html"}).when("/dashboard/:kbnType/:kbnId/:params",{templateUrl:"app/partials/dashboard.html"}).otherwise({redirectTo:"dashboard"}),g.controller=b.register,g.directive=c.directive,g.factory=e.factory,g.service=e.service,g.filter=d.register}]);var h=["elasticjs.service","$strap.directives","ngSanitize","ngDragDrop","kibana","pasvaz.bindonce"],i=["controllers","directives","factories","services","services.dashboard","filters"];return c.each(i,function(b){var c="kibana."+b;e.useModule(a.module(c,[])),h.push(c)}),require(["controllers/all","directives/all","filters/all","components/partials"],function(){a.element(document).ready(function(){b("body").attr("ng-controller","DashCtrl"),a.bootstrap(document,h).invoke(["$rootScope",function(a){c.each(f,function(a){c.extend(a,g)}),f=!1,a.requireContext=d,a.require=function(a,b){var d=this;d.requireContext(a,function(){var a=c.toArray(arguments);d.$id&&d.$apply(function(){b.apply(d,a)})})}}])})}),e}),define("css",{load:function(a,b,c){function d(a){var b=document.getElementsByTagName("head")[0],c=document.createElement("link");c.href=a,c.rel="stylesheet",c.type="text/css",b.appendChild(c)}d(requirejs.toUrl(a)),c(!0)},pluginBuilder:"../vendor/require/css-build"}),define("text",["module"],function(a){var b,c,d,e,f,g=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],h=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,i=/]*>\s*([\s\S]+)\s*<\/body>/im,j="undefined"!=typeof location&&location.href,k=j&&location.protocol&&location.protocol.replace(/\:/,""),l=j&&location.hostname,m=j&&(location.port||void 0),n={},o=a.config&&a.config()||{};return b={version:"2.0.10",strip:function(a){if(a){a=a.replace(h,"");var b=a.match(i);b&&(a=b[1])}else a="";return a},jsEscape:function(a){return a.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r").replace(/[\u2028]/g,"\\u2028").replace(/[\u2029]/g,"\\u2029")},createXhr:o.createXhr||function(){var a,b,c;if("undefined"!=typeof XMLHttpRequest)return new XMLHttpRequest;if("undefined"!=typeof ActiveXObject)for(b=0;3>b;b+=1){c=g[b];try{a=new ActiveXObject(c)}catch(d){}if(a){g=[c];break}}return a},parseName:function(a){var b,c,d,e=!1,f=a.indexOf("."),g=0===a.indexOf("./")||0===a.indexOf("../");return-1!==f&&(!g||f>1)?(b=a.substring(0,f),c=a.substring(f+1,a.length)):b=a,d=c||b,f=d.indexOf("!"),-1!==f&&(e="strip"===d.substring(f+1),d=d.substring(0,f),c?c=d:b=d),{moduleName:b,ext:c,strip:e}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(a,c,d,e){var f,g,h,i=b.xdRegExp.exec(a);return i?(f=i[2],g=i[3],g=g.split(":"),h=g[1],g=g[0],!(f&&f!==c||g&&g.toLowerCase()!==d.toLowerCase()||(h||g)&&h!==e)):!0},finishLoad:function(a,c,d,e){d=c?b.strip(d):d,o.isBuild&&(n[a]=d),e(d)},load:function(a,c,d,e){if(e.isBuild&&!e.inlineText)return void d();o.isBuild=e.isBuild;var f=b.parseName(a),g=f.moduleName+(f.ext?"."+f.ext:""),h=c.toUrl(g),i=o.useXhr||b.useXhr;return 0===h.indexOf("empty:")?void d():void(!j||i(h,k,l,m)?b.get(h,function(c){b.finishLoad(a,f.strip,c,d)},function(a){d.error&&d.error(a)}):c([g],function(a){b.finishLoad(f.moduleName+"."+f.ext,f.strip,a,d)}))},write:function(a,c,d){if(n.hasOwnProperty(c)){var e=b.jsEscape(n[c]);d.asModule(a+"!"+c,"define(function () { return '"+e+"';});\n")}},writeFile:function(a,c,d,e,f){var g=b.parseName(c),h=g.ext?"."+g.ext:"",i=g.moduleName+h,j=d.toUrl(g.moduleName+h)+".js";b.load(i,d,function(){var c=function(a){return e(j,a)};c.asModule=function(a,b){return e.asModule(a,j,b)},b.write(a,i,c,f)},f)}},"node"===o.env||!o.env&&"undefined"!=typeof process&&process.versions&&process.versions.node&&!process.versions["node-webkit"]?(c=require.nodeRequire("fs"),b.get=function(a,b,d){try{var e=c.readFileSync(a,"utf8");0===e.indexOf("")&&(e=e.substring(1)),b(e)}catch(f){d(f)}}):"xhr"===o.env||!o.env&&b.createXhr()?b.get=function(a,c,d,e){var f,g=b.createXhr();if(g.open("GET",a,!0),e)for(f in e)e.hasOwnProperty(f)&&g.setRequestHeader(f.toLowerCase(),e[f]);o.onXhr&&o.onXhr(g,a),g.onreadystatechange=function(){var b,e;4===g.readyState&&(b=g.status,b>399&&600>b?(e=new Error(a+" HTTP status: "+b),e.xhr=g,d(e)):c(g.responseText),o.onXhrComplete&&o.onXhrComplete(g,a))},g.send(null)}:"rhino"===o.env||!o.env&&"undefined"!=typeof Packages&&"undefined"!=typeof java?b.get=function(a,b){var c,d,e="utf-8",f=new java.io.File(a),g=java.lang.System.getProperty("line.separator"),h=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(f),e)),i="";try{for(c=new java.lang.StringBuffer,d=h.readLine(),d&&d.length()&&65279===d.charAt(0)&&(d=d.substring(1)),null!==d&&c.append(d);null!==(d=h.readLine());)c.append(g),c.append(d);i=String(c.toString())}finally{h.close()}b(i)}:("xpconnect"===o.env||!o.env&&"undefined"!=typeof Components&&Components.classes&&Components.interfaces)&&(d=Components.classes,e=Components.interfaces,Components.utils["import"]("resource://gre/modules/FileUtils.jsm"),f="@mozilla.org/windows-registry-key;1"in d,b.get=function(a,b){var c,g,h,i={};f&&(a=a.replace(/\//g,"\\")),h=new FileUtils.File(a);try{c=d["@mozilla.org/network/file-input-stream;1"].createInstance(e.nsIFileInputStream),c.init(h,1,0,!1),g=d["@mozilla.org/intl/converter-input-stream;1"].createInstance(e.nsIConverterInputStream),g.init(c,"utf-8",c.available(),e.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER),g.readString(c.available(),i),g.close(),c.close(),b(i.value)}catch(j){throw new Error((h&&h.path||"")+": "+j)}}),b}),function(a){a.color={},a.color.make=function(b,c,d,e){var f={};return f.r=b||0,f.g=c||0,f.b=d||0,f.a=null!=e?e:1,f.add=function(a,b){for(var c=0;c=1?"rgb("+[f.r,f.g,f.b].join(",")+")":"rgba("+[f.r,f.g,f.b,f.a].join(",")+")"},f.normalize=function(){function a(a,b,c){return a>b?a:b>c?c:b}return f.r=a(0,parseInt(f.r),255),f.g=a(0,parseInt(f.g),255),f.b=a(0,parseInt(f.b),255),f.a=a(0,f.a,1),f},f.clone=function(){return a.color.make(f.r,f.b,f.g,f.a)},f.normalize()},a.color.extract=function(b,c){var d;do{if(d=b.css(c).toLowerCase(),""!=d&&"transparent"!=d)break;b=b.parent()}while(!a.nodeName(b.get(0),"body"));return"rgba(0, 0, 0, 0)"==d&&(d="transparent"),a.color.parse(d)},a.color.parse=function(c){var d,e=a.color.make;if(d=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return e(parseInt(d[1],10),parseInt(d[2],10),parseInt(d[3],10));if(d=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(c))return e(parseInt(d[1],10),parseInt(d[2],10),parseInt(d[3],10),parseFloat(d[4]));if(d=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return e(2.55*parseFloat(d[1]),2.55*parseFloat(d[2]),2.55*parseFloat(d[3]));if(d=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(c))return e(2.55*parseFloat(d[1]),2.55*parseFloat(d[2]),2.55*parseFloat(d[3]),parseFloat(d[4]));if(d=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return e(parseInt(d[1],16),parseInt(d[2],16),parseInt(d[3],16));if(d=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return e(parseInt(d[1]+d[1],16),parseInt(d[2]+d[2],16),parseInt(d[3]+d[3],16));var f=a.trim(c).toLowerCase();return"transparent"==f?e(255,255,255,0):(d=b[f]||[0,0,0],e(d[0],d[1],d[2]))};var b={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}}(jQuery),function(a){function b(b,c){var d=c.children("."+b)[0];if(null==d&&(d=document.createElement("canvas"),d.className=b,a(d).css({direction:"ltr",position:"absolute",left:0,top:0}).appendTo(c),!d.getContext)){if(!window.G_vmlCanvasManager)throw new Error("Canvas is not available. If you're using IE with a fall-back such as Excanvas, then there's either a mistake in your conditional include, or the page has no DOCTYPE and is rendering in Quirks Mode.");d=window.G_vmlCanvasManager.initElement(d)}this.element=d;var e=this.context=d.getContext("2d"),f=window.devicePixelRatio||1,g=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;this.pixelRatio=f/g,this.resize(c.width(),c.height()),this.textContainer=null,this.text={},this._textCache={}}function c(c,e,f,g){function h(a,b){b=[qb].concat(b);for(var c=0;cd;++d)e=eb.xaxes[d],e&&!e.tickColor&&(e.tickColor=e.color),e=a.extend(!0,{},eb.xaxis,e),eb.xaxes[d]=e,e.font&&(e.font=a.extend({},g,e.font),e.font.color||(e.font.color=e.color));for(f=eb.yaxes.length||1,d=0;f>d;++d)e=eb.yaxes[d],e&&!e.tickColor&&(e.tickColor=e.color),e=a.extend(!0,{},eb.yaxis,e),eb.yaxes[d]=e,e.font&&(e.font=a.extend({},g,e.font),e.font.color||(e.font.color=e.color));for(eb.xaxis.noTicks&&null==eb.xaxis.ticks&&(eb.xaxis.ticks=eb.xaxis.noTicks),eb.yaxis.noTicks&&null==eb.yaxis.ticks&&(eb.yaxis.ticks=eb.yaxis.noTicks),eb.x2axis&&(eb.xaxes[1]=a.extend(!0,{},eb.xaxis,eb.x2axis),eb.xaxes[1].position="top"),eb.y2axis&&(eb.yaxes[1]=a.extend(!0,{},eb.yaxis,eb.y2axis),eb.yaxes[1].position="right"),eb.grid.coloredAreas&&(eb.grid.markings=eb.grid.coloredAreas),eb.grid.coloredAreasColor&&(eb.grid.markingsColor=eb.grid.coloredAreasColor),eb.lines&&a.extend(!0,eb.series.lines,eb.lines),eb.points&&a.extend(!0,eb.series.points,eb.points),eb.bars&&a.extend(!0,eb.series.bars,eb.bars),null!=eb.shadowSize&&(eb.series.shadowSize=eb.shadowSize),null!=eb.highlightColor&&(eb.series.highlightColor=eb.highlightColor),d=0;dd&&(d=e))}d>=c&&(c=d+1);var f,g=[],h=eb.colors,i=h.length,j=0;for(b=0;c>b;b++)f=a.color.parse(h[b%i]||"#666"),b%i==0&&b&&(j=j>=0?.5>j?-j-.2:0:-j),g[b]=f.scale("rgb",1+j);var k,l=0;for(b=0;ba.datamax&&c!=s&&(a.datamax=c)}var c,d,e,f,g,i,j,k,l,m,o,p,q=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,s=Number.MAX_VALUE;for(a.each(n(),function(a,b){b.datamin=q,b.datamax=r,b.used=!1}),c=0;cf;++f)k=m[f],l=p[f],l&&(l.number&&null!=k&&(k=+k,isNaN(k)?k=null:1/0==k?k=s:k==-1/0&&(k=-s)),null==k&&(l.required&&(v=!0),null!=l.defaultValue&&(k=l.defaultValue))),i[e+f]=k;if(v)for(f=0;j>f;++f)k=i[e+f],null!=k&&(l=p[f],l.autoscale&&(l.x&&b(g.xaxis,k,k),l.y&&b(g.yaxis,k,k))),i[e+f]=null;else if(u&&e>0&&null!=i[e-j]&&i[e-j]!=i[e]&&i[e-j+1]!=i[e+1]){for(f=0;j>f;++f)i[e+j+f]=i[e+f];i[e+1]=i[e-j+1],e+=j}}}}for(c=0;cf;++f)k=i[d+f],l=p[f],l&&l.autoscale!==!1&&k!=s&&k!=-s&&(l.x&&(w>k&&(w=k),k>y&&(y=k)),l.y&&(x>k&&(x=k),k>z&&(z=k)));if(g.bars.show){var A;switch(g.bars.align){case"left":A=0;break;case"right":A=-g.bars.barWidth;break;case"center":A=-g.bars.barWidth/2;break;default:throw new Error("Invalid bar alignment: "+g.bars.align)}g.bars.horizontal?(x+=A,z+=A+g.bars.barWidth):(w+=A,y+=A+g.bars.barWidth)}b(g.xaxis,w,y),b(g.yaxis,x,z)}a.each(n(),function(a,b){b.datamin==q&&(b.datamin=null),b.datamax==r&&(b.datamax=null)})}function t(){c.css("padding",0).children(":not(.flot-base,.flot-overlay)").remove(),"static"==c.css("position")&&c.css("position","relative"),fb=new b("flot-base",c),gb=new b("flot-overlay",c),ib=fb.context,jb=gb.context,hb=a(gb.element).unbind();var d=c.data("plot");d&&(d.shutdown(),gb.clear()),c.data("plot",qb)}function u(){eb.grid.hoverable&&(hb.mousemove(T),hb.bind("mouseleave",U)),eb.grid.clickable&&hb.click(V),h(pb.bindEvents,[hb])}function v(){sb&&clearTimeout(sb),hb.unbind("mousemove",T),hb.unbind("mouseleave",U),hb.unbind("click",V),h(pb.shutdown,[hb])}function w(a){function b(a){return a}var c,d,e=a.options.transform||b,f=a.options.inverseTransform;"x"==a.direction?(c=a.scale=nb/Math.abs(e(a.max)-e(a.min)),d=Math.min(e(a.max),e(a.min))):(c=a.scale=ob/Math.abs(e(a.max)-e(a.min)),c=-c,d=Math.max(e(a.max),e(a.min))),a.p2c=e==b?function(a){return(a-d)*c}:function(a){return(e(a)-d)*c},a.c2p=f?function(a){return f(d+a/c)}:function(a){return d+a/c}}function x(a){var b=a.options,c=a.ticks||[],d=b.labelWidth||0,e=b.labelHeight||0,f=d||"x"==a.direction?Math.floor(fb.width/(c.length||1)):null;legacyStyles=a.direction+"Axis "+a.direction+a.n+"Axis",layer="flot-"+a.direction+"-axis flot-"+a.direction+a.n+"-axis "+legacyStyles,font=b.font||"flot-tick-label tickLabel";for(var g=0;g=0;--b)y(g[b]);A(),a.each(g,function(a,b){z(b)})}nb=fb.width-mb.left-mb.right,ob=fb.height-mb.bottom-mb.top,a.each(c,function(a,b){w(b)}),d&&K(),R()}function C(a){var b=a.options,c=+(null!=b.min?b.min:a.datamin),d=+(null!=b.max?b.max:a.datamax),e=d-c;if(0==e){var f=0==d?1:.01;null==b.min&&(c-=f),(null==b.max||null!=b.min)&&(d+=f)}else{var g=b.autoscaleMargin;null!=g&&(null==b.min&&(c-=e*g,0>c&&null!=a.datamin&&a.datamin>=0&&(c=0)),null==b.max&&(d+=e*g,d>0&&null!=a.datamax&&a.datamax<=0&&(d=0)))}a.min=c,a.max=d}function D(b){var c,e=b.options;c="number"==typeof e.ticks&&e.ticks>0?e.ticks:.3*Math.sqrt("x"==b.direction?fb.width:fb.height);var f=(b.max-b.min)/c,g=-Math.floor(Math.log(f)/Math.LN10),h=e.tickDecimals;null!=h&&g>h&&(g=h);var i,j=Math.pow(10,-g),k=f/j;if(1.5>k?i=1:3>k?(i=2,k>2.25&&(null==h||h>=g+1)&&(i=2.5,++g)):i=7.5>k?5:10,i*=j,null!=e.minTickSize&&i0&&(null==e.min&&(b.min=Math.min(b.min,m[0])),null==e.max&&m.length>1&&(b.max=Math.max(b.max,m[m.length-1]))),b.tickGenerator=function(a){var b,c,d=[];for(c=0;c1&&/\..*0$/.test((o[1]-o[0]).toFixed(n))||(b.tickDecimals=n)}}}}function E(b){var c=b.options.ticks,d=[];null==c||"number"==typeof c&&c>0?d=b.tickGenerator(b):c&&(d=a.isFunction(c)?c(b):c);var e,f;for(b.ticks=[],e=0;e1&&(g=h[1])):f=+h,null==g&&(g=b.tickFormatter(f,b)),isNaN(f)||b.ticks.push({v:f,label:g})}}function F(a,b){a.options.autoscaleMargin&&b.length>0&&(null==a.options.min&&(a.min=Math.min(a.min,b[0].v)),null==a.options.max&&b.length>1&&(a.max=Math.max(a.max,b[b.length-1].v)))}function G(){fb.clear(),h(pb.drawBackground,[ib]);var a=eb.grid;a.show&&a.backgroundColor&&I(),a.show&&!a.aboveData&&J();for(var b=0;be){var i=d;d=e,e=i}return{from:d,to:e,axis:c}}function I(){ib.save(),ib.translate(mb.left,mb.top),ib.fillStyle=cb(eb.grid.backgroundColor,ob,0,"rgba(255, 255, 255, 0)"),ib.fillRect(0,0,nb,ob),ib.restore()}function J(){var b,c,d,e;ib.save(),ib.translate(mb.left,mb.top);var f=eb.grid.markings;if(f)for(a.isFunction(f)&&(c=qb.getAxes(),c.xmin=c.xaxis.min,c.xmax=c.xaxis.max,c.ymin=c.yaxis.min,c.ymax=c.yaxis.max,f=f(c)),b=0;bh.axis.max||i.toi.axis.max||(h.from=Math.max(h.from,h.axis.min),h.to=Math.min(h.to,h.axis.max),i.from=Math.max(i.from,i.axis.min),i.to=Math.min(i.to,i.axis.max),(h.from!=h.to||i.from!=i.to)&&(h.from=h.axis.p2c(h.from),h.to=h.axis.p2c(h.to),i.from=i.axis.p2c(i.from),i.to=i.axis.p2c(i.to),h.from==h.to||i.from==i.to?(ib.beginPath(),ib.strokeStyle=g.color||eb.grid.markingsColor,ib.lineWidth=g.lineWidth||eb.grid.markingsLineWidth,ib.moveTo(h.from,i.from),ib.lineTo(h.to,i.to),ib.stroke()):(ib.fillStyle=g.color||eb.grid.markingsColor,ib.fillRect(h.from,i.to,h.to-h.from,i.from-i.to))))}c=n(),d=eb.grid.borderWidth;for(var j=0;jp.max||"full"==r&&("object"==typeof d&&d[p.position]>0||d>0)&&(s==p.min||s==p.max)||("x"==p.direction?(k=p.p2c(s),o="full"==r?-ob:r,"top"==p.position&&(o=-o)):(l=p.p2c(s),m="full"==r?-nb:r,"left"==p.position&&(m=-m)),1==ib.lineWidth&&("x"==p.direction?k=Math.floor(k)+.5:l=Math.floor(l)+.5),ib.moveTo(k,l),ib.lineTo(k+m,l+o))}ib.stroke()}}d&&(e=eb.grid.borderColor,"object"==typeof d||"object"==typeof e?("object"!=typeof d&&(d={top:d,right:d,bottom:d,left:d}),"object"!=typeof e&&(e={top:e,right:e,bottom:e,left:e}),d.top>0&&(ib.strokeStyle=e.top,ib.lineWidth=d.top,ib.beginPath(),ib.moveTo(0-d.left,0-d.top/2),ib.lineTo(nb,0-d.top/2),ib.stroke()),d.right>0&&(ib.strokeStyle=e.right,ib.lineWidth=d.right,ib.beginPath(),ib.moveTo(nb+d.right/2,0-d.top),ib.lineTo(nb+d.right/2,ob),ib.stroke()),d.bottom>0&&(ib.strokeStyle=e.bottom,ib.lineWidth=d.bottom,ib.beginPath(),ib.moveTo(nb+d.right,ob+d.bottom/2),ib.lineTo(0,ob+d.bottom/2),ib.stroke()),d.left>0&&(ib.strokeStyle=e.left,ib.lineWidth=d.left,ib.beginPath(),ib.moveTo(0-d.left/2,ob+d.bottom),ib.lineTo(0-d.left/2,0),ib.stroke())):(ib.lineWidth=d,ib.strokeStyle=eb.grid.borderColor,ib.strokeRect(-d/2,-d/2,nb+d,ob+d))),ib.restore()}function K(){a.each(n(),function(a,b){if(b.show&&0!=b.ticks.length){var c,d,e,f,g,h=b.box,i=b.direction+"Axis "+b.direction+b.n+"Axis",j="flot-"+b.direction+"-axis flot-"+b.direction+b.n+"-axis "+i,k=b.options.font||"flot-tick-label tickLabel";fb.removeText(j);for(var l=0;lb.max||("x"==b.direction?(f="center",d=mb.left+b.p2c(c.v),"bottom"==b.position?e=h.top+h.padding:(e=h.top+h.height-h.padding,g="bottom")):(g="middle",e=mb.top+b.p2c(c.v),"left"==b.position?(d=h.left+h.width-h.padding,f="right"):d=h.left+h.padding),fb.addText(j,d,e,c.label,k,null,null,f,g))}})}function L(a){a.lines.show&&M(a),a.bars.show&&P(a),a.points.show&&N(a)}function M(a){function b(a,b,c,d,e){var f=a.points,g=a.pointsize,h=null,i=null;ib.beginPath();for(var j=g;j=l&&l=n&&n=n&&l>e.max){if(n>e.max)continue;k=(e.max-l)/(n-l)*(m-k)+k,l=e.max}else if(n>=l&&n>e.max){if(l>e.max)continue;m=(e.max-l)/(n-l)*(m-k)+k,n=e.max}if(m>=k&&k=m&&m=m&&k>d.max){if(m>d.max)continue;l=(d.max-k)/(m-k)*(n-l)+l,k=d.max}else if(m>=k&&m>d.max){if(k>d.max)continue;n=(d.max-k)/(m-k)*(n-l)+l,m=d.max}(k!=h||l!=i)&&ib.moveTo(d.p2c(k)+b,e.p2c(l)+c),h=m,i=n,ib.lineTo(d.p2c(m)+b,e.p2c(n)+c)}}ib.stroke()}function c(a,b,c){for(var d=a.points,e=a.pointsize,f=Math.min(Math.max(0,c.min),c.max),g=0,h=!1,i=1,j=0,k=0;;){if(e>0&&g>d.length+e)break;g+=e;var l=d[g-e],m=d[g-e+i],n=d[g],o=d[g+i];if(h){if(e>0&&null!=l&&null==n){k=g,e=-e,i=2;continue}if(0>e&&g==j+e){ib.fill(),h=!1,e=-e,i=1,g=j=k+e;continue}}if(null!=l&&null!=n){if(n>=l&&l=n&&n=n&&l>b.max){if(n>b.max)continue;m=(b.max-l)/(n-l)*(o-m)+m,l=b.max}else if(n>=l&&n>b.max){if(l>b.max)continue;o=(b.max-l)/(n-l)*(o-m)+m,n=b.max}if(h||(ib.beginPath(),ib.moveTo(b.p2c(l),c.p2c(f)),h=!0),m>=c.max&&o>=c.max)ib.lineTo(b.p2c(l),c.p2c(c.max)),ib.lineTo(b.p2c(n),c.p2c(c.max));else if(m<=c.min&&o<=c.min)ib.lineTo(b.p2c(l),c.p2c(c.min)),ib.lineTo(b.p2c(n),c.p2c(c.min));else{var p=l,q=n;o>=m&&m=c.min?(l=(c.min-m)/(o-m)*(n-l)+l,m=c.min):m>=o&&o=c.min&&(n=(c.min-m)/(o-m)*(n-l)+l,o=c.min),m>=o&&m>c.max&&o<=c.max?(l=(c.max-m)/(o-m)*(n-l)+l,m=c.max):o>=m&&o>c.max&&m<=c.max&&(n=(c.max-m)/(o-m)*(n-l)+l,o=c.max),l!=p&&ib.lineTo(b.p2c(p),c.p2c(m)),ib.lineTo(b.p2c(l),c.p2c(m)),ib.lineTo(b.p2c(n),c.p2c(o)),n!=q&&(ib.lineTo(b.p2c(n),c.p2c(o)),ib.lineTo(b.p2c(q),c.p2c(o)))}}}}ib.save(),ib.translate(mb.left,mb.top),ib.lineJoin="round";var d=a.lines.lineWidth,e=a.shadowSize;if(d>0&&e>0){ib.lineWidth=e,ib.strokeStyle="rgba(0,0,0,0.1)";var f=Math.PI/18;b(a.datapoints,Math.sin(f)*(d/2+e/2),Math.cos(f)*(d/2+e/2),a.xaxis,a.yaxis),ib.lineWidth=e/2,b(a.datapoints,Math.sin(f)*(d/2+e/4),Math.cos(f)*(d/2+e/4),a.xaxis,a.yaxis)}ib.lineWidth=d,ib.strokeStyle=a.color;var g=Q(a.lines,a.color,0,ob);g&&(ib.fillStyle=g,c(a.datapoints,a.xaxis,a.yaxis)),d>0&&b(a.datapoints,0,0,a.xaxis,a.yaxis),ib.restore()}function N(a){function b(a,b,c,d,e,f,g,h){for(var i=a.points,j=a.pointsize,k=0;kf.max||mg.max||(ib.beginPath(),l=f.p2c(l),m=g.p2c(m)+d,"circle"==h?ib.arc(l,m,b,0,e?Math.PI:2*Math.PI,!1):h(ib,l,m,b,e),ib.closePath(),c&&(ib.fillStyle=c,ib.fill()),ib.stroke())}}ib.save(),ib.translate(mb.left,mb.top);var c=a.points.lineWidth,d=a.shadowSize,e=a.points.radius,f=a.points.symbol;if(0==c&&(c=1e-4),c>0&&d>0){var g=d/2;ib.lineWidth=g,ib.strokeStyle="rgba(0,0,0,0.1)",b(a.datapoints,e,null,g+g/2,!0,a.xaxis,a.yaxis,f),ib.strokeStyle="rgba(0,0,0,0.2)",b(a.datapoints,e,null,g/2,!0,a.xaxis,a.yaxis,f)}ib.lineWidth=c,ib.strokeStyle=a.color,b(a.datapoints,e,Q(a.points,a.color),0,!1,a.xaxis,a.yaxis,f),ib.restore()}function O(a,b,c,d,e,f,g,h,i,j,k,l){var m,n,o,p,q,r,s,t,u;k?(t=r=s=!0,q=!1,m=c,n=a,p=b+d,o=b+e,m>n&&(u=n,n=m,m=u,q=!0,r=!1)):(q=r=s=!0,t=!1,m=a+d,n=a+e,o=c,p=b,o>p&&(u=p,p=o,o=u,t=!0,s=!1)),nh.max||pi.max||(mh.max&&(n=h.max,r=!1),oi.max&&(p=i.max,s=!1),m=h.p2c(m),o=i.p2c(o),n=h.p2c(n),p=i.p2c(p),g&&(j.beginPath(),j.moveTo(m,o),j.lineTo(m,p),j.lineTo(n,p),j.lineTo(n,o),j.fillStyle=g(o,p),j.fill()),l>0&&(q||r||s||t)&&(j.beginPath(),j.moveTo(m,o+f),q?j.lineTo(m,p+f):j.moveTo(m,p+f),s?j.lineTo(n,p+f):j.moveTo(n,p+f),r?j.lineTo(n,o+f):j.moveTo(n,o+f),t?j.lineTo(m,o+f):j.moveTo(m,o+f),j.stroke()))}function P(a){function b(b,c,d,e,f,g,h){for(var i=b.points,j=b.pointsize,k=0;k"),e.push(""),g=!0),e.push('
    '+k.label+"") -}if(g&&e.push(""),0!=e.length){var l=''+e.join("")+"
    ";if(null!=eb.legend.container)a(eb.legend.container).html(l);else{var m="",n=eb.legend.position,o=eb.legend.margin;null==o[0]&&(o=[o,o]),"n"==n.charAt(0)?m+="top:"+(o[1]+mb.top)+"px;":"s"==n.charAt(0)&&(m+="bottom:"+(o[1]+mb.bottom)+"px;"),"e"==n.charAt(1)?m+="right:"+(o[0]+mb.right)+"px;":"w"==n.charAt(1)&&(m+="left:"+(o[0]+mb.left)+"px;");var p=a('
    '+l.replace('style="','style="position:absolute;'+m+";")+"
    ").appendTo(c);if(0!=eb.legend.backgroundOpacity){var q=eb.legend.backgroundColor;null==q&&(q=eb.grid.backgroundColor,q=q&&"string"==typeof q?a.color.parse(q):a.color.extract(p,"background-color"),q.a=1,q=q.toString());var r=p.children();a('
    ').prependTo(p).css("opacity",eb.legend.backgroundOpacity)}}}}}function S(a,b,c){var d,e,f,g=eb.grid.mouseActiveRadius,h=g*g+1,i=null;for(d=db.length-1;d>=0;--d)if(c(db[d])){var j=db[d],k=j.xaxis,l=j.yaxis,m=j.datapoints.points,n=k.c2p(a),o=l.c2p(b),p=g/k.scale,q=g/l.scale;if(f=j.datapoints.pointsize,k.options.inverseTransform&&(p=Number.MAX_VALUE),l.options.inverseTransform&&(q=Number.MAX_VALUE),j.lines.show||j.points.show)for(e=0;ep||-p>r-n||s-o>q||-q>s-o)){var t=Math.abs(k.p2c(r)-a),u=Math.abs(l.p2c(s)-b),v=t*t+u*u;h>v&&(h=v,i=[d,e/f])}}if(j.bars.show&&!i){var w="left"==j.bars.align?0:-j.bars.barWidth/2,x=w+j.bars.barWidth;for(e=0;e=Math.min(y,r)&&o>=s+w&&s+x>=o:n>=r+w&&r+x>=n&&o>=Math.min(y,s)&&o<=Math.max(y,s))&&(i=[d,e/f])}}}return i?(d=i[0],e=i[1],f=db[d].datapoints.pointsize,{datapoint:db[d].datapoints.points.slice(e*f,(e+1)*f),dataIndex:e,series:db[d],seriesIndex:d}):null}function T(a){eb.grid.hoverable&&W("plothover",a,function(a){return 0!=a.hoverable})}function U(a){eb.grid.hoverable&&W("plothover",a,function(){return!1})}function V(a){W("plotclick",a,function(a){return 0!=a.clickable})}function W(a,b,d){var e=hb.offset(),f=b.pageX-e.left-mb.left,g=b.pageY-e.top-mb.top,h=o({left:f,top:g});h.pageX=b.pageX,h.pageY=b.pageY;var i=S(f,g,d);if(i&&(i.pageX=parseInt(i.series.xaxis.p2c(i.datapoint[0])+e.left+mb.left,10),i.pageY=parseInt(i.series.yaxis.p2c(i.datapoint[1])+e.top+mb.top,10)),eb.grid.autoHighlight){for(var j=0;jf.max||eg.max)){var i=b.points.radius+b.points.lineWidth/2;jb.lineWidth=i,jb.strokeStyle=h;var j=1.5*i;d=f.p2c(d),e=g.p2c(e),jb.beginPath(),"circle"==b.points.symbol?jb.arc(d,e,j,0,2*Math.PI,!1):b.points.symbol(jb,d,e,j,!1),jb.closePath(),jb.stroke()}}function bb(b,c){var d="string"==typeof b.highlightColor?b.highlightColor:a.color.parse(b.color).scale("a",.5).toString(),e=d,f="left"==b.bars.align?0:-b.bars.barWidth/2;jb.lineWidth=b.bars.lineWidth,jb.strokeStyle=d,O(c[0],c[1],c[2]||0,f,f+b.bars.barWidth,0,function(){return e},b.xaxis,b.yaxis,jb,b.bars.horizontal,b.bars.lineWidth)}function cb(b,c,d,e){if("string"==typeof b)return b;for(var f=ib.createLinearGradient(0,d,0,c),g=0,h=b.colors.length;h>g;++g){var i=b.colors[g];if("string"!=typeof i){var j=a.color.parse(e);null!=i.brightness&&(j=j.scale("rgb",i.brightness)),null!=i.opacity&&(j.a*=i.opacity),i=j.toString()}f.addColorStop(g/(h-1),i)}return f}var db=[],eb={colors:["#edc240","#afd8f8","#cb4b4b","#4da74d","#9440ed"],legend:{show:!0,noColumns:1,labelFormatter:null,labelBoxBorderColor:"#ccc",container:null,position:"ne",margin:5,backgroundColor:null,backgroundOpacity:.85,sorted:null},xaxis:{show:null,position:"bottom",mode:null,font:null,color:null,tickColor:null,transform:null,inverseTransform:null,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,reserveSpace:null,tickLength:null,alignTicksWithAxis:null,tickDecimals:null,tickSize:null,minTickSize:null},yaxis:{autoscaleMargin:.02,position:"left"},xaxes:[],yaxes:[],series:{points:{show:!1,radius:3,lineWidth:2,fill:!0,fillColor:"#ffffff",symbol:"circle"},lines:{lineWidth:2,fill:!1,fillColor:null,steps:!1},bars:{show:!1,lineWidth:2,barWidth:1,fill:!0,fillColor:null,align:"left",horizontal:!1},shadowSize:3,highlightColor:null},grid:{show:!0,aboveData:!1,color:"#545454",backgroundColor:null,borderColor:null,tickColor:null,margin:0,labelMargin:5,axisMargin:8,borderWidth:2,minBorderMargin:null,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:!1,hoverable:!1,autoHighlight:!0,mouseActiveRadius:10},interaction:{redrawOverlayInterval:1e3/60},hooks:{}},fb=null,gb=null,hb=null,ib=null,jb=null,kb=[],lb=[],mb={left:0,right:0,top:0,bottom:0},nb=0,ob=0,pb={processOptions:[],processRawData:[],processDatapoints:[],processOffset:[],drawBackground:[],drawSeries:[],draw:[],bindEvents:[],drawOverlay:[],shutdown:[]},qb=this;qb.setData=k,qb.setupGrid=B,qb.draw=G,qb.getPlaceholder=function(){return c},qb.getCanvas=function(){return fb.element},qb.getPlotOffset=function(){return mb},qb.width=function(){return nb},qb.height=function(){return ob},qb.offset=function(){var a=hb.offset();return a.left+=mb.left,a.top+=mb.top,a},qb.getData=function(){return db},qb.getAxes=function(){var b={};return a.each(kb.concat(lb),function(a,c){c&&(b[c.direction+(1!=c.n?c.n:"")+"axis"]=c)}),b},qb.getXAxes=function(){return kb},qb.getYAxes=function(){return lb},qb.c2p=o,qb.p2c=p,qb.getOptions=function(){return eb},qb.highlight=Z,qb.unhighlight=$,qb.triggerRedrawOverlay=X,qb.pointOffset=function(a){return{left:parseInt(kb[m(a,"x")-1].p2c(+a.x)+mb.left,10),top:parseInt(lb[m(a,"y")-1].p2c(+a.y)+mb.top,10)}},qb.shutdown=v,qb.resize=function(){var a=c.width(),b=c.height();fb.resize(a,b),gb.resize(a,b)},qb.hooks=pb,i(qb),j(f),t(),k(e),B(),G(),u();var rb=[],sb=null}function d(a,b){return b*Math.floor(a/b)}var e=Object.prototype.hasOwnProperty;b.prototype.resize=function(a,b){if(0>=a||0>=b)throw new Error("Invalid dimensions for plot, width = "+a+", height = "+b);var c=this.element,d=this.context,e=this.pixelRatio;this.width!=a&&(c.width=a*e,c.style.width=a+"px",this.width=a),this.height!=b&&(c.height=b*e,c.style.height=b+"px",this.height=b),d.restore(),d.save(),d.scale(e,e)},b.prototype.clear=function(){this.context.clearRect(0,0,this.width,this.height)},b.prototype.render=function(){var a=this._textCache;for(var b in a)if(e.call(a,b)){var c=this.getTextLayer(b),d=a[b];c.hide();for(var f in d)if(e.call(d,f)){var g=d[f];for(var h in g)if(e.call(g,h)){for(var i,j=g[h].positions,k=0;i=j[k];k++)i.active?i.rendered||(c.append(i.element),i.rendered=!0):(j.splice(k--,1),i.rendered&&i.element.detach());0==j.length&&delete g[h]}}c.show()}},b.prototype.getTextLayer=function(b){var c=this.text[b];return null==c&&(null==this.textContainer&&(this.textContainer=a("
    ").css({position:"absolute",top:0,left:0,bottom:0,right:0,"font-size":"smaller",color:"#545454"}).insertAfter(this.element)),c=this.text[b]=a("
    ").addClass(b).css({position:"absolute",top:0,left:0,bottom:0,right:0}).appendTo(this.textContainer)),c},b.prototype.getTextInfo=function(b,c,d,e,f){var g,h,i,j;if(c=""+c,g="object"==typeof d?d.style+" "+d.variant+" "+d.weight+" "+d.size+"px/"+d.lineHeight+"px "+d.family:d,h=this._textCache[b],null==h&&(h=this._textCache[b]={}),i=h[g],null==i&&(i=h[g]={}),j=i[c],null==j){var k=a("
    ").html(c).css({position:"absolute","max-width":f,top:-9999}).appendTo(this.getTextLayer(b));"object"==typeof d?k.css({font:g,color:d.color}):"string"==typeof d&&k.addClass(d),j=i[c]={width:k.outerWidth(!0),height:k.outerHeight(!0),element:k,positions:[]},k.detach()}return j},b.prototype.addText=function(a,b,c,d,e,f,g,h,i){var j=this.getTextInfo(a,d,e,f,g),k=j.positions;"center"==h?b-=j.width/2:"right"==h&&(b-=j.width),"middle"==i?c-=j.height/2:"bottom"==i&&(c-=j.height);for(var l,m=0;l=k[m];m++)if(l.x==b&&l.y==c)return void(l.active=!0);l={active:!0,rendered:!1,element:k.length?j.element.clone():j.element,x:b,y:c},k.push(l),l.element.css({top:Math.round(c),left:Math.round(b),"text-align":h})},b.prototype.removeText=function(a,b,c,d,f,g){if(null==d){var h=this._textCache[a];if(null!=h)for(var i in h)if(e.call(h,i)){var j=h[i];for(var k in j)if(e.call(j,k))for(var l,m=j[k].positions,n=0;l=m[n];n++)l.active=!1}}else for(var l,m=this.getTextInfo(a,d,f,g).positions,n=0;l=m[n];n++)l.x==b&&l.y==c&&(l.active=!1)},a.plot=function(b,d,e){var f=new c(a(b),d,e,a.plot.plugins);return f},a.plot.version="0.8.1",a.plot.plugins=[],a.fn.plot=function(b,c){return this.each(function(){a.plot(this,b,c)})}}(jQuery),define("jquery.flot",function(){}),function(a){function b(b){function f(b){x||(x=!0,s=b.getCanvas(),t=a(s).parent(),e=b.getOptions(),b.setData(g(b.getData())))}function g(b){for(var c=0,d=0,f=0,g=e.series.pie.combine.color,h=[],i=0;if||j/c>e.series.pie.combine.threshold)&&h.push({data:[[1,j]],color:b[i].color,label:b[i].label,angle:j*Math.PI*2/c,percent:j/(c/100)})}return f>1&&h.push({data:[[1,d]],color:g,label:e.series.pie.combine.label,angle:d*Math.PI*2/c,percent:d/(c/100)}),h}function h(b,f){function g(){y.clearRect(0,0,k,l),t.children().filter(".pieLabel, .pieLabelBackground").remove()}function h(){var a=e.series.pie.shadow.left,b=e.series.pie.shadow.top,c=10,d=e.series.pie.shadow.alpha,f=e.series.pie.radius>1?e.series.pie.radius:u*e.series.pie.radius;if(!(f>=k/2-a||f*e.series.pie.tilt>=l/2-b||c>=f)){y.save(),y.translate(a,b),y.globalAlpha=d,y.fillStyle="#000",y.translate(v,w),y.scale(1,e.series.pie.tilt);for(var g=1;c>=g;g++)y.beginPath(),y.arc(0,0,f,0,2*Math.PI,!1),y.fill(),f-=g;y.restore()}}function j(){function b(a,b,c){0>=a||isNaN(a)||(c?y.fillStyle=b:(y.strokeStyle=b,y.lineJoin="round"),y.beginPath(),Math.abs(a-2*Math.PI)>1e-9&&y.moveTo(0,0),y.arc(0,0,f,g,g+a/2,!1),y.arc(0,0,f,g+a/2,g+a,!1),y.closePath(),g+=a,c?y.fill():y.stroke())}function c(){function b(b,c,d){if(0==b.data[0][1])return!0;var g,h=e.legend.labelFormatter,i=e.series.pie.label.formatter;g=h?h(b.label,b):b.label,i&&(g=i(g,b));var j=(c+b.angle+c)/2,m=v+Math.round(Math.cos(j)*f),n=w+Math.round(Math.sin(j)*f)*e.series.pie.tilt,o=""+g+"";t.append(o);var p=t.children("#pieLabel"+d),q=n-p.height()/2,r=m-p.width()/2;if(p.css("top",q),p.css("left",r),0-q>0||0-r>0||l-(q+p.height())<0||k-(r+p.width())<0)return!1;if(0!=e.series.pie.label.background.opacity){var s=e.series.pie.label.background.color;null==s&&(s=b.color);var u="top:"+q+"px;left:"+r+"px;";a("
    ").css("opacity",e.series.pie.label.background.opacity).insertBefore(p)}return!0}for(var c=d,f=e.series.pie.label.radius>1?e.series.pie.label.radius:u*e.series.pie.label.radius,g=0;g=100*e.series.pie.label.threshold&&!b(n[g],c,g))return!1;c+=n[g].angle}return!0}var d=Math.PI*e.series.pie.startAngle,f=e.series.pie.radius>1?e.series.pie.radius:u*e.series.pie.radius;y.save(),y.translate(v,w),y.scale(1,e.series.pie.tilt),y.save();for(var g=d,h=0;h0){y.save(),y.lineWidth=e.series.pie.stroke.width,g=d;for(var h=0;hv?v=u:v>k-u&&(v=k-u);var n=b.getData(),o=0;do o>0&&(u*=d),o+=1,g(),e.series.pie.tilt<=.8&&h();while(!j()&&c>o);o>=c&&(g(),t.prepend("
    Could not draw pie with labels contained inside canvas
    ")),b.setSeries&&b.insertLegend&&(b.setSeries(n),b.insertLegend())}}function i(a){if(e.series.pie.innerRadius>0){a.save();var b=e.series.pie.innerRadius>1?e.series.pie.innerRadius:u*e.series.pie.innerRadius;a.globalCompositeOperation="destination-out",a.beginPath(),a.fillStyle=e.series.pie.stroke.color,a.arc(0,0,b,0,2*Math.PI,!1),a.fill(),a.closePath(),a.restore(),a.save(),a.beginPath(),a.strokeStyle=e.series.pie.stroke.color,a.arc(0,0,b,0,2*Math.PI,!1),a.stroke(),a.closePath(),a.restore()}}function j(a,b){for(var c=!1,d=-1,e=a.length,f=e-1;++d1?g.series.pie.radius:u*g.series.pie.radius,i=0;i1e-9&&b.moveTo(0,0),b.arc(0,0,e,a.startAngle,a.startAngle+a.angle/2,!1),b.arc(0,0,e,a.startAngle+a.angle/2,a.startAngle+a.angle,!1),b.closePath(),b.fill())}var d=a.getOptions(),e=d.series.pie.radius>1?d.series.pie.radius:u*d.series.pie.radius;b.save(),b.translate(v,w),b.scale(1,d.series.pie.tilt);for(var f=0;f1?b.series.pie.tilt=1:b.series.pie.tilt<0&&(b.series.pie.tilt=0))}),b.hooks.bindEvents.push(function(a,b){var c=a.getOptions();c.series.pie.show&&(c.grid.hoverable&&b.unbind("mousemove").mousemove(l),c.grid.clickable&&b.unbind("click").click(m))}),b.hooks.processDatapoints.push(function(a,b,c,d){var e=a.getOptions();e.series.pie.show&&f(a,b,c,d)}),b.hooks.drawOverlay.push(function(a,b){var c=a.getOptions();c.series.pie.show&&r(a,b)}),b.hooks.draw.push(function(a,b){var c=a.getOptions();c.series.pie.show&&h(a,b)})}var c=10,d=.95,e={series:{pie:{show:!1,radius:"auto",innerRadius:0,startAngle:1.5,tilt:1,shadow:{left:5,top:15,alpha:.02},offset:{top:0,left:"auto"},stroke:{color:"#fff",width:1},label:{show:"auto",formatter:function(a,b){return"
    "+a+"
    "+Math.round(b.percent)+"%
    "},radius:1,background:{color:null,opacity:0},threshold:0},combine:{threshold:-1,color:null,label:"Other"},highlight:{opacity:.5}}}};a.plot.plugins.push({init:b,options:e,name:"pie",version:"1.1"})}(jQuery),define("jquery.flot.pie",function(){}),define("panels/annotations/module",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.panels.annotations",[]);b.useModule(d),d.controller("AnnotationsCtrl",["$scope","dashboard","$rootScope",function(b,d,e){b.panelMeta={status:"Stable",description:"Annotations"};var f={annotations:[]},g={name:"",type:"graphite metric",showLine:!0,iconColor:"#C0C6BE",lineColor:"rgba(255, 96, 96, 0.592157)",iconSize:13,enable:!0};c.defaults(b.panel,f),b.init=function(){b.currentAnnnotation=a.copy(g),b.currentIsNew=!0},b.edit=function(a){b.currentAnnnotation=a,b.currentIsNew=!1},b.update=function(){b.currentAnnnotation=a.copy(g),b.currentIsNew=!0},b.add=function(){b.panel.annotations.push(b.currentAnnnotation),b.currentAnnnotation=a.copy(g)},b.hide=function(a){a.enable=!a.enable,e.$broadcast("refresh")}}])}),define("text!panels/annotations/module.html",[],function(){return''}),define("panels/filtering/module",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.panels.filtering",[]);b.useModule(d),d.controller("filtering",["$scope","datasourceSrv","$rootScope","$timeout","$q",function(a,b,d,e,f){a.panelMeta={status:"Stable",description:"graphite target filters"};var g={};c.defaults(a.panel,g),a.init=function(){},a.remove=function(b){a.filter.removeTemplateParameter(b)},a.filterOptionSelected=function(b,c,d){return b.current=c,a.filter.updateTemplateData(),a.applyFilterToOtherFilters(b).then(function(){d||a.dashboard.refresh()})},a.applyFilterToOtherFilters=function(b){var d=c.map(a.filter.templateParameters,function(c){return c!==b&&-1!==c.query.indexOf(b.name)?a.applyFilter(c):void 0});return f.all(d)},a.applyFilter=function(d){return b.default.metricFindQuery(a.filter,d.query).then(function(b){if(d.editing=void 0,d.options=c.map(b,function(a){return{text:a.text,value:a.text}}),d.includeAll){var e="{";c.each(d.options,function(a){e+=a.text+","}),e=e.substring(0,e.length-1)+"}",d.options.unshift({text:"All",value:e})}if(d.current){var f=c.findWhere(d.options,{value:d.current.value});if(f)return a.filterOptionSelected(d,d.current,!0)}return a.filterOptionSelected(d,d.options[0],!0)})},a.add=function(){a.filter.addTemplateParameter({type:"filter",name:"filter name",editing:!0,query:"metric.path.query.*"})}}])}),define("text!panels/filtering/module.html",[],function(){return'
    • name:
    • filter.query:
    '}),define("panels/graph/timeSeries",["underscore","kbn"],function(a,b){var c={};return c.ZeroFilled=function(a){this.datapoints=a.datapoints,this.info=a.info,this.label=a.info.alias},c.ZeroFilled.prototype.getFlotPairs=function(c,d){var e=[];if(this.color=this.info.color,this.yaxis=this.info.yaxis,this.info.total=0,this.info.max=null,this.info.min=212312321312,a.each(this.datapoints,function(b){var d=b[1],f=b[0];if(null===f){if("connected"===c)return;"null as zero"===c&&(f=0)}a.isNumber(f)&&(this.info.total+=f),f>this.info.max&&(this.info.max=f),f2&&(this.info.timeStep=e[1][0]-e[0][0]),e.length){this.info.avg=this.info.total/e.length,this.info.current=e[e.length-1][1];var f=b.getFormatFunction(d[this.yaxis-1],2);this.info.avg=null!=this.info.avg?f(this.info.avg):null,this.info.current=null!=this.info.current?f(this.info.current):null,this.info.min=null!=this.info.min?f(this.info.min):null,this.info.max=null!=this.info.max?f(this.info.max):null,this.info.total=null!=this.info.total?f(this.info.total):null}return e},c}),function(a){function b(b){var f,g={icon:"icon-caret-up",size:20,width:19,height:10},h=[],i=!1;b.getEvents=function(){return h},b.hideEvents=function(b){a.each(h,function(a,c){k(c.level(),b)&&c.visual().getObject().hide()})},b.showEvents=function(c){b.hideEvents(),a.each(h,function(a,b){k(b.level(),c)||b.hide()}),j()},b.hooks.processOptions.push(function(a,b){null!=b.events.data&&(i=!0)}),b.hooks.draw.push(function(a){var b=a.getOptions(),c=a.getXAxes()[b.events.xaxis-1];if(i)if(h.length<1)if(_lastRange=c.max-c.min,b.events.clustering){var d=s(b.events.types,b.events.data,c.max-c.min);f=d.types,n(d.data)}else f=b.events.types,n(b.events.data);else l();j()});var j=function(){{var c=b.getPlotOffset();c.left,b.width()-c.right}a.each(h,function(a,b){r(b.getOptions().min)&&!b.isHidden()?b.visual().draw():b.visual().getObject().hide()}),o(),p()},k=function(a,b){var c={};return b?(c.start=void 0==b.min?0:b.min,c.end=void 0==b.max?h.length-1:b.max):(c.start=0,c.end=h.length-1),a>=c.start&&a<=c.end?!0:!1},l=function(){var c,d,e=b.getPlotOffset(),f=b.getXAxes()[b.getOptions().events.xaxis-1];a.each(h,function(a,g){d=e.top+b.height()-g.visual().height(),c=f.p2c(g.getOptions().min)+e.left-g.visual().width()/2,g.visual().moveTo({top:d,left:c})})},m=function(b,c,d){var e=a('
    ');d?e.html(d.description).place_tt(b,c,{offset:10}):e.remove()},n=function(c){a.each(c,function(a,c){var e=null!=b.getOptions().events.levels&&f&&f[c.eventType]?f[c.eventType].level:0;if(e>b.getOptions().events.levels)throw"A type's level has exceeded the maximum. Level="+e+", Max levels:"+b.getOptions().events.levels;h.push(new d(c,q(c),e))}),h.sort(e)},o=function(){var b,c=[],d={},e=0;a.each(h,function(a,e){b&&(e.getOptions().min==b.getOptions().min?(d.min||(d.min=a),d.max=a):d.min&&(c.push(d),d={})),b=e}),d.min&&c.push(d),a.each(c,function(b,c){var d=h.splice(c.min-e,c.max-c.min+1);a.each(d,function(a,b){b.visual().clear()}),e+=c.max-c.min+1})},p=function(){var a,c,d=b.getXAxes()[b.getOptions().events.xaxis-1],e=0,f=-1;pright=b.width()-b.getPlotOffset().right;if(d.min&&d.max){a=d.max-d.min;for(var g=1;g.007?(f=-1,e=g):(f=g,g==h.length-1)}},q=function(d){var e,h,i,j,k,l,n,o=b.getPlaceholder(),p=b.getPlotOffset(),q=b.getXAxes()[b.getOptions().events.xaxis-1],r=b.getAxes();return r.yaxis&&r.yaxis.used&&(e=r.yaxis),r.yaxis2&&r.yaxis2.used&&(e=r.yaxis2),null!=f&&f[d.eventType]&&f[d.eventType].icon?(k=f[d.eventType].icon,l=f[d.eventType].level):(k=g,l=0),j=a('').appendTo(o),h=p.top+b.height()-k.size+1,i=q.p2c(d.min)+p.left-k.size/2,j.css({left:i+"px",top:h,color:k.color,"text-shadow":"1px 1px "+k.outline+", -1px -1px "+k.outline+", -1px 1px "+k.outline+", 1px -1px "+k.outline,"font-size":k.size+"px"}),j.hide(),j.data({event:d}),j.hover(function(){var b=a(this).offset();m(b.left+a(this).width()/2,b.top,a(this).data("event"))},function(){a("#tooltip").remove(),b.clearSelection()}),n=new c(j,function(a){a.show()},function(a){a.remove()},function(a,b){a.css({top:b.top,left:b.left})},i,h,j.width(),j.height())},r=function(a){var c=b.getXAxes()[b.getOptions().events.xaxis-1],d=c.p2c(a);return d>0&&de*b&&f>.05?(g.push(d),d=[a[i]]):d.push(a[i])}return g.push(d),g}}function c(a,b,c,d,e,f,g,h){var i=a,j=b,k=c,l=d,m={left:e,top:f},n=g,o=h;this.width=function(){return n},this.height=function(){return o},this.position=function(){return m},this.draw=function(){j(i)},this.clear=function(){k(i)},this.getObject=function(){return i},this.moveTo=function(a){m=a,l(i,m)}}function d(a,b,c){var d,e=a,f=b,g=c,h=!1;this.visual=function(){return f},this.level=function(){return g},this.getOptions=function(){return e},this.getParent=function(){return d},this.isHidden=function(){return h},this.hide=function(){h=!0},this.unhide=function(){h=!1}}function e(a,b){var c=a.getOptions(),d=b.getOptions();return c.min>d.min?1:c.minb?a:b>c?c:b}function i(a,c){var d=b.getOptions(),e=b.getPlaceholder().offset(),f=b.getPlotOffset();a.x=h(0,c.pageX-e.left-f.left,b.width()),a.y=h(0,c.pageY-e.top-f.top,b.height()),"y"==d.selection.mode&&(a.x=a==o.first?0:b.width()),"x"==d.selection.mode&&(a.y=a==o.first?0:b.height())}function j(a){null!=a.pageX&&(i(o.second,a),n()?(o.show=!0,b.triggerRedrawOverlay()):k(!0))}function k(a){o.show&&(o.show=!1,b.triggerRedrawOverlay(),a||b.getPlaceholder().trigger("plotunselected",[]))}function l(a,c){var d,e,f,g,h=b.getAxes();for(var i in h)if(d=h[i],d.direction==c&&(g=c+d.n+"axis",a[g]||1!=d.n||(g=c+"axis"),a[g])){e=a[g].from,f=a[g].to;break}if(a[g]||(d="x"==c?b.getXAxes()[0]:b.getYAxes()[0],e=a[c+"1"],f=a[c+"2"]),null!=e&&null!=f&&e>f){var j=e;e=f,f=j}return{from:e,to:f,axis:d}}function m(a,c){var d,e=b.getOptions();"y"==e.selection.mode?(o.first.x=0,o.second.x=b.width()):(d=l(a,"x"),o.first.x=d.axis.p2c(d.from),o.second.x=d.axis.p2c(d.to)),"x"==e.selection.mode?(o.first.y=0,o.second.y=b.height()):(d=l(a,"y"),o.first.y=d.axis.p2c(d.from),o.second.y=d.axis.p2c(d.to)),o.show=!0,b.triggerRedrawOverlay(),!c&&n()&&g()}function n(){var a=b.getOptions().selection.minSize;return Math.abs(o.second.x-o.first.x)>=a&&Math.abs(o.second.y-o.first.y)>=a}var o={first:{x:-1,y:-1},second:{x:-1,y:-1},show:!1,active:!1},p={},q=null;b.clearSelection=k,b.setSelection=m,b.getSelection=f,b.hooks.bindEvents.push(function(a,b){var e=a.getOptions();null!=e.selection.mode&&(b.mousemove(c),b.mousedown(d))}),b.hooks.drawOverlay.push(function(b,c){if(o.show&&n()){var d=b.getPlotOffset(),e=b.getOptions();c.save(),c.translate(d.left,d.top);var f=a.color.parse(e.selection.color);c.strokeStyle=f.scale("a",.8).toString(),c.lineWidth=1,c.lineJoin=e.selection.shape,c.fillStyle=f.scale("a",.4).toString();var g=Math.min(o.first.x,o.second.x)+.5,h=Math.min(o.first.y,o.second.y)+.5,i=Math.abs(o.second.x-o.first.x)-1,j=Math.abs(o.second.y-o.first.y)-1;c.fillRect(g,h,i,j),c.strokeRect(g,h,i,j),c.restore()}}),b.hooks.shutdown.push(function(b,e){e.unbind("mousemove",c),e.unbind("mousedown",d),q&&a(document).unbind("mouseup",q)})}a.plot.plugins.push({init:b,options:{selection:{mode:null,color:"#e8cfac",shape:"round",minSize:5}},name:"selection",version:"1.1"})}(jQuery),define("jquery.flot.selection",function(){}),function(a){function b(a,b){return b*Math.floor(a/b)}function c(a,b,c,d){if("function"==typeof a.strftime)return a.strftime(b); -var e=function(a,b){return a=""+a,b=""+(null==b?"0":b),1==a.length?b+a:a},f=[],g=!1,h=a.getHours(),i=12>h;null==c&&(c=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),null==d&&(d=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);var j;j=h>12?h-12:0==h?12:h;for(var k=0;k=g);++l);var m=i[l][0],n=i[l][1];if("year"==n){if(null!=f.minTickSize&&"year"==f.minTickSize[1])m=Math.floor(f.minTickSize[0]);else{var o=Math.pow(10,Math.floor(Math.log(a.delta/h.year)/Math.LN10)),p=a.delta/h.year/o;m=1.5>p?1:3>p?2:7.5>p?5:10,m*=o}1>m&&(m=1)}a.tickSize=f.tickSize||[m,n];var q=a.tickSize[0];n=a.tickSize[1];var r=q*h[n];"second"==n?d.setSeconds(b(d.getSeconds(),q)):"minute"==n?d.setMinutes(b(d.getMinutes(),q)):"hour"==n?d.setHours(b(d.getHours(),q)):"month"==n?d.setMonth(b(d.getMonth(),q)):"quarter"==n?d.setMonth(3*b(d.getMonth()/3,q)):"year"==n&&d.setFullYear(b(d.getFullYear(),q)),d.setMilliseconds(0),r>=h.minute&&d.setSeconds(0),r>=h.hour&&d.setMinutes(0),r>=h.day&&d.setHours(0),r>=4*h.day&&d.setDate(1),r>=2*h.month&&d.setMonth(b(d.getMonth(),3)),r>=2*h.quarter&&d.setMonth(b(d.getMonth(),6)),r>=h.year&&d.setMonth(0);var s,t=0,u=Number.NaN;do if(s=u,u=d.getTime(),c.push(u),"month"==n||"quarter"==n)if(1>q){d.setDate(1);var v=d.getTime();d.setMonth(d.getMonth()+("quarter"==n?3:1));var w=d.getTime();d.setTime(u+t*h.hour+(w-v)*q),t=d.getHours(),d.setHours(0)}else d.setMonth(d.getMonth()+q*("quarter"==n?3:1));else"year"==n?d.setFullYear(d.getFullYear()+q):d.setTime(u+r);while(u=1024;)h++,g/=1024;for(;1024>=f&&!(f>=g);)f*=2;a.tickSize="undefined"!=typeof d.minTickSize&&f=1024;)d++,a/=1024;switch(d){case 0:c=" B";break;case 1:c=" KB";break;case 2:c=" MB";break;case 3:c=" GB";break;case 4:c=" TB";break;case 5:c=" PB";break;case 6:c=" EB";break;case 7:c=" ZB";break;case 8:c=" YB"}return"undefined"!=typeof b.rate&&(c+="/s"),a.toFixed(b.tickDecimals)+c})})})}var d={};a.plot.plugins.push({init:c,options:d,name:"byte",version:"0.1"})}(jQuery),define("jquery.flot.byte",function(){}),function(a){function b(a){function b(a,b){for(var c=null,d=0;d2&&(t?d.format[2].x:d.format[2].y),v=s&&c.lines.steps,w=!0,x=t?1:0,y=t?0:1,z=0,A=0;;){if(z>=o.length)break;if(l=r.length,null==o[z]){for(m=0;n>m;++m)r.push(o[z+m]);z+=n}else if(A>=q.length){if(!s)for(m=0;n>m;++m)r.push(o[z+m]);z+=n}else if(null==q[A]){for(m=0;n>m;++m)r.push(null);w=!0,A+=p}else{if(f=o[z+x],g=o[z+y],i=q[A+x],j=q[A+y],k=0,f==i){for(m=0;n>m;++m)r.push(o[z+m]);r[l+y]+=j,k=j,z+=n,A+=p}else if(f>i){if(s&&z>0&&null!=o[z-n]){for(h=g+(o[z-n+y]-g)*(i-f)/(o[z-n+x]-f),r.push(i),r.push(h+j),m=2;n>m;++m)r.push(o[z+m]);k=j}A+=p}else{if(w&&s){z+=n;continue}for(m=0;n>m;++m)r.push(o[z+m]);s&&A>0&&null!=q[A-p]&&(k=j+(q[A-p+y]-j)*(f-i)/(q[A-p+x]-i)),r[l+y]+=k,z+=n}w=!1,l!=r.length&&u&&(r[l+2]+=k)}if(v&&l!=r.length&&l>0&&null!=r[l]&&r[l]!=r[l-n]&&r[l+1]!=r[l-n+1]){for(m=0;n>m;++m)r[l+n+m]=r[l+m];r[l+1]=r[l-n+1]}}d.points=r}}}a.hooks.processDatapoints.push(c)}var c={series:{stack:null}};a.plot.plugins.push({init:b,options:c,name:"stack",version:"1.2"})}(jQuery),define("jquery.flot.stack",function(){}),function(a){function b(a){function b(a,b,d){if(f||(f=!0,g=c(a.getData())),1==b.stackpercent){var e=d.length;b.percents=[];var h=0,i=1;b.bars&&b.bars.horizontal&&b.bars.horizontal===!0&&(h=1,i=0);for(var j=0;e>j;j++){var k=g[d[j][h]+""];b.percents.push(k>0?100*d[j][i]/k:0)}}}function c(a){var b=a.length,c={};if(b>0)for(var d=0;b>d;d++)if(a[d].stackpercent){var e=0,f=1;a[d].bars&&a[d].bars.horizontal&&a[d].bars.horizontal===!0&&(e=1,f=0);for(var g=a[d].data.length,h=0;g>h;h++){var i=0;null!=a[d].data[h][1]&&(i=a[d].data[h][f]),c[a[d].data[h][e]+""]?c[a[d].data[h][e]+""]+=i:c[a[d].data[h][e]+""]=i}}return c}function d(a,b,d){if(b.stackpercent){f||(g=c(a.getData()));var h=[],i=0,j=1;b.bars&&b.bars.horizontal&&b.bars.horizontal===!0&&(i=1,j=0);for(var k=0;k0?(h[k+j]=100*h[k+j]/g[h[k+i]+""],h[k+2]=100*h[k+2]/g[h[k+i]+""]):(h[k+j]=0,h[k+2]=0);d.points=h}}var e={},f=!1,g={};a.hooks.processRawData.push(b),a.hooks.processDatapoints.push(d)}var c={series:{stackpercent:null}};a.plot.plugins.push({init:b,options:c,name:"stackpercent",version:"0.1"})}(jQuery),define("jquery.flot.stackpercent",function(){}),define("panels/graph/module",["angular","app","jquery","underscore","kbn","moment","./timeSeries","services/annotationsSrv","services/datasourceSrv","jquery.flot","jquery.flot.events","jquery.flot.selection","jquery.flot.time","jquery.flot.byte","jquery.flot.stack","jquery.flot.stackpercent"],function(a,b,c,d,e,f,g){var h=a.module("kibana.panels.graph",[]);b.useModule(h),h.controller("graph",["$scope","$rootScope","datasourceSrv","$timeout","annotationsSrv",function(a,b,h,i,j){a.panelMeta={modals:[],editorTabs:[],fullEditorTabs:[{title:"General",src:"app/partials/panelgeneral.html"},{title:"Metrics",src:"app/partials/metrics.html"},{title:"Axes & Grid",src:"app/panels/graph/axisEditor.html"},{title:"Display Styles",src:"app/panels/graph/styleEditor.html"}],fullscreenEdit:!0,fullscreenView:!0,description:"Graphing"};var k={datasource:null,renderer:"flot","x-axis":!0,"y-axis":!0,scale:1,y_formats:["short","short"],grid:{leftMax:null,rightMax:null,leftMin:null,rightMin:null,threshold1:null,threshold2:null,threshold1Color:"rgba(216, 200, 27, 0.27)",threshold2Color:"rgba(234, 112, 112, 0.22)"},annotate:{enable:!1},resolution:100,lines:!0,fill:0,linewidth:1,points:!1,pointradius:5,bars:!1,stack:!1,legend:{show:!0,values:!1,min:!1,max:!1,current:!1,total:!1,avg:!1},percentage:!1,zerofill:!0,nullPointMode:"connected",steppedLine:!1,tooltip:{value_type:"cumulative",query_as_alias:!0},targets:[],aliasColors:{},aliasYAxis:{}};d.defaults(a.panel,k),d.defaults(a.panel.tooltip,k.tooltip),d.defaults(a.panel.annotate,k.annotate),d.defaults(a.panel.grid,k.grid),d.isBoolean(a.panel.legend)&&(a.panel.legend={show:a.panel.legend},d.defaults(a.panel.legend,k.legend)),a.panel.grid.min&&(a.panel.grid.leftMin=a.panel.grid.min,delete a.panel.grid.min),a.panel.grid.max&&(a.panel.grid.leftMax=a.panel.grid.max,delete a.panel.grid.max),a.panel.y_format&&(a.panel.y_formats[0]=a.panel.y_format,delete a.panel.y_format),a.panel.y2_format&&(a.panel.y_formats[1]=a.panel.y2_format,delete a.panel.y2_format),a.init=function(){a.initBaseController(this,a),a.fullscreen=!1,a.editor={index:1},a.editorTabs=d.pluck(a.panelMeta.fullEditorTabs,"title"),a.hiddenSeries={},a.datasources=h.listOptions(),a.setDatasource(a.panel.datasource),0===a.panel.targets.length&&a.panel.targets.push({})},a.setDatasource=function(b){return a.panel.datasource=b,a.datasource=h.get(b),a.datasource?void a.get_data():void(a.panel.error="Cannot find datasource "+b)},a.removeTarget=function(b){a.panel.targets=d.without(a.panel.targets,b),a.get_data()},a.updateTimeRange=function(){a.range=this.filter.timeRange(),a.rangeUnparsed=this.filter.timeRange(!1),a.resolution=Math.ceil(c(window).width()*(a.panel.span/12)),a.interval="10m",a.range&&(a.interval=e.secondsToHms(e.calculate_interval(a.range.from,a.range.to,a.resolution,0)/1e3))},a.get_data=function(){delete a.panel.error,a.panelMeta.loading=!0,a.updateTimeRange();var b={range:a.rangeUnparsed,interval:a.interval,targets:a.panel.targets,format:"png"===a.panel.renderer?"png":"json",maxDataPoints:a.resolution,datasource:a.panel.datasource};return a.annotationsPromise=j.getAnnotations(a.filter,a.rangeUnparsed),a.datasource.query(a.filter,b).then(a.dataHandler).then(null,function(b){a.panelMeta.loading=!1,a.panel.error=b.message||"Timeseries data request error",a.inspector.error=b,a.render([])})},a.dataHandler=function(b){if(a.panelMeta.loading=!1,a.legend=[],d.isString(b))return void a.render(b);a.datapointsWarning=!1,a.datapointsCount=0,a.datapointsOutside=!1;var c=d.map(b.data,a.seriesHandler);a.datapointsWarning=a.datapointsCount||!a.datapointsOutside,a.annotationsPromise.then(function(b){c.annotations=b,a.render(c)},function(){a.render(c)})},a.seriesHandler=function(b,c){var d=b.datapoints,e=b.target,h=a.panel.aliasColors[e]||a.colors[c],i=a.panel.aliasYAxis[e]||1,j={alias:e,color:h,enable:!0,yaxis:i};a.legend.push(j);var k=new g.ZeroFilled({datapoints:d,info:j});if(d&&d.length>0){var l=f.utc(1e3*d[d.length-1][1]),m=f.utc(a.range.from);-1e4>l-m&&(a.datapointsOutside=!0),a.datapointsCount+=d.length}return k},a.add_target=function(){a.panel.targets.push({target:""})},a.otherPanelInFullscreenMode=function(){return b.fullscreen&&!a.fullscreen},a.render=function(b){a.$emit("render",b)},a.changeSeriesColor=function(b,c){b.color=c,a.panel.aliasColors[b.alias]=b.color,a.render()},a.toggleSeries=function(b,c){a.hiddenSeries[b.alias]?delete a.hiddenSeries[b.alias]:a.hiddenSeries[b.alias]=!0,(c.ctrlKey||c.metaKey||c.shiftKey)&&a.toggleSeriesExclusiveMode(b),a.$emit("toggleLegend",a.legend)},a.toggleSeriesExclusiveMode=function(b){var c=a.hiddenSeries;c[b.alias]&&delete c[b.alias];var e=d.every(a.legend,function(a){return a.alias===b.alias?!0:c[a.alias]});e?d.each(a.legend,function(b){delete a.hiddenSeries[b.alias]}):d.each(a.legend,function(c){c.alias!==b.alias&&(a.hiddenSeries[c.alias]=!0)})},a.toggleYAxis=function(b){b.yaxis=2===b.yaxis?1:2,a.panel.aliasYAxis[b.alias]=b.yaxis,a.render()},a.toggleGridMinMax=function(b){a.panel.grid[b]=d.toggle(a.panel.grid[b],null,0),a.render()}}])}),define("text!panels/graph/module.html",[],function(){return'
    No datapointsCan be caused by timezone mismatch between browser and graphite server Datapoints outside time rangeCan be caused by timezone mismatch between browser and graphite server
    '});var Showdown={extensions:{}},forEach=Showdown.forEach=function(a,b){if("function"==typeof a.forEach)a.forEach(b);else{var c,d=a.length;for(c=0;d>c;c++)b(a[c],c,a)}},stdExtName=function(a){return a.replace(/[_-]||\s/g,"").toLowerCase()};Showdown.converter=function(a){var b,c,d,e=0,f=[],g=[];if("undefind"!=typeof module&&"undefined"!=typeof exports&&"undefind"!=typeof require){var h=require("fs");if(h){var i=h.readdirSync((__dirname||".")+"/extensions").filter(function(a){return~a.indexOf(".js")}).map(function(a){return a.replace(/\.js$/,"")});Showdown.forEach(i,function(a){var b=stdExtName(a);Showdown.extensions[b]=require("./extensions/"+a)})}}if(this.makeHtml=function(a){return b={},c={},d=[],a=a.replace(/~/g,"~T"),a=a.replace(/\$/g,"~D"),a=a.replace(/\r\n/g,"\n"),a=a.replace(/\r/g,"\n"),a="\n\n"+a+"\n\n",a=M(a),a=a.replace(/^[ \t]+$/gm,""),Showdown.forEach(f,function(b){a=l(b,a)}),a=z(a),a=n(a),a=m(a),a=p(a),a=K(a),a=a.replace(/~D/g,"$$"),a=a.replace(/~T/g,"~"),Showdown.forEach(g,function(b){a=l(b,a)}),a},a&&a.extensions){var j=this;Showdown.forEach(a.extensions,function(a){if("string"==typeof a&&(a=Showdown.extensions[stdExtName(a)]),"function"!=typeof a)throw"Extension '"+a+"' could not be loaded. It was either not found or is not a valid extension.";Showdown.forEach(a(j),function(a){a.type?"language"===a.type||"lang"===a.type?f.push(a):("output"===a.type||"html"===a.type)&&g.push(a):g.push(a)})})}var k,l=function(a,b){if(a.regex){var c=new RegExp(a.regex,"g");return b.replace(c,a.replace)}return a.filter?a.filter(b):void 0},m=function(a){return a+="~0",a=a.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*?[ \t]*\n?[ \t]*(?:(\n*)["(](.+?)[")][ \t]*)?(?:\n+|(?=~0))/gm,function(a,d,e,f,g){return d=d.toLowerCase(),b[d]=G(e),f?f+g:(g&&(c[d]=g.replace(/"/g,""")),"")}),a=a.replace(/~0/,"")},n=function(a){a=a.replace(/\n/g,"\n\n");return a=a.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\b[^\r]*?\n<\/\2>[ \t]*(?=\n+))/gm,o),a=a.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|style|section|header|footer|nav|article|aside)\b[^\r]*?<\/\2>[ \t]*(?=\n+)\n)/gm,o),a=a.replace(/(\n[ ]{0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,o),a=a.replace(/(\n\n[ ]{0,3}[ \t]*(?=\n{2,}))/g,o),a=a.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,o),a=a.replace(/\n\n/g,"\n")},o=function(a,b){var c=b;return c=c.replace(/\n\n/g,"\n"),c=c.replace(/^\n/,""),c=c.replace(/\n+$/g,""),c="\n\n~K"+(d.push(c)-1)+"K\n\n"},p=function(a){a=w(a);var b=A("
    ");return a=a.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,b),a=a.replace(/^[ ]{0,2}([ ]?\-[ ]?){3,}[ \t]*$/gm,b),a=a.replace(/^[ ]{0,2}([ ]?\_[ ]?){3,}[ \t]*$/gm,b),a=x(a),a=y(a),a=E(a),a=n(a),a=F(a)},q=function(a){return a=B(a),a=r(a),a=H(a),a=u(a),a=s(a),a=I(a),a=G(a),a=D(a),a=a.replace(/ +\n/g,"
    \n")},r=function(a){var b=/(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|)/gi;return a=a.replace(b,function(a){var b=a.replace(/(.)<\/?code>(?=.)/g,"$1`");return b=N(b,"\\`*_")})},s=function(a){return a=a.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,t),a=a.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,t),a=a.replace(/(\[([^\[\]]+)\])()()()()()/g,t)},t=function(a,d,e,f,g,h,i,j){void 0==j&&(j="");var k=d,l=e,m=f.toLowerCase(),n=g,o=j;if(""==n)if(""==m&&(m=l.toLowerCase().replace(/ ?\n/g," ")),n="#"+m,void 0!=b[m])n=b[m],void 0!=c[m]&&(o=c[m]);else{if(!(k.search(/\(\s*\)$/m)>-1))return k;n=""}n=N(n,"*_");var p='"},u=function(a){return a=a.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,v),a=a.replace(/(!\[(.*?)\]\s?\([ \t]*()?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,v)},v=function(a,d,e,f,g,h,i,j){var k=d,l=e,m=f.toLowerCase(),n=g,o=j;if(o||(o=""),""==n){if(""==m&&(m=l.toLowerCase().replace(/ ?\n/g," ")),n="#"+m,void 0==b[m])return k;n=b[m],void 0!=c[m]&&(o=c[m])}l=l.replace(/"/g,"""),n=N(n,"*_");var p=''+l+''+q(c)+"")}),a=a.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm,function(a,c){return A('

    '+q(c)+"

    ")}),a=a.replace(/^(\#{1,6})[ \t]*(.+?)[ \t]*\#*\n+/gm,function(a,c,d){var e=c.length;return A("'+q(d)+"")})},x=function(a){a+="~0";var b=/^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm;return e?a=a.replace(b,function(a,b,c){var d=b,e=c.search(/[*+-]/g)>-1?"ul":"ol";d=d.replace(/\n{2,}/g,"\n\n\n");var f=k(d);return f=f.replace(/\s+$/,""),f="<"+e+">"+f+"\n"}):(b=/(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/g,a=a.replace(b,function(a,b,c,d){var e=b,f=c,g=d.search(/[*+-]/g)>-1?"ul":"ol",f=f.replace(/\n{2,}/g,"\n\n\n"),h=k(f);return h=e+"<"+g+">\n"+h+"\n"})),a=a.replace(/~0/,"")};k=function(a){return e++,a=a.replace(/\n{2,}$/,"\n"),a+="~0",a=a.replace(/(\n)?(^[ \t]*)([*+-]|\d+[.])[ \t]+([^\r]+?(\n{1,2}))(?=\n*(~0|\2([*+-]|\d+[.])[ \t]+))/gm,function(a,b,c,d,e){var f=e,g=b;return g||f.search(/\n{2,}/)>-1?f=p(L(f)):(f=x(L(f)),f=f.replace(/\n$/,""),f=q(f)),"
  • "+f+"
  • \n"}),a=a.replace(/~0/g,""),e--,a};var y=function(a){return a+="~0",a=a.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,function(a,b,c){var d=b,e=c;return d=C(L(d)),d=M(d),d=d.replace(/^\n+/g,""),d=d.replace(/\n+$/g,""),d="
    "+d+"\n
    ",A(d)+e}),a=a.replace(/~0/,"")},z=function(a){return a+="~0",a=a.replace(/(?:^|\n)```(.*)\n([\s\S]*?)\n```/g,function(a,b,c){var d=b,e=c;return e=C(e),e=M(e),e=e.replace(/^\n+/g,""),e=e.replace(/\n+$/g,""),e="
    "+e+"\n
    ",A(e)}),a=a.replace(/~0/,"")},A=function(a){return a=a.replace(/(^\n+|\n+$)/g,""),"\n\n~K"+(d.push(a)-1)+"K\n\n"},B=function(a){return a=a.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(a,b,c,d){var e=d;return e=e.replace(/^([ \t]*)/g,""),e=e.replace(/[ \t]*$/g,""),e=C(e),b+""+e+""})},C=function(a){return a=a.replace(/&/g,"&"),a=a.replace(//g,">"),a=N(a,"*_{}[]\\",!1)},D=function(a){return a=a.replace(/(\*\*|__)(?=\S)([^\r]*?\S[*_]*)\1/g,"$2"),a=a.replace(/(\*|_)(?=\S)([^\r]*?\S)\1/g,"$2")},E=function(a){return a=a.replace(/((^[ \t]*>[ \t]?.+\n(.+\n)*\n*)+)/gm,function(a,b){var c=b;return c=c.replace(/^[ \t]*>[ \t]?/gm,"~0"),c=c.replace(/~0/g,""),c=c.replace(/^[ \t]+$/gm,""),c=p(c),c=c.replace(/(^|\n)/g,"$1 "),c=c.replace(/(\s*
    [^\r]+?<\/pre>)/gm,function(a,b){var c=b;return c=c.replace(/^  /gm,"~0"),c=c.replace(/~0/g,"")}),A("
    \n"+c+"\n
    ")})},F=function(a){a=a.replace(/^\n+/g,""),a=a.replace(/\n+$/g,"");for(var b=a.split(/\n{2,}/g),c=[],e=b.length,f=0;e>f;f++){var g=b[f];g.search(/~K(\d+)K/g)>=0?c.push(g):g.search(/\S/)>=0&&(g=q(g),g=g.replace(/^([ \t]*)/g,"

    "),g+="

    ",c.push(g))}e=c.length;for(var f=0;e>f;f++)for(;c[f].search(/~K(\d+)K/)>=0;){var h=d[RegExp.$1];h=h.replace(/\$/g,"$$$$"),c[f]=c[f].replace(/~K\d+K/,h)}return c.join("\n\n")},G=function(a){return a=a.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&"),a=a.replace(/<(?![a-z\/?\$!])/gi,"<")},H=function(a){return a=a.replace(/\\(\\)/g,O),a=a.replace(/\\([`*_{}\[\]()>#+-.!])/g,O)},I=function(a){return a=a.replace(/<((https?|ftp|dict):[^'">\s]+)>/gi,'
    $1'),a=a.replace(/<(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,function(a,b){return J(K(b))})},J=function(a){var b=[function(a){return"&#"+a.charCodeAt(0)+";"},function(a){return"&#x"+a.charCodeAt(0).toString(16)+";"},function(a){return a}];return a="mailto:"+a,a=a.replace(/./g,function(a){if("@"==a)a=b[Math.floor(2*Math.random())](a);else if(":"!=a){var c=Math.random();a=c>.9?b[2](a):c>.45?b[1](a):b[0](a)}return a}),a=''+a+"",a=a.replace(/">.+:/g,'">')},K=function(a){return a=a.replace(/~E(\d+)E/g,function(a,b){var c=parseInt(b);return String.fromCharCode(c)})},L=function(a){return a=a.replace(/^(\t|[ ]{1,4})/gm,"~0"),a=a.replace(/~0/g,"")},M=function(a){return a=a.replace(/\t(?=\t)/g," "),a=a.replace(/\t/g,"~A~B"),a=a.replace(/~B(.+?)~A/g,function(a,b){for(var c=b,d=4-c.length%4,e=0;d>e;e++)c+=" ";return c}),a=a.replace(/~A/g," "),a=a.replace(/~B/g,"")},N=function(a,b,c){var d="(["+b.replace(/([\[\]\\])/g,"\\$1")+"])";c&&(d="\\\\"+d);var e=new RegExp(d,"g");return a=a.replace(e,O)},O=function(a,b){var c=b.charCodeAt(0);return"~E"+c+"E"}},"undefined"!=typeof module&&(module.exports=Showdown),"function"==typeof define&&define.amd&&define("panels/text/lib/showdown",[],function(){return Showdown}),define("panels/text/module",["angular","app","underscore","require"],function(a,b,c,d){var e=a.module("kibana.panels.text",[]);b.useModule(e),e.controller("text",["$scope",function(a){a.panelMeta={description:"A static text panel that can use plain text, markdown, or (sanitized) HTML"};var b={mode:"markdown",content:"",style:{}};c.defaults(a.panel,b),a.init=function(){a.initBaseController(this,a),a.ready=!1},a.render=function(){a.$emit("render")},a.openEditor=function(){console.log("scope id",a.$id)}}]),e.directive("markdown",function(){return{restrict:"E",link:function(a,b){function c(){d(["./lib/showdown"],function(c){a.ready=!0;var d=new c.converter,e=a.panel.content.replace(/&/g,"&").replace(/>/g,">").replace(/")}}),e.filter("striphtml",function(){return function(a){return a.replace(/&/g,"&").replace(/>/g,">").replace(/{{panel.content}}

    '}),define("panels/timepicker/module",["angular","app","underscore","moment","kbn"],function(a,b,c,d,e){var f=a.module("kibana.panels.timepicker",[]);b.useModule(f),f.controller("timepicker",["$scope","$modal","$q",function(a,b,f){a.panelMeta={status:"Stable",description:"A panel for controlling the time range filters. If you have time based data, or if you're using time stamped indices, you need one of these"};var g={status:"Stable",time_options:["5m","15m","1h","6h","12h","24h","2d","7d","30d"],refresh_intervals:["5s","10s","30s","1m","5m","15m","30m","1h","2h","1d"]},h=null;c.defaults(a.panel,g),a.patterns={date:/^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/,hour:/^([01]?[0-9]|2[0-3])$/,minute:/^[0-5][0-9]$/,second:/^[0-5][0-9]$/,millisecond:/^[0-9]*$/},a.$on("refresh",function(){a.init()}),a.init=function(){var b=this.filter.timeRange(!0);b&&(a.panel.now="now"===this.filter.timeRange(!1).to?!0:!1,a.time=k(b.from,b.to))},a.customTime=function(){h||(h=b({template:"./app/panels/timepicker/custom.html",persist:!0,show:!1,scope:a,keyboard:!1})),a.input.$setValidity("dummy",!0),a.temptime=j(a.time),a.temptime.from.date.setHours(1,0,0,0),a.temptime.to.date.setHours(1,0,0,0),f.when(h).then(function(a){a.modal("show")})},a.validate=function(b){a.input.$setValidity("dummy",!0);var c=m(b.from.date),d=m(b.to.date),e=b;return a.input.$valid?(c.setHours(e.from.hour,e.from.minute,e.from.second,e.from.millisecond),d.setHours(e.to.hour,e.to.minute,e.to.second,e.to.millisecond),isNaN(c.getTime())||isNaN(d.getTime())||c.getTime()>=d.getTime()?(a.input.$setValidity("dummy",!1),!1):{from:c,to:d}):!1},a.setNow=function(){a.time.to=l(new Date)},a.setAbsoluteTimeFilter=function(b){var d=c.clone(b);a.panel.now&&(d.to="now"),a.panel.filter_id=a.filter.setTime(d),a.time=k(b.from,b.to)},a.setRelativeFilter=function(b){a.panel.now=!0;var c={from:"now-"+b,to:"now"};this.filter.setTime(c),a.time=k(e.parseDate(c.from),new Date)};var i=function(a,b,c){return c=c||"0",a=a.toString(),a.length>=b?a:new Array(b-a.length+1).join(c)+a},j=function(a){var b={from:c.clone(a.from),to:c.clone(a.to)};return b.from.date=new Date(b.from.date),b.to.date=new Date(b.to.date),b},k=function(a,b){return{from:l(a),to:l(b)}},l=function(a){return{date:new Date(a),hour:i(a.getHours(),2),minute:i(a.getMinutes(),2),second:i(a.getSeconds(),2),millisecond:i(a.getMilliseconds(),3)}},m=function(a){return a=d(a).clone().toDate(),d(new Date(a.getTime()+6e4*a.getTimezoneOffset())).toDate()}}])}),define("text!panels/timepicker/module.html",[],function(){return''}); diff --git a/app/dash/app/app.js b/app/dash/app/app.js deleted file mode 100644 index 480f0d4..0000000 --- a/app/dash/app/app.js +++ /dev/null @@ -1,28 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -var requirejs,require,define;!function(global){function isFunction(a){return"[object Function]"===ostring.call(a)}function isArray(a){return"[object Array]"===ostring.call(a)}function each(a,b){if(a){var c;for(c=0;c-1&&(!a[c]||!b(a[c],c,a));c-=1);}}function hasProp(a,b){return hasOwn.call(a,b)}function getOwn(a,b){return hasProp(a,b)&&a[b]}function eachProp(a,b){var c;for(c in a)if(hasProp(a,c)&&b(a[c],c))break}function mixin(a,b,c,d){return b&&eachProp(b,function(b,e){(c||!hasProp(a,e))&&(d&&"string"!=typeof b?(a[e]||(a[e]={}),mixin(a[e],b,c,d)):a[e]=b)}),a}function bind(a,b){return function(){return b.apply(a,arguments)}}function scripts(){return document.getElementsByTagName("script")}function defaultOnError(a){throw a}function getGlobal(a){if(!a)return a;var b=global;return each(a.split("."),function(a){b=b[a]}),b}function makeError(a,b,c,d){var e=new Error(b+"\nhttp://requirejs.org/docs/errors.html#"+a);return e.requireType=a,e.requireModules=d,c&&(e.originalError=c),e}function newContext(a){function b(a){var b,c;for(b=0;a[b];b+=1)if(c=a[b],"."===c)a.splice(b,1),b-=1;else if(".."===c){if(1===b&&(".."===a[2]||".."===a[0]))break;b>0&&(a.splice(b-1,2),b-=2)}}function c(a,c,d){var e,f,g,h,i,j,k,l,m,n,o,p=c&&c.split("/"),q=p,r=x.map,s=r&&r["*"];if(a&&"."===a.charAt(0)&&(c?(q=getOwn(x.pkgs,c)?p=[c]:p.slice(0,p.length-1),a=q.concat(a.split("/")),b(a),f=getOwn(x.pkgs,e=a[0]),a=a.join("/"),f&&a===e+"/"+f.main&&(a=e)):0===a.indexOf("./")&&(a=a.substring(2))),d&&r&&(p||s)){for(h=a.split("/"),i=h.length;i>0;i-=1){if(k=h.slice(0,i).join("/"),p)for(j=p.length;j>0;j-=1)if(g=getOwn(r,p.slice(0,j).join("/")),g&&(g=getOwn(g,k))){l=g,m=i;break}if(l)break;!n&&s&&getOwn(s,k)&&(n=getOwn(s,k),o=i)}!l&&n&&(l=n,m=o),l&&(h.splice(0,m,l),a=h.join("/"))}return a}function d(a){isBrowser&&each(scripts(),function(b){return b.getAttribute("data-requiremodule")===a&&b.getAttribute("data-requirecontext")===u.contextName?(b.parentNode.removeChild(b),!0):void 0})}function e(a){var b=getOwn(x.paths,a);return b&&isArray(b)&&b.length>1?(d(a),b.shift(),u.require.undef(a),u.require([a]),!0):void 0}function f(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function g(a,b,d,e){var g,h,i,j,k=null,l=b?b.name:null,m=a,n=!0,o="";return a||(n=!1,a="_@r"+(E+=1)),j=f(a),k=j[0],a=j[1],k&&(k=c(k,l,e),h=getOwn(C,k)),a&&(k?o=h&&h.normalize?h.normalize(a,function(a){return c(a,l,e)}):c(a,l,e):(o=c(a,l,e),j=f(o),k=j[0],o=j[1],d=!0,g=u.nameToUrl(o))),i=!k||h||d?"":"_unnormalized"+(F+=1),{prefix:k,name:o,parentMap:b,unnormalized:!!i,url:g,originalName:m,isDefine:n,id:(k?k+"!"+o:o)+i}}function h(a){var b=a.id,c=getOwn(y,b);return c||(c=y[b]=new u.Module(a)),c}function i(a,b,c){var d=a.id,e=getOwn(y,d);!hasProp(C,d)||e&&!e.defineEmitComplete?(e=h(a),e.error&&"error"===b?c(e.error):e.on(b,c)):"defined"===b&&c(C[d])}function j(a,b){var c=a.requireModules,d=!1;b?b(a):(each(c,function(b){var c=getOwn(y,b);c&&(c.error=a,c.events.error&&(d=!0,c.emit("error",a)))}),d||req.onError(a))}function k(){globalDefQueue.length&&(apsp.apply(B,[B.length-1,0].concat(globalDefQueue)),globalDefQueue=[])}function l(a){delete y[a],delete z[a]}function m(a,b,c){var d=a.map.id;a.error?a.emit("error",a.error):(b[d]=!0,each(a.depMaps,function(d,e){var f=d.id,g=getOwn(y,f);!g||a.depMatched[e]||c[f]||(getOwn(b,f)?(a.defineDep(e,C[f]),a.check()):m(g,b,c))}),c[d]=!0)}function n(){var a,b,c,f,g=1e3*x.waitSeconds,h=g&&u.startTime+g<(new Date).getTime(),i=[],k=[],l=!1,o=!0;if(!s){if(s=!0,eachProp(z,function(c){if(a=c.map,b=a.id,c.enabled&&(a.isDefine||k.push(c),!c.error))if(!c.inited&&h)e(b)?(f=!0,l=!0):(i.push(b),d(b));else if(!c.inited&&c.fetched&&a.isDefine&&(l=!0,!a.prefix))return o=!1}),h&&i.length)return c=makeError("timeout","Load timeout for modules: "+i,null,i),c.contextName=u.contextName,j(c);o&&each(k,function(a){m(a,{},{})}),h&&!f||!l||!isBrowser&&!isWebWorker||w||(w=setTimeout(function(){w=0,n()},50)),s=!1}}function o(a){hasProp(C,a[0])||h(g(a[0],null,!0)).init(a[1],a[2])}function p(a,b,c,d){a.detachEvent&&!isOpera?d&&a.detachEvent(d,b):a.removeEventListener(c,b,!1)}function q(a){var b=a.currentTarget||a.srcElement;return p(b,u.onScriptLoad,"load","onreadystatechange"),p(b,u.onScriptError,"error"),{node:b,id:b&&b.getAttribute("data-requiremodule")}}function r(){var a;for(k();B.length;){if(a=B.shift(),null===a[0])return j(makeError("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));o(a)}}var s,t,u,v,w,x={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{},config:{}},y={},z={},A={},B=[],C={},D={},E=1,F=1;return v={require:function(a){return a.require?a.require:a.require=u.makeRequire(a.map)},exports:function(a){return a.usingExports=!0,a.map.isDefine?a.exports?a.exports:a.exports=C[a.map.id]={}:void 0},module:function(a){return a.module?a.module:a.module={id:a.map.id,uri:a.map.url,config:function(){var b,c=getOwn(x.pkgs,a.map.id);return b=c?getOwn(x.config,a.map.id+"/"+c.main):getOwn(x.config,a.map.id),b||{}},exports:C[a.map.id]}}},t=function(a){this.events=getOwn(A,a.id)||{},this.map=a,this.shim=getOwn(x.shim,a.id),this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},t.prototype={init:function(a,b,c,d){d=d||{},this.inited||(this.factory=b,c?this.on("error",c):this.events.error&&(c=bind(this,function(a){this.emit("error",a)})),this.depMaps=a&&a.slice(0),this.errback=c,this.inited=!0,this.ignore=d.ignore,d.enabled||this.enabled?this.enable():this.check())},defineDep:function(a,b){this.depMatched[a]||(this.depMatched[a]=!0,this.depCount-=1,this.depExports[a]=b)},fetch:function(){if(!this.fetched){this.fetched=!0,u.startTime=(new Date).getTime();var a=this.map;return this.shim?void u.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],bind(this,function(){return a.prefix?this.callPlugin():this.load()})):a.prefix?this.callPlugin():this.load()}},load:function(){var a=this.map.url;D[a]||(D[a]=!0,u.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,b,c=this.map.id,d=this.depExports,e=this.exports,f=this.factory;if(this.inited){if(this.error)this.emit("error",this.error);else if(!this.defining){if(this.defining=!0,this.depCount<1&&!this.defined){if(isFunction(f)){if(this.events.error&&this.map.isDefine||req.onError!==defaultOnError)try{e=u.execCb(c,f,d,e)}catch(g){a=g}else e=u.execCb(c,f,d,e);if(this.map.isDefine&&(b=this.module,b&&void 0!==b.exports&&b.exports!==this.exports?e=b.exports:void 0===e&&this.usingExports&&(e=this.exports)),a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",j(this.error=a)}else e=f;this.exports=e,this.map.isDefine&&!this.ignore&&(C[c]=e,req.onResourceLoad&&req.onResourceLoad(u,this.map,this.depMaps)),l(c),this.defined=!0}this.defining=!1,this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var a=this.map,b=a.id,d=g(a.prefix);this.depMaps.push(d),i(d,"defined",bind(this,function(d){var e,f,k,m=this.map.name,n=this.map.parentMap?this.map.parentMap.name:null,o=u.makeRequire(a.parentMap,{enableBuildCallback:!0});return this.map.unnormalized?(d.normalize&&(m=d.normalize(m,function(a){return c(a,n,!0)})||""),f=g(a.prefix+"!"+m,this.map.parentMap),i(f,"defined",bind(this,function(a){this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),k=getOwn(y,f.id),void(k&&(this.depMaps.push(f),this.events.error&&k.on("error",bind(this,function(a){this.emit("error",a)})),k.enable()))):(e=bind(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),e.error=bind(this,function(a){this.inited=!0,this.error=a,a.requireModules=[b],eachProp(y,function(a){0===a.map.id.indexOf(b+"_unnormalized")&&l(a.map.id)}),j(a)}),e.fromText=bind(this,function(c,d){var f=a.name,i=g(f),k=useInteractive;d&&(c=d),k&&(useInteractive=!1),h(i),hasProp(x.config,b)&&(x.config[f]=x.config[b]);try{req.exec(c)}catch(l){return j(makeError("fromtexteval","fromText eval for "+b+" failed: "+l,l,[b]))}k&&(useInteractive=!0),this.depMaps.push(i),u.completeLoad(f),o([f],e)}),void d.load(a.name,o,e,x))})),u.enable(d,this),this.pluginMaps[d.id]=d},enable:function(){z[this.map.id]=this,this.enabled=!0,this.enabling=!0,each(this.depMaps,bind(this,function(a,b){var c,d,e;if("string"==typeof a){if(a=g(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap),this.depMaps[b]=a,e=getOwn(v,a.id))return void(this.depExports[b]=e(this));this.depCount+=1,i(a,"defined",bind(this,function(a){this.defineDep(b,a),this.check()})),this.errback&&i(a,"error",bind(this,this.errback))}c=a.id,d=y[c],hasProp(v,c)||!d||d.enabled||u.enable(a,this)})),eachProp(this.pluginMaps,bind(this,function(a){var b=getOwn(y,a.id);b&&!b.enabled&&u.enable(a,this)})),this.enabling=!1,this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]),c.push(b)},emit:function(a,b){each(this.events[a],function(a){a(b)}),"error"===a&&delete this.events[a]}},u={config:x,contextName:a,registry:y,defined:C,urlFetched:D,defQueue:B,Module:t,makeModuleMap:g,nextTick:req.nextTick,onError:j,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");var b=x.pkgs,c=x.shim,d={paths:!0,config:!0,map:!0};eachProp(a,function(a,b){d[b]?"map"===b?(x.map||(x.map={}),mixin(x[b],a,!0,!0)):mixin(x[b],a,!0):x[b]=a}),a.shim&&(eachProp(a.shim,function(a,b){isArray(a)&&(a={deps:a}),!a.exports&&!a.init||a.exportsFn||(a.exportsFn=u.makeShimExports(a)),c[b]=a}),x.shim=c),a.packages&&(each(a.packages,function(a){var c;a="string"==typeof a?{name:a}:a,c=a.location,b[a.name]={name:a.name,location:c||a.name,main:(a.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}}),x.pkgs=b),eachProp(y,function(a,b){a.inited||a.map.unnormalized||(a.map=g(b))}),(a.deps||a.callback)&&u.require(a.deps||[],a.callback)},makeShimExports:function(a){function b(){var b;return a.init&&(b=a.init.apply(global,arguments)),b||a.exports&&getGlobal(a.exports)}return b},makeRequire:function(b,d){function e(c,f,i){var k,l,m;return d.enableBuildCallback&&f&&isFunction(f)&&(f.__requireJsBuild=!0),"string"==typeof c?isFunction(f)?j(makeError("requireargs","Invalid require call"),i):b&&hasProp(v,c)?v[c](y[b.id]):req.get?req.get(u,c,b,e):(l=g(c,b,!1,!0),k=l.id,hasProp(C,k)?C[k]:j(makeError("notloaded",'Module name "'+k+'" has not been loaded yet for context: '+a+(b?"":". Use require([])")))):(r(),u.nextTick(function(){r(),m=h(g(null,b)),m.skipMap=d.skipMap,m.init(c,f,i,{enabled:!0}),n()}),e)}return d=d||{},mixin(e,{isBrowser:isBrowser,toUrl:function(a){var d,e=a.lastIndexOf("."),f=a.split("/")[0],g="."===f||".."===f;return-1!==e&&(!g||e>1)&&(d=a.substring(e,a.length),a=a.substring(0,e)),u.nameToUrl(c(a,b&&b.id,!0),d,!0)},defined:function(a){return hasProp(C,g(a,b,!1,!0).id)},specified:function(a){return a=g(a,b,!1,!0).id,hasProp(C,a)||hasProp(y,a)}}),b||(e.undef=function(a){k();var c=g(a,b,!0),d=getOwn(y,a);delete C[a],delete D[c.url],delete A[a],d&&(d.events.defined&&(A[a]=d.events),l(a))}),e},enable:function(a){var b=getOwn(y,a.id);b&&h(a).enable()},completeLoad:function(a){var b,c,d,f=getOwn(x.shim,a)||{},g=f.exports;for(k();B.length;){if(c=B.shift(),null===c[0]){if(c[0]=a,b)break;b=!0}else c[0]===a&&(b=!0);o(c)}if(d=getOwn(y,a),!b&&!hasProp(C,a)&&d&&!d.inited){if(!(!x.enforceDefine||g&&getGlobal(g)))return e(a)?void 0:j(makeError("nodefine","No define call for "+a,null,[a]));o([a,f.deps||[],f.exportsFn])}n()},nameToUrl:function(a,b,c){var d,e,f,g,h,i,j,k,l;if(req.jsExtRegExp.test(a))k=a+(b||"");else{for(d=x.paths,e=x.pkgs,h=a.split("/"),i=h.length;i>0;i-=1){if(j=h.slice(0,i).join("/"),f=getOwn(e,j),l=getOwn(d,j)){isArray(l)&&(l=l[0]),h.splice(0,i,l);break}if(f){g=a===f.name?f.location+"/"+f.main:f.location,h.splice(0,i,g);break}}k=h.join("/"),k+=b||(/\?/.test(k)||c?"":".js"),k=("/"===k.charAt(0)||k.match(/^[\w\+\.\-]+:/)?"":x.baseUrl)+k}return x.urlArgs?k+((-1===k.indexOf("?")?"?":"&")+x.urlArgs):k},load:function(a,b){req.load(u,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if("load"===a.type||readyRegExp.test((a.currentTarget||a.srcElement).readyState)){interactiveScript=null;var b=q(a);u.completeLoad(b.id)}},onScriptError:function(a){var b=q(a);return e(b.id)?void 0:j(makeError("scripterror","Script error for: "+b.id,a,[b.id]))}},u.require=u.makeRequire(),u}function getInteractiveScript(){return interactiveScript&&"interactive"===interactiveScript.readyState?interactiveScript:(eachReverse(scripts(),function(a){return"interactive"===a.readyState?interactiveScript=a:void 0}),interactiveScript)}var req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath,version="2.1.8",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,op=Object.prototype,ostring=op.toString,hasOwn=op.hasOwnProperty,ap=Array.prototype,apsp=ap.splice,isBrowser=!("undefined"==typeof window||!navigator||!window.document),isWebWorker=!isBrowser&&"undefined"!=typeof importScripts,readyRegExp=isBrowser&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),contexts={},cfg={},globalDefQueue=[],useInteractive=!1;if("undefined"==typeof define){if("undefined"!=typeof requirejs){if(isFunction(requirejs))return;cfg=requirejs,requirejs=void 0}"undefined"==typeof require||isFunction(require)||(cfg=require,require=void 0),req=requirejs=function(a,b,c,d){var e,f,g=defContextName;return isArray(a)||"string"==typeof a||(f=a,isArray(b)?(a=b,b=c,c=d):a=[]),f&&f.context&&(g=f.context),e=getOwn(contexts,g),e||(e=contexts[g]=req.s.newContext(g)),f&&e.configure(f),e.require(a,b,c)},req.config=function(a){return req(a)},req.nextTick="undefined"!=typeof setTimeout?function(a){setTimeout(a,4)}:function(a){a()},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),each(["toUrl","undef","defined","specified"],function(a){req[a]=function(){var b=contexts[defContextName];return b.require[a].apply(b,arguments)}}),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=defaultOnError,req.createNode=function(a){var b=a.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");return b.type=a.scriptType||"text/javascript",b.charset="utf-8",b.async=!0,b},req.load=function(a,b,c){var d,e=a&&a.config||{};if(isBrowser)return d=req.createNode(e,b,c),d.setAttribute("data-requirecontext",a.contextName),d.setAttribute("data-requiremodule",b),!d.attachEvent||d.attachEvent.toString&&d.attachEvent.toString().indexOf("[native code")<0||isOpera?(d.addEventListener("load",a.onScriptLoad,!1),d.addEventListener("error",a.onScriptError,!1)):(useInteractive=!0,d.attachEvent("onreadystatechange",a.onScriptLoad)),d.src=c,currentlyAddingScript=d,baseElement?head.insertBefore(d,baseElement):head.appendChild(d),currentlyAddingScript=null,d;if(isWebWorker)try{importScripts(c),a.completeLoad(b)}catch(f){a.onError(makeError("importscripts","importScripts failed for "+b+" at "+c,f,[b]))}},isBrowser&&eachReverse(scripts(),function(a){return head||(head=a.parentNode),dataMain=a.getAttribute("data-main"),dataMain?(mainScript=dataMain,cfg.baseUrl||(src=mainScript.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath),mainScript=mainScript.replace(jsSuffixRegExp,""),req.jsExtRegExp.test(mainScript)&&(mainScript=dataMain),cfg.deps=cfg.deps?cfg.deps.concat(mainScript):[mainScript],!0):void 0}),define=function(a,b,c){var d,e;"string"!=typeof a&&(c=b,b=a,a=null),isArray(b)||(c=b,b=null),!b&&isFunction(c)&&(b=[],c.length&&(c.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(a,c){b.push(c)}),b=(1===c.length?["require"]:["require","exports","module"]).concat(b))),useInteractive&&(d=currentlyAddingScript||getInteractiveScript(),d&&(a||(a=d.getAttribute("data-requiremodule")),e=contexts[d.getAttribute("data-requirecontext")])),(e?e.defQueue:globalDefQueue).push([a,b,c])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)}}(this),require.config({baseUrl:"app",paths:{config:["../config","../config.sample"],settings:"components/settings",kbn:"components/kbn",css:"../vendor/require/css",text:"../vendor/require/text",moment:"../vendor/moment",filesaver:"../vendor/filesaver",angular:"../vendor/angular/angular","angular-dragdrop":"../vendor/angular/angular-dragdrop","angular-strap":"../vendor/angular/angular-strap","angular-sanitize":"../vendor/angular/angular-sanitize",timepicker:"../vendor/angular/timepicker",datepicker:"../vendor/angular/datepicker",bindonce:"../vendor/angular/bindonce",crypto:"../vendor/crypto.min",spectrum:"../vendor/spectrum",underscore:"components/underscore.extended","underscore-src":"../vendor/underscore",bootstrap:"../vendor/bootstrap/bootstrap",jquery:"../vendor/jquery/jquery-1.8.0","jquery-ui":"../vendor/jquery/jquery-ui-1.10.3","extend-jquery":"components/extend-jquery","jquery.flot":"../vendor/jquery/jquery.flot","jquery.flot.pie":"../vendor/jquery/jquery.flot.pie","jquery.flot.events":"../vendor/jquery/jquery.flot.events","jquery.flot.selection":"../vendor/jquery/jquery.flot.selection","jquery.flot.stack":"../vendor/jquery/jquery.flot.stack","jquery.flot.stackpercent":"../vendor/jquery/jquery.flot.stackpercent","jquery.flot.time":"../vendor/jquery/jquery.flot.time","jquery.flot.byte":"../vendor/jquery/jquery.flot.byte",modernizr:"../vendor/modernizr-2.6.1",elasticjs:"../vendor/elasticjs/elastic-angular-client","bootstrap-tagsinput":"../vendor/tagsinput/bootstrap-tagsinput"},shim:{underscore:{exports:"_"},spectrum:{deps:["jquery"]},crypto:{exports:"Crypto"},angular:{deps:["jquery","config"],exports:"angular"},bootstrap:{deps:["jquery"]},modernizr:{exports:"Modernizr"},jquery:{exports:"jQuery"},"jquery-ui":["jquery"],"jquery.flot":["jquery"],"jquery.flot.byte":["jquery","jquery.flot"],"jquery.flot.pie":["jquery","jquery.flot"],"jquery.flot.events":["jquery","jquery.flot"],"jquery.flot.selection":["jquery","jquery.flot"],"jquery.flot.stack":["jquery","jquery.flot"],"jquery.flot.stackpercent":["jquery","jquery.flot"],"jquery.flot.time":["jquery","jquery.flot"],"angular-sanitize":["angular"],"angular-cookies":["angular"],"angular-dragdrop":["jquery","jquery-ui","angular"],"angular-loader":["angular"],"angular-mocks":["angular"],"angular-resource":["angular"],"angular-route":["angular"],"angular-touch":["angular"],bindonce:["angular"],"angular-strap":["angular","bootstrap","timepicker","datepicker"],timepicker:["jquery","bootstrap"],datepicker:["jquery","bootstrap"],elasticjs:["angular","../vendor/elasticjs/elastic"],"bootstrap-tagsinput":["jquery"]},waitSeconds:60}),function(a,b){function c(a){var b=ob[a]={};return $.each(a.split(bb),function(a,c){b[c]=!0}),b}function d(a,c,d){if(d===b&&1===a.nodeType){var e="data-"+c.replace(qb,"-$1").toLowerCase();if(d=a.getAttribute(e),"string"==typeof d){try{d="true"===d?!0:"false"===d?!1:"null"===d?null:+d+""===d?+d:pb.test(d)?$.parseJSON(d):d}catch(f){}$.data(a,c,d)}else d=b}return d}function e(a){var b;for(b in a)if(("data"!==b||!$.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function f(){return!1}function g(){return!0}function h(a){return!a||!a.parentNode||11===a.parentNode.nodeType}function i(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}function j(a,b,c){if(b=b||0,$.isFunction(b))return $.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return $.grep(a,function(a){return a===b===c});if("string"==typeof b){var d=$.grep(a,function(a){return 1===a.nodeType});if(Kb.test(b))return $.filter(b,d,!c);b=$.filter(b,d)}return $.grep(a,function(a){return $.inArray(a,b)>=0===c})}function k(a){var b=Nb.split("|"),c=a.createDocumentFragment();if(c.createElement)for(;b.length;)c.createElement(b.pop());return c}function l(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function m(a,b){if(1===b.nodeType&&$.hasData(a)){var c,d,e,f=$._data(a),g=$._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)$.event.add(b,c,h[c][d])}g.data&&(g.data=$.extend({},g.data))}}function n(a,b){var c;1===b.nodeType&&(b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),$.support.html5Clone&&a.innerHTML&&!$.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&Xb.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.selected=a.defaultSelected:"input"===c||"textarea"===c?b.defaultValue=a.defaultValue:"script"===c&&b.text!==a.text&&(b.text=a.text),b.removeAttribute($.expando))}function o(a){return"undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName("*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll("*"):[]}function p(a){Xb.test(a.type)&&(a.defaultChecked=a.checked)}function q(a,b){if(b in a)return b;for(var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=qc.length;e--;)if(b=qc[e]+c,b in a)return b;return d}function r(a,b){return a=b||a,"none"===$.css(a,"display")||!$.contains(a.ownerDocument,a)}function s(a,b){for(var c,d,e=[],f=0,g=a.length;g>f;f++)c=a[f],c.style&&(e[f]=$._data(c,"olddisplay"),b?(!e[f]&&"none"===c.style.display&&(c.style.display=""),""===c.style.display&&r(c)&&(e[f]=$._data(c,"olddisplay",w(c.nodeName)))):(d=cc(c,"display"),!e[f]&&"none"!==d&&$._data(c,"olddisplay",d)));for(f=0;g>f;f++)c=a[f],c.style&&(b&&"none"!==c.style.display&&""!==c.style.display||(c.style.display=b?e[f]||"":"none"));return a}function t(a,b,c){var d=jc.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function u(a,b,c,d){for(var e=c===(d?"border":"content")?4:"width"===b?1:0,f=0;4>e;e+=2)"margin"===c&&(f+=$.css(a,c+pc[e],!0)),d?("content"===c&&(f-=parseFloat(cc(a,"padding"+pc[e]))||0),"margin"!==c&&(f-=parseFloat(cc(a,"border"+pc[e]+"Width"))||0)):(f+=parseFloat(cc(a,"padding"+pc[e]))||0,"padding"!==c&&(f+=parseFloat(cc(a,"border"+pc[e]+"Width"))||0));return f}function v(a,b,c){var d="width"===b?a.offsetWidth:a.offsetHeight,e=!0,f=$.support.boxSizing&&"border-box"===$.css(a,"boxSizing");if(0>=d){if(d=cc(a,b),(0>d||null==d)&&(d=a.style[b]),kc.test(d))return d;e=f&&($.support.boxSizingReliable||d===a.style[b]),d=parseFloat(d)||0}return d+u(a,b,c||(f?"border":"content"),e)+"px"}function w(a){if(mc[a])return mc[a];var b=$("<"+a+">").appendTo(P.body),c=b.css("display");return b.remove(),("none"===c||""===c)&&(dc=P.body.appendChild(dc||$.extend(P.createElement("iframe"),{frameBorder:0,width:0,height:0})),ec&&dc.createElement||(ec=(dc.contentWindow||dc.contentDocument).document,ec.write(""),ec.close()),b=ec.body.appendChild(ec.createElement(a)),c=cc(b,"display"),P.body.removeChild(dc)),mc[a]=c,c}function x(a,b,c,d){var e;if($.isArray(b))$.each(b,function(b,e){c||tc.test(a)?d(a,e):x(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==$.type(b))d(a,b);else for(e in b)x(a+"["+e+"]",b[e],c,d)}function y(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(bb),h=0,i=g.length;if($.isFunction(c))for(;i>h;h++)d=g[h],f=/^\+/.test(d),f&&(d=d.substr(1)||"*"),e=a[d]=a[d]||[],e[f?"unshift":"push"](c)}}function z(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;for(var h,i=a[f],j=0,k=i?i.length:0,l=a===Jc;k>j&&(l||!h);j++)h=i[j](c,d,e),"string"==typeof h&&(!l||g[h]?h=b:(c.dataTypes.unshift(h),h=z(a,c,d,e,h,g)));return(l||!h)&&!g["*"]&&(h=z(a,c,d,e,"*",g)),h}function A(a,c){var d,e,f=$.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&$.extend(!0,a,e)}function B(a,c,d){var e,f,g,h,i=a.contents,j=a.dataTypes,k=a.responseFields;for(f in k)f in d&&(c[k[f]]=d[f]);for(;"*"===j[0];)j.shift(),e===b&&(e=a.mimeType||c.getResponseHeader("content-type"));if(e)for(f in i)if(i[f]&&i[f].test(e)){j.unshift(f);break}if(j[0]in d)g=j[0];else{for(f in d){if(!j[0]||a.converters[f+" "+j[0]]){g=f;break}h||(h=f)}g=g||h}return g?(g!==j[0]&&j.unshift(g),d[g]):void 0}function C(a,b){var c,d,e,f,g=a.dataTypes.slice(),h=g[0],i={},j=0;if(a.dataFilter&&(b=a.dataFilter(b,a.dataType)),g[1])for(c in a.converters)i[c.toLowerCase()]=a.converters[c];for(;e=g[++j];)if("*"!==e){if("*"!==h&&h!==e){if(c=i[h+" "+e]||i["* "+e],!c)for(d in i)if(f=d.split(" "),f[1]===e&&(c=i[h+" "+f[0]]||i["* "+f[0]])){c===!0?c=i[d]:i[d]!==!0&&(e=f[0],g.splice(j--,0,e));break}if(c!==!0)if(c&&a["throws"])b=c(b);else try{b=c(b)}catch(k){return{state:"parsererror",error:c?k:"No conversion from "+h+" to "+e}}}h=e}return{state:"success",data:b}}function D(){try{return new a.XMLHttpRequest}catch(b){}}function E(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function F(){return setTimeout(function(){Uc=b},0),Uc=$.now()}function G(a,b){$.each(b,function(b,c){for(var d=($c[b]||[]).concat($c["*"]),e=0,f=d.length;f>e;e++)if(d[e].call(a,b,c))return})}function H(a,b,c){var d,e=0,f=Zc.length,g=$.Deferred().always(function(){delete h.elem}),h=function(){for(var b=Uc||F(),c=Math.max(0,i.startTime+i.duration-b),d=1-(c/i.duration||0),e=0,f=i.tweens.length;f>e;e++)i.tweens[e].run(d);return g.notifyWith(a,[i,d,c]),1>d&&f?c:(g.resolveWith(a,[i]),!1)},i=g.promise({elem:a,props:$.extend({},b),opts:$.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:Uc||F(),duration:c.duration,tweens:[],createTween:function(b,c){var d=$.Tween(a,i.opts,b,c,i.opts.specialEasing[b]||i.opts.easing);return i.tweens.push(d),d},stop:function(b){for(var c=0,d=b?i.tweens.length:0;d>c;c++)i.tweens[c].run(1);return b?g.resolveWith(a,[i,b]):g.rejectWith(a,[i,b]),this}}),j=i.props;for(I(j,i.opts.specialEasing);f>e;e++)if(d=Zc[e].call(i,a,j,i.opts))return d;return G(i,j),$.isFunction(i.opts.start)&&i.opts.start.call(a,i),$.fx.timer($.extend(h,{anim:i,queue:i.opts.queue,elem:a})),i.progress(i.opts.progress).done(i.opts.done,i.opts.complete).fail(i.opts.fail).always(i.opts.always)}function I(a,b){var c,d,e,f,g;for(c in a)if(d=$.camelCase(c),e=b[d],f=a[c],$.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=$.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function J(a,b,c){var d,e,f,g,h,i,j,k,l=this,m=a.style,n={},o=[],p=a.nodeType&&r(a);c.queue||(j=$._queueHooks(a,"fx"),null==j.unqueued&&(j.unqueued=0,k=j.empty.fire,j.empty.fire=function(){j.unqueued||k()}),j.unqueued++,l.always(function(){l.always(function(){j.unqueued--,$.queue(a,"fx").length||j.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[m.overflow,m.overflowX,m.overflowY],"inline"===$.css(a,"display")&&"none"===$.css(a,"float")&&($.support.inlineBlockNeedsLayout&&"inline"!==w(a.nodeName)?m.zoom=1:m.display="inline-block")),c.overflow&&(m.overflow="hidden",$.support.shrinkWrapBlocks||l.done(function(){m.overflow=c.overflow[0],m.overflowX=c.overflow[1],m.overflowY=c.overflow[2]}));for(d in b)if(f=b[d],Wc.exec(f)){if(delete b[d],f===(p?"hide":"show"))continue;o.push(d)}if(g=o.length)for(h=$._data(a,"fxshow")||$._data(a,"fxshow",{}),p?$(a).show():l.done(function(){$(a).hide()}),l.done(function(){var b;$.removeData(a,"fxshow",!0);for(b in n)$.style(a,b,n[b])}),d=0;g>d;d++)e=o[d],i=l.createTween(e,p?h[e]:0),n[e]=h[e]||$.style(a,e),e in h||(h[e]=i.start,p&&(i.end=i.start,i.start="width"===e||"height"===e?1:0))}function K(a,b,c,d,e){return new K.prototype.init(a,b,c,d,e)}function L(a,b){for(var c,d={height:a},e=0;4>e;e+=2-b)c=pc[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function M(a){return $.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}var N,O,P=a.document,Q=a.location,R=a.navigator,S=a.jQuery,T=a.$,U=Array.prototype.push,V=Array.prototype.slice,W=Array.prototype.indexOf,X=Object.prototype.toString,Y=Object.prototype.hasOwnProperty,Z=String.prototype.trim,$=function(a,b){return new $.fn.init(a,b,N)},_=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,ab=/\S/,bb=/\s+/,cb=ab.test(" ")?/^[\s\xA0]+|[\s\xA0]+$/g:/^\s+|\s+$/g,db=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,eb=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,fb=/^[\],:{}\s]*$/,gb=/(?:^|:|,)(?:\s*\[)+/g,hb=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,ib=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,jb=/^-ms-/,kb=/-([\da-z])/gi,lb=function(a,b){return(b+"").toUpperCase()},mb=function(){P.addEventListener?(P.removeEventListener("DOMContentLoaded",mb,!1),$.ready()):"complete"===P.readyState&&(P.detachEvent("onreadystatechange",mb),$.ready())},nb={};$.fn=$.prototype={constructor:$,init:function(a,c,d){var e,f,g;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if("string"==typeof a){if(e="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:db.exec(a),e&&(e[1]||!c)){if(e[1])return c=c instanceof $?c[0]:c,g=c&&c.nodeType?c.ownerDocument||c:P,a=$.parseHTML(e[1],g,!0),eb.test(e[1])&&$.isPlainObject(c)&&this.attr.call(a,c,!0),$.merge(this,a);if(f=P.getElementById(e[2]),f&&f.parentNode){if(f.id!==e[2])return d.find(a);this.length=1,this[0]=f}return this.context=P,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return $.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),$.makeArray(a,this))},selector:"",jquery:"1.8.0",length:0,size:function(){return this.length},toArray:function(){return V.call(this)},get:function(a){return null==a?this.toArray():0>a?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=$.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,"find"===b?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return $.each(this,a,b)},ready:function(a){return $.ready.promise().done(a),this},eq:function(a){return a=+a,-1===a?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(V.apply(this,arguments),"slice",V.call(arguments).join(","))},map:function(a){return this.pushStack($.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:U,sort:[].sort,splice:[].splice},$.fn.init.prototype=$.fn,$.extend=$.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;for("boolean"==typeof h&&(k=h,h=arguments[1]||{},i=2),"object"!=typeof h&&!$.isFunction(h)&&(h={}),j===i&&(h=this,--i);j>i;i++)if(null!=(a=arguments[i]))for(c in a)d=h[c],e=a[c],h!==e&&(k&&e&&($.isPlainObject(e)||(f=$.isArray(e)))?(f?(f=!1,g=d&&$.isArray(d)?d:[]):g=d&&$.isPlainObject(d)?d:{},h[c]=$.extend(k,g,e)):e!==b&&(h[c]=e));return h},$.extend({noConflict:function(b){return a.$===$&&(a.$=T),b&&a.jQuery===$&&(a.jQuery=S),$},isReady:!1,readyWait:1,holdReady:function(a){a?$.readyWait++:$.ready(!0)},ready:function(a){if(a===!0?!--$.readyWait:!$.isReady){if(!P.body)return setTimeout($.ready,1);$.isReady=!0,a!==!0&&--$.readyWait>0||(O.resolveWith(P,[$]),$.fn.trigger&&$(P).trigger("ready").off("ready"))}},isFunction:function(a){return"function"===$.type(a)},isArray:Array.isArray||function(a){return"array"===$.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return null==a?String(a):nb[X.call(a)]||"object"},isPlainObject:function(a){if(!a||"object"!==$.type(a)||a.nodeType||$.isWindow(a))return!1;try{if(a.constructor&&!Y.call(a,"constructor")&&!Y.call(a.constructor.prototype,"isPrototypeOf"))return!1 -}catch(c){return!1}var d;for(d in a);return d===b||Y.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return a&&"string"==typeof a?("boolean"==typeof b&&(c=b,b=0),b=b||P,(d=eb.exec(a))?[b.createElement(d[1])]:(d=$.buildFragment([a],b,c?null:[]),$.merge([],(d.cacheable?$.clone(d.fragment):d.fragment).childNodes))):null},parseJSON:function(b){return b&&"string"==typeof b?(b=$.trim(b),a.JSON&&a.JSON.parse?a.JSON.parse(b):fb.test(b.replace(hb,"@").replace(ib,"]").replace(gb,""))?new Function("return "+b)():void $.error("Invalid JSON: "+b)):null},parseXML:function(c){var d,e;if(!c||"string"!=typeof c)return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&$.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&ab.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(jb,"ms-").replace(kb,lb)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||$.isFunction(a);if(d)if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;g>f&&c.apply(a[f++],d)!==!1;);else if(h){for(e in a)if(c.call(a[e],e,a[e])===!1)break}else for(;g>f&&c.call(a[f],f,a[f++])!==!1;);return a},trim:Z?function(a){return null==a?"":Z.call(a)}:function(a){return null==a?"":a.toString().replace(cb,"")},makeArray:function(a,b){var c,d=b||[];return null!=a&&(c=$.type(a),null==a.length||"string"===c||"function"===c||"regexp"===c||$.isWindow(a)?U.call(d,a):$.merge(d,a)),d},inArray:function(a,b,c){var d;if(b){if(W)return W.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=c.length,e=a.length,f=0;if("number"==typeof d)for(;d>f;f++)a[e++]=c[f];else for(;c[f]!==b;)a[e++]=c[f++];return a.length=e,a},grep:function(a,b,c){var d,e=[],f=0,g=a.length;for(c=!!c;g>f;f++)d=!!b(a[f],f),c!==d&&e.push(a[f]);return e},map:function(a,c,d){var e,f,g=[],h=0,i=a.length,j=a instanceof $||i!==b&&"number"==typeof i&&(i>0&&a[0]&&a[i-1]||0===i||$.isArray(a));if(j)for(;i>h;h++)e=c(a[h],h,d),null!=e&&(g[g.length]=e);else for(f in a)e=c(a[f],f,d),null!=e&&(g[g.length]=e);return g.concat.apply([],g)},guid:1,proxy:function(a,c){var d,e,f;return"string"==typeof c&&(d=a[c],c=a,a=d),$.isFunction(a)?(e=V.call(arguments,2),f=function(){return a.apply(c,e.concat(V.call(arguments)))},f.guid=a.guid=a.guid||f.guid||$.guid++,f):b},access:function(a,c,d,e,f,g,h){var i,j=null==d,k=0,l=a.length;if(d&&"object"==typeof d){for(k in d)$.access(a,c,k,d[k],1,g,e);f=1}else if(e!==b){if(i=h===b&&$.isFunction(e),j&&(i?(i=c,c=function(a,b,c){return i.call($(a),c)}):(c.call(a,e),c=null)),c)for(;l>k;k++)c(a[k],d,i?e.call(a[k],k,c(a[k],d)):e,h);f=1}return f?a:j?c.call(a):l?c(a[0],d):g},now:function(){return(new Date).getTime()}}),$.ready.promise=function(b){if(!O)if(O=$.Deferred(),"complete"===P.readyState||"loading"!==P.readyState&&P.addEventListener)setTimeout($.ready,1);else if(P.addEventListener)P.addEventListener("DOMContentLoaded",mb,!1),a.addEventListener("load",$.ready,!1);else{P.attachEvent("onreadystatechange",mb),a.attachEvent("onload",$.ready);var c=!1;try{c=null==a.frameElement&&P.documentElement}catch(d){}c&&c.doScroll&&function e(){if(!$.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}$.ready()}}()}return O.promise(b)},$.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){nb["[object "+b+"]"]=b.toLowerCase()}),N=$(P);var ob={};$.Callbacks=function(a){a="string"==typeof a?ob[a]||c(a):$.extend({},a);var d,e,f,g,h,i,j=[],k=!a.once&&[],l=function(b){for(d=a.memory&&b,e=!0,i=g||0,g=0,h=j.length,f=!0;j&&h>i;i++)if(j[i].apply(b[0],b[1])===!1&&a.stopOnFalse){d=!1;break}f=!1,j&&(k?k.length&&l(k.shift()):d?j=[]:m.disable())},m={add:function(){if(j){var b=j.length;!function c(b){$.each(b,function(b,d){!$.isFunction(d)||a.unique&&m.has(d)?d&&d.length&&c(d):j.push(d)})}(arguments),f?h=j.length:d&&(g=b,l(d))}return this},remove:function(){return j&&$.each(arguments,function(a,b){for(var c;(c=$.inArray(b,j,c))>-1;)j.splice(c,1),f&&(h>=c&&h--,i>=c&&i--)}),this},has:function(a){return $.inArray(a,j)>-1},empty:function(){return j=[],this},disable:function(){return j=k=d=b,this},disabled:function(){return!j},lock:function(){return k=b,d||m.disable(),this},locked:function(){return!k},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],j&&(!e||k)&&(f?k.push(b):l(b)),this},fire:function(){return m.fireWith(this,arguments),this},fired:function(){return!!e}};return m},$.extend({Deferred:function(a){var b=[["resolve","done",$.Callbacks("once memory"),"resolved"],["reject","fail",$.Callbacks("once memory"),"rejected"],["notify","progress",$.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return $.Deferred(function(c){$.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]]($.isFunction(g)?function(){var a=g.apply(this,arguments);a&&$.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return"object"==typeof a?$.extend(a,d):d}},e={};return d.pipe=d.then,$.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b,c,d,e=0,f=V.call(arguments),g=f.length,h=1!==g||a&&$.isFunction(a.promise)?g:0,i=1===h?a:$.Deferred(),j=function(a,c,d){return function(e){c[a]=this,d[a]=arguments.length>1?V.call(arguments):e,d===b?i.notifyWith(c,d):--h||i.resolveWith(c,d)}};if(g>1)for(b=new Array(g),c=new Array(g),d=new Array(g);g>e;e++)f[e]&&$.isFunction(f[e].promise)?f[e].promise().done(j(e,d,f)).fail(i.reject).progress(j(e,c,b)):--h;return h||i.resolveWith(d,f),i.promise()}}),$.support=function(){var b,c,d,e,f,g,h,i,j,k,l,m=P.createElement("div");if(m.setAttribute("className","t"),m.innerHTML="
    a",c=m.getElementsByTagName("*"),d=m.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5",!c||!c.length||!d)return{};e=P.createElement("select"),f=e.appendChild(P.createElement("option")),g=m.getElementsByTagName("input")[0],b={leadingWhitespace:3===m.firstChild.nodeType,tbody:!m.getElementsByTagName("tbody").length,htmlSerialize:!!m.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:"/a"===d.getAttribute("href"),opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:"on"===g.value,optSelected:f.selected,getSetAttribute:"t"!==m.className,enctype:!!P.createElement("form").enctype,html5Clone:"<:nav>"!==P.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===P.compatMode,submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},g.checked=!0,b.noCloneChecked=g.cloneNode(!0).checked,e.disabled=!0,b.optDisabled=!f.disabled;try{delete m.test}catch(n){b.deleteExpando=!1}if(!m.addEventListener&&m.attachEvent&&m.fireEvent&&(m.attachEvent("onclick",l=function(){b.noCloneEvent=!1}),m.cloneNode(!0).fireEvent("onclick"),m.detachEvent("onclick",l)),g=P.createElement("input"),g.value="t",g.setAttribute("type","radio"),b.radioValue="t"===g.value,g.setAttribute("checked","checked"),g.setAttribute("name","t"),m.appendChild(g),h=P.createDocumentFragment(),h.appendChild(m.lastChild),b.checkClone=h.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=g.checked,h.removeChild(g),h.appendChild(m),m.attachEvent)for(j in{submit:!0,change:!0,focusin:!0})i="on"+j,k=i in m,k||(m.setAttribute(i,"return;"),k="function"==typeof m[i]),b[j+"Bubbles"]=k;return $(function(){var c,d,e,f,g="padding:0;margin:0;border:0;display:block;overflow:hidden;",h=P.getElementsByTagName("body")[0];h&&(c=P.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",h.insertBefore(c,h.firstChild),d=P.createElement("div"),c.appendChild(d),d.innerHTML="
    t
    ",e=d.getElementsByTagName("td"),e[0].style.cssText="padding:0;margin:0;border:0;display:none",k=0===e[0].offsetHeight,e[0].style.display="",e[1].style.display="none",b.reliableHiddenOffsets=k&&0===e[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=4===d.offsetWidth,b.doesNotIncludeMarginInBodyOffset=1!==h.offsetTop,a.getComputedStyle&&(b.pixelPosition="1%"!==(a.getComputedStyle(d,null)||{}).top,b.boxSizingReliable="4px"===(a.getComputedStyle(d,null)||{width:"4px"}).width,f=P.createElement("div"),f.style.cssText=d.style.cssText=g,f.style.marginRight=f.style.width="0",d.style.width="1px",d.appendChild(f),b.reliableMarginRight=!parseFloat((a.getComputedStyle(f,null)||{}).marginRight)),"undefined"!=typeof d.style.zoom&&(d.innerHTML="",d.style.cssText=g+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.style.overflow="visible",d.innerHTML="
    ",d.firstChild.style.width="5px",b.shrinkWrapBlocks=3!==d.offsetWidth,c.style.zoom=1),h.removeChild(c),c=d=e=f=null)}),h.removeChild(m),c=d=e=f=g=h=m=null,b}();var pb=/^(?:\{.*\}|\[.*\])$/,qb=/([A-Z])/g;$.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+($.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?$.cache[a[$.expando]]:a[$.expando],!!a&&!e(a)},data:function(a,c,d,e){if($.acceptData(a)){var f,g,h=$.expando,i="string"==typeof c,j=a.nodeType,k=j?$.cache:a,l=j?a[h]:a[h]&&h;if(l&&k[l]&&(e||k[l].data)||!i||d!==b)return l||(j?a[h]=l=$.deletedIds.pop()||++$.uuid:l=h),k[l]||(k[l]={},j||(k[l].toJSON=$.noop)),("object"==typeof c||"function"==typeof c)&&(e?k[l]=$.extend(k[l],c):k[l].data=$.extend(k[l].data,c)),f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[$.camelCase(c)]=d),i?(g=f[c],null==g&&(g=f[$.camelCase(c)])):g=f,g}},removeData:function(a,b,c){if($.acceptData(a)){var d,f,g,h=a.nodeType,i=h?$.cache:a,j=h?a[$.expando]:$.expando;if(i[j]){if(b&&(d=c?i[j]:i[j].data)){$.isArray(b)||(b in d?b=[b]:(b=$.camelCase(b),b=b in d?[b]:b.split(" ")));for(f=0,g=b.length;g>f;f++)delete d[b[f]];if(!(c?e:$.isEmptyObject)(d))return}(c||(delete i[j].data,e(i[j])))&&(h?$.cleanData([a],!0):$.support.deleteExpando||i!=i.window?delete i[j]:i[j]=null)}}},_data:function(a,b,c){return $.data(a,b,c,!0)},acceptData:function(a){var b=a.nodeName&&$.noData[a.nodeName.toLowerCase()];return!b||b!==!0&&a.getAttribute("classid")===b}}),$.fn.extend({data:function(a,c){var e,f,g,h,i,j=this[0],k=0,l=null;if(a===b){if(this.length&&(l=$.data(j),1===j.nodeType&&!$._data(j,"parsedAttrs"))){for(g=j.attributes,i=g.length;i>k;k++)h=g[k].name,0===h.indexOf("data-")&&(h=$.camelCase(h.substring(5)),d(j,h,l[h]));$._data(j,"parsedAttrs",!0)}return l}return"object"==typeof a?this.each(function(){$.data(this,a)}):(e=a.split(".",2),e[1]=e[1]?"."+e[1]:"",f=e[1]+"!",$.access(this,function(c){return c===b?(l=this.triggerHandler("getData"+f,[e[0]]),l===b&&j&&(l=$.data(j,a),l=d(j,a,l)),l===b&&e[1]?this.data(e[0]):l):(e[1]=c,void this.each(function(){var b=$(this);b.triggerHandler("setData"+f,e),$.data(this,a,c),b.triggerHandler("changeData"+f,e)}))},null,c,arguments.length>1,null,!1))},removeData:function(a){return this.each(function(){$.removeData(this,a)})}}),$.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=$._data(a,b),c&&(!d||$.isArray(c)?d=$._data(a,b,$.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=$.queue(a,b),d=c.shift(),e=$._queueHooks(a,b),f=function(){$.dequeue(a,b)};"inprogress"===d&&(d=c.shift()),d&&("fx"===b&&c.unshift("inprogress"),delete e.stop,d.call(a,f,e)),!c.length&&e&&e.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return $._data(a,c)||$._data(a,c,{empty:$.Callbacks("once memory").add(function(){$.removeData(a,b+"queue",!0),$.removeData(a,c,!0)})})}}),$.fn.extend({queue:function(a,c){var d=2;return"string"!=typeof a&&(c=a,a="fx",d--),arguments.length1)},removeAttr:function(a){return this.each(function(){$.removeAttr(this,a)})},prop:function(a,b){return $.access(this,$.prop,a,b,arguments.length>1)},removeProp:function(a){return a=$.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if($.isFunction(a))return this.each(function(b){$(this).addClass(a.call(this,b,this.className))});if(a&&"string"==typeof a)for(b=a.split(bb),c=0,d=this.length;d>c;c++)if(e=this[c],1===e.nodeType)if(e.className||1!==b.length){for(f=" "+e.className+" ",g=0,h=b.length;h>g;g++)~f.indexOf(" "+b[g]+" ")||(f+=b[g]+" ");e.className=$.trim(f)}else e.className=a;return this},removeClass:function(a){var c,d,e,f,g,h,i;if($.isFunction(a))return this.each(function(b){$(this).removeClass(a.call(this,b,this.className))});if(a&&"string"==typeof a||a===b)for(c=(a||"").split(bb),h=0,i=this.length;i>h;h++)if(e=this[h],1===e.nodeType&&e.className){for(d=(" "+e.className+" ").replace(ub," "),f=0,g=c.length;g>f;f++)for(;d.indexOf(" "+c[f]+" ")>-1;)d=d.replace(" "+c[f]+" "," ");e.className=a?$.trim(d):""}return this},toggleClass:function(a,b){var c=typeof a,d="boolean"==typeof b;return this.each($.isFunction(a)?function(c){$(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c)for(var e,f=0,g=$(this),h=b,i=a.split(bb);e=i[f++];)h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e);else("undefined"===c||"boolean"===c)&&(this.className&&$._data(this,"__className__",this.className),this.className=this.className||a===!1?"":$._data(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(ub," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,f=this[0];{if(arguments.length)return e=$.isFunction(a),this.each(function(d){var f,g=$(this);1===this.nodeType&&(f=e?a.call(this,d,g.val()):a,null==f?f="":"number"==typeof f?f+="":$.isArray(f)&&(f=$.map(f,function(a){return null==a?"":a+""})),c=$.valHooks[this.type]||$.valHooks[this.nodeName.toLowerCase()],c&&"set"in c&&c.set(this,f,"value")!==b||(this.value=f))});if(f)return c=$.valHooks[f.type]||$.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,"string"==typeof d?d.replace(vb,""):null==d?"":d)}}}),$.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i="select-one"===a.type;if(0>f)return null;for(c=i?f:0,d=i?f+1:h.length;d>c;c++)if(e=h[c],!(!e.selected||($.support.optDisabled?e.disabled:null!==e.getAttribute("disabled"))||e.parentNode.disabled&&$.nodeName(e.parentNode,"optgroup"))){if(b=$(e).val(),i)return b;g.push(b)}return i&&!g.length&&h.length?$(h[f]).val():g},set:function(a,b){var c=$.makeArray(b);return $(a).find("option").each(function(){this.selected=$.inArray($(this).val(),c)>=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(a&&3!==i&&8!==i&&2!==i)return e&&$.isFunction($.fn[c])?$(a)[c](d):"undefined"==typeof a.getAttribute?$.prop(a,c,d):(h=1!==i||!$.isXMLDoc(a),h&&(c=c.toLowerCase(),g=$.attrHooks[c]||(zb.test(c)?sb:rb)),d!==b?null===d?void $.removeAttr(a,c):g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,""+d),d):g&&"get"in g&&h&&null!==(f=g.get(a,c))?f:(f=a.getAttribute(c),null===f?b:f))},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&1===a.nodeType)for(d=b.split(bb);g=0:void 0}})});var Bb=/^(?:textarea|input|select)$/i,Cb=/^([^\.]*|)(?:\.(.+)|)$/,Db=/(?:^|\s)hover(\.\S+|)\b/,Eb=/^key/,Fb=/^(?:mouse|contextmenu)|click/,Gb=/^(?:focusinfocus|focusoutblur)$/,Hb=function(a){return $.event.special.hover?a:a.replace(Db,"mouseenter$1 mouseleave$1")};$.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,p,q;if(3!==a.nodeType&&8!==a.nodeType&&c&&d&&(g=$._data(a))){for(d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=$.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return"undefined"==typeof $||a&&$.event.triggered===a.type?b:$.event.dispatch.apply(h.elem,arguments)},h.elem=a),c=$.trim(Hb(c)).split(" "),j=0;j=0&&(q=q.slice(0,-1),h=!0),q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),(!e||$.event.customEvent[q])&&!$.event.global[q])return;if(c="object"==typeof c?c[$.expando]?c:new $.Event(q,c):new $.Event(q),c.type=q,c.isTrigger=!0,c.exclusive=h,c.namespace=r.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,l=q.indexOf(":")<0?"on"+q:"",!e){g=$.cache;for(i in g)g[i].events&&g[i].events[q]&&$.event.trigger(c,d,g[i].handle.elem,!0);return}if(c.result=b,c.target||(c.target=e),d=null!=d?$.makeArray(d):[],d.unshift(c),m=$.event.special[q]||{},m.trigger&&m.trigger.apply(e,d)===!1)return;if(o=[[e,m.bindType||q]],!f&&!m.noBubble&&!$.isWindow(e)){for(p=m.delegateType||q,j=Gb.test(p+q)?e:e.parentNode,k=e;j;j=j.parentNode)o.push([j,p]),k=j;k===(e.ownerDocument||P)&&o.push([k.defaultView||k.parentWindow||a,p])}for(i=0;id;d++)l=n[d],m=l.selector,i[m]===b&&(i[m]=g.is(m)),i[m]&&k.push(l);k.length&&s.push({elem:f,matches:k})}for(n.length>o&&s.push({elem:this,matches:n.slice(o)}),d=0;d0?this.on(b,null,a,c):this.trigger(b)},Eb.test(b)&&($.event.fixHooks[b]=$.event.keyHooks),Fb.test(b)&&($.event.fixHooks[b]=$.event.mouseHooks) -}),function(a,b){function c(a,b,c,d){for(var e=0,f=b.length;f>e;e++)fb(a,b[e],c,d)}function d(a,b,d,e,f,g){var h,i=gb.setFilters[b.toLowerCase()];return i||fb.error(b),(a||!(h=f))&&c(a||"*",e,h=[],f),h.length>0?i(h,d,g):[]}function e(a,e,f,g,h){for(var i,j,k,l,m,n,o,p,q=0,r=h.length,s=S.POS,t=new RegExp("^"+s.source+"(?!"+y+")","i"),u=function(){for(var a=1,c=arguments.length-2;c>a;a++)arguments[a]===b&&(i[a]=b)};r>q;q++){for(s.exec(""),a=h[q],l=[],k=0,m=g;i=s.exec(a);)p=s.lastIndex=i.index+i[0].length,p>k&&(o=a.slice(k,i.index),k=p,n=[e],I.test(o)&&(m&&(n=m),m=g),(j=O.test(o))&&(o=o.slice(0,-5).replace(I,"$&*")),i.length>1&&i[0].replace(t,u),m=d(o,i[1],i[2],n,m,j));m?(l=l.concat(m),(o=a.slice(k))&&")"!==o?I.test(o)?c(o,l,f,g):fb(o,e,f,g?g.concat(m):m):w.apply(f,l)):fb(a,e,f,g)}return 1===r?f:fb.uniqueSort(f)}function f(a,b,c){for(var d,e,f,g=[],h=0,i=K.exec(a),j=!i.pop()&&!i.pop(),k=j&&a.match(J)||[""],l=gb.preFilter,m=gb.filter,n=!c&&b!==p;null!=(e=k[h])&&j;h++)for(g.push(d=[]),n&&(e=" "+e);e;){j=!1,(i=I.exec(e))&&(e=e.slice(i[0].length),j=d.push({part:i.pop().replace(H," "),captures:i}));for(f in m)(i=S[f].exec(e))&&(!l[f]||(i=l[f](i,b,c)))&&(e=e.slice(i.shift().length),j=d.push({part:f,captures:i}));if(!j)break}return j||fb.error(a),g}function g(a,b,c){var d=b.dir,e=u++;return a||(a=function(a){return a===c}),b.first?function(b,c){for(;b=b[d];)if(1===b.nodeType)return a(b,c)&&b}:function(b,c){for(var f,g=e+"."+l,h=g+"."+k;b=b[d];)if(1===b.nodeType){if((f=b[x])===h)return b.sizset;if("string"==typeof f&&0===f.indexOf(g)){if(b.sizset)return b}else{if(b[x]=h,a(b,c))return b.sizset=!0,b;b.sizset=!1}}}}function h(a,b){return a?function(c,d){var e=b(c,d);return e&&a(e===!0?c:e,d)}:b}function i(a,b,c){for(var d,e,f=0;d=a[f];f++)gb.relative[d.part]?e=g(e,gb.relative[d.part],b):(d.captures.push(b,c),e=h(e,gb.filter[d.part].apply(null,d.captures)));return e}function j(a){return function(b,c){for(var d,e=0;d=a[e];e++)if(d(b,c))return!0;return!1}}var k,l,m,n,o,p=a.document,q=p.documentElement,r="undefined",s=!1,t=!0,u=0,v=[].slice,w=[].push,x=("sizcache"+Math.random()).replace(".",""),y="[\\x20\\t\\r\\n\\f]",z="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",A=z.replace("w","w#"),B="([*^$|!~]?=)",C="\\["+y+"*("+z+")"+y+"*(?:"+B+y+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+A+")|)|)"+y+"*\\]",D=":("+z+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|((?:[^,]|\\\\,|(?:,(?=[^\\[]*\\]))|(?:,(?=[^\\(]*\\))))*))\\)|)",E=":(nth|eq|gt|lt|first|last|even|odd)(?:\\((\\d*)\\)|)(?=[^-]|$)",F=y+"*([\\x20\\t\\r\\n\\f>+~])"+y+"*",G="(?=[^\\x20\\t\\r\\n\\f])(?:\\\\.|"+C+"|"+D.replace(2,7)+"|[^\\\\(),])+",H=new RegExp("^"+y+"+|((?:^|[^\\\\])(?:\\\\.)*)"+y+"+$","g"),I=new RegExp("^"+F),J=new RegExp(G+"?(?="+y+"*,|$)","g"),K=new RegExp("^(?:(?!,)(?:(?:^|,)"+y+"*"+G+")*?|"+y+"*(.*?))(\\)|$)"),L=new RegExp(G.slice(19,-6)+"\\x20\\t\\r\\n\\f>+~])+|"+F,"g"),M=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,N=/[\x20\t\r\n\f]*[+~]/,O=/:not\($/,P=/h\d/i,Q=/input|select|textarea|button/i,R=/\\(?!\\)/g,S={ID:new RegExp("^#("+z+")"),CLASS:new RegExp("^\\.("+z+")"),NAME:new RegExp("^\\[name=['\"]?("+z+")['\"]?\\]"),TAG:new RegExp("^("+z.replace("[-","[-\\*")+")"),ATTR:new RegExp("^"+C),PSEUDO:new RegExp("^"+D),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+y+"*(even|odd|(([+-]|)(\\d*)n|)"+y+"*(?:([+-]|)"+y+"*(\\d+)|))"+y+"*\\)|)","i"),POS:new RegExp(E,"ig"),needsContext:new RegExp("^"+y+"*[>+~]|"+E,"i")},T={},U=[],V={},W=[],X=function(a){return a.sizzleFilter=!0,a},Y=function(a){return function(b){return"input"===b.nodeName.toLowerCase()&&b.type===a}},Z=function(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}},_=function(a){var b=!1,c=p.createElement("div");try{b=a(c)}catch(d){}return c=null,b},ab=_(function(a){a.innerHTML="";var b=typeof a.lastChild.getAttribute("multiple");return"boolean"!==b&&"string"!==b}),bb=_(function(a){a.id=x+0,a.innerHTML="
    ",q.insertBefore(a,q.firstChild);var b=p.getElementsByName&&p.getElementsByName(x).length===2+p.getElementsByName(x+0).length;return o=!p.getElementById(x),q.removeChild(a),b}),cb=_(function(a){return a.appendChild(p.createComment("")),0===a.getElementsByTagName("*").length}),db=_(function(a){return a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!==r&&"#"===a.firstChild.getAttribute("href")}),eb=_(function(a){return a.innerHTML="",a.getElementsByClassName&&0!==a.getElementsByClassName("e").length?(a.lastChild.className="e",1!==a.getElementsByClassName("e").length):!1}),fb=function(a,b,c,d){c=c||[],b=b||p;var e,f,g,h,i=b.nodeType;if(1!==i&&9!==i)return[];if(!a||"string"!=typeof a)return c;if(g=ib(b),!g&&!d&&(e=M.exec(a)))if(h=e[1]){if(9===i){if(f=b.getElementById(h),!f||!f.parentNode)return c;if(f.id===h)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(h))&&jb(b,f)&&f.id===h)return c.push(f),c}else{if(e[2])return w.apply(c,v.call(b.getElementsByTagName(a),0)),c;if((h=e[3])&&eb&&b.getElementsByClassName)return w.apply(c,v.call(b.getElementsByClassName(h),0)),c}return mb(a,b,c,d,g)},gb=fb.selectors={cacheLength:50,match:S,order:["ID","TAG"],attrHandle:{},createPseudo:X,find:{ID:o?function(a,b,c){if(typeof b.getElementById!==r&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==r&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==r&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:cb?function(a,b){return typeof b.getElementsByTagName!==r?b.getElementsByTagName(a):void 0}:function(a,b){var c=b.getElementsByTagName(a);if("*"===a){for(var d,e=[],f=0;d=c[f];f++)1===d.nodeType&&e.push(d);return e}return c}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(R,""),a[3]=(a[4]||a[5]||"").replace(R,""),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1]?(a[2]||fb.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*("even"===a[2]||"odd"===a[2])),a[4]=+(a[6]+a[7]||"odd"===a[2])):a[2]&&fb.error(a[0]),a},PSEUDO:function(a){var b,c=a[4];return S.CHILD.test(a[0])?null:(c&&(b=K.exec(c))&&b.pop()&&(a[0]=a[0].slice(0,b[0].length-c.length-1),c=b[0].slice(0,-1)),a.splice(2,3,c||a[3]),a)}},filter:{ID:o?function(a){return a=a.replace(R,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(R,""),function(b){var c=typeof b.getAttributeNode!==r&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return"*"===a?function(){return!0}:(a=a.replace(R,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=T[a];return b||(b=T[a]=new RegExp("(^|"+y+")"+a+"("+y+"|$)"),U.push(a),U.length>gb.cacheLength&&delete T[U.shift()]),function(a){return b.test(a.className||typeof a.getAttribute!==r&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return b?function(d){var e=fb.attr(d,a),f=e+"";if(null==e)return"!="===b;switch(b){case"=":return f===c;case"!=":return f!==c;case"^=":return c&&0===f.indexOf(c);case"*=":return c&&f.indexOf(c)>-1;case"$=":return c&&f.substr(f.length-c.length)===c;case"~=":return(" "+f+" ").indexOf(c)>-1;case"|=":return f===c||f.substr(0,c.length+1)===c+"-"}}:function(b){return null!=fb.attr(b,a)}},CHILD:function(a,b,c,d){if("nth"===a){var e=u++;return function(a){var b,f,g=0,h=a;if(1===c&&0===d)return!0;if(b=a.parentNode,b&&(b[x]!==e||!a.sizset)){for(h=b.firstChild;h&&(1!==h.nodeType||(h.sizset=++g,h!==a));h=h.nextSibling);b[x]=e}return f=a.sizset-d,0===c?0===f:f%c===0&&f/c>=0}}return function(b){var c=b;switch(a){case"only":case"first":for(;c=c.previousSibling;)if(1===c.nodeType)return!1;if("first"===a)return!0;c=b;case"last":for(;c=c.nextSibling;)if(1===c.nodeType)return!1;return!0}}},PSEUDO:function(a,b,c,d){var e=gb.pseudos[a]||gb.pseudos[a.toLowerCase()];return e||fb.error("unsupported pseudo: "+a),e.sizzleFilter?e(b,c,d):e}},pseudos:{not:X(function(a,b,c){var d=lb(a.replace(H,"$1"),b,c);return function(a){return!d(a)}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!gb.pseudos.empty(a)},empty:function(a){var b;for(a=a.firstChild;a;){if(a.nodeName>"@"||3===(b=a.nodeType)||4===b)return!1;a=a.nextSibling}return!0},contains:X(function(a){return function(b){return(b.textContent||b.innerText||kb(b)).indexOf(a)>-1}}),has:X(function(a){return function(b){return fb(a,b).length>0}}),header:function(a){return P.test(a.nodeName)},text:function(a){var b,c;return"input"===a.nodeName.toLowerCase()&&"text"===(b=a.type)&&(null==(c=a.getAttribute("type"))||c.toLowerCase()===b)},radio:Y("radio"),checkbox:Y("checkbox"),file:Y("file"),password:Y("password"),image:Y("image"),submit:Z("submit"),reset:Z("reset"),button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},input:function(a){return Q.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return!(a!==b.activeElement||b.hasFocus&&!b.hasFocus()||!a.type&&!a.href)},active:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b,c){return c?a.slice(1):[a[0]]},last:function(a,b,c){var d=a.pop();return c?a:[d]},even:function(a,b,c){for(var d=[],e=c?1:0,f=a.length;f>e;e+=2)d.push(a[e]);return d},odd:function(a,b,c){for(var d=[],e=c?0:1,f=a.length;f>e;e+=2)d.push(a[e]);return d},lt:function(a,b,c){return c?a.slice(+b):a.slice(0,+b)},gt:function(a,b,c){return c?a.slice(0,+b+1):a.slice(+b+1)},eq:function(a,b,c){var d=a.splice(+b,1);return c?a:d}}};gb.setFilters.nth=gb.setFilters.eq,gb.filters=gb.pseudos,db||(gb.attrHandle={href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}}),bb&&(gb.order.push("NAME"),gb.find.NAME=function(a,b){return typeof b.getElementsByName!==r?b.getElementsByName(a):void 0}),eb&&(gb.order.splice(1,0,"CLASS"),gb.find.CLASS=function(a,b,c){return typeof b.getElementsByClassName===r||c?void 0:b.getElementsByClassName(a)});try{v.call(q.childNodes,0)[0].nodeType}catch(hb){v=function(a){for(var b,c=[];b=this[a];a++)c.push(b);return c}}var ib=fb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},jb=fb.contains=q.compareDocumentPosition?function(a,b){return!!(16&a.compareDocumentPosition(b))}:q.contains?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b.parentNode;return a===d||!!(d&&1===d.nodeType&&c.contains&&c.contains(d))}:function(a,b){for(;b=b.parentNode;)if(b===a)return!0;return!1},kb=fb.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(1===e||9===e||11===e){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=kb(a)}else if(3===e||4===e)return a.nodeValue}else for(;b=a[d];d++)c+=kb(b);return c};fb.attr=function(a,b){var c,d=ib(a);return d||(b=b.toLowerCase()),gb.attrHandle[b]?gb.attrHandle[b](a):ab||d?a.getAttribute(b):(c=a.getAttributeNode(b),c?"boolean"==typeof a[b]?a[b]?b:null:c.specified?c.value:null:null)},fb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},[0,0].sort(function(){return t=0}),q.compareDocumentPosition?m=function(a,b){return a===b?(s=!0,0):(a.compareDocumentPosition&&b.compareDocumentPosition?4&a.compareDocumentPosition(b):a.compareDocumentPosition)?-1:1}:(m=function(a,b){if(a===b)return s=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,h=b.parentNode,i=g;if(g===h)return n(a,b);if(!g)return-1;if(!h)return 1;for(;i;)e.unshift(i),i=i.parentNode;for(i=h;i;)f.unshift(i),i=i.parentNode;c=e.length,d=f.length;for(var j=0;c>j&&d>j;j++)if(e[j]!==f[j])return n(e[j],f[j]);return j===c?n(a,f[j],-1):n(e[j],b,1)},n=function(a,b,c){if(a===b)return c;for(var d=a.nextSibling;d;){if(d===b)return-1;d=d.nextSibling}return 1}),fb.uniqueSort=function(a){var b,c=1;if(m&&(s=t,a.sort(m),s))for(;b=a[c];c++)b===a[c-1]&&a.splice(c--,1);return a};var lb=fb.compile=function(a,b,c){var d,e,g,h=V[a];if(h&&h.context===b)return h;for(e=f(a,b,c),g=0;d=e[g];g++)e[g]=i(d,b,c);return h=V[a]=j(e),h.context=b,h.runs=h.dirruns=0,W.push(a),W.length>gb.cacheLength&&delete V[W.shift()],h};fb.matches=function(a,b){return fb(a,null,null,b)},fb.matchesSelector=function(a,b){return fb(b,null,null,[a]).length>0};var mb=function(a,b,c,d,f){a=a.replace(H,"$1");var g,h,i,j,m,n,o,p,q,r=a.match(J),s=a.match(L),t=b.nodeType;if(S.POS.test(a))return e(a,b,c,d,r);if(d)g=v.call(d,0);else if(r&&1===r.length){if(s.length>1&&9===t&&!f&&(r=S.ID.exec(s[0]))){if(b=gb.find.ID(r[1],b,f)[0],!b)return c;a=a.slice(s.shift().length)}for(p=(r=N.exec(s[0]))&&!r.index&&b.parentNode||b,q=s.pop(),n=q.split(":not")[0],i=0,j=gb.order.length;j>i;i++)if(o=gb.order[i],r=S[o].exec(n)){if(g=gb.find[o]((r[1]||"").replace(R,""),p,f),null==g)continue;n===q&&(a=a.slice(0,a.length-q.length)+n.replace(S[o],""),a||w.apply(c,v.call(g,0)));break}}if(a)for(h=lb(a,b,f),l=h.dirruns++,null==g&&(g=gb.find.TAG("*",N.test(a)&&b.parentNode||b)),i=0;m=g[i];i++)k=h.runs++,h(m,b)&&c.push(m);return c};p.querySelectorAll&&function(){var a,b=mb,c=/'|\\/g,d=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,e=[],f=[":active"],g=q.matchesSelector||q.mozMatchesSelector||q.webkitMatchesSelector||q.oMatchesSelector||q.msMatchesSelector;_(function(a){a.innerHTML="",a.querySelectorAll("[selected]").length||e.push("\\["+y+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),_(function(a){a.innerHTML="

    ",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+y+"*(?:\"\"|'')"),a.innerHTML="",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=e.length&&new RegExp(e.join("|")),mb=function(a,d,f,g,h){if(!(g||h||e&&e.test(a)))if(9===d.nodeType)try{return w.apply(f,v.call(d.querySelectorAll(a),0)),f}catch(i){}else if(1===d.nodeType&&"object"!==d.nodeName.toLowerCase()){var j=d.getAttribute("id"),k=j||x,l=N.test(a)&&d.parentNode||d;j?k=k.replace(c,"\\$&"):d.setAttribute("id",k);try{return w.apply(f,v.call(l.querySelectorAll(a.replace(J,"[id='"+k+"'] $&")),0)),f}catch(i){}finally{j||d.removeAttribute("id")}}return b(a,d,f,g,h)},g&&(_(function(b){a=g.call(b,"div");try{g.call(b,"[test!='']:sizzle"),f.push(gb.match.PSEUDO)}catch(c){}}),f=new RegExp(f.join("|")),fb.matchesSelector=function(b,c){if(c=c.replace(d,"='$1']"),!(ib(b)||f.test(c)||e&&e.test(c)))try{var h=g.call(b,c);if(h||a||b.document&&11!==b.document.nodeType)return h}catch(i){}return fb(c,null,null,[b]).length>0})}(),fb.attr=$.attr,$.find=fb,$.expr=fb.selectors,$.expr[":"]=$.expr.pseudos,$.unique=fb.uniqueSort,$.text=fb.getText,$.isXMLDoc=fb.isXML,$.contains=fb.contains}(a);var Ib=/Until$/,Jb=/^(?:parents|prev(?:Until|All))/,Kb=/^.[^:#\[\.,]*$/,Lb=$.expr.match.needsContext,Mb={children:!0,contents:!0,next:!0,prev:!0};$.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if("string"!=typeof a)return $(a).filter(function(){for(b=0,c=h.length;c>b;b++)if($.contains(h[b],this))return!0});for(g=this.pushStack("","find",a),b=0,c=this.length;c>b;b++)if(d=g.length,$.find(a,this[b],g),b>0)for(e=d;ef;f++)if(g[f]===g[e]){g.splice(e--,1);break}return g},has:function(a){var b,c=$(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if($.contains(this,c[b]))return!0})},not:function(a){return this.pushStack(j(this,a,!1),"not",a)},filter:function(a){return this.pushStack(j(this,a,!0),"filter",a)},is:function(a){return!!a&&("string"==typeof a?Lb.test(a)?$(a,this.context).index(this[0])>=0:$.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=Lb.test(a)||"string"!=typeof a?$(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c.ownerDocument&&c!==b&&11!==c.nodeType;){if(g?g.index(c)>-1:$.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}return f=f.length>1?$.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?"string"==typeof a?$.inArray(this[0],$(a)):$.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c="string"==typeof a?$(a,b):$.makeArray(a&&a.nodeType?[a]:a),d=$.merge(this.get(),c);return this.pushStack(h(c[0])||h(d[0])?d:$.unique(d))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}}),$.fn.andSelf=$.fn.addBack,$.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return $.dir(a,"parentNode")},parentsUntil:function(a,b,c){return $.dir(a,"parentNode",c)},next:function(a){return i(a,"nextSibling")},prev:function(a){return i(a,"previousSibling")},nextAll:function(a){return $.dir(a,"nextSibling")},prevAll:function(a){return $.dir(a,"previousSibling")},nextUntil:function(a,b,c){return $.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return $.dir(a,"previousSibling",c)},siblings:function(a){return $.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return $.sibling(a.firstChild)},contents:function(a){return $.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:$.merge([],a.childNodes)}},function(a,b){$.fn[a]=function(c,d){var e=$.map(this,b,c);return Ib.test(a)||(d=c),d&&"string"==typeof d&&(e=$.filter(d,e)),e=this.length>1&&!Mb[a]?$.unique(e):e,this.length>1&&Jb.test(a)&&(e=e.reverse()),this.pushStack(e,a,V.call(arguments).join(","))}}),$.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),1===b.length?$.find.matchesSelector(b[0],a)?[b[0]]:[]:$.find.matches(a,b)},dir:function(a,c,d){for(var e=[],f=a[c];f&&9!==f.nodeType&&(d===b||1!==f.nodeType||!$(f).is(d));)1===f.nodeType&&e.push(f),f=f[c];return e},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}});var Nb="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",Ob=/ jQuery\d+="(?:null|\d+)"/g,Pb=/^\s+/,Qb=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Rb=/<([\w:]+)/,Sb=/]","i"),Xb=/^(?:checkbox|radio)$/,Yb=/checked\s*(?:[^=]|=\s*.checked.)/i,Zb=/\/(java|ecma)script/i,$b=/^\s*\s*$/g,_b={option:[1,""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},ac=k(P),bc=ac.appendChild(P.createElement("div"));_b.optgroup=_b.option,_b.tbody=_b.tfoot=_b.colgroup=_b.caption=_b.thead,_b.th=_b.td,$.support.htmlSerialize||(_b._default=[1,"X
    ","
    "]),$.fn.extend({text:function(a){return $.access(this,function(a){return a===b?$.text(this):this.empty().append((this[0]&&this[0].ownerDocument||P).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if($.isFunction(a))return this.each(function(b){$(this).wrapAll(a.call(this,b))});if(this[0]){var b=$(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){for(var a=this;a.firstChild&&1===a.firstChild.nodeType;)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return this.each($.isFunction(a)?function(b){$(this).wrapInner(a.call(this,b))}:function(){var b=$(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=$.isFunction(a);return this.each(function(c){$(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){$.nodeName(this,"body")||$(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||11===this.nodeType)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||11===this.nodeType)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!h(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=$.clean(arguments);return this.pushStack($.merge(a,this),"before",this.selector)}},after:function(){if(!h(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=$.clean(arguments);return this.pushStack($.merge(this,a),"after",this.selector)}},remove:function(a,b){for(var c,d=0;null!=(c=this[d]);d++)(!a||$.filter(a,[c]).length)&&(!b&&1===c.nodeType&&($.cleanData(c.getElementsByTagName("*")),$.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)for(1===a.nodeType&&$.cleanData(a.getElementsByTagName("*"));a.firstChild;)a.removeChild(a.firstChild);return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return $.clone(this,a,b)})},html:function(a){return $.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return 1===c.nodeType?c.innerHTML.replace(Ob,""):b;if(!("string"!=typeof a||Ub.test(a)||!$.support.htmlSerialize&&Wb.test(a)||!$.support.leadingWhitespace&&Pb.test(a)||_b[(Rb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(Qb,"<$1>");try{for(;e>d;d++)c=this[d]||{},1===c.nodeType&&($.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(f){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return h(this[0])?this.length?this.pushStack($($.isFunction(a)?a():a),"replaceWith",a):this:$.isFunction(a)?this.each(function(b){var c=$(this),d=c.html();c.replaceWith(a.call(this,b,d))}):("string"!=typeof a&&(a=$(a).detach()),this.each(function(){var b=this.nextSibling,c=this.parentNode;$(this).remove(),b?$(b).before(a):$(c).append(a)}))},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){a=[].concat.apply([],a);var e,f,g,h,i=0,j=a[0],k=[],m=this.length;if(!$.support.checkClone&&m>1&&"string"==typeof j&&Yb.test(j))return this.each(function(){$(this).domManip(a,c,d)});if($.isFunction(j))return this.each(function(e){var f=$(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){if(e=$.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,1===g.childNodes.length&&(g=f),f)for(c=c&&$.nodeName(f,"tr"),h=e.cacheable||m-1;m>i;i++)d.call(c&&$.nodeName(this[i],"table")?l(this[i],"tbody"):this[i],i===h?g:$.clone(g,!0,!0));g=f=null,k.length&&$.each(k,function(a,b){b.src?$.ajax?$.ajax({url:b.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):$.error("no ajax"):$.globalEval((b.text||b.textContent||b.innerHTML||"").replace($b,"")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),$.buildFragment=function(a,c,d){var e,f,g,h=a[0];return c=c||P,c=(c[0]||c).ownerDocument||c[0]||c,"undefined"==typeof c.createDocumentFragment&&(c=P),1===a.length&&"string"==typeof h&&h.length<512&&c===P&&"<"===h.charAt(0)&&!Vb.test(h)&&($.support.checkClone||!Yb.test(h))&&($.support.html5Clone||!Wb.test(h))&&(f=!0,e=$.fragments[h],g=e!==b),e||(e=c.createDocumentFragment(),$.clean(a,c,e,d),f&&($.fragments[h]=g&&e)),{fragment:e,cacheable:f}},$.fragments={},$.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){$.fn[a]=function(c){var d,e=0,f=[],g=$(c),h=g.length,i=1===this.length&&this[0].parentNode;if((null==i||i&&11===i.nodeType&&1===i.childNodes.length)&&1===h)return g[b](this[0]),this;for(;h>e;e++)d=(e>0?this.clone(!0):this).get(),$(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),$.extend({clone:function(a,b,c){var d,e,f,g;if($.support.html5Clone||$.isXMLDoc(a)||!Wb.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bc.innerHTML=a.outerHTML,bc.removeChild(g=bc.firstChild)),!($.support.noCloneEvent&&$.support.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||$.isXMLDoc(a)))for(n(a,g),d=o(a),e=o(g),f=0;d[f];++f)e[f]&&n(d[f],e[f]);if(b&&(m(a,g),c))for(d=o(a),e=o(g),f=0;d[f];++f)m(d[f],e[f]);return d=e=null,g},clean:function(a,b,c,d){var e,f,g,h,i,j,l,m,n,o,q,r=0,s=[];for(b&&"undefined"!=typeof b.createDocumentFragment||(b=P),f=b===P&∾null!=(g=a[r]);r++)if("number"==typeof g&&(g+=""),g){if("string"==typeof g)if(Tb.test(g)){for(f=f||k(b),l=l||f.appendChild(b.createElement("div")),g=g.replace(Qb,"<$1>"),h=(Rb.exec(g)||["",""])[1].toLowerCase(),i=_b[h]||_b._default,j=i[0],l.innerHTML=i[1]+g+i[2];j--;)l=l.lastChild;if(!$.support.tbody)for(m=Sb.test(g),n="table"!==h||m?""!==i[1]||m?[]:l.childNodes:l.firstChild&&l.firstChild.childNodes,e=n.length-1;e>=0;--e)$.nodeName(n[e],"tbody")&&!n[e].childNodes.length&&n[e].parentNode.removeChild(n[e]);!$.support.leadingWhitespace&&Pb.test(g)&&l.insertBefore(b.createTextNode(Pb.exec(g)[0]),l.firstChild),g=l.childNodes,l=f.lastChild}else g=b.createTextNode(g);g.nodeType?s.push(g):s=$.merge(s,g)}if(l&&(f.removeChild(l),g=l=f=null),!$.support.appendChecked)for(r=0;null!=(g=s[r]);r++)$.nodeName(g,"input")?p(g):"undefined"!=typeof g.getElementsByTagName&&$.grep(g.getElementsByTagName("input"),p);if(c)for(o=function(a){return!a.type||Zb.test(a.type)?d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a):void 0},r=0;null!=(g=s[r]);r++)$.nodeName(g,"script")&&o(g)||(c.appendChild(g),"undefined"!=typeof g.getElementsByTagName&&(q=$.grep($.merge([],g.getElementsByTagName("script")),o),s.splice.apply(s,[r+1,0].concat(q)),r+=q.length));return s},cleanData:function(a,b){for(var c,d,e,f,g=0,h=$.expando,i=$.cache,j=$.support.deleteExpando,k=$.event.special;null!=(e=a[g]);g++)if((b||$.acceptData(e))&&(d=e[h],c=d&&i[d])){if(c.events)for(f in c.events)k[f]?$.event.remove(e,f):$.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,$.deletedIds.push(d))}}}),function(){var a,b;$.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=$.uaMatch(R.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.webkit&&(b.safari=!0),$.browser=b,$.sub=function(){function a(b,c){return new a.fn.init(b,c)}$.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof $&&!(d instanceof a)&&(d=a(d)),$.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(P);return a}}();var cc,dc,ec,fc=/alpha\([^)]*\)/i,gc=/opacity=([^)]*)/,hc=/^(top|right|bottom|left)$/,ic=/^margin/,jc=new RegExp("^("+_+")(.*)$","i"),kc=new RegExp("^("+_+")(?!px)[a-z%]+$","i"),lc=new RegExp("^([-+])=("+_+")","i"),mc={},nc={position:"absolute",visibility:"hidden",display:"block"},oc={letterSpacing:0,fontWeight:400,lineHeight:1},pc=["Top","Right","Bottom","Left"],qc=["Webkit","O","Moz","ms"],rc=$.fn.toggle;$.fn.extend({css:function(a,c){return $.access(this,function(a,c,d){return d!==b?$.style(a,c,d):$.css(a,c)},a,c,arguments.length>1)},show:function(){return s(this,!0)},hide:function(){return s(this)},toggle:function(a,b){var c="boolean"==typeof a;return $.isFunction(a)&&$.isFunction(b)?rc.apply(this,arguments):this.each(function(){(c?a:r(this))?$(this).show():$(this).hide()})}}),$.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=cc(a,"opacity");return""===c?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":$.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var f,g,h,i=$.camelCase(c),j=a.style;if(c=$.cssProps[i]||($.cssProps[i]=q(j,i)),h=$.cssHooks[c]||$.cssHooks[i],d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];if(g=typeof d,"string"===g&&(f=lc.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat($.css(a,c)),g="number"),!(null==d||"number"===g&&isNaN(d)||("number"===g&&!$.cssNumber[i]&&(d+="px"),h&&"set"in h&&(d=h.set(a,d,e))===b)))try{j[c]=d}catch(k){}}},css:function(a,c,d,e){var f,g,h,i=$.camelCase(c);return c=$.cssProps[i]||($.cssProps[i]=q(a.style,i)),h=$.cssHooks[c]||$.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=cc(a,c)),"normal"===f&&c in oc&&(f=oc[c]),d||e!==b?(g=parseFloat(f),d||$.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?cc=function(a,b){var c,d,e,f,g=getComputedStyle(a,null),h=a.style;return g&&(c=g[b],""===c&&!$.contains(a.ownerDocument.documentElement,a)&&(c=$.style(a,b)),kc.test(c)&&ic.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=c,c=g.width,h.width=d,h.minWidth=e,h.maxWidth=f)),c}:P.documentElement.currentStyle&&(cc=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return null==e&&f&&f[b]&&(e=f[b]),kc.test(e)&&!hc.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left="fontSize"===b?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),""===e?"auto":e}),$.each(["height","width"],function(a,b){$.cssHooks[b]={get:function(a,c,d){return c?0!==a.offsetWidth||"none"!==cc(a,"display")?v(a,b,d):$.swap(a,nc,function(){return v(a,b,d)}):void 0},set:function(a,c,d){return t(a,c,d?u(a,b,d,$.support.boxSizing&&"border-box"===$.css(a,"boxSizing")):0)}}}),$.support.opacity||($.cssHooks.opacity={get:function(a,b){return gc.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=$.isNumeric(b)?"alpha(opacity="+100*b+")":"",f=d&&d.filter||c.filter||"";c.zoom=1,b>=1&&""===$.trim(f.replace(fc,""))&&c.removeAttribute&&(c.removeAttribute("filter"),d&&!d.filter)||(c.filter=fc.test(f)?f.replace(fc,e):f+" "+e)}}),$(function(){$.support.reliableMarginRight||($.cssHooks.marginRight={get:function(a,b){return $.swap(a,{display:"inline-block"},function(){return b?cc(a,"marginRight"):void 0})}}),!$.support.pixelPosition&&$.fn.position&&$.each(["top","left"],function(a,b){$.cssHooks[b]={get:function(a,c){if(c){var d=cc(a,b);return kc.test(d)?$(a).position()[b]+"px":d}}}})}),$.expr&&$.expr.filters&&($.expr.filters.hidden=function(a){return 0===a.offsetWidth&&0===a.offsetHeight||!$.support.reliableHiddenOffsets&&"none"===(a.style&&a.style.display||cc(a,"display"))},$.expr.filters.visible=function(a){return!$.expr.filters.hidden(a)}),$.each({margin:"",padding:"",border:"Width"},function(a,b){$.cssHooks[a+b]={expand:function(c){var d,e="string"==typeof c?c.split(" "):[c],f={};for(d=0;4>d;d++)f[a+pc[d]+b]=e[d]||e[d-2]||e[0];return f}},ic.test(a)||($.cssHooks[a+b].set=t)});var sc=/%20/g,tc=/\[\]$/,uc=/\r?\n/g,vc=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,wc=/^(?:select|textarea)/i;$.fn.extend({serialize:function(){return $.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?$.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||wc.test(this.nodeName)||vc.test(this.type))}).map(function(a,b){var c=$(this).val();return null==c?null:$.isArray(c)?$.map(c,function(a){return{name:b.name,value:a.replace(uc,"\r\n")}}):{name:b.name,value:c.replace(uc,"\r\n")}}).get()}}),$.param=function(a,c){var d,e=[],f=function(a,b){b=$.isFunction(b)?b():null==b?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b) -};if(c===b&&(c=$.ajaxSettings&&$.ajaxSettings.traditional),$.isArray(a)||a.jquery&&!$.isPlainObject(a))$.each(a,function(){f(this.name,this.value)});else for(d in a)x(d,a[d],c,f);return e.join("&").replace(sc,"+")};var xc,yc,zc=/#.*$/,Ac=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Bc=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,Cc=/^(?:GET|HEAD)$/,Dc=/^\/\//,Ec=/\?/,Fc=/)<[^<]*)*<\/script>/gi,Gc=/([?&])_=[^&]*/,Hc=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Ic=$.fn.load,Jc={},Kc={},Lc=["*/"]+["*"];try{xc=Q.href}catch(Mc){xc=P.createElement("a"),xc.href="",xc=xc.href}yc=Hc.exec(xc.toLowerCase())||[],$.fn.load=function(a,c,d){if("string"!=typeof a&&Ic)return Ic.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),$.isFunction(c)?(d=c,c=b):"object"==typeof c&&(f="POST"),$.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?$("
    ").append(a.replace(Fc,"")).find(e):a)}),this},$.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){$.fn[b]=function(a){return this.on(b,a)}}),$.each(["get","post"],function(a,c){$[c]=function(a,d,e,f){return $.isFunction(d)&&(f=f||e,e=d,d=b),$.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),$.extend({getScript:function(a,c){return $.get(a,b,c,"script")},getJSON:function(a,b,c){return $.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?A(a,$.ajaxSettings):(b=a,a=$.ajaxSettings),A(a,b),a},ajaxSettings:{url:xc,isLocal:Bc.test(yc[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Lc},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":$.parseJSON,"text xml":$.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:y(Jc),ajaxTransport:y(Kc),ajax:function(a,c){function d(a,c,d,g){var j,l,s,t,v,x=c;2!==u&&(u=2,i&&clearTimeout(i),h=b,f=g||"",w.readyState=a>0?4:0,d&&(t=B(m,w,d)),a>=200&&300>a||304===a?(m.ifModified&&(v=w.getResponseHeader("Last-Modified"),v&&($.lastModified[e]=v),v=w.getResponseHeader("Etag"),v&&($.etag[e]=v)),304===a?(x="notmodified",j=!0):(j=C(m,t),x=j.state,l=j.data,s=j.error,j=!s)):(s=x,(!x||a)&&(x="error",0>a&&(a=0))),w.status=a,w.statusText=""+(c||x),j?p.resolveWith(n,[l,x,w]):p.rejectWith(n,[w,x,s]),w.statusCode(r),r=b,k&&o.trigger("ajax"+(j?"Success":"Error"),[w,m,j?l:s]),q.fireWith(n,[w,x]),k&&(o.trigger("ajaxComplete",[w,m]),--$.active||$.event.trigger("ajaxStop")))}"object"==typeof a&&(c=a,a=b),c=c||{};var e,f,g,h,i,j,k,l,m=$.ajaxSetup({},c),n=m.context||m,o=n!==m&&(n.nodeType||n instanceof $)?$(n):$.event,p=$.Deferred(),q=$.Callbacks("once memory"),r=m.statusCode||{},s={},t={},u=0,v="canceled",w={readyState:0,setRequestHeader:function(a,b){if(!u){var c=a.toLowerCase();a=t[c]=t[c]||a,s[a]=b}return this},getAllResponseHeaders:function(){return 2===u?f:null},getResponseHeader:function(a){var c;if(2===u){if(!g)for(g={};c=Ac.exec(f);)g[c[1].toLowerCase()]=c[2];c=g[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return u||(m.mimeType=a),this},abort:function(a){return a=a||v,h&&h.abort(a),d(0,a),this}};if(p.promise(w),w.success=w.done,w.error=w.fail,w.complete=q.add,w.statusCode=function(a){if(a){var b;if(2>u)for(b in a)r[b]=[r[b],a[b]];else b=a[w.status],w.always(b)}return this},m.url=((a||m.url)+"").replace(zc,"").replace(Dc,yc[1]+"//"),m.dataTypes=$.trim(m.dataType||"*").toLowerCase().split(bb),null==m.crossDomain&&(j=Hc.exec(m.url.toLowerCase()),m.crossDomain=!(!j||j[1]==yc[1]&&j[2]==yc[2]&&(j[3]||("http:"===j[1]?80:443))==(yc[3]||("http:"===yc[1]?80:443)))),m.data&&m.processData&&"string"!=typeof m.data&&(m.data=$.param(m.data,m.traditional)),z(Jc,m,c,w),2===u)return w;if(k=m.global,m.type=m.type.toUpperCase(),m.hasContent=!Cc.test(m.type),k&&0===$.active++&&$.event.trigger("ajaxStart"),!m.hasContent&&(m.data&&(m.url+=(Ec.test(m.url)?"&":"?")+m.data,delete m.data),e=m.url,m.cache===!1)){var x=$.now(),y=m.url.replace(Gc,"$1_="+x);m.url=y+(y===m.url?(Ec.test(m.url)?"&":"?")+"_="+x:"")}(m.data&&m.hasContent&&m.contentType!==!1||c.contentType)&&w.setRequestHeader("Content-Type",m.contentType),m.ifModified&&(e=e||m.url,$.lastModified[e]&&w.setRequestHeader("If-Modified-Since",$.lastModified[e]),$.etag[e]&&w.setRequestHeader("If-None-Match",$.etag[e])),w.setRequestHeader("Accept",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+("*"!==m.dataTypes[0]?", "+Lc+"; q=0.01":""):m.accepts["*"]);for(l in m.headers)w.setRequestHeader(l,m.headers[l]);if(!m.beforeSend||m.beforeSend.call(n,w,m)!==!1&&2!==u){v="abort";for(l in{success:1,error:1,complete:1})w[l](m[l]);if(h=z(Kc,m,c,w)){w.readyState=1,k&&o.trigger("ajaxSend",[w,m]),m.async&&m.timeout>0&&(i=setTimeout(function(){w.abort("timeout")},m.timeout));try{u=1,h.send(s,d)}catch(A){if(!(2>u))throw A;d(-1,A)}}else d(-1,"No Transport");return w}return w.abort()},active:0,lastModified:{},etag:{}});var Nc=[],Oc=/\?/,Pc=/(=)\?(?=&|$)|\?\?/,Qc=$.now();$.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Nc.pop()||$.expando+"_"+Qc++;return this[a]=!0,a}}),$.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&Pc.test(j),m=k&&!l&&"string"==typeof i&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&Pc.test(i);return"jsonp"===c.dataTypes[0]||l||m?(f=c.jsonpCallback=$.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(Pc,"$1"+f):m?c.data=i.replace(Pc,"$1"+f):k&&(c.url+=(Oc.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||$.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,Nc.push(f)),h&&$.isFunction(g)&&g(h[0]),h=g=b}),"script"):void 0}),$.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return $.globalEval(a),a}}}),$.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),$.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=P.head||P.getElementsByTagName("head")[0]||P.documentElement;return{send:function(e,f){c=P.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){(e||!c.readyState||/loaded|complete/.test(c.readyState))&&(c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||f(200,"success"))},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var Rc,Sc=a.ActiveXObject?function(){for(var a in Rc)Rc[a](0,1)}:!1,Tc=0;$.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&D()||E()}:D,function(a){$.extend($.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}($.ajaxSettings.xhr()),$.support.ajax&&$.ajaxTransport(function(c){if(!c.crossDomain||$.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();if(c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async),c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||4===i.readyState))if(d=b,g&&(i.onreadystatechange=$.noop,Sc&&delete Rc[g]),e)4!==i.readyState&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}h||!c.isLocal||c.crossDomain?1223===h&&(h=204):h=l.text?200:404}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?4===i.readyState?setTimeout(d,0):(g=++Tc,Sc&&(Rc||(Rc={},$(a).unload(Sc)),Rc[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var Uc,Vc,Wc=/^(?:toggle|show|hide)$/,Xc=new RegExp("^(?:([-+])=|)("+_+")([a-z%]*)$","i"),Yc=/queueHooks$/,Zc=[J],$c={"*":[function(a,b){var c,d,e,f=this.createTween(a,b),g=Xc.exec(b),h=f.cur(),i=+h||0,j=1;if(g){if(c=+g[2],d=g[3]||($.cssNumber[a]?"":"px"),"px"!==d&&i){i=$.css(f.elem,a,!0)||c||1;do e=j=j||".5",i/=j,$.style(f.elem,a,i+d),j=f.cur()/h;while(1!==j&&j!==e)}f.unit=d,f.start=i,f.end=g[1]?i+(g[1]+1)*c:c}return f}]};$.Animation=$.extend(H,{tweener:function(a,b){$.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],$c[c]=$c[c]||[],$c[c].unshift(b)},prefilter:function(a,b){b?Zc.unshift(a):Zc.push(a)}}),$.Tween=K,K.prototype={constructor:K,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||($.cssNumber[c]?"":"px")},cur:function(){var a=K.propHooks[this.prop];return a&&a.get?a.get(this):K.propHooks._default.get(this)},run:function(a){var b,c=K.propHooks[this.prop];return this.pos=b=$.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration),this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):K.propHooks._default.set(this),this}},K.prototype.init.prototype=K.prototype,K.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=$.css(a.elem,a.prop,!1,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){$.fx.step[a.prop]?$.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[$.cssProps[a.prop]]||$.cssHooks[a.prop])?$.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},K.propHooks.scrollTop=K.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},$.each(["toggle","show","hide"],function(a,b){var c=$.fn[b];$.fn[b]=function(d,e,f){return null==d||"boolean"==typeof d||!a&&$.isFunction(d)&&$.isFunction(e)?c.apply(this,arguments):this.animate(L(b,!0),d,e,f)}}),$.fn.extend({fadeTo:function(a,b,c,d){return this.filter(r).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=$.isEmptyObject(a),f=$.speed(b,c,d),g=function(){var b=H(this,$.extend({},a),f);e&&b.stop(!0)};return e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,c,d){var e=function(a){var b=a.stop;delete a.stop,b(d)};return"string"!=typeof a&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,c=null!=a&&a+"queueHooks",f=$.timers,g=$._data(this);if(c)g[c]&&g[c].stop&&e(g[c]);else for(c in g)g[c]&&g[c].stop&&Yc.test(c)&&e(g[c]);for(c=f.length;c--;)f[c].elem===this&&(null==a||f[c].queue===a)&&(f[c].anim.stop(d),b=!1,f.splice(c,1));(b||!d)&&$.dequeue(this,a)})}}),$.each({slideDown:L("show"),slideUp:L("hide"),slideToggle:L("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){$.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),$.speed=function(a,b,c){var d=a&&"object"==typeof a?$.extend({},a):{complete:c||!c&&b||$.isFunction(a)&&a,duration:a,easing:c&&b||b&&!$.isFunction(b)&&b};return d.duration=$.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in $.fx.speeds?$.fx.speeds[d.duration]:$.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){$.isFunction(d.old)&&d.old.call(this),d.queue&&$.dequeue(this,d.queue)},d},$.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},$.timers=[],$.fx=K.prototype.init,$.fx.tick=function(){for(var a,b=$.timers,c=0;c-1,l={},m={};k?(m=g.position(),e=m.top,f=m.left):(e=parseFloat(i)||0,f=parseFloat(j)||0),$.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(l.top=b.top-h.top+e),null!=b.left&&(l.left=b.left-h.left+f),"using"in b?b.using.call(a,l):g.css(l)}},$.fn.extend({position:function(){if(this[0]){var a=this[0],b=this.offsetParent(),c=this.offset(),d=_c.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat($.css(a,"marginTop"))||0,c.left-=parseFloat($.css(a,"marginLeft"))||0,d.top+=parseFloat($.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat($.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||P.body;a&&!_c.test(a.nodeName)&&"static"===$.css(a,"position");)a=a.offsetParent;return a||P.body})}}),$.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);$.fn[a]=function(e){return $.access(this,function(a,e,f){var g=M(a);return f===b?g?c in g?g[c]:g.document.documentElement[e]:a[e]:void(g?g.scrollTo(d?$(g).scrollLeft():f,d?f:$(g).scrollTop()):a[e]=f)},a,e,arguments.length,null)}}),$.each({Height:"height",Width:"width"},function(a,c){$.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){$.fn[e]=function(e,f){var g=arguments.length&&(d||"boolean"!=typeof e),h=d||(e===!0||f===!0?"margin":"border");return $.access(this,function(c,d,e){var f;return $.isWindow(c)?c.document.documentElement["client"+a]:9===c.nodeType?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?$.css(c,d,e,h):$.style(c,d,e,h)},c,g?e:b,g)}})}),a.jQuery=a.$=$,"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return $})}(window),function(){var a=this,b=a._,c={},d=Array.prototype,e=Object.prototype,f=Function.prototype,g=d.push,h=d.slice,i=d.concat,j=e.toString,k=e.hasOwnProperty,l=d.forEach,m=d.map,n=d.reduce,o=d.reduceRight,p=d.filter,q=d.every,r=d.some,s=d.indexOf,t=d.lastIndexOf,u=Array.isArray,v=Object.keys,w=f.bind,x=function(a){return a instanceof x?a:this instanceof x?void(this._wrapped=a):new x(a)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=x),exports._=x):a._=x,x.VERSION="1.5.1";var y=x.each=x.forEach=function(a,b,d){if(null!=a)if(l&&a.forEach===l)a.forEach(b,d);else if(a.length===+a.length){for(var e=0,f=a.length;f>e;e++)if(b.call(d,a[e],e,a)===c)return}else for(var g in a)if(x.has(a,g)&&b.call(d,a[g],g,a)===c)return};x.map=x.collect=function(a,b,c){var d=[];return null==a?d:m&&a.map===m?a.map(b,c):(y(a,function(a,e,f){d.push(b.call(c,a,e,f))}),d)};var z="Reduce of empty array with no initial value";x.reduce=x.foldl=x.inject=function(a,b,c,d){var e=arguments.length>2;if(null==a&&(a=[]),n&&a.reduce===n)return d&&(b=x.bind(b,d)),e?a.reduce(b,c):a.reduce(b);if(y(a,function(a,f,g){e?c=b.call(d,c,a,f,g):(c=a,e=!0)}),!e)throw new TypeError(z);return c},x.reduceRight=x.foldr=function(a,b,c,d){var e=arguments.length>2;if(null==a&&(a=[]),o&&a.reduceRight===o)return d&&(b=x.bind(b,d)),e?a.reduceRight(b,c):a.reduceRight(b);var f=a.length;if(f!==+f){var g=x.keys(a);f=g.length}if(y(a,function(h,i,j){i=g?g[--f]:--f,e?c=b.call(d,c,a[i],i,j):(c=a[i],e=!0)}),!e)throw new TypeError(z);return c},x.find=x.detect=function(a,b,c){var d;return A(a,function(a,e,f){return b.call(c,a,e,f)?(d=a,!0):void 0}),d},x.filter=x.select=function(a,b,c){var d=[];return null==a?d:p&&a.filter===p?a.filter(b,c):(y(a,function(a,e,f){b.call(c,a,e,f)&&d.push(a)}),d)},x.reject=function(a,b,c){return x.filter(a,function(a,d,e){return!b.call(c,a,d,e)},c)},x.every=x.all=function(a,b,d){b||(b=x.identity);var e=!0;return null==a?e:q&&a.every===q?a.every(b,d):(y(a,function(a,f,g){return(e=e&&b.call(d,a,f,g))?void 0:c}),!!e)};var A=x.some=x.any=function(a,b,d){b||(b=x.identity);var e=!1;return null==a?e:r&&a.some===r?a.some(b,d):(y(a,function(a,f,g){return e||(e=b.call(d,a,f,g))?c:void 0}),!!e)};x.contains=x.include=function(a,b){return null==a?!1:s&&a.indexOf===s?-1!=a.indexOf(b):A(a,function(a){return a===b})},x.invoke=function(a,b){var c=h.call(arguments,2),d=x.isFunction(b);return x.map(a,function(a){return(d?b:a[b]).apply(a,c)})},x.pluck=function(a,b){return x.map(a,function(a){return a[b]})},x.where=function(a,b,c){return x.isEmpty(b)?c?void 0:[]:x[c?"find":"filter"](a,function(a){for(var c in b)if(b[c]!==a[c])return!1;return!0})},x.findWhere=function(a,b){return x.where(a,b,!0)},x.max=function(a,b,c){if(!b&&x.isArray(a)&&a[0]===+a[0]&&a.length<65535)return Math.max.apply(Math,a);if(!b&&x.isEmpty(a))return-1/0;var d={computed:-1/0,value:-1/0};return y(a,function(a,e,f){var g=b?b.call(c,a,e,f):a;g>d.computed&&(d={value:a,computed:g})}),d.value},x.min=function(a,b,c){if(!b&&x.isArray(a)&&a[0]===+a[0]&&a.length<65535)return Math.min.apply(Math,a);if(!b&&x.isEmpty(a))return 1/0;var d={computed:1/0,value:1/0};return y(a,function(a,e,f){var g=b?b.call(c,a,e,f):a;gd||void 0===c)return 1;if(d>c||void 0===d)return-1}return a.indexf;){var h=f+g>>>1;c.call(d,a[h])=0})})},x.difference=function(a){var b=i.apply(d,h.call(arguments,1));return x.filter(a,function(a){return!x.contains(b,a)})},x.zip=function(){for(var a=x.max(x.pluck(arguments,"length").concat(0)),b=new Array(a),c=0;a>c;c++)b[c]=x.pluck(arguments,""+c);return b},x.object=function(a,b){if(null==a)return{};for(var c={},d=0,e=a.length;e>d;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c},x.indexOf=function(a,b,c){if(null==a)return-1;var d=0,e=a.length;if(c){if("number"!=typeof c)return d=x.sortedIndex(a,b),a[d]===b?d:-1;d=0>c?Math.max(0,e+c):c}if(s&&a.indexOf===s)return a.indexOf(b,c);for(;e>d;d++)if(a[d]===b)return d;return-1},x.lastIndexOf=function(a,b,c){if(null==a)return-1;var d=null!=c;if(t&&a.lastIndexOf===t)return d?a.lastIndexOf(b,c):a.lastIndexOf(b);for(var e=d?c:a.length;e--;)if(a[e]===b)return e;return-1},x.range=function(a,b,c){arguments.length<=1&&(b=a||0,a=0),c=arguments[2]||1;for(var d=Math.max(Math.ceil((b-a)/c),0),e=0,f=new Array(d);d>e;)f[e++]=a,a+=c;return f};var E=function(){};x.bind=function(a,b){var c,d;if(w&&a.bind===w)return w.apply(a,h.call(arguments,1));if(!x.isFunction(a))throw new TypeError;return c=h.call(arguments,2),d=function(){if(!(this instanceof d))return a.apply(b,c.concat(h.call(arguments)));E.prototype=a.prototype;var e=new E;E.prototype=null;var f=a.apply(e,c.concat(h.call(arguments)));return Object(f)===f?f:e}},x.partial=function(a){var b=h.call(arguments,1);return function(){return a.apply(this,b.concat(h.call(arguments)))}},x.bindAll=function(a){var b=h.call(arguments,1);if(0===b.length)throw new Error("bindAll must be passed function names");return y(b,function(b){a[b]=x.bind(a[b],a)}),a},x.memoize=function(a,b){var c={};return b||(b=x.identity),function(){var d=b.apply(this,arguments);return x.has(c,d)?c[d]:c[d]=a.apply(this,arguments)}},x.delay=function(a,b){var c=h.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)},x.defer=function(a){return x.delay.apply(x,[a,1].concat(h.call(arguments,1)))},x.throttle=function(a,b,c){var d,e,f,g=null,h=0;c||(c={});var i=function(){h=c.leading===!1?0:new Date,g=null,f=a.apply(d,e)};return function(){var j=new Date;h||c.leading!==!1||(h=j);var k=b-(j-h);return d=this,e=arguments,0>=k?(clearTimeout(g),g=null,h=j,f=a.apply(d,e)):g||c.trailing===!1||(g=setTimeout(i,k)),f}},x.debounce=function(a,b,c){var d,e=null;return function(){var f=this,g=arguments,h=function(){e=null,c||(d=a.apply(f,g))},i=c&&!e;return clearTimeout(e),e=setTimeout(h,b),i&&(d=a.apply(f,g)),d}},x.once=function(a){var b,c=!1;return function(){return c?b:(c=!0,b=a.apply(this,arguments),a=null,b)}},x.wrap=function(a,b){return function(){var c=[a];return g.apply(c,arguments),b.apply(this,c)}},x.compose=function(){var a=arguments;return function(){for(var b=arguments,c=a.length-1;c>=0;c--)b=[a[c].apply(this,b)];return b[0]}},x.after=function(a,b){return function(){return--a<1?b.apply(this,arguments):void 0}},x.keys=v||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var b=[];for(var c in a)x.has(a,c)&&b.push(c);return b},x.values=function(a){var b=[];for(var c in a)x.has(a,c)&&b.push(a[c]);return b},x.pairs=function(a){var b=[];for(var c in a)x.has(a,c)&&b.push([c,a[c]]);return b},x.invert=function(a){var b={};for(var c in a)x.has(a,c)&&(b[a[c]]=c);return b},x.functions=x.methods=function(a){var b=[];for(var c in a)x.isFunction(a[c])&&b.push(c);return b.sort()},x.extend=function(a){return y(h.call(arguments,1),function(b){if(b)for(var c in b)a[c]=b[c]}),a},x.pick=function(a){var b={},c=i.apply(d,h.call(arguments,1));return y(c,function(c){c in a&&(b[c]=a[c])}),b},x.omit=function(a){var b={},c=i.apply(d,h.call(arguments,1));for(var e in a)x.contains(c,e)||(b[e]=a[e]);return b},x.defaults=function(a){return y(h.call(arguments,1),function(b){if(b)for(var c in b)void 0===a[c]&&(a[c]=b[c])}),a},x.clone=function(a){return x.isObject(a)?x.isArray(a)?a.slice():x.extend({},a):a},x.tap=function(a,b){return b(a),a};var F=function(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;if(null==a||null==b)return a===b;a instanceof x&&(a=a._wrapped),b instanceof x&&(b=b._wrapped);var e=j.call(a);if(e!=j.call(b))return!1;switch(e){case"[object String]":return a==String(b);case"[object Number]":return a!=+a?b!=+b:0==a?1/a==1/b:a==+b;case"[object Date]":case"[object Boolean]":return+a==+b;case"[object RegExp]":return a.source==b.source&&a.global==b.global&&a.multiline==b.multiline&&a.ignoreCase==b.ignoreCase}if("object"!=typeof a||"object"!=typeof b)return!1;for(var f=c.length;f--;)if(c[f]==a)return d[f]==b;var g=a.constructor,h=b.constructor;if(g!==h&&!(x.isFunction(g)&&g instanceof g&&x.isFunction(h)&&h instanceof h))return!1;c.push(a),d.push(b);var i=0,k=!0;if("[object Array]"==e){if(i=a.length,k=i==b.length)for(;i--&&(k=F(a[i],b[i],c,d)););}else{for(var l in a)if(x.has(a,l)&&(i++,!(k=x.has(b,l)&&F(a[l],b[l],c,d))))break;if(k){for(l in b)if(x.has(b,l)&&!i--)break;k=!i}}return c.pop(),d.pop(),k};x.isEqual=function(a,b){return F(a,b,[],[])},x.isEmpty=function(a){if(null==a)return!0;if(x.isArray(a)||x.isString(a))return 0===a.length;for(var b in a)if(x.has(a,b))return!1;return!0},x.isElement=function(a){return!(!a||1!==a.nodeType)},x.isArray=u||function(a){return"[object Array]"==j.call(a)},x.isObject=function(a){return a===Object(a)},y(["Arguments","Function","String","Number","Date","RegExp"],function(a){x["is"+a]=function(b){return j.call(b)=="[object "+a+"]"}}),x.isArguments(arguments)||(x.isArguments=function(a){return!(!a||!x.has(a,"callee"))}),"function"!=typeof/./&&(x.isFunction=function(a){return"function"==typeof a}),x.isFinite=function(a){return isFinite(a)&&!isNaN(parseFloat(a))},x.isNaN=function(a){return x.isNumber(a)&&a!=+a},x.isBoolean=function(a){return a===!0||a===!1||"[object Boolean]"==j.call(a)},x.isNull=function(a){return null===a},x.isUndefined=function(a){return void 0===a},x.has=function(a,b){return k.call(a,b)},x.noConflict=function(){return a._=b,this},x.identity=function(a){return a},x.times=function(a,b,c){for(var d=Array(Math.max(0,a)),e=0;a>e;e++)d[e]=b.call(c,e);return d},x.random=function(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))};var G={escape:{"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"}};G.unescape=x.invert(G.escape);var H={escape:new RegExp("["+x.keys(G.escape).join("")+"]","g"),unescape:new RegExp("("+x.keys(G.unescape).join("|")+")","g")};x.each(["escape","unescape"],function(a){x[a]=function(b){return null==b?"":(""+b).replace(H[a],function(b){return G[a][b]})}}),x.result=function(a,b){if(null==a)return void 0;var c=a[b];return x.isFunction(c)?c.call(a):c},x.mixin=function(a){y(x.functions(a),function(b){var c=x[b]=a[b];x.prototype[b]=function(){var a=[this._wrapped];return g.apply(a,arguments),M.call(this,c.apply(x,a))}})};var I=0;x.uniqueId=function(a){var b=++I+"";return a?a+b:b},x.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var J=/(.)^/,K={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},L=/\\|'|\r|\n|\t|\u2028|\u2029/g;x.template=function(a,b,c){var d;c=x.defaults({},c,x.templateSettings);var e=new RegExp([(c.escape||J).source,(c.interpolate||J).source,(c.evaluate||J).source].join("|")+"|$","g"),f=0,g="__p+='";a.replace(e,function(b,c,d,e,h){return g+=a.slice(f,h).replace(L,function(a){return"\\"+K[a]}),c&&(g+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'"),d&&(g+="'+\n((__t=("+d+"))==null?'':__t)+\n'"),e&&(g+="';\n"+e+"\n__p+='"),f=h+b.length,b}),g+="';\n",c.variable||(g="with(obj||{}){\n"+g+"}\n"),g="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+g+"return __p;\n";try{d=new Function(c.variable||"obj","_",g)}catch(h){throw h.source=g,h}if(b)return d(b,x);var i=function(a){return d.call(this,a,x)};return i.source="function("+(c.variable||"obj")+"){\n"+g+"}",i},x.chain=function(a){return x(a).chain()};var M=function(a){return this._chain?x(a).chain():a};x.mixin(x),y(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=d[a];x.prototype[a]=function(){var c=this._wrapped;return b.apply(c,arguments),"shift"!=a&&"splice"!=a||0!==c.length||delete c[0],M.call(this,c)}}),y(["concat","join","slice"],function(a){var b=d[a];x.prototype[a]=function(){return M.call(this,b.apply(this._wrapped,arguments))}}),x.extend(x.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}.call(this),define("underscore-src",function(){}),define("underscore",["underscore-src"],function(){var a=window._;return a.mixin({move:function(a,b,c){return a.splice(c,0,a.splice(b,1)[0]),a},remove:function(a,b){return a.splice(b,1),a},toggle:function(a,b,c){return a===b?c:b},toggleInOut:function(b,c){return a.contains(b,c)?b=a.without(b,c):b.push(c),b}}),a}),("undefined"==typeof Crypto||!Crypto.util)&&function(){var a=window.Crypto={},b=a.util={rotl:function(a,b){return a<>>32-b},rotr:function(a,b){return a<<32-b|a>>>b},endian:function(a){if(a.constructor==Number)return 16711935&b.rotl(a,8)|4278255360&b.rotl(a,24);for(var c=0;c0;a--)b.push(Math.floor(256*Math.random()));return b},bytesToWords:function(a){for(var b=[],c=0,d=0;c>>5]|=(255&a[c])<<24-d%32;return b},wordsToBytes:function(a){for(var b=[],c=0;c<32*a.length;c+=8)b.push(a[c>>>5]>>>24-c%32&255);return b},bytesToHex:function(a){for(var b=[],c=0;c>>4).toString(16)),b.push((15&a[c]).toString(16));return b.join("")},hexToBytes:function(a){for(var b=[],c=0;cf;f++)b.push(8*d+6*f<=8*a.length?"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>>6*(3-f)&63):"=");return b.join("")},base64ToBytes:function(a){if("function"==typeof atob)return c.stringToBytes(atob(a));for(var a=a.replace(/[^A-Z0-9+\/]/gi,""),b=[],d=0,e=0;d>>6-2*e);return b}},a=a.charenc={};a.UTF8={stringToBytes:function(a){return c.stringToBytes(unescape(encodeURIComponent(a)))},bytesToString:function(a){return decodeURIComponent(escape(c.bytesToString(a)))}};var c=a.Binary={stringToBytes:function(a){for(var b=[],c=0;c0){var d=a.url.indexOf("//")+2,e=a.url.substring(d,c),f=b.charenc.Binary.stringToBytes(e);a.basicAuth=b.util.bytesToBase64(f);var g=a.url.substring(0,d); -a.url=g+a.url.substring(c+1)}return a},g=function(b){return b.urls=a.map(b.url.split(","),function(a){return a.trim()}),b};c.graphiteUrl&&(e.datasources={graphite:{type:"graphite",url:c.graphiteUrl,"default":!0}}),a.each(e.datasources,function(a,b){a.name=b,f(a),"influxdb"===a.type&&g(a)});var h=f({url:e.elasticsearch});return e.elasticsearchBasicAuth=h.basicAuth,e.elasticsearch=h.url,e.plugins.panels&&(e.panels=a.union(e.panels,e.plugins.panels)),e}}),function(a,b,c){function d(){var b=a.angular;return a.angular=dd,b}function e(a){return a&&"number"==typeof a.length?"function"!=typeof a.hasOwnProperty&&"function"!=typeof a.constructor?!0:a instanceof gb||Yc&&a instanceof Yc||"[object Object]"!==cd.call(a)||"function"==typeof a.callee:!1}function f(a,b,c){var d;if(a)if(y(a))for(d in a)"prototype"!=d&&"length"!=d&&"name"!=d&&a.hasOwnProperty(d)&&b.call(c,a[d],d);else if(a.forEach&&a.forEach!==f)a.forEach(b,c);else if(e(a))for(d=0;d=0&&a.splice(c,1),b}function I(a,b){if(z(a)||A(a))throw Error("Can't copy Window or Scope");if(b){if(a===b)throw Error("Can't copy equivalent objects or arrays");if(x(a)){b.length=0;for(var c=0;ce;e++)if(!K(a[e],b[e]))return!1;return!0}}return!1}function L(a,b,c){return a.concat(ad.call(b,c))}function M(a,b){return ad.call(a,b||0)}function N(a,b){var c=arguments.length>2?M(arguments,2):[];return!y(b)||b instanceof RegExp?b:c.length?function(){return arguments.length?b.apply(a,c.concat(ad.call(arguments,0))):b.apply(a,c)}:function(){return arguments.length?b.apply(a,arguments):b.call(a)}}function O(a,d){var e=d;return/^\$+/.test(a)?e=c:z(d)?e="$WINDOW":d&&b===d?e="$DOCUMENT":A(d)&&(e="$SCOPE"),e}function P(a,b){return JSON.stringify(a,O,b?" ":null)}function Q(a){return u(a)?JSON.parse(a):a}function R(a){if(a&&0!==a.length){var b=Tc(""+a);a=!("f"==b||"0"==b||"false"==b||"no"==b||"n"==b||"[]"==b)}else a=!1;return a}function S(a){a=Xc(a).clone();try{a.html("")}catch(b){}var c=3,d=Xc("
    ").append(a).html();try{return a[0].nodeType===c?Tc(d):d.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+Tc(b)})}catch(b){return Tc(d)}}function T(a){var b,c,d={};return f((a||"").split("&"),function(a){a&&(b=a.split("="),c=decodeURIComponent(b[0]),d[c]=s(b[1])?decodeURIComponent(b[1]):!0)}),d}function U(a){var b=[];return f(a,function(a,c){b.push(W(c,!0)+(a===!0?"":"="+W(a,!0)))}),b.length?b.join("&"):""}function V(a){return W(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function W(a,b){return encodeURIComponent(a).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,b?"%20":"+")}function X(a,c){function d(a){a&&h.push(a)}var e,g,h=[a],i=["ng:app","ng-app","x-ng-app","data-ng-app"],j=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/;f(i,function(c){i[c]=!0,d(b.getElementById(c)),c=c.replace(":","\\:"),a.querySelectorAll&&(f(a.querySelectorAll("."+c),d),f(a.querySelectorAll("."+c+"\\:"),d),f(a.querySelectorAll("["+c+"]"),d))}),f(h,function(a){if(!e){var b=" "+a.className+" ",c=j.exec(b);c?(e=a,g=(c[2]||"").replace(/\s+/g,",")):f(a.attributes,function(b){!e&&i[b.name]&&(e=a,g=b.value)})}}),e&&c(e,g?[g]:[])}function Y(b,c){var d=function(){b=Xc(b),c=c||[],c.unshift(["$provide",function(a){a.value("$rootElement",b)}]),c.unshift("ng");var a=yb(c);return a.invoke(["$rootScope","$rootElement","$compile","$injector","$animator",function(a,b,c,d,e){a.$apply(function(){b.data("$injector",d),c(b)(a)}),e.enabled(!0)}]),a},e=/^NG_DEFER_BOOTSTRAP!/;return a&&!e.test(a.name)?d():(a.name=a.name.replace(e,""),void(ed.resumeBootstrap=function(a){f(a,function(a){c.push(a)}),d()}))}function Z(a,b){return b=b||"_",a.replace(gd,function(a,c){return(c?b:"")+a.toLowerCase()})}function $(){Yc=a.jQuery,Yc?(Xc=Yc,l(Yc.fn,{scope:pd.scope,controller:pd.controller,injector:pd.injector,inheritedData:pd.inheritedData}),fb("remove",!0),fb("empty"),fb("html")):Xc=gb,ed.element=Xc}function _(a,b,c){if(!a)throw new Error("Argument '"+(b||"?")+"' is "+(c||"required"));return a}function ab(a,b,c){return c&&x(a)&&(a=a[a.length-1]),_(y(a),b,"not a function, got "+(a&&"object"==typeof a?a.constructor.name||"Object":typeof a)),a}function bb(a){function b(a,b,c){return a[b]||(a[b]=c())}return b(b(a,"angular",Object),"module",function(){var a={};return function(c,d,e){return d&&a.hasOwnProperty(c)&&(a[c]=null),b(a,c,function(){function a(a,c,d){return function(){return b[d||"push"]([a,c,arguments]),h}}if(!d)throw Error("No module: "+c);var b=[],f=[],g=a("$injector","invoke"),h={_invokeQueue:b,_runBlocks:f,requires:d,name:c,provider:a("$provide","provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),animation:a("$animationProvider","register"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:g,run:function(a){return f.push(a),this}};return e&&g(e),h})}})}function cb(b){l(b,{bootstrap:Y,copy:I,extend:l,equals:K,element:Xc,forEach:f,injector:yb,noop:o,bind:N,toJson:P,fromJson:Q,identity:p,isUndefined:r,isDefined:s,isString:u,isFunction:y,isObject:t,isNumber:v,isElement:D,isArray:x,version:hd,isDate:w,lowercase:Tc,uppercase:Uc,callbacks:{counter:0},noConflict:d}),Zc=bb(a);try{Zc("ngLocale")}catch(c){Zc("ngLocale",[]).provider("$locale",tc)}Zc("ng",["ngLocale"],["$provide",function(a){a.provider("$compile",Fb).directive({a:Nd,input:Xd,textarea:Xd,form:Rd,script:Ge,select:Ie,style:Ke,option:Je,ngBind:he,ngBindHtmlUnsafe:je,ngBindTemplate:ie,ngClass:ke,ngClassEven:me,ngClassOdd:le,ngCsp:pe,ngCloak:ne,ngController:oe,ngForm:Sd,ngHide:ze,ngIf:se,ngInclude:te,ngInit:ue,ngNonBindable:ve,ngPluralize:we,ngRepeat:xe,ngShow:ye,ngSubmit:re,ngStyle:Ae,ngSwitch:Be,ngSwitchWhen:Ce,ngSwitchDefault:De,ngOptions:He,ngView:Fe,ngTransclude:Ee,ngModel:be,ngList:ee,ngChange:ce,required:de,ngRequired:de,ngValue:ge}).directive(Od).directive(qe),a.provider({$anchorScroll:zb,$animation:Ab,$animator:wd,$browser:Cb,$cacheFactory:Db,$controller:Hb,$document:Ib,$exceptionHandler:Jb,$filter:vc,$interpolate:Kb,$http:qc,$httpBackend:rc,$location:Xb,$log:Yb,$parse:dc,$route:gc,$routeParams:hc,$rootScope:ic,$q:ec,$sniffer:jc,$templateCache:Eb,$timeout:uc,$window:kc})}])}function db(){return++kd}function eb(a){return a.replace(nd,function(a,b,c,d){return d?c.toUpperCase():c}).replace(od,"Moz$1")}function fb(a,b){function c(){for(var a,c,e,f,g,h,i,j=[this],k=b;j.length;)for(a=j.shift(),c=0,e=a.length;e>c;c++)for(f=Xc(a[c]),k?f.triggerHandler("$destroy"):k=!k,g=0,h=(i=f.children()).length;h>g;g++)j.push(Yc(i[g]));return d.apply(this,arguments)}var d=Yc.fn[a];d=d.$original||d,c.$original=d,Yc.fn[a]=c}function gb(a){if(a instanceof gb)return a;if(!(this instanceof gb)){if(u(a)&&"<"!=a.charAt(0))throw Error("selectors not implemented");return new gb(a)}if(u(a)){var c=b.createElement("div");c.innerHTML="
     
    "+a,c.removeChild(c.firstChild),qb(this,c.childNodes),this.remove()}else qb(this,a)}function hb(a){return a.cloneNode(!0)}function ib(a){kb(a);for(var b=0,c=a.childNodes||[];b-1}function ob(a,b){b&&f(b.split(" "),function(b){a.className=C((" "+a.className+" ").replace(/[\n\t]/g," ").replace(" "+C(b)+" "," "))})}function pb(a,b){b&&f(b.split(" "),function(b){nb(a,b)||(a.className=C(a.className+" "+C(b)))})}function qb(a,b){if(b){b=b.nodeName||!s(b.length)||z(b)?[b]:b;for(var c=0;c=_c?(d.preventDefault=null,d.stopPropagation=null,d.isDefaultPrevented=null):(delete d.preventDefault,delete d.stopPropagation,delete d.isDefaultPrevented)};return d.elem=a,d}function vb(a){var b,d=typeof a;return"object"==d&&null!==a?"function"==typeof(b=a.$$hashKey)?b=a.$$hashKey():b===c&&(b=a.$$hashKey=j()):b=a,d+":"+b}function wb(a){f(a,this.put,this)}function xb(a){var b,c,d,e;return"function"==typeof a?(b=a.$inject)||(b=[],c=a.toString().replace(vd,""),d=c.match(sd),f(d[1].split(td),function(a){a.replace(ud,function(a,c,d){b.push(d)})}),a.$inject=b):x(a)?(e=a.length-1,ab(a[e],"fn"),b=a.slice(0,e)):ab(a,"fn",!0),b}function yb(a){function b(a){return function(b,c){return t(b)?void f(b,i(a)):a(b,c)}}function c(a,b){if((y(b)||x(b))&&(b=v.instantiate(b)),!b.$get)throw Error("Provider "+a+" must define $get factory method.");return s[a+n]=b}function d(a,b){return c(a,{$get:b})}function e(a,b){return d(a,["$injector",function(a){return a.instantiate(b)}])}function g(a,b){return d(a,q(b))}function h(a,b){s[a]=b,w[a]=b}function j(a,b){var c=v.get(a+n),d=c.$get;c.$get=function(){var a=z.invoke(d,c);return z.invoke(b,null,{$delegate:a})}}function k(a){var b=[];return f(a,function(a){if(!r.get(a))if(r.put(a,!0),u(a)){var c=Zc(a);b=b.concat(k(c.requires)).concat(c._runBlocks);try{for(var d=c._invokeQueue,e=0,f=d.length;f>e;e++){var g=d[e],h=v.get(g[0]);h[g[1]].apply(h,g[2])}}catch(i){throw i.message&&(i.message+=" from "+a),i}}else if(y(a))try{b.push(v.invoke(a))}catch(i){throw i.message&&(i.message+=" from "+a),i}else if(x(a))try{b.push(v.invoke(a))}catch(i){throw i.message&&(i.message+=" from "+String(a[a.length-1])),i}else ab(a,"module")}),b}function l(a,b){function c(c){if("string"!=typeof c)throw Error("Service name expected");if(a.hasOwnProperty(c)){if(a[c]===m)throw Error("Circular dependency: "+p.join(" <- "));return a[c]}try{return p.unshift(c),a[c]=m,a[c]=b(c)}finally{p.shift()}}function d(a,b,d){var e,f,g,h=[],i=xb(a);for(f=0,e=i.length;e>f;f++)g=i[f],h.push(d&&d.hasOwnProperty(g)?d[g]:c(g));switch(a.$inject||(a=a[e]),b?-1:h.length){case 0:return a();case 1:return a(h[0]);case 2:return a(h[0],h[1]);case 3:return a(h[0],h[1],h[2]);case 4:return a(h[0],h[1],h[2],h[3]);case 5:return a(h[0],h[1],h[2],h[3],h[4]);case 6:return a(h[0],h[1],h[2],h[3],h[4],h[5]);case 7:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6]);case 8:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7]);case 9:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7],h[8]);case 10:return a(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7],h[8],h[9]);default:return a.apply(b,h)}}function e(a,b){var c,e,f=function(){};return f.prototype=(x(a)?a[a.length-1]:a).prototype,c=new f,e=d(a,c,b),t(e)?e:c}return{invoke:d,instantiate:e,get:c,annotate:xb,has:function(b){return s.hasOwnProperty(b+n)||a.hasOwnProperty(b)}}}var m={},n="Provider",p=[],r=new wb,s={$provide:{provider:b(c),factory:b(d),service:b(e),value:b(g),constant:b(h),decorator:j}},v=s.$injector=l(s,function(){throw Error("Unknown provider: "+p.join(" <- "))}),w={},z=w.$injector=l(w,function(a){var b=v.get(a+n);return z.invoke(b.$get,b)});return f(k(a),function(a){z.invoke(a||o)}),z}function zb(){var a=!0;this.disableAutoScrolling=function(){a=!1},this.$get=["$window","$location","$rootScope",function(b,c,d){function e(a){var b=null;return f(a,function(a){b||"a"!==Tc(a.nodeName)||(b=a)}),b}function g(){var a,d=c.hash();d?(a=h.getElementById(d))?a.scrollIntoView():(a=e(h.getElementsByName(d)))?a.scrollIntoView():"top"===d&&b.scrollTo(0,0):b.scrollTo(0,0)}var h=b.document;return a&&d.$watch(function(){return c.hash()},function(){d.$evalAsync(g)}),g}]}function Ab(a){var b="Animation";this.register=function(c,d){a.factory(eb(c)+b,d)},this.$get=["$injector",function(a){return function(c){if(c){var d=eb(c)+b;if(a.has(d))return a.get(d)}}}]}function Bb(a,b,d,e){function g(a){try{a.apply(null,M(arguments,1))}finally{if(s--,0===s)for(;t.length;)try{t.pop()()}catch(b){d.error(b)}}}function h(a,b){!function c(){f(w,function(a){a()}),v=b(c,a)}()}function i(){x!=j.url()&&(x=j.url(),f(z,function(a){a(j.url())}))}var j=this,k=b[0],l=a.location,m=a.history,n=a.setTimeout,p=a.clearTimeout,q={};j.isMock=!1;var s=0,t=[];j.$$completeOutstandingRequest=g,j.$$incOutstandingRequestCount=function(){s++},j.notifyWhenNoOutstandingRequests=function(a){f(w,function(a){a()}),0===s?a():t.push(a)};var v,w=[];j.addPollFn=function(a){return r(v)&&h(100,n),w.push(a),a};var x=l.href,y=b.find("base");j.url=function(a,b){if(a){if(x==a)return;return x=a,e.history?b?m.replaceState(null,"",a):(m.pushState(null,"",a),y.attr("href",y.attr("href"))):b?l.replace(a):l.href=a,j}return l.href.replace(/%27/g,"'")};var z=[],A=!1;j.onUrlChange=function(b){return A||(e.history&&Xc(a).bind("popstate",i),e.hashchange?Xc(a).bind("hashchange",i):j.addPollFn(i),A=!0),z.push(b),b},j.baseHref=function(){var a=y.attr("href");return a?a.replace(/^https?\:\/\/[^\/]*/,""):""};var B={},C="",D=j.baseHref();j.cookies=function(a,b){var e,f,g,h,i;if(!a){if(k.cookie!==C)for(C=k.cookie,f=C.split("; "),B={},h=0;h0){var a=unescape(g.substring(0,i));B[a]===c&&(B[a]=unescape(g.substring(i+1)))}return B}b===c?k.cookie=escape(a)+"=;path="+D+";expires=Thu, 01 Jan 1970 00:00:00 GMT":u(b)&&(e=(k.cookie=escape(a)+"="+escape(b)+";path="+D).length+1,e>4096&&d.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+e+" > 4096 bytes)!"))},j.defer=function(a,b){var c;return s++,c=n(function(){delete q[c],g(a)},b||0),q[c]=!0,c},j.defer.cancel=function(a){return q[a]?(delete q[a],p(a),g(o),!0):!1}}function Cb(){this.$get=["$window","$log","$sniffer","$document",function(a,b,c,d){return new Bb(a,d,b,c)}]}function Db(){this.$get=function(){function a(a,c){function d(a){a!=k&&(m?m==a&&(m=a.n):m=a,e(a.n,a.p),e(a,k),k=a,k.n=null)}function e(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(a in b)throw Error("cacheId "+a+" taken");var f=0,g=l({},c,{id:a}),h={},i=c&&c.capacity||Number.MAX_VALUE,j={},k=null,m=null;return b[a]={put:function(a,b){var c=j[a]||(j[a]={key:a});return d(c),r(b)?void 0:(a in h||f++,h[a]=b,f>i&&this.remove(m.key),b)},get:function(a){var b=j[a];if(b)return d(b),h[a]},remove:function(a){var b=j[a];b&&(b==k&&(k=b.p),b==m&&(m=b.n),e(b.n,b.p),delete j[a],delete h[a],f--)},removeAll:function(){h={},f=0,j={},k=m=null},destroy:function(){h=null,g=null,j=null,delete b[a]},info:function(){return l({},g,{size:f})}}}var b={};return a.info=function(){var a={};return f(b,function(b,c){a[c]=b.info()}),a},a.get=function(a){return b[a]},a}}function Eb(){this.$get=["$cacheFactory",function(a){return a("templates")}]}function Fb(a){var d={},e="Directive",g=/^\s*directive\:\s*([\d\w\-_]+)\s+(.*)$/,h=/(([\d\w\-_]+)(?:\:([^;]+))?;?)/,j="Template must have exactly one root element. was: ",k=/^\s*(https?|ftp|mailto|file):/;this.directive=function m(b,c){return u(b)?(_(c,"directive"),d.hasOwnProperty(b)||(d[b]=[],a.factory(b+e,["$injector","$exceptionHandler",function(a,c){var e=[];return f(d[b],function(d){try{var f=a.invoke(d);y(f)?f={compile:q(f)}:!f.compile&&f.link&&(f.compile=q(f.link)),f.priority=f.priority||0,f.name=f.name||b,f.require=f.require||f.controller&&f.name,f.restrict=f.restrict||"A",e.push(f)}catch(g){c(g)}}),e}])),d[b].push(c)):f(b,i(m)),this},this.urlSanitizationWhitelist=function(a){return s(a)?(k=a,this):k},this.$get=["$injector","$interpolate","$exceptionHandler","$http","$templateCache","$parse","$controller","$rootScope","$document",function(a,i,m,n,o,r,s,v,w){function z(a,b,c){a instanceof Xc||(a=Xc(a)),f(a,function(b,c){3==b.nodeType&&b.nodeValue.match(/\S+/)&&(a[c]=Xc(b).wrap("").parent()[0])});var d=B(a,b,a,c);return function(b,c){_(b,"scope");for(var e=c?pd.clone.call(a):a,f=0,g=e.length;g>f;f++){var h=e[f];(1==h.nodeType||9==h.nodeType)&&e.eq(f).data("$scope",b)}return A(e,"ng-scope"),c&&c(e,b),d&&d(b,e,e),e}}function A(a,b){try{a.addClass(b)}catch(c){}}function B(a,b,d,e){function f(a,d,e,f){var g,h,i,j,k,m,n,o,p=[];for(m=0,n=d.length;n>m;m++)p.push(d[m]);for(m=0,o=0,n=l.length;n>m;o++)i=p[o],g=l[m++],h=l[m++],g?(g.scope?(j=a.$new(t(g.scope)),Xc(i).data("$scope",j)):j=a,k=g.transclude,k||!f&&b?g(h,j,i,e,function(b){return function(c){var d=a.$new();return d.$$transcluded=!0,b(d,c).bind("$destroy",N(d,d.$destroy))}}(k||b)):g(h,j,i,c,f)):h&&h(a,i.childNodes,c,f)}for(var g,h,i,j,k,l=[],m=0;mq;q++)k=p[q],k.specified&&(l=k.name,n=Gb(l),V.test(n)&&(l=n.substr(6).toLowerCase()),m=Gb(l.toLowerCase()),j[m]=l,c[m]=o=C(_c&&"href"==l?decodeURIComponent(a.getAttribute(l,2)):k.value),tb(a,m)&&(c[m]=!0),M(a,b,o,m),F(b,m,"A",d));if(f=a.className,u(f)&&""!==f)for(;e=h.exec(f);)m=Gb(e[2]),F(b,m,"C",d)&&(c[m]=C(e[3])),f=f.substr(e.index+e[0].length);break;case 3:L(b,a.nodeValue);break;case 8:try{e=g.exec(a.nodeValue),e&&(m=Gb(e[1]),F(b,m,"M",d)&&(c[m]=C(e[2])))}catch(s){}}return b.sort(I),b}function E(a,d,e,g,h){function k(a,b){a&&(a.require=o.require,I.push(a)),b&&(b.require=o.require,L.push(b))}function l(a,b){var c,d="data",e=!1;if(u(a)){for(;"^"==(c=a.charAt(0))||"?"==c;)a=a.substr(1),"^"==c&&(d="inheritedData"),e=e||"?"==c;if(c=b[d]("$"+a+"Controller"),!c&&!e)throw Error("No controller: "+a);return c}return x(a)&&(c=[],f(a,function(a){c.push(l(a,b))})),c}function n(a,b,g,h,j){var k,n,o,p,q,t;if(k=d===g?e:J(e,new P(Xc(g),e.$attr)),n=k.$$element,N){var u=/^\s*([@=&])(\??)\s*(\w*)\s*$/,v=b.$parent||b;f(N.scope,function(a,c){var d,e,f,g=a.match(u)||[],h=g[3]||c,j="?"==g[2],l=g[1];switch(b.$$isolateBindings[c]=l+h,l){case"@":k.$observe(h,function(a){b[c]=a}),k.$$observers[h].$$scope=v,k[h]&&(b[c]=i(k[h])(v));break;case"=":if(j&&!k[h])return;e=r(k[h]),f=e.assign||function(){throw d=b[c]=e(v),Error(xd+k[h]+" (directive: "+N.name+")")},d=b[c]=e(v),b.$watch(function(){var a=e(v);return a!==b[c]&&(a!==d?d=b[c]=a:f(v,a=d=b[c])),a});break;case"&":e=r(k[h]),b[c]=function(a){return e(v,a)};break;default:throw Error("Invalid isolate scope definition for directive "+N.name+": "+a)}})}for(w&&f(w,function(a){var c={$scope:b,$element:n,$attrs:k,$transclude:j};t=a.controller,"@"==t&&(t=k[a.name]),n.data("$"+a.name+"Controller",s(t,c))}),o=0,p=I.length;p>o;o++)try{q=I[o],q(b,n,k,q.require&&l(q.require,n))}catch(x){m(x,S(n))}for(a&&a(b,g.childNodes,c,j),o=0,p=L.length;p>o;o++)try{q=L[o],q(b,n,k,q.require&&l(q.require,n))}catch(x){m(x,S(n))}}for(var o,p,q,v,w,B,E,F=-Number.MAX_VALUE,I=[],L=[],M=null,N=null,Q=null,R=e.$$element=Xc(d),T=g,V=0,W=a.length;W>V&&(o=a[V],q=c,!(F>o.priority));V++){if((E=o.scope)&&(K("isolated scope",N,o,R),t(E)&&(A(R,"ng-isolate-scope"),N=o),A(R,"ng-scope"),M=M||o),p=o.name,(E=o.controller)&&(w=w||{},K("'"+p+"' controller",w[p],o,R),w[p]=o),(E=o.transclude)&&(K("transclusion",v,o,R),v=o,F=o.priority,"element"==E?(q=Xc(d),R=e.$$element=Xc(b.createComment(" "+p+": "+e[p]+" ")),d=R[0],O(h,Xc(q[0]),d),T=z(q,g,F)):(q=Xc(hb(d)).contents(),R.html(""),T=z(q,g))),o.template)if(K("template",Q,o,R),Q=o,E=y(o.template)?o.template(R,e):o.template,E=U(E),o.replace){if(q=Xc("
    "+C(E)+"
    ").contents(),d=q[0],1!=q.length||1!==d.nodeType)throw new Error(j+E);O(h,R,d);var X={$attr:{}};a=a.concat(D(d,a.splice(V+1,a.length-(V+1)),X)),G(e,X),W=a.length}else R.html(E);if(o.templateUrl)K("template",Q,o,R),Q=o,n=H(a.splice(V,a.length-V),n,R,e,h,o.replace,T),W=a.length;else if(o.compile)try{B=o.compile(R,e,T),y(B)?k(null,B):B&&k(B.pre,B.post)}catch(Y){m(Y,S(R))}o.terminal&&(n.terminal=!0,F=Math.max(F,o.priority))}return n.scope=M&&M.scope,n.transclude=v&&T,n}function F(b,f,g,h){var i=!1;if(d.hasOwnProperty(f))for(var j,k=a.get(f+e),l=0,n=k.length;n>l;l++)try{j=k[l],(h===c||h>j.priority)&&-1!=j.restrict.indexOf(g)&&(b.push(j),i=!0)}catch(o){m(o)}return i}function G(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;f(a,function(d,e){"$"!=e.charAt(0)&&(b[e]&&(d+=("style"===e?";":" ")+b[e]),a.$set(e,d,!0,c[e]))}),f(b,function(b,f){"class"==f?(A(e,b),a["class"]=(a["class"]?a["class"]+" ":"")+b):"style"==f?e.attr("style",e.attr("style")+";"+b):"$"==f.charAt(0)||a.hasOwnProperty(f)||(a[f]=b,d[f]=c[f])})}function H(a,b,c,d,e,f,g){var h,i,k=[],m=c[0],p=a.shift(),q=l({},p,{controller:null,templateUrl:null,transclude:null,scope:null}),r=y(p.templateUrl)?p.templateUrl(c,d):p.templateUrl;return c.html(""),n.get(r,{cache:o}).success(function(l){var n,o,p;if(l=U(l),f){if(p=Xc("
    "+C(l)+"
    ").contents(),n=p[0],1!=p.length||1!==n.nodeType)throw new Error(j+l);o={$attr:{}},O(e,c,n),D(n,a,o),G(d,o)}else n=m,c.html(l);for(a.unshift(q),h=E(a,n,d,g),i=B(c[0].childNodes,g);k.length;){var r=k.shift(),s=k.shift(),t=k.shift(),u=k.shift(),v=n;s!==m&&(v=hb(n),O(t,Xc(s),v)),h(function(){b(i,r,v,e,u)},r,v,e,u)}k=null}).error(function(a,b,c,d){throw Error("Failed to load template: "+d.url)}),function(a,c,d,e,f){k?(k.push(c),k.push(d),k.push(e),k.push(f)):h(function(){b(i,c,d,e,f)},c,d,e,f)}}function I(a,b){return b.priority-a.priority}function K(a,b,c,d){if(b)throw Error("Multiple directives ["+b.name+", "+c.name+"] asking for "+a+" on: "+S(d))}function L(a,b){var c=i(b,!0);c&&a.push({priority:0,compile:q(function(a,b){var d=b.parent(),e=d.data("$binding")||[];e.push(c),A(d.data("$binding",e),"ng-binding"),a.$watch(c,function(a){b[0].nodeValue=a})})})}function M(a,b,c,d){var e=i(c,!0);e&&b.push({priority:100,compile:q(function(a,b,c){var f=c.$$observers||(c.$$observers={});e=i(c[d],!0),e&&(c[d]=e(a),(f[d]||(f[d]=[])).$$inter=!0,(c.$$observers&&c.$$observers[d].$$scope||a).$watch(e,function(a){c.$set(d,a)}))})})}function O(a,b,c){var d,e,f=b[0],g=f.parentNode;if(a)for(d=0,e=a.length;e>d;d++)if(a[d]==f){a[d]=c;break}g&&g.replaceChild(c,f),c[Xc.expando]=f[Xc.expando],b[0]=c}var P=function(a,b){this.$$element=a,this.$attr=b||{}};P.prototype={$normalize:Gb,$set:function(a,b,d,e){var g,h=tb(this.$$element[0],a),i=this.$$observers;h&&(this.$$element.prop(a,b),e=h),this[a]=b,e?this.$attr[a]=e:(e=this.$attr[a],e||(this.$attr[a]=e=Z(a,"-"))),"A"===$c(this.$$element[0])&&"href"===a&&(Q.setAttribute("href",b),g=Q.href,g.match(k)||(this[a]=b="unsafe:"+g)),d!==!1&&(null===b||b===c?this.$$element.removeAttr(e):this.$$element.attr(e,b)),i&&f(i[a],function(a){try{a(b)}catch(c){m(c)}})},$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers={}),e=d[a]||(d[a]=[]);return e.push(b),v.$evalAsync(function(){e.$$inter||b(c[a])}),b}};var Q=w[0].createElement("a"),R=i.startSymbol(),T=i.endSymbol(),U="{{"==R||"}}"==T?p:function(a){return a.replace(/\{\{/g,R).replace(/}}/g,T)},V=/^ngAttr[A-Z]/;return z}]}function Gb(a){return eb(a.replace(yd,""))}function Hb(){var a={},b=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(b,c){t(b)?l(a,b):a[b]=c},this.$get=["$injector","$window",function(c,d){return function(e,f){var g,h,i,j;if(u(e)&&(h=e.match(b),i=h[1],j=h[3],e=a.hasOwnProperty(i)?a[i]:ac(f.$scope,i,!0)||ac(d,i,!0),ab(e,i,!0)),g=c.instantiate(e,f),j){if("object"!=typeof f.$scope)throw new Error('Can not export controller as "'+j+'". No scope object provided!');f.$scope[j]=g}return g}}]}function Ib(){this.$get=["$window",function(a){return Xc(a.document)}]}function Jb(){this.$get=["$log",function(a){return function(){a.error.apply(a,arguments)}}]}function Kb(){var a="{{",b="}}";this.startSymbol=function(b){return b?(a=b,this):a},this.endSymbol=function(a){return a?(b=a,this):b},this.$get=["$parse","$exceptionHandler",function(d,e){function f(f,i){for(var j,k,l,m,n=0,o=[],p=f.length,q=!1,r=[];p>n;)-1!=(j=f.indexOf(a,n))&&-1!=(k=f.indexOf(b,j+g))?(n!=j&&o.push(f.substring(n,j)),o.push(l=d(m=f.substring(j+g,k))),l.exp=m,n=k+h,q=!0):(n!=p&&o.push(f.substring(n)),n=p);return(p=o.length)||(o.push(""),p=1),!i||q?(r.length=p,l=function(a){try{for(var b,d=0,g=p;g>d;d++)"function"==typeof(b=o[d])&&(b=b(a),null==b||b==c?b="":"string"!=typeof b&&(b=P(b))),r[d]=b;return r.join("")}catch(h){var i=new Error("Error while interpolating: "+f+"\n"+h.toString());e(i)}},l.exp=f,l.parts=o,l):void 0}var g=a.length,h=b.length;return f.startSymbol=function(){return a},f.endSymbol=function(){return b},f}]}function Lb(a){for(var b=a.split("/"),c=b.length;c--;)b[c]=V(b[c]);return b.join("/")}function Mb(a,b){var c=zd.exec(a);b.$$protocol=c[1],b.$$host=c[3],b.$$port=m(c[5])||Bd[c[1]]||null}function Nb(a,b){var c=Ad.exec(a);b.$$path=decodeURIComponent(c[1]),b.$$search=T(c[3]),b.$$hash=decodeURIComponent(c[5]||""),b.$$path&&"/"!=b.$$path.charAt(0)&&(b.$$path="/"+b.$$path)}function Ob(a,b,c){return 0==b.indexOf(a)?b.substr(a.length):c}function Pb(a){var b=a.indexOf("#");return-1==b?a:a.substr(0,b)}function Qb(a){return a.substr(0,Pb(a).lastIndexOf("/")+1)}function Rb(a){return a.substring(0,a.indexOf("/",a.indexOf("//")+2))}function Sb(a,b){b=b||"";var d=Qb(a);this.$$parse=function(a){var b={};Mb(a,b);var c=Ob(d,a);if(!u(c))throw Error('Invalid url "'+a+'", missing path prefix "'+d+'".');Nb(c,b),l(this,b),this.$$path||(this.$$path="/"),this.$$compose()},this.$$compose=function(){var a=U(this.$$search),b=this.$$hash?"#"+V(this.$$hash):"";this.$$url=Lb(this.$$path)+(a?"?"+a:"")+b,this.$$absUrl=d+this.$$url.substr(1)},this.$$rewrite=function(e){var f,g;return(f=Ob(a,e))!==c?(g=f,(f=Ob(b,f))!==c?d+(Ob("/",f)||f):a+g):(f=Ob(d,e))!==c?d+f:d==e+"/"?d:void 0}}function Tb(a,b){var c=Qb(a);this.$$parse=function(d){Mb(d,this);var e=Ob(a,d)||Ob(c,d);if(!u(e))throw new Error('Invalid url "'+d+'", does not start with "'+a+'".');var f="#"==e.charAt(0)?Ob(b,e):e;if(!u(f))throw new Error('Invalid url "'+d+'", missing hash prefix "'+b+'".');Nb(f,this),this.$$compose()},this.$$compose=function(){var c=U(this.$$search),d=this.$$hash?"#"+V(this.$$hash):"";this.$$url=Lb(this.$$path)+(c?"?"+c:"")+d,this.$$absUrl=a+(this.$$url?b+this.$$url:"")},this.$$rewrite=function(b){return Pb(a)==Pb(b)?b:void 0}}function Ub(a,b){Tb.apply(this,arguments);var c=Qb(a);this.$$rewrite=function(d){var e;return a==Pb(d)?d:(e=Ob(c,d))?a+b+e:c===d+"/"?c:void 0}}function Vb(a){return function(){return this[a]}}function Wb(a,b){return function(c){return r(c)?this[a]:(this[a]=b(c),this.$$compose(),this)}}function Xb(){var b="",c=!1;this.hashPrefix=function(a){return s(a)?(b=a,this):b},this.html5Mode=function(a){return s(a)?(c=a,this):c},this.$get=["$rootScope","$browser","$sniffer","$rootElement",function(d,e,f,g){function h(a){d.$broadcast("$locationChangeSuccess",i.absUrl(),a)}var i,j,k,l=e.baseHref(),m=e.url();c?(k=l?Rb(m)+l:m,j=f.history?Sb:Ub):(k=Pb(m),j=Tb),i=new j(k,"#"+b),i.$$parse(i.$$rewrite(m)),g.bind("click",function(b){if(!b.ctrlKey&&!b.metaKey&&2!=b.which){for(var c=Xc(b.target);"a"!==Tc(c[0].nodeName);)if(c[0]===g[0]||!(c=c.parent())[0])return;var f=c.prop("href"),h=i.$$rewrite(f);f&&!c.attr("target")&&h&&!b.isDefaultPrevented()&&(b.preventDefault(),h!=e.url()&&(i.$$parse(h),d.$apply(),a.angular["ff-684208-preventDefault"]=!0))}}),i.absUrl()!=m&&e.url(i.absUrl(),!0),e.onUrlChange(function(a){if(i.absUrl()!=a){if(d.$broadcast("$locationChangeStart",a,i.absUrl()).defaultPrevented)return void e.url(i.absUrl());d.$evalAsync(function(){var b=i.absUrl();i.$$parse(a),h(b)}),d.$$phase||d.$digest()}});var n=0;return d.$watch(function(){var a=e.url(),b=i.$$replace;return n&&a==i.absUrl()||(n++,d.$evalAsync(function(){d.$broadcast("$locationChangeStart",i.absUrl(),a).defaultPrevented?i.$$parse(a):(e.url(i.absUrl(),b),h(a))})),i.$$replace=!1,n}),i}]}function Yb(){var a=!0,b=this;this.debugEnabled=function(b){return s(b)?(a=b,this):a},this.$get=["$window",function(c){function d(a){return a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line)),a}function e(a){var b=c.console||{},e=b[a]||b.log||o;return e.apply?function(){var a=[];return f(arguments,function(b){a.push(d(b))}),e.apply(b,a)}:function(a,b){e(a,b)}}return{log:e("log"),warn:e("warn"),info:e("info"),error:e("error"),debug:function(){var c=e("debug");return function(){a&&c.apply(b,arguments)}}()}}]}function Zb(a,b){function c(a){return-1!=a.indexOf(p)}function d(a){return-1!=a.indexOf(u)}function e(b){var c=b||1;return r+c="0"&&"9">=a}function g(a){return" "==a||"\r"==a||" "==a||"\n"==a||" "==a||" "==a}function h(a){return a>="a"&&"z">=a||a>="A"&&"Z">=a||"_"==a||"$"==a}function i(a){return"-"==a||"+"==a||f(a)}function j(b,c,d){throw d=d||r,Error("Lexer Error: "+b+" at column"+(s(c)?"s "+c+"-"+r+" ["+a.substring(c,d)+"]":" "+d)+" in expression ["+a+"].")}function k(){for(var b="",c=r;r0){var e=L[0],f=e.text;if(f==a||f==b||f==c||f==d||!a&&!b&&!c&&!d)return e}return!1}function i(a,c,d,e){var g=h(a,c,d,e);return g?(b&&!g.json&&f("is not valid json",g),L.shift(),g):!1}function j(a){i(a)||f("is unexpected, expecting ["+a+"]",h())}function k(a,b){return l(function(c,d){return a(c,d,b)},{constant:b.constant})}function m(a,b,c){return l(function(d,e){return a(d,e)?b(d,e):c(d,e)},{constant:a.constant&&b.constant&&c.constant})}function n(a,b,c){return l(function(d,e){return b(d,e,a,c)},{constant:a.constant&&c.constant})}function p(){for(var a=[];;)if(L.length>0&&!h("}",")",";","]")&&a.push(Q()),!i(";"))return 1==a.length?a[0]:function(b,c){for(var d,e=0;e","<=",">="))&&(b=n(b,a.fn,z())),b}function A(){for(var a,b=B();a=i("+","-");)b=n(b,a.fn,B());return b}function B(){for(var a,b=C();a=i("*","/","%");)b=n(b,a.fn,C());return b}function C(){var a;return i("+")?D():(a=i("-"))?n(K,a.fn,C()):(a=i("!"))?k(a.fn,C()):D()}function D(){var a;if(i("("))a=Q(),j(")");else if(i("["))a=H();else if(i("{"))a=I();else{var b=i();a=b.fn,a||f("not a primary expression",b),b.json&&(a.constant=a.literal=!0)}for(var c,d;c=i("(","[",".");)"("===c.text?(a=N(a,d),d=null):"["===c.text?(d=a,a=P(a)):"."===c.text?(d=a,a=O(a)):f("IMPOSSIBLE");return a}function E(a){var b=i().text,c=cc(b,e);return l(function(b,d,e){return c(e||a(b,d),d)},{assign:function(c,d,e){return _b(a(c,e),b,d)}})}function F(a){var b=t();return j("]"),l(function(d,e){var f,g,h=a(d,e),i=b(d,e);return h?(f=h[i],f&&f.then&&(g=f,"$$v"in f||(g.$$v=c,g.then(function(a){g.$$v=a})),f=f.$$v),f):c},{assign:function(c,d,e){return a(c,e)[b(c,e)]=d}})}function G(a,b){var c=[];if(")"!=g().text)do c.push(t());while(i(","));return j(")"),function(d,e){for(var f=[],g=b?b(d,e):d,h=0;h1;e++){var f=d.shift(),g=a[f];g||(g={},a[f]=g),a=g}return a[d.shift()]=c,c}function ac(a,b,c){if(!b)return a;for(var d,e=b.split("."),f=a,g=e.length,h=0;g>h;h++)d=e[h],a&&(a=(f=a)[d]);return!c&&y(a)?N(f,a):a}function bc(a,b,d,e,f){return function(g,h){var i,j=h&&h.hasOwnProperty(a)?h:g;return null===j||j===c?j:(j=j[a],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),b&&null!==j&&j!==c?(j=j[b],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),d&&null!==j&&j!==c?(j=j[d],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),e&&null!==j&&j!==c?(j=j[e],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),f&&null!==j&&j!==c?(j=j[f],j&&j.then&&("$$v"in j||(i=j,i.$$v=c,i.then(function(a){i.$$v=a})),j=j.$$v),j):j):j):j):j)}}function cc(a,b){if(Ed.hasOwnProperty(a))return Ed[a];var d,e=a.split("."),g=e.length;if(b)d=6>g?bc(e[0],e[1],e[2],e[3],e[4]):function(a,b){var d,f=0;do d=bc(e[f++],e[f++],e[f++],e[f++],e[f++])(a,b),b=c,a=d;while(g>f);return d};else{var h="var l, fn, p;\n";f(e,function(a,b){h+="if(s === null || s === undefined) return s;\nl=s;\ns="+(b?"s":'((k&&k.hasOwnProperty("'+a+'"))?k:s)')+'["'+a+'"];\nif (s && s.then) {\n if (!("$$v" in s)) {\n p=s;\n p.$$v = undefined;\n p.then(function(v) {p.$$v=v;});\n}\n s=s.$$v\n}\n'}),h+="return s;",d=Function("s","k",h),d.toString=function(){return h}}return Ed[a]=d}function dc(){var a={};this.$get=["$filter","$sniffer",function(b,c){return function(d){switch(typeof d){case"string":return a.hasOwnProperty(d)?a[d]:a[d]=$b(d,!1,b,c.csp);case"function":return d;default:return o}}}]}function ec(){this.$get=["$rootScope","$exceptionHandler",function(a,b){return fc(function(b){a.$evalAsync(b)},b)}]}function fc(a,b){function d(a){return a}function e(a){return j(a)}function g(a){var b=h(),c=0,d=x(a)?[]:{};return f(a,function(a,e){c++,i(a).then(function(a){d.hasOwnProperty(e)||(d[e]=a,--c||b.resolve(d))},function(a){d.hasOwnProperty(e)||b.reject(a)})}),0===c&&b.resolve(d),b.promise}var h=function(){var f,g,k=[];return g={resolve:function(b){if(k){var d=k;k=c,f=i(b),d.length&&a(function(){for(var a,b=0,c=d.length;c>b;b++)a=d[b],f.then(a[0],a[1])})}},reject:function(a){g.resolve(j(a))},promise:{then:function(a,c){var g=h(),i=function(c){try{g.resolve((a||d)(c))}catch(e){b(e),g.reject(e)}},j=function(a){try{g.resolve((c||e)(a))}catch(d){b(d),g.reject(d)}};return k?k.push([i,j]):f.then(i,j),g.promise},always:function(a){function b(a,b){var c=h();return b?c.resolve(a):c.reject(a),c.promise}function c(c,e){var f=null;try{f=(a||d)()}catch(g){return b(g,!1)}return f&&f.then?f.then(function(){return b(c,e)},function(a){return b(a,!1)}):b(c,e)}return this.then(function(a){return c(a,!0)},function(a){return c(a,!1)})}}}},i=function(b){return b&&b.then?b:{then:function(c){var d=h();return a(function(){d.resolve(c(b))}),d.promise}}},j=function(b){return{then:function(c,d){var f=h();return a(function(){f.resolve((d||e)(b))}),f.promise}}},k=function(c,f,g){var k,l=h(),m=function(a){try{return(f||d)(a)}catch(c){return b(c),j(c)}},n=function(a){try{return(g||e)(a)}catch(c){return b(c),j(c)}};return a(function(){i(c).then(function(a){k||(k=!0,l.resolve(i(a).then(m,n)))},function(a){k||(k=!0,l.resolve(n(a)))})}),l.promise};return{defer:h,reject:j,when:k,all:g}}function gc(){var a={};this.when=function(b,c){if(a[b]=l({reloadOnSearch:!0,caseInsensitiveMatch:!1},c),b){var d="/"==b[b.length-1]?b.substr(0,b.length-1):b+"/";a[d]={redirectTo:b}}return this},this.otherwise=function(a){return this.when(null,a),this},this.$get=["$rootScope","$location","$routeParams","$q","$injector","$http","$templateCache",function(b,c,d,e,g,h,i){function j(a,b,c){b="^"+b.replace(/[-\/\\^$:*+?.()|[\]{}]/g,"\\$&")+"$";for(var d,e="",g=[],h={},i=/\\([:*])(\w+)/g,j=0;null!==(d=i.exec(b));){switch(e+=b.slice(j,d.index),d[1]){case":":e+="([^\\/]*)";break;case"*":e+="(.*)"}g.push(d[2]),j=i.lastIndex}e+=b.substr(j);var k=a.match(new RegExp(e,c.caseInsensitiveMatch?"i":""));return k&&f(g,function(a,b){h[a]=k[b+1]}),k?h:null}function k(){var a=m(),j=q.current;a&&j&&a.$$route===j.$$route&&K(a.pathParams,j.pathParams)&&!a.reloadOnSearch&&!p?(j.params=a.params,I(j.params,d),b.$broadcast("$routeUpdate",j)):(a||j)&&(p=!1,b.$broadcast("$routeChangeStart",a,j),q.current=a,a&&a.redirectTo&&(u(a.redirectTo)?c.path(o(a.redirectTo,a.params)).search(a.params).replace():c.url(a.redirectTo(a.pathParams,c.path(),c.search())).replace()),e.when(a).then(function(){if(a){var b,c=l({},a.resolve);return f(c,function(a,b){c[b]=u(a)?g.get(a):g.invoke(a)}),s(b=a.template)?y(b)&&(b=b(a.params)):s(b=a.templateUrl)&&(y(b)&&(b=b(a.params)),s(b)&&(a.loadedTemplateUrl=b,b=h.get(b,{cache:i}).then(function(a){return a.data}))),s(b)&&(c.$template=b),e.all(c)}}).then(function(c){a==q.current&&(a&&(a.locals=c,I(a.params,d)),b.$broadcast("$routeChangeSuccess",a,j))},function(c){a==q.current&&b.$broadcast("$routeChangeError",a,j,c)}))}function m(){var b,d;return f(a,function(a,e){!d&&(b=j(c.path(),e,a))&&(d=n(a,{params:l({},c.search(),b),pathParams:b}),d.$$route=a)}),d||a[null]&&n(a[null],{params:{},pathParams:{}})}function o(a,b){var c=[];return f((a||"").split(":"),function(a,d){if(0==d)c.push(a);else{var e=a.match(/(\w+)(.*)/),f=e[1];c.push(b[f]),c.push(e[2]||""),delete b[f]}}),c.join("")}var p=!1,q={routes:a,reload:function(){p=!0,b.$evalAsync(k)}};return b.$on("$locationChangeSuccess",k),q}]}function hc(){this.$get=q({})}function ic(){var a=10;this.digestTtl=function(b){return arguments.length&&(a=b),a},this.$get=["$injector","$exceptionHandler","$parse",function(b,c,d){function f(){this.$id=j(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,this["this"]=this.$root=this,this.$$destroyed=!1,this.$$asyncQueue=[],this.$$listeners={},this.$$isolateBindings={}}function g(a){if(l.$$phase)throw Error(l.$$phase+" already in progress");l.$$phase=a}function h(){l.$$phase=null}function i(a,b){var c=d(a);return ab(c,b),c}function k(){}f.prototype={$new:function(a){var b,c;if(y(a))throw Error("API-CHANGE: Use $controller to instantiate controllers.");return a?(c=new f,c.$root=this.$root):(b=function(){},b.prototype=this,c=new b,c.$id=j()),c["this"]=c,c.$$listeners={},c.$parent=this,c.$$watchers=c.$$nextSibling=c.$$childHead=c.$$childTail=null,c.$$prevSibling=this.$$childTail,this.$$childHead?(this.$$childTail.$$nextSibling=c,this.$$childTail=c):this.$$childHead=this.$$childTail=c,c.$on("$destroy",function(){b&&(b.prototype=null),setTimeout(function(){c.__proto__={};for(var a in c)c[a]=null;return c=null,null})}),c},$watch:function(a,b,c){var d=this,e=i(a,"watch"),f=d.$$watchers,g={fn:b,last:k,get:e,exp:a,eq:!!c};if(!y(b)){var h=i(b||o,"listener");g.fn=function(a,b,c){h(c)}}if("string"==typeof a&&e.constant){var j=g.fn;g.fn=function(a,b,c){j.call(this,a,b,c),H(f,g)}}return f||(f=d.$$watchers=[]),f.unshift(g),function(){H(f,g)}},$watchCollection:function(a,b){function c(){h=k(i);var a,b;if(t(h))if(e(h)){g!==l&&(g=l,n=g.length=0,j++),a=h.length,n!==a&&(j++,g.length=n=a);for(var c=0;a>c;c++)g[c]!==h[c]&&(j++,g[c]=h[c])}else{g!==m&&(g=m={},n=0,j++),a=0;for(b in h)h.hasOwnProperty(b)&&(a++,g.hasOwnProperty(b)?g[b]!==h[b]&&(j++,g[b]=h[b]):(n++,g[b]=h[b],j++));if(n>a){j++;for(b in g)g.hasOwnProperty(b)&&!h.hasOwnProperty(b)&&(n--,delete g[b])}}else g!==h&&(g=h,j++);return j}function f(){b(h,g,i)}var g,h,i=this,j=0,k=d(a),l=[],m={},n=0;return this.$watch(c,f)},$digest:function(){var b,d,e,f,i,j,l,m,n,o,p=this.$$asyncQueue,q=a,r=this,s=[];g("$digest");do{for(j=!1,m=r;p.length;)try{m.$eval(p.shift())}catch(t){c(t)}do{if(f=m.$$watchers)for(i=f.length;i--;)try{b=f[i],(d=b.get(m))===(e=b.last)||(b.eq?K(d,e):"number"==typeof d&&"number"==typeof e&&isNaN(d)&&isNaN(e))||(j=!0,b.last=b.eq?I(d):d,b.fn(d,e===k?d:e,m),5>q&&(n=4-q,s[n]||(s[n]=[]),o=y(b.exp)?"fn: "+(b.exp.name||b.exp.toString()):b.exp,o+="; newVal: "+P(d)+"; oldVal: "+P(e),s[n].push(o)))}catch(t){c(t)}if(!(l=m.$$childHead||m!==r&&m.$$nextSibling))for(;m!==r&&!(l=m.$$nextSibling);)m=m.$parent}while(m=l);if(j&&!q--)throw h(),Error(a+" $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: "+P(s))}while(j||p.length);h()},$destroy:function(){if(l!=this&&!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy"),this.$$destroyed=!0,a.$$childHead==this&&(a.$$childHead=this.$$nextSibling),a.$$childTail==this&&(a.$$childTail=this.$$prevSibling),this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling),this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling),this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,a=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null}},$eval:function(a,b){return d(a)(this,b)},$evalAsync:function(a){this.$$asyncQueue.push(a)},$apply:function(a){try{return g("$apply"),this.$eval(a)}catch(b){c(b)}finally{h();try{l.$digest()}catch(b){throw c(b),b}}},$on:function(a,b){var c=this.$$listeners[a];return c||(this.$$listeners[a]=c=[]),c.push(b),function(){c[G(c,b)]=null}},$emit:function(a){var b,d,e,f=[],g=this,h=!1,i={name:a,targetScope:g,stopPropagation:function(){h=!0},preventDefault:function(){i.defaultPrevented=!0},defaultPrevented:!1},j=L([i],arguments,1);do{for(b=g.$$listeners[a]||f,i.currentScope=g,d=0,e=b.length;e>d;d++)if(b[d])try{if(b[d].apply(null,j),h)return i}catch(k){c(k)}else b.splice(d,1),d--,e--;g=g.$parent}while(g);return i},$broadcast:function(a){var b,d,e,f=this,g=f,h=f,i={name:a,targetScope:f,preventDefault:function(){i.defaultPrevented=!0},defaultPrevented:!1},j=L([i],arguments,1);do{for(g=h,i.currentScope=g,b=g.$$listeners[a]||[],d=0,e=b.length;e>d;d++)if(b[d])try{b[d].apply(null,j)}catch(k){c(k)}else b.splice(d,1),d--,e--;if(!(h=g.$$childHead||g!==f&&g.$$nextSibling))for(;g!==f&&!(h=g.$$nextSibling);)g=g.$parent}while(g=h);return i}};var l=new f;return l}]}function jc(){this.$get=["$window","$document",function(a,b){var c,d,e={},f=m((/android (\d+)/.exec(Tc((a.navigator||{}).userAgent))||[])[1]),g=b[0]||{},h=/^(Moz|webkit|O|ms)(?=[A-Z])/,i=g.body&&g.body.style,j=!1,k=!1;if(i){for(var l in i)if(d=h.exec(l)){c=d[0],c=c.substr(0,1).toUpperCase()+c.substr(1);break}j=!!("transition"in i||c+"Transition"in i),k=!!("animation"in i||c+"Animation"in i)}return{history:!(!a.history||!a.history.pushState||4>f),hashchange:"onhashchange"in a&&(!g.documentMode||g.documentMode>7),hasEvent:function(a){if("input"==a&&9==_c)return!1;if(r(e[a])){var b=g.createElement("div");e[a]="on"+a in b}return e[a]},csp:g.securityPolicy?g.securityPolicy.isActive:!1,vendorPrefix:c,transitions:j,animations:k}}]}function kc(){this.$get=q(a)}function lc(a){var b,c,d,e={};return a?(f(a.split("\n"),function(a){d=a.indexOf(":"),b=Tc(C(a.substr(0,d))),c=C(a.substr(d+1)),b&&(e[b]?e[b]+=", "+c:e[b]=c)}),e):e}function mc(a,b){var d=Fd.exec(a);if(null==d)return!0;var e={protocol:d[2],host:d[4],port:m(d[6])||Bd[d[2]]||null,relativeProtocol:d[2]===c||""===d[2]};d=zd.exec(b);var f={protocol:d[1],host:d[3],port:m(d[5])||Bd[d[1]]||null};return(e.protocol==f.protocol||e.relativeProtocol)&&e.host==f.host&&(e.port==f.port||e.relativeProtocol&&f.port==Bd[f.protocol])}function nc(a){var b=t(a)?a:c;return function(c){return b||(b=lc(a)),c?b[Tc(c)]||null:b}}function oc(a,b,c){return y(c)?c(a,b):(f(c,function(c){a=c(a,b)}),a)}function pc(a){return a>=200&&300>a}function qc(){var a=/^\s*(\[|\{[^\{])/,b=/[\}\]]\s*$/,d=/^\)\]\}',?\n/,e={"Content-Type":"application/json;charset=utf-8"},g=this.defaults={transformResponse:[function(c){return u(c)&&(c=c.replace(d,""),a.test(c)&&b.test(c)&&(c=Q(c,!0))),c}],transformRequest:[function(a){return t(a)&&!B(a)?P(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},post:e,put:e,patch:e},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},i=this.interceptors=[],j=this.responseInterceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(a,b,d,e,k,m){function n(a){function d(a){var b=l({},a,{data:oc(a.data,a.headers,e.transformResponse)});return pc(a.status)?b:k.reject(b)}var e={transformRequest:g.transformRequest,transformResponse:g.transformResponse},h={};l(e,a),e.headers=h,e.method=Uc(e.method),l(h,g.headers.common,g.headers[Tc(e.method)],a.headers);var i=mc(e.url,b.url())?b.cookies()[e.xsrfCookieName||g.xsrfCookieName]:c;i&&(h[e.xsrfHeaderName||g.xsrfHeaderName]=i);var j=function(a){var b=oc(a.data,nc(h),a.transformRequest);return r(a.data)&&delete h["Content-Type"],r(a.withCredentials)&&!r(g.withCredentials)&&(a.withCredentials=g.withCredentials),q(a,b,h).then(d,d)},m=[j,c],n=k.when(e);for(f(w,function(a){(a.request||a.requestError)&&m.unshift(a.request,a.requestError),(a.response||a.responseError)&&m.push(a.response,a.responseError)});m.length;){var o=m.shift(),p=m.shift();n=n.then(o,p)}return n.success=function(a){return n.then(function(b){a(b.data,b.status,b.headers,e)}),n},n.error=function(a){return n.then(null,function(b){a(b.data,b.status,b.headers,e)}),n},n}function o(){f(arguments,function(a){n[a]=function(b,c){return n(l(c||{},{method:a,url:b}))}})}function p(){f(arguments,function(a){n[a]=function(b,c,d){return n(l(d||{},{method:a,url:b,data:c}))}})}function q(b,c,d){function f(a,b,c){j&&(pc(a)?j.put(p,[a,b,lc(c)]):j.remove(p)),h(b,a,c),e.$$phase||e.$apply()}function h(a,c,d){c=Math.max(c,0),(pc(c)?m.resolve:m.reject)({data:a,status:c,headers:nc(d),config:b})}function i(){var a=G(n.pendingRequests,b);-1!==a&&n.pendingRequests.splice(a,1)}var j,l,m=k.defer(),o=m.promise,p=s(b.url,b.params);if(n.pendingRequests.push(b),o.then(i,i),(b.cache||g.cache)&&b.cache!==!1&&"GET"==b.method&&(j=t(b.cache)?b.cache:t(g.cache)?g.cache:v),j)if(l=j.get(p)){if(l.then)return l.then(i,i),l;x(l)?h(l[1],l[0],I(l[2])):h(l,200,{})}else j.put(p,o);return l||a(b.method,p,c,f,d,b.timeout,b.withCredentials,b.responseType),o}function s(a,b){if(!b)return a;var d=[];return h(b,function(a,b){null!=a&&a!=c&&(x(a)||(a=[a]),f(a,function(a){t(a)&&(a=P(a)),d.push(W(b)+"="+W(a))}))}),a+(-1==a.indexOf("?")?"?":"&")+d.join("&")}var v=d("$http"),w=[];return f(i,function(a){w.unshift(u(a)?m.get(a):m.invoke(a))}),f(j,function(a,b){var c=u(a)?m.get(a):m.invoke(a);w.splice(b,0,{response:function(a){return c(k.when(a))},responseError:function(a){return c(k.reject(a))}})}),n.pendingRequests=[],o("get","delete","head","jsonp"),p("post","put"),n.defaults=g,n}]}function rc(){this.$get=["$browser","$window","$document",function(a,b,c){return sc(a,Gd,a.defer,b.angular.callbacks,c[0],b.location.protocol.replace(":",""))}]}function sc(a,b,c,d,e,g){function h(a,b){var c=e.createElement("script"),d=function(){e.body.removeChild(c),b&&b()};return c.type="text/javascript",c.src=a,_c?c.onreadystatechange=function(){/loaded|complete/.test(c.readyState)&&d()}:c.onload=c.onerror=d,e.body.appendChild(c),d}return function(e,i,j,k,l,m,n,p){function q(){s=-1,u&&u(),v&&v.abort()}function r(b,d,e,f){var h=(i.match(zd)||["",g])[1];w&&c.cancel(w),u=v=null,d="file"==h?e?200:404:d,d=1223==d?204:d,b(d,e,f),a.$$completeOutstandingRequest(o)}var s;if(a.$$incOutstandingRequestCount(),i=i||a.url(),"jsonp"==Tc(e)){var t="_"+(d.counter++).toString(36);d[t]=function(a){d[t].data=a};var u=h(i.replace("JSON_CALLBACK","angular.callbacks."+t),function(){d[t].data?r(k,200,d[t].data):r(k,s||-2),delete d[t]})}else{var v=new b;v.open(e,i,!0),f(l,function(a,b){a&&v.setRequestHeader(b,a)}),v.onreadystatechange=function(){if(4==v.readyState){var a=v.getAllResponseHeaders(),b=["Cache-Control","Content-Language","Content-Type","Expires","Last-Modified","Pragma"];a||(a="",f(b,function(b){var c=v.getResponseHeader(b);c&&(a+=b+": "+c+"\n")})),r(k,s||v.status,v.responseType?v.response:v.responseText,a)}},n&&(v.withCredentials=!0),p&&(v.responseType=p),v.send(j||"")}if(m>0)var w=c(q,m);else m&&m.then&&m.then(q)}}function tc(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"¤",posSuf:"",negPre:"(¤",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(a){return 1===a?"one":"other"}}}}function uc(){this.$get=["$rootScope","$browser","$q","$exceptionHandler",function(a,b,c,d){function e(e,g,h){var i,j,k=c.defer(),l=k.promise,m=s(h)&&!h;return i=b.defer(function(){try{k.resolve(e())}catch(b){k.reject(b),d(b)}m||a.$apply()},g),j=function(){delete f[l.$$timeoutId]},l.$$timeoutId=i,f[i]=k,l.then(j,j),l}var f={};return e.cancel=function(a){return a&&a.$$timeoutId in f?(f[a.$$timeoutId].reject("canceled"),b.defer.cancel(a.$$timeoutId)):!1},e}]}function vc(a){function b(b,d){return a.factory(b+c,d)}var c="Filter";this.register=b,this.$get=["$injector",function(a){return function(b){return a.get(b+c)}}],b("currency",xc),b("date",Fc),b("filter",wc),b("json",Gc),b("limitTo",Hc),b("lowercase",Ld),b("number",yc),b("orderBy",Ic),b("uppercase",Md)}function wc(){return function(a,b,c){if(!x(a))return a;var d=[];switch(d.check=function(a){for(var b=0;b-1}}var e=function(a,b){if("string"==typeof b&&"!"===b.charAt(0))return!e(a,b.substr(1));switch(typeof a){case"boolean":case"number":case"string":return c(a,b);case"object":switch(typeof b){case"object":return c(a,b);default:for(var d in a)if("$"!==d.charAt(0)&&e(a[d],b))return!0}return!1;case"array":for(var f=0;fa;a=Math.abs(a);var g=a+"",h="",i=[],j=!1;if(-1!==g.indexOf("e")){var k=g.match(/([\d\.]+)e(-?)(\d+)/);k&&"-"==k[2]&&k[3]>e+1?g="0":(h=g,j=!0)}if(!j){var l=(g.split(Hd)[1]||"").length;r(e)&&(e=Math.min(Math.max(b.minFrac,l),b.maxFrac));var m=Math.pow(10,e);a=Math.round(a*m)/m;var n=(""+a).split(Hd),o=n[0];n=n[1]||"";var p=0,q=b.lgSize,s=b.gSize;if(o.length>=q+s){p=o.length-q;for(var t=0;p>t;t++)(p-t)%s===0&&0!==t&&(h+=c),h+=o.charAt(t)}for(t=p;ta&&(d="-",a=-a),a=""+a;a.length0||f>-c)&&(f+=c),0===f&&-12==c&&(f=12),Ac(f,b,d)}}function Cc(a,b){return function(c,d){var e=c["get"+a](),f=Uc(b?"SHORT"+a:a);return d[f][e]}}function Dc(a){var b=-1*a.getTimezoneOffset(),c=b>=0?"+":"";return c+=Ac(Math[b>0?"floor":"ceil"](b/60),2)+Ac(Math.abs(b%60),2)}function Ec(a,b){return a.getHours()<12?b.AMPMS[0]:b.AMPMS[1]}function Fc(a){function b(a){var b;if(b=a.match(c)){var d=new Date(0),e=0,f=0,g=b[8]?d.setUTCFullYear:d.setFullYear,h=b[8]?d.setUTCHours:d.setHours;b[9]&&(e=m(b[9]+b[10]),f=m(b[9]+b[11])),g.call(d,m(b[1]),m(b[2])-1,m(b[3]));var i=m(b[4]||0)-e,j=m(b[5]||0)-f,k=m(b[6]||0),l=Math.round(1e3*parseFloat("0."+(b[7]||0)));return h.call(d,i,j,k,l),d}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,d){var e,g,h="",i=[];if(d=d||"mediumDate",d=a.DATETIME_FORMATS[d]||d,u(c)&&(c=Kd.test(c)?m(c):b(c)),v(c)&&(c=new Date(c)),!w(c))return c;for(;d;)g=Jd.exec(d),g?(i=L(i,g,1),d=i.pop()):(i.push(d),d=null);return f(i,function(b){e=Id[b],h+=e?e(c,a.DATETIME_FORMATS):b.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),h}}function Gc(){return function(a){return P(a,!0)}}function Hc(){return function(a,b){if(!x(a)&&!u(a))return a;if(b=m(b),u(a))return b?b>=0?a.slice(0,b):a.slice(b,a.length):"";var c,d,e=[];for(b>a.length?b=a.length:b<-a.length&&(b=-a.length),b>0?(c=0,d=b):(c=a.length+b,d=a.length);d>c;c++)e.push(a[c]);return e}}function Ic(a){return function(b,c,d){function e(a,b){for(var d=0;da?-1:1):d>c?-1:1}if(!x(b))return b;if(!c)return b;c=x(c)?c:[c],c=E(c,function(b){var c=!1,d=b||p;return u(b)&&(("+"==b.charAt(0)||"-"==b.charAt(0))&&(c="-"==b.charAt(0),b=b.substring(1)),d=a(b)),f(function(a,b){return g(d(a),d(b))},c)});for(var h=[],i=0;i15&&19>b||b>=37&&40>=b||j()}),b.bind("change",h),f.hasEvent("paste")&&b.bind("paste cut",j)}e.$render=function(){b.val(Lc(e.$viewValue)?"":e.$viewValue)};var k,l,n=d.ngPattern,o=function(a,b){return Lc(b)||a.test(b)?(e.$setValidity("pattern",!0),b):(e.$setValidity("pattern",!1),c)};if(n&&(l=n.match(/^\/(.*)\/([gim]*)$/),l?(n=new RegExp(l[1],l[2]),k=function(a){return o(n,a)}):k=function(b){var c=a.$eval(n);if(!c||!c.test)throw new Error("Expected "+n+" to be a RegExp but was "+c);return o(c,b)},e.$formatters.push(k),e.$parsers.push(k)),d.ngMinlength){var p=m(d.ngMinlength),q=function(a){return!Lc(a)&&a.lengthr?(e.$setValidity("maxlength",!1),c):(e.$setValidity("maxlength",!0),a)};e.$parsers.push(s),e.$formatters.push(s)}}function Nc(a,b,d,e,f,g){if(Mc(a,b,d,e,f,g),e.$parsers.push(function(a){var b=Lc(a);return b||Vd.test(a)?(e.$setValidity("number",!0),""===a?null:b?a:parseFloat(a)):(e.$setValidity("number",!1),c)}),e.$formatters.push(function(a){return Lc(a)?"":""+a}),d.min){var h=parseFloat(d.min),i=function(a){return!Lc(a)&&h>a?(e.$setValidity("min",!1),c):(e.$setValidity("min",!0),a)};e.$parsers.push(i),e.$formatters.push(i)}if(d.max){var j=parseFloat(d.max),k=function(a){return!Lc(a)&&a>j?(e.$setValidity("max",!1),c):(e.$setValidity("max",!0),a)};e.$parsers.push(k),e.$formatters.push(k)}e.$formatters.push(function(a){return Lc(a)||v(a)?(e.$setValidity("number",!0),a):(e.$setValidity("number",!1),c)})}function Oc(a,b,d,e,f,g){Mc(a,b,d,e,f,g);var h=function(a){return Lc(a)||Td.test(a)?(e.$setValidity("url",!0),a):(e.$setValidity("url",!1),c)};e.$formatters.push(h),e.$parsers.push(h)}function Pc(a,b,d,e,f,g){Mc(a,b,d,e,f,g);var h=function(a){return Lc(a)||Ud.test(a)?(e.$setValidity("email",!0),a):(e.$setValidity("email",!1),c)};e.$formatters.push(h),e.$parsers.push(h)}function Qc(a,b,c,d){r(c.name)&&b.attr("name",j()),b.bind("click",function(){b[0].checked&&a.$apply(function(){d.$setViewValue(c.value)})}),d.$render=function(){var a=c.value;b[0].checked=a==d.$viewValue},c.$observe("value",d.$render)}function Rc(a,b,c,d){var e=c.ngTrueValue,f=c.ngFalseValue;u(e)||(e=!0),u(f)||(f=!1),b.bind("click",function(){a.$apply(function(){d.$setViewValue(b[0].checked)})}),d.$render=function(){b[0].checked=d.$viewValue},d.$formatters.push(function(a){return a===e}),d.$parsers.push(function(a){return a?e:f})}function Sc(a,b){return a="ngClass"+a,Jc(function(d,e,f){function g(a){(b===!0||d.$index%2===b)&&(j&&!K(a,j)&&h(j),i(a)),j=I(a)}function h(a){t(a)&&!x(a)&&(a=E(a,function(a,b){return a?b:void 0})),e.removeClass(x(a)?a.join(" "):a)}function i(a){t(a)&&!x(a)&&(a=E(a,function(a,b){return a?b:void 0})),a&&e.addClass(x(a)?a.join(" "):a)}var j=c;d.$watch(f[a],g,!0),f.$observe("class",function(){var b=d.$eval(f[a]);g(b,b)}),"ngClass"!==a&&d.$watch("$index",function(c,e){var g=1&c;g!==e&1&&(g===b?i(d.$eval(f[a])):h(d.$eval(f[a])))})})}var Tc=function(a){return u(a)?a.toLowerCase():a},Uc=function(a){return u(a)?a.toUpperCase():a},Vc=function(a){return u(a)?a.replace(/[A-Z]/g,function(a){return String.fromCharCode(32|a.charCodeAt(0)) -}):a},Wc=function(a){return u(a)?a.replace(/[a-z]/g,function(a){return String.fromCharCode(-33&a.charCodeAt(0))}):a};"i"!=="I".toLowerCase()&&(Tc=Vc,Uc=Wc);var Xc,Yc,Zc,$c,_c=m((/msie (\d+)/.exec(Tc(navigator.userAgent))||[])[1]),ad=[].slice,bd=[].push,cd=Object.prototype.toString,dd=a.angular,ed=a.angular||(a.angular={}),fd=["0","0","0"];o.$inject=[],p.$inject=[],$c=9>_c?function(a){return a=a.nodeName?a:a[0],a.scopeName&&"HTML"!=a.scopeName?Uc(a.scopeName+":"+a.nodeName):a.nodeName}:function(a){return a.nodeName?a.nodeName:a[0].nodeName};var gd=/[A-Z]/g,hd={full:"1.1.5",major:1,minor:1,dot:5,codeName:"triangle-squarification"},id=gb.cache={},jd=gb.expando="ng-"+(new Date).getTime(),kd=1,ld=a.document.addEventListener?function(a,b,c){a.addEventListener(b,c,!1)}:function(a,b,c){a.attachEvent("on"+b,c)},md=a.document.removeEventListener?function(a,b,c){a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent("on"+b,c)},nd=/([\:\-\_]+(.))/g,od=/^moz([A-Z])/,pd=gb.prototype={ready:function(c){function d(){e||(e=!0,c())}var e=!1;"complete"===b.readyState?setTimeout(d):(this.bind("DOMContentLoaded",d),gb(a).bind("load",d))},toString:function(){var a=[];return f(this,function(b){a.push(""+b)}),"["+a.join(", ")+"]"},eq:function(a){return Xc(a>=0?this[a]:this[this.length+a])},length:0,push:bd,sort:[].sort,splice:[].splice},qd={};f("multiple,selected,checked,disabled,readOnly,required,open".split(","),function(a){qd[Tc(a)]=a});var rd={};f("input,select,option,textarea,button,form,details".split(","),function(a){rd[Uc(a)]=!0}),f({data:mb,inheritedData:sb,scope:function(a){return sb(a,"$scope")},controller:rb,injector:function(a){return sb(a,"$injector")},removeAttr:function(a,b){a.removeAttribute(b)},hasClass:nb,css:function(a,b,d){if(b=eb(b),!s(d)){var e;return 8>=_c&&(e=a.currentStyle&&a.currentStyle[b],""===e&&(e="auto")),e=e||a.style[b],8>=_c&&(e=""===e?c:e),e}a.style[b]=d},attr:function(a,b,d){var e=Tc(b);if(qd[e]){if(!s(d))return a[b]||(a.attributes.getNamedItem(b)||o).specified?e:c;d?(a[b]=!0,a.setAttribute(b,e)):(a[b]=!1,a.removeAttribute(e))}else if(s(d))a.setAttribute(b,d);else if(a.getAttribute){var f=a.getAttribute(b,2);return null===f?c:f}},prop:function(a,b,c){return s(c)?void(a[b]=c):a[b]},text:l(9>_c?function(a,b){if(1==a.nodeType){if(r(b))return a.innerText;a.innerText=b}else{if(r(b))return a.nodeValue;a.nodeValue=b}}:function(a,b){return r(b)?a.textContent:void(a.textContent=b)},{$dv:""}),val:function(a,b){return r(b)?a.value:void(a.value=b)},html:function(a,b){if(r(b))return a.innerHTML;for(var c=0,d=a.childNodes;c0||parseFloat(p[c+h])>0)&&(f=a,k=c,o=Math.max(parseInt(p[f+j])||0,parseInt(p[k+j])||0,o));var q=Math.max(n(p[f+i]),n(p[k+i])),r=Math.max(n(p[f+h]),n(p[k+h]));l=Math.max(q+o*r,l)}}),d.setTimeout(q,1e3*l)}else q()}function q(){q.run||(q.run=!0,j(k,l,m),k.removeClass(s),k.removeClass(A),k.removeData(a))}var r=b.$eval(g.ngAnimate),s=r?t(r)?r[h]:r+"-"+h:"",v=c(s),w=v&&v.setup,x=v&&v.start,z=v&&v.cancel;if(s){var A=s+"-active";if(l||(l=m?m.parent():k.parent()),!e.transitions&&!w&&!x||(l.inheritedData(a)||o).running)return i(k,l,m),void j(k,l,m);var B=k.data(a)||{};if(B.running&&((z||o)(k),B.done()),k.data(a,{running:!0,done:q}),k.addClass(s),i(k,l,m),0==k.length)return q();var C=(w||o)(k);d.setTimeout(p,1)}else i(k,l,m),j(k,l,m)}}function i(a){a.css("display","")}function j(a){a.css("display","none")}function k(a,b,c){c?c.after(a):b.append(a)}function l(a){a.remove()}function m(a,b,c){k(a,b,c)}var n={};return n.enter=h("enter",k,o),n.leave=h("leave",o,l),n.move=h("move",m,o),n.show=h("show",i,o),n.hide=h("hide",o,j),n.animate=function(a,b){h(a,o,o)(b)},n};return h.enabled=function(a){return arguments.length&&(b.running=!a),!b.running},h}]},xd="Non-assignable model expression: ";Fb.$inject=["$provide"];var yd=/^(x[\:\-_]|data[\:\-_])/i,zd=/^([^:]+):\/\/(\w+:{0,1}\w*@)?(\{?[\w\.-]*\}?)(:([0-9]+))?(\/[^\?#]*)?(\?([^#]*))?(#(.*))?$/,Ad=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,Bd={http:80,https:443,ftp:21};Ub.prototype=Tb.prototype=Sb.prototype={$$replace:!1,absUrl:Vb("$$absUrl"),url:function(a,b){if(r(a))return this.$$url;var c=Ad.exec(a);return c[1]&&this.path(decodeURIComponent(c[1])),(c[2]||c[1])&&this.search(c[3]||""),this.hash(c[5]||"",b),this},protocol:Vb("$$protocol"),host:Vb("$$host"),port:Vb("$$port"),path:Wb("$$path",function(a){return"/"==a.charAt(0)?a:"/"+a}),search:function(a,b){return r(a)?this.$$search:(s(b)?null===b?delete this.$$search[a]:this.$$search[a]=b:this.$$search=u(a)?T(a):a,this.$$compose(),this)},hash:Wb("$$hash",p),replace:function(){return this.$$replace=!0,this}};var Cd={"null":function(){return null},"true":function(){return!0},"false":function(){return!1},undefined:o,"+":function(a,b,d,e){return d=d(a,b),e=e(a,b),s(d)?s(e)?d+e:d:s(e)?e:c},"-":function(a,b,c,d){return c=c(a,b),d=d(a,b),(s(c)?c:0)-(s(d)?d:0)},"*":function(a,b,c,d){return c(a,b)*d(a,b)},"/":function(a,b,c,d){return c(a,b)/d(a,b)},"%":function(a,b,c,d){return c(a,b)%d(a,b)},"^":function(a,b,c,d){return c(a,b)^d(a,b)},"=":o,"===":function(a,b,c,d){return c(a,b)===d(a,b)},"!==":function(a,b,c,d){return c(a,b)!==d(a,b)},"==":function(a,b,c,d){return c(a,b)==d(a,b)},"!=":function(a,b,c,d){return c(a,b)!=d(a,b)},"<":function(a,b,c,d){return c(a,b)":function(a,b,c,d){return c(a,b)>d(a,b)},"<=":function(a,b,c,d){return c(a,b)<=d(a,b)},">=":function(a,b,c,d){return c(a,b)>=d(a,b)},"&&":function(a,b,c,d){return c(a,b)&&d(a,b)},"||":function(a,b,c,d){return c(a,b)||d(a,b)},"&":function(a,b,c,d){return c(a,b)&d(a,b)},"|":function(a,b,c,d){return d(a,b)(a,b,c(a,b))},"!":function(a,b,c){return!c(a,b)}},Dd={n:"\n",f:"\f",r:"\r",t:" ",v:" ","'":"'",'"':'"'},Ed={},Fd=/^(([^:]+):)?\/\/(\w+:{0,1}\w*@)?([\w\.-]*)?(:([0-9]+))?(.*)$/,Gd=a.XMLHttpRequest||function(){try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(b){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(c){}throw new Error("This browser does not support XMLHttpRequest.")};vc.$inject=["$provide"],xc.$inject=["$locale"],yc.$inject=["$locale"];var Hd=".",Id={yyyy:Bc("FullYear",4),yy:Bc("FullYear",2,0,!0),y:Bc("FullYear",1),MMMM:Cc("Month"),MMM:Cc("Month",!0),MM:Bc("Month",2,1),M:Bc("Month",1,1),dd:Bc("Date",2),d:Bc("Date",1),HH:Bc("Hours",2),H:Bc("Hours",1),hh:Bc("Hours",2,-12),h:Bc("Hours",1,-12),mm:Bc("Minutes",2),m:Bc("Minutes",1),ss:Bc("Seconds",2),s:Bc("Seconds",1),sss:Bc("Milliseconds",3),EEEE:Cc("Day"),EEE:Cc("Day",!0),a:Ec,Z:Dc},Jd=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,Kd=/^\d+$/;Fc.$inject=["$locale"];var Ld=q(Tc),Md=q(Uc);Ic.$inject=["$parse"];var Nd=q({restrict:"E",compile:function(a,c){return 8>=_c&&(c.href||c.name||c.$set("href",""),a.append(b.createComment("IE fix"))),function(a,b){b.bind("click",function(a){b.attr("href")||a.preventDefault()})}}}),Od={};f(qd,function(a,b){var c=Gb("ng-"+b);Od[c]=function(){return{priority:100,compile:function(){return function(a,d,e){a.$watch(e[c],function(a){e.$set(b,!!a)})}}}}}),f(["src","srcset","href"],function(a){var b=Gb("ng-"+a);Od[b]=function(){return{priority:99,link:function(c,d,e){e.$observe(b,function(b){b&&(e.$set(a,b),_c&&d.prop(a,e[a]))})}}}});var Pd={$addControl:o,$removeControl:o,$setValidity:o,$setDirty:o,$setPristine:o};Kc.$inject=["$element","$attrs","$scope"];var Qd=function(a){return["$timeout",function(b){var d={name:"form",restrict:"E",controller:Kc,compile:function(){return{pre:function(a,d,e,f){if(!e.action){var g=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1};ld(d[0],"submit",g),d.bind("$destroy",function(){b(function(){md(d[0],"submit",g)},0,!1)})}var h=d.parent().controller("form"),i=e.name||e.ngForm;i&&(a[i]=f),h&&d.bind("$destroy",function(){h.$removeControl(f),i&&(a[i]=c),l(f,Pd)})}}}};return a?l(I(d),{restrict:"EAC"}):d}]},Rd=Qd(),Sd=Qd(!0),Td=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,Ud=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/,Vd=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,Wd={text:Mc,number:Nc,url:Oc,email:Pc,radio:Qc,checkbox:Rc,hidden:o,button:o,submit:o,reset:o},Xd=["$browser","$sniffer",function(a,b){return{restrict:"E",require:"?ngModel",link:function(c,d,e,f){f&&(Wd[Tc(e.type)]||Wd.text)(c,d,e,f,b,a)}}}],Yd="ng-valid",Zd="ng-invalid",$d="ng-pristine",_d="ng-dirty",ae=["$scope","$exceptionHandler","$attrs","$element","$parse",function(a,b,c,d,e){function g(a,b){b=b?"-"+Z(b,"-"):"",d.removeClass((a?Zd:Yd)+b).addClass((a?Yd:Zd)+b)}this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$name=c.name;var h=e(c.ngModel),i=h.assign;if(!i)throw Error(xd+c.ngModel+" ("+S(d)+")");this.$render=o;var j=d.inheritedData("$formController")||Pd,k=0,l=this.$error={};d.addClass($d),g(!0),this.$setValidity=function(a,b){l[a]!==!b&&(b?(l[a]&&k--,k||(g(!0),this.$valid=!0,this.$invalid=!1)):(g(!1),this.$invalid=!0,this.$valid=!1,k++),l[a]=!b,g(b,a),j.$setValidity(a,b,this))},this.$setPristine=function(){this.$dirty=!1,this.$pristine=!0,d.removeClass(_d).addClass($d)},this.$setViewValue=function(c){this.$viewValue=c,this.$pristine&&(this.$dirty=!0,this.$pristine=!1,d.removeClass($d).addClass(_d),j.$setDirty()),f(this.$parsers,function(a){c=a(c)}),this.$modelValue!==c&&(this.$modelValue=c,i(a,c),f(this.$viewChangeListeners,function(a){try{a()}catch(c){b(c)}}))};var m=this;a.$watch(function(){var b=h(a);if(m.$modelValue!==b){var c=m.$formatters,d=c.length;for(m.$modelValue=b;d--;)b=c[d](b);m.$viewValue!==b&&(m.$viewValue=b,m.$render())}})}],be=function(){return{require:["ngModel","^?form"],controller:ae,link:function(a,b,c,d){var e=d[0],f=d[1]||Pd;f.$addControl(e),b.bind("$destroy",function(){f.$removeControl(e)})}}},ce=q({require:"ngModel",link:function(a,b,c,d){d.$viewChangeListeners.push(function(){a.$eval(c.ngChange)})}}),de=function(){return{require:"?ngModel",link:function(a,b,c,d){if(d){c.required=!0;var e=function(a){return c.required&&(Lc(a)||a===!1)?void d.$setValidity("required",!1):(d.$setValidity("required",!0),a)};d.$formatters.push(e),d.$parsers.unshift(e),c.$observe("required",function(){e(d.$viewValue)})}}}},ee=function(){return{require:"ngModel",link:function(a,b,d,e){var g=/\/(.*)\//.exec(d.ngList),h=g&&new RegExp(g[1])||d.ngList||",",i=function(a){var b=[];return a&&f(a.split(h),function(a){a&&b.push(C(a))}),b};e.$parsers.push(i),e.$formatters.push(function(a){return x(a)?a.join(", "):c})}}},fe=/^(true|false|\d+)$/,ge=function(){return{priority:100,compile:function(a,b){return fe.test(b.ngValue)?function(a,b,c){c.$set("value",a.$eval(c.ngValue))}:function(a,b,c){a.$watch(c.ngValue,function(a){c.$set("value",a,!1)})}}}},he=Jc(function(a,b,d){b.addClass("ng-binding").data("$binding",d.ngBind),a.$watch(d.ngBind,function(a){b.text(a==c?"":a)})}),ie=["$interpolate",function(a){return function(b,c,d){var e=a(c.attr(d.$attr.ngBindTemplate));c.addClass("ng-binding").data("$binding",e),d.$observe("ngBindTemplate",function(a){c.text(a)})}}],je=[function(){return function(a,b,c){b.addClass("ng-binding").data("$binding",c.ngBindHtmlUnsafe),a.$watch(c.ngBindHtmlUnsafe,function(a){b.html(a||"")})}}],ke=Sc("",!0),le=Sc("Odd",0),me=Sc("Even",1),ne=Jc({compile:function(a,b){b.$set("ngCloak",c),a.removeClass("ng-cloak")}}),oe=[function(){return{scope:!0,controller:"@"}}],pe=["$sniffer",function(a){return{priority:1e3,compile:function(){a.csp=!0}}}],qe={};f("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress".split(" "),function(a){var b=Gb("ng-"+a);qe[b]=["$parse",function(c){return function(d,e,f){var g=c(f[b]);e.bind(Tc(a),function(a){d.$apply(function(){g(d,{$event:a})})})}}]});var re=Jc(function(a,b,c){b.bind("submit",function(){a.$apply(c.ngSubmit)})}),se=["$animator",function(a){return{transclude:"element",priority:1e3,terminal:!0,restrict:"A",compile:function(b,d,e){return function(b,d,f){var g,h,i=a(b,f);b.$watch(f.ngIf,function(a){g&&(i.leave(g),g=c),h&&(h.$destroy(),h=c),R(a)&&(h=b.$new(),e(h,function(a){g=a,i.enter(a,d.parent(),d)}))})}}}}],te=["$http","$templateCache","$anchorScroll","$compile","$animator",function(a,b,c,d,e){return{restrict:"ECA",terminal:!0,compile:function(f,g){var h=g.ngInclude||g.src,i=g.onload||"",j=g.autoscroll;return function(f,g,k){var l,m=e(f,k),n=0,o=function(){l&&(l.$destroy(),l=null),m.leave(g.contents(),g)};f.$watch(h,function(e){var h=++n;e?(a.get(e,{cache:b}).success(function(a){if(h===n){l&&l.$destroy(),l=f.$new(),m.leave(g.contents(),g);var b=Xc("
    ").html(a).contents();m.enter(b,g),d(b)(l),!s(j)||j&&!f.$eval(j)||c(),l.$emit("$includeContentLoaded"),f.$eval(i)}}).error(function(){h===n&&o()}),f.$emit("$includeContentRequested")):o()})}}}}],ue=Jc({compile:function(){return{pre:function(a,b,c){a.$eval(c.ngInit)}}}}),ve=Jc({terminal:!0,priority:1e3}),we=["$locale","$interpolate",function(a,b){var c=/{}/g;return{restrict:"EA",link:function(d,e,g){var h=g.count,i=e.attr(g.$attr.when),j=g.offset||0,k=d.$eval(i),l={},m=b.startSymbol(),n=b.endSymbol();f(k,function(a,d){l[d]=b(a.replace(c,m+h+"-"+j+n))}),d.$watch(function(){var b=parseFloat(d.$eval(h));return isNaN(b)?"":(b in k||(b=a.pluralCat(b-j)),l[b](d,e,!0))},function(a){e.text(a)})}}}],xe=["$parse","$animator",function(a,b){var c="$$NG_REMOVED";return{transclude:"element",priority:1e3,terminal:!0,compile:function(d,g,h){return function(d,g,i){var j,k,l,m,n,o,p,q=b(d,i),r=i.ngRepeat,s=r.match(/^\s*(.+)\s+in\s+(.*?)\s*(\s+track\s+by\s+(.+)\s*)?$/),t={$id:vb};if(!s)throw Error("Expected ngRepeat in form of '_item_ in _collection_[ track by _id_]' but got '"+r+"'.");if(m=s[1],n=s[2],j=s[4],j?(k=a(j),l=function(a,b,c){return p&&(t[p]=a),t[o]=b,t.$index=c,k(d,t)}):l=function(a,b){return vb(b)},s=m.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/),!s)throw Error("'item' in 'item in collection' should be identifier or (key, value) but got '"+m+"'.");o=s[3]||s[1],p=s[2];var u={};d.$watchCollection(n,function(a){var b,i,j,k,m,n,s,t,v,w,x=g,y={},z=[];if(e(a))v=a;else{v=[];for(n in a)a.hasOwnProperty(n)&&"$"!=n.charAt(0)&&v.push(n);v.sort()}for(k=v.length,i=z.length=v.length,b=0;i>b;b++)if(n=a===v?b:v[b],s=a[n],t=l(n,s,b),u.hasOwnProperty(t))w=u[t],delete u[t],y[t]=w,z[b]=w;else{if(y.hasOwnProperty(t))throw f(z,function(a){a&&a.element&&(u[a.id]=a)}),new Error("Duplicates in a repeater are not allowed. Repeater: "+r+" key: "+t);z[b]={id:t},y[t]=!1}for(n in u)u.hasOwnProperty(n)&&(w=u[n],q.leave(w.element),w.element[0][c]=!0,w.scope.$destroy());for(b=0,i=v.length;i>b;b++){if(n=a===v?b:v[b],s=a[n],w=z[b],w.element){m=w.scope,j=x[0];do j=j.nextSibling;while(j&&j[c]);w.element[0]==j?x=w.element:(q.move(w.element,null,x),x=w.element)}else m=d.$new();m[o]=s,p&&(m[p]=n),m.$index=b,m.$first=0===b,m.$last=b===k-1,m.$middle=!(m.$first||m.$last),w.element||h(m,function(a){q.enter(a,null,x),x=a,w.scope=m,w.element=a,y[w.id]=w})}u=y})}}}}],ye=["$animator",function(a){return function(b,c,d){var e=a(b,d);b.$watch(d.ngShow,function(a){e[R(a)?"show":"hide"](c)})}}],ze=["$animator",function(a){return function(b,c,d){var e=a(b,d);b.$watch(d.ngHide,function(a){e[R(a)?"hide":"show"](c)})}}],Ae=Jc(function(a,b,c){a.$watch(c.ngStyle,function(a,c){c&&a!==c&&f(c,function(a,c){b.css(c,"")}),a&&b.css(a)},!0)}),Be=["$animator",function(a){return{restrict:"EA",require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(b,c,d,e){var g,h,i=a(b,d),j=d.ngSwitch||d.on,k=[];b.$watch(j,function(a){for(var c=0,j=k.length;j>c;c++)k[c].$destroy(),i.leave(h[c]);h=[],k=[],(g=e.cases["!"+a]||e.cases["?"])&&(b.$eval(d.change),f(g,function(a){var c=b.$new();k.push(c),a.transclude(c,function(b){var c=a.element;h.push(b),i.enter(b,c.parent(),c)})}))})}}}],Ce=Jc({transclude:"element",priority:500,require:"^ngSwitch",compile:function(a,b,c){return function(a,d,e,f){f.cases["!"+b.ngSwitchWhen]=f.cases["!"+b.ngSwitchWhen]||[],f.cases["!"+b.ngSwitchWhen].push({transclude:c,element:d})}}}),De=Jc({transclude:"element",priority:500,require:"^ngSwitch",compile:function(a,b,c){return function(a,b,d,e){e.cases["?"]=e.cases["?"]||[],e.cases["?"].push({transclude:c,element:b})}}}),Ee=Jc({controller:["$transclude","$element",function(a,b){a(function(a){b.append(a)})}]}),Fe=["$http","$templateCache","$route","$anchorScroll","$compile","$controller","$animator",function(a,b,c,d,e,f,g){return{restrict:"ECA",terminal:!0,link:function(a,b,h){function i(){l&&(l.$destroy(),l=null)}function j(){n.leave(b.contents(),b),i()}function k(){var g=c.current&&c.current.locals,h=g&&g.$template;if(h){j();var i=Xc("
    ").html(h).contents();n.enter(i,b);var k,o=e(i),p=c.current;l=p.scope=a.$new(),p.controller&&(g.$scope=l,k=f(p.controller,g),p.controllerAs&&(l[p.controllerAs]=k),b.children().data("$ngControllerController",k)),o(l),l.$emit("$viewContentLoaded"),l.$eval(m),d()}else j()}var l,m=h.onload||"",n=g(a,h);a.$on("$routeChangeSuccess",k),k()}}}],Ge=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(b,c){if("text/ng-template"==c.type){var d=c.id,e=b[0].text;a.put(d,e)}}}}],He=q({terminal:!0}),Ie=["$compile","$parse",function(a,d){var e=/^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+group\s+by\s+(.*))?\s+for\s+(?:([\$\w][\$\w\d]*)|(?:\(\s*([\$\w][\$\w\d]*)\s*,\s*([\$\w][\$\w\d]*)\s*\)))\s+in\s+(.*?)(?:\s+track\s+by\s+(.*?))?$/,h={$setViewValue:o};return{restrict:"E",require:["select","?ngModel"],controller:["$element","$scope","$attrs",function(a,b,c){var d,e,f=this,g={},i=h;f.databound=c.ngModel,f.init=function(a,b,c){i=a,d=b,e=c},f.addOption=function(b){g[b]=!0,i.$viewValue==b&&(a.val(b),e.parent()&&e.remove())},f.removeOption=function(a){this.hasOption(a)&&(delete g[a],i.$viewValue==a&&this.renderUnknownOption(a))},f.renderUnknownOption=function(b){var c="? "+vb(b)+" ?";e.val(c),a.prepend(e),a.val(c),e.prop("selected",!0)},f.hasOption=function(a){return g.hasOwnProperty(a)},b.$on("$destroy",function(){f.renderUnknownOption=o})}],link:function(h,i,j,k){function l(a,b,c,d){c.$render=function(){var a=c.$viewValue;d.hasOption(a)?(z.parent()&&z.remove(),b.val(a),""===a&&o.prop("selected",!0)):r(a)&&o?b.val(""):d.renderUnknownOption(a)},b.bind("change",function(){a.$apply(function(){z.parent()&&z.remove(),c.$setViewValue(b.val())})})}function m(a,b,c){var d;c.$render=function(){var a=new wb(c.$viewValue);f(b.find("option"),function(b){b.selected=s(a.get(b.value))})},a.$watch(function(){K(d,c.$viewValue)||(d=I(c.$viewValue),c.$render())}),b.bind("change",function(){a.$apply(function(){var a=[];f(b.find("option"),function(b){b.selected&&a.push(b.value)}),c.$setViewValue(a)})})}function n(b,f,h){function i(){var a,d,e,i,j,q,u,z,A,B,C,D,E,F,G={"":[]},H=[""],I=h.$modelValue,J=p(b)||[],K=m?g(J):J,L={},M=!1;if(t)if(r&&x(I)){M=new wb([]);for(var N=0;NB;B++){if(L[l]=J[m?L[m]=K[B]:B],a=n(b,L)||"",(d=G[a])||(d=G[a]=[],H.push(a)),t)C=M.remove(r?r(b,L):o(b,L))!=c;else{if(r){var O={};O[l]=I,C=r(b,O)===r(b,L)}else C=I===o(b,L);M=M||C}F=k(b,L),F=F===c?"":F,d.push({id:r?r(b,L):m?K[B]:B,label:F,selected:C})}for(t||(v||null===I?G[""].unshift({id:"",label:"",selected:!M}):M||G[""].unshift({id:"?",label:"",selected:!0})),A=0,u=H.length;u>A;A++){for(a=H[A],d=G[a],s.length<=A?(i={element:y.clone().attr("label",a),label:d.label},j=[i],s.push(j),f.append(i.element)):(j=s[A],i=j[0],i.label!=a&&i.element.attr("label",i.label=a)),D=null,B=0,z=d.length;z>B;B++)e=d[B],(q=j[B+1])?(D=q.element,q.label!==e.label&&D.text(q.label=e.label),q.id!==e.id&&D.val(q.id=e.id),D[0].selected!==e.selected&&D.prop("selected",q.selected=e.selected)):(""===e.id&&v?E=v:(E=w.clone()).val(e.id).attr("selected",e.selected).text(e.label),j.push(q={element:E,label:e.label,id:e.id,selected:e.selected}),D?D.after(E):i.element.append(E),D=E);for(B++;j.length>B;)j.pop().element.remove()}for(;s.length>A;)s.pop()[0].element.remove()}var j;if(!(j=u.match(e)))throw Error("Expected ngOptions in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_ (track by _expr_)?' but got '"+u+"'.");var k=d(j[2]||j[1]),l=j[4]||j[6],m=j[5],n=d(j[3]||""),o=d(j[2]?j[1]:l),p=d(j[7]),q=j[8],r=q?d(j[8]):null,s=[[{element:f,label:""}]];v&&(a(v)(b),v.removeClass("ng-scope"),v.remove()),f.html(""),f.bind("change",function(){b.$apply(function(){var a,d,e,g,i,j,k,n,q=p(b)||[],u={};if(t){for(e=[],j=0,n=s.length;n>j;j++)for(a=s[j],i=1,k=a.length;k>i;i++)if((g=a[i].element)[0].selected){if(d=g.val(),m&&(u[m]=d),r)for(var v=0;vA;A++)if(""==B[A].value){o=v=B.eq(A);break}if(p.init(q,v,z),t&&(j.required||j.ngRequired)){var D=function(a){return q.$setValidity("required",!j.required||a&&a.length),a};q.$parsers.push(D),q.$formatters.unshift(D),j.$observe("required",function(){D(q.$viewValue)})}u?n(h,i,q):t?m(h,i,q):l(h,i,q,p)}}}}],Je=["$interpolate",function(a){var b={addOption:o,removeOption:o};return{restrict:"E",priority:100,compile:function(c,d){if(r(d.value)){var e=a(c.text(),!0);e||d.$set("value",c.text())}return function(a,c,d){var f="$selectController",g=c.parent(),h=g.data(f)||g.parent().data(f);h&&h.databound?c.prop("selected",!1):h=b,e?a.$watch(e,function(a,b){d.$set("value",a),a!==b&&h.removeOption(b),h.addOption(a)}):h.addOption(d.value),c.bind("$destroy",function(){h.removeOption(d.value)})}}}}],Ke=q({restrict:"E",terminal:!0});$(),cb(ed),Xc(b).ready(function(){X(b,Y)})}(window,document),angular.element(document).find("head").append(''),define("angular",["jquery","config"],function(a){return function(){var b;return b||a.angular}}(this)),function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F=this,G=F&&F.ejs,H=Array.prototype,I=Object.prototype,J=H.slice,K=I.toString,L=I.hasOwnProperty,M=H.forEach,N=Array.isArray,O=H.indexOf,P={};E="undefined"!=typeof exports?exports:F.ejs={},a=function(a,b){return L.call(a,b)},b=function(b,c,d){if(null!=b)if(M&&b.forEach===M)b.forEach(c,d);else if(b.length===+b.length){for(var e=0,f=b.length;f>e;e++)if(c.call(d,b[e],e,b)===P)return}else for(var g in b)if(a(b,g)&&c.call(d,b[g],g,b)===P)return},c=function(a){return b(J.call(arguments,1),function(b){for(var c in b)a[c]=b[c]}),a},d=function(a,b){if(null==a)return-1;var c=0,d=a.length;if(O&&a.indexOf===O)return a.indexOf(b);for(;d>c;c++)if(a[c]===b)return c;return-1},e=function(b,c){var e,f,h={};for(e in b)a(b,e)&&-1===d(c,e)&&(f=b[e],g(f)&&(f=f.join()),h[e]=f);return h},f=function(b,c){var d,f=e(b,c),g=[];for(d in f)a(f,d)&&g.push(d+"="+encodeURIComponent(f[d]));return g.join("&")},g=N||function(a){return"[object Array]"===K.call(a)},h=function(a){return a===Object(a)},i=function(a){return"[object String]"===K.call(a)},j=function(a){return"[object Number]"===K.call(a)},k="function"!=typeof/./?function(a){return"function"==typeof a}:function(a){return"[object Function]"===K.call(a)},l=function(b){return h(b)&&a(b,"_type")&&a(b,"_self")&&a(b,"toString")},m=function(a){return l(a)&&"query"===a._type()},n=function(a){return l(a)&&"rescore"===a._type()},o=function(a){return l(a)&&"filter"===a._type()},p=function(a){return l(a)&&"facet"===a._type()},q=function(a){return l(a)&&"script field"===a._type()},r=function(a){return l(a)&&"geo point"===a._type()},s=function(a){return l(a)&&"indexed shape"===a._type()},t=function(a){return l(a)&&"shape"===a._type()},u=function(a){return l(a)&&"sort"===a._type()},v=function(a){return l(a)&&"highlight"===a._type()},w=function(a){return l(a)&&"suggest"===a._type()},x=function(a){return l(a)&&"generator"===a._type()},y=function(a){return l(a)&&"cluster health"===a._type()},z=function(a){return l(a)&&"cluster state"===a._type()},A=function(a){return l(a)&&"node stats"===a._type()},B=function(a){return l(a)&&"node info"===a._type()},C=function(a){return l(a)&&"request"===a._type()},D=function(a){return l(a)&&"multi search request"===a._type()},E.DateHistogramFacet=function(a){var b={};return b[a]={date_histogram:{}},{field:function(c){return null==c?b[a].date_histogram.field:(b[a].date_histogram.field=c,this)},keyField:function(c){return null==c?b[a].date_histogram.key_field:(b[a].date_histogram.key_field=c,this)},valueField:function(c){return null==c?b[a].date_histogram.value_field:(b[a].date_histogram.value_field=c,this)},interval:function(c){return null==c?b[a].date_histogram.interval:(b[a].date_histogram.interval=c,this)},timeZone:function(c){return null==c?b[a].date_histogram.time_zone:(b[a].date_histogram.time_zone=c,this)},preZone:function(c){return null==c?b[a].date_histogram.pre_zone:(b[a].date_histogram.pre_zone=c,this)},preZoneAdjustLargeInterval:function(c){return null==c?b[a].date_histogram.pre_zone_adjust_large_interval:(b[a].date_histogram.pre_zone_adjust_large_interval=c,this)},postZone:function(c){return null==c?b[a].date_histogram.post_zone:(b[a].date_histogram.post_zone=c,this)},preOffset:function(c){return null==c?b[a].date_histogram.pre_offset:(b[a].date_histogram.pre_offset=c,this)},postOffset:function(c){return null==c?b[a].date_histogram.post_offset:(b[a].date_histogram.post_offset=c,this)},factor:function(c){return null==c?b[a].date_histogram.factor:(b[a].date_histogram.factor=c,this)},valueScript:function(c){return null==c?b[a].date_histogram.value_script:(b[a].date_histogram.value_script=c,this)},order:function(c){return null==c?b[a].date_histogram.order:(c=c.toLowerCase(),("time"===c||"count"===c||"total"===c)&&(b[a].date_histogram.order=c),this)},lang:function(c){return null==c?b[a].date_histogram.lang:(b[a].date_histogram.lang=c,this)},params:function(c){return null==c?b[a].date_histogram.params:(b[a].date_histogram.params=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.FilterFacet=function(a){var b={};return b[a]={},{filter:function(c){if(null==c)return b[a].filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].filter=c._self(),this},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.GeoDistanceFacet=function(a){var b={},c=E.GeoPoint([0,0]),d="location";return b[a]={geo_distance:{location:c._self(),ranges:[]}},{field:function(c){var e=b[a].geo_distance[d];return null==c?d:(delete b[a].geo_distance[d],d=c,b[a].geo_distance[c]=e,this)},point:function(e){if(null==e)return c;if(!r(e))throw new TypeError("Argument must be a GeoPoint");return c=e,b[a].geo_distance[d]=e._self(),this},addRange:function(c,d){return 0===arguments.length?b[a].geo_distance.ranges:(b[a].geo_distance.ranges.push({from:c,to:d}),this)},addUnboundedFrom:function(c){return null==c?b[a].geo_distance.ranges:(b[a].geo_distance.ranges.push({from:c}),this)},addUnboundedTo:function(c){return null==c?b[a].geo_distance.ranges:(b[a].geo_distance.ranges.push({to:c}),this)},unit:function(c){return null==c?b[a].geo_distance.unit:(c=c.toLowerCase(),("mi"===c||"km"===c)&&(b[a].geo_distance.unit=c),this) -},distanceType:function(c){return null==c?b[a].geo_distance.distance_type:(c=c.toLowerCase(),("arc"===c||"plane"===c)&&(b[a].geo_distance.distance_type=c),this)},normalize:function(c){return null==c?b[a].geo_distance.normalize:(b[a].geo_distance.normalize=c,this)},valueField:function(c){return null==c?b[a].geo_distance.value_field:(b[a].geo_distance.value_field=c,this)},valueScript:function(c){return null==c?b[a].geo_distance.value_script:(b[a].geo_distance.value_script=c,this)},lang:function(c){return null==c?b[a].geo_distance.lang:(b[a].geo_distance.lang=c,this)},params:function(c){return null==c?b[a].geo_distance.params:(b[a].geo_distance.params=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.HistogramFacet=function(a){var b={};return b[a]={histogram:{}},{field:function(c){return null==c?b[a].histogram.field:(b[a].histogram.field=c,this)},interval:function(c){return null==c?b[a].histogram.interval:(b[a].histogram.interval=c,this)},timeInterval:function(c){return null==c?b[a].histogram.time_interval:(b[a].histogram.time_interval=c,this)},from:function(c){return null==c?b[a].histogram.from:(b[a].histogram.from=c,this)},to:function(c){return null==c?b[a].histogram.to:(b[a].histogram.to=c,this)},valueField:function(c){return null==c?b[a].histogram.value_field:(b[a].histogram.value_field=c,this)},keyField:function(c){return null==c?b[a].histogram.key_field:(b[a].histogram.key_field=c,this)},valueScript:function(c){return null==c?b[a].histogram.value_script:(b[a].histogram.value_script=c,this)},keyScript:function(c){return null==c?b[a].histogram.key_script:(b[a].histogram.key_script=c,this)},lang:function(c){return null==c?b[a].histogram.lang:(b[a].histogram.lang=c,this)},params:function(c){return null==c?b[a].histogram.params:(b[a].histogram.params=c,this)},order:function(c){return null==c?b[a].histogram.order:(c=c.toLowerCase(),("key"===c||"count"===c||"total"===c)&&(b[a].histogram.order=c),this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.QueryFacet=function(a){var b={};return b[a]={},{query:function(c){if(null==c)return b[a].query;if(!m(c))throw new TypeError("Argument must be a Query");return b[a].query=c._self(),this},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argumnet must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.RangeFacet=function(a){var b={};return b[a]={range:{ranges:[]}},{field:function(c){return null==c?b[a].range.field:(b[a].range.field=c,this)},keyField:function(c){return null==c?b[a].range.key_field:(b[a].range.key_field=c,this)},valueField:function(c){return null==c?b[a].range.value_field:(b[a].range.value_field=c,this)},valueScript:function(c){return null==c?b[a].range.value_script:(b[a].range.value_script=c,this)},keyScript:function(c){return null==c?b[a].range.key_script:(b[a].range.key_script=c,this)},lang:function(c){return null==c?b[a].range.lang:(b[a].range.lang=c,this)},params:function(c){return null==c?b[a].range.params:(b[a].range.params=c,this)},addRange:function(c,d){return 0===arguments.length?b[a].range.ranges:(b[a].range.ranges.push({from:c,to:d}),this)},addUnboundedFrom:function(c){return null==c?b[a].range.ranges:(b[a].range.ranges.push({from:c}),this)},addUnboundedTo:function(c){return null==c?b[a].range.ranges:(b[a].range.ranges.push({to:c}),this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.StatisticalFacet=function(a){var b={};return b[a]={statistical:{}},{field:function(c){return null==c?b[a].statistical.field:(b[a].statistical.field=c,this)},fields:function(c){if(null==c)return b[a].statistical.fields;if(!g(c))throw new TypeError("Argument must be an array");return b[a].statistical.fields=c,this},script:function(c){return null==c?b[a].statistical.script:(b[a].statistical.script=c,this)},lang:function(c){return null==c?b[a].statistical.lang:(b[a].statistical.lang=c,this)},params:function(c){return null==c?b[a].statistical.params:(b[a].statistical.params=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.TermStatsFacet=function(a){var b={};return b[a]={terms_stats:{}},{valueField:function(c){return null==c?b[a].terms_stats.value_field:(b[a].terms_stats.value_field=c,this)},keyField:function(c){return null==c?b[a].terms_stats.key_field:(b[a].terms_stats.key_field=c,this)},scriptField:function(c){return null==c?b[a].terms_stats.script_field:(b[a].terms_stats.script_field=c,this)},valueScript:function(c){return null==c?b[a].terms_stats.value_script:(b[a].terms_stats.value_script=c,this)},allTerms:function(c){return null==c?b[a].terms_stats.all_terms:(b[a].terms_stats.all_terms=c,this)},lang:function(c){return null==c?b[a].terms_stats.lang:(b[a].terms_stats.lang=c,this)},params:function(c){return null==c?b[a].terms_stats.params:(b[a].terms_stats.params=c,this)},size:function(c){return null==c?b[a].terms_stats.size:(b[a].terms_stats.size=c,this)},order:function(c){return null==c?b[a].terms_stats.order:(c=c.toLowerCase(),("count"===c||"term"===c||"reverse_count"===c||"reverse_term"===c||"total"===c||"reverse_total"===c||"min"===c||"reverse_min"===c||"max"===c||"reverse_max"===c||"mean"===c||"reverse_mean"===c)&&(b[a].terms_stats.order=c),this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.TermsFacet=function(a){var b={};return b[a]={terms:{}},{field:function(c){return null==c?b[a].terms.field:(b[a].terms.field=c,this)},fields:function(c){if(null==c)return b[a].terms.fields;if(!g(c))throw new TypeError("Argument must be an array");return b[a].terms.fields=c,this},scriptField:function(c){return null==c?b[a].terms.script_field:(b[a].terms.script_field=c,this)},size:function(c){return null==c?b[a].terms.size:(b[a].terms.size=c,this)},order:function(c){return null==c?b[a].terms.order:(c=c.toLowerCase(),("count"===c||"term"===c||"reverse_count"===c||"reverse_term"===c)&&(b[a].terms.order=c),this)},allTerms:function(c){return null==c?b[a].terms.all_terms:(b[a].terms.all_terms=c,this)},exclude:function(c){if(null==b[a].terms.exclude&&(b[a].terms.exclude=[]),null==c)return b[a].terms.exclude;if(i(c))b[a].terms.exclude.push(c);else{if(!g(c))throw new TypeError("Argument must be string or array");b[a].terms.exclude=c}return this},regex:function(c){return null==c?b[a].terms.regex:(b[a].terms.regex=c,this)},regexFlags:function(c){return null==c?b[a].terms.regex_flags:(b[a].terms.regex_flags=c,this)},script:function(c){return null==c?b[a].terms.script:(b[a].terms.script=c,this)},lang:function(c){return null==c?b[a].terms.lang:(b[a].terms.lang=c,this)},params:function(c){return null==c?b[a].terms.params:(b[a].terms.params=c,this)},executionHint:function(c){return null==c?b[a].terms.execution_hint:(b[a].terms.execution_hint=c,this)},facetFilter:function(c){if(null==c)return b[a].facet_filter;if(!o(c))throw new TypeError("Argument must be a Filter");return b[a].facet_filter=c._self(),this},global:function(c){return null==c?b[a].global:(b[a].global=c,this)},mode:function(c){return null==c?b[a].mode:(c=c.toLowerCase(),("collector"===c||"post"===c)&&(b[a].mode=c),this)},scope:function(){return this},cacheFilter:function(c){return null==c?b[a].cache_filter:(b[a].cache_filter=c,this)},nested:function(c){return null==c?b[a].nested:(b[a].nested=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"facet"},_self:function(){return b}}},E.AndFilter=function(a){var b,c,d={and:{filters:[]}};if(o(a))d.and.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or Array of Filters");for(b=0,c=a.length;c>b;b++){if(!o(a[b]))throw new TypeError("Array must contain only Filter objects");d.and.filters.push(a[b]._self())}}return{filters:function(a){var b,c;if(null==a)return d.and.filters;if(o(a))d.and.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or an Array of Filters");for(d.and.filters=[],b=0,c=a.length;c>b;b++){if(!o(a[b]))throw new TypeError("Array must contain only Filter objects");d.and.filters.push(a[b]._self())}}return this},name:function(a){return null==a?d.and._name:(d.and._name=a,this)},cache:function(a){return null==a?d.and._cache:(d.and._cache=a,this)},cacheKey:function(a){return null==a?d.and._cache_key:(d.and._cache_key=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"filter"},_self:function(){return d}}},E.BoolFilter=function(){var a={bool:{}};return{must:function(b){var c,d;if(null==a.bool.must&&(a.bool.must=[]),null==b)return a.bool.must;if(o(b))a.bool.must.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Filter or array of Filters");for(a.bool.must=[],c=0,d=b.length;d>c;c++){if(!o(b[c]))throw new TypeError("Argument must be an array of Filters");a.bool.must.push(b[c]._self())}}return this},mustNot:function(b){var c,d;if(null==a.bool.must_not&&(a.bool.must_not=[]),null==b)return a.bool.must_not;if(o(b))a.bool.must_not.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Filter or array of Filters");for(a.bool.must_not=[],c=0,d=b.length;d>c;c++){if(!o(b[c]))throw new TypeError("Argument must be an array of Filters");a.bool.must_not.push(b[c]._self())}}return this},should:function(b){var c,d;if(null==a.bool.should&&(a.bool.should=[]),null==b)return a.bool.should;if(o(b))a.bool.should.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Filter or array of Filters");for(a.bool.should=[],c=0,d=b.length;d>c;c++){if(!o(b[c]))throw new TypeError("Argument must be an array of Filters");a.bool.should.push(b[c]._self())}}return this},name:function(b){return null==b?a.bool._name:(a.bool._name=b,this)},cache:function(b){return null==b?a.bool._cache:(a.bool._cache=b,this)},cacheKey:function(b){return null==b?a.bool._cache_key:(a.bool._cache_key=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"filter"},_self:function(){return a}}},E.ExistsFilter=function(a){var b={exists:{field:a}};return{field:function(a){return null==a?b.exists.field:(b.exists.field=a,this)},name:function(a){return null==a?b.exists._name:(b.exists._name=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoBboxFilter=function(a){var b={geo_bounding_box:{}};return b.geo_bounding_box[a]={},{field:function(c){var d=b.geo_bounding_box[a];return null==c?a:(delete b.geo_bounding_box[a],a=c,b.geo_bounding_box[c]=d,this)},topLeft:function(c){if(null==c)return b.geo_bounding_box[a].top_left;if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_bounding_box[a].top_left=c._self(),this},bottomRight:function(c){if(null==c)return b.geo_bounding_box[a].bottom_right;if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_bounding_box[a].bottom_right=c._self(),this},type:function(a){return null==a?b.geo_bounding_box.type:(a=a.toLowerCase(),("memory"===a||"indexed"===a)&&(b.geo_bounding_box.type=a),this)},normalize:function(a){return null==a?b.geo_bounding_box.normalize:(b.geo_bounding_box.normalize=a,this)},name:function(a){return null==a?b.geo_bounding_box._name:(b.geo_bounding_box._name=a,this)},cache:function(a){return null==a?b.geo_bounding_box._cache:(b.geo_bounding_box._cache=a,this)},cacheKey:function(a){return null==a?b.geo_bounding_box._cache_key:(b.geo_bounding_box._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoDistanceFilter=function(a){var b={geo_distance:{}};return b.geo_distance[a]=[0,0],{field:function(c){var d=b.geo_distance[a];return null==c?a:(delete b.geo_distance[a],a=c,b.geo_distance[c]=d,this)},distance:function(a){if(null==a)return b.geo_distance.distance;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance.distance=a,this},unit:function(a){return null==a?b.geo_distance.unit:(a=a.toLowerCase(),("mi"===a||"km"===a)&&(b.geo_distance.unit=a),this)},point:function(c){if(null==c)return b.geo_distance[a];if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_distance[a]=c._self(),this},distanceType:function(a){return null==a?b.geo_distance.distance_type:(a=a.toLowerCase(),("arc"===a||"plane"===a)&&(b.geo_distance.distance_type=a),this)},normalize:function(a){return null==a?b.geo_distance.normalize:(b.geo_distance.normalize=a,this)},optimizeBbox:function(a){return null==a?b.geo_distance.optimize_bbox:(a=a.toLowerCase(),("memory"===a||"indexed"===a||"none"===a)&&(b.geo_distance.optimize_bbox=a),this)},name:function(a){return null==a?b.geo_distance._name:(b.geo_distance._name=a,this)},cache:function(a){return null==a?b.geo_distance._cache:(b.geo_distance._cache=a,this)},cacheKey:function(a){return null==a?b.geo_distance._cache_key:(b.geo_distance._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoDistanceRangeFilter=function(a){var b={geo_distance_range:{}};return b.geo_distance_range[a]=[0,0],{field:function(c){var d=b.geo_distance_range[a];return null==c?a:(delete b.geo_distance_range[a],a=c,b.geo_distance_range[c]=d,this)},from:function(a){if(null==a)return b.geo_distance_range.from;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.from=a,this},to:function(a){if(null==a)return b.geo_distance_range.to;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.to=a,this},includeLower:function(a){return null==a?b.geo_distance_range.include_lower:(b.geo_distance_range.include_lower=a,this)},includeUpper:function(a){return null==a?b.geo_distance_range.include_upper:(b.geo_distance_range.include_upper=a,this)},gt:function(a){if(null==a)return b.geo_distance_range.gt;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.gt=a,this},gte:function(a){if(null==a)return b.geo_distance_range.gte;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.gte=a,this},lt:function(a){if(null==a)return b.geo_distance_range.lt;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.lt=a,this},lte:function(a){if(null==a)return b.geo_distance_range.lte;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.geo_distance_range.lte=a,this},unit:function(a){return null==a?b.geo_distance_range.unit:(a=a.toLowerCase(),("mi"===a||"km"===a)&&(b.geo_distance_range.unit=a),this)},point:function(c){if(null==c)return b.geo_distance_range[a];if(!r(c))throw new TypeError("Argument must be a GeoPoint");return b.geo_distance_range[a]=c._self(),this},distanceType:function(a){return null==a?b.geo_distance_range.distance_type:(a=a.toLowerCase(),("arc"===a||"plane"===a)&&(b.geo_distance_range.distance_type=a),this)},normalize:function(a){return null==a?b.geo_distance_range.normalize:(b.geo_distance_range.normalize=a,this)},optimizeBbox:function(a){return null==a?b.geo_distance_range.optimize_bbox:(a=a.toLowerCase(),("memory"===a||"indexed"===a||"none"===a)&&(b.geo_distance_range.optimize_bbox=a),this)},name:function(a){return null==a?b.geo_distance_range._name:(b.geo_distance_range._name=a,this)},cache:function(a){return null==a?b.geo_distance_range._cache:(b.geo_distance_range._cache=a,this)},cacheKey:function(a){return null==a?b.geo_distance_range._cache_key:(b.geo_distance_range._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoPolygonFilter=function(a){var b={geo_polygon:{}};return b.geo_polygon[a]={points:[]},{field:function(c){var d=b.geo_polygon[a];return null==c?a:(delete b.geo_polygon[a],a=c,b.geo_polygon[c]=d,this)},points:function(c){var d,e;if(null==c)return b.geo_polygon[a].points;if(r(c))b.geo_polygon[a].points.push(c._self());else{if(!g(c))throw new TypeError("Argument must be a GeoPoint or Array of GeoPoints");for(b.geo_polygon[a].points=[],d=0,e=c.length;e>d;d++){if(!r(c[d]))throw new TypeError("Argument must be Array of GeoPoints");b.geo_polygon[a].points.push(c[d]._self())}}return this},normalize:function(a){return null==a?b.geo_polygon.normalize:(b.geo_polygon.normalize=a,this)},name:function(a){return null==a?b.geo_polygon._name:(b.geo_polygon._name=a,this)},cache:function(a){return null==a?b.geo_polygon._cache:(b.geo_polygon._cache=a,this)},cacheKey:function(a){return null==a?b.geo_polygon._cache_key:(b.geo_polygon._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.GeoShapeFilter=function(a){var b={geo_shape:{}};return b.geo_shape[a]={},{field:function(c){var d=b.geo_shape[a];return null==c?a:(delete b.geo_shape[a],a=c,b.geo_shape[c]=d,this)},shape:function(c){return null==c?b.geo_shape[a].shape:(null!=b.geo_shape[a].indexed_shape&&delete b.geo_shape[a].indexed_shape,b.geo_shape[a].shape=c._self(),this)},indexedShape:function(c){return null==c?b.geo_shape[a].indexed_shape:(null!=b.geo_shape[a].shape&&delete b.geo_shape[a].shape,b.geo_shape[a].indexed_shape=c._self(),this)},relation:function(c){return null==c?b.geo_shape[a].relation:(c=c.toLowerCase(),("intersects"===c||"disjoint"===c||"within"===c)&&(b.geo_shape[a].relation=c),this)},strategy:function(c){return null==c?b.geo_shape[a].strategy:(c=c.toLowerCase(),("recursive"===c||"term"===c)&&(b.geo_shape[a].strategy=c),this)},name:function(a){return null==a?b.geo_shape._name:(b.geo_shape._name=a,this)},cache:function(a){return null==a?b.geo_shape._cache:(b.geo_shape._cache=a,this)},cacheKey:function(a){return null==a?b.geo_shape._cache_key:(b.geo_shape._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.HasChildFilter=function(a,b){if(!m(a))throw new TypeError("No Query object found");var c={has_child:{query:a._self(),type:b}};return{query:function(a){if(null==a)return c.has_child.query;if(!m(a))throw new TypeError("Argument must be a Query object");return c.has_child.query=a._self(),this},filter:function(a){if(null==a)return c.has_child.filter;if(!o(a))throw new TypeError("Argument must be a Filter object");return c.has_child.filter=a._self(),this},type:function(a){return null==a?c.has_child.type:(c.has_child.type=a,this)},shortCircuitCutoff:function(a){return null==a?c.has_child.short_circuit_cutoff:(c.has_child.short_circuit_cutoff=a,this)},scope:function(){return this},name:function(a){return null==a?c.has_child._name:(c.has_child._name=a,this)},cache:function(a){return null==a?c.has_child._cache:(c.has_child._cache=a,this)},cacheKey:function(a){return null==a?c.has_child._cache_key:(c.has_child._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.HasParentFilter=function(a,b){if(!m(a))throw new TypeError("No Query object found");var c={has_parent:{query:a._self(),parent_type:b}};return{query:function(a){if(null==a)return c.has_parent.query;if(!m(a))throw new TypeError("Argument must be a Query object");return c.has_parent.query=a._self(),this},filter:function(a){if(null==a)return c.has_parent.filter;if(!o(a))throw new TypeError("Argument must be a Filter object");return c.has_parent.filter=a._self(),this},parentType:function(a){return null==a?c.has_parent.parent_type:(c.has_parent.parent_type=a,this)},scope:function(){return this},name:function(a){return null==a?c.has_parent._name:(c.has_parent._name=a,this)},cache:function(a){return null==a?c.has_parent._cache:(c.has_parent._cache=a,this)},cacheKey:function(a){return null==a?c.has_parent._cache_key:(c.has_parent._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.IdsFilter=function(a){var b={ids:{}};if(i(a))b.ids.values=[a];else{if(!g(a))throw new TypeError("Argument must be a string or an array");b.ids.values=a}return{values:function(a){if(null==a)return b.ids.values;if(i(a))b.ids.values.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or an array");b.ids.values=a}return this},type:function(a){if(null==b.ids.type&&(b.ids.type=[]),null==a)return b.ids.type;if(i(a))b.ids.type.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or an array");b.ids.type=a}return this},name:function(a){return null==a?b.ids._name:(b.ids._name=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.IndicesFilter=function(a,b){if(!o(a))throw new TypeError("Argument must be a Filter");var c={indices:{filter:a._self()}};if(i(b))c.indices.indices=[b];else{if(!g(b))throw new TypeError("Argument must be a string or array");c.indices.indices=b}return{indices:function(a){if(null==a)return c.indices.indices;if(i(a))c.indices.indices.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");c.indices.indices=a}return this},filter:function(a){if(null==a)return c.indices.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return c.indices.filter=a._self(),this},noMatchFilter:function(a){if(null==a)return c.indices.no_match_filter;if(i(a))a=a.toLowerCase(),("none"===a||"all"===a)&&(c.indices.no_match_filter=a);else{if(!o(a))throw new TypeError("Argument must be string or Filter");c.indices.no_match_filter=a._self()}return this},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.LimitFilter=function(a){var b={limit:{value:a}};return{value:function(a){if(null==a)return b.limit.value;if(!j(a))throw new TypeError("Argument must be a numeric value");return b.limit.value=a,this},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.MatchAllFilter=function(){var a={match_all:{}};return{toString:function(){return JSON.stringify(a)},_type:function(){return"filter"},_self:function(){return a}}},E.MissingFilter=function(a){var b={missing:{field:a}};return{field:function(a){return null==a?b.missing.field:(b.missing.field=a,this)},existence:function(a){return null==a?b.missing.existence:(b.missing.existence=a,this)},nullValue:function(a){return null==a?b.missing.null_value:(b.missing.null_value=a,this)},name:function(a){return null==a?b.missing._name:(b.missing._name=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.NestedFilter=function(a){var b={nested:{path:a}};return{path:function(a){return null==a?b.nested.path:(b.nested.path=a,this)},query:function(a){if(null==a)return b.nested.query;if(!m(a))throw new TypeError("Argument must be a Query object");return b.nested.query=a._self(),this},filter:function(a){if(null==a)return b.nested.filter;if(!o(a))throw new TypeError("Argument must be a Filter object");return b.nested.filter=a._self(),this},boost:function(a){return null==a?b.nested.boost:(b.nested.boost=a,this)},join:function(a){return null==a?b.nested.join:(b.nested.join=a,this)},scope:function(){return this},name:function(a){return null==a?b.nested._name:(b.nested._name=a,this)},cache:function(a){return null==a?b.nested._cache:(b.nested._cache=a,this)},cacheKey:function(a){return null==a?b.nested._cache_key:(b.nested._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.NotFilter=function(a){if(!o(a))throw new TypeError("Argument must be a Filter");var b={not:a._self()};return{filter:function(a){if(null==a)return b.not;if(!o(a))throw new TypeError("Argument must be a Filter");return b.not=a._self(),this},name:function(a){return null==a?b.not._name:(b.not._name=a,this)},cache:function(a){return null==a?b.not._cache:(b.not._cache=a,this)},cacheKey:function(a){return null==a?b.not._cache_key:(b.not._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.NumericRangeFilter=function(a){var b={numeric_range:{}};return b.numeric_range[a]={},{field:function(c){var d=b.numeric_range[a];return null==c?a:(delete b.numeric_range[a],a=c,b.numeric_range[a]=d,this)},from:function(c){if(null==c)return b.numeric_range[a].from;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].from=c,this},to:function(c){if(null==c)return b.numeric_range[a].to;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].to=c,this},includeLower:function(c){return null==c?b.numeric_range[a].include_lower:(b.numeric_range[a].include_lower=c,this)},includeUpper:function(c){return null==c?b.numeric_range[a].include_upper:(b.numeric_range[a].include_upper=c,this)},gt:function(c){if(null==c)return b.numeric_range[a].gt;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].gt=c,this},gte:function(c){if(null==c)return b.numeric_range[a].gte;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].gte=c,this},lt:function(c){if(null==c)return b.numeric_range[a].lt;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].lt=c,this},lte:function(c){if(null==c)return b.numeric_range[a].lte;if(!j(c))throw new TypeError("Argument must be a numeric value");return b.numeric_range[a].lte=c,this},name:function(a){return null==a?b.numeric_range._name:(b.numeric_range._name=a,this)},cache:function(a){return null==a?b.numeric_range._cache:(b.numeric_range._cache=a,this)},cacheKey:function(a){return null==a?b.numeric_range._cache_key:(b.numeric_range._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.OrFilter=function(a){var b,c,d;if(b={or:{filters:[]}},o(a))b.or.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or array of Filters");for(c=0,d=a.length;d>c;c++){if(!o(a[c]))throw new TypeError("Argument must be array of Filters");b.or.filters.push(a[c]._self())}}return{filters:function(a){var c,d;if(null==a)return b.or.filters;if(o(a))b.or.filters.push(a._self());else{if(!g(a))throw new TypeError("Argument must be a Filter or array of Filters");for(b.or.filters=[],c=0,d=a.length;d>c;c++){if(!o(a[c]))throw new TypeError("Argument must be an array of Filters");b.or.filters.push(a[c]._self())}}return this},name:function(a){return null==a?b.or._name:(b.or._name=a,this)},cache:function(a){return null==a?b.or._cache:(b.or._cache=a,this)},cacheKey:function(a){return null==a?b.or._cache_key:(b.or._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.PrefixFilter=function(a,b){var c={prefix:{}};return c.prefix[a]=b,{field:function(b){var d=c.prefix[a];return null==b?a:(delete c.prefix[a],a=b,c.prefix[a]=d,this)},prefix:function(b){return null==b?c.prefix[a]:(c.prefix[a]=b,this)},name:function(a){return null==a?c.prefix._name:(c.prefix._name=a,this)},cache:function(a){return null==a?c.prefix._cache:(c.prefix._cache=a,this)},cacheKey:function(a){return null==a?c.prefix._cache_key:(c.prefix._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.QueryFilter=function(a){if(!m(a))throw new TypeError("Argument must be a Query");var b={fquery:{query:a._self()}};return{query:function(a){if(null==a)return b.fquery.query;if(!m(a))throw new TypeError("Argument must be a Query");return b.fquery.query=a._self(),this},name:function(a){return null==a?b.fquery._name:(b.fquery._name=a,this)},cache:function(a){return null==a?b.fquery._cache:(b.fquery._cache=a,this)},cacheKey:function(a){return null==a?b.fquery._cache_key:(b.fquery._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.RangeFilter=function(a){var b={range:{}};return b.range[a]={},{field:function(c){var d=b.range[a];return null==c?a:(delete b.range[a],a=c,b.range[c]=d,this)},from:function(c){return null==c?b.range[a].from:(b.range[a].from=c,this)},to:function(c){return null==c?b.range[a].to:(b.range[a].to=c,this)},includeLower:function(c){return null==c?b.range[a].include_lower:(b.range[a].include_lower=c,this)},includeUpper:function(c){return null==c?b.range[a].include_upper:(b.range[a].include_upper=c,this)},gt:function(c){return null==c?b.range[a].gt:(b.range[a].gt=c,this)},gte:function(c){return null==c?b.range[a].gte:(b.range[a].gte=c,this)},lt:function(c){return null==c?b.range[a].lt:(b.range[a].lt=c,this)},lte:function(c){return null==c?b.range[a].lte:(b.range[a].lte=c,this)},name:function(a){return null==a?b.range._name:(b.range._name=a,this) -},cache:function(a){return null==a?b.range._cache:(b.range._cache=a,this)},cacheKey:function(a){return null==a?b.range._cache_key:(b.range._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.RegexpFilter=function(a,b){var c={regexp:{}};return c.regexp[a]={value:b},{field:function(b){var d=c.regexp[a];return null==b?a:(delete c.regexp[a],a=b,c.regexp[b]=d,this)},value:function(b){return null==b?c.regexp[a].value:(c.regexp[a].value=b,this)},flags:function(b){return null==b?c.regexp[a].flags:(c.regexp[a].flags=b,this)},flagsValue:function(b){return null==b?c.regexp[a].flags_value:(c.regexp[a].flags_value=b,this)},name:function(a){return null==a?c.regexp._name:(c.regexp._name=a,this)},cache:function(a){return null==a?c.regexp._cache:(c.regexp._cache=a,this)},cacheKey:function(a){return null==a?c.regexp._cache_key:(c.regexp._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.ScriptFilter=function(a){var b={script:{script:a}};return{script:function(a){return null==a?b.script.script:(b.script.script=a,this)},params:function(a){return null==a?b.script.params:(b.script.params=a,this)},lang:function(a){return null==a?b.script.lang:(b.script.lang=a,this)},name:function(a){return null==a?b.script._name:(b.script._name=a,this)},cache:function(a){return null==a?b.script._cache:(b.script._cache=a,this)},cacheKey:function(a){return null==a?b.script._cache_key:(b.script._cache_key=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.TermFilter=function(a,b){var c={term:{}};return c.term[a]=b,{field:function(b){var d=c.term[a];return null==b?a:(delete c.term[a],a=b,c.term[a]=d,this)},term:function(b){return null==b?c.term[a]:(c.term[a]=b,this)},name:function(a){return null==a?c.term._name:(c.term._name=a,this)},cache:function(a){return null==a?c.term._cache:(c.term._cache=a,this)},cacheKey:function(a){return null==a?c.term._cache_key:(c.term._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.TermsFilter=function(a,b){var c={terms:{}},d=function(){g(c.terms[a])||(c.terms[a]=[])},e=function(){g(c.terms[a])&&(c.terms[a]={})};return c.terms[a]=g(b)?b:[b],{field:function(b){var d=c.terms[a];return null==b?a:(delete c.terms[a],a=b,c.terms[b]=d,this)},terms:function(b){return d(),null==b?c.terms[a]:(g(b)?c.terms[a]=b:c.terms[a].push(b),this)},index:function(b){return e(),null==b?c.terms[a].index:(c.terms[a].index=b,this)},type:function(b){return e(),null==b?c.terms[a].type:(c.terms[a].type=b,this)},id:function(b){return e(),null==b?c.terms[a].id:(c.terms[a].id=b,this)},path:function(b){return e(),null==b?c.terms[a].path:(c.terms[a].path=b,this)},routing:function(b){return e(),null==b?c.terms[a].routing:(c.terms[a].routing=b,this)},cacheLookup:function(b){return e(),null==b?c.terms[a].cache:(c.terms[a].cache=b,this)},execution:function(a){return null==a?c.terms.execution:(a=a.toLowerCase(),("plain"===a||"bool"===a||"bool_nocache"===a||"and"===a||"and_nocache"===a||"or"===a||"or_nocache"===a)&&(c.terms.execution=a),this)},name:function(a){return null==a?c.terms._name:(c.terms._name=a,this)},cache:function(a){return null==a?c.terms._cache:(c.terms._cache=a,this)},cacheKey:function(a){return null==a?c.terms._cache_key:(c.terms._cache_key=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"filter"},_self:function(){return c}}},E.TypeFilter=function(a){var b={type:{value:a}};return{type:function(a){return null==a?b.type.value:(b.type.value=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"filter"},_self:function(){return b}}},E.Document=function(a,b,c){var d={},j=["upsert","source","script","lang","params"];return{index:function(b){return null==b?a:(a=b,this)},type:function(a){return null==a?b:(b=a,this)},id:function(a){return null==a?c:(c=a,this)},routing:function(a){return null==a?d.routing:(d.routing=a,this)},parent:function(a){return null==a?d.parent:(d.parent=a,this)},timestamp:function(a){return null==a?d.timestamp:(d.timestamp=a,this)},ttl:function(a){return null==a?d.ttl:(d.ttl=a,this)},timeout:function(a){return null==a?d.timeout:(d.timeout=a,this)},refresh:function(a){return null==a?d.refresh:(d.refresh=a,this)},version:function(a){return null==a?d.version:(d.version=a,this)},versionType:function(a){return null==a?d.version_type:(a=a.toLowerCase(),("internal"===a||"external"===a)&&(d.version_type=a),this)},opType:function(a){return null==a?d.op_type:(a=a.toLowerCase(),("index"===a||"create"===a)&&(d.op_type=a),this)},replication:function(a){return null==a?d.replication:(a=a.toLowerCase(),("async"===a||"sync"===a||"default"===a)&&(d.replication=a),this)},consistency:function(a){return null==a?d.consistency:(a=a.toLowerCase(),("default"===a||"one"===a||"quorum"===a||"all"===a)&&(d.consistency=a),this)},preference:function(a){return null==a?d.preference:(d.preference=a,this)},realtime:function(a){return null==a?d.realtime:(d.realtime=a,this)},fields:function(a){if(null==d.fields&&(d.fields=[]),null==a)return d.fields;if(i(a))d.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");d.fields=a}return this},script:function(a){return null==a?d.script:(d.script=a,this)},lang:function(a){return null==a?d.lang:(d.lang=a,this)},params:function(a){if(null==a)return d.params;if(!h(a))throw new TypeError("Argument must be an object");return d.params=a,this},retryOnConflict:function(a){return null==a?d.retry_on_conflict:(d.retry_on_conflict=a,this)},upsert:function(a){if(null==a)return d.upsert;if(!h(a))throw new TypeError("Argument must be an object");return d.upsert=a,this},docAsUpsert:function(a){return null==a?d.doc_as_upsert:(d.doc_as_upsert=a,this)},source:function(a){if(null==a)return d.source;if(!h(a))throw new TypeError("Argument must be an object");return d.source=a,this},toString:function(){return JSON.stringify(d)},_type:function(){return"document"},_self:function(){return d},doGet:function(f,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b||null==c)throw new Error("Index, Type, and ID must be set");var h="/"+a+"/"+b+"/"+c;return E.client.get(h,e(d,j),f,g)},doIndex:function(e,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b)throw new Error("Index and Type must be set");if(null==d.source)throw new Error("No source document found");var h,i="/"+a+"/"+b,k=JSON.stringify(d.source),l=f(d,j);return null!=c&&(i=i+"/"+c),""!==l&&(i=i+"?"+l),h=null==c?E.client.post(i,k,e,g):E.client.put(i,k,e,g)},doUpdate:function(e,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b||null==c)throw new Error("Index, Type, and ID must be set");if(null==d.script&&null==d.source)throw new Error("Update script or document required");var h="/"+a+"/"+b+"/"+c+"/_update",i={},k=f(d,j);return""!==k&&(h=h+"?"+k),null!=d.script&&(i.script=d.script),null!=d.lang&&(i.lang=d.lang),null!=d.params&&(i.params=d.params),null!=d.upsert&&(i.upsert=d.upsert),null!=d.source&&(i.doc=d.source),E.client.post(h,JSON.stringify(i),e,g)},doDelete:function(e,g){if(null==E.client)throw new Error("No Client Set");if(null==a||null==b||null==c)throw new Error("Index, Type, and ID must be set");var h="/"+a+"/"+b+"/"+c,i="",k=f(d,j);return""!==k&&(h=h+"?"+k),E.client.del(h,i,e,g)}}},E.BoolQuery=function(){var a={bool:{}};return{must:function(b){var c,d;if(null==a.bool.must&&(a.bool.must=[]),null==b)return a.bool.must;if(m(b))a.bool.must.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.bool.must=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be an array of Queries");a.bool.must.push(b[c]._self())}}return this},mustNot:function(b){var c,d;if(null==a.bool.must_not&&(a.bool.must_not=[]),null==b)return a.bool.must_not;if(m(b))a.bool.must_not.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.bool.must_not=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be an array of Queries");a.bool.must_not.push(b[c]._self())}}return this},should:function(b){var c,d;if(null==a.bool.should&&(a.bool.should=[]),null==b)return a.bool.should;if(m(b))a.bool.should.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.bool.should=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be an array of Queries");a.bool.should.push(b[c]._self())}}return this},boost:function(b){return null==b?a.bool.boost:(a.bool.boost=b,this)},adjustPureNegative:function(b){return null==b?a.bool.adjust_pure_negative:(a.bool.adjust_pure_negative=b,this)},disableCoord:function(b){return null==b?a.bool.disable_coord:(a.bool.disable_coord=b,this)},minimumNumberShouldMatch:function(b){return null==b?a.bool.minimum_number_should_match:(a.bool.minimum_number_should_match=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.BoostingQuery=function(a,b,c){if(!m(a)||!m(b))throw new TypeError("Arguments must be Queries");var d={boosting:{positive:a._self(),negative:b._self(),negative_boost:c}};return{positive:function(a){if(null==a)return d.boosting.positive;if(!m(a))throw new TypeError("Argument must be a Query");return d.boosting.positive=a._self(),this},negative:function(a){if(null==a)return d.boosting.negative;if(!m(a))throw new TypeError("Argument must be a Query");return d.boosting.negative=a._self(),this},negativeBoost:function(a){return null==a?d.boosting.negative_boost:(d.boosting.negative_boost=a,this)},boost:function(a){return null==a?d.boosting.boost:(d.boosting.boost=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"query"},_self:function(){return d}}},E.CommonTermsQuery=function(a,b){var c={common:{}};return null==a&&(a="no_field_set"),c.common[a]={},null!=b&&(c.common[a].query=b),{field:function(b){var d=c.common[a];return null==b?a:(delete c.common[a],a=b,c.common[b]=d,this)},query:function(b){return null==b?c.common[a].query:(c.common[a].query=b,this)},analyzer:function(b){return null==b?c.common[a].analyzer:(c.common[a].analyzer=b,this)},disableCoord:function(b){return null==b?c.common[a].disable_coord:(c.common[a].disable_coord=b,this)},cutoffFrequency:function(b){return null==b?c.common[a].cutoff_frequency:(c.common[a].cutoff_frequency=b,this)},highFreqOperator:function(b){return null==b?c.common[a].high_freq_operator:(b=b.toLowerCase(),("and"===b||"or"===b)&&(c.common[a].high_freq_operator=b),this)},lowFreqOperator:function(b){return null==b?c.common[a].low_freq_operator:(b=b.toLowerCase(),("and"===b||"or"===b)&&(c.common[a].low_freq_operator=b),this)},minimumShouldMatch:function(b){return null==b?c.common[a].minimum_should_match.low_freq:(null==c.common[a].minimum_should_match&&(c.common[a].minimum_should_match={}),c.common[a].minimum_should_match.low_freq=b,this)},minimumShouldMatchLowFreq:function(a){return this.minimumShouldMatch(a)},minimumShouldMatchHighFreq:function(b){return null==b?c.common[a].minimum_should_match.high_freq:(null==c.common[a].minimum_should_match&&(c.common[a].minimum_should_match={}),c.common[a].minimum_should_match.high_freq=b,this)},boost:function(b){return null==b?c.common[a].boost:(c.common[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.ConstantScoreQuery=function(){var a={constant_score:{}};return{query:function(b){if(null==b)return a.constant_score.query;if(!m(b))throw new TypeError("Argument must be a Query");return a.constant_score.query=b._self(),this},filter:function(b){if(null==b)return a.constant_score.filter;if(!o(b))throw new TypeError("Argument must be a Filter");return a.constant_score.filter=b._self(),this},cache:function(b){return null==b?a.constant_score._cache:(a.constant_score._cache=b,this)},cacheKey:function(b){return null==b?a.constant_score._cache_key:(a.constant_score._cache_key=b,this)},boost:function(b){return null==b?a.constant_score.boost:(a.constant_score.boost=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.CustomBoostFactorQuery=function(a){if(!m(a))throw new TypeError("Argument must be a Query");var b={custom_boost_factor:{query:a._self()}};return{query:function(a){if(null==a)return b.custom_boost_factor.query;if(!m(a))throw new TypeError("Argument must be a Query");return b.custom_boost_factor.query=a._self(),this},boostFactor:function(a){return null==a?b.custom_boost_factor.boost_factor:(b.custom_boost_factor.boost_factor=a,this)},boost:function(a){return null==a?b.custom_boost_factor.boost:(b.custom_boost_factor.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.CustomFiltersScoreQuery=function(a,c){if(!m(a))throw new TypeError("Argument must be a Query");var d={custom_filters_score:{query:a._self(),filters:[]}},e=function(a){var b=null;return a.filter&&o(a.filter)&&(b={filter:a.filter._self()},a.boost?b.boost=a.boost:a.script?b.script=a.script:b=null),b};return b(g(c)?c:[c],function(a){var b=e(a);null!==b&&d.custom_filters_score.filters.push(b)}),{query:function(a){if(null==a)return d.custom_filters_score.query;if(!m(a))throw new TypeError("Argument must be a Query");return d.custom_filters_score.query=a._self(),this},filters:function(a){return null==a?d.custom_filters_score.filters:(g(a)&&(d.custom_filters_score.filters=[]),b(g(a)?a:[a],function(a){var b=e(a);null!==b&&d.custom_filters_score.filters.push(b)}),this)},scoreMode:function(a){return null==a?d.custom_filters_score.score_mode:(a=a.toLowerCase(),("first"===a||"min"===a||"max"===a||"total"===a||"avg"===a||"multiply"===a)&&(d.custom_filters_score.score_mode=a),this)},params:function(a){return null==a?d.custom_filters_score.params:(d.custom_filters_score.params=a,this)},lang:function(a){return null==a?d.custom_filters_score.lang:(d.custom_filters_score.lang=a,this)},maxBoost:function(a){return null==a?d.custom_filters_score.max_boost:(d.custom_filters_score.max_boost=a,this)},boost:function(a){return null==a?d.custom_filters_score.boost:(d.custom_filters_score.boost=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"query"},_self:function(){return d}}},E.CustomScoreQuery=function(a,b){if(!m(a)&&!o(a))throw new TypeError("Argument must be a Query or Filter");var c={custom_score:{script:b}};return m(a)?c.custom_score.query=a._self():o(a)&&(c.custom_score.filter=a._self()),{query:function(a){if(null==a)return c.custom_score.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.custom_score.query=a._self(),this},filter:function(a){if(null==a)return c.custom_score.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return c.custom_score.filter=a._self(),this},script:function(a){return null==a?c.custom_score.script:(c.custom_score.script=a,this)},params:function(a){return null==a?c.custom_score.params:(c.custom_score.params=a,this)},lang:function(a){return null==a?c.custom_score.lang:(c.custom_score.lang=a,this)},boost:function(a){return null==a?c.custom_score.boost:(c.custom_score.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.DisMaxQuery=function(){var a={dis_max:{}};return{queries:function(b){var c,d;if(null==b)return a.dis_max.queries;if(null==a.dis_max.queries&&(a.dis_max.queries=[]),m(b))a.dis_max.queries.push(b._self());else{if(!g(b))throw new TypeError("Argument must be a Query or array of Queries");for(a.dis_max.queries=[],c=0,d=b.length;d>c;c++){if(!m(b[c]))throw new TypeError("Argument must be array of Queries");a.dis_max.queries.push(b[c]._self())}}return this},boost:function(b){return null==b?a.dis_max.boost:(a.dis_max.boost=b,this)},tieBreaker:function(b){return null==b?a.dis_max.tie_breaker:(a.dis_max.tie_breaker=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.FieldMaskingSpanQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a SpanQuery");var c={field_masking_span:{query:a._self(),field:b}};return{query:function(a){if(null==a)return c.field_masking_span.query;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.field_masking_span.query=a._self(),this},field:function(a){return null==a?c.field_masking_span.field:(c.field_masking_span.field=a,this)},boost:function(a){return null==a?c.field_masking_span.boost:(c.field_masking_span.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FieldQuery=function(a,b){var c={field:{}};return c.field[a]={query:b},{field:function(b){var d=c.field[a];return null==b?a:(delete c.field[a],a=b,c.field[b]=d,this)},query:function(b){return null==b?c.field[a].query:(c.field[a].query=b,this)},defaultOperator:function(b){return null==b?c.field[a].default_operator:(b=b.toUpperCase(),("AND"===b||"OR"===b)&&(c.field[a].default_operator=b),this)},analyzer:function(b){return null==b?c.field[a].analyzer:(c.field[a].analyzer=b,this)},quoteAnalyzer:function(b){return null==b?c.field[a].quote_analyzer:(c.field[a].quote_analyzer=b,this)},autoGeneratePhraseQueries:function(b){return null==b?c.field[a].auto_generate_phrase_queries:(c.field[a].auto_generate_phrase_queries=b,this)},allowLeadingWildcard:function(b){return null==b?c.field[a].allow_leading_wildcard:(c.field[a].allow_leading_wildcard=b,this)},lowercaseExpandedTerms:function(b){return null==b?c.field[a].lowercase_expanded_terms:(c.field[a].lowercase_expanded_terms=b,this)},enablePositionIncrements:function(b){return null==b?c.field[a].enable_position_increments:(c.field[a].enable_position_increments=b,this)},fuzzyMinSim:function(b){return null==b?c.field[a].fuzzy_min_sim:(c.field[a].fuzzy_min_sim=b,this)},boost:function(b){return null==b?c.field[a].boost:(c.field[a].boost=b,this)},fuzzyPrefixLength:function(b){return null==b?c.field[a].fuzzy_prefix_length:(c.field[a].fuzzy_prefix_length=b,this)},fuzzyMaxExpansions:function(b){return null==b?c.field[a].fuzzy_max_expansions:(c.field[a].fuzzy_max_expansions=b,this)},fuzzyRewrite:function(b){return null==b?c.field[a].fuzzy_rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.field[a].fuzzy_rewrite=b),this)},rewrite:function(b){return null==b?c.field[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.field[a].rewrite=b),this)},quoteFieldSuffix:function(b){return null==b?c.field[a].quote_field_suffix:(c.field[a].quote_field_suffix=b,this)},phraseSlop:function(b){return null==b?c.field[a].phrase_slop:(c.field[a].phrase_slop=b,this)},analyzeWildcard:function(b){return null==b?c.field[a].analyze_wildcard:(c.field[a].analyze_wildcard=b,this)},escape:function(b){return null==b?c.field[a].escape:(c.field[a].escape=b,this)},minimumShouldMatch:function(b){return null==b?c.field[a].minimum_should_match:(c.field[a].minimum_should_match=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FilteredQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");if(null!=b&&!o(b))throw new TypeError("Argument must be a Filter");var c={filtered:{query:a._self()}};return null!=b&&(c.filtered.filter=b._self()),{query:function(a){if(null==a)return c.filtered.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.filtered.query=a._self(),this},filter:function(a){if(null==a)return c.filtered.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return c.filtered.filter=a._self(),this},strategy:function(a){return null==a?c.filtered.strategy:(a=a.toLowerCase(),("query_first"===a||"random_access_always"===a||"leap_frog"===a||"leap_frog_filter_first"===a||0===a.indexOf("random_access_"))&&(c.filtered.strategy=a),this)},cache:function(a){return null==a?c.filtered._cache:(c.filtered._cache=a,this)},cacheKey:function(a){return null==a?c.filtered._cache_key:(c.filtered._cache_key=a,this)},boost:function(a){return null==a?c.filtered.boost:(c.filtered.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FuzzyLikeThisFieldQuery=function(a,b){var c={flt_field:{}};return c.flt_field[a]={like_text:b},{field:function(b){var d=c.flt_field[a];return null==b?a:(delete c.flt_field[a],a=b,c.flt_field[b]=d,this)},likeText:function(b){return null==b?c.flt_field[a].like_text:(c.flt_field[a].like_text=b,this)},ignoreTf:function(b){return null==b?c.flt_field[a].ignore_tf:(c.flt_field[a].ignore_tf=b,this)},maxQueryTerms:function(b){return null==b?c.flt_field[a].max_query_terms:(c.flt_field[a].max_query_terms=b,this)},minSimilarity:function(b){return null==b?c.flt_field[a].min_similarity:(c.flt_field[a].min_similarity=b,this)},prefixLength:function(b){return null==b?c.flt_field[a].prefix_length:(c.flt_field[a].prefix_length=b,this)},analyzer:function(b){return null==b?c.flt_field[a].analyzer:(c.flt_field[a].analyzer=b,this)},failOnUnsupportedField:function(b){return null==b?c.flt_field[a].fail_on_unsupported_field:(c.flt_field[a].fail_on_unsupported_field=b,this)},boost:function(b){return null==b?c.flt_field[a].boost:(c.flt_field[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.FuzzyLikeThisQuery=function(a){var b={flt:{like_text:a}};return{fields:function(a){if(null==b.flt.fields&&(b.flt.fields=[]),null==a)return b.flt.fields;if(i(a))b.flt.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");b.flt.fields=a}return this},likeText:function(a){return null==a?b.flt.like_text:(b.flt.like_text=a,this)},ignoreTf:function(a){return null==a?b.flt.ignore_tf:(b.flt.ignore_tf=a,this)},maxQueryTerms:function(a){return null==a?b.flt.max_query_terms:(b.flt.max_query_terms=a,this)},minSimilarity:function(a){return null==a?b.flt.min_similarity:(b.flt.min_similarity=a,this)},prefixLength:function(a){return null==a?b.flt.prefix_length:(b.flt.prefix_length=a,this)},analyzer:function(a){return null==a?b.flt.analyzer:(b.flt.analyzer=a,this)},failOnUnsupportedField:function(a){return null==a?b.flt.fail_on_unsupported_field:(b.flt.fail_on_unsupported_field=a,this)},boost:function(a){return null==a?b.flt.boost:(b.flt.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.FuzzyQuery=function(a,b){var c={fuzzy:{}};return c.fuzzy[a]={value:b},{field:function(b){var d=c.fuzzy[a];return null==b?a:(delete c.fuzzy[a],a=b,c.fuzzy[b]=d,this)},value:function(b){return null==b?c.fuzzy[a].value:(c.fuzzy[a].value=b,this)},transpositions:function(b){return null==b?c.fuzzy[a].transpositions:(c.fuzzy[a].transpositions=b,this)},maxExpansions:function(b){return null==b?c.fuzzy[a].max_expansions:(c.fuzzy[a].max_expansions=b,this)},minSimilarity:function(b){return null==b?c.fuzzy[a].min_similarity:(c.fuzzy[a].min_similarity=b,this)},prefixLength:function(b){return null==b?c.fuzzy[a].prefix_length:(c.fuzzy[a].prefix_length=b,this)},rewrite:function(b){return null==b?c.fuzzy[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.fuzzy[a].rewrite=b),this)},boost:function(b){return null==b?c.fuzzy[a].boost:(c.fuzzy[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.GeoShapeQuery=function(a){var b={geo_shape:{}};return b.geo_shape[a]={},{field:function(c){var d=b.geo_shape[a];return null==c?a:(delete b.geo_shape[a],a=c,b.geo_shape[c]=d,this)},shape:function(c){return null==c?b.geo_shape[a].shape:(null!=b.geo_shape[a].indexed_shape&&delete b.geo_shape[a].indexed_shape,b.geo_shape[a].shape=c._self(),this)},indexedShape:function(c){return null==c?b.geo_shape[a].indexed_shape:(null!=b.geo_shape[a].shape&&delete b.geo_shape[a].shape,b.geo_shape[a].indexed_shape=c._self(),this)},relation:function(c){return null==c?b.geo_shape[a].relation:(c=c.toLowerCase(),("intersects"===c||"disjoint"===c||"within"===c)&&(b.geo_shape[a].relation=c),this)},strategy:function(c){return null==c?b.geo_shape[a].strategy:(c=c.toLowerCase(),("recursive"===c||"term"===c)&&(b.geo_shape[a].strategy=c),this)},boost:function(c){return null==c?b.geo_shape[a].boost:(b.geo_shape[a].boost=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.HasChildQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a valid Query");var c={has_child:{query:a._self(),type:b}};return{query:function(a){if(null==a)return c.has_child.query;if(!m(a))throw new TypeError("Argument must be a valid Query");return c.has_child.query=a._self(),this},type:function(a){return null==a?c.has_child.type:(c.has_child.type=a,this)},scope:function(){return this},scoreType:function(a){return null==a?c.has_child.score_type:(a=a.toLowerCase(),("none"===a||"max"===a||"sum"===a||"avg"===a)&&(c.has_child.score_type=a),this)},scoreMode:function(a){return null==a?c.has_child.score_mode:(a=a.toLowerCase(),("none"===a||"max"===a||"sum"===a||"avg"===a)&&(c.has_child.score_mode=a),this)},shortCircuitCutoff:function(a){return null==a?c.has_child.short_circuit_cutoff:(c.has_child.short_circuit_cutoff=a,this)},boost:function(a){return null==a?c.has_child.boost:(c.has_child.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.HasParentQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");var c={has_parent:{query:a._self(),parent_type:b}};return{query:function(a){if(null==a)return c.has_parent.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.has_parent.query=a._self(),this},parentType:function(a){return null==a?c.has_parent.parent_type:(c.has_parent.parent_type=a,this)},scope:function(){return this},scoreType:function(a){return null==a?c.has_parent.score_type:(a=a.toLowerCase(),("none"===a||"score"===a)&&(c.has_parent.score_type=a),this)},scoreMode:function(a){return null==a?c.has_parent.score_mode:(a=a.toLowerCase(),("none"===a||"score"===a)&&(c.has_parent.score_mode=a),this)},boost:function(a){return null==a?c.has_parent.boost:(c.has_parent.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.IdsQuery=function(a){var b={ids:{}};if(i(a))b.ids.values=[a];else{if(!g(a))throw new TypeError("Argument must be string or array");b.ids.values=a}return{values:function(a){if(null==a)return b.ids.values;if(i(a))b.ids.values.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");b.ids.values=a}return this},type:function(a){if(null==b.ids.type&&(b.ids.type=[]),null==a)return b.ids.type;if(i(a))b.ids.type.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");b.ids.type=a}return this},boost:function(a){return null==a?b.ids.boost:(b.ids.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.IndicesQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");var c={indices:{query:a._self()}};if(i(b))c.indices.indices=[b];else{if(!g(b))throw new TypeError("Argument must be a string or array");c.indices.indices=b}return{indices:function(a){if(null==a)return c.indices.indices;if(i(a))c.indices.indices.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");c.indices.indices=a}return this},query:function(a){if(null==a)return c.indices.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.indices.query=a._self(),this},noMatchQuery:function(a){if(null==a)return c.indices.no_match_query;if(i(a))a=a.toLowerCase(),("none"===a||"all"===a)&&(c.indices.no_match_query=a);else{if(!m(a))throw new TypeError("Argument must be string or Query");c.indices.no_match_query=a._self()}return this},boost:function(a){return null==a?c.indices.boost:(c.indices.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MatchAllQuery=function(){var a={match_all:{}};return{boost:function(b){return null==b?a.match_all.boost:(a.match_all.boost=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"query"},_self:function(){return a}}},E.MatchQuery=function(a,b){var c={match:{}};return c.match[a]={query:b},{boost:function(b){return null==b?c.match[a].boost:(c.match[a].boost=b,this)},query:function(b){return null==b?c.match[a].query:(c.match[a].query=b,this)},type:function(b){return null==b?c.match[a].type:(b=b.toLowerCase(),("boolean"===b||"phrase"===b||"phrase_prefix"===b)&&(c.match[a].type=b),this)},fuzziness:function(b){return null==b?c.match[a].fuzziness:(c.match[a].fuzziness=b,this)},cutoffFrequency:function(b){return null==b?c.match[a].cutoff_frequency:(c.match[a].cutoff_frequency=b,this)},prefixLength:function(b){return null==b?c.match[a].prefix_length:(c.match[a].prefix_length=b,this)},maxExpansions:function(b){return null==b?c.match[a].max_expansions:(c.match[a].max_expansions=b,this)},operator:function(b){return null==b?c.match[a].operator:(b=b.toLowerCase(),("and"===b||"or"===b)&&(c.match[a].operator=b),this)},slop:function(b){return null==b?c.match[a].slop:(c.match[a].slop=b,this)},analyzer:function(b){return null==b?c.match[a].analyzer:(c.match[a].analyzer=b,this)},minimumShouldMatch:function(b){return null==b?c.match[a].minimum_should_match:(c.match[a].minimum_should_match=b,this)},rewrite:function(b){return null==b?c.match[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.match[a].rewrite=b),this)},fuzzyRewrite:function(b){return null==b?c.match[a].fuzzy_rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.match[a].fuzzy_rewrite=b),this)},fuzzyTranspositions:function(b){return null==b?c.match[a].fuzzy_transpositions:(c.match[a].fuzzy_transpositions=b,this)},lenient:function(b){return null==b?c.match[a].lenient:(c.match[a].lenient=b,this)},zeroTermsQuery:function(b){return null==b?c.match[a].zero_terms_query:(b=b.toLowerCase(),("all"===b||"none"===b)&&(c.match[a].zero_terms_query=b),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MoreLikeThisFieldQuery=function(a,b){var c={mlt_field:{}};return c.mlt_field[a]={like_text:b},{field:function(b){var d=c.mlt_field[a];return null==b?a:(delete c.mlt_field[a],a=b,c.mlt_field[b]=d,this)},likeText:function(b){return null==b?c.mlt_field[a].like_text:(c.mlt_field[a].like_text=b,this)},percentTermsToMatch:function(b){return null==b?c.mlt_field[a].percent_terms_to_match:(c.mlt_field[a].percent_terms_to_match=b,this)},minTermFreq:function(b){return null==b?c.mlt_field[a].min_term_freq:(c.mlt_field[a].min_term_freq=b,this)},maxQueryTerms:function(b){return null==b?c.mlt_field[a].max_query_terms:(c.mlt_field[a].max_query_terms=b,this)},stopWords:function(b){return null==b?c.mlt_field[a].stop_words:(c.mlt_field[a].stop_words=b,this) -},minDocFreq:function(b){return null==b?c.mlt_field[a].min_doc_freq:(c.mlt_field[a].min_doc_freq=b,this)},maxDocFreq:function(b){return null==b?c.mlt_field[a].max_doc_freq:(c.mlt_field[a].max_doc_freq=b,this)},minWordLen:function(b){return null==b?c.mlt_field[a].min_word_len:(c.mlt_field[a].min_word_len=b,this)},maxWordLen:function(b){return null==b?c.mlt_field[a].max_word_len:(c.mlt_field[a].max_word_len=b,this)},analyzer:function(b){return null==b?c.mlt_field[a].analyzer:(c.mlt_field[a].analyzer=b,this)},boostTerms:function(b){return null==b?c.mlt_field[a].boost_terms:(c.mlt_field[a].boost_terms=b,this)},failOnUnsupportedField:function(b){return null==b?c.mlt_field[a].fail_on_unsupported_field:(c.mlt_field[a].fail_on_unsupported_field=b,this)},boost:function(b){return null==b?c.mlt_field[a].boost:(c.mlt_field[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MoreLikeThisQuery=function(a,b){var c={mlt:{like_text:b,fields:[]}};if(i(a))c.mlt.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");c.mlt.fields=a}return{fields:function(a){if(null==a)return c.mlt.fields;if(i(a))c.mlt.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");c.mlt.fields=a}return this},likeText:function(a){return null==a?c.mlt.like_text:(c.mlt.like_text=a,this)},percentTermsToMatch:function(a){return null==a?c.mlt.percent_terms_to_match:(c.mlt.percent_terms_to_match=a,this)},minTermFreq:function(a){return null==a?c.mlt.min_term_freq:(c.mlt.min_term_freq=a,this)},maxQueryTerms:function(a){return null==a?c.mlt.max_query_terms:(c.mlt.max_query_terms=a,this)},stopWords:function(a){return null==a?c.mlt.stop_words:(c.mlt.stop_words=a,this)},minDocFreq:function(a){return null==a?c.mlt.min_doc_freq:(c.mlt.min_doc_freq=a,this)},maxDocFreq:function(a){return null==a?c.mlt.max_doc_freq:(c.mlt.max_doc_freq=a,this)},minWordLen:function(a){return null==a?c.mlt.min_word_len:(c.mlt.min_word_len=a,this)},maxWordLen:function(a){return null==a?c.mlt.max_word_len:(c.mlt.max_word_len=a,this)},analyzer:function(a){return null==a?c.mlt.analyzer:(c.mlt.analyzer=a,this)},boostTerms:function(a){return null==a?c.mlt.boost_terms:(c.mlt.boost_terms=a,this)},failOnUnsupportedField:function(a){return null==a?c.mlt.fail_on_unsupported_field:(c.mlt.fail_on_unsupported_field=a,this)},boost:function(a){return null==a?c.mlt.boost:(c.mlt.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.MultiMatchQuery=function(a,b){var c={multi_match:{query:b,fields:[]}};if(i(a))c.multi_match.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");c.multi_match.fields=a}return{fields:function(a){if(null==a)return c.multi_match.fields;if(i(a))c.multi_match.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");c.multi_match.fields=a}return this},useDisMax:function(a){return null==a?c.multi_match.use_dis_max:(c.multi_match.use_dis_max=a,this)},tieBreaker:function(a){return null==a?c.multi_match.tie_breaker:(c.multi_match.tie_breaker=a,this)},cutoffFrequency:function(a){return null==a?c.multi_match.cutoff_frequency:(c.multi_match.cutoff_frequency=a,this)},minimumShouldMatch:function(a){return null==a?c.multi_match.minimum_should_match:(c.multi_match.minimum_should_match=a,this)},rewrite:function(a){return null==a?c.multi_match.rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(c.multi_match.rewrite=a),this)},fuzzyRewrite:function(a){return null==a?c.multi_match.fuzzy_rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(c.multi_match.fuzzy_rewrite=a),this)},lenient:function(a){return null==a?c.multi_match.lenient:(c.multi_match.lenient=a,this)},boost:function(a){return null==a?c.multi_match.boost:(c.multi_match.boost=a,this)},query:function(a){return null==a?c.multi_match.query:(c.multi_match.query=a,this)},type:function(a){return null==a?c.multi_match.type:(a=a.toLowerCase(),("boolean"===a||"phrase"===a||"phrase_prefix"===a)&&(c.multi_match.type=a),this)},fuzziness:function(a){return null==a?c.multi_match.fuzziness:(c.multi_match.fuzziness=a,this)},prefixLength:function(a){return null==a?c.multi_match.prefix_length:(c.multi_match.prefix_length=a,this)},maxExpansions:function(a){return null==a?c.multi_match.max_expansions:(c.multi_match.max_expansions=a,this)},operator:function(a){return null==a?c.multi_match.operator:(a=a.toLowerCase(),("and"===a||"or"===a)&&(c.multi_match.operator=a),this)},slop:function(a){return null==a?c.multi_match.slop:(c.multi_match.slop=a,this)},analyzer:function(a){return null==a?c.multi_match.analyzer:(c.multi_match.analyzer=a,this)},zeroTermsQuery:function(a){return null==a?c.multi_match.zero_terms_query:(a=a.toLowerCase(),("all"===a||"none"===a)&&(c.multi_match.zero_terms_query=a),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.NestedQuery=function(a){var b={nested:{path:a}};return{path:function(a){return null==a?b.nested.path:(b.nested.path=a,this)},query:function(a){if(null==a)return b.nested.query;if(!m(a))throw new TypeError("Argument must be a Query");return b.nested.query=a._self(),this},filter:function(a){if(null==a)return b.nested.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return b.nested.filter=a._self(),this},scoreMode:function(a){return null==a?b.nested.score_mode:(a=a.toLowerCase(),("avg"===a||"total"===a||"max"===a||"none"===a||"sum"===a)&&(b.nested.score_mode=a),this)},scope:function(){return this},boost:function(a){return null==a?b.nested.boost:(b.nested.boost=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.PrefixQuery=function(a,b){var c={prefix:{}};return c.prefix[a]={value:b},{field:function(b){var d=c.prefix[a];return null==b?a:(delete c.prefix[a],a=b,c.prefix[b]=d,this)},value:function(b){return null==b?c.prefix[a].value:(c.prefix[a].value=b,this)},rewrite:function(b){return null==b?c.prefix[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.prefix[a].rewrite=b),this)},boost:function(b){return null==b?c.prefix[a].boost:(c.prefix[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.QueryStringQuery=function(a){var b={query_string:{}};return b.query_string.query=a,{query:function(a){return null==a?b.query_string.query:(b.query_string.query=a,this)},defaultField:function(a){return null==a?b.query_string.default_field:(b.query_string.default_field=a,this)},fields:function(a){if(null==b.query_string.fields&&(b.query_string.fields=[]),null==a)return b.query_string.fields;if(i(a))b.query_string.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be a string or array");b.query_string.fields=a}return this},useDisMax:function(a){return null==a?b.query_string.use_dis_max:(b.query_string.use_dis_max=a,this)},defaultOperator:function(a){return null==a?b.query_string.default_operator:(a=a.toUpperCase(),("AND"===a||"OR"===a)&&(b.query_string.default_operator=a),this)},analyzer:function(a){return null==a?b.query_string.analyzer:(b.query_string.analyzer=a,this)},quoteAnalyzer:function(a){return null==a?b.query_string.quote_analyzer:(b.query_string.quote_analyzer=a,this)},allowLeadingWildcard:function(a){return null==a?b.query_string.allow_leading_wildcard:(b.query_string.allow_leading_wildcard=a,this)},lowercaseExpandedTerms:function(a){return null==a?b.query_string.lowercase_expanded_terms:(b.query_string.lowercase_expanded_terms=a,this)},enablePositionIncrements:function(a){return null==a?b.query_string.enable_position_increments:(b.query_string.enable_position_increments=a,this)},fuzzyPrefixLength:function(a){return null==a?b.query_string.fuzzy_prefix_length:(b.query_string.fuzzy_prefix_length=a,this)},fuzzyMinSim:function(a){return null==a?b.query_string.fuzzy_min_sim:(b.query_string.fuzzy_min_sim=a,this)},phraseSlop:function(a){return null==a?b.query_string.phrase_slop:(b.query_string.phrase_slop=a,this)},boost:function(a){return null==a?b.query_string.boost:(b.query_string.boost=a,this)},analyzeWildcard:function(a){return null==a?b.query_string.analyze_wildcard:(b.query_string.analyze_wildcard=a,this)},autoGeneratePhraseQueries:function(a){return null==a?b.query_string.auto_generate_phrase_queries:(b.query_string.auto_generate_phrase_queries=a,this)},minimumShouldMatch:function(a){return null==a?b.query_string.minimum_should_match:(b.query_string.minimum_should_match=a,this)},tieBreaker:function(a){return null==a?b.query_string.tie_breaker:(b.query_string.tie_breaker=a,this)},escape:function(a){return null==a?b.query_string.escape:(b.query_string.escape=a,this)},fuzzyMaxExpansions:function(a){return null==a?b.query_string.fuzzy_max_expansions:(b.query_string.fuzzy_max_expansions=a,this)},fuzzyRewrite:function(a){return null==a?b.query_string.fuzzy_rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(b.query_string.fuzzy_rewrite=a),this)},rewrite:function(a){return null==a?b.query_string.rewrite:(a=a.toLowerCase(),("constant_score_auto"===a||"scoring_boolean"===a||"constant_score_boolean"===a||"constant_score_filter"===a||0===a.indexOf("top_terms_boost_")||0===a.indexOf("top_terms_"))&&(b.query_string.rewrite=a),this)},quoteFieldSuffix:function(a){return null==a?b.query_string.quote_field_suffix:(b.query_string.quote_field_suffix=a,this)},lenient:function(a){return null==a?b.query_string.lenient:(b.query_string.lenient=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.RangeQuery=function(a){var b={range:{}};return b.range[a]={},{field:function(c){var d=b.range[a];return null==c?a:(delete b.range[a],a=c,b.range[c]=d,this)},from:function(c){return null==c?b.range[a].from:(b.range[a].from=c,this)},to:function(c){return null==c?b.range[a].to:(b.range[a].to=c,this)},includeLower:function(c){return null==c?b.range[a].include_lower:(b.range[a].include_lower=c,this)},includeUpper:function(c){return null==c?b.range[a].include_upper:(b.range[a].include_upper=c,this)},gt:function(c){return null==c?b.range[a].gt:(b.range[a].gt=c,this)},gte:function(c){return null==c?b.range[a].gte:(b.range[a].gte=c,this)},lt:function(c){return null==c?b.range[a].lt:(b.range[a].lt=c,this)},lte:function(c){return null==c?b.range[a].lte:(b.range[a].lte=c,this)},boost:function(c){return null==c?b.range[a].boost:(b.range[a].boost=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.RegexpQuery=function(a,b){var c={regexp:{}};return c.regexp[a]={value:b},{field:function(b){var d=c.regexp[a];return null==b?a:(delete c.regexp[a],a=b,c.regexp[b]=d,this)},value:function(b){return null==b?c.regexp[a].value:(c.regexp[a].value=b,this)},flags:function(b){return null==b?c.regexp[a].flags:(c.regexp[a].flags=b,this)},flagsValue:function(b){return null==b?c.regexp[a].flags_value:(c.regexp[a].flags_value=b,this)},rewrite:function(b){return null==b?c.regexp[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.regexp[a].rewrite=b),this)},boost:function(b){return null==b?c.regexp[a].boost:(c.regexp[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.SpanFirstQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a SpanQuery");var c={span_first:{match:a._self(),end:b}};return{match:function(a){if(null==a)return c.span_first.match;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.span_first.match=a._self(),this},end:function(a){return null==a?c.span_first.end:(c.span_first.end=a,this)},boost:function(a){return null==a?c.span_first.boost:(c.span_first.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.SpanMultiTermQuery=function(a){if(null!=a&&!m(a))throw new TypeError("Argument must be a MultiTermQuery");var b={span_multi:{match:{}}};return null!=a&&(b.span_multi.match=a._self()),{match:function(a){if(null==a)return b.span_multi.match;if(!m(a))throw new TypeError("Argument must be a MultiTermQuery");return b.span_multi.match=a._self(),this},toString:function(){return JSON.stringify(b)},_type:function(){return"query"},_self:function(){return b}}},E.SpanNearQuery=function(a,b){var c,d,e={span_near:{clauses:[],slop:b}};if(m(a))e.span_near.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(c=0,d=a.length;d>c;c++){if(!m(a[c]))throw new TypeError("Argument must be array of SpanQueries");e.span_near.clauses.push(a[c]._self())}}return{clauses:function(a){var b,c;if(null==a)return e.span_near.clauses;if(m(a))e.span_near.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(e.span_near.clauses=[],b=0,c=a.length;c>b;b++){if(!m(a[b]))throw new TypeError("Argument must be array of SpanQueries");e.span_near.clauses.push(a[b]._self())}}return this},slop:function(a){return null==a?e.span_near.slop:(e.span_near.slop=a,this)},inOrder:function(a){return null==a?e.span_near.in_order:(e.span_near.in_order=a,this)},collectPayloads:function(a){return null==a?e.span_near.collect_payloads:(e.span_near.collect_payloads=a,this)},boost:function(a){return null==a?e.span_near.boost:(e.span_near.boost=a,this)},toString:function(){return JSON.stringify(e)},_type:function(){return"query"},_self:function(){return e}}},E.SpanNotQuery=function(a,b){if(!m(a)||!m(b))throw new TypeError("Argument must be a SpanQuery");var c={span_not:{include:a._self(),exclude:b._self()}};return{include:function(a){if(null==a)return c.span_not.include;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.span_not.include=a._self(),this},exclude:function(a){if(null==a)return c.span_not.exclude;if(!m(a))throw new TypeError("Argument must be a SpanQuery");return c.span_not.exclude=a._self(),this},boost:function(a){return null==a?c.span_not.boost:(c.span_not.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.SpanOrQuery=function(a){var b,c,d={span_or:{clauses:[]}};if(m(a))d.span_or.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(b=0,c=a.length;c>b;b++){if(!m(a[b]))throw new TypeError("Argument must be array of SpanQueries");d.span_or.clauses.push(a[b]._self())}}return{clauses:function(a){var b,c;if(null==a)return d.span_or.clauses;if(m(a))d.span_or.clauses.push(a._self());else{if(!g(a))throw new TypeError("Argument must be SpanQuery or array of SpanQueries");for(d.span_or.clauses=[],b=0,c=a.length;c>b;b++){if(!m(a[b]))throw new TypeError("Argument must be array of SpanQueries");d.span_or.clauses.push(a[b]._self())}}return this},boost:function(a){return null==a?d.span_or.boost:(d.span_or.boost=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"query"},_self:function(){return d}}},E.SpanTermQuery=function(a,b){var c={span_term:{}};return c.span_term[a]={term:b},{field:function(b){var d=c.span_term[a];return null==b?a:(delete c.span_term[a],a=b,c.span_term[b]=d,this)},term:function(b){return null==b?c.span_term[a].term:(c.span_term[a].term=b,this)},boost:function(b){return null==b?c.span_term[a].boost:(c.span_term[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.TermQuery=function(a,b){var c={term:{}};return c.term[a]={term:b},{field:function(b){var d=c.term[a];return null==b?a:(delete c.term[a],a=b,c.term[b]=d,this)},term:function(b){return null==b?c.term[a].term:(c.term[a].term=b,this)},boost:function(b){return null==b?c.term[a].boost:(c.term[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.TermsQuery=function(a,b){var c={terms:{}};if(i(b))c.terms[a]=[b];else{if(!g(b))throw new TypeError("Argument must be string or array");c.terms[a]=b}return{field:function(b){var d=c.terms[a];return null==b?a:(delete c.terms[a],a=b,c.terms[b]=d,this)},terms:function(b){if(null==b)return c.terms[a];if(i(b))c.terms[a].push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");c.terms[a]=b}return this},minimumShouldMatch:function(a){return null==a?c.terms.minimum_should_match:(c.terms.minimum_should_match=a,this)},disableCoord:function(a){return null==a?c.terms.disable_coord:(c.terms.disable_coord=a,this)},boost:function(a){return null==a?c.terms.boost:(c.terms.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.TopChildrenQuery=function(a,b){if(!m(a))throw new TypeError("Argument must be a Query");var c={top_children:{query:a._self(),type:b}};return{query:function(a){if(null==a)return c.top_children.query;if(!m(a))throw new TypeError("Argument must be a Query");return c.top_children.query=a._self(),this},type:function(a){return null==a?c.top_children.type:(c.top_children.type=a,this)},scope:function(){return this},score:function(a){return null==a?c.top_children.score:(a=a.toLowerCase(),("max"===a||"sum"===a||"avg"===a||"total"===a)&&(c.top_children.score=a),this)},scoreMode:function(a){return null==a?c.top_children.score_mode:(a=a.toLowerCase(),("max"===a||"sum"===a||"avg"===a||"total"===a)&&(c.top_children.score_mode=a),this)},factor:function(a){return null==a?c.top_children.factor:(c.top_children.factor=a,this)},incrementalFactor:function(a){return null==a?c.top_children.incremental_factor:(c.top_children.incremental_factor=a,this)},boost:function(a){return null==a?c.top_children.boost:(c.top_children.boost=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.WildcardQuery=function(a,b){var c={wildcard:{}};return c.wildcard[a]={value:b},{field:function(b){var d=c.wildcard[a];return null==b?a:(delete c.wildcard[a],a=b,c.wildcard[b]=d,this)},value:function(b){return null==b?c.wildcard[a].value:(c.wildcard[a].value=b,this)},rewrite:function(b){return null==b?c.wildcard[a].rewrite:(b=b.toLowerCase(),("constant_score_auto"===b||"scoring_boolean"===b||"constant_score_boolean"===b||"constant_score_filter"===b||0===b.indexOf("top_terms_boost_")||0===b.indexOf("top_terms_"))&&(c.wildcard[a].rewrite=b),this)},boost:function(b){return null==b?c.wildcard[a].boost:(c.wildcard[a].boost=b,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"query"},_self:function(){return c}}},E.ClusterHealth=function(){var a={},b=["indices"];return{indices:function(b){if(null==a.indices&&(a.indices=[]),null==b)return a.indices;if(i(b))a.indices.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.indices=b}return this},local:function(b){return null==b?a.local:(a.local=b,this)},masterTimeout:function(b){return null==b?a.master_timeout:(a.master_timeout=b,this)},timeout:function(b){return null==b?a.timeout:(a.timeout=b,this)},waitForStatus:function(b){return null==b?a.wait_for_status:(b=b.toLowerCase(),("green"===b||"yellow"===b||"red"===b)&&(a.wait_for_status=b),this)},waitForRelocatingShards:function(b){return null==b?a.wait_for_relocating_shards:(a.wait_for_relocating_shards=b,this)},waitForActiveShards:function(b){return null==b?a.wait_for_active_shards:(a.wait_for_active_shards=b,this)},waitForNodes:function(b){return null==b?a.wait_for_nodes:(a.wait_for_nodes=b,this)},level:function(b){return null==b?a.level:(b=b.toLowerCase(),("cluster"===b||"indices"===b||"shards"===b)&&(a.level=b),this)},toString:function(){return JSON.stringify(a)},_type:function(){return"cluster health"},_self:function(){return a},doHealth:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_cluster/health";return a.indices&&a.indices.length>0&&(f=f+"/"+a.indices.join()),E.client.get(f,e(a,b),c,d)}}},E.ClusterState=function(){var a={},b=[];return{local:function(b){return null==b?a.local:(a.local=b,this)},masterTimeout:function(b){return null==b?a.master_timeout:(a.master_timeout=b,this)},filterNodes:function(b){return null==b?a.filter_nodes:(a.filter_nodes=b,this)},filterRoutingTable:function(b){return null==b?a.filter_routing_table:(a.filter_routing_table=b,this)},filterMetadata:function(b){return null==b?a.filter_metadata:(a.filter_metadata=b,this)},filterBlocks:function(b){return null==b?a.filter_blocks:(a.filter_blocks=b,this)},filterIndices:function(b){if(null==a.filter_indices&&(a.filter_indices=[]),null==b)return a.filter_indices;if(i(b))a.filter_indices.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.filter_indices=b}return this},filterIndexTemplates:function(b){if(null==a.filter_index_templates&&(a.filter_index_templates=[]),null==b)return a.filter_index_templates;if(i(b))a.filter_index_templates.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.filter_index_templates=b}return this},toString:function(){return JSON.stringify(a)},_type:function(){return"cluster state"},_self:function(){return a},doState:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_cluster/state";return E.client.get(f,e(a,b),c,d)}}},E.NodeInfo=function(){var a={},b=["nodes"];return{nodes:function(b){if(null==a.nodes&&(a.nodes=[]),null==b)return a.nodes;if(i(b))a.nodes.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.nodes=b}return this},clear:function(b){return null==b?a.clear:(a.clear=b,this)},all:function(b){return null==b?a.all:(a.all=b,this)},settings:function(b){return null==b?a.settings:(a.settings=b,this)},os:function(b){return null==b?a.os:(a.os=b,this)},process:function(b){return null==b?a.process:(a.process=b,this)},jvm:function(b){return null==b?a.jvm:(a.jvm=b,this)},threadPool:function(b){return null==b?a.thread_pool:(a.thread_pool=b,this)},network:function(b){return null==b?a.network:(a.network=b,this)},transport:function(b){return null==b?a.transport:(a.transport=b,this)},http:function(b){return null==b?a.http:(a.http=b,this)},plugin:function(b){return null==b?a.plugin:(a.plugin=b,this)},timeout:function(b){return null==b?a.timeout:(a.timeout=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"node info"},_self:function(){return a},doInfo:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_nodes";return a.nodes&&a.nodes.length>0&&(f=f+"/"+a.nodes.join()),E.client.get(f,e(a,b),c,d)}}},E.NodeStats=function(){var a={},b=["nodes"];return{nodes:function(b){if(null==a.nodes&&(a.nodes=[]),null==b)return a.nodes;if(i(b))a.nodes.push(b);else{if(!g(b))throw new TypeError("Argument must be string or array");a.nodes=b}return this},clear:function(b){return null==b?a.clear:(a.clear=b,this)},all:function(b){return null==b?a.all:(a.all=b,this)},indices:function(b){return null==b?a.indices:(a.indices=b,this)},os:function(b){return null==b?a.os:(a.os=b,this)},process:function(b){return null==b?a.process:(a.process=b,this)},jvm:function(b){return null==b?a.jvm:(a.jvm=b,this)},threadPool:function(b){return null==b?a.thread_pool:(a.thread_pool=b,this)},network:function(b){return null==b?a.network:(a.network=b,this)},fs:function(b){return null==b?a.fs:(a.fs=b,this)},transport:function(b){return null==b?a.transport:(a.transport=b,this)},http:function(b){return null==b?a.http:(a.http=b,this)},toString:function(){return JSON.stringify(a)},_type:function(){return"node stats"},_self:function(){return a},doStats:function(c,d){if(null==E.client)throw new Error("No Client Set");var f="/_nodes";return a.nodes&&a.nodes.length>0&&(f=f+"/"+a.nodes.join()),f+="/stats",E.client.get(f,e(a,b),c,d)}}},E.GeoPoint=function(b){var c=[0,0];return null!=b&&g(b)&&2===b.length&&(c=[b[1],b[0]]),{properties:function(b){return null==b?c:(h(b)&&a(b,"lat")&&a(b,"lon")?c={lat:b.lat,lon:b.lon}:h(b)&&a(b,"geohash")&&(c={geohash:b.geohash}),this)},string:function(a){return null==a?c:(i(a)&&-1!==a.indexOf(",")&&(c=a),this)},geohash:function(a,b){return b=null!=b&&j(b)?b:12,null==a?c:(i(a)&&a.length===b&&(c=a),this)},array:function(a){return null==a?c:(g(a)&&2===a.length&&(c=[a[1],a[0]]),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"geo point"},_self:function(){return c}}},E.Highlight=function(c){var d={fields:{}},e=function(b,c,e){null==b?d[c]=e:(a(d.fields,b)||(d.fields[b]={}),d.fields[b][c]=e)};return null!=c&&(i(c)?d.fields[c]={}:g(c)&&b(c,function(a){d.fields[a]={}})),{fields:function(c){return null==c?d.fields:void(i(c)?a(d.fields,c)||(d.fields[c]={}):g(c)&&b(c,function(b){a(d.fields,b)||(d.fields[b]={})}))},preTags:function(a,b){return null===a&&null!=b?d.fields[b].pre_tags:null==a?d.pre_tags:(i(a)?e(b,"pre_tags",[a]):g(a)&&e(b,"pre_tags",a),this)},postTags:function(a,b){return null===a&&null!=b?d.fields[b].post_tags:null==a?d.post_tags:(i(a)?e(b,"post_tags",[a]):g(a)&&e(b,"post_tags",a),this)},order:function(a,b){return null===a&&null!=b?d.fields[b].order:null==a?d.order:(a=a.toLowerCase(),"score"===a&&e(b,"order",a),this)},tagsSchema:function(a){return null==a?d.tags_schema:(a=a.toLowerCase(),"styled"===a&&(d.tags_schema=a),this)},highlightFilter:function(a,b){return null===a&&null!=b?d.fields[b].highlight_filter:null==a?d.highlight_filter:(e(b,"highlight_filter",a),this)},fragmentSize:function(a,b){return null===a&&null!=b?d.fields[b].fragment_size:null==a?d.fragment_size:(e(b,"fragment_size",a),this)},numberOfFragments:function(a,b){return null===a&&null!=b?d.fields[b].number_of_fragments:null==a?d.number_of_fragments:(e(b,"number_of_fragments",a),this)},encoder:function(a){return null==a?d.encoder:(a=a.toLowerCase(),("default"===a||"html"===a)&&(d.encoder=a),this)},requireFieldMatch:function(a,b){return null===a&&null!=b?d.fields[b].require_field_match:null==a?d.require_field_match:(e(b,"require_field_match",a),this)},boundaryMaxScan:function(a,b){return null===a&&null!=b?d.fields[b].boundary_max_scan:null==a?d.boundary_max_scan:(e(b,"boundary_max_scan",a),this)},boundaryChars:function(a,b){return null===a&&null!=b?d.fields[b].boundary_chars:null==a?d.boundary_chars:(e(b,"boundary_chars",a),this)},type:function(a,b){return null===a&&null!=b?d.fields[b].type:null==a?d.type:(a=a.toLowerCase(),("fast-vector-highlighter"===a||"highlighter"===a)&&e(b,"type",a),this)},fragmenter:function(a,b){return null===a&&null!=b?d.fields[b].fragmenter:null==a?d.fragmenter:(a=a.toLowerCase(),("simple"===a||"span"===a)&&e(b,"fragmenter",a),this)},options:function(a,b){if(null===a&&null!=b)return d.fields[b].options;if(null==a)return d.options;if(!h(a)||g(a)||l(a))throw new TypeError("Parameter must be an object");return e(b,"options",a),this},toString:function(){return JSON.stringify(d)},_type:function(){return"highlight"},_self:function(){return d}}},E.IndexedShape=function(a,b){var c={type:a,id:b};return{type:function(a){return null==a?c.type:(c.type=a,this)},id:function(a){return null==a?c.id:(c.id=a,this)},index:function(a){return null==a?c.index:(c.index=a,this)},shapeFieldName:function(a){return null==a?c.shape_field_name:(c.shape_field_name=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"indexed shape"},_self:function(){return c}}},E.MultiSearchRequest=function(b){var c,d,e,f={},h=function(){var b="",c=[];d.length>0&&(b=b+"/"+d.join()),e.length>0&&(b=b+"/"+e.join()),b+="/_msearch";for(var g in f)a(f,g)&&""!==f[g]&&c.push(g+"="+encodeURIComponent(f[g]));return c.length>0&&(b=b+"?"+c.join("&")),b};return c=[],b=b||{},d=null==b.indices?[]:i(b.indices)?[b.indices]:b.indices,e=null==b.types?[]:i(b.types)?[b.types]:b.types,0===d.length&&e.length>0&&(d=["_all"]),{requests:function(a){if(null==a)return c;if(C(a))c.push(a);else{if(!g(a))throw new TypeError("Argument must be request or array");c=a}return this},searchType:function(a){return null==a?f.search_type:(a=a.toLowerCase(),("dfs_query_then_fetch"===a||"dfs_query_and_fetch"===a||"query_then_fetch"===a||"query_and_fetch"===a||"scan"===a||"count"===a)&&(f.search_type=a),this)},indices:function(a){if(null==a)return d;if(i(a))d=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");d=a}return 0===d.length&&e.length>0&&(d=["_all"]),this},types:function(a){if(null==a)return e;if(i(a))e=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");e=a}return 0===d.length&&e.length>0&&(d=["_all"]),this},ignoreIndices:function(a){return null==a?f.ignore_indices:(a=a.toLowerCase(),("none"===a||"missing"===a)&&(f.ignore_indices=a),this)},toString:function(){var a,b,d=[];for(a=0,b=c.length;b>a;a++)d.push(c[a]._self());return JSON.stringify(d)},_type:function(){return"multi search request"},_self:function(){var a,b,d=[];for(a=0,b=c.length;b>a;a++)d.push(c[a]._self());return d},doSearch:function(a,b){var d,e,f,g,i,j="";if(null==E.client)throw new Error("No Client Set");for(d=0,e=c.length;e>d;d++)f=c[d],i={},f.indices().length>0&&(i.indices=f.indices()),f.types().length>0&&(i.types=f.types()),null!=f.searchType()&&(i.search_type=f.searchType()),null!=f.preference()&&(i.preference=f.preference()),null!=f.routing()&&(i.routing=f.routing()),null!=f.ignoreIndices()&&(i.ignore_indices=f.ignoreIndices()),j=j+JSON.stringify(i)+"\n",g=f._self(),null!=f.timeout()&&(g.timeout=f.timeout()),j=j+JSON.stringify(g)+"\n";return E.client.post(h(),j,a,b)}}},E.Request=function(b){var d,e,f,h={},j=function(b){var c="",d=[];e.length>0&&(c=c+"/"+e.join()),f.length>0&&(c=c+"/"+f.join()),b.length>0&&"/"!==b[0]&&(c+="/"),c+=b;for(var g in h)a(h,g)&&""!==h[g]&&d.push(g+"="+encodeURIComponent(h[g]));return d.length>0&&(c=c+"?"+d.join("&")),c};return d={},b=b||{},e=null==b.indices?[]:i(b.indices)?[b.indices]:b.indices,f=null==b.types?[]:i(b.types)?[b.types]:b.types,0===e.length&&f.length>0&&(e=["_all"]),null!=b.routing&&(h.routing=b.routing),{sort:function(){var b,c;if(a(d,"sort")||(d.sort=[]),0===arguments.length)return d.sort;if(1===arguments.length){var e=arguments[0];if(i(e))d.sort.push(e);else if(u(e))d.sort.push(e._self());else{if(!g(e))throw new TypeError("Argument must be string, Sort, or array");for(d.sort=[],b=0,c=e.length;c>b;b++)if(i(e[b]))d.sort.push(e[b]);else{if(!u(e[b]))throw new TypeError("Invalid object in array");d.sort.push(e[b]._self())}}}else if(2===arguments.length){var f=arguments[0],h=arguments[1];if(i(f)&&i(h)&&(h=h.toLowerCase(),"asc"===h||"desc"===h)){var j={};j[f]={order:h},d.sort.push(j)}}return this},trackScores:function(a){return null==a?d.track_scores:(d.track_scores=a,this)},size:function(a){return null==a?d.size:(d.size=a,this)},timeout:function(a){return null==a?h.timeout:(h.timeout=a,this)},routing:function(a){return null==a?h.routing:(h.routing=a,this)},replication:function(a){return null==a?h.replication:(a=a.toLowerCase(),("async"===a||"sync"===a||"default"===a)&&(h.replication=a),this)},consistency:function(a){return null==a?h.consistency:(a=a.toLowerCase(),("default"===a||"one"===a||"quorum"===a||"all"===a)&&(h.consistency=a),this)},searchType:function(a){return null==a?h.search_type:(a=a.toLowerCase(),("dfs_query_then_fetch"===a||"dfs_query_and_fetch"===a||"query_then_fetch"===a||"query_and_fetch"===a||"scan"===a||"count"===a)&&(h.search_type=a),this) -},fields:function(a){if(null==a)return d.fields;if(null==d.fields&&(d.fields=[]),i(a))d.fields.push(a);else{if(!g(a))throw new TypeError("Argument must be string or array");d.fields=a}return this},rescore:function(a){if(null==a)return d.rescore;if(!n(a))throw new TypeError("Argument must be a Rescore");return d.rescore=a._self(),this},from:function(a){return null==a?d.from:(d.from=a,this)},query:function(a){if(null==a)return d.query;if(!m(a))throw new TypeError("Argument must be a Query");return d.query=a._self(),this},indices:function(a){if(null==a)return e;if(i(a))e=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");e=a}return 0===e.length&&f.length>0&&(e=["_all"]),this},types:function(a){if(null==a)return f;if(i(a))f=[a];else{if(!g(a))throw new TypeError("Argument must be a string or array");f=a}return 0===e.length&&f.length>0&&(e=["_all"]),this},facet:function(a){if(null==a)return d.facets;if(null==d.facets&&(d.facets={}),!p(a))throw new TypeError("Argument must be a Facet");return c(d.facets,a._self()),this},filter:function(a){if(null==a)return d.filter;if(!o(a))throw new TypeError("Argument must be a Filter");return d.filter=a._self(),this},highlight:function(a){if(null==a)return d.highlight;if(!v(a))throw new TypeError("Argument must be a Highlight object");return d.highlight=a._self(),this},suggest:function(a){if(null==a)return d.suggest;if(null==d.suggest&&(d.suggest={}),i(a))d.suggest.text=a;else{if(!w(a))throw new TypeError("Argument must be a string or Suggest object");c(d.suggest,a._self())}return this},scriptField:function(a){if(null==a)return d.script_fields;if(null==d.script_fields&&(d.script_fields={}),!q(a))throw new TypeError("Argument must be a ScriptField");return c(d.script_fields,a._self()),this},preference:function(a){return null==a?h.preference:(h.preference=a,this)},local:function(a){return null==a?h.local:(h.local=a,this)},ignoreIndices:function(a){return null==a?h.ignore_indices:(a=a.toLowerCase(),("none"===a||"missing"===a)&&(h.ignore_indices=a),this)},indexBoost:function(a,b){return null==d.indices_boost&&(d.indices_boost={}),0===arguments.length?d.indices_boost:(d.indices_boost[a]=b,this)},explain:function(a){return null==a?d.explain:(d.explain=a,this)},version:function(a){return null==a?d.version:(d.version=a,this)},minScore:function(a){return null==a?d.min_score:(d.min_score=a,this)},toString:function(){return JSON.stringify(d)},_type:function(){return"request"},_self:function(){return d},doDeleteByQuery:function(a,b){var c=JSON.stringify(d.query);if(null==E.client)throw new Error("No Client Set");return E.client.del(j("_query"),c,a,b)},doCount:function(a,b){var c=JSON.stringify(d.query);if(null==E.client)throw new Error("No Client Set");return E.client.post(j("_count"),c,a,b)},doSearch:function(a,b){var c=JSON.stringify(d);if(null==E.client)throw new Error("No Client Set");return E.client.post(j("_search"),c,a,b)},doSearchShards:function(a,b){if(null==E.client)throw new Error("No Client Set");return E.client.post(j("_search_shards"),"",a,b)}}},E.Rescore=function(a,b){if(null!=a&&!j(a))throw new TypeError("Argument must be a Number");if(null!=b&&!m(b))throw new TypeError("Argument must be a Query");var c={query:{}};return null!=a&&(c.window_size=a),null!=b&&(c.query.rescore_query=b._self()),{rescoreQuery:function(a){if(null==a)return c.query.rescore_query;if(!m(a))throw new TypeError("Argument must be a Query");return c.query.rescore_query=a._self(),this},queryWeight:function(a){if(null==a)return c.query.query_weight;if(!j(a))throw new TypeError("Argument must be a Number");return c.query.query_weight=a,this},rescoreQueryWeight:function(a){if(null==a)return c.query.rescore_query_weight;if(!j(a))throw new TypeError("Argument must be a Number");return c.query.rescore_query_weight=a,this},windowSize:function(a){if(null==a)return c.window_size;if(!j(a))throw new TypeError("Argument must be a Number");return c.window_size=a,this},scoreMode:function(a){return null==a?c.query.score_mode:(a=a.toLowerCase(),("total"===a||"min"===a||"max"===a||"multiply"===a||"avg"===a)&&(c.query.score_mode=a),this)},toString:function(){return JSON.stringify(c)},_type:function(){return"rescore"},_self:function(){return c}}},E.ScriptField=function(a){var b={};return b[a]={},{lang:function(c){return null==c?b[a].lang:(b[a].lang=c,this)},script:function(c){return null==c?b[a].script:(b[a].script=c,this)},params:function(c){return null==c?b[a].params:(b[a].params=c,this)},ignoreFailure:function(c){return null==c?b[a].ignore_failure:(b[a].ignore_failure=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"script field"},_self:function(){return b}}},E.Shape=function(a,b){var c={},d=function(a){var b=!1;return("point"===a||"linestring"===a||"polygon"===a||"multipoint"===a||"envelope"===a||"multipolygon"===a||"circle"===a||"multilinestring"===a)&&(b=!0),b};return a=a.toLowerCase(),d(a)&&(c.type=a,c.coordinates=b),{type:function(a){return null==a?c.type:(a=a.toLowerCase(),d(a)&&(c.type=a),this)},coordinates:function(a){return null==a?c.coordinates:(c.coordinates=a,this)},radius:function(a){return null==a?c.radius:(c.radius=a,this)},toString:function(){return JSON.stringify(c)},_type:function(){return"shape"},_self:function(){return c}}},E.Sort=function(a){null==a&&(a="_score");var b={},c=a,d="_geo_distance",e="_script";return b[c]={},{field:function(d){var e=b[c];return null==d?a:(delete b[c],a=d,c=d,b[c]=e,this)},geoDistance:function(e){var f=b[c];if(null==e)return b[c][a];if(!r(e))throw new TypeError("Argument must be a GeoPoint");return delete b[c],c=d,b[c]=f,b[c][a]=e._self(),this},script:function(a){var d=b[c];return null==a?b[c].script:(delete b[c],c=e,b[c]=d,b[c].script=a,this)},order:function(a){return null==a?b[c].order:(a=a.toLowerCase(),("asc"===a||"desc"===a)&&(b[c].order=a),this)},asc:function(){return b[c].order="asc",this},desc:function(){return b[c].order="desc",this},reverse:function(a){return null==a?b[c].reverse:(b[c].reverse=a,this)},missing:function(a){return null==a?b[c].missing:(b[c].missing=a,this)},ignoreUnmapped:function(a){return null==a?b[c].ignore_unmapped:(b[c].ignore_unmapped=a,this)},unit:function(a){return null==a?b[c].unit:(a=a.toLowerCase(),("mi"===a||"km"===a)&&(b[c].unit=a),this)},normalize:function(a){return null==a?b[c].normalize:(b[c].normalize=a,this)},distanceType:function(a){return null==a?b[c].distance_type:(a=a.toLowerCase(),("arc"===a||"plane"===a)&&(b[c].distance_type=a),this)},params:function(a){return null==a?b[c].params:(b[c].params=a,this)},lang:function(a){return null==a?b[c].lang:(b[c].lang=a,this)},type:function(a){return null==a?b[c].type:(a=a.toLowerCase(),("string"===a||"number"===a)&&(b[c].type=a),this)},mode:function(a){return null==a?b[c].mode:(a=a.toLowerCase(),("min"===a||"max"===a||"sum"===a||"avg"===a)&&(b[c].mode=a),this)},nestedPath:function(a){return null==a?b[c].nested_path:(b[c].nested_path=a,this)},nestedFilter:function(a){if(null==a)return b[c].nested_filter;if(!o(a))throw new TypeError("Argument must be a Filter");return b[c].nested_filter=a._self(),this},toString:function(){return JSON.stringify(b)},_type:function(){return"sort"},_self:function(){return b}}},E.DirectGenerator=function(){var a=E.DirectSettingsMixin(),b=a._self();return c(a,{preFilter:function(a){return null==a?b.pre_filter:(b.pre_filter=a,this)},postFilter:function(a){return null==a?b.post_filter:(b.post_filter=a,this)},field:function(a){return null==a?b.field:(b.field=a,this)},size:function(a){return null==a?b.size:(b.size=a,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"generator"},_self:function(){return b}})},E.DirectSettingsMixin=function(){var a={};return{accuracy:function(b){return null==b?a.accuracy:(a.accuracy=b,this)},suggestMode:function(b){return null==b?a.suggest_mode:(b=b.toLowerCase(),("missing"===b||"popular"===b||"always"===b)&&(a.suggest_mode=b),this)},sort:function(b){return null==b?a.sort:(b=b.toLowerCase(),("score"===b||"frequency"===b)&&(a.sort=b),this)},stringDistance:function(b){return null==b?a.string_distance:(b=b.toLowerCase(),("internal"===b||"damerau_levenshtein"===b||"levenstein"===b||"jarowinkler"===b||"ngram"===b)&&(a.string_distance=b),this)},maxEdits:function(b){return null==b?a.max_edits:(a.max_edits=b,this)},maxInspections:function(b){return null==b?a.max_inspections:(a.max_inspections=b,this)},maxTermFreq:function(b){return null==b?a.max_term_freq:(a.max_term_freq=b,this)},prefixLen:function(b){return null==b?a.prefix_len:(a.prefix_len=b,this)},minWordLen:function(b){return null==b?a.min_word_len:(a.min_word_len=b,this)},minDocFreq:function(b){return null==b?a.min_doc_freq:(a.min_doc_freq=b,this)},_self:function(){return a}}},E.PhraseSuggester=function(a){var b={};return b[a]={phrase:{}},{text:function(c){return null==c?b[a].text:(b[a].text=c,this)},analyzer:function(c){return null==c?b[a].phrase.analyzer:(b[a].phrase.analyzer=c,this)},field:function(c){return null==c?b[a].phrase.field:(b[a].phrase.field=c,this)},size:function(c){return null==c?b[a].phrase.size:(b[a].phrase.size=c,this)},shardSize:function(c){return null==c?b[a].phrase.shard_size:(b[a].phrase.shard_size=c,this)},realWorldErrorLikelihood:function(c){return null==c?b[a].phrase.real_world_error_likelihood:(b[a].phrase.real_world_error_likelihood=c,this)},confidence:function(c){return null==c?b[a].phrase.confidence:(b[a].phrase.confidence=c,this)},separator:function(c){return null==c?b[a].phrase.separator:(b[a].phrase.separator=c,this)},maxErrors:function(c){return null==c?b[a].phrase.max_errors:(b[a].phrase.max_errors=c,this)},gramSize:function(c){return null==c?b[a].phrase.gram_size:(b[a].phrase.gram_size=c,this)},forceUnigrams:function(c){return null==c?b[a].phrase.force_unigrams:(b[a].phrase.force_unigrams=c,this)},tokenLimit:function(c){return null==c?b[a].phrase.token_limit:(b[a].phrase.token_limit=c,this)},linearSmoothing:function(c,d,e){return 0===arguments.length?b[a].phrase.smoothing:(b[a].phrase.smoothing={linear:{trigram_lambda:c,bigram_lambda:d,unigram_lambda:e}},this)},laplaceSmoothing:function(c){return null==c?b[a].phrase.smoothing:(b[a].phrase.smoothing={laplace:{alpha:c}},this)},stupidBackoffSmoothing:function(c){return null==c?b[a].phrase.smoothing:(b[a].phrase.smoothing={stupid_backoff:{discount:c}},this)},highlight:function(c,d){return 0===arguments.length?b[a].phrase.highlight:(b[a].phrase.highlight={pre_tag:c,post_tag:d},this)},directGenerator:function(c){var d,e;if(null==b[a].phrase.direct_generator&&(b[a].phrase.direct_generator=[]),null==c)return b[a].phrase.direct_generator;if(x(c))b[a].phrase.direct_generator.push(c._self());else{if(!g(c))throw new TypeError("Argument must be a Generator or array of Generators");for(b[a].phrase.direct_generator=[],d=0,e=c.length;e>d;d++){if(!x(c[d]))throw new TypeError("Argument must be an array of Generators");b[a].phrase.direct_generator.push(c[d]._self())}}return this},toString:function(){return JSON.stringify(b)},_type:function(){return"suggest"},_self:function(){return b}}},E.TermSuggester=function(a){var b={},d=E.DirectSettingsMixin();return b[a]={term:d._self()},c(d,{text:function(c){return null==c?b[a].text:(b[a].text=c,this)},analyzer:function(c){return null==c?b[a].term.analyzer:(b[a].term.analyzer=c,this)},field:function(c){return null==c?b[a].term.field:(b[a].term.field=c,this)},size:function(c){return null==c?b[a].term.size:(b[a].term.size=c,this)},shardSize:function(c){return null==c?b[a].term.shard_size:(b[a].term.shard_size=c,this)},toString:function(){return JSON.stringify(b)},_type:function(){return"suggest"},_self:function(){return b}})},E.noConflict=function(){return F.ejs=G,this}}.call(this),define("../vendor/elasticjs/elastic",function(){}),angular.module("elasticjs.service",[]).factory("ejsResource",["$http",function(a){return function(b,c){var d=window.ejs||{},e=function(a,b,c){return a.then(function(a){return(b||angular.noop)(a.data),a.data},function(a){return(c||angular.noop)(a.data),a.data})};return b!==Object(b)&&(b={server:b}),null==b.server&&(b.server=""),(c||b.basicAuth)&&(b.headers=angular.extend(b.headers||{},{Authorization:"Basic "+(c||b.basicAuth)})),d.client={server:function(a){return null==a?b.server:(b.server=a,this)},post:function(c,d,f,g){c=b.server+c;var h={url:c,data:d,method:"POST"};return e(a(angular.extend(h,b)),f,g)},get:function(c,d,f,g){c=b.server+c;var h={url:c,params:d,method:"GET"};return e(a(angular.extend(h,b)),f,g)},put:function(c,d,f,g){c=b.server+c;var h={url:c,data:d,method:"PUT"};return e(a(angular.extend(h,b)),f,g)},del:function(c,d,f,g){c=b.server+c;var h={url:c,data:d,method:"DELETE"};return e(a(angular.extend(h,b)),f,g)},head:function(c,d,e,f){c=b.server+c;var g={url:c,params:d,method:"HEAD"};return a(angular.extend(g,b)).then(function(a){return(e||angular.noop)(a.headers()),a.headers()},function(){return void(f||angular.noop)(void 0)})}},d}}]),define("elasticjs",function(){}),!function(a){a(function(){a.support.transition=function(){var a=function(){var a,b=document.createElement("bootstrap"),c={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(a in c)if(void 0!==b.style[a])return c[a]}();return a&&{end:a}}()})}(window.jQuery),!function(a){var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){d.trigger("closed").remove()}var d,e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,"")),d=a(f),b&&b.preventDefault(),d.length||(d=e.hasClass("alert")?e:e.parent()),d.trigger(b=a.Event("close")),b.isDefaultPrevented()||(d.removeClass("in"),a.support.transition&&d.hasClass("fade")?d.on(a.support.transition.end,c):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.alert.data-api",b,c.prototype.close)}(window.jQuery),!function(a){var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f="object"==typeof c&&c;e||d.data("button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle")})}(window.jQuery),!function(a){var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},getActiveIndex:function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},to:function(b){var c=this.getActiveIndex(),d=this;if(!(b>this.$items.length-1||0>b))return this.sliding?this.$element.one("slid",function(){d.to(b)}):c==b?this.pause().cycle():this.slide(b>c?"next":"prev",a(this.$items[b]))},pause:function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),clearInterval(this.interval),this.interval=null,this},next:function(){return this.sliding?void 0:this.slide("next")},prev:function(){return this.sliding?void 0:this.slide("prev")},slide:function(b,c){var d,e=this.$element.find(".item.active"),f=c||e[b](),g=this.interval,h="next"==b?"left":"right",i="next"==b?"first":"last",j=this;if(this.sliding=!0,g&&this.pause(),f=f.length?f:this.$element.find(".item")[i](),d=a.Event("slide",{relatedTarget:f[0],direction:h}),!f.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function(){var b=a(j.$indicators.children()[j.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(d),d.isDefaultPrevented())return;f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),this.$element.one(a.support.transition.end,function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),j.sliding=!1,setTimeout(function(){j.$element.trigger("slid")},0)})}else{if(this.$element.trigger(d),d.isDefaultPrevented())return;e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return g&&this.cycle(),this}}};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=a.extend({},a.fn.carousel.defaults,"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.defaults={interval:5e3,pause:"hover"},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d,e=a(this),f=a(e.attr("data-target")||(c=e.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),g=a.extend({},f.data(),e.data());f.carousel(g),(d=e.attr("data-slide-to"))&&f.data("carousel").pause().to(d).cycle(),b.preventDefault()})}(window.jQuery),!function(a){var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b,c,d,e;if(!this.transitioning&&!this.$element.hasClass("in")){if(b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find("> .accordion-group > .in"),d&&d.length){if(e=d.data("collapse"),e&&e.transitioning)return;d.collapse("hide"),e||d.data("collapse",null)}this.$element[b](0),this.transition("addClass",a.Event("show"),"shown"),a.support.transition&&this.$element[b](this.$element[0][c])}},hide:function(){var b;!this.transitioning&&this.$element.hasClass("in")&&(b=this.dimension(),this.reset(this.$element[b]()),this.transition("removeClass",a.Event("hide"),"hidden"),this.$element[b](0))},reset:function(a){var b=this.dimension();return this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element[null!==a?"addClass":"removeClass"]("collapse"),this},transition:function(b,c,d){var e=this,f=function(){"show"==c.type&&e.reset(),e.transitioning=0,e.$element.trigger(d)};this.$element.trigger(c),c.isDefaultPrevented()||(this.transitioning=1,this.$element[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f())},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=a.extend({},a.fn.collapse.defaults,d.data(),"object"==typeof c&&c);e||d.data("collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":d.data();d[a(e).hasClass("in")?"addClass":"removeClass"]("collapsed"),a(e).collapse(f)})}(window.jQuery),!function(a){function b(){a(".dropdown-backdrop").remove(),a(d).each(function(){c(a(this)).removeClass("open")})}function c(b){var c,d=b.attr("data-target");return d||(d=b.attr("href"),d=d&&/#/.test(d)&&d.replace(/.*(?=#[^\s]*$)/,"")),c=d&&a(d),c&&c.length||(c=b.parent()),c}var d="[data-toggle=dropdown]",e=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};e.prototype={constructor:e,toggle:function(){var d,e,f=a(this);if(!f.is(".disabled, :disabled"))return d=c(f),e=d.hasClass("open"),b(),e||("ontouchstart"in document.documentElement&&a('
    '+(this.showSeconds?'':"")+(this.showMeridian?'':"")+" "+(this.showSeconds?'":"")+(this.showMeridian?'":"")+''+(this.showSeconds?'':"")+(this.showMeridian?'':"")+"
       
    "+b+' :'+c+":'+d+" '+e+"
      
    ",this.template){case"modal":a='';break;case"dropdown":a='"}return a},getTime:function(){return this.formatTime(this.hour,this.minute,this.second,this.meridian)},hideWidget:function(){this.isOpen!==!1&&(this.showInputs&&this.updateFromWidgetInputs(),this.$element.trigger({type:"hide.timepicker",time:{value:this.getTime(),hours:this.hour,minutes:this.minute,seconds:this.second,meridian:this.meridian}}),"modal"===this.template?this.$widget.modal("hide"):this.$widget.removeClass("open"),a(c).off("mousedown.timepicker"),this.isOpen=!1)},highlightUnit:function(){this.position=this.getCursorPosition(),this.position>=0&&this.position<=2?this.highlightHour():this.position>=3&&this.position<=5?this.highlightMinute():this.position>=6&&this.position<=8?this.showSeconds?this.highlightSecond():this.highlightMeridian():this.position>=9&&this.position<=11&&this.highlightMeridian()},highlightNextUnit:function(){switch(this.highlightedUnit){case"hour":this.highlightMinute();break;case"minute":this.showSeconds?this.highlightSecond():this.showMeridian?this.highlightMeridian():this.highlightHour();break;case"second":this.showMeridian?this.highlightMeridian():this.highlightHour();break;case"meridian":this.highlightHour()}},highlightPrevUnit:function(){switch(this.highlightedUnit){case"hour":this.highlightMeridian();break;case"minute":this.highlightHour();break;case"second":this.highlightMinute();break;case"meridian":this.showSeconds?this.highlightSecond():this.highlightMinute()}},highlightHour:function(){var a=this.$element.get(0);this.highlightedUnit="hour",a.setSelectionRange&&setTimeout(function(){a.setSelectionRange(0,2)},0)},highlightMinute:function(){var a=this.$element.get(0);this.highlightedUnit="minute",a.setSelectionRange&&setTimeout(function(){a.setSelectionRange(3,5)},0)},highlightSecond:function(){var a=this.$element.get(0);this.highlightedUnit="second",a.setSelectionRange&&setTimeout(function(){a.setSelectionRange(6,8)},0)},highlightMeridian:function(){var a=this.$element.get(0);this.highlightedUnit="meridian",a.setSelectionRange&&(this.showSeconds?setTimeout(function(){a.setSelectionRange(9,11)},0):setTimeout(function(){a.setSelectionRange(6,8)},0))},incrementHour:function(){if(this.showMeridian){if(11===this.hour)return this.hour++,this.toggleMeridian();12===this.hour&&(this.hour=0)}return 23===this.hour?void(this.hour=0):(this.hour++,void this.update())},incrementMinute:function(a){var b;b=a?this.minute+a:this.minute+this.minuteStep-this.minute%this.minuteStep,b>59?(this.incrementHour(),this.minute=b-60):this.minute=b,this.update()},incrementSecond:function(){var a=this.second+this.secondStep-this.second%this.secondStep;a>59?(this.incrementMinute(!0),this.second=a-60):this.second=a,this.update()},remove:function(){a("document").off(".timepicker"),this.$widget&&this.$widget.remove(),delete this.$element.data().timepicker},setDefaultTime:function(a){if(this.$element.val())this.updateFromElementVal();else if("current"===a){var b=new Date,c=b.getHours(),d=Math.floor(b.getMinutes()/this.minuteStep)*this.minuteStep,e=Math.floor(b.getSeconds()/this.secondStep)*this.secondStep,f="AM";this.showMeridian&&(0===c?c=12:c>=12?(c>12&&(c-=12),f="PM"):f="AM"),this.hour=c,this.minute=d,this.second=e,this.meridian=f,this.update()}else a===!1?(this.hour=0,this.minute=0,this.second=0,this.meridian="AM"):this.setTime(a)},setTime:function(a){var b,c;this.showMeridian?(b=a.split(" "),c=b[0].split(":"),this.meridian=b[1]):c=a.split(":"),this.hour=parseInt(c[0],10),this.minute=parseInt(c[1],10),this.second=parseInt(c[2],10),isNaN(this.hour)&&(this.hour=0),isNaN(this.minute)&&(this.minute=0),this.showMeridian?(this.hour>12?this.hour=12:this.hour<1&&(this.hour=12),"am"===this.meridian||"a"===this.meridian?this.meridian="AM":("pm"===this.meridian||"p"===this.meridian)&&(this.meridian="PM"),"AM"!==this.meridian&&"PM"!==this.meridian&&(this.meridian="AM")):this.hour>=24?this.hour=23:this.hour<0&&(this.hour=0),this.minute<0?this.minute=0:this.minute>=60&&(this.minute=59),this.showSeconds&&(isNaN(this.second)?this.second=0:this.second<0?this.second=0:this.second>=60&&(this.second=59)),this.update()},showWidget:function(){if(!this.isOpen&&!this.$element.is(":disabled")){var b=this;a(c).on("mousedown.timepicker",function(c){0===a(c.target).closest(".bootstrap-timepicker-widget").length&&b.hideWidget()}),this.$element.trigger({type:"show.timepicker",time:{value:this.getTime(),hours:this.hour,minutes:this.minute,seconds:this.second,meridian:this.meridian}}),this.disableFocus&&this.$element.blur(),this.updateFromElementVal(),"modal"===this.template?this.$widget.modal("show").on("hidden",a.proxy(this.hideWidget,this)):this.isOpen===!1&&this.$widget.addClass("open"),this.isOpen=!0}},toggleMeridian:function(){this.meridian="AM"===this.meridian?"PM":"AM",this.update()},update:function(){this.$element.trigger({type:"changeTime.timepicker",time:{value:this.getTime(),hours:this.hour,minutes:this.minute,seconds:this.second,meridian:this.meridian}}),this.updateElement(),this.updateWidget()},updateElement:function(){this.$element.val(this.getTime()).change()},updateFromElementVal:function(){var a=this.$element.val();a&&this.setTime(a)},updateWidget:function(){if(this.$widget!==!1){var a=this.hour<10?"0"+this.hour:this.hour,b=this.minute<10?"0"+this.minute:this.minute,c=this.second<10?"0"+this.second:this.second;this.showInputs?(this.$widget.find("input.bootstrap-timepicker-hour").val(a),this.$widget.find("input.bootstrap-timepicker-minute").val(b),this.showSeconds&&this.$widget.find("input.bootstrap-timepicker-second").val(c),this.showMeridian&&this.$widget.find("input.bootstrap-timepicker-meridian").val(this.meridian)):(this.$widget.find("span.bootstrap-timepicker-hour").text(a),this.$widget.find("span.bootstrap-timepicker-minute").text(b),this.showSeconds&&this.$widget.find("span.bootstrap-timepicker-second").text(c),this.showMeridian&&this.$widget.find("span.bootstrap-timepicker-meridian").text(this.meridian))}},updateFromWidgetInputs:function(){if(this.$widget!==!1){var b=a("input.bootstrap-timepicker-hour",this.$widget).val()+":"+a("input.bootstrap-timepicker-minute",this.$widget).val()+(this.showSeconds?":"+a("input.bootstrap-timepicker-second",this.$widget).val():"")+(this.showMeridian?" "+a("input.bootstrap-timepicker-meridian",this.$widget).val():"");this.setTime(b)}},widgetClick:function(b){b.stopPropagation(),b.preventDefault();var c=a(b.target).closest("a").data("action");c&&this[c]()},widgetKeydown:function(b){var c=a(b.target).closest("input"),d=c.attr("name");switch(b.keyCode){case 9:if(this.showMeridian){if("meridian"===d)return this.hideWidget()}else if(this.showSeconds){if("second"===d)return this.hideWidget()}else if("minute"===d)return this.hideWidget();this.updateFromWidgetInputs();break;case 27:this.hideWidget();break;case 38:switch(b.preventDefault(),d){case"hour":this.incrementHour();break;case"minute":this.incrementMinute();break;case"second":this.incrementSecond();break;case"meridian":this.toggleMeridian()}break;case 40:switch(b.preventDefault(),d){case"hour":this.decrementHour();break;case"minute":this.decrementMinute();break;case"second":this.decrementSecond();break;case"meridian":this.toggleMeridian()}}}},a.fn.timepicker=function(b){var c=Array.apply(null,arguments);return c.shift(),this.each(function(){var d=a(this),f=d.data("timepicker"),g="object"==typeof b&&b;f||d.data("timepicker",f=new e(this,a.extend({},a.fn.timepicker.defaults,g,a(this).data()))),"string"==typeof b&&f[b].apply(f,c)})},a.fn.timepicker.defaults={defaultTime:"current",disableFocus:!1,isOpen:!1,minuteStep:15,modalBackdrop:!1,secondStep:15,showSeconds:!1,showInputs:!0,showMeridian:!0,template:"dropdown",appendWidgetTo:".bootstrap-timepicker"},a.fn.timepicker.Constructor=e}(jQuery,window,document),define("timepicker",function(){}),!function(a){function b(){return new Date(Date.UTC.apply(Date,arguments))}var c=function(b,c){switch(this.element=a(b),this.language=c.language||this.element.data("date-language")||"en",this.language=this.language in d?this.language:this.language.split("-")[0],this.language=this.language in d?this.language:"en",this.isRTL=d[this.language].rtl||!1,this.format=e.parseFormat(c.format||this.element.data("date-format")||d[this.language].format||"mm/dd/yyyy"),this.isInline=!1,this.isInput=this.element.is("input"),this.component=this.element.is(".date")?this.element.find(".add-on, .btn"):!1,this.hasInput=this.component&&this.element.find("input").length,this.component&&0===this.component.length&&(this.component=!1),this.forceParse=!0,"forceParse"in c?this.forceParse=c.forceParse:"dateForceParse"in this.element.data()&&(this.forceParse=this.element.data("date-force-parse")),this.picker=a(e.template),this._buildEvents(),this._attachEvents(),this.isInline?this.picker.addClass("datepicker-inline").appendTo(this.element):this.picker.addClass("datepicker-dropdown dropdown-menu"),this.isRTL&&(this.picker.addClass("datepicker-rtl"),this.picker.find(".prev i, .next i").toggleClass("icon-arrow-left icon-arrow-right")),this.autoclose=!1,"autoclose"in c?this.autoclose=c.autoclose:"dateAutoclose"in this.element.data()&&(this.autoclose=this.element.data("date-autoclose")),this.keyboardNavigation=!0,"keyboardNavigation"in c?this.keyboardNavigation=c.keyboardNavigation:"dateKeyboardNavigation"in this.element.data()&&(this.keyboardNavigation=this.element.data("date-keyboard-navigation")),this.viewMode=this.startViewMode=0,c.startView||this.element.data("date-start-view")){case 2:case"decade":this.viewMode=this.startViewMode=2;break;case 1:case"year":this.viewMode=this.startViewMode=1}if(this.minViewMode=c.minViewMode||this.element.data("date-min-view-mode")||0,"string"==typeof this.minViewMode)switch(this.minViewMode){case"months":this.minViewMode=1;break;case"years":this.minViewMode=2;break;default:this.minViewMode=0}this.viewMode=this.startViewMode=Math.max(this.startViewMode,this.minViewMode),this.todayBtn=c.todayBtn||this.element.data("date-today-btn")||!1,this.todayHighlight=c.todayHighlight||this.element.data("date-today-highlight")||!1,this.calendarWeeks=!1,"calendarWeeks"in c?this.calendarWeeks=c.calendarWeeks:"dateCalendarWeeks"in this.element.data()&&(this.calendarWeeks=this.element.data("date-calendar-weeks")),this.calendarWeeks&&this.picker.find("tfoot th.today").attr("colspan",function(a,b){return parseInt(b)+1}),this._allow_update=!1,this.weekStart=(c.weekStart||this.element.data("date-weekstart")||d[this.language].weekStart||0)%7,this.weekEnd=(this.weekStart+6)%7,this.startDate=-1/0,this.endDate=1/0,this.daysOfWeekDisabled=[],this.setStartDate(c.startDate||this.element.data("date-startdate")),this.setEndDate(c.endDate||this.element.data("date-enddate")),this.setDaysOfWeekDisabled(c.daysOfWeekDisabled||this.element.data("date-days-of-week-disabled")),this.fillDow(),this.fillMonths(),this._allow_update=!0,this.update(),this.showMode(),this.isInline&&this.show()};c.prototype={constructor:c,_events:[],_secondaryEvents:[],_applyEvents:function(a){for(var b,c,d=0;dthis.endDate?this.endDate:this.date),this.fill()}},fillDow:function(){var a=this.weekStart,b="";if(this.calendarWeeks){var c=' ';b+=c,this.picker.find(".datepicker-days thead tr:first-child").prepend(c)}for(;a'+d[this.language].daysMin[a++%7]+"";b+="",this.picker.find(".datepicker-days thead").append(b)},fillMonths:function(){for(var a="",b=0;12>b;)a+=''+d[this.language].monthsShort[b++]+"";this.picker.find(".datepicker-months td").html(a)},fill:function(){var c=new Date(this.viewDate),f=c.getUTCFullYear(),g=c.getUTCMonth(),h=this.startDate!==-1/0?this.startDate.getUTCFullYear():-1/0,i=this.startDate!==-1/0?this.startDate.getUTCMonth():-1/0,j=1/0!==this.endDate?this.endDate.getUTCFullYear():1/0,k=1/0!==this.endDate?this.endDate.getUTCMonth():1/0,l=this.date&&this.date.valueOf(),m=new Date;this.picker.find(".datepicker-days thead th.switch").text(d[this.language].months[g]+" "+f),this.picker.find("tfoot th.today").text(d[this.language].today).toggle(this.todayBtn!==!1),this.updateNavArrows(),this.fillMonths();var n=b(f,g-1,28,0,0,0,0),o=e.getDaysInMonth(n.getUTCFullYear(),n.getUTCMonth());n.setUTCDate(o),n.setUTCDate(o-(n.getUTCDay()-this.weekStart+7)%7);var p=new Date(n);p.setUTCDate(p.getUTCDate()+42),p=p.valueOf();for(var q,r=[];n.valueOf()"),this.calendarWeeks)){var s=new Date(+n+(this.weekStart-n.getUTCDay()-7)%7*864e5),t=new Date(+s+(11-s.getUTCDay())%7*864e5),u=new Date(+(u=b(t.getUTCFullYear(),0,1))+(11-u.getUTCDay())%7*864e5),v=(t-u)/864e5/7+1;r.push(''+v+"")}q="",n.getUTCFullYear()f||n.getUTCFullYear()==f&&n.getUTCMonth()>g)&&(q+=" new"),this.todayHighlight&&n.getUTCFullYear()==m.getFullYear()&&n.getUTCMonth()==m.getMonth()&&n.getUTCDate()==m.getDate()&&(q+=" today"),l&&n.valueOf()==l&&(q+=" active"),(n.valueOf()this.endDate||-1!==a.inArray(n.getUTCDay(),this.daysOfWeekDisabled))&&(q+=" disabled"),r.push(''+n.getUTCDate()+""),n.getUTCDay()==this.weekEnd&&r.push(""),n.setUTCDate(n.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").empty().append(r.join(""));var w=this.date&&this.date.getUTCFullYear(),x=this.picker.find(".datepicker-months").find("th:eq(1)").text(f).end().find("span").removeClass("active");w&&w==f&&x.eq(this.date.getUTCMonth()).addClass("active"),(h>f||f>j)&&x.addClass("disabled"),f==h&&x.slice(0,i).addClass("disabled"),f==j&&x.slice(k+1).addClass("disabled"),r="",f=10*parseInt(f/10,10);var y=this.picker.find(".datepicker-years").find("th:eq(1)").text(f+"-"+(f+9)).end().find("td");f-=1;for(var z=-1;11>z;z++)r+='f||f>j?" disabled":"")+'">'+f+"",f+=1;y.html(r)},updateNavArrows:function(){if(this._allow_update){var a=new Date(this.viewDate),b=a.getUTCFullYear(),c=a.getUTCMonth();switch(this.viewMode){case 0:this.picker.find(".prev").css(this.startDate!==-1/0&&b<=this.startDate.getUTCFullYear()&&c<=this.startDate.getUTCMonth()?{visibility:"hidden"}:{visibility:"visible"}),this.picker.find(".next").css(1/0!==this.endDate&&b>=this.endDate.getUTCFullYear()&&c>=this.endDate.getUTCMonth()?{visibility:"hidden"}:{visibility:"visible"});break;case 1:case 2:this.picker.find(".prev").css(this.startDate!==-1/0&&b<=this.startDate.getUTCFullYear()?{visibility:"hidden"}:{visibility:"visible"}),this.picker.find(".next").css(1/0!==this.endDate&&b>=this.endDate.getUTCFullYear()?{visibility:"hidden"}:{visibility:"visible"})}}},click:function(c){c.preventDefault();var d=a(c.target).closest("span, td, th");if(1==d.length)switch(d[0].nodeName.toLowerCase()){case"th":switch(d[0].className){case"switch":this.showMode(1);break;case"prev":case"next":var f=e.modes[this.viewMode].navStep*("prev"==d[0].className?-1:1);switch(this.viewMode){case 0:this.viewDate=this.moveMonth(this.viewDate,f);break;case 1:case 2:this.viewDate=this.moveYear(this.viewDate,f)}this.fill();break;case"today":var g=new Date;g=b(g.getFullYear(),g.getMonth(),g.getDate(),0,0,0),this.showMode(-2);var h="linked"==this.todayBtn?null:"view";this._setDate(g,h)}break;case"span":if(!d.is(".disabled")){if(this.viewDate.setUTCDate(1),d.is(".month")){var i=1,j=d.parent().find("span").index(d),k=this.viewDate.getUTCFullYear();this.viewDate.setUTCMonth(j),this.element.trigger({type:"changeMonth",date:this.viewDate}),1==this.minViewMode&&this._setDate(b(k,j,i,0,0,0,0))}else{var k=parseInt(d.text(),10)||0,i=1,j=0;this.viewDate.setUTCFullYear(k),this.element.trigger({type:"changeYear",date:this.viewDate}),2==this.minViewMode&&this._setDate(b(k,j,i,0,0,0,0))}this.showMode(-1),this.fill()}break;case"td":if(d.is(".day")&&!d.is(".disabled")){var i=parseInt(d.text(),10)||1,k=this.viewDate.getUTCFullYear(),j=this.viewDate.getUTCMonth();d.is(".old")?0===j?(j=11,k-=1):j-=1:d.is(".new")&&(11==j?(j=0,k+=1):j+=1),this._setDate(b(k,j,i,0,0,0,0))}}},_setDate:function(a,b){b&&"date"!=b||(this.date=a),b&&"view"!=b||(this.viewDate=a),this.fill(),this.setValue(),this.element.trigger({type:"changeDate",date:this.date});var c;this.isInput?c=this.element:this.component&&(c=this.element.find("input")),c&&(c.change(),!this.autoclose||b&&"date"!=b||this.hide())},moveMonth:function(a,b){if(!b)return a;var c,d,e=new Date(a.valueOf()),f=e.getUTCDate(),g=e.getUTCMonth(),h=Math.abs(b);if(b=b>0?1:-1,1==h)d=-1==b?function(){return e.getUTCMonth()==g}:function(){return e.getUTCMonth()!=c},c=g+b,e.setUTCMonth(c),(0>c||c>11)&&(c=(c+12)%12);else{for(var i=0;h>i;i++)e=this.moveMonth(e,b);c=e.getUTCMonth(),e.setUTCDate(f),d=function(){return c!=e.getUTCMonth()}}for(;d();)e.setUTCDate(--f),e.setUTCMonth(c);return e},moveYear:function(a,b){return this.moveMonth(a,12*b)},dateWithinRange:function(a){return a>=this.startDate&&a<=this.endDate},keydown:function(a){if(this.picker.is(":not(:visible)"))return void(27==a.keyCode&&this.show());var b,c,d,e=!1;switch(a.keyCode){case 27:this.hide(),a.preventDefault();break;case 37:case 39:if(!this.keyboardNavigation)break;b=37==a.keyCode?-1:1,a.ctrlKey?(c=this.moveYear(this.date,b),d=this.moveYear(this.viewDate,b)):a.shiftKey?(c=this.moveMonth(this.date,b),d=this.moveMonth(this.viewDate,b)):(c=new Date(this.date),c.setUTCDate(this.date.getUTCDate()+b),d=new Date(this.viewDate),d.setUTCDate(this.viewDate.getUTCDate()+b)),this.dateWithinRange(c)&&(this.date=c,this.viewDate=d,this.setValue(),this.update(),a.preventDefault(),e=!0);break;case 38:case 40:if(!this.keyboardNavigation)break;b=38==a.keyCode?-1:1,a.ctrlKey?(c=this.moveYear(this.date,b),d=this.moveYear(this.viewDate,b)):a.shiftKey?(c=this.moveMonth(this.date,b),d=this.moveMonth(this.viewDate,b)):(c=new Date(this.date),c.setUTCDate(this.date.getUTCDate()+7*b),d=new Date(this.viewDate),d.setUTCDate(this.viewDate.getUTCDate()+7*b)),this.dateWithinRange(c)&&(this.date=c,this.viewDate=d,this.setValue(),this.update(),a.preventDefault(),e=!0);break;case 13:this.hide(),a.preventDefault();break;case 9:this.hide()}if(e){this.element.trigger({type:"changeDate",date:this.date});var f;this.isInput?f=this.element:this.component&&(f=this.element.find("input")),f&&f.change()}},showMode:function(a){a&&(this.viewMode=Math.max(this.minViewMode,Math.min(2,this.viewMode+a))),this.picker.find(">div").hide().filter(".datepicker-"+e.modes[this.viewMode].clsName).css("display","block"),this.updateNavArrows()}},a.fn.datepicker=function(b){var d=Array.apply(null,arguments);return d.shift(),this.each(function(){var e=a(this),f=e.data("datepicker"),g="object"==typeof b&&b;f||e.data("datepicker",f=new c(this,a.extend({},a.fn.datepicker.defaults,g))),"string"==typeof b&&"function"==typeof f[b]&&f[b].apply(f,d)})},a.fn.datepicker.defaults={},a.fn.datepicker.Constructor=c;var d=a.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sun"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa","Su"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today"}},e={modes:[{clsName:"days",navFnc:"Month",navStep:1},{clsName:"months",navFnc:"FullYear",navStep:1},{clsName:"years",navFnc:"FullYear",navStep:10}],isLeapYear:function(a){return a%4===0&&a%100!==0||a%400===0},getDaysInMonth:function(a,b){return[31,e.isLeapYear(a)?29:28,31,30,31,30,31,31,30,31,30,31][b]},validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\[\u3400-\u9fff-`{-~\t\n\r]+/g,parseFormat:function(a){var b=a.replace(this.validParts,"\x00").split("\x00"),c=a.match(this.validParts);if(!b||!b.length||!c||0===c.length)throw new Error("Invalid date format.");return{separators:b,parts:c}},parseDate:function(e,f,g){if(e instanceof Date)return e;if(/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/.test(e)){var h,i,j=/([\-+]\d+)([dmwy])/,k=e.match(/([\-+]\d+)([dmwy])/g);e=new Date;for(var l=0;lb;)b+=12;for(b%=12,a.setUTCMonth(b);a.getUTCMonth()!=b;)a.setUTCDate(a.getUTCDate()-1);return a},d:function(a,b){return a.setUTCDate(b)}};q.M=q.MM=q.mm=q.m,q.dd=q.d,e=b(e.getFullYear(),e.getMonth(),e.getDate(),0,0,0);var r=f.parts.slice();if(k.length!=r.length&&(r=a(r).filter(function(b,c){return-1!==a.inArray(c,p)}).toArray()),k.length==r.length){for(var l=0,s=r.length;s>l;l++){if(m=parseInt(k[l],10),h=r[l],isNaN(m))switch(h){case"MM":n=a(d[g].months).filter(function(){var a=this.slice(0,k[l].length),b=k[l].slice(0,a.length);return a==b}),m=a.inArray(n[0],d[g].months)+1;break;case"M":n=a(d[g].monthsShort).filter(function(){var a=this.slice(0,k[l].length),b=k[l].slice(0,a.length);return a==b}),m=a.inArray(n[0],d[g].monthsShort)+1}o[h]=m}for(var t,l=0;lh;h++)g.length&&b.push(g.shift()),b.push(f[c.parts[h]]);return b.join("")},headTemplate:'',contTemplate:'',footTemplate:''};e.template='
    '+e.headTemplate+""+e.footTemplate+'
    '+e.headTemplate+e.contTemplate+e.footTemplate+'
    '+e.headTemplate+e.contTemplate+e.footTemplate+"
    ",a.fn.datepicker.DPGlobal=e}(window.jQuery),define("datepicker",function(){}),angular.module("$strap.config",[]).value("$strapConfig",{}),angular.module("$strap.filters",["$strap.config"]),angular.module("$strap.directives",["$strap.config"]),angular.module("$strap",["$strap.filters","$strap.directives","$strap.config"]),angular.module("$strap.directives").directive("bsAlert",["$parse","$timeout","$compile",function(a,b,c){return{restrict:"A",link:function(d,e,f){var g=a(f.bsAlert),h=(g.assign,g(d)),i=function(a){b(function(){e.alert("close")},1*a)};f.bsAlert?d.$watch(f.bsAlert,function(a,b){h=a,e.html((a.title?""+a.title+" ":"")+a.content||""),a.closed&&e.hide(),c(e.contents())(d),(a.type||b.type)&&(b.type&&e.removeClass("alert-"+b.type),a.type&&e.addClass("alert-"+a.type)),angular.isDefined(a.closeAfter)?i(a.closeAfter):f.closeAfter&&i(f.closeAfter),(angular.isUndefined(f.closeButton)||"0"!==f.closeButton&&"false"!==f.closeButton)&&e.prepend('')},!0):((angular.isUndefined(f.closeButton)||"0"!==f.closeButton&&"false"!==f.closeButton)&&e.prepend(''),f.closeAfter&&i(f.closeAfter)),e.addClass("alert").alert(),e.hasClass("fade")&&(e.removeClass("in"),setTimeout(function(){e.addClass("in")}));var j=f.ngRepeat&&f.ngRepeat.split(" in ").pop();e.on("close",function(a){var b;j?(a.preventDefault(),e.removeClass("in"),b=function(){e.trigger("closed"),d.$parent&&d.$parent.$apply(function(){for(var a=j.split("."),b=d.$parent,c=0;cg.length-2?g[0]:g[i+1],b.$apply(function(){c.text(j),e&&e.$setViewValue(j)})})}}}]),angular.module("$strap.directives").directive("bsDatepicker",["$timeout","$strapConfig",function(a,b){var c=/(iP(a|o)d|iPhone)/g.test(navigator.userAgent),d=function(a){return a=a||"en",{"/":"[\\/]","-":"[-]",".":"[.]"," ":"[\\s]",dd:"(?:(?:[0-2]?[0-9]{1})|(?:[3][01]{1}))",d:"(?:(?:[0-2]?[0-9]{1})|(?:[3][01]{1}))",mm:"(?:[0]?[1-9]|[1][012])",m:"(?:[0]?[1-9]|[1][012])",DD:"(?:"+$.fn.datepicker.dates[a].days.join("|")+")",D:"(?:"+$.fn.datepicker.dates[a].daysShort.join("|")+")",MM:"(?:"+$.fn.datepicker.dates[a].months.join("|")+")",M:"(?:"+$.fn.datepicker.dates[a].monthsShort.join("|")+")",yyyy:"(?:(?:[1]{1}[0-9]{1}[0-9]{1}[0-9]{1})|(?:[2]{1}[0-9]{3}))(?![[0-9]])",yy:"(?:(?:[0-9]{1}[0-9]{1}))(?![[0-9]])"}},e=function(a,b){var c,e=a,f=d(b);return c=0,angular.forEach(f,function(a,b){e=e.split(b).join("${"+c+"}"),c++}),c=0,angular.forEach(f,function(a){e=e.split("${"+c+"}").join(a),c++}),new RegExp("^"+e+"$",["i"])};return{restrict:"A",require:"?ngModel",link:function(a,d,f,g){var h=angular.extend({autoclose:!0},b.datepicker||{}),i=f.dateType||h.type||"date";angular.forEach(["format","weekStart","calendarWeeks","startDate","endDate","daysOfWeekDisabled","autoclose","startView","minViewMode","todayBtn","todayHighlight","keyboardNavigation","language","forceParse"],function(a){angular.isDefined(f[a])&&(h[a]=f[a])});var j=h.language||"en",k=f.dateFormat||h.format||$.fn.datepicker.dates[j]&&$.fn.datepicker.dates[j].format||"mm/dd/yyyy",l=c?"yyyy-mm-dd":k,m=e(l,j);g&&(g.$formatters.unshift(function(a){return"date"===i&&angular.isString(a)&&a?$.fn.datepicker.DPGlobal.parseDate(a,$.fn.datepicker.DPGlobal.parseFormat(k),j):a}),g.$parsers.unshift(function(a){return a?"date"===i&&angular.isDate(a)?(g.$setValidity("date",!0),a):angular.isString(a)&&m.test(a)?(g.$setValidity("date",!0),c?new Date(a):"string"===i?a:$.fn.datepicker.DPGlobal.parseDate(a,$.fn.datepicker.DPGlobal.parseFormat(l),j)):void g.$setValidity("date",!1):(g.$setValidity("date",!0),null)}),g.$render=function(){if(c){var a=g.$viewValue?$.fn.datepicker.DPGlobal.formatDate(g.$viewValue,$.fn.datepicker.DPGlobal.parseFormat(l),j):"";return d.val(a),a}return g.$viewValue||d.val(""),d.datepicker("update",g.$viewValue)}),c?d.prop("type","date").css("-webkit-appearance","textfield"):(g&&d.on("changeDate",function(b){a.$apply(function(){g.$setViewValue("string"===i?d.val():b.date)})}),d.datepicker(angular.extend(h,{format:l,language:j})),a.$on("$destroy",function(){var a=d.data("datepicker");a&&(a.picker.remove(),d.data("datepicker",null))}),f.$observe("startDate",function(a){d.datepicker("setStartDate",a)}),f.$observe("endDate",function(a){d.datepicker("setEndDate",a)}));var n=d.siblings('[data-toggle="datepicker"]');n.length&&n.on("click",function(){d.prop("disabled")||d.trigger("focus")})}}}]),angular.module("$strap.directives").directive("bsDropdown",["$parse","$compile","$timeout",function(a,b,c){var d=function(a,b){return b||(b=['"]),angular.forEach(a,function(a,c){if(a.divider)return b.splice(c+1,0,'
  • ');var e=""+(a.text||"")+"";a.submenu&&a.submenu.length&&(e+=d(a.submenu).join("\n")),e+="",b.splice(c+1,0,e)}),b};return{restrict:"EA",scope:!0,link:function(e,f,g){var h=a(g.bsDropdown),i=h(e);c(function(){!angular.isArray(i);var a=angular.element(d(i).join(""));a.insertAfter(f),b(f.next("ul.dropdown-menu"))(e)}),f.addClass("dropdown-toggle").attr("data-toggle","dropdown")}}}]),angular.module("$strap.directives").factory("$modal",["$rootScope","$compile","$http","$timeout","$q","$templateCache","$strapConfig",function(a,b,c,d,e,f,g){var h=function(h){function i(h){var i=angular.extend({show:!0},g.modal,h),j=i.scope?i.scope:a.$new(),k=i.template;return e.when(f.get(k)||c.get(k,{cache:!0}).then(function(a){return a.data})).then(function(a){var c=k.replace(".html","").replace(/[\/|\.|:]/g,"-")+"-"+j.$id,e=$('').attr("id",c).addClass("fade").html(a);return i.modalClass&&e.addClass(i.modalClass),$("body").append(e),d(function(){b(e)(j)}),j.$modal=function(a){e.modal(a)},angular.forEach(["show","hide"],function(a){j[a]=function(){e.modal(a)}}),j.dismiss=j.hide,angular.forEach(["show","shown","hide","hidden"],function(a){e.on(a,function(b){j.$emit("modal-"+a,b)})}),e.on("shown",function(){$("input[autofocus], textarea[autofocus]",e).first().trigger("focus")}),e.on("hidden",function(){i.persist||j.$destroy()}),j.$on("$destroy",function(){e.remove()}),e.modal(i),e})}return new i(h)};return h}]).directive("bsModal",["$q","$modal",function(a,b){return{restrict:"A",scope:!0,link:function(c,d,e){var f={template:c.$eval(e.bsModal),persist:!0,show:!1,scope:c};angular.forEach(["modalClass","backdrop","keyboard"],function(a){angular.isDefined(e[a])&&(f[a]=e[a])}),a.when(b(f)).then(function(a){d.attr("data-target","#"+a.attr("id")).attr("data-toggle","modal")})}}}]),angular.module("$strap.directives").directive("bsNavbar",["$location",function(a){return{restrict:"A",link:function(b,c){b.$watch(function(){return a.path()},function(a){$("li[data-match-route]",c).each(function(b,c){var d=angular.element(c),e=d.attr("data-match-route"),f=new RegExp("^"+e+"$",["i"]);f.test(a)?d.addClass("active").find(".collapse.in").collapse("hide"):d.removeClass("active")})})}}}]),angular.module("$strap.directives").directive("bsPopover",["$parse","$compile","$http","$timeout","$q","$templateCache",function(a,b,c,d,e,f){return $("body").on("keyup",function(a){27===a.keyCode&&$(".popover.in").each(function(){$(this).popover("hide")})}),{restrict:"A",scope:!0,link:function(g,h,i){var j=a(i.bsPopover),k=(j.assign,j(g)),l={};angular.isObject(k)&&(l=k),e.when(l.content||f.get(k)||c.get(k,{cache:!0})).then(function(a){angular.isObject(a)&&(a=a.data),i.unique&&h.on("show",function(){$(".popover.in").each(function(){var a=$(this),b=a.data("popover");b&&!b.$element.is(h)&&a.popover("hide")})}),i.hide&&g.$watch(i.hide,function(a,b){a?c.hide():a!==b&&c.show()}),i.show&&g.$watch(i.show,function(a,b){a?d(function(){c.show()}):a!==b&&c.hide()}),h.popover(angular.extend({},l,{content:a,html:!0}));var c=h.data("popover");c.hasContent=function(){return this.getTitle()||a},c.getPosition=function(){var a=$.fn.popover.Constructor.prototype.getPosition.apply(this,arguments);return b(this.$tip)(g),g.$digest(),this.$tip.data("popover",this),a},g.$popover=function(a){c(a)},angular.forEach(["show","hide"],function(a){g[a]=function(){c[a]()}}),g.dismiss=g.hide,angular.forEach(["show","shown","hide","hidden"],function(a){h.on(a,function(b){g.$emit("popover-"+a,b)})})})}}}]),angular.module("$strap.directives").directive("bsSelect",["$timeout",function(a){return{restrict:"A",require:"?ngModel",link:function(b,c,d,e){var f=b.$eval(d.bsSelect)||{};a(function(){c.selectpicker(f),c.next().removeClass("ng-scope")}),e&&b.$watch(d.ngModel,function(a,b){angular.equals(a,b)||c.selectpicker("refresh")})}}}]),angular.module("$strap.directives").directive("bsTabs",["$parse","$compile","$timeout",function(a,b,c){var d='
    ';return{restrict:"A",require:"?ngModel",priority:0,scope:!0,template:d,replace:!0,transclude:!0,compile:function(){return function(b,d,e,f){{var g=a(e.bsTabs);g.assign,g(b)}b.panes=[];var h,i,j,k=d.find("ul.nav-tabs"),l=d.find("div.tab-content"),m=0;c(function(){l.find("[data-title], [data-tab]").each(function(a){var c=angular.element(this);h="tab-"+b.$id+"-"+a,i=c.data("title")||c.data("tab"),j=!j&&c.hasClass("active"),c.attr("id",h).addClass("tab-pane"),e.fade&&c.addClass("fade"),b.panes.push({id:h,title:i,content:this.innerHTML,active:j})}),b.panes.length&&!j&&(l.find(".tab-pane:first-child").addClass("active"+(e.fade?" in":"")),b.panes[0].active=!0)}),f&&(d.on("show",function(a){var c=$(a.target);b.$apply(function(){f.$setViewValue(c.data("index"))})}),b.$watch(e.ngModel,function(a){angular.isUndefined(a)||(m=a,setTimeout(function(){if(m===a){var b=$(k[0].querySelectorAll("li")[1*a]);b.hasClass("active")||b.children("a").tab("show")}}))}))}}}}]),angular.module("$strap.directives").directive("bsTimepicker",["$timeout","$strapConfig",function(a,b){var c="((?:(?:[0-1][0-9])|(?:[2][0-3])|(?:[0-9])):(?:[0-5][0-9])(?::[0-5][0-9])?(?:\\s?(?:am|AM|pm|PM))?)";return{restrict:"A",require:"?ngModel",link:function(d,e,f,g){if(g){e.on("changeTime.timepicker",function(){a(function(){g.$setViewValue(e.val())})});var h=new RegExp("^"+c+"$",["i"]);g.$parsers.unshift(function(a){return!a||h.test(a)?(g.$setValidity("time",!0),a):void g.$setValidity("time",!1)})}e.attr("data-toggle","timepicker"),e.parent().addClass("bootstrap-timepicker"),e.timepicker(b.timepicker||{});var i=e.data("timepicker"),j=e.siblings('[data-toggle="timepicker"]');j.length&&j.on("click",$.proxy(i.showWidget,i))}}}]),angular.module("$strap.directives").directive("bsTooltip",["$parse","$compile",function(a){return{restrict:"A",scope:!0,link:function(b,c,d){var e=a(d.bsTooltip),f=(e.assign,e(b));b.$watch(d.bsTooltip,function(a,b){a!==b&&(f=a)}),d.unique&&c.on("show",function(){$(".tooltip.in").each(function(){var a=$(this),b=a.data("tooltip");b&&!b.$element.is(c)&&a.tooltip("hide")})}),c.tooltip({title:function(){return angular.isFunction(f)?f.apply(null,arguments):f},html:!0});var g=c.data("tooltip");g.show=function(){var a=$.fn.tooltip.Constructor.prototype.show.apply(this,arguments);return this.tip().data("tooltip",this),a},b._tooltip=function(a){c.tooltip(a)},b.hide=function(){c.tooltip("hide")},b.show=function(){c.tooltip("show")},b.dismiss=b.hide}}}]),angular.module("$strap.directives").directive("bsTypeahead",["$parse",function(a){return{restrict:"A",require:"?ngModel",link:function(b,c,d,e){var f=a(d.bsTypeahead),g=(f.assign,f(b));b.$watch(d.bsTypeahead,function(a,b){a!==b&&(g=a)}),c.attr("data-provide","typeahead"),c.typeahead({source:function(){return angular.isFunction(g)?g.apply(null,arguments):g},minLength:d.minLength||1,items:d.items,updater:function(a){return e&&b.$apply(function(){e.$setViewValue(a)}),b.$emit("typeahead-updated",a),a}});var h=c.data("typeahead");h.lookup=function(){var a;return this.query=this.$element.val()||"",this.query.length=0)&&c(b,!e)}}),a("").outerWidth(1).jquery||a.each(["Width","Height"],function(c,d){function e(b,c,d,e){return a.each(f,function(){c-=parseFloat(a.css(b,"padding"+this))||0,d&&(c-=parseFloat(a.css(b,"border"+this+"Width"))||0),e&&(c-=parseFloat(a.css(b,"margin"+this))||0)}),c}var f="Width"===d?["Left","Right"]:["Top","Bottom"],g=d.toLowerCase(),h={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){return c===b?h["inner"+d].call(this):this.each(function(){a(this).css(g,e(this,c)+"px")})},a.fn["outer"+d]=function(b,c){return"number"!=typeof b?h["outer"+d].call(this,b):this.each(function(){a(this).css(g,e(this,b,!0,c)+"px")})}}),a.fn.addBack||(a.fn.addBack=function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}),a("").data("a-b","a").removeData("a-b").data("a-b")&&(a.fn.removeData=function(b){return function(c){return arguments.length?b.call(this,a.camelCase(c)):b.call(this)}}(a.fn.removeData)),a.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),a.support.selectstart="onselectstart"in document.createElement("div"),a.fn.extend({disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e,f=a.ui[b].prototype;for(e in d)f.plugins[e]=f.plugins[e]||[],f.plugins[e].push([c,d[e]])},call:function(a,b,c){var d,e=a.plugins[b];if(e&&a.element[0].parentNode&&11!==a.element[0].parentNode.nodeType)for(d=0;d0?!0:(b[d]=1,e=b[d]>0,b[d]=0,e)}})}(jQuery),function(a,b){var c=0,d=Array.prototype.slice,e=a.cleanData;a.cleanData=function(b){for(var c,d=0;null!=(c=b[d]);d++)try{a(c).triggerHandler("remove")}catch(f){}e(b)},a.widget=function(b,c,d){var e,f,g,h,i={},j=b.split(".")[0];b=b.split(".")[1],e=j+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][e.toLowerCase()]=function(b){return!!a.data(b,e)},a[j]=a[j]||{},f=a[j][b],g=a[j][b]=function(a,b){return this._createWidget?void(arguments.length&&this._createWidget(a,b)):new g(a,b)},a.extend(g,f,{version:d.version,_proto:a.extend({},d),_childConstructors:[]}),h=new c,h.options=a.widget.extend({},h.options),a.each(d,function(b,d){return a.isFunction(d)?void(i[b]=function(){var a=function(){return c.prototype[b].apply(this,arguments)},e=function(a){return c.prototype[b].apply(this,a)};return function(){var b,c=this._super,f=this._superApply;return this._super=a,this._superApply=e,b=d.apply(this,arguments),this._super=c,this._superApply=f,b}}()):void(i[b]=d)}),g.prototype=a.widget.extend(h,{widgetEventPrefix:f?h.widgetEventPrefix:b},i,{constructor:g,namespace:j,widgetName:b,widgetFullName:e}),f?(a.each(f._childConstructors,function(b,c){var d=c.prototype;a.widget(d.namespace+"."+d.widgetName,g,c._proto)}),delete f._childConstructors):c._childConstructors.push(g),a.widget.bridge(b,g)},a.widget.extend=function(c){for(var e,f,g=d.call(arguments,1),h=0,i=g.length;i>h;h++)for(e in g[h])f=g[h][e],g[h].hasOwnProperty(e)&&f!==b&&(c[e]=a.isPlainObject(f)?a.isPlainObject(c[e])?a.widget.extend({},c[e],f):a.widget.extend({},f):f);return c},a.widget.bridge=function(c,e){var f=e.prototype.widgetFullName||c;a.fn[c]=function(g){var h="string"==typeof g,i=d.call(arguments,1),j=this;return g=!h&&i.length?a.widget.extend.apply(null,[g].concat(i)):g,this.each(h?function(){var d,e=a.data(this,f);return e?a.isFunction(e[g])&&"_"!==g.charAt(0)?(d=e[g].apply(e,i),d!==e&&d!==b?(j=d&&d.jquery?j.pushStack(d.get()):d,!1):void 0):a.error("no such method '"+g+"' for "+c+" widget instance"):a.error("cannot call methods on "+c+" prior to initialization; attempted to call method '"+g+"'")}:function(){var b=a.data(this,f);b?b.option(g||{})._init():a.data(this,f,new e(g,this))}),j}},a.Widget=function(){},a.Widget._childConstructors=[],a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
    ",options:{disabled:!1,create:null},_createWidget:function(b,d){d=a(d||this.defaultElement||this)[0],this.element=a(d),this.uuid=c++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=a.widget.extend({},this.options,this._getCreateOptions(),b),this.bindings=a(),this.hoverable=a(),this.focusable=a(),d!==this&&(a.data(d,this.widgetFullName,this),this._on(!0,this.element,{remove:function(a){a.target===d&&this.destroy()}}),this.document=a(d.style?d.ownerDocument:d.document||d),this.window=a(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:a.noop,_getCreateEventData:a.noop,_create:a.noop,_init:a.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(a.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:a.noop,widget:function(){return this.element},option:function(c,d){var e,f,g,h=c;if(0===arguments.length)return a.widget.extend({},this.options);if("string"==typeof c)if(h={},e=c.split("."),c=e.shift(),e.length){for(f=h[c]=a.widget.extend({},this.options[c]),g=0;g=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})}(jQuery),function(a,b){function c(a,b,c){return[parseFloat(a[0])*(n.test(a[0])?b/100:1),parseFloat(a[1])*(n.test(a[1])?c/100:1)]}function d(b,c){return parseInt(a.css(b,c),10)||0}function e(b){var c=b[0];return 9===c.nodeType?{width:b.width(),height:b.height(),offset:{top:0,left:0}}:a.isWindow(c)?{width:b.width(),height:b.height(),offset:{top:b.scrollTop(),left:b.scrollLeft()}}:c.preventDefault?{width:0,height:0,offset:{top:c.pageY,left:c.pageX}}:{width:b.outerWidth(),height:b.outerHeight(),offset:b.offset()}}a.ui=a.ui||{};var f,g=Math.max,h=Math.abs,i=Math.round,j=/left|center|right/,k=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,m=/^\w+/,n=/%$/,o=a.fn.position;a.position={scrollbarWidth:function(){if(f!==b)return f;var c,d,e=a("
    "),g=e.children()[0];return a("body").append(e),c=g.offsetWidth,e.css("overflow","scroll"),d=g.offsetWidth,c===d&&(d=e[0].clientWidth),e.remove(),f=c-d},getScrollInfo:function(b){var c=b.isWindow?"":b.element.css("overflow-x"),d=b.isWindow?"":b.element.css("overflow-y"),e="scroll"===c||"auto"===c&&b.widthd?"left":c>0?"right":"center",vertical:0>f?"top":e>0?"bottom":"middle"};l>n&&h(c+d)p&&h(e+f)g(h(e),h(f))?"horizontal":"vertical",b.using.call(this,a,i)}),k.offset(a.extend(A,{using:j}))})},a.ui.position={fit:{left:function(a,b){var c,d=b.within,e=d.isWindow?d.scrollLeft:d.offset.left,f=d.width,h=a.left-b.collisionPosition.marginLeft,i=e-h,j=h+b.collisionWidth-f-e;b.collisionWidth>f?i>0&&0>=j?(c=a.left+i+b.collisionWidth-f-e,a.left+=i-c):a.left=j>0&&0>=i?e:i>j?e+f-b.collisionWidth:e:i>0?a.left+=i:j>0?a.left-=j:a.left=g(a.left-h,a.left)},top:function(a,b){var c,d=b.within,e=d.isWindow?d.scrollTop:d.offset.top,f=b.within.height,h=a.top-b.collisionPosition.marginTop,i=e-h,j=h+b.collisionHeight-f-e;b.collisionHeight>f?i>0&&0>=j?(c=a.top+i+b.collisionHeight-f-e,a.top+=i-c):a.top=j>0&&0>=i?e:i>j?e+f-b.collisionHeight:e:i>0?a.top+=i:j>0?a.top-=j:a.top=g(a.top-h,a.top)}},flip:{left:function(a,b){var c,d,e=b.within,f=e.offset.left+e.scrollLeft,g=e.width,i=e.isWindow?e.scrollLeft:e.offset.left,j=a.left-b.collisionPosition.marginLeft,k=j-i,l=j+b.collisionWidth-g-i,m="left"===b.my[0]?-b.elemWidth:"right"===b.my[0]?b.elemWidth:0,n="left"===b.at[0]?b.targetWidth:"right"===b.at[0]?-b.targetWidth:0,o=-2*b.offset[0];0>k?(c=a.left+m+n+o+b.collisionWidth-g-f,(0>c||c0&&(d=a.left-b.collisionPosition.marginLeft+m+n+o-i,(d>0||h(d)k?(d=a.top+n+o+p+b.collisionHeight-g-f,a.top+n+o+p>k&&(0>d||d0&&(c=a.top-b.collisionPosition.marginTop+n+o+p-i,a.top+n+o+p>l&&(c>0||h(c)10&&11>e,b.innerHTML="",c.removeChild(b)}()}(jQuery),function(a){a.widget("ui.draggable",a.ui.mouse,{version:"1.10.3",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"!==this.options.helper||/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},_destroy:function(){this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy()},_mouseCapture:function(b){var c=this.options;return this.helper||c.disabled||a(b.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(b),this.handle?(a(c.iframeFix===!0?"iframe":c.iframeFix).each(function(){a("
    ").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(a(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(b){var c=this.options;return this.helper=this._createHelper(b),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),a.ui.ddmanager&&(a.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offsetParent=this.helper.offsetParent(),this.offsetParentCssPosition=this.offsetParent.css("position"),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.offset.scroll=!1,a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,c.cursorAt&&this._adjustOffsetFromHelper(c.cursorAt),this._setContainment(),this._trigger("start",b)===!1?(this._clear(),!1):(this._cacheHelperProportions(),a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this._mouseDrag(b,!0),a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,b),!0)},_mouseDrag:function(b,c){if("fixed"===this.offsetParentCssPosition&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute"),!c){var d=this._uiHash();if(this._trigger("drag",b,d)===!1)return this._mouseUp({}),!1;this.position=d.position}return this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),!1},_mouseStop:function(b){var c=this,d=!1;return a.ui.ddmanager&&!this.options.dropBehaviour&&(d=a.ui.ddmanager.drop(this,b)),this.dropped&&(d=this.dropped,this.dropped=!1),"original"!==this.options.helper||a.contains(this.element[0].ownerDocument,this.element[0])?("invalid"===this.options.revert&&!d||"valid"===this.options.revert&&d||this.options.revert===!0||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,d)?a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",b)!==!1&&c._clear()}):this._trigger("stop",b)!==!1&&this._clear(),!1):!1},_mouseUp:function(b){return a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,b),a.ui.mouse.prototype._mouseUp.call(this,b)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(b){return this.options.handle?!!a(b.target).closest(this.element.find(this.options.handle)).length:!0},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b])):"clone"===c.helper?this.element.clone().removeAttr("id"):this.element;return d.parents("body").length||d.appendTo("parent"===c.appendTo?this.element[0].parentNode:c.appendTo),d[0]===this.element[0]||/(fixed|absolute)/.test(d.css("position"))||d.css("position","absolute"),d},_adjustOffsetFromHelper:function(b){"string"==typeof b&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left"in b&&(this.offset.click.left=b.left+this.margins.left),"right"in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top"in b&&(this.offset.click.top=b.top+this.margins.top),"bottom"in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top)},_getParentOffset:function(){var b=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&a.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&a.ui.ie)&&(b={top:0,left:0}),{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var b,c,d,e=this.options;return e.containment?"window"===e.containment?void(this.containment=[a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,a(window).scrollLeft()+a(window).width()-this.helperProportions.width-this.margins.left,a(window).scrollTop()+(a(window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):"document"===e.containment?void(this.containment=[0,0,a(document).width()-this.helperProportions.width-this.margins.left,(a(document).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):e.containment.constructor===Array?void(this.containment=e.containment):("parent"===e.containment&&(e.containment=this.helper[0].parentNode),c=a(e.containment),d=c[0],void(d&&(b="hidden"!==c.css("overflow"),this.containment=[(parseInt(c.css("borderLeftWidth"),10)||0)+(parseInt(c.css("paddingLeft"),10)||0),(parseInt(c.css("borderTopWidth"),10)||0)+(parseInt(c.css("paddingTop"),10)||0),(b?Math.max(d.scrollWidth,d.offsetWidth):d.offsetWidth)-(parseInt(c.css("borderRightWidth"),10)||0)-(parseInt(c.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(b?Math.max(d.scrollHeight,d.offsetHeight):d.offsetHeight)-(parseInt(c.css("borderBottomWidth"),10)||0)-(parseInt(c.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=c))):void(this.containment=null)},_convertPositionTo:function(b,c){c||(c=this.position);var d="absolute"===b?1:-1,e="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&a.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent;return this.offset.scroll||(this.offset.scroll={top:e.scrollTop(),left:e.scrollLeft()}),{top:c.top+this.offset.relative.top*d+this.offset.parent.top*d-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top)*d,left:c.left+this.offset.relative.left*d+this.offset.parent.left*d-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)*d}},_generatePosition:function(b){var c,d,e,f,g=this.options,h="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&a.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=b.pageX,j=b.pageY;return this.offset.scroll||(this.offset.scroll={top:h.scrollTop(),left:h.scrollLeft()}),this.originalPosition&&(this.containment&&(this.relative_container?(d=this.relative_container.offset(),c=[this.containment[0]+d.left,this.containment[1]+d.top,this.containment[2]+d.left,this.containment[3]+d.top]):c=this.containment,b.pageX-this.offset.click.leftc[2]&&(i=c[2]+this.offset.click.left),b.pageY-this.offset.click.top>c[3]&&(j=c[3]+this.offset.click.top)),g.grid&&(e=g.grid[1]?this.originalPageY+Math.round((j-this.originalPageY)/g.grid[1])*g.grid[1]:this.originalPageY,j=c?e-this.offset.click.top>=c[1]||e-this.offset.click.top>c[3]?e:e-this.offset.click.top>=c[1]?e-g.grid[1]:e+g.grid[1]:e,f=g.grid[0]?this.originalPageX+Math.round((i-this.originalPageX)/g.grid[0])*g.grid[0]:this.originalPageX,i=c?f-this.offset.click.left>=c[0]||f-this.offset.click.left>c[2]?f:f-this.offset.click.left>=c[0]?f-g.grid[0]:f+g.grid[0]:f)),{top:j-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top),left:i-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(b,c,d){return d=d||this._uiHash(),a.ui.plugin.call(this,b,[c,d]),"drag"===b&&(this.positionAbs=this._convertPositionTo("absolute")),a.Widget.prototype._trigger.call(this,b,c,d)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),a.ui.plugin.add("draggable","connectToSortable",{start:function(b,c){var d=a(this).data("ui-draggable"),e=d.options,f=a.extend({},c,{item:d.element});d.sortables=[],a(e.connectToSortable).each(function(){var c=a.data(this,"ui-sortable");c&&!c.options.disabled&&(d.sortables.push({instance:c,shouldRevert:c.options.revert}),c.refreshPositions(),c._trigger("activate",b,f))})},stop:function(b,c){var d=a(this).data("ui-draggable"),e=a.extend({},c,{item:d.element});a.each(d.sortables,function(){this.instance.isOver?(this.instance.isOver=0,d.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=this.shouldRevert),this.instance._mouseStop(b),this.instance.options.helper=this.instance.options._helper,"original"===d.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",b,e))})},drag:function(b,c){var d=a(this).data("ui-draggable"),e=this;a.each(d.sortables,function(){var f=!1,g=this;this.instance.positionAbs=d.positionAbs,this.instance.helperProportions=d.helperProportions,this.instance.offset.click=d.offset.click,this.instance._intersectsWith(this.instance.containerCache)&&(f=!0,a.each(d.sortables,function(){return this.instance.positionAbs=d.positionAbs,this.instance.helperProportions=d.helperProportions,this.instance.offset.click=d.offset.click,this!==g&&this.instance._intersectsWith(this.instance.containerCache)&&a.contains(g.instance.element[0],this.instance.element[0])&&(f=!1),f})),f?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=a(e).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return c.helper[0]},b.target=this.instance.currentItem[0],this.instance._mouseCapture(b,!0),this.instance._mouseStart(b,!0,!0),this.instance.offset.click.top=d.offset.click.top,this.instance.offset.click.left=d.offset.click.left,this.instance.offset.parent.left-=d.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=d.offset.parent.top-this.instance.offset.parent.top,d._trigger("toSortable",b),d.dropped=this.instance.element,d.currentItem=d.element,this.instance.fromOutside=d),this.instance.currentItem&&this.instance._mouseDrag(b)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",b,this.instance._uiHash(this.instance)),this.instance._mouseStop(b,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),d._trigger("fromSortable",b),d.dropped=!1)})}}),a.ui.plugin.add("draggable","cursor",{start:function(){var b=a("body"),c=a(this).data("ui-draggable").options;b.css("cursor")&&(c._cursor=b.css("cursor")),b.css("cursor",c.cursor)},stop:function(){var b=a(this).data("ui-draggable").options;b._cursor&&a("body").css("cursor",b._cursor)}}),a.ui.plugin.add("draggable","opacity",{start:function(b,c){var d=a(c.helper),e=a(this).data("ui-draggable").options;d.css("opacity")&&(e._opacity=d.css("opacity")),d.css("opacity",e.opacity)},stop:function(b,c){var d=a(this).data("ui-draggable").options;d._opacity&&a(c.helper).css("opacity",d._opacity)}}),a.ui.plugin.add("draggable","scroll",{start:function(){var b=a(this).data("ui-draggable");b.scrollParent[0]!==document&&"HTML"!==b.scrollParent[0].tagName&&(b.overflowOffset=b.scrollParent.offset())},drag:function(b){var c=a(this).data("ui-draggable"),d=c.options,e=!1;c.scrollParent[0]!==document&&"HTML"!==c.scrollParent[0].tagName?(d.axis&&"x"===d.axis||(c.overflowOffset.top+c.scrollParent[0].offsetHeight-b.pageY=0;l--)h=n.snapElements[l].left,i=h+n.snapElements[l].width,j=n.snapElements[l].top,k=j+n.snapElements[l].height,h-p>r||q>i+p||j-p>t||s>k+p||!a.contains(n.snapElements[l].item.ownerDocument,n.snapElements[l].item)?(n.snapElements[l].snapping&&n.options.snap.release&&n.options.snap.release.call(n.element,b,a.extend(n._uiHash(),{snapItem:n.snapElements[l].item})),n.snapElements[l].snapping=!1):("inner"!==o.snapMode&&(d=Math.abs(j-t)<=p,e=Math.abs(k-s)<=p,f=Math.abs(h-r)<=p,g=Math.abs(i-q)<=p,d&&(c.position.top=n._convertPositionTo("relative",{top:j-n.helperProportions.height,left:0}).top-n.margins.top),e&&(c.position.top=n._convertPositionTo("relative",{top:k,left:0}).top-n.margins.top),f&&(c.position.left=n._convertPositionTo("relative",{top:0,left:h-n.helperProportions.width}).left-n.margins.left),g&&(c.position.left=n._convertPositionTo("relative",{top:0,left:i}).left-n.margins.left)),m=d||e||f||g,"outer"!==o.snapMode&&(d=Math.abs(j-s)<=p,e=Math.abs(k-t)<=p,f=Math.abs(h-q)<=p,g=Math.abs(i-r)<=p,d&&(c.position.top=n._convertPositionTo("relative",{top:j,left:0}).top-n.margins.top),e&&(c.position.top=n._convertPositionTo("relative",{top:k-n.helperProportions.height,left:0}).top-n.margins.top),f&&(c.position.left=n._convertPositionTo("relative",{top:0,left:h}).left-n.margins.left),g&&(c.position.left=n._convertPositionTo("relative",{top:0,left:i-n.helperProportions.width}).left-n.margins.left)),!n.snapElements[l].snapping&&(d||e||f||g||m)&&n.options.snap.snap&&n.options.snap.snap.call(n.element,b,a.extend(n._uiHash(),{snapItem:n.snapElements[l].item})),n.snapElements[l].snapping=d||e||f||g||m)}}),a.ui.plugin.add("draggable","stack",{start:function(){var b,c=this.data("ui-draggable").options,d=a.makeArray(a(c.stack)).sort(function(b,c){return(parseInt(a(b).css("zIndex"),10)||0)-(parseInt(a(c).css("zIndex"),10)||0)});d.length&&(b=parseInt(a(d[0]).css("zIndex"),10)||0,a(d).each(function(c){a(this).css("zIndex",b+c)}),this.css("zIndex",b+d.length))}}),a.ui.plugin.add("draggable","zIndex",{start:function(b,c){var d=a(c.helper),e=a(this).data("ui-draggable").options;d.css("zIndex")&&(e._zIndex=d.css("zIndex")),d.css("zIndex",e.zIndex)},stop:function(b,c){var d=a(this).data("ui-draggable").options;d._zIndex&&a(c.helper).css("zIndex",d._zIndex)}})}(jQuery),function(a){function b(a,b,c){return a>b&&b+c>a}a.widget("ui.droppable",{version:"1.10.3",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var b=this.options,c=b.accept;this.isover=!1,this.isout=!0,this.accept=a.isFunction(c)?c:function(a){return a.is(c)},this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight},a.ui.ddmanager.droppables[b.scope]=a.ui.ddmanager.droppables[b.scope]||[],a.ui.ddmanager.droppables[b.scope].push(this),b.addClasses&&this.element.addClass("ui-droppable")},_destroy:function(){for(var b=0,c=a.ui.ddmanager.droppables[this.options.scope];b=k&&l>=h&&i>=m&&n>=j;case"intersect":return k=m&&n>=i||j>=m&&n>=j||m>i&&j>n)&&(g>=k&&l>=g||h>=k&&l>=h||k>g&&h>l);default:return!1}},a.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(b,c){var d,e,f=a.ui.ddmanager.droppables[b.options.scope]||[],g=c?c.type:null,h=(b.currentItem||b.element).find(":data(ui-droppable)").addBack();a:for(d=0;d
    ").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.data("ui-resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=h.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),b=this.handles.split(","),this.handles={},c=0;c
    "),e.css({zIndex:h.zIndex}),"se"===d&&e.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[d]=".ui-resizable-"+d,this.element.append(e);this._renderAxis=function(b){var c,d,e,f;b=b||this.element;for(c in this.handles)this.handles[c].constructor===String&&(this.handles[c]=a(this.handles[c],this.element).show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(d=a(this.handles[c],this.element),f=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth(),e=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join(""),b.css(e,f),this._proportionallyResize()),a(this.handles[c]).length},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){g.resizing||(this.className&&(e=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),g.axis=e&&e[1]?e[1]:"se")}),h.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").mouseenter(function(){h.disabled||(a(this).removeClass("ui-resizable-autohide"),g._handles.show())}).mouseleave(function(){h.disabled||g.resizing||(a(this).addClass("ui-resizable-autohide"),g._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var b,c=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(c(this.element),b=this.element,this.originalElement.css({position:b.css("position"),width:b.outerWidth(),height:b.outerHeight(),top:b.css("top"),left:b.css("left")}).insertAfter(b),b.remove()),this.originalElement.css("resize",this.originalResizeStyle),c(this.originalElement),this},_mouseCapture:function(b){var c,d,e=!1;for(c in this.handles)d=a(this.handles[c])[0],(d===b.target||a.contains(d,b.target))&&(e=!0);return!this.options.disabled&&e},_mouseStart:function(c){var d,e,f,g=this.options,h=this.element.position(),i=this.element;return this.resizing=!0,/absolute/.test(i.css("position"))?i.css({position:"absolute",top:i.css("top"),left:i.css("left")}):i.is(".ui-draggable")&&i.css({position:"absolute",top:h.top,left:h.left}),this._renderProxy(),d=b(this.helper.css("left")),e=b(this.helper.css("top")),g.containment&&(d+=a(g.containment).scrollLeft()||0,e+=a(g.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:d,top:e},this.size=this._helper?{width:i.outerWidth(),height:i.outerHeight()}:{width:i.width(),height:i.height()},this.originalSize=this._helper?{width:i.outerWidth(),height:i.outerHeight()}:{width:i.width(),height:i.height()},this.originalPosition={left:d,top:e},this.sizeDiff={width:i.outerWidth()-i.width(),height:i.outerHeight()-i.height()},this.originalMousePosition={left:c.pageX,top:c.pageY},this.aspectRatio="number"==typeof g.aspectRatio?g.aspectRatio:this.originalSize.width/this.originalSize.height||1,f=a(".ui-resizable-"+this.axis).css("cursor"),a("body").css("cursor","auto"===f?this.axis+"-resize":f),i.addClass("ui-resizable-resizing"),this._propagate("start",c),!0},_mouseDrag:function(b){var c,d=this.helper,e={},f=this.originalMousePosition,g=this.axis,h=this.position.top,i=this.position.left,j=this.size.width,k=this.size.height,l=b.pageX-f.left||0,m=b.pageY-f.top||0,n=this._change[g];return n?(c=n.apply(this,[b,l,m]),this._updateVirtualBoundaries(b.shiftKey),(this._aspectRatio||b.shiftKey)&&(c=this._updateRatio(c,b)),c=this._respectSize(c,b),this._updateCache(c),this._propagate("resize",b),this.position.top!==h&&(e.top=this.position.top+"px"),this.position.left!==i&&(e.left=this.position.left+"px"),this.size.width!==j&&(e.width=this.size.width+"px"),this.size.height!==k&&(e.height=this.size.height+"px"),d.css(e),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),a.isEmptyObject(e)||this._trigger("resize",b,this.ui()),!1):!1},_mouseStop:function(b){this.resizing=!1;var c,d,e,f,g,h,i,j=this.options,k=this;return this._helper&&(c=this._proportionallyResizeElements,d=c.length&&/textarea/i.test(c[0].nodeName),e=d&&a.ui.hasScroll(c[0],"left")?0:k.sizeDiff.height,f=d?0:k.sizeDiff.width,g={width:k.helper.width()-f,height:k.helper.height()-e},h=parseInt(k.element.css("left"),10)+(k.position.left-k.originalPosition.left)||null,i=parseInt(k.element.css("top"),10)+(k.position.top-k.originalPosition.top)||null,j.animate||this.element.css(a.extend(g,{top:i,left:h})),k.helper.height(k.size.height),k.helper.width(k.size.width),this._helper&&!j.animate&&this._proportionallyResize()),a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove(),!1},_updateVirtualBoundaries:function(a){var b,d,e,f,g,h=this.options;g={minWidth:c(h.minWidth)?h.minWidth:0,maxWidth:c(h.maxWidth)?h.maxWidth:1/0,minHeight:c(h.minHeight)?h.minHeight:0,maxHeight:c(h.maxHeight)?h.maxHeight:1/0},(this._aspectRatio||a)&&(b=g.minHeight*this.aspectRatio,e=g.minWidth/this.aspectRatio,d=g.maxHeight*this.aspectRatio,f=g.maxWidth/this.aspectRatio,b>g.minWidth&&(g.minWidth=b),e>g.minHeight&&(g.minHeight=e),da.width,h=c(a.height)&&b.minHeight&&b.minHeight>a.height,i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,k=/sw|nw|w/.test(d),l=/nw|ne|n/.test(d);return g&&(a.width=b.minWidth),h&&(a.height=b.minHeight),e&&(a.width=b.maxWidth),f&&(a.height=b.maxHeight),g&&k&&(a.left=i-b.minWidth),e&&k&&(a.left=i-b.maxWidth),h&&l&&(a.top=j-b.minHeight),f&&l&&(a.top=j-b.maxHeight),a.width||a.height||a.left||!a.top?a.width||a.height||a.top||!a.left||(a.left=null):a.top=null,a},_proportionallyResize:function(){if(this._proportionallyResizeElements.length){var a,b,c,d,e,f=this.helper||this.element;for(a=0;a
    "),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(a,b){return{width:this.originalSize.width+b}},w:function(a,b){var c=this.originalSize,d=this.originalPosition;return{left:d.left+b,width:c.width-b}},n:function(a,b,c){var d=this.originalSize,e=this.originalPosition;return{top:e.top+c,height:d.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),"resize"!==b&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.ui.plugin.add("resizable","animate",{stop:function(b){var c=a(this).data("ui-resizable"),d=c.options,e=c._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:c.sizeDiff.height,h=f?0:c.sizeDiff.width,i={width:c.size.width-h,height:c.size.height-g},j=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null,k=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;c.element.animate(a.extend(i,k&&j?{top:k,left:j}:{}),{duration:d.animateDuration,easing:d.animateEasing,step:function(){var d={width:parseInt(c.element.css("width"),10),height:parseInt(c.element.css("height"),10),top:parseInt(c.element.css("top"),10),left:parseInt(c.element.css("left"),10)};e&&e.length&&a(e[0]).css({width:d.width,height:d.height}),c._updateCache(d),c._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(){var c,d,e,f,g,h,i,j=a(this).data("ui-resizable"),k=j.options,l=j.element,m=k.containment,n=m instanceof a?m.get(0):/parent/.test(m)?l.parent().get(0):m;n&&(j.containerElement=a(n),/document/.test(m)||m===document?(j.containerOffset={left:0,top:0},j.containerPosition={left:0,top:0},j.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight}):(c=a(n),d=[],a(["Top","Right","Left","Bottom"]).each(function(a,e){d[a]=b(c.css("padding"+e))}),j.containerOffset=c.offset(),j.containerPosition=c.position(),j.containerSize={height:c.innerHeight()-d[3],width:c.innerWidth()-d[1]},e=j.containerOffset,f=j.containerSize.height,g=j.containerSize.width,h=a.ui.hasScroll(n,"left")?n.scrollWidth:g,i=a.ui.hasScroll(n)?n.scrollHeight:f,j.parentData={element:n,left:e.left,top:e.top,width:h,height:i}))},resize:function(b){var c,d,e,f,g=a(this).data("ui-resizable"),h=g.options,i=g.containerOffset,j=g.position,k=g._aspectRatio||b.shiftKey,l={top:0,left:0},m=g.containerElement;m[0]!==document&&/static/.test(m.css("position"))&&(l=i),j.left<(g._helper?i.left:0)&&(g.size.width=g.size.width+(g._helper?g.position.left-i.left:g.position.left-l.left),k&&(g.size.height=g.size.width/g.aspectRatio),g.position.left=h.helper?i.left:0),j.top<(g._helper?i.top:0)&&(g.size.height=g.size.height+(g._helper?g.position.top-i.top:g.position.top),k&&(g.size.width=g.size.height*g.aspectRatio),g.position.top=g._helper?i.top:0),g.offset.left=g.parentData.left+g.position.left,g.offset.top=g.parentData.top+g.position.top,c=Math.abs((g._helper?g.offset.left-l.left:g.offset.left-l.left)+g.sizeDiff.width),d=Math.abs((g._helper?g.offset.top-l.top:g.offset.top-i.top)+g.sizeDiff.height),e=g.containerElement.get(0)===g.element.parent().get(0),f=/relative|absolute/.test(g.containerElement.css("position")),e&&f&&(c-=g.parentData.left),c+g.size.width>=g.parentData.width&&(g.size.width=g.parentData.width-c,k&&(g.size.height=g.size.width/g.aspectRatio)),d+g.size.height>=g.parentData.height&&(g.size.height=g.parentData.height-d,k&&(g.size.width=g.size.height*g.aspectRatio))},stop:function(){var b=a(this).data("ui-resizable"),c=b.options,d=b.containerOffset,e=b.containerPosition,f=b.containerElement,g=a(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width,j=g.outerHeight()-b.sizeDiff.height;b._helper&&!c.animate&&/relative/.test(f.css("position"))&&a(this).css({left:h.left-e.left-d.left,width:i,height:j}),b._helper&&!c.animate&&/static/.test(f.css("position"))&&a(this).css({left:h.left-e.left-d.left,width:i,height:j})}}),a.ui.plugin.add("resizable","alsoResize",{start:function(){var b=a(this).data("ui-resizable"),c=b.options,d=function(b){a(b).each(function(){var b=a(this);b.data("ui-resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};"object"!=typeof c.alsoResize||c.alsoResize.parentNode?d(c.alsoResize):c.alsoResize.length?(c.alsoResize=c.alsoResize[0],d(c.alsoResize)):a.each(c.alsoResize,function(a){d(a)})},resize:function(b,c){var d=a(this).data("ui-resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("ui-resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};"object"!=typeof e.alsoResize||e.alsoResize.nodeType?i(e.alsoResize):a.each(e.alsoResize,function(a,b){i(a,b)})},stop:function(){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","ghost",{start:function(){var b=a(this).data("ui-resizable"),c=b.options,d=b.size;b.ghost=b.originalElement.clone(),b.ghost.css({opacity:.25,display:"block",position:"relative",height:d.height,width:d.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof c.ghost?c.ghost:""),b.ghost.appendTo(b.helper)},resize:function(){var b=a(this).data("ui-resizable");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=a(this).data("ui-resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(){var b=a(this).data("ui-resizable"),c=b.options,d=b.size,e=b.originalSize,f=b.originalPosition,g=b.axis,h="number"==typeof c.grid?[c.grid,c.grid]:c.grid,i=h[0]||1,j=h[1]||1,k=Math.round((d.width-e.width)/i)*i,l=Math.round((d.height-e.height)/j)*j,m=e.width+k,n=e.height+l,o=c.maxWidth&&c.maxWidthm,r=c.minHeight&&c.minHeight>n;c.grid=h,q&&(m+=i),r&&(n+=j),o&&(m-=i),p&&(n-=j),/^(se|s|e)$/.test(g)?(b.size.width=m,b.size.height=n):/^(ne)$/.test(g)?(b.size.width=m,b.size.height=n,b.position.top=f.top-l):/^(sw)$/.test(g)?(b.size.width=m,b.size.height=n,b.position.left=f.left-k):(b.size.width=m,b.size.height=n,b.position.top=f.top-l,b.position.left=f.left-k)}})}(jQuery),function(a){a.widget("ui.selectable",a.ui.mouse,{version:"1.10.3",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var b,c=this;this.element.addClass("ui-selectable"),this.dragged=!1,this.refresh=function(){b=a(c.options.filter,c.element[0]),b.addClass("ui-selectee"),b.each(function(){var b=a(this),c=b.offset();a.data(this,"selectable-item",{element:this,$element:b,left:c.left,top:c.top,right:c.left+b.outerWidth(),bottom:c.top+b.outerHeight(),startselected:!1,selected:b.hasClass("ui-selected"),selecting:b.hasClass("ui-selecting"),unselecting:b.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=b.addClass("ui-selectee"),this._mouseInit(),this.helper=a("
    ")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled"),this._mouseDestroy()},_mouseStart:function(b){var c=this,d=this.options;this.opos=[b.pageX,b.pageY],this.options.disabled||(this.selectees=a(d.filter,this.element[0]),this._trigger("start",b),a(d.appendTo).append(this.helper),this.helper.css({left:b.pageX,top:b.pageY,width:0,height:0}),d.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var d=a.data(this,"selectable-item");d.startselected=!0,b.metaKey||b.ctrlKey||(d.$element.removeClass("ui-selected"),d.selected=!1,d.$element.addClass("ui-unselecting"),d.unselecting=!0,c._trigger("unselecting",b,{unselecting:d.element}))}),a(b.target).parents().addBack().each(function(){var d,e=a.data(this,"selectable-item");return e?(d=!b.metaKey&&!b.ctrlKey||!e.$element.hasClass("ui-selected"),e.$element.removeClass(d?"ui-unselecting":"ui-selected").addClass(d?"ui-selecting":"ui-unselecting"),e.unselecting=!d,e.selecting=d,e.selected=d,d?c._trigger("selecting",b,{selecting:e.element}):c._trigger("unselecting",b,{unselecting:e.element}),!1):void 0}))},_mouseDrag:function(b){if(this.dragged=!0,!this.options.disabled){var c,d=this,e=this.options,f=this.opos[0],g=this.opos[1],h=b.pageX,i=b.pageY;return f>h&&(c=h,h=f,f=c),g>i&&(c=i,i=g,g=c),this.helper.css({left:f,top:g,width:h-f,height:i-g}),this.selectees.each(function(){var c=a.data(this,"selectable-item"),j=!1;c&&c.element!==d.element[0]&&("touch"===e.tolerance?j=!(c.left>h||c.righti||c.bottomf&&c.rightg&&c.bottomb&&b+c>a}function c(a){return/left|right/.test(a.css("float"))||/inline|table-cell/.test(a.css("display"))}a.widget("ui.sortable",a.ui.mouse,{version:"1.10.3",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_create:function(){var a=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?"x"===a.axis||c(this.items[0].item):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData(this.widgetName+"-item");return this},_setOption:function(b,c){"disabled"===b?(this.options[b]=c,this.widget().toggleClass("ui-sortable-disabled",!!c)):a.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(b,c){var d=null,e=!1,f=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(b),a(b.target).parents().each(function(){return a.data(this,f.widgetName+"-item")===f?(d=a(this),!1):void 0}),a.data(b.target,f.widgetName+"-item")===f&&(d=a(b.target)),d&&(!this.options.handle||c||(a(this.options.handle,d).find("*").addBack().each(function(){this===b.target&&(e=!0)}),e))?(this.currentItem=d,this._removeCurrentsFromItems(),!0):!1)},_mouseStart:function(b,c,d){var e,f,g=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(b),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,g.cursorAt&&this._adjustOffsetFromHelper(g.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),g.containment&&this._setContainment(),g.cursor&&"auto"!==g.cursor&&(f=this.document.find("body"),this.storedCursor=f.css("cursor"),f.css("cursor",g.cursor),this.storedStylesheet=a("").appendTo(f)),g.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",g.opacity)),g.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",g.zIndex)),this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",b,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!d)for(e=this.containers.length-1;e>=0;e--)this.containers[e]._trigger("activate",b,this._uiHash(this)); -return a.ui.ddmanager&&(a.ui.ddmanager.current=this),a.ui.ddmanager&&!g.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(b),!0},_mouseDrag:function(b){var c,d,e,f,g=this.options,h=!1;for(this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-b.pageY=0;c--)if(d=this.items[c],e=d.item[0],f=this._intersectsWithPointer(d),f&&d.instance===this.currentContainer&&e!==this.currentItem[0]&&this.placeholder[1===f?"next":"prev"]()[0]!==e&&!a.contains(this.placeholder[0],e)&&("semi-dynamic"===this.options.type?!a.contains(this.element[0],e):!0)){if(this.direction=1===f?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(d))break;this._rearrange(b,d),this._trigger("change",b,this._uiHash());break}return this._contactContainers(b),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),this._trigger("sort",b,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(b,c){if(b){if(a.ui.ddmanager&&!this.options.dropBehaviour&&a.ui.ddmanager.drop(this,b),this.options.revert){var d=this,e=this.placeholder.offset(),f=this.options.axis,g={};f&&"x"!==f||(g.left=e.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft)),f&&"y"!==f||(g.top=e.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop)),this.reverting=!0,a(this.helper).animate(g,parseInt(this.options.revert,10)||500,function(){d._clear(b)})}else this._clear(b,c);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null}),"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--)this.containers[b]._trigger("deactivate",null,this._uiHash(this)),this.containers[b].containerCache.over&&(this.containers[b]._trigger("out",null,this._uiHash(this)),this.containers[b].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),a.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?a(this.domPosition.prev).after(this.currentItem):a(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},a(c).each(function(){var c=(a(b.item||this).attr(b.attribute||"id")||"").match(b.expression||/(.+)[\-=_](.+)/);c&&d.push((b.key||c[1]+"[]")+"="+(b.key&&b.expression?c[1]:c[2]))}),!d.length&&b.key&&d.push(b.key+"="),d.join("&")},toArray:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},c.each(function(){d.push(a(b.item||this).attr(b.attribute||"id")||"")}),d},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,d=this.positionAbs.top,e=d+this.helperProportions.height,f=a.left,g=f+a.width,h=a.top,i=h+a.height,j=this.offset.click.top,k=this.offset.click.left,l="x"===this.options.axis||d+j>h&&i>d+j,m="y"===this.options.axis||b+k>f&&g>b+k,n=l&&m;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?n:f0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return 0!==a&&(a>0?"right":"left")},refresh:function(a){return this._refreshItems(a),this.refreshPositions(),this},_connectWith:function(){var a=this.options;return a.connectWith.constructor===String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(b){var c,d,e,f,g=[],h=[],i=this._connectWith();if(i&&b)for(c=i.length-1;c>=0;c--)for(e=a(i[c]),d=e.length-1;d>=0;d--)f=a.data(e[d],this.widgetFullName),f&&f!==this&&!f.options.disabled&&h.push([a.isFunction(f.options.items)?f.options.items.call(f.element):a(f.options.items,f.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),f]);for(h.push([a.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):a(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),c=h.length-1;c>=0;c--)h[c][0].each(function(){g.push(this)});return a(g)},_removeCurrentsFromItems:function(){var b=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=a.grep(this.items,function(a){for(var c=0;c=0;c--)for(e=a(m[c]),d=e.length-1;d>=0;d--)f=a.data(e[d],this.widgetFullName),f&&f!==this&&!f.options.disabled&&(l.push([a.isFunction(f.options.items)?f.options.items.call(f.element[0],b,{item:this.currentItem}):a(f.options.items,f.element),f]),this.containers.push(f));for(c=l.length-1;c>=0;c--)for(g=l[c][1],h=l[c][0],d=0,j=h.length;j>d;d++)i=a(h[d]),i.data(this.widgetName+"-item",g),k.push({item:i,instance:g,width:0,height:0,left:0,top:0})},refreshPositions:function(b){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());var c,d,e,f;for(c=this.items.length-1;c>=0;c--)d=this.items[c],d.instance!==this.currentContainer&&this.currentContainer&&d.item[0]!==this.currentItem[0]||(e=this.options.toleranceElement?a(this.options.toleranceElement,d.item):d.item,b||(d.width=e.outerWidth(),d.height=e.outerHeight()),f=e.offset(),d.left=f.left,d.top=f.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(c=this.containers.length-1;c>=0;c--)f=this.containers[c].element.offset(),this.containers[c].containerCache.left=f.left,this.containers[c].containerCache.top=f.top,this.containers[c].containerCache.width=this.containers[c].element.outerWidth(),this.containers[c].containerCache.height=this.containers[c].element.outerHeight();return this},_createPlaceholder:function(b){b=b||this;var c,d=b.options;d.placeholder&&d.placeholder.constructor!==String||(c=d.placeholder,d.placeholder={element:function(){var d=b.currentItem[0].nodeName.toLowerCase(),e=a("<"+d+">",b.document[0]).addClass(c||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tr"===d?b.currentItem.children().each(function(){a(" ",b.document[0]).attr("colspan",a(this).attr("colspan")||1).appendTo(e)}):"img"===d&&e.attr("src",b.currentItem.attr("src")),c||e.css("visibility","hidden"),e},update:function(a,e){(!c||d.forcePlaceholderSize)&&(e.height()||e.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10)),e.width()||e.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")||0,10)))}}),b.placeholder=a(d.placeholder.element.call(b.element,b.currentItem)),b.currentItem.after(b.placeholder),d.placeholder.update(b,b.placeholder)},_contactContainers:function(d){var e,f,g,h,i,j,k,l,m,n,o=null,p=null;for(e=this.containers.length-1;e>=0;e--)if(!a.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(o&&a.contains(this.containers[e].element[0],o.element[0]))continue;o=this.containers[e],p=e}else this.containers[e].containerCache.over&&(this.containers[e]._trigger("out",d,this._uiHash(this)),this.containers[e].containerCache.over=0);if(o)if(1===this.containers.length)this.containers[p].containerCache.over||(this.containers[p]._trigger("over",d,this._uiHash(this)),this.containers[p].containerCache.over=1);else{for(g=1e4,h=null,n=o.floating||c(this.currentItem),i=n?"left":"top",j=n?"width":"height",k=this.positionAbs[i]+this.offset.click[i],f=this.items.length-1;f>=0;f--)a.contains(this.containers[p].element[0],this.items[f].item[0])&&this.items[f].item[0]!==this.currentItem[0]&&(!n||b(this.positionAbs.top+this.offset.click.top,this.items[f].top,this.items[f].height))&&(l=this.items[f].item.offset()[i],m=!1,Math.abs(l-k)>Math.abs(l+this.items[f][j]-k)&&(m=!0,l+=this.items[f][j]),Math.abs(l-k)this.containment[2]&&(f=this.containment[2]+this.offset.click.left),b.pageY-this.offset.click.top>this.containment[3]&&(g=this.containment[3]+this.offset.click.top)),e.grid&&(c=this.originalPageY+Math.round((g-this.originalPageY)/e.grid[1])*e.grid[1],g=this.containment?c-this.offset.click.top>=this.containment[1]&&c-this.offset.click.top<=this.containment[3]?c:c-this.offset.click.top>=this.containment[1]?c-e.grid[1]:c+e.grid[1]:c,d=this.originalPageX+Math.round((f-this.originalPageX)/e.grid[0])*e.grid[0],f=this.containment?d-this.offset.click.left>=this.containment[0]&&d-this.offset.click.left<=this.containment[2]?d:d-this.offset.click.left>=this.containment[0]?d-e.grid[0]:d+e.grid[0]:d)),{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():i?0:h.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():i?0:h.scrollLeft())}},_rearrange:function(a,b,c,d){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?b.item[0]:b.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var e=this.counter;this._delay(function(){e===this.counter&&this.refreshPositions(!d)})},_clear:function(a,b){this.reverting=!1;var c,d=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(c in this._storedCSS)("auto"===this._storedCSS[c]||"static"===this._storedCSS[c])&&(this._storedCSS[c]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!b&&d.push(function(a){this._trigger("receive",a,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||b||d.push(function(a){this._trigger("update",a,this._uiHash())}),this!==this.currentContainer&&(b||(d.push(function(a){this._trigger("remove",a,this._uiHash())}),d.push(function(a){return function(b){a._trigger("receive",b,this._uiHash(this))}}.call(this,this.currentContainer)),d.push(function(a){return function(b){a._trigger("update",b,this._uiHash(this))}}.call(this,this.currentContainer)))),c=this.containers.length-1;c>=0;c--)b||d.push(function(a){return function(b){a._trigger("deactivate",b,this._uiHash(this))}}.call(this,this.containers[c])),this.containers[c].containerCache.over&&(d.push(function(a){return function(b){a._trigger("out",b,this._uiHash(this))}}.call(this,this.containers[c])),this.containers[c].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,this.cancelHelperRemoval){if(!b){for(this._trigger("beforeStop",a,this._uiHash()),c=0;c0?n:b,null,"fast",j,null),this.move(n.length>0&&!j.multiple?n:[],a.parent("[jqyoui-droppable]"),jqyoui.startXY,"fast",j,function(){$timeout(function(){a.css({position:"relative",left:"",top:""}),n.css({position:"relative",left:"",top:""}),i.mutate!==!1&&this.mutateDraggable(p,j,i,g,h,m,a),j.mutate!==!1&&this.mutateDroppable(o,j,i,h,l,k),this.callEventCallback(o,j.onDrop,c,d,q)}.bind(this))}.bind(this))):$timeout(function(){i.mutate!==!1&&this.mutateDraggable(p,j,i,g,h,m,a),j.mutate!==!1&&this.mutateDroppable(o,j,i,h,l,k),this.callEventCallback(o,j.onDrop,c,d,q)}.bind(this))},this.move=function(a,b,c,d,e,f){if(0===a.length)return f&&window.setTimeout(function(){f()},300),!1;var g=9999,h=a.offset(),i=b&&b.is(":visible");null===c&&b.length>0&&(b.attr("jqyoui-draggable")!==undefined&&b.ngattr("ng-model")!==undefined&&b.is(":visible")&&e&&e.multiple?(c=b.offset(),e.stack===!1?c.left+=b.outerWidth(!0):c.top+=b.outerHeight(!0)):(c=b.css({visibility:"hidden",display:"block"}).offset(),b.css({visibility:"",display:i?"":"none"}))),a.css({position:"absolute","z-index":g}).css(h).animate(c,d,function(){f&&f()})},this.mutateDroppable=function(a,b,c,d,e,f){var g=a.$eval(d);a.__dragItem=e,angular.isArray(g)?(b&&b.index>=0?g[b.index]=e:g.push(e),c&&c.placeholder===!0&&(g[g.length-1].jqyoui_pos=f)):($parse(d+" = __dragItem")(a),c&&c.placeholder===!0&&(g.jqyoui_pos=f))},this.mutateDraggable=function(a,b,c,d,e,f,g){var h=angular.equals(angular.copy(f),{}),i=a.$eval(d);a.__dropItem=f,c&&c.placeholder?"keep"!=c.placeholder&&(angular.isArray(i)&&c.index!==undefined?i[c.index]=f:$parse(d+" = __dropItem")(a)):angular.isArray(i)?h?c&&c.placeholder!==!0&&"keep"!==c.placeholder&&i.splice(c.index,1):i[c.index]=f:($parse(d+" = __dropItem")(a),a.$parent&&$parse(d+" = __dropItem")(a.$parent)),g.css({"z-index":"",left:"",top:""})},this.fixIndex=function(a,b,c){if(b.applyFilter&&angular.isArray(c)&&c.length>0){var d=a[b.applyFilter](),e=d[b.index],f=undefined;return c.forEach(function(a,b){angular.equals(a,e)&&(f=b)}),f}return b.index}}]).directive("jqyouiDraggable",["ngDragDropService",function(a){return{require:"?jqyouiDroppable",restrict:"A",link:function(b,c,d){var e,f,g=function(g){g?(e=b.$eval(c.attr("jqyoui-draggable"))||[],c.draggable({disabled:!1}).draggable(b.$eval(d.jqyouiOptions)||{}).draggable({start:function(c,d){f=angular.element(this).css("z-index"),angular.element(this).css("z-index",99999),jqyoui.startXY=angular.element(this).offset(),a.callEventCallback(b,e.onStart,c,d)},stop:function(c,d){angular.element(this).css("z-index",f),a.callEventCallback(b,e.onStop,c,d)},drag:function(c,d){a.callEventCallback(b,e.onDrag,c,d)}})):c.draggable({disabled:!0})};b.$watch(function(){return b.$eval(d.drag)},g),g()}}}]).directive("jqyouiDroppable",["ngDragDropService",function(a){return{restrict:"A",priority:1,link:function(b,c,d){var e=function(e){e?c.droppable({disabled:!1}).droppable(b.$eval(d.jqyouiOptions)||{}).droppable({over:function(c,d){var e=b.$eval(angular.element(this).attr("jqyoui-droppable"))||[];a.callEventCallback(b,e.onOver,c,d)},out:function(c,d){var e=b.$eval(angular.element(this).attr("jqyoui-droppable"))||[];a.callEventCallback(b,e.onOut,c,d)},drop:function(c,e){angular.element(e.draggable).ngattr("ng-model")&&d.ngModel?a.invokeDrop(angular.element(e.draggable),angular.element(this),c,e):a.callEventCallback(b,(b.$eval(angular.element(this).attr("jqyoui-droppable"))||[]).onDrop,c,e)}}):c.droppable({disabled:!0})};b.$watch(function(){return b.$eval(d.drop)},e),e()}}}]);$.fn.ngattr=function(a){var b=angular.element(this).get(0);return b.getAttribute(a)||b.getAttribute("data-"+a)}}(window,window.angular),define("angular-dragdrop",function(){}),define("extend-jquery",["jquery"],function(a){var b=a(window);return a.fn.place_tt=function(){var c={offset:5,css:{position:"absolute",top:-1e3,left:0,color:"#c8c8c8",padding:"10px","font-size":"11pt","font-weight":200,"background-color":"#1f1f1f","border-radius":"5px","z-index":9999}};return function(d,e,f){return f=a.extend(!0,{},c,f),this.each(function(){var c,g,h=a(this);h.css(f.css),a.contains(document.body,h[0])||h.appendTo(document.body),c=h.outerWidth(!0),g=h.outerHeight(!0),h.css("left",d+f.offset+c>b.width()?d-f.offset-c:d+f.offset),h.css("top",e+f.offset+g>b.height()?e-f.offset-g:e+f.offset)})}}(),a}),angular.module("pasvaz.bindonce",[]).directive("bindonce",function(){var a=function(a){if(a&&0!==a.length){var b=angular.lowercase(""+a);a=!("f"==b||"0"==b||"false"==b||"no"==b||"n"==b||"[]"==b)}else a=!1;return a},b=parseInt((/msie (\d+)/.exec(angular.lowercase(navigator.userAgent))||[])[1],10);isNaN(b)&&(b=parseInt((/trident\/.*; rv:(\d+)/.exec(angular.lowercase(navigator.userAgent))||[])[1],10));var c={restrict:"AM",controller:["$scope","$element","$attrs","$interpolate",function(c,d,e,f){var g=function(b,c,d){var e="show"==c?"":"none",f="hide"==c?"":"none";b.css("display",a(d)?e:f)},h=function(a,b){if(angular.isObject(b)&&!angular.isArray(b)){var c=[];angular.forEach(b,function(a,b){a&&c.push(b)}),b=c}b&&a.addClass(angular.isArray(b)?b.join(" "):b)},i={watcherRemover:void 0,binders:[],group:e.boName,element:d,ran:!1,addBinder:function(a){this.binders.push(a),this.ran&&this.runBinders()},setupWatcher:function(a){var b=this;this.watcherRemover=c.$watch(a,function(a){void 0!=a&&(b.removeWatcher(),b.runBinders())},!0)},removeWatcher:function(){void 0!=this.watcherRemover&&(this.watcherRemover(),this.watcherRemover=void 0)},runBinders:function(){var c,d;for(c=0,d=this.binders.length;d>c;c++){var e=this.binders[c];if(!this.group||this.group==e.group){var i=e.scope.$eval(e.interpolate?f(e.value):e.value);switch(e.attr){case"if":a(i)&&e.transclude(e.scope.$new(),function(a){var b=e.element.parent(),c=e.element&&e.element[e.element.length-1],d=b&&b[0]||c&&c.parentNode,f=c&&c.nextSibling||null;angular.forEach(a,function(a){d.insertBefore(a,f)})});break;case"hide":case"show":g(e.element,e.attr,i);break;case"class":h(e.element,i);break;case"text":e.element.text(i);break;case"html":e.element.html(i);break;case"style":e.element.css(i);break;case"src":e.element.attr(e.attr,i),b&&e.element.prop("src",i);case"attr":angular.forEach(e.attrs,function(a,b){var c,d;b.match(/^boAttr./)&&e.attrs[b]&&(c=b.replace(/^boAttr/,"").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),d=e.scope.$eval(e.attrs[b]),e.element.attr(c,d))});break;case"href":case"alt":case"title":case"id":case"value":e.element.attr(e.attr,i)}}}this.ran=!0,this.binders=[]}};return i}],link:function(a,b,c,d){var e=c.bindonce?a.$eval(c.bindonce):!0;void 0!=e?d.runBinders():(d.setupWatcher(c.bindonce),b.bind("$destroy",d.removeWatcher))}};return c}),angular.forEach([{directiveName:"boShow",attribute:"show"},{directiveName:"boIf",attribute:"if",transclude:"element",terminal:!0,priority:1e3},{directiveName:"boHide",attribute:"hide"},{directiveName:"boClass",attribute:"class"},{directiveName:"boText",attribute:"text"},{directiveName:"boHtml",attribute:"html"},{directiveName:"boSrcI",attribute:"src",interpolate:!0},{directiveName:"boSrc",attribute:"src"},{directiveName:"boHrefI",attribute:"href",interpolate:!0},{directiveName:"boHref",attribute:"href"},{directiveName:"boAlt",attribute:"alt"},{directiveName:"boTitle",attribute:"title"},{directiveName:"boId",attribute:"id"},{directiveName:"boStyle",attribute:"style"},{directiveName:"boValue",attribute:"value"},{directiveName:"boAttr",attribute:"attr"}],function(a){var b=200;return angular.module("pasvaz.bindonce").directive(a.directiveName,function(){var c={priority:a.priority||b,transclude:a.transclude||!1,terminal:a.terminal||!1,require:"^bindonce",compile:function(b,c,d){return function(b,c,e,f){var g=e.boParent;if(g&&f.group!=g){var h=f.element.parent();f=void 0;for(var i;9!=h[0].nodeType&&h.length;){if((i=h.data("$bindonceController"))&&i.group==g){f=i;break}h=h.parent()}if(!f)throw Error("No bindonce controller: "+g)}f.addBinder({element:c,attr:a.attribute,attrs:e,value:e[a.directiveName],interpolate:a.interpolate,group:g,transclude:d,scope:b})}}};return c})}),define("bindonce",function(){}),define("services/alertSrv",["angular","underscore"],function(a,b){var c=a.module("kibana.services");c.service("alertSrv",["$timeout",function(c){var d=this;this.list=[],this.set=function(e,f,g,h){var i={title:e||"",text:f||"",severity:g||"info"},j=a.toJson(i),k=b.map(d.list,function(b){return a.toJson(b)});return b.contains(k,j)&&b.remove(d.list,b.indexOf(k,j)),d.list.push(i),h>0&&c(function(){d.list=b.without(d.list,i)},h),i},this.clear=function(a){d.list=b.without(d.list,a)},this.clearAll=function(){d.list=[]}}])}),function(a){function b(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function c(a,b){return function(c){return k(a.call(this,c),b)}}function d(a,b){return function(c){return this.lang().ordinal(a.call(this,c),b)}}function e(){}function f(a){w(a),h(this,a)}function g(a){var b=q(a),c=b.year||0,d=b.month||0,e=b.week||0,f=b.day||0,g=b.hour||0,h=b.minute||0,i=b.second||0,j=b.millisecond||0;this._milliseconds=+j+1e3*i+6e4*h+36e5*g,this._days=+f+7*e,this._months=+d+12*c,this._data={},this._bubble()}function h(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return b.hasOwnProperty("toString")&&(a.toString=b.toString),b.hasOwnProperty("valueOf")&&(a.valueOf=b.valueOf),a}function i(a){var b,c={};for(b in a)a.hasOwnProperty(b)&&qb.hasOwnProperty(b)&&(c[b]=a[b]);return c}function j(a){return 0>a?Math.ceil(a):Math.floor(a)}function k(a,b,c){for(var d=""+Math.abs(a),e=a>=0;d.lengthd;d++)(c&&a[d]!==b[d]||!c&&s(a[d])!==s(b[d]))&&g++;return g+f}function p(a){if(a){var b=a.toLowerCase().replace(/(.)s$/,"$1");a=Tb[a]||Ub[b]||b}return a}function q(a){var b,c,d={}; -for(c in a)a.hasOwnProperty(c)&&(b=p(c),b&&(d[b]=a[c]));return d}function r(b){var c,d;if(0===b.indexOf("week"))c=7,d="day";else{if(0!==b.indexOf("month"))return;c=12,d="month"}db[b]=function(e,f){var g,h,i=db.fn._lang[b],j=[];if("number"==typeof e&&(f=e,e=a),h=function(a){var b=db().utc().set(d,a);return i.call(db.fn._lang,b,e||"")},null!=f)return h(f);for(g=0;c>g;g++)j.push(h(g));return j}}function s(a){var b=+a,c=0;return 0!==b&&isFinite(b)&&(c=b>=0?Math.floor(b):Math.ceil(b)),c}function t(a,b){return new Date(Date.UTC(a,b+1,0)).getUTCDate()}function u(a){return v(a)?366:365}function v(a){return a%4===0&&a%100!==0||a%400===0}function w(a){var b;a._a&&-2===a._pf.overflow&&(b=a._a[jb]<0||a._a[jb]>11?jb:a._a[kb]<1||a._a[kb]>t(a._a[ib],a._a[jb])?kb:a._a[lb]<0||a._a[lb]>23?lb:a._a[mb]<0||a._a[mb]>59?mb:a._a[nb]<0||a._a[nb]>59?nb:a._a[ob]<0||a._a[ob]>999?ob:-1,a._pf._overflowDayOfYear&&(ib>b||b>kb)&&(b=kb),a._pf.overflow=b)}function x(a){return null==a._isValid&&(a._isValid=!isNaN(a._d.getTime())&&a._pf.overflow<0&&!a._pf.empty&&!a._pf.invalidMonth&&!a._pf.nullInput&&!a._pf.invalidFormat&&!a._pf.userInvalidated,a._strict&&(a._isValid=a._isValid&&0===a._pf.charsLeftOver&&0===a._pf.unusedTokens.length)),a._isValid}function y(a){return a?a.toLowerCase().replace("_","-"):a}function z(a,b){return b._isUTC?db(a).zone(b._offset||0):db(a).local()}function A(a,b){return b.abbr=a,pb[a]||(pb[a]=new e),pb[a].set(b),pb[a]}function B(a){delete pb[a]}function C(a){var b,c,d,e,f=0,g=function(a){if(!pb[a]&&rb)try{require("./lang/"+a)}catch(b){}return pb[a]};if(!a)return db.fn._lang;if(!m(a)){if(c=g(a))return c;a=[a]}for(;f0;){if(c=g(e.slice(0,b).join("-")))return c;if(d&&d.length>=b&&o(e,d,!0)>=b-1)break;b--}f++}return db.fn._lang}function D(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function E(a){var b,c,d=a.match(vb);for(b=0,c=d.length;c>b;b++)d[b]=Yb[d[b]]?Yb[d[b]]:D(d[b]);return function(e){var f="";for(b=0;c>b;b++)f+=d[b]instanceof Function?d[b].call(e,a):d[b];return f}}function F(a,b){return a.isValid()?(b=G(b,a.lang()),Vb[b]||(Vb[b]=E(b)),Vb[b](a)):a.lang().invalidDate()}function G(a,b){function c(a){return b.longDateFormat(a)||a}var d=5;for(wb.lastIndex=0;d>=0&&wb.test(a);)a=a.replace(wb,c),wb.lastIndex=0,d-=1;return a}function H(a,b){var c,d=b._strict;switch(a){case"DDDD":return Ib;case"YYYY":case"GGGG":case"gggg":return d?Jb:zb;case"Y":case"G":case"g":return Lb;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return d?Kb:Ab;case"S":if(d)return Gb;case"SS":if(d)return Hb;case"SSS":if(d)return Ib;case"DDD":return yb;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Cb;case"a":case"A":return C(b._l)._meridiemParse;case"X":return Fb;case"Z":case"ZZ":return Db;case"T":return Eb;case"SSSS":return Bb;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return d?Hb:xb;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return xb;default:return c=new RegExp(P(O(a.replace("\\","")),"i"))}}function I(a){a=a||"";var b=a.match(Db)||[],c=b[b.length-1]||[],d=(c+"").match(Qb)||["-",0,0],e=+(60*d[1])+s(d[2]);return"+"===d[0]?-e:e}function J(a,b,c){var d,e=c._a;switch(a){case"M":case"MM":null!=b&&(e[jb]=s(b)-1);break;case"MMM":case"MMMM":d=C(c._l).monthsParse(b),null!=d?e[jb]=d:c._pf.invalidMonth=b;break;case"D":case"DD":null!=b&&(e[kb]=s(b));break;case"DDD":case"DDDD":null!=b&&(c._dayOfYear=s(b));break;case"YY":e[ib]=s(b)+(s(b)>68?1900:2e3);break;case"YYYY":case"YYYYY":case"YYYYYY":e[ib]=s(b);break;case"a":case"A":c._isPm=C(c._l).isPM(b);break;case"H":case"HH":case"h":case"hh":e[lb]=s(b);break;case"m":case"mm":e[mb]=s(b);break;case"s":case"ss":e[nb]=s(b);break;case"S":case"SS":case"SSS":case"SSSS":e[ob]=s(1e3*("0."+b));break;case"X":c._d=new Date(1e3*parseFloat(b));break;case"Z":case"ZZ":c._useUTC=!0,c._tzm=I(b);break;case"w":case"ww":case"W":case"WW":case"d":case"dd":case"ddd":case"dddd":case"e":case"E":a=a.substr(0,1);case"gg":case"gggg":case"GG":case"GGGG":case"GGGGG":a=a.substr(0,2),b&&(c._w=c._w||{},c._w[a]=b)}}function K(a){var b,c,d,e,f,g,h,i,j,k,l=[];if(!a._d){for(d=M(a),a._w&&null==a._a[kb]&&null==a._a[jb]&&(f=function(b){var c=parseInt(b,10);return b?b.length<3?c>68?1900+c:2e3+c:c:null==a._a[ib]?db().weekYear():a._a[ib]},g=a._w,null!=g.GG||null!=g.W||null!=g.E?h=Z(f(g.GG),g.W||1,g.E,4,1):(i=C(a._l),j=null!=g.d?V(g.d,i):null!=g.e?parseInt(g.e,10)+i._week.dow:0,k=parseInt(g.w,10)||1,null!=g.d&&ju(e)&&(a._pf._overflowDayOfYear=!0),c=U(e,0,a._dayOfYear),a._a[jb]=c.getUTCMonth(),a._a[kb]=c.getUTCDate()),b=0;3>b&&null==a._a[b];++b)a._a[b]=l[b]=d[b];for(;7>b;b++)a._a[b]=l[b]=null==a._a[b]?2===b?1:0:a._a[b];l[lb]+=s((a._tzm||0)/60),l[mb]+=s((a._tzm||0)%60),a._d=(a._useUTC?U:T).apply(null,l)}}function L(a){var b;a._d||(b=q(a._i),a._a=[b.year,b.month,b.day,b.hour,b.minute,b.second,b.millisecond],K(a))}function M(a){var b=new Date;return a._useUTC?[b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate()]:[b.getFullYear(),b.getMonth(),b.getDate()]}function N(a){a._a=[],a._pf.empty=!0;var b,c,d,e,f,g=C(a._l),h=""+a._i,i=h.length,j=0;for(d=G(a._f,g).match(vb)||[],b=0;b0&&a._pf.unusedInput.push(f),h=h.slice(h.indexOf(c)+c.length),j+=c.length),Yb[e]?(c?a._pf.empty=!1:a._pf.unusedTokens.push(e),J(e,c,a)):a._strict&&!c&&a._pf.unusedTokens.push(e);a._pf.charsLeftOver=i-j,h.length>0&&a._pf.unusedInput.push(h),a._isPm&&a._a[lb]<12&&(a._a[lb]+=12),a._isPm===!1&&12===a._a[lb]&&(a._a[lb]=0),K(a),w(a)}function O(a){return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e})}function P(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Q(a){var c,d,e,f,g;if(0===a._f.length)return a._pf.invalidFormat=!0,void(a._d=new Date(0/0));for(f=0;fg)&&(e=g,d=c));h(a,d||c)}function R(a){var b,c,d=a._i,e=Mb.exec(d);if(e){for(a._pf.iso=!0,b=0,c=Ob.length;c>b;b++)if(Ob[b][1].exec(d)){a._f=Ob[b][0]+(e[6]||" ");break}for(b=0,c=Pb.length;c>b;b++)if(Pb[b][1].exec(d)){a._f+=Pb[b][0];break}d.match(Db)&&(a._f+="Z"),N(a)}else a._d=new Date(d)}function S(b){var c=b._i,d=sb.exec(c);c===a?b._d=new Date:d?b._d=new Date(+d[1]):"string"==typeof c?R(b):m(c)?(b._a=c.slice(0),K(b)):n(c)?b._d=new Date(+c):"object"==typeof c?L(b):b._d=new Date(c)}function T(a,b,c,d,e,f,g){var h=new Date(a,b,c,d,e,f,g);return 1970>a&&h.setFullYear(a),h}function U(a){var b=new Date(Date.UTC.apply(null,arguments));return 1970>a&&b.setUTCFullYear(a),b}function V(a,b){if("string"==typeof a)if(isNaN(a)){if(a=b.weekdaysParse(a),"number"!=typeof a)return null}else a=parseInt(a,10);return a}function W(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function X(a,b,c){var d=hb(Math.abs(a)/1e3),e=hb(d/60),f=hb(e/60),g=hb(f/24),h=hb(g/365),i=45>d&&["s",d]||1===e&&["m"]||45>e&&["mm",e]||1===f&&["h"]||22>f&&["hh",f]||1===g&&["d"]||25>=g&&["dd",g]||45>=g&&["M"]||345>g&&["MM",hb(g/30)]||1===h&&["y"]||["yy",h];return i[2]=b,i[3]=a>0,i[4]=c,W.apply({},i)}function Y(a,b,c){var d,e=c-b,f=c-a.day();return f>e&&(f-=7),e-7>f&&(f+=7),d=db(a).add("d",f),{week:Math.ceil(d.dayOfYear()/7),year:d.year()}}function Z(a,b,c,d,e){var f,g,h=U(a,0,1).getUTCDay();return c=null!=c?c:e,f=e-h+(h>d?7:0)-(e>h?7:0),g=7*(b-1)+(c-e)+f+1,{year:g>0?a:a-1,dayOfYear:g>0?g:u(a-1)+g}}function $(a){var b=a._i,c=a._f;return null===b?db.invalid({nullInput:!0}):("string"==typeof b&&(a._i=b=C().preparse(b)),db.isMoment(b)?(a=i(b),a._d=new Date(+b._d)):c?m(c)?Q(a):N(a):S(a),new f(a))}function _(a,b){db.fn[a]=db.fn[a+"s"]=function(a){var c=this._isUTC?"UTC":"";return null!=a?(this._d["set"+c+b](a),db.updateOffset(this),this):this._d["get"+c+b]()}}function ab(a){db.duration.fn[a]=function(){return this._data[a]}}function bb(a,b){db.duration.fn["as"+a]=function(){return+this/b}}function cb(a){var b=!1,c=db;"undefined"==typeof ender&&(a?(gb.moment=function(){return!b&&console&&console.warn&&(b=!0,console.warn("Accessing Moment through the global scope is deprecated, and will be removed in an upcoming release.")),c.apply(null,arguments)},h(gb.moment,c)):gb.moment=db)}for(var db,eb,fb="2.5.1",gb=this,hb=Math.round,ib=0,jb=1,kb=2,lb=3,mb=4,nb=5,ob=6,pb={},qb={_isAMomentObject:null,_i:null,_f:null,_l:null,_strict:null,_isUTC:null,_offset:null,_pf:null,_lang:null},rb="undefined"!=typeof module&&module.exports&&"undefined"!=typeof require,sb=/^\/?Date\((\-?\d+)/i,tb=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ub=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,vb=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g,wb=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,xb=/\d\d?/,yb=/\d{1,3}/,zb=/\d{1,4}/,Ab=/[+\-]?\d{1,6}/,Bb=/\d+/,Cb=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,Db=/Z|[\+\-]\d\d:?\d\d/gi,Eb=/T/i,Fb=/[\+\-]?\d+(\.\d{1,3})?/,Gb=/\d/,Hb=/\d\d/,Ib=/\d{3}/,Jb=/\d{4}/,Kb=/[+-]?\d{6}/,Lb=/[+-]?\d+/,Mb=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Nb="YYYY-MM-DDTHH:mm:ssZ",Ob=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],Pb=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d{1,3}/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],Qb=/([\+\-]|\d\d)/gi,Rb="Date|Hours|Minutes|Seconds|Milliseconds".split("|"),Sb={Milliseconds:1,Seconds:1e3,Minutes:6e4,Hours:36e5,Days:864e5,Months:2592e6,Years:31536e6},Tb={ms:"millisecond",s:"second",m:"minute",h:"hour",d:"day",D:"date",w:"week",W:"isoWeek",M:"month",y:"year",DDD:"dayOfYear",e:"weekday",E:"isoWeekday",gg:"weekYear",GG:"isoWeekYear"},Ub={dayofyear:"dayOfYear",isoweekday:"isoWeekday",isoweek:"isoWeek",weekyear:"weekYear",isoweekyear:"isoWeekYear"},Vb={},Wb="DDD w W M D d".split(" "),Xb="M D H h m s w W".split(" "),Yb={M:function(){return this.month()+1},MMM:function(a){return this.lang().monthsShort(this,a)},MMMM:function(a){return this.lang().months(this,a)},D:function(){return this.date()},DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(a){return this.lang().weekdaysMin(this,a)},ddd:function(a){return this.lang().weekdaysShort(this,a)},dddd:function(a){return this.lang().weekdays(this,a)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return k(this.year()%100,2)},YYYY:function(){return k(this.year(),4)},YYYYY:function(){return k(this.year(),5)},YYYYYY:function(){var a=this.year(),b=a>=0?"+":"-";return b+k(Math.abs(a),6)},gg:function(){return k(this.weekYear()%100,2)},gggg:function(){return k(this.weekYear(),4)},ggggg:function(){return k(this.weekYear(),5)},GG:function(){return k(this.isoWeekYear()%100,2)},GGGG:function(){return k(this.isoWeekYear(),4)},GGGGG:function(){return k(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.lang().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.lang().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return s(this.milliseconds()/100)},SS:function(){return k(s(this.milliseconds()/10),2)},SSS:function(){return k(this.milliseconds(),3)},SSSS:function(){return k(this.milliseconds(),3)},Z:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+k(s(a/60),2)+":"+k(s(a)%60,2)},ZZ:function(){var a=-this.zone(),b="+";return 0>a&&(a=-a,b="-"),b+k(s(a/60),2)+k(s(a)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()},Q:function(){return this.quarter()}},Zb=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];Wb.length;)eb=Wb.pop(),Yb[eb+"o"]=d(Yb[eb],eb);for(;Xb.length;)eb=Xb.pop(),Yb[eb+eb]=c(Yb[eb],2);for(Yb.DDDD=c(Yb.DDD,3),h(e.prototype,{set:function(a){var b,c;for(c in a)b=a[c],"function"==typeof b?this[c]=b:this["_"+c]=b},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(a){return this._months[a.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a){var b,c,d;for(this._monthsParse||(this._monthsParse=[]),b=0;12>b;b++)if(this._monthsParse[b]||(c=db.utc([2e3,b]),d="^"+this.months(c,"")+"|^"+this.monthsShort(c,""),this._monthsParse[b]=new RegExp(d.replace(".",""),"i")),this._monthsParse[b].test(a))return b},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var b,c,d;for(this._weekdaysParse||(this._weekdaysParse=[]),b=0;7>b;b++)if(this._weekdaysParse[b]||(c=db([2e3,1]).day(b),d="^"+this.weekdays(c,"")+"|^"+this.weekdaysShort(c,"")+"|^"+this.weekdaysMin(c,""),this._weekdaysParse[b]=new RegExp(d.replace(".",""),"i")),this._weekdaysParse[b].test(a))return b},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},longDateFormat:function(a){var b=this._longDateFormat[a];return!b&&this._longDateFormat[a.toUpperCase()]&&(b=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=b),b},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,b,c){return a>11?c?"pm":"PM":c?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(a,b){var c=this._calendar[a];return"function"==typeof c?c.apply(b):c},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,b,c,d){var e=this._relativeTime[c];return"function"==typeof e?e(a,b,c,d):e.replace(/%d/i,a)},pastFuture:function(a,b){var c=this._relativeTime[a>0?"future":"past"];return"function"==typeof c?c(b):c.replace(/%s/i,b)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",preparse:function(a){return a},postformat:function(a){return a},week:function(a){return Y(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),db=function(c,d,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._i=c,g._f=d,g._l=e,g._strict=f,g._isUTC=!1,g._pf=b(),$(g)},db.utc=function(c,d,e,f){var g;return"boolean"==typeof e&&(f=e,e=a),g={},g._isAMomentObject=!0,g._useUTC=!0,g._isUTC=!0,g._l=e,g._i=c,g._f=d,g._strict=f,g._pf=b(),$(g).utc()},db.unix=function(a){return db(1e3*a)},db.duration=function(a,b){var c,d,e,f=a,h=null;return db.isDuration(a)?f={ms:a._milliseconds,d:a._days,M:a._months}:"number"==typeof a?(f={},b?f[b]=a:f.milliseconds=a):(h=tb.exec(a))?(c="-"===h[1]?-1:1,f={y:0,d:s(h[kb])*c,h:s(h[lb])*c,m:s(h[mb])*c,s:s(h[nb])*c,ms:s(h[ob])*c}):(h=ub.exec(a))&&(c="-"===h[1]?-1:1,e=function(a){var b=a&&parseFloat(a.replace(",","."));return(isNaN(b)?0:b)*c},f={y:e(h[2]),M:e(h[3]),d:e(h[4]),h:e(h[5]),m:e(h[6]),s:e(h[7]),w:e(h[8])}),d=new g(f),db.isDuration(a)&&a.hasOwnProperty("_lang")&&(d._lang=a._lang),d},db.version=fb,db.defaultFormat=Nb,db.updateOffset=function(){},db.lang=function(a,b){var c;return a?(b?A(y(a),b):null===b?(B(a),a="en"):pb[a]||C(a),c=db.duration.fn._lang=db.fn._lang=C(a),c._abbr):db.fn._lang._abbr},db.langData=function(a){return a&&a._lang&&a._lang._abbr&&(a=a._lang._abbr),C(a)},db.isMoment=function(a){return a instanceof f||null!=a&&a.hasOwnProperty("_isAMomentObject")},db.isDuration=function(a){return a instanceof g},eb=Zb.length-1;eb>=0;--eb)r(Zb[eb]);for(db.normalizeUnits=function(a){return p(a)},db.invalid=function(a){var b=db.utc(0/0);return null!=a?h(b._pf,a):b._pf.userInvalidated=!0,b},db.parseZone=function(a){return db(a).parseZone()},h(db.fn=f.prototype,{clone:function(){return db(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().lang("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var a=db(this).utc();return 00:!1},parsingFlags:function(){return h({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(){return this.zone(0)},local:function(){return this.zone(0),this._isUTC=!1,this},format:function(a){var b=F(this,a||db.defaultFormat);return this.lang().postformat(b)},add:function(a,b){var c;return c="string"==typeof a?db.duration(+b,a):db.duration(a,b),l(this,c,1),this},subtract:function(a,b){var c;return c="string"==typeof a?db.duration(+b,a):db.duration(a,b),l(this,c,-1),this},diff:function(a,b,c){var d,e,f=z(a,this),g=6e4*(this.zone()-f.zone());return b=p(b),"year"===b||"month"===b?(d=432e5*(this.daysInMonth()+f.daysInMonth()),e=12*(this.year()-f.year())+(this.month()-f.month()),e+=(this-db(this).startOf("month")-(f-db(f).startOf("month")))/d,e-=6e4*(this.zone()-db(this).startOf("month").zone()-(f.zone()-db(f).startOf("month").zone()))/d,"year"===b&&(e/=12)):(d=this-f,e="second"===b?d/1e3:"minute"===b?d/6e4:"hour"===b?d/36e5:"day"===b?(d-g)/864e5:"week"===b?(d-g)/6048e5:d),c?e:j(e)},from:function(a,b){return db.duration(this.diff(a)).lang(this.lang()._abbr).humanize(!b)},fromNow:function(a){return this.from(db(),a)},calendar:function(){var a=z(db(),this).startOf("day"),b=this.diff(a,"days",!0),c=-6>b?"sameElse":-1>b?"lastWeek":0>b?"lastDay":1>b?"sameDay":2>b?"nextDay":7>b?"nextWeek":"sameElse";return this.format(this.lang().calendar(c,this))},isLeapYear:function(){return v(this.year())},isDST:function(){return this.zone()+db(a).startOf(b)},isBefore:function(a,b){return b="undefined"!=typeof b?b:"millisecond",+this.clone().startOf(b)<+db(a).startOf(b)},isSame:function(a,b){return b=b||"ms",+this.clone().startOf(b)===+z(a,this).startOf(b)},min:function(a){return a=db.apply(null,arguments),this>a?this:a},max:function(a){return a=db.apply(null,arguments),a>this?this:a},zone:function(a){var b=this._offset||0;return null==a?this._isUTC?b:this._d.getTimezoneOffset():("string"==typeof a&&(a=I(a)),Math.abs(a)<16&&(a=60*a),this._offset=a,this._isUTC=!0,b!==a&&l(this,db.duration(b-a,"m"),1,!0),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(a){return a=a?db(a).zone():0,(this.zone()-a)%60===0},daysInMonth:function(){return t(this.year(),this.month())},dayOfYear:function(a){var b=hb((db(this).startOf("day")-db(this).startOf("year"))/864e5)+1;return null==a?b:this.add("d",a-b)},quarter:function(){return Math.ceil((this.month()+1)/3)},weekYear:function(a){var b=Y(this,this.lang()._week.dow,this.lang()._week.doy).year;return null==a?b:this.add("y",a-b)},isoWeekYear:function(a){var b=Y(this,1,4).year;return null==a?b:this.add("y",a-b)},week:function(a){var b=this.lang().week(this);return null==a?b:this.add("d",7*(a-b))},isoWeek:function(a){var b=Y(this,1,4).week;return null==a?b:this.add("d",7*(a-b))},weekday:function(a){var b=(this.day()+7-this.lang()._week.dow)%7;return null==a?b:this.add("d",a-b)},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},get:function(a){return a=p(a),this[a]()},set:function(a,b){return a=p(a),"function"==typeof this[a]&&this[a](b),this},lang:function(b){return b===a?this._lang:(this._lang=C(b),this)}}),eb=0;eb=a:return 100;case 5e3>=a:return 1e3;case 7500>=a:return 5e3;case 15e3>=a:return 1e4;case 45e3>=a:return 3e4;case 18e4>=a:return 6e4;case 45e4>=a:return 3e5;case 12e5>=a:return 6e5;case 27e5>=a:return 18e5;case 72e5>=a:return 36e5;case 216e5>=a:return 108e5;case 864e5>=a:return 432e5;case 1728e5>=a:return 864e5;case 6048e5>=a:return 864e5;case 18144e5>=a:return 6048e5;case 36288e5>a:return 2592e6;default:return 31536e6}},d.secondsToHms=function(a){var b=Math.floor(a/31536e3);if(b)return b+"y";var c=Math.floor(a%31536e3/86400);if(c)return c+"d";var d=Math.floor(a%31536e3%86400/3600);if(d)return d+"h";var e=Math.floor(a%31536e3%86400%3600/60);if(e)return e+"m";var f=a%31536e3%86400%3600%60;return f?f+"s":"less then a second"},d.to_percent=function(a,b){return Math.floor(a/b*1e4)/100+"%"},d.addslashes=function(a){return a=a.replace(/\\/g,"\\\\"),a=a.replace(/\'/g,"\\'"),a=a.replace(/\"/g,'\\"'),a=a.replace(/\0/g,"\\0")},d.interval_regex=/(\d+(?:\.\d+)?)([Mwdhmsy])/,d.intervals_in_seconds={y:31536e3,M:2592e3,w:604800,d:86400,h:3600,m:60,s:1},d.describe_interval=function(a){var c=a.match(d.interval_regex);if(c&&b.has(d.intervals_in_seconds,c[2]))return{sec:d.intervals_in_seconds[c[2]],type:c[2],count:parseInt(c[1],10)};throw new Error('Invalid interval string, expexcting a number followed by one of "Mwdhmsy"')},d.interval_to_ms=function(a){var b=d.describe_interval(a);return 1e3*b.sec*b.count},d.interval_to_seconds=function(a){var b=d.describe_interval(a);return b.sec*b.count},d.time_ago=function(a){return new Date((new Date).getTime()-d.interval_to_ms(a))},d.parseDate=function(a){if(b.isDate(a))return a;var c,e,f,g="";return"now"===a.substring(0,3)?(c=new Date,g=a.substring("now".length)):(e=a.indexOf("||"),-1===e?(f=a,g=""):(f=a.substring(0,e),g=a.substring(e+2)),c=new Date(f)),g.length?d.parseDateMath(g,c):c},d.parseDateMath=function(a,b,d){for(var e=c(b),f=0;f
    '},d.byteFormat=function(a,c){var d,e=0;for(b.isUndefined(c)?c=2:0===c&&(c=void 0);Math.abs(a)>=1024;)e++,a/=1024;switch(e){case 0:d=" B";break;case 1:d=" KiB";break;case 2:d=" MiB";break;case 3:d=" GiB";break;case 4:d=" TiB";break;case 5:d=" PiB";break;case 6:d=" EiB";break;case 7:d=" ZiB";break;case 8:d=" YiB"}return a.toFixed(c)+d},d.bitFormat=function(a,c){var d,e=0;for(b.isUndefined(c)?c=2:0===c&&(c=void 0);Math.abs(a)>=1024;)e++,a/=1024;switch(e){case 0:d=" b";break;case 1:d=" Kib";break;case 2:d=" Mib";break;case 3:d=" Gib";break;case 4:d=" Tib";break;case 5:d=" Pib";break;case 6:d=" Eib";break;case 7:d=" Zib";break;case 8:d=" Yib"}return a.toFixed(c)+d},d.shortFormat=function(a,c){var d,e=0;for(b.isUndefined(c)?c=2:0===c&&(c=void 0);Math.abs(a)>=1e3;)e++,a/=1e3;switch(e){case 0:d="";break;case 1:d=" K";break;case 2:d=" Mil";break;case 3:d=" Bil";break;case 4:d=" Tri";break;case 5:d=" Quadr";break;case 6:d=" Quint";break;case 7:d=" Sext";break;case 8:d=" Sept"}return a.toFixed(c)+d},d.getFormatFunction=function(a,b){switch(a){case"short":return function(a){return d.shortFormat(a,b)};case"bytes":return function(a){return d.byteFormat(a,b)};case"bits":return function(a){return d.bitFormat(a,b)};case"s":return function(a){return d.sFormat(a,b)};case"ms":return function(a){return d.msFormat(a,b)};case"µs":return function(a){return d.microsFormat(a,b)};case"ns":return function(a){return d.nanosFormat(a,b)};default:return function(a){return a%1===0?a:a.toFixed(b)}}},d.msFormat=function(a,b){return 1e3>a?a.toFixed(0)+" ms":6e4>a?(a/1e3).toFixed(b)+" s":36e5>a?(a/6e4).toFixed(b)+" min":864e5>a?(a/36e5).toFixed(b)+" hour":31536e6>a?(a/864e5).toFixed(b)+" day":(a/31536e6).toFixed(b)+" year"},d.sFormat=function(a,b){return 600>a?a.toFixed(b)+" s":3600>a?(a/60).toFixed(b)+" min":86400>a?(a/3600).toFixed(b)+" hour":604800>a?(a/86400).toFixed(b)+" day":31536e3>a?(a/604800).toFixed(b)+" week":(a/31556900).toFixed(b)+" year"},d.microsFormat=function(a,b){return 1e3>a?a.toFixed(0)+" µs":1e6>a?(a/1e3).toFixed(b)+" ms":(a/1e6).toFixed(b)+" s"},d.nanosFormat=function(a,b){return 1e3>a?a.toFixed(0)+" ns":1e6>a?(a/1e3).toFixed(b)+" µs":1e9>a?(a/1e6).toFixed(b)+" ms":6e10>a?(a/1e9).toFixed(b)+" s":(a/6e10).toFixed(b)+" m"},d}),window.Modernizr=function(a,b,c){function d(a){t.cssText=a}function e(a,b){return d(x.join(a+";")+(b||""))}function f(a,b){return typeof a===b}function g(a,b){return!!~(""+a).indexOf(b)}function h(a,b){for(var d in a){var e=a[d];if(!g(e,"-")&&t[e]!==c)return"pfx"==b?e:!0}return!1}function i(a,b,d){for(var e in a){var g=b[a[e]];if(g!==c)return d===!1?a[e]:f(g,"function")?g.bind(d||b):g}return!1}function j(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+z.join(d+" ")+d).split(" ");return f(b,"string")||f(b,"undefined")?h(e,b):(e=(a+" "+A.join(d+" ")+d).split(" "),i(e,b,c))}function k(){o.input=function(c){for(var d=0,e=c.length;e>d;d++)E[c[d]]=c[d]in u;return E.list&&(E.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),E}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),o.inputtypes=function(a){for(var d,e,f,g=0,h=a.length;h>g;g++)u.setAttribute("type",e=a[g]),d="text"!==u.type,d&&(u.value=v,u.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(e)&&u.style.WebkitAppearance!==c?(q.appendChild(u),f=b.defaultView,d=f.getComputedStyle&&"textfield"!==f.getComputedStyle(u,null).WebkitAppearance&&0!==u.offsetHeight,q.removeChild(u)):/^(search|tel)$/.test(e)||(d=/^(url|email)$/.test(e)?u.checkValidity&&u.checkValidity()===!1:u.value!=v)),D[a[g]]=!!d;return D}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var l,m,n="2.6.1",o={},p=!0,q=b.documentElement,r="modernizr",s=b.createElement(r),t=s.style,u=b.createElement("input"),v=":)",w={}.toString,x=" -webkit- -moz- -o- -ms- ".split(" "),y="Webkit Moz O ms",z=y.split(" "),A=y.toLowerCase().split(" "),B={svg:"http://www.w3.org/2000/svg"},C={},D={},E={},F=[],G=F.slice,H=function(a,c,d,e){var f,g,h,i=b.createElement("div"),j=b.body,k=j?j:b.createElement("body");if(parseInt(d,10))for(;d--;)h=b.createElement("div"),h.id=e?e[d]:r+(d+1),i.appendChild(h);return f=["­",'"].join(""),i.id=r,(j?i:k).innerHTML+=f,k.appendChild(i),j||(k.style.background="",q.appendChild(k)),g=c(i,a),j?i.parentNode.removeChild(i):k.parentNode.removeChild(k),!!g -},I=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return H("@media "+b+" { #"+r+" { position: absolute; } }",function(b){d="absolute"==(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle).position}),d},J=function(){function a(a,e){e=e||b.createElement(d[a]||"div"),a="on"+a;var g=a in e;return g||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(a,""),g=f(e[a],"function"),f(e[a],"undefined")||(e[a]=c),e.removeAttribute(a))),e=null,g}var d={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return a}(),K={}.hasOwnProperty;m=f(K,"undefined")||f(K.call,"undefined")?function(a,b){return b in a&&f(a.constructor.prototype[b],"undefined")}:function(a,b){return K.call(a,b)},Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError;var c=G.call(arguments,1),d=function(){if(this instanceof d){var e=function(){};e.prototype=b.prototype;var f=new e,g=b.apply(f,c.concat(G.call(arguments)));return Object(g)===g?g:f}return b.apply(a,c.concat(G.call(arguments)))};return d}),C.flexbox=function(){return j("flexWrap")},C.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},C.canvastext=function(){return!!o.canvas&&!!f(b.createElement("canvas").getContext("2d").fillText,"function")},C.webgl=function(){return!!a.WebGLRenderingContext},C.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:H(["@media (",x.join("touch-enabled),("),r,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=9===a.offsetTop}),c},C.geolocation=function(){return"geolocation"in navigator},C.postmessage=function(){return!!a.postMessage},C.websqldatabase=function(){return!!a.openDatabase},C.indexedDB=function(){return!!j("indexedDB",a)},C.hashchange=function(){return J("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},C.history=function(){return!!a.history&&!!history.pushState},C.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},C.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},C.rgba=function(){return d("background-color:rgba(150,255,150,.5)"),g(t.backgroundColor,"rgba")},C.hsla=function(){return d("background-color:hsla(120,40%,100%,.5)"),g(t.backgroundColor,"rgba")||g(t.backgroundColor,"hsla")},C.multiplebgs=function(){return d("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(t.background)},C.backgroundsize=function(){return j("backgroundSize")},C.borderimage=function(){return j("borderImage")},C.borderradius=function(){return j("borderRadius")},C.boxshadow=function(){return j("boxShadow")},C.textshadow=function(){return""===b.createElement("div").style.textShadow},C.opacity=function(){return e("opacity:.55"),/^0.55$/.test(t.opacity)},C.cssanimations=function(){return j("animationName")},C.csscolumns=function(){return j("columnCount")},C.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return d((a+"-webkit- ".split(" ").join(b+a)+x.join(c+a)).slice(0,-a.length)),g(t.backgroundImage,"gradient")},C.cssreflections=function(){return j("boxReflect")},C.csstransforms=function(){return!!j("transform")},C.csstransforms3d=function(){var a=!!j("perspective");return a&&"webkitPerspective"in q.style&&H("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b){a=9===b.offsetLeft&&3===b.offsetHeight}),a},C.csstransitions=function(){return j("transition")},C.fontface=function(){var a;return H('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&0===g.indexOf(d.split(" ")[0])}),a},C.generatedcontent=function(){var a;return H(['#modernizr:after{content:"',v,'";visibility:hidden}'].join(""),function(b){a=b.offsetHeight>=1}),a},C.video=function(){var a=b.createElement("video"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(d){}return c},C.audio=function(){var a=b.createElement("audio"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(d){}return c},C.localstorage=function(){try{return localStorage.setItem(r,r),localStorage.removeItem(r),!0}catch(a){return!1}},C.sessionstorage=function(){try{return sessionStorage.setItem(r,r),sessionStorage.removeItem(r),!0}catch(a){return!1}},C.webworkers=function(){return!!a.Worker},C.applicationcache=function(){return!!a.applicationCache},C.svg=function(){return!!b.createElementNS&&!!b.createElementNS(B.svg,"svg").createSVGRect},C.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="",(a.firstChild&&a.firstChild.namespaceURI)==B.svg},C.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(w.call(b.createElementNS(B.svg,"animate")))},C.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(w.call(b.createElementNS(B.svg,"clipPath")))};for(var L in C)m(C,L)&&(l=L.toLowerCase(),o[l]=C[L](),F.push((o[l]?"":"no-")+l));return o.input||k(),o.addTest=function(a,b){if("object"==typeof a)for(var d in a)m(a,d)&&o.addTest(d,a[d]);else{if(a=a.toLowerCase(),o[a]!==c)return o;b="function"==typeof b?b():b,p&&(q.className+=" "+(b?"":"no-")+a),o[a]=b}return o},d(""),s=u=null,function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=r.elements;return"string"==typeof a?a.split(" "):a}function e(a){var b=q[a[o]];return b||(b={},p++,a[o]=p,q[p]=b),b}function f(a,c,d){if(c||(c=b),k)return c.createElement(a);d||(d=e(c));var f;return f=d.cache[a]?d.cache[a].cloneNode():n.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),f.canHaveChildren&&!m.test(a)?d.frag.appendChild(f):f}function g(a,c){if(a||(a=b),k)return a.createDocumentFragment();c=c||e(a);for(var f=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)f.createElement(h[g]);return f}function h(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?f(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function i(a){a||(a=b);var d=e(a);return r.shivCSS&&!j&&!d.hasCSS&&(d.hasCSS=!!c(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),k||h(a,d),a}var j,k,l=a.html5||{},m=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,n=/^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i,o="_html5shiv",p=0,q={};!function(){try{var a=b.createElement("a");a.innerHTML="",j="hidden"in a,k=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){j=!0,k=!0}}();var r={elements:l.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:l.shivCSS!==!1,supportsUnknownElements:k,shivMethods:l.shivMethods!==!1,type:"default",shivDocument:i,createElement:f,createDocumentFragment:g};a.html5=r,i(b)}(this,b),o._version=n,o._prefixes=x,o._domPrefixes=A,o._cssomPrefixes=z,o.mq=I,o.hasEvent=J,o.testProp=function(a){return h([a])},o.testAllProps=j,o.testStyles=H,o.prefixed=function(a,b,c){return b?j(a,b,c):j(a,"pfx")},q.className=q.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(p?" js "+F.join(" "):""),o}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==q.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=r.shift();s=1,a?a.t?o(function(){("c"==a.t?m.injectCss:m.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):s=0}function i(a,c,d,e,f,i,j){function k(b){if(!n&&g(l.readyState)&&(t.r=n=1,!s&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&o(function(){v.removeChild(l)},50);for(var d in A[c])A[c].hasOwnProperty(d)&&A[c][d].onload()}}var j=j||m.errorTimeout,l={},n=0,q=0,t={t:d,s:c,e:f,a:i,x:j};1===A[c]&&(q=1,A[c]=[],l=b.createElement(a)),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,q)},r.splice(e,0,t),"img"!=a&&(q||2===A[c]?(v.insertBefore(l,u?null:p),o(k,j)):A[c].push(l))}function j(a,b,c,d,f){return s=0,b=b||"j",e(a)?i("c"==b?x:w,a,b,this.i++,c,d,f):(r.splice(this.i++,0,a),1==r.length&&h()),this}function k(){var a=m;return a.loader={load:j,i:0},a}var l,m,n=b.documentElement,o=a.setTimeout,p=b.getElementsByTagName("script")[0],q={}.toString,r=[],s=0,t="MozAppearance"in n.style,u=t&&!!b.createRange().compareNode,v=u?n:p.parentNode,n=a.opera&&"[object Opera]"==q.call(a.opera),n=!!b.attachEvent&&!n,w=t?"object":n?"script":"img",x=n?"script":w,y=Array.isArray||function(a){return"[object Array]"==q.call(a)},z=[],A={},B={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}};m=function(a){function b(a){var b,c,d,a=a.split("!"),e=z.length,f=a.pop(),g=a.length,f={url:f,origUrl:f,prefixes:a};for(c=0;g>c;c++)d=a[c].split("="),(b=B[d.shift()])&&(f=b(f,d));for(c=0;e>c;c++)f=z[c](f);return f}function g(a,e,f,g,i){var j=b(a),l=j.autoCallback;j.url.split(".").pop().split("?").shift(),j.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]||h),j.instead?j.instead(a,e,f,g,i):(A[j.url]?j.noexec=!0:A[j.url]=1,f.load(j.url,j.forceCSS||!j.forceJS&&"css"==j.url.split(".").pop().split("?").shift()?"c":c,j.noexec,j.attrs,j.timeout),(d(e)||d(l))&&f.load(function(){k(),e&&e(j.origUrl,i,g),l&&l(j.origUrl,i,g),A[j.url]=2})))}function i(a,b){function c(a,c){if(a){if(e(a))c||(l=function(){var a=[].slice.call(arguments);m.apply(this,a),n()}),g(a,l,b,0,j);else if(Object(a)===a)for(i in h=function(){var b,c=0;for(b in a)a.hasOwnProperty(b)&&c++;return c}(),a)a.hasOwnProperty(i)&&(!c&&!--h&&(d(l)?l=function(){var a=[].slice.call(arguments);m.apply(this,a),n()}:l[i]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),n()}}(m[i])),g(a[i],l,b,i,j))}else!c&&n()}var h,i,j=!!a.test,k=a.load||a.both,l=a.callback||f,m=l,n=a.complete||f;c(j?a.yep:a.nope,!!k),k&&c(k)}var j,l,n=this.yepnope.loader;if(e(a))g(a,0,n,0);else if(y(a))for(j=0;jhere to load your old dashboard anyway.')):l.path(e.default_route);else{var a=h.kbnType,b=h.kbnId;switch(a){case"elasticsearch":u.elasticsearch_load("dashboard",b);break;case"temp":u.elasticsearch_load("temp",b);break;case"file":u.file_load(b);break;case"script":u.script_load(b);break;case"local":u.local_load();break;default:l.path(e.default_route)}}};this.refresh=function(){j.$broadcast("refresh")};var w=function(a){d.defaults(a,r),d.defaults(a.loader,r.loader);var b=d.findWhere(a.pulldowns,{type:"filtering"});b||a.pulldowns.push({type:"filtering",enable:!1});var c=d.findWhere(a.pulldowns,{type:"annotations"});return c||a.pulldowns.push({type:"annotations",enable:!1}),d.each(a.rows,function(a){d.each(a.panels,function(a){"graphite"===a.type&&(a.type="graph")})}),a};this.dash_load=function(b){return o.cancel_all(),j.fullscreen=!1,b=w(b),window.document.title="Metrics - "+b.title,u.current=a.copy(b),b.refresh&&u.set_interval(b.refresh),u.availablePanels=e.panels,j.$emit("dashboard-loaded",u.current),!0},this.gist_id=function(a){return u.is_gist(a)?a.match(t)[0].replace(/.*\//,""):void 0},this.is_gist=function(a){return d.isUndefined(a)||""===a||d.isNull(a.match(t))?!1:a.match(t).length>0?!0:!1},this.to_file=function(){var b=new Blob([a.toJson(u.current,!0)],{type:"application/json;charset=utf-8"});return window.saveAs(b,u.current.title+"-"+(new Date).getTime()),!0},this.set_default=function(a){return g.localstorage?(d.isUndefined(window.localStorage.dashboard)||delete window.localStorage.dashboard,window.localStorage.grafanaDashboardDefault=a,!0):!1},this.purge_default=function(){return g.localstorage?(d.isUndefined(window.localStorage.dashboard)||delete window.localStorage.dashboard,delete window.localStorage.grafanaDashboardDefault,!0):!1},this.share_link=function(a,b,c){return{location:window.location.href.replace(window.location.hash,""),type:b,id:c,link:window.location.href.replace(window.location.hash,"")+"#dashboard/"+b+"/"+c,title:a}};var x=function(b,c){var e;d.templateSettings={interpolate:/\{\{(.+?)\}\}/g};var f=d.template(b),g=f({ARGS:c});try{e=a.fromJson(g)}catch(h){e=!1}return e};this.local_load=function(){var a=JSON.parse(window.localStorage.dashboard);a.rows.unshift({height:"30",title:"Deprecation Notice",panels:[{title:"WARNING: Legacy dashboard",type:"text",span:12,mode:"html",content:'This dashboard has been loaded from the browsers local cache. If you use another brower or computer you will not be able to access it! \n\n

    Good news!

    Kibana now stores saved dashboards in Elasticsearch. Click the button in the top left to save this dashboard. Then select "Set as Home" from the "advanced" sub menu to automatically use the stored dashboard as your Kibana landing page afterwards

    Tip: You may with to remove this row before saving!'}]}),u.dash_load(a)},this.file_load=function(a){return i({url:"app/dashboards/"+a.replace(/\.(?!json)/,"/")+"?"+(new Date).getTime(),method:"GET",transformResponse:function(a){return x(a,h)}}).then(function(a){return a?(u.dash_load(w(a.data)),!0):!1},function(){return p.set("Error","Could not load dashboards/"+a+". Please make sure it exists","error"),!1})},this.elasticsearch_load=function(b,c){var d={url:e.elasticsearch+"/"+e.grafana_index+"/"+b+"/"+c+"?"+(new Date).getTime(),method:"GET",transformResponse:function(b){return x(a.fromJson(b)._source.dashboard,h)}};return e.elasticsearchBasicAuth&&(d.withCredentials=!0,d.headers={Authorization:"Basic "+e.elasticsearchBasicAuth}),i(d).error(function(a,b){return 0===b?p.set("Error","Could not contact Elasticsearch at "+e.elasticsearch+". Please ensure that Elasticsearch is reachable from your system.","error"):p.set("Error","Could not find "+c+". If you are using a proxy, ensure it is configured correctly","error"),!1}).success(function(a){u.dash_load(a)})},this.script_load=function(a){return i({url:"app/dashboards/"+a.replace(/\.(?!js)/,"/"),method:"GET"}).then(function(a){var e=new Function("ARGS","kbn","_","moment","window","document","$","jQuery",a.data),g=e(h,c,d,f,window,document,b,b);if(d.isFunction(g)){var i=q.defer();return g(function(a){j.$apply(function(){i.resolve({data:a})})}),i.promise}return{data:g}}).then(function(a){return a?(u.dash_load(w(a.data)),!0):!1},function(){return p.set("Error","Could not load scripts/"+a+". Please make sure it exists and returns a valid dashboard","error"),!1})},this.elasticsearch_save=function(b,c,f){var g,h=d.clone(u.current);"dashboard"===b&&(g=h.title=d.isUndefined(c)?u.current.title:c);var i=s.Document(e.grafana_index,b,g).source({user:"guest",group:"guest",title:h.title,tags:h.tags,dashboard:a.toJson(h)});return i="temp"===b&&f?i.ttl(f):i,i.doIndex(function(a){return"dashboard"===b&&l.path("/dashboard/elasticsearch/"+c),a},function(){return!1})},this.elasticsearch_delete=function(a){return s.Document(e.grafana_index,"dashboard",a).doDelete(function(a){return a},function(){return!1})},this.save_gist=function(b,c){var e=d.clone(c||u.current);return e.title=b||u.current.title,i({url:"https://api.github.com/gists",method:"POST",data:{description:e.title,"public":!1,files:{"kibana-dashboard.json":{content:a.toJson(e,!0)}}}}).then(function(a){return a.data.html_url},function(){return!1})},this.gist_list=function(a){return i.jsonp("https://api.github.com/gists/"+a+"?callback=JSON_CALLBACK").then(function(a){var b=[];return d.each(a.data.data.files,function(a){try{var c=JSON.parse(a.content);b.push(c)}catch(d){return!1}}),b},function(){return!1})},this.start_scheduled_refresh=function(a){this.cancel_scheduled_refresh(),u.refresh_timer=o.register(m(function(){u.start_scheduled_refresh(a),u.refresh()},a))},this.cancel_scheduled_refresh=function(){o.cancel(u.refresh_timer)},this.set_interval=function(a){if(u.current.refresh=a,a){var b=c.interval_to_ms(a);this.start_scheduled_refresh(b)}else this.cancel_scheduled_refresh()}}])}),define("services/graphite/graphiteDatasource",["angular","underscore","jquery","config","kbn","moment"],function(a,b,c,d,e,f){var g=a.module("kibana.services");g.factory("GraphiteDatasource",["dashboard","$q","$http",function(a,d,g){function h(a){this.type="graphite",this.basicAuth=a.basicAuth,this.url=a.url,this.editorSrc="app/partials/graphite/editor.html",this.name=a.name,this.render_method=a.render_method||"POST"}return h.prototype.query=function(a,b){try{var c={from:this.translateTime(b.range.from,"round-down"),until:this.translateTime(b.range.to,"round-up"),targets:b.targets,format:b.format,maxDataPoints:b.maxDataPoints},e=this.buildGraphiteParams(a,c);if("png"===b.format)return d.when(this.url+"/render?"+e.join("&"));var f={method:this.render_method,url:"/render"};return"GET"===f.method?f.url=f.url+"?"+e.join("&"):(f.data=e.join("&"),f.headers={"Content-Type":"application/x-www-form-urlencoded"}),this.doGraphiteRequest(f)}catch(g){return d.reject(g)}},h.prototype.events=function(a){try{var b="";return a.tags&&(b="&tags="+a.tags),this.doGraphiteRequest({method:"GET",url:"/events/get_data?from="+this.translateTime(a.range.from)+"&until="+this.translateTime(a.range.to)+b})}catch(c){return d.reject(c)}},h.prototype.translateTime=function(a,c){if(b.isString(a)){if("now"===a)return"now";if(a.indexOf("now")>=0)return a=a.substring(3),a=a.replace("m","min"),a=a.replace("M","mon");a=e.parseDate(a)}return a=f.utc(a),"round-up"===c?a.get("s")&&a.add("m",1):"round-down"===c&&a.get("s")&&a.subtract("m",1),a.unix()},h.prototype.metricFindQuery=function(a,c){var e;try{e=encodeURIComponent(a.applyTemplateToTarget(c))}catch(f){return d.reject(f)}return this.doGraphiteRequest({method:"GET",url:"/metrics/find/?query="+e}).then(function(a){return b.map(a.data,function(a){return{text:a.text,expandable:a.expandable?!0:!1}})})},h.prototype.listDashboards=function(a){return this.doGraphiteRequest({method:"GET",url:"/dashboard/find/",params:{query:a||""}}).then(function(a){return a.data.dashboards})},h.prototype.loadDashboard=function(a){return this.doGraphiteRequest({method:"GET",url:"/dashboard/load/"+encodeURIComponent(a)})},h.prototype.doGraphiteRequest=function(a){return this.basicAuth&&(a.withCredentials=!0,a.headers=a.headers||{},a.headers.Authorization="Basic "+this.basicAuth),a.url=this.url+a.url,g(a)},h.prototype.buildGraphiteParams=function(a,d){var e=[],f=["target","targets","from","until","rawData","format","maxDataPoints"];return"png"!==d.format&&(d.format="json"),b.each(d,function(d,g){-1!==c.inArray(g,f)&&("targets"===g?b.each(d,function(b){if(b.target&&!b.hide){var c=a.applyTemplateToTarget(b.target);e.push("target="+encodeURIComponent(c))}},this):null!==d&&e.push(g+"="+encodeURIComponent(d)))},this),e},h}])}),define("services/influxdb/influxdbDatasource",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services");d.factory("InfluxDatasource",["$q","$http",function(a,d){function e(a){this.type="influxDB",this.editorSrc="app/partials/influxdb/editor.html",this.urls=a.urls,this.username=a.username,this.password=a.password,this.name=a.name,this.templateSettings={interpolate:/\[\[([\s\S]+?)\]\]/g}}function f(a,b,c){return b().then(void 0,function(d){0!==d.status||d.status>=300?a.reject(d):setTimeout(function(){return f(a,b,Math.min(2*c,3e4))},c)})}function g(a,c,d){var e=[];return b.each(d,function(d){var f,g=d.columns.indexOf("time"),h=1,i=-1;c&&(i=d.columns.indexOf(c)),b.each(d.columns,function(a,b){"time"!==a&&"sequence_number"!==a&&a!==c&&(h=b)});var j={};c?j=b.groupBy(d.points,function(a){return a[i]}):j[d.columns[h]]=d.points,b.each(j,function(b,i){for(var j=[],k=0;k now() - "+b:"time > "+b+" and time < "+c}function i(a){if(b.isString(a)){if("now"===a)return"now()";if(a.indexOf("now")>=0)return a.substring(4);a=c.parseDate(a)}return j(a)}function j(a){return(a.getTime()/1e3).toFixed(0)+"s"}return e.prototype.query=function(c,d){var e=b.map(d.targets,function(a){var e,f="";if(a.hide||!(a.series&&a.column||a.query))return[];var i,j=h(d);if(a.rawQuery){e=a.query,e=e.replace(";","");var k=e.split(" "),l=e.toLowerCase().split(" "),m=l.indexOf("where"),n=l.indexOf("group"),o=l.indexOf("order");-1!==l[1].indexOf(",")&&(i=l[1].replace(",","")),-1!==m?k.splice(m+1,0,j,"and"):-1!==n?k.splice(n,0,"where",j):-1!==o?k.splice(o,0,"where",j):(k.push("where"),k.push(j)),e=k.join(" "),e=c.applyTemplateToTarget(e)}else{var p="select [[group]][[group_comma]] [[func]]([[column]]) from [[series]] where [[timeFilter]] [[condition_add]] [[condition_key]] [[condition_op]] [[condition_value]] group by time([[interval]])[[group_comma]] [[group]] order asc",q={series:a.series,column:a.column,func:a.function,timeFilter:j,interval:a.interval||d.interval,condition_add:a.condition_filter?"and":"",condition_key:a.condition_filter?a.condition_key:"",condition_op:a.condition_filter?a.condition_op:"",condition_value:a.condition_filter?a.condition_value:"",group_comma:a.groupby_field_add&&a.groupby_field?",":"",group:a.groupby_field_add?a.groupby_field:""};q.series.match("^/.*/")||(q.series='"'+q.series+'"'),e=b.template(p,q,this.templateSettings),e=c.applyTemplateToTarget(e),a.alias&&(f=c.applyTemplateToTarget(a.alias)),a.groupby_field_add&&(i=a.groupby_field),a.query=e}var r=b.partial(g,f,i);return this.doInfluxRequest(e,f).then(r)},this);return a.all(e).then(function(a){return{data:b.flatten(a)}})},e.prototype.listColumns=function(a){return this.doInfluxRequest("select * from /"+a+"/ limit 1").then(function(a){return a?a[0].columns:[]})},e.prototype.listSeries=function(){return this.doInfluxRequest("list series").then(function(a){return b.map(a,function(a){return a.name})})},e.prototype.metricFindQuery=function(c,d){var e;try{e=c.applyTemplateToTarget(d)}catch(f){return a.reject(f)}return this.doInfluxRequest(d).then(function(a){return b.map(a[0].points,function(a){return{text:a[1],expandable:!1}})})},e.prototype.doInfluxRequest=function(b){var c=this,e=a.defer();return f(e,function(){var a=c.urls.shift();c.urls.push(a);var f={u:c.username,p:c.password,time_precision:"s",q:b},g={method:"GET",url:a+"/series",params:f};return d(g).success(function(a){e.resolve(a)})},10),e.promise},e}])}),define("services/opentsdb/opentsdbDatasource",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services");d.factory("OpenTSDBDatasource",["$q","$http",function(d,e){function f(a){this.type="opentsdb",this.editorSrc="app/partials/opentsdb/editor.html",this.url=a.url,this.name=a.name}function g(a,c){var d=[];b.each(a.dps,function(a,b){d.push([a,b])});var e=a.metric;if(!b.isEmpty(a.tags)){var f=[];b.each(b.pairs(a.tags),function(a){b.has(c,a[0])&&f.push(a[0]+"="+a[1])}),b.isEmpty(f)||(e=e+"{"+f.join(", ")+"}")}return{target:e,datapoints:d}}function h(b){if(!b.metric)return null;var c={metric:b.metric,aggregator:"avg"};return b.aggregator&&(c.aggregator=b.aggregator),b.shouldComputeRate&&(c.rate=!0,c.rateOptions={counter:!!b.isCounter}),b.shouldDownsample&&(c.downsample=b.downsampleInterval+"-"+b.downsampleAggregator),c.tags=a.copy(b.tags),c}function i(a){return"now"===a?null:(a=c.parseDate(a),a.getTime())}return f.prototype.query=function(a,c){var e=i(c.range.from),f=i(c.range.to),j=b.compact(b.map(c.targets,h));if(b.isEmpty(j)){var k=d.defer();return k.resolve({data:[]}),k.promise}var l={};return b.each(j,function(a){b.each(a.tags,function(a,b){l[b]=!0})}),this.performTimeSeriesQuery(j,e,f).then(function(a){var c=b.map(a.data,function(a){return g(a,l)});return{data:c}})},f.prototype.performTimeSeriesQuery=function(a,b,c){var d={start:b,queries:a};c&&(d.end=c);var f={method:"POST",url:this.url+"/api/query",data:d};return e(f)},f.prototype.performSuggestQuery=function(a,b){var c={method:"GET",url:this.url+"/api/suggest",params:{type:b,q:a}};return e(c).then(function(a){return a.data})},f}])}),define("services/kairosdb/kairosdbDatasource",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services"),e=null;d.factory("KairosDBDatasource",["$q","$http",function(d,f){function g(a){this.type="kairosdb",this.editorSrc="app/partials/kairosdb/editor.html",this.url=a.url,this.name=a.name}function h(a,c,d){return a.data?"key"===c?b.keys(a.data.queries[0].results[0].tags):"value"===c&&b.has(a.data.queries[0].results[0].tags,d)?a.data.queries[0].results[0].tags[d]:[]:[]}function i(a){if(a.data.errors&&!b.isEmpty(a.data.errors)){var c={message:a.data.errors[0]};return d.reject(c)}return d.reject(a)}function j(a){var c=[];b.each(a.data.queries,function(a){var d=a.sample_size;console.log("sample_size:"+d+" samples"),b.each(a.results,function(a){var d=a.name;a.group_by&&(d+=" ( ",b.each(a.group_by,function(a){"tag"===a.name?b.each(a.group,function(a,b){d+=b+"="+a+" "}):"value"===a.name?d+="value_group="+a.group.group_number+" ":"time"===a.name&&(d+="time_group="+a.group.group_number+" ")}),d+=") ");for(var e=[],f=0;f=0){f=e+"_relative",a=a.substring(4);var g=/(\d+)\s*(\D+)/,h=g.exec(a);if(h){var i=h[1],j=h[2];switch(j){case"ms":j="milliseconds";break;case"s":j="seconds";break;case"m":j="minutes";break;case"h":j="hours";break;case"d":j="days";break;case"w":j="weeks";break;case"M":j="months";break;case"y":j="years";break;default:console.log("Unknown date ",a)}return void(d[f]={value:i,unit:j})}return void console.log("Unparseable date",a)}a=c.parseDate(a)}return b.isDate(a)?(f=e+"_absolute",void(d[f]=a.getTime())):void console.log("Date is neither string nor date")}return g.prototype.query=function(a,c){var e=c.range.from,f=c.range.to,g=b.compact(b.map(c.targets,b.partial(k,c)));if(b.isEmpty(g)){var h=d.defer();return h.resolve({data:[]}),h.promise}return this.performTimeSeriesQuery(g,e,f).then(j,i)},g.prototype.performTimeSeriesQuery=function(a,b,c){var d={metrics:a};d.cache_time=0,l(b,d,"start"),l(c,d,"end");var e={method:"POST",url:"/clusters/1/datapoints",data:d};return e.url=this.url+e.url,f(e)},g.prototype.performMetricSuggestQuery=function(){var a={url:this.url+"/metricnames",method:"GET"};return f(a).then(function(a){return a.data?a.data.results:[]})},g.prototype.performTagSuggestQuery=function(a,b,c,d){if(e&&a===e.metricName&&b.from===e.range.from&&b.to===e.range.to)return h(e.results,c,d);e={metricName:a,range:b};var g={metrics:[{name:a}]};l(b.from,g,"start"),l(b.to,g,"end");var i={url:this.url+"/clusters/1/datapointtags",method:"POST",data:g};return f(i).then(function(a){return e.results=a,h(a,c,d)})},g.prototype.convertToKairosInterval=function(a){var b=/(\d+(?:\.\d+)?)([Mwdhmsy])/,d=/(\d+(?:\.\d+)?)(ms)/,e=a.match(d);if(e||(e=a.match(b)),!e)throw new Error('Invalid interval string, expecting a number followed by one of "y M w d h m s ms"');var f=e[1],g=e[2];if(f%1!==0){if("ms"===g)throw new Error("Invalid interval value, cannot be smaller than the millisecond");f=Math.round(c.intervals_in_seconds[g]*f*1e3),g="ms"}switch(g){case"ms":g="milliseconds";break;case"s":g="seconds";break;case"m":g="minutes";break;case"h":g="hours";break;case"d":g="days";break;case"w":g="weeks";break;case"M":g="months";break;case"y":g="years";break;default:console.log("Unknown interval ",a)}return{value:f,unit:g}},g}])}),define("services/datasourceSrv",["angular","underscore","config","./graphite/graphiteDatasource","./influxdb/influxdbDatasource","./opentsdb/opentsdbDatasource","./kairosdb/kairosdbDatasource"],function(a,b,c){var d=a.module("kibana.services");d.service("datasourceSrv",["$q","filterSrv","$http","GraphiteDatasource","InfluxDatasource","OpenTSDBDatasource","KairosDBDatasource",function(a,d,e,f,g,h,i){this.init=function(){var a=b.findWhere(b.values(c.datasources),{"default":!0});a||(a=c.datasources[b.keys(c.datasources)[0]]),this.default=this.datasourceFactory(a)},this.datasourceFactory=function(a){switch(a.type){case"graphite":return new f(a);case"influxdb":return new g(a);case"opentsdb":return new h(a);case"kairosdb":return new i(a)}},this.get=function(a){if(!a)return this.default;var b=c.datasources[a];return b?this.datasourceFactory(b):null},this.listOptions=function(){return b.map(c.datasources,function(a,b){return{name:a.default?b+" (default)":b,value:a.default?null:b}})},this.init()}])}),define("services/filterSrv",["angular","underscore","config","kbn"],function(a,b,c,d){var e=a.module("kibana.services");e.factory("filterSrv",["dashboard","$rootScope","$timeout","$routeParams",function(a,c,e,f){var g={templateParameters:[],time:{}},h={updateTemplateData:function(a){var c={};b.each(this.templateParameters,function(b){if(a){var d=f[b.name];d&&(b.current={text:d,value:d})}b.current&&b.current.value&&(c[b.name]=b.current.value)}),this._templateData=c},addTemplateParameter:function(a){this.templateParameters.push(a),this.updateTemplateData()},applyTemplateToTarget:function(a){return-1===a.indexOf("[[")?a:b.template(a,this._templateData,this.templateSettings)},setTime:function(c){b.extend(this.time,c),"now"!==c.to?(this.old_refresh=this.dashboard.refresh,a.set_interval(!1)):this.old_refresh&&this.old_refresh!==this.dashboard.refresh&&(a.set_interval(this.old_refresh),this.old_refresh=null),e(function(){a.refresh()},0)},timeRange:function(a){var c=this.time;if(b.isUndefined(c)||b.isUndefined(c.from))return!1;if(a===!1)return{from:c.from,to:c.to};var e=c.from,f=c.to||new Date;return{from:d.parseDate(e),to:d.parseDate(f)}},removeTemplateParameter:function(a){this.templateParameters=b.without(this.templateParameters,a),this.dashboard.services.filter.list=this.templateParameters},init:function(a){b.defaults(this,g),this.dashboard=a,this.templateSettings={interpolate:/\[\[([\s\S]+?)\]\]/g},a.services&&a.services.filter&&(this.time=a.services.filter.time,this.templateParameters=a.services.filter.list||[],this.updateTemplateData(!0))}};return h}])}),define("services/timer",["angular","underscore"],function(a,b){var c=a.module("kibana.services");c.service("timer",["$timeout",function(a){var c=[];this.register=function(a){return c.push(a),a},this.cancel=function(d){c=b.without(c,d),a.cancel(d)},this.cancel_all=function(){b.each(c,function(b){a.cancel(b)}),c=[]}}])}),define("services/panelMove",["angular","underscore"],function(a,b){var c=a.module("kibana.services");c.service("panelMove",["dashboard","$rootScope",function(a,c){this.onStart=function(){a.panelDragging=!0,c.$apply()},this.onOver=function(){c.$apply()},this.onOut=function(){c.$apply()},this.onDrop=function(e,f,g){var h=g.draggableScope.$parent.$parent.row.panels,i=g.droppableScope.$parent.$parent.row.panels,j=g.dragSettings.index,k=g.dropSettings.index;h.splice(j,1),b.isUndefined(i)||i.splice(k,0,g.dragItem),a.panelDragging=!1,d(),c.$apply(),c.$broadcast("render")},this.onStop=function(){a.panelDragging=!1,d(),c.$apply()};var d=function(){b.each(a.current.rows,function(a){a.panels=b.without(a.panels,{}),a.panels=b.compact(a.panels)})}}])}),define("services/keyboardManager",["angular"],function(a){var b=a.module("kibana.services");b.factory("keyboardManager",["$window","$timeout",function(b,c){var d={},e={type:"keydown",propagate:!1,inputDisabled:!1,target:b.document,keyCode:!1};return d.keyboardEvent={},d.bind=function(f,g,h){var i,j,k,l;h=a.extend({},e,h),f=f.toLowerCase(),j=h.target,"string"==typeof h.target&&(j=document.getElementById(h.target)),i=function(a){if(a=a||b.event,h.inputDisabled){var d;if(a.target?d=a.target:a.srcElement&&(d=a.srcElement),3===d.nodeType&&(d=d.parentNode),"INPUT"===d.tagName||"TEXTAREA"===d.tagName)return}a.keyCode?k=a.keyCode:a.which&&(k=a.which);var e=String.fromCharCode(k).toLowerCase();188===k&&(e=","),190===k&&(e=".");for(var i=f.split("+"),j=0,m={"`":"~",1:"!",2:"@",3:"#",4:"$",5:"%",6:"^",7:"&",8:"*",9:"(",0:")","-":"_","=":"+",";":":","'":'"',",":"<",".":">","/":"?","\\":"|"},n={esc:27,escape:27,tab:9,space:32,"return":13,enter:13,backspace:8,scrolllock:145,scroll_lock:145,scroll:145,capslock:20,caps_lock:20,caps:20,numlock:144,num_lock:144,num:144,pause:19,"break":19,insert:45,home:36,"delete":46,end:35,pageup:33,page_up:33,pu:33,pagedown:34,page_down:34,pd:34,left:37,up:38,right:39,down:40,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123},o={shift:{wanted:!1,pressed:a.shiftKey?!0:!1},ctrl:{wanted:!1,pressed:a.ctrlKey?!0:!1},alt:{wanted:!1,pressed:a.altKey?!0:!1},meta:{wanted:!1,pressed:a.metaKey?!0:!1}},p=0,q=i.length;l=i[p],q>p;p++){switch(l){case"ctrl":case"control":j++,o.ctrl.wanted=!0;break;case"shift":case"alt":case"meta":j++,o[l].wanted=!0}l.length>1?n[l]===k&&j++:h.keyCode?h.keyCode===k&&j++:e===l?j++:m[e]&&a.shiftKey&&(e=m[e],e===l&&j++)}return j!==i.length||o.ctrl.pressed!==o.ctrl.wanted||o.shift.pressed!==o.shift.wanted||o.alt.pressed!==o.alt.wanted||o.meta.pressed!==o.meta.wanted||(c(function(){g(a)},1),h.propagate)?void 0:(a.cancelBubble=!0,a.returnValue=!1,a.stopPropagation&&(a.stopPropagation(),a.preventDefault()),!1)},d.keyboardEvent[f]={callback:i,target:j,event:h.type},j.addEventListener?j.addEventListener(h.type,i,!1):j.attachEvent?j.attachEvent("on"+h.type,i):j["on"+h.type]=i},d.unbind=function(a){a=a.toLowerCase();var b=d.keyboardEvent[a];if(delete d.keyboardEvent[a],b){var c=b.event,e=b.target,f=b.callback;e.detachEvent?e.detachEvent("on"+c,f):e.removeEventListener?e.removeEventListener(c,f,!1):e["on"+c]=!1}},d}])}),define("services/annotationsSrv",["angular","underscore","moment"],function(a,b,c){var d=a.module("kibana.services");d.service("annotationsSrv",["dashboard","datasourceSrv","$q","alertSrv","$rootScope",function(a,d,e,f,g){function h(a){console.log("Annotation error: ",a),f.set("Annotations","Could not fetch annotations","error")}function i(a,b){for(var c=0;c
    ";a.tags&&(b+=(a.tags||"")+"
    "),b+=""+c(a.time).format("YYYY-MM-DD HH:mm:ss")+"
    ",a.data&&(b+=a.data.replace(/\n/g,"
    ")),b+="",m.push({annotation:a.annotation,min:a.time,max:a.time,eventType:a.annotation.name,title:null,description:b,score:1})}var k,l,m=[];this.init=function(){g.$on("refresh",this.clearCache),g.$on("dashboard-loaded",this.dashboardLoaded),this.dashboardLoaded()},this.dashboardLoaded=function(){l=b.findWhere(a.current.pulldowns,{type:"annotations"})},this.clearCache=function(){k=null,m=[]},this.getAnnotations=function(a,b){if(!l.enable)return e.when(null);if(k)return k;var c=this.getGraphiteMetrics(a,b),d=this.getGraphiteEvents(b);return k=e.all(c.concat(d)).then(function(){return m})},this.getGraphiteEvents=function(a){var c=this.getAnnotationsByType("graphite events");if(0===c.length)return[];var e=b.map(c,function(c){return d.default.events({range:a,tags:c.tags}).then(function(a){b.each(a.data,function(a){j({annotation:c,time:1e3*a.when,description:a.what,tags:a.tags,data:a.data})})}).then(null,h)});return e},this.getAnnotationsByType=function(a){return b.where(l.annotations,{type:a,enable:!0})},this.getGraphiteMetrics=function(a,c){var e=this.getAnnotationsByType("graphite metric");if(0===e.length)return[];var f=b.map(e,function(e){var f={range:c,targets:[{target:e.target}],format:"json",maxDataPoints:100},g=b.partial(i,e);return d.default.query(a,f).then(g).then(null,h)});return f},this.init()}])}),define("services/playlistSrv",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.services");d.service("playlistSrv",["dashboard","$location","$rootScope",function(d,e,f){var g,h={dashboards:[]};this.init=function(){var b=window.localStorage["grafana-favorites"];b&&(h=a.fromJson(b))},this._save=function(){window.localStorage["grafana-favorites"]=a.toJson(h)},this._find=function(a){return b.findWhere(h.dashboards,{title:a})},this._remove=function(a){a&&(h.dashboards=b.without(h.dashboards,a))},this.isCurrentFavorite=function(){return this._find(d.current.title)?!0:!1},this.markAsFavorite=function(){var a=this._find(d.current.title);this._remove(a),h.dashboards.push({url:e.path(),title:d.current.title}),this._save()},this.removeAsFavorite=function(a){var b=this._find(a.title);this._remove(b),this._save()},this.getFavorites=function(){return h},this.start=function(b,d){var h=c.interval_to_ms(d),i=0;f.playlist_active=!0,g=setInterval(function(){f.$apply(function(){a.element(window).unbind("resize"),e.path(b[i%b.length].url),i++})},h)},this.stop=function(){clearInterval(g),f.playlist_active=!1},this.init()}])}),define("services/unsavedChangesSrv",["angular","underscore","config"],function(a,b,c){if(c.unsaved_changes_warning){var d=a.module("kibana.services");d.service("unsavedChangesSrv",["$rootScope","$modal","dashboard","$q","$location","$timeout",function(c,d,e,f,g,h){var i=this,j=c.$new();c.$on("dashboard-loaded",function(b,c){i.original=a.copy(c)}),c.$on("dashboard-saved",function(b,c){i.original=a.copy(c)}),c.$on("$routeChangeSuccess",function(){i.original=null}),window.onbeforeunload=function(){return i.has_unsaved_changes()?"There are unsaved changes to this dashboard":void 0},this.init=function(){c.$on("$locationChangeStart",function(a,b){i.has_unsaved_changes()&&(a.preventDefault(),i.next=b,i.open_modal())})},this.open_modal=function(){var a=d({template:"./app/partials/unsaved-changes.html",persist:!0,show:!1,scope:j,keyboard:!1});f.when(a).then(function(a){a.modal("show")})},this.has_unsaved_changes=function(){if(!i.original)return!1;var c=a.copy(e.current),d=i.original;c.services.filter.time=d.services.filter.time={},c.refresh=d.refresh;var f=b.findWhere(c.nav,{type:"timepicker"}),g=b.findWhere(d.nav,{type:"timepicker"});f&&g&&(f.now=g.now);var h=a.toJson(c),j=a.toJson(d);return h!==j?!0:!1},this.goto_next=function(){var a=g.absUrl().length-g.url().length,b=i.next.substring(a);g.url(b)},j.ignore=function(){i.original=null,i.goto_next()},j.save=function(){var a=c.$on("dashboard-saved",function(){i.goto_next()});h(a,2e3),c.$emit("save-dashboard")}}]).run(["unsavedChangesSrv",function(a){a.init()}])}}),define("services/all",["./alertSrv","./dashboard","./datasourceSrv","./filterSrv","./timer","./panelMove","./keyboardManager","./annotationsSrv","./playlistSrv","./unsavedChangesSrv"],function(){}),define("services/dashboard/dashboardKeyBindings",["angular","jquery","services/all"],function(a,b){var c=a.module("kibana.services.dashboard");c.service("dashboardKeybindings",["$rootScope","keyboardManager","dashboard",function(a,c,d){this.shortcuts=function(){a.$on("panel-fullscreen-enter",function(){a.fullscreen=!0}),a.$on("panel-fullscreen-exit",function(){a.fullscreen=!1}),a.$on("dashboard-saved",function(){a.fullscreen&&a.$emit("panel-fullscreen-exit")}),c.bind("ctrl+f",function(b){a.$emit("open-search",b)},{inputDisabled:!0}),c.bind("ctrl+h",function(){var a=d.current.hideControls;d.current.hideControls=!a,d.current.panel_hints=a},{inputDisabled:!0}),c.bind("ctrl+s",function(b){a.$emit("save-dashboard",b)},{inputDisabled:!0}),c.bind("ctrl+r",function(){d.refresh()},{inputDisabled:!0}),c.bind("ctrl+z",function(b){a.$emit("zoom-out",b)},{inputDisabled:!0}),c.bind("esc",function(){var c=b(".popover.in");c.length>0||a.$emit("panel-fullscreen-exit")},{inputDisabled:!0})}}])}),define("services/dashboard/all",["./dashboardKeyBindings"],function(){}),define("controllers/dash",["angular","jquery","config","underscore","services/all","services/dashboard/all"],function(a,b,c,d){var e=a.module("kibana.controllers");e.controller("DashCtrl",["$scope","$rootScope","$timeout","ejsResource","dashboard","filterSrv","dashboardKeybindings","alertSrv","panelMove","keyboardManager","grafanaVersion",function(a,b,e,f,g,h,i,j,k,l,m){a.requiredElasticSearchVersion=">=0.90.3",a.editor={index:0},a.grafanaVersion="@"===m[0]?"master":m,a.panelMoveDrop=k.onDrop,a.panelMoveStart=k.onStart,a.panelMoveStop=k.onStop,a.panelMoveOver=k.onOver,a.panelMoveOut=k.onOut,a.init=function(){a.config=c,a._=d,a.dashboard=g,a.dashAlerts=j,a.filter=h,a.filter.init(g.current),b.$on("dashboard-loaded",function(b,c){a.filter.init(c)}),j.clearAll(),a.reset_row(),a.ejs=f(c.elasticsearch,c.elasticsearchBasicAuth),a.bindKeyboardShortcuts()},a.bindKeyboardShortcuts=i.shortcuts,a.isPanel=function(a){return d.isNull(a)||d.isUndefined(a)||d.isUndefined(a.type)?!1:!0},a.add_row=function(a,b){a.rows.push(b)},a.add_row_default=function(){a.reset_row(),a.row.title="New row",a.add_row(g.current,a.row)},a.reset_row=function(){a.row={title:"",height:"250px",editable:!0}},a.row_style=function(a){return{"min-height":a.collapse?"5px":a.height}},a.panel_path=function(a){return a?"app/panels/"+a.replace(".","/"):!1},a.edit_path=function(b){var c=a.panel_path(b);return c?c+"/editor.html":!1},a.setEditorTabs=function(b){return a.editorTabs=["General","Panel"],d.isUndefined(b.editorTabs)||(a.editorTabs=d.union(a.editorTabs,d.pluck(b.editorTabs,"title"))),a.editorTabs},a.parse_error=function(a){var b=a.match("nested: (.*?);");return d.isNull(b)?a:b[1]},a.colors=["#7EB26D","#EAB839","#6ED0E0","#EF843C","#E24D42","#1F78C1","#BA43A9","#705DA0","#508642","#CCA300","#447EBC","#C15C17","#890F02","#0A437C","#6D1F62","#584477","#B7DBAB","#F4D598","#70DBED","#F9BA8F","#F29191","#82B5D8","#E5A8E2","#AEA2E0","#629E51","#E5AC0E","#64B0C8","#E0752D","#BF1B00","#0A50A1","#962D82","#614D93","#9AC48A","#F2C96D","#65C5DB","#F9934E","#EA6460","#5195CE","#D683CE","#806EB7","#3F6833","#967302","#2F575E","#99440A","#58140C","#052B51","#511749","#3F2B5B","#E0F9D7","#FCEACA","#CFFAFF","#F9E2D2","#FCE2DE","#BADFF4","#F9D9F9","#DEDAF7"],a.init()}])}),define("controllers/dashLoader",["angular","underscore","moment"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("dashLoader",["$scope","$rootScope","$http","dashboard","alertSrv","$location","playlistSrv",function(a,d,e,f,g,h,i){a.loader=f.current.loader,a.init=function(){a.gist_pattern=/(^\d{5,}$)|(^[a-z0-9]{10,}$)|(gist.github.com(\/*.*)\/[a-z0-9]{5,}\/*$)/,a.gist=a.gist||{},a.elasticsearch=a.elasticsearch||{},d.$on("save-dashboard",function(){a.elasticsearch_save("dashboard",!1)}),d.$on("zoom-out",function(){a.zoom(2)})},a.exitFullscreen=function(){d.$emit("panel-fullscreen-exit")},a.showDropdown=function(a){if(b.isUndefined(f.current.loader))return!0;var c=f.current.loader;return"load"===a?c.load_elasticsearch||c.load_gist||c.load_local:"save"===a?c.save_elasticsearch||c.save_gist||c.save_local||c.save_default:"share"===a?c.save_temp:!1},a.set_default=function(){f.set_default(h.path())?g.set("Home Set","This page has been set as your default dashboard","success",5e3):g.set("Incompatible Browser","Sorry, your browser is too old for this feature","error",5e3)},a.purge_default=function(){f.purge_default()?g.set("Local Default Clear","Your default dashboard has been reset to the default","success",5e3):g.set("Incompatible Browser","Sorry, your browser is too old for this feature","error",5e3)},a.elasticsearch_save=function(c,e){f.elasticsearch_save(c,f.current.title,e).then(function(e){return b.isUndefined(e._id)?void g.set("Save failed","Dashboard could not be saved to Elasticsearch","error",5e3):(g.set("Dashboard Saved",'Dashboard has been saved to Elasticsearch as "'+e._id+'"',"success",5e3),"temp"===c&&(a.share=f.share_link(f.current.title,"temp",e._id)),void d.$emit("dashboard-saved",f.current))})},a.elasticsearch_delete=function(c){confirm("Are you sure you want to delete dashboard?")&&f.elasticsearch_delete(c).then(function(d){if(b.isUndefined(d))g.set("Dashboard Not Deleted","An error occurred deleting the dashboard","error",5e3);else if(d.found){g.set("Dashboard Deleted",c+" has been deleted","success",5e3);var e=b.where(a.elasticsearch.dashboards,{_id:c})[0];a.elasticsearch.dashboards=b.without(a.elasticsearch.dashboards,e)}else g.set("Dashboard Not Found","Could not find "+c+" in Elasticsearch","warning",5e3)})},a.save_gist=function(){f.save_gist(a.gist.title).then(function(c){b.isUndefined(c)?g.set("Save failed","Gist could not be saved","error",5e3):(a.gist.last=c,g.set("Gist saved",'You will be able to access your exported dashboard file at '+c+" in a moment","success"))})},a.gist_dblist=function(b){f.gist_list(b).then(function(b){b&&b.length>0?a.gist.files=b:g.set("Gist Failed","Could not retrieve dashboard list from gist","error",5e3)})},a.zoom=function(a){var b=this.filter.timeRange(),d=b.to.valueOf()-b.from.valueOf(),e=b.to.valueOf()-d/2,f=e+d*a/2,g=e-d*a/2;if(f>Date.now()&&b.to=e&&(1===d?(b.row.panels[0].span=6,a.span=6):2===d&&(b.row.panels[0].span=4,b.row.panels[1].span=4,a.span=4)),b.row.panels.push(a)},b.delete_row=function(){confirm("Are you sure you want to delete this row?")&&(b.dashboard.current.rows=c.without(b.dashboard.current.rows,b.row))},b.move_row=function(a){var d=b.dashboard.current.rows,e=c.indexOf(d,b.row),f=e+a;f>=0&&f<=d.length-1&&c.move(d,e,e+a)},b.add_panel_default=function(a){b.reset_panel(a),b.add_panel(b.panel),e(function(){b.$broadcast("render")})},b.set_height=function(a){b.row.height=a,b.$broadcast("render")},b.remove_panel_from_row=function(a,b){confirm("Are you sure you want to remove this "+b.type+" panel?")&&(a.panels=c.without(a.panels,b))},b.duplicatePanel=function(d,e){e=e||b.row;var f=b.rowSpan(e);if(9>=f)e.panels.push(a.copy(d));else{var g=b.dashboard.current.rows,h=c.indexOf(g,e);if(h===g.length-1){var i=a.copy(b.row);i.panels=[],b.dashboard.current.rows.push(i),b.duplicatePanel(d,i)}else b.duplicatePanel(d,g[h+1])}},b.reset_panel=function(a){function d(a){return a?c.isString(a)?a:a+"px":"200px"}var e=4,f=12-b.rowSpan(b.row);b.panel={error:!1,span:e>f&&f>0?f:e,editable:!0,type:a},b.row.height=d(b.row.height)},b.init()}])}),define("controllers/submenuCtrl",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("SubmenuCtrl",["$scope",function(a){var b={enable:!0};c.defaults(a.pulldown,b),a.init=function(){a.panel=a.pulldown,a.row=a.pulldown},a.init()}])}),define("controllers/pulldown",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("PulldownCtrl",["$scope","$rootScope","$timeout",function(a,b,d){var e={collapse:!1,notice:!1,enable:!0};c.defaults(a.pulldown,e),a.init=function(){a.panel=a.pulldown,a.row=a.pulldown},a.toggle_pulldown=function(b){b.collapse=b.collapse?!1:!0,b.collapse?a.row.notice=!1:d(function(){a.$broadcast("render")})},a.init()}])}),define("controllers/search",["angular","underscore","config","jquery"],function(a,b,c,d){var e=a.module("kibana.controllers");e.controller("SearchCtrl",["$scope","$rootScope","dashboard","$element","$location",function(a,e,f,g,h){a.init=function(){a.giveSearchFocus=0,a.selectedIndex=-1,a.results={dashboards:[],tags:[],metrics:[]},a.query={query:"title:"},e.$on("open-search",a.openSearch)},a.keyDown=function(b){if(27===b.keyCode&&g.find(".dropdown-toggle").dropdown("toggle"),40===b.keyCode&&a.selectedIndex++,38===b.keyCode&&a.selectedIndex--,13===b.keyCode){if(a.tagsOnly){var c=a.results.tags[a.selectedIndex];return void(c&&a.filterByTag(c.term))}var e=a.results.dashboards[a.selectedIndex];e&&(h.path("/dashboard/elasticsearch/"+encodeURIComponent(e._id)),setTimeout(function(){d("body").click()}))}},a.searchDasboards=function(d){var e=a.ejs.Request().indices(c.grafana_index).types("dashboard"),f=0===d.indexOf("tags!:");if(f){var g=d.substring(6,d.length);d="tags:"+g+"*"}else 0===d.length&&(d="title:"),"*"!==d[d.length-1]&&(d+="*");return e.query(a.ejs.QueryStringQuery(d)).sort("_uid").facet(a.ejs.TermsFacet("tags").field("tags").order("term").size(50)).size(20).doSearch().then(function(c){return b.isUndefined(c.hits)?(a.results.dashboards=[],void(a.results.tags=[])):(a.tagsOnly=f,a.results.dashboards=c.hits.hits,void(a.results.tags=c.facets.tags.terms))})},a.filterByTag=function(b,c){a.query.query="tags:"+b+" AND title:",a.search(),a.giveSearchFocus=a.giveSearchFocus+1,c&&(c.stopPropagation(),c.preventDefault())},a.showTags=function(b){b.stopPropagation(),a.tagsOnly=!a.tagsOnly,a.query.query=a.tagsOnly?"tags!:":"",a.giveSearchFocus=a.giveSearchFocus+1,a.selectedIndex=-1,a.search()},a.search=function(){a.showImport=!1,a.selectedIndex=-1;var d=a.query.query.toLowerCase();if(0!==d.indexOf("m:"))return d=d.replace(" and "," AND "),void a.searchDasboards(d);d=d.substring(2,d.length);var e=d.split(" "),f=a.ejs.BoolQuery(),g=b.map(e,function(b){return a.ejs.MatchQuery("metricPath_ng",b).boost(1.2)}),h=a.ejs.BoolQuery();h.must(g);var i=a.ejs.FieldQuery("metricPath",d+"*").boost(1.2);f.should([h,i]);var j=a.ejs.Request().indices(c.grafana_index).types("metricKey"),k=j.query(f).size(20).doSearch();k.then(function(b){a.results.metrics=b&&b.hits&&b.hits.hits.length>0?{metrics:b.hits.hits}:{metric:[]}})},a.openSearch=function(b){b&&g.find(".dropdown-toggle").dropdown("toggle"),a.giveSearchFocus=a.giveSearchFocus+1,a.query.query="title:",a.search()},a.addMetricToCurrentDashboard=function(a){f.current.rows.push({title:"",height:"250px",editable:!0,panels:[{type:"graphite",title:"test",span:12,targets:[{target:a}]}]})},a.toggleImport=function(b){b.stopPropagation(),a.showImport=!a.showImport},a.newDashboard=function(){h.url("/dashboard/file/empty.json")}}]),e.directive("xngFocus",function(){return function(a,b,c){d(b).click(function(a){a.stopPropagation()}),a.$watch(c.xngFocus,function(a){setTimeout(function(){a&&b.focus()},200)},!0)}})}),define("controllers/metricKeys",["angular","underscore","config"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("MetricKeysCtrl",["$scope","$http","$q",function(d,e,f){function g(a,d,g){return f.all(b.map(c.datasources,function(b){return(b.type="graphite")?e.get(b.url+a).then(d,g):void 0}))}function h(a,b){return a||a.data||0!==a.data.length?a.data.length===b?f.when("done"):(b=b||0,l(a.data[b]).then(function(){return h(a,b+1)})):f.reject("No metrics from graphite")}function i(){var a=f.defer();return e.delete(n,o).success(function(){a.resolve("ok")}).error(function(b,c){404===c?a.resolve("ok"):a.reject("elastic search returned unexpected error")}),a.promise}function j(){return e.put(n,{settings:{analysis:{analyzer:{metric_path_ngram:{tokenizer:"my_ngram_tokenizer"}},tokenizer:{my_ngram_tokenizer:{type:"nGram",min_gram:"3",max_gram:"8",token_chars:["letter","digit","punctuation","symbol"]}}}},mappings:{metricKey:{properties:{metricPath:{type:"multi_field",fields:{metricPath:{type:"string",index:"analyzed",index_analyzer:"standard"},metricPath_ng:{type:"string",index:"analyzed",index_analyzer:"metric_path_ngram"}}}}}}},o)}function k(a){var c=a.data;if(!c||0===c.length)return void console.log("no data");var d=b.map(c,function(a){return a.expandable?m(a.id+".*"):a.leaf?l(a.id):void 0});return f.all(d)}function l(a){var b=d.ejs.Document(c.grafana_metrics_index,"metricKey",a).source({metricPath:a});return b.doIndex(function(){d.infoText="Indexing "+a,d.metricCounter=d.metricCounter+1},function(){d.errorText="failed to save metric "+a})}function m(a){return g("/metrics/find/?query="+a,k)}var n=c.elasticsearch+"/"+c.grafana_metrics_index+"/",o={};c.elasticsearchBasicAuth&&(o.withCredentials=!0,o.headers={Authorization:"Basic "+c.elasticsearchBasicAuth}),d.init=function(){d.metricPath="prod.apps.api.boobarella.*",d.metricCounter=0},d.createIndex=function(){d.errorText=null,d.infoText=null,i().then(j).then(function(){d.infoText="Index created!"}).then(null,function(b){d.errorText=a.toJson(b)})},d.loadMetricsFromPath=function(){return d.errorText=null,d.infoText=null,d.metricCounter=0,m(d.metricPath).then(function(){d.infoText="Indexing completed!"},function(a){d.errorText="Error: "+a})},d.loadAll=function(){d.infoText="Fetching all metrics from graphite...",g("/metrics/index.json",h).then(function(){d.infoText="Indexing complete!"}).then(null,function(a){d.errorText=a})}}])}),define("services/graphite/gfunc",["underscore"],function(a){function b(a){a.params=a.params||[],a.defaultParams=a.defaultParams||[],a.category&&a.category.push(a),d[a.name]=a,d[a.shortName||a.name]=a}function c(a){this.def=a,this.params=a.defaultParams.slice(0),this.updateText()}var d=[],e={Combine:[],Transform:[],Calculate:[],Filter:[],Special:[]};return b({name:"scaleToSeconds",category:e.Transform,params:[{name:"seconds",type:"int"}],defaultParams:[1]}),b({name:"holtWintersForecast",category:e.Calculate}),b({name:"holtWintersConfidenceBands",category:e.Calculate,params:[{name:"delta",type:"int"}],defaultParams:[3]}),b({name:"holtWintersAberration",category:e.Calculate,params:[{name:"delta",type:"int"}],defaultParams:[3]}),b({name:"nPercentile",category:e.Calculate,params:[{name:"Nth percentile",type:"int"}],defaultParams:[95]}),b({name:"sumSeries",shortName:"sum",category:e.Combine}),b({name:"averageSeries",shortName:"avg",category:e.Combine}),b({name:"isNonNull",category:e.Combine}),b({name:"rangeOfSeries",category:e.Combine}),b({name:"percentileOfSeries",category:e.Combine,params:[{name:"n",type:"int"},{name:"interpolate",type:"select",options:["true","false"]}],defaultParams:[95,"false"]}),b({name:"sumSeriesWithWildcards",category:e.Combine,params:[{name:"node",type:"int"}],defaultParams:[3]}),b({name:"maxSeries",shortName:"max",category:e.Combine}),b({name:"minSeries",shortName:"min",category:e.Combine}),b({name:"averageSeriesWithWildcards",category:e.Combine,params:[{name:"node",type:"int"}],defaultParams:[3]}),b({name:"alias",category:e.Special,params:[{name:"alias",type:"string"}],defaultParams:["alias"]}),b({name:"aliasSub",category:e.Special,params:[{name:"search",type:"string"},{name:"replace",type:"string"}],defaultParams:["",""]}),b({name:"stacked",category:e.Special,params:[{name:"stack",type:"string"}],defaultParams:["stacked"]}),b({name:"consolidateBy",category:e.Special,params:[{name:"function",type:"string",options:["sum","average","min","max"]}],defaultParams:["max"]}),b({name:"groupByNode",category:e.Special,params:[{name:"node",type:"int",options:[1,2,3,4,5,6,7,8,9,10,12]},{name:"function",type:"string",options:["sum","avg"]}],defaultParams:[3,"sum"]}),b({name:"aliasByNode",category:e.Special,params:[{name:"node",type:"int",options:[0,1,2,3,4,5,6,7,8,9,10,12]},{name:"node",type:"int",options:[0,-1,-2,-3,-4,-5,-6,-7],optional:!0}],defaultParams:[3]}),b({name:"substr",category:e.Special,params:[{name:"start",type:"int",options:[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,12]},{name:"stop",type:"int",options:[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,12]}],defaultParams:[0,0]}),b({name:"sortByName",category:e.Special}),b({name:"sortByMaxima",category:e.Special}),b({name:"sortByMinima",category:e.Special}),b({name:"sortByTotal",category:e.Special}),b({name:"aliasByMetric",category:e.Special}),b({name:"randomWalk",category:e.Special,params:[{name:"name",type:"string"}],defaultParams:["randomWalk"]}),b({name:"countSeries",category:e.Special}),b({name:"constantLine",category:e.Special,params:[{name:"value",type:"int"}],defaultParams:[10]}),b({name:"cactiStyle",category:e.Special}),b({name:"keepLastValue",category:e.Special,params:[{name:"n",type:"int"}],defaultParams:[100]}),b({name:"scale",category:e.Transform,params:[{name:"factor",type:"int"}],defaultParams:[1]}),b({name:"offset",category:e.Transform,params:[{name:"amount",type:"int"}],defaultParams:[10]}),b({name:"transformNull",category:e.Transform,params:[{name:"amount",type:"int"}],defaultParams:[0]}),b({name:"integral",category:e.Transform}),b({name:"derivative",category:e.Transform}),b({name:"nonNegativeDerivative",category:e.Transform,params:[{name:"max value or 0",type:"int"}],defaultParams:[0]}),b({name:"timeShift",category:e.Transform,params:[{name:"amount",type:"select",options:["1h","6h","12h","1d","2d","7d","14d","30d"]}],defaultParams:["1d"]}),b({name:"summarize",category:e.Transform,params:[{name:"interval",type:"string"},{name:"func",type:"select",options:["sum","avg","min","max","last"]}],defaultParams:["1h","sum"]}),b({name:"smartSummarize",category:e.Transform,params:[{name:"interval",type:"string"},{name:"func",type:"select",options:["sum","avg","min","max","last"]}],defaultParams:["1h","sum"]}),b({name:"absolute",category:e.Transform}),b({name:"hitcount",category:e.Transform,params:[{name:"interval",type:"string"}],defaultParams:["10s"]}),b({name:"log",category:e.Transform,params:[{name:"base",type:"int"}],defaultParams:["10"]}),b({name:"averageAbove",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"averageBelow",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"currentAbove",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"currentBelow",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[25]}),b({name:"maximumAbove",category:e.Filter,params:[{name:"value",type:"int"}],defaultParams:[0]}),b({name:"maximumBelow",category:e.Filter,params:[{name:"value",type:"int"}],defaultParams:[0]}),b({name:"minimumAbove",category:e.Filter,params:[{name:"value",type:"int"}],defaultParams:[0]}),b({name:"limit",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"mostDeviant",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[10]}),b({name:"exclude",category:e.Filter,params:[{name:"exclude",type:"string"}],defaultParams:["exclude"]}),b({name:"highestCurrent",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"highestMax",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"lowestCurrent",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"movingAverage",category:e.Filter,params:[{name:"window size",type:"int"}],defaultParams:[10]}),b({name:"movingMedian",category:e.Filter,params:[{name:"windowSize",type:"select",options:["1min","5min","15min","30min","1hour"]}],defaultParams:["1min"]}),b({name:"stdev",category:e.Filter,params:[{name:"n",type:"int"},{name:"tolerance",type:"int"}],defaultParams:[5,.1]}),b({name:"highestAverage",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"lowestAverage",category:e.Filter,params:[{name:"count",type:"int"}],defaultParams:[5]}),b({name:"removeAbovePercentile",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"removeAboveValue",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"removeBelowPercentile",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),b({name:"removeBelowValue",category:e.Filter,params:[{name:"n",type:"int"}],defaultParams:[5]}),a.each(e,function(b,c){e[c]=a.sortBy(b,"name") -}),c.prototype.render=function(b){var c=this.def.name+"(",d=a.map(this.params,function(b){return a.isString(b)?"'"+b+"'":b});return void 0!==b&&d.unshift(b),c+d.join(",")+")"},c.prototype._hasMultipleParamsInString=function(a,b){return-1===a.indexOf(",")?!1:this.def.params[b+1]&&this.def.params[b+1].optional},c.prototype.updateParam=function(b,c){return this._hasMultipleParamsInString(b,c)?void a.each(b.split(","),function(a,b){this.updateParam(a.trim(),b)},this):(""===b&&this.def.params[c].optional?this.params.splice(c,1):this.params[c]="int"===this.def.params[c].type?parseFloat(b,10):b,void this.updateText())},c.prototype.updateText=function(){if(0===this.params.length)return void(this.text=this.def.name+"()");var b=this.def.name+"(";a.each(this.def.params,function(a,c){a.optional&&void 0===this.params[c]||(b+=this.params[c]+", ")},this),b=b.substring(0,b.length-2),b+=")",this.text=b},{createFuncInstance:function(b){if(a.isString(b)){if(!d[b])throw{message:"Method not found "+name};b=d[b]}return new c(b)},getFuncDef:function(a){return d[a]},getCategories:function(){return e}}}),define("services/graphite/lexer",["underscore"],function(a){function b(a){this.input=a,this.char=1,this.from=1}for(var c=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4304,4346,4348,4348,4352,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7104,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11520,11557,11568,11621,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,13312,19893,19893,19968,19968,40907,40907,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42897,42912,42921,43002,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,44032,55203,55203,55216,55238,55243,55291,63744,64045,64048,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66334,66352,66378,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67840,67861,67872,67897,68096,68096,68112,68115,68117,68119,68121,68147,68192,68220,68352,68405,68416,68437,68448,68466,68608,68680,69635,69687,69763,69807,73728,74606,74752,74850,77824,78894,92160,92728,110592,110593,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,131072,131072,173782,173782,173824,173824,177972,177972,177984,177984,178205,178205,194560,195101],d=[],e=0;128>e;e++)d[e]=e>=48&&57>=e||36===e||e>=65&&90>=e||95===e||45===e||42===e||58===e||37===e||e>=97&&122>=e;for(var f=[],g=0;128>g;g++)f[g]=d[g]||g>=48&&57>=g;return b.prototype={peek:function(a){return this.input.charAt(a||0)},skip:function(a){a=a||1,this.char+=a,this.input=this.input.slice(a)},tokenize:function(){for(var a,b=[];a=this.next();)b.push(a);return b},next:function(){this.from=this.char;var a;if(/\s/.test(this.peek())){for(a=this.char;/\s/.test(this.peek());)this.from+=1,this.skip();if(""===this.peek())return null}var b=this.scanStringLiteral();return b?b:(b=this.scanPunctuator()||this.scanNumericLiteral()||this.scanIdentifier()||this.scanTemplateSequence(),b?(this.skip(b.value.length),b):null)},scanTemplateSequence:function(){return"["===this.peek()&&"["===this.peek(1)?{type:"templateStart",value:"[[",pos:this.char}:"]"===this.peek()&&"]"===this.peek(1)?{type:"templateEnd",value:"[[",pos:this.char}:null},scanIdentifier:function(){function b(a){for(var b=0;bc?d[c]?(j+=1,a):null:b(c)?(j+=1,a):null},this),m=a.bind(function(){var a=this.peek(j),c=a.charCodeAt(0);return 92===c?k():128>c?f[c]?(j+=1,a):null:b(c)?(j+=1,a):null},this);if(h=l(),null===h)return null;for(i=h;h=m(),null!==h;)i+=h;switch(i){default:g="identifier"}return{type:g,value:i,pos:this.char}},scanNumericLiteral:function(){function a(a){return/^[0-9]$/.test(a)}function b(a){return/^[0-7]$/.test(a)}function c(a){return/^[0-9a-fA-F]$/.test(a)}function d(a){return"$"===a||"_"===a||"\\"===a||a>="a"&&"z">=a||a>="A"&&"Z">=a}var e,f=0,g="",h=this.input.length,i=this.peek(f);if("-"===i&&(g+=i,f+=1,i=this.peek(f)),"."!==i&&!a(i))return null;if("."!==i){if(g+=this.peek(f),f+=1,i=this.peek(f),"0"===g){if("x"===i||"X"===i){for(f+=1,g+=i;h>f&&(i=this.peek(f),c(i));)g+=i,f+=1;return g.length<=2?{type:"number",value:g,isMalformed:!0,pos:this.char}:h>f&&(i=this.peek(f),d(i))?null:{type:"number",value:g,base:16,isMalformed:!1,pos:this.char}}if(b(i)){for(f+=1,g+=i,e=!1;h>f;){if(i=this.peek(f),a(i))e=!0;else if(!b(i))break;g+=i,f+=1}return h>f&&(i=this.peek(f),d(i))?null:{type:"number",value:g,base:8,isMalformed:!1}}a(i)&&(f+=1,g+=i)}for(;h>f&&(i=this.peek(f),a(i));)g+=i,f+=1}if("."===i)for(g+=i,f+=1;h>f&&(i=this.peek(f),a(i));)g+=i,f+=1;if("e"===i||"E"===i){if(g+=i,f+=1,i=this.peek(f),("+"===i||"-"===i)&&(g+=this.peek(f),f+=1),i=this.peek(f),!a(i))return null;for(g+=i,f+=1;h>f&&(i=this.peek(f),a(i));)g+=i,f+=1}return h>f&&(i=this.peek(f),!this.isPunctuator(i))?null:{type:"number",value:g,base:10,pos:this.char,isMalformed:!isFinite(g)}},isPunctuator:function(a){switch(a){case".":case"(":case")":case",":case"{":case"}":return!0}return!1},scanPunctuator:function(){var a=this.peek();return this.isPunctuator(a)?{type:a,value:a,pos:this.char}:null},scanStringLiteral:function(){var a=this.peek();if('"'!==a&&"'"!==a)return null;var b="";for(this.skip();this.peek()!==a;){if(""===this.peek())return{type:"string",value:b,isUnclosed:!0,quote:a,pos:this.char};var c=this.peek(),d=1;b+=c,this.skip(d)}return this.skip(),{type:"string",value:b,isUnclosed:!1,quote:a,pos:this.char}}},b}),define("services/graphite/parser",["./lexer"],function(a){function b(b){this.expression=b,this.lexer=new a(b),this.tokens=this.lexer.tokenize(),this.index=0}return b.prototype={getAst:function(){return this.start()},start:function(){try{return this.functionCall()||this.metricExpression()}catch(a){return{type:"error",message:a.message,pos:a.pos}}},curlyBraceSegment:function(){if(this.match("identifier","{")||this.match("{")){for(var a="";!this.match("")&&!this.match("}");)a+=this.consumeToken().value;return this.match("}")||this.errorMark("Expected closing '}'"),a+=this.consumeToken().value,this.match("identifier")&&(a+=this.consumeToken().value),{type:"segment",value:a}}return null},metricSegment:function(){var a=this.curlyBraceSegment();if(a)return a;if(this.match("identifier")||this.match("number"))return{type:"segment",value:this.consumeToken().value};this.match("templateStart")||this.errorMark("Expected metric identifier"),this.consumeToken(),this.match("identifier")||this.errorMark("Expected identifier after templateStart");var b={type:"template",value:this.consumeToken().value};return this.match("templateEnd")||this.errorMark("Expected templateEnd"),this.consumeToken(),b},metricExpression:function(){if(!this.match("templateStart")&&!this.match("identifier")&&!this.match("number"))return null;var a={type:"metric",segments:[]};for(a.segments.push(this.metricSegment());this.match(".");){this.consumeToken();var b=this.metricSegment();b||this.errorMark("Expected metric identifier"),a.segments.push(b)}return a},functionCall:function(){if(!this.match("identifier","("))return null;var a={type:"function",name:this.consumeToken().value};return this.consumeToken(),a.params=this.functionParameters(),this.match(")")||this.errorMark("Expected closing paranthesis"),this.consumeToken(),a},functionParameters:function(){if(this.match(")")||this.match(""))return[];var a=this.functionCall()||this.numericLiteral()||this.metricExpression()||this.stringLiteral();return this.match(",")?(this.consumeToken(),[a].concat(this.functionParameters())):[a]},numericLiteral:function(){return this.match("number")?{type:"number",value:parseFloat(this.consumeToken().value)}:null},stringLiteral:function(){if(!this.match("string"))return null;var a=this.consumeToken();if(a.isUnclosed)throw{message:"Unclosed string parameter",pos:a.pos};return{type:"string",value:a.value}},errorMark:function(a){var b=this.tokens[this.index],c=b?b.type:"end of string";throw{message:a+" instead found "+c,pos:b?b.pos:this.lexer.char}},consumeToken:function(){return this.index++,this.tokens[this.index-1]},matchToken:function(a,b){var c=this.tokens[this.index+b];return void 0===c&&""===a||c&&c.type===a},match:function(a,b){return this.matchToken(a,0)&&(!b||this.matchToken(b,1))}},b}),define("controllers/graphiteTarget",["angular","underscore","config","../services/graphite/gfunc","../services/graphite/parser"],function(a,b,c,d,e){var f=a.module("kibana.controllers");f.controller("GraphiteTargetCtrl",["$scope",function(c){function f(){c.functions=[],c.segments=[],c.showTextEditor=!1,delete c.parserError;var a=new e(c.target.target),b=a.getAst();if(null===b)return void i(0);if("error"===b.type)return c.parserError=b.message+" at position: "+b.pos,void(c.showTextEditor=!0);try{g(b)}catch(d){console.log("error parsing target:",d.message),c.parserError=d.message,c.showTextEditor=!0}i(c.segments.length-1)}function g(a,e,f){if(null===a)return null;switch(a.type){case"function":var h=d.createFuncInstance(a.name);b.each(a.params,function(a,b){g(a,h,b)}),h.updateText(),c.functions.push(h);break;case"string":case"number":if(f-1>=e.def.params.length)throw{message:"invalid number of parameters to method "+e.def.name};0===f?e.params[f]=a.value:e.params[f-1]=a.value;break;case"metric":if(c.segments.length>0)throw{message:"Multiple metric params not supported, use text editor."};c.segments=b.map(a.segments,function(a){var b={type:a.type,val:a.value,html:a.value};return"*"===a.value&&(b.html=''),"template"===a.type&&(b.val=b.html="[["+a.value+"]]",b.html=""+b.html+""),b})}}function h(a){var d=c.segments.slice(0,a);return b.reduce(d,function(a,b){return a?a+"."+b.val:b.val},"")}function i(a){if(0===a)return void c.segments.push({html:"select metric"});var b=h(a+1);return c.datasource.metricFindQuery(c.filter,b).then(function(b){if(0===b.length)return c.segments=c.segments.splice(0,a),void c.segments.push({html:"select metric"});if(b[0].expandable){if(c.segments.length!==a)return i(a+1);c.segments.push({html:"select metric"})}}).then(null,function(a){c.parserError=a.message||"Failed to issue metric query"})}function j(a){b.each(c.segments,function(b,c){b.focus=a===c})}function k(a,b){return b.render(a)}c.init=function(){c.target.target=c.target.target||"",f()},c.getAltSegments=function(a){c.altSegments=[];var d=0===a?"*":h(a)+".*";return c.datasource.metricFindQuery(c.filter,d).then(function(a){b.each(a,function(a){a.html=a.val=a.text}),b.each(c.filter.templateParameters,function(b){a.unshift({type:"template",html:"[["+b.name+"]]",val:"[["+b.name+"]]",expandable:!0})}),a.unshift({val:"*",html:'',expandable:!0}),c.altSegments=a}).then(null,function(a){c.parserError=a.message||"Failed to issue metric query"})},c.setSegment=function(a,b){return delete c.parserError,c.segments[b].val=c.altSegments[a].val,c.segments[b].html=c.altSegments[a].html,c.altSegments[a].expandable?i(b+1).then(function(){j(b+1),c.targetChanged()}):(c.segments=c.segments.splice(0,b+1),j(b+1),void c.targetChanged())},c.targetTextChanged=function(){f(),c.$parent.get_data()},c.targetChanged=function(){if(!c.parserError){var a=c.target.target,d=h(c.segments.length);c.target.target=b.reduce(c.functions,k,d),c.target.target!==a&&c.$parent.get_data()}},c.removeFunction=function(a){c.functions=b.without(c.functions,a),c.targetChanged()},c.addFunction=function(a){var b=d.createFuncInstance(a);b.added=!0,c.functions.push(b),c.moveAliasFuncLast(),c.smartlyHandleNewAliasByNode(b),!b.params.length&&b.added&&c.targetChanged()},c.moveAliasFuncLast=function(){var a=b.find(c.functions,function(a){return"alias"===a.def.name||"aliasByNode"===a.def.name||"aliasByMetric"===a.def.name});a&&(c.functions=b.without(c.functions,a),c.functions.push(a))},c.smartlyHandleNewAliasByNode=function(a){if("aliasByNode"===a.def.name)for(var b=0;b=0)return a.params[0]=b,a.added=!1,void c.targetChanged()},c.duplicate=function(){var b=a.copy(c.target);c.panel.targets.push(b)}}]),f.directive("focusMe",["$timeout","$parse",function(a,b){return{link:function(c,d,e){var f=b(e.focusMe);c.$watch(f,function(b){b===!0&&a(function(){d[0].focus()})})}}}])}),define("controllers/graphiteImport",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("GraphiteImportCtrl",["$scope","$rootScope","$timeout","datasourceSrv","dashboard",function(b,d,e,f,g){function h(b,d){var e,f,h,i=2,j=300;e={title:"",panels:[],height:j},f=a.copy(e);var k=a.copy(g.current);k.rows=[],k.title=b.name,k.rows.push(f),c.each(b.graphs,function(b){f.panels.length===i&&(f=a.copy(e),k.rows.push(f)),h={type:"graphite",span:12/i,title:b[1].title,targets:[],datasource:d},c.each(b[1].target,function(a){h.targets.push({target:a})}),f.panels.push(h)}),g.dash_load(k)}b.init=function(){console.log("hej!"),b.datasources=f.listOptions(),b.setDatasource(null)},b.setDatasource=function(a){return b.datasource=f.get(a),b.datasource?void 0:void(b.error="Cannot find datasource "+a)},b.listAll=function(a){delete b.error,b.datasource.listDashboards(a).then(function(a){b.dashboards=a}).then(null,function(a){b.error=a.message||"Error while fetching list of dashboards"})},b.import=function(a){delete b.error,b.datasource.loadDashboard(a).then(function(a){if(!a.data||!a.data.state)throw{message:"no dashboard state received from graphite"};h(a.data.state,b.datasource.name)}).then(null,function(a){b.error=a.message||"Failed to import dashboard"})}}])}),define("controllers/influxTargetCtrl",["angular"],function(a){var b=a.module("kibana.controllers"),c=null;b.controller("InfluxTargetCtrl",["$scope","$timeout",function(b,d){b.init=function(){b.target.function=b.target.function||"mean",b.target.column=b.target.column||"value",b.rawQuery=!1,b.functions=["count","mean","sum","min","max","mode","distinct","median","derivative","stddev","first","last","difference"],b.operators=["=","=~",">","<","!~","<>"],b.oldSeries=b.target.series,b.$on("typeahead-updated",function(){d(b.get_data)})},b.showQuery=function(){b.target.rawQuery=!0},b.hideQuery=function(){b.target.rawQuery=!1},b.seriesBlur=function(){b.oldSeries!==b.target.series&&(b.oldSeries=b.target.series,b.columnList=null,b.get_data())},b.changeFunction=function(a){b.target.function=a,b.get_data()},b.listColumns=function(a,c){return b.columnList?b.columnList:void b.$apply(function(){b.datasource.listColumns(b.target.series).then(function(a){b.columnList=a,c(a)})})},b.listSeries=function(a,d){return c&&""!==a?c:(c=[],void b.datasource.listSeries().then(function(a){c=a,d(c)}))},b.duplicate=function(){var c=a.copy(b.target);b.panel.targets.push(c)}}])}),define("controllers/playlistCtrl",["angular","underscore","config"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("PlaylistCtrl",["$scope","playlistSrv",function(a,d){a.init=function(){a.timespan=c.playlist_timespan,a.loadFavorites(),a.$on("modal-opened",a.loadFavorites)},a.loadFavorites=function(){a.favDashboards=d.getFavorites().dashboards,b.each(a.favDashboards,function(a){a.include=!0})},a.removeAsFavorite=function(b){d.removeAsFavorite(b),a.loadFavorites()},a.start=function(){var c=b.where(a.favDashboards,{include:!0});d.start(c,a.timespan)}}])}),define("controllers/inspectCtrl",["angular"],function(a){var b=a.module("kibana.controllers");b.controller("InspectCtrl",["$scope",function(a){function b(a){for(var b=[],c=a.split("&"),d=0;d0&&b.push({key:e[0],value:window.unescape(e[1])})}return b}var c=a.inspector;a.init=function(){a.editor={index:0},c.error&&(c.error.stack?(a.editor.index=2,a.stack_trace=c.error.stack,a.message=c.error.message):c.error.config&&c.error.config.data&&(a.editor.index=1,a.request_parameters=b(c.error.config.data),-1!==c.error.data.indexOf("DOCTYPE")&&(a.response_html=c.error.data)))}}]),a.module("kibana.directives").directive("iframeContent",["$parse",function(a){return{restrict:"A",link:function(b,c,d){var e=a(d.iframeContent),f=e(b);b.$on("$destroy",function(){c.remove()});var g=document.createElement("iframe");g.width="100%",g.height="400px",g.style.border="none",g.src="about:blank",c.append(g),g.contentWindow.document.open("text/html","replace"),g.contentWindow.document.write(f),g.contentWindow.document.close()}}}])}),define("controllers/opentsdbTargetCtrl",["angular","underscore","kbn"],function(a,b,c){var d=a.module("kibana.controllers");d.controller("OpenTSDBTargetCtrl",["$scope","$timeout",function(d,e){function f(a){var d={};if(a.metric||(d.metric="You must supply a metric name."),a.shouldDownsample)try{a.downsampleInterval?c.describe_interval(a.downsampleInterval):d.downsampleInterval="You must supply a downsample interval (e.g. '1m' or '1h')."}catch(e){d.downsampleInterval=e.message}return a.tags&&b.has(a.tags,a.currentTagKey)&&(d.tags="Duplicate tag key '"+a.currentTagKey+"'."),d}d.init=function(){d.target.errors=f(d.target),d.aggregators=["avg","sum","min","max","dev","zimsum","mimmin","mimmax"],d.target.aggregator||(d.target.aggregator="sum"),d.target.downsampleAggregator||(d.target.downsampleAggregator="sum"),d.$on("typeahead-updated",function(){e(d.targetBlur)})},d.targetBlur=function(){d.target.errors=f(d.target),!b.isEqual(d.oldTarget,d.target)&&b.isEmpty(d.target.errors)&&(d.oldTarget=a.copy(d.target),d.get_data())},d.duplicate=function(){var b=a.copy(d.target);d.panel.targets.push(b)},d.suggestMetrics=function(a,b){d.datasource.performSuggestQuery(a,"metrics").then(b)},d.suggestTagKeys=function(a,b){d.datasource.performSuggestQuery(a,"tagk").then(b)},d.suggestTagValues=function(a,b){d.datasource.performSuggestQuery(a,"tagv").then(b)},d.addTag=function(){return d.addTagMode?(d.target.tags||(d.target.tags={}),d.target.errors=f(d.target),d.target.errors.tags||(d.target.tags[d.target.currentTagKey]=d.target.currentTagValue,d.target.currentTagKey="",d.target.currentTagValue="",d.targetBlur()),void(d.addTagMode=!1)):void(d.addTagMode=!0)},d.removeTag=function(a){delete d.target.tags[a],d.targetBlur()}}])}),define("controllers/kairosdbTargetCtrl",["angular","underscore"],function(a,b){var c=a.module("kibana.controllers"),d=null;c.controller("KairosDBTargetCtrl",["$scope",function(c){function e(a){return parseInt(a)%1===0}function f(a){var b={};a.metric||(b.metric="You must supply a metric name.");try{a.sampling&&c.datasource.convertToKairosInterval(a.sampling)}catch(d){b.sampling=d.message}return b}c.init=function(){c.panel.stack=!1,c.target.downsampling||(c.target.downsampling="avg"),c.target.errors=f(c.target)},c.targetBlur=function(){c.target.errors=f(c.target),!b.isEqual(c.oldTarget,c.target)&&b.isEmpty(c.target.errors)&&(c.oldTarget=a.copy(c.target),c.get_data())},c.duplicate=function(){var b=a.copy(c.target);c.panel.targets.push(b)},c.suggestMetrics=function(a,b){d?b(d):c.updateMetricList()},c.updateMetricList=function(){c.metricListLoading=!0,d=[],c.datasource.performMetricSuggestQuery().then(function(a){return d=a,c.metricListLoading=!1,d})},c.suggestTagKeys=function(a,b){c.updateTimeRange(),b(c.datasource.performTagSuggestQuery(c.target.metric,c.rangeUnparsed,"key",""))},c.suggestTagValues=function(a,b){b(c.datasource.performTagSuggestQuery(c.target.metric,c.rangeUnparsed,"value",c.target.currentTagKey))},c.addFilterTag=function(){return c.addFilterTagMode?(c.target.tags||(c.target.tags={}),c.validateFilterTag(),c.target.errors.tags||(b.has(c.target.tags,c.target.currentTagKey)||(c.target.tags[c.target.currentTagKey]=[]),c.target.tags[c.target.currentTagKey].push(c.target.currentTagValue),c.target.currentTagKey="",c.target.currentTagValue="",c.targetBlur()),void(c.addFilterTagMode=!1)):(c.addFilterTagMode=!0,void c.validateFilterTag())},c.removeFilterTag=function(a){delete c.target.tags[a],0===b.size(c.target.tags)&&(c.target.tags=null),c.targetBlur()},c.validateFilterTag=function(){c.target.errors.tags=null,c.target.currentTagKey&&c.target.currentTagValue||(c.target.errors.tags="You must specify a tag name and value.")},c.addGroupBy=function(){if(!c.addGroupByMode)return c.addGroupByMode=!0,c.target.currentGroupByType="tag",c.isTagGroupBy=!0,void c.validateGroupBy();if(c.validateGroupBy(),b.isEmpty(c.target.errors.groupBy)){if(c.isTagGroupBy)c.target.groupByTags||(c.target.groupByTags=[]),console.log(c.target.groupBy.tagKey),b.contains(c.target.groupByTags,c.target.groupBy.tagKey)||(c.target.groupByTags.push(c.target.groupBy.tagKey),c.targetBlur()),c.target.groupBy.tagKey="";else{c.target.nonTagGroupBys||(c.target.nonTagGroupBys=[]);var a={name:c.target.currentGroupByType};c.isValueGroupBy?a.range_size=c.target.groupBy.valueRange:c.isTimeGroupBy&&(a.range_size=c.target.groupBy.timeInterval,a.group_count=c.target.groupBy.groupCount),c.target.nonTagGroupBys.push(a)}c.targetBlur()}c.isTagGroupBy=!1,c.isValueGroupBy=!1,c.isTimeGroupBy=!1,c.addGroupByMode=!1},c.removeGroupByTag=function(a){c.target.groupByTags.splice(a,1),0===b.size(c.target.groupByTags)&&(c.target.groupByTags=null),c.targetBlur()},c.removeNonTagGroupBy=function(a){c.target.nonTagGroupBys.splice(a,1),0===b.size(c.target.nonTagGroupBys)&&(c.target.nonTagGroupBys=null),c.targetBlur()},c.changeGroupByInput=function(){c.isTagGroupBy="tag"===c.target.currentGroupByType,c.isValueGroupBy="value"===c.target.currentGroupByType,c.isTimeGroupBy="time"===c.target.currentGroupByType,c.validateGroupBy()},c.validateGroupBy=function(){delete c.target.errors.groupBy;var a={};if(c.isGroupByValid=!0,c.isTagGroupBy&&(c.target.groupBy.tagKey||(c.isGroupByValid=!1,a.tagKey="You must supply a tag name")),c.isValueGroupBy&&(c.target.groupBy.valueRange&&e(c.target.groupBy.valueRange)||(a.valueRange="Range must be an integer",c.isGroupByValid=!1)),c.isTimeGroupBy){try{c.datasource.convertToKairosInterval(c.target.groupBy.timeInterval)}catch(d){a.timeInterval=d.message,c.isGroupByValid=!1}c.target.groupBy.groupCount&&e(c.target.groupBy.groupCount)||(a.groupCount="Group count must be an integer",c.isGroupByValid=!1)}b.isEmpty(a)||(c.target.errors.groupBy=a)},c.addHorizontalAggregator=function(){if(!c.addHorizontalAggregatorMode)return c.addHorizontalAggregatorMode=!0,c.target.currentHorizontalAggregatorName="avg",c.hasSamplingRate=!0,void c.validateHorizontalAggregator();if(c.validateHorizontalAggregator(),b.isEmpty(c.target.errors.horAggregator)){c.target.horizontalAggregators||(c.target.horizontalAggregators=[]);var a={name:c.target.currentHorizontalAggregatorName};c.hasSamplingRate&&(a.sampling_rate=c.target.horAggregator.samplingRate),c.hasUnit&&(a.unit=c.target.horAggregator.unit),c.hasFactor&&(a.factor=c.target.horAggregator.factor),c.hasPercentile&&(a.percentile=c.target.horAggregator.percentile),c.target.horizontalAggregators.push(a),c.targetBlur()}c.addHorizontalAggregatorMode=!1,c.hasSamplingRate=!1,c.hasUnit=!1,c.hasFactor=!1,c.hasPercentile=!1},c.removeHorizontalAggregator=function(a){c.target.horizontalAggregators.splice(a,1),0===b.size(c.target.horizontalAggregators)&&(c.target.horizontalAggregators=null),c.targetBlur()},c.changeHorAggregationInput=function(){c.hasSamplingRate=b.contains(["avg","dev","max","min","sum","least_squares","count","percentile"],c.target.currentHorizontalAggregatorName),c.hasUnit=b.contains(["sampler","rate"],c.target.currentHorizontalAggregatorName),c.hasFactor=b.contains(["div","scale"],c.target.currentHorizontalAggregatorName),c.hasPercentile="percentile"===c.target.currentHorizontalAggregatorName,c.validateHorizontalAggregator()},c.validateHorizontalAggregator=function(){delete c.target.errors.horAggregator;var a={};if(c.isAggregatorValid=!0,c.hasSamplingRate)try{c.datasource.convertToKairosInterval(c.target.horAggregator.samplingRate)}catch(d){a.samplingRate=d.message,c.isAggregatorValid=!1}c.hasFactor&&(c.target.horAggregator.factor?0===parseInt(c.target.horAggregator.factor)&&"div"===c.target.currentHorizontalAggregatorName&&(a.factor="Cannot divide by 0",c.isAggregatorValid=!1):(a.factor="You must supply a numeric value for this aggregator",c.isAggregatorValid=!1)),c.hasPercentile&&(!c.target.horAggregator.percentile||c.target.horAggregator.percentile<=0||c.target.horAggregator.percentile>1)&&(a.percentile="Percentile must be between 0 and 1",c.isAggregatorValid=!1),b.isEmpty(a)||(c.target.errors.horAggregator=a)},c.alert=function(a){alert(a)}}])}),define("controllers/all",["./dash","./dashLoader","./row","./submenuCtrl","./pulldown","./search","./metricKeys","./graphiteTarget","./graphiteImport","./influxTargetCtrl","./playlistCtrl","./inspectCtrl","./opentsdbTargetCtrl","./kairosdbTargetCtrl"],function(){}),define("directives/addPanel",["angular","app","underscore"],function(a,b,c){a.module("kibana.directives").directive("addPanel",["$compile",function(b){return{restrict:"A",link:function(d,e){d.$on("$destroy",function(){e.remove()}),d.$watch("panel.type",function(){var f=d.panel.type;d.reset_panel(f),c.isUndefined(d.panel.type)||(d.panel.loadingEditor=!0,d.require(["panels/"+d.panel.type.replace(".","/")+"/module"],function(){var c='
    ';e.html(b(a.element(c))(d)),d.panel.loadingEditor=!1}))})}}}])}),define("directives/arrayJoin",["angular","app","underscore"],function(a,b,c){a.module("kibana.directives").directive("arrayJoin",function(){return{restrict:"A",require:"ngModel",link:function(a,b,d,e){function f(a){return(a||"").split(",")}function g(a){return c.isArray(a)?(a||"").join(","):a}e.$parsers.push(f),e.$formatters.push(g)}}})}),define("directives/dashUpload",["angular"],function(a){var b=a.module("kibana.directives");b.directive("dashUpload",["timer","dashboard","alertSrv",function(a,b,c){return{restrict:"A",link:function(a){function d(c){for(var d,e=c.target.files,f=function(){return function(c){b.dash_load(JSON.parse(c.target.result)),a.$apply()}},g=0;d=e[g];g++){var h=new FileReader;h.onload=f(d),h.readAsText(d)}}window.File&&window.FileReader&&window.FileList&&window.Blob?document.getElementById("dashupload").addEventListener("change",d,!1):c.set("Oops","Sorry, the HTML5 File APIs are not fully supported in this browser.","error")}}}])}),define("controllers/panelBaseCtrl",["angular","underscore","jquery"],function(a,b,c){function d(a,d,e){var f=[{text:"Edit",configModal:"app/partials/paneleditor.html",condition:!a.panelMeta.fullscreenEdit},{text:"Edit",click:"toggleFullscreenEdit()",condition:a.panelMeta.fullscreenEdit},{text:"Fullscreen",click:"toggleFullscreen()",condition:a.panelMeta.fullscreenView},{text:"Duplicate",click:"duplicatePanel(panel)",condition:!0},{text:"Span",submenu:[{text:"1",click:"updateColumnSpan(1)"},{text:"2",click:"updateColumnSpan(2)"},{text:"3",click:"updateColumnSpan(3)"},{text:"4",click:"updateColumnSpan(4)"},{text:"5",click:"updateColumnSpan(5)"},{text:"6",click:"updateColumnSpan(6)"},{text:"7",click:"updateColumnSpan(7)"},{text:"8",click:"updateColumnSpan(8)"},{text:"9",click:"updateColumnSpan(9)"},{text:"10",click:"updateColumnSpan(10)"},{text:"11",click:"updateColumnSpan(11)"},{text:"12",click:"updateColumnSpan(12)"}],condition:!0},{text:"Remove",click:"remove_panel_from_row(row, panel)",condition:!0}];a.inspector={},a.panelMeta.menu=b.where(f,{condition:!0}),a.updateColumnSpan=function(b){a.panel.span=b,e(function(){a.$emit("render")})},a.enterFullscreenMode=function(b){var f=c(window).height(),g=Math.floor(.3*f),h=Math.floor(.7*f),i=a.range;if(a.height=b.edit?g:h,a.editMode=b.edit,!a.fullscreen)var j=d.$on("panel-fullscreen-exit",function(){a.editMode=!1,a.fullscreen=!1,delete a.height,j(),e(function(){i!==a.range?a.dashboard.refresh():a.$emit("render")})});c(window).scrollTop(0),a.fullscreen=!0,d.$emit("panel-fullscreen-enter"),e(function(){a.$emit("render")})},a.toggleFullscreenEdit=function(){return a.editMode?void d.$emit("panel-fullscreen-exit"):void a.enterFullscreenMode({edit:!0}) -},a.toggleFullscreen=function(){return a.fullscreen&&!a.editMode?void d.$emit("panel-fullscreen-exit"):void a.enterFullscreenMode({edit:!1})}}return d.$inject=["$scope","$rootScope","$timeout"],d}),define("directives/kibanaPanel",["angular","jquery","underscore","../controllers/panelBaseCtrl"],function(a,b,c,d){a.module("kibana.directives").directive("kibanaPanel",["$compile","$timeout","$rootScope","$injector",function(a,c,e,f){var g='
    ',h='
    ',i='
    × Oops! {{panel.error}} View details
    \n
    {{panel.title || "No title"}}
    \n
    ';return{restrict:"E",link:function(c,e,j){function k(b){b.appendTo(e),e.wrap(g),a(e.contents())(l),e.removeClass("ng-cloak")}var l=c.$new();c.kbnJqUiDraggableOptions={revert:"invalid",helper:function(){return b('
    ')},placeholder:"keep"},l.$on("$destroy",function(){e.unbind(),e.remove()}),l.initBaseController=function(a,b){f.invoke(d,a,{$scope:b})},c.$watch(j.type,function(a){e.addClass("ng-cloak");var b=a.replace(".","/");c.require(["jquery","text!panels/"+b+"/module.html"],function(a,d){var e=a(d),f=e.filter("ngcontroller, [ng-controller], .ng-controller");f=f.add(e.find("ngcontroller, [ng-controller], .ng-controller")),f.length?(f.first().prepend(i),f.first().find(".panel-header").nextAll().wrapAll(h),c.require(["panels/"+b+"/module"],function(){k(e)})):k(e)})})}}}])}),define("directives/kibanaSimplePanel",["angular","underscore"],function(a,b){a.module("kibana.directives").directive("kibanaSimplePanel",["$compile",function(c){var d=' loading ...';return{restrict:"E",link:function(e,f,g){function h(a){a.appendTo(f),c(f.contents())(e),f.removeClass("ng-cloak")}function i(a){f.addClass("ng-cloak");var b=a.replace(".","/");e.require(["jquery","text!panels/"+b+"/module.html"],function(a,c){var f=a(c),g=f.filter("ngcontroller, [ng-controller], .ng-controller");g=g.add(f.find("ngcontroller, [ng-controller], .ng-controller")),g.length?(g.first().prepend(d),e.require(["panels/"+b+"/module"],function(){h(f)})):h(f)})}e.$watch(g.type,function(a){i(a)}),g.panel&&e.$watch(g.panel,function(c){b.isUndefined(c)||(e=e.$new(),e.panel=a.fromJson(c))})}}}])}),define("directives/ngBlur",["angular"],function(a){a.module("kibana.directives").directive("ngBlur",["$parse",function(a){return function(b,c,d){var e=a(d.ngBlur);c.bind("blur",function(a){b.$apply(function(){e(b,{$event:a})})})}}])}),define("directives/ngModelOnBlur",["angular"],function(a){a.module("kibana.directives").directive("ngModelOnblur",function(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){"radio"!==c.type&&"checkbox"!==c.type&&(b.unbind("input").unbind("keydown").unbind("change"),b.bind("blur",function(){a.$apply(function(){d.$setViewValue(b.val())})}))}}})}),define("directives/tip",["angular","kbn"],function(a,b){a.module("kibana.directives").directive("tip",["$compile",function(c){return{restrict:"E",link:function(d,e,f){var g='";e.replaceWith(c(a.element(g))(d))}}}])}),define("directives/confirmClick",["angular","kbn"],function(a){var b=a.module("kibana.directives");b.directive("confirmClick",function(){return{restrict:"A",link:function(a,b,c){b.bind("click",function(){var b=c.confirmation||"Are you sure you want to do that?";if(window.confirm(b)){var d=c.confirmClick;d&&a.$apply(a.$eval(d))}})}}})}),define("directives/configModal",["angular","underscore","jquery"],function(a,b,c){a.module("kibana.directives").directive("configModal",["$modal","$q","$timeout",function(a,b,d){return{restrict:"A",link:function(e,f,g){var h=g.configModal,i="#"+h.replace(".html","").replace(/[\/|\.|:]/g,"-")+"-"+e.$id;f.bind("click",function(){if(c(i).length)return f.attr("data-target",i).attr("data-toggle","modal"),void e.$apply(function(){e.$broadcast("modal-opened")});var g=a({template:h,persist:!0,show:!1,scope:e,keyboard:!1});b.when(g).then(function(a){f.attr("data-target",i).attr("data-toggle","modal"),d(function(){a.data("modal").isShown||a.modal("show")},50)}),e.$apply()})}}}])}),function(a,b,c){function d(a,b,c){for(var d=[],e=0;e')}else{var j="sp-clear-display";d.push('')}}return"
    "+d.join("")+"
    "}function e(){for(var a=0;a1&&(delete a.localStorage[U],b.each(e,function(a,b){u(b)}))}catch(f){}try{lb=a.localStorage[U].split(";")}catch(f){}}Kb.bind("click.spectrum touchstart.spectrum",function(a){rb||B(),a.stopPropagation(),b(a.target).is("input")||a.preventDefault()}),(qb.is(":disabled")||R.disabled===!0)&&Q(),sb.click(j),Ab.change(A),Ab.bind("paste",function(){setTimeout(A,1)}),Ab.keydown(function(a){13==a.keyCode&&A()}),Db.text(R.cancelText),Db.bind("click.spectrum",function(a){a.stopPropagation(),a.preventDefault(),D("cancel")}),Eb.attr("title",R.clearText),Eb.bind("click.spectrum",function(a){a.stopPropagation(),a.preventDefault(),Rb=!0,I(),S&&L(!0)}),Fb.text(R.chooseText),Fb.bind("click.spectrum",function(a){a.stopPropagation(),a.preventDefault(),H()&&(L(!0),D())}),l(yb,function(a,b,c){ib=a/cb,Rb=!1,c.shiftKey&&(ib=Math.round(10*ib)/10),I()},y,z),l(vb,function(a,b){fb=parseFloat(b/ab),Rb=!1,R.showAlpha||(ib=1),I()},y,z),l(tb,function(a,b,c){if(c.shiftKey){if(!ob){var d=gb*Z,e=$-hb*$,f=Math.abs(a-d)>Math.abs(b-e);ob=f?"x":"y"}}else ob=null;var g=!ob||"x"===ob,h=!ob||"y"===ob;g&&(gb=parseFloat(a/Z)),h&&(hb=parseFloat(($-b)/$)),Rb=!1,R.showAlpha||(ib=1),I()},y,z),Mb?(F(Mb),J(),Pb=Ob||tinycolor(Mb).format,u(Mb)):J(),S&&C();var g=p?"mousedown.spectrum":"click.spectrum touchstart.spectrum";Bb.delegate(".sp-thumb-el",g,c),Cb.delegate(".sp-thumb-el:nth-child(1)",g,{ignore:!0},c)}function u(c){if(T){var d=tinycolor(c).toRgbString();if(-1===b.inArray(d,lb))for(lb.push(d);lb.length>mb;)lb.shift();if(U&&a.localStorage)try{a.localStorage[U]=lb.join(";")}catch(e){}}}function v(){var a,b=[],c=lb,d={};if(R.showPalette){for(var e=0;e=$||0>=Z||0>=ab)&&M(),sb.addClass(nb),ob=null,qb.trigger("dragstart.spectrum",[G()])}function z(){sb.removeClass(nb),qb.trigger("dragstop.spectrum",[G()])}function A(){var a=Ab.val();if(null!==a&&""!==a||!Sb){var b=tinycolor(a);b.ok?(F(b),L(!0)):Ab.addClass("sp-validation-error")}else F(null),L(!0)}function B(){Y?D():C()}function C(){var c=b.Event("beforeShow.spectrum");return Y?void M():(qb.trigger(c,[G()]),void(W.beforeShow(G())===!1||c.isDefaultPrevented()||(e(),Y=!0,b(pb).bind("click.spectrum",D),b(a).bind("resize.spectrum",X),Jb.addClass("sp-active"),sb.removeClass("sp-hidden"),M(),J(),Nb=G(),x(),W.show(Nb),qb.trigger("show.spectrum",[Nb]))))}function D(c){if((!c||"click"!=c.type||2!=c.button)&&Y&&!S){Y=!1,b(pb).unbind("click.spectrum",D),b(a).unbind("resize.spectrum",X),Jb.removeClass("sp-active"),sb.addClass("sp-hidden");var d=!tinycolor.equals(G(),Nb);d&&(Qb&&"cancel"!==c?L(!0):E()),W.hide(G()),qb.trigger("hide.spectrum",[G()])}}function E(){F(Nb,!0)}function F(a,b){if(tinycolor.equals(a,G()))return void J();var c,d;!a&&Sb?Rb=!0:(Rb=!1,c=tinycolor(a),d=c.toHsv(),fb=d.h%360/360,gb=d.s,hb=d.v,ib=d.a),J(),c&&c.ok&&!b&&(Pb=Ob||c.format)}function G(a){return a=a||{},Sb&&Rb?null:tinycolor.fromRatio({h:fb,s:gb,v:hb,a:Math.round(100*ib)/100},{format:a.format||Pb})}function H(){return!Ab.hasClass("sp-validation-error")}function I(){J(),W.move(G()),qb.trigger("move.spectrum",[G()])}function J(){Ab.removeClass("sp-validation-error"),K();var a=tinycolor.fromRatio({h:fb,s:1,v:1});tb.css("background-color",a.toHexString());var b=Pb;1>ib&&(0!==ib||"name"!==b)&&("hex"===b||"hex3"===b||"hex6"===b||"name"===b)&&(b="rgb");var c=G({format:b}),d="";if(Lb.removeClass("sp-clear-display"),Lb.css("background-color","transparent"),!c&&Sb)Lb.addClass("sp-clear-display");else{var e=c.toHexString(),f=c.toRgbString();if(q||1===c.alpha?Lb.css("background-color",f):(Lb.css("background-color","transparent"),Lb.css("filter",c.toFilter())),R.showAlpha){var g=c.toRgb();g.a=0;var h=tinycolor(g).toRgbString(),i="linear-gradient(left, "+h+", "+e+")";p?xb.css("filter",tinycolor(h).toFilter({gradientType:1},e)):(xb.css("background","-webkit-"+i),xb.css("background","-moz-"+i),xb.css("background","-ms-"+i),xb.css("background",i))}d=c.toString(b)}R.showInput&&Ab.val(d),R.showPalette&&w(),x()}function K(){var a=gb,b=hb;if(Sb&&Rb)zb.hide(),wb.hide(),ub.hide();else{zb.show(),wb.show(),ub.show();var c=a*Z,d=$-b*$;c=Math.max(-_,Math.min(Z-_,c-_)),d=Math.max(-_,Math.min($-_,d-_)),ub.css({top:d+"px",left:c+"px"});var e=ib*cb;zb.css({left:e-db/2+"px"});var f=fb*ab;wb.css({top:f-eb+"px"})}}function L(a){var b=G(),c="",d=!tinycolor.equals(b,Nb);b&&(c=b.toString(Pb),u(b)),Gb&&qb.val(c),Nb=b,a&&d&&(W.change(b),qb.trigger("change",[b]))}function M(){Z=tb.width(),$=tb.height(),_=ub.height(),bb=vb.width(),ab=vb.height(),eb=wb.height(),cb=yb.width(),db=zb.width(),S||(sb.css("position","absolute"),sb.offset(h(sb,Kb))),K(),R.showPalette&&w(),qb.trigger("reflow.spectrum")}function N(){qb.show(),Kb.unbind("click.spectrum touchstart.spectrum"),sb.remove(),Jb.remove(),o[Tb.id]=null}function O(a,d){return a===c?b.extend({},R):d===c?R[a]:(R[a]=d,void k())}function P(){rb=!1,qb.attr("disabled",!1),Kb.removeClass("sp-disabled")}function Q(){D(),rb=!0,qb.attr("disabled",!0),Kb.addClass("sp-disabled")}var R=f(i,g),S=R.flat,T=R.showSelectionPalette,U=R.localStorageKey,V=R.theme,W=R.callbacks,X=m(M,10),Y=!1,Z=0,$=0,_=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=1,jb=[],kb=[],lb=R.selectionPalette.slice(0),mb=R.maxSelectionSize,nb="sp-dragging",ob=null,pb=g.ownerDocument,qb=(pb.body,b(g)),rb=!1,sb=b(t,pb).addClass(V),tb=sb.find(".sp-color"),ub=sb.find(".sp-dragger"),vb=sb.find(".sp-hue"),wb=sb.find(".sp-slider"),xb=sb.find(".sp-alpha-inner"),yb=sb.find(".sp-alpha"),zb=sb.find(".sp-alpha-handle"),Ab=sb.find(".sp-input"),Bb=sb.find(".sp-palette"),Cb=sb.find(".sp-initial"),Db=sb.find(".sp-cancel"),Eb=sb.find(".sp-clear"),Fb=sb.find(".sp-choose"),Gb=qb.is("input"),Hb=Gb&&r&&"color"===qb.attr("type"),Ib=Gb&&!S,Jb=Ib?b(s).addClass(V).addClass(R.className):b([]),Kb=Ib?Jb:qb,Lb=Jb.find(".sp-preview-inner"),Mb=R.color||Gb&&qb.val(),Nb=!1,Ob=R.preferredFormat,Pb=Ob,Qb=!R.showButtons||R.clickoutFiresChange,Rb=!Mb,Sb=R.allowEmpty&&!Hb;n();var Tb={show:C,hide:D,toggle:B,reflow:M,option:O,enable:P,disable:Q,set:function(a){F(a),L()},get:G,destroy:N,container:sb};return Tb.id=o.push(Tb)-1,Tb}function h(a,c){var d=0,e=a.outerWidth(),f=a.outerHeight(),g=c.outerHeight(),h=a[0].ownerDocument,i=h.documentElement,j=i.clientWidth+b(h).scrollLeft(),k=i.clientHeight+b(h).scrollTop(),l=c.offset();return l.top+=g,l.left-=Math.min(l.left,l.left+e>j&&j>e?Math.abs(l.left+e-j):0),l.top-=Math.min(l.top,l.top+f>k&&k>f?Math.abs(f+g-d):d),l}function i(){}function j(a){a.stopPropagation()}function k(a,b){var c=Array.prototype.slice,d=c.call(arguments,2);return function(){return a.apply(b,d.concat(c.call(arguments)))}}function l(c,d,e,f){function g(a){a.stopPropagation&&a.stopPropagation(),a.preventDefault&&a.preventDefault(),a.returnValue=!1}function h(a){if(l){if(p&&document.documentMode<9&&!a.button)return j();var b=a.originalEvent.touches,e=b?b[0].pageX:a.pageX,f=b?b[0].pageY:a.pageY,h=Math.max(0,Math.min(e-m.left,o)),i=Math.max(0,Math.min(f-m.top,n));q&&g(a),d.apply(c,[h,i,a])}}function i(a){{var d=a.which?3==a.which:2==a.button;a.originalEvent.touches}d||l||e.apply(c,arguments)!==!1&&(l=!0,n=b(c).height(),o=b(c).width(),m=b(c).offset(),b(k).bind(r),b(k.body).addClass("sp-dragging"),q||h(a),g(a))}function j(){l&&(b(k).unbind(r),b(k.body).removeClass("sp-dragging"),f.apply(c,arguments)),l=!1}d=d||function(){},e=e||function(){},f=f||function(){};var k=c.ownerDocument||document,l=!1,m={},n=0,o=0,q="ontouchstart"in a,r={};r.selectstart=g,r.dragstart=g,r["touchmove mousemove"]=h,r["touchend mouseup"]=j,b(c).bind("touchstart mousedown",i)}function m(a,b,c){var d;return function(){var e=this,f=arguments,g=function(){d=null,a.apply(e,f)};c&&clearTimeout(d),(c||!d)&&(d=setTimeout(g,b))}}var n={beforeShow:i,move:i,change:i,show:i,hide:i,color:!1,flat:!1,showInput:!1,allowEmpty:!1,showButtons:!0,clickoutFiresChange:!1,showInitial:!1,showPalette:!1,showPaletteOnly:!1,showSelectionPalette:!0,localStorageKey:!1,appendTo:"body",maxSelectionSize:7,cancelText:"cancel",chooseText:"choose",clearText:"Clear Color Selection",preferredFormat:!1,className:"",showAlpha:!1,theme:"sp-light",palette:["fff","000"],selectionPalette:[],disabled:!1},o=[],p=!!/msie/i.exec(a.navigator.userAgent),q=function(){function a(a,b){return!!~(""+a).indexOf(b)}var b=document.createElement("div"),c=b.style;return c.cssText="background-color:rgba(0,0,0,.5)",a(c.backgroundColor,"rgba")||a(c.backgroundColor,"hsla")}(),r=function(){var a=b("")[0];return"color"===a.type&&"!"!==a.value}(),s=["
    ","
    ","
    ","
    "].join(""),t=function(){var a="";if(p)for(var b=1;6>=b;b++)a+="
    ";return["
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ","
    ",a,"
    ","
    ","
    ","
    ","
    ","","
    ","
    ","
    ","","","
    ","
    ","
    "].join("")}(),u="spectrum.id";b.fn.spectrum=function(a){if("string"==typeof a){var c=this,d=Array.prototype.slice.call(arguments,1);return this.each(function(){var e=o[b(this).data(u)];if(e){var f=e[a];if(!f)throw new Error("Spectrum: no such method: '"+a+"'");"get"==a?c=e.get():"container"==a?c=e.container:"option"==a?c=e.option.apply(e,d):"destroy"==a?(e.destroy(),b(this).removeData(u)):f.apply(e,d)}}),c}return this.spectrum("destroy").each(function(){var c=b.extend({},a,b(this).data()),d=g(this,c);b(this).data(u,d.id)})},b.fn.spectrum.load=!0,b.fn.spectrum.loadOpts={},b.fn.spectrum.draggable=l,b.fn.spectrum.defaults=n,b.spectrum={},b.spectrum.localization={},b.spectrum.palettes={},b.fn.spectrum.processNativeColorInputs=function(){r||b("input[type=color]").spectrum({preferredFormat:"hex6"})},function(){function b(a,d){if(a=a?a:"",d=d||{},"object"==typeof a&&a.hasOwnProperty("_tc_id"))return a;var f=c(a),h=f.r,j=f.g,m=f.b,n=f.a,o=x(100*n)/100,p=d.format||f.format;return 1>h&&(h=x(h)),1>j&&(j=x(j)),1>m&&(m=x(m)),{ok:f.ok,format:p,_tc_id:v++,alpha:n,getAlpha:function(){return n},setAlpha:function(a){n=k(a),o=x(100*n)/100},toHsv:function(){var a=g(h,j,m);return{h:360*a.h,s:a.s,v:a.v,a:n}},toHsvString:function(){var a=g(h,j,m),b=x(360*a.h),c=x(100*a.s),d=x(100*a.v);return 1==n?"hsv("+b+", "+c+"%, "+d+"%)":"hsva("+b+", "+c+"%, "+d+"%, "+o+")"},toHsl:function(){var a=e(h,j,m);return{h:360*a.h,s:a.s,l:a.l,a:n}},toHslString:function(){var a=e(h,j,m),b=x(360*a.h),c=x(100*a.s),d=x(100*a.l);return 1==n?"hsl("+b+", "+c+"%, "+d+"%)":"hsla("+b+", "+c+"%, "+d+"%, "+o+")"},toHex:function(a){return i(h,j,m,a)},toHexString:function(a){return"#"+i(h,j,m,a)},toRgb:function(){return{r:x(h),g:x(j),b:x(m),a:n}},toRgbString:function(){return 1==n?"rgb("+x(h)+", "+x(j)+", "+x(m)+")":"rgba("+x(h)+", "+x(j)+", "+x(m)+", "+o+")"},toPercentageRgb:function(){return{r:x(100*l(h,255))+"%",g:x(100*l(j,255))+"%",b:x(100*l(m,255))+"%",a:n}},toPercentageRgbString:function(){return 1==n?"rgb("+x(100*l(h,255))+"%, "+x(100*l(j,255))+"%, "+x(100*l(m,255))+"%)":"rgba("+x(100*l(h,255))+"%, "+x(100*l(j,255))+"%, "+x(100*l(m,255))+"%, "+o+")"},toName:function(){return 0===n?"transparent":C[i(h,j,m,!0)]||!1},toFilter:function(a){var c=i(h,j,m),e=c,f=Math.round(255*parseFloat(n)).toString(16),g=f,k=d&&d.gradientType?"GradientType = 1, ":"";if(a){var l=b(a);e=l.toHex(),g=Math.round(255*parseFloat(l.alpha)).toString(16)}return"progid:DXImageTransform.Microsoft.gradient("+k+"startColorstr=#"+q(f)+c+",endColorstr=#"+q(g)+e+")"},toString:function(a){var b=!!a;a=a||this.format;var c=!1,d=!b&&1>n&&n>0,e=d&&("hex"===a||"hex6"===a||"hex3"===a||"name"===a);return"rgb"===a&&(c=this.toRgbString()),"prgb"===a&&(c=this.toPercentageRgbString()),("hex"===a||"hex6"===a)&&(c=this.toHexString()),"hex3"===a&&(c=this.toHexString(!0)),"name"===a&&(c=this.toName()),"hsl"===a&&(c=this.toHslString()),"hsv"===a&&(c=this.toHsvString()),e?this.toRgbString():c||this.toHexString()}}}function c(a){var b={r:0,g:0,b:0},c=1,e=!1,g=!1;return"string"==typeof a&&(a=s(a)),"object"==typeof a&&(a.hasOwnProperty("r")&&a.hasOwnProperty("g")&&a.hasOwnProperty("b")?(b=d(a.r,a.g,a.b),e=!0,g="%"===String(a.r).substr(-1)?"prgb":"rgb"):a.hasOwnProperty("h")&&a.hasOwnProperty("s")&&a.hasOwnProperty("v")?(a.s=r(a.s),a.v=r(a.v),b=h(a.h,a.s,a.v),e=!0,g="hsv"):a.hasOwnProperty("h")&&a.hasOwnProperty("s")&&a.hasOwnProperty("l")&&(a.s=r(a.s),a.l=r(a.l),b=f(a.h,a.s,a.l),e=!0,g="hsl"),a.hasOwnProperty("a")&&(c=a.a)),c=k(c),{ok:e,format:a.format||g,r:y(255,z(b.r,0)),g:y(255,z(b.g,0)),b:y(255,z(b.b,0)),a:c}}function d(a,b,c){return{r:255*l(a,255),g:255*l(b,255),b:255*l(c,255)}}function e(a,b,c){a=l(a,255),b=l(b,255),c=l(c,255);var d,e,f=z(a,b,c),g=y(a,b,c),h=(f+g)/2;if(f==g)d=e=0;else{var i=f-g;switch(e=h>.5?i/(2-f-g):i/(f+g),f){case a:d=(b-c)/i+(c>b?6:0);break;case b:d=(c-a)/i+2;break;case c:d=(a-b)/i+4}d/=6}return{h:d,s:e,l:h}}function f(a,b,c){function d(a,b,c){return 0>c&&(c+=1),c>1&&(c-=1),1/6>c?a+6*(b-a)*c:.5>c?b:2/3>c?a+(b-a)*(2/3-c)*6:a}var e,f,g;if(a=l(a,360),b=l(b,100),c=l(c,100),0===b)e=f=g=c;else{var h=.5>c?c*(1+b):c+b-c*b,i=2*c-h;e=d(i,h,a+1/3),f=d(i,h,a),g=d(i,h,a-1/3)}return{r:255*e,g:255*f,b:255*g}}function g(a,b,c){a=l(a,255),b=l(b,255),c=l(c,255);var d,e,f=z(a,b,c),g=y(a,b,c),h=f,i=f-g;if(e=0===f?0:i/f,f==g)d=0;else{switch(f){case a:d=(b-c)/i+(c>b?6:0);break;case b:d=(c-a)/i+2;break;case c:d=(a-b)/i+4}d/=6}return{h:d,s:e,v:h}}function h(a,b,c){a=6*l(a,360),b=l(b,100),c=l(c,100);var d=w.floor(a),e=a-d,f=c*(1-b),g=c*(1-e*b),h=c*(1-(1-e)*b),i=d%6,j=[c,g,f,f,h,c][i],k=[h,c,c,g,f,f][i],m=[f,f,h,c,c,g][i];return{r:255*j,g:255*k,b:255*m}}function i(a,b,c,d){var e=[q(x(a).toString(16)),q(x(b).toString(16)),q(x(c).toString(16))];return d&&e[0].charAt(0)==e[0].charAt(1)&&e[1].charAt(0)==e[1].charAt(1)&&e[2].charAt(0)==e[2].charAt(1)?e[0].charAt(0)+e[1].charAt(0)+e[2].charAt(0):e.join("")}function j(a){var b={};for(var c in a)a.hasOwnProperty(c)&&(b[a[c]]=c);return b}function k(a){return a=parseFloat(a),(isNaN(a)||0>a||a>1)&&(a=1),a}function l(a,b){o(a)&&(a="100%");var c=p(a);return a=y(b,z(0,parseFloat(a))),c&&(a=parseInt(a*b,10)/100),w.abs(a-b)<1e-6?1:a%b/parseFloat(b)}function m(a){return y(1,z(0,a))}function n(a){return parseInt(a,16)}function o(a){return"string"==typeof a&&-1!=a.indexOf(".")&&1===parseFloat(a)}function p(a){return"string"==typeof a&&-1!=a.indexOf("%")}function q(a){return 1==a.length?"0"+a:""+a}function r(a){return 1>=a&&(a=100*a+"%"),a}function s(a){a=a.replace(t,"").replace(u,"").toLowerCase();var b=!1;if(B[a])a=B[a],b=!0;else if("transparent"==a)return{r:0,g:0,b:0,a:0,format:"name"};var c;return(c=D.rgb.exec(a))?{r:c[1],g:c[2],b:c[3]}:(c=D.rgba.exec(a))?{r:c[1],g:c[2],b:c[3],a:c[4]}:(c=D.hsl.exec(a))?{h:c[1],s:c[2],l:c[3]}:(c=D.hsla.exec(a))?{h:c[1],s:c[2],l:c[3],a:c[4]}:(c=D.hsv.exec(a))?{h:c[1],s:c[2],v:c[3]}:(c=D.hex6.exec(a))?{r:n(c[1]),g:n(c[2]),b:n(c[3]),format:b?"name":"hex"}:(c=D.hex3.exec(a))?{r:n(c[1]+""+c[1]),g:n(c[2]+""+c[2]),b:n(c[3]+""+c[3]),format:b?"name":"hex"}:!1}var t=/^[\s,#]+/,u=/\s+$/,v=0,w=Math,x=w.round,y=w.min,z=w.max,A=w.random;b.fromRatio=function(a,c){if("object"==typeof a){var d={};for(var e in a)a.hasOwnProperty(e)&&(d[e]="a"===e?a[e]:r(a[e]));a=d}return b(a,c)},b.equals=function(a,c){return a&&c?b(a).toRgbString()==b(c).toRgbString():!1},b.random=function(){return b.fromRatio({r:A(),g:A(),b:A()})},b.desaturate=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.s-=c/100,d.s=m(d.s),b(d)},b.saturate=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.s+=c/100,d.s=m(d.s),b(d)},b.greyscale=function(a){return b.desaturate(a,100)},b.lighten=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.l+=c/100,d.l=m(d.l),b(d)},b.darken=function(a,c){c=0===c?0:c||10;var d=b(a).toHsl();return d.l-=c/100,d.l=m(d.l),b(d)},b.complement=function(a){var c=b(a).toHsl();return c.h=(c.h+180)%360,b(c)},b.triad=function(a){var c=b(a).toHsl(),d=c.h;return[b(a),b({h:(d+120)%360,s:c.s,l:c.l}),b({h:(d+240)%360,s:c.s,l:c.l})]},b.tetrad=function(a){var c=b(a).toHsl(),d=c.h;return[b(a),b({h:(d+90)%360,s:c.s,l:c.l}),b({h:(d+180)%360,s:c.s,l:c.l}),b({h:(d+270)%360,s:c.s,l:c.l})]},b.splitcomplement=function(a){var c=b(a).toHsl(),d=c.h;return[b(a),b({h:(d+72)%360,s:c.s,l:c.l}),b({h:(d+216)%360,s:c.s,l:c.l})]},b.analogous=function(a,c,d){c=c||6,d=d||30;var e=b(a).toHsl(),f=360/d,g=[b(a)];for(e.h=(e.h-(f*c>>1)+720)%360;--c;)e.h=(e.h+f)%360,g.push(b(e));return g},b.monochromatic=function(a,c){c=c||6;for(var d=b(a).toHsv(),e=d.h,f=d.s,g=d.v,h=[],i=1/c;c--;)h.push(b({h:e,s:f,v:g})),g=(g+i)%1;return h},b.readability=function(a,c){var d=b(a).toRgb(),e=b(c).toRgb(),f=(299*d.r+587*d.g+114*d.b)/1e3,g=(299*e.r+587*e.g+114*e.b)/1e3,h=Math.max(d.r,e.r)-Math.min(d.r,e.r)+Math.max(d.g,e.g)-Math.min(d.g,e.g)+Math.max(d.b,e.b)-Math.min(d.b,e.b);return{brightness:Math.abs(f-g),color:h}},b.readable=function(a,c){var d=b.readability(a,c);return d.brightness>125&&d.color>500},b.mostReadable=function(a,c){for(var d=null,e=0,f=!1,g=0;g125&&h.color>500,j=3*(h.brightness/125)+h.color/500;(i&&!f||i&&f&&j>e||!i&&!f&&j>e)&&(f=i,e=j,d=b(c[g]))}return d};var B=b.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},C=b.hexNames=j(B),D=function(){var a="[-\\+]?\\d+%?",b="[-\\+]?\\d*\\.\\d+%?",c="(?:"+b+")|(?:"+a+")",d="[\\s|\\(]+("+c+")[,|\\s]+("+c+")[,|\\s]+("+c+")\\s*\\)?",e="[\\s|\\(]+("+c+")[,|\\s]+("+c+")[,|\\s]+("+c+")[,|\\s]+("+c+")\\s*\\)?";return{rgb:new RegExp("rgb"+d),rgba:new RegExp("rgba"+e),hsl:new RegExp("hsl"+d),hsla:new RegExp("hsla"+e),hsv:new RegExp("hsv"+d),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();a.tinycolor=b}(),b(function(){b.fn.spectrum.load&&b.fn.spectrum.processNativeColorInputs()})}(window,jQuery),define("spectrum",["jquery"],function(){}),define("directives/spectrumPicker",["angular","spectrum"],function(a){a.module("kibana.directives").directive("spectrumPicker",function(){return{restrict:"E",require:"ngModel",scope:!1,replace:!0,template:"",link:function(b,c,d,e){var f=c.find("input"),g=a.extend({showAlpha:!0,showButtons:!1,color:e.$viewValue,change:function(a){b.$apply(function(){e.$setViewValue(a.toRgbString())})}},b.$eval(d.options));e.$render=function(){f.spectrum("set",e.$viewValue||"")},f.spectrum(g)}}})}),define("directives/grafanaGraph",["angular","jquery","kbn","moment","underscore"],function(a,b,c,d,e){var f=a.module("kibana.directives");f.directive("grafanaGraph",["$rootScope","dashboard",function(f,g){return{restrict:"A",template:"
    ",link:function(h,i){function j(){try{var a=h.height||h.panel.height||h.row.height;return e.isString(a)&&(a=parseInt(a.replace("px",""),10)),a-=32,h.panel.legend.show&&(a-=21),i.css("height",a+"px"),!0}catch(b){return!1}}function k(){return u?f.fullscreen&&!h.fullscreen?!0:j()?e.isString(u)?(t(u),!0):void 0:!0:!0}function l(){if(!k()){var a=h.panel;e.each(e.keys(h.hiddenSeries),function(a){var b=e.find(u,function(b){return b.info.alias===a});b&&(x[b.info.alias]=b,u=e.without(u,b))});for(var c=a.stack?!0:null,d={legend:{show:!1},series:{stackpercent:a.stack?a.percentage:!1,stack:a.percentage?null:c,lines:{show:a.lines,zero:!1,fill:0===a.fill?.001:a.fill/10,lineWidth:a.linewidth,steps:a.steppedLine},bars:{show:a.bars,fill:1,barWidth:1,zero:!1,lineWidth:0},points:{show:a.points,fill:1,fillColor:!1,radius:a.pointradius},shadowSize:1},yaxes:[],xaxis:{},grid:{markings:[],backgroundColor:null,borderWidth:0,hoverable:!0,color:"#c8c8c8"},selection:{mode:"x",color:"#666"}},f=0;fb.grid.threshold2?-1/0:+1/0,a.grid.markings.push({yaxis:{from:b.grid.threshold2,to:d},color:b.grid.threshold2Color})}}}function o(a){if(w&&0!==w.length){var b={};e.each(w,function(c){b[c.annotation.name]||(b[c.annotation.name]={level:e.keys(b).length+1,icon:{icon:"icon-chevron-down",size:c.annotation.iconSize,color:c.annotation.iconColor}}),c.annotation.showLine&&a.grid.markings.push({color:c.annotation.lineColor,lineWidth:1,xaxis:{from:c.min,to:c.max}})}),a.events={levels:e.keys(b).length+1,data:w,types:b}}}function p(){if(h.panel.leftYAxisLabel){i.css("margin-left","10px");var a=b("
    ").text(h.panel.leftYAxisLabel).appendTo(i);a.css("margin-top",a.width()/2-20)}else i.css("margin-left")&&i.css("margin-left","") -}function q(a,b){var c={position:"left",show:h.panel["y-axis"],min:h.panel.grid.leftMin,max:h.panel.percentage&&h.panel.stack?100:h.panel.grid.leftMax};if(b.yaxes.push(c),e.findWhere(a,{yaxis:2})){var d=e.clone(c);d.position="right",d.min=h.panel.grid.rightMin,d.max=h.panel.percentage&&h.panel.stack?100:h.panel.grid.rightMax,b.yaxes.push(d),r(b.yaxes[1],h.panel.y_formats[1])}r(b.yaxes[0],h.panel.y_formats[0])}function r(a,b){"none"!==b&&(a.tickFormatter=c.getFormatFunction(b,1))}function s(a,b,c,d){if(c&&d&&b){var e=(d-c)/b/1e3;return 45>=e?"%H:%M:%S":3600>=e?"%H:%M":8e4>=e?"%m/%d %H:%M":2419200>=e?"%m/%d":"%Y-%m"}return"%H:%M"}function t(a){switch(a+="&width="+i.width(),a+="&height="+i.css("height").replace("px",""),a+="&bgcolor=1f1f1f",a+="&fgcolor=BBBFC2",a+=h.panel.stack?"&areaMode=stacked":"",a+=0!==h.panel.fill?"&areaAlpha="+(h.panel.fill/10).toFixed(1):"",a+=0!==h.panel.linewidth?"&lineWidth="+h.panel.linewidth:"",a+=h.panel.legend.show?"&hideLegend=false":"&hideLegend=true",a+=null!==h.panel.grid.min?"&yMin="+h.panel.grid.min:"",a+=null!==h.panel.grid.max?"&yMax="+h.panel.grid.max:"",a+=h.panel["x-axis"]?"":"&hideAxes=true",a+=h.panel["y-axis"]?"":"&hideYAxis=true",h.panel.y_formats[0]){case"bytes":a+="&yUnitSystem=binary";break;case"bits":a+="&yUnitSystem=binary";break;case"short":a+="&yUnitSystem=si";break;case"none":a+="&yUnitSystem=none"}switch(h.panel.nullPointMode){case"connected":a+="&lineMode=connected";break;case"null":break;case"null as zero":a+="&drawNullAsZero=true"}a+=h.panel.steppedLine?"&lineMode=staircase":"",i.html('')}var u,v,w,x={};h.$on("refresh",function(){h.otherPanelInFullscreenMode()||h.get_data()}),h.$on("toggleLegend",function(a,b){e.each(b,function(a){x[a.alias]&&(u.push(x[a.alias]),delete x[a.alias])}),l()}),h.$on("render",function(a,b){u=b||u,w=u.annotations,l()}),a.element(window).bind("resize",function(){l()});var y=b("
    ");i.bind("plothover",function(a,b,e){var f,i,j,k,l;e?(k=e.series.info,l=h.panel.y_formats[k.yaxis-1],f=k.alias?' '+decodeURIComponent(k.alias)+"
    ":c.query_color_dot(e.series.color,15)+" ",i=h.panel.stack&&"individual"===h.panel.tooltip.value_type?e.datapoint[1]-e.datapoint[2]:e.datapoint[1],i=c.getFormatFunction(l,2)(i),j="browser"===g.current.timezone?d(e.datapoint[0]).format("YYYY-MM-DD HH:mm:ss"):d.utc(e.datapoint[0]).format("YYYY-MM-DD HH:mm:ss"),y.html(f+i+" @ "+j).place_tt(b.pageX,b.pageY)):y.detach()}),i.bind("plotselected",function(a,b){h.$apply(function(){h.filter.setTime({from:d.utc(b.xaxis.from).toDate(),to:d.utc(b.xaxis.to).toDate()})})})}}}])}),function(a){function b(b,c){this.itemsArray=[],this.$element=a(b),this.$element.hide(),this.isSelect="SELECT"===b.tagName,this.multiple=this.isSelect&&b.hasAttribute("multiple"),this.objectItems=c&&c.itemValue,this.placeholderText=b.hasAttribute("placeholder")?this.$element.attr("placeholder"):"",this.inputSize=Math.max(1,this.placeholderText.length),this.$container=a('
    '),this.$input=a('').appendTo(this.$container),this.$element.after(this.$container),this.build(c)}function c(a,b){if("function"!=typeof a[b]){var c=a[b];a[b]=function(a){return a[c]}}}function d(a,b){if("function"!=typeof a[b]){var c=a[b];a[b]=function(){return c}}}function e(a){return a?h.text(a).html():""}function f(a){var b=0;if(document.selection){a.focus();var c=document.selection.createRange();c.moveStart("character",-a.value.length),b=c.text.length}else(a.selectionStart||"0"==a.selectionStart)&&(b=a.selectionStart);return b}var g={tagClass:function(){return"label label-info"},itemValue:function(a){return a?a.toString():a},itemText:function(a){return this.itemValue(a)},freeInput:!0,maxTags:void 0,confirmKeys:[13],onTagExists:function(a,b){b.hide().fadeIn()}};b.prototype={constructor:b,add:function(b,c){var d=this;if(!(d.options.maxTags&&d.itemsArray.length>=d.options.maxTags||b!==!1&&!b)){if("object"==typeof b&&!d.objectItems)throw"Can't add objects when itemValue option is not set";if(!b.toString().match(/^\s*$/)){if(d.isSelect&&!d.multiple&&d.itemsArray.length>0&&d.remove(d.itemsArray[0]),"string"==typeof b&&"INPUT"===this.$element[0].tagName){var f=b.split(",");if(f.length>1){for(var g=0;g'+e(i)+'');if(m.data("item",b),d.findInputWrapper().before(m),m.after(" "),d.isSelect&&!a('option[value="'+escape(h)+'"]',d.$element)[0]){var n=a("");n.data("item",b),n.attr("value",h),d.$element.append(n)}c||d.pushVal(),d.options.maxTags===d.itemsArray.length&&d.$container.addClass("bootstrap-tagsinput-max"),d.$element.trigger(a.Event("itemAdded",{item:b}))}}}},remove:function(b,c){var d=this;d.objectItems&&(b="object"==typeof b?a.grep(d.itemsArray,function(a){return d.options.itemValue(a)==d.options.itemValue(b)})[0]:a.grep(d.itemsArray,function(a){return d.options.itemValue(a)==b})[0]),b&&(a(".tag",d.$container).filter(function(){return a(this).data("item")===b}).remove(),a("option",d.$element).filter(function(){return a(this).data("item")===b}).remove(),d.itemsArray.splice(a.inArray(b,d.itemsArray),1)),c||d.pushVal(),d.options.maxTags>d.itemsArray.length&&d.$container.removeClass("bootstrap-tagsinput-max"),d.$element.trigger(a.Event("itemRemoved",{item:b}))},removeAll:function(){var b=this;for(a(".tag",b.$container).remove(),a("option",b.$element).remove();b.itemsArray.length>0;)b.itemsArray.pop();b.pushVal(),b.options.maxTags&&!this.isEnabled()&&this.enable()},refresh:function(){var b=this;a(".tag",b.$container).each(function(){var c=a(this),d=c.data("item"),f=b.options.itemValue(d),g=b.options.itemText(d),h=b.options.tagClass(d);if(c.attr("class",null),c.addClass("tag "+e(h)),c.contents().filter(function(){return 3==this.nodeType})[0].nodeValue=e(g),b.isSelect){var i=a("option",b.$element).filter(function(){return a(this).data("item")===d});i.attr("value",f)}})},items:function(){return this.itemsArray},pushVal:function(){var b=this,c=a.map(b.items(),function(a){return b.options.itemValue(a).toString()});b.$element.val(c,!0).trigger("change")},build:function(b){var e=this;e.options=a.extend({},g,b);var h=e.options.typeahead||{};e.objectItems&&(e.options.freeInput=!1),c(e.options,"itemValue"),c(e.options,"itemText"),c(e.options,"tagClass"),e.options.source&&(h.source=e.options.source),h.source&&a.fn.typeahead&&(d(h,"source"),e.$input.typeahead({source:function(b,c){function d(a){for(var b=[],d=0;d$1")}})),e.$container.on("click",a.proxy(function(){e.$input.focus()},e)),e.$container.on("keydown","input",a.proxy(function(b){var c=a(b.target),d=e.findInputWrapper();switch(b.which){case 8:if(0===f(c[0])){var g=d.prev();g&&e.remove(g.data("item"))}break;case 46:if(0===f(c[0])){var h=d.next();h&&e.remove(h.data("item"))}break;case 37:var i=d.prev();0===c.val().length&&i[0]&&(i.before(d),c.focus());break;case 39:var j=d.next();0===c.val().length&&j[0]&&(j.after(d),c.focus());break;default:e.options.freeInput&&a.inArray(b.which,e.options.confirmKeys)>=0&&(e.add(c.val()),c.val(""),b.preventDefault())}c.attr("size",Math.max(this.inputSize,c.val().length))},e)),e.$container.on("click","[data-role=remove]",a.proxy(function(b){e.remove(a(b.target).closest(".tag").data("item"))},e)),e.options.itemValue===g.itemValue&&("INPUT"===e.$element[0].tagName?e.add(e.$element.val()):a("option",e.$element).each(function(){e.add(a(this).attr("value"),!0)}))},destroy:function(){var a=this;a.$container.off("keypress","input"),a.$container.off("click","[role=remove]"),a.$container.remove(),a.$element.removeData("tagsinput"),a.$element.show()},focus:function(){this.$input.focus()},input:function(){return this.$input},findInputWrapper:function(){for(var b=this.$input[0],c=this.$container[0];b&&b.parentNode!==c;)b=b.parentNode;return a(b)}},a.fn.tagsinput=function(c,d){var e=[];return this.each(function(){var f=a(this).data("tagsinput");if(f){var g=f[c](d);void 0!==g&&e.push(g)}else f=new b(this,c),a(this).data("tagsinput",f),e.push(f),"SELECT"===this.tagName&&a("option",a(this)).attr("selected","selected"),a(this).val(a(this).val())}),"string"==typeof c?e.length>1?e:e[0]:e},a.fn.tagsinput.Constructor=b;var h=a("
    ");a(function(){a("input[data-role=tagsinput], select[multiple][data-role=tagsinput]").tagsinput()})}(window.jQuery),define("bootstrap-tagsinput",function(){}),define("directives/bootstrap-tagsinput",["angular","jquery","bootstrap-tagsinput"],function(a,b){a.module("kibana.directives").directive("bootstrapTagsinput",function(){function c(b,c){return c?a.isFunction(b.$parent[c])?b.$parent[c]:function(a){return a[c]}:void 0}return{restrict:"EA",scope:{model:"=ngModel"},template:"",replace:!1,link:function(d,e,f){a.isArray(d.model)||(d.model=[]);var g=b("select",e);f.placeholder&&g.attr("placeholder",f.placeholder),g.tagsinput({typeahead:{source:a.isFunction(d.$parent[f.typeaheadSource])?d.$parent[f.typeaheadSource]:null},itemValue:c(d,f.itemvalue),itemText:c(d,f.itemtext),tagClass:a.isFunction(d.$parent[f.tagclass])?d.$parent[f.tagclass]:function(){return f.tagclass}}),g.on("itemAdded",function(a){-1===d.model.indexOf(a.item)&&d.model.push(a.item)}),g.on("itemRemoved",function(a){var b=d.model.indexOf(a.item);-1!==b&&d.model.splice(b,1)}),d.$watch("model",function(){a.isArray(d.model)||(d.model=[]),g.tagsinput("removeAll");for(var b=0;b',""];return a.forEach(b,function(a,b){if(a.divider)return f.splice(b+1,0,'
  • ');var c=""+(a.text||"")+"";a.submenu&&a.submenu.length&&(c+=e(a.submenu).join("\n")),c+="",f.splice(b+1,0,c)}),f}return{restrict:"EA",scope:!0,link:function(f,g,h){var i=b(h.gfDropdown),j=i(f);d(function(){var b=g.data("placement"),d=a.element(e(j,b).join(""));d.insertAfter(g),c(g.next("ul.dropdown-menu"))(f)}),g.addClass("dropdown-toggle").attr("data-toggle","dropdown")}}}])}),define("directives/bodyClass",["angular","app","underscore"],function(a,b,c){a.module("kibana.directives").directive("bodyClass",function(){return{link:function(a,b){var d,e;a.$watch("dashboard.current.pulldowns",function(){var e=c.find(a.dashboard.current.pulldowns,function(a){return a.enable}),f=e?e.enable:!1;d!==f&&(b.toggleClass("submenu-controls-visible",f),d=f)},!0),a.$watch("dashboard.current.hideControls",function(){var c=a.dashboard.current.hideControls||a.playlist_active;e!==c&&(b.toggleClass("hide-controls",c),e=c)}),a.$watch("playlist_active",function(){b.toggleClass("hide-controls",a.playlist_active===!0),b.toggleClass("playlist-active",a.playlist_active===!0)})}}})}),define("directives/addGraphiteFunc",["angular","app","underscore","jquery","../services/graphite/gfunc"],function(a,b,c,d,e){function f(a){return c.reduce(a,function(a,b){return c.each(b,function(b){a.push(b.name)}),a},[])}function g(a){return c.map(a,function(a,b){return{text:b,submenu:c.map(a,function(a){return{text:a.name,click:"addFunction('"+a.name+"')"}})}})}a.module("kibana.directives").directive("graphiteAddFunc",["$compile",function(a){var b='',c='';return{link:function(h,i){var j=e.getCategories(),k=f(j);h.functionMenu=g(j);var l=d(b),m=d(c);l.appendTo(i),m.appendTo(i),l.attr("data-provide","typeahead"),l.typeahead({source:k,minLength:1,items:10,updater:function(a){var b=e.getFuncDef(a);return h.$apply(function(){h.addFunction(b)}),l.trigger("blur"),""}}),m.click(function(){m.hide(),l.show(),l.focus()}),l.keyup(function(){i.toggleClass("open",""===l.val())}),l.blur(function(){l.hide(),l.val(""),m.show(),m.focus(),setTimeout(function(){i.removeClass("open")},200)}),a(i.contents())(h)}}}])}),define("directives/graphiteFuncEditor",["angular","underscore","jquery"],function(a,b,c){a.module("kibana.directives").directive("graphiteFuncEditor",["$compile",function(a){var d='{{func.def.name}}(',e='',f='
    ';return{restrict:"A",link:function(g,h){function i(a){var b=c(this),d=b.next();d.val(w.params[a]),d.css("width",b.width()+16+"px"),b.hide(),d.show(),d.focus(),d.select();var e=d.data("typeahead");e&&(d.val(""),e.lookup())}function j(){z!==w.params.length&&(y||(y=!0,setTimeout(function(){t(),y=!1},200)))}function k(a){var b=c(this),d=b.prev();(""!==b.val()||w.def.params[a].optional)&&(d.text(b.val()),w.updateParam(b.val(),a),j(),g.$apply(g.targetChanged)),b.hide(),d.show()}function l(a,b){13===b.which&&k.call(this,a)}function m(){this.style.width=8*(3+this.value.length)+"px"}function n(a,c){a.attr("data-provide","typeahead");var d=x.params[c].options;"int"===x.params[c].type&&(d=b.map(d,function(a){return a.toString()})),a.typeahead({source:d,minLength:0,items:20,updater:function(b){return setTimeout(function(){k.call(a[0],c)},0),b}});var e=a.data("typeahead");e.lookup=function(){return this.query=this.$element.val()||"",this.process(this.source)}}function o(){var a=h.closest(".grafana-target-inner");return h.hasClass("show-function-controls")?(h.removeClass("show-function-controls"),a.removeClass("has-open-function"),void v.hide()):(h.addClass("show-function-controls"),a.addClass("has-open-function"),void v.show())}function p(){v.appendTo(h),u.appendTo(h),b.each(x.params,function(a,d){if(!a.optional||w.params[d]){d>0&&c(", ").appendTo(h);var f=c(''+w.params[d]+""),g=c(e);z++,f.appendTo(h),g.appendTo(h),g.blur(b.partial(k,d)),g.keyup(m),g.keypress(b.partial(l,d)),f.click(b.partial(i,d)),x.params[d].options&&n(g,d)}}),c(")").appendTo(h),a(h.contents())(g)}function q(){g.func.added&&(g.func.added=!1,setTimeout(function(){h.find(".graphite-func-param-link").first().click()},10))}function r(){u.click(o)}function s(){v.click(function(a){var d=c(a.target);return d.hasClass("icon-remove")?(o(),void g.$apply(function(){g.removeFunction(g.func)})):d.hasClass("icon-arrow-left")?void g.$apply(function(){b.move(g.functions,g.$index,g.$index-1)}):d.hasClass("icon-arrow-right")?void g.$apply(function(){b.move(g.functions,g.$index,g.$index+1)}):d.hasClass("icon-info-sign")?void window.open("http://graphite.readthedocs.org/en/latest/functions.html#graphite.render.functions."+x.name,"_blank"):void 0})}function t(){h.children().remove(),p(),q(),r(),s()}var u=c(d),v=c(f),w=g.func,x=w.def,y=!1,z=0;t()}}}])}),define("directives/grafanaVersionCheck",["angular"],function(a){a.module("kibana.directives").directive("grafanaVersionCheck",["$http","grafanaVersion",function(a,b){return{restrict:"A",link:function(c,d){"@"!==b[0]&&a({method:"GET",url:"http://grafanarel.s3.amazonaws.com/latest.json"}).then(function(a){a.data&&a.data.version&&b!==a.data.version&&d.append('')})}}}])}),define("directives/influxdbFuncEditor",["angular","underscore","jquery"],function(a,b,c){a.module("kibana.directives").directive("influxdbFuncEditor",["$compile",function(a){var d='{{target.function}}(',e='';return{restrict:"A",link:function(f,g){function h(){var a=c(this),b=a.next();b.val(f.target.column),b.css("width",a.width()+16+"px"),a.hide(),b.show(),b.focus(),b.select();var d=b.data("typeahead");d&&(b.val(""),d.lookup())}function i(){var a=c(this),b=a.prev();""!==a.val()&&(b.text(a.val()),f.target.column=a.val(),f.$apply(f.get_data)),a.hide(),b.show()}function j(a){13===a.which&&i.call(this)}function k(){this.style.width=8*(3+this.value.length)+"px"}function l(a){a.attr("data-provide","typeahead"),a.typeahead({source:function(){return f.listColumns.apply(null,arguments)},minLength:0,items:20,updater:function(b){return setTimeout(function(){i.call(a[0])},0),b}});var b=a.data("typeahead");b.lookup=function(){var a;return this.query=this.$element.val()||"",a=this.source(this.query,c.proxy(this.process,this)),a?this.process(a):a}}function m(){n.appendTo(g);var b=c(''+f.target.column+""),d=c(e);b.appendTo(g),d.appendTo(g),d.blur(i),d.keyup(k),d.keypress(j),b.click(h),l(d),c(")").appendTo(g),a(g.contents())(f)}var n=c(d);f.functionMenu=b.map(f.functions,function(a){return{text:a,click:"changeFunction('"+a+"');"}}),m()}}}])}),define("directives/all",["./addPanel","./arrayJoin","./dashUpload","./kibanaPanel","./kibanaSimplePanel","./ngBlur","./ngModelOnBlur","./tip","./confirmClick","./configModal","./spectrumPicker","./grafanaGraph","./bootstrap-tagsinput","./bodyClass","./addGraphiteFunc","./graphiteFuncEditor","./grafanaVersionCheck","./influxdbFuncEditor"],function(){}),define("filters/all",["angular","jquery","underscore","moment"],function(a,b,c,d){var e=a.module("kibana.filters");e.filter("stringSort",function(){return function(a){return a.sort()}}),e.filter("esVersion",["esVersion",function(a){return function(b,d){var e=c.filter(b,function(b){return a.is(b[d])?!0:!1});return e}}]),e.filter("slice",function(){return function(a,b,d){return c.isUndefined(a)?void 0:a.slice(b,d)}}),e.filter("stringify",function(){return function(b){return c.isObject(b)&&!c.isArray(b)?a.toJson(b):c.isNull(b)?null:b.toString()}}),e.filter("moment",function(){return function(a,b){switch(b){case"ago":return d(a).fromNow()}return d(a).fromNow()}}),e.filter("noXml",function(){var a=function(a){return c.isString(a)?a.replace(/&/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,"""):a};return function(b){return c.isArray(b)?c.map(b,a):a(b)}}),e.filter("urlLink",function(){var a=/(\b(https?|ftp):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gim,b=/(^|[^\/])(www\.[\S]+(\b|$))/gim,d=/(\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,6})/gim,e=function(e){var f,g,h;return c.isString(e)?(c.each(e.match(a),function(){f=e.replace(a,'$1')}),e=f||e,c.each(e.match(b),function(){g=e.replace(b,'$1$2')}),e=g||e,c.each(e.match(d),function(){h=e.replace(d,'$1')}),e=h||e):e};return function(a){return c.isArray(a)?c.map(a,e):e(a)}}),e.filter("gistid",function(){var a=/(\d{5,})|([a-z0-9]{10,})|(gist.github.com(\/*.*)\/[a-z0-9]{5,}\/*$)/;return function(b){if(!c.isUndefined(b)){var d=b.match(a);if(!c.isNull(d)&&!c.isUndefined(d))return d[0].replace(/.*\//,"")}}})}),define("components/partials",["angular"],function(a){a.module("kibana").run(["$templateCache",function(a){a.put("app/panels/annotations/editor.html",''),a.put("app/panels/graph/axisEditor.html",'
    Left Y Axis
    Right Y Axis
    Grid thresholds
    Legend
    Legend values
    Show Axes
    '),a.put("app/panels/graph/legend.html",' {{series.alias}}   Current: {{series.current}}    Min: {{series.min}}    Max: {{series.max}}    Total: {{series.total}}    Avg: {{series.avg}} '),a.put("app/panels/graph/styleEditor.html",'
    Chart Options
    Line options
    Multiple Series
    Rendering
    '),a.put("app/panels/text/editor.html","
    "),a.put("app/panels/timepicker/custom.html",''),a.put("app/panels/timepicker/editor.html",'
    '),a.put("app/panels/timepicker/refreshctrl.html",'

    '),a.put("app/partials/dashLoader.html",'
  • Back to dashboard
  • Zoom Out
  • Stop playlist
  • '),a.put("app/partials/dashLoaderShare.html",''),a.put("app/partials/dashboard.html",'
    '),a.put("app/partials/dasheditor.html",''),a.put("app/partials/graphite/editor.html",''),a.put("app/partials/import.html",'
    Import dashboards from graphite web
    {{dash.name}}
    {{error}}
    '),a.put("app/partials/influxdb/editor.html",'
    '),a.put("app/partials/inspector.html",''),a.put("app/partials/kairosdb/editor.html",'
    '),a.put("app/partials/load.html",'
    type:{{type}}
    id:{{id}}
    '),a.put("app/partials/loadmetrics.html",'
    Load metrics keys into elastic search

    Work in progress...

    '),a.put("app/partials/metrics.html",'
    '),a.put("app/partials/modal.html",''),a.put("app/partials/opentsdb/editor.html",'
    '),a.put("app/partials/paneladd.html",'
    {{tab.title}}
    '),a.put("app/partials/paneleditor.html",''),a.put("app/partials/panelgeneral.html",'
    General options
    '),a.put("app/partials/playlist.html",'
    '),a.put("app/partials/roweditor.html",''),a.put("app/partials/search.html",''),a.put("app/partials/unsaved-changes.html",'') -}])}),define("app",["angular","jquery","underscore","require","elasticjs","bootstrap","angular-sanitize","angular-strap","angular-dragdrop","extend-jquery","bindonce"],function(a,b,c,d){var e=a.module("kibana",[]),f=[],g={};e.constant("grafanaVersion","1.6.1"),e.constant("cacheBust","cache-bust="+Date.now()),e.useModule=function(a){return f?f.push(a):c.extend(a,g),a},e.safeApply=function(a,b){switch(a.$$phase){case"$apply":a.$eval(b);break;case"$digest":setTimeout(function(){e.safeApply(a,b)},10);break;default:a.$apply(b)}},e.config(["$routeProvider","$controllerProvider","$compileProvider","$filterProvider","$provide",function(a,b,c,d,e){a.when("/dashboard",{templateUrl:"app/partials/dashboard.html"}).when("/dashboard/:kbnType/:kbnId",{templateUrl:"app/partials/dashboard.html"}).when("/dashboard/:kbnType/:kbnId/:params",{templateUrl:"app/partials/dashboard.html"}).otherwise({redirectTo:"dashboard"}),g.controller=b.register,g.directive=c.directive,g.factory=e.factory,g.service=e.service,g.filter=d.register}]);var h=["elasticjs.service","$strap.directives","ngSanitize","ngDragDrop","kibana","pasvaz.bindonce"],i=["controllers","directives","factories","services","services.dashboard","filters"];return c.each(i,function(b){var c="kibana."+b;e.useModule(a.module(c,[])),h.push(c)}),require(["controllers/all","directives/all","filters/all","components/partials"],function(){a.element(document).ready(function(){b("body").attr("ng-controller","DashCtrl"),a.bootstrap(document,h).invoke(["$rootScope",function(a){c.each(f,function(a){c.extend(a,g)}),f=!1,a.requireContext=d,a.require=function(a,b){var d=this;d.requireContext(a,function(){var a=c.toArray(arguments);d.$id&&d.$apply(function(){b.apply(d,a)})})}}])})}),e}),define("css",{load:function(a,b,c){function d(a){var b=document.getElementsByTagName("head")[0],c=document.createElement("link");c.href=a,c.rel="stylesheet",c.type="text/css",b.appendChild(c)}d(requirejs.toUrl(a)),c(!0)},pluginBuilder:"../vendor/require/css-build"}),define("text",["module"],function(a){var b,c,d,e,f,g=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],h=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,i=/]*>\s*([\s\S]+)\s*<\/body>/im,j="undefined"!=typeof location&&location.href,k=j&&location.protocol&&location.protocol.replace(/\:/,""),l=j&&location.hostname,m=j&&(location.port||void 0),n={},o=a.config&&a.config()||{};return b={version:"2.0.10",strip:function(a){if(a){a=a.replace(h,"");var b=a.match(i);b&&(a=b[1])}else a="";return a},jsEscape:function(a){return a.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r").replace(/[\u2028]/g,"\\u2028").replace(/[\u2029]/g,"\\u2029")},createXhr:o.createXhr||function(){var a,b,c;if("undefined"!=typeof XMLHttpRequest)return new XMLHttpRequest;if("undefined"!=typeof ActiveXObject)for(b=0;3>b;b+=1){c=g[b];try{a=new ActiveXObject(c)}catch(d){}if(a){g=[c];break}}return a},parseName:function(a){var b,c,d,e=!1,f=a.indexOf("."),g=0===a.indexOf("./")||0===a.indexOf("../");return-1!==f&&(!g||f>1)?(b=a.substring(0,f),c=a.substring(f+1,a.length)):b=a,d=c||b,f=d.indexOf("!"),-1!==f&&(e="strip"===d.substring(f+1),d=d.substring(0,f),c?c=d:b=d),{moduleName:b,ext:c,strip:e}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(a,c,d,e){var f,g,h,i=b.xdRegExp.exec(a);return i?(f=i[2],g=i[3],g=g.split(":"),h=g[1],g=g[0],!(f&&f!==c||g&&g.toLowerCase()!==d.toLowerCase()||(h||g)&&h!==e)):!0},finishLoad:function(a,c,d,e){d=c?b.strip(d):d,o.isBuild&&(n[a]=d),e(d)},load:function(a,c,d,e){if(e.isBuild&&!e.inlineText)return void d();o.isBuild=e.isBuild;var f=b.parseName(a),g=f.moduleName+(f.ext?"."+f.ext:""),h=c.toUrl(g),i=o.useXhr||b.useXhr;return 0===h.indexOf("empty:")?void d():void(!j||i(h,k,l,m)?b.get(h,function(c){b.finishLoad(a,f.strip,c,d)},function(a){d.error&&d.error(a)}):c([g],function(a){b.finishLoad(f.moduleName+"."+f.ext,f.strip,a,d)}))},write:function(a,c,d){if(n.hasOwnProperty(c)){var e=b.jsEscape(n[c]);d.asModule(a+"!"+c,"define(function () { return '"+e+"';});\n")}},writeFile:function(a,c,d,e,f){var g=b.parseName(c),h=g.ext?"."+g.ext:"",i=g.moduleName+h,j=d.toUrl(g.moduleName+h)+".js";b.load(i,d,function(){var c=function(a){return e(j,a)};c.asModule=function(a,b){return e.asModule(a,j,b)},b.write(a,i,c,f)},f)}},"node"===o.env||!o.env&&"undefined"!=typeof process&&process.versions&&process.versions.node&&!process.versions["node-webkit"]?(c=require.nodeRequire("fs"),b.get=function(a,b,d){try{var e=c.readFileSync(a,"utf8");0===e.indexOf("")&&(e=e.substring(1)),b(e)}catch(f){d(f)}}):"xhr"===o.env||!o.env&&b.createXhr()?b.get=function(a,c,d,e){var f,g=b.createXhr();if(g.open("GET",a,!0),e)for(f in e)e.hasOwnProperty(f)&&g.setRequestHeader(f.toLowerCase(),e[f]);o.onXhr&&o.onXhr(g,a),g.onreadystatechange=function(){var b,e;4===g.readyState&&(b=g.status,b>399&&600>b?(e=new Error(a+" HTTP status: "+b),e.xhr=g,d(e)):c(g.responseText),o.onXhrComplete&&o.onXhrComplete(g,a))},g.send(null)}:"rhino"===o.env||!o.env&&"undefined"!=typeof Packages&&"undefined"!=typeof java?b.get=function(a,b){var c,d,e="utf-8",f=new java.io.File(a),g=java.lang.System.getProperty("line.separator"),h=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(f),e)),i="";try{for(c=new java.lang.StringBuffer,d=h.readLine(),d&&d.length()&&65279===d.charAt(0)&&(d=d.substring(1)),null!==d&&c.append(d);null!==(d=h.readLine());)c.append(g),c.append(d);i=String(c.toString())}finally{h.close()}b(i)}:("xpconnect"===o.env||!o.env&&"undefined"!=typeof Components&&Components.classes&&Components.interfaces)&&(d=Components.classes,e=Components.interfaces,Components.utils["import"]("resource://gre/modules/FileUtils.jsm"),f="@mozilla.org/windows-registry-key;1"in d,b.get=function(a,b){var c,g,h,i={};f&&(a=a.replace(/\//g,"\\")),h=new FileUtils.File(a);try{c=d["@mozilla.org/network/file-input-stream;1"].createInstance(e.nsIFileInputStream),c.init(h,1,0,!1),g=d["@mozilla.org/intl/converter-input-stream;1"].createInstance(e.nsIConverterInputStream),g.init(c,"utf-8",c.available(),e.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER),g.readString(c.available(),i),g.close(),c.close(),b(i.value)}catch(j){throw new Error((h&&h.path||"")+": "+j)}}),b}),function(a){a.color={},a.color.make=function(b,c,d,e){var f={};return f.r=b||0,f.g=c||0,f.b=d||0,f.a=null!=e?e:1,f.add=function(a,b){for(var c=0;c=1?"rgb("+[f.r,f.g,f.b].join(",")+")":"rgba("+[f.r,f.g,f.b,f.a].join(",")+")"},f.normalize=function(){function a(a,b,c){return a>b?a:b>c?c:b}return f.r=a(0,parseInt(f.r),255),f.g=a(0,parseInt(f.g),255),f.b=a(0,parseInt(f.b),255),f.a=a(0,f.a,1),f},f.clone=function(){return a.color.make(f.r,f.b,f.g,f.a)},f.normalize()},a.color.extract=function(b,c){var d;do{if(d=b.css(c).toLowerCase(),""!=d&&"transparent"!=d)break;b=b.parent()}while(!a.nodeName(b.get(0),"body"));return"rgba(0, 0, 0, 0)"==d&&(d="transparent"),a.color.parse(d)},a.color.parse=function(c){var d,e=a.color.make;if(d=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return e(parseInt(d[1],10),parseInt(d[2],10),parseInt(d[3],10));if(d=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(c))return e(parseInt(d[1],10),parseInt(d[2],10),parseInt(d[3],10),parseFloat(d[4]));if(d=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return e(2.55*parseFloat(d[1]),2.55*parseFloat(d[2]),2.55*parseFloat(d[3]));if(d=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(c))return e(2.55*parseFloat(d[1]),2.55*parseFloat(d[2]),2.55*parseFloat(d[3]),parseFloat(d[4]));if(d=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return e(parseInt(d[1],16),parseInt(d[2],16),parseInt(d[3],16));if(d=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return e(parseInt(d[1]+d[1],16),parseInt(d[2]+d[2],16),parseInt(d[3]+d[3],16));var f=a.trim(c).toLowerCase();return"transparent"==f?e(255,255,255,0):(d=b[f]||[0,0,0],e(d[0],d[1],d[2]))};var b={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}}(jQuery),function(a){function b(b,c){var d=c.children("."+b)[0];if(null==d&&(d=document.createElement("canvas"),d.className=b,a(d).css({direction:"ltr",position:"absolute",left:0,top:0}).appendTo(c),!d.getContext)){if(!window.G_vmlCanvasManager)throw new Error("Canvas is not available. If you're using IE with a fall-back such as Excanvas, then there's either a mistake in your conditional include, or the page has no DOCTYPE and is rendering in Quirks Mode.");d=window.G_vmlCanvasManager.initElement(d)}this.element=d;var e=this.context=d.getContext("2d"),f=window.devicePixelRatio||1,g=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;this.pixelRatio=f/g,this.resize(c.width(),c.height()),this.textContainer=null,this.text={},this._textCache={}}function c(c,e,f,g){function h(a,b){b=[qb].concat(b);for(var c=0;cd;++d)e=eb.xaxes[d],e&&!e.tickColor&&(e.tickColor=e.color),e=a.extend(!0,{},eb.xaxis,e),eb.xaxes[d]=e,e.font&&(e.font=a.extend({},g,e.font),e.font.color||(e.font.color=e.color));for(f=eb.yaxes.length||1,d=0;f>d;++d)e=eb.yaxes[d],e&&!e.tickColor&&(e.tickColor=e.color),e=a.extend(!0,{},eb.yaxis,e),eb.yaxes[d]=e,e.font&&(e.font=a.extend({},g,e.font),e.font.color||(e.font.color=e.color));for(eb.xaxis.noTicks&&null==eb.xaxis.ticks&&(eb.xaxis.ticks=eb.xaxis.noTicks),eb.yaxis.noTicks&&null==eb.yaxis.ticks&&(eb.yaxis.ticks=eb.yaxis.noTicks),eb.x2axis&&(eb.xaxes[1]=a.extend(!0,{},eb.xaxis,eb.x2axis),eb.xaxes[1].position="top"),eb.y2axis&&(eb.yaxes[1]=a.extend(!0,{},eb.yaxis,eb.y2axis),eb.yaxes[1].position="right"),eb.grid.coloredAreas&&(eb.grid.markings=eb.grid.coloredAreas),eb.grid.coloredAreasColor&&(eb.grid.markingsColor=eb.grid.coloredAreasColor),eb.lines&&a.extend(!0,eb.series.lines,eb.lines),eb.points&&a.extend(!0,eb.series.points,eb.points),eb.bars&&a.extend(!0,eb.series.bars,eb.bars),null!=eb.shadowSize&&(eb.series.shadowSize=eb.shadowSize),null!=eb.highlightColor&&(eb.series.highlightColor=eb.highlightColor),d=0;dd&&(d=e))}d>=c&&(c=d+1);var f,g=[],h=eb.colors,i=h.length,j=0;for(b=0;c>b;b++)f=a.color.parse(h[b%i]||"#666"),b%i==0&&b&&(j=j>=0?.5>j?-j-.2:0:-j),g[b]=f.scale("rgb",1+j);var k,l=0;for(b=0;ba.datamax&&c!=s&&(a.datamax=c)}var c,d,e,f,g,i,j,k,l,m,o,p,q=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,s=Number.MAX_VALUE;for(a.each(n(),function(a,b){b.datamin=q,b.datamax=r,b.used=!1}),c=0;cf;++f)k=m[f],l=p[f],l&&(l.number&&null!=k&&(k=+k,isNaN(k)?k=null:1/0==k?k=s:k==-1/0&&(k=-s)),null==k&&(l.required&&(v=!0),null!=l.defaultValue&&(k=l.defaultValue))),i[e+f]=k;if(v)for(f=0;j>f;++f)k=i[e+f],null!=k&&(l=p[f],l.autoscale&&(l.x&&b(g.xaxis,k,k),l.y&&b(g.yaxis,k,k))),i[e+f]=null;else if(u&&e>0&&null!=i[e-j]&&i[e-j]!=i[e]&&i[e-j+1]!=i[e+1]){for(f=0;j>f;++f)i[e+j+f]=i[e+f];i[e+1]=i[e-j+1],e+=j}}}}for(c=0;cf;++f)k=i[d+f],l=p[f],l&&l.autoscale!==!1&&k!=s&&k!=-s&&(l.x&&(w>k&&(w=k),k>y&&(y=k)),l.y&&(x>k&&(x=k),k>z&&(z=k)));if(g.bars.show){var A;switch(g.bars.align){case"left":A=0;break;case"right":A=-g.bars.barWidth;break;case"center":A=-g.bars.barWidth/2;break;default:throw new Error("Invalid bar alignment: "+g.bars.align)}g.bars.horizontal?(x+=A,z+=A+g.bars.barWidth):(w+=A,y+=A+g.bars.barWidth)}b(g.xaxis,w,y),b(g.yaxis,x,z)}a.each(n(),function(a,b){b.datamin==q&&(b.datamin=null),b.datamax==r&&(b.datamax=null)})}function t(){c.css("padding",0).children(":not(.flot-base,.flot-overlay)").remove(),"static"==c.css("position")&&c.css("position","relative"),fb=new b("flot-base",c),gb=new b("flot-overlay",c),ib=fb.context,jb=gb.context,hb=a(gb.element).unbind();var d=c.data("plot");d&&(d.shutdown(),gb.clear()),c.data("plot",qb)}function u(){eb.grid.hoverable&&(hb.mousemove(T),hb.bind("mouseleave",U)),eb.grid.clickable&&hb.click(V),h(pb.bindEvents,[hb])}function v(){sb&&clearTimeout(sb),hb.unbind("mousemove",T),hb.unbind("mouseleave",U),hb.unbind("click",V),h(pb.shutdown,[hb])}function w(a){function b(a){return a}var c,d,e=a.options.transform||b,f=a.options.inverseTransform;"x"==a.direction?(c=a.scale=nb/Math.abs(e(a.max)-e(a.min)),d=Math.min(e(a.max),e(a.min))):(c=a.scale=ob/Math.abs(e(a.max)-e(a.min)),c=-c,d=Math.max(e(a.max),e(a.min))),a.p2c=e==b?function(a){return(a-d)*c}:function(a){return(e(a)-d)*c},a.c2p=f?function(a){return f(d+a/c)}:function(a){return d+a/c}}function x(a){var b=a.options,c=a.ticks||[],d=b.labelWidth||0,e=b.labelHeight||0,f=d||"x"==a.direction?Math.floor(fb.width/(c.length||1)):null;legacyStyles=a.direction+"Axis "+a.direction+a.n+"Axis",layer="flot-"+a.direction+"-axis flot-"+a.direction+a.n+"-axis "+legacyStyles,font=b.font||"flot-tick-label tickLabel";for(var g=0;g=0;--b)y(g[b]);A(),a.each(g,function(a,b){z(b)})}nb=fb.width-mb.left-mb.right,ob=fb.height-mb.bottom-mb.top,a.each(c,function(a,b){w(b)}),d&&K(),R()}function C(a){var b=a.options,c=+(null!=b.min?b.min:a.datamin),d=+(null!=b.max?b.max:a.datamax),e=d-c;if(0==e){var f=0==d?1:.01;null==b.min&&(c-=f),(null==b.max||null!=b.min)&&(d+=f)}else{var g=b.autoscaleMargin;null!=g&&(null==b.min&&(c-=e*g,0>c&&null!=a.datamin&&a.datamin>=0&&(c=0)),null==b.max&&(d+=e*g,d>0&&null!=a.datamax&&a.datamax<=0&&(d=0)))}a.min=c,a.max=d}function D(b){var c,e=b.options;c="number"==typeof e.ticks&&e.ticks>0?e.ticks:.3*Math.sqrt("x"==b.direction?fb.width:fb.height);var f=(b.max-b.min)/c,g=-Math.floor(Math.log(f)/Math.LN10),h=e.tickDecimals;null!=h&&g>h&&(g=h);var i,j=Math.pow(10,-g),k=f/j;if(1.5>k?i=1:3>k?(i=2,k>2.25&&(null==h||h>=g+1)&&(i=2.5,++g)):i=7.5>k?5:10,i*=j,null!=e.minTickSize&&i0&&(null==e.min&&(b.min=Math.min(b.min,m[0])),null==e.max&&m.length>1&&(b.max=Math.max(b.max,m[m.length-1]))),b.tickGenerator=function(a){var b,c,d=[];for(c=0;c1&&/\..*0$/.test((o[1]-o[0]).toFixed(n))||(b.tickDecimals=n)}}}}function E(b){var c=b.options.ticks,d=[];null==c||"number"==typeof c&&c>0?d=b.tickGenerator(b):c&&(d=a.isFunction(c)?c(b):c);var e,f;for(b.ticks=[],e=0;e1&&(g=h[1])):f=+h,null==g&&(g=b.tickFormatter(f,b)),isNaN(f)||b.ticks.push({v:f,label:g})}}function F(a,b){a.options.autoscaleMargin&&b.length>0&&(null==a.options.min&&(a.min=Math.min(a.min,b[0].v)),null==a.options.max&&b.length>1&&(a.max=Math.max(a.max,b[b.length-1].v)))}function G(){fb.clear(),h(pb.drawBackground,[ib]);var a=eb.grid;a.show&&a.backgroundColor&&I(),a.show&&!a.aboveData&&J();for(var b=0;be){var i=d;d=e,e=i}return{from:d,to:e,axis:c}}function I(){ib.save(),ib.translate(mb.left,mb.top),ib.fillStyle=cb(eb.grid.backgroundColor,ob,0,"rgba(255, 255, 255, 0)"),ib.fillRect(0,0,nb,ob),ib.restore()}function J(){var b,c,d,e;ib.save(),ib.translate(mb.left,mb.top);var f=eb.grid.markings;if(f)for(a.isFunction(f)&&(c=qb.getAxes(),c.xmin=c.xaxis.min,c.xmax=c.xaxis.max,c.ymin=c.yaxis.min,c.ymax=c.yaxis.max,f=f(c)),b=0;bh.axis.max||i.toi.axis.max||(h.from=Math.max(h.from,h.axis.min),h.to=Math.min(h.to,h.axis.max),i.from=Math.max(i.from,i.axis.min),i.to=Math.min(i.to,i.axis.max),(h.from!=h.to||i.from!=i.to)&&(h.from=h.axis.p2c(h.from),h.to=h.axis.p2c(h.to),i.from=i.axis.p2c(i.from),i.to=i.axis.p2c(i.to),h.from==h.to||i.from==i.to?(ib.beginPath(),ib.strokeStyle=g.color||eb.grid.markingsColor,ib.lineWidth=g.lineWidth||eb.grid.markingsLineWidth,ib.moveTo(h.from,i.from),ib.lineTo(h.to,i.to),ib.stroke()):(ib.fillStyle=g.color||eb.grid.markingsColor,ib.fillRect(h.from,i.to,h.to-h.from,i.from-i.to))))}c=n(),d=eb.grid.borderWidth;for(var j=0;jp.max||"full"==r&&("object"==typeof d&&d[p.position]>0||d>0)&&(s==p.min||s==p.max)||("x"==p.direction?(k=p.p2c(s),o="full"==r?-ob:r,"top"==p.position&&(o=-o)):(l=p.p2c(s),m="full"==r?-nb:r,"left"==p.position&&(m=-m)),1==ib.lineWidth&&("x"==p.direction?k=Math.floor(k)+.5:l=Math.floor(l)+.5),ib.moveTo(k,l),ib.lineTo(k+m,l+o))}ib.stroke()}}d&&(e=eb.grid.borderColor,"object"==typeof d||"object"==typeof e?("object"!=typeof d&&(d={top:d,right:d,bottom:d,left:d}),"object"!=typeof e&&(e={top:e,right:e,bottom:e,left:e}),d.top>0&&(ib.strokeStyle=e.top,ib.lineWidth=d.top,ib.beginPath(),ib.moveTo(0-d.left,0-d.top/2),ib.lineTo(nb,0-d.top/2),ib.stroke()),d.right>0&&(ib.strokeStyle=e.right,ib.lineWidth=d.right,ib.beginPath(),ib.moveTo(nb+d.right/2,0-d.top),ib.lineTo(nb+d.right/2,ob),ib.stroke()),d.bottom>0&&(ib.strokeStyle=e.bottom,ib.lineWidth=d.bottom,ib.beginPath(),ib.moveTo(nb+d.right,ob+d.bottom/2),ib.lineTo(0,ob+d.bottom/2),ib.stroke()),d.left>0&&(ib.strokeStyle=e.left,ib.lineWidth=d.left,ib.beginPath(),ib.moveTo(0-d.left/2,ob+d.bottom),ib.lineTo(0-d.left/2,0),ib.stroke())):(ib.lineWidth=d,ib.strokeStyle=eb.grid.borderColor,ib.strokeRect(-d/2,-d/2,nb+d,ob+d))),ib.restore()}function K(){a.each(n(),function(a,b){if(b.show&&0!=b.ticks.length){var c,d,e,f,g,h=b.box,i=b.direction+"Axis "+b.direction+b.n+"Axis",j="flot-"+b.direction+"-axis flot-"+b.direction+b.n+"-axis "+i,k=b.options.font||"flot-tick-label tickLabel";fb.removeText(j);for(var l=0;lb.max||("x"==b.direction?(f="center",d=mb.left+b.p2c(c.v),"bottom"==b.position?e=h.top+h.padding:(e=h.top+h.height-h.padding,g="bottom")):(g="middle",e=mb.top+b.p2c(c.v),"left"==b.position?(d=h.left+h.width-h.padding,f="right"):d=h.left+h.padding),fb.addText(j,d,e,c.label,k,null,null,f,g))}})}function L(a){a.lines.show&&M(a),a.bars.show&&P(a),a.points.show&&N(a)}function M(a){function b(a,b,c,d,e){var f=a.points,g=a.pointsize,h=null,i=null;ib.beginPath();for(var j=g;j=l&&l=n&&n=n&&l>e.max){if(n>e.max)continue;k=(e.max-l)/(n-l)*(m-k)+k,l=e.max}else if(n>=l&&n>e.max){if(l>e.max)continue;m=(e.max-l)/(n-l)*(m-k)+k,n=e.max}if(m>=k&&k=m&&m=m&&k>d.max){if(m>d.max)continue;l=(d.max-k)/(m-k)*(n-l)+l,k=d.max}else if(m>=k&&m>d.max){if(k>d.max)continue;n=(d.max-k)/(m-k)*(n-l)+l,m=d.max}(k!=h||l!=i)&&ib.moveTo(d.p2c(k)+b,e.p2c(l)+c),h=m,i=n,ib.lineTo(d.p2c(m)+b,e.p2c(n)+c)}}ib.stroke()}function c(a,b,c){for(var d=a.points,e=a.pointsize,f=Math.min(Math.max(0,c.min),c.max),g=0,h=!1,i=1,j=0,k=0;;){if(e>0&&g>d.length+e)break;g+=e;var l=d[g-e],m=d[g-e+i],n=d[g],o=d[g+i];if(h){if(e>0&&null!=l&&null==n){k=g,e=-e,i=2;continue}if(0>e&&g==j+e){ib.fill(),h=!1,e=-e,i=1,g=j=k+e;continue}}if(null!=l&&null!=n){if(n>=l&&l=n&&n=n&&l>b.max){if(n>b.max)continue;m=(b.max-l)/(n-l)*(o-m)+m,l=b.max}else if(n>=l&&n>b.max){if(l>b.max)continue;o=(b.max-l)/(n-l)*(o-m)+m,n=b.max}if(h||(ib.beginPath(),ib.moveTo(b.p2c(l),c.p2c(f)),h=!0),m>=c.max&&o>=c.max)ib.lineTo(b.p2c(l),c.p2c(c.max)),ib.lineTo(b.p2c(n),c.p2c(c.max));else if(m<=c.min&&o<=c.min)ib.lineTo(b.p2c(l),c.p2c(c.min)),ib.lineTo(b.p2c(n),c.p2c(c.min));else{var p=l,q=n;o>=m&&m=c.min?(l=(c.min-m)/(o-m)*(n-l)+l,m=c.min):m>=o&&o=c.min&&(n=(c.min-m)/(o-m)*(n-l)+l,o=c.min),m>=o&&m>c.max&&o<=c.max?(l=(c.max-m)/(o-m)*(n-l)+l,m=c.max):o>=m&&o>c.max&&m<=c.max&&(n=(c.max-m)/(o-m)*(n-l)+l,o=c.max),l!=p&&ib.lineTo(b.p2c(p),c.p2c(m)),ib.lineTo(b.p2c(l),c.p2c(m)),ib.lineTo(b.p2c(n),c.p2c(o)),n!=q&&(ib.lineTo(b.p2c(n),c.p2c(o)),ib.lineTo(b.p2c(q),c.p2c(o)))}}}}ib.save(),ib.translate(mb.left,mb.top),ib.lineJoin="round";var d=a.lines.lineWidth,e=a.shadowSize;if(d>0&&e>0){ib.lineWidth=e,ib.strokeStyle="rgba(0,0,0,0.1)";var f=Math.PI/18;b(a.datapoints,Math.sin(f)*(d/2+e/2),Math.cos(f)*(d/2+e/2),a.xaxis,a.yaxis),ib.lineWidth=e/2,b(a.datapoints,Math.sin(f)*(d/2+e/4),Math.cos(f)*(d/2+e/4),a.xaxis,a.yaxis)}ib.lineWidth=d,ib.strokeStyle=a.color;var g=Q(a.lines,a.color,0,ob);g&&(ib.fillStyle=g,c(a.datapoints,a.xaxis,a.yaxis)),d>0&&b(a.datapoints,0,0,a.xaxis,a.yaxis),ib.restore()}function N(a){function b(a,b,c,d,e,f,g,h){for(var i=a.points,j=a.pointsize,k=0;kf.max||mg.max||(ib.beginPath(),l=f.p2c(l),m=g.p2c(m)+d,"circle"==h?ib.arc(l,m,b,0,e?Math.PI:2*Math.PI,!1):h(ib,l,m,b,e),ib.closePath(),c&&(ib.fillStyle=c,ib.fill()),ib.stroke())}}ib.save(),ib.translate(mb.left,mb.top);var c=a.points.lineWidth,d=a.shadowSize,e=a.points.radius,f=a.points.symbol;if(0==c&&(c=1e-4),c>0&&d>0){var g=d/2;ib.lineWidth=g,ib.strokeStyle="rgba(0,0,0,0.1)",b(a.datapoints,e,null,g+g/2,!0,a.xaxis,a.yaxis,f),ib.strokeStyle="rgba(0,0,0,0.2)",b(a.datapoints,e,null,g/2,!0,a.xaxis,a.yaxis,f)}ib.lineWidth=c,ib.strokeStyle=a.color,b(a.datapoints,e,Q(a.points,a.color),0,!1,a.xaxis,a.yaxis,f),ib.restore()}function O(a,b,c,d,e,f,g,h,i,j,k,l){var m,n,o,p,q,r,s,t,u;k?(t=r=s=!0,q=!1,m=c,n=a,p=b+d,o=b+e,m>n&&(u=n,n=m,m=u,q=!0,r=!1)):(q=r=s=!0,t=!1,m=a+d,n=a+e,o=c,p=b,o>p&&(u=p,p=o,o=u,t=!0,s=!1)),nh.max||pi.max||(mh.max&&(n=h.max,r=!1),oi.max&&(p=i.max,s=!1),m=h.p2c(m),o=i.p2c(o),n=h.p2c(n),p=i.p2c(p),g&&(j.beginPath(),j.moveTo(m,o),j.lineTo(m,p),j.lineTo(n,p),j.lineTo(n,o),j.fillStyle=g(o,p),j.fill()),l>0&&(q||r||s||t)&&(j.beginPath(),j.moveTo(m,o+f),q?j.lineTo(m,p+f):j.moveTo(m,p+f),s?j.lineTo(n,p+f):j.moveTo(n,p+f),r?j.lineTo(n,o+f):j.moveTo(n,o+f),t?j.lineTo(m,o+f):j.moveTo(m,o+f),j.stroke()))}function P(a){function b(b,c,d,e,f,g,h){for(var i=b.points,j=b.pointsize,k=0;k"),e.push(""),g=!0),e.push('
    '+k.label+"") -}if(g&&e.push(""),0!=e.length){var l=''+e.join("")+"
    ";if(null!=eb.legend.container)a(eb.legend.container).html(l);else{var m="",n=eb.legend.position,o=eb.legend.margin;null==o[0]&&(o=[o,o]),"n"==n.charAt(0)?m+="top:"+(o[1]+mb.top)+"px;":"s"==n.charAt(0)&&(m+="bottom:"+(o[1]+mb.bottom)+"px;"),"e"==n.charAt(1)?m+="right:"+(o[0]+mb.right)+"px;":"w"==n.charAt(1)&&(m+="left:"+(o[0]+mb.left)+"px;");var p=a('
    '+l.replace('style="','style="position:absolute;'+m+";")+"
    ").appendTo(c);if(0!=eb.legend.backgroundOpacity){var q=eb.legend.backgroundColor;null==q&&(q=eb.grid.backgroundColor,q=q&&"string"==typeof q?a.color.parse(q):a.color.extract(p,"background-color"),q.a=1,q=q.toString());var r=p.children();a('
    ').prependTo(p).css("opacity",eb.legend.backgroundOpacity)}}}}}function S(a,b,c){var d,e,f,g=eb.grid.mouseActiveRadius,h=g*g+1,i=null;for(d=db.length-1;d>=0;--d)if(c(db[d])){var j=db[d],k=j.xaxis,l=j.yaxis,m=j.datapoints.points,n=k.c2p(a),o=l.c2p(b),p=g/k.scale,q=g/l.scale;if(f=j.datapoints.pointsize,k.options.inverseTransform&&(p=Number.MAX_VALUE),l.options.inverseTransform&&(q=Number.MAX_VALUE),j.lines.show||j.points.show)for(e=0;ep||-p>r-n||s-o>q||-q>s-o)){var t=Math.abs(k.p2c(r)-a),u=Math.abs(l.p2c(s)-b),v=t*t+u*u;h>v&&(h=v,i=[d,e/f])}}if(j.bars.show&&!i){var w="left"==j.bars.align?0:-j.bars.barWidth/2,x=w+j.bars.barWidth;for(e=0;e=Math.min(y,r)&&o>=s+w&&s+x>=o:n>=r+w&&r+x>=n&&o>=Math.min(y,s)&&o<=Math.max(y,s))&&(i=[d,e/f])}}}return i?(d=i[0],e=i[1],f=db[d].datapoints.pointsize,{datapoint:db[d].datapoints.points.slice(e*f,(e+1)*f),dataIndex:e,series:db[d],seriesIndex:d}):null}function T(a){eb.grid.hoverable&&W("plothover",a,function(a){return 0!=a.hoverable})}function U(a){eb.grid.hoverable&&W("plothover",a,function(){return!1})}function V(a){W("plotclick",a,function(a){return 0!=a.clickable})}function W(a,b,d){var e=hb.offset(),f=b.pageX-e.left-mb.left,g=b.pageY-e.top-mb.top,h=o({left:f,top:g});h.pageX=b.pageX,h.pageY=b.pageY;var i=S(f,g,d);if(i&&(i.pageX=parseInt(i.series.xaxis.p2c(i.datapoint[0])+e.left+mb.left,10),i.pageY=parseInt(i.series.yaxis.p2c(i.datapoint[1])+e.top+mb.top,10)),eb.grid.autoHighlight){for(var j=0;jf.max||eg.max)){var i=b.points.radius+b.points.lineWidth/2;jb.lineWidth=i,jb.strokeStyle=h;var j=1.5*i;d=f.p2c(d),e=g.p2c(e),jb.beginPath(),"circle"==b.points.symbol?jb.arc(d,e,j,0,2*Math.PI,!1):b.points.symbol(jb,d,e,j,!1),jb.closePath(),jb.stroke()}}function bb(b,c){var d="string"==typeof b.highlightColor?b.highlightColor:a.color.parse(b.color).scale("a",.5).toString(),e=d,f="left"==b.bars.align?0:-b.bars.barWidth/2;jb.lineWidth=b.bars.lineWidth,jb.strokeStyle=d,O(c[0],c[1],c[2]||0,f,f+b.bars.barWidth,0,function(){return e},b.xaxis,b.yaxis,jb,b.bars.horizontal,b.bars.lineWidth)}function cb(b,c,d,e){if("string"==typeof b)return b;for(var f=ib.createLinearGradient(0,d,0,c),g=0,h=b.colors.length;h>g;++g){var i=b.colors[g];if("string"!=typeof i){var j=a.color.parse(e);null!=i.brightness&&(j=j.scale("rgb",i.brightness)),null!=i.opacity&&(j.a*=i.opacity),i=j.toString()}f.addColorStop(g/(h-1),i)}return f}var db=[],eb={colors:["#edc240","#afd8f8","#cb4b4b","#4da74d","#9440ed"],legend:{show:!0,noColumns:1,labelFormatter:null,labelBoxBorderColor:"#ccc",container:null,position:"ne",margin:5,backgroundColor:null,backgroundOpacity:.85,sorted:null},xaxis:{show:null,position:"bottom",mode:null,font:null,color:null,tickColor:null,transform:null,inverseTransform:null,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,reserveSpace:null,tickLength:null,alignTicksWithAxis:null,tickDecimals:null,tickSize:null,minTickSize:null},yaxis:{autoscaleMargin:.02,position:"left"},xaxes:[],yaxes:[],series:{points:{show:!1,radius:3,lineWidth:2,fill:!0,fillColor:"#ffffff",symbol:"circle"},lines:{lineWidth:2,fill:!1,fillColor:null,steps:!1},bars:{show:!1,lineWidth:2,barWidth:1,fill:!0,fillColor:null,align:"left",horizontal:!1},shadowSize:3,highlightColor:null},grid:{show:!0,aboveData:!1,color:"#545454",backgroundColor:null,borderColor:null,tickColor:null,margin:0,labelMargin:5,axisMargin:8,borderWidth:2,minBorderMargin:null,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:!1,hoverable:!1,autoHighlight:!0,mouseActiveRadius:10},interaction:{redrawOverlayInterval:1e3/60},hooks:{}},fb=null,gb=null,hb=null,ib=null,jb=null,kb=[],lb=[],mb={left:0,right:0,top:0,bottom:0},nb=0,ob=0,pb={processOptions:[],processRawData:[],processDatapoints:[],processOffset:[],drawBackground:[],drawSeries:[],draw:[],bindEvents:[],drawOverlay:[],shutdown:[]},qb=this;qb.setData=k,qb.setupGrid=B,qb.draw=G,qb.getPlaceholder=function(){return c},qb.getCanvas=function(){return fb.element},qb.getPlotOffset=function(){return mb},qb.width=function(){return nb},qb.height=function(){return ob},qb.offset=function(){var a=hb.offset();return a.left+=mb.left,a.top+=mb.top,a},qb.getData=function(){return db},qb.getAxes=function(){var b={};return a.each(kb.concat(lb),function(a,c){c&&(b[c.direction+(1!=c.n?c.n:"")+"axis"]=c)}),b},qb.getXAxes=function(){return kb},qb.getYAxes=function(){return lb},qb.c2p=o,qb.p2c=p,qb.getOptions=function(){return eb},qb.highlight=Z,qb.unhighlight=$,qb.triggerRedrawOverlay=X,qb.pointOffset=function(a){return{left:parseInt(kb[m(a,"x")-1].p2c(+a.x)+mb.left,10),top:parseInt(lb[m(a,"y")-1].p2c(+a.y)+mb.top,10)}},qb.shutdown=v,qb.resize=function(){var a=c.width(),b=c.height();fb.resize(a,b),gb.resize(a,b)},qb.hooks=pb,i(qb),j(f),t(),k(e),B(),G(),u();var rb=[],sb=null}function d(a,b){return b*Math.floor(a/b)}var e=Object.prototype.hasOwnProperty;b.prototype.resize=function(a,b){if(0>=a||0>=b)throw new Error("Invalid dimensions for plot, width = "+a+", height = "+b);var c=this.element,d=this.context,e=this.pixelRatio;this.width!=a&&(c.width=a*e,c.style.width=a+"px",this.width=a),this.height!=b&&(c.height=b*e,c.style.height=b+"px",this.height=b),d.restore(),d.save(),d.scale(e,e)},b.prototype.clear=function(){this.context.clearRect(0,0,this.width,this.height)},b.prototype.render=function(){var a=this._textCache;for(var b in a)if(e.call(a,b)){var c=this.getTextLayer(b),d=a[b];c.hide();for(var f in d)if(e.call(d,f)){var g=d[f];for(var h in g)if(e.call(g,h)){for(var i,j=g[h].positions,k=0;i=j[k];k++)i.active?i.rendered||(c.append(i.element),i.rendered=!0):(j.splice(k--,1),i.rendered&&i.element.detach());0==j.length&&delete g[h]}}c.show()}},b.prototype.getTextLayer=function(b){var c=this.text[b];return null==c&&(null==this.textContainer&&(this.textContainer=a("
    ").css({position:"absolute",top:0,left:0,bottom:0,right:0,"font-size":"smaller",color:"#545454"}).insertAfter(this.element)),c=this.text[b]=a("
    ").addClass(b).css({position:"absolute",top:0,left:0,bottom:0,right:0}).appendTo(this.textContainer)),c},b.prototype.getTextInfo=function(b,c,d,e,f){var g,h,i,j;if(c=""+c,g="object"==typeof d?d.style+" "+d.variant+" "+d.weight+" "+d.size+"px/"+d.lineHeight+"px "+d.family:d,h=this._textCache[b],null==h&&(h=this._textCache[b]={}),i=h[g],null==i&&(i=h[g]={}),j=i[c],null==j){var k=a("
    ").html(c).css({position:"absolute","max-width":f,top:-9999}).appendTo(this.getTextLayer(b));"object"==typeof d?k.css({font:g,color:d.color}):"string"==typeof d&&k.addClass(d),j=i[c]={width:k.outerWidth(!0),height:k.outerHeight(!0),element:k,positions:[]},k.detach()}return j},b.prototype.addText=function(a,b,c,d,e,f,g,h,i){var j=this.getTextInfo(a,d,e,f,g),k=j.positions;"center"==h?b-=j.width/2:"right"==h&&(b-=j.width),"middle"==i?c-=j.height/2:"bottom"==i&&(c-=j.height);for(var l,m=0;l=k[m];m++)if(l.x==b&&l.y==c)return void(l.active=!0);l={active:!0,rendered:!1,element:k.length?j.element.clone():j.element,x:b,y:c},k.push(l),l.element.css({top:Math.round(c),left:Math.round(b),"text-align":h})},b.prototype.removeText=function(a,b,c,d,f,g){if(null==d){var h=this._textCache[a];if(null!=h)for(var i in h)if(e.call(h,i)){var j=h[i];for(var k in j)if(e.call(j,k))for(var l,m=j[k].positions,n=0;l=m[n];n++)l.active=!1}}else for(var l,m=this.getTextInfo(a,d,f,g).positions,n=0;l=m[n];n++)l.x==b&&l.y==c&&(l.active=!1)},a.plot=function(b,d,e){var f=new c(a(b),d,e,a.plot.plugins);return f},a.plot.version="0.8.1",a.plot.plugins=[],a.fn.plot=function(b,c){return this.each(function(){a.plot(this,b,c)})}}(jQuery),define("jquery.flot",function(){}),function(a){function b(b){function f(b){x||(x=!0,s=b.getCanvas(),t=a(s).parent(),e=b.getOptions(),b.setData(g(b.getData())))}function g(b){for(var c=0,d=0,f=0,g=e.series.pie.combine.color,h=[],i=0;if||j/c>e.series.pie.combine.threshold)&&h.push({data:[[1,j]],color:b[i].color,label:b[i].label,angle:j*Math.PI*2/c,percent:j/(c/100)})}return f>1&&h.push({data:[[1,d]],color:g,label:e.series.pie.combine.label,angle:d*Math.PI*2/c,percent:d/(c/100)}),h}function h(b,f){function g(){y.clearRect(0,0,k,l),t.children().filter(".pieLabel, .pieLabelBackground").remove()}function h(){var a=e.series.pie.shadow.left,b=e.series.pie.shadow.top,c=10,d=e.series.pie.shadow.alpha,f=e.series.pie.radius>1?e.series.pie.radius:u*e.series.pie.radius;if(!(f>=k/2-a||f*e.series.pie.tilt>=l/2-b||c>=f)){y.save(),y.translate(a,b),y.globalAlpha=d,y.fillStyle="#000",y.translate(v,w),y.scale(1,e.series.pie.tilt);for(var g=1;c>=g;g++)y.beginPath(),y.arc(0,0,f,0,2*Math.PI,!1),y.fill(),f-=g;y.restore()}}function j(){function b(a,b,c){0>=a||isNaN(a)||(c?y.fillStyle=b:(y.strokeStyle=b,y.lineJoin="round"),y.beginPath(),Math.abs(a-2*Math.PI)>1e-9&&y.moveTo(0,0),y.arc(0,0,f,g,g+a/2,!1),y.arc(0,0,f,g+a/2,g+a,!1),y.closePath(),g+=a,c?y.fill():y.stroke())}function c(){function b(b,c,d){if(0==b.data[0][1])return!0;var g,h=e.legend.labelFormatter,i=e.series.pie.label.formatter;g=h?h(b.label,b):b.label,i&&(g=i(g,b));var j=(c+b.angle+c)/2,m=v+Math.round(Math.cos(j)*f),n=w+Math.round(Math.sin(j)*f)*e.series.pie.tilt,o=""+g+"";t.append(o);var p=t.children("#pieLabel"+d),q=n-p.height()/2,r=m-p.width()/2;if(p.css("top",q),p.css("left",r),0-q>0||0-r>0||l-(q+p.height())<0||k-(r+p.width())<0)return!1;if(0!=e.series.pie.label.background.opacity){var s=e.series.pie.label.background.color;null==s&&(s=b.color);var u="top:"+q+"px;left:"+r+"px;";a("
    ").css("opacity",e.series.pie.label.background.opacity).insertBefore(p)}return!0}for(var c=d,f=e.series.pie.label.radius>1?e.series.pie.label.radius:u*e.series.pie.label.radius,g=0;g=100*e.series.pie.label.threshold&&!b(n[g],c,g))return!1;c+=n[g].angle}return!0}var d=Math.PI*e.series.pie.startAngle,f=e.series.pie.radius>1?e.series.pie.radius:u*e.series.pie.radius;y.save(),y.translate(v,w),y.scale(1,e.series.pie.tilt),y.save();for(var g=d,h=0;h0){y.save(),y.lineWidth=e.series.pie.stroke.width,g=d;for(var h=0;hv?v=u:v>k-u&&(v=k-u);var n=b.getData(),o=0;do o>0&&(u*=d),o+=1,g(),e.series.pie.tilt<=.8&&h();while(!j()&&c>o);o>=c&&(g(),t.prepend("
    Could not draw pie with labels contained inside canvas
    ")),b.setSeries&&b.insertLegend&&(b.setSeries(n),b.insertLegend())}}function i(a){if(e.series.pie.innerRadius>0){a.save();var b=e.series.pie.innerRadius>1?e.series.pie.innerRadius:u*e.series.pie.innerRadius;a.globalCompositeOperation="destination-out",a.beginPath(),a.fillStyle=e.series.pie.stroke.color,a.arc(0,0,b,0,2*Math.PI,!1),a.fill(),a.closePath(),a.restore(),a.save(),a.beginPath(),a.strokeStyle=e.series.pie.stroke.color,a.arc(0,0,b,0,2*Math.PI,!1),a.stroke(),a.closePath(),a.restore()}}function j(a,b){for(var c=!1,d=-1,e=a.length,f=e-1;++d1?g.series.pie.radius:u*g.series.pie.radius,i=0;i1e-9&&b.moveTo(0,0),b.arc(0,0,e,a.startAngle,a.startAngle+a.angle/2,!1),b.arc(0,0,e,a.startAngle+a.angle/2,a.startAngle+a.angle,!1),b.closePath(),b.fill())}var d=a.getOptions(),e=d.series.pie.radius>1?d.series.pie.radius:u*d.series.pie.radius;b.save(),b.translate(v,w),b.scale(1,d.series.pie.tilt);for(var f=0;f1?b.series.pie.tilt=1:b.series.pie.tilt<0&&(b.series.pie.tilt=0))}),b.hooks.bindEvents.push(function(a,b){var c=a.getOptions();c.series.pie.show&&(c.grid.hoverable&&b.unbind("mousemove").mousemove(l),c.grid.clickable&&b.unbind("click").click(m))}),b.hooks.processDatapoints.push(function(a,b,c,d){var e=a.getOptions();e.series.pie.show&&f(a,b,c,d)}),b.hooks.drawOverlay.push(function(a,b){var c=a.getOptions();c.series.pie.show&&r(a,b)}),b.hooks.draw.push(function(a,b){var c=a.getOptions();c.series.pie.show&&h(a,b)})}var c=10,d=.95,e={series:{pie:{show:!1,radius:"auto",innerRadius:0,startAngle:1.5,tilt:1,shadow:{left:5,top:15,alpha:.02},offset:{top:0,left:"auto"},stroke:{color:"#fff",width:1},label:{show:"auto",formatter:function(a,b){return"
    "+a+"
    "+Math.round(b.percent)+"%
    "},radius:1,background:{color:null,opacity:0},threshold:0},combine:{threshold:-1,color:null,label:"Other"},highlight:{opacity:.5}}}};a.plot.plugins.push({init:b,options:e,name:"pie",version:"1.1"})}(jQuery),define("jquery.flot.pie",function(){}),define("panels/annotations/module",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.panels.annotations",[]);b.useModule(d),d.controller("AnnotationsCtrl",["$scope","dashboard","$rootScope",function(b,d,e){b.panelMeta={status:"Stable",description:"Annotations"};var f={annotations:[]},g={name:"",type:"graphite metric",showLine:!0,iconColor:"#C0C6BE",lineColor:"rgba(255, 96, 96, 0.592157)",iconSize:13,enable:!0};c.defaults(b.panel,f),b.init=function(){b.currentAnnnotation=a.copy(g),b.currentIsNew=!0},b.edit=function(a){b.currentAnnnotation=a,b.currentIsNew=!1},b.update=function(){b.currentAnnnotation=a.copy(g),b.currentIsNew=!0},b.add=function(){b.panel.annotations.push(b.currentAnnnotation),b.currentAnnnotation=a.copy(g)},b.hide=function(a){a.enable=!a.enable,e.$broadcast("refresh")}}])}),define("text!panels/annotations/module.html",[],function(){return''}),define("panels/filtering/module",["angular","app","underscore"],function(a,b,c){var d=a.module("kibana.panels.filtering",[]);b.useModule(d),d.controller("filtering",["$scope","datasourceSrv","$rootScope","$timeout","$q",function(a,b,d,e,f){a.panelMeta={status:"Stable",description:"graphite target filters"};var g={};c.defaults(a.panel,g),a.init=function(){},a.remove=function(b){a.filter.removeTemplateParameter(b)},a.filterOptionSelected=function(b,c,d){return b.current=c,a.filter.updateTemplateData(),a.applyFilterToOtherFilters(b).then(function(){d||a.dashboard.refresh()})},a.applyFilterToOtherFilters=function(b){var d=c.map(a.filter.templateParameters,function(c){return c!==b&&-1!==c.query.indexOf(b.name)?a.applyFilter(c):void 0});return f.all(d)},a.applyFilter=function(d){return b.default.metricFindQuery(a.filter,d.query).then(function(b){if(d.editing=void 0,d.options=c.map(b,function(a){return{text:a.text,value:a.text}}),d.includeAll){var e="{";c.each(d.options,function(a){e+=a.text+","}),e=e.substring(0,e.length-1)+"}",d.options.unshift({text:"All",value:e})}if(d.current){var f=c.findWhere(d.options,{value:d.current.value});if(f)return a.filterOptionSelected(d,d.current,!0)}return a.filterOptionSelected(d,d.options[0],!0)})},a.add=function(){a.filter.addTemplateParameter({type:"filter",name:"filter name",editing:!0,query:"metric.path.query.*"})}}])}),define("text!panels/filtering/module.html",[],function(){return'
    • name:
    • filter.query:
    '}),define("panels/graph/timeSeries",["underscore","kbn"],function(a,b){var c={};return c.ZeroFilled=function(a){this.datapoints=a.datapoints,this.info=a.info,this.label=a.info.alias},c.ZeroFilled.prototype.getFlotPairs=function(c,d){var e=[];if(this.color=this.info.color,this.yaxis=this.info.yaxis,this.info.total=0,this.info.max=null,this.info.min=212312321312,a.each(this.datapoints,function(b){var d=b[1],f=b[0];if(null===f){if("connected"===c)return;"null as zero"===c&&(f=0)}a.isNumber(f)&&(this.info.total+=f),f>this.info.max&&(this.info.max=f),f2&&(this.info.timeStep=e[1][0]-e[0][0]),e.length){this.info.avg=this.info.total/e.length,this.info.current=e[e.length-1][1];var f=b.getFormatFunction(d[this.yaxis-1],2);this.info.avg=null!=this.info.avg?f(this.info.avg):null,this.info.current=null!=this.info.current?f(this.info.current):null,this.info.min=null!=this.info.min?f(this.info.min):null,this.info.max=null!=this.info.max?f(this.info.max):null,this.info.total=null!=this.info.total?f(this.info.total):null}return e},c}),function(a){function b(b){var f,g={icon:"icon-caret-up",size:20,width:19,height:10},h=[],i=!1;b.getEvents=function(){return h},b.hideEvents=function(b){a.each(h,function(a,c){k(c.level(),b)&&c.visual().getObject().hide()})},b.showEvents=function(c){b.hideEvents(),a.each(h,function(a,b){k(b.level(),c)||b.hide()}),j()},b.hooks.processOptions.push(function(a,b){null!=b.events.data&&(i=!0)}),b.hooks.draw.push(function(a){var b=a.getOptions(),c=a.getXAxes()[b.events.xaxis-1];if(i)if(h.length<1)if(_lastRange=c.max-c.min,b.events.clustering){var d=s(b.events.types,b.events.data,c.max-c.min);f=d.types,n(d.data)}else f=b.events.types,n(b.events.data);else l();j()});var j=function(){{var c=b.getPlotOffset();c.left,b.width()-c.right}a.each(h,function(a,b){r(b.getOptions().min)&&!b.isHidden()?b.visual().draw():b.visual().getObject().hide()}),o(),p()},k=function(a,b){var c={};return b?(c.start=void 0==b.min?0:b.min,c.end=void 0==b.max?h.length-1:b.max):(c.start=0,c.end=h.length-1),a>=c.start&&a<=c.end?!0:!1},l=function(){var c,d,e=b.getPlotOffset(),f=b.getXAxes()[b.getOptions().events.xaxis-1];a.each(h,function(a,g){d=e.top+b.height()-g.visual().height(),c=f.p2c(g.getOptions().min)+e.left-g.visual().width()/2,g.visual().moveTo({top:d,left:c})})},m=function(b,c,d){var e=a('
    ');d?e.html(d.description).place_tt(b,c,{offset:10}):e.remove()},n=function(c){a.each(c,function(a,c){var e=null!=b.getOptions().events.levels&&f&&f[c.eventType]?f[c.eventType].level:0;if(e>b.getOptions().events.levels)throw"A type's level has exceeded the maximum. Level="+e+", Max levels:"+b.getOptions().events.levels;h.push(new d(c,q(c),e))}),h.sort(e)},o=function(){var b,c=[],d={},e=0;a.each(h,function(a,e){b&&(e.getOptions().min==b.getOptions().min?(d.min||(d.min=a),d.max=a):d.min&&(c.push(d),d={})),b=e}),d.min&&c.push(d),a.each(c,function(b,c){var d=h.splice(c.min-e,c.max-c.min+1);a.each(d,function(a,b){b.visual().clear()}),e+=c.max-c.min+1})},p=function(){var a,c,d=b.getXAxes()[b.getOptions().events.xaxis-1],e=0,f=-1;pright=b.width()-b.getPlotOffset().right;if(d.min&&d.max){a=d.max-d.min;for(var g=1;g.007?(f=-1,e=g):(f=g,g==h.length-1)}},q=function(d){var e,h,i,j,k,l,n,o=b.getPlaceholder(),p=b.getPlotOffset(),q=b.getXAxes()[b.getOptions().events.xaxis-1],r=b.getAxes();return r.yaxis&&r.yaxis.used&&(e=r.yaxis),r.yaxis2&&r.yaxis2.used&&(e=r.yaxis2),null!=f&&f[d.eventType]&&f[d.eventType].icon?(k=f[d.eventType].icon,l=f[d.eventType].level):(k=g,l=0),j=a('').appendTo(o),h=p.top+b.height()-k.size+1,i=q.p2c(d.min)+p.left-k.size/2,j.css({left:i+"px",top:h,color:k.color,"text-shadow":"1px 1px "+k.outline+", -1px -1px "+k.outline+", -1px 1px "+k.outline+", 1px -1px "+k.outline,"font-size":k.size+"px"}),j.hide(),j.data({event:d}),j.hover(function(){var b=a(this).offset();m(b.left+a(this).width()/2,b.top,a(this).data("event"))},function(){a("#tooltip").remove(),b.clearSelection()}),n=new c(j,function(a){a.show()},function(a){a.remove()},function(a,b){a.css({top:b.top,left:b.left})},i,h,j.width(),j.height())},r=function(a){var c=b.getXAxes()[b.getOptions().events.xaxis-1],d=c.p2c(a);return d>0&&de*b&&f>.05?(g.push(d),d=[a[i]]):d.push(a[i])}return g.push(d),g}}function c(a,b,c,d,e,f,g,h){var i=a,j=b,k=c,l=d,m={left:e,top:f},n=g,o=h;this.width=function(){return n},this.height=function(){return o},this.position=function(){return m},this.draw=function(){j(i)},this.clear=function(){k(i)},this.getObject=function(){return i},this.moveTo=function(a){m=a,l(i,m)}}function d(a,b,c){var d,e=a,f=b,g=c,h=!1;this.visual=function(){return f},this.level=function(){return g},this.getOptions=function(){return e},this.getParent=function(){return d},this.isHidden=function(){return h},this.hide=function(){h=!0},this.unhide=function(){h=!1}}function e(a,b){var c=a.getOptions(),d=b.getOptions();return c.min>d.min?1:c.minb?a:b>c?c:b}function i(a,c){var d=b.getOptions(),e=b.getPlaceholder().offset(),f=b.getPlotOffset();a.x=h(0,c.pageX-e.left-f.left,b.width()),a.y=h(0,c.pageY-e.top-f.top,b.height()),"y"==d.selection.mode&&(a.x=a==o.first?0:b.width()),"x"==d.selection.mode&&(a.y=a==o.first?0:b.height())}function j(a){null!=a.pageX&&(i(o.second,a),n()?(o.show=!0,b.triggerRedrawOverlay()):k(!0))}function k(a){o.show&&(o.show=!1,b.triggerRedrawOverlay(),a||b.getPlaceholder().trigger("plotunselected",[]))}function l(a,c){var d,e,f,g,h=b.getAxes();for(var i in h)if(d=h[i],d.direction==c&&(g=c+d.n+"axis",a[g]||1!=d.n||(g=c+"axis"),a[g])){e=a[g].from,f=a[g].to;break}if(a[g]||(d="x"==c?b.getXAxes()[0]:b.getYAxes()[0],e=a[c+"1"],f=a[c+"2"]),null!=e&&null!=f&&e>f){var j=e;e=f,f=j}return{from:e,to:f,axis:d}}function m(a,c){var d,e=b.getOptions();"y"==e.selection.mode?(o.first.x=0,o.second.x=b.width()):(d=l(a,"x"),o.first.x=d.axis.p2c(d.from),o.second.x=d.axis.p2c(d.to)),"x"==e.selection.mode?(o.first.y=0,o.second.y=b.height()):(d=l(a,"y"),o.first.y=d.axis.p2c(d.from),o.second.y=d.axis.p2c(d.to)),o.show=!0,b.triggerRedrawOverlay(),!c&&n()&&g()}function n(){var a=b.getOptions().selection.minSize;return Math.abs(o.second.x-o.first.x)>=a&&Math.abs(o.second.y-o.first.y)>=a}var o={first:{x:-1,y:-1},second:{x:-1,y:-1},show:!1,active:!1},p={},q=null;b.clearSelection=k,b.setSelection=m,b.getSelection=f,b.hooks.bindEvents.push(function(a,b){var e=a.getOptions();null!=e.selection.mode&&(b.mousemove(c),b.mousedown(d))}),b.hooks.drawOverlay.push(function(b,c){if(o.show&&n()){var d=b.getPlotOffset(),e=b.getOptions();c.save(),c.translate(d.left,d.top);var f=a.color.parse(e.selection.color);c.strokeStyle=f.scale("a",.8).toString(),c.lineWidth=1,c.lineJoin=e.selection.shape,c.fillStyle=f.scale("a",.4).toString();var g=Math.min(o.first.x,o.second.x)+.5,h=Math.min(o.first.y,o.second.y)+.5,i=Math.abs(o.second.x-o.first.x)-1,j=Math.abs(o.second.y-o.first.y)-1;c.fillRect(g,h,i,j),c.strokeRect(g,h,i,j),c.restore()}}),b.hooks.shutdown.push(function(b,e){e.unbind("mousemove",c),e.unbind("mousedown",d),q&&a(document).unbind("mouseup",q)})}a.plot.plugins.push({init:b,options:{selection:{mode:null,color:"#e8cfac",shape:"round",minSize:5}},name:"selection",version:"1.1"})}(jQuery),define("jquery.flot.selection",function(){}),function(a){function b(a,b){return b*Math.floor(a/b)}function c(a,b,c,d){if("function"==typeof a.strftime)return a.strftime(b); -var e=function(a,b){return a=""+a,b=""+(null==b?"0":b),1==a.length?b+a:a},f=[],g=!1,h=a.getHours(),i=12>h;null==c&&(c=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),null==d&&(d=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]);var j;j=h>12?h-12:0==h?12:h;for(var k=0;k=g);++l);var m=i[l][0],n=i[l][1];if("year"==n){if(null!=f.minTickSize&&"year"==f.minTickSize[1])m=Math.floor(f.minTickSize[0]);else{var o=Math.pow(10,Math.floor(Math.log(a.delta/h.year)/Math.LN10)),p=a.delta/h.year/o;m=1.5>p?1:3>p?2:7.5>p?5:10,m*=o}1>m&&(m=1)}a.tickSize=f.tickSize||[m,n];var q=a.tickSize[0];n=a.tickSize[1];var r=q*h[n];"second"==n?d.setSeconds(b(d.getSeconds(),q)):"minute"==n?d.setMinutes(b(d.getMinutes(),q)):"hour"==n?d.setHours(b(d.getHours(),q)):"month"==n?d.setMonth(b(d.getMonth(),q)):"quarter"==n?d.setMonth(3*b(d.getMonth()/3,q)):"year"==n&&d.setFullYear(b(d.getFullYear(),q)),d.setMilliseconds(0),r>=h.minute&&d.setSeconds(0),r>=h.hour&&d.setMinutes(0),r>=h.day&&d.setHours(0),r>=4*h.day&&d.setDate(1),r>=2*h.month&&d.setMonth(b(d.getMonth(),3)),r>=2*h.quarter&&d.setMonth(b(d.getMonth(),6)),r>=h.year&&d.setMonth(0);var s,t=0,u=Number.NaN;do if(s=u,u=d.getTime(),c.push(u),"month"==n||"quarter"==n)if(1>q){d.setDate(1);var v=d.getTime();d.setMonth(d.getMonth()+("quarter"==n?3:1));var w=d.getTime();d.setTime(u+t*h.hour+(w-v)*q),t=d.getHours(),d.setHours(0)}else d.setMonth(d.getMonth()+q*("quarter"==n?3:1));else"year"==n?d.setFullYear(d.getFullYear()+q):d.setTime(u+r);while(u=1024;)h++,g/=1024;for(;1024>=f&&!(f>=g);)f*=2;a.tickSize="undefined"!=typeof d.minTickSize&&f=1024;)d++,a/=1024;switch(d){case 0:c=" B";break;case 1:c=" KB";break;case 2:c=" MB";break;case 3:c=" GB";break;case 4:c=" TB";break;case 5:c=" PB";break;case 6:c=" EB";break;case 7:c=" ZB";break;case 8:c=" YB"}return"undefined"!=typeof b.rate&&(c+="/s"),a.toFixed(b.tickDecimals)+c})})})}var d={};a.plot.plugins.push({init:c,options:d,name:"byte",version:"0.1"})}(jQuery),define("jquery.flot.byte",function(){}),function(a){function b(a){function b(a,b){for(var c=null,d=0;d2&&(t?d.format[2].x:d.format[2].y),v=s&&c.lines.steps,w=!0,x=t?1:0,y=t?0:1,z=0,A=0;;){if(z>=o.length)break;if(l=r.length,null==o[z]){for(m=0;n>m;++m)r.push(o[z+m]);z+=n}else if(A>=q.length){if(!s)for(m=0;n>m;++m)r.push(o[z+m]);z+=n}else if(null==q[A]){for(m=0;n>m;++m)r.push(null);w=!0,A+=p}else{if(f=o[z+x],g=o[z+y],i=q[A+x],j=q[A+y],k=0,f==i){for(m=0;n>m;++m)r.push(o[z+m]);r[l+y]+=j,k=j,z+=n,A+=p}else if(f>i){if(s&&z>0&&null!=o[z-n]){for(h=g+(o[z-n+y]-g)*(i-f)/(o[z-n+x]-f),r.push(i),r.push(h+j),m=2;n>m;++m)r.push(o[z+m]);k=j}A+=p}else{if(w&&s){z+=n;continue}for(m=0;n>m;++m)r.push(o[z+m]);s&&A>0&&null!=q[A-p]&&(k=j+(q[A-p+y]-j)*(f-i)/(q[A-p+x]-i)),r[l+y]+=k,z+=n}w=!1,l!=r.length&&u&&(r[l+2]+=k)}if(v&&l!=r.length&&l>0&&null!=r[l]&&r[l]!=r[l-n]&&r[l+1]!=r[l-n+1]){for(m=0;n>m;++m)r[l+n+m]=r[l+m];r[l+1]=r[l-n+1]}}d.points=r}}}a.hooks.processDatapoints.push(c)}var c={series:{stack:null}};a.plot.plugins.push({init:b,options:c,name:"stack",version:"1.2"})}(jQuery),define("jquery.flot.stack",function(){}),function(a){function b(a){function b(a,b,d){if(f||(f=!0,g=c(a.getData())),1==b.stackpercent){var e=d.length;b.percents=[];var h=0,i=1;b.bars&&b.bars.horizontal&&b.bars.horizontal===!0&&(h=1,i=0);for(var j=0;e>j;j++){var k=g[d[j][h]+""];b.percents.push(k>0?100*d[j][i]/k:0)}}}function c(a){var b=a.length,c={};if(b>0)for(var d=0;b>d;d++)if(a[d].stackpercent){var e=0,f=1;a[d].bars&&a[d].bars.horizontal&&a[d].bars.horizontal===!0&&(e=1,f=0);for(var g=a[d].data.length,h=0;g>h;h++){var i=0;null!=a[d].data[h][1]&&(i=a[d].data[h][f]),c[a[d].data[h][e]+""]?c[a[d].data[h][e]+""]+=i:c[a[d].data[h][e]+""]=i}}return c}function d(a,b,d){if(b.stackpercent){f||(g=c(a.getData()));var h=[],i=0,j=1;b.bars&&b.bars.horizontal&&b.bars.horizontal===!0&&(i=1,j=0);for(var k=0;k0?(h[k+j]=100*h[k+j]/g[h[k+i]+""],h[k+2]=100*h[k+2]/g[h[k+i]+""]):(h[k+j]=0,h[k+2]=0);d.points=h}}var e={},f=!1,g={};a.hooks.processRawData.push(b),a.hooks.processDatapoints.push(d)}var c={series:{stackpercent:null}};a.plot.plugins.push({init:b,options:c,name:"stackpercent",version:"0.1"})}(jQuery),define("jquery.flot.stackpercent",function(){}),define("panels/graph/module",["angular","app","jquery","underscore","kbn","moment","./timeSeries","services/annotationsSrv","services/datasourceSrv","jquery.flot","jquery.flot.events","jquery.flot.selection","jquery.flot.time","jquery.flot.byte","jquery.flot.stack","jquery.flot.stackpercent"],function(a,b,c,d,e,f,g){var h=a.module("kibana.panels.graph",[]);b.useModule(h),h.controller("graph",["$scope","$rootScope","datasourceSrv","$timeout","annotationsSrv",function(a,b,h,i,j){a.panelMeta={modals:[],editorTabs:[],fullEditorTabs:[{title:"General",src:"app/partials/panelgeneral.html"},{title:"Metrics",src:"app/partials/metrics.html"},{title:"Axes & Grid",src:"app/panels/graph/axisEditor.html"},{title:"Display Styles",src:"app/panels/graph/styleEditor.html"}],fullscreenEdit:!0,fullscreenView:!0,description:"Graphing"};var k={datasource:null,renderer:"flot","x-axis":!0,"y-axis":!0,scale:1,y_formats:["short","short"],grid:{leftMax:null,rightMax:null,leftMin:null,rightMin:null,threshold1:null,threshold2:null,threshold1Color:"rgba(216, 200, 27, 0.27)",threshold2Color:"rgba(234, 112, 112, 0.22)"},annotate:{enable:!1},resolution:100,lines:!0,fill:0,linewidth:1,points:!1,pointradius:5,bars:!1,stack:!1,legend:{show:!0,values:!1,min:!1,max:!1,current:!1,total:!1,avg:!1},percentage:!1,zerofill:!0,nullPointMode:"connected",steppedLine:!1,tooltip:{value_type:"cumulative",query_as_alias:!0},targets:[],aliasColors:{},aliasYAxis:{}};d.defaults(a.panel,k),d.defaults(a.panel.tooltip,k.tooltip),d.defaults(a.panel.annotate,k.annotate),d.defaults(a.panel.grid,k.grid),d.isBoolean(a.panel.legend)&&(a.panel.legend={show:a.panel.legend},d.defaults(a.panel.legend,k.legend)),a.panel.grid.min&&(a.panel.grid.leftMin=a.panel.grid.min,delete a.panel.grid.min),a.panel.grid.max&&(a.panel.grid.leftMax=a.panel.grid.max,delete a.panel.grid.max),a.panel.y_format&&(a.panel.y_formats[0]=a.panel.y_format,delete a.panel.y_format),a.panel.y2_format&&(a.panel.y_formats[1]=a.panel.y2_format,delete a.panel.y2_format),a.init=function(){a.initBaseController(this,a),a.fullscreen=!1,a.editor={index:1},a.editorTabs=d.pluck(a.panelMeta.fullEditorTabs,"title"),a.hiddenSeries={},a.datasources=h.listOptions(),a.setDatasource(a.panel.datasource),0===a.panel.targets.length&&a.panel.targets.push({})},a.setDatasource=function(b){return a.panel.datasource=b,a.datasource=h.get(b),a.datasource?void a.get_data():void(a.panel.error="Cannot find datasource "+b)},a.removeTarget=function(b){a.panel.targets=d.without(a.panel.targets,b),a.get_data()},a.updateTimeRange=function(){a.range=this.filter.timeRange(),a.rangeUnparsed=this.filter.timeRange(!1),a.resolution=Math.ceil(c(window).width()*(a.panel.span/12)),a.interval="10m",a.range&&(a.interval=e.secondsToHms(e.calculate_interval(a.range.from,a.range.to,a.resolution,0)/1e3))},a.get_data=function(){delete a.panel.error,a.panelMeta.loading=!0,a.updateTimeRange();var b={range:a.rangeUnparsed,interval:a.interval,targets:a.panel.targets,format:"png"===a.panel.renderer?"png":"json",maxDataPoints:a.resolution,datasource:a.panel.datasource};return a.annotationsPromise=j.getAnnotations(a.filter,a.rangeUnparsed),a.datasource.query(a.filter,b).then(a.dataHandler).then(null,function(b){a.panelMeta.loading=!1,a.panel.error=b.message||"Timeseries data request error",a.inspector.error=b,a.render([])})},a.dataHandler=function(b){if(a.panelMeta.loading=!1,a.legend=[],d.isString(b))return void a.render(b);a.datapointsWarning=!1,a.datapointsCount=0,a.datapointsOutside=!1;var c=d.map(b.data,a.seriesHandler);a.datapointsWarning=a.datapointsCount||!a.datapointsOutside,a.annotationsPromise.then(function(b){c.annotations=b,a.render(c)},function(){a.render(c)})},a.seriesHandler=function(b,c){var d=b.datapoints,e=b.target,h=a.panel.aliasColors[e]||a.colors[c],i=a.panel.aliasYAxis[e]||1,j={alias:e,color:h,enable:!0,yaxis:i};a.legend.push(j);var k=new g.ZeroFilled({datapoints:d,info:j});if(d&&d.length>0){var l=f.utc(1e3*d[d.length-1][1]),m=f.utc(a.range.from);-1e4>l-m&&(a.datapointsOutside=!0),a.datapointsCount+=d.length}return k},a.add_target=function(){a.panel.targets.push({target:""})},a.otherPanelInFullscreenMode=function(){return b.fullscreen&&!a.fullscreen},a.render=function(b){a.$emit("render",b)},a.changeSeriesColor=function(b,c){b.color=c,a.panel.aliasColors[b.alias]=b.color,a.render()},a.toggleSeries=function(b,c){a.hiddenSeries[b.alias]?delete a.hiddenSeries[b.alias]:a.hiddenSeries[b.alias]=!0,(c.ctrlKey||c.metaKey||c.shiftKey)&&a.toggleSeriesExclusiveMode(b),a.$emit("toggleLegend",a.legend)},a.toggleSeriesExclusiveMode=function(b){var c=a.hiddenSeries;c[b.alias]&&delete c[b.alias];var e=d.every(a.legend,function(a){return a.alias===b.alias?!0:c[a.alias]});e?d.each(a.legend,function(b){delete a.hiddenSeries[b.alias]}):d.each(a.legend,function(c){c.alias!==b.alias&&(a.hiddenSeries[c.alias]=!0)})},a.toggleYAxis=function(b){b.yaxis=2===b.yaxis?1:2,a.panel.aliasYAxis[b.alias]=b.yaxis,a.render()},a.toggleGridMinMax=function(b){a.panel.grid[b]=d.toggle(a.panel.grid[b],null,0),a.render()}}])}),define("text!panels/graph/module.html",[],function(){return'
    No datapointsCan be caused by timezone mismatch between browser and graphite server Datapoints outside time rangeCan be caused by timezone mismatch between browser and graphite server
    '});var Showdown={extensions:{}},forEach=Showdown.forEach=function(a,b){if("function"==typeof a.forEach)a.forEach(b);else{var c,d=a.length;for(c=0;d>c;c++)b(a[c],c,a)}},stdExtName=function(a){return a.replace(/[_-]||\s/g,"").toLowerCase()};Showdown.converter=function(a){var b,c,d,e=0,f=[],g=[];if("undefind"!=typeof module&&"undefined"!=typeof exports&&"undefind"!=typeof require){var h=require("fs");if(h){var i=h.readdirSync((__dirname||".")+"/extensions").filter(function(a){return~a.indexOf(".js")}).map(function(a){return a.replace(/\.js$/,"")});Showdown.forEach(i,function(a){var b=stdExtName(a);Showdown.extensions[b]=require("./extensions/"+a)})}}if(this.makeHtml=function(a){return b={},c={},d=[],a=a.replace(/~/g,"~T"),a=a.replace(/\$/g,"~D"),a=a.replace(/\r\n/g,"\n"),a=a.replace(/\r/g,"\n"),a="\n\n"+a+"\n\n",a=M(a),a=a.replace(/^[ \t]+$/gm,""),Showdown.forEach(f,function(b){a=l(b,a)}),a=z(a),a=n(a),a=m(a),a=p(a),a=K(a),a=a.replace(/~D/g,"$$"),a=a.replace(/~T/g,"~"),Showdown.forEach(g,function(b){a=l(b,a)}),a},a&&a.extensions){var j=this;Showdown.forEach(a.extensions,function(a){if("string"==typeof a&&(a=Showdown.extensions[stdExtName(a)]),"function"!=typeof a)throw"Extension '"+a+"' could not be loaded. It was either not found or is not a valid extension.";Showdown.forEach(a(j),function(a){a.type?"language"===a.type||"lang"===a.type?f.push(a):("output"===a.type||"html"===a.type)&&g.push(a):g.push(a)})})}var k,l=function(a,b){if(a.regex){var c=new RegExp(a.regex,"g");return b.replace(c,a.replace)}return a.filter?a.filter(b):void 0},m=function(a){return a+="~0",a=a.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*?[ \t]*\n?[ \t]*(?:(\n*)["(](.+?)[")][ \t]*)?(?:\n+|(?=~0))/gm,function(a,d,e,f,g){return d=d.toLowerCase(),b[d]=G(e),f?f+g:(g&&(c[d]=g.replace(/"/g,""")),"")}),a=a.replace(/~0/,"")},n=function(a){a=a.replace(/\n/g,"\n\n");return a=a.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\b[^\r]*?\n<\/\2>[ \t]*(?=\n+))/gm,o),a=a.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|style|section|header|footer|nav|article|aside)\b[^\r]*?<\/\2>[ \t]*(?=\n+)\n)/gm,o),a=a.replace(/(\n[ ]{0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,o),a=a.replace(/(\n\n[ ]{0,3}[ \t]*(?=\n{2,}))/g,o),a=a.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,o),a=a.replace(/\n\n/g,"\n")},o=function(a,b){var c=b;return c=c.replace(/\n\n/g,"\n"),c=c.replace(/^\n/,""),c=c.replace(/\n+$/g,""),c="\n\n~K"+(d.push(c)-1)+"K\n\n"},p=function(a){a=w(a);var b=A("
    ");return a=a.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,b),a=a.replace(/^[ ]{0,2}([ ]?\-[ ]?){3,}[ \t]*$/gm,b),a=a.replace(/^[ ]{0,2}([ ]?\_[ ]?){3,}[ \t]*$/gm,b),a=x(a),a=y(a),a=E(a),a=n(a),a=F(a)},q=function(a){return a=B(a),a=r(a),a=H(a),a=u(a),a=s(a),a=I(a),a=G(a),a=D(a),a=a.replace(/ +\n/g,"
    \n")},r=function(a){var b=/(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|)/gi;return a=a.replace(b,function(a){var b=a.replace(/(.)<\/?code>(?=.)/g,"$1`");return b=N(b,"\\`*_")})},s=function(a){return a=a.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,t),a=a.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,t),a=a.replace(/(\[([^\[\]]+)\])()()()()()/g,t)},t=function(a,d,e,f,g,h,i,j){void 0==j&&(j="");var k=d,l=e,m=f.toLowerCase(),n=g,o=j;if(""==n)if(""==m&&(m=l.toLowerCase().replace(/ ?\n/g," ")),n="#"+m,void 0!=b[m])n=b[m],void 0!=c[m]&&(o=c[m]);else{if(!(k.search(/\(\s*\)$/m)>-1))return k;n=""}n=N(n,"*_");var p='"},u=function(a){return a=a.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,v),a=a.replace(/(!\[(.*?)\]\s?\([ \t]*()?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,v)},v=function(a,d,e,f,g,h,i,j){var k=d,l=e,m=f.toLowerCase(),n=g,o=j;if(o||(o=""),""==n){if(""==m&&(m=l.toLowerCase().replace(/ ?\n/g," ")),n="#"+m,void 0==b[m])return k;n=b[m],void 0!=c[m]&&(o=c[m])}l=l.replace(/"/g,"""),n=N(n,"*_");var p=''+l+''+q(c)+"")}),a=a.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm,function(a,c){return A('

    '+q(c)+"

    ")}),a=a.replace(/^(\#{1,6})[ \t]*(.+?)[ \t]*\#*\n+/gm,function(a,c,d){var e=c.length;return A("'+q(d)+"")})},x=function(a){a+="~0";var b=/^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm;return e?a=a.replace(b,function(a,b,c){var d=b,e=c.search(/[*+-]/g)>-1?"ul":"ol";d=d.replace(/\n{2,}/g,"\n\n\n");var f=k(d);return f=f.replace(/\s+$/,""),f="<"+e+">"+f+"\n"}):(b=/(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/g,a=a.replace(b,function(a,b,c,d){var e=b,f=c,g=d.search(/[*+-]/g)>-1?"ul":"ol",f=f.replace(/\n{2,}/g,"\n\n\n"),h=k(f);return h=e+"<"+g+">\n"+h+"\n"})),a=a.replace(/~0/,"")};k=function(a){return e++,a=a.replace(/\n{2,}$/,"\n"),a+="~0",a=a.replace(/(\n)?(^[ \t]*)([*+-]|\d+[.])[ \t]+([^\r]+?(\n{1,2}))(?=\n*(~0|\2([*+-]|\d+[.])[ \t]+))/gm,function(a,b,c,d,e){var f=e,g=b;return g||f.search(/\n{2,}/)>-1?f=p(L(f)):(f=x(L(f)),f=f.replace(/\n$/,""),f=q(f)),"
  • "+f+"
  • \n"}),a=a.replace(/~0/g,""),e--,a};var y=function(a){return a+="~0",a=a.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,function(a,b,c){var d=b,e=c;return d=C(L(d)),d=M(d),d=d.replace(/^\n+/g,""),d=d.replace(/\n+$/g,""),d="
    "+d+"\n
    ",A(d)+e}),a=a.replace(/~0/,"")},z=function(a){return a+="~0",a=a.replace(/(?:^|\n)```(.*)\n([\s\S]*?)\n```/g,function(a,b,c){var d=b,e=c;return e=C(e),e=M(e),e=e.replace(/^\n+/g,""),e=e.replace(/\n+$/g,""),e="
    "+e+"\n
    ",A(e)}),a=a.replace(/~0/,"")},A=function(a){return a=a.replace(/(^\n+|\n+$)/g,""),"\n\n~K"+(d.push(a)-1)+"K\n\n"},B=function(a){return a=a.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(a,b,c,d){var e=d;return e=e.replace(/^([ \t]*)/g,""),e=e.replace(/[ \t]*$/g,""),e=C(e),b+""+e+""})},C=function(a){return a=a.replace(/&/g,"&"),a=a.replace(//g,">"),a=N(a,"*_{}[]\\",!1)},D=function(a){return a=a.replace(/(\*\*|__)(?=\S)([^\r]*?\S[*_]*)\1/g,"$2"),a=a.replace(/(\*|_)(?=\S)([^\r]*?\S)\1/g,"$2")},E=function(a){return a=a.replace(/((^[ \t]*>[ \t]?.+\n(.+\n)*\n*)+)/gm,function(a,b){var c=b;return c=c.replace(/^[ \t]*>[ \t]?/gm,"~0"),c=c.replace(/~0/g,""),c=c.replace(/^[ \t]+$/gm,""),c=p(c),c=c.replace(/(^|\n)/g,"$1 "),c=c.replace(/(\s*
    [^\r]+?<\/pre>)/gm,function(a,b){var c=b;return c=c.replace(/^  /gm,"~0"),c=c.replace(/~0/g,"")}),A("
    \n"+c+"\n
    ")})},F=function(a){a=a.replace(/^\n+/g,""),a=a.replace(/\n+$/g,"");for(var b=a.split(/\n{2,}/g),c=[],e=b.length,f=0;e>f;f++){var g=b[f];g.search(/~K(\d+)K/g)>=0?c.push(g):g.search(/\S/)>=0&&(g=q(g),g=g.replace(/^([ \t]*)/g,"

    "),g+="

    ",c.push(g))}e=c.length;for(var f=0;e>f;f++)for(;c[f].search(/~K(\d+)K/)>=0;){var h=d[RegExp.$1];h=h.replace(/\$/g,"$$$$"),c[f]=c[f].replace(/~K\d+K/,h)}return c.join("\n\n")},G=function(a){return a=a.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&"),a=a.replace(/<(?![a-z\/?\$!])/gi,"<")},H=function(a){return a=a.replace(/\\(\\)/g,O),a=a.replace(/\\([`*_{}\[\]()>#+-.!])/g,O)},I=function(a){return a=a.replace(/<((https?|ftp|dict):[^'">\s]+)>/gi,'
    $1'),a=a.replace(/<(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,function(a,b){return J(K(b))})},J=function(a){var b=[function(a){return"&#"+a.charCodeAt(0)+";"},function(a){return"&#x"+a.charCodeAt(0).toString(16)+";"},function(a){return a}];return a="mailto:"+a,a=a.replace(/./g,function(a){if("@"==a)a=b[Math.floor(2*Math.random())](a);else if(":"!=a){var c=Math.random();a=c>.9?b[2](a):c>.45?b[1](a):b[0](a)}return a}),a=''+a+"",a=a.replace(/">.+:/g,'">')},K=function(a){return a=a.replace(/~E(\d+)E/g,function(a,b){var c=parseInt(b);return String.fromCharCode(c)})},L=function(a){return a=a.replace(/^(\t|[ ]{1,4})/gm,"~0"),a=a.replace(/~0/g,"")},M=function(a){return a=a.replace(/\t(?=\t)/g," "),a=a.replace(/\t/g,"~A~B"),a=a.replace(/~B(.+?)~A/g,function(a,b){for(var c=b,d=4-c.length%4,e=0;d>e;e++)c+=" ";return c}),a=a.replace(/~A/g," "),a=a.replace(/~B/g,"")},N=function(a,b,c){var d="(["+b.replace(/([\[\]\\])/g,"\\$1")+"])";c&&(d="\\\\"+d);var e=new RegExp(d,"g");return a=a.replace(e,O)},O=function(a,b){var c=b.charCodeAt(0);return"~E"+c+"E"}},"undefined"!=typeof module&&(module.exports=Showdown),"function"==typeof define&&define.amd&&define("panels/text/lib/showdown",[],function(){return Showdown}),define("panels/text/module",["angular","app","underscore","require"],function(a,b,c,d){var e=a.module("kibana.panels.text",[]);b.useModule(e),e.controller("text",["$scope",function(a){a.panelMeta={description:"A static text panel that can use plain text, markdown, or (sanitized) HTML"};var b={mode:"markdown",content:"",style:{}};c.defaults(a.panel,b),a.init=function(){a.initBaseController(this,a),a.ready=!1},a.render=function(){a.$emit("render")},a.openEditor=function(){console.log("scope id",a.$id)}}]),e.directive("markdown",function(){return{restrict:"E",link:function(a,b){function c(){d(["./lib/showdown"],function(c){a.ready=!0;var d=new c.converter,e=a.panel.content.replace(/&/g,"&").replace(/>/g,">").replace(/")}}),e.filter("striphtml",function(){return function(a){return a.replace(/&/g,"&").replace(/>/g,">").replace(/{{panel.content}}

    '}),define("panels/timepicker/module",["angular","app","underscore","moment","kbn"],function(a,b,c,d,e){var f=a.module("kibana.panels.timepicker",[]);b.useModule(f),f.controller("timepicker",["$scope","$modal","$q",function(a,b,f){a.panelMeta={status:"Stable",description:"A panel for controlling the time range filters. If you have time based data, or if you're using time stamped indices, you need one of these"};var g={status:"Stable",time_options:["5m","15m","1h","6h","12h","24h","2d","7d","30d"],refresh_intervals:["5s","10s","30s","1m","5m","15m","30m","1h","2h","1d"]},h=null;c.defaults(a.panel,g),a.patterns={date:/^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/,hour:/^([01]?[0-9]|2[0-3])$/,minute:/^[0-5][0-9]$/,second:/^[0-5][0-9]$/,millisecond:/^[0-9]*$/},a.$on("refresh",function(){a.init()}),a.init=function(){var b=this.filter.timeRange(!0);b&&(a.panel.now="now"===this.filter.timeRange(!1).to?!0:!1,a.time=k(b.from,b.to))},a.customTime=function(){h||(h=b({template:"./app/panels/timepicker/custom.html",persist:!0,show:!1,scope:a,keyboard:!1})),a.input.$setValidity("dummy",!0),a.temptime=j(a.time),a.temptime.from.date.setHours(1,0,0,0),a.temptime.to.date.setHours(1,0,0,0),f.when(h).then(function(a){a.modal("show")})},a.validate=function(b){a.input.$setValidity("dummy",!0);var c=m(b.from.date),d=m(b.to.date),e=b;return a.input.$valid?(c.setHours(e.from.hour,e.from.minute,e.from.second,e.from.millisecond),d.setHours(e.to.hour,e.to.minute,e.to.second,e.to.millisecond),isNaN(c.getTime())||isNaN(d.getTime())||c.getTime()>=d.getTime()?(a.input.$setValidity("dummy",!1),!1):{from:c,to:d}):!1},a.setNow=function(){a.time.to=l(new Date)},a.setAbsoluteTimeFilter=function(b){var d=c.clone(b);a.panel.now&&(d.to="now"),a.panel.filter_id=a.filter.setTime(d),a.time=k(b.from,b.to)},a.setRelativeFilter=function(b){a.panel.now=!0;var c={from:"now-"+b,to:"now"};this.filter.setTime(c),a.time=k(e.parseDate(c.from),new Date)};var i=function(a,b,c){return c=c||"0",a=a.toString(),a.length>=b?a:new Array(b-a.length+1).join(c)+a},j=function(a){var b={from:c.clone(a.from),to:c.clone(a.to)};return b.from.date=new Date(b.from.date),b.to.date=new Date(b.to.date),b},k=function(a,b){return{from:l(a),to:l(b)}},l=function(a){return{date:new Date(a),hour:i(a.getHours(),2),minute:i(a.getMinutes(),2),second:i(a.getSeconds(),2),millisecond:i(a.getMilliseconds(),3)}},m=function(a){return a=d(a).clone().toDate(),d(new Date(a.getTime()+6e4*a.getTimezoneOffset())).toDate()}}])}),define("text!panels/timepicker/module.html",[],function(){return''}); diff --git a/app/dash/app/components/require.config.js b/app/dash/app/components/require.config.js deleted file mode 100644 index d421a23..0000000 --- a/app/dash/app/components/require.config.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -require.config({baseUrl:"app",paths:{config:["../config","../config.sample"],settings:"components/settings",kbn:"components/kbn",css:"../vendor/require/css",text:"../vendor/require/text",moment:"../vendor/moment",filesaver:"../vendor/filesaver",angular:"../vendor/angular/angular","angular-dragdrop":"../vendor/angular/angular-dragdrop","angular-strap":"../vendor/angular/angular-strap","angular-sanitize":"../vendor/angular/angular-sanitize",timepicker:"../vendor/angular/timepicker",datepicker:"../vendor/angular/datepicker",bindonce:"../vendor/angular/bindonce",crypto:"../vendor/crypto.min",spectrum:"../vendor/spectrum",underscore:"components/underscore.extended","underscore-src":"../vendor/underscore",bootstrap:"../vendor/bootstrap/bootstrap",jquery:"../vendor/jquery/jquery-1.8.0","jquery-ui":"../vendor/jquery/jquery-ui-1.10.3","extend-jquery":"components/extend-jquery","jquery.flot":"../vendor/jquery/jquery.flot","jquery.flot.pie":"../vendor/jquery/jquery.flot.pie","jquery.flot.events":"../vendor/jquery/jquery.flot.events","jquery.flot.selection":"../vendor/jquery/jquery.flot.selection","jquery.flot.stack":"../vendor/jquery/jquery.flot.stack","jquery.flot.stackpercent":"../vendor/jquery/jquery.flot.stackpercent","jquery.flot.time":"../vendor/jquery/jquery.flot.time","jquery.flot.byte":"../vendor/jquery/jquery.flot.byte",modernizr:"../vendor/modernizr-2.6.1",elasticjs:"../vendor/elasticjs/elastic-angular-client","bootstrap-tagsinput":"../vendor/tagsinput/bootstrap-tagsinput"},shim:{underscore:{exports:"_"},spectrum:{deps:["jquery"]},crypto:{exports:"Crypto"},angular:{deps:["jquery","config"],exports:"angular"},bootstrap:{deps:["jquery"]},modernizr:{exports:"Modernizr"},jquery:{exports:"jQuery"},"jquery-ui":["jquery"],"jquery.flot":["jquery"],"jquery.flot.byte":["jquery","jquery.flot"],"jquery.flot.pie":["jquery","jquery.flot"],"jquery.flot.events":["jquery","jquery.flot"],"jquery.flot.selection":["jquery","jquery.flot"],"jquery.flot.stack":["jquery","jquery.flot"],"jquery.flot.stackpercent":["jquery","jquery.flot"],"jquery.flot.time":["jquery","jquery.flot"],"angular-sanitize":["angular"],"angular-cookies":["angular"],"angular-dragdrop":["jquery","jquery-ui","angular"],"angular-loader":["angular"],"angular-mocks":["angular"],"angular-resource":["angular"],"angular-route":["angular"],"angular-touch":["angular"],bindonce:["angular"],"angular-strap":["angular","bootstrap","timepicker","datepicker"],timepicker:["jquery","bootstrap"],datepicker:["jquery","bootstrap"],elasticjs:["angular","../vendor/elasticjs/elastic"],"bootstrap-tagsinput":["jquery"]},waitSeconds:60}); \ No newline at end of file diff --git a/app/dash/app/dashboards/Compute b/app/dash/app/dashboards/Compute deleted file mode 100644 index 1645c47..0000000 --- a/app/dash/app/dashboards/Compute +++ /dev/null @@ -1,817 +0,0 @@ -{ - "title": "Compute", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    OpenStack Nova Compute

    This dashboard provides information on the compute nodes and their OpenStack related processes.



    ", - "style": {}, - "title": "Compute" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-compute.ps_cputime.user", - "hide": false - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_cputime.user" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Processes User" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-compute.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_cputime.syst" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Processes System" - } - ], - "notice": false - }, - { - "title": "Disk Ops", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-compute.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_ops.read" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Read Ops" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-compute.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_ops.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Write Ops" - } - ], - "notice": false - }, - { - "title": "Disk Ops", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-compute.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_octets.read" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Read Octets" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-compute.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_octets.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Write Octets" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} \ No newline at end of file diff --git a/app/dash/app/dashboards/Controller b/app/dash/app/dashboards/Controller deleted file mode 100644 index ac53670..0000000 --- a/app/dash/app/dashboards/Controller +++ /dev/null @@ -1,1173 +0,0 @@ -{ - "title": "Controller", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    OpenStack Controller

    This dashboard provides process information specifically configured for the OpenStack Controller node.



    ", - "style": {}, - "title": "Controller" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 4, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-novncproxy.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_cputime.user" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Process User Time", - "leftYAxisLabel": "" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 4, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-novncproxy.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_cputime.syst" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Process System Time", - "leftYAxisLabel": "" - } - ], - "notice": false - }, - { - "title": "Row1", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 4, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-novncproxy.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_disk_ops.read" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Read Ops", - "leftYAxisLabel": "" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 4, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-novncproxy.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_disk_ops.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Write Ops", - "leftYAxisLabel": "" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 4, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-novncproxy.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_disk_octets.read" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Read Octets", - "leftYAxisLabel": "" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 4, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-novncproxy.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_disk_octets.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Write Octets", - "leftYAxisLabel": "" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false, - "annotations": [] - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": true, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} diff --git a/app/dash/app/dashboards/Database b/app/dash/app/dashboards/Database deleted file mode 100644 index 5150996..0000000 --- a/app/dash/app/dashboards/Database +++ /dev/null @@ -1,492 +0,0 @@ -{ - "title": "Database", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "450px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    Cluster Databases

    This dashboard is to show information that helps discern the state of supporting databases primarily MySQL or Postgres. This may additionally include information on Redis, Cassandra, Mongo and/or ElasticSearch.



    ", - "style": {}, - "title": "OS Database" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_cputime.syst" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "MySQL Process" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "minute", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_cputime.user", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "minute", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_cputime.syst", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "minute", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_code.value", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "minute", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_data.value", - "currentHorizontalAggregatorName": "rate" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "MySQL Process" - } - ], - "notice": false - }, - { - "title": "Row1", - "height": "450px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "kairosdb.datastore.cassandra.key_query_time", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "kairosdb.http.query_time", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "kairosdb.http.request_time", - "currentHorizontalAggregatorName": "rate" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "KairosDB Process" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "kairosdb.metric_counters", - "currentHorizontalAggregatorName": "rate" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Unique Metrics Collected" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} \ No newline at end of file diff --git a/app/dash/app/dashboards/Image b/app/dash/app/dashboards/Image deleted file mode 100644 index 5b8f813..0000000 --- a/app/dash/app/dashboards/Image +++ /dev/null @@ -1,511 +0,0 @@ -{ - "title": "Image", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "350px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    OpenStack Glance Image Service

    This dashboard provides information on the Glance image nodes and their OpenStack related processes.



    ", - "style": {}, - "title": "Image" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_cputime.syst" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Glance Processes" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-api.ps_disk_octets.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Glance Disk Octets" - } - ], - "notice": false - }, - { - "title": "Row1", - "height": "350px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_cputime.syst" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Glance Registry Process" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_vm.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Glance Registry VM" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.glance-registry.ps_stacksize.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Glance Registry Stack" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} \ No newline at end of file diff --git a/app/dash/app/dashboards/Message Bus b/app/dash/app/dashboards/Message Bus deleted file mode 100644 index 4c37e15..0000000 --- a/app/dash/app/dashboards/Message Bus +++ /dev/null @@ -1,541 +0,0 @@ -{ - "title": "Message Bus", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Summary", - "height": "350px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    Message Bus

    This dashboard provides information on RabbitMQ/AMPQ their OpenStack related processes.



    ", - "style": {}, - "title": "Message Bus" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.ctl_consumers.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Consumers Value" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.ctl_consumers_cert.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Cert Value" - } - ], - "notice": false - }, - { - "title": "New row", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "bytes", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 4, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.rabbitmq-server.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.rabbitmq-server.ps_cputime.user", - "hide": false - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.rabbitmq-server.ps_stacksize.value" - } - ], - "aliasColors": { - "rabbitmq_info.gauge.pmap_used.value ( ) ": "#447EBC", - "rabbitmq_info.gauge.pmap_mapped.value ( ) ": "#65C5DB" - }, - "aliasYAxis": {}, - "title": "Process Info" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.mysqld.ps_cputime.user" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "MySQL" - } - ], - "notice": false - }, - { - "title": "New row", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.ctl_consumers_compute.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.ctl_consumers_conductor.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Bus Consumers" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} \ No newline at end of file diff --git a/app/dash/app/dashboards/Metrics Dashboard b/app/dash/app/dashboards/Metrics Dashboard deleted file mode 100644 index 15fc6ae..0000000 --- a/app/dash/app/dashboards/Metrics Dashboard +++ /dev/null @@ -1,953 +0,0 @@ -{ - "title": "Metrics Dasboard", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Loads", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "loadingEditor": false, - "mode": "html", - "content": "

    Cluster Summary

    Provides a variety of general metrics to get a quick idea of what is going on with the system.



    ", - "style": {}, - "title": "Cluster Summary" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "none", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)", - "thresholdLine": true - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 5, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": true, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "individual", - "query_as_alias": true - }, - "targets": [ - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "cpu.0.cpu.idle.value", - "hide": false, - "currentTagKey": "", - "currentGroupByType": "tag", - "sampling": "", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "cpu.0.cpu.nice.value", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "cpu.0.cpu.wait.value", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "cpu.0.cpu.softirq.value", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "cpu.0.cpu.interrupt.value", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "cpu.0.cpu.system.value", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "cpu.0.cpu.user.value", - "currentHorizontalAggregatorName": "rate" - } - ], - "aliasColors": { - "cpu.0.cpu.idle.value ( ) ": "#052B51", - "cpu.0.cpu.steal.value ( ) ": "#CFFAFF", - "cpu.0.cpu.user.value ( ) ": "#64B0C8", - "cpu.0.cpu.interrupt.value ( ) ": "#0A50A1" - }, - "aliasYAxis": {}, - "title": "cpu" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 1, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_count.processes" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Process" - } - ], - "notice": false - }, - { - "title": "Compass Monitoring", - "height": "450px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 5, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "individual", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "load.load.longterm" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "load.load.midterm" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "load.load.shortterm" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Loads" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.ctl_consumers.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.pmap_used.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.pmap_mapped.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "rabbitmq_info.gauge.ctl_consumers_cert.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Message Bus" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "bytes", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 5, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "target": "", - "downsampling": "sum", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "memory.memory.used.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "memory.memory.free.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "memory.memory.buffered.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "memory.memory.cached.value" - } - ], - "aliasColors": { - "memory.memory.used.value ( ) ": "#E5A8E2", - "memory.memory.buffered.value ( ) ": "#6D1F62", - "memory.memory.free.value ( ) ": "#D683CE", - "memory.memory.cached.value ( ) ": "#6D1F62" - }, - "aliasYAxis": {}, - "title": "Memory" - } - ], - "notice": false - }, - { - "title": "Networking", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "individual", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "interface.eth0.if_packets.rx", - "currentHorizontalAggregatorName": "rate" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "interface.eth0.if_packets.tx", - "currentHorizontalAggregatorName": "rate" - } - ], - "aliasColors": { - "interface.if_packets.eth1.rx ( ) ": "#3F6833", - "interface.if_packets.eth1.tx ( ) ": "#7EB26D" - }, - "aliasYAxis": {}, - "title": "Packet Rate" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": 5000000, - "threshold2": 6000000, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 3, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": true, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "disk.sda.disk_ops.read", - "currentHorizontalAggregatorName": "avg", - "currentTagKey": "cluster", - "tags": {}, - "currentTagValue": "1" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "disk.sda.disk_ops.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Ops" - }, - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    The Interfaces and disk metrics names driving this chart may need to be adjusted according to the naming and configuration of devices on your system.

    ", - "style": {}, - "title": "Note" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": false - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} diff --git a/app/dash/app/dashboards/Network b/app/dash/app/dashboards/Network deleted file mode 100644 index 65ad63b..0000000 --- a/app/dash/app/dashboards/Network +++ /dev/null @@ -1,546 +0,0 @@ -{ - "title": "Networking", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Summary", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    OpenStack Networking

    Find various information about Neutron processes running on OpenStack cluster in this dashboard.


    ", - "style": {}, - "title": "Nuetron Dashboard" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)", - "thresholdLine": false - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": true, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_count.threads" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_pagefaults.majflt" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_pagefaults.minflt" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Neutron Proc Info", - "leftYAxisLabel": "Counts and Faults" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": true, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_data.value" - } - ], - "aliasColors": { - "processes.ps_state.sleeping.value ( ) ": "#705DA0" - }, - "aliasYAxis": {}, - "title": "Process Data Size", - "leftYAxisLabel": "" - } - ], - "notice": false - }, - { - "title": "Summary", - "height": "300px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": true, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_disk_octets.write" - } - ], - "aliasColors": { - "processes.ps_state.sleeping.value ( ) ": "#705DA0" - }, - "aliasYAxis": {}, - "title": "Disk I/O", - "leftYAxisLabel": "" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": true, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_stacksize.value" - } - ], - "aliasColors": { - "processes.ps_state.sleeping.value ( ) ": "#705DA0" - }, - "aliasYAxis": {}, - "title": "Process Stack Size", - "leftYAxisLabel": "" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "bytes", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": true, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.neutron-server.ps_vm.value" - } - ], - "aliasColors": { - "processes.ps_state.sleeping.value ( ) ": "#705DA0" - }, - "aliasYAxis": {}, - "title": "Process VM Size", - "leftYAxisLabel": "" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [ - "processes", - "openstack" - ], - "timezone": "browser" -} diff --git a/app/dash/app/dashboards/Processes b/app/dash/app/dashboards/Processes deleted file mode 100644 index 78d5d35..0000000 --- a/app/dash/app/dashboards/Processes +++ /dev/null @@ -1,845 +0,0 @@ -{ - "title": "Processes", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Summary", - "height": "450px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    Cluster Processes

    Find various information about process states running on your OpenStack cluster in this dashboard. This information includes:

    • Cluster Process Summary
      • \n
      • Note that process idle time is on a seperate graph so that other states are easily visible
    • OpenStack Key Process Metrics
      • Process Count
      • Process Memory Util
      • ...
    • Supporting Process Metrics
    • Process Fork Rate
    • Other Process Information
    • \n

    ", - "style": {}, - "title": "Process Dashboard" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": 5, - "threshold2": 10, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": true, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.ps_state.running.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.ps_state.paging.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.ps_state.blocked.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.ps_state.stopped.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.ps_state.zombies.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Ave Process States", - "leftYAxisLabel": "Smaller Value Process States" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": true, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.ps_state.sleeping.value" - } - ], - "aliasColors": { - "processes.ps_state.sleeping.value ( ) ": "#705DA0" - }, - "aliasYAxis": {}, - "title": "Ave Process States", - "leftYAxisLabel": "Sleeping Processes Always Highest" - } - ], - "notice": false - }, - { - "title": "OpenStack Core", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 3, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_count.processes" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_count.processes" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "OS Processes Count", - "leftYAxisLabel": "Process Count" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "bytes", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_rss.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_rss.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_rss.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_rss.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_rss.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_rss.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "OS Processes RSS", - "leftYAxisLabel": "Process Resident Segment Size" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "bytes", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 1, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-api.ps_code.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_code.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_code.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-cert.ps_code.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-conductor.ps_code.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.nova-scheduler.ps_code.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "OS Processes Code Value", - "leftYAxisLabel": "Process Code Value" - } - ], - "notice": false - }, - { - "title": "Other", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 2, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": true, - "total": true, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "individual", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.fork_rate.value", - "currentHorizontalAggregatorName": "least_squares" - } - ], - "aliasColors": { - "processes.fork_rate.value ( ) ": "#0A50A1" - }, - "aliasYAxis": {}, - "title": "Cluster Fork Rate", - "leftYAxisLabel": "Ave" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [ - "processes", - "openstack" - ], - "timezone": "browser" -} \ No newline at end of file diff --git a/app/dash/app/dashboards/Security b/app/dash/app/dashboards/Security deleted file mode 100644 index b07291a..0000000 --- a/app/dash/app/dashboards/Security +++ /dev/null @@ -1,531 +0,0 @@ -{ - "title": "Security", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "450px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    Security

    This dashboard presents information to help assess the authentication system in OpenStack. It will be enhanced to include other security metrics as they are collected.



    ", - "style": {}, - "title": "Security" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 5, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": { - "metric": "You must supply a metric name." - }, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - } - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Keystone Process" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 1, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.httpd.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.httpd.ps_cputime.syst" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Web Processes" - } - ], - "notice": false - }, - { - "title": "Row1", - "height": "450px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "bytes", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 5, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_data.value" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.httpd.ps_data.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Process Data" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.keystone.ps_stacksize.value", - "currentHorizontalAggregatorName": "rate" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Keystone Stack Size" - }, - { - "span": 4, - "editable": true, - "type": "graph", - "loadingEditor": false, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 0, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "legend": { - "show": true, - "values": false, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": false - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "users.value" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Users" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} \ No newline at end of file diff --git a/app/dash/app/dashboards/Storage b/app/dash/app/dashboards/Storage deleted file mode 100644 index e73dcde..0000000 --- a/app/dash/app/dashboards/Storage +++ /dev/null @@ -1,670 +0,0 @@ -{ - "title": "Storage", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "350px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 4, - "editable": true, - "type": "text", - "mode": "html", - "content": "

    OpenStack Block Store

    This dashboard provides information on the Cinder storage nodes and their OpenStack related processes.



    ", - "style": {}, - "title": "Store" - }, - { - "span": 8, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 3, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-volume.ps_cputime.syst" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_cputime.user" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-volume.ps_cputime.user" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Cinder Processes" - } - ], - "notice": false - }, - { - "title": "New row", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 3, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_disk_ops.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-volume.ps_disk_ops.read" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Read Ops" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 3, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_disk_ops.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-volume.ps_disk_ops.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Write Ops" - } - ], - "notice": false - }, - { - "title": "New row", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 3, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_disk_octets.read" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-volume.ps_disk_octets.read" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Read Octets" - }, - { - "span": 6, - "editable": true, - "type": "graph", - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "annotate": { - "enable": false - }, - "resolution": 100, - "lines": true, - "fill": 3, - "linewidth": 1, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "legend": { - "show": true, - "values": true, - "min": false, - "max": false, - "current": false, - "total": false, - "avg": true - }, - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "query_as_alias": true - }, - "targets": [ - { - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-api.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-scheduler.ps_disk_octets.write" - }, - { - "target": "", - "downsampling": "avg", - "errors": {}, - "groupBy": { - "timeInterval": "1s" - }, - "horAggregator": { - "samplingRate": "1s", - "unit": "millisecond", - "factor": "1", - "percentile": "0.75" - }, - "metric": "processes.cinder-volume.ps_disk_octets.write" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Disk Write Octets" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - }, - { - "type": "annotations", - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false, - "tags": [], - "timezone": "browser" -} \ No newline at end of file diff --git a/app/dash/app/dashboards/default.json b/app/dash/app/dashboards/default.json deleted file mode 100644 index 63dbcef..0000000 --- a/app/dash/app/dashboards/default.json +++ /dev/null @@ -1,153 +0,0 @@ -{ - "title": "Metrics Intro", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Metrics", - "height": "150px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 12, - "editable": true, - "type": "text", - "loadingEditor": false, - "mode": "markdown", - "content": "####Tips: \n\n- Ctrl+S saves the current dashboard\n- Ctrl+F Opens the dashboard finder (searches elastic search)\n- Ctrl+H Hide/show row controls \n- Click and drag graph title to move panel (only works when row controls are enabled)\n\nIf you do not see a graph in the panel below the browser cannot access your metrics database. Please make sure that datasources property in config.js is correctly set and that any urls are accessible from your browser.", - "style": {}, - "title": "Metrics" - } - ], - "notice": false - }, - { - "title": "test", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 12, - "editable": true, - "type": "graph", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": ["short", "short"], - "grid": { - "max": null, - "min": null - }, - "resolution": 100, - "lines": true, - "fill": 1, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "spyable": true, - "options": false, - "legend": true, - "interactive": true, - "legend_counts": true, - "timezone": "browser", - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative" - }, - "targets": [ - { - "target": "randomWalk('random walk')" - }, - { - "target": "randomWalk('random walk2')" - }, - { - "target": "randomWalk('random walk3')" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Metrics test" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false -} diff --git a/app/dash/app/dashboards/empty.json b/app/dash/app/dashboards/empty.json deleted file mode 100644 index 0a2150c..0000000 --- a/app/dash/app/dashboards/empty.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "title": "New Dashboard", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-1h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "light", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false -} diff --git a/app/dash/app/dashboards/scripted.js b/app/dash/app/dashboards/scripted.js deleted file mode 100644 index 3779cdf..0000000 --- a/app/dash/app/dashboards/scripted.js +++ /dev/null @@ -1,80 +0,0 @@ -/* global _ */ - -/* - * Complex scripted dashboard - * This script generates a dashboard object that Grafana can load. It also takes a number of user - * supplied URL parameters (int ARGS variable) - * - * Return a dashboard object, or a function - * - * For async scripts, return a function, this function must take a single callback function as argument, - * call this callback function with the dashboard object (look at scripted_async.js for an example) - */ - - - -// accessable variables in this scope -var window, document, ARGS, $, jQuery, moment, kbn; - -// Setup some variables -var dashboard, timspan; - -// All url parameters are available via the ARGS object -var ARGS; - -// Set a default timespan if one isn't specified -timspan = '1d'; - -// Intialize a skeleton with nothing but a rows array and service object -dashboard = { - rows : [], - services : {} -}; - -// Set a title -dashboard.title = 'Scripted dash'; -dashboard.services.filter = { - time: { - from: "now-" + (ARGS.from || timspan), - to: "now" - } -}; - -var rows = 1; -var seriesName = 'argName'; - -if(!_.isUndefined(ARGS.rows)) { - rows = parseInt(ARGS.rows, 10); -} - -if(!_.isUndefined(ARGS.name)) { - seriesName = ARGS.name; -} - -for (var i = 0; i < rows; i++) { - - dashboard.rows.push({ - title: 'Chart', - height: '300px', - panels: [ - { - title: 'Events', - type: 'graphite', - span: 12, - fill: 1, - linewidth: 2, - targets: [ - { - 'target': "randomWalk('" + seriesName + "')" - }, - { - 'target': "randomWalk('random walk2')" - } - ], - } - ] - }); -} - - -return dashboard; \ No newline at end of file diff --git a/app/dash/app/dashboards/scripted_async.js b/app/dash/app/dashboards/scripted_async.js deleted file mode 100644 index 79ed49f..0000000 --- a/app/dash/app/dashboards/scripted_async.js +++ /dev/null @@ -1,81 +0,0 @@ -/* global _ */ - -/* - * Complex scripted dashboard - * This script generates a dashboard object that Grafana can load. It also takes a number of user - * supplied URL parameters (int ARGS variable) - * - * Global accessable variables - * window, document, $, jQuery, ARGS, moment - * - * Return a dashboard object, or a function - * - * For async scripts, return a function, this function must take a single callback function, - * call this function with the dasboard object - */ - - - -// accessable variables in this scope -var window, document, ARGS, $, jQuery, moment, kbn; - -return function(callback) { - - // Setup some variables - var dashboard, timspan; - - // Set a default timespan if one isn't specified - timspan = '1d'; - - // Intialize a skeleton with nothing but a rows array and service object - dashboard = { - rows : [], - services : {} - }; - - // Set a title - dashboard.title = 'Scripted dash'; - dashboard.services.filter = { - time: { - from: "now-" + (ARGS.from || timspan), - to: "now" - } - }; - - var rows = 1; - var seriesName = 'argName'; - - if(!_.isUndefined(ARGS.rows)) { - rows = parseInt(ARGS.rows, 10); - } - - if(!_.isUndefined(ARGS.name)) { - seriesName = ARGS.name; - } - - $.ajax({ - method: 'GET', - url: '/' - }) - .done(function(result) { - - dashboard.rows.push({ - title: 'Chart', - height: '300px', - panels: [ - { - title: 'Async dashboard test', - type: 'text', - span: 12, - fill: 1, - content: '# Async test' - } - ] - }); - - // when dashboard is composed call the callback - // function and pass the dashboard - callback(dashboard); - - }); -} \ No newline at end of file diff --git a/app/dash/app/panels/annotations/editor.html b/app/dash/app/panels/annotations/editor.html deleted file mode 100644 index d77a9c8..0000000 --- a/app/dash/app/panels/annotations/editor.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/panels/annotations/module.html b/app/dash/app/panels/annotations/module.html deleted file mode 100644 index 01399d2..0000000 --- a/app/dash/app/panels/annotations/module.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/panels/filtering/module.html b/app/dash/app/panels/filtering/module.html deleted file mode 100644 index bd519cc..0000000 --- a/app/dash/app/panels/filtering/module.html +++ /dev/null @@ -1 +0,0 @@ -
    • name:
    • filter.query:
    \ No newline at end of file diff --git a/app/dash/app/panels/graph/axisEditor.html b/app/dash/app/panels/graph/axisEditor.html deleted file mode 100644 index f78e61b..0000000 --- a/app/dash/app/panels/graph/axisEditor.html +++ /dev/null @@ -1 +0,0 @@ -
    Left Y Axis
    Right Y Axis
    Grid thresholds
    Legend
    Legend values
    Show Axes
    \ No newline at end of file diff --git a/app/dash/app/panels/graph/legend.html b/app/dash/app/panels/graph/legend.html deleted file mode 100644 index 0250f5c..0000000 --- a/app/dash/app/panels/graph/legend.html +++ /dev/null @@ -1,26 +0,0 @@ - {{series.alias}}   Current: {{series.current}}    Min: {{series.min}}    Max: {{series.max}}    Total: {{series.total}}    Avg: {{series.avg}}  \ No newline at end of file diff --git a/app/dash/app/panels/graph/module.html b/app/dash/app/panels/graph/module.html deleted file mode 100644 index afc405d..0000000 --- a/app/dash/app/panels/graph/module.html +++ /dev/null @@ -1 +0,0 @@ -
    No datapointsCan be caused by timezone mismatch between browser and graphite server Datapoints outside time rangeCan be caused by timezone mismatch between browser and graphite server
    \ No newline at end of file diff --git a/app/dash/app/panels/graph/styleEditor.html b/app/dash/app/panels/graph/styleEditor.html deleted file mode 100644 index ba4d228..0000000 --- a/app/dash/app/panels/graph/styleEditor.html +++ /dev/null @@ -1 +0,0 @@ -
    Chart Options
    Line options
    Multiple Series
    Rendering
    \ No newline at end of file diff --git a/app/dash/app/panels/text/editor.html b/app/dash/app/panels/text/editor.html deleted file mode 100644 index 9544fe8..0000000 --- a/app/dash/app/panels/text/editor.html +++ /dev/null @@ -1,2 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/panels/text/module.html b/app/dash/app/panels/text/module.html deleted file mode 100644 index 6ed11aa..0000000 --- a/app/dash/app/panels/text/module.html +++ /dev/null @@ -1 +0,0 @@ -
    {{panel.content}}

    \ No newline at end of file diff --git a/app/dash/app/panels/timepicker/custom.html b/app/dash/app/panels/timepicker/custom.html deleted file mode 100644 index 4117e9f..0000000 --- a/app/dash/app/panels/timepicker/custom.html +++ /dev/null @@ -1,31 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/panels/timepicker/editor.html b/app/dash/app/panels/timepicker/editor.html deleted file mode 100644 index f8b8831..0000000 --- a/app/dash/app/panels/timepicker/editor.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/panels/timepicker/module.html b/app/dash/app/panels/timepicker/module.html deleted file mode 100644 index 2603c06..0000000 --- a/app/dash/app/panels/timepicker/module.html +++ /dev/null @@ -1,8 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/panels/timepicker/refreshctrl.html b/app/dash/app/panels/timepicker/refreshctrl.html deleted file mode 100644 index 5550689..0000000 --- a/app/dash/app/panels/timepicker/refreshctrl.html +++ /dev/null @@ -1 +0,0 @@ -

    \ No newline at end of file diff --git a/app/dash/app/partials/dashLoader.html b/app/dash/app/partials/dashLoader.html deleted file mode 100644 index f49a841..0000000 --- a/app/dash/app/partials/dashLoader.html +++ /dev/null @@ -1,3 +0,0 @@ -
  • Back to dashboard
  • Zoom Out
  • Stop playlist
  • \ No newline at end of file diff --git a/app/dash/app/partials/dashLoaderShare.html b/app/dash/app/partials/dashLoaderShare.html deleted file mode 100644 index b4989b1..0000000 --- a/app/dash/app/partials/dashLoaderShare.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/partials/dashboard.html b/app/dash/app/partials/dashboard.html deleted file mode 100644 index db220ba..0000000 --- a/app/dash/app/partials/dashboard.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/partials/dasheditor.html b/app/dash/app/partials/dasheditor.html deleted file mode 100644 index 0167fa2..0000000 --- a/app/dash/app/partials/dasheditor.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/app/dash/app/partials/graphite/editor.html b/app/dash/app/partials/graphite/editor.html deleted file mode 100644 index 52f2d31..0000000 --- a/app/dash/app/partials/graphite/editor.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/partials/import.html b/app/dash/app/partials/import.html deleted file mode 100644 index e804e31..0000000 --- a/app/dash/app/partials/import.html +++ /dev/null @@ -1 +0,0 @@ -
    Import dashboards from graphite web
    {{dash.name}}
    {{error}}
    \ No newline at end of file diff --git a/app/dash/app/partials/influxdb/editor.html b/app/dash/app/partials/influxdb/editor.html deleted file mode 100644 index 3d5a65f..0000000 --- a/app/dash/app/partials/influxdb/editor.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/partials/inspector.html b/app/dash/app/partials/inspector.html deleted file mode 100644 index b56b56f..0000000 --- a/app/dash/app/partials/inspector.html +++ /dev/null @@ -1,5 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/partials/kairosdb/editor.html b/app/dash/app/partials/kairosdb/editor.html deleted file mode 100644 index dd56d39..0000000 --- a/app/dash/app/partials/kairosdb/editor.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/partials/load.html b/app/dash/app/partials/load.html deleted file mode 100644 index 0e1daab..0000000 --- a/app/dash/app/partials/load.html +++ /dev/null @@ -1 +0,0 @@ -
    type:{{type}}
    id:{{id}}
    \ No newline at end of file diff --git a/app/dash/app/partials/loadmetrics.html b/app/dash/app/partials/loadmetrics.html deleted file mode 100644 index 4a43439..0000000 --- a/app/dash/app/partials/loadmetrics.html +++ /dev/null @@ -1 +0,0 @@ -
    Load metrics keys into elastic search

    Work in progress...

    \ No newline at end of file diff --git a/app/dash/app/partials/metrics.html b/app/dash/app/partials/metrics.html deleted file mode 100644 index 27acc9e..0000000 --- a/app/dash/app/partials/metrics.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/partials/modal.html b/app/dash/app/partials/modal.html deleted file mode 100644 index b47ccc6..0000000 --- a/app/dash/app/partials/modal.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/partials/opentsdb/editor.html b/app/dash/app/partials/opentsdb/editor.html deleted file mode 100644 index ecc445a..0000000 --- a/app/dash/app/partials/opentsdb/editor.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/partials/paneladd.html b/app/dash/app/partials/paneladd.html deleted file mode 100644 index d56fd72..0000000 --- a/app/dash/app/partials/paneladd.html +++ /dev/null @@ -1 +0,0 @@ -
    {{tab.title}}
    \ No newline at end of file diff --git a/app/dash/app/partials/paneleditor.html b/app/dash/app/partials/paneleditor.html deleted file mode 100644 index 329e64b..0000000 --- a/app/dash/app/partials/paneleditor.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/partials/panelgeneral.html b/app/dash/app/partials/panelgeneral.html deleted file mode 100644 index 5d8528c..0000000 --- a/app/dash/app/partials/panelgeneral.html +++ /dev/null @@ -1 +0,0 @@ -
    General options
    \ No newline at end of file diff --git a/app/dash/app/partials/playlist.html b/app/dash/app/partials/playlist.html deleted file mode 100644 index b00998f..0000000 --- a/app/dash/app/partials/playlist.html +++ /dev/null @@ -1 +0,0 @@ -
    \ No newline at end of file diff --git a/app/dash/app/partials/roweditor.html b/app/dash/app/partials/roweditor.html deleted file mode 100644 index 799106d..0000000 --- a/app/dash/app/partials/roweditor.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/partials/search.html b/app/dash/app/partials/search.html deleted file mode 100644 index 7ef9166..0000000 --- a/app/dash/app/partials/search.html +++ /dev/null @@ -1,11 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/app/partials/unsaved-changes.html b/app/dash/app/partials/unsaved-changes.html deleted file mode 100644 index 9d4625e..0000000 --- a/app/dash/app/partials/unsaved-changes.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/dash/build.txt b/app/dash/build.txt deleted file mode 100644 index 62178f6..0000000 --- a/app/dash/build.txt +++ /dev/null @@ -1,106 +0,0 @@ - -app/app.js ----------------- -vendor/jquery/jquery-1.8.0.js -vendor/underscore.js -app/components/underscore.extended.js -vendor/crypto.min.js -app/components/settings.js -vendor/angular/angular.js -app/../vendor/elasticjs/elastic.js -vendor/elasticjs/elastic-angular-client.js -vendor/bootstrap/bootstrap.js -vendor/angular/angular-sanitize.js -vendor/angular/timepicker.js -vendor/angular/datepicker.js -vendor/angular/angular-strap.js -vendor/jquery/jquery-ui-1.10.3.js -vendor/angular/angular-dragdrop.js -app/components/extend-jquery.js -vendor/angular/bindonce.js -app/services/alertSrv.js -vendor/moment.js -app/components/kbn.js -vendor/modernizr-2.6.1.js -vendor/filesaver.js -app/services/dashboard.js -app/services/graphite/graphiteDatasource.js -app/services/influxdb/influxdbDatasource.js -app/services/opentsdb/opentsdbDatasource.js -app/services/kairosdb/kairosdbDatasource.js -app/services/datasourceSrv.js -app/services/filterSrv.js -app/services/timer.js -app/services/panelMove.js -app/services/keyboardManager.js -app/services/annotationsSrv.js -app/services/playlistSrv.js -app/services/unsavedChangesSrv.js -app/services/all.js -app/services/dashboard/dashboardKeyBindings.js -app/services/dashboard/all.js -app/controllers/dash.js -app/controllers/dashLoader.js -app/controllers/row.js -app/controllers/submenuCtrl.js -app/controllers/pulldown.js -app/controllers/search.js -app/controllers/metricKeys.js -app/services/graphite/gfunc.js -app/services/graphite/lexer.js -app/services/graphite/parser.js -app/controllers/graphiteTarget.js -app/controllers/graphiteImport.js -app/controllers/influxTargetCtrl.js -app/controllers/playlistCtrl.js -app/controllers/inspectCtrl.js -app/controllers/opentsdbTargetCtrl.js -app/controllers/kairosdbTargetCtrl.js -app/controllers/all.js -app/directives/addPanel.js -app/directives/arrayJoin.js -app/directives/dashUpload.js -app/controllers/panelBaseCtrl.js -app/directives/kibanaPanel.js -app/directives/kibanaSimplePanel.js -app/directives/ngBlur.js -app/directives/ngModelOnBlur.js -app/directives/tip.js -app/directives/confirmClick.js -app/directives/configModal.js -vendor/spectrum.js -app/directives/spectrumPicker.js -app/directives/grafanaGraph.js -vendor/tagsinput/bootstrap-tagsinput.js -app/directives/bootstrap-tagsinput.js -app/directives/bodyClass.js -app/directives/addGraphiteFunc.js -app/directives/graphiteFuncEditor.js -app/directives/grafanaVersionCheck.js -app/directives/influxdbFuncEditor.js -app/directives/all.js -app/filters/all.js -app/components/partials.js -app/app.js -vendor/require/css.js -vendor/require/text.js -vendor/jquery/jquery.flot.js -vendor/jquery/jquery.flot.pie.js -app/panels/annotations/module.js -text!panels/annotations/module.html -app/panels/filtering/module.js -text!panels/filtering/module.html -app/panels/graph/timeSeries.js -vendor/jquery/jquery.flot.events.js -vendor/jquery/jquery.flot.selection.js -vendor/jquery/jquery.flot.time.js -vendor/jquery/jquery.flot.byte.js -vendor/jquery/jquery.flot.stack.js -vendor/jquery/jquery.flot.stackpercent.js -app/panels/graph/module.js -text!panels/graph/module.html -app/panels/text/lib/showdown.js -app/panels/text/module.js -text!panels/text/module.html -app/panels/timepicker/module.js -text!panels/timepicker/module.html diff --git a/app/dash/config.js b/app/dash/config.js deleted file mode 100644 index 4673719..0000000 --- a/app/dash/config.js +++ /dev/null @@ -1,76 +0,0 @@ -///// @scratch /configuration/config.js/1 - // == Configuration - // config.js is where you will find the core Metrics configuration. This file contains parameter that - // must be set before Metrics is run for the first time. - /// -define(['settings'], -function (Settings) { - - - return new Settings({ - - // datasources, you can add multiple - datasources: { - metricsdb: { - type: 'kairosdb', - //url: "http://metrics:8080", - //url: "http://localhost", - url: "/monit/api/v1", - default: true - }, -/* - datasources: { - graphite: { - type: 'graphite', - url: "http://my.graphite.server.com:8080", - default: true - }, - influxdb: { - type: 'influxdb', - url: "http://my_influxdb_server:8086/db/database_name", - username: 'admin', - password: 'admin' - }, -*/ - }, - - // elasticsearch url - // used for storing and loading dashboards, optional - // For Basic authentication use: http://username:password@domain.com:9200 - elasticsearch: "http://"+window.location.hostname+":9200", - // elasticsearch: "http://elasticsearch:9200", - - // default start dashboard - default_route: '/dashboard/file/default.json', - - // Elasticsearch index for storing dashboards - grafana_index: "compass-met-dash", - - // timezoneOFfset: - // If you experiance problems with zoom, it is probably caused by timezone diff between - // your browser and the graphite-web application. timezoneOffset setting can be used to have Grafana - // translate absolute time ranges to the graphite-web timezone. - // Example: - // If TIME_ZONE in graphite-web config file local_settings.py is set to America/New_York, then set - // timezoneOffset to "-0500" (for UTC - 5 hours) - // Example: - // If TIME_ZONE is set to UTC, set this to "0000" - // - timezoneOffset: null, - - // set to false to disable unsaved changes warning - unsaved_changes_warning: true, - - // set the default timespan for the playlist feature - // Example: "1m", "1h" - playlist_timespan: "1m", - - // Add your own custom pannels - plugins: { - panels: [ - - ] - } - - }); -}); diff --git a/app/dash/config.sample.js b/app/dash/config.sample.js deleted file mode 100644 index a19a5e5..0000000 --- a/app/dash/config.sample.js +++ /dev/null @@ -1,63 +0,0 @@ -///// @scratch /configuration/config.js/1 - // == Configuration - // config.js is where you will find the core Grafana configuration. This file contains parameter that - // must be set before Grafana is run for the first time. - /// -define(['settings'], -function (Settings) { - - - return new Settings({ - - // datasources, you can add multiple - datasources: { - graphite: { - type: 'graphite', - url: "http://my.graphite.server.com:8080", - default: true - }, - influxdb: { - type: 'influxdb', - url: "http://my_influxdb_server:8086/db/database_name", - username: 'admin', - password: 'admin' - }, - }, - - // elasticsearch url - // used for storing and loading dashboards, optional - // For Basic authentication use: http://username:password@domain.com:9200 - elasticsearch: "http://"+window.location.hostname+":9200", - - // default start dashboard - default_route: '/dashboard/file/default.json', - - // Elasticsearch index for storing dashboards - grafana_index: "grafana-dash", - - // timezoneOFfset: - // If you experiance problems with zoom, it is probably caused by timezone diff between - // your browser and the graphite-web application. timezoneOffset setting can be used to have Grafana - // translate absolute time ranges to the graphite-web timezone. - // Example: - // If TIME_ZONE in graphite-web config file local_settings.py is set to America/New_York, then set - // timezoneOffset to "-0500" (for UTC - 5 hours) - // Example: - // If TIME_ZONE is set to UTC, set this to "0000" - // - timezoneOffset: null, - - // set to false to disable unsaved changes warning - unsaved_changes_warning: true, - - // set the default timespan for the playlist feature - // Example: "1m", "1h" - playlist_timespan: "1m", - - // Add your own custom pannels - plugins: { - panels: [] - } - - }); -}); diff --git a/app/dash/css/animate.min.css b/app/dash/css/animate.min.css deleted file mode 100644 index 9ffaf27..0000000 --- a/app/dash/css/animate.min.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";body{-webkit-backface-visibility:hidden}.animated{-webkit-animation-duration:1s;-moz-animation-duration:1s;-o-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.infinite{-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;-o-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.hinge{-webkit-animation-duration:2s;-moz-animation-duration:2s;-o-animation-duration:2s;animation-duration:2s}@-webkit-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@-moz-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@-o-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;-moz-animation-name:flash;-o-animation-name:flash;animation-name:flash}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px)}}@-moz-keyframes shake{0%,100%{-moz-transform:translateX(0)}10%,30%,50%,70%,90%{-moz-transform:translateX(-10px)}20%,40%,60%,80%{-moz-transform:translateX(10px)}}@-o-keyframes shake{0%,100%{-o-transform:translateX(0)}10%,30%,50%,70%,90%{-o-transform:translateX(-10px)}20%,40%,60%,80%{-o-transform:translateX(10px)}}@keyframes shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}.shake{-webkit-animation-name:shake;-moz-animation-name:shake;-o-animation-name:shake;animation-name:shake}@-webkit-keyframes bounce{0%,20%,50%,80%,100%{-webkit-transform:translateY(0)}40%{-webkit-transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px)}}@-moz-keyframes bounce{0%,20%,50%,80%,100%{-moz-transform:translateY(0)}40%{-moz-transform:translateY(-30px)}60%{-moz-transform:translateY(-15px)}}@-o-keyframes bounce{0%,20%,50%,80%,100%{-o-transform:translateY(0)}40%{-o-transform:translateY(-30px)}60%{-o-transform:translateY(-15px)}}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-30px)}60%{transform:translateY(-15px)}}.bounce{-webkit-animation-name:bounce;-moz-animation-name:bounce;-o-animation-name:bounce;animation-name:bounce}@-webkit-keyframes tada{0%{-webkit-transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0)}}@-moz-keyframes tada{0%{-moz-transform:scale(1)}10%,20%{-moz-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-moz-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-moz-transform:scale(1.1) rotate(-3deg)}100%{-moz-transform:scale(1) rotate(0)}}@-o-keyframes tada{0%{-o-transform:scale(1)}10%,20%{-o-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-o-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-o-transform:scale(1.1) rotate(-3deg)}100%{-o-transform:scale(1) rotate(0)}}@keyframes tada{0%{transform:scale(1)}10%,20%{transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.1) rotate(3deg)}40%,60%,80%{transform:scale(1.1) rotate(-3deg)}100%{transform:scale(1) rotate(0)}}.tada{-webkit-animation-name:tada;-moz-animation-name:tada;-o-animation-name:tada;animation-name:tada}@-webkit-keyframes swing{20%,40%,60%,80%,100%{-webkit-transform-origin:top center}20%{-webkit-transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg)}}@-moz-keyframes swing{20%{-moz-transform:rotate(15deg)}40%{-moz-transform:rotate(-10deg)}60%{-moz-transform:rotate(5deg)}80%{-moz-transform:rotate(-5deg)}100%{-moz-transform:rotate(0deg)}}@-o-keyframes swing{20%{-o-transform:rotate(15deg)}40%{-o-transform:rotate(-10deg)}60%{-o-transform:rotate(5deg)}80%{-o-transform:rotate(-5deg)}100%{-o-transform:rotate(0deg)}}@keyframes swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}100%{transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;-moz-transform-origin:top center;-o-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;-moz-animation-name:swing;-o-animation-name:swing;animation-name:swing}@-webkit-keyframes wobble{0%{-webkit-transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%)}}@-moz-keyframes wobble{0%{-moz-transform:translateX(0%)}15%{-moz-transform:translateX(-25%) rotate(-5deg)}30%{-moz-transform:translateX(20%) rotate(3deg)}45%{-moz-transform:translateX(-15%) rotate(-3deg)}60%{-moz-transform:translateX(10%) rotate(2deg)}75%{-moz-transform:translateX(-5%) rotate(-1deg)}100%{-moz-transform:translateX(0%)}}@-o-keyframes wobble{0%{-o-transform:translateX(0%)}15%{-o-transform:translateX(-25%) rotate(-5deg)}30%{-o-transform:translateX(20%) rotate(3deg)}45%{-o-transform:translateX(-15%) rotate(-3deg)}60%{-o-transform:translateX(10%) rotate(2deg)}75%{-o-transform:translateX(-5%) rotate(-1deg)}100%{-o-transform:translateX(0%)}}@keyframes wobble{0%{transform:translateX(0%)}15%{transform:translateX(-25%) rotate(-5deg)}30%{transform:translateX(20%) rotate(3deg)}45%{transform:translateX(-15%) rotate(-3deg)}60%{transform:translateX(10%) rotate(2deg)}75%{transform:translateX(-5%) rotate(-1deg)}100%{transform:translateX(0%)}}.wobble{-webkit-animation-name:wobble;-moz-animation-name:wobble;-o-animation-name:wobble;animation-name:wobble}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1)}50%{-webkit-transform:scale(1.1)}100%{-webkit-transform:scale(1)}}@-moz-keyframes pulse{0%{-moz-transform:scale(1)}50%{-moz-transform:scale(1.1)}100%{-moz-transform:scale(1)}}@-o-keyframes pulse{0%{-o-transform:scale(1)}50%{-o-transform:scale(1.1)}100%{-o-transform:scale(1)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}.pulse{-webkit-animation-name:pulse;-moz-animation-name:pulse;-o-animation-name:pulse;animation-name:pulse}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) rotateY(0);-webkit-animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg);-webkit-animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-webkit-animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) rotateY(360deg) scale(.95);-webkit-animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) scale(1);-webkit-animation-timing-function:ease-in}}@-moz-keyframes flip{0%{-moz-transform:perspective(400px) rotateY(0);-moz-animation-timing-function:ease-out}40%{-moz-transform:perspective(400px) translateZ(150px) rotateY(170deg);-moz-animation-timing-function:ease-out}50%{-moz-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-moz-animation-timing-function:ease-in}80%{-moz-transform:perspective(400px) rotateY(360deg) scale(.95);-moz-animation-timing-function:ease-in}100%{-moz-transform:perspective(400px) scale(1);-moz-animation-timing-function:ease-in}}@-o-keyframes flip{0%{-o-transform:perspective(400px) rotateY(0);-o-animation-timing-function:ease-out}40%{-o-transform:perspective(400px) translateZ(150px) rotateY(170deg);-o-animation-timing-function:ease-out}50%{-o-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-o-animation-timing-function:ease-in}80%{-o-transform:perspective(400px) rotateY(360deg) scale(.95);-o-animation-timing-function:ease-in}100%{-o-transform:perspective(400px) scale(1);-o-animation-timing-function:ease-in}}@keyframes flip{0%{transform:perspective(400px) rotateY(0);animation-timing-function:ease-out}40%{transform:perspective(400px) translateZ(150px) rotateY(170deg);animation-timing-function:ease-out}50%{transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);animation-timing-function:ease-in}80%{transform:perspective(400px) rotateY(360deg) scale(.95);animation-timing-function:ease-in}100%{transform:perspective(400px) scale(1);animation-timing-function:ease-in}}.flip{-webkit-backface-visibility:visible!important;-webkit-animation-name:flip;-moz-backface-visibility:visible!important;-moz-animation-name:flip;-o-backface-visibility:visible!important;-o-animation-name:flip;backface-visibility:visible!important;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);opacity:1}}@-moz-keyframes flipInX{0%{-moz-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-moz-transform:perspective(400px) rotateX(-10deg)}70%{-moz-transform:perspective(400px) rotateX(10deg)}100%{-moz-transform:perspective(400px) rotateX(0deg);opacity:1}}@-o-keyframes flipInX{0%{-o-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-o-transform:perspective(400px) rotateX(-10deg)}70%{-o-transform:perspective(400px) rotateX(10deg)}100%{-o-transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);opacity:0}40%{transform:perspective(400px) rotateX(-10deg)}70%{transform:perspective(400px) rotateX(10deg)}100%{transform:perspective(400px) rotateX(0deg);opacity:1}}.flipInX{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipInX;-moz-backface-visibility:visible!important;-moz-animation-name:flipInX;-o-backface-visibility:visible!important;-o-animation-name:flipInX;backface-visibility:visible!important;animation-name:flipInX}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);opacity:0}}@-moz-keyframes flipOutX{0%{-moz-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-moz-transform:perspective(400px) rotateX(90deg);opacity:0}}@-o-keyframes flipOutX{0%{-o-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-o-transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{transform:perspective(400px) rotateX(0deg);opacity:1}100%{transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-name:flipOutX;-webkit-backface-visibility:visible!important;-moz-animation-name:flipOutX;-moz-backface-visibility:visible!important;-o-animation-name:flipOutX;-o-backface-visibility:visible!important;animation-name:flipOutX;backface-visibility:visible!important}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);opacity:1}}@-moz-keyframes flipInY{0%{-moz-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-moz-transform:perspective(400px) rotateY(-10deg)}70%{-moz-transform:perspective(400px) rotateY(10deg)}100%{-moz-transform:perspective(400px) rotateY(0deg);opacity:1}}@-o-keyframes flipInY{0%{-o-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-o-transform:perspective(400px) rotateY(-10deg)}70%{-o-transform:perspective(400px) rotateY(10deg)}100%{-o-transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes flipInY{0%{transform:perspective(400px) rotateY(90deg);opacity:0}40%{transform:perspective(400px) rotateY(-10deg)}70%{transform:perspective(400px) rotateY(10deg)}100%{transform:perspective(400px) rotateY(0deg);opacity:1}}.flipInY{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipInY;-moz-backface-visibility:visible!important;-moz-animation-name:flipInY;-o-backface-visibility:visible!important;-o-animation-name:flipInY;backface-visibility:visible!important;animation-name:flipInY}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);opacity:0}}@-moz-keyframes flipOutY{0%{-moz-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-moz-transform:perspective(400px) rotateY(90deg);opacity:0}}@-o-keyframes flipOutY{0%{-o-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-o-transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{transform:perspective(400px) rotateY(0deg);opacity:1}100%{transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipOutY;-moz-backface-visibility:visible!important;-moz-animation-name:flipOutY;-o-backface-visibility:visible!important;-o-animation-name:flipOutY;backface-visibility:visible!important;animation-name:flipOutY}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;-moz-animation-name:fadeIn;-o-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInUp{0%{opacity:0;-moz-transform:translateY(20px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInUp{0%{opacity:0;-o-transform:translateY(20px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;-moz-animation-name:fadeInUp;-o-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInDown{0%{opacity:0;-moz-transform:translateY(-20px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInDown{0%{opacity:0;-o-transform:translateY(-20px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;-moz-animation-name:fadeInDown;-o-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInLeft{0%{opacity:0;-moz-transform:translateX(-20px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInLeft{0%{opacity:0;-o-transform:translateX(-20px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-20px)}100%{opacity:1;transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;-moz-animation-name:fadeInLeft;-o-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInRight{0%{opacity:0;-moz-transform:translateX(20px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInRight{0%{opacity:0;-o-transform:translateX(20px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(20px)}100%{opacity:1;transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;-moz-animation-name:fadeInRight;-o-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInUpBig{0%{opacity:0;-moz-transform:translateY(2000px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInUpBig{0%{opacity:0;-o-transform:translateY(2000px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;transform:translateY(2000px)}100%{opacity:1;transform:translateY(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;-moz-animation-name:fadeInUpBig;-o-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInDownBig{0%{opacity:0;-moz-transform:translateY(-2000px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInDownBig{0%{opacity:0;-o-transform:translateY(-2000px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;transform:translateY(-2000px)}100%{opacity:1;transform:translateY(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;-moz-animation-name:fadeInDownBig;-o-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInLeftBig{0%{opacity:0;-moz-transform:translateX(-2000px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInLeftBig{0%{opacity:0;-o-transform:translateX(-2000px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInLeftBig{0%{opacity:0;transform:translateX(-2000px)}100%{opacity:1;transform:translateX(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;-moz-animation-name:fadeInLeftBig;-o-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInRightBig{0%{opacity:0;-moz-transform:translateX(2000px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInRightBig{0%{opacity:0;-o-transform:translateX(2000px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;transform:translateX(2000px)}100%{opacity:1;transform:translateX(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;-moz-animation-name:fadeInRightBig;-o-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-o-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;-moz-animation-name:fadeOut;-o-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px)}}@-moz-keyframes fadeOutUp{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(-20px)}}@-o-keyframes fadeOutUp{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(-20px)}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-20px)}}.fadeOutUp{-webkit-animation-name:fadeOutUp;-moz-animation-name:fadeOutUp;-o-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px)}}@-moz-keyframes fadeOutDown{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(20px)}}@-o-keyframes fadeOutDown{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(20px)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(20px)}}.fadeOutDown{-webkit-animation-name:fadeOutDown;-moz-animation-name:fadeOutDown;-o-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px)}}@-moz-keyframes fadeOutLeft{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(-20px)}}@-o-keyframes fadeOutLeft{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(-20px)}}@keyframes fadeOutLeft{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-20px)}}.fadeOutLeft{-webkit-animation-name:fadeOutLeft;-moz-animation-name:fadeOutLeft;-o-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px)}}@-moz-keyframes fadeOutRight{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(20px)}}@-o-keyframes fadeOutRight{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(20px)}}@keyframes fadeOutRight{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(20px)}}.fadeOutRight{-webkit-animation-name:fadeOutRight;-moz-animation-name:fadeOutRight;-o-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px)}}@-moz-keyframes fadeOutUpBig{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(-2000px)}}@-o-keyframes fadeOutUpBig{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(-2000px)}}@keyframes fadeOutUpBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-2000px)}}.fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;-moz-animation-name:fadeOutUpBig;-o-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px)}}@-moz-keyframes fadeOutDownBig{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(2000px)}}@-o-keyframes fadeOutDownBig{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(2000px)}}.fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;-moz-animation-name:fadeOutDownBig;-o-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px)}}@-moz-keyframes fadeOutLeftBig{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(-2000px)}}@-o-keyframes fadeOutLeftBig{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(-2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-2000px)}}.fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;-moz-animation-name:fadeOutLeftBig;-o-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px)}}@-moz-keyframes fadeOutRightBig{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(2000px)}}@-o-keyframes fadeOutRightBig{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(2000px)}}.fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;-moz-animation-name:fadeOutRightBig;-o-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05)}70%{-webkit-transform:scale(.9)}100%{-webkit-transform:scale(1)}}@-moz-keyframes bounceIn{0%{opacity:0;-moz-transform:scale(.3)}50%{opacity:1;-moz-transform:scale(1.05)}70%{-moz-transform:scale(.9)}100%{-moz-transform:scale(1)}}@-o-keyframes bounceIn{0%{opacity:0;-o-transform:scale(.3)}50%{opacity:1;-o-transform:scale(1.05)}70%{-o-transform:scale(.9)}100%{-o-transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}100%{transform:scale(1)}}.bounceIn{-webkit-animation-name:bounceIn;-moz-animation-name:bounceIn;-o-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px)}80%{-webkit-transform:translateY(10px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes bounceInUp{0%{opacity:0;-moz-transform:translateY(2000px)}60%{opacity:1;-moz-transform:translateY(-30px)}80%{-moz-transform:translateY(10px)}100%{-moz-transform:translateY(0)}}@-o-keyframes bounceInUp{0%{opacity:0;-o-transform:translateY(2000px)}60%{opacity:1;-o-transform:translateY(-30px)}80%{-o-transform:translateY(10px)}100%{-o-transform:translateY(0)}}@keyframes bounceInUp{0%{opacity:0;transform:translateY(2000px)}60%{opacity:1;transform:translateY(-30px)}80%{transform:translateY(10px)}100%{transform:translateY(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;-moz-animation-name:bounceInUp;-o-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px)}80%{-webkit-transform:translateY(-10px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes bounceInDown{0%{opacity:0;-moz-transform:translateY(-2000px)}60%{opacity:1;-moz-transform:translateY(30px)}80%{-moz-transform:translateY(-10px)}100%{-moz-transform:translateY(0)}}@-o-keyframes bounceInDown{0%{opacity:0;-o-transform:translateY(-2000px)}60%{opacity:1;-o-transform:translateY(30px)}80%{-o-transform:translateY(-10px)}100%{-o-transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;transform:translateY(-2000px)}60%{opacity:1;transform:translateY(30px)}80%{transform:translateY(-10px)}100%{transform:translateY(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;-moz-animation-name:bounceInDown;-o-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px)}80%{-webkit-transform:translateX(-10px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes bounceInLeft{0%{opacity:0;-moz-transform:translateX(-2000px)}60%{opacity:1;-moz-transform:translateX(30px)}80%{-moz-transform:translateX(-10px)}100%{-moz-transform:translateX(0)}}@-o-keyframes bounceInLeft{0%{opacity:0;-o-transform:translateX(-2000px)}60%{opacity:1;-o-transform:translateX(30px)}80%{-o-transform:translateX(-10px)}100%{-o-transform:translateX(0)}}@keyframes bounceInLeft{0%{opacity:0;transform:translateX(-2000px)}60%{opacity:1;transform:translateX(30px)}80%{transform:translateX(-10px)}100%{transform:translateX(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;-moz-animation-name:bounceInLeft;-o-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px)}80%{-webkit-transform:translateX(10px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes bounceInRight{0%{opacity:0;-moz-transform:translateX(2000px)}60%{opacity:1;-moz-transform:translateX(-30px)}80%{-moz-transform:translateX(10px)}100%{-moz-transform:translateX(0)}}@-o-keyframes bounceInRight{0%{opacity:0;-o-transform:translateX(2000px)}60%{opacity:1;-o-transform:translateX(-30px)}80%{-o-transform:translateX(10px)}100%{-o-transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;transform:translateX(2000px)}60%{opacity:1;transform:translateX(-30px)}80%{transform:translateX(10px)}100%{transform:translateX(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;-moz-animation-name:bounceInRight;-o-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceOut{0%{-webkit-transform:scale(1)}25%{-webkit-transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3)}}@-moz-keyframes bounceOut{0%{-moz-transform:scale(1)}25%{-moz-transform:scale(.95)}50%{opacity:1;-moz-transform:scale(1.1)}100%{opacity:0;-moz-transform:scale(.3)}}@-o-keyframes bounceOut{0%{-o-transform:scale(1)}25%{-o-transform:scale(.95)}50%{opacity:1;-o-transform:scale(1.1)}100%{opacity:0;-o-transform:scale(.3)}}@keyframes bounceOut{0%{transform:scale(1)}25%{transform:scale(.95)}50%{opacity:1;transform:scale(1.1)}100%{opacity:0;transform:scale(.3)}}.bounceOut{-webkit-animation-name:bounceOut;-moz-animation-name:bounceOut;-o-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutUp{0%{-webkit-transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px)}}@-moz-keyframes bounceOutUp{0%{-moz-transform:translateY(0)}20%{opacity:1;-moz-transform:translateY(20px)}100%{opacity:0;-moz-transform:translateY(-2000px)}}@-o-keyframes bounceOutUp{0%{-o-transform:translateY(0)}20%{opacity:1;-o-transform:translateY(20px)}100%{opacity:0;-o-transform:translateY(-2000px)}}@keyframes bounceOutUp{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(20px)}100%{opacity:0;transform:translateY(-2000px)}}.bounceOutUp{-webkit-animation-name:bounceOutUp;-moz-animation-name:bounceOutUp;-o-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes bounceOutDown{0%{-webkit-transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px)}}@-moz-keyframes bounceOutDown{0%{-moz-transform:translateY(0)}20%{opacity:1;-moz-transform:translateY(-20px)}100%{opacity:0;-moz-transform:translateY(2000px)}}@-o-keyframes bounceOutDown{0%{-o-transform:translateY(0)}20%{opacity:1;-o-transform:translateY(-20px)}100%{opacity:0;-o-transform:translateY(2000px)}}@keyframes bounceOutDown{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(-20px)}100%{opacity:0;transform:translateY(2000px)}}.bounceOutDown{-webkit-animation-name:bounceOutDown;-moz-animation-name:bounceOutDown;-o-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{0%{-webkit-transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px)}}@-moz-keyframes bounceOutLeft{0%{-moz-transform:translateX(0)}20%{opacity:1;-moz-transform:translateX(20px)}100%{opacity:0;-moz-transform:translateX(-2000px)}}@-o-keyframes bounceOutLeft{0%{-o-transform:translateX(0)}20%{opacity:1;-o-transform:translateX(20px)}100%{opacity:0;-o-transform:translateX(-2000px)}}@keyframes bounceOutLeft{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(20px)}100%{opacity:0;transform:translateX(-2000px)}}.bounceOutLeft{-webkit-animation-name:bounceOutLeft;-moz-animation-name:bounceOutLeft;-o-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{0%{-webkit-transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px)}}@-moz-keyframes bounceOutRight{0%{-moz-transform:translateX(0)}20%{opacity:1;-moz-transform:translateX(-20px)}100%{opacity:0;-moz-transform:translateX(2000px)}}@-o-keyframes bounceOutRight{0%{-o-transform:translateX(0)}20%{opacity:1;-o-transform:translateX(-20px)}100%{opacity:0;-o-transform:translateX(2000px)}}@keyframes bounceOutRight{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(-20px)}100%{opacity:0;transform:translateX(2000px)}}.bounceOutRight{-webkit-animation-name:bounceOutRight;-moz-animation-name:bounceOutRight;-o-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes rotateIn{0%{-webkit-transform-origin:center center;-webkit-transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateIn{0%{-moz-transform-origin:center center;-moz-transform:rotate(-200deg);opacity:0}100%{-moz-transform-origin:center center;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateIn{0%{-o-transform-origin:center center;-o-transform:rotate(-200deg);opacity:0}100%{-o-transform-origin:center center;-o-transform:rotate(0);opacity:1}}@keyframes rotateIn{0%{transform-origin:center center;transform:rotate(-200deg);opacity:0}100%{transform-origin:center center;transform:rotate(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;-moz-animation-name:rotateIn;-o-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInUpLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(90deg);opacity:0}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInUpLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(90deg);opacity:0}100%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInUpLeft{0%{transform-origin:left bottom;transform:rotate(90deg);opacity:0}100%{transform-origin:left bottom;transform:rotate(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;-moz-animation-name:rotateInUpLeft;-o-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInDownLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(-90deg);opacity:0}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInDownLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(-90deg);opacity:0}100%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInDownLeft{0%{transform-origin:left bottom;transform:rotate(-90deg);opacity:0}100%{transform-origin:left bottom;transform:rotate(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;-moz-animation-name:rotateInDownLeft;-o-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInUpRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(-90deg);opacity:0}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInUpRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(-90deg);opacity:0}100%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInUpRight{0%{transform-origin:right bottom;transform:rotate(-90deg);opacity:0}100%{transform-origin:right bottom;transform:rotate(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;-moz-animation-name:rotateInUpRight;-o-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInDownRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(90deg);opacity:0}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInDownRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(90deg);opacity:0}100%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInDownRight{0%{transform-origin:right bottom;transform:rotate(90deg);opacity:0}100%{transform-origin:right bottom;transform:rotate(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;-moz-animation-name:rotateInDownRight;-o-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center center;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;-webkit-transform:rotate(200deg);opacity:0}}@-moz-keyframes rotateOut{0%{-moz-transform-origin:center center;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:center center;-moz-transform:rotate(200deg);opacity:0}}@-o-keyframes rotateOut{0%{-o-transform-origin:center center;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:center center;-o-transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{transform-origin:center center;transform:rotate(0);opacity:1}100%{transform-origin:center center;transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;-moz-animation-name:rotateOut;-o-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(-90deg);opacity:0}}@-moz-keyframes rotateOutUpLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(-90deg);opacity:0}}@-o-keyframes rotateOutUpLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:left bottom;-o-transform:rotate(-90deg);opacity:0}}@keyframes rotateOutUpLeft{0%{transform-origin:left bottom;transform:rotate(0);opacity:1}100%{transform-origin:left bottom;transform:rotate(-90deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;-moz-animation-name:rotateOutUpLeft;-o-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(90deg);opacity:0}}@-moz-keyframes rotateOutDownLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(90deg);opacity:0}}@-o-keyframes rotateOutDownLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:left bottom;-o-transform:rotate(90deg);opacity:0}}@keyframes rotateOutDownLeft{0%{transform-origin:left bottom;transform:rotate(0);opacity:1}100%{transform-origin:left bottom;transform:rotate(90deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;-moz-animation-name:rotateOutDownLeft;-o-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(90deg);opacity:0}}@-moz-keyframes rotateOutUpRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(90deg);opacity:0}}@-o-keyframes rotateOutUpRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:right bottom;-o-transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{transform-origin:right bottom;transform:rotate(0);opacity:1}100%{transform-origin:right bottom;transform:rotate(90deg);opacity:0}}.rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;-moz-animation-name:rotateOutUpRight;-o-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(-90deg);opacity:0}}@-moz-keyframes rotateOutDownRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(-90deg);opacity:0}}@-o-keyframes rotateOutDownRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:right bottom;-o-transform:rotate(-90deg);opacity:0}}@keyframes rotateOutDownRight{0%{transform-origin:right bottom;transform:rotate(0);opacity:1}100%{transform-origin:right bottom;transform:rotate(-90deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;-moz-animation-name:rotateOutDownRight;-o-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes hinge{0%{-webkit-transform:rotate(0);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);opacity:1;-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}100%{-webkit-transform:translateY(700px);opacity:0}}@-moz-keyframes hinge{0%{-moz-transform:rotate(0);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}20%,60%{-moz-transform:rotate(80deg);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}40%{-moz-transform:rotate(60deg);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}80%{-moz-transform:rotate(60deg) translateY(0);opacity:1;-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}100%{-moz-transform:translateY(700px);opacity:0}}@-o-keyframes hinge{0%{-o-transform:rotate(0);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}20%,60%{-o-transform:rotate(80deg);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}40%{-o-transform:rotate(60deg);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}80%{-o-transform:rotate(60deg) translateY(0);opacity:1;-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}100%{-o-transform:translateY(700px);opacity:0}}@keyframes hinge{0%{transform:rotate(0);transform-origin:top left;animation-timing-function:ease-in-out}20%,60%{transform:rotate(80deg);transform-origin:top left;animation-timing-function:ease-in-out}40%{transform:rotate(60deg);transform-origin:top left;animation-timing-function:ease-in-out}80%{transform:rotate(60deg) translateY(0);opacity:1;transform-origin:top left;animation-timing-function:ease-in-out}100%{transform:translateY(700px);opacity:0}}.hinge{-webkit-animation-name:hinge;-moz-animation-name:hinge;-o-animation-name:hinge;animation-name:hinge}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg)}}@-moz-keyframes rollIn{0%{opacity:0;-moz-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-moz-transform:translateX(0px) rotate(0deg)}}@-o-keyframes rollIn{0%{opacity:0;-o-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-o-transform:translateX(0px) rotate(0deg)}}@keyframes rollIn{0%{opacity:0;transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;transform:translateX(0px) rotate(0deg)}}.rollIn{-webkit-animation-name:rollIn;-moz-animation-name:rollIn;-o-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg)}}@-moz-keyframes rollOut{0%{opacity:1;-moz-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-moz-transform:translateX(100%) rotate(120deg)}}@-o-keyframes rollOut{0%{opacity:1;-o-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-o-transform:translateX(100%) rotate(120deg)}}@keyframes rollOut{0%{opacity:1;transform:translateX(0px) rotate(0deg)}100%{opacity:0;transform:translateX(100%) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;-moz-animation-name:rollOut;-o-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);opacity:1}}@-moz-keyframes lightSpeedIn{0%{-moz-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-moz-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-moz-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-moz-transform:translateX(0%) skewX(0deg);opacity:1}}@-o-keyframes lightSpeedIn{0%{-o-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-o-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-o-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-o-transform:translateX(0%) skewX(0deg);opacity:1}}@keyframes lightSpeedIn{0%{transform:translateX(100%) skewX(-30deg);opacity:0}60%{transform:translateX(-20%) skewX(30deg);opacity:1}80%{transform:translateX(0%) skewX(-15deg);opacity:1}100%{transform:translateX(0%) skewX(0deg);opacity:1}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;-moz-animation-name:lightSpeedIn;-o-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;-moz-animation-timing-function:ease-out;-o-animation-timing-function:ease-out;animation-timing-function:ease-out}.animated.lightSpeedIn{-webkit-animation-duration:.5s;-moz-animation-duration:.5s;-o-animation-duration:.5s;animation-duration:.5s}@-webkit-keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);opacity:0}}@-moz-keyframes lightSpeedOut{0%{-moz-transform:translateX(0%) skewX(0deg);opacity:1}100%{-moz-transform:translateX(100%) skewX(-30deg);opacity:0}}@-o-keyframes lightSpeedOut{0%{-o-transform:translateX(0%) skewX(0deg);opacity:1}100%{-o-transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes lightSpeedOut{0%{transform:translateX(0%) skewX(0deg);opacity:1}100%{transform:translateX(100%) skewX(-30deg);opacity:0}}.lightSpeedOut{-webkit-animation-name:lightSpeedOut;-moz-animation-name:lightSpeedOut;-o-animation-name:lightSpeedOut;animation-name:lightSpeedOut;-webkit-animation-timing-function:ease-in;-moz-animation-timing-function:ease-in;-o-animation-timing-function:ease-in;animation-timing-function:ease-in}.animated.lightSpeedOut{-webkit-animation-duration:.25s;-moz-animation-duration:.25s;-o-animation-duration:.25s;animation-duration:.25s}@-webkit-keyframes wiggle{0%{-webkit-transform:skewX(9deg)}10%{-webkit-transform:skewX(-8deg)}20%{-webkit-transform:skewX(7deg)}30%{-webkit-transform:skewX(-6deg)}40%{-webkit-transform:skewX(5deg)}50%{-webkit-transform:skewX(-4deg)}60%{-webkit-transform:skewX(3deg)}70%{-webkit-transform:skewX(-2deg)}80%{-webkit-transform:skewX(1deg)}90%{-webkit-transform:skewX(0deg)}100%{-webkit-transform:skewX(0deg)}}@-moz-keyframes wiggle{0%{-moz-transform:skewX(9deg)}10%{-moz-transform:skewX(-8deg)}20%{-moz-transform:skewX(7deg)}30%{-moz-transform:skewX(-6deg)}40%{-moz-transform:skewX(5deg)}50%{-moz-transform:skewX(-4deg)}60%{-moz-transform:skewX(3deg)}70%{-moz-transform:skewX(-2deg)}80%{-moz-transform:skewX(1deg)}90%{-moz-transform:skewX(0deg)}100%{-moz-transform:skewX(0deg)}}@-o-keyframes wiggle{0%{-o-transform:skewX(9deg)}10%{-o-transform:skewX(-8deg)}20%{-o-transform:skewX(7deg)}30%{-o-transform:skewX(-6deg)}40%{-o-transform:skewX(5deg)}50%{-o-transform:skewX(-4deg)}60%{-o-transform:skewX(3deg)}70%{-o-transform:skewX(-2deg)}80%{-o-transform:skewX(1deg)}90%{-o-transform:skewX(0deg)}100%{-o-transform:skewX(0deg)}}@keyframes wiggle{0%{transform:skewX(9deg)}10%{transform:skewX(-8deg)}20%{transform:skewX(7deg)}30%{transform:skewX(-6deg)}40%{transform:skewX(5deg)}50%{transform:skewX(-4deg)}60%{transform:skewX(3deg)}70%{transform:skewX(-2deg)}80%{transform:skewX(1deg)}90%{transform:skewX(0deg)}100%{transform:skewX(0deg)}}.wiggle{-webkit-animation-name:wiggle;-moz-animation-name:wiggle;-o-animation-name:wiggle;animation-name:wiggle;-webkit-animation-timing-function:ease-in;-moz-animation-timing-function:ease-in;-o-animation-timing-function:ease-in;animation-timing-function:ease-in}.animated.wiggle{-webkit-animation-duration:.75s;-moz-animation-duration:.75s;-o-animation-duration:.75s;animation-duration:.75s} \ No newline at end of file diff --git a/app/dash/css/bootstrap-responsive.min.css b/app/dash/css/bootstrap-responsive.min.css deleted file mode 100644 index 26905e7..0000000 --- a/app/dash/css/bootstrap-responsive.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * Bootstrap Responsive v2.3.2 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@-ms-viewport{width:device-width}.hidden{display:none;visibility:hidden}.visible-phone{display:none!important}.visible-tablet{display:none!important}.hidden-desktop{display:none!important}.visible-desktop{display:inherit!important}@media(min-width:768px) and (max-width:979px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-tablet{display:inherit!important}.hidden-tablet{display:none!important}}@media(max-width:767px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-phone{display:inherit!important}.hidden-phone{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:inherit!important}.hidden-print{display:none!important}}@media(min-width:1200px){.row{margin-left:-10px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0}.row:after{clear:both}[class*=span]{float:left;min-height:1px;margin-left:10px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:1190px}.span12{width:1190px}.span11{width:1090px}.span10{width:990px}.span9{width:890px}.span8{width:790px}.span7{width:690px}.span6{width:590px}.span5{width:490px}.span4{width:390px}.span3{width:290px}.span2{width:190px}.span1{width:90px}.offset12{margin-left:1210px}.offset11{margin-left:1110px}.offset10{margin-left:1010px}.offset9{margin-left:910px}.offset8{margin-left:810px}.offset7{margin-left:710px}.offset6{margin-left:610px}.offset5{margin-left:510px}.offset4{margin-left:410px}.offset3{margin-left:310px}.offset2{margin-left:210px}.offset1{margin-left:110px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0}.row-fluid:after{clear:both}.row-fluid [class*=span]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:.8403361344537815%;*margin-left:.787704555506413%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .controls-row [class*=span]+[class*=span]{margin-left:.8403361344537815%}.row-fluid .span12{width:99.99999999999999%;*width:99.94736842105262%}.row-fluid .span11{width:91.59663865546219%;*width:91.54400707651482%}.row-fluid .span10{width:83.19327731092437%;*width:83.140645731977%}.row-fluid .span9{width:74.78991596638656%;*width:74.73728438743919%}.row-fluid .span8{width:66.38655462184875%;*width:66.33392304290138%}.row-fluid .span7{width:57.98319327731092%;*width:57.93056169836355%}.row-fluid .span6{width:49.579831932773104%;*width:49.527200353825734%}.row-fluid .span5{width:41.1764705882353%;*width:41.12383900928793%}.row-fluid .span4{width:32.773109243697476%;*width:32.720477664750106%}.row-fluid .span3{width:24.369747899159663%;*width:24.317116320212293%}.row-fluid .span2{width:15.966386554621849%;*width:15.91375497567448%}.row-fluid .span1{width:7.563025210084033%;*width:7.510393631136665%}.row-fluid .offset12{margin-left:101.68067226890754%;*margin-left:101.5754091110128%}.row-fluid .offset12:first-child{margin-left:100.84033613445376%;*margin-left:100.73507297655902%}.row-fluid .offset11{margin-left:93.27731092436974%;*margin-left:93.172047766475%}.row-fluid .offset11:first-child{margin-left:92.43697478991596%;*margin-left:92.33171163202123%}.row-fluid .offset10{margin-left:84.87394957983193%;*margin-left:84.76868642193719%}.row-fluid .offset10:first-child{margin-left:84.03361344537815%;*margin-left:83.92835028748341%}.row-fluid .offset9{margin-left:76.47058823529412%;*margin-left:76.36532507739938%}.row-fluid .offset9:first-child{margin-left:75.63025210084034%;*margin-left:75.5249889429456%}.row-fluid .offset8{margin-left:68.0672268907563%;*margin-left:67.96196373286156%}.row-fluid .offset8:first-child{margin-left:67.22689075630252%;*margin-left:67.12162759840778%}.row-fluid .offset7{margin-left:59.66386554621848%;*margin-left:59.55860238832374%}.row-fluid .offset7:first-child{margin-left:58.823529411764696%;*margin-left:58.718266253869956%}.row-fluid .offset6{margin-left:51.26050420168067%;*margin-left:51.15524104378593%}.row-fluid .offset6:first-child{margin-left:50.42016806722688%;*margin-left:50.31490490933214%}.row-fluid .offset5{margin-left:42.85714285714286%;*margin-left:42.75187969924812%}.row-fluid .offset5:first-child{margin-left:42.016806722689076%;*margin-left:41.911543564794336%}.row-fluid .offset4{margin-left:34.45378151260504%;*margin-left:34.3485183547103%}.row-fluid .offset4:first-child{margin-left:33.613445378151255%;*margin-left:33.508182220256515%}.row-fluid .offset3{margin-left:26.050420168067227%;*margin-left:25.945157010172487%}.row-fluid .offset3:first-child{margin-left:25.210084033613445%;*margin-left:25.104820875718705%}.row-fluid .offset2{margin-left:17.647058823529413%;*margin-left:17.541795665634673%}.row-fluid .offset2:first-child{margin-left:16.80672268907563%;*margin-left:16.70145953118089%}.row-fluid .offset1{margin-left:9.243697478991596%;*margin-left:9.13843432109686%}.row-fluid .offset1:first-child{margin-left:8.403361344537815%;*margin-left:8.29809818664308%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*=span]+[class*=span]{margin-left:10px}input.span12,textarea.span12,.uneditable-input.span12{width:1176px}input.span11,textarea.span11,.uneditable-input.span11{width:1076px}input.span10,textarea.span10,.uneditable-input.span10{width:976px}input.span9,textarea.span9,.uneditable-input.span9{width:876px}input.span8,textarea.span8,.uneditable-input.span8{width:776px}input.span7,textarea.span7,.uneditable-input.span7{width:676px}input.span6,textarea.span6,.uneditable-input.span6{width:576px}input.span5,textarea.span5,.uneditable-input.span5{width:476px}input.span4,textarea.span4,.uneditable-input.span4{width:376px}input.span3,textarea.span3,.uneditable-input.span3{width:276px}input.span2,textarea.span2,.uneditable-input.span2{width:176px}input.span1,textarea.span1,.uneditable-input.span1{width:76px}.thumbnails{margin-left:-10px}.thumbnails>li{margin-left:10px}.row-fluid .thumbnails{margin-left:0}}@media(min-width:768px) and (max-width:979px){.row{margin-left:-10px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0}.row:after{clear:both}[class*=span]{float:left;min-height:1px;margin-left:10px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:734px}.span12{width:734px}.span11{width:672px}.span10{width:610px}.span9{width:548px}.span8{width:486px}.span7{width:424px}.span6{width:362px}.span5{width:300px}.span4{width:238px}.span3{width:176px}.span2{width:114px}.span1{width:52px}.offset12{margin-left:754px}.offset11{margin-left:692px}.offset10{margin-left:630px}.offset9{margin-left:568px}.offset8{margin-left:506px}.offset7{margin-left:444px}.offset6{margin-left:382px}.offset5{margin-left:320px}.offset4{margin-left:258px}.offset3{margin-left:196px}.offset2{margin-left:134px}.offset1{margin-left:72px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0}.row-fluid:after{clear:both}.row-fluid [class*=span]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:1.3623978201634876%;*margin-left:1.3097662412161193%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .controls-row [class*=span]+[class*=span]{margin-left:1.3623978201634876%}.row-fluid .span12{width:100.00000000000001%;*width:99.94736842105264%}.row-fluid .span11{width:91.55313351498637%;*width:91.500501936039%}.row-fluid .span10{width:83.10626702997276%;*width:83.05363545102539%}.row-fluid .span9{width:74.65940054495913%;*width:74.60676896601176%}.row-fluid .span8{width:66.21253405994551%;*width:66.15990248099814%}.row-fluid .span7{width:57.76566757493188%;*width:57.71303599598451%}.row-fluid .span6{width:49.31880108991827%;*width:49.2661695109709%}.row-fluid .span5{width:40.87193460490463%;*width:40.81930302595726%}.row-fluid .span4{width:32.42506811989101%;*width:32.37243654094364%}.row-fluid .span3{width:23.978201634877387%;*width:23.925570055930017%}.row-fluid .span2{width:15.53133514986376%;*width:15.478703570916393%}.row-fluid .span1{width:7.084468664850137%;*width:7.031837085902769%}.row-fluid .offset12{margin-left:102.72479564032699%;*margin-left:102.61953248243225%}.row-fluid .offset12:first-child{margin-left:101.36239782016351%;*margin-left:101.25713466226877%}.row-fluid .offset11{margin-left:94.27792915531334%;*margin-left:94.1726659974186%}.row-fluid .offset11:first-child{margin-left:92.91553133514986%;*margin-left:92.81026817725513%}.row-fluid .offset10{margin-left:85.83106267029973%;*margin-left:85.72579951240499%}.row-fluid .offset10:first-child{margin-left:84.46866485013625%;*margin-left:84.36340169224151%}.row-fluid .offset9{margin-left:77.3841961852861%;*margin-left:77.27893302739136%}.row-fluid .offset9:first-child{margin-left:76.02179836512262%;*margin-left:75.91653520722788%}.row-fluid .offset8{margin-left:68.93732970027249%;*margin-left:68.83206654237775%}.row-fluid .offset8:first-child{margin-left:67.574931880109%;*margin-left:67.46966872221427%}.row-fluid .offset7{margin-left:60.490463215258856%;*margin-left:60.385200057364116%}.row-fluid .offset7:first-child{margin-left:59.12806539509537%;*margin-left:59.02280223720063%}.row-fluid .offset6{margin-left:52.04359673024524%;*margin-left:51.9383335723505%}.row-fluid .offset6:first-child{margin-left:50.681198910081754%;*margin-left:50.575935752187014%}.row-fluid .offset5{margin-left:43.596730245231605%;*margin-left:43.491467087336865%}.row-fluid .offset5:first-child{margin-left:42.23433242506812%;*margin-left:42.12906926717338%}.row-fluid .offset4{margin-left:35.14986376021798%;*margin-left:35.04460060232324%}.row-fluid .offset4:first-child{margin-left:33.787465940054496%;*margin-left:33.682202782159756%}.row-fluid .offset3{margin-left:26.70299727520436%;*margin-left:26.59773411730962%}.row-fluid .offset3:first-child{margin-left:25.340599455040874%;*margin-left:25.235336297146134%}.row-fluid .offset2{margin-left:18.256130790190735%;*margin-left:18.150867632296%}.row-fluid .offset2:first-child{margin-left:16.893732970027248%;*margin-left:16.78846981213251%}.row-fluid .offset1{margin-left:9.809264305177113%;*margin-left:9.704001147282376%}.row-fluid .offset1:first-child{margin-left:8.446866485013624%;*margin-left:8.341603327118888%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*=span]+[class*=span]{margin-left:10px}input.span12,textarea.span12,.uneditable-input.span12{width:720px}input.span11,textarea.span11,.uneditable-input.span11{width:658px}input.span10,textarea.span10,.uneditable-input.span10{width:596px}input.span9,textarea.span9,.uneditable-input.span9{width:534px}input.span8,textarea.span8,.uneditable-input.span8{width:472px}input.span7,textarea.span7,.uneditable-input.span7{width:410px}input.span6,textarea.span6,.uneditable-input.span6{width:348px}input.span5,textarea.span5,.uneditable-input.span5{width:286px}input.span4,textarea.span4,.uneditable-input.span4{width:224px}input.span3,textarea.span3,.uneditable-input.span3{width:162px}input.span2,textarea.span2,.uneditable-input.span2{width:100px}input.span1,textarea.span1,.uneditable-input.span1{width:38px}}@media(max-width:767px){body{padding-left:20px;padding-right:20px}.navbar-fixed-top,.navbar-fixed-bottom,.navbar-static-top{margin-left:-20px;margin-right:-20px}.container-fluid{padding:0}.dl-horizontal dt{float:none;clear:none;width:auto;text-align:left}.dl-horizontal dd{margin-left:0}.container{width:auto}.row-fluid{width:100%}.row,.thumbnails{margin-left:0}.thumbnails>li{float:none;margin-left:0}[class*=span],.uneditable-input[class*=span],.row-fluid [class*=span]{float:none;display:block;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.span12,.row-fluid .span12{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*=offset]:first-child{margin-left:0}.input-large,.input-xlarge,.input-xxlarge,input[class*=span],select[class*=span],textarea[class*=span],.uneditable-input{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.input-prepend input,.input-append input,.input-prepend input[class*=span],.input-append input[class*=span]{display:inline-block;width:auto}.controls-row [class*=span]+[class*=span]{margin-left:0}.modal{position:fixed;top:20px;left:20px;right:20px;width:auto;margin:0}.modal.fade{top:-100px}.modal.fade.in{top:20px}}@media(max-width:480px){.nav-collapse{-webkit-transform:translate3d(0,0,0)}.page-header h1 small{display:block;line-height:20px}input[type=checkbox],input[type=radio]{border:1px solid #ccc}.form-horizontal .control-label{float:none;width:auto;padding-top:0;text-align:left}.form-horizontal .controls{margin-left:0}.form-horizontal .control-list{padding-top:0}.form-horizontal .form-actions{padding-left:10px;padding-right:10px}.media .pull-left,.media .pull-right{float:none;display:block;margin-bottom:10px}.media-object{margin-right:0;margin-left:0}.modal{top:10px;left:10px;right:10px}.modal-header .close{padding:10px;margin:-10px}.carousel-caption{position:static}}@media(max-width:979px){body{padding-top:0}.navbar-fixed-top,.navbar-fixed-bottom{position:static}.navbar-fixed-top{margin-bottom:20px}.navbar-fixed-bottom{margin-top:20px}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding:5px}.navbar .container{width:auto;padding:0}.navbar .brand{padding-left:10px;padding-right:10px;margin:0 0 0 -5px}.nav-collapse{clear:both}.nav-collapse .nav{float:none;margin:0 0 10px}.nav-collapse .nav>li{float:none}.nav-collapse .nav>li>a{margin-bottom:2px}.nav-collapse .nav>.divider-vertical{display:none}.nav-collapse .nav .nav-header{color:#777;text-shadow:none}.nav-collapse .nav>li>a,.nav-collapse .dropdown-menu a{padding:9px 15px;font-weight:700;color:#777;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.nav-collapse .btn{padding:4px 10px;font-weight:400;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.nav-collapse .dropdown-menu li+li a{margin-bottom:2px}.nav-collapse .nav>li>a:hover,.nav-collapse .nav>li>a:focus,.nav-collapse .dropdown-menu a:hover,.nav-collapse .dropdown-menu a:focus{background-color:#f2f2f2}.navbar-inverse .nav-collapse .nav>li>a,.navbar-inverse .nav-collapse .dropdown-menu a{color:#999}.navbar-inverse .nav-collapse .nav>li>a:hover,.navbar-inverse .nav-collapse .nav>li>a:focus,.navbar-inverse .nav-collapse .dropdown-menu a:hover,.navbar-inverse .nav-collapse .dropdown-menu a:focus{background-color:#111}.nav-collapse.in .btn-group{margin-top:5px;padding:0}.nav-collapse .dropdown-menu{position:static;top:auto;left:auto;float:none;display:none;max-width:none;margin:0 15px;padding:0;background-color:transparent;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.nav-collapse .open>.dropdown-menu{display:block}.nav-collapse .dropdown-menu:before,.nav-collapse .dropdown-menu:after{display:none}.nav-collapse .dropdown-menu .divider{display:none}.nav-collapse .nav>li>.dropdown-menu:before,.nav-collapse .nav>li>.dropdown-menu:after{display:none}.nav-collapse .navbar-form,.nav-collapse .navbar-search{float:none;padding:10px 15px;margin:10px 0;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}.navbar-inverse .nav-collapse .navbar-form,.navbar-inverse .nav-collapse .navbar-search{border-top-color:#111;border-bottom-color:#111}.navbar .nav-collapse .nav.pull-right{float:none;margin-left:0}.nav-collapse,.nav-collapse.collapse{overflow:hidden;height:0}.navbar .btn-navbar{display:block}.navbar-static .navbar-inner{padding-left:10px;padding-right:10px}}@media(min-width:979px+1){.nav-collapse.collapse{height:auto!important;overflow:visible!important}}@media(max-width:767px){div.panel{width:100%!important;padding:0!important}body{padding:0}} \ No newline at end of file diff --git a/app/dash/css/bootstrap.dark.min.css b/app/dash/css/bootstrap.dark.min.css deleted file mode 100644 index be6fa57..0000000 --- a/app/dash/css/bootstrap.dark.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * Bootstrap v2.3.2 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{max-width:100%;width:auto\9;height:auto;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}label,select,button,input[type=button],input[type=reset],input[type=submit],input[type=radio],input[type=checkbox]{cursor:pointer}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}@media print{*{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#bbbfc2;background-color:#161616}a{color:#f2f2f2;text-decoration:none}a:hover,a:focus{color:#fff;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0}.row:after{clear:both}[class*=span]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0}.row-fluid:after{clear:both}.row-fluid [class*=span]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.127659574468085%;*margin-left:2.074468085106383%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .controls-row [class*=span]+[class*=span]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*=span].hide,.row-fluid [class*=span].hide{display:none}[class*=span].pull-right,.row-fluid [class*=span].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;content:"";line-height:0}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;content:"";line-height:0}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:700}em{font-style:italic}cite{font-style:normal}.muted{color:#adafae}a.muted:hover,a.muted:focus{color:#939695}.text-warning{color:#a47e3c}a.text-warning:hover,a.text-warning:focus{color:#7f612e}.text-error{color:#b94a48}a.text-error:hover,a.text-error:focus{color:#953b39}.text-info{color:#09c}a.text-info:hover,a.text-info:focus{color:#007399}.text-success{color:#468847}a.text-success:hover,a.text-success:focus{color:#356635}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:700;line-height:20px;color:#fff;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:400;line-height:1;color:#adafae}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #bbbfc2}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;*zoom:1;padding-left:5px;padding-right:5px}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:700}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;content:"";line-height:0}.dl-horizontal:after{clear:both}.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}hr{margin:20px 0;border:0;border-top:1px solid #303030;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #adafae}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #bbbfc2}blockquote p{margin-bottom:0;font-size:17.5px;font-weight:300;line-height:1.25}blockquote small{display:block;line-height:20px;color:#adafae}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #bbbfc2;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:12px;color:#303030;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8;white-space:nowrap}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#303030;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#adafae}label,input,button,select,textarea{font-size:14px;font-weight:400;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#000;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:middle}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{background-color:#4a4a4a;border:1px solid #636363;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type=text]:focus,input[type=password]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=week]:focus,input[type=number]:focus,input[type=email]:focus,input[type=url]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)}input[type=radio],input[type=checkbox]{margin:4px 0 0;*margin-top:0;margin-top:1px \9;line-height:normal}input[type=file],input[type=image],input[type=submit],input[type=reset],input[type=button],input[type=radio],input[type=checkbox]{width:auto}select,input[type=file]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;border:1px solid #636363;background-color:#4a4a4a}select[multiple],select[size]{height:auto}select:focus,input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#adafae;background-color:#474747;border-color:#636363;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);box-shadow:inset 0 1px 2px rgba(0,0,0,.025);cursor:not-allowed}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#788086}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#788086}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#788086}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type=radio],.checkbox input[type=checkbox]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*=span],select[class*=span],textarea[class*=span],.uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span]{float:none;margin-left:0}.input-append input[class*=span],.input-append .uneditable-input[class*=span],.input-prepend input[class*=span],.input-prepend .uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span],.row-fluid .input-prepend [class*=span],.row-fluid .input-append [class*=span]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*=span]+[class*=span]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;content:"";line-height:0}.controls-row:after{clear:both}.controls-row [class*=span],.row-fluid .controls-row [class*=span]{float:left}.controls-row .checkbox[class*=span],.controls-row .radio[class*=span]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#555}input[type=radio][disabled],input[type=checkbox][disabled],input[type=radio][readonly],input[type=checkbox][readonly]{background-color:transparent}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#a47e3c}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#a47e3c}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#7f612e;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#a47e3c;background-color:#bbbfc2;border-color:#a47e3c}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#bbbfc2;border-color:#b94a48}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#bbbfc2;border-color:#468847}.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#09c}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#09c}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#09c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#007399;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#09c;background-color:#bbbfc2;border-color:#09c}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:transparent;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;content:"";line-height:0}.form-actions:after{clear:both}.help-block,.help-inline{color:#e3e5e6}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding-left:5px}.input-append,.input-prepend{display:inline-block;margin-bottom:10px;vertical-align:middle;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu,.input-append .popover,.input-prepend .popover{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:400;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#bbbfc2;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#bf3;border-color:#690}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;*zoom:1;margin-bottom:0;vertical-align:middle}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type=radio],.form-search .checkbox input[type=checkbox],.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;content:"";line-height:0}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #303030}.table th{font-weight:700}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #303030}.table .table{background-color:#161616}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #303030;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.table-bordered th,.table-bordered td{border-left:1px solid #303030}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:rgba(100,100,100,.3)}.table-hover tbody tr:hover>td,.table-hover tbody tr:hover>th{background-color:#303030}table td[class*=span],table th[class*=span],.row-fluid table td[class*=span],.row-fluid table th[class*=span]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success>td{background-color:#bbbfc2}.table tbody tr.error>td{background-color:#bbbfc2}.table tbody tr.warning>td{background-color:#bbbfc2}.table tbody tr.info>td{background-color:#bbbfc2}.table-hover tbody tr.success:hover>td{background-color:#aeb2b6}.table-hover tbody tr.error:hover>td{background-color:#aeb2b6}.table-hover tbody tr.warning:hover>td{background-color:#aeb2b6}.table-hover tbody tr.info:hover>td{background-color:#aeb2b6}[class^=icon-],[class*=" icon-"]{display:inline-block;width:14px;height:14px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url(../img/glyphicons-halflings.png);background-position:14px 14px;background-repeat:no-repeat;margin-top:1px}.icon-white,.nav-pills>.active>a>[class^=icon-],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^=icon-],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^=icon-],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^=icon-],.dropdown-menu>li>a:focus>[class^=icon-],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>li>a:focus>[class*=" icon-"],.dropdown-menu>.active>a>[class^=icon-],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^=icon-],.dropdown-submenu:focus>a>[class^=icon-],.dropdown-submenu:hover>a>[class*=" icon-"],.dropdown-submenu:focus>a>[class*=" icon-"]{background-image:url(../img/glyphicons-halflings-white.png)}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{background-position:-216px -120px;width:16px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px;width:16px}.icon-folder-open{background-position:-408px -120px;width:16px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#303030;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:transparent;border-bottom:1px solid #222}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:20px;color:#bbbfc2;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{text-decoration:none;color:#fff;background-color:#2ab2e4;background-image:-moz-linear-gradient(top,#33b5e5,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#33b5e5),to(#1dade2));background-image:-webkit-linear-gradient(top,#33b5e5,#1dade2);background-image:-o-linear-gradient(top,#33b5e5,#1dade2);background-image:linear-gradient(to bottom,#33b5e5,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff33b5e5', endColorstr='#ff1dade2', GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#2ab2e4;background-image:-moz-linear-gradient(top,#33b5e5,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#33b5e5),to(#1dade2));background-image:-webkit-linear-gradient(top,#33b5e5,#1dade2);background-image:-o-linear-gradient(top,#33b5e5,#1dade2);background-image:linear-gradient(to bottom,#33b5e5,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff33b5e5', endColorstr='#ff1dade2', GradientType=0)}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#adafae}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:default}.open{*z-index:1000}.open>.dropdown-menu{display:block}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px;-moz-border-radius:0 6px 6px;border-radius:0 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#000;margin-top:5px;margin-right:-10px}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-left:20px;padding-right:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#131517;border:1px solid #030303;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-large{padding:24px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well-small{padding:9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:700;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;*zoom:1;padding:4px 12px;margin-bottom:0;font-size:14px;line-height:20px;text-align:center;vertical-align:middle;cursor:pointer;color:#303030;text-shadow:0 1px 1px rgba(255,255,255,.75);background-color:#9ea09f;background-image:-moz-linear-gradient(top,#adafae,#868988);background-image:-webkit-gradient(linear,0 0,0 100%,from(#adafae),to(#868988));background-image:-webkit-linear-gradient(top,#adafae,#868988);background-image:-o-linear-gradient(top,#adafae,#868988);background-image:linear-gradient(to bottom,#adafae,#868988);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffadafae', endColorstr='#ff868988', GradientType=0);border-color:#868988 #868988 #606362;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#868988;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border:1px solid #bbb;*border:0;border-bottom-color:#a2a2a2;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*margin-left:.3em;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#303030;background-color:#868988;*background-color:#797d7b}.btn:active,.btn.active{background-color:#6d706e \9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#303030;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.btn-large [class^=icon-],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-small [class^=icon-],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^=icon-],.btn-mini [class*=" icon-"]{margin-top:-1px}.btn-mini{padding:0 6px;font-size:10.5px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,.75)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#38b7e5;background-image:-moz-linear-gradient(top,#4abde8,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#4abde8),to(#1dade2));background-image:-webkit-linear-gradient(top,#4abde8,#1dade2);background-image:-o-linear-gradient(top,#4abde8,#1dade2);background-image:linear-gradient(to bottom,#4abde8,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff4abde8', endColorstr='#ff1dade2', GradientType=0);border-color:#1dade2 #1dade2 #14799e;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#1dade2;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#1dade2;*background-color:#1a9bcb}.btn-primary:active,.btn-primary.active{background-color:#178ab4 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#f58a0f;background-image:-moz-linear-gradient(top,#ff941a,#e67a00);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ff941a),to(#e67a00));background-image:-webkit-linear-gradient(top,#ff941a,#e67a00);background-image:-o-linear-gradient(top,#ff941a,#e67a00);background-image:linear-gradient(to bottom,#ff941a,#e67a00);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff941a', endColorstr='#ffe67a00', GradientType=0);border-color:#e67a00 #e67a00 #995200;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#e67a00;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#e67a00;*background-color:#cc6d00}.btn-warning:active,.btn-warning.active{background-color:#b35f00 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#d10000;background-image:-moz-linear-gradient(top,#e60000,#b30000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#e60000),to(#b30000));background-image:-webkit-linear-gradient(top,#e60000,#b30000);background-image:-o-linear-gradient(top,#e60000,#b30000);background-image:linear-gradient(to bottom,#e60000,#b30000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe60000', endColorstr='#ffb30000', GradientType=0);border-color:#b30000 #b30000 #600;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#b30000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#b30000;*background-color:#900}.btn-danger:active,.btn-danger.active{background-color:maroon \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#699e00;background-image:-moz-linear-gradient(top,#77b300,#558000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#77b300),to(#558000));background-image:-webkit-linear-gradient(top,#77b300,#558000);background-image:-o-linear-gradient(top,#77b300,#558000);background-image:linear-gradient(to bottom,#77b300,#558000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff77b300', endColorstr='#ff558000', GradientType=0);border-color:#558000 #558000 #230;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#558000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#558000;*background-color:#460}.btn-success:active,.btn-success.active{background-color:#334d00 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#993dc7;background-image:-moz-linear-gradient(top,#a347d1,#8a2eb8);background-image:-webkit-gradient(linear,0 0,0 100%,from(#a347d1),to(#8a2eb8));background-image:-webkit-linear-gradient(top,#a347d1,#8a2eb8);background-image:-o-linear-gradient(top,#a347d1,#8a2eb8);background-image:linear-gradient(to bottom,#a347d1,#8a2eb8);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffa347d1', endColorstr='#ff8a2eb8', GradientType=0);border-color:#8a2eb8 #8a2eb8 #5c1f7a;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#8a2eb8;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#8a2eb8;*background-color:#7a29a3}.btn-info:active,.btn-info.active{background-color:#6b248f \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#080808;background-image:-moz-linear-gradient(top,#0d0d0d,#000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#0d0d0d),to(#000));background-image:-webkit-linear-gradient(top,#0d0d0d,#000);background-image:-o-linear-gradient(top,#0d0d0d,#000);background-image:linear-gradient(to bottom,#0d0d0d,#000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0d0d0d', endColorstr='#ff000000', GradientType=0);border-color:#000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#000;*background-color:#000}.btn-inverse:active,.btn-inverse.active{background-color:#000 \9}button.btn,input[type=submit].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type=submit].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type=submit].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type=submit].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type=submit].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{border-color:transparent;cursor:pointer;color:#f2f2f2;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover,.btn-link:focus{color:#fff;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#303030;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*zoom:1;font-size:0;vertical-align:middle;white-space:nowrap;*margin-left:.3em}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{font-size:0;margin-top:10px;margin-bottom:10px}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);*padding-top:5px;*padding-bottom:5px}.btn-group>.btn-mini+.dropdown-toggle{padding-left:5px;padding-right:5px;*padding-top:2px;*padding-bottom:2px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{padding-left:12px;padding-right:12px;*padding-top:7px;*padding-bottom:7px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-group.open .btn.dropdown-toggle{background-color:#868988}.btn-group.open .btn-primary.dropdown-toggle{background-color:#1dade2}.btn-group.open .btn-warning.dropdown-toggle{background-color:#e67a00}.btn-group.open .btn-danger.dropdown-toggle{background-color:#b30000}.btn-group.open .btn-success.dropdown-toggle{background-color:#558000}.btn-group.open .btn-info.dropdown-toggle{background-color:#8a2eb8}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#000}.btn .caret{margin-top:8px;margin-left:0}.btn-large .caret{margin-top:6px}.btn-large .caret{border-left-width:5px;border-right-width:5px;border-top-width:5px}.btn-mini .caret,.btn-small .caret{margin-top:8px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-left:0;margin-top:-1px}.btn-group-vertical>.btn:first-child{-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,.5);background-color:#bbbfc2;border:1px solid transparent;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.alert,.alert h4{color:#a47e3c}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{background-color:#bbbfc2;border-color:#aeb4b6;color:#468847}.alert-success h4{color:#468847}.alert-danger,.alert-error{background-color:#bbbfc2;border-color:#b3b9bb;color:#b94a48}.alert-danger h4,.alert-error h4{color:#b94a48}.alert-info{background-color:#bbbfc2;border-color:#a8afb1;color:#09c}.alert-info h4{color:#09c}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-left:0;margin-bottom:20px;list-style:none}.nav>li>a{display:block}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#bbbfc2}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:700;line-height:20px;color:#adafae;text-shadow:0 1px 0 rgba(255,255,255,.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-left:15px;padding-right:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-left:-15px;margin-right:-15px;text-shadow:0 1px 0 rgba(255,255,255,.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.2);background-color:#f2f2f2}.nav-list [class^=icon-],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;content:"";line-height:0}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#bbbfc2 #bbbfc2 #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#bbb;background-color:#161616;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#f2f2f2}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{border-color:#ddd;z-index:2}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{border-top-color:#f2f2f2;border-bottom-color:#f2f2f2;margin-top:6px}.nav .dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#bbb;border-bottom-color:#bbb}.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#adafae;border-color:#adafae}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav li.dropdown.open a:focus .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover,.tabs-stacked .open>a:focus{border-color:#adafae}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;content:"";line-height:0}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-bottom-color:transparent;border-top-color:#ddd}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#bbbfc2 #ddd #bbbfc2 #bbbfc2}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#bbbfc2 #bbbfc2 #bbbfc2 #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#adafae}.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;background-color:transparent;cursor:default}.navbar{overflow:visible;margin-bottom:20px;*position:relative;*z-index:2}.navbar-inner{min-height:50px;padding-left:20px;padding-right:20px;background-color:#1f1f1f;background-image:-moz-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#1f1f1f),to(#1f1f1f));background-image:-webkit-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:-o-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:linear-gradient(to bottom,#1f1f1f,#1f1f1f);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1f1f1f', endColorstr='#ff1f1f1f', GradientType=0);border:1px solid #000;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,.065);box-shadow:0 1px 4px rgba(0,0,0,.065);*zoom:1}.navbar-inner:before,.navbar-inner:after{display:table;content:"";line-height:0}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{float:left;display:block;padding:15px 20px;margin-left:-20px;font-size:20px;font-weight:200;color:#adafae;text-shadow:0 1px 0 #1f1f1f}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}.navbar-text{margin-bottom:0;line-height:50px;color:#adafae}.navbar-link{color:#adafae}.navbar-link:hover,.navbar-link:focus{color:#fff}.navbar .divider-vertical{height:50px;margin:0 9px;border-left:1px solid #1f1f1f;border-right:1px solid #1f1f1f}.navbar .btn,.navbar .btn-group{margin-top:10px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append .btn-group{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;content:"";line-height:0}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:10px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type=image],.navbar-form input[type=checkbox],.navbar-form input[type=radio]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:10px;margin-bottom:0}.navbar-search .search-query{margin-bottom:0;padding:4px 14px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:400;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-left:0;padding-right:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);box-shadow:0 1px 10px rgba(0,0,0,.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,.1);box-shadow:0 -1px 10px rgba(0,0,0,.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:15px;color:#adafae;text-decoration:none;text-shadow:0 1px 0 #1f1f1f}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{background-color:transparent;color:#fff;text-decoration:none}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#fff;text-decoration:none;background-color:#1f1f1f;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);box-shadow:inset 0 3px 8px rgba(0,0,0,.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-left:5px;margin-right:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#121212;background-image:-moz-linear-gradient(top,#121212,#121212);background-image:-webkit-gradient(linear,0 0,0 100%,from(#121212),to(#121212));background-image:-webkit-linear-gradient(top,#121212,#121212);background-image:-o-linear-gradient(top,#121212,#121212);background-image:linear-gradient(to bottom,#121212,#121212);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff121212', endColorstr='#ff121212', GradientType=0);border-color:#121212 #121212 #000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#121212;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#121212;*background-color:#050505}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#000 \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 1px 0 rgba(0,0,0,.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:9px}.navbar .nav>li>.dropdown-menu:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #303030;position:absolute;top:-6px;left:10px}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{border-top:7px solid #ccc;border-top-color:rgba(0,0,0,.2);border-bottom:0;bottom:-7px;top:auto}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{border-top:6px solid #303030;border-bottom:0;bottom:-6px;top:auto}.navbar .nav li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{background-color:#1f1f1f;color:#fff}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#adafae;border-bottom-color:#adafae}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{left:auto;right:0}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{left:auto;right:12px}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{left:auto;right:13px}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{left:auto;right:100%;margin-left:0;margin-right:-1px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{background-color:#252a30;background-image:-moz-linear-gradient(top,#252a30,#252a30);background-image:-webkit-gradient(linear,0 0,0 100%,from(#252a30),to(#252a30));background-image:-webkit-linear-gradient(top,#252a30,#252a30);background-image:-o-linear-gradient(top,#252a30,#252a30);background-image:linear-gradient(to bottom,#252a30,#252a30);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff252a30', endColorstr='#ff252a30', GradientType=0);border-color:transparent}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#adafae;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse .nav>li>a:focus{color:#fff}.navbar-inverse .brand{color:#adafae}.navbar-inverse .navbar-text{color:#adafae}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{background-color:#242a31;color:#fff}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#242a31}.navbar-inverse .navbar-link{color:#adafae}.navbar-inverse .navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}.navbar-inverse .divider-vertical{border-left-color:#252a30;border-right-color:#252a30}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#242a31;color:#fff}.navbar-inverse .nav li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#adafae;border-bottom-color:#adafae}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#5d6978;border-color:#252a30;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#303030;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);-moz-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15);outline:0}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#1a1d22;background-image:-moz-linear-gradient(top,#1a1d22,#1a1d22);background-image:-webkit-gradient(linear,0 0,0 100%,from(#1a1d22),to(#1a1d22));background-image:-webkit-linear-gradient(top,#1a1d22,#1a1d22);background-image:-o-linear-gradient(top,#1a1d22,#1a1d22);background-image:linear-gradient(to bottom,#1a1d22,#1a1d22);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1a1d22', endColorstr='#ff1a1d22', GradientType=0);border-color:#1a1d22 #1a1d22 #000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#1a1d22;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#1a1d22;*background-color:#0f1113}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#040405 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.breadcrumb>li{display:inline-block;*display:inline;*zoom:1;text-shadow:0 1px 0 #fff}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}.breadcrumb>.active{color:#adafae}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;*zoom:1;margin-left:0;margin-bottom:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#161616;border:1px solid transparent;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#33b5e5}.pagination ul>.active>a,.pagination ul>.active>span{color:#adafae;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>a:focus{color:#adafae;background-color:transparent;cursor:default}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-top-left-radius:2px;-moz-border-radius-topleft:2px;border-top-left-radius:2px;-webkit-border-bottom-left-radius:2px;-moz-border-radius-bottomleft:2px;border-bottom-left-radius:2px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:2px;-moz-border-radius-topright:2px;border-top-right-radius:2px;-webkit-border-bottom-right-radius:2px;-moz-border-radius-bottomright:2px;border-bottom-right-radius:2px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:10.5px}.pager{margin:20px 0;list-style:none;text-align:center;*zoom:1}.pager:before,.pager:after{display:table;content:"";line-height:0}.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;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#adafae;background-color:#fff;cursor:default}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:absolute;z-index:1050;width:100%;background-color:#fff;-webkit-box-shadow:0 3px 7px rgba(0,0,0,.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,.3);box-shadow:0 3px 7px rgba(0,0,0,.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;outline:0}.modal.fade{-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out;top:-25%}.modal.fade.in{top:10%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{position:relative;overflow-y:auto;padding:15px}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;*zoom:1}.modal-footer:before,.modal-footer:after{display:table;content:"";line-height:0}.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}.tooltip{position:absolute;z-index:1020;display:block;visibility:visible;font-size:11px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.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:8px;color:#fff;text-align:center;text-decoration:none;background-color:#303030;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.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:#303030}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#303030}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#303030}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#303030}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#303030;-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.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;font-weight:400;line-height:18px;background-color:#303030;border-bottom:1px solid #232323;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-title:empty{display:none}.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{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.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{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.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{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.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{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;content:"";line-height:0}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,.055);box-shadow:0 1px 3px rgba(0,0,0,.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover,a.thumbnail:focus{border-color:#f2f2f2;-webkit-box-shadow:0 1px 4px rgba(0,105,214,.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,.25);box-shadow:0 1px 4px rgba(0,105,214,.25)}.thumbnail>img{display:block;max-width:100%;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#bbb}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:700;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#adafae}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-left:9px;padding-right:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f80}.label-warning[href],.badge-warning[href]{background-color:#cc6d00}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#09c}.label-info[href],.badge-info[href]{background-color:#007399}.label-inverse,.badge-inverse{background-color:#303030}.label-inverse[href],.badge-inverse[href]{background-color:#161616}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.progress .bar{width:0;height:100%;color:#fff;float:left;font-size:12px;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#ff9d2e;background-image:-moz-linear-gradient(top,#ffac4d,#f80);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ffac4d),to(#f80));background-image:-webkit-linear-gradient(top,#ffac4d,#f80);background-image:-o-linear-gradient(top,#ffac4d,#f80);background-image:linear-gradient(to bottom,#ffac4d,#f80);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffac4d', endColorstr='#ffff8800', GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#ffac4d;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{overflow:hidden;width:100%;position:relative}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;line-height:1}.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:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#1f1f1f;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{left:auto;right:15px}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none}.carousel-indicators li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,.25);border-radius:5px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;left:0;right:0;bottom:0;padding:15px;background:#303030;background:rgba(0,0,0,.75)}.carousel-caption h4,.carousel-caption p{color:#fff;line-height:20px}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#303030;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;color:inherit;letter-spacing:-1px}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}label,input,button,select,textarea,.navbar .search-query:-moz-placeholder,.navbar .search-query::-webkit-input-placeholder{font-family:'Droid Sans',sans-serif;color:#bbb}blockquote{border-left:5px solid #303030}blockquote.pull-right{border-right:5px solid #303030}html{min-height:100%}body{min-height:100%;background:#161616}.page-header{border-bottom:1px solid #303030}hr{border-bottom:0}.navbar .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.navbar .brand{padding:15px 20px;color:#bbbfc2;font-weight:400;text-shadow:none}.navbar .nav>li>a{padding:15px 15px 14px;border-bottom:1px solid transparent}.navbar .nav>li>a:hover,.navbar .nav>.active>a,.navbar .nav>.active>a:hover{border-bottom:1px solid #33b5e5}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.navbar .navbar-text{margin-bottom:1px;padding:15px 15px 14px;line-height:inherit}.navbar .divider-vertical{margin:0;border-left:1px solid #303030;border-right-width:0}.navbar .search-query,.navbar .search-query:focus,.navbar .search-query.focused{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;background-color:#303030;line-height:normal;color:#adafae;text-shadow:none}.navbar .search-query:-moz-placeholder,.navbar .search-query:focus:-moz-placeholder,.navbar .search-query.focused:-moz-placeholder{color:#bbb}.navbar .search-query:-ms-input-placeholder,.navbar .search-query:focus:-ms-input-placeholder,.navbar .search-query.focused:-ms-input-placeholder{color:#bbb}.navbar .search-query::-webkit-input-placeholder,.navbar .search-query:focus::-webkit-input-placeholder,.navbar .search-query.focused::-webkit-input-placeholder{color:#bbb}@media(max-width:979px){.navbar .nav-collapse .nav li>a{border:0;color:#bbbfc2;font-weight:400;text-shadow:none}.navbar .nav-collapse .nav li>a:hover{border:0;background-color:#33b5e5}.navbar .nav-collapse .nav .active>a{border:0;background-color:#33b5e5}.navbar .nav-collapse .dropdown-menu a:hover{background-color:#33b5e5}.navbar .nav-collapse .navbar-form,.navbar .nav-collapse .navbar-search{border-top:0;border-bottom:0}.navbar .nav-collapse .nav-header{color:rgba(128,128,128,.6)}.navbar-inverse .nav-collapse .nav li>a:hover{background-color:#111}.navbar-inverse .nav-collapse .nav .active>a{background-color:#111}.navbar-inverse .nav-collapse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav-collapse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav-collapse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#111}}.dropdown-menu{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}div.subnav{margin:0 1px;background-color:#1f1f1f;background-image:none;border:0;border-bottom:1px solid #303030}div.subnav .nav>li>a,div.subnav .nav>li:first-child>a,div.subnav .nav>li:first-child>a:hover{padding:11px 12px;border:0;background-color:#1f1f1f;color:#adafae}div.subnav .nav>li>a:hover,div.subnav .nav>li.active>a,div.subnav .nav>li.active>a:hover,div.subnav .nav>li:first-child>a:hover{padding:11px 12px;background:transparent;border:0;border-bottom:1px solid #33b5e5;color:#fff}div.subnav .nav li.nav-header{text-shadow:none}div.subnav-fixed{top:50px;margin:0}.nav-tabs{border-bottom:1px solid #303030}.nav-tabs>li>a{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs li>a:hover,.nav-tabs li.active>a,.nav-tabs li.active>a:hover{border-color:transparent;background-color:#33b5e5;color:#fff}.nav-tabs li.disabled>a{color:#bbbfc2}.nav-tabs .open .dropdown-toggle{background-color:#060606;border-color:transparent}.nav-pills li>a:hover{background-color:#33b5e5;color:#fff}.nav-pills li.disabled>a{color:#bbbfc2}.nav-pills .open .dropdown-toggle{background-color:#060606}.nav-pills .dropdown-menu li>a:hover{border:0}.nav-list li>a{text-shadow:none}.nav-list li>a:hover{background-color:#33b5e5;color:#fff}.nav-list .nav-header{text-shadow:none}.nav-list .divider{background-color:transparent;border-bottom:1px solid #303030}.nav-stacked li>a{border:1px solid #303030!important}.nav-stacked li>a:hover,.nav-stacked li.active>a{background-color:#33b5e5;color:#fff}.tabbable .nav-tabs,.tabbable .nav-tabs li.active>a{border-color:#303030}.breadcrumb{background-color:transparent;background-image:none;border-width:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:14px}.breadcrumb li{text-shadow:none}.breadcrumb li>a{color:#33b5e5;text-shadow:none}.pagination ul{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>span,.pagination ul>.disabled>span:hover{background-color:rgba(0,0,0,.2)}.pager li>a,.pager li>span{background-color:#161616;border:0}.pager li>a:hover,.pager li>span:hover{background-color:#33b5e5}.pager .disabled a,.pager .disabled a:hover{background-color:#161616}.btn{padding:5px 12px;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;text-shadow:none}.btn.disabled{box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-large{padding:22px 30px}.btn-small{padding:2px 10px}.btn-mini{padding:2px 6px}.btn-group>.btn:first-child,.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.dropdown-toggle{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}input,textarea,select{border-width:2px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{color:#adafae}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly],.uneditable-input{border-color:#444}input:focus,textarea:focus,input.focused,textarea.focused{border-color:#52a8ec;outline:0;outline:thin dotted \9}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus,select:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}legend,label{color:#bbbfc2;border-bottom:0 solid #222}.form-actions{border-top:1px solid #222}.table{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.table tbody tr.success td{background-color:#690;color:#fff}.table tbody tr.error td{background-color:#c00;color:#fff}.table tbody tr.info td{background-color:#33b5e5;color:#fff}.alert,.alert .alert-heading,.alert-success,.alert-success .alert-heading,.alert-danger,.alert-error,.alert-danger .alert-heading,.alert-error .alert-heading,.alert-info,.alert-info .alert-heading{color:#bbbfc2;text-shadow:none;border:0}.label{color:#bbbfc2}.badge{border-radius:0;font-weight:200}.label,.alert{background-color:#888}.label:hover{background-color:#6e6e6e}.label-important,.alert-danger,.alert-error{background-color:#c00}.label-important:hover{background-color:#900}.label-warning{background-color:#cc6d00}.label-warning:hover{background-color:#995200}.label-success,.alert-success{background-color:#5c8a00}.label-success:hover{background-color:#3a5700}.label-info,.alert-info{background-color:#007399}.label-info:hover{background-color:#004d66}a:hover{text-decoration:none}.well,.hero-unit{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.well,.hero-unit{border-top:solid 1px #3d3d3d;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.8);-moz-box-shadow:0 2px 4px rgba(0,0,0,.8);box-shadow:0 2px 4px rgba(0,0,0,.8)}.thumbnail{border-color:#303030}.progress{background-color:#060606;background-image:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.modal{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border-top:solid 1px #3d3d3d;background-color:#303030}.modal-header{border-bottom:1px solid #303030}.modal-footer{background-color:#303030;border-top:1px solid #303030;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.popover{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.popover-title{border-bottom:0;color:#fff}.footer{border-top:1px solid #303030}@media(max-width:767px){div.panel{width:100%!important;padding:0!important}}.container-fluid{padding-left:0;padding-right:0}.container.grafana-container{padding:5px 10px;width:100%;box-sizing:border-box}.bgNav{background:#1f1f1f}.bgPrimary{background:#4abde8;color:rgba(255,255,255,.9)}.bgInfo{background:#a347d1;color:rgba(255,255,255,.9)}.bgSuccess{background:#77b300;color:rgba(255,255,255,.9)}.bgWarning{background:#ff941a;color:rgba(255,255,255,.9)}.bgDanger{background:#e60000;color:rgba(255,255,255,.9)}.bgInverse{background:#0d0d0d;color:rgba(255,255,255,.9)}code,pre{background-color:#bbbfc2}.panel{display:inline-table;vertical-align:top}.panel-container{padding:0;background:#1f1f1f;margin:5px}.panel-content{padding:0 10px 5px}.panel-title{border:0;font-weight:700}.panel-loading{position:absolute;top:0;right:4px;z-index:800}.panel div.panel-extra div.panel-extra-container{margin-right:-10px;margin-top:3px;text-align:center}.panel div.panel-extra div.panel-extra-container ul{text-align:left}.panel div.panel-extra{font-size:.9em;margin-bottom:0}.panel div.panel-extra .extra{float:right!important}.panel-error{color:#fff;padding:5px 10px 0}.panel-error-inspector-link{float:right;margin-right:10px}div.editor-row{vertical-align:top}div.editor-row div.section{margin-right:20px;vertical-align:top;display:inline-block}div.editor-option{vertical-align:top;display:inline-block;margin-right:10px}div.editor-option label{display:block}#events{font-size:12px}.version{font-size:85%}.legend{color:#000}div.fake-input{background-color:#4a4a4a;border:1px solid #636363;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}hr.small{margin:5px 0}form input.ng-invalid{color:#b94a48}.editor-title{margin-right:10px;font-size:1.7em;font-weight:700;text-transform:capitalize}.editor-title small{opacity:.5;font-size:.7em;font-weight:400}.bordered{border:1px solid #303030}.table-unpadded th,.table-unpadded td{padding:0 2px}.spy{position:absolute;right:0;top:0}.navbar-inner{border-width:0}.kibana-row{margin-bottom:5px}.row-tab .dropdown-menu-right{top:0;left:33px}.row-tab-button{padding:0;cursor:pointer;vertical-align:middle;width:30px;height:30px;text-align:center;display:inline-block;line-height:30px}.row-button{width:30px;text-align:center;float:left;cursor:pointer}.row-text{white-space:nowrap;text-transform:uppercase;font-weight:700;font-size:.9em;margin:0 10px}.row-close{padding:0;margin:0;min-height:30px!important;line-height:30px;background:#1f1f1f}.row-open{margin-top:5px;left:-34px;position:absolute;z-index:100;transition:.25s left;transition-delay:.25s;-webkit-transition-delay:.25s}.row-open:hover{left:-12px}.odd{background-color:rgba(100,100,100,.3)}.nomargin{margin:0}[ng\:cloak],[ng-cloak],.ng-cloak{display:none!important}.table tbody+tbody{border-top:0}.ui-draggable-dragging{display:block;z-index:9999}.dragInProgress .panel-container{border:3px solid rgba(100,100,100,.5)}.link{color:#f2f2f2;cursor:pointer}.link:hover{color:#fff}.pointer{cursor:pointer}.popover{max-width:480px}.modal{width:100%;top:0!important}.tiny{font-size:50%}.smaller{font-size:70%}.small{font-size:85%}.large{font-size:120%}.strong{font-weight:700}a{cursor:pointer}.normal{font-weight:400}.light{font-weight:200}.input-smaller{width:75px}.string{color:#c8ccce}.number{color:#00ace6}.boolean{color:#b78c43}.key{color:#c05c5a}.btn-active{background-color:#e6e6e6;background-image:none;box-shadow:0 2px 4px rgba(0,0,0,.15) inset,0 1px 2px rgba(0,0,0,.05);outline:0 none}.remove:hover{background-color:#b30000}.faded{opacity:.2}div.flot-text{color:#bbbfc2!important}.dashboard-notice{z-index:8000;margin-left:0;padding:3px 0;width:100%;padding-left:20px;color:#fff}.alert-warning{background-color:#bbbfc2;border-color:transparent;color:#a47e3c}.popover.topLeft{margin-top:-10px}.popover.topLeft .arrow{bottom:-10px;left:25%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#303030}.popover.topLeft .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.topRight{margin-top:-10px}.popover.topRight .arrow{bottom:-10px;left:75%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#303030}.popover.topRight .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.rightTop .arrow{top:10%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightTop .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.popover.rightBottom .arrow{top:90%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightBottom .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.popover.bottomLeft .arrow{left:10%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottomLeft .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.popover.bottomRight .arrow{left:90%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottomRight .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.popover.leftTop .arrow{top:10%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftTop .arrow:after{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.popover.leftBottom .arrow{top:90%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftBottom .arrow:after{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.popover.topLeft .arrow{left:10%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.topLeft .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.popover.topRight .arrow{left:90%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.topRight .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.label-tag{background-color:#93c;color:#f2f2f2}.label-tag:hover{background-color:#7a29a3;color:#fff}.annotation-editor-table td{white-space:nowrap}.save-dashboard-dropdown{padding:10px}.save-dashboard-dropdown li>a{padding-left:5px}.save-dashboard-dropdown-save-form{margin-bottom:5px}.inspector-request-table td{padding:5px}.inspector-request-table td:first-child{white-space:nowrap}code,pre{background-color:#1f1f1f;color:#bbbfc2}.submenu-controls{background:#292929;font-size:inherit}.submenu-controls label{margin:0;padding-right:4px;display:inline}.submenu-controls input[type=checkbox]{margin:0}.submenu-controls-visible:not(.hide-controls) .panel-fullscreen{top:82px}.submenu-panel{padding:0 4px 0 8px;border-right:1px solid #202020;float:left}.submenu-panel:first-child{padding-left:17px}.submenu-panel-title{float:left;text-transform:uppercase;padding:4px 10px 3px 0}.submenu-panel-wrapper{float:left}.submenu-toggle{padding:4px 0 3px 8px;float:left}.submenu-toggle .annotation-color-icon{position:relative;top:2px}.submenu-toggle:first-child{padding-left:0}.submenu-control-edit{padding:4px 4px 3px 8px;float:right;border-left:1px solid #202020;margin-left:8px}.annotation-disabled,.annotation-disabled a{color:#788086}.filtering-container{float:left}.filtering-container label{float:left}.filtering-container input[type=checkbox]{margin:0}.filter-panel-filter{display:inline-block;vertical-align:top;padding:4px 10px 3px;border-right:1px solid #202020}.filter-panel-filter:first-child{padding-left:0}.filter-panel-filter ul{margin-bottom:0}.filter-deselected{opacity:.5}.filtering-container .filter-action{float:right;padding-right:2px;margin-bottom:0!important;margin-left:0;margin-top:4px}.add-filter-action{padding:3px 5px 0;position:relative;top:4px}.filter-mandate{text-decoration:underline;cursor:pointer}.filter-apply{float:right}.bootstrap-tagsinput{display:inline-block;padding:4px 6px;margin-bottom:10px;color:#555;vertical-align:middle;border-radius:4px;max-width:100%;line-height:22px;background-color:#4a4a4a;border:1px solid #636363;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.bootstrap-tagsinput input{border:0;box-shadow:none;outline:0;background-color:transparent;padding:0;padding-left:5px;margin:0;width:auto!important;max-width:inherit}.bootstrap-tagsinput input:focus{border:0;box-shadow:none}.bootstrap-tagsinput .tag{margin-right:2px;color:#fff}.bootstrap-tagsinput .tag [data-role=remove]{margin-left:8px;cursor:pointer}.bootstrap-tagsinput .tag [data-role=remove]:after{content:"x";padding:0 2px}.bootstrap-tagsinput .tag [data-role=remove]:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.bootstrap-tagsinput .tag [data-role=remove]:hover:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.hide-controls{padding:0}.hide-controls .grafana-row{display:none}.hide-controls .submenu-controls{display:none}.hide-controls .add-row-panel-hint{display:none}.playlist-active .grafana-menu-zoom-out,.playlist-active .grafana-menu-save,.playlist-active .grafana-menu-load,.playlist-active .add-row-panel-hint,.playlist-active .grafana-menu-home,.playlist-active .grafana-menu-refresh,.playlist-active .grafana-menu-edit{display:none}.playlist-active .grafana-menu-stop-playlist{display:list-item}.grafana-search-panel{padding:6px 10px}.grafana-search-panel .search-field-wrapper input{width:100%}.grafana-search-panel .search-field-wrapper button{margin:0 2px 0 0}.grafana-search-panel .search-field-wrapper>span{display:block;overflow:hidden;padding-right:25px}.grafana-search-panel .selected td,.grafana-search-panel tr.selected:nth-child(odd)>td{background:#33b5e5;color:#fff;text-shadow:-1px -1px 1px rgba(0,0,0,.3)}.grafana-search-panel .selected td a,.grafana-search-panel tr.selected:nth-child(odd)>td a{color:#fff}.grafana-search-panel .selected-tag .label-tag{background-color:#33b5e5}.search-tagview-switch{position:absolute;top:15px;right:263px;color:#a6a6a6}.search-tagview-switch.active{color:#f2f2f2}.row-button{width:24px}.modal{margin:5%;width:90%}.grafana-search-metric-actions{visibility:hidden;padding-left:20px}.grafana-search-metric-name{white-space:nowrap}.grafana-search-metric-result:hover .grafana-search-metric-actions{visibility:visible}.grafana-search-metric-result:hover .grafana-search-metric-name{color:#33b5e5}.yaxisLabel{top:50%;left:-20px;transform:rotate(-90deg);-o-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-webkit-transform:rotate(-90deg);transform-origin:0 0;-o-transform-origin:0 0;-ms-transform-origin:0 0;-moz-transform-origin:0 0;-webkit-transform-origin:0 0}.axisLabel{color:#bbbfc2;font-size:11.9px;position:absolute;text-align:center;font-size:12px}.hidden-series a{color:#7f7f7f}.panel-fullscreen{z-index:100;display:block!important;position:fixed;left:0;right:0;top:54px;padding:0 10px;background:#1f1f1f;overflow-y:scroll;height:100%}.panel-fullscreen .panel-content{padding-bottom:130px}.dashboard-fullscreen .container-fluid.main{height:0;width:0;position:fixed;right:-10000px}.grafana-legend-container{margin:0 15px;text-align:left;position:relative;top:2px}.grafana-legend-container .popover-content{padding:0}.histogram-legend{display:inline-block;padding:0 4px}.histogram-legend i{position:relative;top:2px}.histogram-legend-item{display:inline-block}.histogram-chart{position:relative}.histogram-legend-popover{width:200px}.histogram-legend-popover label{display:inline-block}.histogram-legend-popover .btn{padding:1px 3px;margin-right:0;line-height:initial}.histogram-legend-popover .close{margin-right:5px;color:#f2f2f2;opacity:.7;text-shadow:none}.histogram-legend-popover .editor-row{padding:5px}.panel-full-edit-tabs{margin-top:10px;min-height:250px;margin-left:-10px;margin-right:-10px;background-color:transparent;border-top:1px solid #000}.panel-full-edit-tabs .tabs .nav-tabs{margin:0;background:#303030;border-top:1px solid #555}.panel-full-edit-tabs .tabs .tab-content{display:none}.panel-full-edit-tabs .tab-content{overflow:visible;padding:15px}.panel-full-edit-tabs .nav-tabs>li>a{line-height:15px;padding-top:6px;padding-bottom:6px;font-size:.8rem}.grafana-target:last-child{border-bottom:1px solid #000}.grafana-target-inner{border-top:1px solid #000;border-left:1px solid #000;border-right:1px solid #000;background:#303030;width:100%}.grafana-target-onoff{padding:5px 7px;display:inline-block}.grafana-segment-list{list-style:none;margin:0;margin-right:90px;margin-left:30px}.grafana-segment-list>li{float:left}.grafana-segment-dropdown-menu{margin-bottom:70px}.grafana-target-segment{padding:8px 7px;font-weight:400;border-right:1px solid #050505;color:#c8c8c8;display:inline-block}.has-open-function .grafana-target-segment{padding-top:25px}.grafana-target-hidden .grafana-target-segment{color:#888}.grafana-target-segment:hover,.grafana-target-segment:focus{text-decoration:none}.grafana-target-segmenta:hover{background:#444}.grafana-target-function{background:#444}.grafana-target-function>a{color:#c8c8c8}.grafana-target-function>a:hover{color:#f2f2f2}.grafana-target-function.show-function-controls{padding-top:5px;min-width:100px;text-align:center}input[type=text].grafana-function-param-input{background:transparent;border:0;margin:0;padding:0}.grafana-target-controls-left{list-style:none;float:left;width:30px;margin:0}.grafana-target-controls{width:120px;float:right;list-style:none;margin:0;text-align:right}.grafana-target-controls>li{display:inline-block;white-space:nowrap}.grafana-target-controls a{padding:8px 7px;position:relative;top:8px;color:#c8c8c8;font-size:16px}.grafana-target-hidden .grafana-target-controls a{color:#888}.grafana-target-controls a:hover,.grafana-target-controls a:focus{text-decoration:none}input[type=text].grafana-target-text-input{padding:8px 7px;border:0;margin:0;background:transparent;float:left;color:#c8c8c8;border-radius:0}input[type=text].grafana-target-segment-input{border:0;border-right:1px solid #050505;margin:0;border-radius:0;padding:8px 4px}input[type=checkbox].grafana-target-option-checkbox{margin:0}select.grafana-target-segment-input{border:0;border-right:1px solid #050505;margin:0;border-radius:0;height:36px;padding:8px 5px}.grafana-target .dropdown{padding:0;margin:0}.graphite-func-controls{display:none;text-align:center}.graphite-func-controls .icon-arrow-left{float:left;position:relative;top:2px}.graphite-func-controls .icon-arrow-right{float:right;position:relative;top:2px}.graphite-func-controls .icon-remove{margin-left:10px}.grafana-target .popover-content{padding:0}.scrollable{max-height:300px;overflow:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar:hover{height:8px}::-webkit-scrollbar-button:start:decrement,::-webkit-scrollbar-button:end:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement{display:none}::-webkit-scrollbar-button:horizontal:increment{display:none}::-webkit-scrollbar-button:vertical:decrement{display:none}::-webkit-scrollbar-button:vertical:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement:active{background-image:none}::-webkit-scrollbar-button:horizontal:increment:active{background-image:none}::-webkit-scrollbar-button:vertical:decrement:active{background-image:none}::-webkit-scrollbar-button:vertical:increment:active{background-image:none}::-webkit-scrollbar-track-piece{background-color:grayDark}::-webkit-scrollbar-thumb:vertical{height:50px;background:-webkit-gradient(linear,left top,right top,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #0d0d0d;border-top:1px solid #666;border-left:1px solid #666}::-webkit-scrollbar-thumb:horizontal{width:50px;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #1f1f1f;border-top:1px solid #666;border-left:1px solid #666}.sp-replacer{background:inherit;border:0;color:inherit}.sp-replacer:hover,.sp-replacer.sp-active{border-color:inherit;color:inherit}.sp-container{border-radius:0;background-color:#303030;border:0;padding:0}.sp-palette-container,.sp-picker-container{border:0}.sp-dd{display:none}.sp-preview{position:relative;width:15px;height:15px;border:0;margin-right:5px;float:left;z-index:0}.datapoints-warning{pointer:none;position:absolute;top:50%;left:50%;z-index:10;margin-top:-50px;margin-left:-100px;width:200px;text-align:center;cursor:auto;padding:10px}.grafana-version-footer{padding-top:15px;text-align:left} \ No newline at end of file diff --git a/app/dash/css/bootstrap.light.min.css b/app/dash/css/bootstrap.light.min.css deleted file mode 100644 index e34ec12..0000000 --- a/app/dash/css/bootstrap.light.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * Bootstrap v2.3.2 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{max-width:100%;width:auto\9;height:auto;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}label,select,button,input[type=button],input[type=reset],input[type=submit],input[type=radio],input[type=checkbox]{cursor:pointer}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}@media print{*{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#555;background-color:#eee}a{color:#01a6e6;text-decoration:none}a:hover,a:focus{color:#0181b3;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0}.row:after{clear:both}[class*=span]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0}.row-fluid:after{clear:both}.row-fluid [class*=span]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.127659574468085%;*margin-left:2.074468085106383%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .controls-row [class*=span]+[class*=span]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*=span].hide,.row-fluid [class*=span].hide{display:none}[class*=span].pull-right,.row-fluid [class*=span].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;content:"";line-height:0}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;content:"";line-height:0}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:700}em{font-style:italic}cite{font-style:normal}.muted{color:#999}a.muted:hover,a.muted:focus{color:gray}.text-warning{color:#ff934b}a.text-warning:hover,a.text-warning:focus{color:#ff7518}.text-error{color:#ff7169}a.text-error:hover,a.text-error:focus{color:#ff4136}.text-info{color:#af78ca}a.text-info:hover,a.text-info:focus{color:#9954bb}.text-success{color:#3dd441}a.text-success:hover,a.text-success:focus{color:#28b62c}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:700;line-height:20px;color:#222;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:400;line-height:1;color:#999}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;*zoom:1;padding-left:5px;padding-right:5px}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:700}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;content:"";line-height:0}.dl-horizontal:after{clear:both}.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}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:17.5px;font-weight:300;line-height:1.25}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8;white-space:nowrap}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:400;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#020202;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:middle}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{background-color:#fff;border:1px solid #999;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type=text]:focus,input[type=password]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=week]:focus,input[type=number]:focus,input[type=email]:focus,input[type=url]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)}input[type=radio],input[type=checkbox]{margin:4px 0 0;*margin-top:0;margin-top:1px \9;line-height:normal}input[type=file],input[type=image],input[type=submit],input[type=reset],input[type=button],input[type=radio],input[type=checkbox]{width:auto}select,input[type=file]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;border:1px solid #999;background-color:#fff}select[multiple],select[size]{height:auto}select:focus,input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;background-color:#fcfcfc;border-color:#999;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);box-shadow:inset 0 1px 2px rgba(0,0,0,.025);cursor:not-allowed}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#555}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#555}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#555}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type=radio],.checkbox input[type=checkbox]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*=span],select[class*=span],textarea[class*=span],.uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span]{float:none;margin-left:0}.input-append input[class*=span],.input-append .uneditable-input[class*=span],.input-prepend input[class*=span],.input-prepend .uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span],.row-fluid .input-prepend [class*=span],.row-fluid .input-append [class*=span]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*=span]+[class*=span]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;content:"";line-height:0}.controls-row:after{clear:both}.controls-row [class*=span],.row-fluid .controls-row [class*=span]{float:left}.controls-row .checkbox[class*=span],.controls-row .radio[class*=span]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type=radio][disabled],input[type=checkbox][disabled],input[type=radio][readonly],input[type=checkbox][readonly]{background-color:transparent}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#ff934b}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#ff934b}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#ff934b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#ff7518;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ffd0b1;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ffd0b1;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ffd0b1}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#ff934b;background-color:#ff7518;border-color:#ff934b}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#ff7169}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#ff7169}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#ff7169;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#ff4136;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ffd2cf;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ffd2cf;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ffd2cf}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#ff7169;background-color:#ff4136;border-color:#ff7169}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#3dd441}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#3dd441}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#3dd441;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#28b62c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #90e793;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #90e793;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #90e793}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#3dd441;background-color:#28b62c;border-color:#3dd441}.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#af78ca}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#af78ca}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#af78ca;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#9954bb;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #dac1e7;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #dac1e7;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #dac1e7}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#af78ca;background-color:#9954bb;border-color:#af78ca}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;content:"";line-height:0}.form-actions:after{clear:both}.help-block,.help-inline{color:#7b7b7b}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding-left:5px}.input-append,.input-prepend{display:inline-block;margin-bottom:10px;vertical-align:middle;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu,.input-append .popover,.input-prepend .popover{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:400;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#90e793;border-color:#28b62c}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;*zoom:1;margin-bottom:0;vertical-align:middle}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type=radio],.form-search .checkbox input[type=checkbox],.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;content:"";line-height:0}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:700}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#eee}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover tbody tr:hover>td,.table-hover tbody tr:hover>th{background-color:#e8f8fd}table td[class*=span],table th[class*=span],.row-fluid table td[class*=span],.row-fluid table th[class*=span]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success>td{background-color:#28b62c}.table tbody tr.error>td{background-color:#ff4136}.table tbody tr.warning>td{background-color:#ff7518}.table tbody tr.info>td{background-color:#9954bb}.table-hover tbody tr.success:hover>td{background-color:#23a127}.table-hover tbody tr.error:hover>td{background-color:#ff291c}.table-hover tbody tr.warning:hover>td{background-color:#fe6600}.table-hover tbody tr.info:hover>td{background-color:#8d46b0}[class^=icon-],[class*=" icon-"]{display:inline-block;width:14px;height:14px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url(../img/glyphicons-halflings.png);background-position:14px 14px;background-repeat:no-repeat;margin-top:1px}.icon-white,.nav-pills>.active>a>[class^=icon-],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^=icon-],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^=icon-],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^=icon-],.dropdown-menu>li>a:focus>[class^=icon-],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>li>a:focus>[class*=" icon-"],.dropdown-menu>.active>a>[class^=icon-],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^=icon-],.dropdown-submenu:focus>a>[class^=icon-],.dropdown-submenu:hover>a>[class*=" icon-"],.dropdown-submenu:focus>a>[class*=" icon-"]{background-image:url(../img/glyphicons-halflings-white.png)}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{background-position:-216px -120px;width:16px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px;width:16px}.icon-folder-open{background-position:-408px -120px;width:16px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{text-decoration:none;color:#fff;background-color:#019fdc;background-image:-moz-linear-gradient(top,#01a6e6,#0194cd);background-image:-webkit-gradient(linear,0 0,0 100%,from(#01a6e6),to(#0194cd));background-image:-webkit-linear-gradient(top,#01a6e6,#0194cd);background-image:-o-linear-gradient(top,#01a6e6,#0194cd);background-image:linear-gradient(to bottom,#01a6e6,#0194cd);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff01a6e6', endColorstr='#ff0194cd', GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#019fdc;background-image:-moz-linear-gradient(top,#01a6e6,#0194cd);background-image:-webkit-gradient(linear,0 0,0 100%,from(#01a6e6),to(#0194cd));background-image:-webkit-linear-gradient(top,#01a6e6,#0194cd);background-image:-o-linear-gradient(top,#01a6e6,#0194cd);background-image:linear-gradient(to bottom,#01a6e6,#0194cd);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff01a6e6', endColorstr='#ff0194cd', GradientType=0)}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:default}.open{*z-index:1000}.open>.dropdown-menu{display:block}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px;-moz-border-radius:0 6px 6px;border-radius:0 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#ccc;margin-top:5px;margin-right:-10px}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-left:20px;padding-right:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#eee;border:1px solid #ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-large{padding:24px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well-small{padding:9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:700;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;*zoom:1;padding:4px 12px;margin-bottom:0;font-size:14px;line-height:20px;text-align:center;vertical-align:middle;cursor:pointer;color:#333;text-shadow:0 1px 1px rgba(255,255,255,.75);background-color:#dfdfdf;background-image:-moz-linear-gradient(top,#eee,#c8c8c8);background-image:-webkit-gradient(linear,0 0,0 100%,from(#eee),to(#c8c8c8));background-image:-webkit-linear-gradient(top,#eee,#c8c8c8);background-image:-o-linear-gradient(top,#eee,#c8c8c8);background-image:linear-gradient(to bottom,#eee,#c8c8c8);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffeeeeee', endColorstr='#ffc8c8c8', GradientType=0);border-color:#c8c8c8 #c8c8c8 #a2a2a2;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#c8c8c8;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border:1px solid #bbb;*border:0;border-bottom-color:#a2a2a2;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*margin-left:.3em;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#c8c8c8;*background-color:#bbb}.btn:active,.btn.active{background-color:#afafaf \9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:22px 30px;font-size:17.5px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.btn-large [class^=icon-],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-small [class^=icon-],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^=icon-],.btn-mini [class*=" icon-"]{margin-top:-1px}.btn-mini{padding:2px 6px;font-size:10.5px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,.75)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#02a9ea;background-image:-moz-linear-gradient(top,#03b8fe,#0194cd);background-image:-webkit-gradient(linear,0 0,0 100%,from(#03b8fe),to(#0194cd));background-image:-webkit-linear-gradient(top,#03b8fe,#0194cd);background-image:-o-linear-gradient(top,#03b8fe,#0194cd);background-image:linear-gradient(to bottom,#03b8fe,#0194cd);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff03b8fe', endColorstr='#ff0194cd', GradientType=0);border-color:#0194cd #0194cd #015d80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#0194cd;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#0194cd;*background-color:#0181b3}.btn-primary:active,.btn-primary.active{background-color:#016f9a \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#fe781e;background-image:-moz-linear-gradient(top,#ff8432,#fe6600);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ff8432),to(#fe6600));background-image:-webkit-linear-gradient(top,#ff8432,#fe6600);background-image:-o-linear-gradient(top,#ff8432,#fe6600);background-image:linear-gradient(to bottom,#ff8432,#fe6600);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff8432', endColorstr='#fffe6600', GradientType=0);border-color:#fe6600 #fe6600 #b14700;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#fe6600;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#fe6600;*background-color:#e45c00}.btn-warning:active,.btn-warning.active{background-color:#cb5200 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#ff463b;background-image:-moz-linear-gradient(top,#ff5950,#ff291c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ff5950),to(#ff291c));background-image:-webkit-linear-gradient(top,#ff5950,#ff291c);background-image:-o-linear-gradient(top,#ff5950,#ff291c);background-image:linear-gradient(to bottom,#ff5950,#ff291c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff5950', endColorstr='#ffff291c', GradientType=0);border-color:#ff291c #ff291c #cf0b00;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#ff291c;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#ff291c;*background-color:#ff1103}.btn-danger:active,.btn-danger.active{background-color:#e80d00 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#29ba2d;background-image:-moz-linear-gradient(top,#2dcb31,#23a127);background-image:-webkit-gradient(linear,0 0,0 100%,from(#2dcb31),to(#23a127));background-image:-webkit-linear-gradient(top,#2dcb31,#23a127);background-image:-o-linear-gradient(top,#2dcb31,#23a127);background-image:linear-gradient(to bottom,#2dcb31,#23a127);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2dcb31', endColorstr='#ff23a127', GradientType=0);border-color:#23a127 #23a127 #166218;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#23a127;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#23a127;*background-color:#1f8c22}.btn-success:active,.btn-success.active{background-color:#1a771d \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#9b59bb;background-image:-moz-linear-gradient(top,#a466c2,#8d46b0);background-image:-webkit-gradient(linear,0 0,0 100%,from(#a466c2),to(#8d46b0));background-image:-webkit-linear-gradient(top,#a466c2,#8d46b0);background-image:-o-linear-gradient(top,#a466c2,#8d46b0);background-image:linear-gradient(to bottom,#a466c2,#8d46b0);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffa466c2', endColorstr='#ff8d46b0', GradientType=0);border-color:#8d46b0 #8d46b0 #613079;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#8d46b0;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#8d46b0;*background-color:#7e3f9d}.btn-info:active,.btn-info.active{background-color:#6f378b \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#080808;background-image:-moz-linear-gradient(top,#0d0d0d,#000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#0d0d0d),to(#000));background-image:-webkit-linear-gradient(top,#0d0d0d,#000);background-image:-o-linear-gradient(top,#0d0d0d,#000);background-image:linear-gradient(to bottom,#0d0d0d,#000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0d0d0d', endColorstr='#ff000000', GradientType=0);border-color:#000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#000;*background-color:#000}.btn-inverse:active,.btn-inverse.active{background-color:#000 \9}button.btn,input[type=submit].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type=submit].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type=submit].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type=submit].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type=submit].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{border-color:transparent;cursor:pointer;color:#01a6e6;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover,.btn-link:focus{color:#0181b3;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#333;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*zoom:1;font-size:0;vertical-align:middle;white-space:nowrap;*margin-left:.3em}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{font-size:0;margin-top:10px;margin-bottom:10px}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);*padding-top:5px;*padding-bottom:5px}.btn-group>.btn-mini+.dropdown-toggle{padding-left:5px;padding-right:5px;*padding-top:2px;*padding-bottom:2px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{padding-left:12px;padding-right:12px;*padding-top:7px;*padding-bottom:7px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-group.open .btn.dropdown-toggle{background-color:#c8c8c8}.btn-group.open .btn-primary.dropdown-toggle{background-color:#0194cd}.btn-group.open .btn-warning.dropdown-toggle{background-color:#fe6600}.btn-group.open .btn-danger.dropdown-toggle{background-color:#ff291c}.btn-group.open .btn-success.dropdown-toggle{background-color:#23a127}.btn-group.open .btn-info.dropdown-toggle{background-color:#8d46b0}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#000}.btn .caret{margin-top:8px;margin-left:0}.btn-large .caret{margin-top:6px}.btn-large .caret{border-left-width:5px;border-right-width:5px;border-top-width:5px}.btn-mini .caret,.btn-small .caret{margin-top:8px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-left:0;margin-top:-1px}.btn-group-vertical>.btn:first-child{-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,.5);background-color:#ff7518;border:1px solid transparent;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.alert,.alert h4{color:#ff934b}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{background-color:#28b62c;border-color:transparent;color:#3dd441}.alert-success h4{color:#3dd441}.alert-danger,.alert-error{background-color:#ff4136;border-color:transparent;color:#ff7169}.alert-danger h4,.alert-error h4{color:#ff7169}.alert-info{background-color:#9954bb;border-color:transparent;color:#af78ca}.alert-info h4{color:#af78ca}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-left:0;margin-bottom:20px;list-style:none}.nav>li>a{display:block}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:700;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-left:15px;padding-right:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-left:-15px;margin-right:-15px;text-shadow:0 1px 0 rgba(255,255,255,.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.2);background-color:#01a6e6}.nav-list [class^=icon-],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;content:"";line-height:0}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#eee #eee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#555;background-color:#eee;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#01a6e6}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{border-color:#ddd;z-index:2}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{border-top-color:#01a6e6;border-bottom-color:#01a6e6;margin-top:6px}.nav .dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus .caret{border-top-color:#0181b3;border-bottom-color:#0181b3}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav li.dropdown.open a:focus .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover,.tabs-stacked .open>a:focus{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;content:"";line-height:0}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-bottom-color:transparent;border-top-color:#ddd}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#eee #ddd #eee #eee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#eee #eee #eee #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;background-color:transparent;cursor:default}.navbar{overflow:visible;margin-bottom:20px;*position:relative;*z-index:2}.navbar-inner{min-height:50px;padding-left:20px;padding-right:20px;background-color:#f8f8f8;background-image:-moz-linear-gradient(top,#f8f8f8,#f8f8f8);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f8f8f8),to(#f8f8f8));background-image:-webkit-linear-gradient(top,#f8f8f8,#f8f8f8);background-image:-o-linear-gradient(top,#f8f8f8,#f8f8f8);background-image:linear-gradient(to bottom,#f8f8f8,#f8f8f8);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff8f8f8', endColorstr='#fff8f8f8', GradientType=0);border:1px solid #e7e7e7;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,.065);box-shadow:0 1px 4px rgba(0,0,0,.065);*zoom:1}.navbar-inner:before,.navbar-inner:after{display:table;content:"";line-height:0}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{float:left;display:block;padding:15px 20px;margin-left:-20px;font-size:20px;font-weight:200;color:#666;text-shadow:0 1px 0 #f8f8f8}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}.navbar-text{margin-bottom:0;line-height:50px;color:#666}.navbar-link{color:#666}.navbar-link:hover,.navbar-link:focus{color:#333}.navbar .divider-vertical{height:50px;margin:0 9px;border-left:1px solid #f8f8f8;border-right:1px solid #f8f8f8}.navbar .btn,.navbar .btn-group{margin-top:10px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append .btn-group{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;content:"";line-height:0}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:10px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type=image],.navbar-form input[type=checkbox],.navbar-form input[type=radio]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:10px;margin-bottom:0}.navbar-search .search-query{margin-bottom:0;padding:4px 14px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:400;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-left:0;padding-right:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);box-shadow:0 1px 10px rgba(0,0,0,.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,.1);box-shadow:0 -1px 10px rgba(0,0,0,.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:15px;color:#666;text-decoration:none;text-shadow:0 1px 0 #f8f8f8}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{background-color:transparent;color:#333;text-decoration:none}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e7e7e7;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);box-shadow:inset 0 3px 8px rgba(0,0,0,.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-left:5px;margin-right:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#ebebeb;background-image:-moz-linear-gradient(top,#ebebeb,#ebebeb);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ebebeb),to(#ebebeb));background-image:-webkit-linear-gradient(top,#ebebeb,#ebebeb);background-image:-o-linear-gradient(top,#ebebeb,#ebebeb);background-image:linear-gradient(to bottom,#ebebeb,#ebebeb);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#ffebebeb', GradientType=0);border-color:#ebebeb #ebebeb #c5c5c5;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#ebebeb;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#ebebeb;*background-color:#dedede}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#d2d2d2 \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 1px 0 rgba(0,0,0,.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:9px}.navbar .nav>li>.dropdown-menu:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:10px}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{border-top:7px solid #ccc;border-top-color:rgba(0,0,0,.2);border-bottom:0;bottom:-7px;top:auto}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{border-top:6px solid #fff;border-bottom:0;bottom:-6px;top:auto}.navbar .nav li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{background-color:#e7e7e7;color:#555}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#666;border-bottom-color:#666}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{left:auto;right:0}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{left:auto;right:12px}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{left:auto;right:13px}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{left:auto;right:100%;margin-left:0;margin-right:-1px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{background-color:#01a6e6;background-image:-moz-linear-gradient(top,#01a6e6,#01a6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#01a6e6),to(#01a6e6));background-image:-webkit-linear-gradient(top,#01a6e6,#01a6e6);background-image:-o-linear-gradient(top,#01a6e6,#01a6e6);background-image:linear-gradient(to bottom,#01a6e6,#01a6e6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff01a6e6', endColorstr='#ff01a6e6', GradientType=0);border-color:transparent}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse .nav>li>a:focus{color:#fff}.navbar-inverse .brand{color:#fff}.navbar-inverse .navbar-text{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{background-color:rgba(0,0,0,.05);color:#fff}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#01a6e6}.navbar-inverse .navbar-link{color:#fff}.navbar-inverse .navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}.navbar-inverse .divider-vertical{border-left-color:#01a6e6;border-right-color:#01a6e6}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#01a6e6;color:#fff}.navbar-inverse .nav li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#68d4fe;border-color:#01a6e6;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#333}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#333}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#333}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);-moz-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15);outline:0}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#0194cd;background-image:-moz-linear-gradient(top,#0194cd,#0194cd);background-image:-webkit-gradient(linear,0 0,0 100%,from(#0194cd),to(#0194cd));background-image:-webkit-linear-gradient(top,#0194cd,#0194cd);background-image:-o-linear-gradient(top,#0194cd,#0194cd);background-image:linear-gradient(to bottom,#0194cd,#0194cd);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0194cd', endColorstr='#ff0194cd', GradientType=0);border-color:#0194cd #0194cd #015d80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#0194cd;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#0194cd;*background-color:#0181b3}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#016f9a \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.breadcrumb>li{display:inline-block;*display:inline;*zoom:1;text-shadow:0 1px 0 #fff}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;*zoom:1;margin-left:0;margin-bottom:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#999;border:1px solid transparent;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#01a6e6}.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>a:focus{color:#999;background-color:transparent;cursor:default}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:22px 30px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-top-left-radius:2px;-moz-border-radius-topleft:2px;border-top-left-radius:2px;-webkit-border-bottom-left-radius:2px;-moz-border-radius-bottomleft:2px;border-bottom-left-radius:2px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:2px;-moz-border-radius-topright:2px;border-top-right-radius:2px;-webkit-border-bottom-right-radius:2px;-moz-border-radius-bottomright:2px;border-bottom-right-radius:2px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:2px 6px;font-size:10.5px}.pager{margin:20px 0;list-style:none;text-align:center;*zoom:1}.pager:before,.pager:after{display:table;content:"";line-height:0}.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;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;background-color:#fff;cursor:default}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:absolute;z-index:1050;width:100%;background-color:#fff;-webkit-box-shadow:0 3px 7px rgba(0,0,0,.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,.3);box-shadow:0 3px 7px rgba(0,0,0,.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;outline:0}.modal.fade{-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out;top:-25%}.modal.fade.in{top:10%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{position:relative;overflow-y:auto;padding:15px}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;*zoom:1}.modal-footer:before,.modal-footer:after{display:table;content:"";line-height:0}.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}.tooltip{position:absolute;z-index:1030;display:block;visibility:visible;font-size:11px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.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:8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.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.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}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.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;font-weight:400;line-height:18px;background-color:#fff;border-bottom:1px solid #f2f2f2;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-title:empty{display:none}.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:16px}.popover .arrow:after{border-width:15px;content:""}.popover.top .arrow{left:50%;margin-left:-16px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-16px}.popover.top .arrow:after{bottom:1px;margin-left:-15px;border-bottom-width:0;border-top-color:#fff}.popover.right .arrow{top:50%;left:-16px;margin-top:-16px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right .arrow:after{left:1px;bottom:-15px;border-left-width:0;border-right-color:#fff}.popover.bottom .arrow{left:50%;margin-left:-16px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-16px}.popover.bottom .arrow:after{top:1px;margin-left:-15px;border-top-width:0;border-bottom-color:#fff}.popover.left .arrow{top:50%;right:-16px;margin-top:-16px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left .arrow:after{right:1px;border-right-width:0;border-left-color:#fff;bottom:-15px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;content:"";line-height:0}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,.055);box-shadow:0 1px 3px rgba(0,0,0,.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover,a.thumbnail:focus{border-color:#01a6e6;-webkit-box-shadow:0 1px 4px rgba(0,105,214,.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,.25);box-shadow:0 1px 4px rgba(0,105,214,.25)}.thumbnail>img{display:block;max-width:100%;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#555}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:700;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#999}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-left:9px;padding-right:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#ff7169}.label-important[href],.badge-important[href]{background-color:#ff4136}.label-warning,.badge-warning{background-color:#ff7518}.label-warning[href],.badge-warning[href]{background-color:#e45c00}.label-success,.badge-success{background-color:#3dd441}.label-success[href],.badge-success[href]{background-color:#28b62c}.label-info,.badge-info{background-color:#af78ca}.label-info[href],.badge-info[href]{background-color:#9954bb}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.progress .bar{width:0;height:100%;color:#fff;float:left;font-size:12px;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#ff9046;background-image:-moz-linear-gradient(top,#ffa365,#ff7518);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ffa365),to(#ff7518));background-image:-webkit-linear-gradient(top,#ffa365,#ff7518);background-image:-o-linear-gradient(top,#ffa365,#ff7518);background-image:linear-gradient(to bottom,#ffa365,#ff7518);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffa365', endColorstr='#ffff7518', GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#ffa365;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{overflow:hidden;width:100%;position:relative}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;line-height:1}.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:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{left:auto;right:15px}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none}.carousel-indicators li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,.25);border-radius:5px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;left:0;right:0;bottom:0;padding:15px;background:#333;background:rgba(0,0,0,.75)}.carousel-caption h4,.carousel-caption p{color:#fff;line-height:20px}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;color:inherit;letter-spacing:-1px}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}body{font-weight:300;background:#eee}h1{font-size:50px}h2,h3{font-size:26px}h4{font-size:14px}h5,h6{font-size:11px}blockquote{padding:10px 15px;background-color:#eee;border-left-color:#555}blockquote.pull-right{padding:10px 15px;border-right-color:#555}blockquote small{color:#555}.muted{color:#555}.text-warning{color:#ff7518}a.text-warning:hover{color:#e45c00}.text-error{color:#ff4136}a.text-error:hover{color:#ff1103}.text-info{color:#9954bb}a.text-info:hover{color:#7e3f9d}.text-success{color:#28b62c}a.text-success:hover{color:#1f8c22}.navbar .navbar-inner{background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar .brand:hover{color:#333}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background-color:transparent}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555}.navbar .nav li.dropdown.open>.dropdown-toggle:hover,.navbar .nav li.dropdown.active>.dropdown-toggle:hover,.navbar .nav li.dropdown.open.active>.dropdown-toggle:hover{color:#eee}.navbar .navbar-search .search-query{line-height:normal}.navbar-inverse .brand,.navbar-inverse .nav>li>a{text-shadow:none}.navbar-inverse .brand:hover,.navbar-inverse .nav>.active>a,.navbar-inverse .nav>.active>a:hover,.navbar-inverse .nav>.active>a:focus{background-color:rgba(0,0,0,.05);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:#fff}.navbar-inverse .navbar-search .search-query{color:#222}div.subnav{margin:0 1px;background:#999 none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}div.subnav .nav{background-color:transparent}div.subnav .nav>li>a{border-color:transparent}div.subnav .nav>.active>a,div.subnav .nav>.active>a:hover{border-color:transparent;background-color:#000;color:#fff;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}div.subnav-fixed{top:51px;margin:0}.nav .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#01a6e6}.nav-tabs>li>a{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs li>a:hover,.nav-tabs li.active>a,.nav-tabs li.active>a:hover{border-color:transparent;background-color:#01a6e6;color:#fff}.nav-tabs li.disabled>a{color:#555}.nav-tabs .open .dropdown-toggle{background-color:#060606;border-color:transparent}.tabs-below>.nav-tabs>li>a,.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border:0}.nav-pills>li>a{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;color:#000}.nav-pills>li>a:hover{background-color:#000;color:#fff}.nav-pills>.disabled>a,.nav-pills>.disabled>a:hover{background-color:#eee;color:#333}.nav-list>li>a{color:#222}.nav-list>li>a:hover{background-color:#01a6e6;color:#fff;text-shadow:none}.nav-list .nav-header{color:#222}.nav-list .divider{background-color:#555;border-bottom:0}.pagination ul{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.pagination ul>li>a,.pagination ul>li>span{margin-right:6px;color:#222}.pagination ul>li>a:hover,.pagination ul>li>span:hover{background-color:#222;color:#fff}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{margin-right:0}.pagination ul>.active>a,.pagination ul>.active>span{color:#fff}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover{background-color:#eee;color:#333}.pager li>a,.pager li>span{background-color:#999;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;color:#222}.pager li>a:hover,.pager li>span:hover{background-color:#222;color:#fff}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>span{background-color:#eee;color:#333}.breadcrumb{background-color:#999}.breadcrumb li{text-shadow:none}.breadcrumb .divider,.breadcrumb .active{color:#222;text-shadow:none}.btn{padding:5px 12px;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;text-shadow:none}.btn.disabled{box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-large{padding:22px 30px}.btn-small{padding:2px 10px}.btn-mini{padding:2px 6px}.btn-group>.btn:first-child,.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.dropdown-toggle{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}legend,label{color:#555;border-bottom:0 solid #222}.table tbody tr.success td{color:#fff}.table tbody tr.error td{color:#fff}.table tbody tr.info td{color:#fff}.table-bordered{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color]{color:#222}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#ff7518}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#ff7518;color:#222}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#ff4136}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#ff4136;color:#222}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#28b62c}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#28b62c;color:#222}legend{border-bottom:0;color:#222}.form-actions{border-top:0;background-color:#eee}.dropdown-menu{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.alert{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;text-shadow:none}.alert-heading,.alert h1,.alert h2,.alert h3,.alert h4,.alert h5,.alert h6{color:#fff}.label-success{background-color:#28b62c}.label-important{background-color:#ff4136}.label-info{background-color:#9954bb}.label-inverse{background-color:#000}.badge{border-radius:0;font-weight:200}a:hover{text-decoration:none}.hero-unit{border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.well{border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}[class^=icon-],[class*=" icon-"]{margin:0 2px;vertical-align:-2px}a.thumbnail{background-color:#999}a.thumbnail:hover{background-color:#555;border-color:transparent}.progress{background-color:#eee;background-image:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.modal{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;background-color:#eee}.modal-header{border-bottom:0}.modal-footer{border-top:0;background-color:transparent}.popover{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.popover-title{border-bottom:0;color:#fff}@media(max-width:767px){div.panel{width:100%!important;padding:0!important}}.container-fluid{padding-left:0;padding-right:0}.container.grafana-container{padding:5px 10px;width:100%;box-sizing:border-box}.bgNav{background:#f8f8f8}.bgPrimary{background:#03b8fe;color:rgba(255,255,255,.9)}.bgInfo{background:#a466c2;color:rgba(255,255,255,.9)}.bgSuccess{background:#2dcb31;color:rgba(255,255,255,.9)}.bgWarning{background:#ff8432;color:rgba(255,255,255,.9)}.bgDanger{background:#ff5950;color:rgba(255,255,255,.9)}.bgInverse{background:#0d0d0d;color:rgba(255,255,255,.9)}code,pre{background-color:#eee}.panel{display:inline-table;vertical-align:top}.panel-container{padding:0;background:#fff;margin:5px}.panel-content{padding:0 10px 5px}.panel-title{border:0;font-weight:700}.panel-loading{position:absolute;top:0;right:4px;z-index:800}.panel div.panel-extra div.panel-extra-container{margin-right:-10px;margin-top:3px;text-align:center}.panel div.panel-extra div.panel-extra-container ul{text-align:left}.panel div.panel-extra{font-size:.9em;margin-bottom:0}.panel div.panel-extra .extra{float:right!important}.panel-error{color:#fff;padding:5px 10px 0}.panel-error-inspector-link{float:right;margin-right:10px}div.editor-row{vertical-align:top}div.editor-row div.section{margin-right:20px;vertical-align:top;display:inline-block}div.editor-option{vertical-align:top;display:inline-block;margin-right:10px}div.editor-option label{display:block}#events{font-size:12px}.version{font-size:85%}.legend{color:#000}div.fake-input{background-color:#fff;border:1px solid #999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}hr.small{margin:5px 0}form input.ng-invalid{color:#ff7169}.editor-title{margin-right:10px;font-size:1.7em;font-weight:700;text-transform:capitalize}.editor-title small{opacity:.5;font-size:.7em;font-weight:400}.bordered{border:1px solid #ddd}.table-unpadded th,.table-unpadded td{padding:0 2px}.spy{position:absolute;right:0;top:0}.navbar-inner{border-width:0}.kibana-row{margin-bottom:5px}.row-tab .dropdown-menu-right{top:0;left:33px}.row-tab-button{padding:0;cursor:pointer;vertical-align:middle;width:30px;height:30px;text-align:center;display:inline-block;line-height:30px}.row-button{width:30px;text-align:center;float:left;cursor:pointer}.row-text{white-space:nowrap;text-transform:uppercase;font-weight:700;font-size:.9em;margin:0 10px}.row-close{padding:0;margin:0;min-height:30px!important;line-height:30px;background:#fff}.row-open{margin-top:5px;left:-34px;position:absolute;z-index:100;transition:.25s left;transition-delay:.25s;-webkit-transition-delay:.25s}.row-open:hover{left:-12px}.odd{background-color:#f9f9f9}.nomargin{margin:0}[ng\:cloak],[ng-cloak],.ng-cloak{display:none!important}.table tbody+tbody{border-top:0}.ui-draggable-dragging{display:block;z-index:9999}.dragInProgress .panel-container{border:3px solid rgba(100,100,100,.5)}.link{color:#01a6e6;cursor:pointer}.link:hover{color:#0181b3}.pointer{cursor:pointer}.popover{max-width:480px}.modal{width:100%;top:0!important}.tiny{font-size:50%}.smaller{font-size:70%}.small{font-size:85%}.large{font-size:120%}.strong{font-weight:700}a{cursor:pointer}.normal{font-weight:400}.light{font-weight:200}.input-smaller{width:75px}.string{color:#626262}.number{color:#ba8bd1}.boolean{color:#ffa365}.key{color:#ff8983}.btn-active{background-color:#e6e6e6;background-image:none;box-shadow:0 2px 4px rgba(0,0,0,.15) inset,0 1px 2px rgba(0,0,0,.05);outline:0 none}.remove:hover{background-color:#ff291c}.faded{opacity:.2}div.flot-text{color:#555!important}.dashboard-notice{z-index:8000;margin-left:0;padding:3px 0;width:100%;padding-left:20px;color:#fff}.alert-warning{background-color:#ff7518;border-color:transparent;color:#ff934b}.popover.topLeft{margin-top:-10px}.popover.topLeft .arrow{bottom:-10px;left:25%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#fff}.popover.topLeft .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.topRight{margin-top:-10px}.popover.topRight .arrow{bottom:-10px;left:75%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#fff}.popover.topRight .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.rightTop .arrow{top:10%;left:-16px;margin-top:-16px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightTop .arrow:after{left:1px;bottom:-15px;border-left-width:0;border-right-color:#fff}.popover.rightBottom .arrow{top:90%;left:-16px;margin-top:-16px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightBottom .arrow:after{left:1px;bottom:-15px;border-left-width:0;border-right-color:#fff}.popover.bottomLeft .arrow{left:10%;margin-left:-16px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-16px}.popover.bottomLeft .arrow:after{top:1px;margin-left:-15px;border-top-width:0;border-bottom-color:#fff}.popover.bottomRight .arrow{left:90%;margin-left:-16px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-16px}.popover.bottomRight .arrow:after{top:1px;margin-left:-15px;border-top-width:0;border-bottom-color:#fff}.popover.leftTop .arrow{top:10%;right:-16px;margin-top:-16px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftTop .arrow:after{right:1px;border-right-width:0;border-left-color:#fff;bottom:-15px}.popover.leftBottom .arrow{top:90%;right:-16px;margin-top:-16px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftBottom .arrow:after{right:1px;border-right-width:0;border-left-color:#fff;bottom:-15px}.popover.topLeft .arrow{left:10%;margin-left:-16px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-16px}.popover.topLeft .arrow:after{bottom:1px;margin-left:-15px;border-bottom-width:0;border-top-color:#fff}.popover.topRight .arrow{left:90%;margin-left:-16px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-16px}.popover.topRight .arrow:after{bottom:1px;margin-left:-15px;border-bottom-width:0;border-top-color:#fff}.label-tag{background-color:#9954bb;color:#f2f2f2}.label-tag:hover{background-color:#7e3f9d;color:#fff}.annotation-editor-table td{white-space:nowrap}.save-dashboard-dropdown{padding:10px}.save-dashboard-dropdown li>a{padding-left:5px}.save-dashboard-dropdown-save-form{margin-bottom:5px}.inspector-request-table td{padding:5px}.inspector-request-table td:first-child{white-space:nowrap}code,pre{background-color:#fff;color:#555}.submenu-controls{background:#dad9d9;font-size:inherit}.submenu-controls label{margin:0;padding-right:4px;display:inline}.submenu-controls input[type=checkbox]{margin:0}.submenu-controls-visible:not(.hide-controls) .panel-fullscreen{top:82px}.submenu-panel{padding:0 4px 0 8px;border-right:1px solid #fff;float:left}.submenu-panel:first-child{padding-left:17px}.submenu-panel-title{float:left;text-transform:uppercase;padding:4px 10px 3px 0}.submenu-panel-wrapper{float:left}.submenu-toggle{padding:4px 0 3px 8px;float:left}.submenu-toggle .annotation-color-icon{position:relative;top:2px}.submenu-toggle:first-child{padding-left:0}.submenu-control-edit{padding:4px 4px 3px 8px;float:right;border-left:1px solid #fff;margin-left:8px}.annotation-disabled,.annotation-disabled a{color:#151515}.filtering-container{float:left}.filtering-container label{float:left}.filtering-container input[type=checkbox]{margin:0}.filter-panel-filter{display:inline-block;vertical-align:top;padding:4px 10px 3px;border-right:1px solid #fff}.filter-panel-filter:first-child{padding-left:0}.filter-panel-filter ul{margin-bottom:0}.filter-deselected{opacity:.5}.filtering-container .filter-action{float:right;padding-right:2px;margin-bottom:0!important;margin-left:0;margin-top:4px}.add-filter-action{padding:3px 5px 0;position:relative;top:4px}.filter-mandate{text-decoration:underline;cursor:pointer}.filter-apply{float:right}.bootstrap-tagsinput{display:inline-block;padding:4px 6px;margin-bottom:10px;color:#555;vertical-align:middle;border-radius:4px;max-width:100%;line-height:22px;background-color:#fff;border:1px solid #999;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.bootstrap-tagsinput input{border:0;box-shadow:none;outline:0;background-color:transparent;padding:0;padding-left:5px;margin:0;width:auto!important;max-width:inherit}.bootstrap-tagsinput input:focus{border:0;box-shadow:none}.bootstrap-tagsinput .tag{margin-right:2px;color:#fff}.bootstrap-tagsinput .tag [data-role=remove]{margin-left:8px;cursor:pointer}.bootstrap-tagsinput .tag [data-role=remove]:after{content:"x";padding:0 2px}.bootstrap-tagsinput .tag [data-role=remove]:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.bootstrap-tagsinput .tag [data-role=remove]:hover:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.hide-controls{padding:0}.hide-controls .grafana-row{display:none}.hide-controls .submenu-controls{display:none}.hide-controls .add-row-panel-hint{display:none}.playlist-active .grafana-menu-zoom-out,.playlist-active .grafana-menu-save,.playlist-active .grafana-menu-load,.playlist-active .add-row-panel-hint,.playlist-active .grafana-menu-home,.playlist-active .grafana-menu-refresh,.playlist-active .grafana-menu-edit{display:none}.playlist-active .grafana-menu-stop-playlist{display:list-item}.grafana-search-panel{padding:6px 10px}.grafana-search-panel .search-field-wrapper input{width:100%}.grafana-search-panel .search-field-wrapper button{margin:0 2px 0 0}.grafana-search-panel .search-field-wrapper>span{display:block;overflow:hidden;padding-right:25px}.grafana-search-panel .selected td,.grafana-search-panel tr.selected:nth-child(odd)>td{background:#01a6e6;color:#fff;text-shadow:-1px -1px 1px rgba(0,0,0,.3)}.grafana-search-panel .selected td a,.grafana-search-panel tr.selected:nth-child(odd)>td a{color:#fff}.grafana-search-panel .selected-tag .label-tag{background-color:#01a6e6}.search-tagview-switch{position:absolute;top:15px;right:263px;color:#00384e}.search-tagview-switch.active{color:#01a6e6}.row-button{width:24px}.modal{margin:5%;width:90%}.grafana-search-metric-actions{visibility:hidden;padding-left:20px}.grafana-search-metric-name{white-space:nowrap}.grafana-search-metric-result:hover .grafana-search-metric-actions{visibility:visible}.grafana-search-metric-result:hover .grafana-search-metric-name{color:#01a6e6}.yaxisLabel{top:50%;left:-20px;transform:rotate(-90deg);-o-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-webkit-transform:rotate(-90deg);transform-origin:0 0;-o-transform-origin:0 0;-ms-transform-origin:0 0;-moz-transform-origin:0 0;-webkit-transform-origin:0 0}.axisLabel{color:#555;font-size:11.9px;position:absolute;text-align:center;font-size:12px}.hidden-series a{color:#000101}.panel-fullscreen{z-index:100;display:block!important;position:fixed;left:0;right:0;top:54px;padding:0 10px;background:#fff;overflow-y:scroll;height:100%}.panel-fullscreen .panel-content{padding-bottom:130px}.dashboard-fullscreen .container-fluid.main{height:0;width:0;position:fixed;right:-10000px}.grafana-legend-container{margin:0 15px;text-align:left;position:relative;top:2px}.grafana-legend-container .popover-content{padding:0}.histogram-legend{display:inline-block;padding:0 4px}.histogram-legend i{position:relative;top:2px}.histogram-legend-item{display:inline-block}.histogram-chart{position:relative}.histogram-legend-popover{width:200px}.histogram-legend-popover label{display:inline-block}.histogram-legend-popover .btn{padding:1px 3px;margin-right:0;line-height:initial}.histogram-legend-popover .close{margin-right:5px;color:#01a6e6;opacity:.7;text-shadow:none}.histogram-legend-popover .editor-row{padding:5px}.panel-full-edit-tabs{margin-top:10px;min-height:250px;margin-left:-10px;margin-right:-10px;background-color:#f8f8f8;border-top:1px solid #fff}.panel-full-edit-tabs .tabs .nav-tabs{margin:0;background:#fff;border-top:1px solid #fff}.panel-full-edit-tabs .tabs .tab-content{display:none}.panel-full-edit-tabs .tab-content{overflow:visible;padding:15px}.panel-full-edit-tabs .nav-tabs>li>a{line-height:15px;padding-top:6px;padding-bottom:6px;font-size:.8rem}.grafana-target:last-child{border-bottom:1px solid #dad9d9}.grafana-target-inner{border-top:1px solid #dad9d9;border-left:1px solid #dad9d9;border-right:1px solid #dad9d9;background:#fff;width:100%}.grafana-target-onoff{padding:5px 7px;display:inline-block}.grafana-segment-list{list-style:none;margin:0;margin-right:90px;margin-left:30px}.grafana-segment-list>li{float:left}.grafana-segment-dropdown-menu{margin-bottom:70px}.grafana-target-segment{padding:8px 7px;font-weight:400;border-right:1px solid #dad9d9;color:#555;display:inline-block}.has-open-function .grafana-target-segment{padding-top:25px}.grafana-target-hidden .grafana-target-segment{color:#959595}.grafana-target-segment:hover,.grafana-target-segment:focus{text-decoration:none}.grafana-target-segmenta:hover{background:#f2f2f2}.grafana-target-function{background:#f2f2f2}.grafana-target-function>a{color:#555}.grafana-target-function>a:hover{color:#01a6e6}.grafana-target-function.show-function-controls{padding-top:5px;min-width:100px;text-align:center}input[type=text].grafana-function-param-input{background:transparent;border:0;margin:0;padding:0}.grafana-target-controls-left{list-style:none;float:left;width:30px;margin:0}.grafana-target-controls{width:120px;float:right;list-style:none;margin:0;text-align:right}.grafana-target-controls>li{display:inline-block;white-space:nowrap}.grafana-target-controls a{padding:8px 7px;position:relative;top:8px;color:#555;font-size:16px}.grafana-target-hidden .grafana-target-controls a{color:#959595}.grafana-target-controls a:hover,.grafana-target-controls a:focus{text-decoration:none}input[type=text].grafana-target-text-input{padding:8px 7px;border:0;margin:0;background:transparent;float:left;color:#555;border-radius:0}input[type=text].grafana-target-segment-input{border:0;border-right:1px solid #dad9d9;margin:0;border-radius:0;padding:8px 4px}input[type=checkbox].grafana-target-option-checkbox{margin:0}select.grafana-target-segment-input{border:0;border-right:1px solid #dad9d9;margin:0;border-radius:0;height:36px;padding:8px 5px}.grafana-target .dropdown{padding:0;margin:0}.graphite-func-controls{display:none;text-align:center}.graphite-func-controls .icon-arrow-left{float:left;position:relative;top:2px}.graphite-func-controls .icon-arrow-right{float:right;position:relative;top:2px}.graphite-func-controls .icon-remove{margin-left:10px}.grafana-target .popover-content{padding:0}.scrollable{max-height:300px;overflow:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar:hover{height:8px}::-webkit-scrollbar-button:start:decrement,::-webkit-scrollbar-button:end:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement{display:none}::-webkit-scrollbar-button:horizontal:increment{display:none}::-webkit-scrollbar-button:vertical:decrement{display:none}::-webkit-scrollbar-button:vertical:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement:active{background-image:none}::-webkit-scrollbar-button:horizontal:increment:active{background-image:none}::-webkit-scrollbar-button:vertical:decrement:active{background-image:none}::-webkit-scrollbar-button:vertical:increment:active{background-image:none}::-webkit-scrollbar-track-piece{background-color:grayDark}::-webkit-scrollbar-thumb:vertical{height:50px;background:-webkit-gradient(linear,left top,right top,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #0d0d0d;border-top:1px solid #666;border-left:1px solid #666}::-webkit-scrollbar-thumb:horizontal{width:50px;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #1f1f1f;border-top:1px solid #666;border-left:1px solid #666}.sp-replacer{background:inherit;border:0;color:inherit}.sp-replacer:hover,.sp-replacer.sp-active{border-color:inherit;color:inherit}.sp-container{border-radius:0;background-color:#eee;border:0;padding:0}.sp-palette-container,.sp-picker-container{border:0}.sp-dd{display:none}.sp-preview{position:relative;width:15px;height:15px;border:0;margin-right:5px;float:left;z-index:0}.datapoints-warning{pointer:none;position:absolute;top:50%;left:50%;z-index:10;margin-top:-50px;margin-left:-100px;width:200px;text-align:center;cursor:auto;padding:10px}.grafana-version-footer{padding-top:15px;text-align:left} \ No newline at end of file diff --git a/app/dash/css/default.min.a9bd22e8.css b/app/dash/css/default.min.a9bd22e8.css deleted file mode 100644 index d7e511c..0000000 --- a/app/dash/css/default.min.a9bd22e8.css +++ /dev/null @@ -1,26 +0,0 @@ -@charset "UTF-8";/*! normalize.css v1.0.1 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.75em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:1em 40px}dfn{font-style:italic}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:0}form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}/*! - * Bootstrap v2.3.2 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{max-width:100%;width:auto\9;height:auto;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}label,select,button,input[type=button],input[type=reset],input[type=submit],input[type=radio],input[type=checkbox]{cursor:pointer}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}@media print{*{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#bbbfc2;background-color:#161616}a{color:#f2f2f2;text-decoration:none}a:hover,a:focus{color:#fff;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0}.row:after{clear:both}[class*=span]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0}.row-fluid:after{clear:both}.row-fluid [class*=span]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.127659574468085%;*margin-left:2.074468085106383%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .controls-row [class*=span]+[class*=span]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*=span].hide,.row-fluid [class*=span].hide{display:none}[class*=span].pull-right,.row-fluid [class*=span].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;content:"";line-height:0}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;content:"";line-height:0}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:700}em{font-style:italic}cite{font-style:normal}.muted{color:#adafae}a.muted:hover,a.muted:focus{color:#939695}.text-warning{color:#a47e3c}a.text-warning:hover,a.text-warning:focus{color:#7f612e}.text-error{color:#b94a48}a.text-error:hover,a.text-error:focus{color:#953b39}.text-info{color:#09c}a.text-info:hover,a.text-info:focus{color:#007399}.text-success{color:#468847}a.text-success:hover,a.text-success:focus{color:#356635}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:700;line-height:20px;color:#fff;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:400;line-height:1;color:#adafae}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #bbbfc2}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;*zoom:1;padding-left:5px;padding-right:5px}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:700}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;content:"";line-height:0}.dl-horizontal:after{clear:both}.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}hr{margin:20px 0;border:0;border-top:1px solid #303030;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #adafae}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #bbbfc2}blockquote p{margin-bottom:0;font-size:17.5px;font-weight:300;line-height:1.25}blockquote small{display:block;line-height:20px;color:#adafae}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #bbbfc2;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:12px;color:#303030;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8;white-space:nowrap}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#303030;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#adafae}label,input,button,select,textarea{font-size:14px;font-weight:400;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#000;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:middle}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{background-color:#4a4a4a;border:1px solid #636363;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type=text]:focus,input[type=password]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=week]:focus,input[type=number]:focus,input[type=email]:focus,input[type=url]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)}input[type=radio],input[type=checkbox]{margin:4px 0 0;*margin-top:0;margin-top:1px \9;line-height:normal}input[type=file],input[type=image],input[type=submit],input[type=reset],input[type=button],input[type=radio],input[type=checkbox]{width:auto}select,input[type=file]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;border:1px solid #636363;background-color:#4a4a4a}select[multiple],select[size]{height:auto}select:focus,input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#adafae;background-color:#474747;border-color:#636363;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);box-shadow:inset 0 1px 2px rgba(0,0,0,.025);cursor:not-allowed}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#788086}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#788086}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#788086}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type=radio],.checkbox input[type=checkbox]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*=span],select[class*=span],textarea[class*=span],.uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span]{float:none;margin-left:0}.input-append input[class*=span],.input-append .uneditable-input[class*=span],.input-prepend input[class*=span],.input-prepend .uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span],.row-fluid .input-prepend [class*=span],.row-fluid .input-append [class*=span]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*=span]+[class*=span]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;content:"";line-height:0}.controls-row:after{clear:both}.controls-row [class*=span],.row-fluid .controls-row [class*=span]{float:left}.controls-row .checkbox[class*=span],.controls-row .radio[class*=span]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#555}input[type=radio][disabled],input[type=checkbox][disabled],input[type=radio][readonly],input[type=checkbox][readonly]{background-color:transparent}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#a47e3c}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#a47e3c}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#7f612e;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#a47e3c;background-color:#bbbfc2;border-color:#a47e3c}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#bbbfc2;border-color:#b94a48}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#bbbfc2;border-color:#468847}.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#09c}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#09c}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#09c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#007399;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#09c;background-color:#bbbfc2;border-color:#09c}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:transparent;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;content:"";line-height:0}.form-actions:after{clear:both}.help-block,.help-inline{color:#e3e5e6}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding-left:5px}.input-append,.input-prepend{display:inline-block;margin-bottom:10px;vertical-align:middle;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu,.input-append .popover,.input-prepend .popover{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:400;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#bbbfc2;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#bf3;border-color:#690}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;*zoom:1;margin-bottom:0;vertical-align:middle}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type=radio],.form-search .checkbox input[type=checkbox],.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;content:"";line-height:0}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #303030}.table th{font-weight:700}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #303030}.table .table{background-color:#161616}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #303030;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.table-bordered th,.table-bordered td{border-left:1px solid #303030}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:rgba(100,100,100,.3)}.table-hover tbody tr:hover>td,.table-hover tbody tr:hover>th{background-color:#303030}table td[class*=span],table th[class*=span],.row-fluid table td[class*=span],.row-fluid table th[class*=span]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success>td{background-color:#bbbfc2}.table tbody tr.error>td{background-color:#bbbfc2}.table tbody tr.warning>td{background-color:#bbbfc2}.table tbody tr.info>td{background-color:#bbbfc2}.table-hover tbody tr.success:hover>td{background-color:#aeb2b6}.table-hover tbody tr.error:hover>td{background-color:#aeb2b6}.table-hover tbody tr.warning:hover>td{background-color:#aeb2b6}.table-hover tbody tr.info:hover>td{background-color:#aeb2b6}[class^=icon-],[class*=" icon-"]{display:inline-block;width:14px;height:14px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url(../img/glyphicons-halflings.png);background-position:14px 14px;background-repeat:no-repeat;margin-top:1px}.icon-white,.nav-pills>.active>a>[class^=icon-],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^=icon-],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^=icon-],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^=icon-],.dropdown-menu>li>a:focus>[class^=icon-],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>li>a:focus>[class*=" icon-"],.dropdown-menu>.active>a>[class^=icon-],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^=icon-],.dropdown-submenu:focus>a>[class^=icon-],.dropdown-submenu:hover>a>[class*=" icon-"],.dropdown-submenu:focus>a>[class*=" icon-"]{background-image:url(../img/glyphicons-halflings-white.png)}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{background-position:-216px -120px;width:16px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px;width:16px}.icon-folder-open{background-position:-408px -120px;width:16px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#303030;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:transparent;border-bottom:1px solid #222}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:20px;color:#bbbfc2;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{text-decoration:none;color:#fff;background-color:#2ab2e4;background-image:-moz-linear-gradient(top,#33b5e5,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#33b5e5),to(#1dade2));background-image:-webkit-linear-gradient(top,#33b5e5,#1dade2);background-image:-o-linear-gradient(top,#33b5e5,#1dade2);background-image:linear-gradient(to bottom,#33b5e5,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff33b5e5', endColorstr='#ff1dade2', GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#2ab2e4;background-image:-moz-linear-gradient(top,#33b5e5,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#33b5e5),to(#1dade2));background-image:-webkit-linear-gradient(top,#33b5e5,#1dade2);background-image:-o-linear-gradient(top,#33b5e5,#1dade2);background-image:linear-gradient(to bottom,#33b5e5,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff33b5e5', endColorstr='#ff1dade2', GradientType=0)}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#adafae}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:default}.open{*z-index:1000}.open>.dropdown-menu{display:block}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px;-moz-border-radius:0 6px 6px;border-radius:0 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#000;margin-top:5px;margin-right:-10px}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-left:20px;padding-right:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#131517;border:1px solid #030303;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-large{padding:24px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well-small{padding:9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:700;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;*zoom:1;padding:4px 12px;margin-bottom:0;font-size:14px;line-height:20px;text-align:center;vertical-align:middle;cursor:pointer;color:#303030;text-shadow:0 1px 1px rgba(255,255,255,.75);background-color:#9ea09f;background-image:-moz-linear-gradient(top,#adafae,#868988);background-image:-webkit-gradient(linear,0 0,0 100%,from(#adafae),to(#868988));background-image:-webkit-linear-gradient(top,#adafae,#868988);background-image:-o-linear-gradient(top,#adafae,#868988);background-image:linear-gradient(to bottom,#adafae,#868988);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffadafae', endColorstr='#ff868988', GradientType=0);border-color:#868988 #868988 #606362;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#868988;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border:1px solid #bbb;*border:0;border-bottom-color:#a2a2a2;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*margin-left:.3em;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#303030;background-color:#868988;*background-color:#797d7b}.btn:active,.btn.active{background-color:#6d706e \9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#303030;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.btn-large [class^=icon-],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-small [class^=icon-],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^=icon-],.btn-mini [class*=" icon-"]{margin-top:-1px}.btn-mini{padding:0 6px;font-size:10.5px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,.75)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#38b7e5;background-image:-moz-linear-gradient(top,#4abde8,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#4abde8),to(#1dade2));background-image:-webkit-linear-gradient(top,#4abde8,#1dade2);background-image:-o-linear-gradient(top,#4abde8,#1dade2);background-image:linear-gradient(to bottom,#4abde8,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff4abde8', endColorstr='#ff1dade2', GradientType=0);border-color:#1dade2 #1dade2 #14799e;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#1dade2;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#1dade2;*background-color:#1a9bcb}.btn-primary:active,.btn-primary.active{background-color:#178ab4 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#f58a0f;background-image:-moz-linear-gradient(top,#ff941a,#e67a00);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ff941a),to(#e67a00));background-image:-webkit-linear-gradient(top,#ff941a,#e67a00);background-image:-o-linear-gradient(top,#ff941a,#e67a00);background-image:linear-gradient(to bottom,#ff941a,#e67a00);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff941a', endColorstr='#ffe67a00', GradientType=0);border-color:#e67a00 #e67a00 #995200;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#e67a00;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#e67a00;*background-color:#cc6d00}.btn-warning:active,.btn-warning.active{background-color:#b35f00 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#d10000;background-image:-moz-linear-gradient(top,#e60000,#b30000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#e60000),to(#b30000));background-image:-webkit-linear-gradient(top,#e60000,#b30000);background-image:-o-linear-gradient(top,#e60000,#b30000);background-image:linear-gradient(to bottom,#e60000,#b30000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe60000', endColorstr='#ffb30000', GradientType=0);border-color:#b30000 #b30000 #600;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#b30000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#b30000;*background-color:#900}.btn-danger:active,.btn-danger.active{background-color:maroon \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#699e00;background-image:-moz-linear-gradient(top,#77b300,#558000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#77b300),to(#558000));background-image:-webkit-linear-gradient(top,#77b300,#558000);background-image:-o-linear-gradient(top,#77b300,#558000);background-image:linear-gradient(to bottom,#77b300,#558000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff77b300', endColorstr='#ff558000', GradientType=0);border-color:#558000 #558000 #230;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#558000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#558000;*background-color:#460}.btn-success:active,.btn-success.active{background-color:#334d00 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#993dc7;background-image:-moz-linear-gradient(top,#a347d1,#8a2eb8);background-image:-webkit-gradient(linear,0 0,0 100%,from(#a347d1),to(#8a2eb8));background-image:-webkit-linear-gradient(top,#a347d1,#8a2eb8);background-image:-o-linear-gradient(top,#a347d1,#8a2eb8);background-image:linear-gradient(to bottom,#a347d1,#8a2eb8);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffa347d1', endColorstr='#ff8a2eb8', GradientType=0);border-color:#8a2eb8 #8a2eb8 #5c1f7a;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#8a2eb8;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#8a2eb8;*background-color:#7a29a3}.btn-info:active,.btn-info.active{background-color:#6b248f \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#080808;background-image:-moz-linear-gradient(top,#0d0d0d,#000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#0d0d0d),to(#000));background-image:-webkit-linear-gradient(top,#0d0d0d,#000);background-image:-o-linear-gradient(top,#0d0d0d,#000);background-image:linear-gradient(to bottom,#0d0d0d,#000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0d0d0d', endColorstr='#ff000000', GradientType=0);border-color:#000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#000;*background-color:#000}.btn-inverse:active,.btn-inverse.active{background-color:#000 \9}button.btn,input[type=submit].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type=submit].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type=submit].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type=submit].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type=submit].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{border-color:transparent;cursor:pointer;color:#f2f2f2;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover,.btn-link:focus{color:#fff;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#303030;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*zoom:1;font-size:0;vertical-align:middle;white-space:nowrap;*margin-left:.3em}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{font-size:0;margin-top:10px;margin-bottom:10px}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);*padding-top:5px;*padding-bottom:5px}.btn-group>.btn-mini+.dropdown-toggle{padding-left:5px;padding-right:5px;*padding-top:2px;*padding-bottom:2px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{padding-left:12px;padding-right:12px;*padding-top:7px;*padding-bottom:7px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-group.open .btn.dropdown-toggle{background-color:#868988}.btn-group.open .btn-primary.dropdown-toggle{background-color:#1dade2}.btn-group.open .btn-warning.dropdown-toggle{background-color:#e67a00}.btn-group.open .btn-danger.dropdown-toggle{background-color:#b30000}.btn-group.open .btn-success.dropdown-toggle{background-color:#558000}.btn-group.open .btn-info.dropdown-toggle{background-color:#8a2eb8}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#000}.btn .caret{margin-top:8px;margin-left:0}.btn-large .caret{margin-top:6px}.btn-large .caret{border-left-width:5px;border-right-width:5px;border-top-width:5px}.btn-mini .caret,.btn-small .caret{margin-top:8px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-left:0;margin-top:-1px}.btn-group-vertical>.btn:first-child{-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,.5);background-color:#bbbfc2;border:1px solid transparent;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.alert,.alert h4{color:#a47e3c}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{background-color:#bbbfc2;border-color:#aeb4b6;color:#468847}.alert-success h4{color:#468847}.alert-danger,.alert-error{background-color:#bbbfc2;border-color:#b3b9bb;color:#b94a48}.alert-danger h4,.alert-error h4{color:#b94a48}.alert-info{background-color:#bbbfc2;border-color:#a8afb1;color:#09c}.alert-info h4{color:#09c}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-left:0;margin-bottom:20px;list-style:none}.nav>li>a{display:block}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#bbbfc2}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:700;line-height:20px;color:#adafae;text-shadow:0 1px 0 rgba(255,255,255,.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-left:15px;padding-right:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-left:-15px;margin-right:-15px;text-shadow:0 1px 0 rgba(255,255,255,.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.2);background-color:#f2f2f2}.nav-list [class^=icon-],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;content:"";line-height:0}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#bbbfc2 #bbbfc2 #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#bbb;background-color:#161616;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#f2f2f2}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{border-color:#ddd;z-index:2}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{border-top-color:#f2f2f2;border-bottom-color:#f2f2f2;margin-top:6px}.nav .dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#bbb;border-bottom-color:#bbb}.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#adafae;border-color:#adafae}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav li.dropdown.open a:focus .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover,.tabs-stacked .open>a:focus{border-color:#adafae}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;content:"";line-height:0}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-bottom-color:transparent;border-top-color:#ddd}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#bbbfc2 #ddd #bbbfc2 #bbbfc2}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#bbbfc2 #bbbfc2 #bbbfc2 #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#adafae}.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;background-color:transparent;cursor:default}.navbar{overflow:visible;margin-bottom:20px;*position:relative;*z-index:2}.navbar-inner{min-height:50px;padding-left:20px;padding-right:20px;background-color:#1f1f1f;background-image:-moz-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#1f1f1f),to(#1f1f1f));background-image:-webkit-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:-o-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:linear-gradient(to bottom,#1f1f1f,#1f1f1f);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1f1f1f', endColorstr='#ff1f1f1f', GradientType=0);border:1px solid #000;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,.065);box-shadow:0 1px 4px rgba(0,0,0,.065);*zoom:1}.navbar-inner:before,.navbar-inner:after{display:table;content:"";line-height:0}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{float:left;display:block;padding:15px 20px;margin-left:-20px;font-size:20px;font-weight:200;color:#adafae;text-shadow:0 1px 0 #1f1f1f}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}.navbar-text{margin-bottom:0;line-height:50px;color:#adafae}.navbar-link{color:#adafae}.navbar-link:hover,.navbar-link:focus{color:#fff}.navbar .divider-vertical{height:50px;margin:0 9px;border-left:1px solid #1f1f1f;border-right:1px solid #1f1f1f}.navbar .btn,.navbar .btn-group{margin-top:10px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append .btn-group{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;content:"";line-height:0}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:10px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type=image],.navbar-form input[type=checkbox],.navbar-form input[type=radio]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:10px;margin-bottom:0}.navbar-search .search-query{margin-bottom:0;padding:4px 14px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:400;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-left:0;padding-right:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);box-shadow:0 1px 10px rgba(0,0,0,.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,.1);box-shadow:0 -1px 10px rgba(0,0,0,.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:15px;color:#adafae;text-decoration:none;text-shadow:0 1px 0 #1f1f1f}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{background-color:transparent;color:#fff;text-decoration:none}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#fff;text-decoration:none;background-color:#1f1f1f;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);box-shadow:inset 0 3px 8px rgba(0,0,0,.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-left:5px;margin-right:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#121212;background-image:-moz-linear-gradient(top,#121212,#121212);background-image:-webkit-gradient(linear,0 0,0 100%,from(#121212),to(#121212));background-image:-webkit-linear-gradient(top,#121212,#121212);background-image:-o-linear-gradient(top,#121212,#121212);background-image:linear-gradient(to bottom,#121212,#121212);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff121212', endColorstr='#ff121212', GradientType=0);border-color:#121212 #121212 #000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#121212;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#121212;*background-color:#050505}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#000 \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 1px 0 rgba(0,0,0,.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:9px}.navbar .nav>li>.dropdown-menu:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #303030;position:absolute;top:-6px;left:10px}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{border-top:7px solid #ccc;border-top-color:rgba(0,0,0,.2);border-bottom:0;bottom:-7px;top:auto}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{border-top:6px solid #303030;border-bottom:0;bottom:-6px;top:auto}.navbar .nav li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{background-color:#1f1f1f;color:#fff}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#adafae;border-bottom-color:#adafae}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{left:auto;right:0}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{left:auto;right:12px}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{left:auto;right:13px}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{left:auto;right:100%;margin-left:0;margin-right:-1px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{background-color:#252a30;background-image:-moz-linear-gradient(top,#252a30,#252a30);background-image:-webkit-gradient(linear,0 0,0 100%,from(#252a30),to(#252a30));background-image:-webkit-linear-gradient(top,#252a30,#252a30);background-image:-o-linear-gradient(top,#252a30,#252a30);background-image:linear-gradient(to bottom,#252a30,#252a30);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff252a30', endColorstr='#ff252a30', GradientType=0);border-color:transparent}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#adafae;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse .nav>li>a:focus{color:#fff}.navbar-inverse .brand{color:#adafae}.navbar-inverse .navbar-text{color:#adafae}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{background-color:#242a31;color:#fff}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#242a31}.navbar-inverse .navbar-link{color:#adafae}.navbar-inverse .navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}.navbar-inverse .divider-vertical{border-left-color:#252a30;border-right-color:#252a30}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#242a31;color:#fff}.navbar-inverse .nav li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#adafae;border-bottom-color:#adafae}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#5d6978;border-color:#252a30;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#303030;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);-moz-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15);outline:0}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#1a1d22;background-image:-moz-linear-gradient(top,#1a1d22,#1a1d22);background-image:-webkit-gradient(linear,0 0,0 100%,from(#1a1d22),to(#1a1d22));background-image:-webkit-linear-gradient(top,#1a1d22,#1a1d22);background-image:-o-linear-gradient(top,#1a1d22,#1a1d22);background-image:linear-gradient(to bottom,#1a1d22,#1a1d22);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1a1d22', endColorstr='#ff1a1d22', GradientType=0);border-color:#1a1d22 #1a1d22 #000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#1a1d22;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#1a1d22;*background-color:#0f1113}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#040405 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.breadcrumb>li{display:inline-block;*display:inline;*zoom:1;text-shadow:0 1px 0 #fff}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}.breadcrumb>.active{color:#adafae}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;*zoom:1;margin-left:0;margin-bottom:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#161616;border:1px solid transparent;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#33b5e5}.pagination ul>.active>a,.pagination ul>.active>span{color:#adafae;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>a:focus{color:#adafae;background-color:transparent;cursor:default}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-top-left-radius:2px;-moz-border-radius-topleft:2px;border-top-left-radius:2px;-webkit-border-bottom-left-radius:2px;-moz-border-radius-bottomleft:2px;border-bottom-left-radius:2px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:2px;-moz-border-radius-topright:2px;border-top-right-radius:2px;-webkit-border-bottom-right-radius:2px;-moz-border-radius-bottomright:2px;border-bottom-right-radius:2px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:10.5px}.pager{margin:20px 0;list-style:none;text-align:center;*zoom:1}.pager:before,.pager:after{display:table;content:"";line-height:0}.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;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#adafae;background-color:#fff;cursor:default}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:absolute;z-index:1050;width:100%;background-color:#fff;-webkit-box-shadow:0 3px 7px rgba(0,0,0,.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,.3);box-shadow:0 3px 7px rgba(0,0,0,.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;outline:0}.modal.fade{-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out;top:-25%}.modal.fade.in{top:10%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{position:relative;overflow-y:auto;padding:15px}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;*zoom:1}.modal-footer:before,.modal-footer:after{display:table;content:"";line-height:0}.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}.tooltip{position:absolute;z-index:1020;display:block;visibility:visible;font-size:11px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.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:8px;color:#fff;text-align:center;text-decoration:none;background-color:#303030;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.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:#303030}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#303030}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#303030}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#303030}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#303030;-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.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;font-weight:400;line-height:18px;background-color:#303030;border-bottom:1px solid #232323;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-title:empty{display:none}.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{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.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{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.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{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.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{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;content:"";line-height:0}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,.055);box-shadow:0 1px 3px rgba(0,0,0,.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover,a.thumbnail:focus{border-color:#f2f2f2;-webkit-box-shadow:0 1px 4px rgba(0,105,214,.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,.25);box-shadow:0 1px 4px rgba(0,105,214,.25)}.thumbnail>img{display:block;max-width:100%;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#bbb}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:700;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#adafae}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-left:9px;padding-right:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f80}.label-warning[href],.badge-warning[href]{background-color:#cc6d00}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#09c}.label-info[href],.badge-info[href]{background-color:#007399}.label-inverse,.badge-inverse{background-color:#303030}.label-inverse[href],.badge-inverse[href]{background-color:#161616}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.progress .bar{width:0;height:100%;color:#fff;float:left;font-size:12px;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#ff9d2e;background-image:-moz-linear-gradient(top,#ffac4d,#f80);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ffac4d),to(#f80));background-image:-webkit-linear-gradient(top,#ffac4d,#f80);background-image:-o-linear-gradient(top,#ffac4d,#f80);background-image:linear-gradient(to bottom,#ffac4d,#f80);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffac4d', endColorstr='#ffff8800', GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#ffac4d;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{overflow:hidden;width:100%;position:relative}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;line-height:1}.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:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#1f1f1f;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{left:auto;right:15px}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none}.carousel-indicators li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,.25);border-radius:5px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;left:0;right:0;bottom:0;padding:15px;background:#303030;background:rgba(0,0,0,.75)}.carousel-caption h4,.carousel-caption p{color:#fff;line-height:20px}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#303030;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;color:inherit;letter-spacing:-1px}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}label,input,button,select,textarea,.navbar .search-query:-moz-placeholder,.navbar .search-query::-webkit-input-placeholder{font-family:'Droid Sans',sans-serif;color:#bbb}blockquote{border-left:5px solid #303030}blockquote.pull-right{border-right:5px solid #303030}html{min-height:100%}body{min-height:100%;background:#161616}.page-header{border-bottom:1px solid #303030}hr{border-bottom:0}.navbar .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.navbar .brand{padding:15px 20px;color:#bbbfc2;font-weight:400;text-shadow:none}.navbar .nav>li>a{padding:15px 15px 14px;border-bottom:1px solid transparent}.navbar .nav>li>a:hover,.navbar .nav>.active>a,.navbar .nav>.active>a:hover{border-bottom:1px solid #33b5e5}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.navbar .navbar-text{margin-bottom:1px;padding:15px 15px 14px;line-height:inherit}.navbar .divider-vertical{margin:0;border-left:1px solid #303030;border-right-width:0}.navbar .search-query,.navbar .search-query:focus,.navbar .search-query.focused{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;background-color:#303030;line-height:normal;color:#adafae;text-shadow:none}.navbar .search-query:-moz-placeholder,.navbar .search-query:focus:-moz-placeholder,.navbar .search-query.focused:-moz-placeholder{color:#bbb}.navbar .search-query:-ms-input-placeholder,.navbar .search-query:focus:-ms-input-placeholder,.navbar .search-query.focused:-ms-input-placeholder{color:#bbb}.navbar .search-query::-webkit-input-placeholder,.navbar .search-query:focus::-webkit-input-placeholder,.navbar .search-query.focused::-webkit-input-placeholder{color:#bbb}@media(max-width:979px){.navbar .nav-collapse .nav li>a{border:0;color:#bbbfc2;font-weight:400;text-shadow:none}.navbar .nav-collapse .nav li>a:hover{border:0;background-color:#33b5e5}.navbar .nav-collapse .nav .active>a{border:0;background-color:#33b5e5}.navbar .nav-collapse .dropdown-menu a:hover{background-color:#33b5e5}.navbar .nav-collapse .navbar-form,.navbar .nav-collapse .navbar-search{border-top:0;border-bottom:0}.navbar .nav-collapse .nav-header{color:rgba(128,128,128,.6)}.navbar-inverse .nav-collapse .nav li>a:hover{background-color:#111}.navbar-inverse .nav-collapse .nav .active>a{background-color:#111}.navbar-inverse .nav-collapse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav-collapse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav-collapse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#111}}.dropdown-menu{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}div.subnav{margin:0 1px;background-color:#1f1f1f;background-image:none;border:0;border-bottom:1px solid #303030}div.subnav .nav>li>a,div.subnav .nav>li:first-child>a,div.subnav .nav>li:first-child>a:hover{padding:11px 12px;border:0;background-color:#1f1f1f;color:#adafae}div.subnav .nav>li>a:hover,div.subnav .nav>li.active>a,div.subnav .nav>li.active>a:hover,div.subnav .nav>li:first-child>a:hover{padding:11px 12px;background:transparent;border:0;border-bottom:1px solid #33b5e5;color:#fff}div.subnav .nav li.nav-header{text-shadow:none}div.subnav-fixed{top:50px;margin:0}.nav-tabs{border-bottom:1px solid #303030}.nav-tabs>li>a{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs li>a:hover,.nav-tabs li.active>a,.nav-tabs li.active>a:hover{border-color:transparent;background-color:#33b5e5;color:#fff}.nav-tabs li.disabled>a{color:#bbbfc2}.nav-tabs .open .dropdown-toggle{background-color:#060606;border-color:transparent}.nav-pills li>a:hover{background-color:#33b5e5;color:#fff}.nav-pills li.disabled>a{color:#bbbfc2}.nav-pills .open .dropdown-toggle{background-color:#060606}.nav-pills .dropdown-menu li>a:hover{border:0}.nav-list li>a{text-shadow:none}.nav-list li>a:hover{background-color:#33b5e5;color:#fff}.nav-list .nav-header{text-shadow:none}.nav-list .divider{background-color:transparent;border-bottom:1px solid #303030}.nav-stacked li>a{border:1px solid #303030!important}.nav-stacked li>a:hover,.nav-stacked li.active>a{background-color:#33b5e5;color:#fff}.tabbable .nav-tabs,.tabbable .nav-tabs li.active>a{border-color:#303030}.breadcrumb{background-color:transparent;background-image:none;border-width:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:14px}.breadcrumb li{text-shadow:none}.breadcrumb li>a{color:#33b5e5;text-shadow:none}.pagination ul{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>span,.pagination ul>.disabled>span:hover{background-color:rgba(0,0,0,.2)}.pager li>a,.pager li>span{background-color:#161616;border:0}.pager li>a:hover,.pager li>span:hover{background-color:#33b5e5}.pager .disabled a,.pager .disabled a:hover{background-color:#161616}.btn{padding:5px 12px;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;text-shadow:none}.btn.disabled{box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-large{padding:22px 30px}.btn-small{padding:2px 10px}.btn-mini{padding:2px 6px}.btn-group>.btn:first-child,.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.dropdown-toggle{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}input,textarea,select{border-width:2px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{color:#adafae}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly],.uneditable-input{border-color:#444}input:focus,textarea:focus,input.focused,textarea.focused{border-color:#52a8ec;outline:0;outline:thin dotted \9}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus,select:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}legend,label{color:#bbbfc2;border-bottom:0 solid #222}.form-actions{border-top:1px solid #222}.table{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.table tbody tr.success td{background-color:#690;color:#fff}.table tbody tr.error td{background-color:#c00;color:#fff}.table tbody tr.info td{background-color:#33b5e5;color:#fff}.alert,.alert .alert-heading,.alert-success,.alert-success .alert-heading,.alert-danger,.alert-error,.alert-danger .alert-heading,.alert-error .alert-heading,.alert-info,.alert-info .alert-heading{color:#bbbfc2;text-shadow:none;border:0}.label{color:#bbbfc2}.badge{border-radius:0;font-weight:200}.label,.alert{background-color:#888}.label:hover{background-color:#6e6e6e}.label-important,.alert-danger,.alert-error{background-color:#c00}.label-important:hover{background-color:#900}.label-warning{background-color:#cc6d00}.label-warning:hover{background-color:#995200}.label-success,.alert-success{background-color:#5c8a00}.label-success:hover{background-color:#3a5700}.label-info,.alert-info{background-color:#007399}.label-info:hover{background-color:#004d66}a:hover{text-decoration:none}.well,.hero-unit{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.well,.hero-unit{border-top:solid 1px #3d3d3d;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.8);-moz-box-shadow:0 2px 4px rgba(0,0,0,.8);box-shadow:0 2px 4px rgba(0,0,0,.8)}.thumbnail{border-color:#303030}.progress{background-color:#060606;background-image:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.modal{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border-top:solid 1px #3d3d3d;background-color:#303030}.modal-header{border-bottom:1px solid #303030}.modal-footer{background-color:#303030;border-top:1px solid #303030;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.popover{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.popover-title{border-bottom:0;color:#fff}.footer{border-top:1px solid #303030}@media(max-width:767px){div.panel{width:100%!important;padding:0!important}}.container-fluid{padding-left:0;padding-right:0}.container.grafana-container{padding:5px 10px;width:100%;box-sizing:border-box}.bgNav{background:#1f1f1f}.bgPrimary{background:#4abde8;color:rgba(255,255,255,.9)}.bgInfo{background:#a347d1;color:rgba(255,255,255,.9)}.bgSuccess{background:#77b300;color:rgba(255,255,255,.9)}.bgWarning{background:#ff941a;color:rgba(255,255,255,.9)}.bgDanger{background:#e60000;color:rgba(255,255,255,.9)}.bgInverse{background:#0d0d0d;color:rgba(255,255,255,.9)}code,pre{background-color:#bbbfc2}.panel{display:inline-table;vertical-align:top}.panel-container{padding:0;background:#1f1f1f;margin:5px}.panel-content{padding:0 10px 5px}.panel-title{border:0;font-weight:700}.panel-loading{position:absolute;top:0;right:4px;z-index:800}.panel div.panel-extra div.panel-extra-container{margin-right:-10px;margin-top:3px;text-align:center}.panel div.panel-extra div.panel-extra-container ul{text-align:left}.panel div.panel-extra{font-size:.9em;margin-bottom:0}.panel div.panel-extra .extra{float:right!important}.panel-error{color:#fff;padding:5px 10px 0}.panel-error-inspector-link{float:right;margin-right:10px}div.editor-row{vertical-align:top}div.editor-row div.section{margin-right:20px;vertical-align:top;display:inline-block}div.editor-option{vertical-align:top;display:inline-block;margin-right:10px}div.editor-option label{display:block}#events{font-size:12px}.version{font-size:85%}.legend{color:#000}div.fake-input{background-color:#4a4a4a;border:1px solid #636363;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}hr.small{margin:5px 0}form input.ng-invalid{color:#b94a48}.editor-title{margin-right:10px;font-size:1.7em;font-weight:700;text-transform:capitalize}.editor-title small{opacity:.5;font-size:.7em;font-weight:400}.bordered{border:1px solid #303030}.table-unpadded th,.table-unpadded td{padding:0 2px}.spy{position:absolute;right:0;top:0}.navbar-inner{border-width:0}.kibana-row{margin-bottom:5px}.row-tab .dropdown-menu-right{top:0;left:33px}.row-tab-button{padding:0;cursor:pointer;vertical-align:middle;width:30px;height:30px;text-align:center;display:inline-block;line-height:30px}.row-button{width:30px;text-align:center;float:left;cursor:pointer}.row-text{white-space:nowrap;text-transform:uppercase;font-weight:700;font-size:.9em;margin:0 10px}.row-close{padding:0;margin:0;min-height:30px!important;line-height:30px;background:#1f1f1f}.row-open{margin-top:5px;left:-34px;position:absolute;z-index:100;transition:.25s left;transition-delay:.25s;-webkit-transition-delay:.25s}.row-open:hover{left:-12px}.odd{background-color:rgba(100,100,100,.3)}.nomargin{margin:0}[ng\:cloak],[ng-cloak],.ng-cloak{display:none!important}.table tbody+tbody{border-top:0}.ui-draggable-dragging{display:block;z-index:9999}.dragInProgress .panel-container{border:3px solid rgba(100,100,100,.5)}.link{color:#f2f2f2;cursor:pointer}.link:hover{color:#fff}.pointer{cursor:pointer}.popover{max-width:480px}.modal{width:100%;top:0!important}.tiny{font-size:50%}.smaller{font-size:70%}.small{font-size:85%}.large{font-size:120%}.strong{font-weight:700}a{cursor:pointer}.normal{font-weight:400}.light{font-weight:200}.input-smaller{width:75px}.string{color:#c8ccce}.number{color:#00ace6}.boolean{color:#b78c43}.key{color:#c05c5a}.btn-active{background-color:#e6e6e6;background-image:none;box-shadow:0 2px 4px rgba(0,0,0,.15) inset,0 1px 2px rgba(0,0,0,.05);outline:0 none}.remove:hover{background-color:#b30000}.faded{opacity:.2}div.flot-text{color:#bbbfc2!important}.dashboard-notice{z-index:8000;margin-left:0;padding:3px 0;width:100%;padding-left:20px;color:#fff}.alert-warning{background-color:#bbbfc2;border-color:transparent;color:#a47e3c}.popover.topLeft{margin-top:-10px}.popover.topLeft .arrow{bottom:-10px;left:25%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#303030}.popover.topLeft .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.topRight{margin-top:-10px}.popover.topRight .arrow{bottom:-10px;left:75%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#303030}.popover.topRight .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.rightTop .arrow{top:10%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightTop .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.popover.rightBottom .arrow{top:90%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightBottom .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.popover.bottomLeft .arrow{left:10%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottomLeft .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.popover.bottomRight .arrow{left:90%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottomRight .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.popover.leftTop .arrow{top:10%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftTop .arrow:after{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.popover.leftBottom .arrow{top:90%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftBottom .arrow:after{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.popover.topLeft .arrow{left:10%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.topLeft .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.popover.topRight .arrow{left:90%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.topRight .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.label-tag{background-color:#93c;color:#f2f2f2}.label-tag:hover{background-color:#7a29a3;color:#fff}.annotation-editor-table td{white-space:nowrap}.save-dashboard-dropdown{padding:10px}.save-dashboard-dropdown li>a{padding-left:5px}.save-dashboard-dropdown-save-form{margin-bottom:5px}.inspector-request-table td{padding:5px}.inspector-request-table td:first-child{white-space:nowrap}code,pre{background-color:#1f1f1f;color:#bbbfc2}.submenu-controls{background:#292929;font-size:inherit}.submenu-controls label{margin:0;padding-right:4px;display:inline}.submenu-controls input[type=checkbox]{margin:0}.submenu-controls-visible:not(.hide-controls) .panel-fullscreen{top:82px}.submenu-panel{padding:0 4px 0 8px;border-right:1px solid #202020;float:left}.submenu-panel:first-child{padding-left:17px}.submenu-panel-title{float:left;text-transform:uppercase;padding:4px 10px 3px 0}.submenu-panel-wrapper{float:left}.submenu-toggle{padding:4px 0 3px 8px;float:left}.submenu-toggle .annotation-color-icon{position:relative;top:2px}.submenu-toggle:first-child{padding-left:0}.submenu-control-edit{padding:4px 4px 3px 8px;float:right;border-left:1px solid #202020;margin-left:8px}.annotation-disabled,.annotation-disabled a{color:#788086}.filtering-container{float:left}.filtering-container label{float:left}.filtering-container input[type=checkbox]{margin:0}.filter-panel-filter{display:inline-block;vertical-align:top;padding:4px 10px 3px;border-right:1px solid #202020}.filter-panel-filter:first-child{padding-left:0}.filter-panel-filter ul{margin-bottom:0}.filter-deselected{opacity:.5}.filtering-container .filter-action{float:right;padding-right:2px;margin-bottom:0!important;margin-left:0;margin-top:4px}.add-filter-action{padding:3px 5px 0;position:relative;top:4px}.filter-mandate{text-decoration:underline;cursor:pointer}.filter-apply{float:right}.bootstrap-tagsinput{display:inline-block;padding:4px 6px;margin-bottom:10px;color:#555;vertical-align:middle;border-radius:4px;max-width:100%;line-height:22px;background-color:#4a4a4a;border:1px solid #636363;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.bootstrap-tagsinput input{border:0;box-shadow:none;outline:0;background-color:transparent;padding:0;padding-left:5px;margin:0;width:auto!important;max-width:inherit}.bootstrap-tagsinput input:focus{border:0;box-shadow:none}.bootstrap-tagsinput .tag{margin-right:2px;color:#fff}.bootstrap-tagsinput .tag [data-role=remove]{margin-left:8px;cursor:pointer}.bootstrap-tagsinput .tag [data-role=remove]:after{content:"x";padding:0 2px}.bootstrap-tagsinput .tag [data-role=remove]:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.bootstrap-tagsinput .tag [data-role=remove]:hover:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.hide-controls{padding:0}.hide-controls .grafana-row{display:none}.hide-controls .submenu-controls{display:none}.hide-controls .add-row-panel-hint{display:none}.playlist-active .grafana-menu-zoom-out,.playlist-active .grafana-menu-save,.playlist-active .grafana-menu-load,.playlist-active .add-row-panel-hint,.playlist-active .grafana-menu-home,.playlist-active .grafana-menu-refresh,.playlist-active .grafana-menu-edit{display:none}.playlist-active .grafana-menu-stop-playlist{display:list-item}.grafana-search-panel{padding:6px 10px}.grafana-search-panel .search-field-wrapper input{width:100%}.grafana-search-panel .search-field-wrapper button{margin:0 2px 0 0}.grafana-search-panel .search-field-wrapper>span{display:block;overflow:hidden;padding-right:25px}.grafana-search-panel .selected td,.grafana-search-panel tr.selected:nth-child(odd)>td{background:#33b5e5;color:#fff;text-shadow:-1px -1px 1px rgba(0,0,0,.3)}.grafana-search-panel .selected td a,.grafana-search-panel tr.selected:nth-child(odd)>td a{color:#fff}.grafana-search-panel .selected-tag .label-tag{background-color:#33b5e5}.search-tagview-switch{position:absolute;top:15px;right:263px;color:#a6a6a6}.search-tagview-switch.active{color:#f2f2f2}.row-button{width:24px}.modal{margin:5%;width:90%}.grafana-search-metric-actions{visibility:hidden;padding-left:20px}.grafana-search-metric-name{white-space:nowrap}.grafana-search-metric-result:hover .grafana-search-metric-actions{visibility:visible}.grafana-search-metric-result:hover .grafana-search-metric-name{color:#33b5e5}.yaxisLabel{top:50%;left:-20px;transform:rotate(-90deg);-o-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-webkit-transform:rotate(-90deg);transform-origin:0 0;-o-transform-origin:0 0;-ms-transform-origin:0 0;-moz-transform-origin:0 0;-webkit-transform-origin:0 0}.axisLabel{color:#bbbfc2;font-size:11.9px;position:absolute;text-align:center;font-size:12px}.hidden-series a{color:#7f7f7f}.panel-fullscreen{z-index:100;display:block!important;position:fixed;left:0;right:0;top:54px;padding:0 10px;background:#1f1f1f;overflow-y:scroll;height:100%}.panel-fullscreen .panel-content{padding-bottom:130px}.dashboard-fullscreen .container-fluid.main{height:0;width:0;position:fixed;right:-10000px}.grafana-legend-container{margin:0 15px;text-align:left;position:relative;top:2px}.grafana-legend-container .popover-content{padding:0}.histogram-legend{display:inline-block;padding:0 4px}.histogram-legend i{position:relative;top:2px}.histogram-legend-item{display:inline-block}.histogram-chart{position:relative}.histogram-legend-popover{width:200px}.histogram-legend-popover label{display:inline-block}.histogram-legend-popover .btn{padding:1px 3px;margin-right:0;line-height:initial}.histogram-legend-popover .close{margin-right:5px;color:#f2f2f2;opacity:.7;text-shadow:none}.histogram-legend-popover .editor-row{padding:5px}.panel-full-edit-tabs{margin-top:10px;min-height:250px;margin-left:-10px;margin-right:-10px;background-color:transparent;border-top:1px solid #000}.panel-full-edit-tabs .tabs .nav-tabs{margin:0;background:#303030;border-top:1px solid #555}.panel-full-edit-tabs .tabs .tab-content{display:none}.panel-full-edit-tabs .tab-content{overflow:visible;padding:15px}.panel-full-edit-tabs .nav-tabs>li>a{line-height:15px;padding-top:6px;padding-bottom:6px;font-size:.8rem}.grafana-target:last-child{border-bottom:1px solid #000}.grafana-target-inner{border-top:1px solid #000;border-left:1px solid #000;border-right:1px solid #000;background:#303030;width:100%}.grafana-target-onoff{padding:5px 7px;display:inline-block}.grafana-segment-list{list-style:none;margin:0;margin-right:90px;margin-left:30px}.grafana-segment-list>li{float:left}.grafana-segment-dropdown-menu{margin-bottom:70px}.grafana-target-segment{padding:8px 7px;font-weight:400;border-right:1px solid #050505;color:#c8c8c8;display:inline-block}.has-open-function .grafana-target-segment{padding-top:25px}.grafana-target-hidden .grafana-target-segment{color:#888}.grafana-target-segment:hover,.grafana-target-segment:focus{text-decoration:none}.grafana-target-segmenta:hover{background:#444}.grafana-target-function{background:#444}.grafana-target-function>a{color:#c8c8c8}.grafana-target-function>a:hover{color:#f2f2f2}.grafana-target-function.show-function-controls{padding-top:5px;min-width:100px;text-align:center}input[type=text].grafana-function-param-input{background:transparent;border:0;margin:0;padding:0}.grafana-target-controls-left{list-style:none;float:left;width:30px;margin:0}.grafana-target-controls{width:120px;float:right;list-style:none;margin:0;text-align:right}.grafana-target-controls>li{display:inline-block;white-space:nowrap}.grafana-target-controls a{padding:8px 7px;position:relative;top:8px;color:#c8c8c8;font-size:16px}.grafana-target-hidden .grafana-target-controls a{color:#888}.grafana-target-controls a:hover,.grafana-target-controls a:focus{text-decoration:none}input[type=text].grafana-target-text-input{padding:8px 7px;border:0;margin:0;background:transparent;float:left;color:#c8c8c8;border-radius:0}input[type=text].grafana-target-segment-input{border:0;border-right:1px solid #050505;margin:0;border-radius:0;padding:8px 4px}input[type=checkbox].grafana-target-option-checkbox{margin:0}select.grafana-target-segment-input{border:0;border-right:1px solid #050505;margin:0;border-radius:0;height:36px;padding:8px 5px}.grafana-target .dropdown{padding:0;margin:0}.graphite-func-controls{display:none;text-align:center}.graphite-func-controls .icon-arrow-left{float:left;position:relative;top:2px}.graphite-func-controls .icon-arrow-right{float:right;position:relative;top:2px}.graphite-func-controls .icon-remove{margin-left:10px}.grafana-target .popover-content{padding:0}.scrollable{max-height:300px;overflow:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar:hover{height:8px}::-webkit-scrollbar-button:start:decrement,::-webkit-scrollbar-button:end:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement{display:none}::-webkit-scrollbar-button:horizontal:increment{display:none}::-webkit-scrollbar-button:vertical:decrement{display:none}::-webkit-scrollbar-button:vertical:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement:active{background-image:none}::-webkit-scrollbar-button:horizontal:increment:active{background-image:none}::-webkit-scrollbar-button:vertical:decrement:active{background-image:none}::-webkit-scrollbar-button:vertical:increment:active{background-image:none}::-webkit-scrollbar-track-piece{background-color:grayDark}::-webkit-scrollbar-thumb:vertical{height:50px;background:-webkit-gradient(linear,left top,right top,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #0d0d0d;border-top:1px solid #666;border-left:1px solid #666}::-webkit-scrollbar-thumb:horizontal{width:50px;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #1f1f1f;border-top:1px solid #666;border-left:1px solid #666}.sp-replacer{background:inherit;border:0;color:inherit}.sp-replacer:hover,.sp-replacer.sp-active{border-color:inherit;color:inherit}.sp-container{border-radius:0;background-color:#303030;border:0;padding:0}.sp-palette-container,.sp-picker-container{border:0}.sp-dd{display:none}.sp-preview{position:relative;width:15px;height:15px;border:0;margin-right:5px;float:left;z-index:0}.datapoints-warning{pointer:none;position:absolute;top:50%;left:50%;z-index:10;margin-top:-50px;margin-left:-100px;width:200px;text-align:center;cursor:auto;padding:10px}.grafana-version-footer{padding-top:15px;text-align:left}/*! - * Datepicker for Bootstrap - * - * Copyright 2012 Stefan Petre - * Improvements by Andrew Rowls - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - */.datepicker{padding:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker.datepicker-rtl{direction:rtl}.datepicker.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:6px}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:7px}.datepicker>div{display:none}.datepicker.days div.datepicker-days{display:block}.datepicker.months div.datepicker-months{display:block}.datepicker.years div.datepicker-years{display:block}.datepicker table{margin:0}.datepicker td,.datepicker th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border:0}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day:hover{background:#eee;cursor:pointer}.datepicker table tr td.old,.datepicker table tr td.new{color:#999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td.today,.datepicker table tr td.today:hover,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover{background-color:#fde19a;background-image:-moz-linear-gradient(top,#fdd49a,#fdf59a);background-image:-ms-linear-gradient(top,#fdd49a,#fdf59a);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fdd49a),to(#fdf59a));background-image:-webkit-linear-gradient(top,#fdd49a,#fdf59a);background-image:-o-linear-gradient(top,#fdd49a,#fdf59a);background-image:linear-gradient(top,#fdd49a,#fdf59a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);border-color:#fdf59a #fdf59a #fbed50;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#000!important}.datepicker table tr td.today:hover,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today[disabled],.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today.disabled:hover[disabled]{background-color:#fdf59a}.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active{background-color:#fbf069 \9}.datepicker table tr td.active,.datepicker table tr td.active:hover,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-ms-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(top,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active:hover,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active[disabled],.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active.disabled:hover[disabled]{background-color:#04c}.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active{background-color:#039 \9}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-ms-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(top,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active[disabled],.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active.disabled:hover[disabled]{background-color:#04c}.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active{background-color:#039 \9}.datepicker table tr td span.old{color:#999}.datepicker th.switch{width:145px}.datepicker thead tr:first-child th,.datepicker tfoot tr:first-child th{cursor:pointer}.datepicker thead tr:first-child th:hover,.datepicker tfoot tr:first-child th:hover{background:#eee}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.datepicker thead tr:first-child th.cw{cursor:default;background-color:transparent}.input-append.date .add-on i,.input-prepend.date .add-on i{display:block;cursor:pointer;width:16px;height:16px}/*! - * Timepicker Component for Twitter Bootstrap - * - * Copyright 2013 Joris de Wit - * - * Contributors https://github.com/jdewit/bootstrap-timepicker/graphs/contributors - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */.bootstrap-timepicker{position:relative}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu{left:auto;right:0}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before{left:auto;right:12px}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after{left:auto;right:13px}.bootstrap-timepicker .add-on{cursor:pointer}.bootstrap-timepicker .add-on i{display:inline-block;width:16px;height:16px}.bootstrap-timepicker-widget.dropdown-menu{padding:2px 3px 2px 2px}.bootstrap-timepicker-widget.dropdown-menu.open{display:inline-block}.bootstrap-timepicker-widget.dropdown-menu:before{border-bottom:7px solid rgba(0,0,0,.2);border-left:7px solid transparent;border-right:7px solid transparent;content:"";display:inline-block;left:9px;position:absolute;top:-7px}.bootstrap-timepicker-widget.dropdown-menu:after{border-bottom:6px solid #FFF;border-left:6px solid transparent;border-right:6px solid transparent;content:"";display:inline-block;left:10px;position:absolute;top:-6px}.bootstrap-timepicker-widget a.btn,.bootstrap-timepicker-widget input{border-radius:4px}.bootstrap-timepicker-widget table{width:100%;margin:0}.bootstrap-timepicker-widget table td{text-align:center;height:30px;margin:0;padding:2px}.bootstrap-timepicker-widget table td:not(.separator){min-width:30px}.bootstrap-timepicker-widget table td span{width:100%}.bootstrap-timepicker-widget table td a{border:1px transparent solid;width:100%;display:inline-block;margin:0;padding:8px 0;outline:0;color:#333}.bootstrap-timepicker-widget table td a:hover{text-decoration:none;background-color:#eee;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border-color:#ddd}.bootstrap-timepicker-widget table td a i{margin-top:2px}.bootstrap-timepicker-widget table td input{width:25px;margin:0;text-align:center}.bootstrap-timepicker-widget .modal-content{padding:4px}@media (min-width:767px){.bootstrap-timepicker-widget.modal{width:200px;margin-left:-100px}}@media (max-width:767px){.bootstrap-timepicker{width:100%}.bootstrap-timepicker .dropdown-menu{width:100%}}.sp-container{position:absolute;top:0;left:0;display:inline-block;*display:inline;*zoom:1;z-index:9999994;overflow:hidden}.sp-container.sp-flat{position:relative}.sp-container,.sp-container *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.sp-top{position:relative;width:100%;display:inline-block}.sp-top-inner{position:absolute;top:0;left:0;bottom:0;right:0}.sp-color{position:absolute;top:0;left:0;bottom:0;right:20%}.sp-hue{position:absolute;top:0;right:0;bottom:0;left:84%;height:100%}.sp-clear-enabled .sp-hue{top:33px;height:77.5%}.sp-fill{padding-top:80%}.sp-sat,.sp-val{position:absolute;top:0;left:0;right:0;bottom:0}.sp-alpha-enabled .sp-top{margin-bottom:18px}.sp-alpha-enabled .sp-alpha{display:block}.sp-alpha-handle{position:absolute;top:-4px;bottom:-4px;width:6px;left:50%;cursor:pointer;border:1px solid #000;background:#fff;opacity:.8}.sp-alpha{display:none;position:absolute;bottom:-14px;right:0;left:0;height:8px}.sp-alpha-inner{border:solid 1px #333}.sp-clear{display:none}.sp-clear.sp-clear-display{background-position:center}.sp-clear-enabled .sp-clear{display:block;position:absolute;top:0;right:0;bottom:0;left:84%;height:28px}.sp-container,.sp-replacer,.sp-preview,.sp-dragger,.sp-slider,.sp-alpha,.sp-clear,.sp-alpha-handle,.sp-container.sp-dragging .sp-input,.sp-container button{-webkit-user-select:none;-moz-user-select:-moz-none;-o-user-select:none;user-select:none}.sp-container.sp-input-disabled .sp-input-container{display:none}.sp-container.sp-buttons-disabled .sp-button-container{display:none}.sp-palette-only .sp-picker-container{display:none}.sp-palette-disabled .sp-palette-container{display:none}.sp-initial-disabled .sp-initial{display:none}.sp-sat{background-image:-webkit-gradient(linear,0 0,100% 0,from(#FFF),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(left,#FFF,rgba(204,154,129,0));background-image:-moz-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-o-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-ms-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:linear-gradient(to right,#fff,rgba(204,154,129,0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";filter:progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81')}.sp-val{background-image:-webkit-gradient(linear,0 100%,0 0,from(#000),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-moz-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-o-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-ms-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:linear-gradient(to top,#000,rgba(204,154,129,0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000')}.sp-hue{background:-moz-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-ms-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-o-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-webkit-gradient(linear,left top,left bottom,from(red),color-stop(0.17,#ff0),color-stop(0.33,#0f0),color-stop(0.5,#0ff),color-stop(0.67,#00f),color-stop(0.83,#f0f),to(red));background:-webkit-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.sp-1{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00')}.sp-2{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00')}.sp-3{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff')}.sp-4{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff')}.sp-5{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff')}.sp-6{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000')}.sp-hidden{display:none!important}.sp-cf:before,.sp-cf:after{content:"";display:table}.sp-cf:after{clear:both}.sp-cf{*zoom:1}@media (max-device-width:480px){.sp-color{right:40%}.sp-hue{left:63%}.sp-fill{padding-top:60%}}.sp-dragger{border-radius:5px;height:5px;width:5px;border:1px solid #fff;background:#000;cursor:pointer;position:absolute;top:0;left:0}.sp-slider{position:absolute;top:0;cursor:pointer;height:3px;left:-1px;right:-1px;border:1px solid #000;background:#fff;opacity:.8}.sp-container{border-radius:0;background-color:#ECECEC;border:solid 1px #f0c49B;padding:0}.sp-container,.sp-container button,.sp-container input,.sp-color,.sp-hue,.sp-clear{font:400 12px "Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Verdana,sans-serif;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.sp-top{margin-bottom:3px}.sp-color,.sp-hue,.sp-clear{border:solid 1px #666}.sp-input-container{float:right;width:100px;margin-bottom:4px}.sp-initial-disabled .sp-input-container{width:100%}.sp-input{font-size:12px!important;border:1px inset;padding:4px 5px;margin:0;width:100%;background:transparent;border-radius:3px;color:#222}.sp-input:focus{border:1px solid orange}.sp-input.sp-validation-error{border:1px solid red;background:#fdd}.sp-picker-container,.sp-palette-container{float:left;position:relative;padding:10px;padding-bottom:300px;margin-bottom:-290px}.sp-picker-container{width:172px;border-left:solid 1px #fff}.sp-palette-container{border-right:solid 1px #ccc}.sp-palette .sp-thumb-el{display:block;position:relative;float:left;width:24px;height:15px;margin:3px;cursor:pointer;border:solid 2px transparent}.sp-palette .sp-thumb-el:hover,.sp-palette .sp-thumb-el.sp-thumb-active{border-color:orange}.sp-thumb-el{position:relative}.sp-initial{float:left;border:solid 1px #333}.sp-initial span{width:30px;height:25px;border:0;display:block;float:left;margin:0}.sp-initial .sp-clear-display{background-position:center}.sp-button-container{float:right}.sp-replacer{margin:0;overflow:hidden;cursor:pointer;padding:4px;display:inline-block;*zoom:1;*display:inline;border:solid 1px #91765d;background:#eee;color:#333;vertical-align:middle}.sp-replacer:hover,.sp-replacer.sp-active{border-color:#F0C49B;color:#111}.sp-replacer.sp-disabled{cursor:default;border-color:silver;color:silver}.sp-dd{padding:2px 0;height:16px;line-height:16px;float:left;font-size:10px}.sp-preview{position:relative;width:25px;height:20px;border:solid 1px #222;margin-right:5px;float:left;z-index:0}.sp-palette{*width:220px;max-width:220px}.sp-palette .sp-thumb-el{width:16px;height:16px;margin:2px 1px;border:solid 1px #d0d0d0}.sp-container{padding-bottom:0}.sp-container button{background-color:#eee;background-image:-webkit-linear-gradient(top,#eee,#ccc);background-image:-moz-linear-gradient(top,#eee,#ccc);background-image:-ms-linear-gradient(top,#eee,#ccc);background-image:-o-linear-gradient(top,#eee,#ccc);background-image:linear-gradient(to bottom,#eee,#ccc);border:1px solid #ccc;border-bottom:1px solid #bbb;border-radius:3px;color:#333;font-size:14px;line-height:1;padding:5px 4px;text-align:center;text-shadow:0 1px 0 #eee;vertical-align:middle}.sp-container button:hover{background-color:#ddd;background-image:-webkit-linear-gradient(top,#ddd,#bbb);background-image:-moz-linear-gradient(top,#ddd,#bbb);background-image:-ms-linear-gradient(top,#ddd,#bbb);background-image:-o-linear-gradient(top,#ddd,#bbb);background-image:linear-gradient(to bottom,#ddd,#bbb);border:1px solid #bbb;border-bottom:1px solid #999;cursor:pointer;text-shadow:0 1px 0 #ddd}.sp-container button:active{border:1px solid #aaa;border-bottom:1px solid #888;-webkit-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-moz-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-ms-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-o-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee}.sp-cancel{font-size:11px;color:#d93f3f!important;margin:0;padding:2px;margin-right:5px;vertical-align:middle;text-decoration:none}.sp-cancel:hover{color:#d93f3f!important;text-decoration:underline}.sp-palette span:hover,.sp-palette span.sp-thumb-active{border-color:#000}.sp-preview,.sp-alpha,.sp-thumb-el{position:relative;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.sp-preview-inner,.sp-alpha-inner,.sp-thumb-inner{display:block;position:absolute;top:0;left:0;bottom:0;right:0}.sp-palette .sp-thumb-inner{background-position:50% 50%;background-repeat:no-repeat}.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=)}.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=)}.sp-clear-display{background-repeat:no-repeat;background-position:center;background-image:url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==)}body{-webkit-backface-visibility:hidden}.animated{-webkit-animation-duration:1s;-moz-animation-duration:1s;-o-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.infinite{-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;-o-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.hinge{-webkit-animation-duration:2s;-moz-animation-duration:2s;-o-animation-duration:2s;animation-duration:2s}@-webkit-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@-moz-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@-o-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;-moz-animation-name:flash;-o-animation-name:flash;animation-name:flash}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px)}}@-moz-keyframes shake{0%,100%{-moz-transform:translateX(0)}10%,30%,50%,70%,90%{-moz-transform:translateX(-10px)}20%,40%,60%,80%{-moz-transform:translateX(10px)}}@-o-keyframes shake{0%,100%{-o-transform:translateX(0)}10%,30%,50%,70%,90%{-o-transform:translateX(-10px)}20%,40%,60%,80%{-o-transform:translateX(10px)}}@keyframes shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}.shake{-webkit-animation-name:shake;-moz-animation-name:shake;-o-animation-name:shake;animation-name:shake}@-webkit-keyframes bounce{0%,20%,50%,80%,100%{-webkit-transform:translateY(0)}40%{-webkit-transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px)}}@-moz-keyframes bounce{0%,20%,50%,80%,100%{-moz-transform:translateY(0)}40%{-moz-transform:translateY(-30px)}60%{-moz-transform:translateY(-15px)}}@-o-keyframes bounce{0%,20%,50%,80%,100%{-o-transform:translateY(0)}40%{-o-transform:translateY(-30px)}60%{-o-transform:translateY(-15px)}}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-30px)}60%{transform:translateY(-15px)}}.bounce{-webkit-animation-name:bounce;-moz-animation-name:bounce;-o-animation-name:bounce;animation-name:bounce}@-webkit-keyframes tada{0%{-webkit-transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0)}}@-moz-keyframes tada{0%{-moz-transform:scale(1)}10%,20%{-moz-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-moz-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-moz-transform:scale(1.1) rotate(-3deg)}100%{-moz-transform:scale(1) rotate(0)}}@-o-keyframes tada{0%{-o-transform:scale(1)}10%,20%{-o-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-o-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-o-transform:scale(1.1) rotate(-3deg)}100%{-o-transform:scale(1) rotate(0)}}@keyframes tada{0%{transform:scale(1)}10%,20%{transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.1) rotate(3deg)}40%,60%,80%{transform:scale(1.1) rotate(-3deg)}100%{transform:scale(1) rotate(0)}}.tada{-webkit-animation-name:tada;-moz-animation-name:tada;-o-animation-name:tada;animation-name:tada}@-webkit-keyframes swing{20%,40%,60%,80%,100%{-webkit-transform-origin:top center}20%{-webkit-transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg)}}@-moz-keyframes swing{20%{-moz-transform:rotate(15deg)}40%{-moz-transform:rotate(-10deg)}60%{-moz-transform:rotate(5deg)}80%{-moz-transform:rotate(-5deg)}100%{-moz-transform:rotate(0deg)}}@-o-keyframes swing{20%{-o-transform:rotate(15deg)}40%{-o-transform:rotate(-10deg)}60%{-o-transform:rotate(5deg)}80%{-o-transform:rotate(-5deg)}100%{-o-transform:rotate(0deg)}}@keyframes swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}100%{transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;-moz-transform-origin:top center;-o-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;-moz-animation-name:swing;-o-animation-name:swing;animation-name:swing}@-webkit-keyframes wobble{0%{-webkit-transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%)}}@-moz-keyframes wobble{0%{-moz-transform:translateX(0%)}15%{-moz-transform:translateX(-25%) rotate(-5deg)}30%{-moz-transform:translateX(20%) rotate(3deg)}45%{-moz-transform:translateX(-15%) rotate(-3deg)}60%{-moz-transform:translateX(10%) rotate(2deg)}75%{-moz-transform:translateX(-5%) rotate(-1deg)}100%{-moz-transform:translateX(0%)}}@-o-keyframes wobble{0%{-o-transform:translateX(0%)}15%{-o-transform:translateX(-25%) rotate(-5deg)}30%{-o-transform:translateX(20%) rotate(3deg)}45%{-o-transform:translateX(-15%) rotate(-3deg)}60%{-o-transform:translateX(10%) rotate(2deg)}75%{-o-transform:translateX(-5%) rotate(-1deg)}100%{-o-transform:translateX(0%)}}@keyframes wobble{0%{transform:translateX(0%)}15%{transform:translateX(-25%) rotate(-5deg)}30%{transform:translateX(20%) rotate(3deg)}45%{transform:translateX(-15%) rotate(-3deg)}60%{transform:translateX(10%) rotate(2deg)}75%{transform:translateX(-5%) rotate(-1deg)}100%{transform:translateX(0%)}}.wobble{-webkit-animation-name:wobble;-moz-animation-name:wobble;-o-animation-name:wobble;animation-name:wobble}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1)}50%{-webkit-transform:scale(1.1)}100%{-webkit-transform:scale(1)}}@-moz-keyframes pulse{0%{-moz-transform:scale(1)}50%{-moz-transform:scale(1.1)}100%{-moz-transform:scale(1)}}@-o-keyframes pulse{0%{-o-transform:scale(1)}50%{-o-transform:scale(1.1)}100%{-o-transform:scale(1)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}.pulse{-webkit-animation-name:pulse;-moz-animation-name:pulse;-o-animation-name:pulse;animation-name:pulse}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) rotateY(0);-webkit-animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg);-webkit-animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-webkit-animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) rotateY(360deg) scale(.95);-webkit-animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) scale(1);-webkit-animation-timing-function:ease-in}}@-moz-keyframes flip{0%{-moz-transform:perspective(400px) rotateY(0);-moz-animation-timing-function:ease-out}40%{-moz-transform:perspective(400px) translateZ(150px) rotateY(170deg);-moz-animation-timing-function:ease-out}50%{-moz-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-moz-animation-timing-function:ease-in}80%{-moz-transform:perspective(400px) rotateY(360deg) scale(.95);-moz-animation-timing-function:ease-in}100%{-moz-transform:perspective(400px) scale(1);-moz-animation-timing-function:ease-in}}@-o-keyframes flip{0%{-o-transform:perspective(400px) rotateY(0);-o-animation-timing-function:ease-out}40%{-o-transform:perspective(400px) translateZ(150px) rotateY(170deg);-o-animation-timing-function:ease-out}50%{-o-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-o-animation-timing-function:ease-in}80%{-o-transform:perspective(400px) rotateY(360deg) scale(.95);-o-animation-timing-function:ease-in}100%{-o-transform:perspective(400px) scale(1);-o-animation-timing-function:ease-in}}@keyframes flip{0%{transform:perspective(400px) rotateY(0);animation-timing-function:ease-out}40%{transform:perspective(400px) translateZ(150px) rotateY(170deg);animation-timing-function:ease-out}50%{transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);animation-timing-function:ease-in}80%{transform:perspective(400px) rotateY(360deg) scale(.95);animation-timing-function:ease-in}100%{transform:perspective(400px) scale(1);animation-timing-function:ease-in}}.flip{-webkit-backface-visibility:visible!important;-webkit-animation-name:flip;-moz-backface-visibility:visible!important;-moz-animation-name:flip;-o-backface-visibility:visible!important;-o-animation-name:flip;backface-visibility:visible!important;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);opacity:1}}@-moz-keyframes flipInX{0%{-moz-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-moz-transform:perspective(400px) rotateX(-10deg)}70%{-moz-transform:perspective(400px) rotateX(10deg)}100%{-moz-transform:perspective(400px) rotateX(0deg);opacity:1}}@-o-keyframes flipInX{0%{-o-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-o-transform:perspective(400px) rotateX(-10deg)}70%{-o-transform:perspective(400px) rotateX(10deg)}100%{-o-transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);opacity:0}40%{transform:perspective(400px) rotateX(-10deg)}70%{transform:perspective(400px) rotateX(10deg)}100%{transform:perspective(400px) rotateX(0deg);opacity:1}}.flipInX{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipInX;-moz-backface-visibility:visible!important;-moz-animation-name:flipInX;-o-backface-visibility:visible!important;-o-animation-name:flipInX;backface-visibility:visible!important;animation-name:flipInX}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);opacity:0}}@-moz-keyframes flipOutX{0%{-moz-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-moz-transform:perspective(400px) rotateX(90deg);opacity:0}}@-o-keyframes flipOutX{0%{-o-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-o-transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{transform:perspective(400px) rotateX(0deg);opacity:1}100%{transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-name:flipOutX;-webkit-backface-visibility:visible!important;-moz-animation-name:flipOutX;-moz-backface-visibility:visible!important;-o-animation-name:flipOutX;-o-backface-visibility:visible!important;animation-name:flipOutX;backface-visibility:visible!important}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);opacity:1}}@-moz-keyframes flipInY{0%{-moz-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-moz-transform:perspective(400px) rotateY(-10deg)}70%{-moz-transform:perspective(400px) rotateY(10deg)}100%{-moz-transform:perspective(400px) rotateY(0deg);opacity:1}}@-o-keyframes flipInY{0%{-o-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-o-transform:perspective(400px) rotateY(-10deg)}70%{-o-transform:perspective(400px) rotateY(10deg)}100%{-o-transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes flipInY{0%{transform:perspective(400px) rotateY(90deg);opacity:0}40%{transform:perspective(400px) rotateY(-10deg)}70%{transform:perspective(400px) rotateY(10deg)}100%{transform:perspective(400px) rotateY(0deg);opacity:1}}.flipInY{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipInY;-moz-backface-visibility:visible!important;-moz-animation-name:flipInY;-o-backface-visibility:visible!important;-o-animation-name:flipInY;backface-visibility:visible!important;animation-name:flipInY}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);opacity:0}}@-moz-keyframes flipOutY{0%{-moz-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-moz-transform:perspective(400px) rotateY(90deg);opacity:0}}@-o-keyframes flipOutY{0%{-o-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-o-transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{transform:perspective(400px) rotateY(0deg);opacity:1}100%{transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipOutY;-moz-backface-visibility:visible!important;-moz-animation-name:flipOutY;-o-backface-visibility:visible!important;-o-animation-name:flipOutY;backface-visibility:visible!important;animation-name:flipOutY}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;-moz-animation-name:fadeIn;-o-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInUp{0%{opacity:0;-moz-transform:translateY(20px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInUp{0%{opacity:0;-o-transform:translateY(20px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;-moz-animation-name:fadeInUp;-o-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInDown{0%{opacity:0;-moz-transform:translateY(-20px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInDown{0%{opacity:0;-o-transform:translateY(-20px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;-moz-animation-name:fadeInDown;-o-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInLeft{0%{opacity:0;-moz-transform:translateX(-20px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInLeft{0%{opacity:0;-o-transform:translateX(-20px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-20px)}100%{opacity:1;transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;-moz-animation-name:fadeInLeft;-o-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInRight{0%{opacity:0;-moz-transform:translateX(20px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInRight{0%{opacity:0;-o-transform:translateX(20px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(20px)}100%{opacity:1;transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;-moz-animation-name:fadeInRight;-o-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInUpBig{0%{opacity:0;-moz-transform:translateY(2000px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInUpBig{0%{opacity:0;-o-transform:translateY(2000px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;transform:translateY(2000px)}100%{opacity:1;transform:translateY(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;-moz-animation-name:fadeInUpBig;-o-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInDownBig{0%{opacity:0;-moz-transform:translateY(-2000px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInDownBig{0%{opacity:0;-o-transform:translateY(-2000px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;transform:translateY(-2000px)}100%{opacity:1;transform:translateY(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;-moz-animation-name:fadeInDownBig;-o-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInLeftBig{0%{opacity:0;-moz-transform:translateX(-2000px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInLeftBig{0%{opacity:0;-o-transform:translateX(-2000px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInLeftBig{0%{opacity:0;transform:translateX(-2000px)}100%{opacity:1;transform:translateX(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;-moz-animation-name:fadeInLeftBig;-o-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInRightBig{0%{opacity:0;-moz-transform:translateX(2000px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInRightBig{0%{opacity:0;-o-transform:translateX(2000px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;transform:translateX(2000px)}100%{opacity:1;transform:translateX(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;-moz-animation-name:fadeInRightBig;-o-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-o-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;-moz-animation-name:fadeOut;-o-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px)}}@-moz-keyframes fadeOutUp{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(-20px)}}@-o-keyframes fadeOutUp{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(-20px)}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-20px)}}.fadeOutUp{-webkit-animation-name:fadeOutUp;-moz-animation-name:fadeOutUp;-o-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px)}}@-moz-keyframes fadeOutDown{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(20px)}}@-o-keyframes fadeOutDown{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(20px)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(20px)}}.fadeOutDown{-webkit-animation-name:fadeOutDown;-moz-animation-name:fadeOutDown;-o-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px)}}@-moz-keyframes fadeOutLeft{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(-20px)}}@-o-keyframes fadeOutLeft{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(-20px)}}@keyframes fadeOutLeft{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-20px)}}.fadeOutLeft{-webkit-animation-name:fadeOutLeft;-moz-animation-name:fadeOutLeft;-o-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px)}}@-moz-keyframes fadeOutRight{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(20px)}}@-o-keyframes fadeOutRight{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(20px)}}@keyframes fadeOutRight{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(20px)}}.fadeOutRight{-webkit-animation-name:fadeOutRight;-moz-animation-name:fadeOutRight;-o-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px)}}@-moz-keyframes fadeOutUpBig{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(-2000px)}}@-o-keyframes fadeOutUpBig{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(-2000px)}}@keyframes fadeOutUpBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-2000px)}}.fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;-moz-animation-name:fadeOutUpBig;-o-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px)}}@-moz-keyframes fadeOutDownBig{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(2000px)}}@-o-keyframes fadeOutDownBig{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(2000px)}}.fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;-moz-animation-name:fadeOutDownBig;-o-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px)}}@-moz-keyframes fadeOutLeftBig{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(-2000px)}}@-o-keyframes fadeOutLeftBig{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(-2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-2000px)}}.fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;-moz-animation-name:fadeOutLeftBig;-o-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px)}}@-moz-keyframes fadeOutRightBig{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(2000px)}}@-o-keyframes fadeOutRightBig{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(2000px)}}.fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;-moz-animation-name:fadeOutRightBig;-o-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05)}70%{-webkit-transform:scale(.9)}100%{-webkit-transform:scale(1)}}@-moz-keyframes bounceIn{0%{opacity:0;-moz-transform:scale(.3)}50%{opacity:1;-moz-transform:scale(1.05)}70%{-moz-transform:scale(.9)}100%{-moz-transform:scale(1)}}@-o-keyframes bounceIn{0%{opacity:0;-o-transform:scale(.3)}50%{opacity:1;-o-transform:scale(1.05)}70%{-o-transform:scale(.9)}100%{-o-transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}100%{transform:scale(1)}}.bounceIn{-webkit-animation-name:bounceIn;-moz-animation-name:bounceIn;-o-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px)}80%{-webkit-transform:translateY(10px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes bounceInUp{0%{opacity:0;-moz-transform:translateY(2000px)}60%{opacity:1;-moz-transform:translateY(-30px)}80%{-moz-transform:translateY(10px)}100%{-moz-transform:translateY(0)}}@-o-keyframes bounceInUp{0%{opacity:0;-o-transform:translateY(2000px)}60%{opacity:1;-o-transform:translateY(-30px)}80%{-o-transform:translateY(10px)}100%{-o-transform:translateY(0)}}@keyframes bounceInUp{0%{opacity:0;transform:translateY(2000px)}60%{opacity:1;transform:translateY(-30px)}80%{transform:translateY(10px)}100%{transform:translateY(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;-moz-animation-name:bounceInUp;-o-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px)}80%{-webkit-transform:translateY(-10px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes bounceInDown{0%{opacity:0;-moz-transform:translateY(-2000px)}60%{opacity:1;-moz-transform:translateY(30px)}80%{-moz-transform:translateY(-10px)}100%{-moz-transform:translateY(0)}}@-o-keyframes bounceInDown{0%{opacity:0;-o-transform:translateY(-2000px)}60%{opacity:1;-o-transform:translateY(30px)}80%{-o-transform:translateY(-10px)}100%{-o-transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;transform:translateY(-2000px)}60%{opacity:1;transform:translateY(30px)}80%{transform:translateY(-10px)}100%{transform:translateY(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;-moz-animation-name:bounceInDown;-o-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px)}80%{-webkit-transform:translateX(-10px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes bounceInLeft{0%{opacity:0;-moz-transform:translateX(-2000px)}60%{opacity:1;-moz-transform:translateX(30px)}80%{-moz-transform:translateX(-10px)}100%{-moz-transform:translateX(0)}}@-o-keyframes bounceInLeft{0%{opacity:0;-o-transform:translateX(-2000px)}60%{opacity:1;-o-transform:translateX(30px)}80%{-o-transform:translateX(-10px)}100%{-o-transform:translateX(0)}}@keyframes bounceInLeft{0%{opacity:0;transform:translateX(-2000px)}60%{opacity:1;transform:translateX(30px)}80%{transform:translateX(-10px)}100%{transform:translateX(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;-moz-animation-name:bounceInLeft;-o-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px)}80%{-webkit-transform:translateX(10px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes bounceInRight{0%{opacity:0;-moz-transform:translateX(2000px)}60%{opacity:1;-moz-transform:translateX(-30px)}80%{-moz-transform:translateX(10px)}100%{-moz-transform:translateX(0)}}@-o-keyframes bounceInRight{0%{opacity:0;-o-transform:translateX(2000px)}60%{opacity:1;-o-transform:translateX(-30px)}80%{-o-transform:translateX(10px)}100%{-o-transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;transform:translateX(2000px)}60%{opacity:1;transform:translateX(-30px)}80%{transform:translateX(10px)}100%{transform:translateX(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;-moz-animation-name:bounceInRight;-o-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceOut{0%{-webkit-transform:scale(1)}25%{-webkit-transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3)}}@-moz-keyframes bounceOut{0%{-moz-transform:scale(1)}25%{-moz-transform:scale(.95)}50%{opacity:1;-moz-transform:scale(1.1)}100%{opacity:0;-moz-transform:scale(.3)}}@-o-keyframes bounceOut{0%{-o-transform:scale(1)}25%{-o-transform:scale(.95)}50%{opacity:1;-o-transform:scale(1.1)}100%{opacity:0;-o-transform:scale(.3)}}@keyframes bounceOut{0%{transform:scale(1)}25%{transform:scale(.95)}50%{opacity:1;transform:scale(1.1)}100%{opacity:0;transform:scale(.3)}}.bounceOut{-webkit-animation-name:bounceOut;-moz-animation-name:bounceOut;-o-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutUp{0%{-webkit-transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px)}}@-moz-keyframes bounceOutUp{0%{-moz-transform:translateY(0)}20%{opacity:1;-moz-transform:translateY(20px)}100%{opacity:0;-moz-transform:translateY(-2000px)}}@-o-keyframes bounceOutUp{0%{-o-transform:translateY(0)}20%{opacity:1;-o-transform:translateY(20px)}100%{opacity:0;-o-transform:translateY(-2000px)}}@keyframes bounceOutUp{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(20px)}100%{opacity:0;transform:translateY(-2000px)}}.bounceOutUp{-webkit-animation-name:bounceOutUp;-moz-animation-name:bounceOutUp;-o-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes bounceOutDown{0%{-webkit-transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px)}}@-moz-keyframes bounceOutDown{0%{-moz-transform:translateY(0)}20%{opacity:1;-moz-transform:translateY(-20px)}100%{opacity:0;-moz-transform:translateY(2000px)}}@-o-keyframes bounceOutDown{0%{-o-transform:translateY(0)}20%{opacity:1;-o-transform:translateY(-20px)}100%{opacity:0;-o-transform:translateY(2000px)}}@keyframes bounceOutDown{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(-20px)}100%{opacity:0;transform:translateY(2000px)}}.bounceOutDown{-webkit-animation-name:bounceOutDown;-moz-animation-name:bounceOutDown;-o-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{0%{-webkit-transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px)}}@-moz-keyframes bounceOutLeft{0%{-moz-transform:translateX(0)}20%{opacity:1;-moz-transform:translateX(20px)}100%{opacity:0;-moz-transform:translateX(-2000px)}}@-o-keyframes bounceOutLeft{0%{-o-transform:translateX(0)}20%{opacity:1;-o-transform:translateX(20px)}100%{opacity:0;-o-transform:translateX(-2000px)}}@keyframes bounceOutLeft{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(20px)}100%{opacity:0;transform:translateX(-2000px)}}.bounceOutLeft{-webkit-animation-name:bounceOutLeft;-moz-animation-name:bounceOutLeft;-o-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{0%{-webkit-transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px)}}@-moz-keyframes bounceOutRight{0%{-moz-transform:translateX(0)}20%{opacity:1;-moz-transform:translateX(-20px)}100%{opacity:0;-moz-transform:translateX(2000px)}}@-o-keyframes bounceOutRight{0%{-o-transform:translateX(0)}20%{opacity:1;-o-transform:translateX(-20px)}100%{opacity:0;-o-transform:translateX(2000px)}}@keyframes bounceOutRight{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(-20px)}100%{opacity:0;transform:translateX(2000px)}}.bounceOutRight{-webkit-animation-name:bounceOutRight;-moz-animation-name:bounceOutRight;-o-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes rotateIn{0%{-webkit-transform-origin:center center;-webkit-transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateIn{0%{-moz-transform-origin:center center;-moz-transform:rotate(-200deg);opacity:0}100%{-moz-transform-origin:center center;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateIn{0%{-o-transform-origin:center center;-o-transform:rotate(-200deg);opacity:0}100%{-o-transform-origin:center center;-o-transform:rotate(0);opacity:1}}@keyframes rotateIn{0%{transform-origin:center center;transform:rotate(-200deg);opacity:0}100%{transform-origin:center center;transform:rotate(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;-moz-animation-name:rotateIn;-o-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInUpLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(90deg);opacity:0}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInUpLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(90deg);opacity:0}100%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInUpLeft{0%{transform-origin:left bottom;transform:rotate(90deg);opacity:0}100%{transform-origin:left bottom;transform:rotate(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;-moz-animation-name:rotateInUpLeft;-o-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInDownLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(-90deg);opacity:0}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInDownLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(-90deg);opacity:0}100%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInDownLeft{0%{transform-origin:left bottom;transform:rotate(-90deg);opacity:0}100%{transform-origin:left bottom;transform:rotate(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;-moz-animation-name:rotateInDownLeft;-o-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInUpRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(-90deg);opacity:0}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInUpRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(-90deg);opacity:0}100%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInUpRight{0%{transform-origin:right bottom;transform:rotate(-90deg);opacity:0}100%{transform-origin:right bottom;transform:rotate(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;-moz-animation-name:rotateInUpRight;-o-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInDownRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(90deg);opacity:0}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInDownRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(90deg);opacity:0}100%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInDownRight{0%{transform-origin:right bottom;transform:rotate(90deg);opacity:0}100%{transform-origin:right bottom;transform:rotate(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;-moz-animation-name:rotateInDownRight;-o-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center center;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;-webkit-transform:rotate(200deg);opacity:0}}@-moz-keyframes rotateOut{0%{-moz-transform-origin:center center;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:center center;-moz-transform:rotate(200deg);opacity:0}}@-o-keyframes rotateOut{0%{-o-transform-origin:center center;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:center center;-o-transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{transform-origin:center center;transform:rotate(0);opacity:1}100%{transform-origin:center center;transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;-moz-animation-name:rotateOut;-o-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(-90deg);opacity:0}}@-moz-keyframes rotateOutUpLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(-90deg);opacity:0}}@-o-keyframes rotateOutUpLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:left bottom;-o-transform:rotate(-90deg);opacity:0}}@keyframes rotateOutUpLeft{0%{transform-origin:left bottom;transform:rotate(0);opacity:1}100%{transform-origin:left bottom;transform:rotate(-90deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;-moz-animation-name:rotateOutUpLeft;-o-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(90deg);opacity:0}}@-moz-keyframes rotateOutDownLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(90deg);opacity:0}}@-o-keyframes rotateOutDownLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:left bottom;-o-transform:rotate(90deg);opacity:0}}@keyframes rotateOutDownLeft{0%{transform-origin:left bottom;transform:rotate(0);opacity:1}100%{transform-origin:left bottom;transform:rotate(90deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;-moz-animation-name:rotateOutDownLeft;-o-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(90deg);opacity:0}}@-moz-keyframes rotateOutUpRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(90deg);opacity:0}}@-o-keyframes rotateOutUpRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:right bottom;-o-transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{transform-origin:right bottom;transform:rotate(0);opacity:1}100%{transform-origin:right bottom;transform:rotate(90deg);opacity:0}}.rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;-moz-animation-name:rotateOutUpRight;-o-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(-90deg);opacity:0}}@-moz-keyframes rotateOutDownRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(-90deg);opacity:0}}@-o-keyframes rotateOutDownRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:right bottom;-o-transform:rotate(-90deg);opacity:0}}@keyframes rotateOutDownRight{0%{transform-origin:right bottom;transform:rotate(0);opacity:1}100%{transform-origin:right bottom;transform:rotate(-90deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;-moz-animation-name:rotateOutDownRight;-o-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes hinge{0%{-webkit-transform:rotate(0);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);opacity:1;-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}100%{-webkit-transform:translateY(700px);opacity:0}}@-moz-keyframes hinge{0%{-moz-transform:rotate(0);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}20%,60%{-moz-transform:rotate(80deg);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}40%{-moz-transform:rotate(60deg);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}80%{-moz-transform:rotate(60deg) translateY(0);opacity:1;-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}100%{-moz-transform:translateY(700px);opacity:0}}@-o-keyframes hinge{0%{-o-transform:rotate(0);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}20%,60%{-o-transform:rotate(80deg);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}40%{-o-transform:rotate(60deg);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}80%{-o-transform:rotate(60deg) translateY(0);opacity:1;-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}100%{-o-transform:translateY(700px);opacity:0}}@keyframes hinge{0%{transform:rotate(0);transform-origin:top left;animation-timing-function:ease-in-out}20%,60%{transform:rotate(80deg);transform-origin:top left;animation-timing-function:ease-in-out}40%{transform:rotate(60deg);transform-origin:top left;animation-timing-function:ease-in-out}80%{transform:rotate(60deg) translateY(0);opacity:1;transform-origin:top left;animation-timing-function:ease-in-out}100%{transform:translateY(700px);opacity:0}}.hinge{-webkit-animation-name:hinge;-moz-animation-name:hinge;-o-animation-name:hinge;animation-name:hinge}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg)}}@-moz-keyframes rollIn{0%{opacity:0;-moz-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-moz-transform:translateX(0px) rotate(0deg)}}@-o-keyframes rollIn{0%{opacity:0;-o-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-o-transform:translateX(0px) rotate(0deg)}}@keyframes rollIn{0%{opacity:0;transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;transform:translateX(0px) rotate(0deg)}}.rollIn{-webkit-animation-name:rollIn;-moz-animation-name:rollIn;-o-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg)}}@-moz-keyframes rollOut{0%{opacity:1;-moz-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-moz-transform:translateX(100%) rotate(120deg)}}@-o-keyframes rollOut{0%{opacity:1;-o-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-o-transform:translateX(100%) rotate(120deg)}}@keyframes rollOut{0%{opacity:1;transform:translateX(0px) rotate(0deg)}100%{opacity:0;transform:translateX(100%) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;-moz-animation-name:rollOut;-o-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);opacity:1}}@-moz-keyframes lightSpeedIn{0%{-moz-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-moz-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-moz-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-moz-transform:translateX(0%) skewX(0deg);opacity:1}}@-o-keyframes lightSpeedIn{0%{-o-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-o-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-o-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-o-transform:translateX(0%) skewX(0deg);opacity:1}}@keyframes lightSpeedIn{0%{transform:translateX(100%) skewX(-30deg);opacity:0}60%{transform:translateX(-20%) skewX(30deg);opacity:1}80%{transform:translateX(0%) skewX(-15deg);opacity:1}100%{transform:translateX(0%) skewX(0deg);opacity:1}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;-moz-animation-name:lightSpeedIn;-o-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;-moz-animation-timing-function:ease-out;-o-animation-timing-function:ease-out;animation-timing-function:ease-out}.animated.lightSpeedIn{-webkit-animation-duration:.5s;-moz-animation-duration:.5s;-o-animation-duration:.5s;animation-duration:.5s}@-webkit-keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);opacity:0}}@-moz-keyframes lightSpeedOut{0%{-moz-transform:translateX(0%) skewX(0deg);opacity:1}100%{-moz-transform:translateX(100%) skewX(-30deg);opacity:0}}@-o-keyframes lightSpeedOut{0%{-o-transform:translateX(0%) skewX(0deg);opacity:1}100%{-o-transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes lightSpeedOut{0%{transform:translateX(0%) skewX(0deg);opacity:1}100%{transform:translateX(100%) skewX(-30deg);opacity:0}}.lightSpeedOut{-webkit-animation-name:lightSpeedOut;-moz-animation-name:lightSpeedOut;-o-animation-name:lightSpeedOut;animation-name:lightSpeedOut;-webkit-animation-timing-function:ease-in;-moz-animation-timing-function:ease-in;-o-animation-timing-function:ease-in;animation-timing-function:ease-in}.animated.lightSpeedOut{-webkit-animation-duration:.25s;-moz-animation-duration:.25s;-o-animation-duration:.25s;animation-duration:.25s}@-webkit-keyframes wiggle{0%{-webkit-transform:skewX(9deg)}10%{-webkit-transform:skewX(-8deg)}20%{-webkit-transform:skewX(7deg)}30%{-webkit-transform:skewX(-6deg)}40%{-webkit-transform:skewX(5deg)}50%{-webkit-transform:skewX(-4deg)}60%{-webkit-transform:skewX(3deg)}70%{-webkit-transform:skewX(-2deg)}80%{-webkit-transform:skewX(1deg)}90%{-webkit-transform:skewX(0deg)}100%{-webkit-transform:skewX(0deg)}}@-moz-keyframes wiggle{0%{-moz-transform:skewX(9deg)}10%{-moz-transform:skewX(-8deg)}20%{-moz-transform:skewX(7deg)}30%{-moz-transform:skewX(-6deg)}40%{-moz-transform:skewX(5deg)}50%{-moz-transform:skewX(-4deg)}60%{-moz-transform:skewX(3deg)}70%{-moz-transform:skewX(-2deg)}80%{-moz-transform:skewX(1deg)}90%{-moz-transform:skewX(0deg)}100%{-moz-transform:skewX(0deg)}}@-o-keyframes wiggle{0%{-o-transform:skewX(9deg)}10%{-o-transform:skewX(-8deg)}20%{-o-transform:skewX(7deg)}30%{-o-transform:skewX(-6deg)}40%{-o-transform:skewX(5deg)}50%{-o-transform:skewX(-4deg)}60%{-o-transform:skewX(3deg)}70%{-o-transform:skewX(-2deg)}80%{-o-transform:skewX(1deg)}90%{-o-transform:skewX(0deg)}100%{-o-transform:skewX(0deg)}}@keyframes wiggle{0%{transform:skewX(9deg)}10%{transform:skewX(-8deg)}20%{transform:skewX(7deg)}30%{transform:skewX(-6deg)}40%{transform:skewX(5deg)}50%{transform:skewX(-4deg)}60%{transform:skewX(3deg)}70%{transform:skewX(-2deg)}80%{transform:skewX(1deg)}90%{transform:skewX(0deg)}100%{transform:skewX(0deg)}}.wiggle{-webkit-animation-name:wiggle;-moz-animation-name:wiggle;-o-animation-name:wiggle;animation-name:wiggle;-webkit-animation-timing-function:ease-in;-moz-animation-timing-function:ease-in;-o-animation-timing-function:ease-in;animation-timing-function:ease-in}.animated.wiggle{-webkit-animation-duration:.75s;-moz-animation-duration:.75s;-o-animation-duration:.75s;animation-duration:.75s} \ No newline at end of file diff --git a/app/dash/css/default.min.css b/app/dash/css/default.min.css deleted file mode 100644 index d7e511c..0000000 --- a/app/dash/css/default.min.css +++ /dev/null @@ -1,26 +0,0 @@ -@charset "UTF-8";/*! normalize.css v1.0.1 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.75em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:1em 40px}dfn{font-style:italic}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:0}form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}/*! - * Bootstrap v2.3.2 - * - * Copyright 2013 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{max-width:100%;width:auto\9;height:auto;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}label,select,button,input[type=button],input[type=reset],input[type=submit],input[type=radio],input[type=checkbox]{cursor:pointer}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}@media print{*{text-shadow:none!important;color:#000!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#bbbfc2;background-color:#161616}a{color:#f2f2f2;text-decoration:none}a:hover,a:focus{color:#fff;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;content:"";line-height:0}.row:after{clear:both}[class*=span]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;content:"";line-height:0}.row-fluid:after{clear:both}.row-fluid [class*=span]{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.127659574468085%;*margin-left:2.074468085106383%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .controls-row [class*=span]+[class*=span]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*=span].hide,.row-fluid [class*=span].hide{display:none}[class*=span].pull-right,.row-fluid [class*=span].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;content:"";line-height:0}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;content:"";line-height:0}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:700}em{font-style:italic}cite{font-style:normal}.muted{color:#adafae}a.muted:hover,a.muted:focus{color:#939695}.text-warning{color:#a47e3c}a.text-warning:hover,a.text-warning:focus{color:#7f612e}.text-error{color:#b94a48}a.text-error:hover,a.text-error:focus{color:#953b39}.text-info{color:#09c}a.text-info:hover,a.text-info:focus{color:#007399}.text-success{color:#468847}a.text-success:hover,a.text-success:focus{color:#356635}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:700;line-height:20px;color:#fff;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:400;line-height:1;color:#adafae}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #bbbfc2}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;*zoom:1;padding-left:5px;padding-right:5px}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:700}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;content:"";line-height:0}.dl-horizontal:after{clear:both}.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}hr{margin:20px 0;border:0;border-top:1px solid #303030;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #adafae}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #bbbfc2}blockquote p{margin-bottom:0;font-size:17.5px;font-weight:300;line-height:1.25}blockquote small{display:block;line-height:20px;color:#adafae}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #bbbfc2;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:12px;color:#303030;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8;white-space:nowrap}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#303030;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#adafae}label,input,button,select,textarea{font-size:14px;font-weight:400;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#000;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:middle}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{background-color:#4a4a4a;border:1px solid #636363;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type=text]:focus,input[type=password]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=week]:focus,input[type=number]:focus,input[type=email]:focus,input[type=url]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=color]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)}input[type=radio],input[type=checkbox]{margin:4px 0 0;*margin-top:0;margin-top:1px \9;line-height:normal}input[type=file],input[type=image],input[type=submit],input[type=reset],input[type=button],input[type=radio],input[type=checkbox]{width:auto}select,input[type=file]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;border:1px solid #636363;background-color:#4a4a4a}select[multiple],select[size]{height:auto}select:focus,input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#adafae;background-color:#474747;border-color:#636363;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);box-shadow:inset 0 1px 2px rgba(0,0,0,.025);cursor:not-allowed}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#788086}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#788086}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#788086}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type=radio],.checkbox input[type=checkbox]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*=span],select[class*=span],textarea[class*=span],.uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span]{float:none;margin-left:0}.input-append input[class*=span],.input-append .uneditable-input[class*=span],.input-prepend input[class*=span],.input-prepend .uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.row-fluid .uneditable-input[class*=span],.row-fluid .input-prepend [class*=span],.row-fluid .input-append [class*=span]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*=span]+[class*=span]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;content:"";line-height:0}.controls-row:after{clear:both}.controls-row [class*=span],.row-fluid .controls-row [class*=span]{float:left}.controls-row .checkbox[class*=span],.controls-row .radio[class*=span]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#555}input[type=radio][disabled],input[type=checkbox][disabled],input[type=radio][readonly],input[type=checkbox][readonly]{background-color:transparent}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#a47e3c}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#a47e3c}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#7f612e;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ceae78}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#a47e3c;background-color:#bbbfc2;border-color:#a47e3c}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#bbbfc2;border-color:#b94a48}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#bbbfc2;border-color:#468847}.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#09c}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#09c}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#09c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#007399;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #3cf}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#09c;background-color:#bbbfc2;border-color:#09c}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:transparent;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;content:"";line-height:0}.form-actions:after{clear:both}.help-block,.help-inline{color:#e3e5e6}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle;padding-left:5px}.input-append,.input-prepend{display:inline-block;margin-bottom:10px;vertical-align:middle;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu,.input-append .popover,.input-prepend .popover{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:400;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#bbbfc2;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#bf3;border-color:#690}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;*zoom:1;margin-bottom:0;vertical-align:middle}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type=radio],.form-search .checkbox input[type=checkbox],.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;content:"";line-height:0}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #303030}.table th{font-weight:700}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #303030}.table .table{background-color:#161616}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #303030;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.table-bordered th,.table-bordered td{border-left:1px solid #303030}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px}.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:rgba(100,100,100,.3)}.table-hover tbody tr:hover>td,.table-hover tbody tr:hover>th{background-color:#303030}table td[class*=span],table th[class*=span],.row-fluid table td[class*=span],.row-fluid table th[class*=span]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success>td{background-color:#bbbfc2}.table tbody tr.error>td{background-color:#bbbfc2}.table tbody tr.warning>td{background-color:#bbbfc2}.table tbody tr.info>td{background-color:#bbbfc2}.table-hover tbody tr.success:hover>td{background-color:#aeb2b6}.table-hover tbody tr.error:hover>td{background-color:#aeb2b6}.table-hover tbody tr.warning:hover>td{background-color:#aeb2b6}.table-hover tbody tr.info:hover>td{background-color:#aeb2b6}[class^=icon-],[class*=" icon-"]{display:inline-block;width:14px;height:14px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url(../img/glyphicons-halflings.png);background-position:14px 14px;background-repeat:no-repeat;margin-top:1px}.icon-white,.nav-pills>.active>a>[class^=icon-],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^=icon-],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^=icon-],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^=icon-],.dropdown-menu>li>a:focus>[class^=icon-],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>li>a:focus>[class*=" icon-"],.dropdown-menu>.active>a>[class^=icon-],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^=icon-],.dropdown-submenu:focus>a>[class^=icon-],.dropdown-submenu:hover>a>[class*=" icon-"],.dropdown-submenu:focus>a>[class*=" icon-"]{background-image:url(../img/glyphicons-halflings-white.png)}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{background-position:-216px -120px;width:16px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px;width:16px}.icon-folder-open{background-position:-408px -120px;width:16px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#303030;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:transparent;border-bottom:1px solid #222}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:20px;color:#bbbfc2;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{text-decoration:none;color:#fff;background-color:#2ab2e4;background-image:-moz-linear-gradient(top,#33b5e5,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#33b5e5),to(#1dade2));background-image:-webkit-linear-gradient(top,#33b5e5,#1dade2);background-image:-o-linear-gradient(top,#33b5e5,#1dade2);background-image:linear-gradient(to bottom,#33b5e5,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff33b5e5', endColorstr='#ff1dade2', GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#2ab2e4;background-image:-moz-linear-gradient(top,#33b5e5,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#33b5e5),to(#1dade2));background-image:-webkit-linear-gradient(top,#33b5e5,#1dade2);background-image:-o-linear-gradient(top,#33b5e5,#1dade2);background-image:linear-gradient(to bottom,#33b5e5,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff33b5e5', endColorstr='#ff1dade2', GradientType=0)}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#adafae}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:default}.open{*z-index:1000}.open>.dropdown-menu{display:block}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px;-moz-border-radius:0 6px 6px;border-radius:0 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#000;margin-top:5px;margin-right:-10px}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-left:20px;padding-right:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#131517;border:1px solid #030303;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-large{padding:24px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well-small{padding:9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:700;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;*zoom:1;padding:4px 12px;margin-bottom:0;font-size:14px;line-height:20px;text-align:center;vertical-align:middle;cursor:pointer;color:#303030;text-shadow:0 1px 1px rgba(255,255,255,.75);background-color:#9ea09f;background-image:-moz-linear-gradient(top,#adafae,#868988);background-image:-webkit-gradient(linear,0 0,0 100%,from(#adafae),to(#868988));background-image:-webkit-linear-gradient(top,#adafae,#868988);background-image:-o-linear-gradient(top,#adafae,#868988);background-image:linear-gradient(to bottom,#adafae,#868988);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffadafae', endColorstr='#ff868988', GradientType=0);border-color:#868988 #868988 #606362;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#868988;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);border:1px solid #bbb;*border:0;border-bottom-color:#a2a2a2;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;*margin-left:.3em;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#303030;background-color:#868988;*background-color:#797d7b}.btn:active,.btn.active{background-color:#6d706e \9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#303030;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.btn-large [class^=icon-],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-small [class^=icon-],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^=icon-],.btn-mini [class*=" icon-"]{margin-top:-1px}.btn-mini{padding:0 6px;font-size:10.5px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,.75)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#38b7e5;background-image:-moz-linear-gradient(top,#4abde8,#1dade2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#4abde8),to(#1dade2));background-image:-webkit-linear-gradient(top,#4abde8,#1dade2);background-image:-o-linear-gradient(top,#4abde8,#1dade2);background-image:linear-gradient(to bottom,#4abde8,#1dade2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff4abde8', endColorstr='#ff1dade2', GradientType=0);border-color:#1dade2 #1dade2 #14799e;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#1dade2;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#1dade2;*background-color:#1a9bcb}.btn-primary:active,.btn-primary.active{background-color:#178ab4 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#f58a0f;background-image:-moz-linear-gradient(top,#ff941a,#e67a00);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ff941a),to(#e67a00));background-image:-webkit-linear-gradient(top,#ff941a,#e67a00);background-image:-o-linear-gradient(top,#ff941a,#e67a00);background-image:linear-gradient(to bottom,#ff941a,#e67a00);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff941a', endColorstr='#ffe67a00', GradientType=0);border-color:#e67a00 #e67a00 #995200;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#e67a00;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#e67a00;*background-color:#cc6d00}.btn-warning:active,.btn-warning.active{background-color:#b35f00 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#d10000;background-image:-moz-linear-gradient(top,#e60000,#b30000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#e60000),to(#b30000));background-image:-webkit-linear-gradient(top,#e60000,#b30000);background-image:-o-linear-gradient(top,#e60000,#b30000);background-image:linear-gradient(to bottom,#e60000,#b30000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe60000', endColorstr='#ffb30000', GradientType=0);border-color:#b30000 #b30000 #600;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#b30000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#b30000;*background-color:#900}.btn-danger:active,.btn-danger.active{background-color:maroon \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#699e00;background-image:-moz-linear-gradient(top,#77b300,#558000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#77b300),to(#558000));background-image:-webkit-linear-gradient(top,#77b300,#558000);background-image:-o-linear-gradient(top,#77b300,#558000);background-image:linear-gradient(to bottom,#77b300,#558000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff77b300', endColorstr='#ff558000', GradientType=0);border-color:#558000 #558000 #230;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#558000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#558000;*background-color:#460}.btn-success:active,.btn-success.active{background-color:#334d00 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#993dc7;background-image:-moz-linear-gradient(top,#a347d1,#8a2eb8);background-image:-webkit-gradient(linear,0 0,0 100%,from(#a347d1),to(#8a2eb8));background-image:-webkit-linear-gradient(top,#a347d1,#8a2eb8);background-image:-o-linear-gradient(top,#a347d1,#8a2eb8);background-image:linear-gradient(to bottom,#a347d1,#8a2eb8);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffa347d1', endColorstr='#ff8a2eb8', GradientType=0);border-color:#8a2eb8 #8a2eb8 #5c1f7a;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#8a2eb8;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#8a2eb8;*background-color:#7a29a3}.btn-info:active,.btn-info.active{background-color:#6b248f \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#080808;background-image:-moz-linear-gradient(top,#0d0d0d,#000);background-image:-webkit-gradient(linear,0 0,0 100%,from(#0d0d0d),to(#000));background-image:-webkit-linear-gradient(top,#0d0d0d,#000);background-image:-o-linear-gradient(top,#0d0d0d,#000);background-image:linear-gradient(to bottom,#0d0d0d,#000);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0d0d0d', endColorstr='#ff000000', GradientType=0);border-color:#000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#000;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#000;*background-color:#000}.btn-inverse:active,.btn-inverse.active{background-color:#000 \9}button.btn,input[type=submit].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type=submit].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type=submit].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type=submit].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type=submit].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{border-color:transparent;cursor:pointer;color:#f2f2f2;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover,.btn-link:focus{color:#fff;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#303030;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*zoom:1;font-size:0;vertical-align:middle;white-space:nowrap;*margin-left:.3em}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{font-size:0;margin-top:10px;margin-bottom:10px}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 1px 0 0 rgba(255,255,255,.125),inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);*padding-top:5px;*padding-bottom:5px}.btn-group>.btn-mini+.dropdown-toggle{padding-left:5px;padding-right:5px;*padding-top:2px;*padding-bottom:2px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{padding-left:12px;padding-right:12px;*padding-top:7px;*padding-bottom:7px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-group.open .btn.dropdown-toggle{background-color:#868988}.btn-group.open .btn-primary.dropdown-toggle{background-color:#1dade2}.btn-group.open .btn-warning.dropdown-toggle{background-color:#e67a00}.btn-group.open .btn-danger.dropdown-toggle{background-color:#b30000}.btn-group.open .btn-success.dropdown-toggle{background-color:#558000}.btn-group.open .btn-info.dropdown-toggle{background-color:#8a2eb8}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#000}.btn .caret{margin-top:8px;margin-left:0}.btn-large .caret{margin-top:6px}.btn-large .caret{border-left-width:5px;border-right-width:5px;border-top-width:5px}.btn-mini .caret,.btn-small .caret{margin-top:8px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-left:0;margin-top:-1px}.btn-group-vertical>.btn:first-child{-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,.5);background-color:#bbbfc2;border:1px solid transparent;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.alert,.alert h4{color:#a47e3c}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{background-color:#bbbfc2;border-color:#aeb4b6;color:#468847}.alert-success h4{color:#468847}.alert-danger,.alert-error{background-color:#bbbfc2;border-color:#b3b9bb;color:#b94a48}.alert-danger h4,.alert-error h4{color:#b94a48}.alert-info{background-color:#bbbfc2;border-color:#a8afb1;color:#09c}.alert-info h4{color:#09c}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-left:0;margin-bottom:20px;list-style:none}.nav>li>a{display:block}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#bbbfc2}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:700;line-height:20px;color:#adafae;text-shadow:0 1px 0 rgba(255,255,255,.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-left:15px;padding-right:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-left:-15px;margin-right:-15px;text-shadow:0 1px 0 rgba(255,255,255,.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.2);background-color:#f2f2f2}.nav-list [class^=icon-],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;content:"";line-height:0}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#bbbfc2 #bbbfc2 #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#bbb;background-color:#161616;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#f2f2f2}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{border-color:#ddd;z-index:2}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{border-top-color:#f2f2f2;border-bottom-color:#f2f2f2;margin-top:6px}.nav .dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#bbb;border-bottom-color:#bbb}.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#adafae;border-color:#adafae}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav li.dropdown.open a:focus .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover,.tabs-stacked .open>a:focus{border-color:#adafae}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;content:"";line-height:0}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-bottom-color:transparent;border-top-color:#ddd}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#bbbfc2 #ddd #bbbfc2 #bbbfc2}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#bbbfc2 #bbbfc2 #bbbfc2 #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#adafae}.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;background-color:transparent;cursor:default}.navbar{overflow:visible;margin-bottom:20px;*position:relative;*z-index:2}.navbar-inner{min-height:50px;padding-left:20px;padding-right:20px;background-color:#1f1f1f;background-image:-moz-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#1f1f1f),to(#1f1f1f));background-image:-webkit-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:-o-linear-gradient(top,#1f1f1f,#1f1f1f);background-image:linear-gradient(to bottom,#1f1f1f,#1f1f1f);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1f1f1f', endColorstr='#ff1f1f1f', GradientType=0);border:1px solid #000;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,.065);box-shadow:0 1px 4px rgba(0,0,0,.065);*zoom:1}.navbar-inner:before,.navbar-inner:after{display:table;content:"";line-height:0}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{float:left;display:block;padding:15px 20px;margin-left:-20px;font-size:20px;font-weight:200;color:#adafae;text-shadow:0 1px 0 #1f1f1f}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}.navbar-text{margin-bottom:0;line-height:50px;color:#adafae}.navbar-link{color:#adafae}.navbar-link:hover,.navbar-link:focus{color:#fff}.navbar .divider-vertical{height:50px;margin:0 9px;border-left:1px solid #1f1f1f;border-right:1px solid #1f1f1f}.navbar .btn,.navbar .btn-group{margin-top:10px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append .btn-group{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;content:"";line-height:0}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:10px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type=image],.navbar-form input[type=checkbox],.navbar-form input[type=radio]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:10px;margin-bottom:0}.navbar-search .search-query{margin-bottom:0;padding:4px 14px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:400;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-left:0;padding-right:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);box-shadow:0 1px 10px rgba(0,0,0,.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,.1);box-shadow:0 -1px 10px rgba(0,0,0,.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:15px;color:#adafae;text-decoration:none;text-shadow:0 1px 0 #1f1f1f}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{background-color:transparent;color:#fff;text-decoration:none}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#fff;text-decoration:none;background-color:#1f1f1f;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,.125);box-shadow:inset 0 3px 8px rgba(0,0,0,.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-left:5px;margin-right:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#121212;background-image:-moz-linear-gradient(top,#121212,#121212);background-image:-webkit-gradient(linear,0 0,0 100%,from(#121212),to(#121212));background-image:-webkit-linear-gradient(top,#121212,#121212);background-image:-o-linear-gradient(top,#121212,#121212);background-image:linear-gradient(to bottom,#121212,#121212);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff121212', endColorstr='#ff121212', GradientType=0);border-color:#121212 #121212 #000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#121212;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#121212;*background-color:#050505}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#000 \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 1px 0 rgba(0,0,0,.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:9px}.navbar .nav>li>.dropdown-menu:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #303030;position:absolute;top:-6px;left:10px}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{border-top:7px solid #ccc;border-top-color:rgba(0,0,0,.2);border-bottom:0;bottom:-7px;top:auto}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{border-top:6px solid #303030;border-bottom:0;bottom:-6px;top:auto}.navbar .nav li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{background-color:#1f1f1f;color:#fff}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#adafae;border-bottom-color:#adafae}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{left:auto;right:0}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{left:auto;right:12px}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{left:auto;right:13px}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{left:auto;right:100%;margin-left:0;margin-right:-1px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{background-color:#252a30;background-image:-moz-linear-gradient(top,#252a30,#252a30);background-image:-webkit-gradient(linear,0 0,0 100%,from(#252a30),to(#252a30));background-image:-webkit-linear-gradient(top,#252a30,#252a30);background-image:-o-linear-gradient(top,#252a30,#252a30);background-image:linear-gradient(to bottom,#252a30,#252a30);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff252a30', endColorstr='#ff252a30', GradientType=0);border-color:transparent}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#adafae;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse .nav>li>a:focus{color:#fff}.navbar-inverse .brand{color:#adafae}.navbar-inverse .navbar-text{color:#adafae}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{background-color:#242a31;color:#fff}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#242a31}.navbar-inverse .navbar-link{color:#adafae}.navbar-inverse .navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}.navbar-inverse .divider-vertical{border-left-color:#252a30;border-right-color:#252a30}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#242a31;color:#fff}.navbar-inverse .nav li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#adafae;border-bottom-color:#adafae}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#5d6978;border-color:#252a30;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#fff}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#303030;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);-moz-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15);outline:0}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#1a1d22;background-image:-moz-linear-gradient(top,#1a1d22,#1a1d22);background-image:-webkit-gradient(linear,0 0,0 100%,from(#1a1d22),to(#1a1d22));background-image:-webkit-linear-gradient(top,#1a1d22,#1a1d22);background-image:-o-linear-gradient(top,#1a1d22,#1a1d22);background-image:linear-gradient(to bottom,#1a1d22,#1a1d22);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1a1d22', endColorstr='#ff1a1d22', GradientType=0);border-color:#1a1d22 #1a1d22 #000;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#1a1d22;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#1a1d22;*background-color:#0f1113}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#040405 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.breadcrumb>li{display:inline-block;*display:inline;*zoom:1;text-shadow:0 1px 0 #fff}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}.breadcrumb>.active{color:#adafae}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;*zoom:1;margin-left:0;margin-bottom:0;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#161616;border:1px solid transparent;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#33b5e5}.pagination ul>.active>a,.pagination ul>.active>span{color:#adafae;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>a:focus{color:#adafae;background-color:transparent;cursor:default}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-top-left-radius:3px;-moz-border-radius-topleft:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-moz-border-radius-bottomleft:3px;border-bottom-left-radius:3px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:3px;-moz-border-radius-topright:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-bottomright:3px;border-bottom-right-radius:3px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-top-left-radius:2px;-moz-border-radius-topleft:2px;border-top-left-radius:2px;-webkit-border-bottom-left-radius:2px;-moz-border-radius-bottomleft:2px;border-bottom-left-radius:2px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:2px;-moz-border-radius-topright:2px;border-top-right-radius:2px;-webkit-border-bottom-right-radius:2px;-moz-border-radius-bottomright:2px;border-bottom-right-radius:2px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:10.5px}.pager{margin:20px 0;list-style:none;text-align:center;*zoom:1}.pager:before,.pager:after{display:table;content:"";line-height:0}.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;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#adafae;background-color:#fff;cursor:default}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:absolute;z-index:1050;width:100%;background-color:#fff;-webkit-box-shadow:0 3px 7px rgba(0,0,0,.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,.3);box-shadow:0 3px 7px rgba(0,0,0,.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;outline:0}.modal.fade{-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out;top:-25%}.modal.fade.in{top:10%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{position:relative;overflow-y:auto;padding:15px}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;*zoom:1}.modal-footer:before,.modal-footer:after{display:table;content:"";line-height:0}.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}.tooltip{position:absolute;z-index:1020;display:block;visibility:visible;font-size:11px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.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:8px;color:#fff;text-align:center;text-decoration:none;background-color:#303030;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.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:#303030}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#303030}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#303030}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#303030}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#303030;-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.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;font-weight:400;line-height:18px;background-color:#303030;border-bottom:1px solid #232323;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-title:empty{display:none}.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{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.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{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.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{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.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{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;content:"";line-height:0}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,.055);box-shadow:0 1px 3px rgba(0,0,0,.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover,a.thumbnail:focus{border-color:#f2f2f2;-webkit-box-shadow:0 1px 4px rgba(0,105,214,.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,.25);box-shadow:0 1px 4px rgba(0,105,214,.25)}.thumbnail>img{display:block;max-width:100%;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#bbb}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:700;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#adafae}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-left:9px;padding-right:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f80}.label-warning[href],.badge-warning[href]{background-color:#cc6d00}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#09c}.label-info[href],.badge-info[href]{background-color:#007399}.label-inverse,.badge-inverse{background-color:#303030}.label-inverse[href],.badge-inverse[href]{background-color:#161616}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.progress .bar{width:0;height:100%;color:#fff;float:left;font-size:12px;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 1px 0 0 rgba(0,0,0,.15),inset 0 -1px 0 rgba(0,0,0,.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#ff9d2e;background-image:-moz-linear-gradient(top,#ffac4d,#f80);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ffac4d),to(#f80));background-image:-webkit-linear-gradient(top,#ffac4d,#f80);background-image:-o-linear-gradient(top,#ffac4d,#f80);background-image:linear-gradient(to bottom,#ffac4d,#f80);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffac4d', endColorstr='#ffff8800', GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#ffac4d;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{overflow:hidden;width:100%;position:relative}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;line-height:1}.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:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#1f1f1f;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{left:auto;right:15px}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none}.carousel-indicators li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,.25);border-radius:5px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;left:0;right:0;bottom:0;padding:15px;background:#303030;background:rgba(0,0,0,.75)}.carousel-caption h4,.carousel-caption p{color:#fff;line-height:20px}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#303030;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;color:inherit;letter-spacing:-1px}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}label,input,button,select,textarea,.navbar .search-query:-moz-placeholder,.navbar .search-query::-webkit-input-placeholder{font-family:'Droid Sans',sans-serif;color:#bbb}blockquote{border-left:5px solid #303030}blockquote.pull-right{border-right:5px solid #303030}html{min-height:100%}body{min-height:100%;background:#161616}.page-header{border-bottom:1px solid #303030}hr{border-bottom:0}.navbar .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.navbar .brand{padding:15px 20px;color:#bbbfc2;font-weight:400;text-shadow:none}.navbar .nav>li>a{padding:15px 15px 14px;border-bottom:1px solid transparent}.navbar .nav>li>a:hover,.navbar .nav>.active>a,.navbar .nav>.active>a:hover{border-bottom:1px solid #33b5e5}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.navbar .navbar-text{margin-bottom:1px;padding:15px 15px 14px;line-height:inherit}.navbar .divider-vertical{margin:0;border-left:1px solid #303030;border-right-width:0}.navbar .search-query,.navbar .search-query:focus,.navbar .search-query.focused{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;background-color:#303030;line-height:normal;color:#adafae;text-shadow:none}.navbar .search-query:-moz-placeholder,.navbar .search-query:focus:-moz-placeholder,.navbar .search-query.focused:-moz-placeholder{color:#bbb}.navbar .search-query:-ms-input-placeholder,.navbar .search-query:focus:-ms-input-placeholder,.navbar .search-query.focused:-ms-input-placeholder{color:#bbb}.navbar .search-query::-webkit-input-placeholder,.navbar .search-query:focus::-webkit-input-placeholder,.navbar .search-query.focused::-webkit-input-placeholder{color:#bbb}@media(max-width:979px){.navbar .nav-collapse .nav li>a{border:0;color:#bbbfc2;font-weight:400;text-shadow:none}.navbar .nav-collapse .nav li>a:hover{border:0;background-color:#33b5e5}.navbar .nav-collapse .nav .active>a{border:0;background-color:#33b5e5}.navbar .nav-collapse .dropdown-menu a:hover{background-color:#33b5e5}.navbar .nav-collapse .navbar-form,.navbar .nav-collapse .navbar-search{border-top:0;border-bottom:0}.navbar .nav-collapse .nav-header{color:rgba(128,128,128,.6)}.navbar-inverse .nav-collapse .nav li>a:hover{background-color:#111}.navbar-inverse .nav-collapse .nav .active>a{background-color:#111}.navbar-inverse .nav-collapse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav-collapse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav-collapse .nav li.dropdown.open.active>.dropdown-toggle{background-color:#111}}.dropdown-menu{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}div.subnav{margin:0 1px;background-color:#1f1f1f;background-image:none;border:0;border-bottom:1px solid #303030}div.subnav .nav>li>a,div.subnav .nav>li:first-child>a,div.subnav .nav>li:first-child>a:hover{padding:11px 12px;border:0;background-color:#1f1f1f;color:#adafae}div.subnav .nav>li>a:hover,div.subnav .nav>li.active>a,div.subnav .nav>li.active>a:hover,div.subnav .nav>li:first-child>a:hover{padding:11px 12px;background:transparent;border:0;border-bottom:1px solid #33b5e5;color:#fff}div.subnav .nav li.nav-header{text-shadow:none}div.subnav-fixed{top:50px;margin:0}.nav-tabs{border-bottom:1px solid #303030}.nav-tabs>li>a{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs li>a:hover,.nav-tabs li.active>a,.nav-tabs li.active>a:hover{border-color:transparent;background-color:#33b5e5;color:#fff}.nav-tabs li.disabled>a{color:#bbbfc2}.nav-tabs .open .dropdown-toggle{background-color:#060606;border-color:transparent}.nav-pills li>a:hover{background-color:#33b5e5;color:#fff}.nav-pills li.disabled>a{color:#bbbfc2}.nav-pills .open .dropdown-toggle{background-color:#060606}.nav-pills .dropdown-menu li>a:hover{border:0}.nav-list li>a{text-shadow:none}.nav-list li>a:hover{background-color:#33b5e5;color:#fff}.nav-list .nav-header{text-shadow:none}.nav-list .divider{background-color:transparent;border-bottom:1px solid #303030}.nav-stacked li>a{border:1px solid #303030!important}.nav-stacked li>a:hover,.nav-stacked li.active>a{background-color:#33b5e5;color:#fff}.tabbable .nav-tabs,.tabbable .nav-tabs li.active>a{border-color:#303030}.breadcrumb{background-color:transparent;background-image:none;border-width:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:14px}.breadcrumb li{text-shadow:none}.breadcrumb li>a{color:#33b5e5;text-shadow:none}.pagination ul{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>span,.pagination ul>.disabled>span:hover{background-color:rgba(0,0,0,.2)}.pager li>a,.pager li>span{background-color:#161616;border:0}.pager li>a:hover,.pager li>span:hover{background-color:#33b5e5}.pager .disabled a,.pager .disabled a:hover{background-color:#161616}.btn{padding:5px 12px;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;text-shadow:none}.btn.disabled{box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.btn-large{padding:22px 30px}.btn-small{padding:2px 10px}.btn-mini{padding:2px 6px}.btn-group>.btn:first-child,.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.dropdown-toggle{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}input,textarea,select{border-width:2px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}select,textarea,input[type=text],input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=search],input[type=tel],input[type=color],.uneditable-input{color:#adafae}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly],.uneditable-input{border-color:#444}input:focus,textarea:focus,input.focused,textarea.focused{border-color:#52a8ec;outline:0;outline:thin dotted \9}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus,select:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}legend,label{color:#bbbfc2;border-bottom:0 solid #222}.form-actions{border-top:1px solid #222}.table{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.table tbody tr.success td{background-color:#690;color:#fff}.table tbody tr.error td{background-color:#c00;color:#fff}.table tbody tr.info td{background-color:#33b5e5;color:#fff}.alert,.alert .alert-heading,.alert-success,.alert-success .alert-heading,.alert-danger,.alert-error,.alert-danger .alert-heading,.alert-error .alert-heading,.alert-info,.alert-info .alert-heading{color:#bbbfc2;text-shadow:none;border:0}.label{color:#bbbfc2}.badge{border-radius:0;font-weight:200}.label,.alert{background-color:#888}.label:hover{background-color:#6e6e6e}.label-important,.alert-danger,.alert-error{background-color:#c00}.label-important:hover{background-color:#900}.label-warning{background-color:#cc6d00}.label-warning:hover{background-color:#995200}.label-success,.alert-success{background-color:#5c8a00}.label-success:hover{background-color:#3a5700}.label-info,.alert-info{background-color:#007399}.label-info:hover{background-color:#004d66}a:hover{text-decoration:none}.well,.hero-unit{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.well,.hero-unit{border-top:solid 1px #3d3d3d;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.8);-moz-box-shadow:0 2px 4px rgba(0,0,0,.8);box-shadow:0 2px 4px rgba(0,0,0,.8)}.thumbnail{border-color:#303030}.progress{background-color:#060606;background-image:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.modal{-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;border-top:solid 1px #3d3d3d;background-color:#303030}.modal-header{border-bottom:1px solid #303030}.modal-footer{background-color:#303030;border-top:1px solid #303030;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.popover{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.popover-title{border-bottom:0;color:#fff}.footer{border-top:1px solid #303030}@media(max-width:767px){div.panel{width:100%!important;padding:0!important}}.container-fluid{padding-left:0;padding-right:0}.container.grafana-container{padding:5px 10px;width:100%;box-sizing:border-box}.bgNav{background:#1f1f1f}.bgPrimary{background:#4abde8;color:rgba(255,255,255,.9)}.bgInfo{background:#a347d1;color:rgba(255,255,255,.9)}.bgSuccess{background:#77b300;color:rgba(255,255,255,.9)}.bgWarning{background:#ff941a;color:rgba(255,255,255,.9)}.bgDanger{background:#e60000;color:rgba(255,255,255,.9)}.bgInverse{background:#0d0d0d;color:rgba(255,255,255,.9)}code,pre{background-color:#bbbfc2}.panel{display:inline-table;vertical-align:top}.panel-container{padding:0;background:#1f1f1f;margin:5px}.panel-content{padding:0 10px 5px}.panel-title{border:0;font-weight:700}.panel-loading{position:absolute;top:0;right:4px;z-index:800}.panel div.panel-extra div.panel-extra-container{margin-right:-10px;margin-top:3px;text-align:center}.panel div.panel-extra div.panel-extra-container ul{text-align:left}.panel div.panel-extra{font-size:.9em;margin-bottom:0}.panel div.panel-extra .extra{float:right!important}.panel-error{color:#fff;padding:5px 10px 0}.panel-error-inspector-link{float:right;margin-right:10px}div.editor-row{vertical-align:top}div.editor-row div.section{margin-right:20px;vertical-align:top;display:inline-block}div.editor-option{vertical-align:top;display:inline-block;margin-right:10px}div.editor-option label{display:block}#events{font-size:12px}.version{font-size:85%}.legend{color:#000}div.fake-input{background-color:#4a4a4a;border:1px solid #636363;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}hr.small{margin:5px 0}form input.ng-invalid{color:#b94a48}.editor-title{margin-right:10px;font-size:1.7em;font-weight:700;text-transform:capitalize}.editor-title small{opacity:.5;font-size:.7em;font-weight:400}.bordered{border:1px solid #303030}.table-unpadded th,.table-unpadded td{padding:0 2px}.spy{position:absolute;right:0;top:0}.navbar-inner{border-width:0}.kibana-row{margin-bottom:5px}.row-tab .dropdown-menu-right{top:0;left:33px}.row-tab-button{padding:0;cursor:pointer;vertical-align:middle;width:30px;height:30px;text-align:center;display:inline-block;line-height:30px}.row-button{width:30px;text-align:center;float:left;cursor:pointer}.row-text{white-space:nowrap;text-transform:uppercase;font-weight:700;font-size:.9em;margin:0 10px}.row-close{padding:0;margin:0;min-height:30px!important;line-height:30px;background:#1f1f1f}.row-open{margin-top:5px;left:-34px;position:absolute;z-index:100;transition:.25s left;transition-delay:.25s;-webkit-transition-delay:.25s}.row-open:hover{left:-12px}.odd{background-color:rgba(100,100,100,.3)}.nomargin{margin:0}[ng\:cloak],[ng-cloak],.ng-cloak{display:none!important}.table tbody+tbody{border-top:0}.ui-draggable-dragging{display:block;z-index:9999}.dragInProgress .panel-container{border:3px solid rgba(100,100,100,.5)}.link{color:#f2f2f2;cursor:pointer}.link:hover{color:#fff}.pointer{cursor:pointer}.popover{max-width:480px}.modal{width:100%;top:0!important}.tiny{font-size:50%}.smaller{font-size:70%}.small{font-size:85%}.large{font-size:120%}.strong{font-weight:700}a{cursor:pointer}.normal{font-weight:400}.light{font-weight:200}.input-smaller{width:75px}.string{color:#c8ccce}.number{color:#00ace6}.boolean{color:#b78c43}.key{color:#c05c5a}.btn-active{background-color:#e6e6e6;background-image:none;box-shadow:0 2px 4px rgba(0,0,0,.15) inset,0 1px 2px rgba(0,0,0,.05);outline:0 none}.remove:hover{background-color:#b30000}.faded{opacity:.2}div.flot-text{color:#bbbfc2!important}.dashboard-notice{z-index:8000;margin-left:0;padding:3px 0;width:100%;padding-left:20px;color:#fff}.alert-warning{background-color:#bbbfc2;border-color:transparent;color:#a47e3c}.popover.topLeft{margin-top:-10px}.popover.topLeft .arrow{bottom:-10px;left:25%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#303030}.popover.topLeft .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.topRight{margin-top:-10px}.popover.topRight .arrow{bottom:-10px;left:75%;margin-left:-10px;border-width:10px 10px 0;border-top-color:#303030}.popover.topRight .arrow:after{border-width:11px 11px 0;border-top-color:rgba(0,0,0,.25);bottom:-1px;left:-11px}.popover.rightTop .arrow{top:10%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightTop .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.popover.rightBottom .arrow{top:90%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.rightBottom .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#303030}.popover.bottomLeft .arrow{left:10%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottomLeft .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.popover.bottomRight .arrow{left:90%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottomRight .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#303030}.popover.leftTop .arrow{top:10%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftTop .arrow:after{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.popover.leftBottom .arrow{top:90%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.leftBottom .arrow:after{right:1px;border-right-width:0;border-left-color:#303030;bottom:-10px}.popover.topLeft .arrow{left:10%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.topLeft .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.popover.topRight .arrow{left:90%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.topRight .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#303030}.label-tag{background-color:#93c;color:#f2f2f2}.label-tag:hover{background-color:#7a29a3;color:#fff}.annotation-editor-table td{white-space:nowrap}.save-dashboard-dropdown{padding:10px}.save-dashboard-dropdown li>a{padding-left:5px}.save-dashboard-dropdown-save-form{margin-bottom:5px}.inspector-request-table td{padding:5px}.inspector-request-table td:first-child{white-space:nowrap}code,pre{background-color:#1f1f1f;color:#bbbfc2}.submenu-controls{background:#292929;font-size:inherit}.submenu-controls label{margin:0;padding-right:4px;display:inline}.submenu-controls input[type=checkbox]{margin:0}.submenu-controls-visible:not(.hide-controls) .panel-fullscreen{top:82px}.submenu-panel{padding:0 4px 0 8px;border-right:1px solid #202020;float:left}.submenu-panel:first-child{padding-left:17px}.submenu-panel-title{float:left;text-transform:uppercase;padding:4px 10px 3px 0}.submenu-panel-wrapper{float:left}.submenu-toggle{padding:4px 0 3px 8px;float:left}.submenu-toggle .annotation-color-icon{position:relative;top:2px}.submenu-toggle:first-child{padding-left:0}.submenu-control-edit{padding:4px 4px 3px 8px;float:right;border-left:1px solid #202020;margin-left:8px}.annotation-disabled,.annotation-disabled a{color:#788086}.filtering-container{float:left}.filtering-container label{float:left}.filtering-container input[type=checkbox]{margin:0}.filter-panel-filter{display:inline-block;vertical-align:top;padding:4px 10px 3px;border-right:1px solid #202020}.filter-panel-filter:first-child{padding-left:0}.filter-panel-filter ul{margin-bottom:0}.filter-deselected{opacity:.5}.filtering-container .filter-action{float:right;padding-right:2px;margin-bottom:0!important;margin-left:0;margin-top:4px}.add-filter-action{padding:3px 5px 0;position:relative;top:4px}.filter-mandate{text-decoration:underline;cursor:pointer}.filter-apply{float:right}.bootstrap-tagsinput{display:inline-block;padding:4px 6px;margin-bottom:10px;color:#555;vertical-align:middle;border-radius:4px;max-width:100%;line-height:22px;background-color:#4a4a4a;border:1px solid #636363;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.bootstrap-tagsinput input{border:0;box-shadow:none;outline:0;background-color:transparent;padding:0;padding-left:5px;margin:0;width:auto!important;max-width:inherit}.bootstrap-tagsinput input:focus{border:0;box-shadow:none}.bootstrap-tagsinput .tag{margin-right:2px;color:#fff}.bootstrap-tagsinput .tag [data-role=remove]{margin-left:8px;cursor:pointer}.bootstrap-tagsinput .tag [data-role=remove]:after{content:"x";padding:0 2px}.bootstrap-tagsinput .tag [data-role=remove]:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.bootstrap-tagsinput .tag [data-role=remove]:hover:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.hide-controls{padding:0}.hide-controls .grafana-row{display:none}.hide-controls .submenu-controls{display:none}.hide-controls .add-row-panel-hint{display:none}.playlist-active .grafana-menu-zoom-out,.playlist-active .grafana-menu-save,.playlist-active .grafana-menu-load,.playlist-active .add-row-panel-hint,.playlist-active .grafana-menu-home,.playlist-active .grafana-menu-refresh,.playlist-active .grafana-menu-edit{display:none}.playlist-active .grafana-menu-stop-playlist{display:list-item}.grafana-search-panel{padding:6px 10px}.grafana-search-panel .search-field-wrapper input{width:100%}.grafana-search-panel .search-field-wrapper button{margin:0 2px 0 0}.grafana-search-panel .search-field-wrapper>span{display:block;overflow:hidden;padding-right:25px}.grafana-search-panel .selected td,.grafana-search-panel tr.selected:nth-child(odd)>td{background:#33b5e5;color:#fff;text-shadow:-1px -1px 1px rgba(0,0,0,.3)}.grafana-search-panel .selected td a,.grafana-search-panel tr.selected:nth-child(odd)>td a{color:#fff}.grafana-search-panel .selected-tag .label-tag{background-color:#33b5e5}.search-tagview-switch{position:absolute;top:15px;right:263px;color:#a6a6a6}.search-tagview-switch.active{color:#f2f2f2}.row-button{width:24px}.modal{margin:5%;width:90%}.grafana-search-metric-actions{visibility:hidden;padding-left:20px}.grafana-search-metric-name{white-space:nowrap}.grafana-search-metric-result:hover .grafana-search-metric-actions{visibility:visible}.grafana-search-metric-result:hover .grafana-search-metric-name{color:#33b5e5}.yaxisLabel{top:50%;left:-20px;transform:rotate(-90deg);-o-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-webkit-transform:rotate(-90deg);transform-origin:0 0;-o-transform-origin:0 0;-ms-transform-origin:0 0;-moz-transform-origin:0 0;-webkit-transform-origin:0 0}.axisLabel{color:#bbbfc2;font-size:11.9px;position:absolute;text-align:center;font-size:12px}.hidden-series a{color:#7f7f7f}.panel-fullscreen{z-index:100;display:block!important;position:fixed;left:0;right:0;top:54px;padding:0 10px;background:#1f1f1f;overflow-y:scroll;height:100%}.panel-fullscreen .panel-content{padding-bottom:130px}.dashboard-fullscreen .container-fluid.main{height:0;width:0;position:fixed;right:-10000px}.grafana-legend-container{margin:0 15px;text-align:left;position:relative;top:2px}.grafana-legend-container .popover-content{padding:0}.histogram-legend{display:inline-block;padding:0 4px}.histogram-legend i{position:relative;top:2px}.histogram-legend-item{display:inline-block}.histogram-chart{position:relative}.histogram-legend-popover{width:200px}.histogram-legend-popover label{display:inline-block}.histogram-legend-popover .btn{padding:1px 3px;margin-right:0;line-height:initial}.histogram-legend-popover .close{margin-right:5px;color:#f2f2f2;opacity:.7;text-shadow:none}.histogram-legend-popover .editor-row{padding:5px}.panel-full-edit-tabs{margin-top:10px;min-height:250px;margin-left:-10px;margin-right:-10px;background-color:transparent;border-top:1px solid #000}.panel-full-edit-tabs .tabs .nav-tabs{margin:0;background:#303030;border-top:1px solid #555}.panel-full-edit-tabs .tabs .tab-content{display:none}.panel-full-edit-tabs .tab-content{overflow:visible;padding:15px}.panel-full-edit-tabs .nav-tabs>li>a{line-height:15px;padding-top:6px;padding-bottom:6px;font-size:.8rem}.grafana-target:last-child{border-bottom:1px solid #000}.grafana-target-inner{border-top:1px solid #000;border-left:1px solid #000;border-right:1px solid #000;background:#303030;width:100%}.grafana-target-onoff{padding:5px 7px;display:inline-block}.grafana-segment-list{list-style:none;margin:0;margin-right:90px;margin-left:30px}.grafana-segment-list>li{float:left}.grafana-segment-dropdown-menu{margin-bottom:70px}.grafana-target-segment{padding:8px 7px;font-weight:400;border-right:1px solid #050505;color:#c8c8c8;display:inline-block}.has-open-function .grafana-target-segment{padding-top:25px}.grafana-target-hidden .grafana-target-segment{color:#888}.grafana-target-segment:hover,.grafana-target-segment:focus{text-decoration:none}.grafana-target-segmenta:hover{background:#444}.grafana-target-function{background:#444}.grafana-target-function>a{color:#c8c8c8}.grafana-target-function>a:hover{color:#f2f2f2}.grafana-target-function.show-function-controls{padding-top:5px;min-width:100px;text-align:center}input[type=text].grafana-function-param-input{background:transparent;border:0;margin:0;padding:0}.grafana-target-controls-left{list-style:none;float:left;width:30px;margin:0}.grafana-target-controls{width:120px;float:right;list-style:none;margin:0;text-align:right}.grafana-target-controls>li{display:inline-block;white-space:nowrap}.grafana-target-controls a{padding:8px 7px;position:relative;top:8px;color:#c8c8c8;font-size:16px}.grafana-target-hidden .grafana-target-controls a{color:#888}.grafana-target-controls a:hover,.grafana-target-controls a:focus{text-decoration:none}input[type=text].grafana-target-text-input{padding:8px 7px;border:0;margin:0;background:transparent;float:left;color:#c8c8c8;border-radius:0}input[type=text].grafana-target-segment-input{border:0;border-right:1px solid #050505;margin:0;border-radius:0;padding:8px 4px}input[type=checkbox].grafana-target-option-checkbox{margin:0}select.grafana-target-segment-input{border:0;border-right:1px solid #050505;margin:0;border-radius:0;height:36px;padding:8px 5px}.grafana-target .dropdown{padding:0;margin:0}.graphite-func-controls{display:none;text-align:center}.graphite-func-controls .icon-arrow-left{float:left;position:relative;top:2px}.graphite-func-controls .icon-arrow-right{float:right;position:relative;top:2px}.graphite-func-controls .icon-remove{margin-left:10px}.grafana-target .popover-content{padding:0}.scrollable{max-height:300px;overflow:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar:hover{height:8px}::-webkit-scrollbar-button:start:decrement,::-webkit-scrollbar-button:end:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement{display:none}::-webkit-scrollbar-button:horizontal:increment{display:none}::-webkit-scrollbar-button:vertical:decrement{display:none}::-webkit-scrollbar-button:vertical:increment{display:none}::-webkit-scrollbar-button:horizontal:decrement:active{background-image:none}::-webkit-scrollbar-button:horizontal:increment:active{background-image:none}::-webkit-scrollbar-button:vertical:decrement:active{background-image:none}::-webkit-scrollbar-button:vertical:increment:active{background-image:none}::-webkit-scrollbar-track-piece{background-color:grayDark}::-webkit-scrollbar-thumb:vertical{height:50px;background:-webkit-gradient(linear,left top,right top,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #0d0d0d;border-top:1px solid #666;border-left:1px solid #666}::-webkit-scrollbar-thumb:horizontal{width:50px;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#3a3a3a),color-stop(100%,#222));border:1px solid #1f1f1f;border-top:1px solid #666;border-left:1px solid #666}.sp-replacer{background:inherit;border:0;color:inherit}.sp-replacer:hover,.sp-replacer.sp-active{border-color:inherit;color:inherit}.sp-container{border-radius:0;background-color:#303030;border:0;padding:0}.sp-palette-container,.sp-picker-container{border:0}.sp-dd{display:none}.sp-preview{position:relative;width:15px;height:15px;border:0;margin-right:5px;float:left;z-index:0}.datapoints-warning{pointer:none;position:absolute;top:50%;left:50%;z-index:10;margin-top:-50px;margin-left:-100px;width:200px;text-align:center;cursor:auto;padding:10px}.grafana-version-footer{padding-top:15px;text-align:left}/*! - * Datepicker for Bootstrap - * - * Copyright 2012 Stefan Petre - * Improvements by Andrew Rowls - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - */.datepicker{padding:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker.datepicker-rtl{direction:rtl}.datepicker.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:6px}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:7px}.datepicker>div{display:none}.datepicker.days div.datepicker-days{display:block}.datepicker.months div.datepicker-months{display:block}.datepicker.years div.datepicker-years{display:block}.datepicker table{margin:0}.datepicker td,.datepicker th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border:0}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day:hover{background:#eee;cursor:pointer}.datepicker table tr td.old,.datepicker table tr td.new{color:#999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td.today,.datepicker table tr td.today:hover,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover{background-color:#fde19a;background-image:-moz-linear-gradient(top,#fdd49a,#fdf59a);background-image:-ms-linear-gradient(top,#fdd49a,#fdf59a);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fdd49a),to(#fdf59a));background-image:-webkit-linear-gradient(top,#fdd49a,#fdf59a);background-image:-o-linear-gradient(top,#fdd49a,#fdf59a);background-image:linear-gradient(top,#fdd49a,#fdf59a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);border-color:#fdf59a #fdf59a #fbed50;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#000!important}.datepicker table tr td.today:hover,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today[disabled],.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today.disabled:hover[disabled]{background-color:#fdf59a}.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active{background-color:#fbf069 \9}.datepicker table tr td.active,.datepicker table tr td.active:hover,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-ms-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(top,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active:hover,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active[disabled],.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active.disabled:hover[disabled]{background-color:#04c}.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active{background-color:#039 \9}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-ms-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(top,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active[disabled],.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active.disabled:hover[disabled]{background-color:#04c}.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active{background-color:#039 \9}.datepicker table tr td span.old{color:#999}.datepicker th.switch{width:145px}.datepicker thead tr:first-child th,.datepicker tfoot tr:first-child th{cursor:pointer}.datepicker thead tr:first-child th:hover,.datepicker tfoot tr:first-child th:hover{background:#eee}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.datepicker thead tr:first-child th.cw{cursor:default;background-color:transparent}.input-append.date .add-on i,.input-prepend.date .add-on i{display:block;cursor:pointer;width:16px;height:16px}/*! - * Timepicker Component for Twitter Bootstrap - * - * Copyright 2013 Joris de Wit - * - * Contributors https://github.com/jdewit/bootstrap-timepicker/graphs/contributors - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */.bootstrap-timepicker{position:relative}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu{left:auto;right:0}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before{left:auto;right:12px}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after{left:auto;right:13px}.bootstrap-timepicker .add-on{cursor:pointer}.bootstrap-timepicker .add-on i{display:inline-block;width:16px;height:16px}.bootstrap-timepicker-widget.dropdown-menu{padding:2px 3px 2px 2px}.bootstrap-timepicker-widget.dropdown-menu.open{display:inline-block}.bootstrap-timepicker-widget.dropdown-menu:before{border-bottom:7px solid rgba(0,0,0,.2);border-left:7px solid transparent;border-right:7px solid transparent;content:"";display:inline-block;left:9px;position:absolute;top:-7px}.bootstrap-timepicker-widget.dropdown-menu:after{border-bottom:6px solid #FFF;border-left:6px solid transparent;border-right:6px solid transparent;content:"";display:inline-block;left:10px;position:absolute;top:-6px}.bootstrap-timepicker-widget a.btn,.bootstrap-timepicker-widget input{border-radius:4px}.bootstrap-timepicker-widget table{width:100%;margin:0}.bootstrap-timepicker-widget table td{text-align:center;height:30px;margin:0;padding:2px}.bootstrap-timepicker-widget table td:not(.separator){min-width:30px}.bootstrap-timepicker-widget table td span{width:100%}.bootstrap-timepicker-widget table td a{border:1px transparent solid;width:100%;display:inline-block;margin:0;padding:8px 0;outline:0;color:#333}.bootstrap-timepicker-widget table td a:hover{text-decoration:none;background-color:#eee;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border-color:#ddd}.bootstrap-timepicker-widget table td a i{margin-top:2px}.bootstrap-timepicker-widget table td input{width:25px;margin:0;text-align:center}.bootstrap-timepicker-widget .modal-content{padding:4px}@media (min-width:767px){.bootstrap-timepicker-widget.modal{width:200px;margin-left:-100px}}@media (max-width:767px){.bootstrap-timepicker{width:100%}.bootstrap-timepicker .dropdown-menu{width:100%}}.sp-container{position:absolute;top:0;left:0;display:inline-block;*display:inline;*zoom:1;z-index:9999994;overflow:hidden}.sp-container.sp-flat{position:relative}.sp-container,.sp-container *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.sp-top{position:relative;width:100%;display:inline-block}.sp-top-inner{position:absolute;top:0;left:0;bottom:0;right:0}.sp-color{position:absolute;top:0;left:0;bottom:0;right:20%}.sp-hue{position:absolute;top:0;right:0;bottom:0;left:84%;height:100%}.sp-clear-enabled .sp-hue{top:33px;height:77.5%}.sp-fill{padding-top:80%}.sp-sat,.sp-val{position:absolute;top:0;left:0;right:0;bottom:0}.sp-alpha-enabled .sp-top{margin-bottom:18px}.sp-alpha-enabled .sp-alpha{display:block}.sp-alpha-handle{position:absolute;top:-4px;bottom:-4px;width:6px;left:50%;cursor:pointer;border:1px solid #000;background:#fff;opacity:.8}.sp-alpha{display:none;position:absolute;bottom:-14px;right:0;left:0;height:8px}.sp-alpha-inner{border:solid 1px #333}.sp-clear{display:none}.sp-clear.sp-clear-display{background-position:center}.sp-clear-enabled .sp-clear{display:block;position:absolute;top:0;right:0;bottom:0;left:84%;height:28px}.sp-container,.sp-replacer,.sp-preview,.sp-dragger,.sp-slider,.sp-alpha,.sp-clear,.sp-alpha-handle,.sp-container.sp-dragging .sp-input,.sp-container button{-webkit-user-select:none;-moz-user-select:-moz-none;-o-user-select:none;user-select:none}.sp-container.sp-input-disabled .sp-input-container{display:none}.sp-container.sp-buttons-disabled .sp-button-container{display:none}.sp-palette-only .sp-picker-container{display:none}.sp-palette-disabled .sp-palette-container{display:none}.sp-initial-disabled .sp-initial{display:none}.sp-sat{background-image:-webkit-gradient(linear,0 0,100% 0,from(#FFF),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(left,#FFF,rgba(204,154,129,0));background-image:-moz-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-o-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-ms-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:linear-gradient(to right,#fff,rgba(204,154,129,0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";filter:progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81')}.sp-val{background-image:-webkit-gradient(linear,0 100%,0 0,from(#000),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-moz-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-o-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-ms-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:linear-gradient(to top,#000,rgba(204,154,129,0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000')}.sp-hue{background:-moz-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-ms-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-o-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-webkit-gradient(linear,left top,left bottom,from(red),color-stop(0.17,#ff0),color-stop(0.33,#0f0),color-stop(0.5,#0ff),color-stop(0.67,#00f),color-stop(0.83,#f0f),to(red));background:-webkit-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.sp-1{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00')}.sp-2{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00')}.sp-3{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff')}.sp-4{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff')}.sp-5{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff')}.sp-6{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000')}.sp-hidden{display:none!important}.sp-cf:before,.sp-cf:after{content:"";display:table}.sp-cf:after{clear:both}.sp-cf{*zoom:1}@media (max-device-width:480px){.sp-color{right:40%}.sp-hue{left:63%}.sp-fill{padding-top:60%}}.sp-dragger{border-radius:5px;height:5px;width:5px;border:1px solid #fff;background:#000;cursor:pointer;position:absolute;top:0;left:0}.sp-slider{position:absolute;top:0;cursor:pointer;height:3px;left:-1px;right:-1px;border:1px solid #000;background:#fff;opacity:.8}.sp-container{border-radius:0;background-color:#ECECEC;border:solid 1px #f0c49B;padding:0}.sp-container,.sp-container button,.sp-container input,.sp-color,.sp-hue,.sp-clear{font:400 12px "Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Verdana,sans-serif;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.sp-top{margin-bottom:3px}.sp-color,.sp-hue,.sp-clear{border:solid 1px #666}.sp-input-container{float:right;width:100px;margin-bottom:4px}.sp-initial-disabled .sp-input-container{width:100%}.sp-input{font-size:12px!important;border:1px inset;padding:4px 5px;margin:0;width:100%;background:transparent;border-radius:3px;color:#222}.sp-input:focus{border:1px solid orange}.sp-input.sp-validation-error{border:1px solid red;background:#fdd}.sp-picker-container,.sp-palette-container{float:left;position:relative;padding:10px;padding-bottom:300px;margin-bottom:-290px}.sp-picker-container{width:172px;border-left:solid 1px #fff}.sp-palette-container{border-right:solid 1px #ccc}.sp-palette .sp-thumb-el{display:block;position:relative;float:left;width:24px;height:15px;margin:3px;cursor:pointer;border:solid 2px transparent}.sp-palette .sp-thumb-el:hover,.sp-palette .sp-thumb-el.sp-thumb-active{border-color:orange}.sp-thumb-el{position:relative}.sp-initial{float:left;border:solid 1px #333}.sp-initial span{width:30px;height:25px;border:0;display:block;float:left;margin:0}.sp-initial .sp-clear-display{background-position:center}.sp-button-container{float:right}.sp-replacer{margin:0;overflow:hidden;cursor:pointer;padding:4px;display:inline-block;*zoom:1;*display:inline;border:solid 1px #91765d;background:#eee;color:#333;vertical-align:middle}.sp-replacer:hover,.sp-replacer.sp-active{border-color:#F0C49B;color:#111}.sp-replacer.sp-disabled{cursor:default;border-color:silver;color:silver}.sp-dd{padding:2px 0;height:16px;line-height:16px;float:left;font-size:10px}.sp-preview{position:relative;width:25px;height:20px;border:solid 1px #222;margin-right:5px;float:left;z-index:0}.sp-palette{*width:220px;max-width:220px}.sp-palette .sp-thumb-el{width:16px;height:16px;margin:2px 1px;border:solid 1px #d0d0d0}.sp-container{padding-bottom:0}.sp-container button{background-color:#eee;background-image:-webkit-linear-gradient(top,#eee,#ccc);background-image:-moz-linear-gradient(top,#eee,#ccc);background-image:-ms-linear-gradient(top,#eee,#ccc);background-image:-o-linear-gradient(top,#eee,#ccc);background-image:linear-gradient(to bottom,#eee,#ccc);border:1px solid #ccc;border-bottom:1px solid #bbb;border-radius:3px;color:#333;font-size:14px;line-height:1;padding:5px 4px;text-align:center;text-shadow:0 1px 0 #eee;vertical-align:middle}.sp-container button:hover{background-color:#ddd;background-image:-webkit-linear-gradient(top,#ddd,#bbb);background-image:-moz-linear-gradient(top,#ddd,#bbb);background-image:-ms-linear-gradient(top,#ddd,#bbb);background-image:-o-linear-gradient(top,#ddd,#bbb);background-image:linear-gradient(to bottom,#ddd,#bbb);border:1px solid #bbb;border-bottom:1px solid #999;cursor:pointer;text-shadow:0 1px 0 #ddd}.sp-container button:active{border:1px solid #aaa;border-bottom:1px solid #888;-webkit-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-moz-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-ms-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-o-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee}.sp-cancel{font-size:11px;color:#d93f3f!important;margin:0;padding:2px;margin-right:5px;vertical-align:middle;text-decoration:none}.sp-cancel:hover{color:#d93f3f!important;text-decoration:underline}.sp-palette span:hover,.sp-palette span.sp-thumb-active{border-color:#000}.sp-preview,.sp-alpha,.sp-thumb-el{position:relative;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.sp-preview-inner,.sp-alpha-inner,.sp-thumb-inner{display:block;position:absolute;top:0;left:0;bottom:0;right:0}.sp-palette .sp-thumb-inner{background-position:50% 50%;background-repeat:no-repeat}.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=)}.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=)}.sp-clear-display{background-repeat:no-repeat;background-position:center;background-image:url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==)}body{-webkit-backface-visibility:hidden}.animated{-webkit-animation-duration:1s;-moz-animation-duration:1s;-o-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.infinite{-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;-o-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.hinge{-webkit-animation-duration:2s;-moz-animation-duration:2s;-o-animation-duration:2s;animation-duration:2s}@-webkit-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@-moz-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@-o-keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,100%{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;-moz-animation-name:flash;-o-animation-name:flash;animation-name:flash}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px)}}@-moz-keyframes shake{0%,100%{-moz-transform:translateX(0)}10%,30%,50%,70%,90%{-moz-transform:translateX(-10px)}20%,40%,60%,80%{-moz-transform:translateX(10px)}}@-o-keyframes shake{0%,100%{-o-transform:translateX(0)}10%,30%,50%,70%,90%{-o-transform:translateX(-10px)}20%,40%,60%,80%{-o-transform:translateX(10px)}}@keyframes shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}.shake{-webkit-animation-name:shake;-moz-animation-name:shake;-o-animation-name:shake;animation-name:shake}@-webkit-keyframes bounce{0%,20%,50%,80%,100%{-webkit-transform:translateY(0)}40%{-webkit-transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px)}}@-moz-keyframes bounce{0%,20%,50%,80%,100%{-moz-transform:translateY(0)}40%{-moz-transform:translateY(-30px)}60%{-moz-transform:translateY(-15px)}}@-o-keyframes bounce{0%,20%,50%,80%,100%{-o-transform:translateY(0)}40%{-o-transform:translateY(-30px)}60%{-o-transform:translateY(-15px)}}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-30px)}60%{transform:translateY(-15px)}}.bounce{-webkit-animation-name:bounce;-moz-animation-name:bounce;-o-animation-name:bounce;animation-name:bounce}@-webkit-keyframes tada{0%{-webkit-transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0)}}@-moz-keyframes tada{0%{-moz-transform:scale(1)}10%,20%{-moz-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-moz-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-moz-transform:scale(1.1) rotate(-3deg)}100%{-moz-transform:scale(1) rotate(0)}}@-o-keyframes tada{0%{-o-transform:scale(1)}10%,20%{-o-transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-o-transform:scale(1.1) rotate(3deg)}40%,60%,80%{-o-transform:scale(1.1) rotate(-3deg)}100%{-o-transform:scale(1) rotate(0)}}@keyframes tada{0%{transform:scale(1)}10%,20%{transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.1) rotate(3deg)}40%,60%,80%{transform:scale(1.1) rotate(-3deg)}100%{transform:scale(1) rotate(0)}}.tada{-webkit-animation-name:tada;-moz-animation-name:tada;-o-animation-name:tada;animation-name:tada}@-webkit-keyframes swing{20%,40%,60%,80%,100%{-webkit-transform-origin:top center}20%{-webkit-transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg)}}@-moz-keyframes swing{20%{-moz-transform:rotate(15deg)}40%{-moz-transform:rotate(-10deg)}60%{-moz-transform:rotate(5deg)}80%{-moz-transform:rotate(-5deg)}100%{-moz-transform:rotate(0deg)}}@-o-keyframes swing{20%{-o-transform:rotate(15deg)}40%{-o-transform:rotate(-10deg)}60%{-o-transform:rotate(5deg)}80%{-o-transform:rotate(-5deg)}100%{-o-transform:rotate(0deg)}}@keyframes swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}100%{transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;-moz-transform-origin:top center;-o-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;-moz-animation-name:swing;-o-animation-name:swing;animation-name:swing}@-webkit-keyframes wobble{0%{-webkit-transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%)}}@-moz-keyframes wobble{0%{-moz-transform:translateX(0%)}15%{-moz-transform:translateX(-25%) rotate(-5deg)}30%{-moz-transform:translateX(20%) rotate(3deg)}45%{-moz-transform:translateX(-15%) rotate(-3deg)}60%{-moz-transform:translateX(10%) rotate(2deg)}75%{-moz-transform:translateX(-5%) rotate(-1deg)}100%{-moz-transform:translateX(0%)}}@-o-keyframes wobble{0%{-o-transform:translateX(0%)}15%{-o-transform:translateX(-25%) rotate(-5deg)}30%{-o-transform:translateX(20%) rotate(3deg)}45%{-o-transform:translateX(-15%) rotate(-3deg)}60%{-o-transform:translateX(10%) rotate(2deg)}75%{-o-transform:translateX(-5%) rotate(-1deg)}100%{-o-transform:translateX(0%)}}@keyframes wobble{0%{transform:translateX(0%)}15%{transform:translateX(-25%) rotate(-5deg)}30%{transform:translateX(20%) rotate(3deg)}45%{transform:translateX(-15%) rotate(-3deg)}60%{transform:translateX(10%) rotate(2deg)}75%{transform:translateX(-5%) rotate(-1deg)}100%{transform:translateX(0%)}}.wobble{-webkit-animation-name:wobble;-moz-animation-name:wobble;-o-animation-name:wobble;animation-name:wobble}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1)}50%{-webkit-transform:scale(1.1)}100%{-webkit-transform:scale(1)}}@-moz-keyframes pulse{0%{-moz-transform:scale(1)}50%{-moz-transform:scale(1.1)}100%{-moz-transform:scale(1)}}@-o-keyframes pulse{0%{-o-transform:scale(1)}50%{-o-transform:scale(1.1)}100%{-o-transform:scale(1)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}.pulse{-webkit-animation-name:pulse;-moz-animation-name:pulse;-o-animation-name:pulse;animation-name:pulse}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) rotateY(0);-webkit-animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg);-webkit-animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-webkit-animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) rotateY(360deg) scale(.95);-webkit-animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) scale(1);-webkit-animation-timing-function:ease-in}}@-moz-keyframes flip{0%{-moz-transform:perspective(400px) rotateY(0);-moz-animation-timing-function:ease-out}40%{-moz-transform:perspective(400px) translateZ(150px) rotateY(170deg);-moz-animation-timing-function:ease-out}50%{-moz-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-moz-animation-timing-function:ease-in}80%{-moz-transform:perspective(400px) rotateY(360deg) scale(.95);-moz-animation-timing-function:ease-in}100%{-moz-transform:perspective(400px) scale(1);-moz-animation-timing-function:ease-in}}@-o-keyframes flip{0%{-o-transform:perspective(400px) rotateY(0);-o-animation-timing-function:ease-out}40%{-o-transform:perspective(400px) translateZ(150px) rotateY(170deg);-o-animation-timing-function:ease-out}50%{-o-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-o-animation-timing-function:ease-in}80%{-o-transform:perspective(400px) rotateY(360deg) scale(.95);-o-animation-timing-function:ease-in}100%{-o-transform:perspective(400px) scale(1);-o-animation-timing-function:ease-in}}@keyframes flip{0%{transform:perspective(400px) rotateY(0);animation-timing-function:ease-out}40%{transform:perspective(400px) translateZ(150px) rotateY(170deg);animation-timing-function:ease-out}50%{transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);animation-timing-function:ease-in}80%{transform:perspective(400px) rotateY(360deg) scale(.95);animation-timing-function:ease-in}100%{transform:perspective(400px) scale(1);animation-timing-function:ease-in}}.flip{-webkit-backface-visibility:visible!important;-webkit-animation-name:flip;-moz-backface-visibility:visible!important;-moz-animation-name:flip;-o-backface-visibility:visible!important;-o-animation-name:flip;backface-visibility:visible!important;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);opacity:1}}@-moz-keyframes flipInX{0%{-moz-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-moz-transform:perspective(400px) rotateX(-10deg)}70%{-moz-transform:perspective(400px) rotateX(10deg)}100%{-moz-transform:perspective(400px) rotateX(0deg);opacity:1}}@-o-keyframes flipInX{0%{-o-transform:perspective(400px) rotateX(90deg);opacity:0}40%{-o-transform:perspective(400px) rotateX(-10deg)}70%{-o-transform:perspective(400px) rotateX(10deg)}100%{-o-transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);opacity:0}40%{transform:perspective(400px) rotateX(-10deg)}70%{transform:perspective(400px) rotateX(10deg)}100%{transform:perspective(400px) rotateX(0deg);opacity:1}}.flipInX{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipInX;-moz-backface-visibility:visible!important;-moz-animation-name:flipInX;-o-backface-visibility:visible!important;-o-animation-name:flipInX;backface-visibility:visible!important;animation-name:flipInX}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);opacity:0}}@-moz-keyframes flipOutX{0%{-moz-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-moz-transform:perspective(400px) rotateX(90deg);opacity:0}}@-o-keyframes flipOutX{0%{-o-transform:perspective(400px) rotateX(0deg);opacity:1}100%{-o-transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{transform:perspective(400px) rotateX(0deg);opacity:1}100%{transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-name:flipOutX;-webkit-backface-visibility:visible!important;-moz-animation-name:flipOutX;-moz-backface-visibility:visible!important;-o-animation-name:flipOutX;-o-backface-visibility:visible!important;animation-name:flipOutX;backface-visibility:visible!important}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);opacity:1}}@-moz-keyframes flipInY{0%{-moz-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-moz-transform:perspective(400px) rotateY(-10deg)}70%{-moz-transform:perspective(400px) rotateY(10deg)}100%{-moz-transform:perspective(400px) rotateY(0deg);opacity:1}}@-o-keyframes flipInY{0%{-o-transform:perspective(400px) rotateY(90deg);opacity:0}40%{-o-transform:perspective(400px) rotateY(-10deg)}70%{-o-transform:perspective(400px) rotateY(10deg)}100%{-o-transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes flipInY{0%{transform:perspective(400px) rotateY(90deg);opacity:0}40%{transform:perspective(400px) rotateY(-10deg)}70%{transform:perspective(400px) rotateY(10deg)}100%{transform:perspective(400px) rotateY(0deg);opacity:1}}.flipInY{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipInY;-moz-backface-visibility:visible!important;-moz-animation-name:flipInY;-o-backface-visibility:visible!important;-o-animation-name:flipInY;backface-visibility:visible!important;animation-name:flipInY}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);opacity:0}}@-moz-keyframes flipOutY{0%{-moz-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-moz-transform:perspective(400px) rotateY(90deg);opacity:0}}@-o-keyframes flipOutY{0%{-o-transform:perspective(400px) rotateY(0deg);opacity:1}100%{-o-transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{transform:perspective(400px) rotateY(0deg);opacity:1}100%{transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;-webkit-animation-name:flipOutY;-moz-backface-visibility:visible!important;-moz-animation-name:flipOutY;-o-backface-visibility:visible!important;-o-animation-name:flipOutY;backface-visibility:visible!important;animation-name:flipOutY}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;-moz-animation-name:fadeIn;-o-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInUp{0%{opacity:0;-moz-transform:translateY(20px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInUp{0%{opacity:0;-o-transform:translateY(20px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;-moz-animation-name:fadeInUp;-o-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInDown{0%{opacity:0;-moz-transform:translateY(-20px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInDown{0%{opacity:0;-o-transform:translateY(-20px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;-moz-animation-name:fadeInDown;-o-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInLeft{0%{opacity:0;-moz-transform:translateX(-20px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInLeft{0%{opacity:0;-o-transform:translateX(-20px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-20px)}100%{opacity:1;transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;-moz-animation-name:fadeInLeft;-o-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInRight{0%{opacity:0;-moz-transform:translateX(20px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInRight{0%{opacity:0;-o-transform:translateX(20px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(20px)}100%{opacity:1;transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;-moz-animation-name:fadeInRight;-o-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInUpBig{0%{opacity:0;-moz-transform:translateY(2000px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInUpBig{0%{opacity:0;-o-transform:translateY(2000px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;transform:translateY(2000px)}100%{opacity:1;transform:translateY(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;-moz-animation-name:fadeInUpBig;-o-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInDownBig{0%{opacity:0;-moz-transform:translateY(-2000px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInDownBig{0%{opacity:0;-o-transform:translateY(-2000px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;transform:translateY(-2000px)}100%{opacity:1;transform:translateY(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;-moz-animation-name:fadeInDownBig;-o-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInLeftBig{0%{opacity:0;-moz-transform:translateX(-2000px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInLeftBig{0%{opacity:0;-o-transform:translateX(-2000px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInLeftBig{0%{opacity:0;transform:translateX(-2000px)}100%{opacity:1;transform:translateX(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;-moz-animation-name:fadeInLeftBig;-o-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes fadeInRightBig{0%{opacity:0;-moz-transform:translateX(2000px)}100%{opacity:1;-moz-transform:translateX(0)}}@-o-keyframes fadeInRightBig{0%{opacity:0;-o-transform:translateX(2000px)}100%{opacity:1;-o-transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;transform:translateX(2000px)}100%{opacity:1;transform:translateX(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;-moz-animation-name:fadeInRightBig;-o-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-o-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;-moz-animation-name:fadeOut;-o-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px)}}@-moz-keyframes fadeOutUp{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(-20px)}}@-o-keyframes fadeOutUp{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(-20px)}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-20px)}}.fadeOutUp{-webkit-animation-name:fadeOutUp;-moz-animation-name:fadeOutUp;-o-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px)}}@-moz-keyframes fadeOutDown{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(20px)}}@-o-keyframes fadeOutDown{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(20px)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(20px)}}.fadeOutDown{-webkit-animation-name:fadeOutDown;-moz-animation-name:fadeOutDown;-o-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px)}}@-moz-keyframes fadeOutLeft{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(-20px)}}@-o-keyframes fadeOutLeft{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(-20px)}}@keyframes fadeOutLeft{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-20px)}}.fadeOutLeft{-webkit-animation-name:fadeOutLeft;-moz-animation-name:fadeOutLeft;-o-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px)}}@-moz-keyframes fadeOutRight{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(20px)}}@-o-keyframes fadeOutRight{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(20px)}}@keyframes fadeOutRight{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(20px)}}.fadeOutRight{-webkit-animation-name:fadeOutRight;-moz-animation-name:fadeOutRight;-o-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px)}}@-moz-keyframes fadeOutUpBig{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(-2000px)}}@-o-keyframes fadeOutUpBig{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(-2000px)}}@keyframes fadeOutUpBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-2000px)}}.fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;-moz-animation-name:fadeOutUpBig;-o-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px)}}@-moz-keyframes fadeOutDownBig{0%{opacity:1;-moz-transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(2000px)}}@-o-keyframes fadeOutDownBig{0%{opacity:1;-o-transform:translateY(0)}100%{opacity:0;-o-transform:translateY(2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(2000px)}}.fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;-moz-animation-name:fadeOutDownBig;-o-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px)}}@-moz-keyframes fadeOutLeftBig{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(-2000px)}}@-o-keyframes fadeOutLeftBig{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(-2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-2000px)}}.fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;-moz-animation-name:fadeOutLeftBig;-o-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px)}}@-moz-keyframes fadeOutRightBig{0%{opacity:1;-moz-transform:translateX(0)}100%{opacity:0;-moz-transform:translateX(2000px)}}@-o-keyframes fadeOutRightBig{0%{opacity:1;-o-transform:translateX(0)}100%{opacity:0;-o-transform:translateX(2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(2000px)}}.fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;-moz-animation-name:fadeOutRightBig;-o-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05)}70%{-webkit-transform:scale(.9)}100%{-webkit-transform:scale(1)}}@-moz-keyframes bounceIn{0%{opacity:0;-moz-transform:scale(.3)}50%{opacity:1;-moz-transform:scale(1.05)}70%{-moz-transform:scale(.9)}100%{-moz-transform:scale(1)}}@-o-keyframes bounceIn{0%{opacity:0;-o-transform:scale(.3)}50%{opacity:1;-o-transform:scale(1.05)}70%{-o-transform:scale(.9)}100%{-o-transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}100%{transform:scale(1)}}.bounceIn{-webkit-animation-name:bounceIn;-moz-animation-name:bounceIn;-o-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px)}80%{-webkit-transform:translateY(10px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes bounceInUp{0%{opacity:0;-moz-transform:translateY(2000px)}60%{opacity:1;-moz-transform:translateY(-30px)}80%{-moz-transform:translateY(10px)}100%{-moz-transform:translateY(0)}}@-o-keyframes bounceInUp{0%{opacity:0;-o-transform:translateY(2000px)}60%{opacity:1;-o-transform:translateY(-30px)}80%{-o-transform:translateY(10px)}100%{-o-transform:translateY(0)}}@keyframes bounceInUp{0%{opacity:0;transform:translateY(2000px)}60%{opacity:1;transform:translateY(-30px)}80%{transform:translateY(10px)}100%{transform:translateY(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;-moz-animation-name:bounceInUp;-o-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px)}80%{-webkit-transform:translateY(-10px)}100%{-webkit-transform:translateY(0)}}@-moz-keyframes bounceInDown{0%{opacity:0;-moz-transform:translateY(-2000px)}60%{opacity:1;-moz-transform:translateY(30px)}80%{-moz-transform:translateY(-10px)}100%{-moz-transform:translateY(0)}}@-o-keyframes bounceInDown{0%{opacity:0;-o-transform:translateY(-2000px)}60%{opacity:1;-o-transform:translateY(30px)}80%{-o-transform:translateY(-10px)}100%{-o-transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;transform:translateY(-2000px)}60%{opacity:1;transform:translateY(30px)}80%{transform:translateY(-10px)}100%{transform:translateY(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;-moz-animation-name:bounceInDown;-o-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px)}80%{-webkit-transform:translateX(-10px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes bounceInLeft{0%{opacity:0;-moz-transform:translateX(-2000px)}60%{opacity:1;-moz-transform:translateX(30px)}80%{-moz-transform:translateX(-10px)}100%{-moz-transform:translateX(0)}}@-o-keyframes bounceInLeft{0%{opacity:0;-o-transform:translateX(-2000px)}60%{opacity:1;-o-transform:translateX(30px)}80%{-o-transform:translateX(-10px)}100%{-o-transform:translateX(0)}}@keyframes bounceInLeft{0%{opacity:0;transform:translateX(-2000px)}60%{opacity:1;transform:translateX(30px)}80%{transform:translateX(-10px)}100%{transform:translateX(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;-moz-animation-name:bounceInLeft;-o-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px)}80%{-webkit-transform:translateX(10px)}100%{-webkit-transform:translateX(0)}}@-moz-keyframes bounceInRight{0%{opacity:0;-moz-transform:translateX(2000px)}60%{opacity:1;-moz-transform:translateX(-30px)}80%{-moz-transform:translateX(10px)}100%{-moz-transform:translateX(0)}}@-o-keyframes bounceInRight{0%{opacity:0;-o-transform:translateX(2000px)}60%{opacity:1;-o-transform:translateX(-30px)}80%{-o-transform:translateX(10px)}100%{-o-transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;transform:translateX(2000px)}60%{opacity:1;transform:translateX(-30px)}80%{transform:translateX(10px)}100%{transform:translateX(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;-moz-animation-name:bounceInRight;-o-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceOut{0%{-webkit-transform:scale(1)}25%{-webkit-transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3)}}@-moz-keyframes bounceOut{0%{-moz-transform:scale(1)}25%{-moz-transform:scale(.95)}50%{opacity:1;-moz-transform:scale(1.1)}100%{opacity:0;-moz-transform:scale(.3)}}@-o-keyframes bounceOut{0%{-o-transform:scale(1)}25%{-o-transform:scale(.95)}50%{opacity:1;-o-transform:scale(1.1)}100%{opacity:0;-o-transform:scale(.3)}}@keyframes bounceOut{0%{transform:scale(1)}25%{transform:scale(.95)}50%{opacity:1;transform:scale(1.1)}100%{opacity:0;transform:scale(.3)}}.bounceOut{-webkit-animation-name:bounceOut;-moz-animation-name:bounceOut;-o-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutUp{0%{-webkit-transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px)}}@-moz-keyframes bounceOutUp{0%{-moz-transform:translateY(0)}20%{opacity:1;-moz-transform:translateY(20px)}100%{opacity:0;-moz-transform:translateY(-2000px)}}@-o-keyframes bounceOutUp{0%{-o-transform:translateY(0)}20%{opacity:1;-o-transform:translateY(20px)}100%{opacity:0;-o-transform:translateY(-2000px)}}@keyframes bounceOutUp{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(20px)}100%{opacity:0;transform:translateY(-2000px)}}.bounceOutUp{-webkit-animation-name:bounceOutUp;-moz-animation-name:bounceOutUp;-o-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes bounceOutDown{0%{-webkit-transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px)}}@-moz-keyframes bounceOutDown{0%{-moz-transform:translateY(0)}20%{opacity:1;-moz-transform:translateY(-20px)}100%{opacity:0;-moz-transform:translateY(2000px)}}@-o-keyframes bounceOutDown{0%{-o-transform:translateY(0)}20%{opacity:1;-o-transform:translateY(-20px)}100%{opacity:0;-o-transform:translateY(2000px)}}@keyframes bounceOutDown{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(-20px)}100%{opacity:0;transform:translateY(2000px)}}.bounceOutDown{-webkit-animation-name:bounceOutDown;-moz-animation-name:bounceOutDown;-o-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{0%{-webkit-transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px)}}@-moz-keyframes bounceOutLeft{0%{-moz-transform:translateX(0)}20%{opacity:1;-moz-transform:translateX(20px)}100%{opacity:0;-moz-transform:translateX(-2000px)}}@-o-keyframes bounceOutLeft{0%{-o-transform:translateX(0)}20%{opacity:1;-o-transform:translateX(20px)}100%{opacity:0;-o-transform:translateX(-2000px)}}@keyframes bounceOutLeft{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(20px)}100%{opacity:0;transform:translateX(-2000px)}}.bounceOutLeft{-webkit-animation-name:bounceOutLeft;-moz-animation-name:bounceOutLeft;-o-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{0%{-webkit-transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px)}}@-moz-keyframes bounceOutRight{0%{-moz-transform:translateX(0)}20%{opacity:1;-moz-transform:translateX(-20px)}100%{opacity:0;-moz-transform:translateX(2000px)}}@-o-keyframes bounceOutRight{0%{-o-transform:translateX(0)}20%{opacity:1;-o-transform:translateX(-20px)}100%{opacity:0;-o-transform:translateX(2000px)}}@keyframes bounceOutRight{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(-20px)}100%{opacity:0;transform:translateX(2000px)}}.bounceOutRight{-webkit-animation-name:bounceOutRight;-moz-animation-name:bounceOutRight;-o-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes rotateIn{0%{-webkit-transform-origin:center center;-webkit-transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateIn{0%{-moz-transform-origin:center center;-moz-transform:rotate(-200deg);opacity:0}100%{-moz-transform-origin:center center;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateIn{0%{-o-transform-origin:center center;-o-transform:rotate(-200deg);opacity:0}100%{-o-transform-origin:center center;-o-transform:rotate(0);opacity:1}}@keyframes rotateIn{0%{transform-origin:center center;transform:rotate(-200deg);opacity:0}100%{transform-origin:center center;transform:rotate(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;-moz-animation-name:rotateIn;-o-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInUpLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(90deg);opacity:0}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInUpLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(90deg);opacity:0}100%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInUpLeft{0%{transform-origin:left bottom;transform:rotate(90deg);opacity:0}100%{transform-origin:left bottom;transform:rotate(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;-moz-animation-name:rotateInUpLeft;-o-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInDownLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(-90deg);opacity:0}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInDownLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(-90deg);opacity:0}100%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInDownLeft{0%{transform-origin:left bottom;transform:rotate(-90deg);opacity:0}100%{transform-origin:left bottom;transform:rotate(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;-moz-animation-name:rotateInDownLeft;-o-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInUpRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(-90deg);opacity:0}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInUpRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(-90deg);opacity:0}100%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInUpRight{0%{transform-origin:right bottom;transform:rotate(-90deg);opacity:0}100%{transform-origin:right bottom;transform:rotate(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;-moz-animation-name:rotateInUpRight;-o-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}}@-moz-keyframes rotateInDownRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(90deg);opacity:0}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}}@-o-keyframes rotateInDownRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(90deg);opacity:0}100%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}}@keyframes rotateInDownRight{0%{transform-origin:right bottom;transform:rotate(90deg);opacity:0}100%{transform-origin:right bottom;transform:rotate(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;-moz-animation-name:rotateInDownRight;-o-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center center;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;-webkit-transform:rotate(200deg);opacity:0}}@-moz-keyframes rotateOut{0%{-moz-transform-origin:center center;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:center center;-moz-transform:rotate(200deg);opacity:0}}@-o-keyframes rotateOut{0%{-o-transform-origin:center center;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:center center;-o-transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{transform-origin:center center;transform:rotate(0);opacity:1}100%{transform-origin:center center;transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;-moz-animation-name:rotateOut;-o-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(-90deg);opacity:0}}@-moz-keyframes rotateOutUpLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(-90deg);opacity:0}}@-o-keyframes rotateOutUpLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:left bottom;-o-transform:rotate(-90deg);opacity:0}}@keyframes rotateOutUpLeft{0%{transform-origin:left bottom;transform:rotate(0);opacity:1}100%{transform-origin:left bottom;transform:rotate(-90deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;-moz-animation-name:rotateOutUpLeft;-o-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-webkit-transform:rotate(90deg);opacity:0}}@-moz-keyframes rotateOutDownLeft{0%{-moz-transform-origin:left bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:left bottom;-moz-transform:rotate(90deg);opacity:0}}@-o-keyframes rotateOutDownLeft{0%{-o-transform-origin:left bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:left bottom;-o-transform:rotate(90deg);opacity:0}}@keyframes rotateOutDownLeft{0%{transform-origin:left bottom;transform:rotate(0);opacity:1}100%{transform-origin:left bottom;transform:rotate(90deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;-moz-animation-name:rotateOutDownLeft;-o-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(90deg);opacity:0}}@-moz-keyframes rotateOutUpRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(90deg);opacity:0}}@-o-keyframes rotateOutUpRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:right bottom;-o-transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{transform-origin:right bottom;transform:rotate(0);opacity:1}100%{transform-origin:right bottom;transform:rotate(90deg);opacity:0}}.rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;-moz-animation-name:rotateOutUpRight;-o-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-webkit-transform:rotate(-90deg);opacity:0}}@-moz-keyframes rotateOutDownRight{0%{-moz-transform-origin:right bottom;-moz-transform:rotate(0);opacity:1}100%{-moz-transform-origin:right bottom;-moz-transform:rotate(-90deg);opacity:0}}@-o-keyframes rotateOutDownRight{0%{-o-transform-origin:right bottom;-o-transform:rotate(0);opacity:1}100%{-o-transform-origin:right bottom;-o-transform:rotate(-90deg);opacity:0}}@keyframes rotateOutDownRight{0%{transform-origin:right bottom;transform:rotate(0);opacity:1}100%{transform-origin:right bottom;transform:rotate(-90deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;-moz-animation-name:rotateOutDownRight;-o-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes hinge{0%{-webkit-transform:rotate(0);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);opacity:1;-webkit-transform-origin:top left;-webkit-animation-timing-function:ease-in-out}100%{-webkit-transform:translateY(700px);opacity:0}}@-moz-keyframes hinge{0%{-moz-transform:rotate(0);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}20%,60%{-moz-transform:rotate(80deg);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}40%{-moz-transform:rotate(60deg);-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}80%{-moz-transform:rotate(60deg) translateY(0);opacity:1;-moz-transform-origin:top left;-moz-animation-timing-function:ease-in-out}100%{-moz-transform:translateY(700px);opacity:0}}@-o-keyframes hinge{0%{-o-transform:rotate(0);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}20%,60%{-o-transform:rotate(80deg);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}40%{-o-transform:rotate(60deg);-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}80%{-o-transform:rotate(60deg) translateY(0);opacity:1;-o-transform-origin:top left;-o-animation-timing-function:ease-in-out}100%{-o-transform:translateY(700px);opacity:0}}@keyframes hinge{0%{transform:rotate(0);transform-origin:top left;animation-timing-function:ease-in-out}20%,60%{transform:rotate(80deg);transform-origin:top left;animation-timing-function:ease-in-out}40%{transform:rotate(60deg);transform-origin:top left;animation-timing-function:ease-in-out}80%{transform:rotate(60deg) translateY(0);opacity:1;transform-origin:top left;animation-timing-function:ease-in-out}100%{transform:translateY(700px);opacity:0}}.hinge{-webkit-animation-name:hinge;-moz-animation-name:hinge;-o-animation-name:hinge;animation-name:hinge}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg)}}@-moz-keyframes rollIn{0%{opacity:0;-moz-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-moz-transform:translateX(0px) rotate(0deg)}}@-o-keyframes rollIn{0%{opacity:0;-o-transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-o-transform:translateX(0px) rotate(0deg)}}@keyframes rollIn{0%{opacity:0;transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;transform:translateX(0px) rotate(0deg)}}.rollIn{-webkit-animation-name:rollIn;-moz-animation-name:rollIn;-o-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg)}}@-moz-keyframes rollOut{0%{opacity:1;-moz-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-moz-transform:translateX(100%) rotate(120deg)}}@-o-keyframes rollOut{0%{opacity:1;-o-transform:translateX(0px) rotate(0deg)}100%{opacity:0;-o-transform:translateX(100%) rotate(120deg)}}@keyframes rollOut{0%{opacity:1;transform:translateX(0px) rotate(0deg)}100%{opacity:0;transform:translateX(100%) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;-moz-animation-name:rollOut;-o-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);opacity:1}}@-moz-keyframes lightSpeedIn{0%{-moz-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-moz-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-moz-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-moz-transform:translateX(0%) skewX(0deg);opacity:1}}@-o-keyframes lightSpeedIn{0%{-o-transform:translateX(100%) skewX(-30deg);opacity:0}60%{-o-transform:translateX(-20%) skewX(30deg);opacity:1}80%{-o-transform:translateX(0%) skewX(-15deg);opacity:1}100%{-o-transform:translateX(0%) skewX(0deg);opacity:1}}@keyframes lightSpeedIn{0%{transform:translateX(100%) skewX(-30deg);opacity:0}60%{transform:translateX(-20%) skewX(30deg);opacity:1}80%{transform:translateX(0%) skewX(-15deg);opacity:1}100%{transform:translateX(0%) skewX(0deg);opacity:1}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;-moz-animation-name:lightSpeedIn;-o-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;-moz-animation-timing-function:ease-out;-o-animation-timing-function:ease-out;animation-timing-function:ease-out}.animated.lightSpeedIn{-webkit-animation-duration:.5s;-moz-animation-duration:.5s;-o-animation-duration:.5s;animation-duration:.5s}@-webkit-keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);opacity:0}}@-moz-keyframes lightSpeedOut{0%{-moz-transform:translateX(0%) skewX(0deg);opacity:1}100%{-moz-transform:translateX(100%) skewX(-30deg);opacity:0}}@-o-keyframes lightSpeedOut{0%{-o-transform:translateX(0%) skewX(0deg);opacity:1}100%{-o-transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes lightSpeedOut{0%{transform:translateX(0%) skewX(0deg);opacity:1}100%{transform:translateX(100%) skewX(-30deg);opacity:0}}.lightSpeedOut{-webkit-animation-name:lightSpeedOut;-moz-animation-name:lightSpeedOut;-o-animation-name:lightSpeedOut;animation-name:lightSpeedOut;-webkit-animation-timing-function:ease-in;-moz-animation-timing-function:ease-in;-o-animation-timing-function:ease-in;animation-timing-function:ease-in}.animated.lightSpeedOut{-webkit-animation-duration:.25s;-moz-animation-duration:.25s;-o-animation-duration:.25s;animation-duration:.25s}@-webkit-keyframes wiggle{0%{-webkit-transform:skewX(9deg)}10%{-webkit-transform:skewX(-8deg)}20%{-webkit-transform:skewX(7deg)}30%{-webkit-transform:skewX(-6deg)}40%{-webkit-transform:skewX(5deg)}50%{-webkit-transform:skewX(-4deg)}60%{-webkit-transform:skewX(3deg)}70%{-webkit-transform:skewX(-2deg)}80%{-webkit-transform:skewX(1deg)}90%{-webkit-transform:skewX(0deg)}100%{-webkit-transform:skewX(0deg)}}@-moz-keyframes wiggle{0%{-moz-transform:skewX(9deg)}10%{-moz-transform:skewX(-8deg)}20%{-moz-transform:skewX(7deg)}30%{-moz-transform:skewX(-6deg)}40%{-moz-transform:skewX(5deg)}50%{-moz-transform:skewX(-4deg)}60%{-moz-transform:skewX(3deg)}70%{-moz-transform:skewX(-2deg)}80%{-moz-transform:skewX(1deg)}90%{-moz-transform:skewX(0deg)}100%{-moz-transform:skewX(0deg)}}@-o-keyframes wiggle{0%{-o-transform:skewX(9deg)}10%{-o-transform:skewX(-8deg)}20%{-o-transform:skewX(7deg)}30%{-o-transform:skewX(-6deg)}40%{-o-transform:skewX(5deg)}50%{-o-transform:skewX(-4deg)}60%{-o-transform:skewX(3deg)}70%{-o-transform:skewX(-2deg)}80%{-o-transform:skewX(1deg)}90%{-o-transform:skewX(0deg)}100%{-o-transform:skewX(0deg)}}@keyframes wiggle{0%{transform:skewX(9deg)}10%{transform:skewX(-8deg)}20%{transform:skewX(7deg)}30%{transform:skewX(-6deg)}40%{transform:skewX(5deg)}50%{transform:skewX(-4deg)}60%{transform:skewX(3deg)}70%{transform:skewX(-2deg)}80%{transform:skewX(1deg)}90%{transform:skewX(0deg)}100%{transform:skewX(0deg)}}.wiggle{-webkit-animation-name:wiggle;-moz-animation-name:wiggle;-o-animation-name:wiggle;animation-name:wiggle;-webkit-animation-timing-function:ease-in;-moz-animation-timing-function:ease-in;-o-animation-timing-function:ease-in;animation-timing-function:ease-in}.animated.wiggle{-webkit-animation-duration:.75s;-moz-animation-duration:.75s;-o-animation-duration:.75s;animation-duration:.75s} \ No newline at end of file diff --git a/app/dash/css/font-awesome.min.css b/app/dash/css/font-awesome.min.css deleted file mode 100644 index 62fa795..0000000 --- a/app/dash/css/font-awesome.min.css +++ /dev/null @@ -1 +0,0 @@ -@font-face{font-family:FontAwesome;src:url(../font/fontawesome-webfont.eot?v=3.2.1);src:url(../font/fontawesome-webfont.eot?#iefix&v=3.2.1) format('embedded-opentype'),url(../font/fontawesome-webfont.woff?v=3.2.1) format('woff'),url(../font/fontawesome-webfont.ttf?v=3.2.1) format('truetype'),url(../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1) format('svg');font-weight:400;font-style:normal}[class^=icon-],[class*=" icon-"]{font-family:FontAwesome;font-weight:400;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em}[class^=icon-]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;speak:none}.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em}a [class^=icon-],a [class*=" icon-"]{display:inline}[class^=icon-].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.1428571428571428em;text-align:right;padding-right:.2857142857142857em}[class^=icon-].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.4285714285714286em}.icons-ul{margin-left:2.142857142857143em;list-style-type:none}.icons-ul>li{position:relative}.icons-ul .icon-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;text-align:center;line-height:inherit}[class^=icon-].hide,[class*=" icon-"].hide{display:none}.icon-muted{color:#eee}.icon-light{color:#fff}.icon-dark{color:#333}.icon-border{border:solid 1px #eee;padding:.2em .25em .15em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.icon-2x{font-size:2em}.icon-2x.icon-border{border-width:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.icon-3x{font-size:3em}.icon-3x.icon-border{border-width:3px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.icon-4x{font-size:4em}.icon-4x.icon-border{border-width:4px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.icon-5x{font-size:5em}.icon-5x.icon-border{border-width:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}.pull-right{float:right}.pull-left{float:left}[class^=icon-].pull-left,[class*=" icon-"].pull-left{margin-right:.3em}[class^=icon-].pull-right,[class*=" icon-"].pull-right{margin-left:.3em}[class^=icon-],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0 0;background-repeat:repeat;margin-top:0}.icon-white,.nav-pills>.active>a>[class^=icon-],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^=icon-],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^=icon-],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^=icon-],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^=icon-],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^=icon-],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none}.btn [class^=icon-].icon-large,.nav [class^=icon-].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em}.btn [class^=icon-].icon-spin,.nav [class^=icon-].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block}.nav-tabs [class^=icon-],.nav-pills [class^=icon-],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^=icon-].icon-large,.nav-pills [class^=icon-].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em}.btn [class^=icon-].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^=icon-].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em}.btn [class^=icon-].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em}.btn.btn-small [class^=icon-].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^=icon-].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em}.btn.btn-large [class^=icon-],.btn.btn-large [class*=" icon-"]{margin-top:0}.btn.btn-large [class^=icon-].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^=icon-].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em}.btn.btn-large [class^=icon-].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em}.btn.btn-large [class^=icon-].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em}.nav-list [class^=icon-],.nav-list [class*=" icon-"]{line-height:inherit}.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%}.icon-stack [class^=icon-],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em}.icon-stack .icon-stack-base{font-size:2em;*line-height:1em}.icon-spin{display:inline-block;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;-webkit-animation:spin 2s infinite linear;animation:spin 2s infinite linear}a .icon-stack,a .icon-spin{display:inline-block;text-decoration:none}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}.icon-rotate-90:before{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1)}.icon-rotate-180:before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2)}.icon-rotate-270:before{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3)}.icon-flip-horizontal:before{-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1)}.icon-flip-vertical:before{-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1)}a .icon-rotate-90:before,a .icon-rotate-180:before,a .icon-rotate-270:before,a .icon-flip-horizontal:before,a .icon-flip-vertical:before{display:inline-block}.icon-glass:before{content:"\f000"}.icon-music:before{content:"\f001"}.icon-search:before{content:"\f002"}.icon-envelope-alt:before{content:"\f003"}.icon-heart:before{content:"\f004"}.icon-star:before{content:"\f005"}.icon-star-empty:before{content:"\f006"}.icon-user:before{content:"\f007"}.icon-film:before{content:"\f008"}.icon-th-large:before{content:"\f009"}.icon-th:before{content:"\f00a"}.icon-th-list:before{content:"\f00b"}.icon-ok:before{content:"\f00c"}.icon-remove:before{content:"\f00d"}.icon-zoom-in:before{content:"\f00e"}.icon-zoom-out:before{content:"\f010"}.icon-power-off:before,.icon-off:before{content:"\f011"}.icon-signal:before{content:"\f012"}.icon-gear:before,.icon-cog:before{content:"\f013"}.icon-trash:before{content:"\f014"}.icon-home:before{content:"\f015"}.icon-file-alt:before{content:"\f016"}.icon-time:before{content:"\f017"}.icon-road:before{content:"\f018"}.icon-download-alt:before{content:"\f019"}.icon-download:before{content:"\f01a"}.icon-upload:before{content:"\f01b"}.icon-inbox:before{content:"\f01c"}.icon-play-circle:before{content:"\f01d"}.icon-rotate-right:before,.icon-repeat:before{content:"\f01e"}.icon-refresh:before{content:"\f021"}.icon-list-alt:before{content:"\f022"}.icon-lock:before{content:"\f023"}.icon-flag:before{content:"\f024"}.icon-headphones:before{content:"\f025"}.icon-volume-off:before{content:"\f026"}.icon-volume-down:before{content:"\f027"}.icon-volume-up:before{content:"\f028"}.icon-qrcode:before{content:"\f029"}.icon-barcode:before{content:"\f02a"}.icon-tag:before{content:"\f02b"}.icon-tags:before{content:"\f02c"}.icon-book:before{content:"\f02d"}.icon-bookmark:before{content:"\f02e"}.icon-print:before{content:"\f02f"}.icon-camera:before{content:"\f030"}.icon-font:before{content:"\f031"}.icon-bold:before{content:"\f032"}.icon-italic:before{content:"\f033"}.icon-text-height:before{content:"\f034"}.icon-text-width:before{content:"\f035"}.icon-align-left:before{content:"\f036"}.icon-align-center:before{content:"\f037"}.icon-align-right:before{content:"\f038"}.icon-align-justify:before{content:"\f039"}.icon-list:before{content:"\f03a"}.icon-indent-left:before{content:"\f03b"}.icon-indent-right:before{content:"\f03c"}.icon-facetime-video:before{content:"\f03d"}.icon-picture:before{content:"\f03e"}.icon-pencil:before{content:"\f040"}.icon-map-marker:before{content:"\f041"}.icon-adjust:before{content:"\f042"}.icon-tint:before{content:"\f043"}.icon-edit:before{content:"\f044"}.icon-share:before{content:"\f045"}.icon-check:before{content:"\f046"}.icon-move:before{content:"\f047"}.icon-step-backward:before{content:"\f048"}.icon-fast-backward:before{content:"\f049"}.icon-backward:before{content:"\f04a"}.icon-play:before{content:"\f04b"}.icon-pause:before{content:"\f04c"}.icon-stop:before{content:"\f04d"}.icon-forward:before{content:"\f04e"}.icon-fast-forward:before{content:"\f050"}.icon-step-forward:before{content:"\f051"}.icon-eject:before{content:"\f052"}.icon-chevron-left:before{content:"\f053"}.icon-chevron-right:before{content:"\f054"}.icon-plus-sign:before{content:"\f055"}.icon-minus-sign:before{content:"\f056"}.icon-remove-sign:before{content:"\f057"}.icon-ok-sign:before{content:"\f058"}.icon-question-sign:before{content:"\f059"}.icon-info-sign:before{content:"\f05a"}.icon-screenshot:before{content:"\f05b"}.icon-remove-circle:before{content:"\f05c"}.icon-ok-circle:before{content:"\f05d"}.icon-ban-circle:before{content:"\f05e"}.icon-arrow-left:before{content:"\f060"}.icon-arrow-right:before{content:"\f061"}.icon-arrow-up:before{content:"\f062"}.icon-arrow-down:before{content:"\f063"}.icon-mail-forward:before,.icon-share-alt:before{content:"\f064"}.icon-resize-full:before{content:"\f065"}.icon-resize-small:before{content:"\f066"}.icon-plus:before{content:"\f067"}.icon-minus:before{content:"\f068"}.icon-asterisk:before{content:"\f069"}.icon-exclamation-sign:before{content:"\f06a"}.icon-gift:before{content:"\f06b"}.icon-leaf:before{content:"\f06c"}.icon-fire:before{content:"\f06d"}.icon-eye-open:before{content:"\f06e"}.icon-eye-close:before{content:"\f070"}.icon-warning-sign:before{content:"\f071"}.icon-plane:before{content:"\f072"}.icon-calendar:before{content:"\f073"}.icon-random:before{content:"\f074"}.icon-comment:before{content:"\f075"}.icon-magnet:before{content:"\f076"}.icon-chevron-up:before{content:"\f077"}.icon-chevron-down:before{content:"\f078"}.icon-retweet:before{content:"\f079"}.icon-shopping-cart:before{content:"\f07a"}.icon-folder-close:before{content:"\f07b"}.icon-folder-open:before{content:"\f07c"}.icon-resize-vertical:before{content:"\f07d"}.icon-resize-horizontal:before{content:"\f07e"}.icon-bar-chart:before{content:"\f080"}.icon-twitter-sign:before{content:"\f081"}.icon-facebook-sign:before{content:"\f082"}.icon-camera-retro:before{content:"\f083"}.icon-key:before{content:"\f084"}.icon-gears:before,.icon-cogs:before{content:"\f085"}.icon-comments:before{content:"\f086"}.icon-thumbs-up-alt:before{content:"\f087"}.icon-thumbs-down-alt:before{content:"\f088"}.icon-star-half:before{content:"\f089"}.icon-heart-empty:before{content:"\f08a"}.icon-signout:before{content:"\f08b"}.icon-linkedin-sign:before{content:"\f08c"}.icon-pushpin:before{content:"\f08d"}.icon-external-link:before{content:"\f08e"}.icon-signin:before{content:"\f090"}.icon-trophy:before{content:"\f091"}.icon-github-sign:before{content:"\f092"}.icon-upload-alt:before{content:"\f093"}.icon-lemon:before{content:"\f094"}.icon-phone:before{content:"\f095"}.icon-unchecked:before,.icon-check-empty:before{content:"\f096"}.icon-bookmark-empty:before{content:"\f097"}.icon-phone-sign:before{content:"\f098"}.icon-twitter:before{content:"\f099"}.icon-facebook:before{content:"\f09a"}.icon-github:before{content:"\f09b"}.icon-unlock:before{content:"\f09c"}.icon-credit-card:before{content:"\f09d"}.icon-rss:before{content:"\f09e"}.icon-hdd:before{content:"\f0a0"}.icon-bullhorn:before{content:"\f0a1"}.icon-bell:before{content:"\f0a2"}.icon-certificate:before{content:"\f0a3"}.icon-hand-right:before{content:"\f0a4"}.icon-hand-left:before{content:"\f0a5"}.icon-hand-up:before{content:"\f0a6"}.icon-hand-down:before{content:"\f0a7"}.icon-circle-arrow-left:before{content:"\f0a8"}.icon-circle-arrow-right:before{content:"\f0a9"}.icon-circle-arrow-up:before{content:"\f0aa"}.icon-circle-arrow-down:before{content:"\f0ab"}.icon-globe:before{content:"\f0ac"}.icon-wrench:before{content:"\f0ad"}.icon-tasks:before{content:"\f0ae"}.icon-filter:before{content:"\f0b0"}.icon-briefcase:before{content:"\f0b1"}.icon-fullscreen:before{content:"\f0b2"}.icon-group:before{content:"\f0c0"}.icon-link:before{content:"\f0c1"}.icon-cloud:before{content:"\f0c2"}.icon-beaker:before{content:"\f0c3"}.icon-cut:before{content:"\f0c4"}.icon-copy:before{content:"\f0c5"}.icon-paperclip:before,.icon-paper-clip:before{content:"\f0c6"}.icon-save:before{content:"\f0c7"}.icon-sign-blank:before{content:"\f0c8"}.icon-reorder:before{content:"\f0c9"}.icon-list-ul:before{content:"\f0ca"}.icon-list-ol:before{content:"\f0cb"}.icon-strikethrough:before{content:"\f0cc"}.icon-underline:before{content:"\f0cd"}.icon-table:before{content:"\f0ce"}.icon-magic:before{content:"\f0d0"}.icon-truck:before{content:"\f0d1"}.icon-pinterest:before{content:"\f0d2"}.icon-pinterest-sign:before{content:"\f0d3"}.icon-google-plus-sign:before{content:"\f0d4"}.icon-google-plus:before{content:"\f0d5"}.icon-money:before{content:"\f0d6"}.icon-caret-down:before{content:"\f0d7"}.icon-caret-up:before{content:"\f0d8"}.icon-caret-left:before{content:"\f0d9"}.icon-caret-right:before{content:"\f0da"}.icon-columns:before{content:"\f0db"}.icon-sort:before{content:"\f0dc"}.icon-sort-down:before{content:"\f0dd"}.icon-sort-up:before{content:"\f0de"}.icon-envelope:before{content:"\f0e0"}.icon-linkedin:before{content:"\f0e1"}.icon-rotate-left:before,.icon-undo:before{content:"\f0e2"}.icon-legal:before{content:"\f0e3"}.icon-dashboard:before{content:"\f0e4"}.icon-comment-alt:before{content:"\f0e5"}.icon-comments-alt:before{content:"\f0e6"}.icon-bolt:before{content:"\f0e7"}.icon-sitemap:before{content:"\f0e8"}.icon-umbrella:before{content:"\f0e9"}.icon-paste:before{content:"\f0ea"}.icon-lightbulb:before{content:"\f0eb"}.icon-exchange:before{content:"\f0ec"}.icon-cloud-download:before{content:"\f0ed"}.icon-cloud-upload:before{content:"\f0ee"}.icon-user-md:before{content:"\f0f0"}.icon-stethoscope:before{content:"\f0f1"}.icon-suitcase:before{content:"\f0f2"}.icon-bell-alt:before{content:"\f0f3"}.icon-coffee:before{content:"\f0f4"}.icon-food:before{content:"\f0f5"}.icon-file-text-alt:before{content:"\f0f6"}.icon-building:before{content:"\f0f7"}.icon-hospital:before{content:"\f0f8"}.icon-ambulance:before{content:"\f0f9"}.icon-medkit:before{content:"\f0fa"}.icon-fighter-jet:before{content:"\f0fb"}.icon-beer:before{content:"\f0fc"}.icon-h-sign:before{content:"\f0fd"}.icon-plus-sign-alt:before{content:"\f0fe"}.icon-double-angle-left:before{content:"\f100"}.icon-double-angle-right:before{content:"\f101"}.icon-double-angle-up:before{content:"\f102"}.icon-double-angle-down:before{content:"\f103"}.icon-angle-left:before{content:"\f104"}.icon-angle-right:before{content:"\f105"}.icon-angle-up:before{content:"\f106"}.icon-angle-down:before{content:"\f107"}.icon-desktop:before{content:"\f108"}.icon-laptop:before{content:"\f109"}.icon-tablet:before{content:"\f10a"}.icon-mobile-phone:before{content:"\f10b"}.icon-circle-blank:before{content:"\f10c"}.icon-quote-left:before{content:"\f10d"}.icon-quote-right:before{content:"\f10e"}.icon-spinner:before{content:"\f110"}.icon-circle:before{content:"\f111"}.icon-mail-reply:before,.icon-reply:before{content:"\f112"}.icon-github-alt:before{content:"\f113"}.icon-folder-close-alt:before{content:"\f114"}.icon-folder-open-alt:before{content:"\f115"}.icon-expand-alt:before{content:"\f116"}.icon-collapse-alt:before{content:"\f117"}.icon-smile:before{content:"\f118"}.icon-frown:before{content:"\f119"}.icon-meh:before{content:"\f11a"}.icon-gamepad:before{content:"\f11b"}.icon-keyboard:before{content:"\f11c"}.icon-flag-alt:before{content:"\f11d"}.icon-flag-checkered:before{content:"\f11e"}.icon-terminal:before{content:"\f120"}.icon-code:before{content:"\f121"}.icon-reply-all:before{content:"\f122"}.icon-mail-reply-all:before{content:"\f122"}.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123"}.icon-location-arrow:before{content:"\f124"}.icon-crop:before{content:"\f125"}.icon-code-fork:before{content:"\f126"}.icon-unlink:before{content:"\f127"}.icon-question:before{content:"\f128"}.icon-info:before{content:"\f129"}.icon-exclamation:before{content:"\f12a"}.icon-superscript:before{content:"\f12b"}.icon-subscript:before{content:"\f12c"}.icon-eraser:before{content:"\f12d"}.icon-puzzle-piece:before{content:"\f12e"}.icon-microphone:before{content:"\f130"}.icon-microphone-off:before{content:"\f131"}.icon-shield:before{content:"\f132"}.icon-calendar-empty:before{content:"\f133"}.icon-fire-extinguisher:before{content:"\f134"}.icon-rocket:before{content:"\f135"}.icon-maxcdn:before{content:"\f136"}.icon-chevron-sign-left:before{content:"\f137"}.icon-chevron-sign-right:before{content:"\f138"}.icon-chevron-sign-up:before{content:"\f139"}.icon-chevron-sign-down:before{content:"\f13a"}.icon-html5:before{content:"\f13b"}.icon-css3:before{content:"\f13c"}.icon-anchor:before{content:"\f13d"}.icon-unlock-alt:before{content:"\f13e"}.icon-bullseye:before{content:"\f140"}.icon-ellipsis-horizontal:before{content:"\f141"}.icon-ellipsis-vertical:before{content:"\f142"}.icon-rss-sign:before{content:"\f143"}.icon-play-sign:before{content:"\f144"}.icon-ticket:before{content:"\f145"}.icon-minus-sign-alt:before{content:"\f146"}.icon-check-minus:before{content:"\f147"}.icon-level-up:before{content:"\f148"}.icon-level-down:before{content:"\f149"}.icon-check-sign:before{content:"\f14a"}.icon-edit-sign:before{content:"\f14b"}.icon-external-link-sign:before{content:"\f14c"}.icon-share-sign:before{content:"\f14d"}.icon-compass:before{content:"\f14e"}.icon-collapse:before{content:"\f150"}.icon-collapse-top:before{content:"\f151"}.icon-expand:before{content:"\f152"}.icon-euro:before,.icon-eur:before{content:"\f153"}.icon-gbp:before{content:"\f154"}.icon-dollar:before,.icon-usd:before{content:"\f155"}.icon-rupee:before,.icon-inr:before{content:"\f156"}.icon-yen:before,.icon-jpy:before{content:"\f157"}.icon-renminbi:before,.icon-cny:before{content:"\f158"}.icon-won:before,.icon-krw:before{content:"\f159"}.icon-bitcoin:before,.icon-btc:before{content:"\f15a"}.icon-file:before{content:"\f15b"}.icon-file-text:before{content:"\f15c"}.icon-sort-by-alphabet:before{content:"\f15d"}.icon-sort-by-alphabet-alt:before{content:"\f15e"}.icon-sort-by-attributes:before{content:"\f160"}.icon-sort-by-attributes-alt:before{content:"\f161"}.icon-sort-by-order:before{content:"\f162"}.icon-sort-by-order-alt:before{content:"\f163"}.icon-thumbs-up:before{content:"\f164"}.icon-thumbs-down:before{content:"\f165"}.icon-youtube-sign:before{content:"\f166"}.icon-youtube:before{content:"\f167"}.icon-xing:before{content:"\f168"}.icon-xing-sign:before{content:"\f169"}.icon-youtube-play:before{content:"\f16a"}.icon-dropbox:before{content:"\f16b"}.icon-stackexchange:before{content:"\f16c"}.icon-instagram:before{content:"\f16d"}.icon-flickr:before{content:"\f16e"}.icon-adn:before{content:"\f170"}.icon-bitbucket:before{content:"\f171"}.icon-bitbucket-sign:before{content:"\f172"}.icon-tumblr:before{content:"\f173"}.icon-tumblr-sign:before{content:"\f174"}.icon-long-arrow-down:before{content:"\f175"}.icon-long-arrow-up:before{content:"\f176"}.icon-long-arrow-left:before{content:"\f177"}.icon-long-arrow-right:before{content:"\f178"}.icon-apple:before{content:"\f179"}.icon-windows:before{content:"\f17a"}.icon-android:before{content:"\f17b"}.icon-linux:before{content:"\f17c"}.icon-dribbble:before{content:"\f17d"}.icon-skype:before{content:"\f17e"}.icon-foursquare:before{content:"\f180"}.icon-trello:before{content:"\f181"}.icon-female:before{content:"\f182"}.icon-male:before{content:"\f183"}.icon-gittip:before{content:"\f184"}.icon-sun:before{content:"\f185"}.icon-moon:before{content:"\f186"}.icon-archive:before{content:"\f187"}.icon-bug:before{content:"\f188"}.icon-vk:before{content:"\f189"}.icon-weibo:before{content:"\f18a"}.icon-renren:before{content:"\f18b"} \ No newline at end of file diff --git a/app/dash/css/normalize.min.css b/app/dash/css/normalize.min.css deleted file mode 100644 index 3f7927b..0000000 --- a/app/dash/css/normalize.min.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v1.0.1 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.75em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:1em 40px}dfn{font-style:italic}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:0}form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0} \ No newline at end of file diff --git a/app/dash/css/spectrum.css b/app/dash/css/spectrum.css deleted file mode 100644 index e474cca..0000000 --- a/app/dash/css/spectrum.css +++ /dev/null @@ -1 +0,0 @@ -.sp-container{position:absolute;top:0;left:0;display:inline-block;*display:inline;*zoom:1;z-index:9999994;overflow:hidden}.sp-container.sp-flat{position:relative}.sp-container,.sp-container *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.sp-top{position:relative;width:100%;display:inline-block}.sp-top-inner{position:absolute;top:0;left:0;bottom:0;right:0}.sp-color{position:absolute;top:0;left:0;bottom:0;right:20%}.sp-hue{position:absolute;top:0;right:0;bottom:0;left:84%;height:100%}.sp-clear-enabled .sp-hue{top:33px;height:77.5%}.sp-fill{padding-top:80%}.sp-sat,.sp-val{position:absolute;top:0;left:0;right:0;bottom:0}.sp-alpha-enabled .sp-top{margin-bottom:18px}.sp-alpha-enabled .sp-alpha{display:block}.sp-alpha-handle{position:absolute;top:-4px;bottom:-4px;width:6px;left:50%;cursor:pointer;border:1px solid #000;background:#fff;opacity:.8}.sp-alpha{display:none;position:absolute;bottom:-14px;right:0;left:0;height:8px}.sp-alpha-inner{border:solid 1px #333}.sp-clear{display:none}.sp-clear.sp-clear-display{background-position:center}.sp-clear-enabled .sp-clear{display:block;position:absolute;top:0;right:0;bottom:0;left:84%;height:28px}.sp-container,.sp-replacer,.sp-preview,.sp-dragger,.sp-slider,.sp-alpha,.sp-clear,.sp-alpha-handle,.sp-container.sp-dragging .sp-input,.sp-container button{-webkit-user-select:none;-moz-user-select:-moz-none;-o-user-select:none;user-select:none}.sp-container.sp-input-disabled .sp-input-container{display:none}.sp-container.sp-buttons-disabled .sp-button-container{display:none}.sp-palette-only .sp-picker-container{display:none}.sp-palette-disabled .sp-palette-container{display:none}.sp-initial-disabled .sp-initial{display:none}.sp-sat{background-image:-webkit-gradient(linear,0 0,100% 0,from(#FFF),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(left,#FFF,rgba(204,154,129,0));background-image:-moz-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-o-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:-ms-linear-gradient(left,#fff,rgba(204,154,129,0));background-image:linear-gradient(to right,#fff,rgba(204,154,129,0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";filter:progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81')}.sp-val{background-image:-webkit-gradient(linear,0 100%,0 0,from(#000),to(rgba(204,154,129,0)));background-image:-webkit-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-moz-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-o-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:-ms-linear-gradient(bottom,#000,rgba(204,154,129,0));background-image:linear-gradient(to top,#000,rgba(204,154,129,0));-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000')}.sp-hue{background:-moz-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-ms-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-o-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);background:-webkit-gradient(linear,left top,left bottom,from(red),color-stop(0.17,#ff0),color-stop(0.33,#0f0),color-stop(0.5,#0ff),color-stop(0.67,#00f),color-stop(0.83,#f0f),to(red));background:-webkit-linear-gradient(top,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.sp-1{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00')}.sp-2{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00')}.sp-3{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff')}.sp-4{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff')}.sp-5{height:16%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff')}.sp-6{height:17%;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000')}.sp-hidden{display:none!important}.sp-cf:before,.sp-cf:after{content:"";display:table}.sp-cf:after{clear:both}.sp-cf{*zoom:1}@media (max-device-width:480px){.sp-color{right:40%}.sp-hue{left:63%}.sp-fill{padding-top:60%}}.sp-dragger{border-radius:5px;height:5px;width:5px;border:1px solid #fff;background:#000;cursor:pointer;position:absolute;top:0;left:0}.sp-slider{position:absolute;top:0;cursor:pointer;height:3px;left:-1px;right:-1px;border:1px solid #000;background:#fff;opacity:.8}.sp-container{border-radius:0;background-color:#ECECEC;border:solid 1px #f0c49B;padding:0}.sp-container,.sp-container button,.sp-container input,.sp-color,.sp-hue,.sp-clear{font:400 12px "Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Verdana,sans-serif;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.sp-top{margin-bottom:3px}.sp-color,.sp-hue,.sp-clear{border:solid 1px #666}.sp-input-container{float:right;width:100px;margin-bottom:4px}.sp-initial-disabled .sp-input-container{width:100%}.sp-input{font-size:12px!important;border:1px inset;padding:4px 5px;margin:0;width:100%;background:transparent;border-radius:3px;color:#222}.sp-input:focus{border:1px solid orange}.sp-input.sp-validation-error{border:1px solid red;background:#fdd}.sp-picker-container,.sp-palette-container{float:left;position:relative;padding:10px;padding-bottom:300px;margin-bottom:-290px}.sp-picker-container{width:172px;border-left:solid 1px #fff}.sp-palette-container{border-right:solid 1px #ccc}.sp-palette .sp-thumb-el{display:block;position:relative;float:left;width:24px;height:15px;margin:3px;cursor:pointer;border:solid 2px transparent}.sp-palette .sp-thumb-el:hover,.sp-palette .sp-thumb-el.sp-thumb-active{border-color:orange}.sp-thumb-el{position:relative}.sp-initial{float:left;border:solid 1px #333}.sp-initial span{width:30px;height:25px;border:0;display:block;float:left;margin:0}.sp-initial .sp-clear-display{background-position:center}.sp-button-container{float:right}.sp-replacer{margin:0;overflow:hidden;cursor:pointer;padding:4px;display:inline-block;*zoom:1;*display:inline;border:solid 1px #91765d;background:#eee;color:#333;vertical-align:middle}.sp-replacer:hover,.sp-replacer.sp-active{border-color:#F0C49B;color:#111}.sp-replacer.sp-disabled{cursor:default;border-color:silver;color:silver}.sp-dd{padding:2px 0;height:16px;line-height:16px;float:left;font-size:10px}.sp-preview{position:relative;width:25px;height:20px;border:solid 1px #222;margin-right:5px;float:left;z-index:0}.sp-palette{*width:220px;max-width:220px}.sp-palette .sp-thumb-el{width:16px;height:16px;margin:2px 1px;border:solid 1px #d0d0d0}.sp-container{padding-bottom:0}.sp-container button{background-color:#eee;background-image:-webkit-linear-gradient(top,#eee,#ccc);background-image:-moz-linear-gradient(top,#eee,#ccc);background-image:-ms-linear-gradient(top,#eee,#ccc);background-image:-o-linear-gradient(top,#eee,#ccc);background-image:linear-gradient(to bottom,#eee,#ccc);border:1px solid #ccc;border-bottom:1px solid #bbb;border-radius:3px;color:#333;font-size:14px;line-height:1;padding:5px 4px;text-align:center;text-shadow:0 1px 0 #eee;vertical-align:middle}.sp-container button:hover{background-color:#ddd;background-image:-webkit-linear-gradient(top,#ddd,#bbb);background-image:-moz-linear-gradient(top,#ddd,#bbb);background-image:-ms-linear-gradient(top,#ddd,#bbb);background-image:-o-linear-gradient(top,#ddd,#bbb);background-image:linear-gradient(to bottom,#ddd,#bbb);border:1px solid #bbb;border-bottom:1px solid #999;cursor:pointer;text-shadow:0 1px 0 #ddd}.sp-container button:active{border:1px solid #aaa;border-bottom:1px solid #888;-webkit-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-moz-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-ms-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;-o-box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee;box-shadow:inset 0 0 5px 2px #aaa,0 1px 0 0 #eee}.sp-cancel{font-size:11px;color:#d93f3f!important;margin:0;padding:2px;margin-right:5px;vertical-align:middle;text-decoration:none}.sp-cancel:hover{color:#d93f3f!important;text-decoration:underline}.sp-palette span:hover,.sp-palette span.sp-thumb-active{border-color:#000}.sp-preview,.sp-alpha,.sp-thumb-el{position:relative;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.sp-preview-inner,.sp-alpha-inner,.sp-thumb-inner{display:block;position:absolute;top:0;left:0;bottom:0;right:0}.sp-palette .sp-thumb-inner{background-position:50% 50%;background-repeat:no-repeat}.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=)}.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=)}.sp-clear-display{background-repeat:no-repeat;background-position:center;background-image:url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==)} \ No newline at end of file diff --git a/app/dash/css/timepicker.css b/app/dash/css/timepicker.css deleted file mode 100644 index f26c700..0000000 --- a/app/dash/css/timepicker.css +++ /dev/null @@ -1,18 +0,0 @@ -/*! - * Datepicker for Bootstrap - * - * Copyright 2012 Stefan Petre - * Improvements by Andrew Rowls - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - */.datepicker{padding:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker.datepicker-rtl{direction:rtl}.datepicker.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:6px}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:7px}.datepicker>div{display:none}.datepicker.days div.datepicker-days{display:block}.datepicker.months div.datepicker-months{display:block}.datepicker.years div.datepicker-years{display:block}.datepicker table{margin:0}.datepicker td,.datepicker th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border:0}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day:hover{background:#eee;cursor:pointer}.datepicker table tr td.old,.datepicker table tr td.new{color:#999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td.today,.datepicker table tr td.today:hover,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover{background-color:#fde19a;background-image:-moz-linear-gradient(top,#fdd49a,#fdf59a);background-image:-ms-linear-gradient(top,#fdd49a,#fdf59a);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fdd49a),to(#fdf59a));background-image:-webkit-linear-gradient(top,#fdd49a,#fdf59a);background-image:-o-linear-gradient(top,#fdd49a,#fdf59a);background-image:linear-gradient(top,#fdd49a,#fdf59a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);border-color:#fdf59a #fdf59a #fbed50;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#000!important}.datepicker table tr td.today:hover,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today[disabled],.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today.disabled:hover[disabled]{background-color:#fdf59a}.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active{background-color:#fbf069 \9}.datepicker table tr td.active,.datepicker table tr td.active:hover,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-ms-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(top,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active:hover,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active[disabled],.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active.disabled:hover[disabled]{background-color:#04c}.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active{background-color:#039 \9}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-ms-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(top,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active[disabled],.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active.disabled:hover[disabled]{background-color:#04c}.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active{background-color:#039 \9}.datepicker table tr td span.old{color:#999}.datepicker th.switch{width:145px}.datepicker thead tr:first-child th,.datepicker tfoot tr:first-child th{cursor:pointer}.datepicker thead tr:first-child th:hover,.datepicker tfoot tr:first-child th:hover{background:#eee}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.datepicker thead tr:first-child th.cw{cursor:default;background-color:transparent}.input-append.date .add-on i,.input-prepend.date .add-on i{display:block;cursor:pointer;width:16px;height:16px}/*! - * Timepicker Component for Twitter Bootstrap - * - * Copyright 2013 Joris de Wit - * - * Contributors https://github.com/jdewit/bootstrap-timepicker/graphs/contributors - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */.bootstrap-timepicker{position:relative}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu{left:auto;right:0}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before{left:auto;right:12px}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after{left:auto;right:13px}.bootstrap-timepicker .add-on{cursor:pointer}.bootstrap-timepicker .add-on i{display:inline-block;width:16px;height:16px}.bootstrap-timepicker-widget.dropdown-menu{padding:2px 3px 2px 2px}.bootstrap-timepicker-widget.dropdown-menu.open{display:inline-block}.bootstrap-timepicker-widget.dropdown-menu:before{border-bottom:7px solid rgba(0,0,0,.2);border-left:7px solid transparent;border-right:7px solid transparent;content:"";display:inline-block;left:9px;position:absolute;top:-7px}.bootstrap-timepicker-widget.dropdown-menu:after{border-bottom:6px solid #FFF;border-left:6px solid transparent;border-right:6px solid transparent;content:"";display:inline-block;left:10px;position:absolute;top:-6px}.bootstrap-timepicker-widget a.btn,.bootstrap-timepicker-widget input{border-radius:4px}.bootstrap-timepicker-widget table{width:100%;margin:0}.bootstrap-timepicker-widget table td{text-align:center;height:30px;margin:0;padding:2px}.bootstrap-timepicker-widget table td:not(.separator){min-width:30px}.bootstrap-timepicker-widget table td span{width:100%}.bootstrap-timepicker-widget table td a{border:1px transparent solid;width:100%;display:inline-block;margin:0;padding:8px 0;outline:0;color:#333}.bootstrap-timepicker-widget table td a:hover{text-decoration:none;background-color:#eee;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border-color:#ddd}.bootstrap-timepicker-widget table td a i{margin-top:2px}.bootstrap-timepicker-widget table td input{width:25px;margin:0;text-align:center}.bootstrap-timepicker-widget .modal-content{padding:4px}@media (min-width:767px){.bootstrap-timepicker-widget.modal{width:200px;margin-left:-100px}}@media (max-width:767px){.bootstrap-timepicker{width:100%}.bootstrap-timepicker .dropdown-menu{width:100%}} \ No newline at end of file diff --git a/app/dash/font/FontAwesome.otf b/app/dash/font/FontAwesome.otf deleted file mode 100644 index 7012545..0000000 Binary files a/app/dash/font/FontAwesome.otf and /dev/null differ diff --git a/app/dash/font/fontawesome-webfont.eot b/app/dash/font/fontawesome-webfont.eot deleted file mode 100644 index 0662cb9..0000000 Binary files a/app/dash/font/fontawesome-webfont.eot and /dev/null differ diff --git a/app/dash/font/fontawesome-webfont.svg b/app/dash/font/fontawesome-webfont.svg deleted file mode 100644 index 2edb4ec..0000000 --- a/app/dash/font/fontawesome-webfont.svg +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/dash/font/fontawesome-webfont.ttf b/app/dash/font/fontawesome-webfont.ttf deleted file mode 100644 index d365924..0000000 Binary files a/app/dash/font/fontawesome-webfont.ttf and /dev/null differ diff --git a/app/dash/font/fontawesome-webfont.woff b/app/dash/font/fontawesome-webfont.woff deleted file mode 100644 index b9bd17e..0000000 Binary files a/app/dash/font/fontawesome-webfont.woff and /dev/null differ diff --git a/app/dash/img/cubes.png b/app/dash/img/cubes.png deleted file mode 100644 index 30712ea..0000000 Binary files a/app/dash/img/cubes.png and /dev/null differ diff --git a/app/dash/img/glyphicons-halflings-white.png b/app/dash/img/glyphicons-halflings-white.png deleted file mode 100644 index 3bf6484..0000000 Binary files a/app/dash/img/glyphicons-halflings-white.png and /dev/null differ diff --git a/app/dash/img/glyphicons-halflings.png b/app/dash/img/glyphicons-halflings.png deleted file mode 100644 index a996999..0000000 Binary files a/app/dash/img/glyphicons-halflings.png and /dev/null differ diff --git a/app/dash/img/kibana.png b/app/dash/img/kibana.png deleted file mode 100644 index 17b719e..0000000 Binary files a/app/dash/img/kibana.png and /dev/null differ diff --git a/app/dash/img/light.png b/app/dash/img/light.png deleted file mode 100644 index cc65dba..0000000 Binary files a/app/dash/img/light.png and /dev/null differ diff --git a/app/dash/img/load.gif b/app/dash/img/load.gif deleted file mode 100644 index d636d04..0000000 Binary files a/app/dash/img/load.gif and /dev/null differ diff --git a/app/dash/img/load_big.gif b/app/dash/img/load_big.gif deleted file mode 100644 index e6daac3..0000000 Binary files a/app/dash/img/load_big.gif and /dev/null differ diff --git a/app/dash/img/small.png b/app/dash/img/small.png deleted file mode 100644 index f43d30e..0000000 Binary files a/app/dash/img/small.png and /dev/null differ diff --git a/app/dash/index.html b/app/dash/index.html deleted file mode 100644 index 7208962..0000000 --- a/app/dash/index.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - Compass Metrics - - - - - - - - - - - - - - - -
    - - {{alert.title}}
    {{$index + 1}} alert(s)
    -
    - - -
    - - - diff --git a/app/dash/test/karma.conf.js b/app/dash/test/karma.conf.js deleted file mode 100644 index 08a3248..0000000 --- a/app/dash/test/karma.conf.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -module.exports=function(a){a.set({basePath:"../",frameworks:["mocha","requirejs","expect"],files:["test/test-main.js",{pattern:"app/**/*.js",included:!1},{pattern:"vendor/**/*.js",included:!1},{pattern:"test/**/*.js",included:!1},{pattern:"**/*.js",included:!1}],exclude:[],reporters:["progress"],port:9876,colors:!0,logLevel:a.LOG_INFO,autoWatch:!0,browsers:["Chrome"],captureTimeout:6e4,singleRun:!1})}; \ No newline at end of file diff --git a/app/dash/test/mocks/dashboard-mock.js b/app/dash/test/mocks/dashboard-mock.js deleted file mode 100644 index 3093f7c..0000000 --- a/app/dash/test/mocks/dashboard-mock.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define([],function(){return{create:function(){return{refresh:function(){},set_interval:function(a){this.current.refresh=a},current:{title:"",tags:[],style:"dark",timezone:"browser",editable:!0,failover:!1,panel_hints:!0,rows:[],pulldowns:[{type:"templating"},{type:"annotations"}],nav:[{type:"timepicker"}],services:{},loader:{save_gist:!1,save_elasticsearch:!0,save_local:!0,save_default:!0,save_temp:!0,save_temp_ttl_enable:!0,save_temp_ttl:"30d",load_gist:!1,load_elasticsearch:!0,load_elasticsearch_size:20,load_local:!1,hide:!1},refresh:!0}}}}}); \ No newline at end of file diff --git a/app/dash/test/specs/filterSrv-specs.js b/app/dash/test/specs/filterSrv-specs.js deleted file mode 100644 index d3f3dd5..0000000 --- a/app/dash/test/specs/filterSrv-specs.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define(["mocks/dashboard-mock","underscore","services/filterSrv"],function(a,b){describe("filterSrv",function(){var c,d;beforeEach(module("kibana.services")),beforeEach(module(function(b){d=a.create(),b.value("dashboard",d)})),beforeEach(inject(function(a){c=a})),beforeEach(function(){c.init(d.current)}),describe("init",function(){beforeEach(function(){c.addTemplateParameter({name:"test",current:{value:"oogle"}})}),it("should initialize template data",function(){var a=c.applyTemplateToTarget("this.[[test]].filters");expect(a).to.be("this.oogle.filters")})}),describe("updateTemplateData",function(){beforeEach(function(){c.addTemplateParameter({name:"test",value:"muuu",current:{value:"muuuu"}}),c.updateTemplateData()}),it("should set current value and update template data",function(){var a=c.applyTemplateToTarget("this.[[test]].filters");expect(a).to.be("this.muuuu.filters")})}),describe("timeRange",function(){it("should return unparsed when parse is false",function(){c.setTime({from:"now",to:"now-1h"});var a=c.timeRange(!1);expect(a.from).to.be("now"),expect(a.to).to.be("now-1h")}),it("should return parsed when parse is true",function(){c.setTime({from:"now",to:"now-1h"});var a=c.timeRange(!0);expect(b.isDate(a.from)).to.be(!0),expect(b.isDate(a.to)).to.be(!0)})}),describe("setTime",function(){it("should return disable refresh for absolute times",function(){d.current.refresh=!0,c.setTime({from:"2011-01-01",to:"2015-01-01"}),expect(d.current.refresh).to.be(!1)}),it("should restore refresh after relative time range is set",function(){d.current.refresh=!0,c.setTime({from:"2011-01-01",to:"2015-01-01"}),expect(d.current.refresh).to.be(!1),c.setTime({from:"2011-01-01",to:"now"}),expect(d.current.refresh).to.be(!0)})})})}); \ No newline at end of file diff --git a/app/dash/test/specs/gfunc-specs.js b/app/dash/test/specs/gfunc-specs.js deleted file mode 100644 index 4ea2b1a..0000000 --- a/app/dash/test/specs/gfunc-specs.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define(["services/graphite/gfunc"],function(a){describe("when creating func instance from func names",function(){it("should return func instance",function(){var b=a.createFuncInstance("sumSeries");expect(b).to.be.ok(),expect(b.def.name).to.equal("sumSeries"),expect(b.def.params.length).to.equal(0),expect(b.def.defaultParams.length).to.equal(0),expect(b.def.defaultParams.length).to.equal(0)}),it("should return func instance with shortName",function(){var b=a.createFuncInstance("sum");expect(b).to.be.ok()}),it("should return func instance from funcDef",function(){var b=a.createFuncInstance("sum"),c=a.createFuncInstance(b.def);expect(c).to.be.ok()}),it("func instance should have text representation",function(){var b=a.createFuncInstance("groupByNode");b.params[0]=5,b.params[1]="avg",b.updateText(),expect(b.text).to.equal("groupByNode(5, avg)")})}),describe("when rendering func instance",function(){it("should handle single metric param",function(){var b=a.createFuncInstance("sumSeries");expect(b.render("hello.metric")).to.equal("sumSeries(hello.metric)")}),it("should handle metric param and int param and string param",function(){var b=a.createFuncInstance("groupByNode");b.params[0]=5,b.params[1]="avg",expect(b.render("hello.metric")).to.equal("groupByNode(hello.metric,5,'avg')")}),it("should handle function with no metric param",function(){var b=a.createFuncInstance("randomWalk");b.params[0]="test",expect(b.render(void 0)).to.equal("randomWalk('test')")})}),describe("when requesting function categories",function(){it("should return function categories",function(){var b=a.getCategories();expect(b.Special.length).to.be.greaterThan(8)})}),describe("when updating func param",function(){it("should update param value and update text representation",function(){var b=a.createFuncInstance("summarize");b.updateParam("1h",0),expect(b.params[0]).to.be("1h"),expect(b.text).to.be("summarize(1h, sum)")}),it("should parse numbers as float",function(){var b=a.createFuncInstance("scale");b.updateParam("0.001",0),expect(b.params[0]).to.be(.001)})}),describe("when updating func param with optional second parameter",function(){it("should update value and text",function(){var b=a.createFuncInstance("aliasByNode");b.updateParam("1",0),expect(b.params[0]).to.be(1)}),it("should slit text and put value in second param",function(){var b=a.createFuncInstance("aliasByNode");b.updateParam("4,-5",0),expect(b.params[0]).to.be(4),expect(b.params[1]).to.be(-5),expect(b.text).to.be("aliasByNode(4, -5)")}),it("should remove second param when empty string is set",function(){var b=a.createFuncInstance("aliasByNode");b.updateParam("4,-5",0),b.updateParam("",1),expect(b.params[0]).to.be(4),expect(b.params[1]).to.be(void 0),expect(b.text).to.be("aliasByNode(4)")})})}); \ No newline at end of file diff --git a/app/dash/test/specs/graph-panel-controller-specs.js b/app/dash/test/specs/graph-panel-controller-specs.js deleted file mode 100644 index 068ee18..0000000 --- a/app/dash/test/specs/graph-panel-controller-specs.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - diff --git a/app/dash/test/specs/graphiteTargetCtrl-specs.js b/app/dash/test/specs/graphiteTargetCtrl-specs.js deleted file mode 100644 index a912328..0000000 --- a/app/dash/test/specs/graphiteTargetCtrl-specs.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define([],function(){describe("graphiteTargetCtrl",function(){var a;beforeEach(module("kibana.services")),beforeEach(module(function(a){a.value("filterSrv",{})})),beforeEach(inject(function(b,c){a=b({$scope:c.$new()})})),describe("init",function(){beforeEach(function(){})})})}); \ No newline at end of file diff --git a/app/dash/test/specs/kbn-format-specs.js b/app/dash/test/specs/kbn-format-specs.js deleted file mode 100644 index 753b206..0000000 --- a/app/dash/test/specs/kbn-format-specs.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define(["kbn"],function(a){describe("millisecond formating",function(){it("should translate 4378634603 as 1.67 years",function(){var b=a.msFormat(4378634603,2);expect(b).to.be("50.68 day")}),it("should translate 3654454 as 1.02 hour",function(){var b=a.msFormat(3654454,2);expect(b).to.be("1.02 hour")}),it("should translate 365445 as 6.09 min",function(){var b=a.msFormat(365445,2);expect(b).to.be("6.09 min")})}),describe("nanosecond formatting",function(){it("should translate 25 to 25 ns",function(){var b=a.nanosFormat(25,2);expect(b).to.be("25 ns")}),it("should translate 2558 to 2.56 µs",function(){var b=a.nanosFormat(2558,2);expect(b).to.be("2.56 µs")}),it("should translate 2558000 to 2.56 ms",function(){var b=a.nanosFormat(2558e3,2);expect(b).to.be("2.56 ms")}),it("should translate 2019962000 to 2.02 s",function(){var b=a.nanosFormat(2049962e3,2);expect(b).to.be("2.05 s")}),it("should translate 95199620000 to 1.59 m",function(){var b=a.nanosFormat(9519962e4,2);expect(b).to.be("1.59 m")})})}); \ No newline at end of file diff --git a/app/dash/test/specs/lexer-specs.js b/app/dash/test/specs/lexer-specs.js deleted file mode 100644 index 6d47462..0000000 --- a/app/dash/test/specs/lexer-specs.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define(["services/graphite/lexer"],function(a){describe("when lexing graphite expression",function(){it("should tokenize metric expression",function(){var b=new a("metric.test.*.asd.count"),c=b.tokenize();expect(c[0].value).to.be("metric"),expect(c[1].value).to.be("."),expect(c[2].type).to.be("identifier"),expect(c[4].type).to.be("identifier"),expect(c[4].pos).to.be(13)}),it("should tokenize metric expression with dash",function(){var b=new a("metric.test.se1-server-*.asd.count"),c=b.tokenize();expect(c[4].type).to.be("identifier"),expect(c[4].value).to.be("se1-server-*")}),it("should tokenize metric expression with dash2",function(){var b=new a("net.192-168-1-1.192-168-1-9.ping_value.*"),c=b.tokenize();expect(c[0].value).to.be("net"),expect(c[2].value).to.be("192-168-1-1")}),it("simple function2",function(){var b=new a("offset(test.metric, -100)"),c=b.tokenize();expect(c[2].type).to.be("identifier"),expect(c[4].type).to.be("identifier"),expect(c[6].type).to.be("number")}),it("should tokenize metric expression with curly braces",function(){var b=new a("metric.se1-{first, second}.count"),c=b.tokenize();expect(c.length).to.be(10),expect(c[3].type).to.be("{"),expect(c[4].value).to.be("first"),expect(c[5].value).to.be(","),expect(c[6].value).to.be("second")}),it("should tokenize metric expression with number segments",function(){var b=new a("metric.10.12_10.test"),c=b.tokenize();expect(c[0].type).to.be("identifier"),expect(c[2].type).to.be("identifier"),expect(c[2].value).to.be("10"),expect(c[4].value).to.be("12_10"),expect(c[4].type).to.be("identifier")}),it("should tokenize func call with numbered metric and number arg",function(){var b=new a("scale(metric.10, 15)"),c=b.tokenize();expect(c[0].type).to.be("identifier"),expect(c[2].type).to.be("identifier"),expect(c[2].value).to.be("metric"),expect(c[4].value).to.be("10"),expect(c[4].type).to.be("number"),expect(c[6].type).to.be("number")}),it("should tokenize metric with template parameter",function(){var b=new a("metric.[[server]].test"),c=b.tokenize();expect(c[2].type).to.be("templateStart"),expect(c[3].type).to.be("identifier"),expect(c[3].value).to.be("server"),expect(c[4].type).to.be("templateEnd")}),it("should handle error with unterminated string",function(){var b=new a("alias(metric, 'asd)"),c=b.tokenize();expect(c[0].value).to.be("alias"),expect(c[1].value).to.be("("),expect(c[2].value).to.be("metric"),expect(c[3].value).to.be(","),expect(c[4].type).to.be("string"),expect(c[4].isUnclosed).to.be(!0),expect(c[4].pos).to.be(20)}),it("should handle float parameters",function(){var b=new a("alias(metric, 0.002)"),c=b.tokenize();expect(c[4].type).to.be("number"),expect(c[4].value).to.be("0.002")})})}); \ No newline at end of file diff --git a/app/dash/test/specs/parser-specs.js b/app/dash/test/specs/parser-specs.js deleted file mode 100644 index e152d1b..0000000 --- a/app/dash/test/specs/parser-specs.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define(["services/graphite/parser"],function(a){describe("when parsing",function(){it("simple metric expression",function(){var b=new a("metric.test.*.asd.count"),c=b.getAst();expect(c.type).to.be("metric"),expect(c.segments.length).to.be(5),expect(c.segments[0].value).to.be("metric")}),it("simple metric expression with numbers in segments",function(){var b=new a("metric.10.15_20.5"),c=b.getAst();expect(c.type).to.be("metric"),expect(c.segments.length).to.be(4),expect(c.segments[1].value).to.be("10"),expect(c.segments[2].value).to.be("15_20"),expect(c.segments[3].value).to.be("5")}),it("simple metric expression with curly braces",function(){var b=new a("metric.se1-{count, max}"),c=b.getAst();expect(c.type).to.be("metric"),expect(c.segments.length).to.be(2),expect(c.segments[1].value).to.be("se1-{count,max}")}),it("simple metric expression with curly braces at start of segment and with post chars",function(){var b=new a("metric.{count, max}-something.count"),c=b.getAst();expect(c.type).to.be("metric"),expect(c.segments.length).to.be(3),expect(c.segments[1].value).to.be("{count,max}-something")}),it("simple function",function(){var b=new a("sum(test)"),c=b.getAst();expect(c.type).to.be("function"),expect(c.params.length).to.be(1)}),it("simple function2",function(){var b=new a("offset(test.metric, -100)"),c=b.getAst();expect(c.type).to.be("function"),expect(c.params[0].type).to.be("metric"),expect(c.params[1].type).to.be("number")}),it("simple function with string arg",function(){var b=new a("randomWalk('test')"),c=b.getAst();expect(c.type).to.be("function"),expect(c.params.length).to.be(1),expect(c.params[0].type).to.be("string")}),it("function with multiple args",function(){var b=new a("sum(test, 1, 'test')"),c=b.getAst();expect(c.type).to.be("function"),expect(c.params.length).to.be(3),expect(c.params[0].type).to.be("metric"),expect(c.params[1].type).to.be("number"),expect(c.params[2].type).to.be("string")}),it("function with nested function",function(){var b=new a("sum(scaleToSeconds(test, 1))"),c=b.getAst();expect(c.type).to.be("function"),expect(c.params.length).to.be(1),expect(c.params[0].type).to.be("function"),expect(c.params[0].name).to.be("scaleToSeconds"),expect(c.params[0].params.length).to.be(2),expect(c.params[0].params[0].type).to.be("metric"),expect(c.params[0].params[1].type).to.be("number")}),it("function with multiple series",function(){var b=new a("sum(test.test.*.count, test.timers.*.count)"),c=b.getAst();expect(c.type).to.be("function"),expect(c.params.length).to.be(2),expect(c.params[0].type).to.be("metric"),expect(c.params[1].type).to.be("metric")}),it("function with templated series",function(){var b=new a("sum(test.[[server]].count)"),c=b.getAst();expect(c.message).to.be(void 0),expect(c.params[0].type).to.be("metric"),expect(c.params[0].segments[1].type).to.be("template"),expect(c.params[0].segments[1].value).to.be("server")}),it("invalid metric expression",function(){var b=new a("metric.test.*.asd."),c=b.getAst();expect(c.message).to.be("Expected metric identifier instead found end of string"),expect(c.pos).to.be(19)}),it("invalid function expression missing closing paranthesis",function(){var b=new a("sum(test"),c=b.getAst();expect(c.message).to.be("Expected closing paranthesis instead found end of string"),expect(c.pos).to.be(9)}),it("unclosed string in function",function(){var b=new a("sum('test)"),c=b.getAst();expect(c.message).to.be("Unclosed string parameter"),expect(c.pos).to.be(11)}),it("handle issue #69",function(){var b=new a("cactiStyle(offset(scale(net.192-168-1-1.192-168-1-9.ping_value.*,0.001),-100))"),c=b.getAst();expect(c.type).to.be("function")}),it("handle float function arguments",function(){var b=new a("scale(test, 0.002)"),c=b.getAst();expect(c.type).to.be("function"),expect(c.params[1].type).to.be("number"),expect(c.params[1].value).to.be(.002)})})}); \ No newline at end of file diff --git a/app/dash/test/test-main.js b/app/dash/test/test-main.js deleted file mode 100644 index 99036ba..0000000 --- a/app/dash/test/test-main.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -require.config({baseUrl:"base/app",paths:{specs:"../test/specs",mocks:"../test/mocks",config:"../config.sample",kbn:"components/kbn",settings:"components/settings",underscore:"components/underscore.extended","underscore-src":"../vendor/underscore",moment:"../vendor/moment",chromath:"../vendor/chromath",filesaver:"../vendor/filesaver",angular:"../vendor/angular/angular",angularMocks:"../vendor/angular/angular-mocks","angular-dragdrop":"../vendor/angular/angular-dragdrop","angular-strap":"../vendor/angular/angular-strap","angular-sanitize":"../vendor/angular/angular-sanitize",timepicker:"../vendor/angular/timepicker",datepicker:"../vendor/angular/datepicker",bindonce:"../vendor/angular/bindonce",crypto:"../vendor/crypto.min",spectrum:"../vendor/spectrum",jquery:"../vendor/jquery/jquery-1.8.0",bootstrap:"../vendor/bootstrap/bootstrap","bootstrap-tagsinput":"../vendor/tagsinput/bootstrap-tagsinput","jquery-ui":"../vendor/jquery/jquery-ui-1.10.3","extend-jquery":"components/extend-jquery","jquery.flot":"../vendor/jquery/jquery.flot","jquery.flot.pie":"../vendor/jquery/jquery.flot.pie","jquery.flot.events":"../vendor/jquery/jquery.flot.events","jquery.flot.selection":"../vendor/jquery/jquery.flot.selection","jquery.flot.stack":"../vendor/jquery/jquery.flot.stack","jquery.flot.stackpercent":"../vendor/jquery/jquery.flot.stackpercent","jquery.flot.time":"../vendor/jquery/jquery.flot.time","jquery.flot.byte":"../vendor/jquery/jquery.flot.byte",modernizr:"../vendor/modernizr-2.6.1",elasticjs:"../vendor/elasticjs/elastic-angular-client"},shim:{underscore:{exports:"_"},bootstrap:{deps:["jquery"]},modernizr:{exports:"Modernizr"},angular:{deps:["jquery","config"],exports:"angular"},angularMocks:{deps:["angular"]},crypto:{exports:"Crypto"},"jquery-ui":["jquery"],"jquery.flot":["jquery"],"jquery.flot.byte":["jquery","jquery.flot"],"jquery.flot.pie":["jquery","jquery.flot"],"jquery.flot.events":["jquery","jquery.flot"],"jquery.flot.selection":["jquery","jquery.flot"],"jquery.flot.stack":["jquery","jquery.flot"],"jquery.flot.stackpercent":["jquery","jquery.flot"],"jquery.flot.time":["jquery","jquery.flot"],"angular-sanitize":["angular"],"angular-cookies":["angular"],"angular-dragdrop":["jquery","jquery-ui","angular"],"angular-loader":["angular"],"angular-mocks":["angular"],"angular-resource":["angular"],"angular-route":["angular"],"angular-touch":["angular"],bindonce:["angular"],"angular-strap":["angular","bootstrap","timepicker","datepicker"],"bootstrap-tagsinput":["jquery"],timepicker:["jquery","bootstrap"],datepicker:["jquery","bootstrap"],elasticjs:["angular","../vendor/elasticjs/elastic"]}}),require(["angular","angularMocks","jquery","underscore","elasticjs","bootstrap","angular-sanitize","angular-strap","angular-dragdrop","extend-jquery","bindonce"],function(a){a.module("kibana",[]),a.module("kibana.services",["$strap.directives"]),a.module("kibana.panels",[]),a.module("kibana.filters",[]),require(["specs/lexer-specs","specs/parser-specs","specs/gfunc-specs","specs/filterSrv-specs","specs/kbn-format-specs"],function(){window.__karma__.start()})}); \ No newline at end of file diff --git a/app/dash/test/tests.html b/app/dash/test/tests.html deleted file mode 100644 index 03e41de..0000000 --- a/app/dash/test/tests.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - Tests - - - -
    - - - - - - - \ No newline at end of file diff --git a/app/dash/tmpx b/app/dash/tmpx deleted file mode 100644 index d7f4658..0000000 --- a/app/dash/tmpx +++ /dev/null @@ -1 +0,0 @@ -vi ./index.html ./css/default.min.css ./css/bootstrap.light.min.css ./css/default.min.a9bd22e8.css ./css/bootstrap.dark.min.css ./test/karma.conf.js ./test/mocks/dashboard-mock.js ./test/specs/lexer-specs.js ./test/specs/graphiteTargetCtrl-specs.js ./test/specs/gfunc-specs.js ./test/specs/parser-specs.js ./test/specs/kbn-format-specs.js ./test/specs/graph-panel-controller-specs.js ./test/specs/filterSrv-specs.js ./test/test-main.js ./app/dashboards/default.json ./app/dashboards/scripted_async.js ./app/dashboards/scripted.js ./app/panels/graph/module.html ./app/panels/timepicker/module.html ./app/components/require.config.js ./app/app.js ./app/partials/kairosdb/editor.html ./app/partials/dashboard.html ./app/partials/search.html ./app/partials/dashLoader.html ./app/partials/opentsdb/editor.html ./app/partials/dasheditor.html ./app/partials/influxdb/editor.html ./app/partials/graphite/editor.html ./app/app.20ee1677.js ./config.sample.js ./build.txt ./vendor/jquery/jquery.flot.fillbetween.js ./vendor/angular/angular-mocks.js ./vendor/require/css-build.js ./vendor/require/tmpl.js ./vendor/require/require.js ./config.js diff --git a/app/dash/vendor/angular/angular-mocks.js b/app/dash/vendor/angular/angular-mocks.js deleted file mode 100644 index f011568..0000000 --- a/app/dash/vendor/angular/angular-mocks.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -function createHttpBackendMock(a,b,c){function d(a,b,c){return angular.isFunction(a)?a:function(){return angular.isNumber(a)?[a,b,c]:[200,a,b]}}function e(a,d,e,f,k,l){function m(a){return angular.isString(a)||angular.isFunction(a)||a instanceof RegExp?a:angular.toJson(a)}function n(b){function g(){var c=b.response(a,d,e,k);o.$$respHeaders=c[2],f(c[0],c[1],o.getAllResponseHeaders())}function h(){for(var a=0,b=i.length;b>a;a++)if(i[a]===g){i.splice(a,1),f(-1,void 0,"");break}}return!c&&l&&l.then&&l.then(h),g}var o=new MockXhr,p=h[0],q=!1;if(p&&p.match(a,d)){if(!p.matchData(e))throw Error("Expected "+p+" with different data\nEXPECTED: "+m(p.data)+"\nGOT: "+e);if(!p.matchHeaders(k))throw Error("Expected "+p+" with different headers\nEXPECTED: "+m(p.headers)+"\nGOT: "+m(k));if(h.shift(),p.response)return void i.push(n(p));q=!0}for(var r,s=-1;r=g[++s];)if(r.match(a,d,e,k||{})){if(r.response)(c?c.defer:j)(n(r));else{if(!r.passThrough)throw Error("No response defined !");b(a,d,e,f,k,l)}return}throw Error(q?"No response defined !":"Unexpected request: "+a+" "+d+"\n"+(p?"Expected "+p:"No more request expected"))}function f(a){angular.forEach(["GET","DELETE","JSONP"],function(b){e[a+b]=function(c,d){return e[a](b,c,void 0,d)}}),angular.forEach(["PUT","POST","PATCH"],function(b){e[a+b]=function(c,d,f){return e[a](b,c,d,f)}})}var g=[],h=[],i=[],j=angular.bind(i,i.push);return e.when=function(a,b,e,f){var h=new MockHttpExpectation(a,b,e,f),i={respond:function(a,b,c){h.response=d(a,b,c)}};return c&&(i.passThrough=function(){h.passThrough=!0}),g.push(h),i},f("when"),e.expect=function(a,b,c,e){var f=new MockHttpExpectation(a,b,c,e);return h.push(f),{respond:function(a,b,c){f.response=d(a,b,c)}}},f("expect"),e.flush=function(b){if(a.$digest(),!i.length)throw Error("No pending request to flush !");if(angular.isDefined(b))for(;b--;){if(!i.length)throw Error("No more pending request to flush !");i.shift()()}else for(;i.length;)i.shift()();e.verifyNoOutstandingExpectation()},e.verifyNoOutstandingExpectation=function(){if(a.$digest(),h.length)throw Error("Unsatisfied requests: "+h.join(", "))},e.verifyNoOutstandingRequest=function(){if(i.length)throw Error("Unflushed requests: "+i.length)},e.resetExpectations=function(){h.length=0,i.length=0},e}function MockHttpExpectation(a,b,c,d){this.data=c,this.headers=d,this.match=function(b,c,d,e){return a!=b?!1:this.matchUrl(c)?angular.isDefined(d)&&!this.matchData(d)?!1:angular.isDefined(e)&&!this.matchHeaders(e)?!1:!0:!1},this.matchUrl=function(a){return b?angular.isFunction(b.test)?b.test(a):b==a:!0},this.matchHeaders=function(a){return angular.isUndefined(d)?!0:angular.isFunction(d)?d(a):angular.equals(d,a)},this.matchData=function(a){return angular.isUndefined(c)?!0:c&&angular.isFunction(c.test)?c.test(a):c&&!angular.isString(c)?angular.toJson(c)==a:c==a},this.toString=function(){return a+" "+b}}function MockXhr(){MockXhr.$$lastInstance=this,this.open=function(a,b,c){this.$$method=a,this.$$url=b,this.$$async=c,this.$$reqHeaders={},this.$$respHeaders={}},this.send=function(a){this.$$data=a},this.setRequestHeader=function(a,b){this.$$reqHeaders[a]=b},this.getResponseHeader=function(a){var b=this.$$respHeaders[a];return b?b:(a=angular.lowercase(a),(b=this.$$respHeaders[a])?b:(b=void 0,angular.forEach(this.$$respHeaders,function(c,d){b||angular.lowercase(d)!=a||(b=c)}),b))},this.getAllResponseHeaders=function(){var a=[];return angular.forEach(this.$$respHeaders,function(b,c){a.push(c+": "+b)}),a.join("\n")},this.abort=angular.noop}angular.mock={},angular.mock.$BrowserProvider=function(){this.$get=function(){return new angular.mock.$Browser}},angular.mock.$Browser=function(){var a=this;this.isMock=!0,a.$$url="http://server/",a.$$lastUrl=a.$$url,a.pollFns=[],a.$$completeOutstandingRequest=angular.noop,a.$$incOutstandingRequestCount=angular.noop,a.onUrlChange=function(b){return a.pollFns.push(function(){a.$$lastUrl!=a.$$url&&(a.$$lastUrl=a.$$url,b(a.$$url))}),b},a.cookieHash={},a.lastCookieHash={},a.deferredFns=[],a.deferredNextId=0,a.defer=function(b,c){return c=c||0,a.deferredFns.push({time:a.defer.now+c,fn:b,id:a.deferredNextId}),a.deferredFns.sort(function(a,b){return a.time-b.time}),a.deferredNextId++},a.defer.now=0,a.defer.cancel=function(b){var c;return angular.forEach(a.deferredFns,function(a,d){a.id===b&&(c=d)}),void 0!==c?(a.deferredFns.splice(c,1),!0):!1},a.defer.flush=function(b){if(angular.isDefined(b))a.defer.now+=b;else{if(!a.deferredFns.length)throw Error("No deferred tasks to be flushed");a.defer.now=a.deferredFns[a.deferredFns.length-1].time}for(;a.deferredFns.length&&a.deferredFns[0].time<=a.defer.now;)a.deferredFns.shift().fn()},a.$$baseHref="",a.baseHref=function(){return this.$$baseHref}},angular.mock.$Browser.prototype={poll:function(){angular.forEach(this.pollFns,function(a){a()})},addPollFn:function(a){return this.pollFns.push(a),a},url:function(a){return a?(this.$$url=a,this):this.$$url},cookies:function(a,b){return a?void(void 0==b?delete this.cookieHash[a]:angular.isString(b)&&b.length<=4096&&(this.cookieHash[a]=b)):(angular.equals(this.cookieHash,this.lastCookieHash)||(this.lastCookieHash=angular.copy(this.cookieHash),this.cookieHash=angular.copy(this.cookieHash)),this.cookieHash)},notifyWhenNoOutstandingRequests:function(a){a()}},angular.mock.$ExceptionHandlerProvider=function(){var a;this.mode=function(b){switch(b){case"rethrow":a=function(a){throw a};break;case"log":var c=[];a=function(a){c.push(1==arguments.length?a:[].slice.call(arguments,0))},a.errors=c;break;default:throw Error("Unknown mode '"+b+"', only 'log'/'rethrow' modes are allowed!")}},this.$get=function(){return a},this.mode("rethrow")},angular.mock.$LogProvider=function(){function a(a,b,c){return a.concat(Array.prototype.slice.call(b,c))}this.$get=function(){var b={log:function(){b.log.logs.push(a([],arguments,0))},warn:function(){b.warn.logs.push(a([],arguments,0))},info:function(){b.info.logs.push(a([],arguments,0))},error:function(){b.error.logs.push(a([],arguments,0))}};return b.reset=function(){b.log.logs=[],b.warn.logs=[],b.info.logs=[],b.error.logs=[]},b.assertEmpty=function(){var a=[];if(angular.forEach(["error","warn","info","log"],function(c){angular.forEach(b[c].logs,function(b){angular.forEach(b,function(b){a.push("MOCK $log ("+c+"): "+String(b)+"\n"+(b.stack||""))})})}),a.length)throw a.unshift("Expected $log to be empty! Either a message was logged unexpectedly, or an expected log message was not checked and removed:"),a.push(""),new Error(a.join("\n---------\n"))},b.reset(),b}},function(){function a(a){var c;if(c=a.match(d)){var e=new Date(0),f=0,g=0;return c[9]&&(f=b(c[9]+c[10]),g=b(c[9]+c[11])),e.setUTCFullYear(b(c[1]),b(c[2])-1,b(c[3])),e.setUTCHours(b(c[4]||0)-f,b(c[5]||0)-g,b(c[6]||0),b(c[7]||0)),e}return a}function b(a){return parseInt(a,10)}function c(a,b,c){var d="";for(0>a&&(d="-",a=-a),a=""+a;a.length0?{process:function(){var c=b.shift();expect(c.delay).toEqual(a),c.fn()}}:void expect("SetTimoutQueue empty. Expecting delay of ").toEqual(a)},a},angular.mock.dump=function(a){function b(a){var d;return angular.isElement(a)?(a=angular.element(a),d=angular.element("
    "),angular.forEach(a,function(a){d.append(angular.element(a).clone())}),d=d.html()):angular.isArray(a)?(d=[],angular.forEach(a,function(a){d.push(b(a))}),d="[ "+d.join(", ")+" ]"):d=angular.isObject(a)?angular.isFunction(a.$eval)&&angular.isFunction(a.$apply)?c(a):a instanceof Error?a.stack||""+a.name+": "+a.message:angular.toJson(a,!0):String(a),d}function c(a,b){b=b||" ";var d=[b+"Scope("+a.$id+"): {"];for(var e in a)a.hasOwnProperty(e)&&!e.match(/^(\$|this)/)&&d.push(" "+e+": "+angular.toJson(a[e]));for(var f=a.$$childHead;f;)d.push(c(f,b+" ")),f=f.$$nextSibling;return d.push("}"),d.join("\n"+b)}return b(a)},angular.mock.$HttpBackendProvider=function(){this.$get=["$rootScope",createHttpBackendMock]},angular.mock.$TimeoutDecorator=function(a,b){function c(a){var b=[];return angular.forEach(a,function(a){b.push("{id: "+a.id+", time: "+a.time+"}")}),b.join(", ")}return a.flush=function(){b.defer.flush()},a.verifyNoPendingTasks=function(){if(b.deferredFns.length)throw Error("Deferred tasks to flush ("+b.deferredFns.length+"): "+c(b.deferredFns))},a},angular.mock.$RootElementProvider=function(){this.$get=function(){return angular.element("
    ")}},angular.module("ngMock",["ng"]).provider({$browser:angular.mock.$BrowserProvider,$exceptionHandler:angular.mock.$ExceptionHandlerProvider,$log:angular.mock.$LogProvider,$httpBackend:angular.mock.$HttpBackendProvider,$rootElement:angular.mock.$RootElementProvider}).config(function(a){a.decorator("$timeout",angular.mock.$TimeoutDecorator)}),angular.module("ngMockE2E",["ng"]).config(["$provide",function(a){a.decorator("$httpBackend",angular.mock.e2e.$httpBackendDecorator)}]),angular.mock.e2e={},angular.mock.e2e.$httpBackendDecorator=["$rootScope","$delegate","$browser",createHttpBackendMock],angular.mock.clearDataCache=function(){var a,b=angular.element.cache;for(a in b)if(b.hasOwnProperty(a)){var c=b[a].handle;c&&angular.element(c.elem).unbind(),delete b[a]}},window.jstestdriver&&function(a){a.dump=function(){var b=[];angular.forEach(arguments,function(a){b.push(angular.mock.dump(a))}),jstestdriver.console.log.apply(jstestdriver.console,b),a.console&&a.console.log.apply(a.console,b)}}(window),(window.jasmine||window.mocha)&&function(a){function b(){return c&&(a.mocha||c.queue.running)}var c=null;beforeEach(function(){c=this}),afterEach(function(){var a=c.$injector;c.$injector=null,c.$modules=null,c=null,a&&(a.get("$rootElement").unbind(),a.get("$browser").pollFns.length=0),angular.mock.clearDataCache(),angular.forEach(angular.element.fragments,function(a,b){delete angular.element.fragments[b]}),MockXhr.$$lastInstance=null,angular.forEach(angular.callbacks,function(a,b){delete angular.callbacks[b]}),angular.callbacks.counter=0}),a.module=angular.mock.module=function(){function a(){if(c.$injector)throw Error("Injector already created, can not register a module!");var a=c.$modules||(c.$modules=[]);angular.forEach(d,function(b){a.push(b)})}var d=Array.prototype.slice.call(arguments,0);return b()?a():a},a.inject=angular.mock.inject=function(){function a(){var a=c.$modules||[];a.unshift("ngMock"),a.unshift("ng");var b=c.$injector;b||(b=c.$injector=angular.injector(a));for(var f=0,g=d.length;g>f;f++)try{b.invoke(d[f]||angular.noop,this)}catch(h){throw h.stack&&e&&(h.stack+="\n"+e.stack),h}finally{e=null}}var d=Array.prototype.slice.call(arguments,0),e=new Error("Declaration Location");return b()?a():a}}(window); \ No newline at end of file diff --git a/app/dash/vendor/jquery/jquery.flot.fillbetween.js b/app/dash/vendor/jquery/jquery.flot.fillbetween.js deleted file mode 100644 index 7647ebc..0000000 --- a/app/dash/vendor/jquery/jquery.flot.fillbetween.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -!function(a){function b(a){function b(a,b){var c;for(c=0;c=b.length?null:b[a.fillBetween]:null}function c(a,c,d){if(null!=c.fillBetween){var e=b(c,a.getData());if(e){for(var f,g,h,i,j,k,l,m,n=d.pointsize,o=d.points,p=e.datapoints.pointsize,q=e.datapoints.points,r=[],s=c.lines.show,t=n>2&&d.format[2].y,u=s&&c.lines.steps,v=!0,w=0,x=0;;){if(w>=o.length)break;if(l=r.length,null==o[w]){for(m=0;n>m;++m)r.push(o[w+m]);w+=n}else if(x>=q.length){if(!s)for(m=0;n>m;++m)r.push(o[w+m]);w+=n}else if(null==q[x]){for(m=0;n>m;++m)r.push(null);v=!0,x+=p}else{if(f=o[w],g=o[w+1],i=q[x],j=q[x+1],k=0,f===i){for(m=0;n>m;++m)r.push(o[w+m]);k=j,w+=n,x+=p}else if(f>i){if(s&&w>0&&null!=o[w-n]){for(h=g+(o[w-n+1]-g)*(i-f)/(o[w-n]-f),r.push(i),r.push(h),m=2;n>m;++m)r.push(o[w+m]);k=j}x+=p}else{if(v&&s){w+=n;continue}for(m=0;n>m;++m)r.push(o[w+m]);s&&x>0&&null!=q[x-p]&&(k=j+(q[x-p+1]-j)*(f-i)/(q[x-p]-i)),w+=n}v=!1,l!==r.length&&t&&(r[l+2]=k)}if(u&&l!==r.length&&l>0&&null!==r[l]&&r[l]!==r[l-n]&&r[l+1]!==r[l-n+1]){for(m=0;n>m;++m)r[l+n+m]=r[l+m];r[l+1]=r[l-n+1]}}d.points=r}}}a.hooks.processDatapoints.push(c)}var c={series:{fillBetween:null}};a.plot.plugins.push({init:b,options:c,name:"fillbetween",version:"1.0"})}(jQuery); \ No newline at end of file diff --git a/app/dash/vendor/license.json b/app/dash/vendor/license.json deleted file mode 100644 index 42ea4a0..0000000 --- a/app/dash/vendor/license.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "angular": { - "version":"1.1.5", - "license":"MIT" - }, - "angular-dragdrop": { - "version":"1.0.4", - "license":"MIT" - }, - "angular-strap": { - "version":"0.7.5", - "license":"MIT" - }, - "bindonce": { - "version":"0.2.1", - "license":"MIT" - }, - "datepicker": { - "version":"12/3/2013", - "license":"Apache 2.0" - }, - "timepicker": { - "version":"0.2.6", - "license":"MIT" - }, - "bootstrap": { - "version":"2.3.2", - "license":"Apache 2.0" - }, - "elasticjs": { - "version":"1.1.1", - "license":"MIT" - }, - "jquery": { - "version":"1.8.0", - "license":"MIT" - }, - "jquery-ui": { - "version":"1.10.3", - "license":"MIT" - }, - "flot": { - "version":"0.8.1", - "license":"MIT" - }, - "require": { - "version":"2.1.8", - "license":"MIT" - }, - "filesaver": { - "version":"2013-01-23", - "license":"MIT" - }, - "modernizr": { - "version":"2.6.1", - "license":"MIT" - }, - "moment": { - "version":"2.1.0", - "license":"MIT" - }, - "timezone": { - "version":"2010", - "license":"Apache 2" - }, - "underscore": { - "version":"1.5.1", - "license":"MIT" - } -} \ No newline at end of file diff --git a/app/dash/vendor/require/css-build.js b/app/dash/vendor/require/css-build.js deleted file mode 100644 index 4fa809c..0000000 --- a/app/dash/vendor/require/css-build.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define([],function(){function a(a,b){var d=c.readFileSync(a,"utf8");0===d.indexOf("")&&(d=d.substring(1)),b(d)}function b(a){return a.replace(/[\r\n]+/g," ").replace(/[\t]/g," ")}var c=require.nodeRequire("fs"),d={},e=!1,f={load:function(c,e,f,g){f(!0),a(g.baseUrl+c,function(a){d[c]=b(a)})},write:function(a,b,c){e||(e=!0,c("define('"+a+"-embed', function()\n{\n function embed_css(content)\n {\n var head = document.getElementsByTagName('head')[0],\n style = document.createElement('style'),\n rules = document.createTextNode(content);\n style.type = 'text/css';\n if(style.styleSheet)\n style.styleSheet.cssText = rules.nodeValue;\n else style.appendChild(rules);\n head.appendChild(style);\n }\n return embed_css;\n});\n")),c("define('"+a+"!"+b+"', ['"+a+"-embed'], \nfunction(embed)\n{\n embed(\n '"+d[b].replace(/'/g,"\\'")+"'\n );\n return true;\n});\n")},writeFile:function(){},onLayerEnd:function(){}};return f}); \ No newline at end of file diff --git a/app/dash/vendor/require/require.js b/app/dash/vendor/require/require.js deleted file mode 100644 index 364d1fd..0000000 --- a/app/dash/vendor/require/require.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -var requirejs,require,define;!function(global){function isFunction(a){return"[object Function]"===ostring.call(a)}function isArray(a){return"[object Array]"===ostring.call(a)}function each(a,b){if(a){var c;for(c=0;c-1&&(!a[c]||!b(a[c],c,a));c-=1);}}function hasProp(a,b){return hasOwn.call(a,b)}function getOwn(a,b){return hasProp(a,b)&&a[b]}function eachProp(a,b){var c;for(c in a)if(hasProp(a,c)&&b(a[c],c))break}function mixin(a,b,c,d){return b&&eachProp(b,function(b,e){(c||!hasProp(a,e))&&(d&&"string"!=typeof b?(a[e]||(a[e]={}),mixin(a[e],b,c,d)):a[e]=b)}),a}function bind(a,b){return function(){return b.apply(a,arguments)}}function scripts(){return document.getElementsByTagName("script")}function defaultOnError(a){throw a}function getGlobal(a){if(!a)return a;var b=global;return each(a.split("."),function(a){b=b[a]}),b}function makeError(a,b,c,d){var e=new Error(b+"\nhttp://requirejs.org/docs/errors.html#"+a);return e.requireType=a,e.requireModules=d,c&&(e.originalError=c),e}function newContext(a){function b(a){var b,c;for(b=0;a[b];b+=1)if(c=a[b],"."===c)a.splice(b,1),b-=1;else if(".."===c){if(1===b&&(".."===a[2]||".."===a[0]))break;b>0&&(a.splice(b-1,2),b-=2)}}function c(a,c,d){var e,f,g,h,i,j,k,l,m,n,o,p=c&&c.split("/"),q=p,r=x.map,s=r&&r["*"];if(a&&"."===a.charAt(0)&&(c?(q=getOwn(x.pkgs,c)?p=[c]:p.slice(0,p.length-1),a=q.concat(a.split("/")),b(a),f=getOwn(x.pkgs,e=a[0]),a=a.join("/"),f&&a===e+"/"+f.main&&(a=e)):0===a.indexOf("./")&&(a=a.substring(2))),d&&r&&(p||s)){for(h=a.split("/"),i=h.length;i>0;i-=1){if(k=h.slice(0,i).join("/"),p)for(j=p.length;j>0;j-=1)if(g=getOwn(r,p.slice(0,j).join("/")),g&&(g=getOwn(g,k))){l=g,m=i;break}if(l)break;!n&&s&&getOwn(s,k)&&(n=getOwn(s,k),o=i)}!l&&n&&(l=n,m=o),l&&(h.splice(0,m,l),a=h.join("/"))}return a}function d(a){isBrowser&&each(scripts(),function(b){return b.getAttribute("data-requiremodule")===a&&b.getAttribute("data-requirecontext")===u.contextName?(b.parentNode.removeChild(b),!0):void 0})}function e(a){var b=getOwn(x.paths,a);return b&&isArray(b)&&b.length>1?(d(a),b.shift(),u.require.undef(a),u.require([a]),!0):void 0}function f(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function g(a,b,d,e){var g,h,i,j,k=null,l=b?b.name:null,m=a,n=!0,o="";return a||(n=!1,a="_@r"+(E+=1)),j=f(a),k=j[0],a=j[1],k&&(k=c(k,l,e),h=getOwn(C,k)),a&&(k?o=h&&h.normalize?h.normalize(a,function(a){return c(a,l,e)}):c(a,l,e):(o=c(a,l,e),j=f(o),k=j[0],o=j[1],d=!0,g=u.nameToUrl(o))),i=!k||h||d?"":"_unnormalized"+(F+=1),{prefix:k,name:o,parentMap:b,unnormalized:!!i,url:g,originalName:m,isDefine:n,id:(k?k+"!"+o:o)+i}}function h(a){var b=a.id,c=getOwn(y,b);return c||(c=y[b]=new u.Module(a)),c}function i(a,b,c){var d=a.id,e=getOwn(y,d);!hasProp(C,d)||e&&!e.defineEmitComplete?(e=h(a),e.error&&"error"===b?c(e.error):e.on(b,c)):"defined"===b&&c(C[d])}function j(a,b){var c=a.requireModules,d=!1;b?b(a):(each(c,function(b){var c=getOwn(y,b);c&&(c.error=a,c.events.error&&(d=!0,c.emit("error",a)))}),d||req.onError(a))}function k(){globalDefQueue.length&&(apsp.apply(B,[B.length-1,0].concat(globalDefQueue)),globalDefQueue=[])}function l(a){delete y[a],delete z[a]}function m(a,b,c){var d=a.map.id;a.error?a.emit("error",a.error):(b[d]=!0,each(a.depMaps,function(d,e){var f=d.id,g=getOwn(y,f);!g||a.depMatched[e]||c[f]||(getOwn(b,f)?(a.defineDep(e,C[f]),a.check()):m(g,b,c))}),c[d]=!0)}function n(){var a,b,c,f,g=1e3*x.waitSeconds,h=g&&u.startTime+g<(new Date).getTime(),i=[],k=[],l=!1,o=!0;if(!s){if(s=!0,eachProp(z,function(c){if(a=c.map,b=a.id,c.enabled&&(a.isDefine||k.push(c),!c.error))if(!c.inited&&h)e(b)?(f=!0,l=!0):(i.push(b),d(b));else if(!c.inited&&c.fetched&&a.isDefine&&(l=!0,!a.prefix))return o=!1}),h&&i.length)return c=makeError("timeout","Load timeout for modules: "+i,null,i),c.contextName=u.contextName,j(c);o&&each(k,function(a){m(a,{},{})}),h&&!f||!l||!isBrowser&&!isWebWorker||w||(w=setTimeout(function(){w=0,n()},50)),s=!1}}function o(a){hasProp(C,a[0])||h(g(a[0],null,!0)).init(a[1],a[2])}function p(a,b,c,d){a.detachEvent&&!isOpera?d&&a.detachEvent(d,b):a.removeEventListener(c,b,!1)}function q(a){var b=a.currentTarget||a.srcElement;return p(b,u.onScriptLoad,"load","onreadystatechange"),p(b,u.onScriptError,"error"),{node:b,id:b&&b.getAttribute("data-requiremodule")}}function r(){var a;for(k();B.length;){if(a=B.shift(),null===a[0])return j(makeError("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));o(a)}}var s,t,u,v,w,x={waitSeconds:7,baseUrl:"./",paths:{},pkgs:{},shim:{},config:{}},y={},z={},A={},B=[],C={},D={},E=1,F=1;return v={require:function(a){return a.require?a.require:a.require=u.makeRequire(a.map)},exports:function(a){return a.usingExports=!0,a.map.isDefine?a.exports?a.exports:a.exports=C[a.map.id]={}:void 0},module:function(a){return a.module?a.module:a.module={id:a.map.id,uri:a.map.url,config:function(){var b,c=getOwn(x.pkgs,a.map.id);return b=c?getOwn(x.config,a.map.id+"/"+c.main):getOwn(x.config,a.map.id),b||{}},exports:C[a.map.id]}}},t=function(a){this.events=getOwn(A,a.id)||{},this.map=a,this.shim=getOwn(x.shim,a.id),this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},t.prototype={init:function(a,b,c,d){d=d||{},this.inited||(this.factory=b,c?this.on("error",c):this.events.error&&(c=bind(this,function(a){this.emit("error",a)})),this.depMaps=a&&a.slice(0),this.errback=c,this.inited=!0,this.ignore=d.ignore,d.enabled||this.enabled?this.enable():this.check())},defineDep:function(a,b){this.depMatched[a]||(this.depMatched[a]=!0,this.depCount-=1,this.depExports[a]=b)},fetch:function(){if(!this.fetched){this.fetched=!0,u.startTime=(new Date).getTime();var a=this.map;return this.shim?void u.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],bind(this,function(){return a.prefix?this.callPlugin():this.load()})):a.prefix?this.callPlugin():this.load()}},load:function(){var a=this.map.url;D[a]||(D[a]=!0,u.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,b,c=this.map.id,d=this.depExports,e=this.exports,f=this.factory;if(this.inited){if(this.error)this.emit("error",this.error);else if(!this.defining){if(this.defining=!0,this.depCount<1&&!this.defined){if(isFunction(f)){if(this.events.error&&this.map.isDefine||req.onError!==defaultOnError)try{e=u.execCb(c,f,d,e)}catch(g){a=g}else e=u.execCb(c,f,d,e);if(this.map.isDefine&&(b=this.module,b&&void 0!==b.exports&&b.exports!==this.exports?e=b.exports:void 0===e&&this.usingExports&&(e=this.exports)),a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",j(this.error=a)}else e=f;this.exports=e,this.map.isDefine&&!this.ignore&&(C[c]=e,req.onResourceLoad&&req.onResourceLoad(u,this.map,this.depMaps)),l(c),this.defined=!0}this.defining=!1,this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var a=this.map,b=a.id,d=g(a.prefix);this.depMaps.push(d),i(d,"defined",bind(this,function(d){var e,f,k,m=this.map.name,n=this.map.parentMap?this.map.parentMap.name:null,o=u.makeRequire(a.parentMap,{enableBuildCallback:!0});return this.map.unnormalized?(d.normalize&&(m=d.normalize(m,function(a){return c(a,n,!0)})||""),f=g(a.prefix+"!"+m,this.map.parentMap),i(f,"defined",bind(this,function(a){this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),k=getOwn(y,f.id),void(k&&(this.depMaps.push(f),this.events.error&&k.on("error",bind(this,function(a){this.emit("error",a)})),k.enable()))):(e=bind(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),e.error=bind(this,function(a){this.inited=!0,this.error=a,a.requireModules=[b],eachProp(y,function(a){0===a.map.id.indexOf(b+"_unnormalized")&&l(a.map.id)}),j(a)}),e.fromText=bind(this,function(c,d){var f=a.name,i=g(f),k=useInteractive;d&&(c=d),k&&(useInteractive=!1),h(i),hasProp(x.config,b)&&(x.config[f]=x.config[b]);try{req.exec(c)}catch(l){return j(makeError("fromtexteval","fromText eval for "+b+" failed: "+l,l,[b]))}k&&(useInteractive=!0),this.depMaps.push(i),u.completeLoad(f),o([f],e)}),void d.load(a.name,o,e,x))})),u.enable(d,this),this.pluginMaps[d.id]=d},enable:function(){z[this.map.id]=this,this.enabled=!0,this.enabling=!0,each(this.depMaps,bind(this,function(a,b){var c,d,e;if("string"==typeof a){if(a=g(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap),this.depMaps[b]=a,e=getOwn(v,a.id))return void(this.depExports[b]=e(this));this.depCount+=1,i(a,"defined",bind(this,function(a){this.defineDep(b,a),this.check()})),this.errback&&i(a,"error",bind(this,this.errback))}c=a.id,d=y[c],hasProp(v,c)||!d||d.enabled||u.enable(a,this)})),eachProp(this.pluginMaps,bind(this,function(a){var b=getOwn(y,a.id);b&&!b.enabled&&u.enable(a,this)})),this.enabling=!1,this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]),c.push(b)},emit:function(a,b){each(this.events[a],function(a){a(b)}),"error"===a&&delete this.events[a]}},u={config:x,contextName:a,registry:y,defined:C,urlFetched:D,defQueue:B,Module:t,makeModuleMap:g,nextTick:req.nextTick,onError:j,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");var b=x.pkgs,c=x.shim,d={paths:!0,config:!0,map:!0};eachProp(a,function(a,b){d[b]?"map"===b?(x.map||(x.map={}),mixin(x[b],a,!0,!0)):mixin(x[b],a,!0):x[b]=a}),a.shim&&(eachProp(a.shim,function(a,b){isArray(a)&&(a={deps:a}),!a.exports&&!a.init||a.exportsFn||(a.exportsFn=u.makeShimExports(a)),c[b]=a}),x.shim=c),a.packages&&(each(a.packages,function(a){var c;a="string"==typeof a?{name:a}:a,c=a.location,b[a.name]={name:a.name,location:c||a.name,main:(a.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}}),x.pkgs=b),eachProp(y,function(a,b){a.inited||a.map.unnormalized||(a.map=g(b))}),(a.deps||a.callback)&&u.require(a.deps||[],a.callback)},makeShimExports:function(a){function b(){var b;return a.init&&(b=a.init.apply(global,arguments)),b||a.exports&&getGlobal(a.exports)}return b},makeRequire:function(b,d){function e(c,f,i){var k,l,m;return d.enableBuildCallback&&f&&isFunction(f)&&(f.__requireJsBuild=!0),"string"==typeof c?isFunction(f)?j(makeError("requireargs","Invalid require call"),i):b&&hasProp(v,c)?v[c](y[b.id]):req.get?req.get(u,c,b,e):(l=g(c,b,!1,!0),k=l.id,hasProp(C,k)?C[k]:j(makeError("notloaded",'Module name "'+k+'" has not been loaded yet for context: '+a+(b?"":". Use require([])")))):(r(),u.nextTick(function(){r(),m=h(g(null,b)),m.skipMap=d.skipMap,m.init(c,f,i,{enabled:!0}),n()}),e)}return d=d||{},mixin(e,{isBrowser:isBrowser,toUrl:function(a){var d,e=a.lastIndexOf("."),f=a.split("/")[0],g="."===f||".."===f;return-1!==e&&(!g||e>1)&&(d=a.substring(e,a.length),a=a.substring(0,e)),u.nameToUrl(c(a,b&&b.id,!0),d,!0)},defined:function(a){return hasProp(C,g(a,b,!1,!0).id)},specified:function(a){return a=g(a,b,!1,!0).id,hasProp(C,a)||hasProp(y,a)}}),b||(e.undef=function(a){k();var c=g(a,b,!0),d=getOwn(y,a);delete C[a],delete D[c.url],delete A[a],d&&(d.events.defined&&(A[a]=d.events),l(a))}),e},enable:function(a){var b=getOwn(y,a.id);b&&h(a).enable()},completeLoad:function(a){var b,c,d,f=getOwn(x.shim,a)||{},g=f.exports;for(k();B.length;){if(c=B.shift(),null===c[0]){if(c[0]=a,b)break;b=!0}else c[0]===a&&(b=!0);o(c)}if(d=getOwn(y,a),!b&&!hasProp(C,a)&&d&&!d.inited){if(!(!x.enforceDefine||g&&getGlobal(g)))return e(a)?void 0:j(makeError("nodefine","No define call for "+a,null,[a]));o([a,f.deps||[],f.exportsFn])}n()},nameToUrl:function(a,b,c){var d,e,f,g,h,i,j,k,l;if(req.jsExtRegExp.test(a))k=a+(b||"");else{for(d=x.paths,e=x.pkgs,h=a.split("/"),i=h.length;i>0;i-=1){if(j=h.slice(0,i).join("/"),f=getOwn(e,j),l=getOwn(d,j)){isArray(l)&&(l=l[0]),h.splice(0,i,l);break}if(f){g=a===f.name?f.location+"/"+f.main:f.location,h.splice(0,i,g);break}}k=h.join("/"),k+=b||(/\?/.test(k)||c?"":".js"),k=("/"===k.charAt(0)||k.match(/^[\w\+\.\-]+:/)?"":x.baseUrl)+k}return x.urlArgs?k+((-1===k.indexOf("?")?"?":"&")+x.urlArgs):k},load:function(a,b){req.load(u,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if("load"===a.type||readyRegExp.test((a.currentTarget||a.srcElement).readyState)){interactiveScript=null;var b=q(a);u.completeLoad(b.id)}},onScriptError:function(a){var b=q(a);return e(b.id)?void 0:j(makeError("scripterror","Script error for: "+b.id,a,[b.id]))}},u.require=u.makeRequire(),u}function getInteractiveScript(){return interactiveScript&&"interactive"===interactiveScript.readyState?interactiveScript:(eachReverse(scripts(),function(a){return"interactive"===a.readyState?interactiveScript=a:void 0}),interactiveScript)}var req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath,version="2.1.8",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,op=Object.prototype,ostring=op.toString,hasOwn=op.hasOwnProperty,ap=Array.prototype,apsp=ap.splice,isBrowser=!("undefined"==typeof window||!navigator||!window.document),isWebWorker=!isBrowser&&"undefined"!=typeof importScripts,readyRegExp=isBrowser&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),contexts={},cfg={},globalDefQueue=[],useInteractive=!1;if("undefined"==typeof define){if("undefined"!=typeof requirejs){if(isFunction(requirejs))return;cfg=requirejs,requirejs=void 0}"undefined"==typeof require||isFunction(require)||(cfg=require,require=void 0),req=requirejs=function(a,b,c,d){var e,f,g=defContextName;return isArray(a)||"string"==typeof a||(f=a,isArray(b)?(a=b,b=c,c=d):a=[]),f&&f.context&&(g=f.context),e=getOwn(contexts,g),e||(e=contexts[g]=req.s.newContext(g)),f&&e.configure(f),e.require(a,b,c)},req.config=function(a){return req(a)},req.nextTick="undefined"!=typeof setTimeout?function(a){setTimeout(a,4)}:function(a){a()},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),each(["toUrl","undef","defined","specified"],function(a){req[a]=function(){var b=contexts[defContextName];return b.require[a].apply(b,arguments)}}),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],baseElement=document.getElementsByTagName("base")[0],baseElement&&(head=s.head=baseElement.parentNode)),req.onError=defaultOnError,req.createNode=function(a){var b=a.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");return b.type=a.scriptType||"text/javascript",b.charset="utf-8",b.async=!0,b},req.load=function(a,b,c){var d,e=a&&a.config||{};if(isBrowser)return d=req.createNode(e,b,c),d.setAttribute("data-requirecontext",a.contextName),d.setAttribute("data-requiremodule",b),!d.attachEvent||d.attachEvent.toString&&d.attachEvent.toString().indexOf("[native code")<0||isOpera?(d.addEventListener("load",a.onScriptLoad,!1),d.addEventListener("error",a.onScriptError,!1)):(useInteractive=!0,d.attachEvent("onreadystatechange",a.onScriptLoad)),d.src=c,currentlyAddingScript=d,baseElement?head.insertBefore(d,baseElement):head.appendChild(d),currentlyAddingScript=null,d;if(isWebWorker)try{importScripts(c),a.completeLoad(b)}catch(f){a.onError(makeError("importscripts","importScripts failed for "+b+" at "+c,f,[b]))}},isBrowser&&eachReverse(scripts(),function(a){return head||(head=a.parentNode),dataMain=a.getAttribute("data-main"),dataMain?(mainScript=dataMain,cfg.baseUrl||(src=mainScript.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath),mainScript=mainScript.replace(jsSuffixRegExp,""),req.jsExtRegExp.test(mainScript)&&(mainScript=dataMain),cfg.deps=cfg.deps?cfg.deps.concat(mainScript):[mainScript],!0):void 0}),define=function(a,b,c){var d,e;"string"!=typeof a&&(c=b,b=a,a=null),isArray(b)||(c=b,b=null),!b&&isFunction(c)&&(b=[],c.length&&(c.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(a,c){b.push(c)}),b=(1===c.length?["require"]:["require","exports","module"]).concat(b))),useInteractive&&(d=currentlyAddingScript||getInteractiveScript(),d&&(a||(a=d.getAttribute("data-requiremodule")),e=contexts[d.getAttribute("data-requirecontext")])),(e?e.defQueue:globalDefQueue).push([a,b,c])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)}}(this); \ No newline at end of file diff --git a/app/dash/vendor/require/tmpl.js b/app/dash/vendor/require/tmpl.js deleted file mode 100644 index f24f7ed..0000000 --- a/app/dash/vendor/require/tmpl.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! grafana - v1.6.1 - 2014-09-02 - * Copyright (c) 2014 Torkel Ödegaard; Licensed Apache License */ - -define(["module"],function(a){var b=a.config&&a.config()||{};return{load:function(a,c,d){var e=c.toUrl(a);c(["text!"+a],function(a){b.registerTemplate&&b.registerTemplate(e,a),d(a)})}}}); \ No newline at end of file diff --git a/app/data/config.json b/app/data/config.json index f6feeba..174ce04 100644 --- a/app/data/config.json +++ b/app/data/config.json @@ -16,38 +16,17 @@ "max_size": "20G" } }, - "interface": { - "eth0": { - "subnet_id": 1, - "is_mgmt": true, - "is_promiscuous": false - }, - "eth1": { - "subnet_id": 2, - "is_mgmt": false, - "is_promiscuous": true - }, - "eth2": { - "subnet_id": 1, - "is_mgmt": false, - "is_promiscuous": false - }, - "eth3": { - "subnet_id": 2, - "is_mgmt": false, - "is_promiscuous": false - } - }, + "interface": { }, "general": { "timezone": "America/Los_Angeles", "language": "en", "http_proxy": "", "https_proxy": "", "no_proxy": [""], - "ntp_server": "", - "dns_servers": [""], + "ntp_server": "127.0.0.1", + "dns_servers": ["ods.com"], "search_path": ["ods.com"], - "domain": "ods.com", + "domain": ["ods.com"], "default_gateway": "10.145.88.1", "local_repo": "" }, @@ -84,6 +63,14 @@ "username": "root", "password": "root" }, + "network": { + "username": "neutron", + "password": "neutron" + }, + "heat": { + "username": "heat", + "password": "heat" + }, "volume": { "username": "cinder", "password": "cinder" @@ -94,6 +81,10 @@ "username": "admin", "password": "admin" }, + "demo": { + "username": "demo", + "password": "demo" + }, "compute": { "username": "nova", "password": "nova" @@ -106,6 +97,10 @@ "username": "glance", "password": "glance" }, + "identity": { + "username": "keystone", + "password": "keystone" + }, "metering": { "username": "ceilometer", "password": "ceilometer" @@ -118,14 +113,17 @@ "username": "swift", "password": "swift" }, + "heat": { + "username": "heat", + "password": "heat" + }, "volume": { "username": "cinder", "password": "cinder" } }, "network_mapping": { - "management": "", - "tenant": "", + "mgmt": "", "storage": "", "external": "" } @@ -471,4 +469,4 @@ } } } -} \ No newline at end of file +} diff --git a/app/data/config.json-backup b/app/data/config.json-backup new file mode 100644 index 0000000..f6feeba --- /dev/null +++ b/app/data/config.json-backup @@ -0,0 +1,474 @@ +{ + "openstack": { + "cluster": { + "id": 1, + "name": "demo", + "adapter_id": 1, + "os_id": 1 + }, + "partition": { + "/var": { + "percentage": 30, + "max_size": "10G" + }, + "/usr": { + "percentage": 30, + "max_size": "20G" + } + }, + "interface": { + "eth0": { + "subnet_id": 1, + "is_mgmt": true, + "is_promiscuous": false + }, + "eth1": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": true + }, + "eth2": { + "subnet_id": 1, + "is_mgmt": false, + "is_promiscuous": false + }, + "eth3": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": false + } + }, + "general": { + "timezone": "America/Los_Angeles", + "language": "en", + "http_proxy": "", + "https_proxy": "", + "no_proxy": [""], + "ntp_server": "", + "dns_servers": [""], + "search_path": ["ods.com"], + "domain": "ods.com", + "default_gateway": "10.145.88.1", + "local_repo": "" + }, + "server_credentials": { + "username": "", + "password": "" + }, + "service_credentials": { + "rabbitmq": { + "username": "guest", + "password": "guest" + }, + "compute": { + "username": "nova", + "password": "nova" + }, + "dashboard": { + "username": "dashboard", + "password": "dashboard" + }, + "identity": { + "username": "keystone", + "password": "keystone" + }, + "image": { + "username": "glance", + "password": "glance" + }, + "metering": { + "username": "ceilometer", + "password": "ceilometer" + }, + "mysql": { + "username": "root", + "password": "root" + }, + "volume": { + "username": "cinder", + "password": "cinder" + } + }, + "console_credentials": { + "admin": { + "username": "admin", + "password": "admin" + }, + "compute": { + "username": "nova", + "password": "nova" + }, + "dashboard": { + "username": "dashboard", + "password": "dashboard" + }, + "image": { + "username": "glance", + "password": "glance" + }, + "metering": { + "username": "ceilometer", + "password": "ceilometer" + }, + "network": { + "username": "quantum", + "password": "quantum" + }, + "object-store": { + "username": "swift", + "password": "swift" + }, + "volume": { + "username": "cinder", + "password": "cinder" + } + }, + "network_mapping": { + "management": "", + "tenant": "", + "storage": "", + "external": "" + } + }, + "openstack_ceph": { + "cluster": { + "id": 1, + "name": "demo", + "adapter_id": 1, + "os_id": 1 + }, + "partition": { + "/var": { + "percentage": 30, + "max_size": "10G" + }, + "/usr": { + "percentage": 30, + "max_size": "20G" + } + }, + "interface": { + "eth0": { + "subnet_id": 1, + "is_mgmt": true, + "is_promiscuous": false + }, + "eth1": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": true + }, + "eth2": { + "subnet_id": 1, + "is_mgmt": false, + "is_promiscuous": false + }, + "eth3": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": false + } + }, + "general": { + "timezone": "America/Los_Angeles", + "language": "en", + "http_proxy": "", + "https_proxy": "", + "no_proxy": [""], + "ntp_server": "", + "dns_servers": [""], + "search_path": ["ods.com"], + "domain": "ods.com", + "default_gateway": "10.145.88.1", + "local_repo": "" + }, + "server_credentials": { + "username": "", + "password": "" + }, + "service_credentials": { + "rabbitmq": { + "username": "guest", + "password": "guest" + }, + "compute": { + "username": "nova", + "password": "nova" + }, + "dashboard": { + "username": "dashboard", + "password": "dashboard" + }, + "identity": { + "username": "keystone", + "password": "keystone" + }, + "image": { + "username": "glance", + "password": "glance" + }, + "metering": { + "username": "ceilometer", + "password": "ceilometer" + }, + "mysql": { + "username": "root", + "password": "root" + }, + "volume": { + "username": "cinder", + "password": "cinder" + } + }, + "console_credentials": { + "admin": { + "username": "admin", + "password": "admin" + }, + "compute": { + "username": "nova", + "password": "nova" + }, + "dashboard": { + "username": "dashboard", + "password": "dashboard" + }, + "image": { + "username": "glance", + "password": "glance" + }, + "metering": { + "username": "ceilometer", + "password": "ceilometer" + }, + "network": { + "username": "quantum", + "password": "quantum" + }, + "object-store": { + "username": "swift", + "password": "swift" + }, + "volume": { + "username": "cinder", + "password": "cinder" + } + }, + "network_mapping": { + "management": "", + "tenant": "", + "storage": "", + "external": "", + "public_network": "", + "cluster_network": "" + }, + "ceph_config": { + "global_config": { + "osd_pool_pg_num": "1024", + "osd_pool_pgp_num": "1024", + "osd_pool_size": "3" + }, + "osd_config": { + "journal_size": "10000", + "op_threads": 10 + } + } + }, + "os_only": { + "cluster": { + "id": 1, + "name": "demo", + "adapter_id": 1, + "os_id": 1 + }, + "partition": { + "/var": { + "percentage": 30, + "max_size": "10G" + }, + "/usr": { + "percentage": 30, + "max_size": "20G" + } + }, + "interface": { + "eth0": { + "subnet_id": 1, + "is_mgmt": true, + "is_promiscuous": false + }, + "eth1": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": true + }, + "eth2": { + "subnet_id": 1, + "is_mgmt": false, + "is_promiscuous": false + }, + "eth3": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": false + } + }, + "general": { + "timezone": "America/Los_Angeles", + "language": "en", + "http_proxy": "", + "https_proxy": "", + "no_proxy": [""], + "ntp_server": "", + "dns_servers": [""], + "search_path": ["ods.com"], + "domain": "ods.com", + "default_gateway": "10.145.88.1", + "local_repo": "" + }, + "server_credentials": { + "username": "", + "password": "" + } + }, + "ceph_firefly": { + "cluster": { + "id": 1, + "name": "demo", + "adapter_id": 1, + "os_id": 1 + }, + "partition": { + "/var": { + "percentage": 30, + "max_size": "10G" + }, + "/usr": { + "percentage": 30, + "max_size": "20G" + } + }, + "interface": { + "eth0": { + "subnet_id": 1, + "is_mgmt": true, + "is_promiscuous": false + }, + "eth1": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": true + }, + "eth2": { + "subnet_id": 1, + "is_mgmt": false, + "is_promiscuous": false + }, + "eth3": { + "subnet_id": 2, + "is_mgmt": false, + "is_promiscuous": false + } + }, + "general": { + "timezone": "America/Los_Angeles", + "language": "en", + "http_proxy": "", + "https_proxy": "", + "no_proxy": [""], + "ntp_server": "", + "dns_servers": [""], + "search_path": ["ods.com"], + "domain": "ods.com", + "default_gateway": "10.145.88.1", + "local_repo": "" + }, + "server_credentials": { + "username": "", + "password": "" + }, + "service_credentials": { + "rabbitmq": { + "username": "guest", + "password": "guest" + }, + "compute": { + "username": "nova", + "password": "nova" + }, + "dashboard": { + "username": "dashboard", + "password": "dashboard" + }, + "identity": { + "username": "keystone", + "password": "keystone" + }, + "image": { + "username": "glance", + "password": "glance" + }, + "metering": { + "username": "ceilometer", + "password": "ceilometer" + }, + "mysql": { + "username": "root", + "password": "root" + }, + "volume": { + "username": "cinder", + "password": "cinder" + } + }, + "console_credentials": { + "admin": { + "username": "admin", + "password": "admin" + }, + "compute": { + "username": "nova", + "password": "nova" + }, + "dashboard": { + "username": "dashboard", + "password": "dashboard" + }, + "image": { + "username": "glance", + "password": "glance" + }, + "metering": { + "username": "ceilometer", + "password": "ceilometer" + }, + "network": { + "username": "quantum", + "password": "quantum" + }, + "object-store": { + "username": "swift", + "password": "swift" + }, + "volume": { + "username": "cinder", + "password": "cinder" + } + }, + "network_mapping": { + "public_network": "", + "cluster_network": "" + }, + "ceph_config": { + "global_config": { + "osd_pool_pg_num": "1024", + "osd_pool_pgp_num": "1024", + "osd_pool_size": "3" + }, + "osd_config": { + "journal_size": "10000", + "op_threads": 10 + } + } + } +} \ No newline at end of file diff --git a/app/data/sample_machine_uploadfile.txt b/app/data/sample_machine_uploadfile.txt new file mode 100644 index 0000000..677f9bd --- /dev/null +++ b/app/data/sample_machine_uploadfile.txt @@ -0,0 +1,5 @@ +00:01:02:03:04:05,8,127.0.0.1 +00:01:02:03:04:06,8,127.0.0.1 +00:01:02:03:04:07,8,127.0.0.1 +00:01:02:03:04:08,8,127.0.0.1 +00:01:02:03:04:09,8,127.0.0.1 diff --git a/app/data/sample_switch_uploadfile.txt b/app/data/sample_switch_uploadfile.txt new file mode 100644 index 0000000..5277ccc --- /dev/null +++ b/app/data/sample_switch_uploadfile.txt @@ -0,0 +1 @@ +127.0.0.1,huawei,2c,community diff --git a/app/data/wizard_steps.json b/app/data/wizard_steps.json index fb9c92d..413b180 100644 --- a/app/data/wizard_steps.json +++ b/app/data/wizard_steps.json @@ -4,56 +4,56 @@ "name": "sv_selection", "title": "Server Selection", "state": "active", - "template": "src/app/wizard/server_selection.tpl.html", + "template": "src/app/partials/server_selection.tpl.html", "description": "Select the servers you want to use for your target system(s)" }, { "id": 2, "name": "os_global", "title": "OS Global Config", "state": "", - "template": "src/app/wizard/global.tpl.html", + "template": "src/app/partials/global.tpl.html", "description": "" }, { "id": 3, - "name": "network", - "title": "Network", - "state": "", - "template": "src/app/wizard/network.tpl.html", - "description": "" - }, { - "id": 4, "name": "partition", "title": "Partition", "state": "", - "template": "src/app/wizard/partition.tpl.html", + "template": "src/app/partials/partition.tpl.html", + "description": "" + }, { + "id": 4, + "name": "network", + "title": "Physical Network", + "state": "", + "template": "src/app/partials/network.tpl.html", "description": "" }, { "id": 5, - "name": "package_config", - "title": "Target System Config", + "name": "network_mapping", + "title": "Virtual Network", "state": "", - "template": "src/app/wizard/package_config.tpl.html", + "template": "src/app/partials/network_mapping.tpl.html", "description": "" }, { "id": 6, - "name": "role_assign", - "title": "Role Assignment", + "name": "package_config", + "title": "System Credentials", "state": "", - "template": "src/app/wizard/role_assignment.tpl.html", + "template": "src/app/partials/package_config.tpl.html", "description": "" }, { "id": 7, - "name": "network_mapping", - "title": "Network Mapping", + "name": "role_assign", + "title": "Role Assignment", "state": "", - "template": "src/app/wizard/network_mapping.tpl.html", + "template": "src/app/partials/role_assignment.tpl.html", "description": "" }, { "id": 8, "name": "review", "title": "Review", "state": "", - "template": "src/app/wizard/review.tpl.html", + "template": "src/app/partials/review.tpl.html", "description": "Click a section title to navigate back to that page." }], "os": [{ @@ -61,35 +61,35 @@ "name": "sv_selection", "title": "Server Selection", "state": "active", - "template": "src/app/wizard/server_selection.tpl.html", + "template": "src/app/partials/server_selection.tpl.html", "description": "Select the servers you want to use for your targer system(s)" }, { "id": 2, "name": "os_global", "title": "OS Global Config", "state": "", - "template": "src/app/wizard/global.tpl.html", + "template": "src/app/partials/global.tpl.html", "description": "" }, { "id": 3, "name": "network", "title": "Network", "state": "", - "template": "src/app/wizard/network.tpl.html", + "template": "src/app/partials/network.tpl.html", "description": "" }, { "id": 4, "name": "partition", "title": "Partition", "state": "", - "template": "src/app/wizard/partition.tpl.html", + "template": "src/app/partials/partition.tpl.html", "description": "" }, { "id": 5, "name": "review", "title": "Review", "state": "", - "template": "src/app/wizard/review.tpl.html", + "template": "src/app/partials/review.tpl.html", "description": "Click a section title to navigate back to that page." }], "ts": [{ diff --git a/app/dboards/.gitignore b/app/dboards/.gitignore deleted file mode 100644 index 6e77adf..0000000 --- a/app/dboards/.gitignore +++ /dev/null @@ -1,12 +0,0 @@ -node_modules -.aws-config.json -dist - -# locally required config files -web.config -config.js - -# Editor junk -*.sublime-workspace -*.swp -.idea diff --git a/app/dboards/.jscs.json b/app/dboards/.jscs.json deleted file mode 100644 index dcf694d..0000000 --- a/app/dboards/.jscs.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "disallowImplicitTypeConversion": ["string"], - "disallowKeywords": ["with"], - "disallowMultipleLineBreaks": true, - "disallowMixedSpacesAndTabs": true, - "disallowTrailingWhitespace": true, - "requireSpacesInFunctionExpression": { - "beforeOpeningCurlyBrace": true - }, - "disallowSpacesInsideArrayBrackets": true, - "disallowSpacesInsideParentheses": true, - "validateIndentation": 2 -} \ No newline at end of file diff --git a/app/dboards/.jshintrc b/app/dboards/.jshintrc deleted file mode 100644 index e8f044e..0000000 --- a/app/dboards/.jshintrc +++ /dev/null @@ -1,35 +0,0 @@ -{ - "browser": true, - - "bitwise":false, - "curly": true, - "eqnull": true, - "globalstrict": true, - "devel": true, - "eqeqeq": true, - "forin": false, - "immed": true, - "supernew": true, - "expr": true, - "indent": 2, - "latedef": true, - "newcap": true, - "noarg": true, - "noempty": true, - "undef": true, - "boss": true, - "trailing": true, - "laxbreak": true, - "laxcomma": true, - "sub": true, - "unused": true, - "maxdepth": 5, - "maxlen": 140, - - "globals": { - "define": true, - "require": true, - "Chromath": false, - "setImmediate": true - } -} \ No newline at end of file diff --git a/app/dboards/.travis.yml b/app/dboards/.travis.yml deleted file mode 100644 index 0ce3be2..0000000 --- a/app/dboards/.travis.yml +++ /dev/null @@ -1,5 +0,0 @@ -language: node_js -node_js: - - "0.10" -before_script: - - npm install -g grunt-cli \ No newline at end of file diff --git a/app/dboards/CHANGELOG.md b/app/dboards/CHANGELOG.md deleted file mode 100644 index 567c447..0000000 --- a/app/dboards/CHANGELOG.md +++ /dev/null @@ -1,217 +0,0 @@ -vNext - -**Changes** -- Use unix epoch for Graphite from/to for absolute time ranges (Closes #536) - -# 1.6.1 (2014-06-24) - -**New features or improvements** -- Ability to set y min/max for right y-axis (RR #519, Closes #360) - thx @acedrew - -**Fixes** - -- Fixes regex InfluxDB queries intoduced in 1.6.0 (PR #500) -- Bug in when using % sign in legends (aliases), fixed by removing url decoding of metric names (Fixes #506) -- Series names and column name typeahead cache fix (Fixes #522) -- Fixed influxdb issue with raw query that caused wrong value column detection (Fixes #504) -- Default property that marks which datasource is default in config.js is now optional (Fixes #526) -- Auto-refresh caused 2 refreshes (and hence mulitple queries) each time (at least in firefox) (Fixes #342) - -# 1.6.0 (2014-06-16) - -#### New features or improvements -- New Y-axis formater for metric values that represent seconds (Issue #427) - thx @jippi -- Allow special characters in serie names (influxdb datasource), PR #390 - thx @majst01 -- Refactoring of filterSrv (Issue #428), thx @Tetha -- New config for playlist feature. Set playlist_timespan to set default playlist interval (Issue #445) - thx @rmca -- New graphite function definition added isNonNull (PR #461), - thx @tmonk42 -- New InfluxDB function difference add to function dropdown (PR #455) -- Added parameter to keepLastValue graphite function definition (default 100), Closes #459 -- improved asset (css/js) build pipeline, added revision to css and js. Will remove issues related - to the browser cache when upgrading grafana and improve load performance (Fixes #418) -- Partial support for url encoded metrics when using Graphite datasource (PR #327) - thx @axe-felix -- Improvement to InfluxDB query editor and function/value column selection (Issue #473) -- Initial support for filtering (templated queries) for InfluxDB (PR #375) - thx @mavimo -- Row editing and adding new panel is now a lot quicker and easier with the new row menu (Issue #475) -- New datasource! Initial support for OpenTSDB (PR #211) - thx @mpage -- Improvement and polish to the OpenTSDB query editor (Issue #492) -- Influxdb group by support (Issue #441) thx @piis3 - - -#### Changes -- Graphite panel is now renamed graph (Existing dashboards will still work) -- Add panel icon and Row edit button is replaced by the Row edit menu (Issue #475) -- New graphs now have a default empty query -- Add Row button now creates a row with default height of 250px (no longer opens dashboard settings modal) -- Clean up of config.sample.js, graphiteUrl removed (still works, but depricated, removed in future) - Use datasources config instead. panel_names removed from config.js. Use plugins.panels to add custom panels - -#### Fixes -- Graphite query lexer change, can now handle regex parameters for aliasSub function (Fixes #126) -- Filter option loading when having muliple nested filters now works better. - Options are now reloaded correctly and there are no multiple renders/refresh inbetween (#447), - After an option is changed and a nested template param is also reloaded, if the current value - exists after the options are reloaded the current selected value is kept (Closes #447, Closes #412) -- Legend Current value did not display when value was zero, Fixes #460 -- Fix to series toggling bug that caused annotations to be hidden when toggling (hiding) series. Fixes #328 -- Fix for graphite function selection menu that some times draws outside screen. It now displays upward (Fixes #293) -- Fix for exclusive series toggling (hold down CTRL, SHIFT or META key) and left click a series for exclusive toggling - CTRL does not work on MAC OSX but SHIFT or META should (depending on browser) (Closes #350, Fixes #472) - -# 1.5.4 (2014-05-13) -### New features and improvements -- InfluxDB enhancement: support for multiple hosts (with retries) and raw queries (Issue #318, thx @toddboom) -- Added rounding for graphites from and to time range filters - for very short absolute ranges (Issue #320) -- Increased resolution for graphite datapoints (maxDataPoints), now equal to panel pixel width. (Closes #5) -- Improvement to influxdb query editor, can now add where clause and alias (Issue #331, thanks @mavimo) -- New config setting for graphite datasource to control if json render request is POST or GET (Issue #345) -- Unsaved changes warning feature (Issue #324) -- Improvement to series toggling, CTRL+MouseClick on series name will now hide all others (Issue #350) - -### Changes -- Graph default setting for Y-Min changed from zero to auto scalling (will not effect existing dashboards). (Issue #386) - thx @kamaradclimber - -### Fixes -- Fixes to filters and "All" option. It now never uses "*" as value, but all options in a {node1, node2, node3} expression (Issue #228, #359) -- Fix for InfluxDB query generation with columns containing dots or dashes (Issue #369, #348) - Thanks to @jbripley - - -# 1.5.3 (2014-04-17) -- Add support for async scripted dashboards (Issue #274) -- Text panel now accepts html (for links to other dashboards, etc) (Issue #236) -- Fix for Text panel, now changes take effect directly (Issue #251) -- Fix when adding functions without params that did not cause graph to update (Issue #267) -- Graphite errors are now much easier to see and troubleshoot with the new inspector (Issue #265) -- Use influxdb aliases to distinguish between multiple columns (Issue #283) -- Correction to ms axis formater, now formats days correctly. (Issue #189) -- Css fix for Firefox and using top menu dropdowns in panel fullscren / edit mode (Issue #106) -- Browser page title is now Grafana - {{dashboard title}} (Issue #294) -- Disable auto refresh zooming in (every time you change to an absolute time range), refresh will be restored when you change time range back to relative (Issue #282) -- More graphite functions - -# 1.5.2 (2014-03-24) -### New Features and improvements -- Support for second optional params for functions like aliasByNode (Issue #167). Read the wiki on the [Function Editor](https://github.com/torkelo/grafana/wiki/Graphite-Function-Editor) for more info. -- More functions added to InfluxDB query editor (Issue #218) -- Filters can now be used inside other filters (templated segments) (Issue #128) -- More graphite functions added - -### Fixes -- Float arguments now work for functions like scale (Issue #223) -- Fix for graphite function editor, the graph & target was not updated after adding a function and leaving default params as is #191 - -The zip files now contains a sub folder with project name and version prefix. (Issue #209) - -# 1.5.1 (2014-03-10) -### Fixes -- maxDataPoints must be an integer #184 (thanks @frejsoya for fixing this) - -For people who are find Grafana slow for large time spans or high resolution metrics. This is most likely due to graphite returning a large number of datapoints. The maxDataPoints parameter solves this issue. For maxDataPoints to work you need to run the latest graphite-web (some builds of 0.9.12 does not include this feature). - -Read this for more info: -[Performance for large time spans](https://github.com/torkelo/grafana/wiki/Performance-for-large-time-spans) - -# 1.5.0 (2014-03-09) -### New Features and improvements -- New function editor [video demo](http://youtu.be/I90WHRwE1ZM) (Issue #178) -- Links to function documentation from function editor (Issue #3) -- Reorder functions (Issue #130) -- [Initial support for InfluxDB](https://github.com/torkelo/grafana/wiki/InfluxDB) as metric datasource (#103), need feedback! -- [Dashboard playlist](https://github.com/torkelo/grafana/wiki/Dashboard-playlist) (Issue #36) -- When adding aliasByNode smartly set node number (Issue #175) -- Support graphite identifiers with embedded colons (Issue #173) -- Typeahead & autocomplete when adding new function (Issue #164) -- More graphite function definitions -- Make "ms" axis format include hour, day, weeks, month and year (Issue #149) -- Microsecond axis format (Issue #146) -- Specify template paramaters in URL (Issue #123) - -### Fixes -- Basic Auth fix (Issue #152) -- Fix to annotations with graphite source & null values (Issue #138) - -# 1.4.0 (2014-02-21) -### New Features -- #44 Annotations! Required a lot of work to get right. Read wiki article for more info. Supported annotations data sources are graphite metrics and graphite events. Support for more will be added in the future! -- #35 Support for multiple graphite servers! (Read wiki article for more) -- #116 Back to dashboard link in top menu to easily exist full screen / edit mode. -- #114, #97 Legend values now use the same y axes formatter -- #77 Improvements and polish to the light theme - -### Changes -- #98 Stack is no longer by default turned on in graph display settings. -- Hide controls (Ctrl+h) now hides the sub menu row (where filtering, and annotations are). So if you had filtering enabled and hide controls enabled you will not see the filtering sub menu. - -### Fixes: -- #94 Fix for bug that caused dashboard settings to sometimes not contain timepicker tab. -- #110 Graph with many many metrics caused legend to push down graph editor below screen. You can now scroll in edit mode & full screen mode for graphs with lots of series & legends. -- #104 Improvement to graphite target editor, select wildcard now gives you a "select metric" link for the next node. -- #105 Added zero as a possible node value in groupByAlias function - -# 1.3.0 (2014-02-13) -### New features or improvements -- #86 Dashboard tags and search (see wiki article for details) -- #54 Enhancement to filter / template. "Include All" improvement -- #82 Dashboard search result sorted in alphabetical order - -### Fixes -- #91 Custom date selector is one day behind -- #89 Filter / template does not work after switching dashboard -- #88 Closed / Minimized row css bug -- #85 Added all parameters to summarize function -- #83 Stack as percent should now work a lot better! - -# 1.2.0 (2014-02-10) -### New features -- #70 Grid Thresholds (warning and error regions or lines in graph) -- #72 Added an example of a scripted dashboard and a short wiki article documenting scripted dashboards. - -### Fixes -- #81 Grid min/max values are ignored bug -- #80 "stacked as percent" graphs should always use "max" value of 100 bug -- #73 Left Y format change did not work -- #42 Fixes to grid min/max auto scaling -- #69 Fixes to lexer/parser for metrics segments like "10-20". -- #67 Allow decimal input for scale function -- #68 Bug when trying to open dashboard while in edit mode - -# 1.1.0 (2014-02-06) -### New features: - -- #22 Support for native graphite png renderer, does not support click and select zoom yet -- #60 Support for legend values (cactiStyle, min, max, current, total, avg). The options for these are found in the new "Axes & Grid" tab for now. -- #62 There is now a "New" button in the search/open dashboard view to quickly open a clean empty dashboard. -- #55 Basic auth is now supported for elastic search as well -- some new function definitions added (will focus more on this for next release). - -### Fixes -- #45 zero values from graphite was handled as null. -- #63 Kibana / Grafana on same host would use same localStorage keys, now fixed -- #46 Impossible to edit graph without a name fixed. -- #24 fix for dashboard search when elastic search is configured to disable _all field. -- #38 Improvement to lexer / parser to support pure numeric literals in metric segments - -Thanks to everyone who contributed fixes and provided feedback :+1: - -# 1.0.4 (2014-01-24) -- Fixes #28 - Relative time range caused 500 graphite error in some cases (thx rsommer for the fix) - -# 1.0.3 (2014-01-23) -- #9 Add Y-axis format for milliseconds -- #16 Add support for Basic Auth (use http://username:password@yourgraphitedomain.com) -- #13 Relative time ranges now uses relative time ranges when issuing graphite query - -# 1.0.2 (2014-01-21) -- Fixes #12, should now work ok without ElasticSearch - -# 1.0.1 (2014-01-21) -- Resize fix -- Improvements to drag & drop -- Added a few graphite function definitions -- Fixed duplicate panel bug -- Updated default dashboard with welcome message and randomWalk graph - -# 1.0.0 (2014-01-19) - -First public release diff --git a/app/dboards/CONTRIBUTING.md b/app/dboards/CONTRIBUTING.md deleted file mode 100644 index 405be40..0000000 --- a/app/dboards/CONTRIBUTING.md +++ /dev/null @@ -1,14 +0,0 @@ -If you have any idea for an improvement or found a bug do not hesitate to open an issue. -And if you have time clone this repo and submit a pull request and help me make Grafana the -kickass metrics & devops dashboard we all dream about! - -Prerequisites: - - Nodejs (for jshint & grunt & development server) - -Clone repository: - - npm install - grunt server (starts development web server in src folder) - grunt (runs jshint and less -> css compilation) - -Please remember to run grunt before doing pull request to verify that your code passes all the jshint validations. diff --git a/app/dboards/Gruntfile.js b/app/dboards/Gruntfile.js deleted file mode 100644 index bcc542e..0000000 --- a/app/dboards/Gruntfile.js +++ /dev/null @@ -1,38 +0,0 @@ -/* jshint node:true */ -'use strict'; -module.exports = function (grunt) { - - var config = { - pkg: grunt.file.readJSON('package.json'), - baseDir: '.', - srcDir: 'src', - destDir: 'dist', - tempDir: 'tmp', - docsDir: 'docs/' - }; - - // load plugins - require('load-grunt-tasks')(grunt); - - // load task definitions - grunt.loadTasks('tasks'); - - // Utility function to load plugin settings into config - function loadConfig(config,path) { - require('glob').sync('*', {cwd: path}).forEach(function(option) { - var key = option.replace(/\.js$/,''); - // If key already exists, extend it. It is your responsibility to avoid naming collisions - config[key] = config[key] || {}; - grunt.util._.extend(config[key], require(path + option)(config,grunt)); - }); - // technically not required - return config; - } - - // Merge that object with what with whatever we have here - loadConfig(config,'./tasks/options/'); - - // pass the config to grunt - grunt.initConfig(config); - -}; \ No newline at end of file diff --git a/app/dboards/LICENSE.md b/app/dboards/LICENSE.md deleted file mode 100644 index 1d66924..0000000 --- a/app/dboards/LICENSE.md +++ /dev/null @@ -1,14 +0,0 @@ -Copyright 2012-2013 Elasticsearch BV, Torkel Ödegaard - -Licensed under the Apache License, Version 2.0 (the "License"); you -may not use this file except in compliance with the License. You may -obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -implied. See the License for the specific language governing -permissions and limitations under the License. - diff --git a/app/dboards/NOTICE.md b/app/dboards/NOTICE.md deleted file mode 100644 index 171332f..0000000 --- a/app/dboards/NOTICE.md +++ /dev/null @@ -1,16 +0,0 @@ - -This software is based on Kibana: -======================================== -Copyright 2012-2013 Elasticsearch BV - -Licensed under the Apache License, Version 2.0 (the "License"); you -may not use this file except in compliance with the License. You may -obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -implied. See the License for the specific language governing -permissions and limitations under the License. diff --git a/app/dboards/README.md b/app/dboards/README.md deleted file mode 100644 index 72062b0..0000000 --- a/app/dboards/README.md +++ /dev/null @@ -1,131 +0,0 @@ -[Grafana](http://grafana.org) [![Build Status](https://api.travis-ci.org/grafana/grafana.png)](https://travis-ci.org/grafana/grafana) -================= -A beautiful, easy to use and feature rich Graphite dashboard replacement and graph editor. Visit [grafana.org](http://grafana.org) for screenshots, videos and feature descriptions. - -![](http://grafana.org/assets/img/edit_dashboards.png) - -## Features -### Graphite Target Editor -- Graphite target expression parser -- Quickly add / edit / remove function ([video demo](http://youtu.be/I90WHRwE1ZM)) -- Function parameters can be easily changed -- Quickly navigate graphite metric structure -- Templating -- Integrated links to function documentation -- Rearrange function order -- Native Graphite PNG render support - -### Graphing -- Fast rendering, even over large timespans. -- Click and drag to zoom. -- Multiple Y-axis. -- Bars, Lines, Points. -- Smart Y-axis formating -- Series toggles & color selector -- Axis labels -- Grid thresholds, axis labels -- [Annotations] (https://github.com/grafana/grafana/wiki/Annotations) - -### Dashboards -- Create and edit dashboards -- Drag and drop graphs to rearrange -- Set column spans and row heights -- Save & [search dashboards](https://github.com/grafana/grafana/wiki/Search-features) -- Import & export dashboard (json file) -- Import dashboard from Graphite -- Templating -- [Scripted dashboards](https://github.com/grafana/grafana/wiki/Scripted-dashboards) (generate from js script and url parameters) -- Flexible [time range controls](https://github.com/grafana/grafana/wiki/Time-range-controls) -- [Dashboard playlists](https://github.com/grafana/grafana/wiki/Dashboard-playlist) - -### InfluxDB -- [Use InfluxDB](https://github.com/grafana/grafana/wiki/InfluxDB) as metric datasource - -# Requirements -Grafana is very easy to install. It is a client side web app with no backend. Any webserver will do. Optionally you will need ElasticSearch if you want to be able to save and load dashboards quickly instead of json files or local storage. - -# Installation -- Download and extract the [latest release](https://github.com/grafana/grafana/releases). -- Rename `config.sample.js` to `config.js`, then change `graphiteUrl` and `elasticsearch` to point to the correct urls. The urls entered here must be reachable by your browser. -- Point your browser to the installation. - -To run from master: -- Clone this repository -- Start a web server in src folder -- Or create a optimized & minified build: - - npm install (requires nodejs) - - grunt build (requires grunt-cli) - -If you use ansible for provisioning and deployment [ansible-grafana](https://github.com/bobrik/ansible-grafana) should get you started. - -When you have Grafana up an running, read the [Getting started](https://github.com/grafana/grafana/wiki/Getting-started) guide for -an introduction on how to use Grafana and/or watch [this video](https://www.youtube.com/watch?v=OUvJamHeMpw) for a guide in creating a new dashboard and for creating -templated dashboards. - -# Graphite server config -If you haven't used an alternative dashboard for graphite before you need to enable cross-domain origin request. For Apache 2.x: -``` -Header set Access-Control-Allow-Origin "*" -Header set Access-Control-Allow-Methods "GET, OPTIONS" -Header set Access-Control-Allow-Headers "origin, authorization, accept" -``` -Note that using "\*" leaves your graphite instance quite open so you might want to consider using "http://my.graphite-dom.ain" in place of "\*" - -Here is the same thing, in nginx format: -``` -add_header "Access-Control-Allow-Origin" "*"; -add_header "Access-Control-Allow-Credentials" "true"; -add_header "Access-Control-Allow-Methods" "GET, OPTIONS"; -add_header "Access-Control-Allow-Headers" "Authorization, origin, accept"; -``` -If your Graphite web is protected by basic authentication, you have to enable the HTTP verb OPTIONS, origin -(no wildcards are allowed in this case) and add Access-Control-Allow-Credentials. This looks like the following for Apache: -``` -Header set Access-Control-Allow-Origin "http://mygrafana.com:5656" -Header set Access-Control-Allow-Credentials true - - - AuthName "graphs restricted" - AuthType Basic - AuthUserFile /etc/apache2/htpasswd - - require valid-user - - -``` -And in nginx: -``` -auth_basic "Restricted"; -auth_basic_user_file /path/to/my/htpasswd/file; -if ($http_origin ~* (https?://[^/]*\.somedomain\.com(:[0-9]+)?)) { #Test if request is from allowed domain, you can use multiple if - set $cors "true"; #statements to allow multiple domains, simply setting $cors to true in each one. -} -if ($cors = 'true') { - add_header Access-Control-Allow-Origin $http_origin; #this mirrors back whatever domain the request came from as authorized, as - add_header "Access-Control-Allow-Credentials" "true"; #as long as it matches one of your if statements - add_header "Access-Control-Allow-Methods" "GET, OPTIONS"; - add_header "Access-Control-Allow-Headers" "Authorization, origin, accept"; -} -``` -# Roadmap -- Improve and refine the target parser and editing -- Improve graphite import feature -- Refine and simplify common tasks -- More panel types (not just graphs) -- Use elasticsearch to search for metrics -- Improve template support -- Annotate graph by querying ElasticSearch for events (or other event sources) - -# Contribute -If you have any idea for an improvement or found a bug do not hesitate to open an issue. And if you have time clone this repo and submit a pull request and help me make Grafana the kickass metrics & devops dashboard we all dream about! - -Clone repository: -- npm install -- grunt server (starts development web server in src folder) -- grunt (runs jshint and less -> css compilation) - -# Notice -This software is based on the great log dashboard [kibana](https://github.com/elasticsearch/kibana). - -# License -Grafana is distributed under Apache 2.0 License. diff --git a/app/dboards/grafana.sublime-project b/app/dboards/grafana.sublime-project deleted file mode 100644 index 127807d..0000000 --- a/app/dboards/grafana.sublime-project +++ /dev/null @@ -1,18 +0,0 @@ -{ - "folders": - [ - { - "follow_symlinks": true, - "path": ".", - "folder_exclude_patterns": [ - "node_modules" - ] - } - ], - "settings": - { - "tab_size": 2, - "translate_tabs_to_spaces": true, - "trim_trailing_white_space_on_save": true - } -} diff --git a/app/dboards/latest.json b/app/dboards/latest.json deleted file mode 100644 index 458f3ba..0000000 --- a/app/dboards/latest.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "version": "1.6.0", - "url": "http://grafanarel.s3.amazonaws.com/grafana-1.6.0.tar.gz" -} \ No newline at end of file diff --git a/app/dboards/package.json b/app/dboards/package.json deleted file mode 100644 index cb46712..0000000 --- a/app/dboards/package.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "author": { - "name": "Torkel Ödegaard", - "company": "Coding Instinct AB" - }, - "name": "grafana", - "version": "1.6.1", - "repository": { - "type": "git", - "url": "http://github.com/torkelo/grafana.git" - }, - "devDependencies": { - "rjs-build-analysis": "0.0.3", - "grunt": "~0.4.0", - "grunt-ngmin": "0.0.3", - "grunt-contrib-less": "~0.7.0", - "grunt-contrib-copy": "~0.4.1", - "grunt-git-describe": "~2.3.2", - "grunt-contrib-clean": "~0.5.0", - "grunt-contrib-cssmin": "~0.6.1", - "grunt-contrib-jshint": "~0.10.0", - "grunt-string-replace": "~0.2.4", - "grunt-contrib-htmlmin": "~0.1.3", - "grunt-contrib-requirejs": "~0.4.1", - "grunt-angular-templates": "^0.5.5", - "grunt-contrib-compress": "~0.5.2", - "grunt-contrib-uglify": "~0.2.4", - "load-grunt-tasks": "~0.2.0", - "glob": "~3.2.7", - "grunt-contrib-connect": "~0.5.0", - "mocha": "~1.16.1", - "expect.js": "~0.2.0", - "karma-script-launcher": "~0.1.0", - "karma-firefox-launcher": "~0.1.3", - "karma-chrome-launcher": "~0.1.4", - "karma-html2js-preprocessor": "~0.1.0", - "karma-jasmine": "~0.2.2", - "requirejs": "~2.1.9", - "karma-requirejs": "~0.2.1", - "karma-coffee-preprocessor": "~0.1.2", - "karma-phantomjs-launcher": "~0.1.1", - "karma": "~0.12.16", - "grunt-karma": "~0.8.3", - "karma-mocha": "~0.1.4", - "karma-expect": "~1.1.0", - "grunt-cli": "~0.1.13", - "jshint-stylish": "~0.1.5", - "grunt-contrib-concat": "^0.4.0", - "grunt-usemin": "^2.1.1", - "grunt-filerev": "^0.2.1" - }, - "engines": { - "node": "0.10.x", - "npm": "1.2.x" - }, - "scripts": { - "test": "grunt test" - }, - "license": "Apache License", - "dependencies": { - "grunt-jscs-checker": "^0.4.4" - } -} diff --git a/app/dboards/sample/apache_ldap.conf b/app/dboards/sample/apache_ldap.conf deleted file mode 100644 index f7df159..0000000 --- a/app/dboards/sample/apache_ldap.conf +++ /dev/null @@ -1,61 +0,0 @@ -# Courtesy of https://github.com/sgzijl -# config.js includes elasticsearch: "https://"+window.location.hostname+":443", - - - ServerName your.domain.tld - RewriteEngine On - RewriteCond %{HTTPS} off - RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} - - - - ServerName your.domain.tld - - SSLEngine on - SSLCertificateFile /path/to/public.crt - SSLCertificateKeyFile /path/to/private.key - - DocumentRoot /path/to/kibana3 - - Allow from all - Options -Multiviews - - - LogLevel debug - ErrorLog /path/to/logs/error_log - CustomLog /path/to/logs/access_log combined - - # Set global proxy timeouts - - ProxySet connectiontimeout=5 timeout=90 - - - # Proxy for _aliases and .*/_search - - ProxyPassMatch http://127.0.0.1:9200/$1 - ProxyPassReverse http://127.0.0.1:9200/$1 - - - # Proxy for kibana-int/{dashboard,temp} stuff (if you don't want auth on /, then you will want these to be protected) - - ProxyPassMatch http://127.0.0.1:9200/$1$2 - ProxyPassReverse http://127.0.0.1:9200/$1$2 - - - # Optional disable auth for a src IP (eg: your monitoring host or subnet) - - Allow from 5.6.7.8 - Deny from all - Satisfy any - - AuthLDAPBindDN "CN=_ldapbinduser,OU=Users,DC=example,DC=com" - AuthLDAPBindPassword "ldapbindpass" - AuthLDAPURL "ldaps://ldap01.example.com ldap02.example.com/OU=Users,DC=example,DC=com?sAMAccountName?sub?(objectClass=*)" - AuthType Basic - AuthBasicProvider ldap - AuthName "Please authenticate for Example dot com" - AuthLDAPGroupAttributeIsDN on - require valid-user - - - diff --git a/app/dboards/sample/lighttpd_basic.conf b/app/dboards/sample/lighttpd_basic.conf deleted file mode 100644 index 667a6ab..0000000 --- a/app/dboards/sample/lighttpd_basic.conf +++ /dev/null @@ -1,24 +0,0 @@ -$HTTP["host"] =~ "kibana" { - - server.document-root = "/var/ww/kibana/src" - auth.backend = "plain" - auth.backend.plain.userfile = "/etc/lighttpd/kibanapassword" - - index-file.names = ( "index.html", "index.htm" ) - - auth.require = ( "/" => ( - "method" => "basic", - "realm" => "Password Protected", - "require" => "valid-user" - ) - ) - - $HTTP["url"] =~ "^/kibana-int/(dashboard/|temp).*$" { - proxy.balance = "hash" - proxy.server = ( "" => ( ( "host" => "127.0.0.1", "port" => "9200" ) ) ) - } - $HTTP["url"] =~ "^.*/_(mapping|search|nodes|aliases)$" { - proxy.balance = "hash" - proxy.server = ( "" => ( ( "host" => "127.0.0.1", "port" => "9200" ) ) ) - } -} diff --git a/app/dboards/sample/nginx.conf b/app/dboards/sample/nginx.conf deleted file mode 100644 index b1e2f36..0000000 --- a/app/dboards/sample/nginx.conf +++ /dev/null @@ -1,60 +0,0 @@ -# -# Nginx proxy for Elasticsearch + Kibana -# -# In this setup, we are password protecting the saving of dashboards. You may -# wish to extend the password protection to all paths. -# -# Even though these paths are being called as the result of an ajax request, the -# browser will prompt for a username/password on the first request -# -# If you use this, you'll want to point config.js at http://FQDN:80/ instead of -# http://FQDN:9200 -# -server { - listen *:80 ; - - server_name kibana.myhost.org; - access_log /var/log/nginx/kibana.myhost.org.access.log; - - location / { - root /usr/share/kibana3; - index index.html index.htm; - } - - location ~ ^/_aliases$ { - proxy_pass http://127.0.0.1:9200; - proxy_read_timeout 90; - } - location ~ ^/_nodes$ { - proxy_pass http://127.0.0.1:9200; - proxy_read_timeout 90; - } - location ~ ^/.*/_search$ { - proxy_pass http://127.0.0.1:9200; - proxy_read_timeout 90; - } - location ~ ^/.*/_mapping$ { - proxy_pass http://127.0.0.1:9200; - proxy_read_timeout 90; - } - - # Password protected end points - location ~ ^/kibana-int/dashboard/.*$ { - proxy_pass http://127.0.0.1:9200; - proxy_read_timeout 90; - limit_except GET { - proxy_pass http://127.0.0.1:9200; - auth_basic "Restricted"; - auth_basic_user_file /etc/nginx/conf.d/kibana.myhost.org.htpasswd; - } - } - location ~ ^/kibana-int/temp.*$ { - proxy_pass http://127.0.0.1:9200; - proxy_read_timeout 90; - limit_except GET { - proxy_pass http://127.0.0.1:9200; - auth_basic "Restricted"; - auth_basic_user_file /etc/nginx/conf.d/kibana.myhost.org.htpasswd; - } - } -} diff --git a/app/dboards/sample/server.js b/app/dboards/sample/server.js deleted file mode 100644 index d976a48..0000000 --- a/app/dboards/sample/server.js +++ /dev/null @@ -1,244 +0,0 @@ -#!/usr/bin/env node - -var util = require('util'), - http = require('http'), - fs = require('fs'), - url = require('url'), - events = require('events'); - -var DEFAULT_PORT = 8000; - -function main(argv) { - new HttpServer({ - 'GET': createServlet(StaticServlet), - 'HEAD': createServlet(StaticServlet) - }).start(Number(argv[2]) || DEFAULT_PORT); -} - -function escapeHtml(value) { - return value.toString(). - replace('<', '<'). - replace('>', '>'). - replace('"', '"'); -} - -function createServlet(Class) { - var servlet = new Class(); - return servlet.handleRequest.bind(servlet); -} - -/** - * An Http server implementation that uses a map of methods to decide - * action routing. - * - * @param {Object} Map of method => Handler function - */ -function HttpServer(handlers) { - this.handlers = handlers; - this.server = http.createServer(this.handleRequest_.bind(this)); -} - -HttpServer.prototype.start = function(port) { - this.port = port; - this.server.listen(port); - util.puts('Http Server running at http://localhost:' + port + '/'); -}; - -HttpServer.prototype.parseUrl_ = function(urlString) { - var parsed = url.parse(urlString); - parsed.pathname = url.resolve('/', parsed.pathname); - return url.parse(url.format(parsed), true); -}; - -HttpServer.prototype.handleRequest_ = function(req, res) { - var logEntry = req.method + ' ' + req.url; - if (req.headers['user-agent']) { - logEntry += ' ' + req.headers['user-agent']; - } - util.puts(logEntry); - req.url = this.parseUrl_(req.url); - var handler = this.handlers[req.method]; - if (!handler) { - res.writeHead(501); - res.end(); - } else { - handler.call(this, req, res); - } -}; - -/** - * Handles static content. - */ -function StaticServlet() {} - -StaticServlet.MimeMap = { - 'txt': 'text/plain', - 'html': 'text/html', - 'css': 'text/css', - 'xml': 'application/xml', - 'json': 'application/json', - 'js': 'application/javascript', - 'jpg': 'image/jpeg', - 'jpeg': 'image/jpeg', - 'gif': 'image/gif', - 'png': 'image/png', -  'svg': 'image/svg+xml' -}; - -StaticServlet.prototype.handleRequest = function(req, res) { - var self = this; - var path = ('../src/' + req.url.pathname).replace('//','/').replace(/%(..)/g, function(match, hex){ - return String.fromCharCode(parseInt(hex, 16)); - }); - var parts = path.split('/'); - if (parts[parts.length-1].charAt(0) === '.') - return self.sendForbidden_(req, res, path); - fs.stat(path, function(err, stat) { - if (err) - return self.sendMissing_(req, res, path); - if (stat.isDirectory()) - return self.sendDirectory_(req, res, path); - return self.sendFile_(req, res, path); - }); -} - -StaticServlet.prototype.sendError_ = function(req, res, error) { - res.writeHead(500, { - 'Content-Type': 'text/html' - }); - res.write('\n'); - res.write('Internal Server Error\n'); - res.write('

    Internal Server Error

    '); - res.write('
    ' + escapeHtml(util.inspect(error)) + '
    '); - util.puts('500 Internal Server Error'); - util.puts(util.inspect(error)); -}; - -StaticServlet.prototype.sendMissing_ = function(req, res, path) { - path = path.substring(1); - res.writeHead(404, { - 'Content-Type': 'text/html' - }); - res.write('\n'); - res.write('404 Not Found\n'); - res.write('

    Not Found

    '); - res.write( - '

    The requested URL ' + - escapeHtml(path) + - ' was not found on this server.

    ' - ); - res.end(); - util.puts('404 Not Found: ' + path); -}; - -StaticServlet.prototype.sendForbidden_ = function(req, res, path) { - path = path.substring(1); - res.writeHead(403, { - 'Content-Type': 'text/html' - }); - res.write('\n'); - res.write('403 Forbidden\n'); - res.write('

    Forbidden

    '); - res.write( - '

    You do not have permission to access ' + - escapeHtml(path) + ' on this server.

    ' - ); - res.end(); - util.puts('403 Forbidden: ' + path); -}; - -StaticServlet.prototype.sendRedirect_ = function(req, res, redirectUrl) { - res.writeHead(301, { - 'Content-Type': 'text/html', - 'Location': redirectUrl - }); - res.write('\n'); - res.write('301 Moved Permanently\n'); - res.write('

    Moved Permanently

    '); - res.write( - '

    The document has moved here.

    ' - ); - res.end(); - util.puts('301 Moved Permanently: ' + redirectUrl); -}; - -StaticServlet.prototype.sendFile_ = function(req, res, path) { - var self = this; - var file = fs.createReadStream(path); - res.writeHead(200, { - 'Content-Type': StaticServlet. - MimeMap[path.split('.').pop()] || 'text/plain' - }); - if (req.method === 'HEAD') { - res.end(); - } else { - file.on('data', res.write.bind(res)); - file.on('close', function() { - res.end(); - }); - file.on('error', function(error) { - self.sendError_(req, res, error); - }); - } -}; - -StaticServlet.prototype.sendDirectory_ = function(req, res, path) { - var self = this; - if (path.match(/[^\/]$/)) { - req.url.pathname += '/'; - var redirectUrl = url.format(url.parse(url.format(req.url))); - return self.sendRedirect_(req, res, redirectUrl); - } - fs.readdir(path, function(err, files) { - if (err) - return self.sendError_(req, res, error); - - if (!files.length) - return self.writeDirectoryIndex_(req, res, path, []); - - var remaining = files.length; - files.forEach(function(fileName, index) { - fs.stat(path + '/' + fileName, function(err, stat) { - if (err) - return self.sendError_(req, res, err); - if (stat.isDirectory()) { - files[index] = fileName + '/'; - } - if (!(--remaining)) - return self.writeDirectoryIndex_(req, res, path, files); - }); - }); - }); -}; - -StaticServlet.prototype.writeDirectoryIndex_ = function(req, res, path, files) { - path = path.substring(1); - res.writeHead(200, { - 'Content-Type': 'text/html' - }); - if (req.method === 'HEAD') { - res.end(); - return; - } - res.write('\n'); - res.write('' + escapeHtml(path) + '\n'); - res.write('\n'); - res.write('

    Directory: ' + escapeHtml(path) + '

    '); - res.write('
      '); - files.forEach(function(fileName) { - if (fileName.charAt(0) !== '.') { - res.write('
    1. ' + - escapeHtml(fileName) + '
    2. '); - } - }); - res.write('
    '); - res.end(); -}; - -// Must be last, -main(process.argv); diff --git a/app/dboards/src/app/app.js b/app/dboards/src/app/app.js deleted file mode 100644 index a5fb868..0000000 --- a/app/dboards/src/app/app.js +++ /dev/null @@ -1,149 +0,0 @@ -/** - * main app level module - */ -define([ - 'angular', - 'jquery', - 'underscore', - 'require', - 'elasticjs', - 'bootstrap', - 'angular-sanitize', - 'angular-strap', - 'angular-dragdrop', - 'extend-jquery', - 'bindonce' -], -function (angular, $, _, appLevelRequire) { - - "use strict"; - - var app = angular.module('kibana', []), - // we will keep a reference to each module defined before boot, so that we can - // go back and allow it to define new features later. Once we boot, this will be false - pre_boot_modules = [], - // these are the functions that we need to call to register different - // features if we define them after boot time - register_fns = {}; - - // This stores the grafana version number - app.constant('grafanaVersion',"@grafanaVersion@"); - - // Use this for cache busting partials - app.constant('cacheBust',"cache-bust="+Date.now()); - - /** - * Tells the application to watch the module, once bootstraping has completed - * the modules controller, service, etc. functions will be overwritten to register directly - * with this application. - * @param {[type]} module [description] - * @return {[type]} [description] - */ - app.useModule = function (module) { - if (pre_boot_modules) { - pre_boot_modules.push(module); - } else { - _.extend(module, register_fns); - } - return module; - }; - - app.safeApply = function ($scope, fn) { - switch($scope.$$phase) { - case '$apply': - // $digest hasn't started, we should be good - $scope.$eval(fn); - break; - case '$digest': - // waiting to $apply the changes - setTimeout(function () { app.safeApply($scope, fn); }, 10); - break; - default: - // clear to begin an $apply $$phase - $scope.$apply(fn); - break; - } - }; - - app.config(function ($routeProvider, $controllerProvider, $compileProvider, $filterProvider, $provide) { - - $routeProvider - .when('/dashboard', { - templateUrl: 'app/partials/dashboard.html', - }) - .when('/dashboard/:kbnType/:kbnId', { - templateUrl: 'app/partials/dashboard.html', - }) - .when('/dashboard/:kbnType/:kbnId/:params', { - templateUrl: 'app/partials/dashboard.html' - }) - .otherwise({ - redirectTo: 'dashboard' - }); - - // this is how the internet told me to dynamically add modules :/ - register_fns.controller = $controllerProvider.register; - register_fns.directive = $compileProvider.directive; - register_fns.factory = $provide.factory; - register_fns.service = $provide.service; - register_fns.filter = $filterProvider.register; - }); - - var apps_deps = [ - 'elasticjs.service', - '$strap.directives', - 'ngSanitize', - 'ngDragDrop', - 'kibana', - 'pasvaz.bindonce' - ]; - - var module_types = ['controllers', 'directives', 'factories', 'services', 'services.dashboard', 'filters']; - - _.each(module_types, function (type) { - var module_name = 'kibana.'+type; - // create the module - app.useModule(angular.module(module_name, [])); - // push it into the apps dependencies - apps_deps.push(module_name); - }); - - // load the core components - require([ - 'controllers/all', - 'directives/all', - 'filters/all', - 'components/partials', - ], function () { - - // bootstrap the app - angular - .element(document) - .ready(function() { - $('body').attr('ng-controller', 'DashCtrl'); - angular.bootstrap(document, apps_deps) - .invoke(['$rootScope', function ($rootScope) { - _.each(pre_boot_modules, function (module) { - _.extend(module, register_fns); - }); - pre_boot_modules = false; - - $rootScope.requireContext = appLevelRequire; - $rootScope.require = function (deps, fn) { - var $scope = this; - $scope.requireContext(deps, function () { - var deps = _.toArray(arguments); - // Check that this is a valid scope. - if($scope.$id) { - $scope.$apply(function () { - fn.apply($scope, deps); - }); - } - }); - }; - }]); - }); - }); - - return app; -}); diff --git a/app/dboards/src/app/components/extend-jquery.js b/app/dboards/src/app/components/extend-jquery.js deleted file mode 100644 index 3e7e74b..0000000 --- a/app/dboards/src/app/components/extend-jquery.js +++ /dev/null @@ -1,47 +0,0 @@ -define(['jquery'], -function ($) { - 'use strict'; - - /** - * jQuery extensions - */ - var $win = $(window); - - $.fn.place_tt = (function () { - var defaults = { - offset: 5, - css: { - position : 'absolute', - top : -1000, - left : 0, - color : "#c8c8c8", - padding : '10px', - 'font-size': '11pt', - 'font-weight' : 200, - 'background-color': '#1f1f1f', - 'border-radius': '5px', - 'z-index': 9999 - } - }; - - return function (x, y, opts) { - opts = $.extend(true, {}, defaults, opts); - return this.each(function () { - var $tooltip = $(this), width, height; - - $tooltip.css(opts.css); - if (!$.contains(document.body, $tooltip[0])) { - $tooltip.appendTo(document.body); - } - - width = $tooltip.outerWidth(true); - height = $tooltip.outerHeight(true); - - $tooltip.css('left', x + opts.offset + width > $win.width() ? x - opts.offset - width : x + opts.offset); - $tooltip.css('top', y + opts.offset + height > $win.height() ? y - opts.offset - height : y + opts.offset); - }); - }; - })(); - - return $; -}); \ No newline at end of file diff --git a/app/dboards/src/app/components/kbn.js b/app/dboards/src/app/components/kbn.js deleted file mode 100644 index 67bab9f..0000000 --- a/app/dboards/src/app/components/kbn.js +++ /dev/null @@ -1,563 +0,0 @@ -define(['jquery','underscore','moment'], -function($, _, moment) { - 'use strict'; - - var kbn = {}; - - /** - * Calculate a graph interval - * - * from:: Date object containing the start time - * to:: Date object containing the finish time - * size:: Calculate to approximately this many bars - * user_interval:: User specified histogram interval - * - */ - kbn.calculate_interval = function(from,to,size,user_interval) { - if(_.isObject(from)) { - from = from.valueOf(); - } - if(_.isObject(to)) { - to = to.valueOf(); - } - return user_interval === 0 ? kbn.round_interval((to - from)/size) : user_interval; - }; - - kbn.round_interval = function(interval) { - switch (true) { - // 0.5s - case (interval <= 500): - return 100; // 0.1s - // 5s - case (interval <= 5000): - return 1000; // 1s - // 7.5s - case (interval <= 7500): - return 5000; // 5s - // 15s - case (interval <= 15000): - return 10000; // 10s - // 45s - case (interval <= 45000): - return 30000; // 30s - // 3m - case (interval <= 180000): - return 60000; // 1m - // 9m - case (interval <= 450000): - return 300000; // 5m - // 20m - case (interval <= 1200000): - return 600000; // 10m - // 45m - case (interval <= 2700000): - return 1800000; // 30m - // 2h - case (interval <= 7200000): - return 3600000; // 1h - // 6h - case (interval <= 21600000): - return 10800000; // 3h - // 24h - case (interval <= 86400000): - return 43200000; // 12h - // 48h - case (interval <= 172800000): - return 86400000; // 24h - // 1w - case (interval <= 604800000): - return 86400000; // 24h - // 3w - case (interval <= 1814400000): - return 604800000; // 1w - // 2y - case (interval < 3628800000): - return 2592000000; // 30d - default: - return 31536000000; // 1y - } - }; - - kbn.secondsToHms = function(seconds) { - var numyears = Math.floor(seconds / 31536000); - if(numyears){ - return numyears + 'y'; - } - var numdays = Math.floor((seconds % 31536000) / 86400); - if(numdays){ - return numdays + 'd'; - } - var numhours = Math.floor(((seconds % 31536000) % 86400) / 3600); - if(numhours){ - return numhours + 'h'; - } - var numminutes = Math.floor((((seconds % 31536000) % 86400) % 3600) / 60); - if(numminutes){ - return numminutes + 'm'; - } - var numseconds = (((seconds % 31536000) % 86400) % 3600) % 60; - if(numseconds){ - return numseconds + 's'; - } - return 'less then a second'; //'just now' //or other string you like; - }; - - kbn.to_percent = function(number,outof) { - return Math.floor((number/outof)*10000)/100 + "%"; - }; - - kbn.addslashes = function(str) { - str = str.replace(/\\/g, '\\\\'); - str = str.replace(/\'/g, '\\\''); - str = str.replace(/\"/g, '\\"'); - str = str.replace(/\0/g, '\\0'); - return str; - }; - - kbn.interval_regex = /(\d+(?:\.\d+)?)([Mwdhmsy])/; - - // histogram & trends - kbn.intervals_in_seconds = { - y: 31536000, - M: 2592000, - w: 604800, - d: 86400, - h: 3600, - m: 60, - s: 1 - }; - - kbn.describe_interval = function (string) { - var matches = string.match(kbn.interval_regex); - if (!matches || !_.has(kbn.intervals_in_seconds, matches[2])) { - throw new Error('Invalid interval string, expexcting a number followed by one of "Mwdhmsy"'); - } else { - return { - sec: kbn.intervals_in_seconds[matches[2]], - type: matches[2], - count: parseInt(matches[1], 10) - }; - } - }; - - kbn.interval_to_ms = function(string) { - var info = kbn.describe_interval(string); - return info.sec * 1000 * info.count; - }; - - kbn.interval_to_seconds = function (string) { - var info = kbn.describe_interval(string); - return info.sec * info.count; - }; - - // This should go away, moment.js can do this - kbn.time_ago = function(string) { - return new Date(new Date().getTime() - (kbn.interval_to_ms(string))); - }; - - /* This is a simplified version of elasticsearch's date parser */ - kbn.parseDate = function(text) { - if(_.isDate(text)) { - return text; - } - var time, - mathString = "", - index, - parseString; - if (text.substring(0,3) === "now") { - time = new Date(); - mathString = text.substring("now".length); - } else { - index = text.indexOf("||"); - parseString; - if (index === -1) { - parseString = text; - mathString = ""; // nothing else - } else { - parseString = text.substring(0, index); - mathString = text.substring(index + 2); - } - // We're going to just require ISO8601 timestamps, k? - time = new Date(parseString); - } - - if (!mathString.length) { - return time; - } - - //return [time,parseString,mathString]; - return kbn.parseDateMath(mathString, time); - }; - - kbn.parseDateMath = function(mathString, time, roundUp) { - var dateTime = moment(time); - for (var i = 0; i < mathString.length;) { - var c = mathString.charAt(i++), - type, - num, - unit; - if (c === '/') { - type = 0; - } else if (c === '+') { - type = 1; - } else if (c === '-') { - type = 2; - } else { - return false; - } - - if (isNaN(mathString.charAt(i))) { - num = 1; - } else { - var numFrom = i; - while (!isNaN(mathString.charAt(i))) { - i++; - } - num = parseInt(mathString.substring(numFrom, i),10); - } - if (type === 0) { - // rounding is only allowed on whole numbers - if (num !== 1) { - return false; - } - } - unit = mathString.charAt(i++); - switch (unit) { - case 'y': - if (type === 0) { - roundUp ? dateTime.endOf('year') : dateTime.startOf('year'); - } else if (type === 1) { - dateTime.add('years',num); - } else if (type === 2) { - dateTime.subtract('years',num); - } - break; - case 'M': - if (type === 0) { - roundUp ? dateTime.endOf('month') : dateTime.startOf('month'); - } else if (type === 1) { - dateTime.add('months',num); - } else if (type === 2) { - dateTime.subtract('months',num); - } - break; - case 'w': - if (type === 0) { - roundUp ? dateTime.endOf('week') : dateTime.startOf('week'); - } else if (type === 1) { - dateTime.add('weeks',num); - } else if (type === 2) { - dateTime.subtract('weeks',num); - } - break; - case 'd': - if (type === 0) { - roundUp ? dateTime.endOf('day') : dateTime.startOf('day'); - } else if (type === 1) { - dateTime.add('days',num); - } else if (type === 2) { - dateTime.subtract('days',num); - } - break; - case 'h': - case 'H': - if (type === 0) { - roundUp ? dateTime.endOf('hour') : dateTime.startOf('hour'); - } else if (type === 1) { - dateTime.add('hours',num); - } else if (type === 2) { - dateTime.subtract('hours',num); - } - break; - case 'm': - if (type === 0) { - roundUp ? dateTime.endOf('minute') : dateTime.startOf('minute'); - } else if (type === 1) { - dateTime.add('minutes',num); - } else if (type === 2) { - dateTime.subtract('minutes',num); - } - break; - case 's': - if (type === 0) { - roundUp ? dateTime.endOf('second') : dateTime.startOf('second'); - } else if (type === 1) { - dateTime.add('seconds',num); - } else if (type === 2) { - dateTime.subtract('seconds',num); - } - break; - default: - return false; - } - } - return dateTime.toDate(); - }; - - kbn.query_color_dot = function (color, diameter) { - return '
    '; - }; - - kbn.byteFormat = function(size, decimals) { - var ext, steps = 0; - - if(_.isUndefined(decimals)) { - decimals = 2; - } else if (decimals === 0) { - decimals = undefined; - } - - while (Math.abs(size) >= 1024) { - steps++; - size /= 1024; - } - - switch (steps) { - case 0: - ext = " B"; - break; - case 1: - ext = " KiB"; - break; - case 2: - ext = " MiB"; - break; - case 3: - ext = " GiB"; - break; - case 4: - ext = " TiB"; - break; - case 5: - ext = " PiB"; - break; - case 6: - ext = " EiB"; - break; - case 7: - ext = " ZiB"; - break; - case 8: - ext = " YiB"; - break; - } - - return (size.toFixed(decimals) + ext); - }; - - kbn.bitFormat = function(size, decimals) { - var ext, steps = 0; - - if(_.isUndefined(decimals)) { - decimals = 2; - } else if (decimals === 0) { - decimals = undefined; - } - - while (Math.abs(size) >= 1024) { - steps++; - size /= 1024; - } - - switch (steps) { - case 0: - ext = " b"; - break; - case 1: - ext = " Kib"; - break; - case 2: - ext = " Mib"; - break; - case 3: - ext = " Gib"; - break; - case 4: - ext = " Tib"; - break; - case 5: - ext = " Pib"; - break; - case 6: - ext = " Eib"; - break; - case 7: - ext = " Zib"; - break; - case 8: - ext = " Yib"; - break; - } - - return (size.toFixed(decimals) + ext); - }; - - kbn.shortFormat = function(size, decimals) { - var ext, steps = 0; - - if(_.isUndefined(decimals)) { - decimals = 2; - } else if (decimals === 0) { - decimals = undefined; - } - - while (Math.abs(size) >= 1000) { - steps++; - size /= 1000; - } - - switch (steps) { - case 0: - ext = ""; - break; - case 1: - ext = " K"; - break; - case 2: - ext = " Mil"; - break; - case 3: - ext = " Bil"; - break; - case 4: - ext = " Tri"; - break; - case 5: - ext = " Quadr"; - break; - case 6: - ext = " Quint"; - break; - case 7: - ext = " Sext"; - break; - case 8: - ext = " Sept"; - break; - } - - return (size.toFixed(decimals) + ext); - }; - - kbn.getFormatFunction = function(formatName, decimals) { - switch(formatName) { - case 'short': - return function(val) { - return kbn.shortFormat(val, decimals); - }; - case 'bytes': - return function(val) { - return kbn.byteFormat(val, decimals); - }; - case 'bits': - return function(val) { - return kbn.bitFormat(val, decimals); - }; - case 's': - return function(val) { - return kbn.sFormat(val, decimals); - }; - case 'ms': - return function(val) { - return kbn.msFormat(val, decimals); - }; - case 'µs': - return function(val) { - return kbn.microsFormat(val, decimals); - }; - case 'ns': - return function(val) { - return kbn.nanosFormat(val, decimals); - }; - default: - return function(val) { - return val % 1 === 0 ? val : val.toFixed(decimals); - }; - } - }; - - kbn.msFormat = function(size, decimals) { - if (size < 1000) { - return size.toFixed(0) + " ms"; - } - // Less than 1 min - else if (size < 60000) { - return (size / 1000).toFixed(decimals) + " s"; - } - // Less than 1 hour, devide in minutes - else if (size < 3600000) { - return (size / 60000).toFixed(decimals) + " min"; - } - // Less than one day, devide in hours - else if (size < 86400000) { - return (size / 3600000).toFixed(decimals) + " hour"; - } - // Less than one year, devide in days - else if (size < 31536000000) { - return (size / 86400000).toFixed(decimals) + " day"; - } - - return (size / 31536000000).toFixed(decimals) + " year"; - }; - - kbn.sFormat = function(size, decimals) { - // Less than 10 min, use seconds - if (size < 600) { - return size.toFixed(decimals) + " s"; - } - // Less than 1 hour, devide in minutes - else if (size < 3600) { - return (size / 60).toFixed(decimals) + " min"; - } - // Less than one day, devide in hours - else if (size < 86400) { - return (size / 3600).toFixed(decimals) + " hour"; - } - // Less than one week, devide in days - else if (size < 604800) { - return (size / 86400).toFixed(decimals) + " day"; - } - // Less than one year, devide in week - else if (size < 31536000) { - return (size / 604800).toFixed(decimals) + " week"; - } - - return (size / 3.15569e7).toFixed(decimals) + " year"; - }; - - kbn.microsFormat = function(size, decimals) { - if (size < 1000) { - return size.toFixed(0) + " µs"; - } - else if (size < 1000000) { - return (size / 1000).toFixed(decimals) + " ms"; - } - else { - return (size / 1000000).toFixed(decimals) + " s"; - } - }; - - kbn.nanosFormat = function(size, decimals) { - if (size < 1000) { - return size.toFixed(0) + " ns"; - } - else if (size < 1000000) { - return (size / 1000).toFixed(decimals) + " µs"; - } - else if (size < 1000000000) { - return (size / 1000000).toFixed(decimals) + " ms"; - } - else if (size < 60000000000){ - return (size / 1000000000).toFixed(decimals) + " s"; - } - else { - return (size / 60000000000).toFixed(decimals) + " m"; - } - }; - - return kbn; -}); diff --git a/app/dboards/src/app/components/partials.js b/app/dboards/src/app/components/partials.js deleted file mode 100644 index 4efe276..0000000 --- a/app/dboards/src/app/components/partials.js +++ /dev/null @@ -1,2 +0,0 @@ -define([ -], function () {}); diff --git a/app/dboards/src/app/components/require.config.js b/app/dboards/src/app/components/require.config.js deleted file mode 100644 index 2b554e8..0000000 --- a/app/dboards/src/app/components/require.config.js +++ /dev/null @@ -1,111 +0,0 @@ -/** - * Bootstrap require with the needed config, then load the app.js module. - */ -require.config({ - baseUrl: 'app', - - paths: { - config: ['../config', '../config.sample'], - settings: 'components/settings', - kbn: 'components/kbn', - - css: '../vendor/require/css', - text: '../vendor/require/text', - moment: '../vendor/moment', - filesaver: '../vendor/filesaver', - angular: '../vendor/angular/angular', - 'angular-dragdrop': '../vendor/angular/angular-dragdrop', - 'angular-strap': '../vendor/angular/angular-strap', - 'angular-sanitize': '../vendor/angular/angular-sanitize', - timepicker: '../vendor/angular/timepicker', - datepicker: '../vendor/angular/datepicker', - bindonce: '../vendor/angular/bindonce', - crypto: '../vendor/crypto.min', - spectrum: '../vendor/spectrum', - - underscore: 'components/underscore.extended', - 'underscore-src': '../vendor/underscore', - bootstrap: '../vendor/bootstrap/bootstrap', - - jquery: '../vendor/jquery/jquery-1.8.0', - 'jquery-ui': '../vendor/jquery/jquery-ui-1.10.3', - - 'extend-jquery': 'components/extend-jquery', - - 'jquery.flot': '../vendor/jquery/jquery.flot', - 'jquery.flot.pie': '../vendor/jquery/jquery.flot.pie', - 'jquery.flot.events': '../vendor/jquery/jquery.flot.events', - 'jquery.flot.selection': '../vendor/jquery/jquery.flot.selection', - 'jquery.flot.stack': '../vendor/jquery/jquery.flot.stack', - 'jquery.flot.stackpercent':'../vendor/jquery/jquery.flot.stackpercent', - 'jquery.flot.time': '../vendor/jquery/jquery.flot.time', - 'jquery.flot.byte': '../vendor/jquery/jquery.flot.byte', - - modernizr: '../vendor/modernizr-2.6.1', - elasticjs: '../vendor/elasticjs/elastic-angular-client', - - 'bootstrap-tagsinput': '../vendor/tagsinput/bootstrap-tagsinput', - - }, - shim: { - underscore: { - exports: '_' - }, - - spectrum: { - deps: ['jquery'] - }, - - crypto: { - exports: 'Crypto' - }, - - angular: { - deps: ['jquery','config'], - exports: 'angular' - }, - - bootstrap: { - deps: ['jquery'] - }, - - modernizr: { - exports: 'Modernizr' - }, - - jquery: { - exports: 'jQuery' - }, - - // simple dependency declaration - // - 'jquery-ui': ['jquery'], - 'jquery.flot': ['jquery'], - 'jquery.flot.byte': ['jquery', 'jquery.flot'], - 'jquery.flot.pie': ['jquery', 'jquery.flot'], - 'jquery.flot.events': ['jquery', 'jquery.flot'], - 'jquery.flot.selection':['jquery', 'jquery.flot'], - 'jquery.flot.stack': ['jquery', 'jquery.flot'], - 'jquery.flot.stackpercent':['jquery', 'jquery.flot'], - 'jquery.flot.time': ['jquery', 'jquery.flot'], - - 'angular-sanitize': ['angular'], - 'angular-cookies': ['angular'], - 'angular-dragdrop': ['jquery','jquery-ui','angular'], - 'angular-loader': ['angular'], - 'angular-mocks': ['angular'], - 'angular-resource': ['angular'], - 'angular-route': ['angular'], - 'angular-touch': ['angular'], - 'bindonce': ['angular'], - 'angular-strap': ['angular', 'bootstrap','timepicker', 'datepicker'], - - timepicker: ['jquery', 'bootstrap'], - datepicker: ['jquery', 'bootstrap'], - - elasticjs: ['angular', '../vendor/elasticjs/elastic'], - - 'bootstrap-tagsinput': ['jquery'], - }, - waitSeconds: 60, -}); diff --git a/app/dboards/src/app/components/settings.js b/app/dboards/src/app/components/settings.js deleted file mode 100644 index b3919cb..0000000 --- a/app/dboards/src/app/components/settings.js +++ /dev/null @@ -1,86 +0,0 @@ -define([ - 'underscore', - 'crypto', -], -function (_, crypto) { - "use strict"; - - return function Settings (options) { - /** - * To add a setting, you MUST define a default. Also, - * THESE ARE ONLY DEFAULTS. - * They are overridden by config.js in the root directory - * @type {Object} - */ - var defaults = { - elasticsearch : "http://"+window.location.hostname+":9200", - datasources : { - default: { - url: "http://"+window.location.hostname+":8080", - default: true - } - }, - panels : ['graph', 'text'], - plugins : {}, - default_route : '/dashboard/file/default.json', - grafana_index : 'grafana-dash', - elasticsearch_all_disabled : false, - timezoneOffset : null, - playlist_timespan : "1m", - unsaved_changes_warning : true - }; - - // This initializes a new hash on purpose, to avoid adding parameters to - // config.js without providing sane defaults - var settings = {}; - _.each(defaults, function(value, key) { - settings[key] = typeof options[key] !== 'undefined' ? options[key] : defaults[key]; - }); - - var parseBasicAuth = function(datasource) { - var passwordEnd = datasource.url.indexOf('@'); - if (passwordEnd > 0) { - var userStart = datasource.url.indexOf('//') + 2; - var userAndPassword = datasource.url.substring(userStart, passwordEnd); - var bytes = crypto.charenc.Binary.stringToBytes(userAndPassword); - datasource.basicAuth = crypto.util.bytesToBase64(bytes); - - var urlHead = datasource.url.substring(0, userStart); - datasource.url = urlHead + datasource.url.substring(passwordEnd + 1); - } - - return datasource; - }; - - var parseMultipleHosts = function(datasource) { - datasource.urls = _.map(datasource.url.split(","), function (url) { return url.trim(); }); - return datasource; - }; - - if (options.graphiteUrl) { - settings.datasources = { - graphite: { - type: 'graphite', - url: options.graphiteUrl, - default: true - } - }; - } - - _.each(settings.datasources, function(datasource, key) { - datasource.name = key; - parseBasicAuth(datasource); - if (datasource.type === 'influxdb') { parseMultipleHosts(datasource); } - }); - - var elasticParsed = parseBasicAuth({ url: settings.elasticsearch }); - settings.elasticsearchBasicAuth = elasticParsed.basicAuth; - settings.elasticsearch = elasticParsed.url; - - if (settings.plugins.panels) { - settings.panels = _.union(settings.panels, settings.plugins.panels); - } - - return settings; - }; -}); diff --git a/app/dboards/src/app/components/underscore.extended.js b/app/dboards/src/app/components/underscore.extended.js deleted file mode 100644 index e86afae..0000000 --- a/app/dboards/src/app/components/underscore.extended.js +++ /dev/null @@ -1,36 +0,0 @@ -define([ - 'underscore-src' -], -function () { - 'use strict'; - - var _ = window._; - - /* - Mixins :) - */ - _.mixin({ - move: function (array, fromIndex, toIndex) { - array.splice(toIndex, 0, array.splice(fromIndex, 1)[0]); - return array; - }, - remove: function (array, index) { - array.splice(index, 1); - return array; - }, - // If variable is value, then return alt. If variable is anything else, return value; - toggle: function (variable, value, alt) { - return variable === value ? alt : value; - }, - toggleInOut: function(array,value) { - if(_.contains(array,value)) { - array = _.without(array,value); - } else { - array.push(value); - } - return array; - } - }); - - return _; -}); \ No newline at end of file diff --git a/app/dboards/src/app/controllers/all.js b/app/dboards/src/app/controllers/all.js deleted file mode 100644 index 6958c27..0000000 --- a/app/dboards/src/app/controllers/all.js +++ /dev/null @@ -1,16 +0,0 @@ -define([ - './dash', - './dashLoader', - './row', - './submenuCtrl', - './pulldown', - './search', - './metricKeys', - './graphiteTarget', - './graphiteImport', - './influxTargetCtrl', - './playlistCtrl', - './inspectCtrl', - './opentsdbTargetCtrl', - './kairosdbTargetCtrl', -], function () {}); diff --git a/app/dboards/src/app/controllers/dash.js b/app/dboards/src/app/controllers/dash.js deleted file mode 100644 index b4113a5..0000000 --- a/app/dboards/src/app/controllers/dash.js +++ /dev/null @@ -1,152 +0,0 @@ -/** @scratch /index/0 - * = Kibana - * - * // Why can't I have a preamble here? - * - * == Introduction - * - * Kibana is an open source (Apache Licensed), browser based analytics and search dashboard for - * ElasticSearch. Kibana is a snap to setup and start using. Written entirely in HTML and Javascript - * it requires only a plain webserver, Kibana requires no fancy server side components. - * Kibana strives to be easy to get started with, while also being flexible and powerful, just like - * Elasticsearch. - * - * include::configuration/config.js.asciidoc[] - * - * include::panels.asciidoc[] - * - */ - -define([ - 'angular', - 'jquery', - 'config', - 'underscore', - 'services/all', - 'services/dashboard/all' -], -function (angular, $, config, _) { - "use strict"; - - var module = angular.module('kibana.controllers'); - - module.controller('DashCtrl', function( - $scope, $rootScope, $timeout, ejsResource, dashboard, filterSrv, dashboardKeybindings, - alertSrv, panelMove, keyboardManager, grafanaVersion) { - - $scope.requiredElasticSearchVersion = ">=0.90.3"; - - $scope.editor = { - index: 0 - }; - - $scope.grafanaVersion = grafanaVersion[0] === '@' ? 'master' : grafanaVersion; - - // For moving stuff around the dashboard. - $scope.panelMoveDrop = panelMove.onDrop; - $scope.panelMoveStart = panelMove.onStart; - $scope.panelMoveStop = panelMove.onStop; - $scope.panelMoveOver = panelMove.onOver; - $scope.panelMoveOut = panelMove.onOut; - - $scope.init = function() { - $scope.config = config; - - // Make stuff, including underscore.js available to views - $scope._ = _; - $scope.dashboard = dashboard; - $scope.dashAlerts = alertSrv; - - $scope.filter = filterSrv; - $scope.filter.init(dashboard.current); - - $rootScope.$on("dashboard-loaded", function(event, dashboard) { - $scope.filter.init(dashboard); - }); - - // Clear existing alerts - alertSrv.clearAll(); - - $scope.reset_row(); - - $scope.ejs = ejsResource(config.elasticsearch, config.elasticsearchBasicAuth); - - $scope.bindKeyboardShortcuts(); - }; - - $scope.bindKeyboardShortcuts = dashboardKeybindings.shortcuts; - - $scope.isPanel = function(obj) { - if(!_.isNull(obj) && !_.isUndefined(obj) && !_.isUndefined(obj.type)) { - return true; - } else { - return false; - } - }; - - $scope.add_row = function(dash, row) { - dash.rows.push(row); - }; - - $scope.add_row_default = function() { - $scope.reset_row(); - $scope.row.title = 'New row'; - $scope.add_row(dashboard.current, $scope.row); - }; - - $scope.reset_row = function() { - $scope.row = { - title: '', - height: '250px', - editable: true, - }; - }; - - $scope.row_style = function(row) { - return { 'min-height': row.collapse ? '5px' : row.height }; - }; - - $scope.panel_path =function(type) { - if(type) { - return 'app/panels/'+type.replace(".","/"); - } else { - return false; - } - }; - - $scope.edit_path = function(type) { - var p = $scope.panel_path(type); - if(p) { - return p+'/editor.html'; - } else { - return false; - } - }; - - $scope.setEditorTabs = function(panelMeta) { - $scope.editorTabs = ['General','Panel']; - if(!_.isUndefined(panelMeta.editorTabs)) { - $scope.editorTabs = _.union($scope.editorTabs,_.pluck(panelMeta.editorTabs,'title')); - } - return $scope.editorTabs; - }; - - // This is whoafully incomplete, but will do for now - $scope.parse_error = function(data) { - var _error = data.match("nested: (.*?);"); - return _.isNull(_error) ? data : _error[1]; - }; - - $scope.colors = [ - "#7EB26D","#EAB839","#6ED0E0","#EF843C","#E24D42","#1F78C1","#BA43A9","#705DA0", //1 - "#508642","#CCA300","#447EBC","#C15C17","#890F02","#0A437C","#6D1F62","#584477", //2 - "#B7DBAB","#F4D598","#70DBED","#F9BA8F","#F29191","#82B5D8","#E5A8E2","#AEA2E0", //3 - "#629E51","#E5AC0E","#64B0C8","#E0752D","#BF1B00","#0A50A1","#962D82","#614D93", //4 - "#9AC48A","#F2C96D","#65C5DB","#F9934E","#EA6460","#5195CE","#D683CE","#806EB7", //5 - "#3F6833","#967302","#2F575E","#99440A","#58140C","#052B51","#511749","#3F2B5B", //6 - "#E0F9D7","#FCEACA","#CFFAFF","#F9E2D2","#FCE2DE","#BADFF4","#F9D9F9","#DEDAF7" //7 - ]; - - $scope.init(); - }); -}); diff --git a/app/dboards/src/app/controllers/dashLoader.js b/app/dboards/src/app/controllers/dashLoader.js deleted file mode 100644 index d660e6d..0000000 --- a/app/dboards/src/app/controllers/dashLoader.js +++ /dev/null @@ -1,172 +0,0 @@ -define([ - 'angular', - 'underscore', - 'moment' -], -function (angular, _, moment) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('dashLoader', function($scope, $rootScope, $http, dashboard, alertSrv, $location, playlistSrv) { - $scope.loader = dashboard.current.loader; - - $scope.init = function() { - $scope.gist_pattern = /(^\d{5,}$)|(^[a-z0-9]{10,}$)|(gist.github.com(\/*.*)\/[a-z0-9]{5,}\/*$)/; - $scope.gist = $scope.gist || {}; - $scope.elasticsearch = $scope.elasticsearch || {}; - - $rootScope.$on('save-dashboard', function() { - $scope.elasticsearch_save('dashboard', false); - }); - - $rootScope.$on('zoom-out', function() { - $scope.zoom(2); - }); - }; - - $scope.exitFullscreen = function() { - $rootScope.$emit('panel-fullscreen-exit'); - }; - - $scope.showDropdown = function(type) { - if(_.isUndefined(dashboard.current.loader)) { - return true; - } - - var _l = dashboard.current.loader; - if(type === 'load') { - return (_l.load_elasticsearch || _l.load_gist || _l.load_local); - } - if(type === 'save') { - return (_l.save_elasticsearch || _l.save_gist || _l.save_local || _l.save_default); - } - if(type === 'share') { - return (_l.save_temp); - } - return false; - }; - - $scope.set_default = function() { - if(dashboard.set_default($location.path())) { - alertSrv.set('Home Set','This page has been set as your default dashboard','success',5000); - } else { - alertSrv.set('Incompatible Browser','Sorry, your browser is too old for this feature','error',5000); - } - }; - - $scope.purge_default = function() { - if(dashboard.purge_default()) { - alertSrv.set('Local Default Clear','Your default dashboard has been reset to the default', - 'success',5000); - } else { - alertSrv.set('Incompatible Browser','Sorry, your browser is too old for this feature','error',5000); - } - }; - - $scope.elasticsearch_save = function(type,ttl) { - dashboard.elasticsearch_save(type, dashboard.current.title, ttl) - .then(function(result) { - if(_.isUndefined(result._id)) { - alertSrv.set('Save failed','Dashboard could not be saved to Elasticsearch','error',5000); - return; - } - - alertSrv.set('Dashboard Saved', 'Dashboard has been saved to Elasticsearch as "' + result._id + '"','success', 5000); - if(type === 'temp') { - $scope.share = dashboard.share_link(dashboard.current.title,'temp',result._id); - } - - $rootScope.$emit('dashboard-saved', dashboard.current); - }); - }; - - $scope.elasticsearch_delete = function(id) { - if (!confirm('Are you sure you want to delete dashboard?')) { - return; - } - - dashboard.elasticsearch_delete(id).then( - function(result) { - if(!_.isUndefined(result)) { - if(result.found) { - alertSrv.set('Dashboard Deleted',id+' has been deleted','success',5000); - // Find the deleted dashboard in the cached list and remove it - var toDelete = _.where($scope.elasticsearch.dashboards,{_id:id})[0]; - $scope.elasticsearch.dashboards = _.without($scope.elasticsearch.dashboards,toDelete); - } else { - alertSrv.set('Dashboard Not Found','Could not find '+id+' in Elasticsearch','warning',5000); - } - } else { - alertSrv.set('Dashboard Not Deleted','An error occurred deleting the dashboard','error',5000); - } - } - ); - }; - - $scope.save_gist = function() { - dashboard.save_gist($scope.gist.title).then(function(link) { - if (!_.isUndefined(link)) { - $scope.gist.last = link; - alertSrv.set('Gist saved','You will be able to access your exported dashboard file at '+ - ''+link+' in a moment','success'); - } else { - alertSrv.set('Save failed','Gist could not be saved','error',5000); - } - }); - }; - - $scope.gist_dblist = function(id) { - dashboard.gist_list(id).then(function(files) { - if (files && files.length > 0) { - $scope.gist.files = files; - } else { - alertSrv.set('Gist Failed','Could not retrieve dashboard list from gist','error',5000); - } - }); - }; - - // function $scope.zoom - // factor :: Zoom factor, so 0.5 = cuts timespan in half, 2 doubles timespan - $scope.zoom = function(factor) { - var _range = this.filter.timeRange(); - var _timespan = (_range.to.valueOf() - _range.from.valueOf()); - var _center = _range.to.valueOf() - _timespan/2; - - var _to = (_center + (_timespan*factor)/2); - var _from = (_center - (_timespan*factor)/2); - - // If we're not already looking into the future, don't. - if(_to > Date.now() && _range.to < Date.now()) { - var _offset = _to - Date.now(); - _from = _from - _offset; - _to = Date.now(); - } - - this.filter.setTime({ - from:moment.utc(_from).toDate(), - to:moment.utc(_to).toDate(), - }); - }; - - $scope.openSaveDropdown = function() { - $scope.isFavorite = playlistSrv.isCurrentFavorite(); - }; - - $scope.markAsFavorite = function() { - playlistSrv.markAsFavorite(); - $scope.isFavorite = true; - }; - - $scope.removeAsFavorite = function() { - playlistSrv.removeAsFavorite(dashboard.current); - $scope.isFavorite = false; - }; - - $scope.stopPlaylist = function() { - playlistSrv.stop(1); - }; - - }); - -}); diff --git a/app/dboards/src/app/controllers/graphiteImport.js b/app/dboards/src/app/controllers/graphiteImport.js deleted file mode 100644 index e0a0f36..0000000 --- a/app/dboards/src/app/controllers/graphiteImport.js +++ /dev/null @@ -1,104 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('GraphiteImportCtrl', function($scope, $rootScope, $timeout, datasourceSrv, dashboard) { - - $scope.init = function() { - console.log('hej!'); - $scope.datasources = datasourceSrv.listOptions(); - $scope.setDatasource(null); - }; - - $scope.setDatasource = function(datasource) { - $scope.datasource = datasourceSrv.get(datasource); - - if (!$scope.datasource) { - $scope.error = "Cannot find datasource " + datasource; - return; - } - }; - - $scope.listAll = function(query) { - delete $scope.error; - - $scope.datasource.listDashboards(query) - .then(function(results) { - $scope.dashboards = results; - }) - .then(null, function(err) { - $scope.error = err.message || 'Error while fetching list of dashboards'; - }); - }; - - $scope.import = function(dashName) { - delete $scope.error; - - $scope.datasource.loadDashboard(dashName) - .then(function(results) { - if (!results.data || !results.data.state) { - throw { message: 'no dashboard state received from graphite' }; - } - - graphiteToGrafanaTranslator(results.data.state, $scope.datasource.name); - }) - .then(null, function(err) { - $scope.error = err.message || 'Failed to import dashboard'; - }); - }; - - function graphiteToGrafanaTranslator(state, datasource) { - var graphsPerRow = 2; - var rowHeight = 300; - var rowTemplate; - var currentRow; - var panel; - - rowTemplate = { - title: '', - panels: [], - height: rowHeight - }; - - currentRow = angular.copy(rowTemplate); - - var newDashboard = angular.copy(dashboard.current); - newDashboard.rows = []; - newDashboard.title = state.name; - newDashboard.rows.push(currentRow); - - _.each(state.graphs, function(graph) { - if (currentRow.panels.length === graphsPerRow) { - currentRow = angular.copy(rowTemplate); - newDashboard.rows.push(currentRow); - } - - panel = { - type: 'graphite', - span: 12 / graphsPerRow, - title: graph[1].title, - targets: [], - datasource: datasource - }; - - _.each(graph[1].target, function(target) { - panel.targets.push({ - target: target - }); - }); - - currentRow.panels.push(panel); - }); - - dashboard.dash_load(newDashboard); - } - - }); - -}); diff --git a/app/dboards/src/app/controllers/graphiteTarget.js b/app/dboards/src/app/controllers/graphiteTarget.js deleted file mode 100644 index abb5410..0000000 --- a/app/dboards/src/app/controllers/graphiteTarget.js +++ /dev/null @@ -1,294 +0,0 @@ -define([ - 'angular', - 'underscore', - 'config', - '../services/graphite/gfunc', - '../services/graphite/parser' -], -function (angular, _, config, gfunc, Parser) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('GraphiteTargetCtrl', function($scope) { - - $scope.init = function() { - $scope.target.target = $scope.target.target || ''; - - parseTarget(); - }; - - // The way parsing and the target editor works needs - // to be rewritten to handle functions that take multiple series - function parseTarget() { - $scope.functions = []; - $scope.segments = []; - $scope.showTextEditor = false; - - delete $scope.parserError; - - var parser = new Parser($scope.target.target); - var astNode = parser.getAst(); - if (astNode === null) { - checkOtherSegments(0); - return; - } - - if (astNode.type === 'error') { - $scope.parserError = astNode.message + " at position: " + astNode.pos; - $scope.showTextEditor = true; - return; - } - - try { - parseTargeRecursive(astNode); - } - catch (err) { - console.log('error parsing target:', err.message); - $scope.parserError = err.message; - $scope.showTextEditor = true; - } - - checkOtherSegments($scope.segments.length - 1); - } - - function parseTargeRecursive(astNode, func, index) { - if (astNode === null) { - return null; - } - - switch(astNode.type) { - case 'function': - var innerFunc = gfunc.createFuncInstance(astNode.name); - - _.each(astNode.params, function(param, index) { - parseTargeRecursive(param, innerFunc, index); - }); - - innerFunc.updateText(); - $scope.functions.push(innerFunc); - break; - - case 'string': - case 'number': - if ((index-1) >= func.def.params.length) { - throw { message: 'invalid number of parameters to method ' + func.def.name }; - } - - if (index === 0) { - func.params[index] = astNode.value; - } - else { - func.params[index - 1] = astNode.value; - } - - break; - - case 'metric': - if ($scope.segments.length > 0) { - throw { message: 'Multiple metric params not supported, use text editor.' }; - } - - $scope.segments = _.map(astNode.segments, function(segment) { - var node = { - type: segment.type, - val: segment.value, - html: segment.value - }; - if (segment.value === '*') { - node.html = ''; - } - if (segment.type === 'template') { - node.val = node.html = '[[' + segment.value + ']]'; - node.html = "" + node.html + ""; - } - return node; - }); - } - } - - function getSegmentPathUpTo(index) { - var arr = $scope.segments.slice(0, index); - - return _.reduce(arr, function(result, segment) { - return result ? (result + "." + segment.val) : segment.val; - }, ""); - } - - function checkOtherSegments(fromIndex) { - if (fromIndex === 0) { - $scope.segments.push({html: 'select metric'}); - return; - } - - var path = getSegmentPathUpTo(fromIndex + 1); - return $scope.datasource.metricFindQuery($scope.filter, path) - .then(function(segments) { - if (segments.length === 0) { - $scope.segments = $scope.segments.splice(0, fromIndex); - $scope.segments.push({html: 'select metric'}); - return; - } - if (segments[0].expandable) { - if ($scope.segments.length === fromIndex) { - $scope.segments.push({html: 'select metric'}); - } - else { - return checkOtherSegments(fromIndex + 1); - } - } - }) - .then(null, function(err) { - $scope.parserError = err.message || 'Failed to issue metric query'; - }); - } - - function setSegmentFocus(segmentIndex) { - _.each($scope.segments, function(segment, index) { - segment.focus = segmentIndex === index; - }); - } - - function wrapFunction(target, func) { - return func.render(target); - } - - $scope.getAltSegments = function (index) { - $scope.altSegments = []; - - var query = index === 0 ? - '*' : getSegmentPathUpTo(index) + '.*'; - - return $scope.datasource.metricFindQuery($scope.filter, query) - .then(function(segments) { - _.each(segments, function(segment) { - segment.html = segment.val = segment.text; - }); - - _.each($scope.filter.templateParameters, function(templateParameter) { - segments.unshift({ - type: 'template', - html: '[[' + templateParameter.name + ']]', - val: '[[' + templateParameter.name + ']]', - expandable: true, - }); - }); - - segments.unshift({val: '*', html: '', expandable: true }); - $scope.altSegments = segments; - }) - .then(null, function(err) { - $scope.parserError = err.message || 'Failed to issue metric query'; - }); - }; - - $scope.setSegment = function (altIndex, segmentIndex) { - delete $scope.parserError; - - $scope.segments[segmentIndex].val = $scope.altSegments[altIndex].val; - $scope.segments[segmentIndex].html = $scope.altSegments[altIndex].html; - - if ($scope.altSegments[altIndex].expandable) { - return checkOtherSegments(segmentIndex + 1) - .then(function () { - setSegmentFocus(segmentIndex + 1); - $scope.targetChanged(); - }); - } - else { - $scope.segments = $scope.segments.splice(0, segmentIndex + 1); - } - - setSegmentFocus(segmentIndex + 1); - $scope.targetChanged(); - }; - - $scope.targetTextChanged = function() { - parseTarget(); - $scope.$parent.get_data(); - }; - - $scope.targetChanged = function() { - if ($scope.parserError) { - return; - } - - var oldTarget = $scope.target.target; - - var target = getSegmentPathUpTo($scope.segments.length); - $scope.target.target = _.reduce($scope.functions, wrapFunction, target); - - if ($scope.target.target !== oldTarget) { - $scope.$parent.get_data(); - } - }; - - $scope.removeFunction = function(func) { - $scope.functions = _.without($scope.functions, func); - $scope.targetChanged(); - }; - - $scope.addFunction = function(funcDef) { - var newFunc = gfunc.createFuncInstance(funcDef); - newFunc.added = true; - $scope.functions.push(newFunc); - - $scope.moveAliasFuncLast(); - $scope.smartlyHandleNewAliasByNode(newFunc); - - if (!newFunc.params.length && newFunc.added) { - $scope.targetChanged(); - } - }; - - $scope.moveAliasFuncLast = function() { - var aliasFunc = _.find($scope.functions, function(func) { - return func.def.name === 'alias' || - func.def.name === 'aliasByNode' || - func.def.name === 'aliasByMetric'; - }); - - if (aliasFunc) { - $scope.functions = _.without($scope.functions, aliasFunc); - $scope.functions.push(aliasFunc); - } - }; - - $scope.smartlyHandleNewAliasByNode = function(func) { - if (func.def.name !== 'aliasByNode') { - return; - } - for(var i = 0; i < $scope.segments.length; i++) { - if ($scope.segments[i].val.indexOf('*') >= 0) { - func.params[0] = i; - func.added = false; - $scope.targetChanged(); - return; - } - } - }; - - $scope.duplicate = function() { - var clone = angular.copy($scope.target); - $scope.panel.targets.push(clone); - }; - - }); - - module.directive('focusMe', function($timeout, $parse) { - return { - //scope: true, // optionally create a child scope - link: function(scope, element, attrs) { - var model = $parse(attrs.focusMe); - scope.$watch(model, function(value) { - if(value === true) { - $timeout(function() { - element[0].focus(); - }); - } - }); - } - }; - }); - -}); diff --git a/app/dboards/src/app/controllers/influxTargetCtrl.js b/app/dboards/src/app/controllers/influxTargetCtrl.js deleted file mode 100644 index b0693a8..0000000 --- a/app/dboards/src/app/controllers/influxTargetCtrl.js +++ /dev/null @@ -1,90 +0,0 @@ -define([ - 'angular' -], -function (angular) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - var seriesList = null; - - module.controller('InfluxTargetCtrl', function($scope, $timeout) { - - $scope.init = function() { - $scope.target.function = $scope.target.function || 'mean'; - $scope.target.column = $scope.target.column || 'value'; - - $scope.rawQuery = false; - - $scope.functions = [ - 'count', 'mean', 'sum', 'min', - 'max', 'mode', 'distinct', 'median', - 'derivative', 'stddev', 'first', 'last', - 'difference' - ]; - - $scope.operators = ['=', '=~', '>', '<', '!~', '<>']; - $scope.oldSeries = $scope.target.series; - $scope.$on('typeahead-updated', function() { - $timeout($scope.get_data); - }); - }; - - $scope.showQuery = function () { - $scope.target.rawQuery = true; - }; - - $scope.hideQuery = function () { - $scope.target.rawQuery = false; - }; - - // Cannot use typeahead and ng-change on blur at the same time - $scope.seriesBlur = function() { - if ($scope.oldSeries !== $scope.target.series) { - $scope.oldSeries = $scope.target.series; - $scope.columnList = null; - $scope.get_data(); - } - }; - - $scope.changeFunction = function(func) { - $scope.target.function = func; - $scope.get_data(); - }; - - // called outside of digest - $scope.listColumns = function(query, callback) { - if (!$scope.columnList) { - $scope.$apply(function() { - $scope.datasource.listColumns($scope.target.series).then(function(columns) { - $scope.columnList = columns; - callback(columns); - }); - }); - } - else { - return $scope.columnList; - } - }; - - $scope.listSeries = function(query, callback) { - if (!seriesList || query === '') { - seriesList = []; - $scope.datasource.listSeries().then(function(series) { - seriesList = series; - callback(seriesList); - }); - } - else { - return seriesList; - } - }; - - $scope.duplicate = function() { - var clone = angular.copy($scope.target); - $scope.panel.targets.push(clone); - }; - - }); - -}); diff --git a/app/dboards/src/app/controllers/inspectCtrl.js b/app/dboards/src/app/controllers/inspectCtrl.js deleted file mode 100644 index fd276ee..0000000 --- a/app/dboards/src/app/controllers/inspectCtrl.js +++ /dev/null @@ -1,75 +0,0 @@ -define([ - 'angular' -], -function (angular) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('InspectCtrl', function($scope) { - var model = $scope.inspector; - - function getParametersFromQueryString(queryString) { - var result = []; - var parameters = queryString.split("&"); - for (var i = 0; i < parameters.length; i++) { - var keyValue = parameters[i].split("="); - if (keyValue[1].length > 0) { - result.push({ key: keyValue[0], value: window.unescape(keyValue[1]) }); - } - } - return result; - } - - $scope.init = function () { - $scope.editor = { index: 0 }; - - if (!model.error) { - return; - } - - if (model.error.stack) { - $scope.editor.index = 2; - $scope.stack_trace = model.error.stack; - $scope.message = model.error.message; - } - else if (model.error.config && model.error.config.data) { - $scope.editor.index = 1; - - $scope.request_parameters = getParametersFromQueryString(model.error.config.data); - - if (model.error.data.indexOf('DOCTYPE') !== -1) { - $scope.response_html = model.error.data; - } - } - }; - - }); - - angular - .module('kibana.directives') - .directive('iframeContent', function($parse) { - return { - restrict: 'A', - link: function($scope, elem, attrs) { - var getter = $parse(attrs.iframeContent), value = getter($scope); - - $scope.$on("$destroy",function() { - elem.remove(); - }); - - var iframe = document.createElement('iframe'); - iframe.width = '100%'; - iframe.height = '400px'; - iframe.style.border = 'none'; - iframe.src = 'about:blank'; - elem.append(iframe); - - iframe.contentWindow.document.open('text/html', 'replace'); - iframe.contentWindow.document.write(value); - iframe.contentWindow.document.close(); - } - }; - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/controllers/kairosdbTargetCtrl.js b/app/dboards/src/app/controllers/kairosdbTargetCtrl.js deleted file mode 100644 index 95e7d56..0000000 --- a/app/dboards/src/app/controllers/kairosdbTargetCtrl.js +++ /dev/null @@ -1,344 +0,0 @@ -define([ - 'angular', - 'underscore' -], - function (angular, _) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - var metricList = null; - - module.controller('KairosDBTargetCtrl', function($scope) { - - $scope.init = function() { - $scope.panel.stack = false; - if (!$scope.target.downsampling) { - $scope.target.downsampling = 'avg'; - } - $scope.target.errors = validateTarget($scope.target); - }; - - $scope.targetBlur = function() { - $scope.target.errors = validateTarget($scope.target); - if (!_.isEqual($scope.oldTarget, $scope.target) && _.isEmpty($scope.target.errors)) { - $scope.oldTarget = angular.copy($scope.target); - $scope.get_data(); - } - }; - - $scope.duplicate = function() { - var clone = angular.copy($scope.target); - $scope.panel.targets.push(clone); - }; - - ////////////////////////////// - // SUGGESTION QUERIES - ////////////////////////////// - - $scope.suggestMetrics = function(query, callback) { - if (!metricList) { - $scope.updateMetricList(); - } - else { - callback(metricList); - } - - }; - - $scope.updateMetricList = function() { - $scope.metricListLoading = true; - metricList = []; - $scope.datasource.performMetricSuggestQuery().then(function(series) { - metricList = series; - $scope.metricListLoading = false; - return metricList; - }); - }; - - $scope.suggestTagKeys = function(query, callback) { - $scope.updateTimeRange(); - callback($scope.datasource - .performTagSuggestQuery($scope.target.metric,$scope.rangeUnparsed, 'key','')); - - }; - - $scope.suggestTagValues = function(query, callback) { - callback($scope.datasource - .performTagSuggestQuery($scope.target.metric,$scope.rangeUnparsed, 'value',$scope.target.currentTagKey)); - }; - - ////////////////////////////// - // FILTER by TAG - ////////////////////////////// - - $scope.addFilterTag = function() { - if (!$scope.addFilterTagMode) { - $scope.addFilterTagMode = true; - $scope.validateFilterTag(); - return; - } - - if (!$scope.target.tags) { - $scope.target.tags = {}; - } - - $scope.validateFilterTag(); - if (!$scope.target.errors.tags) { - if(!_.has($scope.target.tags,$scope.target.currentTagKey)) { - $scope.target.tags[$scope.target.currentTagKey] = []; - } - $scope.target.tags[$scope.target.currentTagKey].push($scope.target.currentTagValue); - $scope.target.currentTagKey = ''; - $scope.target.currentTagValue = ''; - $scope.targetBlur(); - } - - $scope.addFilterTagMode = false; - }; - - $scope.removeFilterTag = function(key) { - delete $scope.target.tags[key]; - if(_.size($scope.target.tags)===0) { - $scope.target.tags = null; - } - $scope.targetBlur(); - }; - - $scope.validateFilterTag = function() { - $scope.target.errors.tags = null; - if(!$scope.target.currentTagKey || !$scope.target.currentTagValue) { - $scope.target.errors.tags = "You must specify a tag name and value."; - } - }; - - ////////////////////////////// - // GROUP BY - ////////////////////////////// - - $scope.addGroupBy = function() { - if (!$scope.addGroupByMode) { - $scope.addGroupByMode = true; - $scope.target.currentGroupByType = 'tag'; - $scope.isTagGroupBy = true; - $scope.validateGroupBy(); - return; - } - $scope.validateGroupBy(); - // nb: if error is found, means that user clicked on cross : cancels input - if (_.isEmpty($scope.target.errors.groupBy)) { - if($scope.isTagGroupBy) { - if (!$scope.target.groupByTags) { - $scope.target.groupByTags = []; - } - console.log($scope.target.groupBy.tagKey); - if (!_.contains($scope.target.groupByTags, $scope.target.groupBy.tagKey)) { - $scope.target.groupByTags.push($scope.target.groupBy.tagKey); - $scope.targetBlur(); - } - $scope.target.groupBy.tagKey = ''; - } - else { - if (!$scope.target.nonTagGroupBys) { - $scope.target.nonTagGroupBys = []; - } - var groupBy = { - name: $scope.target.currentGroupByType - }; - if($scope.isValueGroupBy) {groupBy.range_size = $scope.target.groupBy.valueRange;} - else if($scope.isTimeGroupBy) { - groupBy.range_size = $scope.target.groupBy.timeInterval; - groupBy.group_count = $scope.target.groupBy.groupCount; - } - $scope.target.nonTagGroupBys.push(groupBy); - } - $scope.targetBlur(); - } - $scope.isTagGroupBy = false; - $scope.isValueGroupBy = false; - $scope.isTimeGroupBy = false; - $scope.addGroupByMode = false; - }; - - $scope.removeGroupByTag = function(index) { - $scope.target.groupByTags.splice(index, 1); - if(_.size($scope.target.groupByTags)===0) { - $scope.target.groupByTags = null; - } - $scope.targetBlur(); - }; - - $scope.removeNonTagGroupBy = function(index) { - $scope.target.nonTagGroupBys.splice(index, 1); - if(_.size($scope.target.nonTagGroupBys)===0) { - $scope.target.nonTagGroupBys = null; - } - $scope.targetBlur(); - }; - - $scope.changeGroupByInput = function() { - $scope.isTagGroupBy = $scope.target.currentGroupByType==='tag'; - $scope.isValueGroupBy = $scope.target.currentGroupByType==='value'; - $scope.isTimeGroupBy = $scope.target.currentGroupByType==='time'; - $scope.validateGroupBy(); - }; - - $scope.validateGroupBy = function() { - delete $scope.target.errors.groupBy; - var errors = {}; - $scope.isGroupByValid = true; - if($scope.isTagGroupBy) { - if(!$scope.target.groupBy.tagKey) { - $scope.isGroupByValid = false; - errors.tagKey = 'You must supply a tag name'; - } - } - if($scope.isValueGroupBy) { - if(!$scope.target.groupBy.valueRange || !isInt($scope.target.groupBy.valueRange)) { - errors.valueRange = "Range must be an integer"; - $scope.isGroupByValid = false; - } - } - if($scope.isTimeGroupBy) { - try { - $scope.datasource.convertToKairosInterval($scope.target.groupBy.timeInterval); - } catch(err) { - errors.timeInterval = err.message; - $scope.isGroupByValid = false; - } - if(!$scope.target.groupBy.groupCount || !isInt($scope.target.groupBy.groupCount)) { - errors.groupCount = "Group count must be an integer"; - $scope.isGroupByValid = false; - } - } - - if(!_.isEmpty(errors)) { - $scope.target.errors.groupBy = errors; - } - }; - - function isInt(n) { - return parseInt(n) % 1 === 0; - } - - ////////////////////////////// - // HORIZONTAL AGGREGATION - ////////////////////////////// - - $scope.addHorizontalAggregator = function() { - if (!$scope.addHorizontalAggregatorMode) { - $scope.addHorizontalAggregatorMode = true; - $scope.target.currentHorizontalAggregatorName = 'avg'; - $scope.hasSamplingRate = true; - $scope.validateHorizontalAggregator(); - return; - } - - $scope.validateHorizontalAggregator(); - // nb: if error is found, means that user clicked on cross : cancels input - if(_.isEmpty($scope.target.errors.horAggregator)) { - if (!$scope.target.horizontalAggregators) { - $scope.target.horizontalAggregators = []; - } - var aggregator = { - name:$scope.target.currentHorizontalAggregatorName - }; - if($scope.hasSamplingRate) {aggregator.sampling_rate = $scope.target.horAggregator.samplingRate;} - if($scope.hasUnit) {aggregator.unit = $scope.target.horAggregator.unit;} - if($scope.hasFactor) {aggregator.factor = $scope.target.horAggregator.factor;} - if($scope.hasPercentile) {aggregator.percentile = $scope.target.horAggregator.percentile;} - $scope.target.horizontalAggregators.push(aggregator); - $scope.targetBlur(); - } - - $scope.addHorizontalAggregatorMode = false; - $scope.hasSamplingRate = false; - $scope.hasUnit = false; - $scope.hasFactor = false; - $scope.hasPercentile = false; - - }; - - $scope.removeHorizontalAggregator = function(index) { - $scope.target.horizontalAggregators.splice(index, 1); - if(_.size($scope.target.horizontalAggregators)===0) { - $scope.target.horizontalAggregators = null; - } - - $scope.targetBlur(); - }; - - $scope.changeHorAggregationInput = function() { - $scope.hasSamplingRate = _.contains(['avg','dev','max','min','sum','least_squares','count','percentile'], - $scope.target.currentHorizontalAggregatorName); - $scope.hasUnit = _.contains(['sampler','rate'], $scope.target.currentHorizontalAggregatorName); - $scope.hasFactor = _.contains(['div','scale'], $scope.target.currentHorizontalAggregatorName); - $scope.hasPercentile = 'percentile'===$scope.target.currentHorizontalAggregatorName; - $scope.validateHorizontalAggregator(); - }; - - $scope.validateHorizontalAggregator = function() { - delete $scope.target.errors.horAggregator; - var errors = {}; - $scope.isAggregatorValid = true; - if($scope.hasSamplingRate) { - try { - $scope.datasource.convertToKairosInterval($scope.target.horAggregator.samplingRate); - } catch(err) { - errors.samplingRate = err.message; - $scope.isAggregatorValid = false; - } - } - if($scope.hasFactor) { - if(!$scope.target.horAggregator.factor) { - errors.factor = 'You must supply a numeric value for this aggregator'; - $scope.isAggregatorValid = false; - } - else if(parseInt($scope.target.horAggregator.factor)===0 && $scope.target.currentHorizontalAggregatorName==='div') { - errors.factor = 'Cannot divide by 0'; - $scope.isAggregatorValid = false; - } - } - if($scope.hasPercentile) { - if(!$scope.target.horAggregator.percentile || - $scope.target.horAggregator.percentile<=0 || - $scope.target.horAggregator.percentile>1) { - errors.percentile = 'Percentile must be between 0 and 1'; - $scope.isAggregatorValid = false; - } - } - - if(!_.isEmpty(errors)) { - $scope.target.errors.horAggregator = errors; - } - }; - - $scope.alert = function(message) { - alert(message); - }; - - ////////////////////////////// - // VALIDATION - ////////////////////////////// - - function validateTarget(target) { - var errs = {}; - - if (!target.metric) { - errs.metric = "You must supply a metric name."; - } - - try { - if (target.sampling) { - $scope.datasource.convertToKairosInterval(target.sampling); - } - } catch(err) { - errs.sampling = err.message; - } - - return errs; - } - - }); - - }); \ No newline at end of file diff --git a/app/dboards/src/app/controllers/metricKeys.js b/app/dboards/src/app/controllers/metricKeys.js deleted file mode 100644 index 61ac85c..0000000 --- a/app/dboards/src/app/controllers/metricKeys.js +++ /dev/null @@ -1,186 +0,0 @@ -define([ - 'angular', - 'underscore', - 'config' -], -function (angular, _, config) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('MetricKeysCtrl', function($scope, $http, $q) { - var elasticSearchUrlForMetricIndex = config.elasticsearch + '/' + config.grafana_metrics_index + '/'; - var httpOptions = {}; - if (config.elasticsearchBasicAuth) { - httpOptions.withCredentials = true; - httpOptions.headers = { - "Authorization": "Basic " + config.elasticsearchBasicAuth - }; - } - $scope.init = function () { - $scope.metricPath = "prod.apps.api.boobarella.*"; - $scope.metricCounter = 0; - }; - - $scope.createIndex = function () { - $scope.errorText = null; - $scope.infoText = null; - - deleteIndex() - .then(createIndex) - .then(function () { - $scope.infoText = "Index created!"; - }) - .then(null, function (err) { - $scope.errorText = angular.toJson(err); - }); - }; - - $scope.loadMetricsFromPath = function() { - $scope.errorText = null; - $scope.infoText = null; - $scope.metricCounter = 0; - - return loadMetricsRecursive($scope.metricPath) - .then(function() { - $scope.infoText = "Indexing completed!"; - }, function(err) { - $scope.errorText = "Error: " + err; - }); - }; - - $scope.loadAll = function() { - $scope.infoText = "Fetching all metrics from graphite..."; - - getFromEachGraphite('/metrics/index.json', saveMetricsArray) - .then(function() { - $scope.infoText = "Indexing complete!"; - }).then(null, function(err) { - $scope.errorText = err; - }); - }; - - function getFromEachGraphite(request, data_callback, error_callback) { - return $q.all(_.map(config.datasources, function(datasource) { - if (datasource.type = 'graphite') { - return $http.get(datasource.url + request) - .then(data_callback, error_callback); - } - })); - } - - function saveMetricsArray(data, currentIndex) { - if (!data && !data.data && data.data.length === 0) { - return $q.reject('No metrics from graphite'); - } - - if (data.data.length === currentIndex) { - return $q.when('done'); - } - - currentIndex = currentIndex || 0; - - return saveMetricKey(data.data[currentIndex]) - .then(function() { - return saveMetricsArray(data, currentIndex + 1); - }); - } - - function deleteIndex() - { - var deferred = $q.defer(); - $http.delete(elasticSearchUrlForMetricIndex, httpOptions) - .success(function() { - deferred.resolve('ok'); - }) - .error(function(data, status) { - if (status === 404) { - deferred.resolve('ok'); - } - else { - deferred.reject('elastic search returned unexpected error'); - } - }); - - return deferred.promise; - } - - function createIndex() - { - return $http.put(elasticSearchUrlForMetricIndex, { - settings: { - analysis: { - analyzer: { - metric_path_ngram : { tokenizer : "my_ngram_tokenizer" } - }, - tokenizer: { - my_ngram_tokenizer : { - type : "nGram", - min_gram : "3", - max_gram : "8", - token_chars: ["letter", "digit", "punctuation", "symbol"] - } - } - } - }, - mappings: { - metricKey: { - properties: { - metricPath: { - type: "multi_field", - fields: { - "metricPath": { type: "string", index: "analyzed", index_analyzer: "standard" }, - "metricPath_ng": { type: "string", index: "analyzed", index_analyzer: "metric_path_ngram" } - } - } - } - } - } - }, httpOptions); - } - - function receiveMetric(result) { - var data = result.data; - if (!data || data.length === 0) { - console.log('no data'); - return; - } - - var funcs = _.map(data, function(metric) { - if (metric.expandable) { - return loadMetricsRecursive(metric.id + ".*"); - } - if (metric.leaf) { - return saveMetricKey(metric.id); - } - }); - - return $q.all(funcs); - } - - function saveMetricKey(metricId) { - - // Create request with id as title. Rethink this. - var request = $scope.ejs.Document(config.grafana_metrics_index, 'metricKey', metricId).source({ - metricPath: metricId - }); - - return request.doIndex( - function() { - $scope.infoText = "Indexing " + metricId; - $scope.metricCounter = $scope.metricCounter + 1; - }, - function() { - $scope.errorText = "failed to save metric " + metricId; - } - ); - } - - function loadMetricsRecursive(metricPath) - { - return getFromEachGraphite('/metrics/find/?query=' + metricPath, receiveMetric); - } - - }); - -}); diff --git a/app/dboards/src/app/controllers/opentsdbTargetCtrl.js b/app/dboards/src/app/controllers/opentsdbTargetCtrl.js deleted file mode 100644 index b10cf38..0000000 --- a/app/dboards/src/app/controllers/opentsdbTargetCtrl.js +++ /dev/null @@ -1,118 +0,0 @@ -define([ - 'angular', - 'underscore', - 'kbn' -], -function (angular, _, kbn) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('OpenTSDBTargetCtrl', function($scope, $timeout) { - - $scope.init = function() { - $scope.target.errors = validateTarget($scope.target); - $scope.aggregators = ['avg', 'sum', 'min', 'max', 'dev', 'zimsum', 'mimmin', 'mimmax']; - - if (!$scope.target.aggregator) { - $scope.target.aggregator = 'sum'; - } - - if (!$scope.target.downsampleAggregator) { - $scope.target.downsampleAggregator = 'sum'; - } - - $scope.$on('typeahead-updated', function() { - $timeout($scope.targetBlur); - }); - }; - - $scope.targetBlur = function() { - $scope.target.errors = validateTarget($scope.target); - - // this does not work so good - if (!_.isEqual($scope.oldTarget, $scope.target) && _.isEmpty($scope.target.errors)) { - $scope.oldTarget = angular.copy($scope.target); - $scope.get_data(); - } - }; - - $scope.duplicate = function() { - var clone = angular.copy($scope.target); - $scope.panel.targets.push(clone); - }; - - $scope.suggestMetrics = function(query, callback) { - $scope.datasource - .performSuggestQuery(query, 'metrics') - .then(callback); - }; - - $scope.suggestTagKeys = function(query, callback) { - $scope.datasource - .performSuggestQuery(query, 'tagk') - .then(callback); - }; - - $scope.suggestTagValues = function(query, callback) { - $scope.datasource - .performSuggestQuery(query, 'tagv') - .then(callback); - }; - - $scope.addTag = function() { - if (!$scope.addTagMode) { - $scope.addTagMode = true; - return; - } - - if (!$scope.target.tags) { - $scope.target.tags = {}; - } - - $scope.target.errors = validateTarget($scope.target); - - if (!$scope.target.errors.tags) { - $scope.target.tags[$scope.target.currentTagKey] = $scope.target.currentTagValue; - $scope.target.currentTagKey = ''; - $scope.target.currentTagValue = ''; - $scope.targetBlur(); - } - - $scope.addTagMode = false; - }; - - $scope.removeTag = function(key) { - delete $scope.target.tags[key]; - $scope.targetBlur(); - }; - - function validateTarget(target) { - var errs = {}; - - if (!target.metric) { - errs.metric = "You must supply a metric name."; - } - - if (target.shouldDownsample) { - try { - if (target.downsampleInterval) { - kbn.describe_interval(target.downsampleInterval); - } else { - errs.downsampleInterval = "You must supply a downsample interval (e.g. '1m' or '1h')."; - } - } catch(err) { - errs.downsampleInterval = err.message; - } - } - - if (target.tags && _.has(target.tags, target.currentTagKey)) { - errs.tags = "Duplicate tag key '" + target.currentTagKey + "'."; - } - - return errs; - } - - }); - -}); diff --git a/app/dboards/src/app/controllers/panelBaseCtrl.js b/app/dboards/src/app/controllers/panelBaseCtrl.js deleted file mode 100644 index 24ce1dd..0000000 --- a/app/dboards/src/app/controllers/panelBaseCtrl.js +++ /dev/null @@ -1,134 +0,0 @@ -define([ - 'angular', - 'underscore', - 'jquery' -], -function (angular, _, $) { - 'use strict'; - - // This function needs $inject annotations, update below - // when changing arguments to this function - function PanelBaseCtrl($scope, $rootScope, $timeout) { - - var menu = [ - { - text: 'Edit', - configModal: "app/partials/paneleditor.html", - condition: !$scope.panelMeta.fullscreenEdit - }, - { - text: 'Edit', - click: "toggleFullscreenEdit()", - condition: $scope.panelMeta.fullscreenEdit - }, - { - text: "Fullscreen", - click: 'toggleFullscreen()', - condition: $scope.panelMeta.fullscreenView - }, - { - text: 'Duplicate', - click: 'duplicatePanel(panel)', - condition: true - }, - { - text: 'Span', - submenu: [ - { text: '1', click: 'updateColumnSpan(1)' }, - { text: '2', click: 'updateColumnSpan(2)' }, - { text: '3', click: 'updateColumnSpan(3)' }, - { text: '4', click: 'updateColumnSpan(4)' }, - { text: '5', click: 'updateColumnSpan(5)' }, - { text: '6', click: 'updateColumnSpan(6)' }, - { text: '7', click: 'updateColumnSpan(7)' }, - { text: '8', click: 'updateColumnSpan(8)' }, - { text: '9', click: 'updateColumnSpan(9)' }, - { text: '10', click: 'updateColumnSpan(10)' }, - { text: '11', click: 'updateColumnSpan(11)' }, - { text: '12', click: 'updateColumnSpan(12)' }, - ], - condition: true - }, - { - text: 'Remove', - click: 'remove_panel_from_row(row, panel)', - condition: true - } - ]; - - $scope.inspector = {}; - $scope.panelMeta.menu = _.where(menu, { condition: true }); - - $scope.updateColumnSpan = function(span) { - $scope.panel.span = span; - - $timeout(function() { - $scope.$emit('render'); - }); - }; - - $scope.enterFullscreenMode = function(options) { - var docHeight = $(window).height(); - var editHeight = Math.floor(docHeight * 0.3); - var fullscreenHeight = Math.floor(docHeight * 0.7); - var oldTimeRange = $scope.range; - - $scope.height = options.edit ? editHeight : fullscreenHeight; - $scope.editMode = options.edit; - - if (!$scope.fullscreen) { - var closeEditMode = $rootScope.$on('panel-fullscreen-exit', function() { - $scope.editMode = false; - $scope.fullscreen = false; - delete $scope.height; - - closeEditMode(); - - $timeout(function() { - if (oldTimeRange !== $scope.range) { - $scope.dashboard.refresh(); - } - else { - $scope.$emit('render'); - } - }); - }); - } - - $(window).scrollTop(0); - - $scope.fullscreen = true; - - $rootScope.$emit('panel-fullscreen-enter'); - - $timeout(function() { - $scope.$emit('render'); - }); - - }; - - $scope.toggleFullscreenEdit = function() { - if ($scope.editMode) { - $rootScope.$emit('panel-fullscreen-exit'); - return; - } - - $scope.enterFullscreenMode({edit: true}); - }; - - $scope.toggleFullscreen = function() { - if ($scope.fullscreen && !$scope.editMode) { - $rootScope.$emit('panel-fullscreen-exit'); - return; - } - - $scope.enterFullscreenMode({ edit: false }); - }; - - } - - PanelBaseCtrl['$inject'] = ['$scope', '$rootScope', '$timeout']; - - return PanelBaseCtrl; - -}); \ No newline at end of file diff --git a/app/dboards/src/app/controllers/playlistCtrl.js b/app/dboards/src/app/controllers/playlistCtrl.js deleted file mode 100644 index 249099e..0000000 --- a/app/dboards/src/app/controllers/playlistCtrl.js +++ /dev/null @@ -1,39 +0,0 @@ -define([ - 'angular', - 'underscore', - 'config' -], -function (angular, _, config) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('PlaylistCtrl', function($scope, playlistSrv) { - - $scope.init = function() { - $scope.timespan = config.playlist_timespan; - $scope.loadFavorites(); - $scope.$on('modal-opened', $scope.loadFavorites); - }; - - $scope.loadFavorites = function() { - $scope.favDashboards = playlistSrv.getFavorites().dashboards; - - _.each($scope.favDashboards, function(dashboard) { - dashboard.include = true; - }); - }; - - $scope.removeAsFavorite = function(dashboard) { - playlistSrv.removeAsFavorite(dashboard); - $scope.loadFavorites(); - }; - - $scope.start = function() { - var included = _.where($scope.favDashboards, { include: true }); - playlistSrv.start(included, $scope.timespan); - }; - - }); - -}); diff --git a/app/dboards/src/app/controllers/pulldown.js b/app/dboards/src/app/controllers/pulldown.js deleted file mode 100644 index 425f7c2..0000000 --- a/app/dboards/src/app/controllers/pulldown.js +++ /dev/null @@ -1,42 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('PulldownCtrl', function($scope, $rootScope, $timeout) { - var _d = { - collapse: false, - notice: false, - enable: true - }; - - _.defaults($scope.pulldown,_d); - - $scope.init = function() { - // Provide a combined skeleton for panels that must interact with panel and row. - // This might create name spacing issues. - $scope.panel = $scope.pulldown; - $scope.row = $scope.pulldown; - }; - - $scope.toggle_pulldown = function(pulldown) { - pulldown.collapse = pulldown.collapse ? false : true; - if (!pulldown.collapse) { - $timeout(function() { - $scope.$broadcast('render'); - }); - } else { - $scope.row.notice = false; - } - }; - - $scope.init(); - - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/controllers/row.js b/app/dboards/src/app/controllers/row.js deleted file mode 100644 index a4f15c3..0000000 --- a/app/dboards/src/app/controllers/row.js +++ /dev/null @@ -1,195 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('RowCtrl', function($scope, $rootScope, $timeout) { - var _d = { - title: "Row", - height: "150px", - collapse: false, - collapsable: true, - editable: true, - panels: [], - notice: false - }; - - _.defaults($scope.row,_d); - - $scope.init = function() { - $scope.reset_panel(); - }; - - $scope.toggle_row = function(row) { - if(!row.collapsable) { - return; - } - row.collapse = row.collapse ? false : true; - if (!row.collapse) { - $timeout(function() { - $scope.$broadcast('render'); - }); - } else { - row.notice = false; - } - }; - - $scope.rowSpan = function(row) { - var panels = _.filter(row.panels, function(p) { - return $scope.isPanel(p); - }); - return _.reduce(_.pluck(panels,'span'), function(p,v) { - return p+v; - },0); - }; - - // This can be overridden by individual panels - $scope.close_edit = function() { - $scope.$broadcast('render'); - }; - - $scope.add_panel = function(panel) { - var rowSpan = $scope.rowSpan($scope.row); - var panelCount = $scope.row.panels.length; - var space = (12 - rowSpan) - panel.span; - - // try to make room of there is no space left - if (space <= 0) { - if (panelCount === 1) { - $scope.row.panels[0].span = 6; - panel.span = 6; - } - else if (panelCount === 2) { - $scope.row.panels[0].span = 4; - $scope.row.panels[1].span = 4; - panel.span = 4; - } - } - - $scope.row.panels.push(panel); - }; - - $scope.delete_row = function() { - if (confirm("Are you sure you want to delete this row?")) { - $scope.dashboard.current.rows = _.without($scope.dashboard.current.rows, $scope.row); - } - }; - - $scope.move_row = function(direction) { - var rowsList = $scope.dashboard.current.rows; - var rowIndex = _.indexOf(rowsList, $scope.row); - var newIndex = rowIndex + direction; - if (newIndex >= 0 && newIndex <= (rowsList.length - 1)) { - _.move(rowsList, rowIndex, rowIndex + direction); - } - }; - - $scope.add_panel_default = function(type) { - $scope.reset_panel(type); - $scope.add_panel($scope.panel); - - $timeout(function() { - $scope.$broadcast('render'); - }); - }; - - $scope.set_height = function(height) { - $scope.row.height = height; - $scope.$broadcast('render'); - }; - - $scope.remove_panel_from_row = function(row, panel) { - if (confirm('Are you sure you want to remove this ' + panel.type + ' panel?')) { - row.panels = _.without(row.panels,panel); - } - }; - - $scope.duplicatePanel = function(panel, row) { - row = row || $scope.row; - var currentRowSpan = $scope.rowSpan(row); - if (currentRowSpan <= 9) { - row.panels.push(angular.copy(panel)); - } - else { - var rowsList = $scope.dashboard.current.rows; - var rowIndex = _.indexOf(rowsList, row); - if (rowIndex === rowsList.length - 1) { - var newRow = angular.copy($scope.row); - newRow.panels = []; - $scope.dashboard.current.rows.push(newRow); - $scope.duplicatePanel(panel, newRow); - } - else { - $scope.duplicatePanel(panel, rowsList[rowIndex+1]); - } - } - }; - - /** @scratch /panels/0 - * [[panels]] - * = Panels - * - * [partintro] - * -- - * *Kibana* dashboards are made up of blocks called +panels+. Panels are organized into rows - * and can serve many purposes, though most are designed to provide the results of a query or - * multiple queries as a visualization. Other panels may show collections of documents or - * allow you to insert instructions for your users. - * - * Panels can be configured easily via the Kibana web interface. For more advanced usage, such - * as templated or scripted dashboards, documentation of panel properties is available in this - * section. You may find settings here which are not exposed via the web interface. - * - * Each panel type has its own properties, hover there are several that are shared. - * - */ - - $scope.reset_panel = function(type) { - var - defaultSpan = 4, - _as = 12-$scope.rowSpan($scope.row); - - $scope.panel = { - error : false, - /** @scratch /panels/1 - * span:: A number, 1-12, that describes the width of the panel. - */ - span : _as < defaultSpan && _as > 0 ? _as : defaultSpan, - /** @scratch /panels/1 - * editable:: Enable or disable the edit button the the panel - */ - editable: true, - /** @scratch /panels/1 - * type:: The type of panel this object contains. Each panel type will require additional - * properties. See the panel types list to the right. - */ - type : type - }; - - function fixRowHeight(height) { - if (!height) { - return '200px'; - } - if (!_.isString(height)) { - return height + 'px'; - } - return height; - } - - $scope.row.height = fixRowHeight($scope.row.height); - }; - - /** @scratch /panels/2 - * -- - */ - - $scope.init(); - - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/controllers/search.js b/app/dboards/src/app/controllers/search.js deleted file mode 100644 index 736c500..0000000 --- a/app/dboards/src/app/controllers/search.js +++ /dev/null @@ -1,196 +0,0 @@ -define([ - 'angular', - 'underscore', - 'config', - 'jquery' -], -function (angular, _, config, $) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('SearchCtrl', function($scope, $rootScope, dashboard, $element, $location) { - - $scope.init = function() { - $scope.giveSearchFocus = 0; - $scope.selectedIndex = -1; - $scope.results = {dashboards: [], tags: [], metrics: []}; - $scope.query = { query: 'title:' }; - $rootScope.$on('open-search', $scope.openSearch); - }; - - $scope.keyDown = function (evt) { - if (evt.keyCode === 27) { - $element.find('.dropdown-toggle').dropdown('toggle'); - } - if (evt.keyCode === 40) { - $scope.selectedIndex++; - } - if (evt.keyCode === 38) { - $scope.selectedIndex--; - } - if (evt.keyCode === 13) { - if ($scope.tagsOnly) { - var tag = $scope.results.tags[$scope.selectedIndex]; - if (tag) { - $scope.filterByTag(tag.term); - } - return; - } - - var selectedDash = $scope.results.dashboards[$scope.selectedIndex]; - if (selectedDash) { - $location.path("/dashboard/elasticsearch/" + encodeURIComponent(selectedDash._id)); - setTimeout(function() { - $('body').click(); // hack to force dropdown to close; - }); - } - } - }; - - $scope.searchDasboards = function(query) { - var request = $scope.ejs.Request().indices(config.grafana_index).types('dashboard'); - var tagsOnly = query.indexOf('tags!:') === 0; - if (tagsOnly) { - var tagsQuery = query.substring(6, query.length); - query = 'tags:' + tagsQuery + '*'; - } - else { - if (query.length === 0) { - query = 'title:'; - } - - if (query[query.length - 1] !== '*') { - query += '*'; - } - } - - return request - .query($scope.ejs.QueryStringQuery(query)) - .sort('_uid') - .facet($scope.ejs.TermsFacet("tags").field("tags").order('term').size(50)) - .size(20).doSearch() - .then(function(results) { - - if(_.isUndefined(results.hits)) { - $scope.results.dashboards = []; - $scope.results.tags = []; - return; - } - - $scope.tagsOnly = tagsOnly; - $scope.results.dashboards = results.hits.hits; - $scope.results.tags = results.facets.tags.terms; - }); - }; - - $scope.filterByTag = function(tag, evt) { - $scope.query.query = "tags:" + tag + " AND title:"; - $scope.search(); - $scope.giveSearchFocus = $scope.giveSearchFocus + 1; - if (evt) { - evt.stopPropagation(); - evt.preventDefault(); - } - }; - - $scope.showTags = function(evt) { - evt.stopPropagation(); - $scope.tagsOnly = !$scope.tagsOnly; - $scope.query.query = $scope.tagsOnly ? "tags!:" : ""; - $scope.giveSearchFocus = $scope.giveSearchFocus + 1; - $scope.selectedIndex = -1; - $scope.search(); - }; - - $scope.search = function() { - $scope.showImport = false; - $scope.selectedIndex = -1; - - var queryStr = $scope.query.query.toLowerCase(); - - if (queryStr.indexOf('m:') !== 0) { - queryStr = queryStr.replace(' and ', ' AND '); - $scope.searchDasboards(queryStr); - return; - } - - queryStr = queryStr.substring(2, queryStr.length); - - var words = queryStr.split(' '); - var query = $scope.ejs.BoolQuery(); - var terms = _.map(words, function(word) { - return $scope.ejs.MatchQuery('metricPath_ng', word).boost(1.2); - }); - - var ngramQuery = $scope.ejs.BoolQuery(); - ngramQuery.must(terms); - - var fieldMatchQuery = $scope.ejs.FieldQuery('metricPath', queryStr + "*").boost(1.2); - query.should([ngramQuery, fieldMatchQuery]); - - var request = $scope.ejs.Request().indices(config.grafana_index).types('metricKey'); - var results = request.query(query).size(20).doSearch(); - - results.then(function(results) { - if (results && results.hits && results.hits.hits.length > 0) { - $scope.results.metrics = { metrics: results.hits.hits }; - } - else { - $scope.results.metrics = { metric: [] }; - } - }); - }; - - $scope.openSearch = function (evt) { - if (evt) { - $element.find('.dropdown-toggle').dropdown('toggle'); - } - - $scope.giveSearchFocus = $scope.giveSearchFocus + 1; - $scope.query.query = 'title:'; - $scope.search(); - }; - - $scope.addMetricToCurrentDashboard = function (metricId) { - dashboard.current.rows.push({ - title: '', - height: '250px', - editable: true, - panels: [ - { - type: 'graphite', - title: 'test', - span: 12, - targets: [{ target: metricId }] - } - ] - }); - }; - - $scope.toggleImport = function ($event) { - $event.stopPropagation(); - $scope.showImport = !$scope.showImport; - }; - - $scope.newDashboard = function() { - $location.url('/dashboard/file/empty.json'); - }; - - }); - - module.directive('xngFocus', function() { - return function(scope, element, attrs) { - $(element).click(function(e) { - e.stopPropagation(); - }); - - scope.$watch(attrs.xngFocus,function (newValue) { - setTimeout(function() { - newValue && element.focus(); - }, 200); - },true); - }; - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/controllers/submenuCtrl.js b/app/dboards/src/app/controllers/submenuCtrl.js deleted file mode 100644 index 6781ef6..0000000 --- a/app/dboards/src/app/controllers/submenuCtrl.js +++ /dev/null @@ -1,27 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - var module = angular.module('kibana.controllers'); - - module.controller('SubmenuCtrl', function($scope) { - var _d = { - enable: true - }; - - _.defaults($scope.pulldown,_d); - - $scope.init = function() { - $scope.panel = $scope.pulldown; - $scope.row = $scope.pulldown; - }; - - $scope.init(); - - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/dashboards/default.json b/app/dboards/src/app/dashboards/default.json deleted file mode 100644 index bf3450f..0000000 --- a/app/dboards/src/app/dashboards/default.json +++ /dev/null @@ -1,153 +0,0 @@ -{ - "title": "Welcome to Grafana!", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-6h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Welcome to Grafana", - "height": "150px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "error": false, - "span": 12, - "editable": true, - "type": "text", - "loadingEditor": false, - "mode": "markdown", - "content": "####Thank you for trying out Grafana! \n\nGeneral documentation is found in the readme and in the wiki section of the [Github Project](https://github.com/torkelo/grafana). If you encounter any problem or have an idea for an improvement do not hesitate to open a github issue. \n\nTips: \n\n- Ctrl+S saves the current dashboard\n- Ctrl+F Opens the dashboard finder (searches elastic search)\n- Ctrl+H Hide/show row controls \n- Click and drag graph title to move panel (only works when row controls are enabled)\n\nIf you do not see a graph in the panel below the browser cannot access your graphite installation. Please make sure that datasources property in config.js is correctly set and that any urls accessible from your browser.", - "style": {}, - "title": "Welcome to Grafana" - } - ], - "notice": false - }, - { - "title": "test", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [ - { - "span": 12, - "editable": true, - "type": "graph", - "x-axis": true, - "y-axis": true, - "scale": 1, - "y_formats": ["short", "short"], - "grid": { - "max": null, - "min": null - }, - "resolution": 100, - "lines": true, - "fill": 1, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": true, - "spyable": true, - "options": false, - "legend": true, - "interactive": true, - "legend_counts": true, - "timezone": "browser", - "percentage": false, - "zerofill": true, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative" - }, - "targets": [ - { - "target": "randomWalk('random walk')" - }, - { - "target": "randomWalk('random walk2')" - }, - { - "target": "randomWalk('random walk3')" - } - ], - "aliasColors": {}, - "aliasYAxis": {}, - "title": "Graphite test" - } - ], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "dark", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false -} diff --git a/app/dboards/src/app/dashboards/empty.json b/app/dboards/src/app/dashboards/empty.json deleted file mode 100644 index 1cc249c..0000000 --- a/app/dboards/src/app/dashboards/empty.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "title": "New Dashboard", - "services": { - "filter": { - "list": [], - "time": { - "from": "now-6h", - "to": "now" - } - } - }, - "rows": [ - { - "title": "Row1", - "height": "250px", - "editable": true, - "collapse": false, - "collapsable": true, - "panels": [], - "notice": false - } - ], - "editable": true, - "failover": false, - "panel_hints": true, - "style": "dark", - "pulldowns": [ - { - "type": "filtering", - "collapse": false, - "notice": false, - "enable": false - } - ], - "nav": [ - { - "type": "timepicker", - "collapse": false, - "notice": false, - "enable": true, - "status": "Stable", - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ], - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "now": true - } - ], - "loader": { - "save_gist": false, - "save_elasticsearch": true, - "save_local": true, - "save_default": true, - "save_temp": true, - "save_temp_ttl_enable": true, - "save_temp_ttl": "30d", - "load_gist": false, - "load_elasticsearch": true, - "load_elasticsearch_size": 20, - "load_local": false, - "hide": false - }, - "refresh": false -} \ No newline at end of file diff --git a/app/dboards/src/app/dashboards/scripted.js b/app/dboards/src/app/dashboards/scripted.js deleted file mode 100644 index be797dd..0000000 --- a/app/dboards/src/app/dashboards/scripted.js +++ /dev/null @@ -1,80 +0,0 @@ -/* global _ */ - -/* - * Complex scripted dashboard - * This script generates a dashboard object that Grafana can load. It also takes a number of user - * supplied URL parameters (int ARGS variable) - * - * Return a dashboard object, or a function - * - * For async scripts, return a function, this function must take a single callback function as argument, - * call this callback function with the dashboard object (look at scripted_async.js for an example) - */ - -'use strict'; - -// accessable variables in this scope -var window, document, ARGS, $, jQuery, moment, kbn; - -// Setup some variables -var dashboard, timspan; - -// All url parameters are available via the ARGS object -var ARGS; - -// Set a default timespan if one isn't specified -timspan = '1d'; - -// Intialize a skeleton with nothing but a rows array and service object -dashboard = { - rows : [], - services : {} -}; - -// Set a title -dashboard.title = 'Scripted dash'; -dashboard.services.filter = { - time: { - from: "now-" + (ARGS.from || timspan), - to: "now" - } -}; - -var rows = 1; -var seriesName = 'argName'; - -if(!_.isUndefined(ARGS.rows)) { - rows = parseInt(ARGS.rows, 10); -} - -if(!_.isUndefined(ARGS.name)) { - seriesName = ARGS.name; -} - -for (var i = 0; i < rows; i++) { - - dashboard.rows.push({ - title: 'Chart', - height: '300px', - panels: [ - { - title: 'Events', - type: 'graphite', - span: 12, - fill: 1, - linewidth: 2, - targets: [ - { - 'target': "randomWalk('" + seriesName + "')" - }, - { - 'target': "randomWalk('random walk2')" - } - ], - } - ] - }); -} - - -return dashboard; \ No newline at end of file diff --git a/app/dboards/src/app/dashboards/scripted_async.js b/app/dboards/src/app/dashboards/scripted_async.js deleted file mode 100644 index 84e5d97..0000000 --- a/app/dboards/src/app/dashboards/scripted_async.js +++ /dev/null @@ -1,81 +0,0 @@ -/* global _ */ - -/* - * Complex scripted dashboard - * This script generates a dashboard object that Grafana can load. It also takes a number of user - * supplied URL parameters (int ARGS variable) - * - * Global accessable variables - * window, document, $, jQuery, ARGS, moment - * - * Return a dashboard object, or a function - * - * For async scripts, return a function, this function must take a single callback function, - * call this function with the dasboard object - */ - -'use strict'; - -// accessable variables in this scope -var window, document, ARGS, $, jQuery, moment, kbn; - -return function(callback) { - - // Setup some variables - var dashboard, timspan; - - // Set a default timespan if one isn't specified - timspan = '1d'; - - // Intialize a skeleton with nothing but a rows array and service object - dashboard = { - rows : [], - services : {} - }; - - // Set a title - dashboard.title = 'Scripted dash'; - dashboard.services.filter = { - time: { - from: "now-" + (ARGS.from || timspan), - to: "now" - } - }; - - var rows = 1; - var seriesName = 'argName'; - - if(!_.isUndefined(ARGS.rows)) { - rows = parseInt(ARGS.rows, 10); - } - - if(!_.isUndefined(ARGS.name)) { - seriesName = ARGS.name; - } - - $.ajax({ - method: 'GET', - url: '/' - }) - .done(function(result) { - - dashboard.rows.push({ - title: 'Chart', - height: '300px', - panels: [ - { - title: 'Async dashboard test', - type: 'text', - span: 12, - fill: 1, - content: '# Async test' - } - ] - }); - - // when dashboard is composed call the callback - // function and pass the dashboard - callback(dashboard); - - }); -} \ No newline at end of file diff --git a/app/dboards/src/app/directives/addGraphiteFunc.js b/app/dboards/src/app/directives/addGraphiteFunc.js deleted file mode 100644 index e137a77..0000000 --- a/app/dboards/src/app/directives/addGraphiteFunc.js +++ /dev/null @@ -1,100 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore', - 'jquery', - '../services/graphite/gfunc', -], -function (angular, app, _, $, gfunc) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('graphiteAddFunc', function($compile) { - var inputTemplate = ''; - - var buttonTemplate = ''; - - return { - link: function($scope, elem) { - var categories = gfunc.getCategories(); - var allFunctions = getAllFunctionNames(categories); - - $scope.functionMenu = createFunctionDropDownMenu(categories); - - var $input = $(inputTemplate); - var $button = $(buttonTemplate); - $input.appendTo(elem); - $button.appendTo(elem); - - $input.attr('data-provide', 'typeahead'); - $input.typeahead({ - source: allFunctions, - minLength: 1, - items: 10, - updater: function (value) { - var funcDef = gfunc.getFuncDef(value); - - $scope.$apply(function() { - $scope.addFunction(funcDef); - }); - - $input.trigger('blur'); - return ''; - } - }); - - $button.click(function() { - $button.hide(); - $input.show(); - $input.focus(); - }); - - $input.keyup(function() { - elem.toggleClass('open', $input.val() === ''); - }); - - $input.blur(function() { - $input.hide(); - $input.val(''); - $button.show(); - $button.focus(); - // clicking the function dropdown menu wont - // work if you remove class at once - setTimeout(function() { - elem.removeClass('open'); - }, 200); - }); - - $compile(elem.contents())($scope); - } - }; - }); - - function getAllFunctionNames(categories) { - return _.reduce(categories, function(list, category) { - _.each(category, function(func) { - list.push(func.name); - }); - return list; - }, []); - } - - function createFunctionDropDownMenu(categories) { - return _.map(categories, function(list, category) { - return { - text: category, - submenu: _.map(list, function(value) { - return { - text: value.name, - click: "addFunction('" + value.name + "')", - }; - }) - }; - }); - } -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/addPanel.js b/app/dboards/src/app/directives/addPanel.js deleted file mode 100644 index 4d7dee7..0000000 --- a/app/dboards/src/app/directives/addPanel.js +++ /dev/null @@ -1,35 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('addPanel', function($compile) { - return { - restrict: 'A', - link: function($scope, elem) { - - $scope.$on("$destroy",function() { - elem.remove(); - }); - - $scope.$watch('panel.type', function() { - var _type = $scope.panel.type; - $scope.reset_panel(_type); - if(!_.isUndefined($scope.panel.type)) { - $scope.panel.loadingEditor = true; - $scope.require(['panels/'+$scope.panel.type.replace(".","/") +'/module'], function () { - var template = '
    '; - elem.html($compile(angular.element(template))($scope)); - $scope.panel.loadingEditor = false; - }); - } - }); - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/all.js b/app/dboards/src/app/directives/all.js deleted file mode 100644 index 8688c5d..0000000 --- a/app/dboards/src/app/directives/all.js +++ /dev/null @@ -1,20 +0,0 @@ -define([ - './addPanel', - './arrayJoin', - './dashUpload', - './kibanaPanel', - './kibanaSimplePanel', - './ngBlur', - './ngModelOnBlur', - './tip', - './confirmClick', - './configModal', - './spectrumPicker', - './grafanaGraph', - './bootstrap-tagsinput', - './bodyClass', - './addGraphiteFunc', - './graphiteFuncEditor', - './grafanaVersionCheck', - './influxdbFuncEditor' -], function () {}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/arrayJoin.js b/app/dboards/src/app/directives/arrayJoin.js deleted file mode 100644 index db85fe3..0000000 --- a/app/dboards/src/app/directives/arrayJoin.js +++ /dev/null @@ -1,34 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('arrayJoin', function() { - return { - restrict: 'A', - require: 'ngModel', - link: function(scope, element, attr, ngModel) { - - function split_array(text) { - return (text || '').split(','); - } - - function join_array(text) { - if(_.isArray(text)) { - return (text || '').join(','); - } else { - return text; - } - } - - ngModel.$parsers.push(split_array); - ngModel.$formatters.push(join_array); - } - }; - }); -}); diff --git a/app/dboards/src/app/directives/bodyClass.js b/app/dboards/src/app/directives/bodyClass.js deleted file mode 100644 index 6cd9bab..0000000 --- a/app/dboards/src/app/directives/bodyClass.js +++ /dev/null @@ -1,44 +0,0 @@ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('bodyClass', function() { - return { - link: function($scope, elem) { - - var lastPulldownVal; - var lastHideControlsVal; - - $scope.$watch('dashboard.current.pulldowns', function() { - var panel = _.find($scope.dashboard.current.pulldowns, function(pulldown) { return pulldown.enable; }); - var panelEnabled = panel ? panel.enable : false; - if (lastPulldownVal !== panelEnabled) { - elem.toggleClass('submenu-controls-visible', panelEnabled); - lastPulldownVal = panelEnabled; - } - }, true); - - $scope.$watch('dashboard.current.hideControls', function() { - var hideControls = $scope.dashboard.current.hideControls || $scope.playlist_active; - - if (lastHideControlsVal !== hideControls) { - elem.toggleClass('hide-controls', hideControls); - lastHideControlsVal = hideControls; - } - }); - - $scope.$watch('playlist_active', function() { - elem.toggleClass('hide-controls', $scope.playlist_active === true); - elem.toggleClass('playlist-active', $scope.playlist_active === true); - }); - } - }; - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/bootstrap-tagsinput.js b/app/dboards/src/app/directives/bootstrap-tagsinput.js deleted file mode 100644 index 95dc78a..0000000 --- a/app/dboards/src/app/directives/bootstrap-tagsinput.js +++ /dev/null @@ -1,134 +0,0 @@ -define([ - 'angular', - 'jquery', - 'bootstrap-tagsinput' -], -function (angular, $) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('bootstrapTagsinput', function() { - - function getItemProperty(scope, property) { - if (!property) { - return undefined; - } - - if (angular.isFunction(scope.$parent[property])) { - return scope.$parent[property]; - } - - return function(item) { - return item[property]; - }; - } - - return { - restrict: 'EA', - scope: { - model: '=ngModel' - }, - template: '', - replace: false, - link: function(scope, element, attrs) { - - if (!angular.isArray(scope.model)) { - scope.model = []; - } - - var select = $('select', element); - - if (attrs.placeholder) { - select.attr('placeholder', attrs.placeholder); - } - - select.tagsinput({ - typeahead : { - source : angular.isFunction(scope.$parent[attrs.typeaheadSource]) ? scope.$parent[attrs.typeaheadSource] : null - }, - itemValue: getItemProperty(scope, attrs.itemvalue), - itemText : getItemProperty(scope, attrs.itemtext), - tagClass : angular.isFunction(scope.$parent[attrs.tagclass]) ? - scope.$parent[attrs.tagclass] : function() { return attrs.tagclass; } - }); - - select.on('itemAdded', function(event) { - if (scope.model.indexOf(event.item) === -1) { - scope.model.push(event.item); - } - }); - - select.on('itemRemoved', function(event) { - var idx = scope.model.indexOf(event.item); - if (idx !== -1) { - scope.model.splice(idx, 1); - } - }); - - scope.$watch("model", function() { - if (!angular.isArray(scope.model)) { - scope.model = []; - } - - select.tagsinput('removeAll'); - - for (var i = 0; i < scope.model.length; i++) { - select.tagsinput('add', scope.model[i]); - } - - }, true); - - } - }; - }); - - angular - .module('kibana.directives') - .directive('gfDropdown', function ($parse, $compile, $timeout) { - - function buildTemplate(items, placement) { - var upclass = placement === 'top' ? 'dropup' : ''; - var ul = [ - '' - ]; - - angular.forEach(items, function (item, index) { - if (item.divider) { - return ul.splice(index + 1, 0, '
  • '); - } - - var li = '' + - '' + (item.text || '') + ''; - - if (item.submenu && item.submenu.length) { - li += buildTemplate(item.submenu).join('\n'); - } - - li += ''; - ul.splice(index + 1, 0, li); - }); - return ul; - } - - return { - restrict: 'EA', - scope: true, - link: function postLink(scope, iElement, iAttrs) { - var getter = $parse(iAttrs.gfDropdown), items = getter(scope); - $timeout(function () { - var placement = iElement.data('placement'); - var dropdown = angular.element(buildTemplate(items, placement).join('')); - dropdown.insertAfter(iElement); - $compile(iElement.next('ul.dropdown-menu'))(scope); - }); - - iElement.addClass('dropdown-toggle').attr('data-toggle', 'dropdown'); - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/configModal.js b/app/dboards/src/app/directives/configModal.js deleted file mode 100644 index 4528a0b..0000000 --- a/app/dboards/src/app/directives/configModal.js +++ /dev/null @@ -1,48 +0,0 @@ -define([ - 'angular', - 'underscore', - 'jquery' -], -function (angular, _, $) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('configModal', function($modal, $q, $timeout) { - return { - restrict: 'A', - link: function(scope, elem, attrs) { - var partial = attrs.configModal; - var id = '#' + partial.replace('.html', '').replace(/[\/|\.|:]/g, '-') + '-' + scope.$id; - - elem.bind('click',function() { - if ($(id).length) { - elem.attr('data-target', id).attr('data-toggle', 'modal'); - scope.$apply(function() { scope.$broadcast('modal-opened'); }); - return; - } - - var panelModal = $modal({ - template: partial, - persist: true, - show: false, - scope: scope, - keyboard: false - }); - - $q.when(panelModal).then(function(modalEl) { - elem.attr('data-target', id).attr('data-toggle', 'modal'); - - $timeout(function () { - if (!modalEl.data('modal').isShown) { - modalEl.modal('show'); - } - }, 50); - }); - - scope.$apply(); - }); - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/confirmClick.js b/app/dboards/src/app/directives/confirmClick.js deleted file mode 100644 index 16410c3..0000000 --- a/app/dboards/src/app/directives/confirmClick.js +++ /dev/null @@ -1,26 +0,0 @@ -define([ - 'angular', - 'kbn' -], -function (angular) { - 'use strict'; - - var module = angular.module('kibana.directives'); - - module.directive('confirmClick', function() { - return { - restrict: 'A', - link: function(scope, elem, attrs) { - elem.bind('click', function() { - var message = attrs.confirmation || "Are you sure you want to do that?"; - if (window.confirm(message)) { - var action = attrs.confirmClick; - if (action) { - scope.$apply(scope.$eval(action)); - } - } - }); - }, - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/dashUpload.js b/app/dboards/src/app/directives/dashUpload.js deleted file mode 100644 index c6b4239..0000000 --- a/app/dboards/src/app/directives/dashUpload.js +++ /dev/null @@ -1,37 +0,0 @@ -define([ - 'angular' -], -function (angular) { - 'use strict'; - - var module = angular.module('kibana.directives'); - - module.directive('dashUpload', function(timer, dashboard, alertSrv) { - return { - restrict: 'A', - link: function(scope) { - function file_selected(evt) { - var files = evt.target.files; // FileList object - var readerOnload = function() { - return function(e) { - dashboard.dash_load(JSON.parse(e.target.result)); - scope.$apply(); - }; - }; - for (var i = 0, f; f = files[i]; i++) { - var reader = new FileReader(); - reader.onload = (readerOnload)(f); - reader.readAsText(f); - } - } - // Check for the various File API support. - if (window.File && window.FileReader && window.FileList && window.Blob) { - // Something - document.getElementById('dashupload').addEventListener('change', file_selected, false); - } else { - alertSrv.set('Oops','Sorry, the HTML5 File APIs are not fully supported in this browser.','error'); - } - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/grafanaGraph.js b/app/dboards/src/app/directives/grafanaGraph.js deleted file mode 100755 index e7dec1a..0000000 --- a/app/dboards/src/app/directives/grafanaGraph.js +++ /dev/null @@ -1,404 +0,0 @@ -define([ - 'angular', - 'jquery', - 'kbn', - 'moment', - 'underscore' -], -function (angular, $, kbn, moment, _) { - 'use strict'; - - var module = angular.module('kibana.directives'); - - module.directive('grafanaGraph', function($rootScope, dashboard) { - return { - restrict: 'A', - template: '
    ', - link: function(scope, elem) { - var data, plot, annotations; - var hiddenData = {}; - - scope.$on('refresh',function() { - if (scope.otherPanelInFullscreenMode()) { return; } - scope.get_data(); - }); - - scope.$on('toggleLegend', function(e, series) { - _.each(series, function(serie) { - if (hiddenData[serie.alias]) { - data.push(hiddenData[serie.alias]); - delete hiddenData[serie.alias]; - } - }); - - render_panel(); - }); - - // Receive render events - scope.$on('render',function(event, renderData) { - data = renderData || data; - annotations = data.annotations; - render_panel(); - }); - - // Re-render if the window is resized - angular.element(window).bind('resize', function() { - render_panel(); - }); - - function setElementHeight() { - try { - var height = scope.height || scope.panel.height || scope.row.height; - if (_.isString(height)) { - height = parseInt(height.replace('px', ''), 10); - } - - height = height - 32; // subtract panel title bar - - if (scope.panel.legend.show) { - height = height - 21; // subtract one line legend - } - - elem.css('height', height + 'px'); - - return true; - } catch(e) { // IE throws errors sometimes - return false; - } - } - - function shouldAbortRender() { - if (!data) { - return true; - } - - if ($rootScope.fullscreen && !scope.fullscreen) { - return true; - } - - if (!setElementHeight()) { return true; } - - if (_.isString(data)) { - render_panel_as_graphite_png(data); - return true; - } - } - - // Function for rendering panel - function render_panel() { - if (shouldAbortRender()) { - return; - } - - var panel = scope.panel; - - _.each(_.keys(scope.hiddenSeries), function(seriesAlias) { - var dataSeries = _.find(data, function(series) { - return series.info.alias === seriesAlias; - }); - if (dataSeries) { - hiddenData[dataSeries.info.alias] = dataSeries; - data = _.without(data, dataSeries); - } - }); - - var stack = panel.stack ? true : null; - - // Populate element - var options = { - legend: { show: false }, - series: { - stackpercent: panel.stack ? panel.percentage : false, - stack: panel.percentage ? null : stack, - lines: { - show: panel.lines, - zero: false, - fill: panel.fill === 0 ? 0.001 : panel.fill/10, - lineWidth: panel.linewidth, - steps: panel.steppedLine - }, - bars: { - show: panel.bars, - fill: 1, - barWidth: 1, - zero: false, - lineWidth: 0 - }, - points: { - show: panel.points, - fill: 1, - fillColor: false, - radius: panel.pointradius - }, - shadowSize: 1 - }, - yaxes: [], - xaxis: {}, - grid: { - markings: [], - backgroundColor: null, - borderWidth: 0, - hoverable: true, - color: '#c8c8c8' - }, - selection: { - mode: "x", - color: '#666' - } - }; - - for (var i = 0; i < data.length; i++) { - var _d = data[i].getFlotPairs(panel.nullPointMode, panel.y_formats); - data[i].data = _d; - } - - if (panel.bars && data.length && data[0].info.timeStep) { - options.series.bars.barWidth = data[0].info.timeStep / 1.5; - } - - addTimeAxis(options); - addGridThresholds(options, panel); - addAnnotations(options); - configureAxisOptions(data, options); - - plot = $.plot(elem, data, options); - - addAxisLabels(); - } - - function addTimeAxis(options) { - var ticks = elem.width() / 100; - var min = _.isUndefined(scope.range.from) ? null : scope.range.from.getTime(); - var max = _.isUndefined(scope.range.to) ? null : scope.range.to.getTime(); - - options.xaxis = { - timezone: dashboard.current.timezone, - show: scope.panel['x-axis'], - mode: "time", - min: min, - max: max, - label: "Datetime", - ticks: ticks, - timeformat: time_format(scope.interval, ticks, min, max), - }; - } - - function addGridThresholds(options, panel) { - if (panel.grid.threshold1) { - var limit1 = panel.grid.thresholdLine ? panel.grid.threshold1 : (panel.grid.threshold2 || null); - options.grid.markings.push({ - yaxis: { from: panel.grid.threshold1, to: limit1 }, - color: panel.grid.threshold1Color - }); - - if (panel.grid.threshold2) { - var limit2; - if (panel.grid.thresholdLine) { - limit2 = panel.grid.threshold2; - } else { - limit2 = panel.grid.threshold1 > panel.grid.threshold2 ? -Infinity : +Infinity; - } - options.grid.markings.push({ - yaxis: { from: panel.grid.threshold2, to: limit2 }, - color: panel.grid.threshold2Color - }); - } - } - } - - function addAnnotations(options) { - if(!annotations || annotations.length === 0) { - return; - } - - var types = {}; - - _.each(annotations, function(event) { - if (!types[event.annotation.name]) { - types[event.annotation.name] = { - level: _.keys(types).length + 1, - icon: { - icon: "icon-chevron-down", - size: event.annotation.iconSize, - color: event.annotation.iconColor, - } - }; - } - - if (event.annotation.showLine) { - options.grid.markings.push({ - color: event.annotation.lineColor, - lineWidth: 1, - xaxis: { from: event.min, to: event.max } - }); - } - }); - - options.events = { - levels: _.keys(types).length + 1, - data: annotations, - types: types - }; - } - - function addAxisLabels() { - if (scope.panel.leftYAxisLabel) { - elem.css('margin-left', '10px'); - var yaxisLabel = $("
    ") - .text(scope.panel.leftYAxisLabel) - .appendTo(elem); - - yaxisLabel.css("margin-top", yaxisLabel.width() / 2 - 20); - } else if (elem.css('margin-left')) { - elem.css('margin-left', ''); - } - } - - function configureAxisOptions(data, options) { - var defaults = { - position: 'left', - show: scope.panel['y-axis'], - min: scope.panel.grid.leftMin, - max: scope.panel.percentage && scope.panel.stack ? 100 : scope.panel.grid.leftMax, - }; - - options.yaxes.push(defaults); - - if (_.findWhere(data, {yaxis: 2})) { - var secondY = _.clone(defaults); - secondY.position = 'right'; - secondY.min = scope.panel.grid.rightMin; - secondY.max = scope.panel.percentage && scope.panel.stack ? 100 : scope.panel.grid.rightMax; - options.yaxes.push(secondY); - configureAxisMode(options.yaxes[1], scope.panel.y_formats[1]); - } - - configureAxisMode(options.yaxes[0], scope.panel.y_formats[0]); - } - - function configureAxisMode(axis, format) { - if (format !== 'none') { - axis.tickFormatter = kbn.getFormatFunction(format, 1); - } - } - - function time_format(interval, ticks, min, max) { - if (min && max && ticks) { - var secPerTick = ((max - min) / ticks) / 1000; - - if (secPerTick <= 45) { - return "%H:%M:%S"; - } - if (secPerTick <= 3600) { - return "%H:%M"; - } - if (secPerTick <= 80000) { - return "%m/%d %H:%M"; - } - if (secPerTick <= 2419200) { - return "%m/%d"; - } - return "%Y-%m"; - } - - return "%H:%M"; - } - - var $tooltip = $('
    '); - - elem.bind("plothover", function (event, pos, item) { - var group, value, timestamp, seriesInfo, format; - - if (item) { - seriesInfo = item.series.info; - format = scope.panel.y_formats[seriesInfo.yaxis - 1]; - - if (seriesInfo.alias) { - group = '' + - '' + ' ' + - (decodeURIComponent(seriesInfo.alias)) + - '
    '; - } else { - group = kbn.query_color_dot(item.series.color, 15) + ' '; - } - - if (scope.panel.stack && scope.panel.tooltip.value_type === 'individual') { - value = item.datapoint[1] - item.datapoint[2]; - } - else { - value = item.datapoint[1]; - } - - value = kbn.getFormatFunction(format, 2)(value); - - timestamp = dashboard.current.timezone === 'browser' ? - moment(item.datapoint[0]).format('YYYY-MM-DD HH:mm:ss') : - moment.utc(item.datapoint[0]).format('YYYY-MM-DD HH:mm:ss'); - $tooltip - .html( - group + value + " @ " + timestamp - ) - .place_tt(pos.pageX, pos.pageY); - } else { - $tooltip.detach(); - } - }); - - function render_panel_as_graphite_png(url) { - url += '&width=' + elem.width(); - url += '&height=' + elem.css('height').replace('px', ''); - url += '&bgcolor=1f1f1f'; // @grayDarker & @kibanaPanelBackground - url += '&fgcolor=BBBFC2'; // @textColor & @grayLighter - url += scope.panel.stack ? '&areaMode=stacked' : ''; - url += scope.panel.fill !== 0 ? ('&areaAlpha=' + (scope.panel.fill/10).toFixed(1)) : ''; - url += scope.panel.linewidth !== 0 ? '&lineWidth=' + scope.panel.linewidth : ''; - url += scope.panel.legend.show ? '&hideLegend=false' : '&hideLegend=true'; - url += scope.panel.grid.min !== null ? '&yMin=' + scope.panel.grid.min : ''; - url += scope.panel.grid.max !== null ? '&yMax=' + scope.panel.grid.max : ''; - url += scope.panel['x-axis'] ? '' : '&hideAxes=true'; - url += scope.panel['y-axis'] ? '' : '&hideYAxis=true'; - - switch(scope.panel.y_formats[0]) { - case 'bytes': - url += '&yUnitSystem=binary'; - break; - case 'bits': - url += '&yUnitSystem=binary'; - break; - case 'short': - url += '&yUnitSystem=si'; - break; - case 'none': - url += '&yUnitSystem=none'; - break; - } - - switch(scope.panel.nullPointMode) { - case 'connected': - url += '&lineMode=connected'; - break; - case 'null': - break; // graphite default lineMode - case 'null as zero': - url += "&drawNullAsZero=true"; - break; - } - - url += scope.panel.steppedLine ? '&lineMode=staircase' : ''; - - elem.html(''); - } - - elem.bind("plotselected", function (event, ranges) { - scope.$apply(function() { - scope.filter.setTime({ - from : moment.utc(ranges.xaxis.from).toDate(), - to : moment.utc(ranges.xaxis.to).toDate(), - }); - }); - }); - } - }; - }); - -}); diff --git a/app/dboards/src/app/directives/grafanaVersionCheck.js b/app/dboards/src/app/directives/grafanaVersionCheck.js deleted file mode 100644 index 0981b68..0000000 --- a/app/dboards/src/app/directives/grafanaVersionCheck.js +++ /dev/null @@ -1,33 +0,0 @@ -define([ - 'angular' -], -function (angular) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('grafanaVersionCheck', function($http, grafanaVersion) { - return { - restrict: 'A', - link: function(scope, elem) { - if (grafanaVersion[0] === '@') { - return; - } - - $http({ method: 'GET', url: 'http://grafanarel.s3.amazonaws.com/latest.json' }) - .then(function(response) { - if (!response.data || !response.data.version) { - return; - } - - if (grafanaVersion !== response.data.version) { - elem.append(' ' + - ' ' + - 'New version available: ' + response.data.version + - ''); - } - }); - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/graphiteFuncEditor.js b/app/dboards/src/app/directives/graphiteFuncEditor.js deleted file mode 100644 index b2a3f45..0000000 --- a/app/dboards/src/app/directives/graphiteFuncEditor.js +++ /dev/null @@ -1,242 +0,0 @@ -define([ - 'angular', - 'underscore', - 'jquery', -], -function (angular, _, $) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('graphiteFuncEditor', function($compile) { - - var funcSpanTemplate = '{{func.def.name}}('; - var paramTemplate = ''; - - var funcControlsTemplate = - '
    ' + - '' + - '' + - '' + - '' + - '
    '; - - return { - restrict: 'A', - link: function postLink($scope, elem) { - var $funcLink = $(funcSpanTemplate); - var $funcControls = $(funcControlsTemplate); - var func = $scope.func; - var funcDef = func.def; - var scheduledRelink = false; - var paramCountAtLink = 0; - - function clickFuncParam(paramIndex) { - /*jshint validthis:true */ - - var $link = $(this); - var $input = $link.next(); - - $input.val(func.params[paramIndex]); - $input.css('width', ($link.width() + 16) + 'px'); - - $link.hide(); - $input.show(); - $input.focus(); - $input.select(); - - var typeahead = $input.data('typeahead'); - if (typeahead) { - $input.val(''); - typeahead.lookup(); - } - } - - function scheduledRelinkIfNeeded() { - if (paramCountAtLink === func.params.length) { - return; - } - - if (!scheduledRelink) { - scheduledRelink = true; - setTimeout(function() { - relink(); - scheduledRelink = false; - }, 200); - } - } - - function inputBlur(paramIndex) { - /*jshint validthis:true */ - - var $input = $(this); - var $link = $input.prev(); - - if ($input.val() !== '' || func.def.params[paramIndex].optional) { - $link.text($input.val()); - - func.updateParam($input.val(), paramIndex); - scheduledRelinkIfNeeded(); - - $scope.$apply($scope.targetChanged); - } - - $input.hide(); - $link.show(); - } - - function inputKeyPress(paramIndex, e) { - /*jshint validthis:true */ - - if(e.which === 13) { - inputBlur.call(this, paramIndex); - } - } - - function inputKeyDown() { - /*jshint validthis:true */ - this.style.width = (3 + this.value.length) * 8 + 'px'; - } - - function addTypeahead($input, paramIndex) { - $input.attr('data-provide', 'typeahead'); - - var options = funcDef.params[paramIndex].options; - if (funcDef.params[paramIndex].type === 'int') { - options = _.map(options, function(val) { return val.toString(); }); - } - - $input.typeahead({ - source: options, - minLength: 0, - items: 20, - updater: function (value) { - setTimeout(function() { - inputBlur.call($input[0], paramIndex); - }, 0); - return value; - } - }); - - var typeahead = $input.data('typeahead'); - typeahead.lookup = function () { - this.query = this.$element.val() || ''; - return this.process(this.source); - }; - } - - function toggleFuncControls() { - var targetDiv = elem.closest('.grafana-target-inner'); - - if (elem.hasClass('show-function-controls')) { - elem.removeClass('show-function-controls'); - targetDiv.removeClass('has-open-function'); - $funcControls.hide(); - return; - } - - elem.addClass('show-function-controls'); - targetDiv.addClass('has-open-function'); - - $funcControls.show(); - } - - function addElementsAndCompile() { - $funcControls.appendTo(elem); - $funcLink.appendTo(elem); - - _.each(funcDef.params, function(param, index) { - if (param.optional && !func.params[index]) { - return; - } - - if (index > 0) { - $(', ').appendTo(elem); - } - - var $paramLink = $('' + func.params[index] + ''); - var $input = $(paramTemplate); - - paramCountAtLink++; - - $paramLink.appendTo(elem); - $input.appendTo(elem); - - $input.blur(_.partial(inputBlur, index)); - $input.keyup(inputKeyDown); - $input.keypress(_.partial(inputKeyPress, index)); - $paramLink.click(_.partial(clickFuncParam, index)); - - if (funcDef.params[index].options) { - addTypeahead($input, index); - } - - }); - - $(')').appendTo(elem); - - $compile(elem.contents())($scope); - } - - function ifJustAddedFocusFistParam() { - if ($scope.func.added) { - $scope.func.added = false; - setTimeout(function() { - elem.find('.graphite-func-param-link').first().click(); - }, 10); - } - } - - function registerFuncControlsToggle() { - $funcLink.click(toggleFuncControls); - } - - function registerFuncControlsActions() { - $funcControls.click(function(e) { - var $target = $(e.target); - if ($target.hasClass('icon-remove')) { - toggleFuncControls(); - $scope.$apply(function() { - $scope.removeFunction($scope.func); - }); - return; - } - - if ($target.hasClass('icon-arrow-left')) { - $scope.$apply(function() { - _.move($scope.functions, $scope.$index, $scope.$index - 1); - }); - return; - } - - if ($target.hasClass('icon-arrow-right')) { - $scope.$apply(function() { - _.move($scope.functions, $scope.$index, $scope.$index + 1); - }); - return; - } - - if ($target.hasClass('icon-info-sign')) { - window.open("http://graphite.readthedocs.org/en/latest/functions.html#graphite.render.functions." + funcDef.name,'_blank'); - return; - } - }); - } - - function relink() { - elem.children().remove(); - - addElementsAndCompile(); - ifJustAddedFocusFistParam(); - registerFuncControlsToggle(); - registerFuncControlsActions(); - } - - relink(); - } - }; - - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/influxdbFuncEditor.js b/app/dboards/src/app/directives/influxdbFuncEditor.js deleted file mode 100644 index 4633ac3..0000000 --- a/app/dboards/src/app/directives/influxdbFuncEditor.js +++ /dev/null @@ -1,136 +0,0 @@ -define([ - 'angular', - 'underscore', - 'jquery', -], -function (angular, _, $) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('influxdbFuncEditor', function($compile) { - - var funcSpanTemplate = '{{target.function}}('; - - var paramTemplate = ''; - - return { - restrict: 'A', - link: function postLink($scope, elem) { - var $funcLink = $(funcSpanTemplate); - - $scope.functionMenu = _.map($scope.functions, function(func) { - return { - text: func, - click: "changeFunction('" + func + "');" - }; - }); - - function clickFuncParam() { - /*jshint validthis:true */ - - var $link = $(this); - var $input = $link.next(); - - $input.val($scope.target.column); - $input.css('width', ($link.width() + 16) + 'px'); - - $link.hide(); - $input.show(); - $input.focus(); - $input.select(); - - var typeahead = $input.data('typeahead'); - if (typeahead) { - $input.val(''); - typeahead.lookup(); - } - } - - function inputBlur() { - /*jshint validthis:true */ - - var $input = $(this); - var $link = $input.prev(); - - if ($input.val() !== '') { - $link.text($input.val()); - - $scope.target.column = $input.val(); - $scope.$apply($scope.get_data); - } - - $input.hide(); - $link.show(); - } - - function inputKeyPress(e) { - /*jshint validthis:true */ - - if(e.which === 13) { - inputBlur.call(this); - } - } - - function inputKeyDown() { - /*jshint validthis:true */ - this.style.width = (3 + this.value.length) * 8 + 'px'; - } - - function addTypeahead($input) { - $input.attr('data-provide', 'typeahead'); - - $input.typeahead({ - source: function () { - return $scope.listColumns.apply(null, arguments); - }, - minLength: 0, - items: 20, - updater: function (value) { - setTimeout(function() { - inputBlur.call($input[0]); - }, 0); - return value; - } - }); - - var typeahead = $input.data('typeahead'); - typeahead.lookup = function () { - var items; - this.query = this.$element.val() || ''; - items = this.source(this.query, $.proxy(this.process, this)); - return items ? this.process(items) : items; - }; - } - - function addElementsAndCompile() { - $funcLink.appendTo(elem); - - var $paramLink = $('' + $scope.target.column + ''); - var $input = $(paramTemplate); - - $paramLink.appendTo(elem); - $input.appendTo(elem); - - $input.blur(inputBlur); - $input.keyup(inputKeyDown); - $input.keypress(inputKeyPress); - $paramLink.click(clickFuncParam); - - addTypeahead($input); - - $(')').appendTo(elem); - - $compile(elem.contents())($scope); - } - - addElementsAndCompile(); - - } - }; - - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/kibanaPanel.js b/app/dboards/src/app/directives/kibanaPanel.js deleted file mode 100644 index a58b76d..0000000 --- a/app/dboards/src/app/directives/kibanaPanel.js +++ /dev/null @@ -1,118 +0,0 @@ -define([ - 'angular', - 'jquery', - 'underscore', - '../controllers/panelBaseCtrl' -], -function (angular, $, _, PanelBaseCtrl) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('kibanaPanel', function($compile, $timeout, $rootScope, $injector) { - - var container = '
    '; - var content = '
    '; - - var panelHeader = - '
    '+ - '
    ' + - '
    ' + - '×' + - ' Oops! {{panel.error}} ' + - 'View details' + - '
    ' + - '
    \n' + - - '
    ' + - '
    ' + - - '' + - '' + - '' + - - '' + - '' + - '{{panel.title || "No title"}}' + - '' + - ''+ - - '
    '+ - '
    \n'+ - '
    '; - - return { - restrict: 'E', - link: function($scope, elem, attr) { - // once we have the template, scan it for controllers and - // load the module.js if we have any - var newScope = $scope.$new(); - - $scope.kbnJqUiDraggableOptions = { - revert: 'invalid', - helper: function() { - return $('
    '); - }, - placeholder: 'keep' - }; - - // compile the module and uncloack. We're done - function loadModule($module) { - $module.appendTo(elem); - elem.wrap(container); - /* jshint indent:false */ - $compile(elem.contents())(newScope); - elem.removeClass("ng-cloak"); - } - - newScope.$on('$destroy',function() { - elem.unbind(); - elem.remove(); - }); - - newScope.initBaseController = function(self, scope) { - $injector.invoke(PanelBaseCtrl, self, { $scope: scope }); - }; - - $scope.$watch(attr.type, function (name) { - elem.addClass("ng-cloak"); - // load the panels module file, then render it in the dom. - var nameAsPath = name.replace(".", "/"); - $scope.require([ - 'jquery', - 'text!panels/'+nameAsPath+'/module.html' - ], function ($, moduleTemplate) { - var $module = $(moduleTemplate); - // top level controllers - var $controllers = $module.filter('ngcontroller, [ng-controller], .ng-controller'); - // add child controllers - $controllers = $controllers.add($module.find('ngcontroller, [ng-controller], .ng-controller')); - - if ($controllers.length) { - $controllers.first().prepend(panelHeader); - $controllers.first().find('.panel-header').nextAll().wrapAll(content); - - $scope.require(['panels/' + nameAsPath + '/module'], function() { - loadModule($module); - }); - } else { - loadModule($module); - } - }); - }); - - } - }; - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/kibanaSimplePanel.js b/app/dboards/src/app/directives/kibanaSimplePanel.js deleted file mode 100644 index bb6b44c..0000000 --- a/app/dboards/src/app/directives/kibanaSimplePanel.js +++ /dev/null @@ -1,77 +0,0 @@ -define([ - 'angular', - 'underscore' -], -function (angular, _) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('kibanaSimplePanel', function($compile) { - var panelLoading = '' + - ''+ - ' loading ...' + - ''+ - ''; - - return { - restrict: 'E', - link: function($scope, elem, attr) { - - // once we have the template, scan it for controllers and - // load the module.js if we have any - - // compile the module and uncloack. We're done - function loadModule($module) { - $module.appendTo(elem); - /* jshint indent:false */ - $compile(elem.contents())($scope); - elem.removeClass("ng-cloak"); - } - - function loadController(name) { - elem.addClass("ng-cloak"); - // load the panels module file, then render it in the dom. - var nameAsPath = name.replace(".", "/"); - $scope.require([ - 'jquery', - 'text!panels/'+nameAsPath+'/module.html' - ], function ($, moduleTemplate) { - var $module = $(moduleTemplate); - // top level controllers - var $controllers = $module.filter('ngcontroller, [ng-controller], .ng-controller'); - // add child controllers - $controllers = $controllers.add($module.find('ngcontroller, [ng-controller], .ng-controller')); - - if ($controllers.length) { - $controllers.first().prepend(panelLoading); - $scope.require([ - 'panels/'+nameAsPath+'/module' - ], function() { - loadModule($module); - }); - } else { - loadModule($module); - } - }); - } - - $scope.$watch(attr.type, function (name) { - loadController(name); - }); - - if(attr.panel) { - $scope.$watch(attr.panel, function (panel) { - // If the panel attribute is specified, create a new scope. This ruins configuration - // so don't do it with anything that needs to use editor.html - if(!_.isUndefined(panel)) { - $scope = $scope.$new(); - $scope.panel = angular.fromJson(panel); - } - }); - } - } - }; - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/ngBlur.js b/app/dboards/src/app/directives/ngBlur.js deleted file mode 100644 index 663d33f..0000000 --- a/app/dboards/src/app/directives/ngBlur.js +++ /dev/null @@ -1,20 +0,0 @@ -define([ - 'angular' -], -function (angular) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('ngBlur', ['$parse', function($parse) { - return function(scope, element, attr) { - var fn = $parse(attr['ngBlur']); - element.bind('blur', function(event) { - scope.$apply(function() { - fn(scope, {$event:event}); - }); - }); - }; - }]); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/ngModelOnBlur.js b/app/dboards/src/app/directives/ngModelOnBlur.js deleted file mode 100644 index 5ea9021..0000000 --- a/app/dboards/src/app/directives/ngModelOnBlur.js +++ /dev/null @@ -1,25 +0,0 @@ -define(['angular'], -function (angular) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('ngModelOnblur', function() { - return { - restrict: 'A', - require: 'ngModel', - link: function(scope, elm, attr, ngModelCtrl) { - if (attr.type === 'radio' || attr.type === 'checkbox') { - return; - } - - elm.unbind('input').unbind('keydown').unbind('change'); - elm.bind('blur', function() { - scope.$apply(function() { - ngModelCtrl.$setViewValue(elm.val()); - }); - }); - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/spectrumPicker.js b/app/dboards/src/app/directives/spectrumPicker.js deleted file mode 100644 index 6415474..0000000 --- a/app/dboards/src/app/directives/spectrumPicker.js +++ /dev/null @@ -1,38 +0,0 @@ -define([ - 'angular', - 'spectrum' -], -function (angular) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('spectrumPicker', function() { - return { - restrict: 'E', - require: 'ngModel', - scope: false, - replace: true, - template: "", - link: function(scope, element, attrs, ngModel) { - var input = element.find('input'); - var options = angular.extend({ - showAlpha: true, - showButtons: false, - color: ngModel.$viewValue, - change: function(color) { - scope.$apply(function() { - ngModel.$setViewValue(color.toRgbString()); - }); - } - }, scope.$eval(attrs.options)); - - ngModel.$render = function() { - input.spectrum('set', ngModel.$viewValue || ''); - }; - - input.spectrum(options); - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/directives/tip.js b/app/dboards/src/app/directives/tip.js deleted file mode 100644 index ab767da..0000000 --- a/app/dboards/src/app/directives/tip.js +++ /dev/null @@ -1,20 +0,0 @@ -define([ - 'angular', - 'kbn' -], -function (angular, kbn) { - 'use strict'; - - angular - .module('kibana.directives') - .directive('tip', function($compile) { - return { - restrict: 'E', - link: function(scope, elem, attrs) { - var _t = ''; - elem.replaceWith($compile(angular.element(_t))(scope)); - } - }; - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/filters/all.js b/app/dboards/src/app/filters/all.js deleted file mode 100755 index e4ffe70..0000000 --- a/app/dboards/src/app/filters/all.js +++ /dev/null @@ -1,117 +0,0 @@ -define(['angular', 'jquery', 'underscore', 'moment'], function (angular, $, _, moment) { - 'use strict'; - - var module = angular.module('kibana.filters'); - - module.filter('stringSort', function() { - return function(input) { - return input.sort(); - }; - }); - - /* - Filter an array of objects by elasticsearch version requirements - */ - module.filter('esVersion', function(esVersion) { - return function(items, require) { - var ret = _.filter(items,function(qt) { - return esVersion.is(qt[require]) ? true : false; - }); - return ret; - }; - }); - - module.filter('slice', function() { - return function(arr, start, end) { - if(!_.isUndefined(arr)) { - return arr.slice(start, end); - } - }; - }); - - module.filter('stringify', function() { - return function(arr) { - if(_.isObject(arr) && !_.isArray(arr)) { - return angular.toJson(arr); - } else { - return _.isNull(arr) ? null : arr.toString(); - } - }; - }); - - module.filter('moment', function() { - return function(date,mode) { - switch(mode) { - case 'ago': - return moment(date).fromNow(); - } - return moment(date).fromNow(); - }; - }); - - module.filter('noXml', function() { - var noXml = function(text) { - return _.isString(text) - ? text - .replace(/&/g, '&') - .replace(//g, '>') - .replace(/'/g, ''') - .replace(/"/g, '"') - : text; - }; - return function(text) { - return _.isArray(text) - ? _.map(text, noXml) - : noXml(text); - }; - }); - - module.filter('urlLink', function() { - var //URLs starting with http://, https://, or ftp:// - r1 = /(\b(https?|ftp):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gim, - //URLs starting with "www." (without // before it, or it'd re-link the ones done above). - r2 = /(^|[^\/])(www\.[\S]+(\b|$))/gim, - //Change email addresses to mailto:: links. - r3 = /(\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,6})/gim; - - var urlLink = function(text) { - var t1,t2,t3; - if(!_.isString(text)) { - return text; - } else { - _.each(text.match(r1), function() { - t1 = text.replace(r1, "$1"); - }); - text = t1 || text; - _.each(text.match(r2), function() { - t2 = text.replace(r2, "$1$2"); - }); - text = t2 || text; - _.each(text.match(r3), function() { - t3 = text.replace(r3, "$1"); - }); - text = t3 || text; - return text; - } - }; - return function(text) { - return _.isArray(text) - ? _.map(text, urlLink) - : urlLink(text); - }; - }); - - module.filter('gistid', function() { - var gist_pattern = /(\d{5,})|([a-z0-9]{10,})|(gist.github.com(\/*.*)\/[a-z0-9]{5,}\/*$)/; - return function(input) { - if(!(_.isUndefined(input))) { - var output = input.match(gist_pattern); - if(!_.isNull(output) && !_.isUndefined(output)) { - return output[0].replace(/.*\//, ''); - } - } - }; - }); - -}); \ No newline at end of file diff --git a/app/dboards/src/app/panels/annotations/editor.html b/app/dboards/src/app/panels/annotations/editor.html deleted file mode 100644 index 38435b5..0000000 --- a/app/dboards/src/app/panels/annotations/editor.html +++ /dev/null @@ -1,76 +0,0 @@ - - - \ No newline at end of file diff --git a/app/dboards/src/app/panels/annotations/module.html b/app/dboards/src/app/panels/annotations/module.html deleted file mode 100644 index 0441ed1..0000000 --- a/app/dboards/src/app/panels/annotations/module.html +++ /dev/null @@ -1,12 +0,0 @@ -
    - - - - - -
    \ No newline at end of file diff --git a/app/dboards/src/app/panels/annotations/module.js b/app/dboards/src/app/panels/annotations/module.js deleted file mode 100644 index 389a9b0..0000000 --- a/app/dboards/src/app/panels/annotations/module.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - - ## annotations - -*/ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - var module = angular.module('kibana.panels.annotations', []); - app.useModule(module); - - module.controller('AnnotationsCtrl', function($scope, dashboard, $rootScope) { - - $scope.panelMeta = { - status : "Stable", - description : "Annotations" - }; - - // Set and populate defaults - var _d = { - annotations: [] - }; - - var annotationDefaults = { - name: '', - type: 'graphite metric', - showLine: true, - iconColor: '#C0C6BE', - lineColor: 'rgba(255, 96, 96, 0.592157)', - iconSize: 13, - enable: true - }; - - _.defaults($scope.panel,_d); - - $scope.init = function() { - $scope.currentAnnnotation = angular.copy(annotationDefaults); - $scope.currentIsNew = true; - }; - - $scope.edit = function(annotation) { - $scope.currentAnnnotation = annotation; - $scope.currentIsNew = false; - }; - - $scope.update = function() { - $scope.currentAnnnotation = angular.copy(annotationDefaults); - $scope.currentIsNew = true; - }; - - $scope.add = function() { - $scope.panel.annotations.push($scope.currentAnnnotation); - $scope.currentAnnnotation = angular.copy(annotationDefaults); - }; - - $scope.hide = function (annotation) { - annotation.enable = !annotation.enable; - $rootScope.$broadcast('refresh'); - }; - - }); -}); \ No newline at end of file diff --git a/app/dboards/src/app/panels/filtering/module.html b/app/dboards/src/app/panels/filtering/module.html deleted file mode 100755 index 96b5751..0000000 --- a/app/dboards/src/app/panels/filtering/module.html +++ /dev/null @@ -1,50 +0,0 @@ -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
      -
    • - name:
      - -
    • -
    • - filter.query:
      - -
    • -
    • - - -
    • -
    -
    - - -
    -
    -
    - -
    -
    diff --git a/app/dboards/src/app/panels/filtering/module.js b/app/dboards/src/app/panels/filtering/module.js deleted file mode 100644 index 46a88fa..0000000 --- a/app/dboards/src/app/panels/filtering/module.js +++ /dev/null @@ -1,104 +0,0 @@ -/* - - ## filtering - -*/ -define([ - 'angular', - 'app', - 'underscore' -], -function (angular, app, _) { - 'use strict'; - - var module = angular.module('kibana.panels.filtering', []); - app.useModule(module); - - module.controller('filtering', function($scope, datasourceSrv, $rootScope, $timeout, $q) { - - $scope.panelMeta = { - status : "Stable", - description : "graphite target filters" - }; - - // Set and populate defaults - var _d = { - }; - _.defaults($scope.panel,_d); - - $scope.init = function() { - // empty. Don't know if I need the function then. - }; - - $scope.remove = function(templateParameter) { - $scope.filter.removeTemplateParameter(templateParameter); - }; - - $scope.filterOptionSelected = function(templateParameter, option, recursive) { - templateParameter.current = option; - - $scope.filter.updateTemplateData(); - - return $scope.applyFilterToOtherFilters(templateParameter) - .then(function() { - // only refresh in the outermost call - if (!recursive) { - $scope.dashboard.refresh(); - } - }); - }; - - $scope.applyFilterToOtherFilters = function(updatedTemplatedParam) { - var promises = _.map($scope.filter.templateParameters, function(templateParam) { - if (templateParam === updatedTemplatedParam) { - return; - } - if (templateParam.query.indexOf(updatedTemplatedParam.name) !== -1) { - return $scope.applyFilter(templateParam); - } - }); - - return $q.all(promises); - }; - - $scope.applyFilter = function(templateParam) { - return datasourceSrv.default.metricFindQuery($scope.filter, templateParam.query) - .then(function (results) { - templateParam.editing = undefined; - templateParam.options = _.map(results, function(node) { - return { text: node.text, value: node.text }; - }); - - if (templateParam.includeAll) { - var allExpr = '{'; - _.each(templateParam.options, function(option) { - allExpr += option.text + ','; - }); - allExpr = allExpr.substring(0, allExpr.length - 1) + '}'; - templateParam.options.unshift({text: 'All', value: allExpr}); - } - - // if parameter has current value - // if it exists in options array keep value - if (templateParam.current) { - var currentExists = _.findWhere(templateParam.options, { value: templateParam.current.value }); - if (currentExists) { - return $scope.filterOptionSelected(templateParam, templateParam.current, true); - } - } - - return $scope.filterOptionSelected(templateParam, templateParam.options[0], true); - }); - }; - - $scope.add = function() { - $scope.filter.addTemplateParameter({ - type : 'filter', - name : 'filter name', - editing : true, - query : 'metric.path.query.*', - }); - }; - - }); -}); diff --git a/app/dboards/src/app/panels/graph/axisEditor.html b/app/dboards/src/app/panels/graph/axisEditor.html deleted file mode 100644 index eb8ac3f..0000000 --- a/app/dboards/src/app/panels/graph/axisEditor.html +++ /dev/null @@ -1,113 +0,0 @@ - -
    -
    -
    Left Y Axis
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    -
    -
    Right Y Axis
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    -
    - - -
    - -
    -
    Grid thresholds
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - -
    -
    - -
    -
    Legend
    -
    - -
    -
    - -
    -
    - -
    -
    Legend values
    -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    - -
    -
    Show Axes
    -
    - -
    -
    - -
    -
    - -
    diff --git a/app/dboards/src/app/panels/graph/legend.html b/app/dboards/src/app/panels/graph/legend.html deleted file mode 100755 index 84aab50..0000000 --- a/app/dboards/src/app/panels/graph/legend.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - {{series.alias}} - - - -   Current: {{series.current}}  - - -   Min: {{series.min}}  - - -   Max: {{series.max}}  - - -   Total: {{series.total}}  - - -   Avg: {{series.avg}}  - - - - - - diff --git a/app/dboards/src/app/panels/graph/module.html b/app/dboards/src/app/panels/graph/module.html deleted file mode 100644 index 1139d88..0000000 --- a/app/dboards/src/app/panels/graph/module.html +++ /dev/null @@ -1,33 +0,0 @@ -
    - -
    - -
    - No datapoints Can be caused by timezone mismatch between browser and graphite server - Datapoints outside time range Can be caused by timezone mismatch between browser and graphite server -
    - -
    -
    - -
    - -
    -
    -
    -
    - -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    \ No newline at end of file diff --git a/app/dboards/src/app/panels/graph/module.js b/app/dboards/src/app/panels/graph/module.js deleted file mode 100644 index 6699436..0000000 --- a/app/dboards/src/app/panels/graph/module.js +++ /dev/null @@ -1,430 +0,0 @@ -/** @scratch /panels/5 - * include::panels/histogram.asciidoc[] - */ - -/** @scratch /panels/histogram/0 - * == Histogram - * Status: *Stable* - * - * The histogram panel allow for the display of time charts. It includes several modes and tranformations - * to display event counts, mean, min, max and total of numeric fields, and derivatives of counter - * fields. - * - */ -define([ - 'angular', - 'app', - 'jquery', - 'underscore', - 'kbn', - 'moment', - './timeSeries', - 'services/annotationsSrv', - 'services/datasourceSrv', - 'jquery.flot', - 'jquery.flot.events', - 'jquery.flot.selection', - 'jquery.flot.time', - 'jquery.flot.byte', - 'jquery.flot.stack', - 'jquery.flot.stackpercent' -], -function (angular, app, $, _, kbn, moment, timeSeries) { - - 'use strict'; - - var module = angular.module('kibana.panels.graph', []); - app.useModule(module); - - module.controller('graph', function($scope, $rootScope, datasourceSrv, $timeout, annotationsSrv) { - - $scope.panelMeta = { - modals : [], - editorTabs: [], - fullEditorTabs : [ - { - title: 'General', - src:'app/partials/panelgeneral.html' - }, - { - title: 'Metrics', - src:'app/partials/metrics.html' - }, - { - title:'Axes & Grid', - src:'app/panels/graph/axisEditor.html' - }, - { - title:'Display Styles', - src:'app/panels/graph/styleEditor.html' - } - ], - fullscreenEdit: true, - fullscreenView: true, - description : "Graphing" - }; - - // Set and populate defaults - var _d = { - - datasource: null, - - /** @scratch /panels/histogram/3 - * renderer:: sets client side (flot) or native graphite png renderer (png) - */ - renderer: 'flot', - /** @scratch /panels/histogram/3 - * x-axis:: Show the x-axis - */ - 'x-axis' : true, - /** @scratch /panels/histogram/3 - * y-axis:: Show the y-axis - */ - 'y-axis' : true, - /** @scratch /panels/histogram/3 - * scale:: Scale the y-axis by this factor - */ - scale : 1, - /** @scratch /panels/histogram/3 - * y_formats :: 'none','bytes','bits','short', 's', 'ms' - */ - y_formats : ['short', 'short'], - /** @scratch /panels/histogram/5 - * grid object:: Min and max y-axis values - * grid.min::: Minimum y-axis value - * grid.ma1::: Maximum y-axis value - */ - grid : { - leftMax: null, - rightMax: null, - leftMin: null, - rightMin: null, - threshold1: null, - threshold2: null, - threshold1Color: 'rgba(216, 200, 27, 0.27)', - threshold2Color: 'rgba(234, 112, 112, 0.22)' - }, - - annotate : { - enable : false, - }, - - /** @scratch /panels/histogram/3 - * resolution:: If auto_int is true, shoot for this many bars. - */ - resolution : 100, - - /** @scratch /panels/histogram/3 - * ==== Drawing options - * lines:: Show line chart - */ - lines : true, - /** @scratch /panels/histogram/3 - * fill:: Area fill factor for line charts, 1-10 - */ - fill : 0, - /** @scratch /panels/histogram/3 - * linewidth:: Weight of lines in pixels - */ - linewidth : 1, - /** @scratch /panels/histogram/3 - * points:: Show points on chart - */ - points : false, - /** @scratch /panels/histogram/3 - * pointradius:: Size of points in pixels - */ - pointradius : 5, - /** @scratch /panels/histogram/3 - * bars:: Show bars on chart - */ - bars : false, - /** @scratch /panels/histogram/3 - * stack:: Stack multiple series - */ - stack : false, - /** @scratch /panels/histogram/3 - * legend:: Display the legend - */ - legend: { - show: true, // disable/enable legend - values: false, // disable/enable legend values - min: false, - max: false, - current: false, - total: false, - avg: false - }, - /** @scratch /panels/histogram/3 - * ==== Transformations - /** @scratch /panels/histogram/3 - * percentage:: Show the y-axis as a percentage of the axis total. Only makes sense for multiple - * queries - */ - percentage : false, - /** @scratch /panels/histogram/3 - * zerofill:: Improves the accuracy of line charts at a small performance cost. - */ - zerofill : true, - - nullPointMode : 'connected', - - steppedLine: false, - - tooltip : { - value_type: 'cumulative', - query_as_alias: true - }, - - targets: [], - - aliasColors: {}, - aliasYAxis: {}, - }; - - _.defaults($scope.panel,_d); - _.defaults($scope.panel.tooltip, _d.tooltip); - _.defaults($scope.panel.annotate, _d.annotate); - _.defaults($scope.panel.grid, _d.grid); - - // backward compatible stuff - if (_.isBoolean($scope.panel.legend)) { - $scope.panel.legend = { show: $scope.panel.legend }; - _.defaults($scope.panel.legend, _d.legend); - } - - if ($scope.panel.grid.min) { - $scope.panel.grid.leftMin = $scope.panel.grid.min; - delete $scope.panel.grid.min; - } - - if ($scope.panel.grid.max) { - $scope.panel.grid.leftMax = $scope.panel.grid.max; - delete $scope.panel.grid.max; - } - - if ($scope.panel.y_format) { - $scope.panel.y_formats[0] = $scope.panel.y_format; - delete $scope.panel.y_format; - } - - if ($scope.panel.y2_format) { - $scope.panel.y_formats[1] = $scope.panel.y2_format; - delete $scope.panel.y2_format; - } - - $scope.init = function() { - $scope.initBaseController(this, $scope); - - $scope.fullscreen = false; - $scope.editor = { index: 1 }; - $scope.editorTabs = _.pluck($scope.panelMeta.fullEditorTabs,'title'); - $scope.hiddenSeries = {}; - - $scope.datasources = datasourceSrv.listOptions(); - $scope.setDatasource($scope.panel.datasource); - - if ($scope.panel.targets.length === 0) { - $scope.panel.targets.push({}); - } - }; - - $scope.setDatasource = function(datasource) { - $scope.panel.datasource = datasource; - $scope.datasource = datasourceSrv.get(datasource); - - if (!$scope.datasource) { - $scope.panel.error = "Cannot find datasource " + datasource; - return; - } - - $scope.get_data(); - }; - - $scope.removeTarget = function (target) { - $scope.panel.targets = _.without($scope.panel.targets, target); - $scope.get_data(); - }; - - $scope.updateTimeRange = function () { - $scope.range = this.filter.timeRange(); - $scope.rangeUnparsed = this.filter.timeRange(false); - $scope.resolution = Math.ceil($(window).width() * ($scope.panel.span / 12)); - $scope.interval = '10m'; - - if ($scope.range) { - $scope.interval = kbn.secondsToHms( - kbn.calculate_interval($scope.range.from, $scope.range.to, $scope.resolution, 0) / 1000 - ); - } - }; - - $scope.get_data = function() { - delete $scope.panel.error; - - $scope.panelMeta.loading = true; - - $scope.updateTimeRange(); - - var graphiteQuery = { - range: $scope.rangeUnparsed, - interval: $scope.interval, - targets: $scope.panel.targets, - format: $scope.panel.renderer === 'png' ? 'png' : 'json', - maxDataPoints: $scope.resolution, - datasource: $scope.panel.datasource - }; - - $scope.annotationsPromise = annotationsSrv.getAnnotations($scope.filter, $scope.rangeUnparsed); - - return $scope.datasource.query($scope.filter, graphiteQuery) - .then($scope.dataHandler) - .then(null, function(err) { - $scope.panelMeta.loading = false; - $scope.panel.error = err.message || "Timeseries data request error"; - $scope.inspector.error = err; - $scope.render([]); - }); - }; - - $scope.dataHandler = function(results) { - $scope.panelMeta.loading = false; - $scope.legend = []; - - // png renderer returns just a url - if (_.isString(results)) { - $scope.render(results); - return; - } - - $scope.datapointsWarning = false; - $scope.datapointsCount = 0; - $scope.datapointsOutside = false; - - var data = _.map(results.data, $scope.seriesHandler); - - $scope.datapointsWarning = $scope.datapointsCount || !$scope.datapointsOutside; - - $scope.annotationsPromise - .then(function(annotations) { - data.annotations = annotations; - $scope.render(data); - }, function() { - $scope.render(data); - }); - }; - - $scope.seriesHandler = function(seriesData, index) { - var datapoints = seriesData.datapoints; - var alias = seriesData.target; - var color = $scope.panel.aliasColors[alias] || $scope.colors[index]; - var yaxis = $scope.panel.aliasYAxis[alias] || 1; - - var seriesInfo = { - alias: alias, - color: color, - enable: true, - yaxis: yaxis - }; - - $scope.legend.push(seriesInfo); - - var series = new timeSeries.ZeroFilled({ - datapoints: datapoints, - info: seriesInfo, - }); - - if (datapoints && datapoints.length > 0) { - var last = moment.utc(datapoints[datapoints.length - 1][1] * 1000); - var from = moment.utc($scope.range.from); - if (last - from < -10000) { - $scope.datapointsOutside = true; - } - - $scope.datapointsCount += datapoints.length; - } - - return series; - }; - - $scope.add_target = function() { - $scope.panel.targets.push({target: ''}); - }; - - $scope.otherPanelInFullscreenMode = function() { - return $rootScope.fullscreen && !$scope.fullscreen; - }; - - $scope.render = function(data) { - $scope.$emit('render', data); - }; - - $scope.changeSeriesColor = function(series, color) { - series.color = color; - $scope.panel.aliasColors[series.alias] = series.color; - $scope.render(); - }; - - $scope.toggleSeries = function(serie, event) { - if ($scope.hiddenSeries[serie.alias]) { - delete $scope.hiddenSeries[serie.alias]; - } - else { - $scope.hiddenSeries[serie.alias] = true; - } - - if (event.ctrlKey || event.metaKey || event.shiftKey) { - $scope.toggleSeriesExclusiveMode(serie); - } - - $scope.$emit('toggleLegend', $scope.legend); - }; - - $scope.toggleSeriesExclusiveMode = function(serie) { - var hidden = $scope.hiddenSeries; - - if (hidden[serie.alias]) { - delete hidden[serie.alias]; - } - - // check if every other series is hidden - var alreadyExclusive = _.every($scope.legend, function(value) { - if (value.alias === serie.alias) { - return true; - } - - return hidden[value.alias]; - }); - - if (alreadyExclusive) { - // remove all hidden series - _.each($scope.legend, function(value) { - delete $scope.hiddenSeries[value.alias]; - }); - } - else { - // hide all but this serie - _.each($scope.legend, function(value) { - if (value.alias === serie.alias) { - return; - } - - $scope.hiddenSeries[value.alias] = true; - }); - } - }; - - $scope.toggleYAxis = function(info) { - info.yaxis = info.yaxis === 2 ? 1 : 2; - $scope.panel.aliasYAxis[info.alias] = info.yaxis; - $scope.render(); - }; - - $scope.toggleGridMinMax = function(key) { - $scope.panel.grid[key] = _.toggle($scope.panel.grid[key], null, 0); - $scope.render(); - }; - - }); - -}); diff --git a/app/dboards/src/app/panels/graph/styleEditor.html b/app/dboards/src/app/panels/graph/styleEditor.html deleted file mode 100644 index ec18121..0000000 --- a/app/dboards/src/app/panels/graph/styleEditor.html +++ /dev/null @@ -1,66 +0,0 @@ - - -
    -
    -
    Chart Options
    -
    - -
    -
    - -
    -
    - -
    -
    - -
    -
    Line options
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - -
    -
    -
    -
    Multiple Series
    -
    - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    Rendering
    -
    - - -
    -
    - - -
    -
    -
    diff --git a/app/dboards/src/app/panels/graph/timeSeries.js b/app/dboards/src/app/panels/graph/timeSeries.js deleted file mode 100644 index 7bf692c..0000000 --- a/app/dboards/src/app/panels/graph/timeSeries.js +++ /dev/null @@ -1,74 +0,0 @@ -define([ - 'underscore', - 'kbn' -], -function (_, kbn) { - 'use strict'; - - var ts = {}; - - ts.ZeroFilled = function (opts) { - this.datapoints = opts.datapoints; - this.info = opts.info; - this.label = opts.info.alias; - }; - - ts.ZeroFilled.prototype.getFlotPairs = function (fillStyle, yFormats) { - var result = []; - - this.color = this.info.color; - this.yaxis = this.info.yaxis; - - this.info.total = 0; - this.info.max = null; - this.info.min = 212312321312; - - _.each(this.datapoints, function(valueArray) { - var currentTime = valueArray[1]; - var currentValue = valueArray[0]; - if (currentValue === null) { - if (fillStyle === 'connected') { - return; - } - if (fillStyle === 'null as zero') { - currentValue = 0; - } - } - - if (_.isNumber(currentValue)) { - this.info.total += currentValue; - } - - if (currentValue > this.info.max) { - this.info.max = currentValue; - } - - if (currentValue < this.info.min) { - this.info.min = currentValue; - } - - result.push([currentTime * 1000, currentValue]); - }, this); - - if (result.length > 2) { - this.info.timeStep = result[1][0] - result[0][0]; - } - - if (result.length) { - - this.info.avg = (this.info.total / result.length); - this.info.current = result[result.length-1][1]; - - var formater = kbn.getFormatFunction(yFormats[this.yaxis - 1], 2); - this.info.avg = this.info.avg != null ? formater(this.info.avg) : null; - this.info.current = this.info.current != null ? formater(this.info.current) : null; - this.info.min = this.info.min != null ? formater(this.info.min) : null; - this.info.max = this.info.max != null ? formater(this.info.max) : null; - this.info.total = this.info.total != null ? formater(this.info.total) : null; - } - - return result; - }; - - return ts; -}); \ No newline at end of file diff --git a/app/dboards/src/app/panels/text/editor.html b/app/dboards/src/app/panels/text/editor.html deleted file mode 100644 index 6af4dc0..0000000 --- a/app/dboards/src/app/panels/text/editor.html +++ /dev/null @@ -1,18 +0,0 @@ -
    -
    -
    - -
    -
    - -
    -
    - - - - -
    \ No newline at end of file diff --git a/app/dboards/src/app/panels/text/lib/showdown.js b/app/dboards/src/app/panels/text/lib/showdown.js deleted file mode 100644 index 9493071..0000000 --- a/app/dboards/src/app/panels/text/lib/showdown.js +++ /dev/null @@ -1,1454 +0,0 @@ -// -// showdown.js -- A javascript port of Markdown. -// -// Copyright (c) 2007 John Fraser. -// -// Original Markdown Copyright (c) 2004-2005 John Gruber -// -// -// Redistributable under a BSD-style open source license. -// See license.txt for more information. -// -// The full source distribution is at: -// -// A A L -// T C A -// T K B -// -// -// - -// -// Wherever possible, Showdown is a straight, line-by-line port -// of the Perl version of Markdown. -// -// This is not a normal parser design; it's basically just a -// series of string substitutions. It's hard to read and -// maintain this way, but keeping Showdown close to the original -// design makes it easier to port new features. -// -// More importantly, Showdown behaves like markdown.pl in most -// edge cases. So web applications can do client-side preview -// in Javascript, and then build identical HTML on the server. -// -// This port needs the new RegExp functionality of ECMA 262, -// 3rd Edition (i.e. Javascript 1.5). Most modern web browsers -// should do fine. Even with the new regular expression features, -// We do a lot of work to emulate Perl's regex functionality. -// The tricky changes in this file mostly have the "attacklab:" -// label. Major or self-explanatory changes don't. -// -// Smart diff tools like Araxis Merge will be able to match up -// this file with markdown.pl in a useful way. A little tweaking -// helps: in a copy of markdown.pl, replace "#" with "//" and -// replace "$text" with "text". Be sure to ignore whitespace -// and line endings. -// - - -// -// Showdown usage: -// -// var text = "Markdown *rocks*."; -// -// var converter = new Showdown.converter(); -// var html = converter.makeHtml(text); -// -// alert(html); -// -// Note: move the sample code to the bottom of this -// file before uncommenting it. -// - - -// -// Showdown namespace -// -var Showdown = { extensions: {} }; - -// -// forEach -// -var forEach = Showdown.forEach = function(obj, callback) { - if (typeof obj.forEach === 'function') { - obj.forEach(callback); - } else { - var i, len = obj.length; - for (i = 0; i < len; i++) { - callback(obj[i], i, obj); - } - } -}; - -// -// Standard extension naming -// -var stdExtName = function(s) { - return s.replace(/[_-]||\s/g, '').toLowerCase(); -}; - -// -// converter -// -// Wraps all "globals" so that the only thing -// exposed is makeHtml(). -// -Showdown.converter = function(converter_options) { - -// -// Globals: -// - -// Global hashes, used by various utility routines -var g_urls; -var g_titles; -var g_html_blocks; - -// Used to track when we're inside an ordered or unordered list -// (see _ProcessListItems() for details): -var g_list_level = 0; - -// Global extensions -var g_lang_extensions = []; -var g_output_modifiers = []; - - -// -// Automatic Extension Loading (node only): -// - -if (typeof module !== 'undefind' && typeof exports !== 'undefined' && typeof require !== 'undefind') { - var fs = require('fs'); - - if (fs) { - // Search extensions folder - var extensions = fs.readdirSync((__dirname || '.')+'/extensions').filter(function(file){ - return ~file.indexOf('.js'); - }).map(function(file){ - return file.replace(/\.js$/, ''); - }); - // Load extensions into Showdown namespace - Showdown.forEach(extensions, function(ext){ - var name = stdExtName(ext); - Showdown.extensions[name] = require('./extensions/' + ext); - }); - } -} - -this.makeHtml = function(text) { -// -// Main function. The order in which other subs are called here is -// essential. Link and image substitutions need to happen before -// _EscapeSpecialCharsWithinTagAttributes(), so that any *'s or _'s in the -// and tags get encoded. -// - - // Clear the global hashes. If we don't clear these, you get conflicts - // from other articles when generating a page which contains more than - // one article (e.g. an index page that shows the N most recent - // articles): - g_urls = {}; - g_titles = {}; - g_html_blocks = []; - - // attacklab: Replace ~ with ~T - // This lets us use tilde as an escape char to avoid md5 hashes - // The choice of character is arbitray; anything that isn't - // magic in Markdown will work. - text = text.replace(/~/g,"~T"); - - // attacklab: Replace $ with ~D - // RegExp interprets $ as a special character - // when it's in a replacement string - text = text.replace(/\$/g,"~D"); - - // Standardize line endings - text = text.replace(/\r\n/g,"\n"); // DOS to Unix - text = text.replace(/\r/g,"\n"); // Mac to Unix - - // Make sure text begins and ends with a couple of newlines: - text = "\n\n" + text + "\n\n"; - - // Convert all tabs to spaces. - text = _Detab(text); - - // Strip any lines consisting only of spaces and tabs. - // This makes subsequent regexen easier to write, because we can - // match consecutive blank lines with /\n+/ instead of something - // contorted like /[ \t]*\n+/ . - text = text.replace(/^[ \t]+$/mg,""); - - // Run language extensions - Showdown.forEach(g_lang_extensions, function(x){ - text = _ExecuteExtension(x, text); - }); - - // Handle github codeblocks prior to running HashHTML so that - // HTML contained within the codeblock gets escaped propertly - text = _DoGithubCodeBlocks(text); - - // Turn block-level HTML blocks into hash entries - text = _HashHTMLBlocks(text); - - // Strip link definitions, store in hashes. - text = _StripLinkDefinitions(text); - - text = _RunBlockGamut(text); - - text = _UnescapeSpecialChars(text); - - // attacklab: Restore dollar signs - text = text.replace(/~D/g,"$$"); - - // attacklab: Restore tildes - text = text.replace(/~T/g,"~"); - - // Run output modifiers - Showdown.forEach(g_output_modifiers, function(x){ - text = _ExecuteExtension(x, text); - }); - - return text; -}; -// -// Options: -// - -// Parse extensions options into separate arrays -if (converter_options && converter_options.extensions) { - - var self = this; - - // Iterate over each plugin - Showdown.forEach(converter_options.extensions, function(plugin){ - - // Assume it's a bundled plugin if a string is given - if (typeof plugin === 'string') { - plugin = Showdown.extensions[stdExtName(plugin)]; - } - - if (typeof plugin === 'function') { - // Iterate over each extension within that plugin - Showdown.forEach(plugin(self), function(ext){ - // Sort extensions by type - if (ext.type) { - if (ext.type === 'language' || ext.type === 'lang') { - g_lang_extensions.push(ext); - } else if (ext.type === 'output' || ext.type === 'html') { - g_output_modifiers.push(ext); - } - } else { - // Assume language extension - g_output_modifiers.push(ext); - } - }); - } else { - throw "Extension '" + plugin + "' could not be loaded. It was either not found or is not a valid extension."; - } - }); -} - - -var _ExecuteExtension = function(ext, text) { - if (ext.regex) { - var re = new RegExp(ext.regex, 'g'); - return text.replace(re, ext.replace); - } else if (ext.filter) { - return ext.filter(text); - } -}; - -var _StripLinkDefinitions = function(text) { -// -// Strips link definitions from text, stores the URLs and titles in -// hash references. -// - - // Link defs are in the form: ^[id]: url "optional title" - - /* - var text = text.replace(/ - ^[ ]{0,3}\[(.+)\]: // id = $1 attacklab: g_tab_width - 1 - [ \t]* - \n? // maybe *one* newline - [ \t]* - ? // url = $2 - [ \t]* - \n? // maybe one newline - [ \t]* - (?: - (\n*) // any lines skipped = $3 attacklab: lookbehind removed - ["(] - (.+?) // title = $4 - [")] - [ \t]* - )? // title is optional - (?:\n+|$) - /gm, - function(){...}); - */ - - // attacklab: sentinel workarounds for lack of \A and \Z, safari\khtml bug - text += "~0"; - - text = text.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*?[ \t]*\n?[ \t]*(?:(\n*)["(](.+?)[")][ \t]*)?(?:\n+|(?=~0))/gm, - function (wholeMatch,m1,m2,m3,m4) { - m1 = m1.toLowerCase(); - g_urls[m1] = _EncodeAmpsAndAngles(m2); // Link IDs are case-insensitive - if (m3) { - // Oops, found blank lines, so it's not a title. - // Put back the parenthetical statement we stole. - return m3+m4; - } else if (m4) { - g_titles[m1] = m4.replace(/"/g,"""); - } - - // Completely remove the definition from the text - return ""; - } - ); - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -} - - -var _HashHTMLBlocks = function(text) { - // attacklab: Double up blank lines to reduce lookaround - text = text.replace(/\n/g,"\n\n"); - - // Hashify HTML blocks: - // We only want to do this for block-level HTML tags, such as headers, - // lists, and tables. That's because we still want to wrap

    s around - // "paragraphs" that are wrapped in non-block-level tags, such as anchors, - // phrase emphasis, and spans. The list of tags we're looking for is - // hard-coded: - var block_tags_a = "p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del|style|section|header|footer|nav|article|aside"; - var block_tags_b = "p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|style|section|header|footer|nav|article|aside"; - - // First, look for nested blocks, e.g.: - //

    - //
    - // tags for inner block must be indented. - //
    - //
    - // - // The outermost tags must start at the left margin for this to match, and - // the inner nested divs must be indented. - // We need to do this before the next, more liberal match, because the next - // match will start at the first `
    ` and stop at the first `
    `. - - // attacklab: This regex can be expensive when it fails. - /* - var text = text.replace(/ - ( // save in $1 - ^ // start of line (with /m) - <($block_tags_a) // start tag = $2 - \b // word break - // attacklab: hack around khtml/pcre bug... - [^\r]*?\n // any number of lines, minimally matching - // the matching end tag - [ \t]* // trailing spaces/tabs - (?=\n+) // followed by a newline - ) // attacklab: there are sentinel newlines at end of document - /gm,function(){...}}; - */ - text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\b[^\r]*?\n<\/\2>[ \t]*(?=\n+))/gm,hashElement); - - // - // Now match more liberally, simply from `\n` to `\n` - // - - /* - var text = text.replace(/ - ( // save in $1 - ^ // start of line (with /m) - <($block_tags_b) // start tag = $2 - \b // word break - // attacklab: hack around khtml/pcre bug... - [^\r]*? // any number of lines, minimally matching - // the matching end tag - [ \t]* // trailing spaces/tabs - (?=\n+) // followed by a newline - ) // attacklab: there are sentinel newlines at end of document - /gm,function(){...}}; - */ - text = text.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|style|section|header|footer|nav|article|aside)\b[^\r]*?<\/\2>[ \t]*(?=\n+)\n)/gm,hashElement); - - // Special case just for
    . It was easier to make a special case than - // to make the other regex more complicated. - - /* - text = text.replace(/ - ( // save in $1 - \n\n // Starting after a blank line - [ ]{0,3} - (<(hr) // start tag = $2 - \b // word break - ([^<>])*? // - \/?>) // the matching end tag - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/(\n[ ]{0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,hashElement); - - // Special case for standalone HTML comments: - - /* - text = text.replace(/ - ( // save in $1 - \n\n // Starting after a blank line - [ ]{0,3} // attacklab: g_tab_width - 1 - - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/(\n\n[ ]{0,3}[ \t]*(?=\n{2,}))/g,hashElement); - - // PHP and ASP-style processor instructions ( and <%...%>) - - /* - text = text.replace(/ - (?: - \n\n // Starting after a blank line - ) - ( // save in $1 - [ ]{0,3} // attacklab: g_tab_width - 1 - (?: - <([?%]) // $2 - [^\r]*? - \2> - ) - [ \t]* - (?=\n{2,}) // followed by a blank line - ) - /g,hashElement); - */ - text = text.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,hashElement); - - // attacklab: Undo double lines (see comment at top of this function) - text = text.replace(/\n\n/g,"\n"); - return text; -} - -var hashElement = function(wholeMatch,m1) { - var blockText = m1; - - // Undo double lines - blockText = blockText.replace(/\n\n/g,"\n"); - blockText = blockText.replace(/^\n/,""); - - // strip trailing blank lines - blockText = blockText.replace(/\n+$/g,""); - - // Replace the element text with a marker ("~KxK" where x is its key) - blockText = "\n\n~K" + (g_html_blocks.push(blockText)-1) + "K\n\n"; - - return blockText; -}; - -var _RunBlockGamut = function(text) { -// -// These are all the transformations that form block-level -// tags like paragraphs, headers, and list items. -// - text = _DoHeaders(text); - - // Do Horizontal Rules: - var key = hashBlock("
    "); - text = text.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,key); - text = text.replace(/^[ ]{0,2}([ ]?\-[ ]?){3,}[ \t]*$/gm,key); - text = text.replace(/^[ ]{0,2}([ ]?\_[ ]?){3,}[ \t]*$/gm,key); - - text = _DoLists(text); - text = _DoCodeBlocks(text); - text = _DoBlockQuotes(text); - - // We already ran _HashHTMLBlocks() before, in Markdown(), but that - // was to escape raw HTML in the original Markdown source. This time, - // we're escaping the markup we've just created, so that we don't wrap - //

    tags around block-level tags. - text = _HashHTMLBlocks(text); - text = _FormParagraphs(text); - - return text; -}; - - -var _RunSpanGamut = function(text) { -// -// These are all the transformations that occur *within* block-level -// tags like paragraphs, headers, and list items. -// - - text = _DoCodeSpans(text); - text = _EscapeSpecialCharsWithinTagAttributes(text); - text = _EncodeBackslashEscapes(text); - - // Process anchor and image tags. Images must come first, - // because ![foo][f] looks like an anchor. - text = _DoImages(text); - text = _DoAnchors(text); - - // Make links out of things like `` - // Must come after _DoAnchors(), because you can use < and > - // delimiters in inline links like [this](). - text = _DoAutoLinks(text); - text = _EncodeAmpsAndAngles(text); - text = _DoItalicsAndBold(text); - - // Do hard breaks: - text = text.replace(/ +\n/g,"
    \n"); - - return text; -} - -var _EscapeSpecialCharsWithinTagAttributes = function(text) { -// -// Within tags -- meaning between < and > -- encode [\ ` * _] so they -// don't conflict with their use in Markdown for code, italics and strong. -// - - // Build a regex to find HTML tags and comments. See Friedl's - // "Mastering Regular Expressions", 2nd Ed., pp. 200-201. - var regex = /(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|)/gi; - - text = text.replace(regex, function(wholeMatch) { - var tag = wholeMatch.replace(/(.)<\/?code>(?=.)/g,"$1`"); - tag = escapeCharacters(tag,"\\`*_"); - return tag; - }); - - return text; -} - -var _DoAnchors = function(text) { -// -// Turn Markdown link shortcuts into XHTML
    tags. -// - // - // First, handle reference-style links: [link text] [id] - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ( - (?: - \[[^\]]*\] // allow brackets nested one level - | - [^\[] // or anything else - )* - ) - \] - - [ ]? // one optional space - (?:\n[ ]*)? // one optional newline followed by spaces - - \[ - (.*?) // id = $3 - \] - )()()()() // pad remaining backreferences - /g,_DoAnchors_callback); - */ - text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,writeAnchorTag); - - // - // Next, inline-style links: [link text](url "optional title") - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ( - (?: - \[[^\]]*\] // allow brackets nested one level - | - [^\[\]] // or anything else - ) - ) - \] - \( // literal paren - [ \t]* - () // no id, so leave $3 empty - ? // href = $4 - [ \t]* - ( // $5 - (['"]) // quote char = $6 - (.*?) // Title = $7 - \6 // matching quote - [ \t]* // ignore any spaces/tabs between closing quote and ) - )? // title is optional - \) - ) - /g,writeAnchorTag); - */ - text = text.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,writeAnchorTag); - - // - // Last, handle reference-style shortcuts: [link text] - // These must come last in case you've also got [link test][1] - // or [link test](/foo) - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - \[ - ([^\[\]]+) // link text = $2; can't contain '[' or ']' - \] - )()()()()() // pad rest of backreferences - /g, writeAnchorTag); - */ - text = text.replace(/(\[([^\[\]]+)\])()()()()()/g, writeAnchorTag); - - return text; -} - -var writeAnchorTag = function(wholeMatch,m1,m2,m3,m4,m5,m6,m7) { - if (m7 == undefined) m7 = ""; - var whole_match = m1; - var link_text = m2; - var link_id = m3.toLowerCase(); - var url = m4; - var title = m7; - - if (url == "") { - if (link_id == "") { - // lower-case and turn embedded newlines into spaces - link_id = link_text.toLowerCase().replace(/ ?\n/g," "); - } - url = "#"+link_id; - - if (g_urls[link_id] != undefined) { - url = g_urls[link_id]; - if (g_titles[link_id] != undefined) { - title = g_titles[link_id]; - } - } - else { - if (whole_match.search(/\(\s*\)$/m)>-1) { - // Special case for explicit empty url - url = ""; - } else { - return whole_match; - } - } - } - - url = escapeCharacters(url,"*_"); - var result = ""; - - return result; -} - - -var _DoImages = function(text) { -// -// Turn Markdown image shortcuts into tags. -// - - // - // First, handle reference-style labeled images: ![alt text][id] - // - - /* - text = text.replace(/ - ( // wrap whole match in $1 - !\[ - (.*?) // alt text = $2 - \] - - [ ]? // one optional space - (?:\n[ ]*)? // one optional newline followed by spaces - - \[ - (.*?) // id = $3 - \] - )()()()() // pad rest of backreferences - /g,writeImageTag); - */ - text = text.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,writeImageTag); - - // - // Next, handle inline images: ![alt text](url "optional title") - // Don't forget: encode * and _ - - /* - text = text.replace(/ - ( // wrap whole match in $1 - !\[ - (.*?) // alt text = $2 - \] - \s? // One optional whitespace character - \( // literal paren - [ \t]* - () // no id, so leave $3 empty - ? // src url = $4 - [ \t]* - ( // $5 - (['"]) // quote char = $6 - (.*?) // title = $7 - \6 // matching quote - [ \t]* - )? // title is optional - \) - ) - /g,writeImageTag); - */ - text = text.replace(/(!\[(.*?)\]\s?\([ \t]*()?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,writeImageTag); - - return text; -} - -var writeImageTag = function(wholeMatch,m1,m2,m3,m4,m5,m6,m7) { - var whole_match = m1; - var alt_text = m2; - var link_id = m3.toLowerCase(); - var url = m4; - var title = m7; - - if (!title) title = ""; - - if (url == "") { - if (link_id == "") { - // lower-case and turn embedded newlines into spaces - link_id = alt_text.toLowerCase().replace(/ ?\n/g," "); - } - url = "#"+link_id; - - if (g_urls[link_id] != undefined) { - url = g_urls[link_id]; - if (g_titles[link_id] != undefined) { - title = g_titles[link_id]; - } - } - else { - return whole_match; - } - } - - alt_text = alt_text.replace(/"/g,"""); - url = escapeCharacters(url,"*_"); - var result = "\""' + _RunSpanGamut(m1) + "");}); - - text = text.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm, - function(matchFound,m1){return hashBlock('

    ' + _RunSpanGamut(m1) + "

    ");}); - - // atx-style headers: - // # Header 1 - // ## Header 2 - // ## Header 2 with closing hashes ## - // ... - // ###### Header 6 - // - - /* - text = text.replace(/ - ^(\#{1,6}) // $1 = string of #'s - [ \t]* - (.+?) // $2 = Header text - [ \t]* - \#* // optional closing #'s (not counted) - \n+ - /gm, function() {...}); - */ - - text = text.replace(/^(\#{1,6})[ \t]*(.+?)[ \t]*\#*\n+/gm, - function(wholeMatch,m1,m2) { - var h_level = m1.length; - return hashBlock("' + _RunSpanGamut(m2) + ""); - }); - - function headerId(m) { - return m.replace(/[^\w]/g, '').toLowerCase(); - } - return text; -} - -// This declaration keeps Dojo compressor from outputting garbage: -var _ProcessListItems; - -var _DoLists = function(text) { -// -// Form HTML ordered (numbered) and unordered (bulleted) lists. -// - - // attacklab: add sentinel to hack around khtml/safari bug: - // http://bugs.webkit.org/show_bug.cgi?id=11231 - text += "~0"; - - // Re-usable pattern to match any entirel ul or ol list: - - /* - var whole_list = / - ( // $1 = whole list - ( // $2 - [ ]{0,3} // attacklab: g_tab_width - 1 - ([*+-]|\d+[.]) // $3 = first list item marker - [ \t]+ - ) - [^\r]+? - ( // $4 - ~0 // sentinel for workaround; should be $ - | - \n{2,} - (?=\S) - (?! // Negative lookahead for another list item marker - [ \t]* - (?:[*+-]|\d+[.])[ \t]+ - ) - ) - )/g - */ - var whole_list = /^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm; - - if (g_list_level) { - text = text.replace(whole_list,function(wholeMatch,m1,m2) { - var list = m1; - var list_type = (m2.search(/[*+-]/g)>-1) ? "ul" : "ol"; - - // Turn double returns into triple returns, so that we can make a - // paragraph for the last item in a list, if necessary: - list = list.replace(/\n{2,}/g,"\n\n\n");; - var result = _ProcessListItems(list); - - // Trim any trailing whitespace, to put the closing `` - // up on the preceding line, to get it past the current stupid - // HTML block parser. This is a hack to work around the terrible - // hack that is the HTML block parser. - result = result.replace(/\s+$/,""); - result = "<"+list_type+">" + result + "\n"; - return result; - }); - } else { - whole_list = /(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/g; - text = text.replace(whole_list,function(wholeMatch,m1,m2,m3) { - var runup = m1; - var list = m2; - - var list_type = (m3.search(/[*+-]/g)>-1) ? "ul" : "ol"; - // Turn double returns into triple returns, so that we can make a - // paragraph for the last item in a list, if necessary: - var list = list.replace(/\n{2,}/g,"\n\n\n");; - var result = _ProcessListItems(list); - result = runup + "<"+list_type+">\n" + result + "\n"; - return result; - }); - } - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -} - -_ProcessListItems = function(list_str) { -// -// Process the contents of a single ordered or unordered list, splitting it -// into individual list items. -// - // The $g_list_level global keeps track of when we're inside a list. - // Each time we enter a list, we increment it; when we leave a list, - // we decrement. If it's zero, we're not in a list anymore. - // - // We do this because when we're not inside a list, we want to treat - // something like this: - // - // I recommend upgrading to version - // 8. Oops, now this line is treated - // as a sub-list. - // - // As a single paragraph, despite the fact that the second line starts - // with a digit-period-space sequence. - // - // Whereas when we're inside a list (or sub-list), that line will be - // treated as the start of a sub-list. What a kludge, huh? This is - // an aspect of Markdown's syntax that's hard to parse perfectly - // without resorting to mind-reading. Perhaps the solution is to - // change the syntax rules such that sub-lists must start with a - // starting cardinal number; e.g. "1." or "a.". - - g_list_level++; - - // trim trailing blank lines: - list_str = list_str.replace(/\n{2,}$/,"\n"); - - // attacklab: add sentinel to emulate \z - list_str += "~0"; - - /* - list_str = list_str.replace(/ - (\n)? // leading line = $1 - (^[ \t]*) // leading whitespace = $2 - ([*+-]|\d+[.]) [ \t]+ // list marker = $3 - ([^\r]+? // list item text = $4 - (\n{1,2})) - (?= \n* (~0 | \2 ([*+-]|\d+[.]) [ \t]+)) - /gm, function(){...}); - */ - list_str = list_str.replace(/(\n)?(^[ \t]*)([*+-]|\d+[.])[ \t]+([^\r]+?(\n{1,2}))(?=\n*(~0|\2([*+-]|\d+[.])[ \t]+))/gm, - function(wholeMatch,m1,m2,m3,m4){ - var item = m4; - var leading_line = m1; - var leading_space = m2; - - if (leading_line || (item.search(/\n{2,}/)>-1)) { - item = _RunBlockGamut(_Outdent(item)); - } - else { - // Recursion for sub-lists: - item = _DoLists(_Outdent(item)); - item = item.replace(/\n$/,""); // chomp(item) - item = _RunSpanGamut(item); - } - - return "
  • " + item + "
  • \n"; - } - ); - - // attacklab: strip sentinel - list_str = list_str.replace(/~0/g,""); - - g_list_level--; - return list_str; -} - - -var _DoCodeBlocks = function(text) { -// -// Process Markdown `
    ` blocks.
    -//
    -
    -  /*
    -    text = text.replace(text,
    -      /(?:\n\n|^)
    -      (               // $1 = the code block -- one or more lines, starting with a space/tab
    -        (?:
    -          (?:[ ]{4}|\t)     // Lines must start with a tab or a tab-width of spaces - attacklab: g_tab_width
    -          .*\n+
    -        )+
    -      )
    -      (\n*[ ]{0,3}[^ \t\n]|(?=~0))  // attacklab: g_tab_width
    -    /g,function(){...});
    -  */
    -
    -  // attacklab: sentinel workarounds for lack of \A and \Z, safari\khtml bug
    -  text += "~0";
    -
    -  text = text.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,
    -    function(wholeMatch,m1,m2) {
    -      var codeblock = m1;
    -      var nextChar = m2;
    -
    -      codeblock = _EncodeCode( _Outdent(codeblock));
    -      codeblock = _Detab(codeblock);
    -      codeblock = codeblock.replace(/^\n+/g,""); // trim leading newlines
    -      codeblock = codeblock.replace(/\n+$/g,""); // trim trailing whitespace
    -
    -      codeblock = "
    " + codeblock + "\n
    "; - - return hashBlock(codeblock) + nextChar; - } - ); - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -}; - -var _DoGithubCodeBlocks = function(text) { -// -// Process Github-style code blocks -// Example: -// ```ruby -// def hello_world(x) -// puts "Hello, #{x}" -// end -// ``` -// - - - // attacklab: sentinel workarounds for lack of \A and \Z, safari\khtml bug - text += "~0"; - - text = text.replace(/(?:^|\n)```(.*)\n([\s\S]*?)\n```/g, - function(wholeMatch,m1,m2) { - var language = m1; - var codeblock = m2; - - codeblock = _EncodeCode(codeblock); - codeblock = _Detab(codeblock); - codeblock = codeblock.replace(/^\n+/g,""); // trim leading newlines - codeblock = codeblock.replace(/\n+$/g,""); // trim trailing whitespace - - codeblock = "
    " + codeblock + "\n
    "; - - return hashBlock(codeblock); - } - ); - - // attacklab: strip sentinel - text = text.replace(/~0/,""); - - return text; -} - -var hashBlock = function(text) { - text = text.replace(/(^\n+|\n+$)/g,""); - return "\n\n~K" + (g_html_blocks.push(text)-1) + "K\n\n"; -} - -var _DoCodeSpans = function(text) { -// -// * Backtick quotes are used for spans. -// -// * You can use multiple backticks as the delimiters if you want to -// include literal backticks in the code span. So, this input: -// -// Just type ``foo `bar` baz`` at the prompt. -// -// Will translate to: -// -//

    Just type foo `bar` baz at the prompt.

    -// -// There's no arbitrary limit to the number of backticks you -// can use as delimters. If you need three consecutive backticks -// in your code, use four for delimiters, etc. -// -// * You can use spaces to get literal backticks at the edges: -// -// ... type `` `bar` `` ... -// -// Turns to: -// -// ... type `bar` ... -// - - /* - text = text.replace(/ - (^|[^\\]) // Character before opening ` can't be a backslash - (`+) // $2 = Opening run of ` - ( // $3 = The code block - [^\r]*? - [^`] // attacklab: work around lack of lookbehind - ) - \2 // Matching closer - (?!`) - /gm, function(){...}); - */ - - text = text.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm, - function(wholeMatch,m1,m2,m3,m4) { - var c = m3; - c = c.replace(/^([ \t]*)/g,""); // leading whitespace - c = c.replace(/[ \t]*$/g,""); // trailing whitespace - c = _EncodeCode(c); - return m1+""+c+""; - }); - - return text; -} - -var _EncodeCode = function(text) { -// -// Encode/escape certain characters inside Markdown code runs. -// The point is that in code, these characters are literals, -// and lose their special Markdown meanings. -// - // Encode all ampersands; HTML entities are not - // entities within a Markdown code span. - text = text.replace(/&/g,"&"); - - // Do the angle bracket song and dance: - text = text.replace(//g,">"); - - // Now, escape characters that are magic in Markdown: - text = escapeCharacters(text,"\*_{}[]\\",false); - -// jj the line above breaks this: -//--- - -//* Item - -// 1. Subitem - -// special char: * -//--- - - return text; -} - - -var _DoItalicsAndBold = function(text) { - - // must go first: - text = text.replace(/(\*\*|__)(?=\S)([^\r]*?\S[*_]*)\1/g, - "$2"); - - text = text.replace(/(\*|_)(?=\S)([^\r]*?\S)\1/g, - "$2"); - - return text; -} - - -var _DoBlockQuotes = function(text) { - - /* - text = text.replace(/ - ( // Wrap whole match in $1 - ( - ^[ \t]*>[ \t]? // '>' at the start of a line - .+\n // rest of the first line - (.+\n)* // subsequent consecutive lines - \n* // blanks - )+ - ) - /gm, function(){...}); - */ - - text = text.replace(/((^[ \t]*>[ \t]?.+\n(.+\n)*\n*)+)/gm, - function(wholeMatch,m1) { - var bq = m1; - - // attacklab: hack around Konqueror 3.5.4 bug: - // "----------bug".replace(/^-/g,"") == "bug" - - bq = bq.replace(/^[ \t]*>[ \t]?/gm,"~0"); // trim one level of quoting - - // attacklab: clean up hack - bq = bq.replace(/~0/g,""); - - bq = bq.replace(/^[ \t]+$/gm,""); // trim whitespace-only lines - bq = _RunBlockGamut(bq); // recurse - - bq = bq.replace(/(^|\n)/g,"$1 "); - // These leading spaces screw with
     content, so we need to fix that:
    -      bq = bq.replace(
    -          /(\s*
    [^\r]+?<\/pre>)/gm,
    -        function(wholeMatch,m1) {
    -          var pre = m1;
    -          // attacklab: hack around Konqueror 3.5.4 bug:
    -          pre = pre.replace(/^  /mg,"~0");
    -          pre = pre.replace(/~0/g,"");
    -          return pre;
    -        });
    -
    -      return hashBlock("
    \n" + bq + "\n
    "); - }); - return text; -} - - -var _FormParagraphs = function(text) { -// -// Params: -// $text - string to process with html

    tags -// - - // Strip leading and trailing lines: - text = text.replace(/^\n+/g,""); - text = text.replace(/\n+$/g,""); - - var grafs = text.split(/\n{2,}/g); - var grafsOut = []; - - // - // Wrap

    tags. - // - var end = grafs.length; - for (var i=0; i= 0) { - grafsOut.push(str); - } - else if (str.search(/\S/) >= 0) { - str = _RunSpanGamut(str); - str = str.replace(/^([ \t]*)/g,"

    "); - str += "

    " - grafsOut.push(str); - } - - } - - // - // Unhashify HTML blocks - // - end = grafsOut.length; - for (var i=0; i= 0) { - var blockText = g_html_blocks[RegExp.$1]; - blockText = blockText.replace(/\$/g,"$$$$"); // Escape any dollar signs - grafsOut[i] = grafsOut[i].replace(/~K\d+K/,blockText); - } - } - - return grafsOut.join("\n\n"); -} - - -var _EncodeAmpsAndAngles = function(text) { -// Smart processing for ampersands and angle brackets that need to be encoded. - - // Ampersand-encoding based entirely on Nat Irons's Amputator MT plugin: - // http://bumppo.net/projects/amputator/ - text = text.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&"); - - // Encode naked <'s - text = text.replace(/<(?![a-z\/?\$!])/gi,"<"); - - return text; -} - - -var _EncodeBackslashEscapes = function(text) { -// -// Parameter: String. -// Returns: The string, with after processing the following backslash -// escape sequences. -// - - // attacklab: The polite way to do this is with the new - // escapeCharacters() function: - // - // text = escapeCharacters(text,"\\",true); - // text = escapeCharacters(text,"`*_{}[]()>#+-.!",true); - // - // ...but we're sidestepping its use of the (slow) RegExp constructor - // as an optimization for Firefox. This function gets called a LOT. - - text = text.replace(/\\(\\)/g,escapeCharacters_callback); - text = text.replace(/\\([`*_{}\[\]()>#+-.!])/g,escapeCharacters_callback); - return text; -} - - -var _DoAutoLinks = function(text) { - - text = text.replace(/<((https?|ftp|dict):[^'">\s]+)>/gi,"
    $1"); - - // Email addresses: - - /* - text = text.replace(/ - < - (?:mailto:)? - ( - [-.\w]+ - \@ - [-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+ - ) - > - /gi, _DoAutoLinks_callback()); - */ - text = text.replace(/<(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi, - function(wholeMatch,m1) { - return _EncodeEmailAddress( _UnescapeSpecialChars(m1) ); - } - ); - - return text; -} - - -var _EncodeEmailAddress = function(addr) { -// -// Input: an email address, e.g. "foo@example.com" -// -// Output: the email address as a mailto link, with each character -// of the address encoded as either a decimal or hex entity, in -// the hopes of foiling most address harvesting spam bots. E.g.: -// -// foo -// @example.com -// -// Based on a filter by Matthew Wickline, posted to the BBEdit-Talk -// mailing list: -// - - var encode = [ - function(ch){return "&#"+ch.charCodeAt(0)+";";}, - function(ch){return "&#x"+ch.charCodeAt(0).toString(16)+";";}, - function(ch){return ch;} - ]; - - addr = "mailto:" + addr; - - addr = addr.replace(/./g, function(ch) { - if (ch == "@") { - // this *must* be encoded. I insist. - ch = encode[Math.floor(Math.random()*2)](ch); - } else if (ch !=":") { - // leave ':' alone (to spot mailto: later) - var r = Math.random(); - // roughly 10% raw, 45% hex, 45% dec - ch = ( - r > .9 ? encode[2](ch) : - r > .45 ? encode[1](ch) : - encode[0](ch) - ); - } - return ch; - }); - - addr = "" + addr + ""; - addr = addr.replace(/">.+:/g,"\">"); // strip the mailto: from the visible part - - return addr; -} - - -var _UnescapeSpecialChars = function(text) { -// -// Swap back in all the special characters we've hidden. -// - text = text.replace(/~E(\d+)E/g, - function(wholeMatch,m1) { - var charCodeToReplace = parseInt(m1); - return String.fromCharCode(charCodeToReplace); - } - ); - return text; -} - - -var _Outdent = function(text) { -// -// Remove one level of line-leading tabs or spaces -// - - // attacklab: hack around Konqueror 3.5.4 bug: - // "----------bug".replace(/^-/g,"") == "bug" - - text = text.replace(/^(\t|[ ]{1,4})/gm,"~0"); // attacklab: g_tab_width - - // attacklab: clean up hack - text = text.replace(/~0/g,"") - - return text; -} - -var _Detab = function(text) { -// attacklab: Detab's completely rewritten for speed. -// In perl we could fix it by anchoring the regexp with \G. -// In javascript we're less fortunate. - - // expand first n-1 tabs - text = text.replace(/\t(?=\t)/g," "); // attacklab: g_tab_width - - // replace the nth with two sentinels - text = text.replace(/\t/g,"~A~B"); - - // use the sentinel to anchor our regex so it doesn't explode - text = text.replace(/~B(.+?)~A/g, - function(wholeMatch,m1,m2) { - var leadingText = m1; - var numSpaces = 4 - leadingText.length % 4; // attacklab: g_tab_width - - // there *must* be a better way to do this: - for (var i=0; i - - - {{panel.content}} - -

    -

    -

    -

    -
    diff --git a/app/dboards/src/app/panels/text/module.js b/app/dboards/src/app/panels/text/module.js deleted file mode 100644 index 37735d3..0000000 --- a/app/dboards/src/app/panels/text/module.js +++ /dev/null @@ -1,101 +0,0 @@ -/** @scratch /panels/5 - * include::panels/text.asciidoc[] - */ - -/** @scratch /panels/text/0 - * == text - * Status: *Stable* - * - * The text panel is used for displaying static text formated as markdown, sanitized html or as plain - * text. - * - */ -define([ - 'angular', - 'app', - 'underscore', - 'require' -], -function (angular, app, _, require) { - 'use strict'; - - var module = angular.module('kibana.panels.text', []); - app.useModule(module); - - module.controller('text', function($scope) { - - $scope.panelMeta = { - description : "A static text panel that can use plain text, markdown, or (sanitized) HTML" - }; - - // Set and populate defaults - var _d = { - mode : "markdown", // 'html', 'markdown', 'text' - content : "", - style: {}, - }; - - _.defaults($scope.panel,_d); - - $scope.init = function() { - $scope.initBaseController(this, $scope); - - $scope.ready = false; - }; - - $scope.render = function() { - $scope.$emit('render'); - }; - - $scope.openEditor = function() { - //$scope.$emit('open-modal','paneleditor'); - console.log('scope id', $scope.$id); - }; - - }); - - module.directive('markdown', function() { - return { - restrict: 'E', - link: function(scope, element) { - scope.$on('render', function() { - render_panel(); - }); - - function render_panel() { - require(['./lib/showdown'], function (Showdown) { - scope.ready = true; - var converter = new Showdown.converter(); - var text = scope.panel.content.replace(/&/g, '&') - .replace(/>/g, '>') - .replace(/'); - }; - }); - - module.filter('striphtml', function () { - return function(text) { - return text - .replace(/&/g, '&') - .replace(/>/g, '>') - .replace(/ - - -
    -
    - -
    - -
    - @ - : - : - . - -
    -
    - -
    - - - -
    -
    - @ - : - : - . - -
    -   Right Now -
    -
    - -
    -
    -
    -
    - - diff --git a/app/dboards/src/app/panels/timepicker/editor.html b/app/dboards/src/app/panels/timepicker/editor.html deleted file mode 100644 index 9fe80e7..0000000 --- a/app/dboards/src/app/panels/timepicker/editor.html +++ /dev/null @@ -1,12 +0,0 @@ -
    -
    -
    - - -
    -
    - - -
    -
    -
    diff --git a/app/dboards/src/app/panels/timepicker/module.html b/app/dboards/src/app/panels/timepicker/module.html deleted file mode 100644 index ea1759d..0000000 --- a/app/dboards/src/app/panels/timepicker/module.html +++ /dev/null @@ -1,56 +0,0 @@ -
    - - -
    - - -
    -
    diff --git a/app/dboards/src/app/panels/timepicker/module.js b/app/dboards/src/app/panels/timepicker/module.js deleted file mode 100644 index da310b6..0000000 --- a/app/dboards/src/app/panels/timepicker/module.js +++ /dev/null @@ -1,197 +0,0 @@ -/* - - ## Timepicker2 - - ### Parameters - * mode :: The default mode of the panel. Options: 'relative', 'absolute' 'since' Default: 'relative' - * time_options :: An array of possible time options. Default: ['5m','15m','1h','6h','12h','24h','2d','7d','30d'] - * timespan :: The default options selected for the relative view. Default: '15m' - * timefield :: The field in which time is stored in the document. - * refresh: Object containing refresh parameters - * enable :: true/false, enable auto refresh by default. Default: false - * interval :: Seconds between auto refresh. Default: 30 - * min :: The lowest interval a user may set -*/ -define([ - 'angular', - 'app', - 'underscore', - 'moment', - 'kbn' -], -function (angular, app, _, moment, kbn) { - 'use strict'; - - var module = angular.module('kibana.panels.timepicker', []); - app.useModule(module); - - module.controller('timepicker', function($scope, $modal, $q) { - $scope.panelMeta = { - status : "Stable", - description : "A panel for controlling the time range filters. If you have time based data, "+ - " or if you're using time stamped indices, you need one of these" - }; - - // Set and populate defaults - var _d = { - status : "Stable", - time_options : ['5m','15m','1h','6h','12h','24h','2d','7d','30d'], - refresh_intervals : ['5s','10s','30s','1m','5m','15m','30m','1h','2h','1d'], - }; - - var customTimeModal = null; - - _.defaults($scope.panel,_d); - - // ng-pattern regexs - $scope.patterns = { - date: /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/, - hour: /^([01]?[0-9]|2[0-3])$/, - minute: /^[0-5][0-9]$/, - second: /^[0-5][0-9]$/, - millisecond: /^[0-9]*$/ - }; - - $scope.$on('refresh', function() { - $scope.init(); - }); - - $scope.init = function() { - var time = this.filter.timeRange(true); - if(time) { - $scope.panel.now = this.filter.timeRange(false).to === "now" ? true : false; - $scope.time = getScopeTimeObj(time.from,time.to); - } - }; - - $scope.customTime = function() { - if (!customTimeModal) { - customTimeModal = $modal({ - template: './app/panels/timepicker/custom.html', - persist: true, - show: false, - scope: $scope, - keyboard: false - }); - } - - // Assume the form is valid since we're setting it to something valid - $scope.input.$setValidity("dummy", true); - $scope.temptime = cloneTime($scope.time); - - // Date picker needs the date to be at the start of the day - $scope.temptime.from.date.setHours(1,0,0,0); - $scope.temptime.to.date.setHours(1,0,0,0); - - $q.when(customTimeModal).then(function(modalEl) { - modalEl.modal('show'); - }); - }; - - // Constantly validate the input of the fields. This function does not change any date variables - // outside of its own scope - $scope.validate = function(time) { - // Assume the form is valid. There is a hidden dummy input for invalidating it programatically. - $scope.input.$setValidity("dummy", true); - - var _from = datepickerToLocal(time.from.date), - _to = datepickerToLocal(time.to.date), - _t = time; - - if($scope.input.$valid) { - - _from.setHours(_t.from.hour,_t.from.minute,_t.from.second,_t.from.millisecond); - _to.setHours(_t.to.hour,_t.to.minute,_t.to.second,_t.to.millisecond); - - // Check that the objects are valid and to is after from - if(isNaN(_from.getTime()) || isNaN(_to.getTime()) || _from.getTime() >= _to.getTime()) { - $scope.input.$setValidity("dummy", false); - return false; - } - } else { - return false; - } - - return {from:_from,to:_to}; - }; - - $scope.setNow = function() { - $scope.time.to = getTimeObj(new Date()); - }; - - /* - time : { - from: Date - to: Date - } - */ - $scope.setAbsoluteTimeFilter = function (time) { - // Create filter object - var _filter = _.clone(time); - - if($scope.panel.now) { - _filter.to = "now"; - } - - // Set the filter - $scope.panel.filter_id = $scope.filter.setTime(_filter); - - // Update our representation - $scope.time = getScopeTimeObj(time.from,time.to); - }; - - $scope.setRelativeFilter = function(timespan) { - $scope.panel.now = true; - - var _filter = { - from : "now-"+timespan, - to: "now" - }; - - this.filter.setTime(_filter); - - $scope.time = getScopeTimeObj(kbn.parseDate(_filter.from),new Date()); - }; - - var pad = function(n, width, z) { - z = z || '0'; - n = n.toString(); - return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n; - }; - - var cloneTime = function(time) { - var _n = { - from: _.clone(time.from), - to: _.clone(time.to) - }; - // Create new dates as _.clone is shallow. - _n.from.date = new Date(_n.from.date); - _n.to.date = new Date(_n.to.date); - return _n; - }; - - var getScopeTimeObj = function(from,to) { - return { - from: getTimeObj(from), - to: getTimeObj(to) - }; - }; - - var getTimeObj = function(date) { - return { - date: new Date(date), - hour: pad(date.getHours(),2), - minute: pad(date.getMinutes(),2), - second: pad(date.getSeconds(),2), - millisecond: pad(date.getMilliseconds(),3) - }; - }; - - // Do not use the results of this function unless you plan to use setHour/Minutes/etc on the result - var datepickerToLocal = function(date) { - date = moment(date).clone().toDate(); - return moment(new Date(date.getTime() + date.getTimezoneOffset() * 60000)).toDate(); - }; - - }); -}); diff --git a/app/dboards/src/app/panels/timepicker/refreshctrl.html b/app/dboards/src/app/panels/timepicker/refreshctrl.html deleted file mode 100644 index 289e1bf..0000000 --- a/app/dboards/src/app/panels/timepicker/refreshctrl.html +++ /dev/null @@ -1,5 +0,0 @@ -
    -
    - - -
    \ No newline at end of file diff --git a/app/dboards/src/app/partials/dashLoader.html b/app/dboards/src/app/partials/dashLoader.html deleted file mode 100644 index 9e92d00..0000000 --- a/app/dboards/src/app/partials/dashLoader.html +++ /dev/null @@ -1,77 +0,0 @@ - - -
  • - - Back to dashboard - -
  • - -
  • - - Zoom Out - -
  • - -
  • - -
    - - - - -
  • - -
  • - -
  • - - Stop playlist - -
  • \ No newline at end of file diff --git a/app/dboards/src/app/partials/dashLoaderShare.html b/app/dboards/src/app/partials/dashLoaderShare.html deleted file mode 100644 index 7769773..0000000 --- a/app/dboards/src/app/partials/dashLoaderShare.html +++ /dev/null @@ -1,11 +0,0 @@ - - - diff --git a/app/dboards/src/app/partials/dashboard.html b/app/dboards/src/app/partials/dashboard.html deleted file mode 100644 index 0c49761..0000000 --- a/app/dboards/src/app/partials/dashboard.html +++ /dev/null @@ -1,110 +0,0 @@ - - -
    -
    -
    -
    - -
    -
    -
    -
    - - - - - - - {{row.title || 'Row '+$index}} -
    -
    -
    - - - -
    - -
    -
    - -
    - - -
    - -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - -
    -
    - - ADD A ROW - -
    -
    - -
    -
    -
    \ No newline at end of file diff --git a/app/dboards/src/app/partials/dasheditor.html b/app/dboards/src/app/partials/dasheditor.html deleted file mode 100644 index 4ad8078..0000000 --- a/app/dboards/src/app/partials/dasheditor.html +++ /dev/null @@ -1,161 +0,0 @@ - - - \ No newline at end of file diff --git a/app/dboards/src/app/partials/graphite/editor.html b/app/dboards/src/app/partials/graphite/editor.html deleted file mode 100755 index 48179ec..0000000 --- a/app/dboards/src/app/partials/graphite/editor.html +++ /dev/null @@ -1,105 +0,0 @@ - -
    - -
    - -
    - - - - - - - - - -
    -
    -
    -
    - - diff --git a/app/dboards/src/app/partials/import.html b/app/dboards/src/app/partials/import.html deleted file mode 100644 index eeb481e..0000000 --- a/app/dboards/src/app/partials/import.html +++ /dev/null @@ -1,31 +0,0 @@ -
    -
    Import dashboards from graphite web
    - -
    -
    -
    - - - -
    - -
    -
    - -
    - - - - -
    - {{dash.name}}
    -
    - -
    - {{error}} -
    -
    diff --git a/app/dboards/src/app/partials/influxdb/editor.html b/app/dboards/src/app/partials/influxdb/editor.html deleted file mode 100644 index 9079caa..0000000 --- a/app/dboards/src/app/partials/influxdb/editor.html +++ /dev/null @@ -1,157 +0,0 @@ - -
    - -
    - -
    -
    - - - - - - - - -
    -
    -
    -
    -
    - diff --git a/app/dboards/src/app/partials/inspector.html b/app/dboards/src/app/partials/inspector.html deleted file mode 100644 index e89a575..0000000 --- a/app/dboards/src/app/partials/inspector.html +++ /dev/null @@ -1,68 +0,0 @@ - - \ No newline at end of file diff --git a/app/dboards/src/app/partials/kairosdb/editor.html b/app/dboards/src/app/partials/kairosdb/editor.html deleted file mode 100644 index fdaf391..0000000 --- a/app/dboards/src/app/partials/kairosdb/editor.html +++ /dev/null @@ -1,375 +0,0 @@ -
    -
    - -
    -
    - - - - - - - - -
    - -
    - - - -
    - -
    -
    - - -
    -
    -
    diff --git a/app/dboards/src/app/partials/load.html b/app/dboards/src/app/partials/load.html deleted file mode 100644 index 27d012b..0000000 --- a/app/dboards/src/app/partials/load.html +++ /dev/null @@ -1,4 +0,0 @@ -
    - type: {{type}}
    - id: {{id}}
    -
    \ No newline at end of file diff --git a/app/dboards/src/app/partials/loadmetrics.html b/app/dboards/src/app/partials/loadmetrics.html deleted file mode 100644 index 2665386..0000000 --- a/app/dboards/src/app/partials/loadmetrics.html +++ /dev/null @@ -1,36 +0,0 @@ -
    -
    Load metrics keys into elastic search
    - -

    - Work in progress... -

    - -
    diff --git a/app/dboards/src/app/partials/metrics.html b/app/dboards/src/app/partials/metrics.html deleted file mode 100644 index 02654eb..0000000 --- a/app/dboards/src/app/partials/metrics.html +++ /dev/null @@ -1,17 +0,0 @@ -
    - - -
    - - -
    - - - -
    - -
    diff --git a/app/dboards/src/app/partials/modal.html b/app/dboards/src/app/partials/modal.html deleted file mode 100644 index 38d86cd..0000000 --- a/app/dboards/src/app/partials/modal.html +++ /dev/null @@ -1,12 +0,0 @@ - - - \ No newline at end of file diff --git a/app/dboards/src/app/partials/opentsdb/editor.html b/app/dboards/src/app/partials/opentsdb/editor.html deleted file mode 100644 index 673c5a6..0000000 --- a/app/dboards/src/app/partials/opentsdb/editor.html +++ /dev/null @@ -1,176 +0,0 @@ -
    -
    - -
    -
    - - - - - - -
    -
    - -
    - - -
    -
    -
    -
    -
    diff --git a/app/dboards/src/app/partials/paneladd.html b/app/dboards/src/app/partials/paneladd.html deleted file mode 100644 index f902bbc..0000000 --- a/app/dboards/src/app/partials/paneladd.html +++ /dev/null @@ -1,6 +0,0 @@ -
    -
    -
    -
    {{tab.title}}
    -
    -
    \ No newline at end of file diff --git a/app/dboards/src/app/partials/paneleditor.html b/app/dboards/src/app/partials/paneleditor.html deleted file mode 100644 index 62692c5..0000000 --- a/app/dboards/src/app/partials/paneleditor.html +++ /dev/null @@ -1,23 +0,0 @@ - - - \ No newline at end of file diff --git a/app/dboards/src/app/partials/panelgeneral.html b/app/dboards/src/app/partials/panelgeneral.html deleted file mode 100644 index e239866..0000000 --- a/app/dboards/src/app/partials/panelgeneral.html +++ /dev/null @@ -1,11 +0,0 @@ -
    -
    -
    General options
    -
    - -
    -
    - -
    -
    -
    \ No newline at end of file diff --git a/app/dboards/src/app/partials/playlist.html b/app/dboards/src/app/partials/playlist.html deleted file mode 100644 index 4861d0e..0000000 --- a/app/dboards/src/app/partials/playlist.html +++ /dev/null @@ -1,54 +0,0 @@ -
    - - \ No newline at end of file diff --git a/app/dboards/src/app/partials/roweditor.html b/app/dboards/src/app/partials/roweditor.html deleted file mode 100644 index 8a0032a..0000000 --- a/app/dboards/src/app/partials/roweditor.html +++ /dev/null @@ -1,66 +0,0 @@ - - \ No newline at end of file diff --git a/app/dboards/src/app/partials/search.html b/app/dboards/src/app/partials/search.html deleted file mode 100644 index 0eb1d1d..0000000 --- a/app/dboards/src/app/partials/search.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - -