diff --git a/docs/README.md b/docs/README.md
index 16ad096ee4ba2ec4f27520e08c8d721a20957ff9..3ff4e9f423560e7d81c1794a0130e1ea4524f841 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -29,7 +29,7 @@
    ```
 
    ```javascript
-   var url=new URL(location.href);var branch=url.searchParams.get("branch")||"master";document.querySelector("raml-js-parser").loadApi("https://raw.githubusercontent.com/scitran/core/"+branch+"/raml/api.raml")
+   var url=new URL(location.href);var branch=new URLSearchParams(url.search).get("branch")||"master";document.querySelector("raml-js-parser").loadApi("https://raw.githubusercontent.com/scitran/core/"+branch+"/raml/api.raml")
    ```
 
 
diff --git a/docs/index.html b/docs/index.html
index 2e98616310d9b3d2c3fe94dabc37114475af5319..14bd10b58770e9e415c6e5e7bce082e12ff76a00 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -11,8 +11,8 @@
 !function(){window.WebComponents=window.WebComponents||{flags:{}};var e="webcomponents-lite.js",t=document.querySelector('script[src*="'+e+'"]'),n={};if(!n.noOpts){if(location.search.slice(1).split("&").forEach(function(e){var t,o=e.split("=");o[0]&&(t=o[0].match(/wc-(.+)/))&&(n[t[1]]=o[1]||!0)}),t)for(var o,r=0;o=t.attributes[r];r++)"src"!==o.name&&(n[o.name]=o.value||!0);if(n.log&&n.log.split){var i=n.log.split(",");n.log={},i.forEach(function(e){n.log[e]=!0})}else n.log={}}n.register&&(window.CustomElements=window.CustomElements||{flags:{}},window.CustomElements.flags.register=n.register),WebComponents.flags=n}(),function(e){"use strict";function t(e){return void 0!==h[e]}function n(){s.call(this),this._isInvalid=!0}function o(e){return""==e&&n.call(this),e.toLowerCase()}function r(e){var t=e.charCodeAt(0);return t>32&&t<127&&[34,35,60,62,63,96].indexOf(t)==-1?e:encodeURIComponent(e)}function i(e){var t=e.charCodeAt(0);return t>32&&t<127&&[34,35,60,62,96].indexOf(t)==-1?e:encodeURIComponent(e)}function a(e,a,s){function c(e){g.push(e)}var d=a||"scheme start",l=0,u="",w=!1,_=!1,g=[];e:for(;(e[l-1]!=p||0==l)&&!this._isInvalid;){var b=e[l];switch(d){case"scheme start":if(!b||!m.test(b)){if(a){c("Invalid scheme.");break e}u="",d="no scheme";continue}u+=b.toLowerCase(),d="scheme";break;case"scheme":if(b&&v.test(b))u+=b.toLowerCase();else{if(":"!=b){if(a){if(p==b)break e;c("Code point not allowed in scheme: "+b);break e}u="",l=0,d="no scheme";continue}if(this._scheme=u,u="",a)break e;t(this._scheme)&&(this._isRelative=!0),d="file"==this._scheme?"relative":this._isRelative&&s&&s._scheme==this._scheme?"relative or authority":this._isRelative?"authority first slash":"scheme data"}break;case"scheme data":"?"==b?(this._query="?",d="query"):"#"==b?(this._fragment="#",d="fragment"):p!=b&&"\t"!=b&&"\n"!=b&&"\r"!=b&&(this._schemeData+=r(b));break;case"no scheme":if(s&&t(s._scheme)){d="relative";continue}c("Missing scheme."),n.call(this);break;case"relative or authority":if("/"!=b||"/"!=e[l+1]){c("Expected /, got: "+b),d="relative";continue}d="authority ignore slashes";break;case"relative":if(this._isRelative=!0,"file"!=this._scheme&&(this._scheme=s._scheme),p==b){this._host=s._host,this._port=s._port,this._path=s._path.slice(),this._query=s._query,this._username=s._username,this._password=s._password;break e}if("/"==b||"\\"==b)"\\"==b&&c("\\ is an invalid code point."),d="relative slash";else if("?"==b)this._host=s._host,this._port=s._port,this._path=s._path.slice(),this._query="?",this._username=s._username,this._password=s._password,d="query";else{if("#"!=b){var y=e[l+1],E=e[l+2];("file"!=this._scheme||!m.test(b)||":"!=y&&"|"!=y||p!=E&&"/"!=E&&"\\"!=E&&"?"!=E&&"#"!=E)&&(this._host=s._host,this._port=s._port,this._username=s._username,this._password=s._password,this._path=s._path.slice(),this._path.pop()),d="relative path";continue}this._host=s._host,this._port=s._port,this._path=s._path.slice(),this._query=s._query,this._fragment="#",this._username=s._username,this._password=s._password,d="fragment"}break;case"relative slash":if("/"!=b&&"\\"!=b){"file"!=this._scheme&&(this._host=s._host,this._port=s._port,this._username=s._username,this._password=s._password),d="relative path";continue}"\\"==b&&c("\\ is an invalid code point."),d="file"==this._scheme?"file host":"authority ignore slashes";break;case"authority first slash":if("/"!=b){c("Expected '/', got: "+b),d="authority ignore slashes";continue}d="authority second slash";break;case"authority second slash":if(d="authority ignore slashes","/"!=b){c("Expected '/', got: "+b);continue}break;case"authority ignore slashes":if("/"!=b&&"\\"!=b){d="authority";continue}c("Expected authority, got: "+b);break;case"authority":if("@"==b){w&&(c("@ already seen."),u+="%40"),w=!0;for(var L=0;L<u.length;L++){var N=u[L];if("\t"!=N&&"\n"!=N&&"\r"!=N)if(":"!=N||null!==this._password){var M=r(N);null!==this._password?this._password+=M:this._username+=M}else this._password="";else c("Invalid whitespace in authority.")}u=""}else{if(p==b||"/"==b||"\\"==b||"?"==b||"#"==b){l-=u.length,u="",d="host";continue}u+=b}break;case"file host":if(p==b||"/"==b||"\\"==b||"?"==b||"#"==b){2!=u.length||!m.test(u[0])||":"!=u[1]&&"|"!=u[1]?0==u.length?d="relative path start":(this._host=o.call(this,u),u="",d="relative path start"):d="relative path";continue}"\t"==b||"\n"==b||"\r"==b?c("Invalid whitespace in file host."):u+=b;break;case"host":case"hostname":if(":"!=b||_){if(p==b||"/"==b||"\\"==b||"?"==b||"#"==b){if(this._host=o.call(this,u),u="",d="relative path start",a)break e;continue}"\t"!=b&&"\n"!=b&&"\r"!=b?("["==b?_=!0:"]"==b&&(_=!1),u+=b):c("Invalid code point in host/hostname: "+b)}else if(this._host=o.call(this,u),u="",d="port","hostname"==a)break e;break;case"port":if(/[0-9]/.test(b))u+=b;else{if(p==b||"/"==b||"\\"==b||"?"==b||"#"==b||a){if(""!=u){var T=parseInt(u,10);T!=h[this._scheme]&&(this._port=T+""),u=""}if(a)break e;d="relative path start";continue}"\t"==b||"\n"==b||"\r"==b?c("Invalid code point in port: "+b):n.call(this)}break;case"relative path start":if("\\"==b&&c("'\\' not allowed in path."),d="relative path","/"!=b&&"\\"!=b)continue;break;case"relative path":if(p!=b&&"/"!=b&&"\\"!=b&&(a||"?"!=b&&"#"!=b))"\t"!=b&&"\n"!=b&&"\r"!=b&&(u+=r(b));else{"\\"==b&&c("\\ not allowed in relative path.");var O;(O=f[u.toLowerCase()])&&(u=O),".."==u?(this._path.pop(),"/"!=b&&"\\"!=b&&this._path.push("")):"."==u&&"/"!=b&&"\\"!=b?this._path.push(""):"."!=u&&("file"==this._scheme&&0==this._path.length&&2==u.length&&m.test(u[0])&&"|"==u[1]&&(u=u[0]+":"),this._path.push(u)),u="","?"==b?(this._query="?",d="query"):"#"==b&&(this._fragment="#",d="fragment")}break;case"query":a||"#"!=b?p!=b&&"\t"!=b&&"\n"!=b&&"\r"!=b&&(this._query+=i(b)):(this._fragment="#",d="fragment");break;case"fragment":p!=b&&"\t"!=b&&"\n"!=b&&"\r"!=b&&(this._fragment+=b)}l++}}function s(){this._scheme="",this._schemeData="",this._username="",this._password=null,this._host="",this._port="",this._path=[],this._query="",this._fragment="",this._isInvalid=!1,this._isRelative=!1}function c(e,t){void 0===t||t instanceof c||(t=new c(String(t))),this._url=e,s.call(this);var n=e.replace(/^[ \t\r\n\f]+|[ \t\r\n\f]+$/g,"");a.call(this,n,null,t)}var d=!1;if(!e.forceJURL)try{var l=new URL("b","http://a");l.pathname="c%20d",d="http://a/c%20d"===l.href}catch(u){}if(!d){var h=Object.create(null);h.ftp=21,h.file=0,h.gopher=70,h.http=80,h.https=443,h.ws=80,h.wss=443;var f=Object.create(null);f["%2e"]=".",f[".%2e"]="..",f["%2e."]="..",f["%2e%2e"]="..";var p=void 0,m=/[a-zA-Z]/,v=/[a-zA-Z0-9\+\-\.]/;c.prototype={toString:function(){return this.href},get href(){if(this._isInvalid)return this._url;var e="";return""==this._username&&null==this._password||(e=this._username+(null!=this._password?":"+this._password:"")+"@"),this.protocol+(this._isRelative?"//"+e+this.host:"")+this.pathname+this._query+this._fragment},set href(e){s.call(this),a.call(this,e)},get protocol(){return this._scheme+":"},set protocol(e){this._isInvalid||a.call(this,e+":","scheme start")},get host(){return this._isInvalid?"":this._port?this._host+":"+this._port:this._host},set host(e){!this._isInvalid&&this._isRelative&&a.call(this,e,"host")},get hostname(){return this._host},set hostname(e){!this._isInvalid&&this._isRelative&&a.call(this,e,"hostname")},get port(){return this._port},set port(e){!this._isInvalid&&this._isRelative&&a.call(this,e,"port")},get pathname(){return this._isInvalid?"":this._isRelative?"/"+this._path.join("/"):this._schemeData},set pathname(e){!this._isInvalid&&this._isRelative&&(this._path=[],a.call(this,e,"relative path start"))},get search(){return this._isInvalid||!this._query||"?"==this._query?"":this._query},set search(e){!this._isInvalid&&this._isRelative&&(this._query="?","?"==e[0]&&(e=e.slice(1)),a.call(this,e,"query"))},get hash(){return this._isInvalid||!this._fragment||"#"==this._fragment?"":this._fragment},set hash(e){this._isInvalid||(this._fragment="#","#"==e[0]&&(e=e.slice(1)),a.call(this,e,"fragment"))},get origin(){var e;if(this._isInvalid||!this._scheme)return"";switch(this._scheme){case"data":case"file":case"javascript":case"mailto":return"null"}return e=this.host,e?this._scheme+"://"+e:""}};var w=e.URL;w&&(c.createObjectURL=function(e){return w.createObjectURL.apply(w,arguments)},c.revokeObjectURL=function(e){w.revokeObjectURL(e)}),e.URL=c}}(self),"undefined"==typeof WeakMap&&!function(){var e=Object.defineProperty,t=Date.now()%1e9,n=function(){this.name="__st"+(1e9*Math.random()>>>0)+(t++ +"__")};n.prototype={set:function(t,n){var o=t[this.name];return o&&o[0]===t?o[1]=n:e(t,this.name,{value:[t,n],writable:!0}),this},get:function(e){var t;return(t=e[this.name])&&t[0]===e?t[1]:void 0},"delete":function(e){var t=e[this.name];return!(!t||t[0]!==e)&&(t[0]=t[1]=void 0,!0)},has:function(e){var t=e[this.name];return!!t&&t[0]===e}},window.WeakMap=n}(),function(e){function t(e){b.push(e),g||(g=!0,m(o))}function n(e){return window.ShadowDOMPolyfill&&window.ShadowDOMPolyfill.wrapIfNeeded(e)||e}function o(){g=!1;var e=b;b=[],e.sort(function(e,t){return e.uid_-t.uid_});var t=!1;e.forEach(function(e){var n=e.takeRecords();r(e),n.length&&(e.callback_(n,e),t=!0)}),t&&o()}function r(e){e.nodes_.forEach(function(t){var n=v.get(t);n&&n.forEach(function(t){t.observer===e&&t.removeTransientObservers()})})}function i(e,t){for(var n=e;n;n=n.parentNode){var o=v.get(n);if(o)for(var r=0;r<o.length;r++){var i=o[r],a=i.options;if(n===e||a.subtree){var s=t(a);s&&i.enqueue(s)}}}}function a(e){this.callback_=e,this.nodes_=[],this.records_=[],this.uid_=++y}function s(e,t){this.type=e,this.target=t,this.addedNodes=[],this.removedNodes=[],this.previousSibling=null,this.nextSibling=null,this.attributeName=null,this.attributeNamespace=null,this.oldValue=null}function c(e){var t=new s(e.type,e.target);return t.addedNodes=e.addedNodes.slice(),t.removedNodes=e.removedNodes.slice(),t.previousSibling=e.previousSibling,t.nextSibling=e.nextSibling,t.attributeName=e.attributeName,t.attributeNamespace=e.attributeNamespace,t.oldValue=e.oldValue,t}function d(e,t){return E=new s(e,t)}function l(e){return L?L:(L=c(E),L.oldValue=e,L)}function u(){E=L=void 0}function h(e){return e===L||e===E}function f(e,t){return e===t?e:L&&h(e)?L:null}function p(e,t,n){this.observer=e,this.target=t,this.options=n,this.transientObservedNodes=[]}if(!e.JsMutationObserver){var m,v=new WeakMap;if(/Trident|Edge/.test(navigator.userAgent))m=setTimeout;else if(window.setImmediate)m=window.setImmediate;else{var w=[],_=String(Math.random());window.addEventListener("message",function(e){if(e.data===_){var t=w;w=[],t.forEach(function(e){e()})}}),m=function(e){w.push(e),window.postMessage(_,"*")}}var g=!1,b=[],y=0;a.prototype={observe:function(e,t){if(e=n(e),!t.childList&&!t.attributes&&!t.characterData||t.attributeOldValue&&!t.attributes||t.attributeFilter&&t.attributeFilter.length&&!t.attributes||t.characterDataOldValue&&!t.characterData)throw new SyntaxError;var o=v.get(e);o||v.set(e,o=[]);for(var r,i=0;i<o.length;i++)if(o[i].observer===this){r=o[i],r.removeListeners(),r.options=t;break}r||(r=new p(this,e,t),o.push(r),this.nodes_.push(e)),r.addListeners()},disconnect:function(){this.nodes_.forEach(function(e){for(var t=v.get(e),n=0;n<t.length;n++){var o=t[n];if(o.observer===this){o.removeListeners(),t.splice(n,1);break}}},this),this.records_=[]},takeRecords:function(){var e=this.records_;return this.records_=[],e}};var E,L;p.prototype={enqueue:function(e){var n=this.observer.records_,o=n.length;if(n.length>0){var r=n[o-1],i=f(r,e);if(i)return void(n[o-1]=i)}else t(this.observer);n[o]=e},addListeners:function(){this.addListeners_(this.target)},addListeners_:function(e){var t=this.options;t.attributes&&e.addEventListener("DOMAttrModified",this,!0),t.characterData&&e.addEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.addEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.addEventListener("DOMNodeRemoved",this,!0)},removeListeners:function(){this.removeListeners_(this.target)},removeListeners_:function(e){var t=this.options;t.attributes&&e.removeEventListener("DOMAttrModified",this,!0),t.characterData&&e.removeEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.removeEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.removeEventListener("DOMNodeRemoved",this,!0)},addTransientObserver:function(e){if(e!==this.target){this.addListeners_(e),this.transientObservedNodes.push(e);var t=v.get(e);t||v.set(e,t=[]),t.push(this)}},removeTransientObservers:function(){var e=this.transientObservedNodes;this.transientObservedNodes=[],e.forEach(function(e){this.removeListeners_(e);for(var t=v.get(e),n=0;n<t.length;n++)if(t[n]===this){t.splice(n,1);break}},this)},handleEvent:function(e){switch(e.stopImmediatePropagation(),e.type){case"DOMAttrModified":var t=e.attrName,n=e.relatedNode.namespaceURI,o=e.target,r=new d("attributes",o);r.attributeName=t,r.attributeNamespace=n;var a=e.attrChange===MutationEvent.ADDITION?null:e.prevValue;i(o,function(e){if(e.attributes&&(!e.attributeFilter||!e.attributeFilter.length||e.attributeFilter.indexOf(t)!==-1||e.attributeFilter.indexOf(n)!==-1))return e.attributeOldValue?l(a):r});break;case"DOMCharacterDataModified":var o=e.target,r=d("characterData",o),a=e.prevValue;i(o,function(e){if(e.characterData)return e.characterDataOldValue?l(a):r});break;case"DOMNodeRemoved":this.addTransientObserver(e.target);case"DOMNodeInserted":var s,c,h=e.target;"DOMNodeInserted"===e.type?(s=[h],c=[]):(s=[],c=[h]);var f=h.previousSibling,p=h.nextSibling,r=d("childList",e.target.parentNode);r.addedNodes=s,r.removedNodes=c,r.previousSibling=f,r.nextSibling=p,i(e.relatedNode,function(e){if(e.childList)return r})}u()}},e.JsMutationObserver=a,e.MutationObserver||(e.MutationObserver=a,a._isPolyfilled=!0)}}(self),function(){function e(e){switch(e){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case"聽":return"&nbsp;"}}function t(t){return t.replace(u,e)}var n="undefined"==typeof HTMLTemplateElement;/Trident/.test(navigator.userAgent)&&!function(){var e=document.importNode;document.importNode=function(){var t=e.apply(document,arguments);if(t.nodeType===Node.DOCUMENT_FRAGMENT_NODE){var n=document.createDocumentFragment();return n.appendChild(t),n}return t}}();var o=function(){if(!n){var e=document.createElement("template"),t=document.createElement("template");t.content.appendChild(document.createElement("div")),e.content.appendChild(t);var o=e.cloneNode(!0);return 0===o.content.childNodes.length||0===o.content.firstChild.content.childNodes.length}}(),r="template",i=function(){};if(n){var a=document.implementation.createHTMLDocument("template"),s=!0,c=document.createElement("style");c.textContent=r+"{display:none;}";var d=document.head;d.insertBefore(c,d.firstElementChild),i.prototype=Object.create(HTMLElement.prototype),i.decorate=function(e){if(!e.content){e.content=a.createDocumentFragment();for(var n;n=e.firstChild;)e.content.appendChild(n);if(e.cloneNode=function(e){return i.cloneNode(this,e)},s)try{Object.defineProperty(e,"innerHTML",{get:function(){for(var e="",n=this.content.firstChild;n;n=n.nextSibling)e+=n.outerHTML||t(n.data);return e},set:function(e){for(a.body.innerHTML=e,i.bootstrap(a);this.content.firstChild;)this.content.removeChild(this.content.firstChild);for(;a.body.firstChild;)this.content.appendChild(a.body.firstChild)},configurable:!0})}catch(o){s=!1}i.bootstrap(e.content)}},i.bootstrap=function(e){for(var t,n=e.querySelectorAll(r),o=0,a=n.length;o<a&&(t=n[o]);o++)i.decorate(t)},document.addEventListener("DOMContentLoaded",function(){i.bootstrap(document)});var l=document.createElement;document.createElement=function(){"use strict";var e=l.apply(document,arguments);return"template"===e.localName&&i.decorate(e),e};var u=/[&\u00A0<>]/g}if(n||o){var h=Node.prototype.cloneNode;i.cloneNode=function(e,t){var n=h.call(e,!1);return this.decorate&&this.decorate(n),t&&(n.content.appendChild(h.call(e.content,!0)),this.fixClonedDom(n.content,e.content)),n},i.fixClonedDom=function(e,t){if(t.querySelectorAll)for(var n,o,i=t.querySelectorAll(r),a=e.querySelectorAll(r),s=0,c=a.length;s<c;s++)o=i[s],n=a[s],this.decorate&&this.decorate(o),n.parentNode.replaceChild(o.cloneNode(!0),n)};var f=document.importNode;Node.prototype.cloneNode=function(e){var t=h.call(this,e);return e&&i.fixClonedDom(t,this),t},document.importNode=function(e,t){if(e.localName===r)return i.cloneNode(e,t);var n=f.call(document,e,t);return t&&i.fixClonedDom(n,e),n},o&&(HTMLTemplateElement.prototype.cloneNode=function(e){return i.cloneNode(this,e)})}n&&(window.HTMLTemplateElement=i)}(),function(e){"use strict";if(!window.performance||!window.performance.now){var t=Date.now();window.performance={now:function(){return Date.now()-t}}}window.requestAnimationFrame||(window.requestAnimationFrame=function(){var e=window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame;return e?function(t){return e(function(){t(performance.now())})}:function(e){return window.setTimeout(e,1e3/60)}}()),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(){return window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||function(e){clearTimeout(e)}}());var n=function(){var e=document.createEvent("Event");return e.initEvent("foo",!0,!0),e.preventDefault(),e.defaultPrevented}();if(!n){var o=Event.prototype.preventDefault;Event.prototype.preventDefault=function(){this.cancelable&&(o.call(this),Object.defineProperty(this,"defaultPrevented",{get:function(){return!0},configurable:!0}))}}var r=/Trident/.test(navigator.userAgent);if((!window.CustomEvent||r&&"function"!=typeof window.CustomEvent)&&(window.CustomEvent=function(e,t){t=t||{};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,Boolean(t.bubbles),Boolean(t.cancelable),t.detail),n},window.CustomEvent.prototype=window.Event.prototype),!window.Event||r&&"function"!=typeof window.Event){var i=window.Event;window.Event=function(e,t){t=t||{};var n=document.createEvent("Event");return n.initEvent(e,Boolean(t.bubbles),Boolean(t.cancelable)),n},window.Event.prototype=i.prototype}}(window.WebComponents),window.HTMLImports=window.HTMLImports||{flags:{}},function(e){function t(e,t){t=t||p,o(function(){i(e,t)},t)}function n(e){return"complete"===e.readyState||e.readyState===w}function o(e,t){if(n(t))e&&e();else{var r=function(){"complete"!==t.readyState&&t.readyState!==w||(t.removeEventListener(_,r),o(e,t))};t.addEventListener(_,r)}}function r(e){e.target.__loaded=!0}function i(e,t){function n(){c==d&&e&&e({allImports:s,loadedImports:l,errorImports:u})}function o(e){r(e),l.push(this),c++,n()}function i(e){u.push(this),c++,n()}var s=t.querySelectorAll("link[rel=import]"),c=0,d=s.length,l=[],u=[];if(d)for(var h,f=0;f<d&&(h=s[f]);f++)a(h)?(l.push(this),c++,n()):(h.addEventListener("load",o),h.addEventListener("error",i));else n()}function a(e){return u?e.__loaded||e["import"]&&"loading"!==e["import"].readyState:e.__importParsed}function s(e){for(var t,n=0,o=e.length;n<o&&(t=e[n]);n++)c(t)&&d(t)}function c(e){return"link"===e.localName&&"import"===e.rel}function d(e){var t=e["import"];t?r({target:e}):(e.addEventListener("load",r),e.addEventListener("error",r))}var l="import",u=Boolean(l in document.createElement("link")),h=Boolean(window.ShadowDOMPolyfill),f=function(e){return h?window.ShadowDOMPolyfill.wrapIfNeeded(e):e},p=f(document),m={get:function(){var e=window.HTMLImports.currentScript||document.currentScript||("complete"!==document.readyState?document.scripts[document.scripts.length-1]:null);return f(e)},configurable:!0};Object.defineProperty(document,"_currentScript",m),Object.defineProperty(p,"_currentScript",m);var v=/Trident/.test(navigator.userAgent),w=v?"complete":"interactive",_="readystatechange";u&&(new MutationObserver(function(e){for(var t,n=0,o=e.length;n<o&&(t=e[n]);n++)t.addedNodes&&s(t.addedNodes)}).observe(document.head,{childList:!0}),function(){if("loading"===document.readyState)for(var e,t=document.querySelectorAll("link[rel=import]"),n=0,o=t.length;n<o&&(e=t[n]);n++)d(e)}()),t(function(e){window.HTMLImports.ready=!0,window.HTMLImports.readyTime=(new Date).getTime();var t=p.createEvent("CustomEvent");t.initCustomEvent("HTMLImportsLoaded",!0,!0,e),p.dispatchEvent(t)}),e.IMPORT_LINK_TYPE=l,e.useNative=u,e.rootDocument=p,e.whenReady=t,e.isIE=v}(window.HTMLImports),function(e){var t=[],n=function(e){t.push(e)},o=function(){t.forEach(function(t){t(e)})};e.addModule=n,e.initializeModules=o}(window.HTMLImports),window.HTMLImports.addModule(function(e){var t=/(url\()([^)]*)(\))/g,n=/(@import[\s]+(?!url\())([^;]*)(;)/g,o={resolveUrlsInStyle:function(e,t){var n=e.ownerDocument,o=n.createElement("a");return e.textContent=this.resolveUrlsInCssText(e.textContent,t,o),e},resolveUrlsInCssText:function(e,o,r){var i=this.replaceUrls(e,r,o,t);return i=this.replaceUrls(i,r,o,n)},replaceUrls:function(e,t,n,o){return e.replace(o,function(e,o,r,i){var a=r.replace(/["']/g,"");return n&&(a=new URL(a,n).href),t.href=a,a=t.href,o+"'"+a+"'"+i})}};e.path=o}),window.HTMLImports.addModule(function(e){var t={async:!0,ok:function(e){return e.status>=200&&e.status<300||304===e.status||0===e.status},load:function(n,o,r){var i=new XMLHttpRequest;return(e.flags.debug||e.flags.bust)&&(n+="?"+Math.random()),i.open("GET",n,t.async),i.addEventListener("readystatechange",function(e){if(4===i.readyState){var n=null;try{var a=i.getResponseHeader("Location");a&&(n="/"===a.substr(0,1)?location.origin+a:a)}catch(e){console.error(e.message)}o.call(r,!t.ok(i)&&i,i.response||i.responseText,n)}}),i.send(),i},loadDocument:function(e,t,n){this.load(e,t,n).responseType="document"}};e.xhr=t}),window.HTMLImports.addModule(function(e){var t=e.xhr,n=e.flags,o=function(e,t){this.cache={},this.onload=e,this.oncomplete=t,this.inflight=0,this.pending={}};o.prototype={addNodes:function(e){this.inflight+=e.length;for(var t,n=0,o=e.length;n<o&&(t=e[n]);n++)this.require(t);this.checkDone()},addNode:function(e){this.inflight++,this.require(e),this.checkDone()},require:function(e){var t=e.src||e.href;e.__nodeUrl=t,this.dedupe(t,e)||this.fetch(t,e)},dedupe:function(e,t){if(this.pending[e])return this.pending[e].push(t),!0;return this.cache[e]?(this.onload(e,t,this.cache[e]),this.tail(),!0):(this.pending[e]=[t],!1)},fetch:function(e,o){if(n.load&&console.log("fetch",e,o),e)if(e.match(/^data:/)){var r=e.split(","),i=r[0],a=r[1];a=i.indexOf(";base64")>-1?atob(a):decodeURIComponent(a),setTimeout(function(){this.receive(e,o,null,a)}.bind(this),0)}else{var s=function(t,n,r){this.receive(e,o,t,n,r)}.bind(this);t.load(e,s)}else setTimeout(function(){this.receive(e,o,{error:"href must be specified"},null)}.bind(this),0)},receive:function(e,t,n,o,r){this.cache[e]=o;for(var i,a=this.pending[e],s=0,c=a.length;s<c&&(i=a[s]);s++)this.onload(e,i,o,n,r),this.tail();this.pending[e]=null},tail:function(){--this.inflight,this.checkDone()},checkDone:function(){this.inflight||this.oncomplete()}},e.Loader=o}),window.HTMLImports.addModule(function(e){var t=function(e){this.addCallback=e,this.mo=new MutationObserver(this.handler.bind(this))};t.prototype={handler:function(e){for(var t,n=0,o=e.length;n<o&&(t=e[n]);n++)"childList"===t.type&&t.addedNodes.length&&this.addedNodes(t.addedNodes)},addedNodes:function(e){this.addCallback&&this.addCallback(e);for(var t,n=0,o=e.length;n<o&&(t=e[n]);n++)t.children&&t.children.length&&this.addedNodes(t.children)},observe:function(e){this.mo.observe(e,{childList:!0,subtree:!0})}},e.Observer=t}),window.HTMLImports.addModule(function(e){function t(e){return"link"===e.localName&&e.rel===l}function n(e){var t=o(e);return"data:text/javascript;charset=utf-8,"+encodeURIComponent(t)}function o(e){return e.textContent+r(e)}function r(e){var t=e.ownerDocument;t.__importedScripts=t.__importedScripts||0;var n=e.ownerDocument.baseURI,o=t.__importedScripts?"-"+t.__importedScripts:"";return t.__importedScripts++,"\n//# sourceURL="+n+o+".js\n"}function i(e){var t=e.ownerDocument.createElement("style");return t.textContent=e.textContent,a.resolveUrlsInStyle(t),t}var a=e.path,s=e.rootDocument,c=e.flags,d=e.isIE,l=e.IMPORT_LINK_TYPE,u="link[rel="+l+"]",h={documentSelectors:u,importsSelectors:[u,"link[rel=stylesheet]:not([type])","style:not([type])","script:not([type])",'script[type="application/javascript"]','script[type="text/javascript"]'].join(","),map:{link:"parseLink",script:"parseScript",style:"parseStyle"},dynamicElements:[],parseNext:function(){var e=this.nextToParse();e&&this.parse(e)},parse:function(e){if(this.isParsed(e))return void(c.parse&&console.log("[%s] is already parsed",e.localName));var t=this[this.map[e.localName]];t&&(this.markParsing(e),t.call(this,e))},parseDynamic:function(e,t){this.dynamicElements.push(e),t||this.parseNext()},markParsing:function(e){c.parse&&console.log("parsing",e),this.parsingElement=e},markParsingComplete:function(e){e.__importParsed=!0,this.markDynamicParsingComplete(e),e.__importElement&&(e.__importElement.__importParsed=!0,this.markDynamicParsingComplete(e.__importElement)),this.parsingElement=null,c.parse&&console.log("completed",e)},markDynamicParsingComplete:function(e){var t=this.dynamicElements.indexOf(e);t>=0&&this.dynamicElements.splice(t,1)},parseImport:function(e){if(e["import"]=e.__doc,window.HTMLImports.__importsParsingHook&&window.HTMLImports.__importsParsingHook(e),e["import"]&&(e["import"].__importParsed=!0),this.markParsingComplete(e),e.__resource&&!e.__error?e.dispatchEvent(new CustomEvent("load",{bubbles:!1})):e.dispatchEvent(new CustomEvent("error",{bubbles:!1})),e.__pending)for(var t;e.__pending.length;)t=e.__pending.shift(),t&&t({target:e});this.parseNext()},parseLink:function(e){t(e)?this.parseImport(e):(e.href=e.href,this.parseGeneric(e))},parseStyle:function(e){var t=e;e=i(e),t.__appliedElement=e,e.__importElement=t,this.parseGeneric(e)},parseGeneric:function(e){this.trackElement(e),this.addElementToDocument(e)},rootImportForElement:function(e){for(var t=e;t.ownerDocument.__importLink;)t=t.ownerDocument.__importLink;return t},addElementToDocument:function(e){var t=this.rootImportForElement(e.__importElement||e);t.parentNode.insertBefore(e,t)},trackElement:function(e,t){var n=this,o=function(r){e.removeEventListener("load",o),e.removeEventListener("error",o),t&&t(r),n.markParsingComplete(e),n.parseNext()};if(e.addEventListener("load",o),e.addEventListener("error",o),d&&"style"===e.localName){var r=!1;if(e.textContent.indexOf("@import")==-1)r=!0;else if(e.sheet){r=!0;for(var i,a=e.sheet.cssRules,s=a?a.length:0,c=0;c<s&&(i=a[c]);c++)i.type===CSSRule.IMPORT_RULE&&(r=r&&Boolean(i.styleSheet))}r&&setTimeout(function(){e.dispatchEvent(new CustomEvent("load",{bubbles:!1}))})}},parseScript:function(t){var o=document.createElement("script");o.__importElement=t,o.src=t.src?t.src:n(t),e.currentScript=t,this.trackElement(o,function(t){o.parentNode&&o.parentNode.removeChild(o),e.currentScript=null}),this.addElementToDocument(o)},nextToParse:function(){return this._mayParse=[],!this.parsingElement&&(this.nextToParseInDoc(s)||this.nextToParseDynamic())},nextToParseInDoc:function(e,n){if(e&&this._mayParse.indexOf(e)<0){this._mayParse.push(e);for(var o,r=e.querySelectorAll(this.parseSelectorsForNode(e)),i=0,a=r.length;i<a&&(o=r[i]);i++)if(!this.isParsed(o))return this.hasResource(o)?t(o)?this.nextToParseInDoc(o.__doc,o):o:void 0}return n},nextToParseDynamic:function(){return this.dynamicElements[0]},parseSelectorsForNode:function(e){var t=e.ownerDocument||e;return t===s?this.documentSelectors:this.importsSelectors},isParsed:function(e){return e.__importParsed},needsDynamicParsing:function(e){return this.dynamicElements.indexOf(e)>=0},hasResource:function(e){return!t(e)||void 0!==e.__doc}};e.parser=h,e.IMPORT_SELECTOR=u}),window.HTMLImports.addModule(function(e){function t(e){return n(e,a)}function n(e,t){return"link"===e.localName&&e.getAttribute("rel")===t}function o(e){return!!Object.getOwnPropertyDescriptor(e,"baseURI")}function r(e,t){var n=document.implementation.createHTMLDocument(a);n._URL=t;var r=n.createElement("base");r.setAttribute("href",t),n.baseURI||o(n)||Object.defineProperty(n,"baseURI",{value:t});var i=n.createElement("meta");return i.setAttribute("charset","utf-8"),n.head.appendChild(i),n.head.appendChild(r),n.body.innerHTML=e,window.HTMLTemplateElement&&HTMLTemplateElement.bootstrap&&HTMLTemplateElement.bootstrap(n),n}var i=e.flags,a=e.IMPORT_LINK_TYPE,s=e.IMPORT_SELECTOR,c=e.rootDocument,d=e.Loader,l=e.Observer,u=e.parser,h={documents:{},documentPreloadSelectors:s,importsPreloadSelectors:[s].join(","),loadNode:function(e){f.addNode(e)},loadSubtree:function(e){var t=this.marshalNodes(e);f.addNodes(t)},marshalNodes:function(e){return e.querySelectorAll(this.loadSelectorsForNode(e))},loadSelectorsForNode:function(e){var t=e.ownerDocument||e;return t===c?this.documentPreloadSelectors:this.importsPreloadSelectors},loaded:function(e,n,o,a,s){if(i.load&&console.log("loaded",e,n),n.__resource=o,n.__error=a,t(n)){var c=this.documents[e];void 0===c&&(c=a?null:r(o,s||e),c&&(c.__importLink=n,this.bootDocument(c)),this.documents[e]=c),n.__doc=c}u.parseNext()},bootDocument:function(e){this.loadSubtree(e),this.observer.observe(e),u.parseNext()},loadedAll:function(){u.parseNext()}},f=new d(h.loaded.bind(h),h.loadedAll.bind(h));if(h.observer=new l,!document.baseURI){var p={get:function(){var e=document.querySelector("base");return e?e.href:window.location.href},configurable:!0};Object.defineProperty(document,"baseURI",p),Object.defineProperty(c,"baseURI",p)}e.importer=h,e.importLoader=f}),window.HTMLImports.addModule(function(e){var t=e.parser,n=e.importer,o={added:function(e){for(var o,r,i,a,s=0,c=e.length;s<c&&(a=e[s]);s++)o||(o=a.ownerDocument,r=t.isParsed(o)),i=this.shouldLoadNode(a),i&&n.loadNode(a),this.shouldParseNode(a)&&r&&t.parseDynamic(a,i)},shouldLoadNode:function(e){return 1===e.nodeType&&r.call(e,n.loadSelectorsForNode(e))},shouldParseNode:function(e){return 1===e.nodeType&&r.call(e,t.parseSelectorsForNode(e))}};n.observer.addCallback=o.added.bind(o);var r=HTMLElement.prototype.matches||HTMLElement.prototype.matchesSelector||HTMLElement.prototype.webkitMatchesSelector||HTMLElement.prototype.mozMatchesSelector||HTMLElement.prototype.msMatchesSelector}),function(e){function t(){window.HTMLImports.importer.bootDocument(o)}var n=e.initializeModules;e.isIE;if(!e.useNative){n();var o=e.rootDocument;"complete"===document.readyState||"interactive"===document.readyState&&!window.attachEvent?t():document.addEventListener("DOMContentLoaded",t)}}(window.HTMLImports),window.CustomElements=window.CustomElements||{flags:{}},function(e){var t=e.flags,n=[],o=function(e){n.push(e)},r=function(){n.forEach(function(t){t(e)})};e.addModule=o,e.initializeModules=r,e.hasNative=Boolean(document.registerElement),e.isIE=/Trident/.test(navigator.userAgent),e.useNative=!t.register&&e.hasNative&&!window.ShadowDOMPolyfill&&(!window.HTMLImports||window.HTMLImports.useNative)}(window.CustomElements),window.CustomElements.addModule(function(e){function t(e,t){n(e,function(e){return!!t(e)||void o(e,t)}),o(e,t)}function n(e,t,o){var r=e.firstElementChild;if(!r)for(r=e.firstChild;r&&r.nodeType!==Node.ELEMENT_NODE;)r=r.nextSibling;for(;r;)t(r,o)!==!0&&n(r,t,o),r=r.nextElementSibling;return null}function o(e,n){for(var o=e.shadowRoot;o;)t(o,n),o=o.olderShadowRoot}function r(e,t){i(e,t,[])}function i(e,t,n){if(e=window.wrap(e),!(n.indexOf(e)>=0)){n.push(e);for(var o,r=e.querySelectorAll("link[rel="+a+"]"),s=0,c=r.length;s<c&&(o=r[s]);s++)o["import"]&&i(o["import"],t,n);t(e)}}var a=window.HTMLImports?window.HTMLImports.IMPORT_LINK_TYPE:"none";e.forDocumentTree=r,e.forSubtree=t}),window.CustomElements.addModule(function(e){function t(e,t){return n(e,t)||o(e,t)}function n(t,n){return!!e.upgrade(t,n)||void(n&&a(t))}function o(e,t){g(e,function(e){if(n(e,t))return!0})}function r(e){L.push(e),E||(E=!0,setTimeout(i))}function i(){E=!1;for(var e,t=L,n=0,o=t.length;n<o&&(e=t[n]);n++)e();L=[]}function a(e){y?r(function(){s(e);
 }):s(e)}function s(e){e.__upgraded__&&!e.__attached&&(e.__attached=!0,e.attachedCallback&&e.attachedCallback())}function c(e){d(e),g(e,function(e){d(e)})}function d(e){y?r(function(){l(e)}):l(e)}function l(e){e.__upgraded__&&e.__attached&&(e.__attached=!1,e.detachedCallback&&e.detachedCallback())}function u(e){for(var t=e,n=window.wrap(document);t;){if(t==n)return!0;t=t.parentNode||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&t.host}}function h(e){if(e.shadowRoot&&!e.shadowRoot.__watched){_.dom&&console.log("watching shadow-root for: ",e.localName);for(var t=e.shadowRoot;t;)m(t),t=t.olderShadowRoot}}function f(e,n){if(_.dom){var o=n[0];if(o&&"childList"===o.type&&o.addedNodes&&o.addedNodes){for(var r=o.addedNodes[0];r&&r!==document&&!r.host;)r=r.parentNode;var i=r&&(r.URL||r._URL||r.host&&r.host.localName)||"";i=i.split("/?").shift().split("/").pop()}console.group("mutations (%d) [%s]",n.length,i||"")}var a=u(e);n.forEach(function(e){"childList"===e.type&&(N(e.addedNodes,function(e){e.localName&&t(e,a)}),N(e.removedNodes,function(e){e.localName&&c(e)}))}),_.dom&&console.groupEnd()}function p(e){for(e=window.wrap(e),e||(e=window.wrap(document));e.parentNode;)e=e.parentNode;var t=e.__observer;t&&(f(e,t.takeRecords()),i())}function m(e){if(!e.__observer){var t=new MutationObserver(f.bind(this,e));t.observe(e,{childList:!0,subtree:!0}),e.__observer=t}}function v(e){e=window.wrap(e),_.dom&&console.group("upgradeDocument: ",e.baseURI.split("/").pop());var n=e===window.wrap(document);t(e,n),m(e),_.dom&&console.groupEnd()}function w(e){b(e,v)}var _=e.flags,g=e.forSubtree,b=e.forDocumentTree,y=window.MutationObserver._isPolyfilled&&_["throttle-attached"];e.hasPolyfillMutations=y,e.hasThrottledAttached=y;var E=!1,L=[],N=Array.prototype.forEach.call.bind(Array.prototype.forEach),M=Element.prototype.createShadowRoot;M&&(Element.prototype.createShadowRoot=function(){var e=M.call(this);return window.CustomElements.watchShadow(this),e}),e.watchShadow=h,e.upgradeDocumentTree=w,e.upgradeDocument=v,e.upgradeSubtree=o,e.upgradeAll=t,e.attached=a,e.takeRecords=p}),window.CustomElements.addModule(function(e){function t(t,o){if("template"===t.localName&&window.HTMLTemplateElement&&HTMLTemplateElement.decorate&&HTMLTemplateElement.decorate(t),!t.__upgraded__&&t.nodeType===Node.ELEMENT_NODE){var r=t.getAttribute("is"),i=e.getRegisteredDefinition(t.localName)||e.getRegisteredDefinition(r);if(i&&(r&&i.tag==t.localName||!r&&!i["extends"]))return n(t,i,o)}}function n(t,n,r){return a.upgrade&&console.group("upgrade:",t.localName),n.is&&t.setAttribute("is",n.is),o(t,n),t.__upgraded__=!0,i(t),r&&e.attached(t),e.upgradeSubtree(t,r),a.upgrade&&console.groupEnd(),t}function o(e,t){Object.__proto__?e.__proto__=t.prototype:(r(e,t.prototype,t["native"]),e.__proto__=t.prototype)}function r(e,t,n){for(var o={},r=t;r!==n&&r!==HTMLElement.prototype;){for(var i,a=Object.getOwnPropertyNames(r),s=0;i=a[s];s++)o[i]||(Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i)),o[i]=1);r=Object.getPrototypeOf(r)}}function i(e){e.createdCallback&&e.createdCallback()}var a=e.flags;e.upgrade=t,e.upgradeWithDefinition=n,e.implementPrototype=o}),window.CustomElements.addModule(function(e){function t(t,o){var c=o||{};if(!t)throw new Error("document.registerElement: first argument `name` must not be empty");if(t.indexOf("-")<0)throw new Error("document.registerElement: first argument ('name') must contain a dash ('-'). Argument provided was '"+String(t)+"'.");if(r(t))throw new Error("Failed to execute 'registerElement' on 'Document': Registration failed for type '"+String(t)+"'. The type name is invalid.");if(d(t))throw new Error("DuplicateDefinitionError: a type with name '"+String(t)+"' is already registered");return c.prototype||(c.prototype=Object.create(HTMLElement.prototype)),c.__name=t.toLowerCase(),c["extends"]&&(c["extends"]=c["extends"].toLowerCase()),c.lifecycle=c.lifecycle||{},c.ancestry=i(c["extends"]),a(c),s(c),n(c.prototype),l(c.__name,c),c.ctor=u(c),c.ctor.prototype=c.prototype,c.prototype.constructor=c.ctor,e.ready&&v(document),c.ctor}function n(e){if(!e.setAttribute._polyfilled){var t=e.setAttribute;e.setAttribute=function(e,n){o.call(this,e,n,t)};var n=e.removeAttribute;e.removeAttribute=function(e){o.call(this,e,null,n)},e.setAttribute._polyfilled=!0}}function o(e,t,n){e=e.toLowerCase();var o=this.getAttribute(e);n.apply(this,arguments);var r=this.getAttribute(e);this.attributeChangedCallback&&r!==o&&this.attributeChangedCallback(e,o,r)}function r(e){for(var t=0;t<y.length;t++)if(e===y[t])return!0}function i(e){var t=d(e);return t?i(t["extends"]).concat([t]):[]}function a(e){for(var t,n=e["extends"],o=0;t=e.ancestry[o];o++)n=t.is&&t.tag;e.tag=n||e.__name,n&&(e.is=e.__name)}function s(e){if(!Object.__proto__){var t=HTMLElement.prototype;if(e.is){var n=document.createElement(e.tag);t=Object.getPrototypeOf(n)}for(var o,r=e.prototype,i=!1;r;)r==t&&(i=!0),o=Object.getPrototypeOf(r),o&&(r.__proto__=o),r=o;i||console.warn(e.tag+" prototype not found in prototype chain for "+e.is),e["native"]=t}}function c(e){return _(N(e.tag),e)}function d(e){if(e)return E[e.toLowerCase()]}function l(e,t){E[e]=t}function u(e){return function(){return c(e)}}function h(e,t,n){return e===L?f(t,n):M(e,t)}function f(e,t){e&&(e=e.toLowerCase()),t&&(t=t.toLowerCase());var n=d(t||e);if(n){if(e==n.tag&&t==n.is)return new n.ctor;if(!t&&!n.is)return new n.ctor}var o;return t?(o=f(e),o.setAttribute("is",t),o):(o=N(e),e.indexOf("-")>=0&&g(o,HTMLElement),o)}function p(e,t){var n=e[t];e[t]=function(){var e=n.apply(this,arguments);return w(e),e}}var m,v=(e.isIE,e.upgradeDocumentTree),w=e.upgradeAll,_=e.upgradeWithDefinition,g=e.implementPrototype,b=e.useNative,y=["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"],E={},L="http://www.w3.org/1999/xhtml",N=document.createElement.bind(document),M=document.createElementNS.bind(document);m=Object.__proto__||b?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;for(var n=e;n;){if(n===t.prototype)return!0;n=n.__proto__}return!1},p(Node.prototype,"cloneNode"),p(document,"importNode"),document.registerElement=t,document.createElement=f,document.createElementNS=h,e.registry=E,e["instanceof"]=m,e.reservedTagList=y,e.getRegisteredDefinition=d,document.register=document.registerElement}),function(e){function t(){i(window.wrap(document)),window.CustomElements.ready=!0;var e=window.requestAnimationFrame||function(e){setTimeout(e,16)};e(function(){setTimeout(function(){window.CustomElements.readyTime=Date.now(),window.HTMLImports&&(window.CustomElements.elapsed=window.CustomElements.readyTime-window.HTMLImports.readyTime),document.dispatchEvent(new CustomEvent("WebComponentsReady",{bubbles:!0}))})})}var n=e.useNative,o=e.initializeModules;e.isIE;if(n){var r=function(){};e.watchShadow=r,e.upgrade=r,e.upgradeAll=r,e.upgradeDocumentTree=r,e.upgradeSubtree=r,e.takeRecords=r,e["instanceof"]=function(e,t){return e instanceof t}}else o();var i=e.upgradeDocumentTree,a=e.upgradeDocument;if(window.wrap||(window.ShadowDOMPolyfill?(window.wrap=window.ShadowDOMPolyfill.wrapIfNeeded,window.unwrap=window.ShadowDOMPolyfill.unwrapIfNeeded):window.wrap=window.unwrap=function(e){return e}),window.HTMLImports&&(window.HTMLImports.__importsParsingHook=function(e){e["import"]&&a(wrap(e["import"]))}),"complete"===document.readyState||e.flags.eager)t();else if("interactive"!==document.readyState||window.attachEvent||window.HTMLImports&&!window.HTMLImports.ready){var s=window.HTMLImports&&!window.HTMLImports.ready?"HTMLImportsLoaded":"DOMContentLoaded";window.addEventListener(s,t)}else t()}(window.CustomElements),function(e){var t=document.createElement("style");t.textContent="body {transition: opacity ease-in 0.2s; } \nbody[unresolved] {opacity: 0; display: block; overflow: hidden; position: relative; } \n";var n=document.querySelector("head");n.insertBefore(t,n.firstChild)}(window.WebComponents);</script><script>window.Polymer={dom:"shadow"};if(!window.HTMLImports)document.dispatchEvent(new CustomEvent("WebComponentsReady",{bubbles:true}));</script></head><body><div hidden="" by-polymer-bundler=""><script>(function(){function resolve(){document.body.removeAttribute("unresolved")}if(window.WebComponents)addEventListener("WebComponentsReady",resolve);else if(document.readyState==="interactive"||document.readyState==="complete")resolve();else addEventListener("DOMContentLoaded",resolve)})();
 window.Polymer={Settings:function(){var settings=window.Polymer||{};if(!settings.noUrlSettings){var parts=location.search.slice(1).split("\x26");for(var i=0,o;i<parts.length&&(o=parts[i]);i++){o=o.split("\x3d");o[0]&&(settings[o[0]]=o[1]||true)}}settings.wantShadow=settings.dom==="shadow";settings.hasShadow=Boolean(Element.prototype.createShadowRoot);settings.nativeShadow=settings.hasShadow&&!window.ShadowDOMPolyfill;settings.useShadow=settings.wantShadow&&settings.hasShadow;settings.hasNativeImports=
-Boolean("import"in document.createElement("link"));settings.useNativeImports=settings.hasNativeImports;settings.useNativeCustomElements=!window.CustomElements||window.CustomElements.useNative;settings.useNativeShadow=settings.useShadow&&settings.nativeShadow;settings.usePolyfillProto=!settings.useNativeCustomElements&&!Object.__proto__;settings.hasNativeCSSProperties=!navigator.userAgent.match("AppleWebKit/601")&&window.CSS&&CSS.supports&&CSS.supports("box-shadow","0 0 0 var(--foo)");settings.useNativeCSSProperties=
-settings.hasNativeCSSProperties&&settings.lazyRegister&&settings.useNativeCSSProperties;settings.isIE=navigator.userAgent.match("Trident");return settings}()};
+Boolean("import"in document.createElement("link"));settings.useNativeImports=settings.hasNativeImports;settings.useNativeCustomElements=!window.CustomElements||window.CustomElements.useNative;settings.useNativeShadow=settings.useShadow&&settings.nativeShadow;settings.usePolyfillProto=!settings.useNativeCustomElements&&!Object.__proto__;settings.hasNativeCSSProperties=!navigator.userAgent.match(/AppleWebKit\/601|Edge\/15/)&&window.CSS&&CSS.supports&&CSS.supports("box-shadow","0 0 0 var(--foo)");settings.useNativeCSSProperties=
+settings.hasNativeCSSProperties&&settings.lazyRegister&&settings.useNativeCSSProperties;settings.isIE=navigator.userAgent.match("Trident");settings.passiveTouchGestures=settings.passiveTouchGestures||false;return settings}()};
 (function(){var userPolymer=window.Polymer;window.Polymer=function(prototype){if(typeof prototype==="function")prototype=prototype.prototype;if(!prototype)prototype={};prototype=desugar(prototype);var customCtor=prototype===prototype.constructor.prototype?prototype.constructor:null;var options={prototype:prototype};if(prototype.extends)options.extends=prototype.extends;Polymer.telemetry._registrate(prototype);var ctor=document.registerElement(prototype.is,options);return customCtor||ctor};var desugar=
 function(prototype){var base=Polymer.Base;if(prototype.extends)base=Polymer.Base._getExtendedPrototype(prototype.extends);prototype=Polymer.Base.chainObject(prototype,base);prototype.registerCallback();return prototype};if(userPolymer)for(var i in userPolymer)Polymer[i]=userPolymer[i];Polymer.Class=function(prototype){if(!prototype.factoryImpl)prototype.factoryImpl=function(){};return desugar(prototype).constructor}})();
 Polymer.telemetry={registrations:[],_regLog:function(prototype){console.log("["+prototype.is+"]: registered")},_registrate:function(prototype){this.registrations.push(prototype);Polymer.log&&this._regLog(prototype)},dumpRegistrations:function(){this.registrations.forEach(this._regLog)}};Object.defineProperty(window,"currentImport",{enumerable:true,configurable:true,get:function(){return(document._currentScript||document.currentScript||{}).ownerDocument}});
@@ -46,7 +46,7 @@ Polymer.Base._addFeature({_addHostAttributes:function(attributes){if(!this._aggr
 _takeAttributesToModel:function(model){if(this.hasAttributes())for(var i in this._propertyInfo){var info=this._propertyInfo[i];if(this.hasAttribute(info.attribute))this._setAttributeToProperty(model,info.attribute,i,info)}},_setAttributeToProperty:function(model,attribute,property,info){if(!this._serializing){property=property||Polymer.CaseMap.dashToCamelCase(attribute);info=info||this._propertyInfo&&this._propertyInfo[property];if(info&&!info.readOnly){var v=this.getAttribute(attribute);model[property]=
 this.deserialize(v,info.type)}}},_serializing:false,reflectPropertyToAttribute:function(property,attribute,value){this._serializing=true;value=value===undefined?this[property]:value;this.serializeValueToAttribute(value,attribute||Polymer.CaseMap.camelToDashCase(property));this._serializing=false},serializeValueToAttribute:function(value,attribute,node){var str=this.serialize(value);node=node||this;if(str===undefined)node.removeAttribute(attribute);else node.setAttribute(attribute,str)},deserialize:function(value,
 type){switch(type){case Number:value=Number(value);break;case Boolean:value=value!=null;break;case Object:try{value=JSON.parse(value)}catch(x){}break;case Array:try{value=JSON.parse(value)}catch(x$0){value=null;console.warn("Polymer::Attributes: couldn`t decode Array as JSON")}break;case Date:value=new Date(value);break;case String:default:break}return value},serialize:function(value){switch(typeof value){case "boolean":return value?"":undefined;case "object":if(value instanceof Date)return value.toString();
-else if(value)try{return JSON.stringify(value)}catch(x){return""}default:return value!=null?value:undefined}}});Polymer.version="1.9.2";Polymer.Base._addFeature({_registerFeatures:function(){this._prepIs();this._prepBehaviors();this._prepConstructor();this._prepPropertyInfo()},_prepBehavior:function(b){this._addHostAttributes(b.hostAttributes)},_marshalBehavior:function(b){},_initFeatures:function(){this._marshalHostAttributes();this._marshalBehaviors()}});</script><script>(function(){function resolveCss(cssText,ownerDocument){return cssText.replace(CSS_URL_RX,function(m,pre,url,post){return pre+"'"+resolve(url.replace(/["']/g,""),ownerDocument)+"'"+post})}function resolveAttrs(element,ownerDocument){for(var name in URL_ATTRS){var a$=URL_ATTRS[name];for(var i=0,l=a$.length,a,at,v;i<l&&(a=a$[i]);i++)if(name==="*"||element.localName===name){at=element.attributes[a];v=at&&at.value;if(v&&v.search(BINDING_RX)<0)at.value=a==="style"?resolveCss(v,ownerDocument):resolve(v,
+else if(value)try{return JSON.stringify(value)}catch(x){return""}default:return value!=null?value:undefined}}});Polymer.version="1.11.0";Polymer.Base._addFeature({_registerFeatures:function(){this._prepIs();this._prepBehaviors();this._prepConstructor();this._prepPropertyInfo()},_prepBehavior:function(b){this._addHostAttributes(b.hostAttributes)},_marshalBehavior:function(b){},_initFeatures:function(){this._marshalHostAttributes();this._marshalBehaviors()}});</script><script>(function(){function resolveCss(cssText,ownerDocument){return cssText.replace(CSS_URL_RX,function(m,pre,url,post){return pre+"'"+resolve(url.replace(/["']/g,""),ownerDocument)+"'"+post})}function resolveAttrs(element,ownerDocument){for(var name in URL_ATTRS){var a$=URL_ATTRS[name];for(var i=0,l=a$.length,a,at,v;i<l&&(a=a$[i]);i++)if(name==="*"||element.localName===name){at=element.attributes[a];v=at&&at.value;if(v&&v.search(BINDING_RX)<0)at.value=a==="style"?resolveCss(v,ownerDocument):resolve(v,
 ownerDocument)}}}function resolve(url,ownerDocument){if(url&&ABS_URL.test(url))return url;var resolver=getUrlResolver(ownerDocument);resolver.href=url;return resolver.href||url}var tempDoc;var tempDocBase;function resolveUrl(url,baseUri){if(!tempDoc){tempDoc=document.implementation.createHTMLDocument("temp");tempDocBase=tempDoc.createElement("base");tempDoc.head.appendChild(tempDocBase)}tempDocBase.href=baseUri;return resolve(url,tempDoc)}function getUrlResolver(ownerDocument){return ownerDocument.body.__urlResolver||
 (ownerDocument.body.__urlResolver=ownerDocument.createElement("a"))}function pathFromUrl(url){return url.substring(0,url.lastIndexOf("/")+1)}var CSS_URL_RX=/(url\()([^)]*)(\))/g;var URL_ATTRS={"*":["href","src","style","url"],form:["action"]};var ABS_URL=/(^\/)|(^#)|(^[\w-\d]*:)/;var BINDING_RX=/\{\{|\[\[/;Polymer.ResolveUrl={resolveCss:resolveCss,resolveAttrs:resolveAttrs,resolveUrl:resolveUrl,pathFromUrl:pathFromUrl};Polymer.rootPath=Polymer.Settings.rootPath||pathFromUrl(document.baseURI||window.location.href)})();
 Polymer.Base._addFeature({_prepTemplate:function(){var module;if(this._template===undefined){module=Polymer.DomModule.import(this.is);this._template=module&&module.querySelector("template")}if(module){var assetPath=module.getAttribute("assetpath")||"";var importURL=Polymer.ResolveUrl.resolveUrl(assetPath,module.ownerDocument.baseURI);this._importPath=Polymer.ResolveUrl.pathFromUrl(importURL)}else this._importPath="";if(this._template&&this._template.hasAttribute("is"))this._warn(this._logf("_prepTemplate",
@@ -176,28 +176,29 @@ this._listen(node,eventName,handler);handler._listening=true},_boundListenerKey:
 target,methodName){var hbl=host.__boundListeners;if(!hbl)return;var bl=hbl.get(target);if(!bl)return;var key=this._boundListenerKey(eventName,methodName);return bl[key]},_createEventHandler:function(node,eventName,methodName){var host=this;var handler=function(e){if(host[methodName])host[methodName](e,e.detail);else host._warn(host._logf("_createEventHandler","listener method `"+methodName+"` not defined"))};handler._listening=false;this._recordEventHandler(host,eventName,node,methodName,handler);
 return handler},unlisten:function(node,eventName,methodName){var handler=this._recallEventHandler(this,eventName,node,methodName);if(handler){this._unlisten(node,eventName,handler);handler._listening=false}},_listen:function(node,eventName,handler){node.addEventListener(eventName,handler)},_unlisten:function(node,eventName,handler){node.removeEventListener(eventName,handler)}});
 (function(){var wrap=Polymer.DomApi.wrap;var HAS_NATIVE_TA=typeof document.head.style.touchAction==="string";var GESTURE_KEY="__polymerGestures";var HANDLED_OBJ="__polymerGesturesHandled";var TOUCH_ACTION="__polymerGesturesTouchAction";var TAP_DISTANCE=25;var TRACK_DISTANCE=5;var TRACK_LENGTH=2;var MOUSE_TIMEOUT=2500;var MOUSE_EVENTS=["mousedown","mousemove","mouseup","click"];var MOUSE_WHICH_TO_BUTTONS=[0,1,4,2];var MOUSE_HAS_BUTTONS=function(){try{return(new MouseEvent("test",{buttons:1})).buttons===
-1}catch(e){return false}}();var SUPPORTS_PASSIVE=false;(function(){try{var opts=Object.defineProperty({},"passive",{get:function(){SUPPORTS_PASSIVE=true}});window.addEventListener("test",null,opts);window.removeEventListener("test",null,opts)}catch(e){}})();var IS_TOUCH_ONLY=navigator.userAgent.match(/iP(?:[oa]d|hone)|Android/);var mouseCanceller=function(mouseEvent){var sc=mouseEvent.sourceCapabilities;if(sc&&!sc.firesTouchEvents)return;mouseEvent[HANDLED_OBJ]={skip:true};if(mouseEvent.type==="click"){var path=
-Polymer.dom(mouseEvent).path;for(var i=0;i<path.length;i++)if(path[i]===POINTERSTATE.mouse.target)return;mouseEvent.preventDefault();mouseEvent.stopPropagation()}};function setupTeardownMouseCanceller(setup){var events=IS_TOUCH_ONLY?["click"]:MOUSE_EVENTS;for(var i=0,en;i<events.length;i++){en=events[i];if(setup)document.addEventListener(en,mouseCanceller,true);else document.removeEventListener(en,mouseCanceller,true)}}function ignoreMouse(ev){if(!POINTERSTATE.mouse.mouseIgnoreJob)setupTeardownMouseCanceller(true);
-var unset=function(){setupTeardownMouseCanceller();POINTERSTATE.mouse.target=null;POINTERSTATE.mouse.mouseIgnoreJob=null};POINTERSTATE.mouse.target=Polymer.dom(ev).rootTarget;POINTERSTATE.mouse.mouseIgnoreJob=Polymer.Debounce(POINTERSTATE.mouse.mouseIgnoreJob,unset,MOUSE_TIMEOUT)}function hasLeftMouseButton(ev){var type=ev.type;if(MOUSE_EVENTS.indexOf(type)===-1)return false;if(type==="mousemove"){var buttons=ev.buttons===undefined?1:ev.buttons;if(ev instanceof window.MouseEvent&&!MOUSE_HAS_BUTTONS)buttons=
-MOUSE_WHICH_TO_BUTTONS[ev.which]||0;return Boolean(buttons&1)}else{var button=ev.button===undefined?0:ev.button;return button===0}}function isSyntheticClick(ev){if(ev.type==="click"){if(ev.detail===0)return true;var t=Gestures.findOriginalTarget(ev);var bcr=t.getBoundingClientRect();var x=ev.pageX,y=ev.pageY;return!(x>=bcr.left&&x<=bcr.right&&(y>=bcr.top&&y<=bcr.bottom))}return false}var POINTERSTATE={mouse:{target:null,mouseIgnoreJob:null},touch:{x:0,y:0,id:-1,scrollDecided:false}};function firstTouchAction(ev){var path=
-Polymer.dom(ev).path;var ta="auto";for(var i=0,n;i<path.length;i++){n=path[i];if(n[TOUCH_ACTION]){ta=n[TOUCH_ACTION];break}}return ta}function trackDocument(stateObj,movefn,upfn){stateObj.movefn=movefn;stateObj.upfn=upfn;document.addEventListener("mousemove",movefn);document.addEventListener("mouseup",upfn)}function untrackDocument(stateObj){document.removeEventListener("mousemove",stateObj.movefn);document.removeEventListener("mouseup",stateObj.upfn);stateObj.movefn=null;stateObj.upfn=null}document.addEventListener("touchend",
-ignoreMouse,SUPPORTS_PASSIVE?{passive:true}:false);var Gestures={gestures:{},recognizers:[],deepTargetFind:function(x,y){var node=document.elementFromPoint(x,y);var next=node;while(next&&next.shadowRoot){next=next.shadowRoot.elementFromPoint(x,y);if(next)node=next}return node},findOriginalTarget:function(ev){if(ev.path)return ev.path[0];return ev.target},handleNative:function(ev){var handled;var type=ev.type;var node=wrap(ev.currentTarget);var gobj=node[GESTURE_KEY];if(!gobj)return;var gs=gobj[type];
-if(!gs)return;if(!ev[HANDLED_OBJ]){ev[HANDLED_OBJ]={};if(type.slice(0,5)==="touch"){var t=ev.changedTouches[0];if(type==="touchstart")if(ev.touches.length===1)POINTERSTATE.touch.id=t.identifier;if(POINTERSTATE.touch.id!==t.identifier)return;if(!HAS_NATIVE_TA)if(type==="touchstart"||type==="touchmove")Gestures.handleTouchAction(ev)}}handled=ev[HANDLED_OBJ];if(handled.skip)return;var recognizers=Gestures.recognizers;for(var i=0,r;i<recognizers.length;i++){r=recognizers[i];if(gs[r.name]&&!handled[r.name])if(r.flow&&
-r.flow.start.indexOf(ev.type)>-1&&r.reset)r.reset()}for(i=0,r;i<recognizers.length;i++){r=recognizers[i];if(gs[r.name]&&!handled[r.name]){handled[r.name]=true;r[type](ev)}}},handleTouchAction:function(ev){var t=ev.changedTouches[0];var type=ev.type;if(type==="touchstart"){POINTERSTATE.touch.x=t.clientX;POINTERSTATE.touch.y=t.clientY;POINTERSTATE.touch.scrollDecided=false}else if(type==="touchmove"){if(POINTERSTATE.touch.scrollDecided)return;POINTERSTATE.touch.scrollDecided=true;var ta=firstTouchAction(ev);
-var prevent=false;var dx=Math.abs(POINTERSTATE.touch.x-t.clientX);var dy=Math.abs(POINTERSTATE.touch.y-t.clientY);if(!ev.cancelable);else if(ta==="none")prevent=true;else if(ta==="pan-x")prevent=dy>dx;else if(ta==="pan-y")prevent=dx>dy;if(prevent)ev.preventDefault();else Gestures.prevent("track")}},add:function(node,evType,handler){node=wrap(node);var recognizer=this.gestures[evType];var deps=recognizer.deps;var name=recognizer.name;var gobj=node[GESTURE_KEY];if(!gobj)node[GESTURE_KEY]=gobj={};for(var i=
-0,dep,gd;i<deps.length;i++){dep=deps[i];if(IS_TOUCH_ONLY&&MOUSE_EVENTS.indexOf(dep)>-1&&dep!=="click")continue;gd=gobj[dep];if(!gd)gobj[dep]=gd={_count:0};if(gd._count===0)node.addEventListener(dep,this.handleNative);gd[name]=(gd[name]||0)+1;gd._count=(gd._count||0)+1}node.addEventListener(evType,handler);if(recognizer.touchAction)this.setTouchAction(node,recognizer.touchAction)},remove:function(node,evType,handler){node=wrap(node);var recognizer=this.gestures[evType];var deps=recognizer.deps;var name=
-recognizer.name;var gobj=node[GESTURE_KEY];if(gobj)for(var i=0,dep,gd;i<deps.length;i++){dep=deps[i];gd=gobj[dep];if(gd&&gd[name]){gd[name]=(gd[name]||1)-1;gd._count=(gd._count||1)-1;if(gd._count===0)node.removeEventListener(dep,this.handleNative)}}node.removeEventListener(evType,handler)},register:function(recog){this.recognizers.push(recog);for(var i=0;i<recog.emits.length;i++)this.gestures[recog.emits[i]]=recog},findRecognizerByEvent:function(evName){for(var i=0,r;i<this.recognizers.length;i++){r=
-this.recognizers[i];for(var j=0,n;j<r.emits.length;j++){n=r.emits[j];if(n===evName)return r}}return null},setTouchAction:function(node,value){if(HAS_NATIVE_TA)node.style.touchAction=value;node[TOUCH_ACTION]=value},fire:function(target,type,detail){var ev=Polymer.Base.fire(type,detail,{node:target,bubbles:true,cancelable:true});if(ev.defaultPrevented){var preventer=detail.preventer||detail.sourceEvent;if(preventer&&preventer.preventDefault)preventer.preventDefault()}},prevent:function(evName){var recognizer=
-this.findRecognizerByEvent(evName);if(recognizer.info)recognizer.info.prevent=true},resetMouseCanceller:function(){if(POINTERSTATE.mouse.mouseIgnoreJob)POINTERSTATE.mouse.mouseIgnoreJob.complete()}};Gestures.register({name:"downup",deps:["mousedown","touchstart","touchend"],flow:{start:["mousedown","touchstart"],end:["mouseup","touchend"]},emits:["down","up"],info:{movefn:null,upfn:null},reset:function(){untrackDocument(this.info)},mousedown:function(e){if(!hasLeftMouseButton(e))return;var t=Gestures.findOriginalTarget(e);
-var self=this;var movefn=function movefn(e){if(!hasLeftMouseButton(e)){self.fire("up",t,e);untrackDocument(self.info)}};var upfn=function upfn(e){if(hasLeftMouseButton(e))self.fire("up",t,e);untrackDocument(self.info)};trackDocument(this.info,movefn,upfn);this.fire("down",t,e)},touchstart:function(e){this.fire("down",Gestures.findOriginalTarget(e),e.changedTouches[0],e)},touchend:function(e){this.fire("up",Gestures.findOriginalTarget(e),e.changedTouches[0],e)},fire:function(type,target,event,preventer){Gestures.fire(target,
-type,{x:event.clientX,y:event.clientY,sourceEvent:event,preventer:preventer,prevent:function(e){return Gestures.prevent(e)}})}});Gestures.register({name:"track",touchAction:"none",deps:["mousedown","touchstart","touchmove","touchend"],flow:{start:["mousedown","touchstart"],end:["mouseup","touchend"]},emits:["track"],info:{x:0,y:0,state:"start",started:false,moves:[],addMove:function(move){if(this.moves.length>TRACK_LENGTH)this.moves.shift();this.moves.push(move)},movefn:null,upfn:null,prevent:false},
-reset:function(){this.info.state="start";this.info.started=false;this.info.moves=[];this.info.x=0;this.info.y=0;this.info.prevent=false;untrackDocument(this.info)},hasMovedEnough:function(x,y){if(this.info.prevent)return false;if(this.info.started)return true;var dx=Math.abs(this.info.x-x);var dy=Math.abs(this.info.y-y);return dx>=TRACK_DISTANCE||dy>=TRACK_DISTANCE},mousedown:function(e){if(!hasLeftMouseButton(e))return;var t=Gestures.findOriginalTarget(e);var self=this;var movefn=function movefn(e){var x=
-e.clientX,y=e.clientY;if(self.hasMovedEnough(x,y)){self.info.state=self.info.started?e.type==="mouseup"?"end":"track":"start";if(self.info.state==="start")Gestures.prevent("tap");self.info.addMove({x:x,y:y});if(!hasLeftMouseButton(e)){self.info.state="end";untrackDocument(self.info)}self.fire(t,e);self.info.started=true}};var upfn=function upfn(e){if(self.info.started)movefn(e);untrackDocument(self.info)};trackDocument(this.info,movefn,upfn);this.info.x=e.clientX;this.info.y=e.clientY},touchstart:function(e){var ct=
-e.changedTouches[0];this.info.x=ct.clientX;this.info.y=ct.clientY},touchmove:function(e){var t=Gestures.findOriginalTarget(e);var ct=e.changedTouches[0];var x=ct.clientX,y=ct.clientY;if(this.hasMovedEnough(x,y)){if(this.info.state==="start")Gestures.prevent("tap");this.info.addMove({x:x,y:y});this.fire(t,ct);this.info.state="track";this.info.started=true}},touchend:function(e){var t=Gestures.findOriginalTarget(e);var ct=e.changedTouches[0];if(this.info.started){this.info.state="end";this.info.addMove({x:ct.clientX,
-y:ct.clientY});this.fire(t,ct,e)}},fire:function(target,touch,preventer){var secondlast=this.info.moves[this.info.moves.length-2];var lastmove=this.info.moves[this.info.moves.length-1];var dx=lastmove.x-this.info.x;var dy=lastmove.y-this.info.y;var ddx,ddy=0;if(secondlast){ddx=lastmove.x-secondlast.x;ddy=lastmove.y-secondlast.y}return Gestures.fire(target,"track",{state:this.info.state,x:touch.clientX,y:touch.clientY,dx:dx,dy:dy,ddx:ddx,ddy:ddy,sourceEvent:touch,preventer:preventer,hover:function(){return Gestures.deepTargetFind(touch.clientX,
-touch.clientY)}})}});Gestures.register({name:"tap",deps:["mousedown","click","touchstart","touchend"],flow:{start:["mousedown","touchstart"],end:["click","touchend"]},emits:["tap"],info:{x:NaN,y:NaN,prevent:false},reset:function(){this.info.x=NaN;this.info.y=NaN;this.info.prevent=false},save:function(e){this.info.x=e.clientX;this.info.y=e.clientY},mousedown:function(e){if(hasLeftMouseButton(e))this.save(e)},click:function(e){if(hasLeftMouseButton(e))this.forward(e)},touchstart:function(e){this.save(e.changedTouches[0],
-e)},touchend:function(e){this.forward(e.changedTouches[0],e)},forward:function(e,preventer){var dx=Math.abs(e.clientX-this.info.x);var dy=Math.abs(e.clientY-this.info.y);var t=Gestures.findOriginalTarget(e);if(isNaN(dx)||isNaN(dy)||dx<=TAP_DISTANCE&&dy<=TAP_DISTANCE||isSyntheticClick(e))if(!this.info.prevent)Gestures.fire(t,"tap",{x:e.clientX,y:e.clientY,sourceEvent:e,preventer:preventer})}});var DIRECTION_MAP={x:"pan-x",y:"pan-y",none:"none",all:"auto"};Polymer.Base._addFeature({_setupGestures:function(){this.__polymerGestures=
-null},_listen:function(node,eventName,handler){if(Gestures.gestures[eventName])Gestures.add(node,eventName,handler);else node.addEventListener(eventName,handler)},_unlisten:function(node,eventName,handler){if(Gestures.gestures[eventName])Gestures.remove(node,eventName,handler);else node.removeEventListener(eventName,handler)},setScrollDirection:function(direction,node){node=node||this;Gestures.setTouchAction(node,DIRECTION_MAP[direction]||"auto")}});Polymer.Gestures=Gestures})();
+1}catch(e){return false}}();function isMouseEvent(name){return MOUSE_EVENTS.indexOf(name)>-1}var SUPPORTS_PASSIVE=false;(function(){try{var opts=Object.defineProperty({},"passive",{get:function(){SUPPORTS_PASSIVE=true}});window.addEventListener("test",null,opts);window.removeEventListener("test",null,opts)}catch(e){}})();function PASSIVE_TOUCH(){if(HAS_NATIVE_TA&&SUPPORTS_PASSIVE&&Polymer.Settings.passiveTouchGestures)return{passive:true}}var IS_TOUCH_ONLY=navigator.userAgent.match(/iP(?:[oa]d|hone)|Android/);
+var mouseCanceller=function(mouseEvent){var sc=mouseEvent.sourceCapabilities;if(sc&&!sc.firesTouchEvents)return;mouseEvent[HANDLED_OBJ]={skip:true};if(mouseEvent.type==="click"){var path=Polymer.dom(mouseEvent).path;for(var i=0;i<path.length;i++)if(path[i]===POINTERSTATE.mouse.target)return;mouseEvent.preventDefault();mouseEvent.stopPropagation()}};function setupTeardownMouseCanceller(setup){var events=IS_TOUCH_ONLY?["click"]:MOUSE_EVENTS;for(var i=0,en;i<events.length;i++){en=events[i];if(setup)document.addEventListener(en,
+mouseCanceller,true);else document.removeEventListener(en,mouseCanceller,true)}}function ignoreMouse(ev){if(!POINTERSTATE.mouse.mouseIgnoreJob)setupTeardownMouseCanceller(true);var unset=function(){setupTeardownMouseCanceller();POINTERSTATE.mouse.target=null;POINTERSTATE.mouse.mouseIgnoreJob=null};POINTERSTATE.mouse.target=Polymer.dom(ev).rootTarget;POINTERSTATE.mouse.mouseIgnoreJob=Polymer.Debounce(POINTERSTATE.mouse.mouseIgnoreJob,unset,MOUSE_TIMEOUT)}function hasLeftMouseButton(ev){var type=ev.type;
+if(!isMouseEvent(type))return false;if(type==="mousemove"){var buttons=ev.buttons===undefined?1:ev.buttons;if(ev instanceof window.MouseEvent&&!MOUSE_HAS_BUTTONS)buttons=MOUSE_WHICH_TO_BUTTONS[ev.which]||0;return Boolean(buttons&1)}else{var button=ev.button===undefined?0:ev.button;return button===0}}function isSyntheticClick(ev){if(ev.type==="click"){if(ev.detail===0)return true;var t=Gestures.findOriginalTarget(ev);var bcr=t.getBoundingClientRect();var x=ev.pageX,y=ev.pageY;return!(x>=bcr.left&&
+x<=bcr.right&&(y>=bcr.top&&y<=bcr.bottom))}return false}var POINTERSTATE={mouse:{target:null,mouseIgnoreJob:null},touch:{x:0,y:0,id:-1,scrollDecided:false}};function firstTouchAction(ev){var path=Polymer.dom(ev).path;var ta="auto";for(var i=0,n;i<path.length;i++){n=path[i];if(n[TOUCH_ACTION]){ta=n[TOUCH_ACTION];break}}return ta}function trackDocument(stateObj,movefn,upfn){stateObj.movefn=movefn;stateObj.upfn=upfn;document.addEventListener("mousemove",movefn);document.addEventListener("mouseup",upfn)}
+function untrackDocument(stateObj){document.removeEventListener("mousemove",stateObj.movefn);document.removeEventListener("mouseup",stateObj.upfn);stateObj.movefn=null;stateObj.upfn=null}document.addEventListener("touchend",ignoreMouse,SUPPORTS_PASSIVE?{passive:true}:false);var Gestures={gestures:{},recognizers:[],deepTargetFind:function(x,y){var node=document.elementFromPoint(x,y);var next=node;while(next&&next.shadowRoot){next=next.shadowRoot.elementFromPoint(x,y);if(next)node=next}return node},
+findOriginalTarget:function(ev){if(ev.path)return ev.path[0];return ev.target},handleNative:function(ev){var handled;var type=ev.type;var node=wrap(ev.currentTarget);var gobj=node[GESTURE_KEY];if(!gobj)return;var gs=gobj[type];if(!gs)return;if(!ev[HANDLED_OBJ]){ev[HANDLED_OBJ]={};if(type.slice(0,5)==="touch"){var t=ev.changedTouches[0];if(type==="touchstart")if(ev.touches.length===1)POINTERSTATE.touch.id=t.identifier;if(POINTERSTATE.touch.id!==t.identifier)return;if(!HAS_NATIVE_TA)if(type==="touchstart"||
+type==="touchmove")Gestures.handleTouchAction(ev)}}handled=ev[HANDLED_OBJ];if(handled.skip)return;var recognizers=Gestures.recognizers;for(var i=0,r;i<recognizers.length;i++){r=recognizers[i];if(gs[r.name]&&!handled[r.name])if(r.flow&&r.flow.start.indexOf(ev.type)>-1&&r.reset)r.reset()}for(i=0,r;i<recognizers.length;i++){r=recognizers[i];if(gs[r.name]&&!handled[r.name]){handled[r.name]=true;r[type](ev)}}},handleTouchAction:function(ev){var t=ev.changedTouches[0];var type=ev.type;if(type==="touchstart"){POINTERSTATE.touch.x=
+t.clientX;POINTERSTATE.touch.y=t.clientY;POINTERSTATE.touch.scrollDecided=false}else if(type==="touchmove"){if(POINTERSTATE.touch.scrollDecided)return;POINTERSTATE.touch.scrollDecided=true;var ta=firstTouchAction(ev);var prevent=false;var dx=Math.abs(POINTERSTATE.touch.x-t.clientX);var dy=Math.abs(POINTERSTATE.touch.y-t.clientY);if(!ev.cancelable);else if(ta==="none")prevent=true;else if(ta==="pan-x")prevent=dy>dx;else if(ta==="pan-y")prevent=dx>dy;if(prevent)ev.preventDefault();else Gestures.prevent("track")}},
+add:function(node,evType,handler){node=wrap(node);var recognizer=this.gestures[evType];var deps=recognizer.deps;var name=recognizer.name;var gobj=node[GESTURE_KEY];if(!gobj)node[GESTURE_KEY]=gobj={};for(var i=0,dep,gd;i<deps.length;i++){dep=deps[i];if(IS_TOUCH_ONLY&&isMouseEvent(dep)&&dep!=="click")continue;gd=gobj[dep];if(!gd)gobj[dep]=gd={_count:0};if(gd._count===0){var options=!isMouseEvent(dep)&&PASSIVE_TOUCH();node.addEventListener(dep,this.handleNative,options)}gd[name]=(gd[name]||0)+1;gd._count=
+(gd._count||0)+1}node.addEventListener(evType,handler);if(recognizer.touchAction)this.setTouchAction(node,recognizer.touchAction)},remove:function(node,evType,handler){node=wrap(node);var recognizer=this.gestures[evType];var deps=recognizer.deps;var name=recognizer.name;var gobj=node[GESTURE_KEY];if(gobj)for(var i=0,dep,gd;i<deps.length;i++){dep=deps[i];gd=gobj[dep];if(gd&&gd[name]){gd[name]=(gd[name]||1)-1;gd._count=(gd._count||1)-1;if(gd._count===0){var options=!isMouseEvent(dep)&&PASSIVE_TOUCH();
+node.removeEventListener(dep,this.handleNative,options)}}}node.removeEventListener(evType,handler)},register:function(recog){this.recognizers.push(recog);for(var i=0;i<recog.emits.length;i++)this.gestures[recog.emits[i]]=recog},findRecognizerByEvent:function(evName){for(var i=0,r;i<this.recognizers.length;i++){r=this.recognizers[i];for(var j=0,n;j<r.emits.length;j++){n=r.emits[j];if(n===evName)return r}}return null},setTouchAction:function(node,value){if(HAS_NATIVE_TA)node.style.touchAction=value;
+node[TOUCH_ACTION]=value},fire:function(target,type,detail){var ev=Polymer.Base.fire(type,detail,{node:target,bubbles:true,cancelable:true});if(ev.defaultPrevented){var preventer=detail.preventer||detail.sourceEvent;if(preventer&&preventer.preventDefault)preventer.preventDefault()}},prevent:function(evName){var recognizer=this.findRecognizerByEvent(evName);if(recognizer.info)recognizer.info.prevent=true},resetMouseCanceller:function(){if(POINTERSTATE.mouse.mouseIgnoreJob)POINTERSTATE.mouse.mouseIgnoreJob.complete()}};
+Gestures.register({name:"downup",deps:["mousedown","touchstart","touchend"],flow:{start:["mousedown","touchstart"],end:["mouseup","touchend"]},emits:["down","up"],info:{movefn:null,upfn:null},reset:function(){untrackDocument(this.info)},mousedown:function(e){if(!hasLeftMouseButton(e))return;var t=Gestures.findOriginalTarget(e);var self=this;var movefn=function movefn(e){if(!hasLeftMouseButton(e)){self.fire("up",t,e);untrackDocument(self.info)}};var upfn=function upfn(e){if(hasLeftMouseButton(e))self.fire("up",
+t,e);untrackDocument(self.info)};trackDocument(this.info,movefn,upfn);this.fire("down",t,e)},touchstart:function(e){this.fire("down",Gestures.findOriginalTarget(e),e.changedTouches[0],e)},touchend:function(e){this.fire("up",Gestures.findOriginalTarget(e),e.changedTouches[0],e)},fire:function(type,target,event,preventer){Gestures.fire(target,type,{x:event.clientX,y:event.clientY,sourceEvent:event,preventer:preventer,prevent:function(e){return Gestures.prevent(e)}})}});Gestures.register({name:"track",
+touchAction:"none",deps:["mousedown","touchstart","touchmove","touchend"],flow:{start:["mousedown","touchstart"],end:["mouseup","touchend"]},emits:["track"],info:{x:0,y:0,state:"start",started:false,moves:[],addMove:function(move){if(this.moves.length>TRACK_LENGTH)this.moves.shift();this.moves.push(move)},movefn:null,upfn:null,prevent:false},reset:function(){this.info.state="start";this.info.started=false;this.info.moves=[];this.info.x=0;this.info.y=0;this.info.prevent=false;untrackDocument(this.info)},
+hasMovedEnough:function(x,y){if(this.info.prevent)return false;if(this.info.started)return true;var dx=Math.abs(this.info.x-x);var dy=Math.abs(this.info.y-y);return dx>=TRACK_DISTANCE||dy>=TRACK_DISTANCE},mousedown:function(e){if(!hasLeftMouseButton(e))return;var t=Gestures.findOriginalTarget(e);var self=this;var movefn=function movefn(e){var x=e.clientX,y=e.clientY;if(self.hasMovedEnough(x,y)){self.info.state=self.info.started?e.type==="mouseup"?"end":"track":"start";if(self.info.state==="start")Gestures.prevent("tap");
+self.info.addMove({x:x,y:y});if(!hasLeftMouseButton(e)){self.info.state="end";untrackDocument(self.info)}self.fire(t,e);self.info.started=true}};var upfn=function upfn(e){if(self.info.started)movefn(e);untrackDocument(self.info)};trackDocument(this.info,movefn,upfn);this.info.x=e.clientX;this.info.y=e.clientY},touchstart:function(e){var ct=e.changedTouches[0];this.info.x=ct.clientX;this.info.y=ct.clientY},touchmove:function(e){var t=Gestures.findOriginalTarget(e);var ct=e.changedTouches[0];var x=
+ct.clientX,y=ct.clientY;if(this.hasMovedEnough(x,y)){if(this.info.state==="start")Gestures.prevent("tap");this.info.addMove({x:x,y:y});this.fire(t,ct);this.info.state="track";this.info.started=true}},touchend:function(e){var t=Gestures.findOriginalTarget(e);var ct=e.changedTouches[0];if(this.info.started){this.info.state="end";this.info.addMove({x:ct.clientX,y:ct.clientY});this.fire(t,ct,e)}},fire:function(target,touch,preventer){var secondlast=this.info.moves[this.info.moves.length-2];var lastmove=
+this.info.moves[this.info.moves.length-1];var dx=lastmove.x-this.info.x;var dy=lastmove.y-this.info.y;var ddx,ddy=0;if(secondlast){ddx=lastmove.x-secondlast.x;ddy=lastmove.y-secondlast.y}return Gestures.fire(target,"track",{state:this.info.state,x:touch.clientX,y:touch.clientY,dx:dx,dy:dy,ddx:ddx,ddy:ddy,sourceEvent:touch,preventer:preventer,hover:function(){return Gestures.deepTargetFind(touch.clientX,touch.clientY)}})}});Gestures.register({name:"tap",deps:["mousedown","click","touchstart","touchend"],
+flow:{start:["mousedown","touchstart"],end:["click","touchend"]},emits:["tap"],info:{x:NaN,y:NaN,prevent:false},reset:function(){this.info.x=NaN;this.info.y=NaN;this.info.prevent=false},save:function(e){this.info.x=e.clientX;this.info.y=e.clientY},mousedown:function(e){if(hasLeftMouseButton(e))this.save(e)},click:function(e){if(hasLeftMouseButton(e))this.forward(e)},touchstart:function(e){this.save(e.changedTouches[0],e)},touchend:function(e){this.forward(e.changedTouches[0],e)},forward:function(e,
+preventer){var dx=Math.abs(e.clientX-this.info.x);var dy=Math.abs(e.clientY-this.info.y);var t=Gestures.findOriginalTarget(e);if(isNaN(dx)||isNaN(dy)||dx<=TAP_DISTANCE&&dy<=TAP_DISTANCE||isSyntheticClick(e))if(!this.info.prevent)Gestures.fire(t,"tap",{x:e.clientX,y:e.clientY,sourceEvent:e,preventer:preventer})}});var DIRECTION_MAP={x:"pan-x",y:"pan-y",none:"none",all:"auto"};Polymer.Base._addFeature({_setupGestures:function(){this.__polymerGestures=null},_listen:function(node,eventName,handler){if(Gestures.gestures[eventName])Gestures.add(node,
+eventName,handler);else node.addEventListener(eventName,handler)},_unlisten:function(node,eventName,handler){if(Gestures.gestures[eventName])Gestures.remove(node,eventName,handler);else node.removeEventListener(eventName,handler)},setScrollDirection:function(direction,node){node=node||this;Gestures.setTouchAction(node,DIRECTION_MAP[direction]||"auto")}});Polymer.Gestures=Gestures})();
 (function(){Polymer.Base._addFeature({$$:function(slctr){return Polymer.dom(this.root).querySelector(slctr)},toggleClass:function(name,bool,node){node=node||this;if(arguments.length==1)bool=!node.classList.contains(name);if(bool)Polymer.dom(node).classList.add(name);else Polymer.dom(node).classList.remove(name)},toggleAttribute:function(name,bool,node){node=node||this;if(arguments.length==1)bool=!node.hasAttribute(name);if(bool)Polymer.dom(node).setAttribute(name,"");else Polymer.dom(node).removeAttribute(name)},
 classFollows:function(name,toElement,fromElement){if(fromElement)Polymer.dom(fromElement).classList.remove(name);if(toElement)Polymer.dom(toElement).classList.add(name)},attributeFollows:function(name,toElement,fromElement){if(fromElement)Polymer.dom(fromElement).removeAttribute(name);if(toElement)Polymer.dom(toElement).setAttribute(name,"")},getEffectiveChildNodes:function(){return Polymer.dom(this).getEffectiveChildNodes()},getEffectiveChildren:function(){var list=Polymer.dom(this).getEffectiveChildNodes();
 return list.filter(function(n){return n.nodeType===Node.ELEMENT_NODE})},getEffectiveTextContent:function(){var cn=this.getEffectiveChildNodes();var tc=[];for(var i=0,c;c=cn[i];i++)if(c.nodeType!==Node.COMMENT_NODE)tc.push(Polymer.dom(c).textContent);return tc.join("")},queryEffectiveChildren:function(slctr){var e$=Polymer.dom(this).queryDistributedElements(slctr);return e$&&e$[0]},queryAllEffectiveChildren:function(slctr){return Polymer.dom(this).queryDistributedElements(slctr)},getContentChildNodes:function(slctr){var content=
@@ -259,7 +260,7 @@ i+1;n=n.parent||root;break}return root},_parseCss:function(node,text){var t=text
 0)node.type=this.types.MEDIA_RULE;else{if(s.match(this._rx.keyframesRule)){node.type=this.types.KEYFRAMES_RULE;node.keyframesName=node.selector.split(this._rx.multipleSpaces).pop()}}else if(s.indexOf(this.VAR_START)===0)node.type=this.types.MIXIN_RULE;else node.type=this.types.STYLE_RULE}var r$=node.rules;if(r$)for(var i=0,l=r$.length,r;i<l&&(r=r$[i]);i++)this._parseCss(r,text);return node},_expandUnicodeEscapes:function(s){return s.replace(/\\([0-9a-f]{1,6})\s/gi,function(){var code=arguments[1],
 repeat=6-code.length;while(repeat--)code="0"+code;return"\\"+code})},stringify:function(node,preserveProperties,text){text=text||"";var cssText="";if(node.cssText||node.rules){var r$=node.rules;if(r$&&!this._hasMixinRules(r$))for(var i=0,l=r$.length,r;i<l&&(r=r$[i]);i++)cssText=this.stringify(r,preserveProperties,cssText);else{cssText=preserveProperties?node.cssText:this.removeCustomProps(node.cssText);cssText=cssText.trim();if(cssText)cssText="  "+cssText+"\n"}}if(cssText){if(node.selector)text+=
 node.selector+" "+this.OPEN_BRACE+"\n";text+=cssText;if(node.selector)text+=this.CLOSE_BRACE+"\n\n"}return text},_hasMixinRules:function(rules){return rules[0].selector.indexOf(this.VAR_START)===0},removeCustomProps:function(cssText){cssText=this.removeCustomPropAssignment(cssText);return this.removeCustomPropApply(cssText)},removeCustomPropAssignment:function(cssText){return cssText.replace(this._rx.customProp,"").replace(this._rx.mixinProp,"")},removeCustomPropApply:function(cssText){return cssText.replace(this._rx.mixinApply,
-"").replace(this._rx.varApply,"")},types:{STYLE_RULE:1,KEYFRAMES_RULE:7,MEDIA_RULE:4,MIXIN_RULE:1E3},OPEN_BRACE:"{",CLOSE_BRACE:"}",_rx:{comments:/\/\*[^*]*\*+([^\/*][^*]*\*+)*\//gim,port:/@import[^;]*;/gim,customProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,mixinProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?{[^}]*?}(?:[;\n]|$)?/gim,mixinApply:/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/gim,varApply:/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,keyframesRule:/^@[^\s]*keyframes/,multipleSpaces:/\s+/g},
+"").replace(this._rx.varApply,"")},types:{STYLE_RULE:1,KEYFRAMES_RULE:7,MEDIA_RULE:4,MIXIN_RULE:1E3},OPEN_BRACE:"{",CLOSE_BRACE:"}",_rx:{comments:/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,port:/@import[^;]*;/gim,customProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,mixinProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?{[^}]*?}(?:[;\n]|$)?/gim,mixinApply:/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/gim,varApply:/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,keyframesRule:/^@[^\s]*keyframes/,multipleSpaces:/\s+/g},
 VAR_START:"--",MEDIA_START:"@media",AT_START:"@"}}();
 Polymer.StyleUtil=function(){var settings=Polymer.Settings;return{NATIVE_VARIABLES:Polymer.Settings.useNativeCSSProperties,MODULE_STYLES_SELECTOR:"style, link[rel\x3dimport][type~\x3dcss], template",INCLUDE_ATTR:"include",toCssText:function(rules,callback){if(typeof rules==="string")rules=this.parser.parse(rules);if(callback)this.forEachRule(rules,callback);return this.parser.stringify(rules,this.NATIVE_VARIABLES)},forRulesInStyles:function(styles,styleRuleCallback,keyframesRuleCallback){if(styles)for(var i=
 0,l=styles.length,s;i<l&&(s=styles[i]);i++)this.forEachRuleInStyle(s,styleRuleCallback,keyframesRuleCallback)},forActiveRulesInStyles:function(styles,styleRuleCallback,keyframesRuleCallback){if(styles)for(var i=0,l=styles.length,s;i<l&&(s=styles[i]);i++)this.forEachRuleInStyle(s,styleRuleCallback,keyframesRuleCallback,true)},rulesForStyle:function(style){if(!style.__cssRules&&style.textContent)style.__cssRules=this.parser.parse(style.textContent);return style.__cssRules},isKeyframesSelector:function(rule){return rule.parent&&
@@ -276,16 +277,18 @@ this._findMatchingParen(str,start+3);var inner=str.substring(start+4,end);var pr
 VAR_CONSUMED:/(--[\w-]+)\s*([:,;)]|$)/gi,ANIMATION_MATCH:/(animation\s*:)|(animation-name\s*:)/,MEDIA_MATCH:/@media[^(]*(\([^)]*\))/,IS_VAR:/^--/,BRACKETED:/\{[^}]*\}/g,HOST_PREFIX:"(?:^|[^.#[:])",HOST_SUFFIX:"($|[.:[\\s\x3e+~])"},resolveCss:Polymer.ResolveUrl.resolveCss,parser:Polymer.CssParse,ruleTypes:Polymer.CssParse.types}}();
 Polymer.StyleTransformer=function(){var styleUtil=Polymer.StyleUtil;var settings=Polymer.Settings;var api={dom:function(node,scope,useAttr,shouldRemoveScope){this._transformDom(node,scope||"",useAttr,shouldRemoveScope)},_transformDom:function(node,selector,useAttr,shouldRemoveScope){if(node.setAttribute)this.element(node,selector,useAttr,shouldRemoveScope);var c$=Polymer.dom(node).childNodes;for(var i=0;i<c$.length;i++)this._transformDom(c$[i],selector,useAttr,shouldRemoveScope)},element:function(element,
 scope,useAttr,shouldRemoveScope){if(useAttr)if(shouldRemoveScope)element.removeAttribute(SCOPE_NAME);else element.setAttribute(SCOPE_NAME,scope);else if(scope)if(element.classList)if(shouldRemoveScope){element.classList.remove(SCOPE_NAME);element.classList.remove(scope)}else{element.classList.add(SCOPE_NAME);element.classList.add(scope)}else if(element.getAttribute){var c=element.getAttribute(CLASS);if(shouldRemoveScope){if(c)element.setAttribute(CLASS,c.replace(SCOPE_NAME,"").replace(scope,""))}else element.setAttribute(CLASS,
-(c?c+" ":"")+SCOPE_NAME+" "+scope)}},elementStyles:function(element,callback){var styles=element._styles;var cssText="";var cssBuildType=element.__cssBuild;var passthrough=settings.useNativeShadow||cssBuildType==="shady";var cb;if(passthrough){var self=this;cb=function(rule){rule.selector=self._slottedToContent(rule.selector);rule.selector=rule.selector.replace(ROOT,":host \x3e *");if(callback)callback(rule)}}for(var i=0,l=styles.length,s;i<l&&(s=styles[i]);i++){var rules=styleUtil.rulesForStyle(s);
-cssText+=passthrough?styleUtil.toCssText(rules,cb):this.css(rules,element.is,element.extends,callback,element._scopeCssViaAttr)+"\n\n"}return cssText.trim()},css:function(rules,scope,ext,callback,useAttr){var hostScope=this._calcHostScope(scope,ext);scope=this._calcElementScope(scope,useAttr);var self=this;return styleUtil.toCssText(rules,function(rule){if(!rule.isScoped){self.rule(rule,scope,hostScope);rule.isScoped=true}if(callback)callback(rule,scope,hostScope)})},_calcElementScope:function(scope,
-useAttr){if(scope)return useAttr?CSS_ATTR_PREFIX+scope+CSS_ATTR_SUFFIX:CSS_CLASS_PREFIX+scope;else return""},_calcHostScope:function(scope,ext){return ext?"[is\x3d"+scope+"]":scope},rule:function(rule,scope,hostScope){this._transformRule(rule,this._transformComplexSelector,scope,hostScope)},_transformRule:function(rule,transformer,scope,hostScope){rule.selector=rule.transformedSelector=this._transformRuleCss(rule,transformer,scope,hostScope)},_transformRuleCss:function(rule,transformer,scope,hostScope){var p$=
-rule.selector.split(COMPLEX_SELECTOR_SEP);if(!styleUtil.isKeyframesSelector(rule))for(var i=0,l=p$.length,p;i<l&&(p=p$[i]);i++)p$[i]=transformer.call(this,p,scope,hostScope);return p$.join(COMPLEX_SELECTOR_SEP)},_transformComplexSelector:function(selector,scope,hostScope){var stop=false;var hostContext=false;var self=this;selector=selector.trim();selector=this._slottedToContent(selector);selector=selector.replace(ROOT,":host \x3e *");selector=selector.replace(CONTENT_START,HOST+" $1");selector=selector.replace(SIMPLE_SELECTOR_SEP,
-function(m,c,s){if(!stop){var info=self._transformCompoundSelector(s,c,scope,hostScope);stop=stop||info.stop;hostContext=hostContext||info.hostContext;c=info.combinator;s=info.value}else s=s.replace(SCOPE_JUMP," ");return c+s});if(hostContext)selector=selector.replace(HOST_CONTEXT_PAREN,function(m,pre,paren,post){return pre+paren+" "+hostScope+post+COMPLEX_SELECTOR_SEP+" "+pre+hostScope+paren+post});return selector},_transformCompoundSelector:function(selector,combinator,scope,hostScope){var jumpIndex=
-selector.search(SCOPE_JUMP);var hostContext=false;if(selector.indexOf(HOST_CONTEXT)>=0)hostContext=true;else if(selector.indexOf(HOST)>=0)selector=this._transformHostSelector(selector,hostScope);else if(jumpIndex!==0)selector=scope?this._transformSimpleSelector(selector,scope):selector;if(selector.indexOf(CONTENT)>=0)combinator="";var stop;if(jumpIndex>=0){selector=selector.replace(SCOPE_JUMP," ");stop=true}return{value:selector,combinator:combinator,stop:stop,hostContext:hostContext}},_transformSimpleSelector:function(selector,
-scope){var p$=selector.split(PSEUDO_PREFIX);p$[0]+=scope;return p$.join(PSEUDO_PREFIX)},_transformHostSelector:function(selector,hostScope){var m=selector.match(HOST_PAREN);var paren=m&&m[2].trim()||"";if(paren)if(!paren[0].match(SIMPLE_SELECTOR_PREFIX)){var typeSelector=paren.split(SIMPLE_SELECTOR_PREFIX)[0];if(typeSelector===hostScope)return paren;else return SELECTOR_NO_MATCH}else return selector.replace(HOST_PAREN,function(m,host,paren){return hostScope+paren});else return selector.replace(HOST,
-hostScope)},documentRule:function(rule){rule.selector=rule.parsedSelector;this.normalizeRootSelector(rule);if(!settings.useNativeShadow)this._transformRule(rule,this._transformDocumentSelector)},normalizeRootSelector:function(rule){rule.selector=rule.selector.replace(ROOT,"html")},_transformDocumentSelector:function(selector){return selector.match(SCOPE_JUMP)?this._transformComplexSelector(selector,SCOPE_DOC_SELECTOR):this._transformSimpleSelector(selector.trim(),SCOPE_DOC_SELECTOR)},_slottedToContent:function(cssText){return cssText.replace(SLOTTED_PAREN,
-CONTENT+"\x3e $1")},SCOPE_NAME:"style-scope"};var SCOPE_NAME=api.SCOPE_NAME;var SCOPE_DOC_SELECTOR=":not(["+SCOPE_NAME+"])"+":not(."+SCOPE_NAME+")";var COMPLEX_SELECTOR_SEP=",";var SIMPLE_SELECTOR_SEP=/(^|[\s>+~]+)((?:\[.+?\]|[^\s>+~=\[])+)/g;var SIMPLE_SELECTOR_PREFIX=/[[.:#*]/;var HOST=":host";var ROOT=":root";var HOST_PAREN=/(:host)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/;var HOST_CONTEXT=":host-context";var HOST_CONTEXT_PAREN=/(.*)(?::host-context)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))(.*)/;var CONTENT=
-"::content";var SCOPE_JUMP=/::content|::shadow|\/deep\//;var CSS_CLASS_PREFIX=".";var CSS_ATTR_PREFIX="["+SCOPE_NAME+"~\x3d";var CSS_ATTR_SUFFIX="]";var PSEUDO_PREFIX=":";var CLASS="class";var CONTENT_START=new RegExp("^("+CONTENT+")");var SELECTOR_NO_MATCH="should_not_match";var SLOTTED_PAREN=/(?:::slotted)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/g;return api}();
+(c?c+" ":"")+SCOPE_NAME+" "+scope)}},elementStyles:function(element,callback){var styles=element._styles;var cssText="";var cssBuildType=element.__cssBuild;var passthrough=settings.useNativeShadow||cssBuildType==="shady";var cb;if(passthrough){var self=this;cb=function(rule){rule.selector=self._slottedToContent(rule.selector);rule.selector=rule.selector.replace(ROOT,":host \x3e *");rule.selector=self._dirShadowTransform(rule.selector);if(callback)callback(rule)}}for(var i=0,l=styles.length,s;i<l&&
+(s=styles[i]);i++){var rules=styleUtil.rulesForStyle(s);cssText+=passthrough?styleUtil.toCssText(rules,cb):this.css(rules,element.is,element.extends,callback,element._scopeCssViaAttr)+"\n\n"}return cssText.trim()},css:function(rules,scope,ext,callback,useAttr){var hostScope=this._calcHostScope(scope,ext);scope=this._calcElementScope(scope,useAttr);var self=this;return styleUtil.toCssText(rules,function(rule){if(!rule.isScoped){self.rule(rule,scope,hostScope);rule.isScoped=true}if(callback)callback(rule,
+scope,hostScope)})},_calcElementScope:function(scope,useAttr){if(scope)return useAttr?CSS_ATTR_PREFIX+scope+CSS_ATTR_SUFFIX:CSS_CLASS_PREFIX+scope;else return""},_calcHostScope:function(scope,ext){return ext?"[is\x3d"+scope+"]":scope},rule:function(rule,scope,hostScope){this._transformRule(rule,this._transformComplexSelector,scope,hostScope)},_transformRule:function(rule,transformer,scope,hostScope){rule.selector=rule.transformedSelector=this._transformRuleCss(rule,transformer,scope,hostScope)},_transformRuleCss:function(rule,
+transformer,scope,hostScope){var p$=rule.selector.split(COMPLEX_SELECTOR_SEP);if(!styleUtil.isKeyframesSelector(rule))for(var i=0,l=p$.length,p;i<l&&(p=p$[i]);i++)p$[i]=transformer.call(this,p,scope,hostScope);return p$.join(COMPLEX_SELECTOR_SEP)},_transformComplexSelector:function(selector,scope,hostScope){var stop=false;var hostContext=false;var self=this;selector=selector.trim();selector=this._slottedToContent(selector);selector=selector.replace(ROOT,":host \x3e *");selector=selector.replace(CONTENT_START,
+HOST+" $1");selector=selector.replace(SIMPLE_SELECTOR_SEP,function(m,c,s){if(!stop){var info=self._transformCompoundSelector(s,c,scope,hostScope);stop=stop||info.stop;hostContext=hostContext||info.hostContext;c=info.combinator;s=info.value}else s=s.replace(SCOPE_JUMP," ");return c+s});if(hostContext)selector=selector.replace(HOST_CONTEXT_PAREN,function(m,pre,paren,post){return pre+paren+" "+hostScope+post+COMPLEX_SELECTOR_SEP+" "+pre+hostScope+paren+post});return selector},_transformCompoundSelector:function(selector,
+combinator,scope,hostScope){var jumpIndex=selector.search(SCOPE_JUMP);var hostContext=false;if(selector.indexOf(HOST_CONTEXT)>=0)hostContext=true;else if(selector.indexOf(HOST)>=0)selector=this._transformHostSelector(selector,hostScope);else if(jumpIndex!==0)selector=scope?this._transformSimpleSelector(selector,scope):selector;if(selector.indexOf(CONTENT)>=0)combinator="";var stop;if(jumpIndex>=0){selector=selector.replace(SCOPE_JUMP," ");stop=true}selector=selector.replace(DIR_PAREN,DIR_REPLACE);
+return{value:selector,combinator:combinator,stop:stop,hostContext:hostContext}},_transformSimpleSelector:function(selector,scope){var p$=selector.split(PSEUDO_PREFIX);p$[0]+=scope;return p$.join(PSEUDO_PREFIX)},_transformHostSelector:function(selector,hostScope){var m=selector.match(HOST_PAREN);var paren=m&&m[2].trim()||"";if(paren)if(!paren[0].match(SIMPLE_SELECTOR_PREFIX)){var typeSelector=paren.split(SIMPLE_SELECTOR_PREFIX)[0];if(typeSelector===hostScope)return paren;else return SELECTOR_NO_MATCH}else return selector.replace(HOST_PAREN,
+function(m,host,paren){return hostScope+paren});else return selector.replace(HOST,hostScope)},documentRule:function(rule){rule.selector=rule.parsedSelector;this.normalizeRootSelector(rule);if(!settings.useNativeShadow)this._transformRule(rule,this._transformDocumentSelector)},normalizeRootSelector:function(rule){rule.selector=rule.selector.replace(ROOT,"html");var parts=rule.selector.split(COMPLEX_SELECTOR_SEP);parts=parts.filter(function(part){return!part.match(HOST_OR_HOST_GT_STAR)});rule.selector=
+parts.join(COMPLEX_SELECTOR_SEP)},_transformDocumentSelector:function(selector){return this._transformComplexSelector(selector,SCOPE_DOC_SELECTOR)},_slottedToContent:function(cssText){return cssText.replace(SLOTTED_PAREN,CONTENT+"\x3e $1")},_dirShadowTransform:function(selector){return selector.split(",").map(function(s){s=s.replace(HOST_DIR,HOST_DIR_REPLACE);s=s.replace(DIR_PAREN,SHADOW_DIR_REPLACE);return s}).join(",")},SCOPE_NAME:"style-scope"};var SCOPE_NAME=api.SCOPE_NAME;var SCOPE_DOC_SELECTOR=
+":not(["+SCOPE_NAME+"])"+":not(."+SCOPE_NAME+")";var COMPLEX_SELECTOR_SEP=",";var SIMPLE_SELECTOR_SEP=/(^|[\s>+~]+)((?:\[.+?\]|[^\s>+~=\[])+)/g;var SIMPLE_SELECTOR_PREFIX=/[[.:#*]/;var HOST=":host";var ROOT=":root";var HOST_PAREN=/(:host)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/;var HOST_CONTEXT=":host-context";var HOST_CONTEXT_PAREN=/(.*)(?::host-context)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))(.*)/;var CONTENT="::content";var SCOPE_JUMP=/::content|::shadow|\/deep\//;var CSS_CLASS_PREFIX=".";var CSS_ATTR_PREFIX=
+"["+SCOPE_NAME+"~\x3d";var CSS_ATTR_SUFFIX="]";var PSEUDO_PREFIX=":";var CLASS="class";var CONTENT_START=new RegExp("^("+CONTENT+")");var SELECTOR_NO_MATCH="should_not_match";var SLOTTED_PAREN=/(?:::slotted)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/g;var HOST_OR_HOST_GT_STAR=/:host(?:\s*>\s*\*)?/;var DIR_PAREN=/(.*):dir\((ltr|rtl)\)/g;var DIR_REPLACE='[dir\x3d"$2"] $1, $1[dir\x3d"$2"]';var SHADOW_DIR_REPLACE=':host-context([dir\x3d"$2"]) $1';var HOST_DIR=/:host\(:dir\((rtl|ltr)\)\)/g;var HOST_DIR_REPLACE=
+':host-context([dir\x3d"$1"])';return api}();
 Polymer.StyleExtends=function(){var styleUtil=Polymer.StyleUtil;return{hasExtends:function(cssText){return Boolean(cssText.match(this.rx.EXTEND))},transform:function(style){var rules=styleUtil.rulesForStyle(style);var self=this;styleUtil.forEachRule(rules,function(rule){self._mapRuleOntoParent(rule);if(rule.parent){var m;while(m=self.rx.EXTEND.exec(rule.cssText)){var extend=m[1];var extendor=self._findExtendor(extend,rule);if(extendor)self._extendRule(rule,extendor)}}rule.cssText=rule.cssText.replace(self.rx.EXTEND,
 "")});return styleUtil.toCssText(rules,function(rule){if(rule.selector.match(self.rx.STRIP))rule.cssText=""},true)},_mapRuleOntoParent:function(rule){if(rule.parent){var map=rule.parent.map||(rule.parent.map={});var parts=rule.selector.split(",");for(var i=0,p;i<parts.length;i++){p=parts[i];map[p.trim()]=rule}return map}},_findExtendor:function(extend,rule){return rule.parent&&rule.parent.map&&rule.parent.map[extend]||this._findExtendor(extend,rule.parent)},_extendRule:function(target,source){if(target.parent!==
 source.parent)this._cloneAndAddRuleToParent(source,target.parent);target.extends=target.extends||[];target.extends.push(source);source.selector=source.selector.replace(this.rx.STRIP,"");source.selector=(source.selector&&source.selector+",\n")+target.selector;if(source.extends)source.extends.forEach(function(e){this._extendRule(target,e)},this)},_cloneAndAddRuleToParent:function(rule,parent){rule=Object.create(rule);rule.parent=parent;if(rule.extends)rule.extends=rule.extends.slice();parent.rules.push(rule)},
@@ -347,13 +350,13 @@ Polymer.customStyleCache=styleCache;var SCOPE_NAME=styleTransformer.SCOPE_NAME;v
 Polymer.Base._addFeature({_registerFeatures:function(){this._prepIs();if(this.factoryImpl)this._prepConstructor();this._prepStyles()},_finishRegisterFeatures:function(){this._prepTemplate();this._prepShimStyles();this._prepAnnotations();this._prepEffects();this._prepBehaviors();this._prepPropertyInfo();this._prepBindings();this._prepShady()},_prepBehavior:function(b){this._addPropertyEffects(b.properties);this._addComplexObserverEffects(b.observers);this._addHostAttributes(b.hostAttributes)},_initFeatures:function(){this._setupGestures();
 this._setupConfigure(this.__data__);this._setupStyleProperties();this._setupDebouncers();this._setupShady();this._registerHost();if(this._template){this._validateApplyShim();this._poolContent();this._beginHosting();this._stampTemplate();this._endHosting();this._marshalAnnotationReferences()}this._marshalInstanceEffects();this._marshalBehaviors();this._marshalHostAttributes();this._marshalAttributes();this._tryReady()},_marshalBehavior:function(b){if(b.listeners)this._listenListeners(b.listeners)}});
 (function(){var propertyUtils=Polymer.StyleProperties;var styleUtil=Polymer.StyleUtil;var cssParse=Polymer.CssParse;var styleDefaults=Polymer.StyleDefaults;var styleTransformer=Polymer.StyleTransformer;var applyShim=Polymer.ApplyShim;var debounce=Polymer.Debounce;var settings=Polymer.Settings;var updateDebouncer;Polymer({is:"custom-style",extends:"style",_template:null,properties:{include:String},ready:function(){this.__appliedElement=this.__appliedElement||this;this.__cssBuild=styleUtil.getCssBuildType(this);
-if(this.__appliedElement!==this)this.__appliedElement.__cssBuild=this.__cssBuild;this._tryApply()},attached:function(){this._tryApply()},_tryApply:function(){if(!this._appliesToDocument)if(this.parentNode&&this.parentNode.localName!=="dom-module"){this._appliesToDocument=true;var e=this.__appliedElement;if(!settings.useNativeCSSProperties){this.__needsUpdateStyles=styleDefaults.hasStyleProperties();styleDefaults.addStyle(e)}if(e.textContent||this.include)this._apply(true);else{var self=this;var observer=
-new MutationObserver(function(){observer.disconnect();self._apply(true)});observer.observe(e,{childList:true})}}},_updateStyles:function(){Polymer.updateStyles()},_apply:function(initialApply){var e=this.__appliedElement;if(this.include)e.textContent=styleUtil.cssFromModules(this.include,true)+e.textContent;if(!e.textContent)return;var buildType=this.__cssBuild;var targetedBuild=styleUtil.isTargetedBuild(buildType);if(settings.useNativeCSSProperties&&targetedBuild)return;var styleRules=styleUtil.rulesForStyle(e);
-if(!targetedBuild){styleUtil.forEachRule(styleRules,function(rule){styleTransformer.documentRule(rule)});if(settings.useNativeCSSProperties&&!buildType)applyShim.transform([e])}if(settings.useNativeCSSProperties)e.textContent=styleUtil.toCssText(styleRules);else{var self=this;var fn=function fn(){self._flushCustomProperties()};if(initialApply)Polymer.RenderStatus.whenReady(fn);else fn()}},_flushCustomProperties:function(){if(this.__needsUpdateStyles){this.__needsUpdateStyles=false;updateDebouncer=
-debounce(updateDebouncer,this._updateStyles)}else this._applyCustomProperties()},_applyCustomProperties:function(){var element=this.__appliedElement;this._computeStyleProperties();var props=this._styleProperties;var rules=styleUtil.rulesForStyle(element);if(!rules)return;element.textContent=styleUtil.toCssText(rules,function(rule){var css=rule.cssText=rule.parsedCssText;if(rule.propertyInfo&&rule.propertyInfo.cssText){css=cssParse.removeCustomPropAssignment(css);rule.cssText=propertyUtils.valueForProperties(css,
-props)}})}})})();
-Polymer.Templatizer={properties:{__hideTemplateChildren__:{observer:"_showHideChildren"}},_instanceProps:Polymer.nob,_parentPropPrefix:"_parent_",templatize:function(template){this._templatized=template;if(!template._content)template._content=template.content;if(template._content._ctor){this.ctor=template._content._ctor;this._prepParentProperties(this.ctor.prototype,template);return}var archetype=Object.create(Polymer.Base);this._customPrepAnnotations(archetype,template);this._prepParentProperties(archetype,template);
-archetype._prepEffects();this._customPrepEffects(archetype);archetype._prepBehaviors();archetype._prepPropertyInfo();archetype._prepBindings();archetype._notifyPathUp=this._notifyPathUpImpl;archetype._scopeElementClass=this._scopeElementClassImpl;archetype.listen=this._listenImpl;archetype._showHideChildren=this._showHideChildrenImpl;archetype.__setPropertyOrig=this.__setProperty;archetype.__setProperty=this.__setPropertyImpl;var _constructor=this._constructorImpl;var ctor=function TemplateInstance(model,
+if(this.__appliedElement!==this)this.__appliedElement.__cssBuild=this.__cssBuild;if(this.ownerDocument!==window.document&&this.__appliedElement===this)document.head.appendChild(this);this._tryApply()},attached:function(){this._tryApply()},_tryApply:function(){if(!this._appliesToDocument)if(this.parentNode&&this.parentNode.localName!=="dom-module"){this._appliesToDocument=true;var e=this.__appliedElement;if(!settings.useNativeCSSProperties){this.__needsUpdateStyles=styleDefaults.hasStyleProperties();
+styleDefaults.addStyle(e)}if(e.textContent||this.include)this._apply(true);else{var self=this;var observer=new MutationObserver(function(){observer.disconnect();self._apply(true)});observer.observe(e,{childList:true})}}},_updateStyles:function(){Polymer.updateStyles()},_apply:function(initialApply){var e=this.__appliedElement;if(this.include)e.textContent=styleUtil.cssFromModules(this.include,true)+e.textContent;if(!e.textContent)return;var buildType=this.__cssBuild;var targetedBuild=styleUtil.isTargetedBuild(buildType);
+if(settings.useNativeCSSProperties&&targetedBuild)return;var styleRules=styleUtil.rulesForStyle(e);if(!targetedBuild){styleUtil.forEachRule(styleRules,function(rule){styleTransformer.documentRule(rule)});if(settings.useNativeCSSProperties&&!buildType)applyShim.transform([e])}if(settings.useNativeCSSProperties)e.textContent=styleUtil.toCssText(styleRules);else{var self=this;var fn=function fn(){self._flushCustomProperties()};if(initialApply)Polymer.RenderStatus.whenReady(fn);else fn()}},_flushCustomProperties:function(){if(this.__needsUpdateStyles){this.__needsUpdateStyles=
+false;updateDebouncer=debounce(updateDebouncer,this._updateStyles)}else this._applyCustomProperties()},_applyCustomProperties:function(){var element=this.__appliedElement;this._computeStyleProperties();var props=this._styleProperties;var rules=styleUtil.rulesForStyle(element);if(!rules)return;element.textContent=styleUtil.toCssText(rules,function(rule){var css=rule.cssText=rule.parsedCssText;if(rule.propertyInfo&&rule.propertyInfo.cssText){css=cssParse.removeCustomPropAssignment(css);rule.cssText=
+propertyUtils.valueForProperties(css,props)}})}})})();
+Polymer.Templatizer={properties:{__hideTemplateChildren__:{observer:"_showHideChildren"}},_instanceProps:Polymer.nob,_parentPropPrefix:"_parent_",templatize:function(template){this._templatized=template;if(!template._content)template._content=template.content;if(template._content._ctor){this.ctor=template._content._ctor;this._prepParentProperties(this.ctor.prototype,template);return}var archetype=Object.create(Polymer.Base);this._customPrepAnnotations(archetype,template);this._prepParentProperties(archetype,
+template);archetype._prepEffects();this._customPrepEffects(archetype);archetype._prepBehaviors();archetype._prepPropertyInfo();archetype._prepBindings();archetype._notifyPathUp=this._notifyPathUpImpl;archetype._scopeElementClass=this._scopeElementClassImpl;archetype.listen=this._listenImpl;archetype._showHideChildren=this._showHideChildrenImpl;archetype.__setPropertyOrig=this.__setProperty;archetype.__setProperty=this.__setPropertyImpl;var _constructor=this._constructorImpl;var ctor=function TemplateInstance(model,
 host){_constructor.call(this,model,host)};ctor.prototype=archetype;archetype.constructor=ctor;template._content._ctor=ctor;this.ctor=ctor},_getRootDataHost:function(){return this.dataHost&&this.dataHost._rootDataHost||this.dataHost},_showHideChildrenImpl:function(hide){var c=this._children;for(var i=0;i<c.length;i++){var n=c[i];if(Boolean(hide)!=Boolean(n.__hideTemplateChildren__))if(n.nodeType===Node.TEXT_NODE)if(hide){n.__polymerTextContent__=n.textContent;n.textContent=""}else n.textContent=n.__polymerTextContent__;
 else if(n.style)if(hide){n.__polymerDisplay__=n.style.display;n.style.display="none"}else n.style.display=n.__polymerDisplay__;n.__hideTemplateChildren__=hide}},__setPropertyImpl:function(property,value,fromAbove,node){if(node&&node.__hideTemplateChildren__&&property=="textContent")property="__polymerTextContent__";this.__setPropertyOrig(property,value,fromAbove,node)},_debounceTemplate:function(fn){Polymer.dom.addDebouncer(this.debounce("_debounceTemplate",fn))},_flushTemplates:function(){Polymer.dom.flush()},
 _customPrepEffects:function(archetype){var parentProps=archetype._parentProps;for(var prop in parentProps)archetype._addPropertyEffect(prop,"function",this._createHostPropEffector(prop));for(prop in this._instanceProps)archetype._addPropertyEffect(prop,"function",this._createInstancePropEffector(prop))},_customPrepAnnotations:function(archetype,template){archetype._template=template;var c=template._content;if(!c._notes){var rootDataHost=archetype._rootDataHost;if(rootDataHost)Polymer.Annotations.prepElement=
@@ -417,9 +420,41 @@ forceSynchronousItemUpdate:function(){this._updateItems()},get _shouldUpdateSele
 "*");nodes=Array.prototype.filter.call(nodes,this._bindFilterItem);this._setItems(nodes)},_updateAttrForSelected:function(){if(this._shouldUpdateSelection)this.selected=this._indexToValue(this.indexOf(this.selectedItem))},_updateSelected:function(){this._selectSelected(this.selected)},_selectSelected:function(selected){this._selection.select(this._valueToItem(this.selected));if(this.fallbackSelection&&this.items.length&&this._selection.get()===undefined)this.selected=this.fallbackSelection},_filterItem:function(node){return!this._excludedLocalNames[node.localName]},
 _valueToItem:function(value){return value==null?null:this.items[this._valueToIndex(value)]},_valueToIndex:function(value){if(this.attrForSelected)for(var i=0,item;item=this.items[i];i++){if(this._valueForItem(item)==value)return i}else return Number(value)},_indexToValue:function(index){if(this.attrForSelected){var item=this.items[index];if(item)return this._valueForItem(item)}else return index},_valueForItem:function(item){var propValue=item[Polymer.CaseMap.dashToCamelCase(this.attrForSelected)];
 return propValue!=undefined?propValue:item.getAttribute(this.attrForSelected)},_applySelection:function(item,isSelected){if(this.selectedClass)this.toggleClass(this.selectedClass,isSelected,item);if(this.selectedAttribute)this.toggleAttribute(this.selectedAttribute,isSelected,item);this._selectionChange();this.fire("iron-"+(isSelected?"select":"deselect"),{item:item})},_selectionChange:function(){this._setSelectedItem(this._selection.get())},_observeItems:function(node){return Polymer.dom(node).observeNodes(function(mutation){this._updateItems();
-if(this._shouldUpdateSelection)this._updateSelected();this.fire("iron-items-changed",mutation,{bubbles:false,cancelable:false})})},_activateHandler:function(e){var t=e.target;var items=this.items;while(t&&t!=this){var i=items.indexOf(t);if(i>=0){var value=this._indexToValue(i);this._itemActivate(value,t);return}t=t.parentNode}},_itemActivate:function(value,item){if(!this.fire("iron-activate",{selected:value,item:item},{cancelable:true}).defaultPrevented)this.select(value)}};</script><dom-module id="iron-pages" assetpath="bower_components/iron-pages/"><template><style>:host{display:block;}:host > ::content > :not(.iron-selected){display:none !important;}</style><content></content></template><script>Polymer({is:"iron-pages",behaviors:[Polymer.IronResizableBehavior,Polymer.IronSelectableBehavior],properties:{activateEvent:{type:String,value:null}},observers:["_selectedPageChanged(selected)"],_selectedPageChanged:function(selected,old){this.async(this.notifyResize)}});</script></dom-module><script>if(!Object.keys)Object.keys=function(){var hasOwnProperty=Object.prototype.hasOwnProperty;var hasDontEnumBug=!{toString:null}.propertyIsEnumerable("toString");var dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];var dontEnumsLength=dontEnums.length;return function(obj){if(typeof obj!=="object"&&(typeof obj!=="function"||obj===null))throw new TypeError("Object.keys called on non-object");var result=[];var prop;var i;for(prop in obj)if(hasOwnProperty.call(obj,
-prop))result.push(prop);if(hasDontEnumBug)for(i=0;i<dontEnumsLength;i++)if(hasOwnProperty.call(obj,dontEnums[i]))result.push(dontEnums[i]);return result}}();
-Polymer.RamlBehavior={properties:{raml:Object,baseTypes:{type:Array,value:function(){return["object","array","integer","string","number","boolean","datetime","file","null","any"]}}},isEmpty:function(obj){if(!obj&&typeof obj!=="number")return true;if(obj instanceof Array&&!obj.length)return true;if(obj instanceof Object&&!Object.keys(obj).length)return true;return false}};</script><script>(function(){var RAMLAware={defaultScope:"default",ramlAwares:[],raml:{},attachRamlAware:function(aware){if(this.ramlAwares.indexOf(aware)===-1){this.ramlAwares.push(aware);this.scopeChanged(aware)}},detachRamlAware:function(aware){var index=this.ramlAwares.indexOf(aware);if(index!==-1)this.ramlAwares.splice(index,1);else console.warn("The aware wasn't attached!")},setRaml:function(srcAware){var scope=srcAware.scope||this.defaultScope;var raml=srcAware.raml||undefined;this.raml[scope]=raml;var defaultScope=
+if(this._shouldUpdateSelection)this._updateSelected();this.fire("iron-items-changed",mutation,{bubbles:false,cancelable:false})})},_activateHandler:function(e){var t=e.target;var items=this.items;while(t&&t!=this){var i=items.indexOf(t);if(i>=0){var value=this._indexToValue(i);this._itemActivate(value,t);return}t=t.parentNode}},_itemActivate:function(value,item){if(!this.fire("iron-activate",{selected:value,item:item},{cancelable:true}).defaultPrevented)this.select(value)}};</script><dom-module id="iron-pages" assetpath="bower_components/iron-pages/"><template><style>:host{display:block;}:host > ::content > :not(.iron-selected){display:none !important;}</style><content></content></template><script>Polymer({is:"iron-pages",behaviors:[Polymer.IronResizableBehavior,Polymer.IronSelectableBehavior],properties:{activateEvent:{type:String,value:null}},observers:["_selectedPageChanged(selected)"],_selectedPageChanged:function(selected,old){this.async(this.notifyResize)}});</script></dom-module><script>/*
+
+Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
+*/
+function MakePromise(asap){function Promise(fn){if(typeof this!=="object"||typeof fn!=="function")throw new TypeError;this._state=null;this._value=null;this._deferreds=[];doResolve(fn,resolve.bind(this),reject.bind(this))}function handle(deferred){var me=this;if(this._state===null){this._deferreds.push(deferred);return}asap(function(){var cb=me._state?deferred.onFulfilled:deferred.onRejected;if(typeof cb!=="function"){(me._state?deferred.resolve:deferred.reject)(me._value);return}var ret;try{ret=
+cb(me._value)}catch(e){deferred.reject(e);return}deferred.resolve(ret)})}function resolve(newValue){try{if(newValue===this)throw new TypeError;if(newValue&&(typeof newValue==="object"||typeof newValue==="function")){var then=newValue.then;if(typeof then==="function"){doResolve(then.bind(newValue),resolve.bind(this),reject.bind(this));return}}this._state=true;this._value=newValue;finale.call(this)}catch(e){reject.call(this,e)}}function reject(newValue){this._state=false;this._value=newValue;finale.call(this)}
+function finale(){for(var i=0,len=this._deferreds.length;i<len;i++)handle.call(this,this._deferreds[i]);this._deferreds=null}function doResolve(fn,onFulfilled,onRejected){var done=false;try{fn(function(value){if(done)return;done=true;onFulfilled(value)},function(reason){if(done)return;done=true;onRejected(reason)})}catch(ex){if(done)return;done=true;onRejected(ex)}}Promise.prototype["catch"]=function(onRejected){return this.then(null,onRejected)};Promise.prototype.then=function(onFulfilled,onRejected){var me=
+this;return new Promise(function(resolve,reject){handle.call(me,{onFulfilled:onFulfilled,onRejected:onRejected,resolve:resolve,reject:reject})})};Promise.resolve=function(value){if(value&&typeof value==="object"&&value.constructor===Promise)return value;return new Promise(function(resolve){resolve(value)})};Promise.reject=function(value){return new Promise(function(resolve,reject){reject(value)})};return Promise}if(typeof module!=="undefined")module.exports=MakePromise;</script><script>if(!window.Promise)window.Promise=MakePromise(Polymer.Base.async);</script><script>/*
+
+Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
+This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
+The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
+The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
+Code distributed by Google as part of the polymer project is also
+subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
+*/
+Promise.all=Promise.all||function(){var args=Array.prototype.slice.call(arguments.length===1&&Array.isArray(arguments[0])?arguments[0]:arguments);return new Promise(function(resolve,reject){if(args.length===0)return resolve([]);var remaining=args.length;function res(i,val){try{if(val&&(typeof val==="object"||typeof val==="function")){var then=val.then;if(typeof then==="function"){then.call(val,function(val){res(i,val)},reject);return}}args[i]=val;if(--remaining===0)resolve(args)}catch(ex){reject(ex)}}
+for(var i=0;i<args.length;i++)res(i,args[i])})};Promise.race=Promise.race||function(values){var forcedArray=(values);return new Promise(function(resolve,reject){for(var i=0,len=forcedArray.length;i<len;i++)forcedArray[i].then(resolve,reject)})};</script><script>if(typeof Object.assign!=="function")Object.assign=function(target){if(target===null)throw new TypeError("Cannot convert undefined or null to object");var to=Object(target);for(var index=1;index<arguments.length;index++){var nextSource=arguments[index];if(nextSource!==null)for(var nextKey in nextSource)if(Object.prototype.hasOwnProperty.call(nextSource,nextKey))to[nextKey]=nextSource[nextKey]}return to};
+if(!Object.keys)Object.keys=function(){var hasOwnProperty=Object.prototype.hasOwnProperty;var hasDontEnumBug=!{toString:null}.propertyIsEnumerable("toString");var dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];var dontEnumsLength=dontEnums.length;return function(obj){if(typeof obj!=="function"&&(typeof obj!=="object"||obj===null))throw new TypeError("Object.keys called on non-object");var result=[];var prop;var i;for(prop in obj)if(hasOwnProperty.call(obj,
+prop))result.push(prop);if(hasDontEnumBug)for(i=0;i<dontEnumsLength;i++)if(hasOwnProperty.call(obj,dontEnums[i]))result.push(dontEnums[i]);return result}}();if(!Array.isArray)Array.isArray=function(arg){return Object.prototype.toString.call(arg)==="[object Array]"};
+if(!Array.prototype.find)Object.defineProperty(Array.prototype,"find",{value:function(predicate){if(this===null)throw new TypeError('"this" is null or not defined');var o=Object(this);var len=o.length>>>0;if(typeof predicate!=="function")throw new TypeError("predicate must be a function");var thisArg=arguments[1];var k=0;while(k<len){var kValue=o[k];if(predicate.call(thisArg,kValue,k,o))return kValue;k++}return undefined}});
+if(!Array.prototype.copyWithin)Array.prototype.copyWithin=function(target,start){if(this===null)throw new TypeError("this is null or not defined");var O=Object(this);var len=O.length>>>0;var relativeTarget=target>>0;var to=relativeTarget<0?Math.max(len+relativeTarget,0):Math.min(relativeTarget,len);var relativeStart=start>>0;var from=relativeStart<0?Math.max(len+relativeStart,0):Math.min(relativeStart,len);var end=arguments[2];var relativeEnd=end===undefined?len:end>>0;var final=relativeEnd<0?Math.max(len+
+relativeEnd,0):Math.min(relativeEnd,len);var count=Math.min(final-from,len-to);var direction=1;if(from<to&&to<from+count){direction=-1;from+=count-1;to+=count-1}while(count>0){if(from in O)O[to]=O[from];else delete O[to];from+=direction;to+=direction;count--}return O};
+if(!Array.prototype.findIndex)Object.defineProperty(Array.prototype,"findIndex",{value:function(predicate){if(this===null)throw new TypeError('"this" is null or not defined');var o=Object(this);var len=o.length>>>0;if(typeof predicate!=="function")throw new TypeError("predicate must be a function");var thisArg=arguments[1];var k=0;while(k<len){var kValue=o[k];if(predicate.call(thisArg,kValue,k,o))return k;k++}return-1}});
+if(!Array.prototype.includes)Object.defineProperty(Array.prototype,"includes",{value:function(searchElement,fromIndex){if(this===null)throw new TypeError('"this" is null or not defined');var o=Object(this);var len=o.length>>>0;if(len===0)return false;var n=fromIndex|0;var k=Math.max(n>=0?n:len-Math.abs(n),0);function sameValueZero(x,y){return x===y||typeof x==="number"&&typeof y==="number"&&isNaN(x)&&isNaN(y)}while(k<len){if(sameValueZero(o[k],searchElement))return true;k++}return false}});
+if(!Array.from)Array.from=function(){var toStr=Object.prototype.toString;var isCallable=function(fn){return typeof fn==="function"||toStr.call(fn)==="[object Function]"};var toInteger=function(value){var number=Number(value);if(isNaN(number))return 0;if(number===0||!isFinite(number))return number;return(number>0?1:-1)*Math.floor(Math.abs(number))};var maxSafeInteger=Math.pow(2,53)-1;var toLength=function(value){var len=toInteger(value);return Math.min(Math.max(len,0),maxSafeInteger)};return function from(arrayLike){var C=
+this;var items=Object(arrayLike);if(arrayLike===null)throw new TypeError("Array.from requires an array-like object - not null or undefined");var mapFn=arguments.length>1?arguments[1]:void undefined;var T;if(typeof mapFn!=="undefined"){if(!isCallable(mapFn))throw new TypeError("Array.from: when provided, the second argument must be a function");if(arguments.length>2)T=arguments[2]}var len=toLength(items.length);var A=isCallable(C)?Object(new C(len)):new Array(len);var k=0;var kValue;while(k<len){kValue=
+items[k];if(mapFn)A[k]=typeof T==="undefined"?mapFn(kValue,k):mapFn.call(T,kValue,k);else A[k]=kValue;k+=1}A.length=len;return A}}();Number.isInteger=Number.isInteger||function(value){return typeof value==="number"&&isFinite(value)&&Math.floor(value)===value};</script><script>Polymer({is:"arc-polyfills"});</script><script>Polymer.RamlBehavior={properties:{raml:Object,baseTypes:{type:Array,value:function(){return["object","array","integer","string","number","boolean","datetime","file","null","any"]}}},isEmpty:function(obj){var type=typeof obj;if(!obj&&["number","boolean"].indexOf(type)===-1)return true;if(obj instanceof Array&&!obj.length)return true;if(obj instanceof Object&&!Object.keys(obj).length)return true;return false},typeProperties:function(type){if(!type)return;if(type.properties)if(!(type.properties instanceof
+Array)){var names=Object.keys(type.properties);names.sort();var properties=[];names.forEach(function(name){var item=type.properties[name];item.key=name;properties.push(item)});type.properties=properties}return type},hasValue:function(obj){var type=typeof obj;if(type==="number"&&obj===0)return true;if(type==="boolean")return true;if(type==="string"&&obj==="")return true;if(obj instanceof Array&&!obj.length)return false;if(obj instanceof Object&&!Object.keys(obj).length)return false;return!!obj},typeName:function(type){if(!type)return;
+return type.displayName||type.name||type.key||undefined}};</script><script>(function(){var RAMLAware={defaultScope:"default",ramlAwares:[],raml:{},attachRamlAware:function(aware){if(this.ramlAwares.indexOf(aware)===-1){this.ramlAwares.push(aware);this.scopeChanged(aware)}},detachRamlAware:function(aware){var index=this.ramlAwares.indexOf(aware);if(index!==-1)this.ramlAwares.splice(index,1);else console.warn("The aware wasn't attached!")},setRaml:function(srcAware){var scope=srcAware.scope||this.defaultScope;var raml=srcAware.raml||undefined;this.raml[scope]=raml;var defaultScope=
 this.defaultScope;this.ramlAwares.forEach(function(aware){if(aware===srcAware)return;var localScope=aware.scope||defaultScope;if(localScope!==scope)return;aware.raml=raml})},scopeChanged:function(aware){var scope=aware.scope||this.defaultScope;aware.raml=this.raml[scope]}};Polymer({is:"raml-aware",properties:{scope:String,raml:{type:Object,notify:true}},observers:["_scopeChanged(scope)","_ramlChanged(raml.*)"],attached:function(){RAMLAware.attachRamlAware(this)},detached:function(){RAMLAware.detachRamlAware(this)},
 _scopeChanged:function(){RAMLAware.scopeChanged(this)},_ramlChanged:function(){RAMLAware.setRaml(this)}})})();</script><dom-module id="raml-path-to-object" assetpath="bower_components/raml-path-to-object/"><template><style>:host{display:none;}</style><template is="dom-if" if="[[aware]]" restamp="true"><raml-aware raml="{{raml}}" scope="[[aware]]"></raml-aware></template></template><script>Polymer({is:"raml-path-to-object",behaviors:[Polymer.RamlBehavior],properties:{selectedPath:String,selectedObject:{type:Object,notify:true,readOnly:true},selectedParent:{type:Object,notify:true,readOnly:true},isMethod:{type:Boolean,value:false,notify:true,readOnly:true},isResource:{type:Boolean,value:false,notify:true,readOnly:true},isDocumentation:{type:Boolean,value:false,notify:true,readOnly:true},isSummary:{type:Boolean,readOnly:true,notify:true,value:false},isType:{type:Boolean,readOnly:true,
 notify:true,value:false},aware:String,auto:{type:Boolean,value:false,observer:"_autoChanged"}},observers:["_ramlChanged(raml.*)","_pathChanged(selectedPath, raml)","_fireSelectedObject(selectedObject.*)","_fireSelectedParent(selectedParent.*)","_fireIsMethodState(isMethod)","_fireIsResourceState(isResource)","_fireIsDocumentationState(isDocumentation)","_fireIsSummaryState(isSummary)","_fireIsTypeState(isType)"],attached:function(){this._eventTarget=Polymer.dom(this).host||document;this._autoChanged(this.auto)},
@@ -508,7 +543,7 @@ var prefixes=map[property];for(var prefix,index=0;prefix=prefixes[index];index++
 //     See the License for the specific language governing permissions and
 // limitations under the License.
 
-!function(a,b){var c={},d={},e={},f=null;!function(a,b){function c(a){if("number"==typeof a)return a;var b={};for(var c in a)b[c]=a[c];return b}function d(){this._delay=0,this._endDelay=0,this._fill="none",this._iterationStart=0,this._iterations=1,this._duration=0,this._playbackRate=1,this._direction="normal",this._easing="linear",this._easingFunction=x}function e(){return a.isDeprecated("Invalid timing inputs","2016-03-02","TypeError exceptions will be thrown instead.",!0)}function f(b,c,e){var f=new d;return c&&(f.fill="both",f.duration="auto"),"number"!=typeof b||isNaN(b)?void 0!==b&&Object.getOwnPropertyNames(b).forEach(function(c){if("auto"!=b[c]){if(("number"==typeof f[c]||"duration"==c)&&("number"!=typeof b[c]||isNaN(b[c])))return;if("fill"==c&&-1==v.indexOf(b[c]))return;if("direction"==c&&-1==w.indexOf(b[c]))return;if("playbackRate"==c&&1!==b[c]&&a.isDeprecated("AnimationEffectTiming.playbackRate","2014-11-28","Use Animation.playbackRate instead."))return;f[c]=b[c]}}):f.duration=b,f}function g(a){return"number"==typeof a&&(a=isNaN(a)?{duration:0}:{duration:a}),a}function h(b,c){return b=a.numericTimingToObject(b),f(b,c)}function i(a,b,c,d){return a<0||a>1||c<0||c>1?x:function(e){function f(a,b,c){return 3*a*(1-c)*(1-c)*c+3*b*(1-c)*c*c+c*c*c}if(e<=0){var g=0;return a>0?g=b/a:!b&&c>0&&(g=d/c),g*e}if(e>=1){var h=0;return c<1?h=(d-1)/(c-1):1==c&&a<1&&(h=(b-1)/(a-1)),1+h*(e-1)}for(var i=0,j=1;i<j;){var k=(i+j)/2,l=f(a,c,k);if(Math.abs(e-l)<1e-5)return f(b,d,k);l<e?i=k:j=k}return f(b,d,k)}}function j(a,b){return function(c){if(c>=1)return 1;var d=1/a;return(c+=b*d)-c%d}}function k(a){C||(C=document.createElement("div").style),C.animationTimingFunction="",C.animationTimingFunction=a;var b=C.animationTimingFunction;if(""==b&&e())throw new TypeError(a+" is not a valid value for easing");return b}function l(a){if("linear"==a)return x;var b=E.exec(a);if(b)return i.apply(this,b.slice(1).map(Number));var c=F.exec(a);return c?j(Number(c[1]),{start:y,middle:z,end:A}[c[2]]):B[a]||x}function m(a){return Math.abs(n(a)/a.playbackRate)}function n(a){return 0===a.duration||0===a.iterations?0:a.duration*a.iterations}function o(a,b,c){if(null==b)return G;var d=c.delay+a+c.endDelay;return b<Math.min(c.delay,d)?H:b>=Math.min(c.delay+a,d)?I:J}function p(a,b,c,d,e){switch(d){case H:return"backwards"==b||"both"==b?0:null;case J:return c-e;case I:return"forwards"==b||"both"==b?a:null;case G:return null}}function q(a,b,c,d,e){var f=e;return 0===a?b!==H&&(f+=c):f+=d/a,f}function r(a,b,c,d,e,f){var g=a===1/0?b%1:a%1;return 0!==g||c!==I||0===d||0===e&&0!==f||(g=1),g}function s(a,b,c,d){return a===I&&b===1/0?1/0:1===c?Math.floor(d)-1:Math.floor(d)}function t(a,b,c){var d=a;if("normal"!==a&&"reverse"!==a){var e=b;"alternate-reverse"===a&&(e+=1),d="normal",e!==1/0&&e%2!=0&&(d="reverse")}return"normal"===d?c:1-c}function u(a,b,c){var d=o(a,b,c),e=p(a,c.fill,b,d,c.delay);if(null===e)return null;var f=q(c.duration,d,c.iterations,e,c.iterationStart),g=r(f,c.iterationStart,d,c.iterations,e,c.duration),h=s(d,c.iterations,g,f),i=t(c.direction,h,g);return c._easingFunction(i)}var v="backwards|forwards|both|none".split("|"),w="reverse|alternate|alternate-reverse".split("|"),x=function(a){return a};d.prototype={_setMember:function(b,c){this["_"+b]=c,this._effect&&(this._effect._timingInput[b]=c,this._effect._timing=a.normalizeTimingInput(this._effect._timingInput),this._effect.activeDuration=a.calculateActiveDuration(this._effect._timing),this._effect._animation&&this._effect._animation._rebuildUnderlyingAnimation())},get playbackRate(){return this._playbackRate},set delay(a){this._setMember("delay",a)},get delay(){return this._delay},set endDelay(a){this._setMember("endDelay",a)},get endDelay(){return this._endDelay},set fill(a){this._setMember("fill",a)},get fill(){return this._fill},set iterationStart(a){if((isNaN(a)||a<0)&&e())throw new TypeError("iterationStart must be a non-negative number, received: "+timing.iterationStart);this._setMember("iterationStart",a)},get iterationStart(){return this._iterationStart},set duration(a){if("auto"!=a&&(isNaN(a)||a<0)&&e())throw new TypeError("duration must be non-negative or auto, received: "+a);this._setMember("duration",a)},get duration(){return this._duration},set direction(a){this._setMember("direction",a)},get direction(){return this._direction},set easing(a){this._easingFunction=l(k(a)),this._setMember("easing",a)},get easing(){return this._easing},set iterations(a){if((isNaN(a)||a<0)&&e())throw new TypeError("iterations must be non-negative, received: "+a);this._setMember("iterations",a)},get iterations(){return this._iterations}};var y=1,z=.5,A=0,B={ease:i(.25,.1,.25,1),"ease-in":i(.42,0,1,1),"ease-out":i(0,0,.58,1),"ease-in-out":i(.42,0,.58,1),"step-start":j(1,y),"step-middle":j(1,z),"step-end":j(1,A)},C=null,D="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",E=new RegExp("cubic-bezier\\("+D+","+D+","+D+","+D+"\\)"),F=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/,G=0,H=1,I=2,J=3;a.cloneTimingInput=c,a.makeTiming=f,a.numericTimingToObject=g,a.normalizeTimingInput=h,a.calculateActiveDuration=m,a.calculateIterationProgress=u,a.calculatePhase=o,a.normalizeEasing=k,a.parseEasingFunction=l}(c),function(a,b){function c(a,b){return a in k?k[a][b]||b:b}function d(a){return"display"===a||0===a.lastIndexOf("animation",0)||0===a.lastIndexOf("transition",0)}function e(a,b,e){if(!d(a)){var f=h[a];if(f){i.style[a]=b;for(var g in f){var j=f[g],k=i.style[j];e[j]=c(j,k)}}else e[a]=c(a,b)}}function f(a){var b=[];for(var c in a)if(!(c in["easing","offset","composite"])){var d=a[c];Array.isArray(d)||(d=[d]);for(var e,f=d.length,g=0;g<f;g++)e={},e.offset="offset"in a?a.offset:1==f?1:g/(f-1),"easing"in a&&(e.easing=a.easing),"composite"in a&&(e.composite=a.composite),e[c]=d[g],b.push(e)}return b.sort(function(a,b){return a.offset-b.offset}),b}function g(b){function c(){var a=d.length;null==d[a-1].offset&&(d[a-1].offset=1),a>1&&null==d[0].offset&&(d[0].offset=0);for(var b=0,c=d[0].offset,e=1;e<a;e++){var f=d[e].offset;if(null!=f){for(var g=1;g<e-b;g++)d[b+g].offset=c+(f-c)*g/(e-b);b=e,c=f}}}if(null==b)return[];window.Symbol&&Symbol.iterator&&Array.prototype.from&&b[Symbol.iterator]&&(b=Array.from(b)),Array.isArray(b)||(b=f(b));for(var d=b.map(function(b){var c={};for(var d in b){var f=b[d];if("offset"==d){if(null!=f){if(f=Number(f),!isFinite(f))throw new TypeError("Keyframe offsets must be numbers.");if(f<0||f>1)throw new TypeError("Keyframe offsets must be between 0 and 1.")}}else if("composite"==d){if("add"==f||"accumulate"==f)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"add compositing is not supported"};if("replace"!=f)throw new TypeError("Invalid composite mode "+f+".")}else f="easing"==d?a.normalizeEasing(f):""+f;e(d,f,c)}return void 0==c.offset&&(c.offset=null),void 0==c.easing&&(c.easing="linear"),c}),g=!0,h=-1/0,i=0;i<d.length;i++){var j=d[i].offset;if(null!=j){if(j<h)throw new TypeError("Keyframes are not loosely sorted by offset. Sort or specify offsets.");h=j}else g=!1}return d=d.filter(function(a){return a.offset>=0&&a.offset<=1}),g||c(),d}var h={background:["backgroundImage","backgroundPosition","backgroundSize","backgroundRepeat","backgroundAttachment","backgroundOrigin","backgroundClip","backgroundColor"],border:["borderTopColor","borderTopStyle","borderTopWidth","borderRightColor","borderRightStyle","borderRightWidth","borderBottomColor","borderBottomStyle","borderBottomWidth","borderLeftColor","borderLeftStyle","borderLeftWidth"],borderBottom:["borderBottomWidth","borderBottomStyle","borderBottomColor"],borderColor:["borderTopColor","borderRightColor","borderBottomColor","borderLeftColor"],borderLeft:["borderLeftWidth","borderLeftStyle","borderLeftColor"],borderRadius:["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],borderRight:["borderRightWidth","borderRightStyle","borderRightColor"],borderTop:["borderTopWidth","borderTopStyle","borderTopColor"],borderWidth:["borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth"],flex:["flexGrow","flexShrink","flexBasis"],font:["fontFamily","fontSize","fontStyle","fontVariant","fontWeight","lineHeight"],margin:["marginTop","marginRight","marginBottom","marginLeft"],outline:["outlineColor","outlineStyle","outlineWidth"],padding:["paddingTop","paddingRight","paddingBottom","paddingLeft"]},i=document.createElementNS("http://www.w3.org/1999/xhtml","div"),j={thin:"1px",medium:"3px",thick:"5px"},k={borderBottomWidth:j,borderLeftWidth:j,borderRightWidth:j,borderTopWidth:j,fontSize:{"xx-small":"60%","x-small":"75%",small:"89%",medium:"100%",large:"120%","x-large":"150%","xx-large":"200%"},fontWeight:{normal:"400",bold:"700"},outlineWidth:j,textShadow:{none:"0px 0px 0px transparent"},boxShadow:{none:"0px 0px 0px 0px transparent"}};a.convertToArrayForm=f,a.normalizeKeyframes=g}(c),function(a){var b={};a.isDeprecated=function(a,c,d,e){var f=e?"are":"is",g=new Date,h=new Date(c);return h.setMonth(h.getMonth()+3),!(g<h&&(a in b||console.warn("Web Animations: "+a+" "+f+" deprecated and will stop working on "+h.toDateString()+". "+d),b[a]=!0,1))},a.deprecated=function(b,c,d,e){var f=e?"are":"is";if(a.isDeprecated(b,c,d,e))throw new Error(b+" "+f+" no longer supported. "+d)}}(c),function(){if(document.documentElement.animate){var a=document.documentElement.animate([],0),b=!0;if(a&&(b=!1,"play|currentTime|pause|reverse|playbackRate|cancel|finish|startTime|playState".split("|").forEach(function(c){void 0===a[c]&&(b=!0)})),!b)return}!function(a,b,c){function d(a){for(var b={},c=0;c<a.length;c++)for(var d in a[c])if("offset"!=d&&"easing"!=d&&"composite"!=d){var e={offset:a[c].offset,easing:a[c].easing,value:a[c][d]};b[d]=b[d]||[],b[d].push(e)}for(var f in b){var g=b[f];if(0!=g[0].offset||1!=g[g.length-1].offset)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"Partial keyframes are not supported"}}return b}function e(c){var d=[];for(var e in c)for(var f=c[e],g=0;g<f.length-1;g++){var h=g,i=g+1,j=f[h].offset,k=f[i].offset,l=j,m=k;0==g&&(l=-1/0,0==k&&(i=h)),g==f.length-2&&(m=1/0,1==j&&(h=i)),d.push({applyFrom:l,applyTo:m,startOffset:f[h].offset,endOffset:f[i].offset,easingFunction:a.parseEasingFunction(f[h].easing),property:e,interpolation:b.propertyInterpolation(e,f[h].value,f[i].value)})}return d.sort(function(a,b){return a.startOffset-b.startOffset}),d}b.convertEffectInput=function(c){var f=a.normalizeKeyframes(c),g=d(f),h=e(g);return function(a,c){if(null!=c)h.filter(function(a){return c>=a.applyFrom&&c<a.applyTo}).forEach(function(d){var e=c-d.startOffset,f=d.endOffset-d.startOffset,g=0==f?0:d.easingFunction(e/f);b.apply(a,d.property,d.interpolation(g))});else for(var d in g)"offset"!=d&&"easing"!=d&&"composite"!=d&&b.clear(a,d)}}}(c,d),function(a,b,c){function d(a){return a.replace(/-(.)/g,function(a,b){return b.toUpperCase()})}function e(a,b,c){h[c]=h[c]||[],h[c].push([a,b])}function f(a,b,c){for(var f=0;f<c.length;f++){e(a,b,d(c[f]))}}function g(c,e,f){var g=c;/-/.test(c)&&!a.isDeprecated("Hyphenated property names","2016-03-22","Use camelCase instead.",!0)&&(g=d(c)),"initial"!=e&&"initial"!=f||("initial"==e&&(e=i[g]),"initial"==f&&(f=i[g]));for(var j=e==f?[]:h[g],k=0;j&&k<j.length;k++){var l=j[k][0](e),m=j[k][0](f);if(void 0!==l&&void 0!==m){var n=j[k][1](l,m);if(n){var o=b.Interpolation.apply(null,n);return function(a){return 0==a?e:1==a?f:o(a)}}}}return b.Interpolation(!1,!0,function(a){return a?f:e})}var h={};b.addPropertiesHandler=f;var i={backgroundColor:"transparent",backgroundPosition:"0% 0%",borderBottomColor:"currentColor",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px",borderBottomWidth:"3px",borderLeftColor:"currentColor",borderLeftWidth:"3px",borderRightColor:"currentColor",borderRightWidth:"3px",borderSpacing:"2px",borderTopColor:"currentColor",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderTopWidth:"3px",bottom:"auto",clip:"rect(0px, 0px, 0px, 0px)",color:"black",fontSize:"100%",fontWeight:"400",height:"auto",left:"auto",letterSpacing:"normal",lineHeight:"120%",marginBottom:"0px",marginLeft:"0px",marginRight:"0px",marginTop:"0px",maxHeight:"none",maxWidth:"none",minHeight:"0px",minWidth:"0px",opacity:"1.0",outlineColor:"invert",outlineOffset:"0px",outlineWidth:"3px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",paddingTop:"0px",right:"auto",strokeDasharray:"none",strokeDashoffset:"0px",textIndent:"0px",textShadow:"0px 0px 0px transparent",top:"auto",transform:"",verticalAlign:"0px",visibility:"visible",width:"auto",wordSpacing:"normal",zIndex:"auto"};b.propertyInterpolation=g}(c,d),function(a,b,c){function d(b){var c=a.calculateActiveDuration(b),d=function(d){return a.calculateIterationProgress(c,d,b)};return d._totalDuration=b.delay+c+b.endDelay,d}b.KeyframeEffect=function(c,e,f,g){var h,i=d(a.normalizeTimingInput(f)),j=b.convertEffectInput(e),k=function(){j(c,h)};return k._update=function(a){return null!==(h=i(a))},k._clear=function(){j(c,null)},k._hasSameTarget=function(a){return c===a},k._target=c,k._totalDuration=i._totalDuration,k._id=g,k}}(c,d),function(a,b){a.apply=function(b,c,d){b.style[a.propertyName(c)]=d},a.clear=function(b,c){b.style[a.propertyName(c)]=""}}(d),function(a){window.Element.prototype.animate=function(b,c){var d="";return c&&c.id&&(d=c.id),a.timeline._play(a.KeyframeEffect(this,b,c,d))}}(d),function(a,b){function c(a,b,d){if("number"==typeof a&&"number"==typeof b)return a*(1-d)+b*d;if("boolean"==typeof a&&"boolean"==typeof b)return d<.5?a:b;if(a.length==b.length){for(var e=[],f=0;f<a.length;f++)e.push(c(a[f],b[f],d));return e}throw"Mismatched interpolation arguments "+a+":"+b}a.Interpolation=function(a,b,d){return function(e){return d(c(a,b,e))}}}(d),function(a,b,c){a.sequenceNumber=0;var d=function(a,b,c){this.target=a,this.currentTime=b,this.timelineTime=c,this.type="finish",this.bubbles=!1,this.cancelable=!1,this.currentTarget=a,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()};b.Animation=function(b){this.id="",b&&b._id&&(this.id=b._id),this._sequenceNumber=a.sequenceNumber++,this._currentTime=0,this._startTime=null,this._paused=!1,this._playbackRate=1,this._inTimeline=!0,this._finishedFlag=!0,this.onfinish=null,this._finishHandlers=[],this._effect=b,this._inEffect=this._effect._update(0),this._idle=!0,this._currentTimePending=!1},b.Animation.prototype={_ensureAlive:function(){this.playbackRate<0&&0===this.currentTime?this._inEffect=this._effect._update(-1):this._inEffect=this._effect._update(this.currentTime),this._inTimeline||!this._inEffect&&this._finishedFlag||(this._inTimeline=!0,b.timeline._animations.push(this))},_tickCurrentTime:function(a,b){a!=this._currentTime&&(this._currentTime=a,this._isFinished&&!b&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this._ensureAlive())},get currentTime(){return this._idle||this._currentTimePending?null:this._currentTime},set currentTime(a){a=+a,isNaN(a)||(b.restart(),this._paused||null==this._startTime||(this._startTime=this._timeline.currentTime-a/this._playbackRate),this._currentTimePending=!1,this._currentTime!=a&&(this._idle&&(this._idle=!1,this._paused=!0),this._tickCurrentTime(a,!0),b.applyDirtiedAnimation(this)))},get startTime(){return this._startTime},set startTime(a){a=+a,isNaN(a)||this._paused||this._idle||(this._startTime=a,this._tickCurrentTime((this._timeline.currentTime-this._startTime)*this.playbackRate),b.applyDirtiedAnimation(this))},get playbackRate(){return this._playbackRate},set playbackRate(a){if(a!=this._playbackRate){var c=this.currentTime;this._playbackRate=a,this._startTime=null,"paused"!=this.playState&&"idle"!=this.playState&&(this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),b.applyDirtiedAnimation(this)),null!=c&&(this.currentTime=c)}},get _isFinished(){return!this._idle&&(this._playbackRate>0&&this._currentTime>=this._totalDuration||this._playbackRate<0&&this._currentTime<=0)},get _totalDuration(){return this._effect._totalDuration},get playState(){return this._idle?"idle":null==this._startTime&&!this._paused&&0!=this.playbackRate||this._currentTimePending?"pending":this._paused?"paused":this._isFinished?"finished":"running"},_rewind:function(){if(this._playbackRate>=0)this._currentTime=0;else{if(!(this._totalDuration<1/0))throw new DOMException("Unable to rewind negative playback rate animation with infinite duration","InvalidStateError");this._currentTime=this._totalDuration}},play:function(){this._paused=!1,(this._isFinished||this._idle)&&(this._rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),b.applyDirtiedAnimation(this)},pause:function(){this._isFinished||this._paused||this._idle?this._idle&&(this._rewind(),this._idle=!1):this._currentTimePending=!0,this._startTime=null,this._paused=!0},finish:function(){this._idle||(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this._currentTimePending=!1,b.applyDirtiedAnimation(this))},cancel:function(){this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._isFinished=!0,this._finishedFlag=!0,this._currentTime=0,this._startTime=null,this._effect._update(null),b.applyDirtiedAnimation(this))},reverse:function(){this.playbackRate*=-1,this.play()},addEventListener:function(a,b){"function"==typeof b&&"finish"==a&&this._finishHandlers.push(b)},removeEventListener:function(a,b){if("finish"==a){var c=this._finishHandlers.indexOf(b);c>=0&&this._finishHandlers.splice(c,1)}},_fireEvents:function(a){if(this._isFinished){if(!this._finishedFlag){var b=new d(this,this._currentTime,a),c=this._finishHandlers.concat(this.onfinish?[this.onfinish]:[]);setTimeout(function(){c.forEach(function(a){a.call(b.target,b)})},0),this._finishedFlag=!0}}else this._finishedFlag=!1},_tick:function(a,b){this._idle||this._paused||(null==this._startTime?b&&(this.startTime=a-this._currentTime/this.playbackRate):this._isFinished||this._tickCurrentTime((a-this._startTime)*this.playbackRate)),b&&(this._currentTimePending=!1,this._fireEvents(a))},get _needsTick(){return this.playState in{pending:1,running:1}||!this._finishedFlag},_targetAnimations:function(){var a=this._effect._target;return a._activeAnimations||(a._activeAnimations=[]),a._activeAnimations},_markTarget:function(){var a=this._targetAnimations();-1===a.indexOf(this)&&a.push(this)},_unmarkTarget:function(){var a=this._targetAnimations(),b=a.indexOf(this);-1!==b&&a.splice(b,1)}}}(c,d),function(a,b,c){function d(a){var b=j;j=[],a<q.currentTime&&(a=q.currentTime),q._animations.sort(e),q._animations=h(a,!0,q._animations)[0],b.forEach(function(b){b[1](a)}),g(),l=void 0}function e(a,b){return a._sequenceNumber-b._sequenceNumber}function f(){this._animations=[],this.currentTime=window.performance&&performance.now?performance.now():0}function g(){o.forEach(function(a){a()}),o.length=0}function h(a,c,d){p=!0,n=!1,b.timeline.currentTime=a,m=!1;var e=[],f=[],g=[],h=[];return d.forEach(function(b){b._tick(a,c),b._inEffect?(f.push(b._effect),b._markTarget()):(e.push(b._effect),b._unmarkTarget()),b._needsTick&&(m=!0);var d=b._inEffect||b._needsTick;b._inTimeline=d,d?g.push(b):h.push(b)}),o.push.apply(o,e),o.push.apply(o,f),m&&requestAnimationFrame(function(){}),p=!1,[g,h]}var i=window.requestAnimationFrame,j=[],k=0;window.requestAnimationFrame=function(a){var b=k++;return 0==j.length&&i(d),j.push([b,a]),b},window.cancelAnimationFrame=function(a){j.forEach(function(b){b[0]==a&&(b[1]=function(){})})},f.prototype={_play:function(c){c._timing=a.normalizeTimingInput(c.timing);var d=new b.Animation(c);return d._idle=!1,d._timeline=this,this._animations.push(d),b.restart(),b.applyDirtiedAnimation(d),d}};var l=void 0,m=!1,n=!1;b.restart=function(){return m||(m=!0,requestAnimationFrame(function(){}),n=!0),n},b.applyDirtiedAnimation=function(a){if(!p){a._markTarget();var c=a._targetAnimations();c.sort(e),h(b.timeline.currentTime,!1,c.slice())[1].forEach(function(a){var b=q._animations.indexOf(a);-1!==b&&q._animations.splice(b,1)}),g()}};var o=[],p=!1,q=new f;b.timeline=q}(c,d),function(a){function b(a,b){var c=a.exec(b);if(c)return c=a.ignoreCase?c[0].toLowerCase():c[0],[c,b.substr(c.length)]}function c(a,b){b=b.replace(/^\s*/,"");var c=a(b);if(c)return[c[0],c[1].replace(/^\s*/,"")]}function d(a,d,e){a=c.bind(null,a);for(var f=[];;){var g=a(e);if(!g)return[f,e];if(f.push(g[0]),e=g[1],!(g=b(d,e))||""==g[1])return[f,e];e=g[1]}}function e(a,b){for(var c=0,d=0;d<b.length&&(!/\s|,/.test(b[d])||0!=c);d++)if("("==b[d])c++;else if(")"==b[d]&&(c--,0==c&&d++,c<=0))break;var e=a(b.substr(0,d));return void 0==e?void 0:[e,b.substr(d)]}function f(a,b){for(var c=a,d=b;c&&d;)c>d?c%=d:d%=c;return c=a*b/(c+d)}function g(a){return function(b){var c=a(b);return c&&(c[0]=void 0),c}}function h(a,b){return function(c){return a(c)||[b,c]}}function i(b,c){for(var d=[],e=0;e<b.length;e++){var f=a.consumeTrimmed(b[e],c);if(!f||""==f[0])return;void 0!==f[0]&&d.push(f[0]),c=f[1]}if(""==c)return d}function j(a,b,c,d,e){for(var g=[],h=[],i=[],j=f(d.length,e.length),k=0;k<j;k++){var l=b(d[k%d.length],e[k%e.length]);if(!l)return;g.push(l[0]),h.push(l[1]),i.push(l[2])}return[g,h,function(b){var d=b.map(function(a,b){return i[b](a)}).join(c);return a?a(d):d}]}function k(a,b,c){for(var d=[],e=[],f=[],g=0,h=0;h<c.length;h++)if("function"==typeof c[h]){var i=c[h](a[g],b[g++]);d.push(i[0]),e.push(i[1]),f.push(i[2])}else!function(a){d.push(!1),e.push(!1),f.push(function(){return c[a]})}(h);return[d,e,function(a){for(var b="",c=0;c<a.length;c++)b+=f[c](a[c]);return b}]}a.consumeToken=b,a.consumeTrimmed=c,a.consumeRepeated=d,a.consumeParenthesised=e,a.ignore=g,a.optional=h,a.consumeList=i,a.mergeNestedRepeated=j.bind(null,null),a.mergeWrappedNestedRepeated=j,a.mergeList=k}(d),function(a){function b(b){function c(b){var c=a.consumeToken(/^inset/i,b);if(c)return d.inset=!0,c;var c=a.consumeLengthOrPercent(b);if(c)return d.lengths.push(c[0]),c;var c=a.consumeColor(b);return c?(d.color=c[0],c):void 0}var d={inset:!1,lengths:[],color:null},e=a.consumeRepeated(c,/^/,b);if(e&&e[0].length)return[d,e[1]]}function c(c){var d=a.consumeRepeated(b,/^,/,c);if(d&&""==d[1])return d[0]}function d(b,c){for(;b.lengths.length<Math.max(b.lengths.length,c.lengths.length);)b.lengths.push({px:0});for(;c.lengths.length<Math.max(b.lengths.length,c.lengths.length);)c.lengths.push({px:0});if(b.inset==c.inset&&!!b.color==!!c.color){for(var d,e=[],f=[[],0],g=[[],0],h=0;h<b.lengths.length;h++){var i=a.mergeDimensions(b.lengths[h],c.lengths[h],2==h);f[0].push(i[0]),g[0].push(i[1]),e.push(i[2])}if(b.color&&c.color){var j=a.mergeColors(b.color,c.color);f[1]=j[0],g[1]=j[1],d=j[2]}return[f,g,function(a){for(var c=b.inset?"inset ":" ",f=0;f<e.length;f++)c+=e[f](a[0][f])+" ";return d&&(c+=d(a[1])),c}]}}function e(b,c,d,e){function f(a){return{inset:a,color:[0,0,0,0],lengths:[{px:0},{px:0},{px:0},{px:0}]}}for(var g=[],h=[],i=0;i<d.length||i<e.length;i++){var j=d[i]||f(e[i].inset),k=e[i]||f(d[i].inset);g.push(j),h.push(k)}return a.mergeNestedRepeated(b,c,g,h)}var f=e.bind(null,d,", ");a.addPropertiesHandler(c,f,["box-shadow","text-shadow"])}(d),function(a,b){function c(a){return a.toFixed(3).replace(/0+$/,"").replace(/\.$/,"")}function d(a,b,c){return Math.min(b,Math.max(a,c))}function e(a){if(/^\s*[-+]?(\d*\.)?\d+\s*$/.test(a))return Number(a)}function f(a,b){return[a,b,c]}function g(a,b){if(0!=a)return i(0,1/0)(a,b)}function h(a,b){return[a,b,function(a){return Math.round(d(1,1/0,a))}]}function i(a,b){return function(e,f){return[e,f,function(e){return c(d(a,b,e))}]}}function j(a){var b=a.trim().split(/\s*[\s,]\s*/);if(0!==b.length){for(var c=[],d=0;d<b.length;d++){var f=e(b[d]);if(void 0===f)return;c.push(f)}return c}}function k(a,b){if(a.length==b.length)return[a,b,function(a){return a.map(c).join(" ")}]}function l(a,b){return[a,b,Math.round]}a.clamp=d,a.addPropertiesHandler(j,k,["stroke-dasharray"]),a.addPropertiesHandler(e,i(0,1/0),["border-image-width","line-height"]),a.addPropertiesHandler(e,i(0,1),["opacity","shape-image-threshold"]),a.addPropertiesHandler(e,g,["flex-grow","flex-shrink"]),a.addPropertiesHandler(e,h,["orphans","widows"]),a.addPropertiesHandler(e,l,["z-index"]),a.parseNumber=e,a.parseNumberList=j,a.mergeNumbers=f,a.numberToString=c}(d),function(a,b){function c(a,b){if("visible"==a||"visible"==b)return[0,1,function(c){return c<=0?a:c>=1?b:"visible"}]}a.addPropertiesHandler(String,c,["visibility"])}(d),function(a,b){function c(a){a=a.trim(),f.fillStyle="#000",f.fillStyle=a;var b=f.fillStyle;if(f.fillStyle="#fff",f.fillStyle=a,b==f.fillStyle){f.fillRect(0,0,1,1);var c=f.getImageData(0,0,1,1).data;f.clearRect(0,0,1,1);var d=c[3]/255;return[c[0]*d,c[1]*d,c[2]*d,d]}}function d(b,c){return[b,c,function(b){function c(a){return Math.max(0,Math.min(255,a))}if(b[3])for(var d=0;d<3;d++)b[d]=Math.round(c(b[d]/b[3]));return b[3]=a.numberToString(a.clamp(0,1,b[3])),"rgba("+b.join(",")+")"}]}var e=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");e.width=e.height=1;var f=e.getContext("2d");a.addPropertiesHandler(c,d,["background-color","border-bottom-color","border-left-color","border-right-color","border-top-color","color","fill","flood-color","lighting-color","outline-color","stop-color","stroke","text-decoration-color"]),a.consumeColor=a.consumeParenthesised.bind(null,c),a.mergeColors=d}(d),function(a,b){function c(a,b){if("0"==(b=b.trim().toLowerCase())&&"px".search(a)>=0)return{px:0};if(/^[^(]*$|^calc/.test(b)){b=b.replace(/calc\(/g,"(");var c={};b=b.replace(a,function(a){return c[a]=null,"U"+a});for(var d="U("+a.source+")",e=b.replace(/[-+]?(\d*\.)?\d+/g,"N").replace(new RegExp("N"+d,"g"),"D").replace(/\s[+-]\s/g,"O").replace(/\s/g,""),f=[/N\*(D)/g,/(N|D)[*\/]N/g,/(N|D)O\1/g,/\((N|D)\)/g],g=0;g<f.length;)f[g].test(e)?(e=e.replace(f[g],"$1"),g=0):g++;if("D"==e){for(var h in c){var i=eval(b.replace(new RegExp("U"+h,"g"),"").replace(new RegExp(d,"g"),"*0"));if(!isFinite(i))return;c[h]=i}return c}}}function d(a,b){return e(a,b,!0)}function e(b,c,d){var e,f=[];for(e in b)f.push(e);for(e in c)f.indexOf(e)<0&&f.push(e);return b=f.map(function(a){return b[a]||0}),c=f.map(function(a){return c[a]||0}),[b,c,function(b){var c=b.map(function(c,e){return 1==b.length&&d&&(c=Math.max(c,0)),a.numberToString(c)+f[e]}).join(" + ");return b.length>1?"calc("+c+")":c}]}var f="px|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc",g=c.bind(null,new RegExp(f,"g")),h=c.bind(null,new RegExp(f+"|%","g")),i=c.bind(null,/deg|rad|grad|turn/g);a.parseLength=g,a.parseLengthOrPercent=h,a.consumeLengthOrPercent=a.consumeParenthesised.bind(null,h),a.parseAngle=i,a.mergeDimensions=e;var j=a.consumeParenthesised.bind(null,g),k=a.consumeRepeated.bind(void 0,j,/^/),l=a.consumeRepeated.bind(void 0,k,/^,/);a.consumeSizePairList=l;var m=function(a){var b=l(a);if(b&&""==b[1])return b[0]},n=a.mergeNestedRepeated.bind(void 0,d," "),o=a.mergeNestedRepeated.bind(void 0,n,",");a.mergeNonNegativeSizePair=n,a.addPropertiesHandler(m,o,["background-size"]),a.addPropertiesHandler(h,d,["border-bottom-width","border-image-width","border-left-width","border-right-width","border-top-width","flex-basis","font-size","height","line-height","max-height","max-width","outline-width","width"]),a.addPropertiesHandler(h,e,["border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","bottom","left","letter-spacing","margin-bottom","margin-left","margin-right","margin-top","min-height","min-width","outline-offset","padding-bottom","padding-left","padding-right","padding-top","perspective","right","shape-margin","stroke-dashoffset","text-indent","top","vertical-align","word-spacing"])}(d,f),function(a,b){function c(b){return a.consumeLengthOrPercent(b)||a.consumeToken(/^auto/,b)}function d(b){var d=a.consumeList([a.ignore(a.consumeToken.bind(null,/^rect/)),a.ignore(a.consumeToken.bind(null,/^\(/)),a.consumeRepeated.bind(null,c,/^,/),a.ignore(a.consumeToken.bind(null,/^\)/))],b);if(d&&4==d[0].length)return d[0]}function e(b,c){return"auto"==b||"auto"==c?[!0,!1,function(d){var e=d?b:c;if("auto"==e)return"auto";var f=a.mergeDimensions(e,e);return f[2](f[0])}]:a.mergeDimensions(b,c)}function f(a){return"rect("+a+")"}var g=a.mergeWrappedNestedRepeated.bind(null,f,e,", ");a.parseBox=d,a.mergeBoxes=g,a.addPropertiesHandler(d,g,["clip"])}(d),function(a,b){function c(a){return function(b){var c=0;return a.map(function(a){return a===k?b[c++]:a})}}function d(a){return a}function e(b){if("none"==(b=b.toLowerCase().trim()))return[];for(var c,d=/\s*(\w+)\(([^)]*)\)/g,e=[],f=0;c=d.exec(b);){if(c.index!=f)return;f=c.index+c[0].length;var g=c[1],h=n[g];if(!h)return;var i=c[2].split(","),j=h[0];if(j.length<i.length)return;for(var k=[],o=0;o<j.length;o++){var p,q=i[o],r=j[o];if(void 0===(p=q?{A:function(b){return"0"==b.trim()?m:a.parseAngle(b)},N:a.parseNumber,T:a.parseLengthOrPercent,L:a.parseLength}[r.toUpperCase()](q):{a:m,n:k[0],t:l}[r]))return;k.push(p)}if(e.push({t:g,d:k}),d.lastIndex==b.length)return e}}function f(a){return a.toFixed(6).replace(".000000","")}function g(b,c){if(b.decompositionPair!==c){b.decompositionPair=c;var d=a.makeMatrixDecomposition(b)}if(c.decompositionPair!==b){c.decompositionPair=b;var e=a.makeMatrixDecomposition(c)}return null==d[0]||null==e[0]?[[!1],[!0],function(a){return a?c[0].d:b[0].d}]:(d[0].push(0),e[0].push(1),[d,e,function(b){var c=a.quat(d[0][3],e[0][3],b[5]);return a.composeMatrix(b[0],b[1],b[2],c,b[4]).map(f).join(",")}])}function h(a){return a.replace(/[xy]/,"")}function i(a){return a.replace(/(x|y|z|3d)?$/,"3d")}function j(b,c){var d=a.makeMatrixDecomposition&&!0,e=!1;if(!b.length||!c.length){b.length||(e=!0,b=c,c=[]);for(var f=0;f<b.length;f++){var j=b[f].t,k=b[f].d,l="scale"==j.substr(0,5)?1:0;c.push({t:j,d:k.map(function(a){if("number"==typeof a)return l;var b={};for(var c in a)b[c]=l;return b})})}}var m=function(a,b){return"perspective"==a&&"perspective"==b||("matrix"==a||"matrix3d"==a)&&("matrix"==b||"matrix3d"==b)},o=[],p=[],q=[];if(b.length!=c.length){if(!d)return;var r=g(b,c);o=[r[0]],p=[r[1]],q=[["matrix",[r[2]]]]}else for(var f=0;f<b.length;f++){var j,s=b[f].t,t=c[f].t,u=b[f].d,v=c[f].d,w=n[s],x=n[t];if(m(s,t)){if(!d)return;var r=g([b[f]],[c[f]]);o.push(r[0]),p.push(r[1]),q.push(["matrix",[r[2]]])}else{if(s==t)j=s;else if(w[2]&&x[2]&&h(s)==h(t))j=h(s),u=w[2](u),v=x[2](v);else{if(!w[1]||!x[1]||i(s)!=i(t)){if(!d)return;var r=g(b,c);o=[r[0]],p=[r[1]],q=[["matrix",[r[2]]]];break}j=i(s),u=w[1](u),v=x[1](v)}for(var y=[],z=[],A=[],B=0;B<u.length;B++){var C="number"==typeof u[B]?a.mergeNumbers:a.mergeDimensions,r=C(u[B],v[B]);y[B]=r[0],z[B]=r[1],A.push(r[2])}o.push(y),p.push(z),q.push([j,A])}}if(e){var D=o;o=p,p=D}return[o,p,function(a){return a.map(function(a,b){var c=a.map(function(a,c){return q[b][1][c](a)}).join(",");return"matrix"==q[b][0]&&16==c.split(",").length&&(q[b][0]="matrix3d"),q[b][0]+"("+c+")"}).join(" ")}]}var k=null,l={px:0},m={deg:0},n={matrix:["NNNNNN",[k,k,0,0,k,k,0,0,0,0,1,0,k,k,0,1],d],matrix3d:["NNNNNNNNNNNNNNNN",d],rotate:["A"],rotatex:["A"],rotatey:["A"],rotatez:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",c([k,k,1]),d],scalex:["N",c([k,1,1]),c([k,1])],scaley:["N",c([1,k,1]),c([1,k])],scalez:["N",c([1,1,k])],scale3d:["NNN",d],skew:["Aa",null,d],skewx:["A",null,c([k,m])],skewy:["A",null,c([m,k])],translate:["Tt",c([k,k,l]),d],translatex:["T",c([k,l,l]),c([k,l])],translatey:["T",c([l,k,l]),c([l,k])],translatez:["L",c([l,l,k])],translate3d:["TTL",d]};a.addPropertiesHandler(e,j,["transform"])}(d),function(a,b){function c(a,b){b.concat([a]).forEach(function(b){b in document.documentElement.style&&(d[a]=b)})}var d={};c("transform",["webkitTransform","msTransform"]),c("transformOrigin",["webkitTransformOrigin"]),c("perspective",["webkitPerspective"]),c("perspectiveOrigin",["webkitPerspectiveOrigin"]),a.propertyName=function(a){return d[a]||a}}(d)}(),function(){if(void 0===document.createElement("div").animate([]).oncancel){var a;if(window.performance&&performance.now)var a=function(){return performance.now()};else var a=function(){return Date.now()};var b=function(a,b,c){this.target=a,this.currentTime=b,this.timelineTime=c,this.type="cancel",this.bubbles=!1,this.cancelable=!1,this.currentTarget=a,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()},c=window.Element.prototype.animate;window.Element.prototype.animate=function(d,e){var f=c.call(this,d,e);f._cancelHandlers=[],f.oncancel=null;var g=f.cancel;f.cancel=function(){g.call(this);var c=new b(this,null,a()),d=this._cancelHandlers.concat(this.oncancel?[this.oncancel]:[]);setTimeout(function(){d.forEach(function(a){a.call(c.target,c)})},0)};var h=f.addEventListener;f.addEventListener=function(a,b){"function"==typeof b&&"cancel"==a?this._cancelHandlers.push(b):h.call(this,a,b)};var i=f.removeEventListener;return f.removeEventListener=function(a,b){if("cancel"==a){var c=this._cancelHandlers.indexOf(b);c>=0&&this._cancelHandlers.splice(c,1)}else i.call(this,a,b)},f}}}(),function(a){var b=document.documentElement,c=null,d=!1;try{var e=getComputedStyle(b).getPropertyValue("opacity"),f="0"==e?"1":"0";c=b.animate({opacity:[f,f]},{duration:1}),c.currentTime=0,d=getComputedStyle(b).getPropertyValue("opacity")==f}catch(a){}finally{c&&c.cancel()}if(!d){var g=window.Element.prototype.animate;window.Element.prototype.animate=function(b,c){return window.Symbol&&Symbol.iterator&&Array.prototype.from&&b[Symbol.iterator]&&(b=Array.from(b)),Array.isArray(b)||null===b||(b=a.convertToArrayForm(b)),g.call(this,b,c)}}}(c),function(a,b,c){function d(a){var c=b.timeline;c.currentTime=a,c._discardAnimations(),0==c._animations.length?f=!1:requestAnimationFrame(d)}var e=window.requestAnimationFrame;window.requestAnimationFrame=function(a){return e(function(c){b.timeline._updateAnimationsPromises(),a(c),b.timeline._updateAnimationsPromises()})},b.AnimationTimeline=function(){this._animations=[],this.currentTime=void 0},b.AnimationTimeline.prototype={getAnimations:function(){return this._discardAnimations(),this._animations.slice()},_updateAnimationsPromises:function(){b.animationsWithPromises=b.animationsWithPromises.filter(function(a){return a._updatePromises()})},_discardAnimations:function(){this._updateAnimationsPromises(),this._animations=this._animations.filter(function(a){return"finished"!=a.playState&&"idle"!=a.playState})},_play:function(a){var c=new b.Animation(a,this);return this._animations.push(c),b.restartWebAnimationsNextTick(),c._updatePromises(),c._animation.play(),c._updatePromises(),c},play:function(a){return a&&a.remove(),this._play(a)}};var f=!1;b.restartWebAnimationsNextTick=function(){f||(f=!0,requestAnimationFrame(d))};var g=new b.AnimationTimeline;b.timeline=g;try{Object.defineProperty(window.document,"timeline",{configurable:!0,get:function(){return g}})}catch(a){}try{window.document.timeline=g}catch(a){}}(0,e),function(a,b,c){b.animationsWithPromises=[],b.Animation=function(b,c){if(this.id="",b&&b._id&&(this.id=b._id),this.effect=b,b&&(b._animation=this),!c)throw new Error("Animation with null timeline is not supported");this._timeline=c,this._sequenceNumber=a.sequenceNumber++,this._holdTime=0,this._paused=!1,this._isGroup=!1,this._animation=null,this._childAnimations=[],this._callback=null,this._oldPlayState="idle",this._rebuildUnderlyingAnimation(),this._animation.cancel(),this._updatePromises()},b.Animation.prototype={_updatePromises:function(){var a=this._oldPlayState,b=this.playState;return this._readyPromise&&b!==a&&("idle"==b?(this._rejectReadyPromise(),this._readyPromise=void 0):"pending"==a?this._resolveReadyPromise():"pending"==b&&(this._readyPromise=void 0)),this._finishedPromise&&b!==a&&("idle"==b?(this._rejectFinishedPromise(),this._finishedPromise=void 0):"finished"==b?this._resolveFinishedPromise():"finished"==a&&(this._finishedPromise=void 0)),this._oldPlayState=this.playState,this._readyPromise||this._finishedPromise},_rebuildUnderlyingAnimation:function(){this._updatePromises();var a,c,d,e,f=!!this._animation;f&&(a=this.playbackRate,c=this._paused,d=this.startTime,e=this.currentTime,this._animation.cancel(),this._animation._wrapper=null,this._animation=null),(!this.effect||this.effect instanceof window.KeyframeEffect)&&(this._animation=b.newUnderlyingAnimationForKeyframeEffect(this.effect),b.bindAnimationForKeyframeEffect(this)),(this.effect instanceof window.SequenceEffect||this.effect instanceof window.GroupEffect)&&(this._animation=b.newUnderlyingAnimationForGroup(this.effect),b.bindAnimationForGroup(this)),this.effect&&this.effect._onsample&&b.bindAnimationForCustomEffect(this),f&&(1!=a&&(this.playbackRate=a),null!==d?this.startTime=d:null!==e?this.currentTime=e:null!==this._holdTime&&(this.currentTime=this._holdTime),c&&this.pause()),this._updatePromises()},_updateChildren:function(){if(this.effect&&"idle"!=this.playState){var a=this.effect._timing.delay;this._childAnimations.forEach(function(c){this._arrangeChildren(c,a),this.effect instanceof window.SequenceEffect&&(a+=b.groupChildDuration(c.effect))}.bind(this))}},_setExternalAnimation:function(a){if(this.effect&&this._isGroup)for(var b=0;b<this.effect.children.length;b++)this.effect.children[b]._animation=a,this._childAnimations[b]._setExternalAnimation(a)},_constructChildAnimations:function(){if(this.effect&&this._isGroup){var a=this.effect._timing.delay;this._removeChildAnimations(),this.effect.children.forEach(function(c){var d=b.timeline._play(c);this._childAnimations.push(d),d.playbackRate=this.playbackRate,this._paused&&d.pause(),c._animation=this.effect._animation,this._arrangeChildren(d,a),this.effect instanceof window.SequenceEffect&&(a+=b.groupChildDuration(c))}.bind(this))}},_arrangeChildren:function(a,b){null===this.startTime?a.currentTime=this.currentTime-b/this.playbackRate:a.startTime!==this.startTime+b/this.playbackRate&&(a.startTime=this.startTime+b/this.playbackRate)},get timeline(){return this._timeline},get playState(){return this._animation?this._animation.playState:"idle"},get finished(){return window.Promise?(this._finishedPromise||(-1==b.animationsWithPromises.indexOf(this)&&b.animationsWithPromises.push(this),this._finishedPromise=new Promise(function(a,b){this._resolveFinishedPromise=function(){a(this)},this._rejectFinishedPromise=function(){b({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"finished"==this.playState&&this._resolveFinishedPromise()),this._finishedPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get ready(){return window.Promise?(this._readyPromise||(-1==b.animationsWithPromises.indexOf(this)&&b.animationsWithPromises.push(this),this._readyPromise=new Promise(function(a,b){this._resolveReadyPromise=function(){a(this)},this._rejectReadyPromise=function(){b({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"pending"!==this.playState&&this._resolveReadyPromise()),this._readyPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get onfinish(){return this._animation.onfinish},set onfinish(a){this._animation.onfinish="function"==typeof a?function(b){b.target=this,a.call(this,b)}.bind(this):a},get oncancel(){return this._animation.oncancel},set oncancel(a){this._animation.oncancel="function"==typeof a?function(b){b.target=this,a.call(this,b)}.bind(this):a},get currentTime(){this._updatePromises();var a=this._animation.currentTime;return this._updatePromises(),a},set currentTime(a){this._updatePromises(),this._animation.currentTime=isFinite(a)?a:Math.sign(a)*Number.MAX_VALUE,this._register(),this._forEachChild(function(b,c){b.currentTime=a-c}),this._updatePromises()},get startTime(){return this._animation.startTime},set startTime(a){this._updatePromises(),this._animation.startTime=isFinite(a)?a:Math.sign(a)*Number.MAX_VALUE,this._register(),this._forEachChild(function(b,c){b.startTime=a+c}),this._updatePromises()},get playbackRate(){return this._animation.playbackRate},set playbackRate(a){this._updatePromises();var b=this.currentTime;this._animation.playbackRate=a,this._forEachChild(function(b){b.playbackRate=a}),null!==b&&(this.currentTime=b),this._updatePromises()},play:function(){this._updatePromises(),this._paused=!1,this._animation.play(),-1==this._timeline._animations.indexOf(this)&&this._timeline._animations.push(this),this._register(),b.awaitStartTime(this),this._forEachChild(function(a){var b=a.currentTime;a.play(),a.currentTime=b}),this._updatePromises()},pause:function(){this._updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),this._animation.pause(),this._register(),this._forEachChild(function(a){a.pause()}),this._paused=!0,this._updatePromises()},finish:function(){this._updatePromises(),this._animation.finish(),this._register(),this._updatePromises()},cancel:function(){this._updatePromises(),this._animation.cancel(),this._register(),this._removeChildAnimations(),this._updatePromises()},reverse:function(){this._updatePromises();var a=this.currentTime;this._animation.reverse(),this._forEachChild(function(a){a.reverse()}),null!==a&&(this.currentTime=a),this._updatePromises()},addEventListener:function(a,b){var c=b;"function"==typeof b&&(c=function(a){a.target=this,b.call(this,a)}.bind(this),b._wrapper=c),this._animation.addEventListener(a,c)},removeEventListener:function(a,b){this._animation.removeEventListener(a,b&&b._wrapper||b)},_removeChildAnimations:function(){for(;this._childAnimations.length;)this._childAnimations.pop().cancel()},_forEachChild:function(b){var c=0;if(this.effect.children&&this._childAnimations.length<this.effect.children.length&&this._constructChildAnimations(),this._childAnimations.forEach(function(a){b.call(this,a,c),this.effect instanceof window.SequenceEffect&&(c+=a.effect.activeDuration)}.bind(this)),"pending"!=this.playState){var d=this.effect._timing,e=this.currentTime;null!==e&&(e=a.calculateIterationProgress(a.calculateActiveDuration(d),e,d)),(null==e||isNaN(e))&&this._removeChildAnimations()}}},window.Animation=b.Animation}(c,e),function(a,b,c){function d(b){this._frames=a.normalizeKeyframes(b)}function e(){for(var a=!1;i.length;)i.shift()._updateChildren(),a=!0;return a}var f=function(a){if(a._animation=void 0,a instanceof window.SequenceEffect||a instanceof window.GroupEffect)for(var b=0;b<a.children.length;b++)f(a.children[b])};b.removeMulti=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];d._parent?(-1==b.indexOf(d._parent)&&b.push(d._parent),d._parent.children.splice(d._parent.children.indexOf(d),1),d._parent=null,f(d)):d._animation&&d._animation.effect==d&&(d._animation.cancel(),d._animation.effect=new KeyframeEffect(null,[]),d._animation._callback&&(d._animation._callback._animation=null),d._animation._rebuildUnderlyingAnimation(),f(d))}for(c=0;c<b.length;c++)b[c]._rebuild()},b.KeyframeEffect=function(b,c,e,f){return this.target=b,this._parent=null,e=a.numericTimingToObject(e),this._timingInput=a.cloneTimingInput(e),this._timing=a.normalizeTimingInput(e),this.timing=a.makeTiming(e,!1,this),this.timing._effect=this,"function"==typeof c?(a.deprecated("Custom KeyframeEffect","2015-06-22","Use KeyframeEffect.onsample instead."),this._normalizedKeyframes=c):this._normalizedKeyframes=new d(c),this._keyframes=c,this.activeDuration=a.calculateActiveDuration(this._timing),this._id=f,this},b.KeyframeEffect.prototype={getFrames:function(){return"function"==typeof this._normalizedKeyframes?this._normalizedKeyframes:this._normalizedKeyframes._frames},set onsample(a){if("function"==typeof this.getFrames())throw new Error("Setting onsample on custom effect KeyframeEffect is not supported.");this._onsample=a,this._animation&&this._animation._rebuildUnderlyingAnimation()},get parent(){return this._parent},clone:function(){if("function"==typeof this.getFrames())throw new Error("Cloning custom effects is not supported.");var b=new KeyframeEffect(this.target,[],a.cloneTimingInput(this._timingInput),this._id);return b._normalizedKeyframes=this._normalizedKeyframes,b._keyframes=this._keyframes,b},remove:function(){b.removeMulti([this])}};var g=Element.prototype.animate;Element.prototype.animate=function(a,c){var d="";return c&&c.id&&(d=c.id),b.timeline._play(new b.KeyframeEffect(this,a,c,d))};var h=document.createElementNS("http://www.w3.org/1999/xhtml","div");b.newUnderlyingAnimationForKeyframeEffect=function(a){if(a){var b=a.target||h,c=a._keyframes;"function"==typeof c&&(c=[]);var d=a._timingInput;d.id=a._id}else var b=h,c=[],d=0;return g.apply(b,[c,d])},b.bindAnimationForKeyframeEffect=function(a){a.effect&&"function"==typeof a.effect._normalizedKeyframes&&b.bindAnimationForCustomEffect(a)};var i=[];b.awaitStartTime=function(a){null===a.startTime&&a._isGroup&&(0==i.length&&requestAnimationFrame(e),i.push(a))};var j=window.getComputedStyle;Object.defineProperty(window,"getComputedStyle",{configurable:!0,enumerable:!0,value:function(){b.timeline._updateAnimationsPromises();var a=j.apply(this,arguments);return e()&&(a=j.apply(this,arguments)),b.timeline._updateAnimationsPromises(),a}}),window.KeyframeEffect=b.KeyframeEffect,window.Element.prototype.getAnimations=function(){return document.timeline.getAnimations().filter(function(a){return null!==a.effect&&a.effect.target==this}.bind(this))}}(c,e),function(a,b,c){function d(a){a._registered||(a._registered=!0,g.push(a),h||(h=!0,requestAnimationFrame(e)))}function e(a){var b=g;g=[],b.sort(function(a,b){return a._sequenceNumber-b._sequenceNumber}),b=b.filter(function(a){a();var b=a._animation?a._animation.playState:"idle";return"running"!=b&&"pending"!=b&&(a._registered=!1),a._registered}),g.push.apply(g,b),g.length?(h=!0,requestAnimationFrame(e)):h=!1}var f=(document.createElementNS("http://www.w3.org/1999/xhtml","div"),0);b.bindAnimationForCustomEffect=function(b){var c,e=b.effect.target,g="function"==typeof b.effect.getFrames();c=g?b.effect.getFrames():b.effect._onsample;var h=b.effect.timing,i=null;h=a.normalizeTimingInput(h);var j=function(){var d=j._animation?j._animation.currentTime:null;null!==d&&(d=a.calculateIterationProgress(a.calculateActiveDuration(h),d,h),isNaN(d)&&(d=null)),d!==i&&(g?c(d,e,b.effect):c(d,b.effect,b.effect._animation)),i=d};j._animation=b,j._registered=!1,j._sequenceNumber=f++,b._callback=j,d(j)};var g=[],h=!1;b.Animation.prototype._register=function(){this._callback&&d(this._callback)}}(c,e),function(a,b,c){function d(a){return a._timing.delay+a.activeDuration+a._timing.endDelay}function e(b,c,d){this._id=d,this._parent=null,this.children=b||[],this._reparent(this.children),c=a.numericTimingToObject(c),this._timingInput=a.cloneTimingInput(c),this._timing=a.normalizeTimingInput(c,!0),this.timing=a.makeTiming(c,!0,this),this.timing._effect=this,"auto"===this._timing.duration&&(this._timing.duration=this.activeDuration)}window.SequenceEffect=function(){e.apply(this,arguments)},window.GroupEffect=function(){e.apply(this,arguments)},e.prototype={_isAncestor:function(a){for(var b=this;null!==b;){if(b==a)return!0;b=b._parent}return!1},_rebuild:function(){for(var a=this;a;)"auto"===a.timing.duration&&(a._timing.duration=a.activeDuration),a=a._parent;this._animation&&this._animation._rebuildUnderlyingAnimation()},_reparent:function(a){b.removeMulti(a);for(var c=0;c<a.length;c++)a[c]._parent=this},_putChild:function(a,b){for(var c=b?"Cannot append an ancestor or self":"Cannot prepend an ancestor or self",d=0;d<a.length;d++)if(this._isAncestor(a[d]))throw{type:DOMException.HIERARCHY_REQUEST_ERR,name:"HierarchyRequestError",message:c};for(var d=0;d<a.length;d++)b?this.children.push(a[d]):this.children.unshift(a[d]);this._reparent(a),this._rebuild()},append:function(){this._putChild(arguments,!0)},prepend:function(){this._putChild(arguments,!1)},get parent(){return this._parent},get firstChild(){return this.children.length?this.children[0]:null},get lastChild(){return this.children.length?this.children[this.children.length-1]:null},clone:function(){for(var b=a.cloneTimingInput(this._timingInput),c=[],d=0;d<this.children.length;d++)c.push(this.children[d].clone());return this instanceof GroupEffect?new GroupEffect(c,b):new SequenceEffect(c,b)},remove:function(){b.removeMulti([this])}},window.SequenceEffect.prototype=Object.create(e.prototype),Object.defineProperty(window.SequenceEffect.prototype,"activeDuration",{get:function(){var a=0;return this.children.forEach(function(b){a+=d(b)}),Math.max(a,0)}}),window.GroupEffect.prototype=Object.create(e.prototype),Object.defineProperty(window.GroupEffect.prototype,"activeDuration",{get:function(){var a=0;return this.children.forEach(function(b){a=Math.max(a,d(b))}),a}}),b.newUnderlyingAnimationForGroup=function(c){var d,e=null,f=function(b){var c=d._wrapper;if(c&&"pending"!=c.playState&&c.effect)return null==b?void c._removeChildAnimations():0==b&&c.playbackRate<0&&(e||(e=a.normalizeTimingInput(c.effect.timing)),b=a.calculateIterationProgress(a.calculateActiveDuration(e),-1,e),isNaN(b)||null==b)?(c._forEachChild(function(a){a.currentTime=-1}),void c._removeChildAnimations()):void 0},g=new KeyframeEffect(null,[],c._timing,c._id);return g.onsample=f,d=b.timeline._play(g)},b.bindAnimationForGroup=function(a){a._animation._wrapper=a,a._isGroup=!0,b.awaitStartTime(a),a._constructChildAnimations(),a._setExternalAnimation(a)},b.groupChildDuration=d}(c,e),b.true=a}({},function(){return this}());
+!function(a,b){var c={},d={},e={};!function(a,b){function c(a){if("number"==typeof a)return a;var b={};for(var c in a)b[c]=a[c];return b}function d(){this._delay=0,this._endDelay=0,this._fill="none",this._iterationStart=0,this._iterations=1,this._duration=0,this._playbackRate=1,this._direction="normal",this._easing="linear",this._easingFunction=x}function e(){return a.isDeprecated("Invalid timing inputs","2016-03-02","TypeError exceptions will be thrown instead.",!0)}function f(b,c,e){var f=new d;return c&&(f.fill="both",f.duration="auto"),"number"!=typeof b||isNaN(b)?void 0!==b&&Object.getOwnPropertyNames(b).forEach(function(c){if("auto"!=b[c]){if(("number"==typeof f[c]||"duration"==c)&&("number"!=typeof b[c]||isNaN(b[c])))return;if("fill"==c&&-1==v.indexOf(b[c]))return;if("direction"==c&&-1==w.indexOf(b[c]))return;if("playbackRate"==c&&1!==b[c]&&a.isDeprecated("AnimationEffectTiming.playbackRate","2014-11-28","Use Animation.playbackRate instead."))return;f[c]=b[c]}}):f.duration=b,f}function g(a){return"number"==typeof a&&(a=isNaN(a)?{duration:0}:{duration:a}),a}function h(b,c){return b=a.numericTimingToObject(b),f(b,c)}function i(a,b,c,d){return a<0||a>1||c<0||c>1?x:function(e){function f(a,b,c){return 3*a*(1-c)*(1-c)*c+3*b*(1-c)*c*c+c*c*c}if(e<=0){var g=0;return a>0?g=b/a:!b&&c>0&&(g=d/c),g*e}if(e>=1){var h=0;return c<1?h=(d-1)/(c-1):1==c&&a<1&&(h=(b-1)/(a-1)),1+h*(e-1)}for(var i=0,j=1;i<j;){var k=(i+j)/2,l=f(a,c,k);if(Math.abs(e-l)<1e-5)return f(b,d,k);l<e?i=k:j=k}return f(b,d,k)}}function j(a,b){return function(c){if(c>=1)return 1;var d=1/a;return(c+=b*d)-c%d}}function k(a){C||(C=document.createElement("div").style),C.animationTimingFunction="",C.animationTimingFunction=a;var b=C.animationTimingFunction;if(""==b&&e())throw new TypeError(a+" is not a valid value for easing");return b}function l(a){if("linear"==a)return x;var b=E.exec(a);if(b)return i.apply(this,b.slice(1).map(Number));var c=F.exec(a);return c?j(Number(c[1]),{start:y,middle:z,end:A}[c[2]]):B[a]||x}function m(a){return Math.abs(n(a)/a.playbackRate)}function n(a){return 0===a.duration||0===a.iterations?0:a.duration*a.iterations}function o(a,b,c){if(null==b)return G;var d=c.delay+a+c.endDelay;return b<Math.min(c.delay,d)?H:b>=Math.min(c.delay+a,d)?I:J}function p(a,b,c,d,e){switch(d){case H:return"backwards"==b||"both"==b?0:null;case J:return c-e;case I:return"forwards"==b||"both"==b?a:null;case G:return null}}function q(a,b,c,d,e){var f=e;return 0===a?b!==H&&(f+=c):f+=d/a,f}function r(a,b,c,d,e,f){var g=a===1/0?b%1:a%1;return 0!==g||c!==I||0===d||0===e&&0!==f||(g=1),g}function s(a,b,c,d){return a===I&&b===1/0?1/0:1===c?Math.floor(d)-1:Math.floor(d)}function t(a,b,c){var d=a;if("normal"!==a&&"reverse"!==a){var e=b;"alternate-reverse"===a&&(e+=1),d="normal",e!==1/0&&e%2!=0&&(d="reverse")}return"normal"===d?c:1-c}function u(a,b,c){var d=o(a,b,c),e=p(a,c.fill,b,d,c.delay);if(null===e)return null;var f=q(c.duration,d,c.iterations,e,c.iterationStart),g=r(f,c.iterationStart,d,c.iterations,e,c.duration),h=s(d,c.iterations,g,f),i=t(c.direction,h,g);return c._easingFunction(i)}var v="backwards|forwards|both|none".split("|"),w="reverse|alternate|alternate-reverse".split("|"),x=function(a){return a};d.prototype={_setMember:function(b,c){this["_"+b]=c,this._effect&&(this._effect._timingInput[b]=c,this._effect._timing=a.normalizeTimingInput(this._effect._timingInput),this._effect.activeDuration=a.calculateActiveDuration(this._effect._timing),this._effect._animation&&this._effect._animation._rebuildUnderlyingAnimation())},get playbackRate(){return this._playbackRate},set delay(a){this._setMember("delay",a)},get delay(){return this._delay},set endDelay(a){this._setMember("endDelay",a)},get endDelay(){return this._endDelay},set fill(a){this._setMember("fill",a)},get fill(){return this._fill},set iterationStart(a){if((isNaN(a)||a<0)&&e())throw new TypeError("iterationStart must be a non-negative number, received: "+timing.iterationStart);this._setMember("iterationStart",a)},get iterationStart(){return this._iterationStart},set duration(a){if("auto"!=a&&(isNaN(a)||a<0)&&e())throw new TypeError("duration must be non-negative or auto, received: "+a);this._setMember("duration",a)},get duration(){return this._duration},set direction(a){this._setMember("direction",a)},get direction(){return this._direction},set easing(a){this._easingFunction=l(k(a)),this._setMember("easing",a)},get easing(){return this._easing},set iterations(a){if((isNaN(a)||a<0)&&e())throw new TypeError("iterations must be non-negative, received: "+a);this._setMember("iterations",a)},get iterations(){return this._iterations}};var y=1,z=.5,A=0,B={ease:i(.25,.1,.25,1),"ease-in":i(.42,0,1,1),"ease-out":i(0,0,.58,1),"ease-in-out":i(.42,0,.58,1),"step-start":j(1,y),"step-middle":j(1,z),"step-end":j(1,A)},C=null,D="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",E=new RegExp("cubic-bezier\\("+D+","+D+","+D+","+D+"\\)"),F=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/,G=0,H=1,I=2,J=3;a.cloneTimingInput=c,a.makeTiming=f,a.numericTimingToObject=g,a.normalizeTimingInput=h,a.calculateActiveDuration=m,a.calculateIterationProgress=u,a.calculatePhase=o,a.normalizeEasing=k,a.parseEasingFunction=l}(c),function(a,b){function c(a,b){return a in k?k[a][b]||b:b}function d(a){return"display"===a||0===a.lastIndexOf("animation",0)||0===a.lastIndexOf("transition",0)}function e(a,b,e){if(!d(a)){var f=h[a];if(f){i.style[a]=b;for(var g in f){var j=f[g],k=i.style[j];e[j]=c(j,k)}}else e[a]=c(a,b)}}function f(a){var b=[];for(var c in a)if(!(c in["easing","offset","composite"])){var d=a[c];Array.isArray(d)||(d=[d]);for(var e,f=d.length,g=0;g<f;g++)e={},e.offset="offset"in a?a.offset:1==f?1:g/(f-1),"easing"in a&&(e.easing=a.easing),"composite"in a&&(e.composite=a.composite),e[c]=d[g],b.push(e)}return b.sort(function(a,b){return a.offset-b.offset}),b}function g(b){function c(){var a=d.length;null==d[a-1].offset&&(d[a-1].offset=1),a>1&&null==d[0].offset&&(d[0].offset=0);for(var b=0,c=d[0].offset,e=1;e<a;e++){var f=d[e].offset;if(null!=f){for(var g=1;g<e-b;g++)d[b+g].offset=c+(f-c)*g/(e-b);b=e,c=f}}}if(null==b)return[];window.Symbol&&Symbol.iterator&&Array.prototype.from&&b[Symbol.iterator]&&(b=Array.from(b)),Array.isArray(b)||(b=f(b));for(var d=b.map(function(b){var c={};for(var d in b){var f=b[d];if("offset"==d){if(null!=f){if(f=Number(f),!isFinite(f))throw new TypeError("Keyframe offsets must be numbers.");if(f<0||f>1)throw new TypeError("Keyframe offsets must be between 0 and 1.")}}else if("composite"==d){if("add"==f||"accumulate"==f)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"add compositing is not supported"};if("replace"!=f)throw new TypeError("Invalid composite mode "+f+".")}else f="easing"==d?a.normalizeEasing(f):""+f;e(d,f,c)}return void 0==c.offset&&(c.offset=null),void 0==c.easing&&(c.easing="linear"),c}),g=!0,h=-1/0,i=0;i<d.length;i++){var j=d[i].offset;if(null!=j){if(j<h)throw new TypeError("Keyframes are not loosely sorted by offset. Sort or specify offsets.");h=j}else g=!1}return d=d.filter(function(a){return a.offset>=0&&a.offset<=1}),g||c(),d}var h={background:["backgroundImage","backgroundPosition","backgroundSize","backgroundRepeat","backgroundAttachment","backgroundOrigin","backgroundClip","backgroundColor"],border:["borderTopColor","borderTopStyle","borderTopWidth","borderRightColor","borderRightStyle","borderRightWidth","borderBottomColor","borderBottomStyle","borderBottomWidth","borderLeftColor","borderLeftStyle","borderLeftWidth"],borderBottom:["borderBottomWidth","borderBottomStyle","borderBottomColor"],borderColor:["borderTopColor","borderRightColor","borderBottomColor","borderLeftColor"],borderLeft:["borderLeftWidth","borderLeftStyle","borderLeftColor"],borderRadius:["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],borderRight:["borderRightWidth","borderRightStyle","borderRightColor"],borderTop:["borderTopWidth","borderTopStyle","borderTopColor"],borderWidth:["borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth"],flex:["flexGrow","flexShrink","flexBasis"],font:["fontFamily","fontSize","fontStyle","fontVariant","fontWeight","lineHeight"],margin:["marginTop","marginRight","marginBottom","marginLeft"],outline:["outlineColor","outlineStyle","outlineWidth"],padding:["paddingTop","paddingRight","paddingBottom","paddingLeft"]},i=document.createElementNS("http://www.w3.org/1999/xhtml","div"),j={thin:"1px",medium:"3px",thick:"5px"},k={borderBottomWidth:j,borderLeftWidth:j,borderRightWidth:j,borderTopWidth:j,fontSize:{"xx-small":"60%","x-small":"75%",small:"89%",medium:"100%",large:"120%","x-large":"150%","xx-large":"200%"},fontWeight:{normal:"400",bold:"700"},outlineWidth:j,textShadow:{none:"0px 0px 0px transparent"},boxShadow:{none:"0px 0px 0px 0px transparent"}};a.convertToArrayForm=f,a.normalizeKeyframes=g}(c),function(a){var b={};a.isDeprecated=function(a,c,d,e){var f=e?"are":"is",g=new Date,h=new Date(c);return h.setMonth(h.getMonth()+3),!(g<h&&(a in b||console.warn("Web Animations: "+a+" "+f+" deprecated and will stop working on "+h.toDateString()+". "+d),b[a]=!0,1))},a.deprecated=function(b,c,d,e){var f=e?"are":"is";if(a.isDeprecated(b,c,d,e))throw new Error(b+" "+f+" no longer supported. "+d)}}(c),function(){if(document.documentElement.animate){var a=document.documentElement.animate([],0),b=!0;if(a&&(b=!1,"play|currentTime|pause|reverse|playbackRate|cancel|finish|startTime|playState".split("|").forEach(function(c){void 0===a[c]&&(b=!0)})),!b)return}!function(a,b,c){function d(a){for(var b={},c=0;c<a.length;c++)for(var d in a[c])if("offset"!=d&&"easing"!=d&&"composite"!=d){var e={offset:a[c].offset,easing:a[c].easing,value:a[c][d]};b[d]=b[d]||[],b[d].push(e)}for(var f in b){var g=b[f];if(0!=g[0].offset||1!=g[g.length-1].offset)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"Partial keyframes are not supported"}}return b}function e(c){var d=[];for(var e in c)for(var f=c[e],g=0;g<f.length-1;g++){var h=g,i=g+1,j=f[h].offset,k=f[i].offset,l=j,m=k;0==g&&(l=-1/0,0==k&&(i=h)),g==f.length-2&&(m=1/0,1==j&&(h=i)),d.push({applyFrom:l,applyTo:m,startOffset:f[h].offset,endOffset:f[i].offset,easingFunction:a.parseEasingFunction(f[h].easing),property:e,interpolation:b.propertyInterpolation(e,f[h].value,f[i].value)})}return d.sort(function(a,b){return a.startOffset-b.startOffset}),d}b.convertEffectInput=function(c){var f=a.normalizeKeyframes(c),g=d(f),h=e(g);return function(a,c){if(null!=c)h.filter(function(a){return c>=a.applyFrom&&c<a.applyTo}).forEach(function(d){var e=c-d.startOffset,f=d.endOffset-d.startOffset,g=0==f?0:d.easingFunction(e/f);b.apply(a,d.property,d.interpolation(g))});else for(var d in g)"offset"!=d&&"easing"!=d&&"composite"!=d&&b.clear(a,d)}}}(c,d),function(a,b,c){function d(a){return a.replace(/-(.)/g,function(a,b){return b.toUpperCase()})}function e(a,b,c){h[c]=h[c]||[],h[c].push([a,b])}function f(a,b,c){for(var f=0;f<c.length;f++){e(a,b,d(c[f]))}}function g(c,e,f){var g=c;/-/.test(c)&&!a.isDeprecated("Hyphenated property names","2016-03-22","Use camelCase instead.",!0)&&(g=d(c)),"initial"!=e&&"initial"!=f||("initial"==e&&(e=i[g]),"initial"==f&&(f=i[g]));for(var j=e==f?[]:h[g],k=0;j&&k<j.length;k++){var l=j[k][0](e),m=j[k][0](f);if(void 0!==l&&void 0!==m){var n=j[k][1](l,m);if(n){var o=b.Interpolation.apply(null,n);return function(a){return 0==a?e:1==a?f:o(a)}}}}return b.Interpolation(!1,!0,function(a){return a?f:e})}var h={};b.addPropertiesHandler=f;var i={backgroundColor:"transparent",backgroundPosition:"0% 0%",borderBottomColor:"currentColor",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px",borderBottomWidth:"3px",borderLeftColor:"currentColor",borderLeftWidth:"3px",borderRightColor:"currentColor",borderRightWidth:"3px",borderSpacing:"2px",borderTopColor:"currentColor",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderTopWidth:"3px",bottom:"auto",clip:"rect(0px, 0px, 0px, 0px)",color:"black",fontSize:"100%",fontWeight:"400",height:"auto",left:"auto",letterSpacing:"normal",lineHeight:"120%",marginBottom:"0px",marginLeft:"0px",marginRight:"0px",marginTop:"0px",maxHeight:"none",maxWidth:"none",minHeight:"0px",minWidth:"0px",opacity:"1.0",outlineColor:"invert",outlineOffset:"0px",outlineWidth:"3px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",paddingTop:"0px",right:"auto",strokeDasharray:"none",strokeDashoffset:"0px",textIndent:"0px",textShadow:"0px 0px 0px transparent",top:"auto",transform:"",verticalAlign:"0px",visibility:"visible",width:"auto",wordSpacing:"normal",zIndex:"auto"};b.propertyInterpolation=g}(c,d),function(a,b,c){function d(b){var c=a.calculateActiveDuration(b),d=function(d){return a.calculateIterationProgress(c,d,b)};return d._totalDuration=b.delay+c+b.endDelay,d}b.KeyframeEffect=function(c,e,f,g){var h,i=d(a.normalizeTimingInput(f)),j=b.convertEffectInput(e),k=function(){j(c,h)};return k._update=function(a){return null!==(h=i(a))},k._clear=function(){j(c,null)},k._hasSameTarget=function(a){return c===a},k._target=c,k._totalDuration=i._totalDuration,k._id=g,k}}(c,d),function(a,b){a.apply=function(b,c,d){b.style[a.propertyName(c)]=d},a.clear=function(b,c){b.style[a.propertyName(c)]=""}}(d),function(a){window.Element.prototype.animate=function(b,c){var d="";return c&&c.id&&(d=c.id),a.timeline._play(a.KeyframeEffect(this,b,c,d))}}(d),function(a,b){function c(a,b,d){if("number"==typeof a&&"number"==typeof b)return a*(1-d)+b*d;if("boolean"==typeof a&&"boolean"==typeof b)return d<.5?a:b;if(a.length==b.length){for(var e=[],f=0;f<a.length;f++)e.push(c(a[f],b[f],d));return e}throw"Mismatched interpolation arguments "+a+":"+b}a.Interpolation=function(a,b,d){return function(e){return d(c(a,b,e))}}}(d),function(a,b,c){a.sequenceNumber=0;var d=function(a,b,c){this.target=a,this.currentTime=b,this.timelineTime=c,this.type="finish",this.bubbles=!1,this.cancelable=!1,this.currentTarget=a,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()};b.Animation=function(b){this.id="",b&&b._id&&(this.id=b._id),this._sequenceNumber=a.sequenceNumber++,this._currentTime=0,this._startTime=null,this._paused=!1,this._playbackRate=1,this._inTimeline=!0,this._finishedFlag=!0,this.onfinish=null,this._finishHandlers=[],this._effect=b,this._inEffect=this._effect._update(0),this._idle=!0,this._currentTimePending=!1},b.Animation.prototype={_ensureAlive:function(){this.playbackRate<0&&0===this.currentTime?this._inEffect=this._effect._update(-1):this._inEffect=this._effect._update(this.currentTime),this._inTimeline||!this._inEffect&&this._finishedFlag||(this._inTimeline=!0,b.timeline._animations.push(this))},_tickCurrentTime:function(a,b){a!=this._currentTime&&(this._currentTime=a,this._isFinished&&!b&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this._ensureAlive())},get currentTime(){return this._idle||this._currentTimePending?null:this._currentTime},set currentTime(a){a=+a,isNaN(a)||(b.restart(),this._paused||null==this._startTime||(this._startTime=this._timeline.currentTime-a/this._playbackRate),this._currentTimePending=!1,this._currentTime!=a&&(this._idle&&(this._idle=!1,this._paused=!0),this._tickCurrentTime(a,!0),b.applyDirtiedAnimation(this)))},get startTime(){return this._startTime},set startTime(a){a=+a,isNaN(a)||this._paused||this._idle||(this._startTime=a,this._tickCurrentTime((this._timeline.currentTime-this._startTime)*this.playbackRate),b.applyDirtiedAnimation(this))},get playbackRate(){return this._playbackRate},set playbackRate(a){if(a!=this._playbackRate){var c=this.currentTime;this._playbackRate=a,this._startTime=null,"paused"!=this.playState&&"idle"!=this.playState&&(this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),b.applyDirtiedAnimation(this)),null!=c&&(this.currentTime=c)}},get _isFinished(){return!this._idle&&(this._playbackRate>0&&this._currentTime>=this._totalDuration||this._playbackRate<0&&this._currentTime<=0)},get _totalDuration(){return this._effect._totalDuration},get playState(){return this._idle?"idle":null==this._startTime&&!this._paused&&0!=this.playbackRate||this._currentTimePending?"pending":this._paused?"paused":this._isFinished?"finished":"running"},_rewind:function(){if(this._playbackRate>=0)this._currentTime=0;else{if(!(this._totalDuration<1/0))throw new DOMException("Unable to rewind negative playback rate animation with infinite duration","InvalidStateError");this._currentTime=this._totalDuration}},play:function(){this._paused=!1,(this._isFinished||this._idle)&&(this._rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),b.applyDirtiedAnimation(this)},pause:function(){this._isFinished||this._paused||this._idle?this._idle&&(this._rewind(),this._idle=!1):this._currentTimePending=!0,this._startTime=null,this._paused=!0},finish:function(){this._idle||(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this._currentTimePending=!1,b.applyDirtiedAnimation(this))},cancel:function(){this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._isFinished=!0,this._finishedFlag=!0,this._currentTime=0,this._startTime=null,this._effect._update(null),b.applyDirtiedAnimation(this))},reverse:function(){this.playbackRate*=-1,this.play()},addEventListener:function(a,b){"function"==typeof b&&"finish"==a&&this._finishHandlers.push(b)},removeEventListener:function(a,b){if("finish"==a){var c=this._finishHandlers.indexOf(b);c>=0&&this._finishHandlers.splice(c,1)}},_fireEvents:function(a){if(this._isFinished){if(!this._finishedFlag){var b=new d(this,this._currentTime,a),c=this._finishHandlers.concat(this.onfinish?[this.onfinish]:[]);setTimeout(function(){c.forEach(function(a){a.call(b.target,b)})},0),this._finishedFlag=!0}}else this._finishedFlag=!1},_tick:function(a,b){this._idle||this._paused||(null==this._startTime?b&&(this.startTime=a-this._currentTime/this.playbackRate):this._isFinished||this._tickCurrentTime((a-this._startTime)*this.playbackRate)),b&&(this._currentTimePending=!1,this._fireEvents(a))},get _needsTick(){return this.playState in{pending:1,running:1}||!this._finishedFlag},_targetAnimations:function(){var a=this._effect._target;return a._activeAnimations||(a._activeAnimations=[]),a._activeAnimations},_markTarget:function(){var a=this._targetAnimations();-1===a.indexOf(this)&&a.push(this)},_unmarkTarget:function(){var a=this._targetAnimations(),b=a.indexOf(this);-1!==b&&a.splice(b,1)}}}(c,d),function(a,b,c){function d(a){var b=j;j=[],a<q.currentTime&&(a=q.currentTime),q._animations.sort(e),q._animations=h(a,!0,q._animations)[0],b.forEach(function(b){b[1](a)}),g(),l=void 0}function e(a,b){return a._sequenceNumber-b._sequenceNumber}function f(){this._animations=[],this.currentTime=window.performance&&performance.now?performance.now():0}function g(){o.forEach(function(a){a()}),o.length=0}function h(a,c,d){p=!0,n=!1,b.timeline.currentTime=a,m=!1;var e=[],f=[],g=[],h=[];return d.forEach(function(b){b._tick(a,c),b._inEffect?(f.push(b._effect),b._markTarget()):(e.push(b._effect),b._unmarkTarget()),b._needsTick&&(m=!0);var d=b._inEffect||b._needsTick;b._inTimeline=d,d?g.push(b):h.push(b)}),o.push.apply(o,e),o.push.apply(o,f),m&&requestAnimationFrame(function(){}),p=!1,[g,h]}var i=window.requestAnimationFrame,j=[],k=0;window.requestAnimationFrame=function(a){var b=k++;return 0==j.length&&i(d),j.push([b,a]),b},window.cancelAnimationFrame=function(a){j.forEach(function(b){b[0]==a&&(b[1]=function(){})})},f.prototype={_play:function(c){c._timing=a.normalizeTimingInput(c.timing);var d=new b.Animation(c);return d._idle=!1,d._timeline=this,this._animations.push(d),b.restart(),b.applyDirtiedAnimation(d),d}};var l=void 0,m=!1,n=!1;b.restart=function(){return m||(m=!0,requestAnimationFrame(function(){}),n=!0),n},b.applyDirtiedAnimation=function(a){if(!p){a._markTarget();var c=a._targetAnimations();c.sort(e),h(b.timeline.currentTime,!1,c.slice())[1].forEach(function(a){var b=q._animations.indexOf(a);-1!==b&&q._animations.splice(b,1)}),g()}};var o=[],p=!1,q=new f;b.timeline=q}(c,d),function(a){function b(a,b){var c=a.exec(b);if(c)return c=a.ignoreCase?c[0].toLowerCase():c[0],[c,b.substr(c.length)]}function c(a,b){b=b.replace(/^\s*/,"");var c=a(b);if(c)return[c[0],c[1].replace(/^\s*/,"")]}function d(a,d,e){a=c.bind(null,a);for(var f=[];;){var g=a(e);if(!g)return[f,e];if(f.push(g[0]),e=g[1],!(g=b(d,e))||""==g[1])return[f,e];e=g[1]}}function e(a,b){for(var c=0,d=0;d<b.length&&(!/\s|,/.test(b[d])||0!=c);d++)if("("==b[d])c++;else if(")"==b[d]&&(c--,0==c&&d++,c<=0))break;var e=a(b.substr(0,d));return void 0==e?void 0:[e,b.substr(d)]}function f(a,b){for(var c=a,d=b;c&&d;)c>d?c%=d:d%=c;return c=a*b/(c+d)}function g(a){return function(b){var c=a(b);return c&&(c[0]=void 0),c}}function h(a,b){return function(c){return a(c)||[b,c]}}function i(b,c){for(var d=[],e=0;e<b.length;e++){var f=a.consumeTrimmed(b[e],c);if(!f||""==f[0])return;void 0!==f[0]&&d.push(f[0]),c=f[1]}if(""==c)return d}function j(a,b,c,d,e){for(var g=[],h=[],i=[],j=f(d.length,e.length),k=0;k<j;k++){var l=b(d[k%d.length],e[k%e.length]);if(!l)return;g.push(l[0]),h.push(l[1]),i.push(l[2])}return[g,h,function(b){var d=b.map(function(a,b){return i[b](a)}).join(c);return a?a(d):d}]}function k(a,b,c){for(var d=[],e=[],f=[],g=0,h=0;h<c.length;h++)if("function"==typeof c[h]){var i=c[h](a[g],b[g++]);d.push(i[0]),e.push(i[1]),f.push(i[2])}else!function(a){d.push(!1),e.push(!1),f.push(function(){return c[a]})}(h);return[d,e,function(a){for(var b="",c=0;c<a.length;c++)b+=f[c](a[c]);return b}]}a.consumeToken=b,a.consumeTrimmed=c,a.consumeRepeated=d,a.consumeParenthesised=e,a.ignore=g,a.optional=h,a.consumeList=i,a.mergeNestedRepeated=j.bind(null,null),a.mergeWrappedNestedRepeated=j,a.mergeList=k}(d),function(a){function b(b){function c(b){var c=a.consumeToken(/^inset/i,b);if(c)return d.inset=!0,c;var c=a.consumeLengthOrPercent(b);if(c)return d.lengths.push(c[0]),c;var c=a.consumeColor(b);return c?(d.color=c[0],c):void 0}var d={inset:!1,lengths:[],color:null},e=a.consumeRepeated(c,/^/,b);if(e&&e[0].length)return[d,e[1]]}function c(c){var d=a.consumeRepeated(b,/^,/,c);if(d&&""==d[1])return d[0]}function d(b,c){for(;b.lengths.length<Math.max(b.lengths.length,c.lengths.length);)b.lengths.push({px:0});for(;c.lengths.length<Math.max(b.lengths.length,c.lengths.length);)c.lengths.push({px:0});if(b.inset==c.inset&&!!b.color==!!c.color){for(var d,e=[],f=[[],0],g=[[],0],h=0;h<b.lengths.length;h++){var i=a.mergeDimensions(b.lengths[h],c.lengths[h],2==h);f[0].push(i[0]),g[0].push(i[1]),e.push(i[2])}if(b.color&&c.color){var j=a.mergeColors(b.color,c.color);f[1]=j[0],g[1]=j[1],d=j[2]}return[f,g,function(a){for(var c=b.inset?"inset ":" ",f=0;f<e.length;f++)c+=e[f](a[0][f])+" ";return d&&(c+=d(a[1])),c}]}}function e(b,c,d,e){function f(a){return{inset:a,color:[0,0,0,0],lengths:[{px:0},{px:0},{px:0},{px:0}]}}for(var g=[],h=[],i=0;i<d.length||i<e.length;i++){var j=d[i]||f(e[i].inset),k=e[i]||f(d[i].inset);g.push(j),h.push(k)}return a.mergeNestedRepeated(b,c,g,h)}var f=e.bind(null,d,", ");a.addPropertiesHandler(c,f,["box-shadow","text-shadow"])}(d),function(a,b){function c(a){return a.toFixed(3).replace(/0+$/,"").replace(/\.$/,"")}function d(a,b,c){return Math.min(b,Math.max(a,c))}function e(a){if(/^\s*[-+]?(\d*\.)?\d+\s*$/.test(a))return Number(a)}function f(a,b){return[a,b,c]}function g(a,b){if(0!=a)return i(0,1/0)(a,b)}function h(a,b){return[a,b,function(a){return Math.round(d(1,1/0,a))}]}function i(a,b){return function(e,f){return[e,f,function(e){return c(d(a,b,e))}]}}function j(a){var b=a.trim().split(/\s*[\s,]\s*/);if(0!==b.length){for(var c=[],d=0;d<b.length;d++){var f=e(b[d]);if(void 0===f)return;c.push(f)}return c}}function k(a,b){if(a.length==b.length)return[a,b,function(a){return a.map(c).join(" ")}]}function l(a,b){return[a,b,Math.round]}a.clamp=d,a.addPropertiesHandler(j,k,["stroke-dasharray"]),a.addPropertiesHandler(e,i(0,1/0),["border-image-width","line-height"]),a.addPropertiesHandler(e,i(0,1),["opacity","shape-image-threshold"]),a.addPropertiesHandler(e,g,["flex-grow","flex-shrink"]),a.addPropertiesHandler(e,h,["orphans","widows"]),a.addPropertiesHandler(e,l,["z-index"]),a.parseNumber=e,a.parseNumberList=j,a.mergeNumbers=f,a.numberToString=c}(d),function(a,b){function c(a,b){if("visible"==a||"visible"==b)return[0,1,function(c){return c<=0?a:c>=1?b:"visible"}]}a.addPropertiesHandler(String,c,["visibility"])}(d),function(a,b){function c(a){a=a.trim(),f.fillStyle="#000",f.fillStyle=a;var b=f.fillStyle;if(f.fillStyle="#fff",f.fillStyle=a,b==f.fillStyle){f.fillRect(0,0,1,1);var c=f.getImageData(0,0,1,1).data;f.clearRect(0,0,1,1);var d=c[3]/255;return[c[0]*d,c[1]*d,c[2]*d,d]}}function d(b,c){return[b,c,function(b){function c(a){return Math.max(0,Math.min(255,a))}if(b[3])for(var d=0;d<3;d++)b[d]=Math.round(c(b[d]/b[3]));return b[3]=a.numberToString(a.clamp(0,1,b[3])),"rgba("+b.join(",")+")"}]}var e=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");e.width=e.height=1;var f=e.getContext("2d");a.addPropertiesHandler(c,d,["background-color","border-bottom-color","border-left-color","border-right-color","border-top-color","color","fill","flood-color","lighting-color","outline-color","stop-color","stroke","text-decoration-color"]),a.consumeColor=a.consumeParenthesised.bind(null,c),a.mergeColors=d}(d),function(a,b){function c(a){function b(){var b=h.exec(a);g=b?b[0]:void 0}function c(){var a=Number(g);return b(),a}function d(){if("("!==g)return c();b();var a=f();return")"!==g?NaN:(b(),a)}function e(){for(var a=d();"*"===g||"/"===g;){var c=g;b();var e=d();"*"===c?a*=e:a/=e}return a}function f(){for(var a=e();"+"===g||"-"===g;){var c=g;b();var d=e();"+"===c?a+=d:a-=d}return a}var g,h=/([\+\-\w\.]+|[\(\)\*\/])/g;return b(),f()}function d(a,b){if("0"==(b=b.trim().toLowerCase())&&"px".search(a)>=0)return{px:0};if(/^[^(]*$|^calc/.test(b)){b=b.replace(/calc\(/g,"(");var d={};b=b.replace(a,function(a){return d[a]=null,"U"+a});for(var e="U("+a.source+")",f=b.replace(/[-+]?(\d*\.)?\d+([Ee][-+]?\d+)?/g,"N").replace(new RegExp("N"+e,"g"),"D").replace(/\s[+-]\s/g,"O").replace(/\s/g,""),g=[/N\*(D)/g,/(N|D)[*\/]N/g,/(N|D)O\1/g,/\((N|D)\)/g],h=0;h<g.length;)g[h].test(f)?(f=f.replace(g[h],"$1"),h=0):h++;if("D"==f){for(var i in d){var j=c(b.replace(new RegExp("U"+i,"g"),"").replace(new RegExp(e,"g"),"*0"));if(!isFinite(j))return;d[i]=j}return d}}}function e(a,b){return f(a,b,!0)}function f(b,c,d){var e,f=[];for(e in b)f.push(e);for(e in c)f.indexOf(e)<0&&f.push(e);return b=f.map(function(a){return b[a]||0}),c=f.map(function(a){return c[a]||0}),[b,c,function(b){var c=b.map(function(c,e){return 1==b.length&&d&&(c=Math.max(c,0)),a.numberToString(c)+f[e]}).join(" + ");return b.length>1?"calc("+c+")":c}]}var g="px|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc",h=d.bind(null,new RegExp(g,"g")),i=d.bind(null,new RegExp(g+"|%","g")),j=d.bind(null,/deg|rad|grad|turn/g);a.parseLength=h,a.parseLengthOrPercent=i,a.consumeLengthOrPercent=a.consumeParenthesised.bind(null,i),a.parseAngle=j,a.mergeDimensions=f;var k=a.consumeParenthesised.bind(null,h),l=a.consumeRepeated.bind(void 0,k,/^/),m=a.consumeRepeated.bind(void 0,l,/^,/);a.consumeSizePairList=m;var n=function(a){var b=m(a);if(b&&""==b[1])return b[0]},o=a.mergeNestedRepeated.bind(void 0,e," "),p=a.mergeNestedRepeated.bind(void 0,o,",");a.mergeNonNegativeSizePair=o,a.addPropertiesHandler(n,p,["background-size"]),a.addPropertiesHandler(i,e,["border-bottom-width","border-image-width","border-left-width","border-right-width","border-top-width","flex-basis","font-size","height","line-height","max-height","max-width","outline-width","width"]),a.addPropertiesHandler(i,f,["border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","bottom","left","letter-spacing","margin-bottom","margin-left","margin-right","margin-top","min-height","min-width","outline-offset","padding-bottom","padding-left","padding-right","padding-top","perspective","right","shape-margin","stroke-dashoffset","text-indent","top","vertical-align","word-spacing"])}(d),function(a,b){function c(b){return a.consumeLengthOrPercent(b)||a.consumeToken(/^auto/,b)}function d(b){var d=a.consumeList([a.ignore(a.consumeToken.bind(null,/^rect/)),a.ignore(a.consumeToken.bind(null,/^\(/)),a.consumeRepeated.bind(null,c,/^,/),a.ignore(a.consumeToken.bind(null,/^\)/))],b);if(d&&4==d[0].length)return d[0]}function e(b,c){return"auto"==b||"auto"==c?[!0,!1,function(d){var e=d?b:c;if("auto"==e)return"auto";var f=a.mergeDimensions(e,e);return f[2](f[0])}]:a.mergeDimensions(b,c)}function f(a){return"rect("+a+")"}var g=a.mergeWrappedNestedRepeated.bind(null,f,e,", ");a.parseBox=d,a.mergeBoxes=g,a.addPropertiesHandler(d,g,["clip"])}(d),function(a,b){function c(a){return function(b){var c=0;return a.map(function(a){return a===k?b[c++]:a})}}function d(a){return a}function e(b){if("none"==(b=b.toLowerCase().trim()))return[];for(var c,d=/\s*(\w+)\(([^)]*)\)/g,e=[],f=0;c=d.exec(b);){if(c.index!=f)return;f=c.index+c[0].length;var g=c[1],h=n[g];if(!h)return;var i=c[2].split(","),j=h[0];if(j.length<i.length)return;for(var k=[],o=0;o<j.length;o++){var p,q=i[o],r=j[o];if(void 0===(p=q?{A:function(b){return"0"==b.trim()?m:a.parseAngle(b)},N:a.parseNumber,T:a.parseLengthOrPercent,L:a.parseLength}[r.toUpperCase()](q):{a:m,n:k[0],t:l}[r]))return;k.push(p)}if(e.push({t:g,d:k}),d.lastIndex==b.length)return e}}function f(a){return a.toFixed(6).replace(".000000","")}function g(b,c){if(b.decompositionPair!==c){b.decompositionPair=c;var d=a.makeMatrixDecomposition(b)}if(c.decompositionPair!==b){c.decompositionPair=b;var e=a.makeMatrixDecomposition(c)}return null==d[0]||null==e[0]?[[!1],[!0],function(a){return a?c[0].d:b[0].d}]:(d[0].push(0),e[0].push(1),[d,e,function(b){var c=a.quat(d[0][3],e[0][3],b[5]);return a.composeMatrix(b[0],b[1],b[2],c,b[4]).map(f).join(",")}])}function h(a){return a.replace(/[xy]/,"")}function i(a){return a.replace(/(x|y|z|3d)?$/,"3d")}function j(b,c){var d=a.makeMatrixDecomposition&&!0,e=!1;if(!b.length||!c.length){b.length||(e=!0,b=c,c=[]);for(var f=0;f<b.length;f++){var j=b[f].t,k=b[f].d,l="scale"==j.substr(0,5)?1:0;c.push({t:j,d:k.map(function(a){if("number"==typeof a)return l;var b={};for(var c in a)b[c]=l;return b})})}}var m=function(a,b){return"perspective"==a&&"perspective"==b||("matrix"==a||"matrix3d"==a)&&("matrix"==b||"matrix3d"==b)},o=[],p=[],q=[];if(b.length!=c.length){if(!d)return;var r=g(b,c);o=[r[0]],p=[r[1]],q=[["matrix",[r[2]]]]}else for(var f=0;f<b.length;f++){var j,s=b[f].t,t=c[f].t,u=b[f].d,v=c[f].d,w=n[s],x=n[t];if(m(s,t)){if(!d)return;var r=g([b[f]],[c[f]]);o.push(r[0]),p.push(r[1]),q.push(["matrix",[r[2]]])}else{if(s==t)j=s;else if(w[2]&&x[2]&&h(s)==h(t))j=h(s),u=w[2](u),v=x[2](v);else{if(!w[1]||!x[1]||i(s)!=i(t)){if(!d)return;var r=g(b,c);o=[r[0]],p=[r[1]],q=[["matrix",[r[2]]]];break}j=i(s),u=w[1](u),v=x[1](v)}for(var y=[],z=[],A=[],B=0;B<u.length;B++){var C="number"==typeof u[B]?a.mergeNumbers:a.mergeDimensions,r=C(u[B],v[B]);y[B]=r[0],z[B]=r[1],A.push(r[2])}o.push(y),p.push(z),q.push([j,A])}}if(e){var D=o;o=p,p=D}return[o,p,function(a){return a.map(function(a,b){var c=a.map(function(a,c){return q[b][1][c](a)}).join(",");return"matrix"==q[b][0]&&16==c.split(",").length&&(q[b][0]="matrix3d"),q[b][0]+"("+c+")"}).join(" ")}]}var k=null,l={px:0},m={deg:0},n={matrix:["NNNNNN",[k,k,0,0,k,k,0,0,0,0,1,0,k,k,0,1],d],matrix3d:["NNNNNNNNNNNNNNNN",d],rotate:["A"],rotatex:["A"],rotatey:["A"],rotatez:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",c([k,k,1]),d],scalex:["N",c([k,1,1]),c([k,1])],scaley:["N",c([1,k,1]),c([1,k])],scalez:["N",c([1,1,k])],scale3d:["NNN",d],skew:["Aa",null,d],skewx:["A",null,c([k,m])],skewy:["A",null,c([m,k])],translate:["Tt",c([k,k,l]),d],translatex:["T",c([k,l,l]),c([k,l])],translatey:["T",c([l,k,l]),c([l,k])],translatez:["L",c([l,l,k])],translate3d:["TTL",d]};a.addPropertiesHandler(e,j,["transform"]),a.transformToSvgMatrix=function(b){var c=a.transformListToMatrix(e(b));return"matrix("+f(c[0])+" "+f(c[1])+" "+f(c[4])+" "+f(c[5])+" "+f(c[12])+" "+f(c[13])+")"}}(d),function(a,b){function c(a,b){b.concat([a]).forEach(function(b){b in document.documentElement.style&&(d[a]=b),e[b]=a})}var d={},e={};c("transform",["webkitTransform","msTransform"]),c("transformOrigin",["webkitTransformOrigin"]),c("perspective",["webkitPerspective"]),c("perspectiveOrigin",["webkitPerspectiveOrigin"]),a.propertyName=function(a){return d[a]||a},a.unprefixedPropertyName=function(a){return e[a]||a}}(d)}(),function(){if(void 0===document.createElement("div").animate([]).oncancel){var a;if(window.performance&&performance.now)var a=function(){return performance.now()};else var a=function(){return Date.now()};var b=function(a,b,c){this.target=a,this.currentTime=b,this.timelineTime=c,this.type="cancel",this.bubbles=!1,this.cancelable=!1,this.currentTarget=a,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()},c=window.Element.prototype.animate;window.Element.prototype.animate=function(d,e){var f=c.call(this,d,e);f._cancelHandlers=[],f.oncancel=null;var g=f.cancel;f.cancel=function(){g.call(this);var c=new b(this,null,a()),d=this._cancelHandlers.concat(this.oncancel?[this.oncancel]:[]);setTimeout(function(){d.forEach(function(a){a.call(c.target,c)})},0)};var h=f.addEventListener;f.addEventListener=function(a,b){"function"==typeof b&&"cancel"==a?this._cancelHandlers.push(b):h.call(this,a,b)};var i=f.removeEventListener;return f.removeEventListener=function(a,b){if("cancel"==a){var c=this._cancelHandlers.indexOf(b);c>=0&&this._cancelHandlers.splice(c,1)}else i.call(this,a,b)},f}}}(),function(a){var b=document.documentElement,c=null,d=!1;try{var e=getComputedStyle(b).getPropertyValue("opacity"),f="0"==e?"1":"0";c=b.animate({opacity:[f,f]},{duration:1}),c.currentTime=0,d=getComputedStyle(b).getPropertyValue("opacity")==f}catch(a){}finally{c&&c.cancel()}if(!d){var g=window.Element.prototype.animate;window.Element.prototype.animate=function(b,c){return window.Symbol&&Symbol.iterator&&Array.prototype.from&&b[Symbol.iterator]&&(b=Array.from(b)),Array.isArray(b)||null===b||(b=a.convertToArrayForm(b)),g.call(this,b,c)}}}(c),function(a,b,c){function d(a){var c=b.timeline;c.currentTime=a,c._discardAnimations(),0==c._animations.length?f=!1:requestAnimationFrame(d)}var e=window.requestAnimationFrame;window.requestAnimationFrame=function(a){return e(function(c){b.timeline._updateAnimationsPromises(),a(c),b.timeline._updateAnimationsPromises()})},b.AnimationTimeline=function(){this._animations=[],this.currentTime=void 0},b.AnimationTimeline.prototype={getAnimations:function(){return this._discardAnimations(),this._animations.slice()},_updateAnimationsPromises:function(){b.animationsWithPromises=b.animationsWithPromises.filter(function(a){return a._updatePromises()})},_discardAnimations:function(){this._updateAnimationsPromises(),this._animations=this._animations.filter(function(a){return"finished"!=a.playState&&"idle"!=a.playState})},_play:function(a){var c=new b.Animation(a,this);return this._animations.push(c),b.restartWebAnimationsNextTick(),c._updatePromises(),c._animation.play(),c._updatePromises(),c},play:function(a){return a&&a.remove(),this._play(a)}};var f=!1;b.restartWebAnimationsNextTick=function(){f||(f=!0,requestAnimationFrame(d))};var g=new b.AnimationTimeline;b.timeline=g;try{Object.defineProperty(window.document,"timeline",{configurable:!0,get:function(){return g}})}catch(a){}try{window.document.timeline=g}catch(a){}}(0,e),function(a,b,c){b.animationsWithPromises=[],b.Animation=function(b,c){if(this.id="",b&&b._id&&(this.id=b._id),this.effect=b,b&&(b._animation=this),!c)throw new Error("Animation with null timeline is not supported");this._timeline=c,this._sequenceNumber=a.sequenceNumber++,this._holdTime=0,this._paused=!1,this._isGroup=!1,this._animation=null,this._childAnimations=[],this._callback=null,this._oldPlayState="idle",this._rebuildUnderlyingAnimation(),this._animation.cancel(),this._updatePromises()},b.Animation.prototype={_updatePromises:function(){var a=this._oldPlayState,b=this.playState;return this._readyPromise&&b!==a&&("idle"==b?(this._rejectReadyPromise(),this._readyPromise=void 0):"pending"==a?this._resolveReadyPromise():"pending"==b&&(this._readyPromise=void 0)),this._finishedPromise&&b!==a&&("idle"==b?(this._rejectFinishedPromise(),this._finishedPromise=void 0):"finished"==b?this._resolveFinishedPromise():"finished"==a&&(this._finishedPromise=void 0)),this._oldPlayState=this.playState,this._readyPromise||this._finishedPromise},_rebuildUnderlyingAnimation:function(){this._updatePromises();var a,c,d,e,f=!!this._animation;f&&(a=this.playbackRate,c=this._paused,d=this.startTime,e=this.currentTime,this._animation.cancel(),this._animation._wrapper=null,this._animation=null),(!this.effect||this.effect instanceof window.KeyframeEffect)&&(this._animation=b.newUnderlyingAnimationForKeyframeEffect(this.effect),b.bindAnimationForKeyframeEffect(this)),(this.effect instanceof window.SequenceEffect||this.effect instanceof window.GroupEffect)&&(this._animation=b.newUnderlyingAnimationForGroup(this.effect),b.bindAnimationForGroup(this)),this.effect&&this.effect._onsample&&b.bindAnimationForCustomEffect(this),f&&(1!=a&&(this.playbackRate=a),null!==d?this.startTime=d:null!==e?this.currentTime=e:null!==this._holdTime&&(this.currentTime=this._holdTime),c&&this.pause()),this._updatePromises()},_updateChildren:function(){if(this.effect&&"idle"!=this.playState){var a=this.effect._timing.delay;this._childAnimations.forEach(function(c){this._arrangeChildren(c,a),this.effect instanceof window.SequenceEffect&&(a+=b.groupChildDuration(c.effect))}.bind(this))}},_setExternalAnimation:function(a){if(this.effect&&this._isGroup)for(var b=0;b<this.effect.children.length;b++)this.effect.children[b]._animation=a,this._childAnimations[b]._setExternalAnimation(a)},_constructChildAnimations:function(){if(this.effect&&this._isGroup){var a=this.effect._timing.delay;this._removeChildAnimations(),this.effect.children.forEach(function(c){var d=b.timeline._play(c);this._childAnimations.push(d),d.playbackRate=this.playbackRate,this._paused&&d.pause(),c._animation=this.effect._animation,this._arrangeChildren(d,a),this.effect instanceof window.SequenceEffect&&(a+=b.groupChildDuration(c))}.bind(this))}},_arrangeChildren:function(a,b){null===this.startTime?a.currentTime=this.currentTime-b/this.playbackRate:a.startTime!==this.startTime+b/this.playbackRate&&(a.startTime=this.startTime+b/this.playbackRate)},get timeline(){return this._timeline},get playState(){return this._animation?this._animation.playState:"idle"},get finished(){return window.Promise?(this._finishedPromise||(-1==b.animationsWithPromises.indexOf(this)&&b.animationsWithPromises.push(this),this._finishedPromise=new Promise(function(a,b){this._resolveFinishedPromise=function(){a(this)},this._rejectFinishedPromise=function(){b({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"finished"==this.playState&&this._resolveFinishedPromise()),this._finishedPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get ready(){return window.Promise?(this._readyPromise||(-1==b.animationsWithPromises.indexOf(this)&&b.animationsWithPromises.push(this),this._readyPromise=new Promise(function(a,b){this._resolveReadyPromise=function(){a(this)},this._rejectReadyPromise=function(){b({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"pending"!==this.playState&&this._resolveReadyPromise()),this._readyPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get onfinish(){return this._animation.onfinish},set onfinish(a){this._animation.onfinish="function"==typeof a?function(b){b.target=this,a.call(this,b)}.bind(this):a},get oncancel(){return this._animation.oncancel},set oncancel(a){this._animation.oncancel="function"==typeof a?function(b){b.target=this,a.call(this,b)}.bind(this):a},get currentTime(){this._updatePromises();var a=this._animation.currentTime;return this._updatePromises(),a},set currentTime(a){this._updatePromises(),this._animation.currentTime=isFinite(a)?a:Math.sign(a)*Number.MAX_VALUE,this._register(),this._forEachChild(function(b,c){b.currentTime=a-c}),this._updatePromises()},get startTime(){return this._animation.startTime},set startTime(a){this._updatePromises(),this._animation.startTime=isFinite(a)?a:Math.sign(a)*Number.MAX_VALUE,this._register(),this._forEachChild(function(b,c){b.startTime=a+c}),this._updatePromises()},get playbackRate(){return this._animation.playbackRate},set playbackRate(a){this._updatePromises();var b=this.currentTime;this._animation.playbackRate=a,this._forEachChild(function(b){b.playbackRate=a}),null!==b&&(this.currentTime=b),this._updatePromises()},play:function(){this._updatePromises(),this._paused=!1,this._animation.play(),-1==this._timeline._animations.indexOf(this)&&this._timeline._animations.push(this),this._register(),b.awaitStartTime(this),this._forEachChild(function(a){var b=a.currentTime;a.play(),a.currentTime=b}),this._updatePromises()},pause:function(){this._updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),this._animation.pause(),this._register(),this._forEachChild(function(a){a.pause()}),this._paused=!0,this._updatePromises()},finish:function(){this._updatePromises(),this._animation.finish(),this._register(),this._updatePromises()},cancel:function(){this._updatePromises(),this._animation.cancel(),this._register(),this._removeChildAnimations(),this._updatePromises()},reverse:function(){this._updatePromises();var a=this.currentTime;this._animation.reverse(),this._forEachChild(function(a){a.reverse()}),null!==a&&(this.currentTime=a),this._updatePromises()},addEventListener:function(a,b){var c=b;"function"==typeof b&&(c=function(a){a.target=this,b.call(this,a)}.bind(this),b._wrapper=c),this._animation.addEventListener(a,c)},removeEventListener:function(a,b){this._animation.removeEventListener(a,b&&b._wrapper||b)},_removeChildAnimations:function(){for(;this._childAnimations.length;)this._childAnimations.pop().cancel()},_forEachChild:function(b){var c=0;if(this.effect.children&&this._childAnimations.length<this.effect.children.length&&this._constructChildAnimations(),this._childAnimations.forEach(function(a){b.call(this,a,c),this.effect instanceof window.SequenceEffect&&(c+=a.effect.activeDuration)}.bind(this)),"pending"!=this.playState){var d=this.effect._timing,e=this.currentTime;null!==e&&(e=a.calculateIterationProgress(a.calculateActiveDuration(d),e,d)),(null==e||isNaN(e))&&this._removeChildAnimations()}}},window.Animation=b.Animation}(c,e),function(a,b,c){function d(b){this._frames=a.normalizeKeyframes(b)}function e(){for(var a=!1;i.length;)i.shift()._updateChildren(),a=!0;return a}var f=function(a){if(a._animation=void 0,a instanceof window.SequenceEffect||a instanceof window.GroupEffect)for(var b=0;b<a.children.length;b++)f(a.children[b])};b.removeMulti=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];d._parent?(-1==b.indexOf(d._parent)&&b.push(d._parent),d._parent.children.splice(d._parent.children.indexOf(d),1),d._parent=null,f(d)):d._animation&&d._animation.effect==d&&(d._animation.cancel(),d._animation.effect=new KeyframeEffect(null,[]),d._animation._callback&&(d._animation._callback._animation=null),d._animation._rebuildUnderlyingAnimation(),f(d))}for(c=0;c<b.length;c++)b[c]._rebuild()},b.KeyframeEffect=function(b,c,e,f){return this.target=b,this._parent=null,e=a.numericTimingToObject(e),this._timingInput=a.cloneTimingInput(e),this._timing=a.normalizeTimingInput(e),this.timing=a.makeTiming(e,!1,this),this.timing._effect=this,"function"==typeof c?(a.deprecated("Custom KeyframeEffect","2015-06-22","Use KeyframeEffect.onsample instead."),this._normalizedKeyframes=c):this._normalizedKeyframes=new d(c),this._keyframes=c,this.activeDuration=a.calculateActiveDuration(this._timing),this._id=f,this},b.KeyframeEffect.prototype={getFrames:function(){return"function"==typeof this._normalizedKeyframes?this._normalizedKeyframes:this._normalizedKeyframes._frames},set onsample(a){if("function"==typeof this.getFrames())throw new Error("Setting onsample on custom effect KeyframeEffect is not supported.");this._onsample=a,this._animation&&this._animation._rebuildUnderlyingAnimation()},get parent(){return this._parent},clone:function(){if("function"==typeof this.getFrames())throw new Error("Cloning custom effects is not supported.");var b=new KeyframeEffect(this.target,[],a.cloneTimingInput(this._timingInput),this._id);return b._normalizedKeyframes=this._normalizedKeyframes,b._keyframes=this._keyframes,b},remove:function(){b.removeMulti([this])}};var g=Element.prototype.animate;Element.prototype.animate=function(a,c){var d="";return c&&c.id&&(d=c.id),b.timeline._play(new b.KeyframeEffect(this,a,c,d))};var h=document.createElementNS("http://www.w3.org/1999/xhtml","div");b.newUnderlyingAnimationForKeyframeEffect=function(a){if(a){var b=a.target||h,c=a._keyframes;"function"==typeof c&&(c=[]);var d=a._timingInput;d.id=a._id}else var b=h,c=[],d=0;return g.apply(b,[c,d])},b.bindAnimationForKeyframeEffect=function(a){a.effect&&"function"==typeof a.effect._normalizedKeyframes&&b.bindAnimationForCustomEffect(a)};var i=[];b.awaitStartTime=function(a){null===a.startTime&&a._isGroup&&(0==i.length&&requestAnimationFrame(e),i.push(a))};var j=window.getComputedStyle;Object.defineProperty(window,"getComputedStyle",{configurable:!0,enumerable:!0,value:function(){b.timeline._updateAnimationsPromises();var a=j.apply(this,arguments);return e()&&(a=j.apply(this,arguments)),b.timeline._updateAnimationsPromises(),a}}),window.KeyframeEffect=b.KeyframeEffect,window.Element.prototype.getAnimations=function(){return document.timeline.getAnimations().filter(function(a){return null!==a.effect&&a.effect.target==this}.bind(this))}}(c,e),function(a,b,c){function d(a){a._registered||(a._registered=!0,g.push(a),h||(h=!0,requestAnimationFrame(e)))}function e(a){var b=g;g=[],b.sort(function(a,b){return a._sequenceNumber-b._sequenceNumber}),b=b.filter(function(a){a();var b=a._animation?a._animation.playState:"idle";return"running"!=b&&"pending"!=b&&(a._registered=!1),a._registered}),g.push.apply(g,b),g.length?(h=!0,requestAnimationFrame(e)):h=!1}var f=(document.createElementNS("http://www.w3.org/1999/xhtml","div"),0);b.bindAnimationForCustomEffect=function(b){var c,e=b.effect.target,g="function"==typeof b.effect.getFrames();c=g?b.effect.getFrames():b.effect._onsample;var h=b.effect.timing,i=null;h=a.normalizeTimingInput(h);var j=function(){var d=j._animation?j._animation.currentTime:null;null!==d&&(d=a.calculateIterationProgress(a.calculateActiveDuration(h),d,h),isNaN(d)&&(d=null)),d!==i&&(g?c(d,e,b.effect):c(d,b.effect,b.effect._animation)),i=d};j._animation=b,j._registered=!1,j._sequenceNumber=f++,b._callback=j,d(j)};var g=[],h=!1;b.Animation.prototype._register=function(){this._callback&&d(this._callback)}}(c,e),function(a,b,c){function d(a){return a._timing.delay+a.activeDuration+a._timing.endDelay}function e(b,c,d){this._id=d,this._parent=null,this.children=b||[],this._reparent(this.children),c=a.numericTimingToObject(c),this._timingInput=a.cloneTimingInput(c),this._timing=a.normalizeTimingInput(c,!0),this.timing=a.makeTiming(c,!0,this),this.timing._effect=this,"auto"===this._timing.duration&&(this._timing.duration=this.activeDuration)}window.SequenceEffect=function(){e.apply(this,arguments)},window.GroupEffect=function(){e.apply(this,arguments)},e.prototype={_isAncestor:function(a){for(var b=this;null!==b;){if(b==a)return!0;b=b._parent}return!1},_rebuild:function(){for(var a=this;a;)"auto"===a.timing.duration&&(a._timing.duration=a.activeDuration),a=a._parent;this._animation&&this._animation._rebuildUnderlyingAnimation()},_reparent:function(a){b.removeMulti(a);for(var c=0;c<a.length;c++)a[c]._parent=this},_putChild:function(a,b){for(var c=b?"Cannot append an ancestor or self":"Cannot prepend an ancestor or self",d=0;d<a.length;d++)if(this._isAncestor(a[d]))throw{type:DOMException.HIERARCHY_REQUEST_ERR,name:"HierarchyRequestError",message:c};for(var d=0;d<a.length;d++)b?this.children.push(a[d]):this.children.unshift(a[d]);this._reparent(a),this._rebuild()},append:function(){this._putChild(arguments,!0)},prepend:function(){this._putChild(arguments,!1)},get parent(){return this._parent},get firstChild(){return this.children.length?this.children[0]:null},get lastChild(){return this.children.length?this.children[this.children.length-1]:null},clone:function(){for(var b=a.cloneTimingInput(this._timingInput),c=[],d=0;d<this.children.length;d++)c.push(this.children[d].clone());return this instanceof GroupEffect?new GroupEffect(c,b):new SequenceEffect(c,b)},remove:function(){b.removeMulti([this])}},window.SequenceEffect.prototype=Object.create(e.prototype),Object.defineProperty(window.SequenceEffect.prototype,"activeDuration",{get:function(){var a=0;return this.children.forEach(function(b){a+=d(b)}),Math.max(a,0)}}),window.GroupEffect.prototype=Object.create(e.prototype),Object.defineProperty(window.GroupEffect.prototype,"activeDuration",{get:function(){var a=0;return this.children.forEach(function(b){a=Math.max(a,d(b))}),a}}),b.newUnderlyingAnimationForGroup=function(c){var d,e=null,f=function(b){var c=d._wrapper;if(c&&"pending"!=c.playState&&c.effect)return null==b?void c._removeChildAnimations():0==b&&c.playbackRate<0&&(e||(e=a.normalizeTimingInput(c.effect.timing)),b=a.calculateIterationProgress(a.calculateActiveDuration(e),-1,e),isNaN(b)||null==b)?(c._forEachChild(function(a){a.currentTime=-1}),void c._removeChildAnimations()):void 0},g=new KeyframeEffect(null,[],c._timing,c._id);return g.onsample=f,d=b.timeline._play(g)},b.bindAnimationForGroup=function(a){a._animation._wrapper=a,a._isGroup=!0,b.awaitStartTime(a),a._constructChildAnimations(),a._setExternalAnimation(a)},b.groupChildDuration=d}(c,e),b.true=a}({},function(){return this}());
 //# sourceMappingURL=web-animations-next-lite.min.js.map</script><script>Polymer({is:"opaque-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(config){var node=config.node;this._effect=new KeyframeEffect(node,[{"opacity":"1"},{"opacity":"1"}],this.timingFromConfig(config));node.style.opacity="0";return this._effect},complete:function(config){config.node.style.opacity=""}});</script><script>(function(){var lastTouchPosition={pageX:0,pageY:0};var lastRootTarget=null;var lastScrollableNodes=[];var scrollEvents=["wheel","mousewheel","DOMMouseScroll","touchstart","touchmove"];Polymer.IronDropdownScrollManager={get currentLockingElement(){return this._lockingElements[this._lockingElements.length-1]},elementIsScrollLocked:function(element){var currentLockingElement=this.currentLockingElement;if(currentLockingElement===undefined)return false;var scrollLocked;if(this._hasCachedLockedElement(element))return true;
 if(this._hasCachedUnlockedElement(element))return false;scrollLocked=!!currentLockingElement&&currentLockingElement!==element&&!this._composedTreeContains(currentLockingElement,element);if(scrollLocked)this._lockedElementCache.push(element);else this._unlockedElementCache.push(element);return scrollLocked},pushScrollLock:function(element){if(this._lockingElements.indexOf(element)>=0)return;if(this._lockingElements.length===0)this._lockScrollInteractions();this._lockingElements.push(element);this._lockedElementCache=
 [];this._unlockedElementCache=[]},removeScrollLock:function(element){var index=this._lockingElements.indexOf(element);if(index===-1)return;this._lockingElements.splice(index,1);this._lockedElementCache=[];this._unlockedElementCache=[];if(this._lockingElements.length===0)this._unlockScrollInteractions()},_lockingElements:[],_lockedElementCache:null,_unlockedElementCache:null,_hasCachedLockedElement:function(element){return this._lockedElementCache.indexOf(element)>-1},_hasCachedUnlockedElement:function(element){return this._unlockedElementCache.indexOf(element)>
@@ -577,8 +612,8 @@ _usesIconset:function(){return this.icon||!this.src},_updateIcon:function(){if(t
 "_updateIcon")}}else{if(this._iconset)this._iconset.removeIcon(this);if(!this._img){this._img=document.createElement("img");this._img.style.width="100%";this._img.style.height="100%";this._img.draggable=false}this._img.src=this.src;Polymer.dom(this.root).appendChild(this._img)}}});</script></dom-module><script>Polymer({is:"iron-iconset-svg",properties:{name:{type:String,observer:"_nameChanged"},size:{type:Number,value:24},rtlMirroring:{type:Boolean,value:false}},attached:function(){this.style.display="none"},getIconNames:function(){this._icons=this._createIconMap();return Object.keys(this._icons).map(function(n){return this.name+":"+n},this)},applyIcon:function(element,iconName){element=element.root||element;this.removeIcon(element);var svg=this._cloneIcon(iconName,this.rtlMirroring&&this._targetIsRTL(element));
 if(svg){var pde=Polymer.dom(element);pde.insertBefore(svg,pde.childNodes[0]);return element._svgIcon=svg}return null},removeIcon:function(element){element=element.root||element;if(element._svgIcon){Polymer.dom(element).removeChild(element._svgIcon);element._svgIcon=null}},_targetIsRTL:function(target){if(this.__targetIsRTL==null){if(target&&target.nodeType!==Node.ELEMENT_NODE)target=target.host;this.__targetIsRTL=target&&window.getComputedStyle(target)["direction"]==="rtl"}return this.__targetIsRTL},
 _nameChanged:function(){new Polymer.IronMeta({type:"iconset",key:this.name,value:this});this.async(function(){this.fire("iron-iconset-added",this,{node:window})})},_createIconMap:function(){var icons=Object.create(null);Polymer.dom(this).querySelectorAll("[id]").forEach(function(icon){icons[icon.id]=icon});return icons},_cloneIcon:function(id,mirrorAllowed){this._icons=this._icons||this._createIconMap();return this._prepareSvgClone(this._icons[id],this.size,mirrorAllowed)},_prepareSvgClone:function(sourceSvg,
-size,mirrorAllowed){if(sourceSvg){var content=sourceSvg.cloneNode(true),svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),viewBox=content.getAttribute("viewBox")||"0 0 "+size+" "+size,cssText="pointer-events: none; display: block; width: 100%; height: 100%;";if(mirrorAllowed&&content.hasAttribute("mirror-in-rtl"))cssText+="-webkit-transform:scale(-1,1);transform:scale(-1,1);";svg.setAttribute("viewBox",viewBox);svg.setAttribute("preserveAspectRatio","xMidYMid meet");svg.style.cssText=
-cssText;svg.appendChild(content).removeAttribute("id");return svg}return null}});</script><iron-iconset-svg size="24" name="arc"><svg><defs><g id="account-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z"></path></g><g id="add-circle-outline"><path d="M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7zm-1-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g><g id="add"><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path></g><g id="anypoint-pin"><path d="M13.8993082,3.4355581l7.0314379,4.9234715c-0.5007572,0.1463709-1.0230217,0.2215881-1.5530128,0.2215881 c-0.1495934,0-0.3085251-0.007165-0.4723873-0.0212765L18.331007,8.5098438l-3.5253258,5.0346861l0.2431707,0.5228872 c0.6836739,1.4700317,0.6766796,3.1600895,0.0193348,4.6070614l-8.8596268-6.203578 c1.0200305-1.0022087,2.4050174-1.5794764,3.8621583-1.5794764c0.1502523,0,0.3099775,0.007226,0.474719,0.0214834 l0.5745583,0.0497179l3.1937542-4.5611515l0.3306684-0.4722414l-0.2429876-0.5227895 C14.1125107,4.7848282,13.9437037,4.1142516,13.8993082,3.4355581 M13.0516243,1.6212608 c-0.3259563,1.4169074-0.1637287,2.9012694,0.4429941,4.206656l-2.8629646,4.0887389 c-0.1869087-0.0161734-0.3740377-0.0252066-0.560935-0.0252066c-2.0491304,0-4.0655956,0.9663448-5.3301387,2.7723055 l10.6490097,7.4565134c1.3797503-1.9704952,1.5123148-4.439744,0.5659761-6.4745436l2.8639164-4.090107 c0.1860065,0.0160275,0.3722572,0.0249758,0.5582504,0.0249758c1.2482109,0,2.4841042-0.3585854,3.545845-1.0469103 L13.0516243,1.6212608L13.0516243,1.6212608z M10.0657015,18.3762074l-3.3737302,2.833107l1.5083604-4.1392517 l-0.8479404-0.5937347l-2.8796754,7.902401l6.4409375-5.4087868L10.0657015,18.3762074z M15.2397041,6.6955462 l-3.1956835,4.5639229c0.3131514,0.1211634,0.6159267,0.2716846,0.9053726,0.450428l3.022543-4.3166389 C15.703474,7.1812396,15.459754,6.9468703,15.2397041,6.6955462z"></path></g><g id="arc-icon"><path style="fill:#2196F3" d="M2.3,1h19.3C22.4,1,23,1.6,23,2.3v19.4c0,0.7-0.6,1.3-1.3,1.3H2.3C1.6,23,1,22.4,1,21.7 V2.3C1,1.6,1.6,1,2.3,1z"></path><path style="opacity:0.42;fill:#FFFFFF" d="M15.8,7.1v5.1h-1.9l3.7,4.7l3.7-4.7h-1.9V7.1H15.8L15.8,7.1z"></path><path style="fill:#FFFFFF" d="M10.7,19.3v-7.6h2.8L8.1,4.8l-5.5,6.9h2.8v7.6H10.7z"></path></g><g id="arc-icon-arrows"><polygon style="fill:#2196F3" points="13.3,11.7 8.3,5.2 3.2,11.7 5.7,11.7 5.7,11.7 5.8,11.7 5.8,18.8 10.7,18.8 10.7,11.7 "></polygon><polygon style="opacity:0.42;fill:#2196F3" points="19,12.5 19,7.7 15.7,7.7 15.7,12.5 13.9,12.5 17.4,16.8 20.8,12.5 "></polygon></g><g id="archive"><path d="M20.54 5.23l-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.17 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.27zM12 17.5L6.5 12H10v-2h4v2h3.5L12 17.5zM5.12 5l.81-1h12l.94 1H5.12z"></path></g><g id="arrow-back"><path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"></path></g><g id="arrow-drop-down"><path d="M7 10l5 5 5-5z"></path></g><g id="arrow-drop-up"><path d="M7 14l5-5 5 5z"></path></g><g id="assignment"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"></path></g><g id="bug-report"><path d="M20 8h-2.81c-.45-.78-1.07-1.45-1.82-1.96L17 4.41 15.59 3l-2.17 2.17C12.96 5.06 12.49 5 12 5c-.49 0-.96.06-1.41.17L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8zm-6 8h-4v-2h4v2zm0-4h-4v-2h4v2z"></path></g><g id="build"><path d="M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"></path></g><g id="cached"><path d="M19 8l-4 4h3c0 3.31-2.69 6-6 6-1.01 0-1.97-.25-2.8-.7l-1.46 1.46C8.97 19.54 10.43 20 12 20c4.42 0 8-3.58 8-8h3l-4-4zM6 12c0-3.31 2.69-6 6-6 1.01 0 1.97.25 2.8.7l1.46-1.46C15.03 4.46 13.57 4 12 4c-4.42 0-8 3.58-8 8H1l4 4 4-4H6z"></path></g><g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g><g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></g><g id="cancel"><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"></path></g><g id="clear"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g><g id="clear-all"><path d="M5 13h14v-2H5v2zm-2 4h14v-2H3v2zM7 7v2h14V7H7z"></path></g><g id="close"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g><g id="cloud-download"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM17 13l-5 5-5-5h3V9h4v4h3z"></path></g><g id="code"><path d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"></path></g><g id="collections-bookmark"><path d="M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 10l-2.5-1.5L15 12V4h5v8z"></path></g><g id="content-copy"><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"></path></g><g id="delete"><path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"></path></g><g id="desktop-windows"><path d="M21 2H3c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h7v2H8v2h8v-2h-2v-2h7c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H3V4h18v12z"></path></g><g id="done"><path d="M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"></path></g><g id="drive-color" transform="matrix(1.597046e-4,0,0,1.6517796e-4,1.3671875,2.9482084)"><polygon points="133156,76894 110963,115341 22194,115341 44385,76894 " style="fill:#3777e3"></polygon><polygon points="88772,0 44385,0 88772,76894 133156,76894 " style="fill:#ffcf63"></polygon><polygon points="66578,38447 44385,0 0,76894 22194,115341 " style="fill:#11a861"></polygon></g><g id="drive" transform="matrix(1.597046e-4,0,0,1.6517796e-4,1.3671875,2.9482084)"><polygon points="22194,115341 44385,76894 133156,76894 110963,115341"></polygon><polygon points="88772,76894 133156,76894 88772,0 44385,0"></polygon><polygon points="0,76894 22194,115341 66578,38447 44385,0"></polygon></g><g id="edit"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></g><g id="error"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"></path></g><g id="expand-less"><path d="M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z"></path></g><g id="expand-more"><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path></g><g id="file-download"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path></g><g id="filter-list"><path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"></path></g><g id="folder-shared"><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"></path></g><g id="help"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"></path></g><g id="help-outline"><path d="M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"></path></g><g id="history"><path d="M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"></path></g><g id="home"><path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"></path></g><g id="import-export"><path d="M9 3L5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"></path></g><g id="info"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"></path></g><g id="info-outline"><path d="M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z"></path></g><g id="insert-chart"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z"></path></g><g id="insert-drive-file"><path d="M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6H6zm7 7V3.5L18.5 9H13z"></path></g><g id="keyboard-arrow-down"><path d="M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z"></path></g><g id="keyboard-arrow-up"><path d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path></g><g id="keyboard-arrow-right"><path d="M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"></path></g><g id="list"><path d="M3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14V7H7z"></path></g><g id="markdown" transform="matrix(0.04690339,0,0,0.04690339,0,5.225434)"><path d="m 123.38173,73.504 -50.39773,0 0,167.496 52.516,0 0,-93 50,60 47.62725,-60 0,93 49.87275,0 0,-167.496 -49.87276,0 L 175.5,135.5 Z M 39.998409,0 474.00159,0 C 496.08284,0 514,17.906303 514,39.994846 l 0,235.010304 C 514,297.09032 496.0921,315 474.00159,315 L 39.998409,315 C 17.917157,315 0,297.0937 0,275.00515 L 0,39.994846 C 0,17.909682 17.907898,0 39.998409,0 Z M 360,74.5 l -0.49739,0 -1e-5,86 -48.0026,0 74,80.5 74.00256,-80.99442 -49.97984,0 0,-85.50558 z m 0,0"></path></g><g id="menu"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path></g><g id="mode-edit"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></g><g id="more-vert"><path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"></path></g><g id="new-releases"><path d="M23 12l-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68L23 12zm-10 5h-2v-2h2v2zm0-4h-2V7h2v6z"></path></g><g id="notifications-active"><path d="M7.58 4.08L6.15 2.65C3.75 4.48 2.17 7.3 2.03 10.5h2c.15-2.65 1.51-4.97 3.55-6.42zm12.39 6.42h2c-.15-3.2-1.73-6.02-4.12-7.85l-1.42 1.43c2.02 1.45 3.39 3.77 3.54 6.42zM18 11c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2v-5zm-6 11c.14 0 .27-.01.4-.04.65-.14 1.18-.58 1.44-1.18.1-.24.15-.5.15-.78h-4c.01 1.1.9 2 2.01 2z"></path></g><g id="open-in-new"><path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path></g><g id="rate-review"><path d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 14v-2.47l6.88-6.88c.2-.2.51-.2.71 0l1.77 1.77c.2.2.2.51 0 .71L8.47 14H6zm12 0h-7.5l2-2H18v2z"></path></g><g id="refresh"><path d="M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"></path></g><g id="remove-circle-outline"><path d="M7 11v2h10v-2H7zm5-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g><g id="pin-drawer"><path d="M 15.462891 4.0332031 L 15.462891 20.007812 L 18.392578 20.007812 L 18.392578 4.0332031 L 15.462891 4.0332031 z M 6.9921875 6.0195312 L 5.5820312 7.4296875 L 10.162109 12.019531 L 5.5820312 16.609375 L 6.9921875 18.019531 L 12.992188 12.019531 L 6.9921875 6.0195312 z M 16.017578 11.873047 L 17.865234 11.873047 L 17.865234 19.509766 L 16.017578 19.509766 L 16.017578 11.873047 z"></path></g><g id="spellcheck"><path d="M12.45 16h2.09L9.43 3H7.57L2.46 16h2.09l1.12-3h5.64l1.14 3zm-6.02-5L8.5 5.48 10.57 11H6.43zm15.16.59l-8.09 8.09L9.83 16l-1.41 1.41 5.09 5.09L23 13l-1.41-1.41z"></path></g><g id="sentiment-very-dissatisfied"><path d="M11.99 2C6.47 2 2 6.47 2 12s4.47 10 9.99 10S22 17.53 22 12 17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm4.18-12.24l-1.06 1.06-1.06-1.06L13 8.82l1.06 1.06L13 10.94 14.06 12l1.06-1.06L16.18 12l1.06-1.06-1.06-1.06 1.06-1.06zM7.82 12l1.06-1.06L9.94 12 11 10.94 9.94 9.88 11 8.82 9.94 7.76 8.88 8.82 7.82 7.76 6.76 8.82l1.06 1.06-1.06 1.06zM12 14c-2.33 0-4.31 1.46-5.11 3.5h10.22c-.8-2.04-2.78-3.5-5.11-3.5z"></path></g><g id="sentiment-neutral"><path d="M9 14h6v1.5H9z"></path><circle cx="15.5" cy="9.5" r="1.5"></circle><circle cx="8.5" cy="9.5" r="1.5"></circle><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></path></g><g id="save"><path d="M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h10v4z"></path></g><g id="search"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path></g><g id="send"><path d="M2.01 21L23 12 2.01 3 2 10l15 2-15 2z"></path></g><g id="settings"><path d="M19.43 12.98c.04-.32.07-.64.07-.98s-.03-.66-.07-.98l2.11-1.65c.19-.15.24-.42.12-.64l-2-3.46c-.12-.22-.39-.3-.61-.22l-2.49 1c-.52-.4-1.08-.73-1.69-.98l-.38-2.65C14.46 2.18 14.25 2 14 2h-4c-.25 0-.46.18-.49.42l-.38 2.65c-.61.25-1.17.59-1.69.98l-2.49-1c-.23-.09-.49 0-.61.22l-2 3.46c-.13.22-.07.49.12.64l2.11 1.65c-.04.32-.07.65-.07.98s.03.66.07.98l-2.11 1.65c-.19.15-.24.42-.12.64l2 3.46c.12.22.39.3.61.22l2.49-1c.52.4 1.08.73 1.69.98l.38 2.65c.03.24.24.42.49.42h4c.25 0 .46-.18.49-.42l.38-2.65c.61-.25 1.17-.59 1.69-.98l2.49 1c.23.09.49 0 .61-.22l2-3.46c.12-.22.07-.49-.12-.64l-2.11-1.65zM12 15.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z"></path></g><g id="shield" transform="translate(0,-1028.3622)"><circle r="11.962877" cy="1040.3993" cx="11.962877" style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#1c8adb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.40000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"></circle><path d="m 5.7226134,1035.2177 -5.71610049,5.7162 c 0.25024909,5.9429 3.35576479,9.2981 8.15641339,11.1171 2.1658257,-2.1563 4.3267587,-4.3171 6.4790417,-6.5004 z" style="fill:url(&quot;#linearGradient5637&quot;);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:connector-curvature="0"></path><path d="m 11.962898,1033.391 c -2.0501345,1.0013 -4.3555189,1.8135 -6.240256,1.8267 1.1575901,7.1589 1.8218083,9.9255 6.240256,12.1899 4.418427,-2.2644 5.082673,-5.031 6.240258,-12.1899 -1.884728,-0.013 -4.190132,-0.8254 -6.240258,-1.8267 z" style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:connector-curvature="0"></path><path d="m 11.962878,1033.391 0,7.0084 5.261505,0 c 0.352779,-1.4257 0.64548,-3.121 0.978701,-5.1818 -1.884728,-0.013 -4.19008,-0.8254 -6.240206,-1.8266 z m 0,7.0084 -5.2615633,0 c 0.8727443,3.5268 2.1150231,5.3956 5.2615633,7.0082 l 0,-7.0082 z" style="fill:#000000;fill-opacity:0.13473056;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:connector-curvature="0"></path></g><g id="short-text"><path d="M4 9h16v2H4zm0 4h10v2H4z"></path></g><g id="view-column"><path d="M10 18h5V5h-5v13zm-6 0h5V5H4v13zM16 5v13h5V5h-5z"></path></g><g id="visibility"><path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"></path></g><g id="visibility-off"><path d="M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"></path></g><g id="warning"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"></path></g><g id="wrap-text"><path d="M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3 3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"></path></g><g id="zoom-in"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14zm2.5-4h-2v2H9v-2H7V9h2V7h1v2h2v1z"></path></g></defs></svg></iron-iconset-svg><script>Polymer.IronButtonStateImpl={properties:{pressed:{type:Boolean,readOnly:true,value:false,reflectToAttribute:true,observer:"_pressedChanged"},toggles:{type:Boolean,value:false,reflectToAttribute:true},active:{type:Boolean,value:false,notify:true,reflectToAttribute:true},pointerDown:{type:Boolean,readOnly:true,value:false},receivedFocusFromKeyboard:{type:Boolean,readOnly:true},ariaActiveAttribute:{type:String,value:"aria-pressed",observer:"_ariaActiveAttributeChanged"}},listeners:{down:"_downHandler",
+size,mirrorAllowed){if(sourceSvg){var content=sourceSvg.cloneNode(true),svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),viewBox=content.getAttribute("viewBox")||"0 0 "+size+" "+size,cssText="pointer-events: none; display: block; width: 100%; height: 100%;";if(mirrorAllowed&&content.hasAttribute("mirror-in-rtl"))cssText+="-webkit-transform:scale(-1,1);transform:scale(-1,1);";svg.setAttribute("viewBox",viewBox);svg.setAttribute("preserveAspectRatio","xMidYMid meet");svg.setAttribute("focusable",
+"false");svg.style.cssText=cssText;svg.appendChild(content).removeAttribute("id");return svg}return null}});</script><iron-iconset-svg size="24" name="arc"><svg><defs><g id="account-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z"></path></g><g id="add-circle-outline"><path d="M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7zm-1-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g><g id="add"><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path></g><g id="arc-icon"><path style="fill:#2196F3" d="M2.3,1h19.3C22.4,1,23,1.6,23,2.3v19.4c0,0.7-0.6,1.3-1.3,1.3H2.3C1.6,23,1,22.4,1,21.7 V2.3C1,1.6,1.6,1,2.3,1z"></path><path style="opacity:0.42;fill:#FFFFFF" d="M15.8,7.1v5.1h-1.9l3.7,4.7l3.7-4.7h-1.9V7.1H15.8L15.8,7.1z"></path><path style="fill:#FFFFFF" d="M10.7,19.3v-7.6h2.8L8.1,4.8l-5.5,6.9h2.8v7.6H10.7z"></path></g><g id="arc-icon-arrows"><polygon style="fill:#2196F3" points="13.3,11.7 8.3,5.2 3.2,11.7 5.7,11.7 5.7,11.7 5.8,11.7 5.8,18.8 10.7,18.8 10.7,11.7 "></polygon><polygon style="opacity:0.42;fill:#2196F3" points="19,12.5 19,7.7 15.7,7.7 15.7,12.5 13.9,12.5 17.4,16.8 20.8,12.5 "></polygon></g><g id="archive"><path d="M20.54 5.23l-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.17 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.27zM12 17.5L6.5 12H10v-2h4v2h3.5L12 17.5zM5.12 5l.81-1h12l.94 1H5.12z"></path></g><g id="arrow-back"><path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"></path></g><g id="arrow-drop-down"><path d="M7 10l5 5 5-5z"></path></g><g id="arrow-drop-up"><path d="M7 14l5-5 5 5z"></path></g><g id="assignment"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"></path></g><g id="bug-report"><path d="M20 8h-2.81c-.45-.78-1.07-1.45-1.82-1.96L17 4.41 15.59 3l-2.17 2.17C12.96 5.06 12.49 5 12 5c-.49 0-.96.06-1.41.17L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8zm-6 8h-4v-2h4v2zm0-4h-4v-2h4v2z"></path></g><g id="build"><path d="M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"></path></g><g id="cached"><path d="M19 8l-4 4h3c0 3.31-2.69 6-6 6-1.01 0-1.97-.25-2.8-.7l-1.46 1.46C8.97 19.54 10.43 20 12 20c4.42 0 8-3.58 8-8h3l-4-4zM6 12c0-3.31 2.69-6 6-6 1.01 0 1.97.25 2.8.7l1.46-1.46C15.03 4.46 13.57 4 12 4c-4.42 0-8 3.58-8 8H1l4 4 4-4H6z"></path></g><g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g><g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></g><g id="cancel"><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"></path></g><g id="clear"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g><g id="clear-all"><path d="M5 13h14v-2H5v2zm-2 4h14v-2H3v2zM7 7v2h14V7H7z"></path></g><g id="close"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g><g id="cloud-download"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM17 13l-5 5-5-5h3V9h4v4h3z"></path></g><g id="code"><path d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"></path></g><g id="collections-bookmark"><path d="M4 6H2v14c0 1.1.9 2 2 2h14v-2H4V6zm16-4H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 10l-2.5-1.5L15 12V4h5v8z"></path></g><g id="content-copy"><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"></path></g><g id="delete"><path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"></path></g><g id="desktop-windows"><path d="M21 2H3c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h7v2H8v2h8v-2h-2v-2h7c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H3V4h18v12z"></path></g><g id="done"><path d="M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"></path></g><g id="drive-color" transform="matrix(1.597046e-4,0,0,1.6517796e-4,1.3671875,2.9482084)"><polygon points="133156,76894 110963,115341 22194,115341 44385,76894 " style="fill:#3777e3"></polygon><polygon points="88772,0 44385,0 88772,76894 133156,76894 " style="fill:#ffcf63"></polygon><polygon points="66578,38447 44385,0 0,76894 22194,115341 " style="fill:#11a861"></polygon></g><g id="drive" transform="matrix(1.597046e-4,0,0,1.6517796e-4,1.3671875,2.9482084)"><polygon points="22194,115341 44385,76894 133156,76894 110963,115341"></polygon><polygon points="88772,76894 133156,76894 88772,0 44385,0"></polygon><polygon points="0,76894 22194,115341 66578,38447 44385,0"></polygon></g><g id="edit"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></g><g id="error"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"></path></g><g id="expand-less"><path d="M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z"></path></g><g id="expand-more"><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path></g><g id="file-download"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path></g><g id="filter-list"><path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"></path></g><g id="folder-shared"><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"></path></g><g id="help"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"></path></g><g id="help-outline"><path d="M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"></path></g><g id="history"><path d="M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"></path></g><g id="home"><path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"></path></g><g id="import-export"><path d="M9 3L5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"></path></g><g id="info"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"></path></g><g id="info-outline"><path d="M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z"></path></g><g id="insert-chart"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z"></path></g><g id="insert-drive-file"><path d="M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6H6zm7 7V3.5L18.5 9H13z"></path></g><g id="keyboard-arrow-down"><path d="M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z"></path></g><g id="keyboard-arrow-up"><path d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"></path></g><g id="keyboard-arrow-right"><path d="M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"></path></g><g id="list"><path d="M3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14V7H7z"></path></g><g id="markdown" transform="matrix(0.04690339,0,0,0.04690339,0,5.225434)"><path d="m 123.38173,73.504 -50.39773,0 0,167.496 52.516,0 0,-93 50,60 47.62725,-60 0,93 49.87275,0 0,-167.496 -49.87276,0 L 175.5,135.5 Z M 39.998409,0 474.00159,0 C 496.08284,0 514,17.906303 514,39.994846 l 0,235.010304 C 514,297.09032 496.0921,315 474.00159,315 L 39.998409,315 C 17.917157,315 0,297.0937 0,275.00515 L 0,39.994846 C 0,17.909682 17.907898,0 39.998409,0 Z M 360,74.5 l -0.49739,0 -1e-5,86 -48.0026,0 74,80.5 74.00256,-80.99442 -49.97984,0 0,-85.50558 z m 0,0"></path></g><g id="menu"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path></g><g id="mode-edit"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></g><g id="more-vert"><path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"></path></g><g id="new-releases"><path d="M23 12l-2.44-2.78.34-3.68-3.61-.82-1.89-3.18L12 3 8.6 1.54 6.71 4.72l-3.61.81.34 3.68L1 12l2.44 2.78-.34 3.69 3.61.82 1.89 3.18L12 21l3.4 1.46 1.89-3.18 3.61-.82-.34-3.68L23 12zm-10 5h-2v-2h2v2zm0-4h-2V7h2v6z"></path></g><g id="notifications-active"><path d="M7.58 4.08L6.15 2.65C3.75 4.48 2.17 7.3 2.03 10.5h2c.15-2.65 1.51-4.97 3.55-6.42zm12.39 6.42h2c-.15-3.2-1.73-6.02-4.12-7.85l-1.42 1.43c2.02 1.45 3.39 3.77 3.54 6.42zM18 11c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2v-5zm-6 11c.14 0 .27-.01.4-.04.65-.14 1.18-.58 1.44-1.18.1-.24.15-.5.15-.78h-4c.01 1.1.9 2 2.01 2z"></path></g><g id="open-in-new"><path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path></g><g id="raml-r"><path d="M14.44,1.48H3L4.16,3.3H14.37a4.59,4.59,0,0,1,3.31,1.41A4.8,4.8,0,0,1,19,8.07,4.45,4.45,0,0,1,17.7,11.3a5.72,5.72,0,0,1-3.28,1.54H13.17l-3.45,0,1,1.72h1.51l.08.13h0l4.45,7.51,0,0,0,0a1,1,0,0,0,1.7-.71.54.54,0,0,0-.15-.41,1.21,1.21,0,0,1-.14-.2l-3.68-6.26a6.47,6.47,0,0,0,4.51-1.92A6.61,6.61,0,0,0,14.44,1.48Z"></path></g><g id="rate-review"><path d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 14v-2.47l6.88-6.88c.2-.2.51-.2.71 0l1.77 1.77c.2.2.2.51 0 .71L8.47 14H6zm12 0h-7.5l2-2H18v2z"></path></g><g id="refresh"><path d="M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"></path></g><g id="remove-circle-outline"><path d="M7 11v2h10v-2H7zm5-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g><g id="pin-drawer"><path d="M 15.462891 4.0332031 L 15.462891 20.007812 L 18.392578 20.007812 L 18.392578 4.0332031 L 15.462891 4.0332031 z M 6.9921875 6.0195312 L 5.5820312 7.4296875 L 10.162109 12.019531 L 5.5820312 16.609375 L 6.9921875 18.019531 L 12.992188 12.019531 L 6.9921875 6.0195312 z M 16.017578 11.873047 L 17.865234 11.873047 L 17.865234 19.509766 L 16.017578 19.509766 L 16.017578 11.873047 z"></path></g><g id="spellcheck"><path d="M12.45 16h2.09L9.43 3H7.57L2.46 16h2.09l1.12-3h5.64l1.14 3zm-6.02-5L8.5 5.48 10.57 11H6.43zm15.16.59l-8.09 8.09L9.83 16l-1.41 1.41 5.09 5.09L23 13l-1.41-1.41z"></path></g><g id="sentiment-very-dissatisfied"><path d="M11.99 2C6.47 2 2 6.47 2 12s4.47 10 9.99 10S22 17.53 22 12 17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm4.18-12.24l-1.06 1.06-1.06-1.06L13 8.82l1.06 1.06L13 10.94 14.06 12l1.06-1.06L16.18 12l1.06-1.06-1.06-1.06 1.06-1.06zM7.82 12l1.06-1.06L9.94 12 11 10.94 9.94 9.88 11 8.82 9.94 7.76 8.88 8.82 7.82 7.76 6.76 8.82l1.06 1.06-1.06 1.06zM12 14c-2.33 0-4.31 1.46-5.11 3.5h10.22c-.8-2.04-2.78-3.5-5.11-3.5z"></path></g><g id="sentiment-neutral"><path d="M9 14h6v1.5H9z"></path><circle cx="15.5" cy="9.5" r="1.5"></circle><circle cx="8.5" cy="9.5" r="1.5"></circle><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></path></g><g id="save"><path d="M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h10v4z"></path></g><g id="search"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path></g><g id="send"><path d="M2.01 21L23 12 2.01 3 2 10l15 2-15 2z"></path></g><g id="settings"><path d="M19.43 12.98c.04-.32.07-.64.07-.98s-.03-.66-.07-.98l2.11-1.65c.19-.15.24-.42.12-.64l-2-3.46c-.12-.22-.39-.3-.61-.22l-2.49 1c-.52-.4-1.08-.73-1.69-.98l-.38-2.65C14.46 2.18 14.25 2 14 2h-4c-.25 0-.46.18-.49.42l-.38 2.65c-.61.25-1.17.59-1.69.98l-2.49-1c-.23-.09-.49 0-.61.22l-2 3.46c-.13.22-.07.49.12.64l2.11 1.65c-.04.32-.07.65-.07.98s.03.66.07.98l-2.11 1.65c-.19.15-.24.42-.12.64l2 3.46c.12.22.39.3.61.22l2.49-1c.52.4 1.08.73 1.69.98l.38 2.65c.03.24.24.42.49.42h4c.25 0 .46-.18.49-.42l.38-2.65c.61-.25 1.17-.59 1.69-.98l2.49 1c.23.09.49 0 .61-.22l2-3.46c.12-.22.07-.49-.12-.64l-2.11-1.65zM12 15.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z"></path></g><g id="shield" transform="translate(0,-1028.3622)"><circle r="11.962877" cy="1040.3993" cx="11.962877" style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#1c8adb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.40000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"></circle><path d="m 5.7226134,1035.2177 -5.71610049,5.7162 c 0.25024909,5.9429 3.35576479,9.2981 8.15641339,11.1171 2.1658257,-2.1563 4.3267587,-4.3171 6.4790417,-6.5004 z" style="fill:url(&quot;#linearGradient5637&quot;);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:connector-curvature="0"></path><path d="m 11.962898,1033.391 c -2.0501345,1.0013 -4.3555189,1.8135 -6.240256,1.8267 1.1575901,7.1589 1.8218083,9.9255 6.240256,12.1899 4.418427,-2.2644 5.082673,-5.031 6.240258,-12.1899 -1.884728,-0.013 -4.190132,-0.8254 -6.240258,-1.8267 z" style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:connector-curvature="0"></path><path d="m 11.962878,1033.391 0,7.0084 5.261505,0 c 0.352779,-1.4257 0.64548,-3.121 0.978701,-5.1818 -1.884728,-0.013 -4.19008,-0.8254 -6.240206,-1.8266 z m 0,7.0084 -5.2615633,0 c 0.8727443,3.5268 2.1150231,5.3956 5.2615633,7.0082 l 0,-7.0082 z" style="fill:#000000;fill-opacity:0.13473056;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:connector-curvature="0"></path></g><g id="short-text"><path d="M4 9h16v2H4zm0 4h10v2H4z"></path></g><g id="view-column"><path d="M10 18h5V5h-5v13zm-6 0h5V5H4v13zM16 5v13h5V5h-5z"></path></g><g id="view-list"><path d="M4 14h4v-4H4v4zm0 5h4v-4H4v4zM4 9h4V5H4v4zm5 5h12v-4H9v4zm0 5h12v-4H9v4zM9 5v4h12V5H9z"></path></g><g id="visibility"><path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"></path></g><g id="visibility-off"><path d="M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"></path></g><g id="warning"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"></path></g><g id="wrap-text"><path d="M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3 3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"></path></g><g id="zoom-in"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14zm2.5-4h-2v2H9v-2H7V9h2V7h1v2h2v1z"></path></g></defs></svg></iron-iconset-svg><script>Polymer.IronButtonStateImpl={properties:{pressed:{type:Boolean,readOnly:true,value:false,reflectToAttribute:true,observer:"_pressedChanged"},toggles:{type:Boolean,value:false,reflectToAttribute:true},active:{type:Boolean,value:false,notify:true,reflectToAttribute:true},pointerDown:{type:Boolean,readOnly:true,value:false},receivedFocusFromKeyboard:{type:Boolean,readOnly:true},ariaActiveAttribute:{type:String,value:"aria-pressed",observer:"_ariaActiveAttributeChanged"}},listeners:{down:"_downHandler",
 up:"_upHandler",tap:"_tapHandler"},observers:["_focusChanged(focused)","_activeChanged(active, ariaActiveAttribute)"],keyBindings:{"enter:keydown":"_asyncClick","space:keydown":"_spaceKeyDownHandler","space:keyup":"_spaceKeyUpHandler"},_mouseEventRe:/^mouse/,_tapHandler:function(){if(this.toggles)this._userActivate(!this.active);else this.active=false},_focusChanged:function(focused){this._detectKeyboardFocus(focused);if(!focused)this._setPressed(false)},_detectKeyboardFocus:function(focused){this._setReceivedFocusFromKeyboard(!this.pointerDown&&
 focused)},_userActivate:function(active){if(this.active!==active){this.active=active;this.fire("change")}},_downHandler:function(event){this._setPointerDown(true);this._setPressed(true);this._setReceivedFocusFromKeyboard(false)},_upHandler:function(){this._setPointerDown(false);this._setPressed(false)},_spaceKeyDownHandler:function(event){var keyboardEvent=event.detail.keyboardEvent;var target=Polymer.dom(keyboardEvent).localTarget;if(this.isLightDescendant((target)))return;keyboardEvent.preventDefault();
 keyboardEvent.stopImmediatePropagation();this._setPressed(true)},_spaceKeyUpHandler:function(event){var keyboardEvent=event.detail.keyboardEvent;var target=Polymer.dom(keyboardEvent).localTarget;if(this.isLightDescendant((target)))return;if(this.pressed)this._asyncClick();this._setPressed(false)},_asyncClick:function(){this.async(function(){this.click()},1)},_pressedChanged:function(pressed){this._changedButtonState()},_ariaActiveAttributeChanged:function(value,oldValue){if(oldValue&&oldValue!=value&&
@@ -589,23 +624,25 @@ Polymer.PaperInkyFocusBehavior=[Polymer.IronButtonState,Polymer.IronControlState
 "max-width":"max-height"},hostAttributes:{role:"group","aria-hidden":"true","aria-expanded":"false"},listeners:{transitionend:"_onTransitionEnd"},toggle:function(){this.opened=!this.opened},show:function(){this.opened=true},hide:function(){this.opened=false},updateSize:function(size,animated){size=size==="auto"?"":size;var willAnimate=animated&&!this.noAnimation&&this.isAttached&&this._desiredSize!==size;this._desiredSize=size;this._updateTransition(false);if(willAnimate){var startSize=this._calcSize();
 if(size===""){this.style[this._dimensionMax]="";size=this._calcSize()}this.style[this._dimensionMax]=startSize;this.scrollTop=this.scrollTop;this._updateTransition(true);willAnimate=size!==startSize}this.style[this._dimensionMax]=size;if(!willAnimate)this._transitionEnd()},enableTransition:function(enabled){Polymer.Base._warn("`enableTransition()` is deprecated, use `noAnimation` instead.");this.noAnimation=!enabled},_updateTransition:function(enabled){this.style.transitionDuration=enabled&&!this.noAnimation?
 "":"0s"},_horizontalChanged:function(){this.style.transitionProperty=this._dimensionMaxCss;var otherDimension=this._dimensionMax==="maxWidth"?"maxHeight":"maxWidth";this.style[otherDimension]="";this.updateSize(this.opened?"auto":"0px",false)},_openedChanged:function(){this.setAttribute("aria-expanded",this.opened);this.setAttribute("aria-hidden",!this.opened);this._setTransitioning(true);this.toggleClass("iron-collapse-closed",false);this.toggleClass("iron-collapse-opened",false);this.updateSize(this.opened?
-"auto":"0px",true);if(this.opened)this.focus()},_transitionEnd:function(){this.style[this._dimensionMax]=this._desiredSize;this.toggleClass("iron-collapse-closed",!this.opened);this.toggleClass("iron-collapse-opened",this.opened);this._updateTransition(false);this.notifyResize();this._setTransitioning(false)},_onTransitionEnd:function(event){if(Polymer.dom(event).rootTarget===this)this._transitionEnd()},_calcSize:function(){return this.getBoundingClientRect()[this.dimension]+"px"}});</script><script>Polymer.PaperItemBehaviorImpl={hostAttributes:{role:"option",tabindex:"0"}};Polymer.PaperItemBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperItemBehaviorImpl];</script><link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto+Mono:400,700|Roboto:400,300,300italic,400italic,500,500italic,700,700italic" crossorigin="anonymous"><style is="custom-style">:root{--paper-font-common-base:{font-family:'Roboto', 'Noto', sans-serif;-webkit-font-smoothing:antialiased;};--paper-font-common-code:{font-family:'Roboto Mono', 'Consolas', 'Menlo', monospace;-webkit-font-smoothing:antialiased;};--paper-font-common-expensive-kerning:{text-rendering:optimizeLegibility;};--paper-font-common-nowrap:{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;};--paper-font-display4:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:112px;font-weight:300;letter-spacing:-.044em;line-height:120px;};--paper-font-display3:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:56px;font-weight:400;letter-spacing:-.026em;line-height:60px;};--paper-font-display2:{@apply (--paper-font-common-base);font-size:45px;font-weight:400;letter-spacing:-.018em;line-height:48px;};--paper-font-display1:{@apply (--paper-font-common-base);font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px;};--paper-font-headline:{@apply (--paper-font-common-base);font-size:24px;font-weight:400;letter-spacing:-.012em;line-height:32px;};--paper-font-title:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:20px;font-weight:500;line-height:28px;};--paper-font-subhead:{@apply (--paper-font-common-base);font-size:16px;font-weight:400;line-height:24px;};--paper-font-body2:{@apply (--paper-font-common-base);font-size:14px;font-weight:500;line-height:24px;};--paper-font-body1:{@apply (--paper-font-common-base);font-size:14px;font-weight:400;line-height:20px;};--paper-font-caption:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20px;};--paper-font-menu:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:13px;font-weight:500;line-height:24px;};--paper-font-button:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:14px;font-weight:500;letter-spacing:0.018em;line-height:24px;text-transform:uppercase;};--paper-font-code2:{@apply (--paper-font-common-code);font-size:14px;font-weight:700;line-height:20px;};--paper-font-code1:{@apply (--paper-font-common-code);font-size:14px;font-weight:500;line-height:20px;};}</style><dom-module id="paper-item-shared-styles" assetpath="bower_components/paper-item/"><template><style>:host, .paper-item{display:block;position:relative;min-height:var(--paper-item-min-height, 48px);padding:0px 16px;}.paper-item{@apply (--paper-font-subhead);border:none;outline:none;background:white;width:100%;text-align:left;}:host([hidden]), .paper-item[hidden]{display:none !important;}:host(.iron-selected), .paper-item.iron-selected{font-weight:var(--paper-item-selected-weight, bold);@apply (--paper-item-selected);}:host([disabled]), .paper-item[disabled]{color:var(--paper-item-disabled-color, --disabled-text-color);@apply (--paper-item-disabled);}:host(:focus), .paper-item:focus{position:relative;outline:0;@apply (--paper-item-focused);}:host(:focus):before, .paper-item:focus:before{@apply (--layout-fit);background:currentColor;content:'';opacity:var(--dark-divider-opacity);pointer-events:none;@apply (--paper-item-focused-before);}</style></template></dom-module><dom-module id="paper-item" assetpath="bower_components/paper-item/"><template><style include="paper-item-shared-styles"></style><style>:host{@apply (--layout-horizontal);@apply (--layout-center);@apply (--paper-font-subhead);@apply (--paper-item);}</style><content></content></template><script>Polymer({is:"paper-item",behaviors:[Polymer.PaperItemBehavior]});</script></dom-module><script>(function(g){g.RamlBehaviors=g.RamlBehaviors||{};g.RamlBehaviors.RamlTreeItemBehavior={properties:{path:{type:String,value:""},selectedPath:String,isSelected:{type:Boolean,computed:"_computeIsSelected(selectedPath, path)"},indent:Number,indentSize:Number,_indentPixels:String},observers:["__indentPixelsChanged(_indentPixels)","_indentChnaged(indent, indentSize)"],_indentChnaged:function(indent,indentSize){if(!indent||!indentSize)return this.set("_indentPixels",undefined);var size=indent*indentSize;
+"auto":"0px",true);if(this.opened)this.focus()},_transitionEnd:function(){this.style[this._dimensionMax]=this._desiredSize;this.toggleClass("iron-collapse-closed",!this.opened);this.toggleClass("iron-collapse-opened",this.opened);this._updateTransition(false);this.notifyResize();this._setTransitioning(false)},_onTransitionEnd:function(event){if(Polymer.dom(event).rootTarget===this)this._transitionEnd()},_calcSize:function(){return this.getBoundingClientRect()[this.dimension]+"px"}});</script><script>Polymer.PaperItemBehaviorImpl={hostAttributes:{role:"option",tabindex:"0"}};Polymer.PaperItemBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperItemBehaviorImpl];</script><link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Roboto+Mono:400,700|Roboto:400,300,300italic,400italic,500,500italic,700,700italic" crossorigin="anonymous"><style is="custom-style">:root{--paper-font-common-base:{font-family:'Roboto', 'Noto', sans-serif;-webkit-font-smoothing:antialiased;};--paper-font-common-code:{font-family:'Roboto Mono', 'Consolas', 'Menlo', monospace;-webkit-font-smoothing:antialiased;};--paper-font-common-expensive-kerning:{text-rendering:optimizeLegibility;};--paper-font-common-nowrap:{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;};--paper-font-display4:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:112px;font-weight:300;letter-spacing:-.044em;line-height:120px;};--paper-font-display3:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:56px;font-weight:400;letter-spacing:-.026em;line-height:60px;};--paper-font-display2:{@apply (--paper-font-common-base);font-size:45px;font-weight:400;letter-spacing:-.018em;line-height:48px;};--paper-font-display1:{@apply (--paper-font-common-base);font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px;};--paper-font-headline:{@apply (--paper-font-common-base);font-size:24px;font-weight:400;letter-spacing:-.012em;line-height:32px;};--paper-font-title:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:20px;font-weight:500;line-height:28px;};--paper-font-subhead:{@apply (--paper-font-common-base);font-size:16px;font-weight:400;line-height:24px;};--paper-font-body2:{@apply (--paper-font-common-base);font-size:14px;font-weight:500;line-height:24px;};--paper-font-body1:{@apply (--paper-font-common-base);font-size:14px;font-weight:400;line-height:20px;};--paper-font-caption:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20px;};--paper-font-menu:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:13px;font-weight:500;line-height:24px;};--paper-font-button:{@apply (--paper-font-common-base);@apply (--paper-font-common-nowrap);font-size:14px;font-weight:500;letter-spacing:0.018em;line-height:24px;text-transform:uppercase;};--paper-font-code2:{@apply (--paper-font-common-code);font-size:14px;font-weight:700;line-height:20px;};--paper-font-code1:{@apply (--paper-font-common-code);font-size:14px;font-weight:500;line-height:20px;};}</style><dom-module id="paper-item-shared-styles" assetpath="bower_components/paper-item/"><template><style>:host, .paper-item{display:block;position:relative;min-height:var(--paper-item-min-height, 48px);padding:0px 16px;}.paper-item{@apply (--paper-font-subhead);border:none;outline:none;background:white;width:100%;text-align:left;}:host([hidden]), .paper-item[hidden]{display:none !important;}:host(.iron-selected), .paper-item.iron-selected{font-weight:var(--paper-item-selected-weight, bold);@apply (--paper-item-selected);}:host([disabled]), .paper-item[disabled]{color:var(--paper-item-disabled-color, --disabled-text-color);@apply (--paper-item-disabled);}:host(:focus), .paper-item:focus{position:relative;outline:0;@apply (--paper-item-focused);}:host(:focus):before, .paper-item:focus:before{@apply (--layout-fit);background:currentColor;content:'';opacity:var(--dark-divider-opacity);pointer-events:none;@apply (--paper-item-focused-before);}</style></template></dom-module><dom-module id="paper-item" assetpath="bower_components/paper-item/"><template><style include="paper-item-shared-styles"></style><style>:host{@apply (--layout-horizontal);@apply (--layout-center);@apply (--paper-font-subhead);@apply (--paper-item);}</style><content></content></template><script>Polymer({is:"paper-item",behaviors:[Polymer.PaperItemBehavior]});</script></dom-module><script>(function(g){g.RamlBehaviors=g.RamlBehaviors||{};g.RamlBehaviors.RamlTreeItemBehavior={properties:{path:{type:String,value:""},selectedPath:String,isSelected:{type:Boolean,computed:"_computeIsSelected(selectedPath, path)"},indent:Number,indentSize:Number,_indentPixels:String},observers:["__indentPixelsChanged(_indentPixels)","_indentChnaged(indent, indentSize)"],_indentChnaged:function(indent,indentSize){if(!indent||!indentSize)return this.set("_indentPixels",undefined);var size=indent*indentSize;
 this.set("_indentPixels",size+"px")},_selectPath:function(e){var target=e.target;while(true){if(!target||target===document.body)return;if(target.nodeName&&target.nodeName==="PAPER-ITEM")break;if(!target.parentNode)return;target=target.parentNode}var path=target.dataset?target.dataset.path:null;if(!path)return;this.fire("raml-path-selected",{path:path})},_computeItemSelectableClass:function(selectedPath,path,index){if(index!==undefined)path=path+".methods."+index;if(path===selectedPath)return"selected";
 return""},_computeIsSelected:function(selectedPath,path){if(!selectedPath||!path)return false;return selectedPath===path},scrollElementIntoView:function(){if(this.scrollIntoViewIfNeeded)this.scrollIntoViewIfNeeded();else if(this.scrollIntoView)this.scrollIntoView()},__indentPixelsChanged:function(_indentPixels){if(!_indentPixels)_indentPixels="0px";this.customStyle["--indent-size-padding"]=_indentPixels;this.updateStyles()}}})(window);</script><dom-module id="raml-tree-item-styles" assetpath="bower_components/raml-path-selector/"><template><style>:host{display:block;@apply (--raml-docs-tree-item-element);background-color:var(--raml-docs-tree-item-element-background, transparent);--selection-color:var(--raml-path-selector-selection-color, #fafafa);--selection-background-color:var(--raml-path-selector-selection-background-color, #00A2DF);--paper-item-focused-before:{background-color:transparent;};--indent-size-padding:0px;--method-display-box:{margin-right:8px;display:block;background:var(--method-display-background-color, rgba(128, 128, 128, 0.12));color:var(--method-display-color, rgb(128, 128, 128));padding:0px 4px;border-radius:2px;font-size:14px;text-transform:uppercase;};--method-display-box-hover:{background:var(--method-display-background-color-hover, --selection-color);color:var(--method-display-color-hover, --selection-background-color);};--method-display-box-selected:{background:var(--method-display-background-color-hover, --selection-color);color:var(--method-display-color-hover, --selection-background-color);};--method-display-box-get:{background:var(--method-display-get-background-color, rgba(0, 128, 0, 0.12));color:var(--method-display-get-color, rgb(0, 128, 0));};--method-display-box-post:{background:var(--method-display-post-background-color, rgba(33, 150, 243, 0.12));color:var(--method-display-post-color, rgb(33, 150, 243));};--method-display-box-put:{background:var(--method-display-put-background-color, rgba(255, 165, 0, 0.12));color:var(--method-display-put-color, rgb(255, 165, 0));};--method-display-box-delete:{background:var(--method-display-delete-background-color, rgba(244, 67, 54, 0.12));color:var(--method-display-delete-color, rgb(244, 67, 54));};--method-display-box-patch:{background:var(--method-display-patch-background-color, rgba(156, 39, 176, 0.12));color:var(--method-display-patch-color, rgb(156, 39, 176));};}:host(:focus),
     :focus{outline:var(--raml-docs-tree-outline, none);}paper-item{min-height:44px;padding:0px 16px;cursor:pointer;@apply (--raml-docs-tree-item);background-color:var(--raml-docs-tree-item-background, transparent);color:var(--raml-docs-tree-item-color, #6b6c6d);border-left:4px transparent solid;transition:background-color 0.1s ease-in-out, color 0.1s ease-in-out;}paper-item:not(.selected):hover,
-    paper-item:not(.selected):active{background-color:var(--raml-docs-tree-item-hover-selector-color, --selection-background-color);color:var(--raml-docs-tree-item-color-hovered, --selection-color);}.selected{background-color:var(--raml-docs-tree-item-selected-selector-color, --selection-background-color);color:var(--raml-docs-tree-item-color-selected, --selection-color);}.indentable-content{padding-left:var(--indent-size-padding);}.enter-button{color:var(--raml-path-selector-toggle-icon-color, rgba(0, 0, 0, 0.54));transform:rotateZ(-90deg);}.method-name-item{padding-left:24px;}.method{@apply (--method-display-box);}.method.get{@apply (--method-display-box-get);}.method.post{@apply (--method-display-box-post);}.method.put{@apply (--method-display-box-put);}.method.delete{@apply (--method-display-box-delete);}.method.patch{@apply (--method-display-box-patch);}paper-item:not(.selected):hover .method{@apply (--method-display-box-hover);}paper-item.selected .method{@apply (--method-display-box-selected);}.method-description{@apply (--layout-horizontal);@apply (--layout-center);}.method-display{@apply (--layout-flex);}.ie-sizer{min-height:44px;}</style></template></dom-module><script>(function(g){g.RamlBehaviors=g.RamlBehaviors||{};g.RamlBehaviors.PathSelectorBehavior={properties:{selectedPath:String,opened:{type:Boolean,observer:"_openedChanged"}},back:function(){this.fire("raml-path-selector-nav-back")},_openedChanged:function(opened){if(opened){this.style.display="block";if(this.__closeTimer){this.cancelAsync(this.__closeTimer);this.__closeTimer=undefined}Polymer.RenderStatus.afterNextRender(this,function(){this.transform("translate3d(0, 0, 0)")})}else{this.transform("translate3d(100%, 0, 0)");
-this.__closeTimer=this.async(function(){this.style.display="none"},300)}}}})(window);</script><dom-module id="raml-type-tree-item" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles"></style><paper-item data-path$="[[path]]" on-tap="_selectPath" class$="[[_computeItemSelectableClass(selectedPath, path)]]"><span class="ie-sizer"></span><span class="indentable-content">[[_computeName(type.*)]]</span></paper-item></template><script>Polymer({is:"raml-type-tree-item",behaviors:[RamlBehaviors.RamlTreeItemBehavior],properties:{type:Object},_computeName:function(record){if(!record||!record.base)return;var type=record.base;return type.displayName||type.name||type.key}});</script></dom-module><dom-module id="path-selector-styles" assetpath="bower_components/raml-path-selector/"><template><style>:host{display:none;@apply (--layout-fit);background-color:#fff;transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:0.3s;transition-duration:0.3s;-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);z-index:1;}.section-title{@apply (--layout-horizontal);@apply (--layout-center);cursor:pointer;}.section-title h3{@apply (--layout-flex);padding-left:0;}.back-button{color:var(--raml-path-selector-back-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;}.back-button:hover{color:var(--raml-path-selector-back-icon-color-hover, rgba(0, 0, 0, 0.87));}</style></template></dom-module><dom-module id="path-selector-resource" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles"></style><style include="path-selector-styles"></style><style>paper-item{white-space:nowrap;}</style><template is="dom-if" if="[[opened]]"><div class="section-title"><paper-icon-button on-tap="back" class="back-button" icon="arc:chevron-left" noink="[[noink]]"></paper-icon-button><h3>[[resourceName]]</h3></div><template is="dom-repeat" items="[[methods]]"><paper-item data-path$="[[path]].methods.[[index]]" on-tap="_selectPath" class$="method-name-item [[_computeItemSelectableClass(selectedPath, path, index)]]" title$="[[item.method]] [[item.description]]"><span class="indentable-content method-description"><span class$="[[_computeMethodClass(item.method)]]">[[item.method]]</span> <span class="method-display">[[item.displayName]]</span></span></paper-item></template><template is="dom-repeat" items="[[resources]]"><raml-resource-tree-item indent="1" indent-size="12" selected-path="[[selectedPath]]" resource="[[item]]" path="[[_computeSubresourcePath(path, index)]]" opened="[[itemsOpened]]" narrow=""></raml-resource-tree-item></template></template></template><script>Polymer({is:"path-selector-resource",behaviors:[RamlBehaviors.RamlTreeItemBehavior,RamlBehaviors.PathSelectorBehavior],properties:{resources:Array,methods:Array,itemsOpened:Boolean,resourceName:{type:String,value:function(){return"Resources"}},path:{type:String,value:function(){return""}},noink:Boolean},_computeMethodClass:function(method){if(!method)return;method=method.toLowerCase();var clazz="method ";switch(method){case "get":case "post":case "put":case "delete":case "patch":clazz+=method;break}return clazz},
-_computeSubresourcePath:function(path,index){var result="";if(path)result+=path+".";result+=path+"resources."+index;return result}});</script></dom-module><dom-module id="raml-resource-tree-item" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles">*:focus{outline:none;}.toggle-button{transition:transform 0.35s ease;transform:rotateZ(-90deg);}:host([opened])>paper-item>paper-icon-button.toggle-button{transform:rotateZ(0deg);}.resource-name{@apply (--layout-flex);}paper-item{white-space:nowrap;}:host([narrow]) .resource-details-item{padding-right:0;}</style><paper-item data-path$="[[path]]" on-tap="_selectPath" class$="indentable-content resource-details-item [[_computeItemSelectableClass(selectedPath, path)]]" title$="[[resourceTitle]]" id="resource"><paper-icon-button class="toggle-button" icon="arc:keyboard-arrow-down" on-tap="toggle" noink="[[noink]]"></paper-icon-button><span class="resource-name">[[_getName(resource)]]</span><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" on-tap="_enterResource" noink="[[noink]]"></paper-icon-button></paper-item><iron-collapse id="collapse" opened="[[opened]]"><div class="children"><template is="dom-repeat" items="[[resource.methods]]"><paper-item data-path$="[[path]].methods.[[index]]" on-tap="_selectPath" class$="method-name-item [[_computeItemSelectableClass(selectedPath, path, index)]]" title$="[[item.description]]"><span class="ie-sizer"></span> <span class="indentable-content method-description"><span class$="[[_computeMethodClass(item.method)]]">[[item.method]]</span> <span class="method-display">[[item.displayName]]</span></span></paper-item></template><template is="dom-repeat" items="[[resource.resources]]"><raml-resource-tree-item indent="[[_computeIndent(indent)]]" indent-size="24" selected-path="[[selectedPath]]" resource="[[item]]" path="[[path]].resources.[[index]]" narrow="[[narrow]]" noink="[[noink]]"></raml-resource-tree-item></template></div></iron-collapse><path-selector-resource resource-name="[[_getName(resource)]]" resources="[[resource.resources]]" methods="[[resource.methods]]" selected-path="[[selectedPath]]" items-opened="[[opened]]" path="[[path]]" noink="[[noink]]"></path-selector-resource></template><script>Polymer({is:"raml-resource-tree-item",behaviors:[RamlBehaviors.RamlTreeItemBehavior,Polymer.IronA11yKeysBehavior],properties:{resource:Object,opened:{type:Boolean,value:false,reflectToAttribute:true},resourceTitle:{type:String,computed:"_computeResourceTitle(resource.*)"},methodIsSelected:{type:Boolean,value:false,computed:"_computeIsSelectedMethod(isSelected, selectedPath, path, _isReady)"},_isReady:{type:Boolean,value:false},narrow:{type:Boolean,reflectToAttribute:true,value:false},noink:Boolean},
+    paper-item:not(.selected):active{background-color:var(--raml-docs-tree-item-hover-selector-color, --selection-background-color);color:var(--raml-docs-tree-item-color-hovered, --selection-color);}.selected{background-color:var(--raml-docs-tree-item-selected-selector-color, --selection-background-color);color:var(--raml-docs-tree-item-color-selected, --selection-color);}:host > paper-item.indentable-content,
+    :host > paper-item > .indentable-content,
+    :host > iron-collapse > .children > paper-item > .indentable-content{padding-left:var(--indent-size-padding);}.enter-button{color:var(--raml-path-selector-toggle-icon-color, rgba(0, 0, 0, 0.54));transform:rotateZ(-90deg);}.method-name-item{padding-left:24px;}.method{@apply (--method-display-box);margin-left:16px;}.method.get{@apply (--method-display-box-get);}.method.post{@apply (--method-display-box-post);}.method.put{@apply (--method-display-box-put);}.method.delete{@apply (--method-display-box-delete);}.method.patch{@apply (--method-display-box-patch);}paper-item:not(.selected):hover .method{@apply (--method-display-box-hover);}paper-item.selected .method{@apply (--method-display-box-selected);}.method-description{@apply (--layout-horizontal);@apply (--layout-center);}.method-display{@apply (--layout-flex);}.ie-sizer{min-height:44px;}[hidden]{display:none !important;}</style></template></dom-module><script>(function(g){g.RamlBehaviors=g.RamlBehaviors||{};g.RamlBehaviors.PathSelectorBehavior={properties:{selectedPath:String,opened:{type:Boolean,observer:"_openedChanged"},indentSize:Number},back:function(){this.fire("raml-path-selector-nav-back")},_openedChanged:function(opened){if(opened){this.style.display="block";if(this.__closeTimer){this.cancelAsync(this.__closeTimer);this.__closeTimer=undefined}Polymer.RenderStatus.afterNextRender(this,function(){this.transform("translate3d(0, 0, 0)")})}else{this.transform("translate3d(100%, 0, 0)");
+this.__closeTimer=this.async(function(){this.style.display="none"},300)}}}})(window);</script><dom-module id="raml-type-tree-item" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles"></style><paper-item data-path$="[[path]]" on-tap="_selectPath" class$="[[_computeItemSelectableClass(selectedPath, path)]]"><span class="ie-sizer"></span><span class="indentable-content">[[_computeName(type.*)]]</span></paper-item></template><script>Polymer({is:"raml-type-tree-item",behaviors:[RamlBehaviors.RamlTreeItemBehavior],properties:{type:Object},_computeName:function(record){if(!record||!record.base)return;var type=record.base;return type.displayName||type.name||type.key}});</script></dom-module><dom-module id="path-selector-styles" assetpath="bower_components/raml-path-selector/"><template><style>:host{display:none;@apply (--layout-fit);background-color:#fff;transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:0.3s;transition-duration:0.3s;-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);z-index:1;}.section-title{@apply (--layout-horizontal);@apply (--layout-center);cursor:pointer;}.section-title h3{@apply (--layout-flex);padding-left:0;}.back-button{color:var(--raml-path-selector-back-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;}.back-button:hover{color:var(--raml-path-selector-back-icon-color-hover, rgba(0, 0, 0, 0.87));}[hidden]{display:none !important;}</style></template></dom-module><dom-module id="path-selector-resource" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles"></style><style include="path-selector-styles"></style><style>paper-item{white-space:nowrap;}</style><template is="dom-if" if="[[opened]]"><div class="section-title"><paper-icon-button on-tap="back" class="back-button" icon="arc:chevron-left" noink="[[noink]]"></paper-icon-button><h3>[[resourceName]]</h3></div><template is="dom-repeat" items="[[methods]]"><paper-item data-path$="[[path]].methods.[[index]]" on-tap="_selectPath" class$="method-name-item [[_computeItemSelectableClass(selectedPath, path, index)]]" title$="[[item.method]] [[item.description]]"><span class="indentable-content method-description"><span class$="[[_computeMethodClass(item.method)]]">[[item.method]]</span> <span class="method-display">[[item.displayName]]</span></span></paper-item></template><template is="dom-repeat" items="[[resources]]"><raml-resource-tree-item indent="1" indent-size="[[indentSize]]" selected-path="[[selectedPath]]" resource="[[item]]" path="[[_computeSubresourcePath(path, index)]]" opened="[[itemsOpened]]" narrow=""></raml-resource-tree-item></template></template></template><script>Polymer({is:"path-selector-resource",behaviors:[RamlBehaviors.RamlTreeItemBehavior,RamlBehaviors.PathSelectorBehavior],properties:{resources:Array,methods:Array,itemsOpened:Boolean,resourceName:{type:String,value:function(){return"Resources"}},path:{type:String,value:function(){return""}},noink:Boolean},_computeMethodClass:function(method){if(!method)return;method=method.toLowerCase();var clazz="method ";switch(method){case "get":case "post":case "put":case "delete":case "patch":clazz+=method;break}return clazz},
+_computeSubresourcePath:function(path,index){var result="";if(path)result+=path+".";result+=path+"resources."+index;return result}});</script></dom-module><dom-module id="raml-resource-tree-item" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles">*:focus{outline:none;}.toggle-button{transition:transform 0.35s ease;transform:rotateZ(-90deg);}:host([opened])>paper-item>paper-icon-button.toggle-button{transform:rotateZ(0deg);}.resource-name{@apply (--layout-flex);}paper-item{white-space:nowrap;}:host([narrow]) .resource-details-item{padding-right:0;}</style><paper-item data-path$="[[path]]" on-tap="_selectPath" class$="indentable-content resource-details-item [[_computeItemSelectableClass(selectedPath, path)]]" title$="[[resourceTitle]]" id="resource"><paper-icon-button class="toggle-button" icon="arc:keyboard-arrow-down" on-tap="toggle" noink="[[noink]]"></paper-icon-button><span class="resource-name">[[_getName(resource)]]</span><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" on-tap="_enterResource" noink="[[noink]]"></paper-icon-button></paper-item><iron-collapse id="collapse" opened="[[opened]]"><div class="children"><template is="dom-repeat" items="[[resource.methods]]"><paper-item data-path$="[[path]].methods.[[index]]" on-tap="_selectPath" class$="method-name-item [[_computeItemSelectableClass(selectedPath, path, index)]]" title$="[[item.description]]"><span class="ie-sizer"></span> <span class="indentable-content method-description"><span class$="[[_computeMethodClass(item.method)]]">[[item.method]]</span> <span class="method-display">[[item.displayName]]</span></span></paper-item></template><template is="dom-repeat" items="[[resource.resources]]"><raml-resource-tree-item indent="[[_computeIndent(indent)]]" indent-size="[[indentSize]]" selected-path="[[selectedPath]]" resource="[[item]]" path="[[path]].resources.[[index]]" narrow="[[narrow]]" noink="[[noink]]"></raml-resource-tree-item></template></div></iron-collapse><path-selector-resource resource-name="[[_getName(resource)]]" resources="[[resource.resources]]" methods="[[resource.methods]]" selected-path="[[selectedPath]]" items-opened="[[opened]]" path="[[path]]" noink="[[noink]]"></path-selector-resource></template><script>Polymer({is:"raml-resource-tree-item",behaviors:[RamlBehaviors.RamlTreeItemBehavior,Polymer.IronA11yKeysBehavior],properties:{resource:Object,opened:{type:Boolean,value:false,reflectToAttribute:true},resourceTitle:{type:String,computed:"_computeResourceTitle(resource.*)"},methodIsSelected:{type:Boolean,value:false,computed:"_computeIsSelectedMethod(isSelected, selectedPath, path, _isReady)"},_isReady:{type:Boolean,value:false},narrow:{type:Boolean,reflectToAttribute:true,value:false},noink:Boolean},
 observers:["_isSelectedChanged(isSelected, methodIsSelected, _isReady)","_openedChanged(opened)"],listeners:{"opened-changed":"_openedHandler","raml-path-selector-nav-back":"_onNarrowPageBack"},keyBindings:{"left":"_onLeftKey","right":"_onRightKey"},ready:function(){this._isReady=true},_getName:function(resource){return resource.displayName||resource.relativeUri},_getMethodName:function(item){return item.displayName||item.method.toUpperCase()},toggle:function(e){e.preventDefault();e.stopPropagation();
 this.opened=!this.opened},_computeResourceTitle:function(){var r=this.resource;if(!r||!r.relativeUri)return"";var result=r.relativeUri;if(r.description)result+=": "+r.description;return result},_isSelectedChanged:function(isSelected,methodIsSelected,ready){if((isSelected||methodIsSelected)&&ready){this.setAttribute("tabindex","0");if(!this.opened)this.set("opened",true);this.focus()}else this.setAttribute("tabindex","-1")},_computeIsSelectedMethod:function(isSelected,selectedPath,path,ready){if(isSelected===
 true||!selectedPath||!path||!ready)return false;if(selectedPath.indexOf(path+".methods.")===0)return true;return false},_openedChanged:function(opened){if(opened)this.fire("opened-changed",{value:true})},_openedHandler:function(event){if(event.target===this)return;if(event.detail.value)this.opened=true},_onLeftKey:function(event){if(!this.isSelected)return;this.opened=false;event.detail.keyboardEvent.preventDefault()},_onRightKey:function(event){if(!this.isSelected)return;this.opened=true;event.detail.keyboardEvent.preventDefault()},
 _computeIndent:function(indent){indent=Number(indent);if(indent!==indent)indent=0;return++indent},_computeMethodClass:function(method){if(!method)return;method=method.toLowerCase();var clazz="method ";switch(method){case "get":case "post":case "put":case "delete":case "patch":clazz+=method;break}return clazz},_enterResource:function(e){e.preventDefault();e.stopPropagation();var elm=this.$$("path-selector-resource");elm.opened=true},_onNarrowPageBack:function(e){e.preventDefault();e.stopPropagation();
-var elm=this.$$("path-selector-resource");elm.opened=false}});</script></dom-module><dom-module id="raml-documentation-tree-item" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles"></style><paper-item data-path$="[[path]]" on-tap="_selectPath" class$="[[_computeItemSelectableClass(selectedPath, path)]]"><span class="ie-sizer"></span><span class="indentable-content">[[doc.title]]</span></paper-item></template><script>Polymer({is:"raml-documentation-tree-item",behaviors:[RamlBehaviors.RamlTreeItemBehavior],properties:{doc:Object}});</script></dom-module><dom-module id="path-selector-documentation" assetpath="bower_components/raml-path-selector/"><template><style include="path-selector-styles"></style><template is="dom-if" if="[[opened]]"><div class="section-title"><paper-icon-button on-tap="back" class="back-button" icon="arc:chevron-left" noink="[[noink]]"></paper-icon-button><h3>Documentation</h3></div><template is="dom-repeat" items="[[documentation]]"><raml-documentation-tree-item indent="1" indent-size="24" selected-path="[[selectedPath]]" doc="[[item]]" path="documentation.[[index]]"></raml-documentation-tree-item></template></template></template><script>Polymer({is:"path-selector-documentation",properties:{documentation:Array,noink:Boolean},behaviors:[RamlBehaviors.PathSelectorBehavior]});</script></dom-module><dom-module id="path-selector-types" assetpath="bower_components/raml-path-selector/"><template><style include="path-selector-styles"></style><template is="dom-if" if="[[opened]]"><div class="section-title"><paper-icon-button on-tap="back" class="back-button" icon="arc:chevron-left" noink="[[noink]]"></paper-icon-button><h3>Types</h3></div><template is="dom-repeat" items="[[types]]"><raml-type-tree-item indent="1" indent-size="24" selected-path="[[selectedPath]]" type="[[item]]" path="types.[[index]]"></raml-type-tree-item></template></template></template><script>Polymer({is:"path-selector-types",behaviors:[RamlBehaviors.PathSelectorBehavior],properties:{types:Array,noink:Boolean}});</script></dom-module><dom-module id="raml-structure-tree" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles">:host{display:block;background-color:inherit;color:inherit;overflow:auto;position:relative;@apply (--raml-structure-tree);}h3{@apply (--arc-font-subhead);color:var(--raml-path-selector-header-color, rgba(0, 0, 0, 0.54));padding-left:14px;@apply (--raml-path-selector-headers);}*[hidden]{display:none;}.section-title{@apply (--layout-horizontal);@apply (--layout-center);cursor:pointer;}.section-title h3{@apply (--layout-flex);padding-left:0;font-weight:400;}.toggle-button{color:var(--raml-path-selector-toggle-icon-color, rgba(0, 0, 0, 0.54));transform:rotateZ(-90deg);transition:color 0.25s linear, transform 0.3s linear;}.toggle-button.opened{transform:rotateZ(0deg);}.toggle-button:hover{color:var(--raml-path-selector-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));}</style><paper-item on-tap="_selectSummary" class$="[[_computeItemSelectedClass(selectedPath, 'summary')]]" title="API sumamry"><span class="ie-sizer"></span>API summary</paper-item><template is="dom-if" if="[[hasDocumentation]]"><section class="documentation"><div class="section-title"><paper-icon-button data-section="documentation" on-tap="_toggleSection" class$="toggle-button[[_computeToggleIconClass(documentationOpened)]]" icon="arc:keyboard-arrow-down" noink="[[noink]]"></paper-icon-button><h3 data-section="documentation" on-tap="_toggleSection">Documentation</h3><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" data-section="documentation" on-tap="_enterSection" noink="[[noink]]"></paper-icon-button></div><iron-collapse opened="[[documentationOpened]]"><div><template is="dom-repeat" items="[[raml.documentation]]"><raml-documentation-tree-item indent="1" indent-size="24" selected-path="[[selectedPath]]" doc="[[item]]" path="documentation.[[index]]"></raml-documentation-tree-item></template></div></iron-collapse></section></template><template is="dom-if" if="[[hasTypes]]"><section class="documentation"><div class="section-title"><paper-icon-button data-section="types" on-tap="_toggleSection" class$="toggle-button[[_computeToggleIconClass(typesOpened)]]" icon="arc:keyboard-arrow-down" noink="[[noink]]"></paper-icon-button><h3 data-section="types" on-tap="_toggleSection">Types</h3><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" data-section="types" on-tap="_enterSection" noink="[[noink]]"></paper-icon-button></div><iron-collapse opened="[[typesOpened]]"><div><template is="dom-repeat" items="[[_objectToArray(raml.types)]]"><raml-type-tree-item indent="1" indent-size="24" selected-path="[[selectedPath]]" type="[[item]]" path="types.[[index]]"></raml-type-tree-item></template></div></iron-collapse></section></template><template is="dom-if" if="[[hasResources]]"><section class="documentation"><div class="section-title"><paper-icon-button data-section="resources" on-tap="_toggleSection" class$="toggle-button[[_computeToggleIconClass(resourcesOpened)]]" icon="arc:keyboard-arrow-down" noink="[[noink]]"></paper-icon-button><h3 data-section="resources" on-tap="_toggleSection">Resources</h3><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" data-section="resources" on-tap="_enterSection" noink="[[noink]]"></paper-icon-button></div><iron-collapse opened="[[resourcesOpened]]"><div><template is="dom-repeat" items="[[raml.resources]]" resources=""><raml-resource-tree-item indent="1" indent-size="24" selected-path="[[selectedPath]]" resource="[[item]]" path="resources.[[index]]" opened="[[opened]]" narrow="[[narrow]]" noink="[[noink]]"></raml-resource-tree-item></template></div></iron-collapse></section></template><path-selector-documentation noink="[[noink]]" documentation="[[raml.documentation]]" selected-path="[[selectedPath]]"></path-selector-documentation><path-selector-types noink="[[noink]]" types="[[_objectToArray(raml.types)]]" selected-path="[[selectedPath]]"></path-selector-types><path-selector-resource noink="[[noink]]" resources="[[raml.resources]]" selected-path="[[selectedPath]]" items-opened="[[opened]]"></path-selector-resource></template><script>Polymer({is:"raml-structure-tree",behaviors:[Polymer.RamlBehavior],properties:{selectedPath:{type:String,notify:true},opened:{type:Boolean},hasDocumentation:Boolean,hasResources:Boolean,hasTypes:Boolean,narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},documentationOpened:Boolean,typesOpened:Boolean,resourcesOpened:Boolean,noink:Boolean},hostAttributes:{role:"listbox",tabindex:"0"},listeners:{"raml-path-selected":"_onPathSelected","raml-path-selector-nav-back":"_onNarrowPageBack"},
-observers:["_patchChanged(selectedPath)","_ramlChanged(raml)"],_onPathSelected:function(e){e.stopPropagation();if(e.detail.path===this.selectedPath)this._patchChanged(e.detail.path);else this.set("selectedPath",e.detail.path)},_patchChanged:function(selectedPath){this.fire("raml-selected-path-changed",{path:selectedPath},{composed:true})},_ramlChanged:function(raml){if(!raml)this.set("selectedPath",undefined)},_computeItemSelectedClass:function(selectedPath,itemsPath){return selectedPath===itemsPath?
-"selected":""},_selectSummary:function(){this.set("selectedPath","summary")},_objectToArray:function(obj){if(!obj)return;var keys=Object.keys(obj);return keys.map(function(key){var value=Object.assign({},obj[key]);value.key=key;return value})},_computeToggleIconClass:function(sectionOpened){var clazz="";if(sectionOpened)clazz+=" opened";return clazz},_toggleSection:function(e){var section=this._getEventSection(e);var varName=section+"Opened";this[varName]=!this[varName]},_getEventSection:function(e){e=
-Polymer.dom(e);var path=e.path;if(!path||!path.length)throw new Error("Event path not defined.");var section;while(true){var _target=path.shift();if(!_target){var msg="Invalid node selection. No data-section found in path.";throw new Error(msg);}if(_target.dataset&&_target.dataset.section){section=_target.dataset.section;break}}return section},_getNavElementForSection:function(section){var elm;switch(section){case "documentation":elm=this.$$("path-selector-documentation");break;case "types":elm=this.$$("path-selector-types");
-break;case "resources":elm=this.$$("path-selector-resource");break}return elm},_enterSection:function(e){var section=this._getEventSection(e);var elm=this._getNavElementForSection(section);elm.opened=true;this._subpageSection=section},_onNarrowPageBack:function(){var elm=this._getNavElementForSection(this._subpageSection);elm.opened=false}});</script></dom-module><dom-module id="raml-path-selector" assetpath="bower_components/raml-path-selector/"><template><style>:host{display:block;background-color:var(--raml-path-selector-background-color, --primary-background-color);color:var(--raml-path-selector-color, --primary-text-color);overflow:auto;@apply (--raml-path-selector);}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><raml-structure-tree raml="[[raml]]" has-documentation="[[hasDocumentation]]" has-resources="[[hasResources]]" has-types="[[hasTypes]]" selected-path="{{selectedPath}}" opened="[[firstLevelOpened]]" narrow="[[_narrowValue]]" narrow-width="[[narrowWidth]]" documentation-opened="[[documentationOpened]]" types-opened="[[typesOpened]]" resources-opened="[[resourcesOpened]]" noink="[[noink]]"></raml-structure-tree><template is="dom-if" if="[[aware]]" restamp="true"><raml-aware raml="{{raml}}" scope="[[aware]]"></raml-aware></template></template><script>Polymer({is:"raml-path-selector",behaviors:[Polymer.RamlBehavior],properties:{selectedPath:{type:String,notify:true},firstLevelOpened:{type:Boolean},hasDocumentation:{type:Boolean,readOnly:true},hasResources:{type:Boolean,readOnly:true},hasTypes:{type:Boolean,readOnly:true},aware:String,narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},forceWideLayout:{type:Boolean,value:false,reflectToAttribute:true},_narrowValue:{type:Boolean,value:false,computed:"_computeNarrowValue(forceWideLayout, narrow)"},
-documentationOpened:Boolean,typesOpened:Boolean,resourcesOpened:Boolean,noink:Boolean},observers:["_ramlChanged(raml.*)"],__resetVariables:function(){this._setHasDocumentation(undefined);this._setHasResources(undefined);this._setHasTypes(undefined)},_ramlChanged:function(record){this.__resetVariables();if(!record||!record.base)return;var raml=record.base;if(raml.documentation&&raml.documentation.length)this._setHasDocumentation(true);if(raml.types&&Object.keys(raml.types).length)this._setHasTypes(true);
+var elm=this.$$("path-selector-resource");elm.opened=false}});</script></dom-module><dom-module id="raml-documentation-tree-item" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles"></style><paper-item data-path$="[[path]]" on-tap="_selectPath" class$="[[_computeItemSelectableClass(selectedPath, path)]]"><span class="ie-sizer"></span><span class="indentable-content">[[doc.title]]</span></paper-item></template><script>Polymer({is:"raml-documentation-tree-item",behaviors:[RamlBehaviors.RamlTreeItemBehavior],properties:{doc:Object}});</script></dom-module><dom-module id="path-selector-documentation" assetpath="bower_components/raml-path-selector/"><template><style include="path-selector-styles"></style><template is="dom-if" if="[[opened]]"><div class="section-title"><paper-icon-button on-tap="back" class="back-button" icon="arc:chevron-left" noink="[[noink]]"></paper-icon-button><h3>Documentation</h3></div><template is="dom-repeat" items="[[documentation]]"><raml-documentation-tree-item indent="1" indent-size="[[indentSize]]" selected-path="[[selectedPath]]" doc="[[item]]" path="documentation.[[index]]"></raml-documentation-tree-item></template></template></template><script>Polymer({is:"path-selector-documentation",properties:{documentation:Array,noink:Boolean},behaviors:[RamlBehaviors.PathSelectorBehavior]});</script></dom-module><dom-module id="path-selector-types" assetpath="bower_components/raml-path-selector/"><template><style include="path-selector-styles"></style><template is="dom-if" if="[[opened]]"><div class="section-title"><paper-icon-button on-tap="back" class="back-button" icon="arc:chevron-left" noink="[[noink]]"></paper-icon-button><h3>Types</h3></div><template is="dom-repeat" items="[[types]]"><raml-type-tree-item indent="1" indent-size="[[indentSize]]" selected-path="[[selectedPath]]" type="[[item]]" path="types.[[index]]"></raml-type-tree-item></template></template></template><script>Polymer({is:"path-selector-types",behaviors:[RamlBehaviors.PathSelectorBehavior],properties:{types:Array,noink:Boolean}});</script></dom-module><dom-module id="raml-structure-tree" assetpath="bower_components/raml-path-selector/"><template><style include="raml-tree-item-styles">:host{display:block;background-color:inherit;color:inherit;overflow:auto;position:relative;@apply (--raml-structure-tree);}h3{@apply (--arc-font-subhead);color:var(--raml-path-selector-header-color, rgba(0, 0, 0, 0.54));padding-left:14px;@apply (--raml-path-selector-headers);}*[hidden]{display:none;}.section-title{@apply (--layout-horizontal);@apply (--layout-center);cursor:pointer;}.section-title h3{@apply (--layout-flex);padding-left:0;font-weight:400;}.toggle-button{color:var(--raml-path-selector-toggle-icon-color, rgba(0, 0, 0, 0.54));transform:rotateZ(-90deg);transition:color 0.25s linear, transform 0.3s linear;}.toggle-button.opened{transform:rotateZ(0deg);}.toggle-button:hover{color:var(--raml-path-selector-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));}#summary-link{@apply (--path-selector-summary-link);}</style><paper-item on-tap="_selectSummary" id="summary-link" class$="[[_computeItemSelectedClass(selectedPath, 'summary')]]" title="API sumamry"><span class="ie-sizer"></span>API summary</paper-item><template is="dom-if" if="[[hasDocumentation]]"><section class="documentation"><div class="section-title"><paper-icon-button data-section="documentation" on-tap="_toggleSection" class$="toggle-button[[_computeToggleIconClass(documentationOpened)]]" icon="arc:keyboard-arrow-down" noink="[[noink]]"></paper-icon-button><h3 data-section="documentation" on-tap="_toggleSection">Documentation</h3><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" data-section="documentation" on-tap="_enterSection" noink="[[noink]]"></paper-icon-button></div><iron-collapse opened="[[documentationOpened]]"><div><template is="dom-repeat" items="[[raml.documentation]]"><raml-documentation-tree-item indent="1" indent-size="[[indentSize]]" selected-path="[[selectedPath]]" doc="[[item]]" path="documentation.[[index]]"></raml-documentation-tree-item></template></div></iron-collapse></section></template><template is="dom-if" if="[[hasTypes]]"><section class="documentation"><div class="section-title"><paper-icon-button data-section="types" on-tap="_toggleSection" class$="toggle-button[[_computeToggleIconClass(typesOpened)]]" icon="arc:keyboard-arrow-down" noink="[[noink]]"></paper-icon-button><h3 data-section="types" on-tap="_toggleSection">Types</h3><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" data-section="types" on-tap="_enterSection" noink="[[noink]]"></paper-icon-button></div><iron-collapse opened="[[typesOpened]]"><div><template is="dom-repeat" items="[[_objectToArray(raml.types)]]"><raml-type-tree-item indent="1" indent-size="[[indentSize]]" selected-path="[[selectedPath]]" type="[[item]]" path="types.[[index]]"></raml-type-tree-item></template></div></iron-collapse></section></template><template is="dom-if" if="[[hasResources]]"><section class="documentation"><div class="section-title"><paper-icon-button data-section="resources" on-tap="_toggleSection" class$="toggle-button[[_computeToggleIconClass(resourcesOpened)]]" icon="arc:keyboard-arrow-down" noink="[[noink]]"></paper-icon-button><h3 data-section="resources" on-tap="_toggleSection">Resources</h3><paper-icon-button class="enter-button" icon="arc:keyboard-arrow-down" hidden$="[[!narrow]]" data-section="resources" on-tap="_enterSection" noink="[[noink]]"></paper-icon-button></div><iron-collapse opened="[[resourcesOpened]]"><div><template is="dom-repeat" items="[[raml.resources]]" resources=""><raml-resource-tree-item indent="1" indent-size="[[indentSize]]" selected-path="[[selectedPath]]" resource="[[item]]" path="resources.[[index]]" opened="[[opened]]" narrow="[[narrow]]" noink="[[noink]]"></raml-resource-tree-item></template></div></iron-collapse></section></template><path-selector-documentation noink="[[noink]]" documentation="[[raml.documentation]]" selected-path="[[selectedPath]]" indent-size="[[indentSize]]"></path-selector-documentation><path-selector-types noink="[[noink]]" types="[[_objectToArray(raml.types)]]" selected-path="[[selectedPath]]" indent-size="[[indentSize]]"></path-selector-types><path-selector-resource noink="[[noink]]" resources="[[raml.resources]]" selected-path="[[selectedPath]]" items-opened="[[opened]]" indent-size="[[indentSize]]"></path-selector-resource></template><script>Polymer({is:"raml-structure-tree",behaviors:[Polymer.RamlBehavior],properties:{selectedPath:{type:String,notify:true},opened:{type:Boolean},hasDocumentation:Boolean,hasResources:Boolean,hasTypes:Boolean,narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},documentationOpened:Boolean,typesOpened:Boolean,resourcesOpened:Boolean,noink:Boolean,indentSize:Number},hostAttributes:{role:"listbox",tabindex:"0"},listeners:{"raml-path-selected":"_onPathSelected",
+"raml-path-selector-nav-back":"_onNarrowPageBack"},observers:["_patchChanged(selectedPath)","_ramlChanged(raml)"],_onPathSelected:function(e){e.stopPropagation();if(e.detail.path===this.selectedPath)this._patchChanged(e.detail.path);else this.set("selectedPath",e.detail.path)},_patchChanged:function(selectedPath){this.fire("raml-selected-path-changed",{path:selectedPath},{composed:true})},_ramlChanged:function(raml){if(!raml)this.set("selectedPath",undefined)},_computeItemSelectedClass:function(selectedPath,
+itemsPath){return selectedPath===itemsPath?"selected":""},_selectSummary:function(){this.set("selectedPath","summary")},_objectToArray:function(obj){if(!obj)return;var keys=Object.keys(obj);return keys.map(function(key){var value=Object.assign({},obj[key]);value.key=key;return value})},_computeToggleIconClass:function(sectionOpened){var clazz="";if(sectionOpened)clazz+=" opened";return clazz},_toggleSection:function(e){var section=this._getEventSection(e);var varName=section+"Opened";this[varName]=
+!this[varName]},_getEventSection:function(e){e=Polymer.dom(e);var path=e.path;if(!path||!path.length)throw new Error("Event path not defined.");var section;while(true){var _target=path.shift();if(!_target){var msg="Invalid node selection. No data-section found in path.";throw new Error(msg);}if(_target.dataset&&_target.dataset.section){section=_target.dataset.section;break}}return section},_getNavElementForSection:function(section){var elm;switch(section){case "documentation":elm=this.$$("path-selector-documentation");
+break;case "types":elm=this.$$("path-selector-types");break;case "resources":elm=this.$$("path-selector-resource");break}return elm},_enterSection:function(e){var section=this._getEventSection(e);var elm=this._getNavElementForSection(section);elm.opened=true;this._subpageSection=section},_onNarrowPageBack:function(){var elm=this._getNavElementForSection(this._subpageSection);elm.opened=false}});</script></dom-module><dom-module id="raml-path-selector" assetpath="bower_components/raml-path-selector/"><template><style>:host{display:block;background-color:var(--raml-path-selector-background-color, --primary-background-color);color:var(--raml-path-selector-color, --primary-text-color);overflow:auto;@apply (--raml-path-selector);}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><raml-structure-tree raml="[[raml]]" has-documentation="[[hasDocumentation]]" has-resources="[[hasResources]]" has-types="[[hasTypes]]" selected-path="{{selectedPath}}" opened="[[firstLevelOpened]]" narrow="[[_narrowValue]]" narrow-width="[[narrowWidth]]" documentation-opened="[[documentationOpened]]" types-opened="[[typesOpened]]" resources-opened="[[resourcesOpened]]" noink="[[noink]]" indent-size="[[indentSize]]"></raml-structure-tree><template is="dom-if" if="[[aware]]" restamp="true"><raml-aware raml="{{raml}}" scope="[[aware]]"></raml-aware></template></template><script>Polymer({is:"raml-path-selector",behaviors:[Polymer.RamlBehavior],properties:{selectedPath:{type:String,notify:true},firstLevelOpened:{type:Boolean},hasDocumentation:{type:Boolean,readOnly:true},hasResources:{type:Boolean,readOnly:true},hasTypes:{type:Boolean,readOnly:true},aware:String,narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},forceWideLayout:{type:Boolean,value:false,reflectToAttribute:true},_narrowValue:{type:Boolean,value:false,computed:"_computeNarrowValue(forceWideLayout, narrow)"},
+documentationOpened:Boolean,typesOpened:Boolean,resourcesOpened:Boolean,noink:Boolean,indentSize:{type:Number,value:24}},observers:["_ramlChanged(raml.*)"],__resetVariables:function(){this._setHasDocumentation(undefined);this._setHasResources(undefined);this._setHasTypes(undefined)},_ramlChanged:function(record){this.__resetVariables();if(!record||!record.base)return;var raml=record.base;if(raml.documentation&&raml.documentation.length)this._setHasDocumentation(true);if(raml.types&&Object.keys(raml.types).length)this._setHasTypes(true);
 if(raml.resources&&raml.resources.length)this._setHasResources(true)},_computeNarrowValue:function(forceWideLayout,narrow){if(forceWideLayout)return false;return narrow}});</script></dom-module><script>Polymer.IronMultiSelectableBehaviorImpl={properties:{multi:{type:Boolean,value:false,observer:"multiChanged"},selectedValues:{type:Array,notify:true},selectedItems:{type:Array,readOnly:true,notify:true}},observers:["_updateSelected(selectedValues.splices)"],select:function(value){if(this.multi)if(this.selectedValues)this._toggleSelected(value);else this.selectedValues=[value];else this.selected=value},multiChanged:function(multi){this._selection.multi=multi},get _shouldUpdateSelection(){return this.selected!=
 null||this.selectedValues!=null&&this.selectedValues.length},_updateAttrForSelected:function(){if(!this.multi)Polymer.IronSelectableBehavior._updateAttrForSelected.apply(this);else if(this._shouldUpdateSelection)this.selectedValues=this.selectedItems.map(function(selectedItem){return this._indexToValue(this.indexOf(selectedItem))},this).filter(function(unfilteredValue){return unfilteredValue!=null},this)},_updateSelected:function(){if(this.multi)this._selectMulti(this.selectedValues);else this._selectSelected(this.selected)},
 _selectMulti:function(values){if(values){var selectedItems=this._valuesToItems(values);this._selection.clear(selectedItems);for(var i=0;i<selectedItems.length;i++)this._selection.setItemSelected(selectedItems[i],true);if(this.fallbackSelection&&this.items.length&&!this._selection.get().length){var fallback=this._valueToItem(this.fallbackSelection);if(fallback)this.selectedValues=[this.fallbackSelection]}}else this._selection.clear()},_selectionChange:function(){var s=this._selection.get();if(this.multi)this._setSelectedItems(s);
@@ -665,43 +702,12 @@ this._lastestRequestData=undefined;var response=this._createResponse(responseDat
 try{return new Response(response.response,init)}catch(e){return Response.error()}},_createHeaders:function(headers){if(!headers)return new Headers;var result=new Headers;var list=headers.split("\n").map(function(line){var _parts=line.split(":");var _name=_parts[0];var _value=_parts[1];_name=_name?_name.trim():null;_value=_value?_value.trim():null;if(!_name||!_value)return null;return{name:_name,value:_value}}).filter(function(item){return!!item});list.forEach(function(item){result.append(item.name,
 item.value)});return result},_oauthTokenHandler:function(e){if(!this.extension)return;e.preventDefault();e.stopPropagation();e.stopImmediatePropagation();window.postMessage({payload:"api-console-oauth2",detail:e.detail},location.origin)},_oauthTokenReady:function(tokenData){if(!tokenData)return this.fire("oauth2-error",{"message":"No response has been recorded.","code":"no_response"});if(tokenData.error)return this.fire("oauth2-error",{"message":tokenData.message||"No response has been recorded.",
 "code":tokenData.code||"unknown_error"});this.fire("oauth2-token-response",tokenData)}});</script><script>Polymer.PaperButtonBehaviorImpl={properties:{elevation:{type:Number,reflectToAttribute:true,readOnly:true}},observers:["_calculateElevation(focused, disabled, active, pressed, receivedFocusFromKeyboard)","_computeKeyboardClass(receivedFocusFromKeyboard)"],hostAttributes:{role:"button",tabindex:"0",animated:true},_calculateElevation:function(){var e=1;if(this.disabled)e=0;else if(this.active||this.pressed)e=4;else if(this.receivedFocusFromKeyboard)e=3;this._setElevation(e)},_computeKeyboardClass:function(receivedFocusFromKeyboard){this.toggleClass("keyboard-focus",
-receivedFocusFromKeyboard)},_spaceKeyDownHandler:function(event){Polymer.IronButtonStateImpl._spaceKeyDownHandler.call(this,event);if(this.hasRipple()&&this.getRipple().ripples.length<1)this._ripple.uiDownAction()},_spaceKeyUpHandler:function(event){Polymer.IronButtonStateImpl._spaceKeyUpHandler.call(this,event);if(this.hasRipple())this._ripple.uiUpAction()}};Polymer.PaperButtonBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperButtonBehaviorImpl];</script><dom-module id="paper-material-shared-styles" assetpath="bower_components/paper-material/"><template><style>:host{display:block;position:relative;}:host([elevation="1"]){@apply (--shadow-elevation-2dp);}:host([elevation="2"]){@apply (--shadow-elevation-4dp);}:host([elevation="3"]){@apply (--shadow-elevation-6dp);}:host([elevation="4"]){@apply (--shadow-elevation-8dp);}:host([elevation="5"]){@apply (--shadow-elevation-16dp);}</style></template></dom-module><dom-module id="paper-button" assetpath="bower_components/paper-button/"><template strip-whitespace=""><style include="paper-material-shared-styles">:host{@apply (--layout-inline);@apply (--layout-center-center);position:relative;box-sizing:border-box;min-width:5.14em;margin:0 0.29em;background:transparent;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-tap-highlight-color:transparent;font:inherit;text-transform:uppercase;outline-width:0;border-radius:3px;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;cursor:pointer;z-index:0;padding:0.7em 0.57em;@apply (--paper-font-common-base);@apply (--paper-button);}:host([hidden]){display:none !important;}:host([raised].keyboard-focus){font-weight:bold;@apply (--paper-button-raised-keyboard-focus);}:host(:not([raised]).keyboard-focus){font-weight:bold;@apply (--paper-button-flat-keyboard-focus);}:host([disabled]){background:#eaeaea;color:#a8a8a8;cursor:auto;pointer-events:none;@apply (--paper-button-disabled);}:host([animated]){@apply (--shadow-transition);}paper-ripple{color:var(--paper-button-ink-color);}</style><content></content></template><script>Polymer({is:"paper-button",behaviors:[Polymer.PaperButtonBehavior],properties:{raised:{type:Boolean,reflectToAttribute:true,value:false,observer:"_calculateElevation"}},_calculateElevation:function(){if(!this.raised)this._setElevation(0);else Polymer.PaperButtonBehaviorImpl._calculateElevation.apply(this)}});</script></dom-module><script>/*
-
-Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
-This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
-The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
-The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
-Code distributed by Google as part of the polymer project is also
-subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-*/
-function MakePromise(asap){function Promise(fn){if(typeof this!=="object"||typeof fn!=="function")throw new TypeError;this._state=null;this._value=null;this._deferreds=[];doResolve(fn,resolve.bind(this),reject.bind(this))}function handle(deferred){var me=this;if(this._state===null){this._deferreds.push(deferred);return}asap(function(){var cb=me._state?deferred.onFulfilled:deferred.onRejected;if(typeof cb!=="function"){(me._state?deferred.resolve:deferred.reject)(me._value);return}var ret;try{ret=
-cb(me._value)}catch(e){deferred.reject(e);return}deferred.resolve(ret)})}function resolve(newValue){try{if(newValue===this)throw new TypeError;if(newValue&&(typeof newValue==="object"||typeof newValue==="function")){var then=newValue.then;if(typeof then==="function"){doResolve(then.bind(newValue),resolve.bind(this),reject.bind(this));return}}this._state=true;this._value=newValue;finale.call(this)}catch(e){reject.call(this,e)}}function reject(newValue){this._state=false;this._value=newValue;finale.call(this)}
-function finale(){for(var i=0,len=this._deferreds.length;i<len;i++)handle.call(this,this._deferreds[i]);this._deferreds=null}function doResolve(fn,onFulfilled,onRejected){var done=false;try{fn(function(value){if(done)return;done=true;onFulfilled(value)},function(reason){if(done)return;done=true;onRejected(reason)})}catch(ex){if(done)return;done=true;onRejected(ex)}}Promise.prototype["catch"]=function(onRejected){return this.then(null,onRejected)};Promise.prototype.then=function(onFulfilled,onRejected){var me=
-this;return new Promise(function(resolve,reject){handle.call(me,{onFulfilled:onFulfilled,onRejected:onRejected,resolve:resolve,reject:reject})})};Promise.resolve=function(value){if(value&&typeof value==="object"&&value.constructor===Promise)return value;return new Promise(function(resolve){resolve(value)})};Promise.reject=function(value){return new Promise(function(resolve,reject){reject(value)})};return Promise}if(typeof module!=="undefined")module.exports=MakePromise;</script><script>if(!window.Promise)window.Promise=MakePromise(Polymer.Base.async);</script><script>/*
-
-Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
-This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
-The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
-The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
-Code distributed by Google as part of the polymer project is also
-subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-*/
-Promise.all=Promise.all||function(){var args=Array.prototype.slice.call(arguments.length===1&&Array.isArray(arguments[0])?arguments[0]:arguments);return new Promise(function(resolve,reject){if(args.length===0)return resolve([]);var remaining=args.length;function res(i,val){try{if(val&&(typeof val==="object"||typeof val==="function")){var then=val.then;if(typeof then==="function"){then.call(val,function(val){res(i,val)},reject);return}}args[i]=val;if(--remaining===0)resolve(args)}catch(ex){reject(ex)}}
-for(var i=0;i<args.length;i++)res(i,args[i])})};Promise.race=Promise.race||function(values){var forcedArray=(values);return new Promise(function(resolve,reject){for(var i=0,len=forcedArray.length;i<len;i++)forcedArray[i].then(resolve,reject)})};</script><script>if(typeof Object.assign!=="function")Object.assign=function(target){if(target===null)throw new TypeError("Cannot convert undefined or null to object");var to=Object(target);for(var index=1;index<arguments.length;index++){var nextSource=arguments[index];if(nextSource!==null)for(var nextKey in nextSource)if(Object.prototype.hasOwnProperty.call(nextSource,nextKey))to[nextKey]=nextSource[nextKey]}return to};
-if(!Object.keys)Object.keys=function(){var hasOwnProperty=Object.prototype.hasOwnProperty;var hasDontEnumBug=!{toString:null}.propertyIsEnumerable("toString");var dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];var dontEnumsLength=dontEnums.length;return function(obj){if(typeof obj!=="function"&&(typeof obj!=="object"||obj===null))throw new TypeError("Object.keys called on non-object");var result=[];var prop;var i;for(prop in obj)if(hasOwnProperty.call(obj,
-prop))result.push(prop);if(hasDontEnumBug)for(i=0;i<dontEnumsLength;i++)if(hasOwnProperty.call(obj,dontEnums[i]))result.push(dontEnums[i]);return result}}();if(!Array.isArray)Array.isArray=function(arg){return Object.prototype.toString.call(arg)==="[object Array]"};
-if(!Array.prototype.find)Object.defineProperty(Array.prototype,"find",{value:function(predicate){if(this===null)throw new TypeError('"this" is null or not defined');var o=Object(this);var len=o.length>>>0;if(typeof predicate!=="function")throw new TypeError("predicate must be a function");var thisArg=arguments[1];var k=0;while(k<len){var kValue=o[k];if(predicate.call(thisArg,kValue,k,o))return kValue;k++}return undefined}});
-if(!Array.prototype.copyWithin)Array.prototype.copyWithin=function(target,start){if(this===null)throw new TypeError("this is null or not defined");var O=Object(this);var len=O.length>>>0;var relativeTarget=target>>0;var to=relativeTarget<0?Math.max(len+relativeTarget,0):Math.min(relativeTarget,len);var relativeStart=start>>0;var from=relativeStart<0?Math.max(len+relativeStart,0):Math.min(relativeStart,len);var end=arguments[2];var relativeEnd=end===undefined?len:end>>0;var final=relativeEnd<0?Math.max(len+
-relativeEnd,0):Math.min(relativeEnd,len);var count=Math.min(final-from,len-to);var direction=1;if(from<to&&to<from+count){direction=-1;from+=count-1;to+=count-1}while(count>0){if(from in O)O[to]=O[from];else delete O[to];from+=direction;to+=direction;count--}return O};
-if(!Array.prototype.findIndex)Object.defineProperty(Array.prototype,"findIndex",{value:function(predicate){if(this===null)throw new TypeError('"this" is null or not defined');var o=Object(this);var len=o.length>>>0;if(typeof predicate!=="function")throw new TypeError("predicate must be a function");var thisArg=arguments[1];var k=0;while(k<len){var kValue=o[k];if(predicate.call(thisArg,kValue,k,o))return k;k++}return-1}});
-if(!Array.prototype.includes)Object.defineProperty(Array.prototype,"includes",{value:function(searchElement,fromIndex){if(this===null)throw new TypeError('"this" is null or not defined');var o=Object(this);var len=o.length>>>0;if(len===0)return false;var n=fromIndex|0;var k=Math.max(n>=0?n:len-Math.abs(n),0);function sameValueZero(x,y){return x===y||typeof x==="number"&&typeof y==="number"&&isNaN(x)&&isNaN(y)}while(k<len){if(sameValueZero(o[k],searchElement))return true;k++}return false}});
-if(!Array.from)Array.from=function(){var toStr=Object.prototype.toString;var isCallable=function(fn){return typeof fn==="function"||toStr.call(fn)==="[object Function]"};var toInteger=function(value){var number=Number(value);if(isNaN(number))return 0;if(number===0||!isFinite(number))return number;return(number>0?1:-1)*Math.floor(Math.abs(number))};var maxSafeInteger=Math.pow(2,53)-1;var toLength=function(value){var len=toInteger(value);return Math.min(Math.max(len,0),maxSafeInteger)};return function from(arrayLike){var C=
-this;var items=Object(arrayLike);if(arrayLike===null)throw new TypeError("Array.from requires an array-like object - not null or undefined");var mapFn=arguments.length>1?arguments[1]:void undefined;var T;if(typeof mapFn!=="undefined"){if(!isCallable(mapFn))throw new TypeError("Array.from: when provided, the second argument must be a function");if(arguments.length>2)T=arguments[2]}var len=toLength(items.length);var A=isCallable(C)?Object(new C(len)):new Array(len);var k=0;var kValue;while(k<len){kValue=
-items[k];if(mapFn)A[k]=typeof T==="undefined"?mapFn(kValue,k):mapFn.call(T,kValue,k);else A[k]=kValue;k+=1}A.length=len;return A}}();</script><script>Polymer({is:"arc-polyfills"});</script><script>(function(){window.RamlBehaviors=window.RamlBehaviors||{};window.RamlBehaviors.DocsParametersBehavior={properties:{autoHide:{type:Boolean,value:false},baseTypes:{type:Array,value:function(){return["object","array","integer","string","number","boolean","datetime","file","null","any"]}},examples:Array,hasExamples:{type:Boolean,value:false,notify:true,computed:"_computeHasExamples(examples.*)"},narrow:{type:Boolean,reflectToAttribute:true}},hasValue:function(obj){var type=typeof obj;if(type==="number"&&
-obj===0)return true;if(type==="boolean")return true;if(type==="string"&&obj==="")return true;return!!obj},getValue:function(obj){var type=typeof obj;if(type==="string"&&obj==="")return"(empty string)";return obj},readProperties:function(obj){if(!obj)return[];if(obj instanceof Array)return obj;var names=Object.keys(obj);if(!names)return[];return names.map(function(i){var _obj=obj[i];_obj.key=i;return _obj})},_computeEnumValue:function(enumValue){if(!enumValue||!enumValue.length)return"";if(typeof enumValue===
-"string")return enumValue;enumValue=enumValue.map(function(item){if(typeof item==="string"){if(item==="")return'""';return item}return item.displayName||item.name||item.key});return enumValue.join(", ")},_computeExamples:function(record){var object=record.base;if(!object)return undefined;if(object.examples&&object.examples.length)return object.examples;if(object.example)if(typeof object.example==="string")return[object.example];else return[JSON.stringify(object.example,null,2)];return undefined},
-_computeHasExamples:function(record){var object=record.base;if(!object)return false;return!!object.length},_hasMaximum:function(item){return!!(item&&(item.max||item.maximum||item.max===0||item.maximum===0))},_getMaximum:function(item){if(!item)return;if(!!item.max||item.max===0)return item.max;if(!!item.maximum||item.maximum===0)return item.maximum},_hasMinimum:function(item){return!!(item&&(item.min||item.minimum||item.min===0||item.minimum===0))},_getMinimum:function(item){if(!item)return;if(!!item.min||
-item.min===0)return item.min;if(!!item.minimum||item.minimum===0)return item.minimum;return item&&(item.min||item.minimum)},_hasExamples:function(item){return!!(item&&item.examples&&item.examples.length)},_getExamples:function(item){if(!this._hasExamples(item))return;return item.examples.map(function(item){if(typeof item==="string")return item;return item.value}).join("\n")},_hasDisplayName:function(item){return!!(item&&item.displayName&&item.displayName!==item.name)}}})();</script><dom-module id="docs-parameters-table-shared-styles" assetpath="bower_components/docs-parameters-table/"><template><style>:host{display:block;}:host([hidden]){display:none;}.params-table{display:table;border-collapse:collapse;text-align:left;width:100%;margin-bottom:40px;@apply (--paper-font-body1);font-size:15px;@apply (--docs-parameters-table);@apply (--docs-parameters-url-table);}.tr{display:table-row;}.td{display:table-cell;}.tbody{display:table-row-group;}.thead{display:table-header-group;}.thead .tr > span{display:table-cell;}.thead .tr,
+receivedFocusFromKeyboard)},_spaceKeyDownHandler:function(event){Polymer.IronButtonStateImpl._spaceKeyDownHandler.call(this,event);if(this.hasRipple()&&this.getRipple().ripples.length<1)this._ripple.uiDownAction()},_spaceKeyUpHandler:function(event){Polymer.IronButtonStateImpl._spaceKeyUpHandler.call(this,event);if(this.hasRipple())this._ripple.uiUpAction()}};Polymer.PaperButtonBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperButtonBehaviorImpl];</script><dom-module id="paper-material-shared-styles" assetpath="bower_components/paper-material/"><template><style>:host{display:block;position:relative;}:host([elevation="1"]){@apply (--shadow-elevation-2dp);}:host([elevation="2"]){@apply (--shadow-elevation-4dp);}:host([elevation="3"]){@apply (--shadow-elevation-6dp);}:host([elevation="4"]){@apply (--shadow-elevation-8dp);}:host([elevation="5"]){@apply (--shadow-elevation-16dp);}</style></template></dom-module><dom-module id="paper-button" assetpath="bower_components/paper-button/"><template strip-whitespace=""><style include="paper-material-shared-styles">:host{@apply (--layout-inline);@apply (--layout-center-center);position:relative;box-sizing:border-box;min-width:5.14em;margin:0 0.29em;background:transparent;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-tap-highlight-color:transparent;font:inherit;text-transform:uppercase;outline-width:0;border-radius:3px;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;cursor:pointer;z-index:0;padding:0.7em 0.57em;@apply (--paper-font-common-base);@apply (--paper-button);}:host([hidden]){display:none !important;}:host([raised].keyboard-focus){font-weight:bold;@apply (--paper-button-raised-keyboard-focus);}:host(:not([raised]).keyboard-focus){font-weight:bold;@apply (--paper-button-flat-keyboard-focus);}:host([disabled]){background:#eaeaea;color:#a8a8a8;cursor:auto;pointer-events:none;@apply (--paper-button-disabled);}:host([animated]){@apply (--shadow-transition);}paper-ripple{color:var(--paper-button-ink-color);}</style><content></content></template><script>Polymer({is:"paper-button",behaviors:[Polymer.PaperButtonBehavior],properties:{raised:{type:Boolean,reflectToAttribute:true,value:false,observer:"_calculateElevation"}},_calculateElevation:function(){if(!this.raised)this._setElevation(0);else Polymer.PaperButtonBehaviorImpl._calculateElevation.apply(this)}});</script></dom-module><script>(function(){window.RamlBehaviors=window.RamlBehaviors||{};window.RamlBehaviors.DocsParametersBehavior={properties:{autoHide:{type:Boolean,value:false},baseTypes:{type:Array,value:function(){return["object","array","integer","string","number","boolean","datetime","file","null","any"]}},examples:Array,hasExamples:{type:Boolean,value:false,notify:true,computed:"_computeHasExamples(examples.*)"},narrow:{type:Boolean,reflectToAttribute:true}},hasValue:function(obj){var type=typeof obj;if(type==="number"&&
+obj===0)return true;if(type==="boolean")return true;if(type==="string"&&obj==="")return true;return!!obj},getValue:function(obj){var type=typeof obj;if(type==="string"&&obj==="")return"(empty string)";return obj},readProperties:function(obj){if(!obj)return[];if(obj instanceof Array)return obj;var names=Object.keys(obj);if(!names)return[];names.sort();return names.map(function(i){var _obj=obj[i];_obj.key=i;return _obj})},_computeEnumValue:function(enumValue){if(!enumValue||!enumValue.length)return"";
+if(typeof enumValue==="string")return enumValue;enumValue=enumValue.map(function(item){if(typeof item==="string"){if(item==="")return'""';return item}return item.displayName||item.name||item.key});return enumValue.join(", ")},_computeExamples:function(record){var object=record.base;if(!object)return undefined;if(object.examples&&object.examples.length)return object.examples;if(object.example)if(typeof object.example==="string")return[object.example];else return[JSON.stringify(object.example,null,
+2)];return undefined},_computeHasExamples:function(record){var object=record.base;if(!object)return false;return!!object.length},_hasMaximum:function(item){return!!(item&&(item.max||item.maximum||item.max===0||item.maximum===0))},_getMaximum:function(item){if(!item)return;if(!!item.max||item.max===0)return item.max;if(!!item.maximum||item.maximum===0)return item.maximum},_hasMinimum:function(item){return!!(item&&(item.min||item.minimum||item.min===0||item.minimum===0))},_getMinimum:function(item){if(!item)return;
+if(!!item.min||item.min===0)return item.min;if(!!item.minimum||item.minimum===0)return item.minimum;return item&&(item.min||item.minimum)},_hasExamples:function(item){return!!(item&&item.examples&&item.examples.length)},_getExamples:function(item){if(!this._hasExamples(item))return;return item.examples.map(function(item){if(typeof item==="string")return item;return item.value}).join("\n")},_hasDisplayName:function(item){return!!(item&&item.displayName&&item.displayName!==item.name)},_computeSchemaTypeHidden:function(type){if(!type||
+!type.schema)return true;if(type.schema&&type.schema===type.schemaContent)return true;return false},_computeSchemaLabel:function(type){if(!type||!type.schema)return;if(type.schema&&type.schema===type.schemaContent)return;return type.schema}}})();</script><dom-module id="docs-parameters-table-shared-styles" assetpath="bower_components/docs-parameters-table/"><template><style>:host{display:block;}:host([hidden]){display:none;}.params-table{display:table;border-collapse:collapse;text-align:left;width:100%;margin-bottom:40px;@apply (--paper-font-body1);font-size:15px;@apply (--docs-parameters-table);@apply (--docs-parameters-url-table);}.tr{display:table-row;@apply --docs-parameters-table-tr;}.td{display:table-cell;@apply --docs-parameters-table-td;}.tbody{display:table-row-group;@apply --docs-parameters-table-tbody;}.thead{display:table-header-group;@apply --docs-parameters-table-thead;}.thead .tr > span{display:table-cell;@apply --docs-parameters-table-thead-tr-span;}.thead .tr,
     .narrow-title{vertical-align:middle;background-color:var(--params-table-header-background-color, #00A1DF);color:var(--params-table-header-color, rgba(255, 255, 255, 0.87));@apply (--docs-parameters-table-header);}.params-table-header .tr{height:36px;}.narrow-title{display:none;}.tr.params-table-header.subheader{background-color:var(--params-table-subheader-background-color, rgba(0, 161, 223, 0.24));color:var(--params-table-subheader-color, rgba(0, 0, 0, 0.87));@apply (--docs-parameters-table-subheader);}.tr{border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:var(--params-table-row-border-color, rgba(0, 161, 223, 1));background-color:var(--params-table-row-background-color, #fff);color:var(--params-table-row-color, rgba(0, 0, 0, 0.87));}.tr[subproperty]{border-bottom-color:var(--params-table-row-subproperty-border-color, rgba(0, 161, 223, 0.24));}.tr[subproperty]:last-of-type{border-bottom-color:var(--params-table-row-border-color, rgba(0, 161, 223, 1));}.tr[has-children]{border-bottom-color:var(--params-table-row-subproperty-border-color, rgba(0, 161, 223, 0.24));}.tr:last-of-type{border-bottom-color:transparent;}.td,
     .th,
     .params-table .th,
@@ -720,11 +726,11 @@ item.min===0)return item.min;if(!!item.minimum||item.minimum===0)return item.min
     .meta-property.default span,
     .meta-property.annotations span,
     .meta-property.type span{font-weight:var(--params-table-meta-value-font-weight, 500);margin-left:8px;white-space:pre-wrap;word-break:break-all;}.display ~ .value{margin-left:8px;}.td.param-name > .name{white-space:nowrap;}.td.param-name,
-    .td.param-type{font-weight:500;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}:host([narrow]) .params-table{display:block;}:host([narrow]) .params-table-header{display:none;}:host([narrow]) .tbody,
+    .td.param-type{font-weight:500;}.param-desc{@apply --docs-parameters-table-td-param-desc;}.subheader{@apply --docs-parameters-table-subheader;}.subheader-empty-cell{@apply --docs-parameters-table-subheader-empty-cell;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}:host([narrow]) .params-table{display:block;}:host([narrow]) .params-table-header{display:none;}:host([narrow]) .tbody,
     :host([narrow]) .tr{display:block;width:100%;}:host([narrow]) .td.param-name,
     :host([narrow]) .td.param-type{display:inline-block;}:host([narrow]) .td.param-desc{display:block;}:host([narrow]) .narrow-title{display:block;padding:12px;margin:0;font-size:16px;}:host([narrow]) .required-label,
     :host([narrow]) .enum-label{display:inline-block;}.property-display-name{margin:0 0 8px 0;padding:0;font-weight:500;}.required-label,
-    .enum-label{display:block;font-weight:400;color:var(--params-table-meta-required-color, rgba(0, 0, 0, 0.64));}marked-element{margin-bottom:20px;}</style></template></dom-module><script>(function(){var block={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:noop,hr:/^( *[-*_]){3,} *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *#* *(?:\n+|$)/,nptable:noop,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,blockquote:/^( *>[^\n]+(\n(?!def)[^\n]+)*\n*)+/,list:/^( *)(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:/^ *(?:comment *(?:\n|\s*$)|closed *(?:\n{2,}|\s*$)|closing *(?:\n{2,}|\s*$))/,def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,table:noop,paragraph:/^((?:[^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+)\n*/,
+    .enum-label{display:block;font-weight:400;color:var(--params-table-meta-required-color, rgba(0, 0, 0, 0.64));@apply --params-table-label-required;}marked-element{margin-bottom:20px;}</style></template></dom-module><script>(function(){var block={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:noop,hr:/^( *[-*_]){3,} *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *#* *(?:\n+|$)/,nptable:noop,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,blockquote:/^( *>[^\n]+(\n(?!def)[^\n]+)*\n*)+/,list:/^( *)(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:/^ *(?:comment *(?:\n|\s*$)|closed *(?:\n{2,}|\s*$)|closing *(?:\n{2,}|\s*$))/,def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,table:noop,paragraph:/^((?:[^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+)\n*/,
 text:/^[^\n]+/};block.bullet=/(?:[*+-]|\d+\.)/;block.item=/^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/;block.item=replace(block.item,"gm")(/bull/g,block.bullet)();block.list=replace(block.list)(/bull/g,block.bullet)("hr","\\n+(?\x3d\\1?(?:[-*_] *){3,}(?:\\n+|$))")("def","\\n+(?\x3d"+block.def.source+")")();block.blockquote=replace(block.blockquote)("def",block.def)();block._tag="(?!(?:"+"a|em|strong|small|s|cite|q|dfn|abbr|data|time|code"+"|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo"+"|span|br|wbr|ins|del|img)\\b)\\w+(?!:/|[^\\w\\s@]*@)\\b";
 block.html=replace(block.html)("comment",/\x3c!--[\s\S]*?-- >/)("closed",/<(tag)[\s\S]+?<\/\1>/)("closing",/<tag(?:"[^"]*"|'[^']*'|[^'">])*?>/)(/tag/g,block._tag)();block.paragraph=replace(block.paragraph)("hr",block.hr)("heading",block.heading)("lheading",block.lheading)("blockquote",block.blockquote)("tag","\x3c"+block._tag)("def",block.def)();block.normal=merge({},block);block.gfm=merge({},block.normal,{fences:/^ *(`{3,}|~{3,})[ \.]*(\S+)? *\n([\s\S]*?)\s*\1 *(?:\n+|$)/,paragraph:/^/,heading:/^ *(#{1,6}) +([^\n]+?) *#* *(?:\n+|$)/});
 block.gfm.paragraph=replace(block.paragraph)("(?!","(?!"+block.gfm.fences.source.replace("\\1","\\2")+"|"+block.list.source.replace("\\1","\\3")+"|")();block.tables=merge({},block.gfm,{nptable:/^ *(\S.*\|.*)\n *([-:]+ *\|[-| :]*)\n((?:.*\|.*(?:\n|$))*)\n*/,table:/^ *\|(.+)\n *\|( *[-:]+[-| :]*)\n((?: *\|.*(?:\n|$))*)\n*/});function Lexer(options){this.tokens=[];this.tokens.links={};this.options=options||marked.defaults;this.rules=block.normal;if(this.options.gfm)if(this.options.tables)this.rules=
@@ -825,7 +831,7 @@ e.target.response}else this._handleError(e);this.fire("marked-loadend",e)}.bind(
     .markdown-html ol ul{margin-top:0;margin-bottom:0;}.markdown-html li>p{margin-top:16px;}.markdown-html dl{padding:0;}.markdown-html dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:bold;}.markdown-html dl dd{padding:0 16px;margin-bottom:16px;}.markdown-html blockquote{padding:0 15px;color:#777;border-left:4px solid #ddd;}.markdown-html blockquote>:first-child{margin-top:0;}.markdown-html blockquote>:last-child{margin-bottom:0;}.markdown-html table{@apply (--arc-font-body1);display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all;border-collapse:collapse;}.markdown-html table th{font-weight:bold;}.markdown-html table th,
     .markdown-html table td{padding:6px 13px;border:1px solid #ddd;}.markdown-html table tr{background-color:#fff;border-top:1px solid #ccc;}.markdown-html table tr:nth-child(2n){background-color:#f8f8f8;}.markdown-html img{max-width:100%;box-sizing:content-box;background-color:#fff;}.markdown-html img[align=right]{padding-left:20px;}.markdown-html img[align=left]{padding-right:20px;}.markdown-html code,
     .markdown-html tt{@aplly (--arc-font-common-code);padding:0;padding-top:0.2em;padding-bottom:0.2em;margin:0;background-color:rgba(0, 0, 0, 0.04);border-radius:2px;}.markdown-html pre{word-wrap:normal;}.markdown-html code,
-    .markdown-html pre{@apply (--arc-font-common-code);color:black;background:var(--code-background-color);text-shadow:0 1px white;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}.markdown-html pre::-moz-selection,
+    .markdown-html pre{@apply (--arc-font-common-code);color:black;background:var(--code-background-color);text-shadow:0 1px white;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;@apply (--arc-code-styles);}.markdown-html pre::-moz-selection,
     .markdown-html pre ::-moz-selection,
     .markdown-html code::-moz-selection,
     .markdown-html code ::-moz-selection{text-shadow:none;background:#b3d4fc;}.markdown-html pre::selection,
@@ -859,33 +865,17 @@ e.target.response}else this._handleError(e);this.fire("marked-loadend",e)}.bind(
     .markdown-html .token.variable{color:#e90;}.markdown-html .token.important,
     .markdown-html .token.bold{font-weight:bold;}.markdown-html .token.italic{font-style:italic;}.markdown-html .token.entity{cursor:help;}</style></template></dom-module><dom-module id="raml-annotations-display" assetpath="bower_components/raml-annotations-display/"><template strip-whitespaces=""><style include="markdown-styles"></style><style>:host{font-family:inherit;font-size:inherit;color:inherit;display:block;@apply (--annotations-display);}.annotation{@apply (--layout-horizontal);}.annotation-name{margin-right:8px;@apply (--annotations-display-name);}.annotation-value{@apply (--annotations-display-value);}ul{margin:0;padding-left:24px;@apply (--annotations-display-list);}li>.value-name{margin-right:8px;@apply (--annotations-display-list-name);}li>.value-content{font-weight:var(--annotations-display-list-value-font-weight, 500);@apply (--annotations-display-list-value);}.markdown-html p{margin:0;}</style><template is="dom-repeat" items="[[_model]]"><div class="annotation"><div class="annotation-name">[[item.name]]<template is="dom-if" if="[[!item.isNil]]">:</template></div><div class="annotation-value"><template is="dom-if" if="[[item.isString]]" restamp=""><marked-element markdown="[[item.value]]"><div class="markdown-html markdown-body"></div></marked-element></template><template is="dom-if" if="[[item.isArray]]" restamp=""><ul class="array"><template is="dom-repeat" items="[[item.list]]" as="list"><li><span class="value-name">[[list.name]]</span><span class="value-content">[[list.value]]</span></li></template></ul></template></div></div></template></template><script>Polymer({is:"raml-annotations-display",properties:{annotations:Array,_model:{type:Array,computed:"_computeModel(annotations.*)"}},_computeHasAnnotations:function(record){return!!(record&&record.base&&record.base.length)},_computeModel:function(record){if(!this._computeHasAnnotations(record))return;var result=record.base.map(function(item){item=Object.assign({},item);delete item.key;item=this._createModelItem(item);return item},this);return result.filter(function(item){return!!item})},_createModelItem:function(item){var structureType=
 typeof item.structuredValue;item.isString=!!~["string","number","boolean"].indexOf(structureType);item.isNil=item.structuredValue===null||item.structuredValue===undefined;if(!item.isString&&!item.isNil)try{var list=this._computeAnnotationList(item);if(list){item.isArray=true;item.list=list}else{console.info("Annotation type not supported",item);return}}catch(e){console.warn("Issue with annotations computations.",e,item)}else if(item.isString)item.value=String(item.structuredValue);if(!item.isArray)item.isArray=
-false;delete item.structuredValue;return item},_computeAnnotationList:function(item){if(!item.structuredValue)return;var keys=Object.keys(item.structuredValue);var size=keys.length;if(!size)return;var list=keys.map(function(key){var value=item.structuredValue[key];var _typeof=typeof value;if(!~["string","number","boolean"].indexOf(_typeof))return;return{name:key,value:value}});list=list.filter(function(item){return!!item});if(!list.length)return;return list}});</script></dom-module><dom-module id="raml-type-property-description" assetpath="bower_components/docs-parameters-table/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>.markdown-body p{margin:0;}</style><template is="dom-if" if="[[_hasDisplayName(item)]]"><p class="property-display-name">[[item.displayName]]</p></template><template is="dom-if" if="[[item.description]]"><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></template><template is="dom-if" if="[[displayType]]"><div class="meta-property type">Type: <span>[[item.type]]</span></div></template><template is="dom-if" if="[[hasValue(item.default)]]"><div class="meta-property default">Default value: <span>[[getValue(item.default)]]</span></div></template><template is="dom-if" if="[[_hasExamples(item)]]"><div class="meta-property example">Example value: <span>[[_getExamples(item)]]</span></div></template><template is="dom-if" if="[[item.pattern]]"><div class="meta-property pattern">Validation pattern: <span>[[item.pattern]]</span></div></template><template is="dom-if" if="[[_hasMinimum(item)]]"><div class="meta-property min">Minimum value: <span>[[_getMinimum(item)]]</span></div></template><template is="dom-if" if="[[_hasMaximum(item)]]"><div class="meta-property max">Maximum value: <span>[[_getMaximum(item)]]</span></div></template><template is="dom-if" if="[[hasValue(item.enum)]]"><div class="meta-property enum">Possible values: <span>[[_computeEnumValue(item.enum)]]</span></div></template><template is="dom-if" if="[[hasValue(item.annotations)]]"><raml-annotations-display class="meta-property annotations" annotations="[[item.annotations]]"></raml-annotations-display></template></template><script>Polymer({is:"raml-type-property-description",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{item:Object,displayType:{type:Boolean,value:false}}});</script></dom-module><dom-module id="docs-parameters-table-row" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><div class="td param-name"><span class="name">[[item.name]]</span><template is="dom-if" if="[[item.required]]"><span class="required-label">(required)</span></template></div><div class="td param-type"><span class="type">[[item.type]]</span><template is="dom-if" if="[[hasValue(item.enum)]]"><span class="enum-label">(enum)</span></template></div><div class="td param-desc"><raml-type-property-description item="[[item]]"></raml-type-property-description></div></template><script>Polymer({is:"docs-parameters-table-row",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{item:Object}});</script></dom-module><dom-module id="docs-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-if" if="[[hasUriParameteres]]"><section class="tr params-table-header subheader path"><div class="td">Path parameters</div><div class="td"></div><div class="td"></div></section><template is="dom-repeat" items="[[displayUriParameters]]"><docs-parameters-table-row class="tr uri-parameter" item="[[item]]"></docs-parameters-table-row></template></template><template is="dom-if" if="[[hasQueryParameteres]]"><section class="tr params-table-header subheader query"><div class="td">Query parameters</div><div class="td"></div><div class="td"></div></section><template is="dom-repeat" items="[[displayQueryParameters]]"><docs-parameters-table-row class="tr query-param" item="[[item]]"></docs-parameters-table-row></template></template></div></div></template><script>Polymer({is:"docs-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{uriParameters:Object,queryParameters:Object,hasUriParameteres:{type:Boolean,computed:"_computeHasUriParameteres(uriParameters.*)",value:false,notify:true},hasQueryParameteres:{type:Boolean,computed:"_computeHasQueryParameteres(queryParameters.*)",value:false,notify:true},hasParameters:{type:Boolean,computed:"_computeHasParameteres(hasQueryParameteres, hasUriParameteres)",value:false,notify:true},autoHide:{type:Boolean,
+false;delete item.structuredValue;return item},_computeAnnotationList:function(item){if(!item.structuredValue)return;var keys=Object.keys(item.structuredValue);var size=keys.length;if(!size)return;var list=keys.map(function(key){var value=item.structuredValue[key];var _typeof=typeof value;if(!~["string","number","boolean"].indexOf(_typeof))return;return{name:key,value:value}});list=list.filter(function(item){return!!item});if(!list.length)return;return list}});</script></dom-module><dom-module id="raml-type-property-description" assetpath="bower_components/docs-parameters-table/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>.markdown-body p{margin:0;}</style><template is="dom-if" if="[[_hasDisplayName(item)]]"><p class="property-display-name">[[item.displayName]]</p></template><template is="dom-if" if="[[item.description]]"><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></template><template is="dom-if" if="[[displayType]]"><div class="meta-property type">Type: <span>[[item.type]]</span></div></template><template is="dom-if" if="[[hasValue(item.default)]]"><div class="meta-property default">Default value: <span>[[getValue(item.default)]]</span></div></template><template is="dom-if" if="[[_hasExamples(item)]]"><div class="meta-property example">Example value: <span>[[_getExamples(item)]]</span></div></template><template is="dom-if" if="[[item.pattern]]"><div class="meta-property pattern">Validation pattern: <span>[[item.pattern]]</span></div></template><template is="dom-if" if="[[_hasMinimum(item)]]"><div class="meta-property min">Minimum value: <span>[[_getMinimum(item)]]</span></div></template><template is="dom-if" if="[[_hasMaximum(item)]]"><div class="meta-property max">Maximum value: <span>[[_getMaximum(item)]]</span></div></template><template is="dom-if" if="[[hasValue(item.enum)]]"><div class="meta-property enum">Possible values: <span>[[_computeEnumValue(item.enum)]]</span></div></template><template is="dom-if" if="[[hasValue(item.annotations)]]"><raml-annotations-display class="meta-property annotations" annotations="[[item.annotations]]"></raml-annotations-display></template></template><script>Polymer({is:"raml-type-property-description",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{item:Object,displayType:{type:Boolean,value:false}}});</script></dom-module><dom-module id="docs-parameters-table-row" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><div class="td param-name"><span class="name">[[item.name]]</span><template is="dom-if" if="[[item.required]]"><span class="required-label">(required)</span></template></div><div class="td param-type"><span class="type">[[item.type]]</span><template is="dom-if" if="[[hasValue(item.enum)]]"><span class="enum-label">(enum)</span></template></div><div class="td param-desc"><raml-type-property-description item="[[item]]"></raml-type-property-description></div></template><script>Polymer({is:"docs-parameters-table-row",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{item:Object}});</script></dom-module><dom-module id="docs-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-if" if="[[hasUriParameteres]]"><section class="tr params-table-header subheader path"><div class="td subheader fullrow">Path parameters</div><div class="td subheader subheader-empty-cell"></div><div class="td subheader subheader-empty-cell"></div></section><template is="dom-repeat" items="[[displayUriParameters]]"><docs-parameters-table-row class="tr uri-parameter" item="[[item]]"></docs-parameters-table-row></template></template><template is="dom-if" if="[[hasQueryParameteres]]"><section class="tr params-table-header subheader query"><div class="td subheader">Query parameters</div><div class="td subheader subheader-empty-cell"></div><div class="td subheader subheader-empty-cell"></div></section><template is="dom-repeat" items="[[displayQueryParameters]]"><docs-parameters-table-row class="tr query-param" item="[[item]]"></docs-parameters-table-row></template></template></div></div></template><script>Polymer({is:"docs-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{uriParameters:Object,queryParameters:Object,hasUriParameteres:{type:Boolean,computed:"_computeHasUriParameteres(uriParameters.*)",value:false,notify:true},hasQueryParameteres:{type:Boolean,computed:"_computeHasQueryParameteres(queryParameters.*)",value:false,notify:true},hasParameters:{type:Boolean,computed:"_computeHasParameteres(hasQueryParameteres, hasUriParameteres)",value:false,notify:true},autoHide:{type:Boolean,
 value:false},displayUriParameters:{type:Array,computed:"_computeProperty(uriParameters)"},displayQueryParameters:{type:Array,computed:"_computeProperty(queryParameters)"}},observers:["_autoHide(autoHide, hasQueryParameteres, hasUriParameteres)"],_computeHasUriParameteres:function(){return!!(this.uriParameters&&Object.keys(this.uriParameters).length)},_computeHasQueryParameteres:function(){return!!(this.queryParameters&&Object.keys(this.queryParameters).length)},_autoHide:function(autoHide,hasQueryParameteres,
-hasUriParameteres){if(!autoHide)return;var state=!(hasQueryParameteres||hasUriParameteres);this.toggleAttribute("hidden",state)},_computeProperty:function(value){if(!value)return value;return this.readProperties(value)},_computeHasParameteres:function(hasQueryParameteres,hasUriParameteres){return!!(hasQueryParameteres||hasUriParameteres)}});</script></dom-module><dom-module id="docs-headers-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-if" if="[[hasHeaders]]"><template is="dom-repeat" items="[[headers]]"><docs-parameters-table-row class="tr" item="[[item]]"></docs-parameters-table-row></template></template></div></div></template><script>Polymer({is:"docs-headers-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{headers:Array,hasHeaders:{type:Boolean,computed:"_computeHasHeaders(headers.*)",value:false,notify:true}},observers:["_autoHide(autoHide, hasHeaders)"],_computeHasHeaders:function(){return!!(this.headers&&Object.keys(this.headers).length)},_autoHide:function(autoHide,hasHeaders){if(!autoHide)return;var state=!hasHeaders;this.toggleAttribute("hidden",state)}});</script></dom-module><script>Polymer.IronMenuBehaviorImpl={properties:{focusedItem:{observer:"_focusedItemChanged",readOnly:true,type:Object},attrForItemTitle:{type:String},disabled:{type:Boolean,value:false,observer:"_disabledChanged"}},_SEARCH_RESET_TIMEOUT_MS:1E3,_previousTabIndex:0,hostAttributes:{"role":"menu"},observers:["_updateMultiselectable(multi)"],listeners:{"focus":"_onFocus","keydown":"_onKeydown","iron-items-changed":"_onIronItemsChanged"},keyBindings:{"up":"_onUpKey","down":"_onDownKey","esc":"_onEscKey","shift+tab:keydown":"_onShiftTabDown"},
-attached:function(){this._resetTabindices()},select:function(value){if(this._defaultFocusAsync){this.cancelAsync(this._defaultFocusAsync);this._defaultFocusAsync=null}var item=this._valueToItem(value);if(item&&item.hasAttribute("disabled"))return;this._setFocusedItem(item);Polymer.IronMultiSelectableBehaviorImpl.select.apply(this,arguments)},_resetTabindices:function(){var selectedItem=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this.items.forEach(function(item){item.setAttribute("tabindex",
-item===selectedItem?"0":"-1")},this)},_updateMultiselectable:function(multi){if(multi)this.setAttribute("aria-multiselectable","true");else this.removeAttribute("aria-multiselectable")},_focusWithKeyboardEvent:function(event){this.cancelDebouncer("_clearSearchText");var searchText=this._searchText||"";var key=event.key&&event.key.length==1?event.key:String.fromCharCode(event.keyCode);searchText+=key.toLocaleLowerCase();var searchLength=searchText.length;for(var i=0,item;item=this.items[i];i++){if(item.hasAttribute("disabled"))continue;
-var attr=this.attrForItemTitle||"textContent";var title=(item[attr]||item.getAttribute(attr)||"").trim();if(title.length<searchLength)continue;if(title.slice(0,searchLength).toLocaleLowerCase()==searchText){this._setFocusedItem(item);break}}this._searchText=searchText;this.debounce("_clearSearchText",this._clearSearchText,this._SEARCH_RESET_TIMEOUT_MS)},_clearSearchText:function(){this._searchText=""},_focusPrevious:function(){var length=this.items.length;var curFocusIndex=Number(this.indexOf(this.focusedItem));
-for(var i=1;i<length+1;i++){var item=this.items[(curFocusIndex-i+length)%length];if(!item.hasAttribute("disabled")){var owner=Polymer.dom(item).getOwnerRoot()||document;this._setFocusedItem(item);if(Polymer.dom(owner).activeElement==item)return}}},_focusNext:function(){var length=this.items.length;var curFocusIndex=Number(this.indexOf(this.focusedItem));for(var i=1;i<length+1;i++){var item=this.items[(curFocusIndex+i)%length];if(!item.hasAttribute("disabled")){var owner=Polymer.dom(item).getOwnerRoot()||
-document;this._setFocusedItem(item);if(Polymer.dom(owner).activeElement==item)return}}},_applySelection:function(item,isSelected){if(isSelected)item.setAttribute("aria-selected","true");else item.removeAttribute("aria-selected");Polymer.IronSelectableBehavior._applySelection.apply(this,arguments)},_focusedItemChanged:function(focusedItem,old){old&&old.setAttribute("tabindex","-1");if(focusedItem&&!focusedItem.hasAttribute("disabled")&&!this.disabled){focusedItem.setAttribute("tabindex","0");focusedItem.focus()}},
-_onIronItemsChanged:function(event){if(event.detail.addedNodes.length)this._resetTabindices()},_onShiftTabDown:function(event){var oldTabIndex=this.getAttribute("tabindex");Polymer.IronMenuBehaviorImpl._shiftTabPressed=true;this._setFocusedItem(null);this.setAttribute("tabindex","-1");this.async(function(){this.setAttribute("tabindex",oldTabIndex);Polymer.IronMenuBehaviorImpl._shiftTabPressed=false},1)},_onFocus:function(event){if(Polymer.IronMenuBehaviorImpl._shiftTabPressed)return;var rootTarget=
-(Polymer.dom(event).rootTarget);if(rootTarget!==this&&typeof rootTarget.tabIndex!=="undefined"&&!this.isLightDescendant(rootTarget))return;this._defaultFocusAsync=this.async(function(){var selectedItem=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this._setFocusedItem(null);if(selectedItem)this._setFocusedItem(selectedItem);else if(this.items[0])this._focusNext()})},_onUpKey:function(event){this._focusPrevious();event.detail.keyboardEvent.preventDefault()},_onDownKey:function(event){this._focusNext();
-event.detail.keyboardEvent.preventDefault()},_onEscKey:function(event){this.focusedItem.blur()},_onKeydown:function(event){if(!this.keyboardEventMatchesKeys(event,"up down esc"))this._focusWithKeyboardEvent(event);event.stopPropagation()},_activateHandler:function(event){Polymer.IronSelectableBehavior._activateHandler.call(this,event);event.stopPropagation()},_disabledChanged:function(disabled){if(disabled){this._previousTabIndex=this.hasAttribute("tabindex")?this.tabIndex:0;this.removeAttribute("tabindex")}else if(!this.hasAttribute("tabindex"))this.setAttribute("tabindex",
-this._previousTabIndex)}};Polymer.IronMenuBehaviorImpl._shiftTabPressed=false;Polymer.IronMenuBehavior=[Polymer.IronMultiSelectableBehavior,Polymer.IronA11yKeysBehavior,Polymer.IronMenuBehaviorImpl];</script><script>Polymer.IronMenubarBehaviorImpl={hostAttributes:{"role":"menubar"},keyBindings:{"left":"_onLeftKey","right":"_onRightKey"},_onUpKey:function(event){this.focusedItem.click();event.detail.keyboardEvent.preventDefault()},_onDownKey:function(event){this.focusedItem.click();event.detail.keyboardEvent.preventDefault()},get _isRTL(){return window.getComputedStyle(this)["direction"]==="rtl"},_onLeftKey:function(event){if(this._isRTL)this._focusNext();else this._focusPrevious();event.detail.keyboardEvent.preventDefault()},
-_onRightKey:function(event){if(this._isRTL)this._focusPrevious();else this._focusNext();event.detail.keyboardEvent.preventDefault()},_onKeydown:function(event){if(this.keyboardEventMatchesKeys(event,"up down left right esc"))return;this._focusWithKeyboardEvent(event)}};Polymer.IronMenubarBehavior=[Polymer.IronMenuBehavior,Polymer.IronMenubarBehaviorImpl];</script><iron-iconset-svg name="paper-tabs" size="24"><svg><defs><g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g><g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></g></defs></svg></iron-iconset-svg><dom-module id="paper-tab" assetpath="bower_components/paper-tabs/"><template><style>:host{@apply (--layout-inline);@apply (--layout-center);@apply (--layout-center-justified);@apply (--layout-flex-auto);position:relative;padding:0 12px;overflow:hidden;cursor:pointer;vertical-align:middle;@apply (--paper-font-common-base);@apply (--paper-tab);}:host(:focus){outline:none;}:host([link]){padding:0;}.tab-content{height:100%;transform:translateZ(0);-webkit-transform:translateZ(0);transition:opacity 0.1s cubic-bezier(0.4, 0.0, 1, 1);@apply (--layout-horizontal);@apply (--layout-center-center);@apply (--layout-flex-auto);@apply (--paper-tab-content);}:host(:not(.iron-selected)) > .tab-content{opacity:0.8;@apply (--paper-tab-content-unselected);}:host(:focus) .tab-content{opacity:1;font-weight:700;}paper-ripple{color:var(--paper-tab-ink, --paper-yellow-a100);}.tab-content > ::content > a{@apply (--layout-flex-auto);height:100%;}</style><div class="tab-content"><content></content></div></template><script>Polymer({is:"paper-tab",behaviors:[Polymer.IronControlState,Polymer.IronButtonState,Polymer.PaperRippleBehavior],properties:{link:{type:Boolean,value:false,reflectToAttribute:true}},hostAttributes:{role:"tab"},listeners:{down:"_updateNoink",tap:"_onTap"},attached:function(){this._updateNoink()},get _parentNoink(){var parent=Polymer.dom(this).parentNode;return!!parent&&!!parent.noink},_updateNoink:function(){this.noink=!!this.noink||!!this._parentNoink},_onTap:function(event){if(this.link){var anchor=
-this.queryEffectiveChildren("a");if(!anchor)return;if(event.target===anchor)return;anchor.click()}}});</script></dom-module><dom-module id="paper-tabs" assetpath="bower_components/paper-tabs/"><template><style>:host{@apply (--layout);@apply (--layout-center);height:48px;font-size:14px;font-weight:500;overflow:hidden;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-tap-highlight-color:transparent;@apply (--paper-tabs);}:host-context([dir=rtl]){@apply (--layout-horizontal-reverse);}#tabsContainer{position:relative;height:100%;white-space:nowrap;overflow:hidden;@apply (--layout-flex-auto);@apply (--paper-tabs-container);}#tabsContent{height:100%;-moz-flex-basis:auto;-ms-flex-basis:auto;flex-basis:auto;@apply (--paper-tabs-content);}#tabsContent.scrollable{position:absolute;white-space:nowrap;}#tabsContent:not(.scrollable),
-      #tabsContent.scrollable.fit-container{@apply (--layout-horizontal);}#tabsContent.scrollable.fit-container{min-width:100%;}#tabsContent.scrollable.fit-container > ::content > *{-ms-flex:1 0 auto;-webkit-flex:1 0 auto;flex:1 0 auto;}.hidden{display:none;}.not-visible{opacity:0;cursor:default;}paper-icon-button{width:48px;height:48px;padding:12px;margin:0 4px;}#selectionBar{position:absolute;height:0;bottom:0;left:0;right:0;border-bottom:2px solid var(--paper-tabs-selection-bar-color, --paper-yellow-a100);-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:left center;transform-origin:left center;transition:-webkit-transform;transition:transform;@apply (--paper-tabs-selection-bar);}#selectionBar.align-bottom{top:0;bottom:auto;}#selectionBar.expand{transition-duration:0.15s;transition-timing-function:cubic-bezier(0.4, 0.0, 1, 1);}#selectionBar.contract{transition-duration:0.18s;transition-timing-function:cubic-bezier(0.0, 0.0, 0.2, 1);}#tabsContent > ::content > *:not(#selectionBar){height:100%;}</style><paper-icon-button icon="paper-tabs:chevron-left" class$="[[_computeScrollButtonClass(_leftHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onLeftScrollButtonDown" tabindex="-1"></paper-icon-button><div id="tabsContainer" on-track="_scroll" on-down="_down"><div id="tabsContent" class$="[[_computeTabsContentClass(scrollable, fitContainer)]]"><div id="selectionBar" class$="[[_computeSelectionBarClass(noBar, alignBottom)]]" on-transitionend="_onBarTransitionEnd"></div><content select="*"></content></div></div><paper-icon-button icon="paper-tabs:chevron-right" class$="[[_computeScrollButtonClass(_rightHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onRightScrollButtonDown" tabindex="-1"></paper-icon-button></template><script>Polymer({is:"paper-tabs",behaviors:[Polymer.IronResizableBehavior,Polymer.IronMenubarBehavior],properties:{noink:{type:Boolean,value:false,observer:"_noinkChanged"},noBar:{type:Boolean,value:false},noSlide:{type:Boolean,value:false},scrollable:{type:Boolean,value:false},fitContainer:{type:Boolean,value:false},disableDrag:{type:Boolean,value:false},hideScrollButtons:{type:Boolean,value:false},alignBottom:{type:Boolean,value:false},selectable:{type:String,value:"paper-tab"},autoselect:{type:Boolean,
-value:false},autoselectDelay:{type:Number,value:0},_step:{type:Number,value:10},_holdDelay:{type:Number,value:1},_leftHidden:{type:Boolean,value:false},_rightHidden:{type:Boolean,value:false},_previousTab:{type:Object}},hostAttributes:{role:"tablist"},listeners:{"iron-resize":"_onTabSizingChanged","iron-items-changed":"_onTabSizingChanged","iron-select":"_onIronSelect","iron-deselect":"_onIronDeselect"},keyBindings:{"left:keyup right:keyup":"_onArrowKeyup"},created:function(){this._holdJob=null;this._pendingActivationItem=
-undefined;this._pendingActivationTimeout=undefined;this._bindDelayedActivationHandler=this._delayedActivationHandler.bind(this);this.addEventListener("blur",this._onBlurCapture.bind(this),true)},ready:function(){this.setScrollDirection("y",this.$.tabsContainer)},detached:function(){this._cancelPendingActivation()},_noinkChanged:function(noink){var childTabs=Polymer.dom(this).querySelectorAll("paper-tab");childTabs.forEach(noink?this._setNoinkAttribute:this._removeNoinkAttribute)},_setNoinkAttribute:function(element){element.setAttribute("noink",
-"")},_removeNoinkAttribute:function(element){element.removeAttribute("noink")},_computeScrollButtonClass:function(hideThisButton,scrollable,hideScrollButtons){if(!scrollable||hideScrollButtons)return"hidden";if(hideThisButton)return"not-visible";return""},_computeTabsContentClass:function(scrollable,fitContainer){return scrollable?"scrollable"+(fitContainer?" fit-container":""):" fit-container"},_computeSelectionBarClass:function(noBar,alignBottom){if(noBar)return"hidden";else if(alignBottom)return"align-bottom";
-return""},_onTabSizingChanged:function(){this.debounce("_onTabSizingChanged",function(){this._scroll();this._tabChanged(this.selectedItem)},10)},_onIronSelect:function(event){this._tabChanged(event.detail.item,this._previousTab);this._previousTab=event.detail.item;this.cancelDebouncer("tab-changed")},_onIronDeselect:function(event){this.debounce("tab-changed",function(){this._tabChanged(null,this._previousTab);this._previousTab=null},1)},_activateHandler:function(){this._cancelPendingActivation();
-Polymer.IronMenuBehaviorImpl._activateHandler.apply(this,arguments)},_scheduleActivation:function(item,delay){this._pendingActivationItem=item;this._pendingActivationTimeout=this.async(this._bindDelayedActivationHandler,delay)},_delayedActivationHandler:function(){var item=this._pendingActivationItem;this._pendingActivationItem=undefined;this._pendingActivationTimeout=undefined;item.fire(this.activateEvent,null,{bubbles:true,cancelable:true})},_cancelPendingActivation:function(){if(this._pendingActivationTimeout!==
-undefined){this.cancelAsync(this._pendingActivationTimeout);this._pendingActivationItem=undefined;this._pendingActivationTimeout=undefined}},_onArrowKeyup:function(event){if(this.autoselect)this._scheduleActivation(this.focusedItem,this.autoselectDelay)},_onBlurCapture:function(event){if(event.target===this._pendingActivationItem)this._cancelPendingActivation()},get _tabContainerScrollSize(){return Math.max(0,this.$.tabsContainer.scrollWidth-this.$.tabsContainer.offsetWidth)},_scroll:function(e,detail){if(!this.scrollable)return;
-var ddx=detail&&-detail.ddx||0;this._affectScroll(ddx)},_down:function(e){this.async(function(){if(this._defaultFocusAsync){this.cancelAsync(this._defaultFocusAsync);this._defaultFocusAsync=null}},1)},_affectScroll:function(dx){this.$.tabsContainer.scrollLeft+=dx;var scrollLeft=this.$.tabsContainer.scrollLeft;this._leftHidden=scrollLeft===0;this._rightHidden=scrollLeft===this._tabContainerScrollSize},_onLeftScrollButtonDown:function(){this._scrollToLeft();this._holdJob=setInterval(this._scrollToLeft.bind(this),
-this._holdDelay)},_onRightScrollButtonDown:function(){this._scrollToRight();this._holdJob=setInterval(this._scrollToRight.bind(this),this._holdDelay)},_onScrollButtonUp:function(){clearInterval(this._holdJob);this._holdJob=null},_scrollToLeft:function(){this._affectScroll(-this._step)},_scrollToRight:function(){this._affectScroll(this._step)},_tabChanged:function(tab,old){if(!tab){this.$.selectionBar.classList.remove("expand");this.$.selectionBar.classList.remove("contract");this._positionBar(0,0);
-return}var r=this.$.tabsContent.getBoundingClientRect();var w=r.width;var tabRect=tab.getBoundingClientRect();var tabOffsetLeft=tabRect.left-r.left;this._pos={width:this._calcPercent(tabRect.width,w),left:this._calcPercent(tabOffsetLeft,w)};if(this.noSlide||old==null){this.$.selectionBar.classList.remove("expand");this.$.selectionBar.classList.remove("contract");this._positionBar(this._pos.width,this._pos.left);return}var oldRect=old.getBoundingClientRect();var oldIndex=this.items.indexOf(old);var index=
-this.items.indexOf(tab);var m=5;this.$.selectionBar.classList.add("expand");var moveRight=oldIndex<index;var isRTL=this._isRTL;if(isRTL)moveRight=!moveRight;if(moveRight)this._positionBar(this._calcPercent(tabRect.left+tabRect.width-oldRect.left,w)-m,this._left);else this._positionBar(this._calcPercent(oldRect.left+oldRect.width-tabRect.left,w)-m,this._calcPercent(tabOffsetLeft,w)+m);if(this.scrollable)this._scrollToSelectedIfNeeded(tabRect.width,tabOffsetLeft)},_scrollToSelectedIfNeeded:function(tabWidth,
-tabOffsetLeft){var l=tabOffsetLeft-this.$.tabsContainer.scrollLeft;if(l<0)this.$.tabsContainer.scrollLeft+=l;else{l+=tabWidth-this.$.tabsContainer.offsetWidth;if(l>0)this.$.tabsContainer.scrollLeft+=l}},_calcPercent:function(w,w0){return 100*w/w0},_positionBar:function(width,left){width=width||0;left=left||0;this._width=width;this._left=left;this.transform("translateX("+left+"%) scaleX("+width/100+")",this.$.selectionBar)},_onBarTransitionEnd:function(e){var cl=this.$.selectionBar.classList;if(cl.contains("expand")){cl.remove("expand");
-cl.add("contract");this._positionBar(this._pos.width,this._pos.left)}else if(cl.contains("contract"))cl.remove("contract")}});</script></dom-module><script>Polymer.IronFormElementBehavior={properties:{name:{type:String},value:{notify:true,type:String},required:{type:Boolean,value:false},_parentForm:{type:Object}},attached:function(){this.fire("iron-form-element-register")},detached:function(){if(this._parentForm)this._parentForm.fire("iron-form-element-unregister",{target:this})}};</script><script>Polymer.IronValidatableBehaviorMeta=null;
+hasUriParameteres){if(!autoHide)return;var state=!(hasQueryParameteres||hasUriParameteres);this.toggleAttribute("hidden",state)},_computeProperty:function(value){if(!value)return value;return this.readProperties(value)},_computeHasParameteres:function(hasQueryParameteres,hasUriParameteres){return!!(hasQueryParameteres||hasUriParameteres)}});</script></dom-module><dom-module id="docs-headers-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-if" if="[[hasHeaders]]"><template is="dom-repeat" items="[[headers]]"><docs-parameters-table-row class="tr" item="[[item]]"></docs-parameters-table-row></template></template></div></div></template><script>Polymer({is:"docs-headers-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{headers:Array,hasHeaders:{type:Boolean,computed:"_computeHasHeaders(headers.*)",value:false,notify:true}},observers:["_autoHide(autoHide, hasHeaders)"],_computeHasHeaders:function(){return!!(this.headers&&Object.keys(this.headers).length)},_autoHide:function(autoHide,hasHeaders){if(!autoHide)return;var state=!hasHeaders;this.toggleAttribute("hidden",state)}});</script></dom-module><dom-module id="paper-tooltip" assetpath="bower_components/paper-tooltip/"><template><style>:host{display:block;position:absolute;outline:none;z-index:1002;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;cursor:default;}#tooltip{display:block;outline:none;@apply (--paper-font-common-base);font-size:10px;line-height:1;background-color:var(--paper-tooltip-background, #616161);opacity:var(--paper-tooltip-opacity, 0.9);color:var(--paper-tooltip-text-color, white);padding:8px;border-radius:2px;@apply (--paper-tooltip);}.hidden{display:none !important;}</style><div id="tooltip" class="hidden"><content></content></div></template><script>Polymer({is:"paper-tooltip",hostAttributes:{role:"tooltip",tabindex:-1},behaviors:[Polymer.NeonAnimationRunnerBehavior],properties:{for:{type:String,observer:"_findTarget"},manualMode:{type:Boolean,value:false,observer:"_manualModeChanged"},position:{type:String,value:"bottom"},fitToVisibleBounds:{type:Boolean,value:false},offset:{type:Number,value:14},marginTop:{type:Number,value:14},animationDelay:{type:Number,value:500},animationConfig:{type:Object,value:function(){return{"entry":[{name:"fade-in-animation",
+node:this,timing:{delay:0}}],"exit":[{name:"fade-out-animation",node:this}]}}},_showing:{type:Boolean,value:false}},listeners:{"neon-animation-finish":"_onAnimationFinish"},get target(){var parentNode=Polymer.dom(this).parentNode;var ownerRoot=Polymer.dom(this).getOwnerRoot();var target;if(this.for)target=Polymer.dom(ownerRoot).querySelector("#"+this.for);else target=parentNode.nodeType==Node.DOCUMENT_FRAGMENT_NODE?ownerRoot.host:parentNode;return target},attached:function(){this._findTarget()},detached:function(){if(!this.manualMode)this._removeListeners()},
+show:function(){if(this._showing)return;if(Polymer.dom(this).textContent.trim()===""){var allChildrenEmpty=true;var effectiveChildren=Polymer.dom(this).getEffectiveChildNodes();for(var i=0;i<effectiveChildren.length;i++)if(effectiveChildren[i].textContent.trim()!==""){allChildrenEmpty=false;break}if(allChildrenEmpty)return}this.cancelAnimation();this._showing=true;this.toggleClass("hidden",false,this.$.tooltip);this.updatePosition();this.animationConfig.entry[0].timing=this.animationConfig.entry[0].timing||
+{};this.animationConfig.entry[0].timing.delay=this.animationDelay;this._animationPlaying=true;this.playAnimation("entry")},hide:function(){if(!this._showing)return;if(this._animationPlaying){this.cancelAnimation();this._showing=false;this._onAnimationFinish();return}this._showing=false;this._animationPlaying=true;this.playAnimation("exit")},updatePosition:function(){if(!this._target||!this.offsetParent)return;var offset=this.offset;if(this.marginTop!=14&&this.offset==14)offset=this.marginTop;var parentRect=
+this.offsetParent.getBoundingClientRect();var targetRect=this._target.getBoundingClientRect();var thisRect=this.getBoundingClientRect();var horizontalCenterOffset=(targetRect.width-thisRect.width)/2;var verticalCenterOffset=(targetRect.height-thisRect.height)/2;var targetLeft=targetRect.left-parentRect.left;var targetTop=targetRect.top-parentRect.top;var tooltipLeft,tooltipTop;switch(this.position){case "top":tooltipLeft=targetLeft+horizontalCenterOffset;tooltipTop=targetTop-thisRect.height-offset;
+break;case "bottom":tooltipLeft=targetLeft+horizontalCenterOffset;tooltipTop=targetTop+targetRect.height+offset;break;case "left":tooltipLeft=targetLeft-thisRect.width-offset;tooltipTop=targetTop+verticalCenterOffset;break;case "right":tooltipLeft=targetLeft+targetRect.width+offset;tooltipTop=targetTop+verticalCenterOffset;break}if(this.fitToVisibleBounds){if(parentRect.left+tooltipLeft+thisRect.width>window.innerWidth){this.style.right="0px";this.style.left="auto"}else{this.style.left=Math.max(0,
+tooltipLeft)+"px";this.style.right="auto"}if(parentRect.top+tooltipTop+thisRect.height>window.innerHeight){this.style.bottom=parentRect.height+"px";this.style.top="auto"}else{this.style.top=Math.max(-parentRect.top,tooltipTop)+"px";this.style.bottom="auto"}}else{this.style.left=tooltipLeft+"px";this.style.top=tooltipTop+"px"}},_addListeners:function(){if(this._target){this.listen(this._target,"mouseenter","show");this.listen(this._target,"focus","show");this.listen(this._target,"mouseleave","hide");
+this.listen(this._target,"blur","hide");this.listen(this._target,"tap","hide")}this.listen(this,"mouseenter","hide")},_findTarget:function(){if(!this.manualMode)this._removeListeners();this._target=this.target;if(!this.manualMode)this._addListeners()},_manualModeChanged:function(){if(this.manualMode)this._removeListeners();else this._addListeners()},_onAnimationFinish:function(){this._animationPlaying=false;if(!this._showing)this.toggleClass("hidden",true,this.$.tooltip)},_removeListeners:function(){if(this._target){this.unlisten(this._target,
+"mouseenter","show");this.unlisten(this._target,"focus","show");this.unlisten(this._target,"mouseleave","hide");this.unlisten(this._target,"blur","hide");this.unlisten(this._target,"tap","hide")}this.unlisten(this,"mouseenter","hide")}});</script></dom-module><script>Polymer.IronFormElementBehavior={properties:{name:{type:String},value:{notify:true,type:String},required:{type:Boolean,value:false},_parentForm:{type:Object}},attached:function(){this.fire("iron-form-element-register")},detached:function(){if(this._parentForm)this._parentForm.fire("iron-form-element-unregister",{target:this})}};</script><script>Polymer.IronValidatableBehaviorMeta=null;
 Polymer.IronValidatableBehavior={properties:{validator:{type:String},invalid:{notify:true,reflectToAttribute:true,type:Boolean,value:false},_validatorMeta:{type:Object},validatorType:{type:String,value:"validator"},_validator:{type:Object,computed:"__computeValidator(validator)"}},observers:["_invalidChanged(invalid)"],registered:function(){Polymer.IronValidatableBehaviorMeta=new Polymer.IronMeta({type:"validator"})},_invalidChanged:function(){if(this.invalid)this.setAttribute("aria-invalid","true");
 else this.removeAttribute("aria-invalid")},hasValidator:function(){return this._validator!=null},validate:function(value){this.invalid=!this._getValidity(value);return!this.invalid},_getValidity:function(value){if(this.hasValidator())return this._validator.validate(value);return true},__computeValidator:function(){return Polymer.IronValidatableBehaviorMeta&&Polymer.IronValidatableBehaviorMeta.byKey(this.validator)}};</script><script>Polymer({is:"iron-input",extends:"input",behaviors:[Polymer.IronValidatableBehavior],properties:{bindValue:{observer:"_bindValueChanged",type:String},preventInvalidInput:{type:Boolean},allowedPattern:{type:String,observer:"_allowedPatternChanged"},_previousValidInput:{type:String,value:""},_patternAlreadyChecked:{type:Boolean,value:false}},listeners:{"input":"_onInput","keypress":"_onKeypress"},registered:function(){if(!this._canDispatchEventOnDisabled()){this._origDispatchEvent=this.dispatchEvent;
 this.dispatchEvent=this._dispatchEventFirefoxIE}},created:function(){Polymer.IronA11yAnnouncer.requestAvailability()},_canDispatchEventOnDisabled:function(){var input=document.createElement("input");var canDispatch=false;input.disabled=true;input.addEventListener("feature-check-dispatch-event",function(){canDispatch=true});try{input.dispatchEvent(new Event("feature-check-dispatch-event"))}catch(e){}return canDispatch},_dispatchEventFirefoxIE:function(event){var disabled=this.disabled;this.disabled=
@@ -902,7 +892,7 @@ id)}},validate:function(){return this.inputElement.validate()},_focusBlurHandler
 updateValueAndPreserveCaret:function(newValue){try{var start=this.inputElement.selectionStart;this.value=newValue;this.inputElement.selectionStart=start;this.inputElement.selectionEnd=start}catch(e){this.value=newValue}},_computeAlwaysFloatLabel:function(alwaysFloatLabel,placeholder){return placeholder||alwaysFloatLabel},_updateAriaLabelledBy:function(){var label=Polymer.dom(this.root).querySelector("label");if(!label){this._ariaLabelledBy="";return}var labelledBy;if(label.id)labelledBy=label.id;
 else{labelledBy="paper-input-label-"+Polymer.PaperInputHelper.NextLabelID++;label.id=labelledBy}this._ariaLabelledBy=labelledBy},_onChange:function(event){if(this.shadowRoot)this.fire(event.type,{sourceEvent:event},{node:this,bubbles:event.bubbles,cancelable:event.cancelable})},_autofocusChanged:function(){if(this.autofocus&&this._focusableElement){var activeElement=document.activeElement;var isActiveElementValid=activeElement instanceof HTMLElement;var isSomeElementActive=isActiveElementValid&&activeElement!==
 document.body&&activeElement!==document.documentElement;if(!isSomeElementActive)this._focusableElement.focus()}}};Polymer.PaperInputBehavior=[Polymer.IronControlState,Polymer.IronA11yKeysBehavior,Polymer.PaperInputBehaviorImpl];</script><script>Polymer.PaperInputAddonBehavior={hostAttributes:{"add-on":""},attached:function(){this.fire("addon-attached")},update:function(state){}};</script><dom-module id="paper-input-char-counter" assetpath="bower_components/paper-input/"><template><style>:host{display:inline-block;float:right;@apply (--paper-font-caption);@apply (--paper-input-char-counter);}:host([hidden]){display:none !important;}:host-context([dir="rtl"]){float:left;}</style><span>[[_charCounterStr]]</span></template></dom-module><script>Polymer({is:"paper-input-char-counter",behaviors:[Polymer.PaperInputAddonBehavior],properties:{_charCounterStr:{type:String,value:"0"}},update:function(state){if(!state.inputElement)return;state.value=state.value||"";var counter=state.value.toString().length.toString();if(state.inputElement.hasAttribute("maxlength"))counter+="/"+state.inputElement.getAttribute("maxlength");this._charCounterStr=counter}});</script><dom-module id="paper-input-container" assetpath="bower_components/paper-input/"><template><style>:host{display:block;padding:8px 0;@apply (--paper-input-container);}:host([inline]){display:inline-block;}:host([disabled]){pointer-events:none;opacity:0.33;@apply (--paper-input-container-disabled);}:host([hidden]){display:none !important;}.floated-label-placeholder{@apply (--paper-font-caption);}.underline{height:2px;position:relative;}.focused-line{@apply (--layout-fit);border-bottom:2px solid var(--paper-input-container-focus-color, --primary-color);-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:scale3d(0,1,1);transform:scale3d(0,1,1);@apply (--paper-input-container-underline-focus);}.underline.is-highlighted .focused-line{-webkit-transform:none;transform:none;-webkit-transition:-webkit-transform 0.25s;transition:transform 0.25s;@apply (--paper-transition-easing);}.underline.is-invalid .focused-line{border-color:var(--paper-input-container-invalid-color, --error-color);-webkit-transform:none;transform:none;-webkit-transition:-webkit-transform 0.25s;transition:transform 0.25s;@apply (--paper-transition-easing);}.unfocused-line{@apply (--layout-fit);border-bottom:1px solid var(--paper-input-container-color, --secondary-text-color);@apply (--paper-input-container-underline);}:host([disabled]) .unfocused-line{border-bottom:1px dashed;border-color:var(--paper-input-container-color, --secondary-text-color);@apply (--paper-input-container-underline-disabled);}.label-and-input-container{@apply (--layout-flex-auto);@apply (--layout-relative);width:100%;max-width:100%;}.input-content{@apply (--layout-horizontal);@apply (--layout-center);position:relative;}.input-content ::content label,
-      .input-content ::content .paper-input-label{position:absolute;top:0;right:0;left:0;width:100%;font:inherit;color:var(--paper-input-container-color, --secondary-text-color);-webkit-transition:-webkit-transform 0.25s, width 0.25s;transition:transform 0.25s, width 0.25s;-webkit-transform-origin:left top;transform-origin:left top;@apply (--paper-font-common-nowrap);@apply (--paper-font-subhead);@apply (--paper-input-container-label);@apply (--paper-transition-easing);}.input-content.label-is-floating ::content label,
+      .input-content ::content .paper-input-label{position:absolute;top:0;right:0;left:0;width:100%;font:inherit;color:var(--paper-input-container-color, --secondary-text-color);-webkit-transition:-webkit-transform 0.25s, width 0.25s;transition:transform 0.25s, width 0.25s;-webkit-transform-origin:left top;transform-origin:left top;min-height:1px;@apply (--paper-font-common-nowrap);@apply (--paper-font-subhead);@apply (--paper-input-container-label);@apply (--paper-transition-easing);}.input-content.label-is-floating ::content label,
       .input-content.label-is-floating ::content .paper-input-label{-webkit-transform:translateY(-75%) scale(0.75);transform:translateY(-75%) scale(0.75);width:133%;@apply (--paper-input-container-label-floating);}:host-context([dir="rtl"]) .input-content.label-is-floating ::content label,
       :host-context([dir="rtl"]) .input-content.label-is-floating ::content .paper-input-label{width:100%;-webkit-transform-origin:right top;transform-origin:right top;}.input-content.label-is-highlighted ::content label,
       .input-content.label-is-highlighted ::content .paper-input-label{color:var(--paper-input-container-focus-color, --primary-color);@apply (--paper-input-container-label-focus);}.input-content.is-invalid ::content label,
@@ -929,36 +919,62 @@ if(invalid)cls+=" is-invalid";else if(focused)cls+=" is-highlighted";return cls}
 value:false},noLabelFloat:{type:Boolean,value:false,reflectToAttribute:true},alwaysFloatLabel:{type:Boolean,value:false},noAnimations:{type:Boolean,value:false},horizontalAlign:{type:String,value:"right"},verticalAlign:{type:String,value:"top"},dynamicAlign:{type:Boolean},restoreFocusOnClose:{type:Boolean,value:true}},listeners:{"tap":"_onTap"},keyBindings:{"up down":"open","esc":"close"},hostAttributes:{role:"combobox","aria-autocomplete":"none","aria-haspopup":"true"},observers:["_selectedItemChanged(selectedItem)"],
 attached:function(){var contentElement=this.contentElement;if(contentElement&&contentElement.selectedItem)this._setSelectedItem(contentElement.selectedItem)},get contentElement(){return Polymer.dom(this.$.content).getDistributedNodes()[0]},open:function(){this.$.menuButton.open()},close:function(){this.$.menuButton.close()},_onIronSelect:function(event){this._setSelectedItem(event.detail.item)},_onIronDeselect:function(event){this._setSelectedItem(null)},_onTap:function(event){if(Polymer.Gestures.findOriginalTarget(event)===
 this)this.open()},_selectedItemChanged:function(selectedItem){var value="";if(!selectedItem)value="";else value=selectedItem.label||selectedItem.getAttribute("label")||selectedItem.textContent.trim();this._setValue(value);this._setSelectedItemLabel(value)},_computeMenuVerticalOffset:function(noLabelFloat){return noLabelFloat?-4:8},_getValidity:function(_value){return this.disabled||!this.required||this.required&&!!this.value},_openedChanged:function(){var openState=this.opened?"true":"false";var e=
-this.contentElement;if(e)e.setAttribute("aria-expanded",openState)}})})();</script></dom-module><dom-module id="paper-listbox" assetpath="bower_components/paper-listbox/"><template><style>:host{display:block;padding:8px 0;background:var(--paper-listbox-background-color, --primary-background-color);color:var(--paper-listbox-color, --primary-text-color);@apply (--paper-listbox);}</style><content></content></template><script>(function(){Polymer({is:"paper-listbox",behaviors:[Polymer.IronMenuBehavior],hostAttributes:{role:"listbox"}})})();</script></dom-module><script data-manual="">var _self=typeof window!=="undefined"?window:typeof WorkerGlobalScope!=="undefined"&&self instanceof WorkerGlobalScope?self:{};
-var Prism=function(){var lang=/\blang(?:uage)?-(\w+)\b/i;var uniqueId=0;var _=_self.Prism={util:{encode:function(tokens){if(tokens instanceof Token)return new Token(tokens.type,_.util.encode(tokens.content),tokens.alias);else if(_.util.type(tokens)==="Array")return tokens.map(_.util.encode);else return tokens.replace(/&/g,"\x26amp;").replace(/</g,"\x26lt;").replace(/\u00a0/g," ")},type:function(o){return Object.prototype.toString.call(o).match(/\[object (\w+)\]/)[1]},objId:function(obj){if(!obj["__id"])Object.defineProperty(obj,
-"__id",{value:++uniqueId});return obj["__id"]},clone:function(o){var type=_.util.type(o);switch(type){case "Object":var clone={};for(var key in o)if(o.hasOwnProperty(key))clone[key]=_.util.clone(o[key]);return clone;case "Array":return o.map&&o.map(function(v){return _.util.clone(v)})}return o}},languages:{extend:function(id,redef){var lang=_.util.clone(_.languages[id]);for(var key in redef)lang[key]=redef[key];return lang},insertBefore:function(inside,before,insert,root){root=root||_.languages;var grammar=
-root[inside];if(arguments.length==2){insert=arguments[1];for(var newToken in insert)if(insert.hasOwnProperty(newToken))grammar[newToken]=insert[newToken];return grammar}var ret={};for(var token in grammar)if(grammar.hasOwnProperty(token)){if(token==before)for(var newToken in insert)if(insert.hasOwnProperty(newToken))ret[newToken]=insert[newToken];ret[token]=grammar[token]}_.languages.DFS(_.languages,function(key,value){if(value===root[inside]&&key!=inside)this[key]=ret});return root[inside]=ret},
-DFS:function(o,callback,type,visited){visited=visited||{};for(var i in o)if(o.hasOwnProperty(i)){callback.call(o,i,o[i],type||i);if(_.util.type(o[i])==="Object"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,null,visited)}else if(_.util.type(o[i])==="Array"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,i,visited)}}}},plugins:{},highlightAll:function(async,callback){var env={callback:callback,selector:'code[class*\x3d"language-"], [class*\x3d"language-"] code, code[class*\x3d"lang-"], [class*\x3d"lang-"] code'};
-_.hooks.run("before-highlightall",env);var elements=env.elements||document.querySelectorAll(env.selector);for(var i=0,element;element=elements[i++];)_.highlightElement(element,async===true,env.callback)},highlightElement:function(element,async,callback){var language,grammar,parent=element;while(parent&&!lang.test(parent.className))parent=parent.parentNode;if(parent){language=(parent.className.match(lang)||[,""])[1].toLowerCase();grammar=_.languages[language]}element.className=element.className.replace(lang,
-"").replace(/\s+/g," ")+" language-"+language;parent=element.parentNode;if(/pre/i.test(parent.nodeName))parent.className=parent.className.replace(lang,"").replace(/\s+/g," ")+" language-"+language;var code=element.textContent;var env={element:element,language:language,grammar:grammar,code:code};_.hooks.run("before-sanity-check",env);if(!env.code||!env.grammar){if(env.code)env.element.textContent=env.code;_.hooks.run("complete",env);return}_.hooks.run("before-highlight",env);if(async&&_self.Worker){var worker=
-new Worker(_.filename);worker.onmessage=function(evt){env.highlightedCode=evt.data;_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&callback.call(env.element);_.hooks.run("after-highlight",env);_.hooks.run("complete",env)};worker.postMessage(JSON.stringify({language:env.language,code:env.code,immediateClose:true}))}else{env.highlightedCode=_.highlight(env.code,env.grammar,env.language);_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&
-callback.call(element);_.hooks.run("after-highlight",env);_.hooks.run("complete",env)}},highlight:function(text,grammar,language){var tokens=_.tokenize(text,grammar);return Token.stringify(_.util.encode(tokens),language)},tokenize:function(text,grammar,language){var Token=_.Token;var strarr=[text];var rest=grammar.rest;if(rest){for(var token in rest)grammar[token]=rest[token];delete grammar.rest}tokenloop:for(var token in grammar){if(!grammar.hasOwnProperty(token)||!grammar[token])continue;var patterns=
-grammar[token];patterns=_.util.type(patterns)==="Array"?patterns:[patterns];for(var j=0;j<patterns.length;++j){var pattern=patterns[j],inside=pattern.inside,lookbehind=!!pattern.lookbehind,greedy=!!pattern.greedy,lookbehindLength=0,alias=pattern.alias;if(greedy&&!pattern.pattern.global){var flags=pattern.pattern.toString().match(/[imuy]*$/)[0];pattern.pattern=RegExp(pattern.pattern.source,flags+"g")}pattern=pattern.pattern||pattern;for(var i=0,pos=0;i<strarr.length;pos+=strarr[i].length,++i){var str=
-strarr[i];if(strarr.length>text.length)break tokenloop;if(str instanceof Token)continue;pattern.lastIndex=0;var match=pattern.exec(str),delNum=1;if(!match&&greedy&&i!=strarr.length-1){pattern.lastIndex=pos;match=pattern.exec(text);if(!match)break;var from=match.index+(lookbehind?match[1].length:0),to=match.index+match[0].length,k=i,p=pos;for(var len=strarr.length;k<len&&p<to;++k){p+=strarr[k].length;if(from>=p){++i;pos=p}}if(strarr[i]instanceof Token||strarr[k-1].greedy)continue;delNum=k-i;str=text.slice(pos,
-p);match.index-=pos}if(!match)continue;if(lookbehind)lookbehindLength=match[1].length;var from=match.index+lookbehindLength,match=match[0].slice(lookbehindLength),to=from+match.length,before=str.slice(0,from),after=str.slice(to);var args=[i,delNum];if(before)args.push(before);var wrapped=new Token(token,inside?_.tokenize(match,inside):match,alias,match,greedy);args.push(wrapped);if(after)args.push(after);Array.prototype.splice.apply(strarr,args)}}}return strarr},hooks:{all:{},add:function(name,callback){var hooks=
-_.hooks.all;hooks[name]=hooks[name]||[];hooks[name].push(callback)},run:function(name,env){var callbacks=_.hooks.all[name];if(!callbacks||!callbacks.length)return;for(var i=0,callback;callback=callbacks[i++];)callback(env)}}};var Token=_.Token=function(type,content,alias,matchedStr,greedy){this.type=type;this.content=content;this.alias=alias;this.length=(matchedStr||"").length|0;this.greedy=!!greedy};Token.stringify=function(o,language,parent){if(typeof o=="string")return o;if(_.util.type(o)==="Array")return o.map(function(element){return Token.stringify(element,
-language,o)}).join("");var env={type:o.type,content:Token.stringify(o.content,language,parent),tag:"span",classes:["token",o.type],attributes:{},language:language,parent:parent};if(env.type=="comment")env.attributes["spellcheck"]="true";if(o.alias){var aliases=_.util.type(o.alias)==="Array"?o.alias:[o.alias];Array.prototype.push.apply(env.classes,aliases)}_.hooks.run("wrap",env);var attributes=Object.keys(env.attributes).map(function(name){return name+'\x3d"'+(env.attributes[name]||"").replace(/"/g,
-"\x26quot;")+'"'}).join(" ");return"\x3c"+env.tag+' class\x3d"'+env.classes.join(" ")+'"'+(attributes?" "+attributes:"")+"\x3e"+env.content+"\x3c/"+env.tag+"\x3e"};if(!_self.document){if(!_self.addEventListener)return _self.Prism;_self.addEventListener("message",function(evt){var message=JSON.parse(evt.data),lang=message.language,code=message.code,immediateClose=message.immediateClose;_self.postMessage(_.highlight(code,_.languages[lang],lang));if(immediateClose)_self.close()},false);return _self.Prism}var script=
-document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();if(script){_.filename=script.src;if(document.addEventListener&&!script.hasAttribute("data-manual"))if(document.readyState!=="loading")if(window.requestAnimationFrame)window.requestAnimationFrame(_.highlightAll);else window.setTimeout(_.highlightAll,16);else document.addEventListener("DOMContentLoaded",_.highlightAll)}return _self.Prism}();if(typeof module!=="undefined"&&module.exports)module.exports=Prism;
-if(typeof global!=="undefined")global.Prism=Prism;
-Prism.languages.markup={"comment":/\x3c!--[\w\W]*?-- >/,"prolog":/<\?[\w\W]+?\?>/,"doctype":/<!DOCTYPE[\w\W]+?>/i,"cdata":/<!\[CDATA\[[\w\W]*?]]\x3e/i,"tag":{pattern:/<\/?(?!\d)[^\s>\/=$<]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\\1|\\?(?!\1)[\w\W])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{"tag":{pattern:/^<\/?[^\s>\/]+/i,inside:{"punctuation":/^<\/?/,"namespace":/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:('|")[\w\W]*?(\1)|[^\s>]+)/i,inside:{"punctuation":/[=>"']/}},"punctuation":/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,
-inside:{"namespace":/^[^\s>\/:]+:/}}}},"entity":/&#?[\da-z]{1,8};/i};Prism.hooks.add("wrap",function(env){if(env.type==="entity")env.attributes["title"]=env.content.replace(/&amp;/,"\x26")});Prism.languages.xml=Prism.languages.markup;Prism.languages.html=Prism.languages.markup;Prism.languages.mathml=Prism.languages.markup;Prism.languages.svg=Prism.languages.markup;
-Prism.languages.css={"comment":/\/\*[\w\W]*?\*\//,"atrule":{pattern:/@[\w-]+?.*?(;|(?=\s*\{))/i,inside:{"rule":/@[\w-]+/}},"url":/url\((?:(["'])(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,"selector":/[^\{\}\s][^\{\};]*?(?=\s*\{)/,"string":{pattern:/("|')(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1/,greedy:true},"property":/(\b|\B)[\w-]+(?=\s*:)/i,"important":/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,"punctuation":/[(){};:]/};Prism.languages.css["atrule"].inside.rest=Prism.util.clone(Prism.languages.css);
-if(Prism.languages.markup){Prism.languages.insertBefore("markup","tag",{"style":{pattern:/(<style[\w\W]*?>)[\w\W]*?(?=<\/style>)/i,lookbehind:true,inside:Prism.languages.css,alias:"language-css"}});Prism.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|').*?\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:Prism.languages.markup.tag.inside},"punctuation":/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:Prism.languages.css}},alias:"language-css"}},Prism.languages.markup.tag)}
-Prism.languages.clike={"comment":[{pattern:/(^|[^\\])\/\*[\w\W]*?\*\//,lookbehind:true},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:true}],"string":{pattern:/(["'])(\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:true},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[a-z0-9_\.\\]+/i,lookbehind:true,inside:{punctuation:/(\.|\\)/}},"keyword":/\b(if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,
-"boolean":/\b(true|false)\b/,"function":/[a-z0-9_]+(?=\()/i,"number":/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)\b/i,"operator":/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,"punctuation":/[{}[\];(),.:]/};
-Prism.languages.javascript=Prism.languages.extend("clike",{"keyword":/\b(as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,"number":/\b-?(0x[\dA-Fa-f]+|0b[01]+|0o[0-7]+|\d*\.?\d+([Ee][+-]?\d+)?|NaN|Infinity)\b/,"function":/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\()/i,
-"operator":/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*\*?|\/|~|\^|%|\.{3}/});Prism.languages.insertBefore("javascript","keyword",{"regex":{pattern:/(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:true,greedy:true}});
-Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\\\|\\?[^\\])*?`/,greedy:true,inside:{"interpolation":{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},"string":/[\s\S]+/}}});if(Prism.languages.markup)Prism.languages.insertBefore("markup","tag",{"script":{pattern:/(<script[\w\W]*?>)[\w\W]*?(?=<\/script>)/i,lookbehind:true,inside:Prism.languages.javascript,alias:"language-javascript"}});
+this.contentElement;if(e)e.setAttribute("aria-expanded",openState)}})})();</script></dom-module><script>Polymer.IronMenuBehaviorImpl={properties:{focusedItem:{observer:"_focusedItemChanged",readOnly:true,type:Object},attrForItemTitle:{type:String},disabled:{type:Boolean,value:false,observer:"_disabledChanged"}},_SEARCH_RESET_TIMEOUT_MS:1E3,_previousTabIndex:0,hostAttributes:{"role":"menu"},observers:["_updateMultiselectable(multi)"],listeners:{"focus":"_onFocus","keydown":"_onKeydown","iron-items-changed":"_onIronItemsChanged"},keyBindings:{"up":"_onUpKey","down":"_onDownKey","esc":"_onEscKey","shift+tab:keydown":"_onShiftTabDown"},
+attached:function(){this._resetTabindices()},select:function(value){if(this._defaultFocusAsync){this.cancelAsync(this._defaultFocusAsync);this._defaultFocusAsync=null}var item=this._valueToItem(value);if(item&&item.hasAttribute("disabled"))return;this._setFocusedItem(item);Polymer.IronMultiSelectableBehaviorImpl.select.apply(this,arguments)},_resetTabindices:function(){var selectedItem=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this.items.forEach(function(item){item.setAttribute("tabindex",
+item===selectedItem?"0":"-1")},this)},_updateMultiselectable:function(multi){if(multi)this.setAttribute("aria-multiselectable","true");else this.removeAttribute("aria-multiselectable")},_focusWithKeyboardEvent:function(event){this.cancelDebouncer("_clearSearchText");var searchText=this._searchText||"";var key=event.key&&event.key.length==1?event.key:String.fromCharCode(event.keyCode);searchText+=key.toLocaleLowerCase();var searchLength=searchText.length;for(var i=0,item;item=this.items[i];i++){if(item.hasAttribute("disabled"))continue;
+var attr=this.attrForItemTitle||"textContent";var title=(item[attr]||item.getAttribute(attr)||"").trim();if(title.length<searchLength)continue;if(title.slice(0,searchLength).toLocaleLowerCase()==searchText){this._setFocusedItem(item);break}}this._searchText=searchText;this.debounce("_clearSearchText",this._clearSearchText,this._SEARCH_RESET_TIMEOUT_MS)},_clearSearchText:function(){this._searchText=""},_focusPrevious:function(){var length=this.items.length;var curFocusIndex=Number(this.indexOf(this.focusedItem));
+for(var i=1;i<length+1;i++){var item=this.items[(curFocusIndex-i+length)%length];if(!item.hasAttribute("disabled")){var owner=Polymer.dom(item).getOwnerRoot()||document;this._setFocusedItem(item);if(Polymer.dom(owner).activeElement==item)return}}},_focusNext:function(){var length=this.items.length;var curFocusIndex=Number(this.indexOf(this.focusedItem));for(var i=1;i<length+1;i++){var item=this.items[(curFocusIndex+i)%length];if(!item.hasAttribute("disabled")){var owner=Polymer.dom(item).getOwnerRoot()||
+document;this._setFocusedItem(item);if(Polymer.dom(owner).activeElement==item)return}}},_applySelection:function(item,isSelected){if(isSelected)item.setAttribute("aria-selected","true");else item.removeAttribute("aria-selected");Polymer.IronSelectableBehavior._applySelection.apply(this,arguments)},_focusedItemChanged:function(focusedItem,old){old&&old.setAttribute("tabindex","-1");if(focusedItem&&!focusedItem.hasAttribute("disabled")&&!this.disabled){focusedItem.setAttribute("tabindex","0");focusedItem.focus()}},
+_onIronItemsChanged:function(event){if(event.detail.addedNodes.length)this._resetTabindices()},_onShiftTabDown:function(event){var oldTabIndex=this.getAttribute("tabindex");Polymer.IronMenuBehaviorImpl._shiftTabPressed=true;this._setFocusedItem(null);this.setAttribute("tabindex","-1");this.async(function(){this.setAttribute("tabindex",oldTabIndex);Polymer.IronMenuBehaviorImpl._shiftTabPressed=false},1)},_onFocus:function(event){if(Polymer.IronMenuBehaviorImpl._shiftTabPressed)return;var rootTarget=
+(Polymer.dom(event).rootTarget);if(rootTarget!==this&&typeof rootTarget.tabIndex!=="undefined"&&!this.isLightDescendant(rootTarget))return;this._defaultFocusAsync=this.async(function(){var selectedItem=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this._setFocusedItem(null);if(selectedItem)this._setFocusedItem(selectedItem);else if(this.items[0])this._focusNext()})},_onUpKey:function(event){this._focusPrevious();event.detail.keyboardEvent.preventDefault()},_onDownKey:function(event){this._focusNext();
+event.detail.keyboardEvent.preventDefault()},_onEscKey:function(event){this.focusedItem.blur()},_onKeydown:function(event){if(!this.keyboardEventMatchesKeys(event,"up down esc"))this._focusWithKeyboardEvent(event);event.stopPropagation()},_activateHandler:function(event){Polymer.IronSelectableBehavior._activateHandler.call(this,event);event.stopPropagation()},_disabledChanged:function(disabled){if(disabled){this._previousTabIndex=this.hasAttribute("tabindex")?this.tabIndex:0;this.removeAttribute("tabindex")}else if(!this.hasAttribute("tabindex"))this.setAttribute("tabindex",
+this._previousTabIndex)}};Polymer.IronMenuBehaviorImpl._shiftTabPressed=false;Polymer.IronMenuBehavior=[Polymer.IronMultiSelectableBehavior,Polymer.IronA11yKeysBehavior,Polymer.IronMenuBehaviorImpl];</script><dom-module id="paper-listbox" assetpath="bower_components/paper-listbox/"><template><style>:host{display:block;padding:8px 0;background:var(--paper-listbox-background-color, --primary-background-color);color:var(--paper-listbox-color, --primary-text-color);@apply (--paper-listbox);}</style><content></content></template><script>(function(){Polymer({is:"paper-listbox",behaviors:[Polymer.IronMenuBehavior],hostAttributes:{role:"listbox"}})})();</script></dom-module><script>Polymer.IronMenubarBehaviorImpl={hostAttributes:{"role":"menubar"},keyBindings:{"left":"_onLeftKey","right":"_onRightKey"},_onUpKey:function(event){this.focusedItem.click();event.detail.keyboardEvent.preventDefault()},_onDownKey:function(event){this.focusedItem.click();event.detail.keyboardEvent.preventDefault()},get _isRTL(){return window.getComputedStyle(this)["direction"]==="rtl"},_onLeftKey:function(event){if(this._isRTL)this._focusNext();else this._focusPrevious();event.detail.keyboardEvent.preventDefault()},
+_onRightKey:function(event){if(this._isRTL)this._focusPrevious();else this._focusNext();event.detail.keyboardEvent.preventDefault()},_onKeydown:function(event){if(this.keyboardEventMatchesKeys(event,"up down left right esc"))return;this._focusWithKeyboardEvent(event)}};Polymer.IronMenubarBehavior=[Polymer.IronMenuBehavior,Polymer.IronMenubarBehaviorImpl];</script><iron-iconset-svg name="paper-tabs" size="24"><svg><defs><g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g><g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></g></defs></svg></iron-iconset-svg><dom-module id="paper-tab" assetpath="bower_components/paper-tabs/"><template><style>:host{@apply (--layout-inline);@apply (--layout-center);@apply (--layout-center-justified);@apply (--layout-flex-auto);position:relative;padding:0 12px;overflow:hidden;cursor:pointer;vertical-align:middle;@apply (--paper-font-common-base);@apply (--paper-tab);}:host(:focus){outline:none;}:host([link]){padding:0;}.tab-content{height:100%;transform:translateZ(0);-webkit-transform:translateZ(0);transition:opacity 0.1s cubic-bezier(0.4, 0.0, 1, 1);@apply (--layout-horizontal);@apply (--layout-center-center);@apply (--layout-flex-auto);@apply (--paper-tab-content);}:host(:not(.iron-selected)) > .tab-content{opacity:0.8;@apply (--paper-tab-content-unselected);}:host(:focus) .tab-content{opacity:1;font-weight:700;}paper-ripple{color:var(--paper-tab-ink, --paper-yellow-a100);}.tab-content > ::content > a{@apply (--layout-flex-auto);height:100%;}</style><div class="tab-content"><content></content></div></template><script>Polymer({is:"paper-tab",behaviors:[Polymer.IronControlState,Polymer.IronButtonState,Polymer.PaperRippleBehavior],properties:{link:{type:Boolean,value:false,reflectToAttribute:true}},hostAttributes:{role:"tab"},listeners:{down:"_updateNoink",tap:"_onTap"},attached:function(){this._updateNoink()},get _parentNoink(){var parent=Polymer.dom(this).parentNode;return!!parent&&!!parent.noink},_updateNoink:function(){this.noink=!!this.noink||!!this._parentNoink},_onTap:function(event){if(this.link){var anchor=
+this.queryEffectiveChildren("a");if(!anchor)return;if(event.target===anchor)return;anchor.click()}}});</script></dom-module><dom-module id="paper-tabs" assetpath="bower_components/paper-tabs/"><template><style>:host{@apply (--layout);@apply (--layout-center);height:48px;font-size:14px;font-weight:500;overflow:hidden;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-tap-highlight-color:transparent;@apply (--paper-tabs);}:host-context([dir=rtl]){@apply (--layout-horizontal-reverse);}#tabsContainer{position:relative;height:100%;white-space:nowrap;overflow:hidden;@apply (--layout-flex-auto);@apply (--paper-tabs-container);}#tabsContent{height:100%;-moz-flex-basis:auto;-ms-flex-basis:auto;flex-basis:auto;@apply (--paper-tabs-content);}#tabsContent.scrollable{position:absolute;white-space:nowrap;}#tabsContent:not(.scrollable),
+      #tabsContent.scrollable.fit-container{@apply (--layout-horizontal);}#tabsContent.scrollable.fit-container{min-width:100%;}#tabsContent.scrollable.fit-container > ::content > *{-ms-flex:1 0 auto;-webkit-flex:1 0 auto;flex:1 0 auto;}.hidden{display:none;}.not-visible{opacity:0;cursor:default;}paper-icon-button{width:48px;height:48px;padding:12px;margin:0 4px;}#selectionBar{position:absolute;height:0;bottom:0;left:0;right:0;border-bottom:2px solid var(--paper-tabs-selection-bar-color, --paper-yellow-a100);-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:left center;transform-origin:left center;transition:-webkit-transform;transition:transform;@apply (--paper-tabs-selection-bar);}#selectionBar.align-bottom{top:0;bottom:auto;}#selectionBar.expand{transition-duration:0.15s;transition-timing-function:cubic-bezier(0.4, 0.0, 1, 1);}#selectionBar.contract{transition-duration:0.18s;transition-timing-function:cubic-bezier(0.0, 0.0, 0.2, 1);}#tabsContent > ::content > *:not(#selectionBar){height:100%;}</style><paper-icon-button icon="paper-tabs:chevron-left" class$="[[_computeScrollButtonClass(_leftHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onLeftScrollButtonDown" tabindex="-1"></paper-icon-button><div id="tabsContainer" on-track="_scroll" on-down="_down"><div id="tabsContent" class$="[[_computeTabsContentClass(scrollable, fitContainer)]]"><div id="selectionBar" class$="[[_computeSelectionBarClass(noBar, alignBottom)]]" on-transitionend="_onBarTransitionEnd"></div><content select="*"></content></div></div><paper-icon-button icon="paper-tabs:chevron-right" class$="[[_computeScrollButtonClass(_rightHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onRightScrollButtonDown" tabindex="-1"></paper-icon-button></template><script>Polymer({is:"paper-tabs",behaviors:[Polymer.IronResizableBehavior,Polymer.IronMenubarBehavior],properties:{noink:{type:Boolean,value:false,observer:"_noinkChanged"},noBar:{type:Boolean,value:false},noSlide:{type:Boolean,value:false},scrollable:{type:Boolean,value:false},fitContainer:{type:Boolean,value:false},disableDrag:{type:Boolean,value:false},hideScrollButtons:{type:Boolean,value:false},alignBottom:{type:Boolean,value:false},selectable:{type:String,value:"paper-tab"},autoselect:{type:Boolean,
+value:false},autoselectDelay:{type:Number,value:0},_step:{type:Number,value:10},_holdDelay:{type:Number,value:1},_leftHidden:{type:Boolean,value:false},_rightHidden:{type:Boolean,value:false},_previousTab:{type:Object}},hostAttributes:{role:"tablist"},listeners:{"iron-resize":"_onTabSizingChanged","iron-items-changed":"_onTabSizingChanged","iron-select":"_onIronSelect","iron-deselect":"_onIronDeselect"},keyBindings:{"left:keyup right:keyup":"_onArrowKeyup"},created:function(){this._holdJob=null;this._pendingActivationItem=
+undefined;this._pendingActivationTimeout=undefined;this._bindDelayedActivationHandler=this._delayedActivationHandler.bind(this);this.addEventListener("blur",this._onBlurCapture.bind(this),true)},ready:function(){this.setScrollDirection("y",this.$.tabsContainer)},detached:function(){this._cancelPendingActivation()},_noinkChanged:function(noink){var childTabs=Polymer.dom(this).querySelectorAll("paper-tab");childTabs.forEach(noink?this._setNoinkAttribute:this._removeNoinkAttribute)},_setNoinkAttribute:function(element){element.setAttribute("noink",
+"")},_removeNoinkAttribute:function(element){element.removeAttribute("noink")},_computeScrollButtonClass:function(hideThisButton,scrollable,hideScrollButtons){if(!scrollable||hideScrollButtons)return"hidden";if(hideThisButton)return"not-visible";return""},_computeTabsContentClass:function(scrollable,fitContainer){return scrollable?"scrollable"+(fitContainer?" fit-container":""):" fit-container"},_computeSelectionBarClass:function(noBar,alignBottom){if(noBar)return"hidden";else if(alignBottom)return"align-bottom";
+return""},_onTabSizingChanged:function(){this.debounce("_onTabSizingChanged",function(){this._scroll();this._tabChanged(this.selectedItem)},10)},_onIronSelect:function(event){this._tabChanged(event.detail.item,this._previousTab);this._previousTab=event.detail.item;this.cancelDebouncer("tab-changed")},_onIronDeselect:function(event){this.debounce("tab-changed",function(){this._tabChanged(null,this._previousTab);this._previousTab=null},1)},_activateHandler:function(){this._cancelPendingActivation();
+Polymer.IronMenuBehaviorImpl._activateHandler.apply(this,arguments)},_scheduleActivation:function(item,delay){this._pendingActivationItem=item;this._pendingActivationTimeout=this.async(this._bindDelayedActivationHandler,delay)},_delayedActivationHandler:function(){var item=this._pendingActivationItem;this._pendingActivationItem=undefined;this._pendingActivationTimeout=undefined;item.fire(this.activateEvent,null,{bubbles:true,cancelable:true})},_cancelPendingActivation:function(){if(this._pendingActivationTimeout!==
+undefined){this.cancelAsync(this._pendingActivationTimeout);this._pendingActivationItem=undefined;this._pendingActivationTimeout=undefined}},_onArrowKeyup:function(event){if(this.autoselect)this._scheduleActivation(this.focusedItem,this.autoselectDelay)},_onBlurCapture:function(event){if(event.target===this._pendingActivationItem)this._cancelPendingActivation()},get _tabContainerScrollSize(){return Math.max(0,this.$.tabsContainer.scrollWidth-this.$.tabsContainer.offsetWidth)},_scroll:function(e,detail){if(!this.scrollable)return;
+var ddx=detail&&-detail.ddx||0;this._affectScroll(ddx)},_down:function(e){this.async(function(){if(this._defaultFocusAsync){this.cancelAsync(this._defaultFocusAsync);this._defaultFocusAsync=null}},1)},_affectScroll:function(dx){this.$.tabsContainer.scrollLeft+=dx;var scrollLeft=this.$.tabsContainer.scrollLeft;this._leftHidden=scrollLeft===0;this._rightHidden=scrollLeft===this._tabContainerScrollSize},_onLeftScrollButtonDown:function(){this._scrollToLeft();this._holdJob=setInterval(this._scrollToLeft.bind(this),
+this._holdDelay)},_onRightScrollButtonDown:function(){this._scrollToRight();this._holdJob=setInterval(this._scrollToRight.bind(this),this._holdDelay)},_onScrollButtonUp:function(){clearInterval(this._holdJob);this._holdJob=null},_scrollToLeft:function(){this._affectScroll(-this._step)},_scrollToRight:function(){this._affectScroll(this._step)},_tabChanged:function(tab,old){if(!tab){this.$.selectionBar.classList.remove("expand");this.$.selectionBar.classList.remove("contract");this._positionBar(0,0);
+return}var r=this.$.tabsContent.getBoundingClientRect();var w=r.width;var tabRect=tab.getBoundingClientRect();var tabOffsetLeft=tabRect.left-r.left;this._pos={width:this._calcPercent(tabRect.width,w),left:this._calcPercent(tabOffsetLeft,w)};if(this.noSlide||old==null){this.$.selectionBar.classList.remove("expand");this.$.selectionBar.classList.remove("contract");this._positionBar(this._pos.width,this._pos.left);return}var oldRect=old.getBoundingClientRect();var oldIndex=this.items.indexOf(old);var index=
+this.items.indexOf(tab);var m=5;this.$.selectionBar.classList.add("expand");var moveRight=oldIndex<index;var isRTL=this._isRTL;if(isRTL)moveRight=!moveRight;if(moveRight)this._positionBar(this._calcPercent(tabRect.left+tabRect.width-oldRect.left,w)-m,this._left);else this._positionBar(this._calcPercent(oldRect.left+oldRect.width-tabRect.left,w)-m,this._calcPercent(tabOffsetLeft,w)+m);if(this.scrollable)this._scrollToSelectedIfNeeded(tabRect.width,tabOffsetLeft)},_scrollToSelectedIfNeeded:function(tabWidth,
+tabOffsetLeft){var l=tabOffsetLeft-this.$.tabsContainer.scrollLeft;if(l<0)this.$.tabsContainer.scrollLeft+=l;else{l+=tabWidth-this.$.tabsContainer.offsetWidth;if(l>0)this.$.tabsContainer.scrollLeft+=l}},_calcPercent:function(w,w0){return 100*w/w0},_positionBar:function(width,left){width=width||0;left=left||0;this._width=width;this._left=left;this.transform("translateX("+left+"%) scaleX("+width/100+")",this.$.selectionBar)},_onBarTransitionEnd:function(e){var cl=this.$.selectionBar.classList;if(cl.contains("expand")){cl.remove("expand");
+cl.add("contract");this._positionBar(this._pos.width,this._pos.left)}else if(cl.contains("contract"))cl.remove("contract")}});</script></dom-module><script data-manual="">var _self=typeof window!=="undefined"?window:typeof WorkerGlobalScope!=="undefined"&&self instanceof WorkerGlobalScope?self:{};
+var Prism=function(){var lang=/\blang(?:uage)?-(\w+)\b/i;var uniqueId=0;var _=_self.Prism={manual:_self.Prism&&_self.Prism.manual,disableWorkerMessageHandler:_self.Prism&&_self.Prism.disableWorkerMessageHandler,util:{encode:function(tokens){if(tokens instanceof Token)return new Token(tokens.type,_.util.encode(tokens.content),tokens.alias);else if(_.util.type(tokens)==="Array")return tokens.map(_.util.encode);else return tokens.replace(/&/g,"\x26amp;").replace(/</g,"\x26lt;").replace(/\u00a0/g," ")},
+type:function(o){return Object.prototype.toString.call(o).match(/\[object (\w+)\]/)[1]},objId:function(obj){if(!obj["__id"])Object.defineProperty(obj,"__id",{value:++uniqueId});return obj["__id"]},clone:function(o){var type=_.util.type(o);switch(type){case "Object":var clone={};for(var key in o)if(o.hasOwnProperty(key))clone[key]=_.util.clone(o[key]);return clone;case "Array":return o.map(function(v){return _.util.clone(v)})}return o}},languages:{extend:function(id,redef){var lang=_.util.clone(_.languages[id]);
+for(var key in redef)lang[key]=redef[key];return lang},insertBefore:function(inside,before,insert,root){root=root||_.languages;var grammar=root[inside];if(arguments.length==2){insert=arguments[1];for(var newToken in insert)if(insert.hasOwnProperty(newToken))grammar[newToken]=insert[newToken];return grammar}var ret={};for(var token in grammar)if(grammar.hasOwnProperty(token)){if(token==before)for(var newToken in insert)if(insert.hasOwnProperty(newToken))ret[newToken]=insert[newToken];ret[token]=grammar[token]}_.languages.DFS(_.languages,
+function(key,value){if(value===root[inside]&&key!=inside)this[key]=ret});return root[inside]=ret},DFS:function(o,callback,type,visited){visited=visited||{};for(var i in o)if(o.hasOwnProperty(i)){callback.call(o,i,o[i],type||i);if(_.util.type(o[i])==="Object"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,null,visited)}else if(_.util.type(o[i])==="Array"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,i,visited)}}}},
+plugins:{},highlightAll:function(async,callback){var env={callback:callback,selector:'code[class*\x3d"language-"], [class*\x3d"language-"] code, code[class*\x3d"lang-"], [class*\x3d"lang-"] code'};_.hooks.run("before-highlightall",env);var elements=env.elements||document.querySelectorAll(env.selector);for(var i=0,element;element=elements[i++];)_.highlightElement(element,async===true,env.callback)},highlightElement:function(element,async,callback){var language,grammar,parent=element;while(parent&&
+!lang.test(parent.className))parent=parent.parentNode;if(parent){language=(parent.className.match(lang)||[,""])[1].toLowerCase();grammar=_.languages[language]}element.className=element.className.replace(lang,"").replace(/\s+/g," ")+" language-"+language;if(element.parentNode){parent=element.parentNode;if(/pre/i.test(parent.nodeName))parent.className=parent.className.replace(lang,"").replace(/\s+/g," ")+" language-"+language}var code=element.textContent;var env={element:element,language:language,grammar:grammar,
+code:code};_.hooks.run("before-sanity-check",env);if(!env.code||!env.grammar){if(env.code){_.hooks.run("before-highlight",env);env.element.textContent=env.code;_.hooks.run("after-highlight",env)}_.hooks.run("complete",env);return}_.hooks.run("before-highlight",env);if(async&&_self.Worker){var worker=new Worker(_.filename);worker.onmessage=function(evt){env.highlightedCode=evt.data;_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&callback.call(env.element);_.hooks.run("after-highlight",
+env);_.hooks.run("complete",env)};worker.postMessage(JSON.stringify({language:env.language,code:env.code,immediateClose:true}))}else{env.highlightedCode=_.highlight(env.code,env.grammar,env.language);_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&callback.call(element);_.hooks.run("after-highlight",env);_.hooks.run("complete",env)}},highlight:function(text,grammar,language){var tokens=_.tokenize(text,grammar);return Token.stringify(_.util.encode(tokens),language)},
+matchGrammar:function(text,strarr,grammar,index,startPos,oneshot,target){var Token=_.Token;for(var token in grammar){if(!grammar.hasOwnProperty(token)||!grammar[token])continue;if(token==target)return;var patterns=grammar[token];patterns=_.util.type(patterns)==="Array"?patterns:[patterns];for(var j=0;j<patterns.length;++j){var pattern=patterns[j],inside=pattern.inside,lookbehind=!!pattern.lookbehind,greedy=!!pattern.greedy,lookbehindLength=0,alias=pattern.alias;if(greedy&&!pattern.pattern.global){var flags=
+pattern.pattern.toString().match(/[imuy]*$/)[0];pattern.pattern=RegExp(pattern.pattern.source,flags+"g")}pattern=pattern.pattern||pattern;for(var i=index,pos=startPos;i<strarr.length;pos+=strarr[i].length,++i){var str=strarr[i];if(strarr.length>text.length)return;if(str instanceof Token)continue;pattern.lastIndex=0;var match=pattern.exec(str),delNum=1;if(!match&&greedy&&i!=strarr.length-1){pattern.lastIndex=pos;match=pattern.exec(text);if(!match)break;var from=match.index+(lookbehind?match[1].length:
+0),to=match.index+match[0].length,k=i,p=pos;for(var len=strarr.length;k<len&&(p<to||!strarr[k].type&&!strarr[k-1].greedy);++k){p+=strarr[k].length;if(from>=p){++i;pos=p}}if(strarr[i]instanceof Token||strarr[k-1].greedy)continue;delNum=k-i;str=text.slice(pos,p);match.index-=pos}if(!match){if(oneshot)break;continue}if(lookbehind)lookbehindLength=match[1].length;var from=match.index+lookbehindLength,match=match[0].slice(lookbehindLength),to=from+match.length,before=str.slice(0,from),after=str.slice(to);
+var args=[i,delNum];if(before){++i;pos+=before.length;args.push(before)}var wrapped=new Token(token,inside?_.tokenize(match,inside):match,alias,match,greedy);args.push(wrapped);if(after)args.push(after);Array.prototype.splice.apply(strarr,args);if(delNum!=1)_.matchGrammar(text,strarr,grammar,i,pos,true,token);if(oneshot)break}}}},tokenize:function(text,grammar,language){var strarr=[text];var rest=grammar.rest;if(rest){for(var token in rest)grammar[token]=rest[token];delete grammar.rest}_.matchGrammar(text,
+strarr,grammar,0,0,false);return strarr},hooks:{all:{},add:function(name,callback){var hooks=_.hooks.all;hooks[name]=hooks[name]||[];hooks[name].push(callback)},run:function(name,env){var callbacks=_.hooks.all[name];if(!callbacks||!callbacks.length)return;for(var i=0,callback;callback=callbacks[i++];)callback(env)}}};var Token=_.Token=function(type,content,alias,matchedStr,greedy){this.type=type;this.content=content;this.alias=alias;this.length=(matchedStr||"").length|0;this.greedy=!!greedy};Token.stringify=
+function(o,language,parent){if(typeof o=="string")return o;if(_.util.type(o)==="Array")return o.map(function(element){return Token.stringify(element,language,o)}).join("");var env={type:o.type,content:Token.stringify(o.content,language,parent),tag:"span",classes:["token",o.type],attributes:{},language:language,parent:parent};if(o.alias){var aliases=_.util.type(o.alias)==="Array"?o.alias:[o.alias];Array.prototype.push.apply(env.classes,aliases)}_.hooks.run("wrap",env);var attributes=Object.keys(env.attributes).map(function(name){return name+
+'\x3d"'+(env.attributes[name]||"").replace(/"/g,"\x26quot;")+'"'}).join(" ");return"\x3c"+env.tag+' class\x3d"'+env.classes.join(" ")+'"'+(attributes?" "+attributes:"")+"\x3e"+env.content+"\x3c/"+env.tag+"\x3e"};if(!_self.document){if(!_self.addEventListener)return _self.Prism;if(!_.disableWorkerMessageHandler)_self.addEventListener("message",function(evt){var message=JSON.parse(evt.data),lang=message.language,code=message.code,immediateClose=message.immediateClose;_self.postMessage(_.highlight(code,
+_.languages[lang],lang));if(immediateClose)_self.close()},false);return _self.Prism}var script=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();if(script){_.filename=script.src;if(!_.manual&&!script.hasAttribute("data-manual"))if(document.readyState!=="loading")if(window.requestAnimationFrame)window.requestAnimationFrame(_.highlightAll);else window.setTimeout(_.highlightAll,16);else document.addEventListener("DOMContentLoaded",_.highlightAll)}return _self.Prism}();
+if(typeof module!=="undefined"&&module.exports)module.exports=Prism;if(typeof global!=="undefined")global.Prism=Prism;
+Prism.languages.markup={"comment":/\x3c!--[\s\S]*?-- >/,"prolog":/<\?[\s\S]+?\?>/,"doctype":/<!DOCTYPE[\s\S]+?>/i,"cdata":/<!\[CDATA\[[\s\S]*?]]\x3e/i,"tag":{pattern:/<\/?(?!\d)[^\s>\/=$<]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{"tag":{pattern:/^<\/?[^\s>\/]+/i,inside:{"punctuation":/^<\/?/,"namespace":/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/i,inside:{"punctuation":[/^=/,{pattern:/(^|[^\\])["']/,lookbehind:true}]}},
+"punctuation":/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{"namespace":/^[^\s>\/:]+:/}}}},"entity":/&#?[\da-z]{1,8};/i};Prism.languages.markup["tag"].inside["attr-value"].inside["entity"]=Prism.languages.markup["entity"];Prism.hooks.add("wrap",function(env){if(env.type==="entity")env.attributes["title"]=env.content.replace(/&amp;/,"\x26")});Prism.languages.xml=Prism.languages.markup;Prism.languages.html=Prism.languages.markup;Prism.languages.mathml=Prism.languages.markup;Prism.languages.svg=Prism.languages.markup;
+Prism.languages.css={"comment":/\/\*[\s\S]*?\*\//,"atrule":{pattern:/@[\w-]+?.*?(?:;|(?=\s*\{))/i,inside:{"rule":/@[\w-]+/}},"url":/url\((?:(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,"selector":/[^{}\s][^{};]*?(?=\s*\{)/,"string":{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:true},"property":/[\w-]+(?=\s*:)/i,"important":/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,"punctuation":/[(){};:]/};Prism.languages.css["atrule"].inside.rest=Prism.util.clone(Prism.languages.css);
+if(Prism.languages.markup){Prism.languages.insertBefore("markup","tag",{"style":{pattern:/(<style[\s\S]*?>)[\s\S]*?(?=<\/style>)/i,lookbehind:true,inside:Prism.languages.css,alias:"language-css"}});Prism.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:Prism.languages.markup.tag.inside},"punctuation":/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:Prism.languages.css}},alias:"language-css"}},
+Prism.languages.markup.tag)}
+Prism.languages.clike={"comment":[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:true},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:true}],"string":{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:true},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:true,inside:{punctuation:/[.\\]/}},"keyword":/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,"boolean":/\b(?:true|false)\b/,
+"function":/[a-z0-9_]+(?=\()/i,"number":/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)\b/i,"operator":/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,"punctuation":/[{}[\];(),.:]/};
+Prism.languages.javascript=Prism.languages.extend("clike",{"keyword":/\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,"number":/\b-?(?:0[xX][\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|\d*\.?\d+(?:[Ee][+-]?\d+)?|NaN|Infinity)\b/,"function":/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\s*\()/i,
+"operator":/-[-=]?|\+[+=]?|!=?=?|<<?=?|>>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/});Prism.languages.insertBefore("javascript","keyword",{"regex":{pattern:/(^|[^/])\/(?!\/)(\[[^\]\r\n]+]|\\.|[^/\\\[\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:true,greedy:true},"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)|[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)\s*=>))/i,alias:"function"}});
+Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,greedy:true,inside:{"interpolation":{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},"string":/[\s\S]+/}}});if(Prism.languages.markup)Prism.languages.insertBefore("markup","tag",{"script":{pattern:/(<script[\s\S]*?>)[\s\S]*?(?=<\/script>)/i,lookbehind:true,inside:Prism.languages.javascript,alias:"language-javascript"}});
 Prism.languages.js=Prism.languages.javascript;
-(function(){if(typeof self==="undefined"||!self.Prism||!self.document||!document.querySelector)return;self.Prism.fileHighlight=function(){var Extensions={"js":"javascript","py":"python","rb":"ruby","ps1":"powershell","psm1":"powershell","sh":"bash","bat":"batch","h":"c","tex":"latex"};if(Array.prototype.forEach)Array.prototype.slice.call(document.querySelectorAll("pre[data-src]")).forEach(function(pre){var src=pre.getAttribute("data-src");var language,parent=pre;var lang=/\blang(?:uage)?-(?!\*)(\w+)\b/i;
-while(parent&&!lang.test(parent.className))parent=parent.parentNode;if(parent)language=(pre.className.match(lang)||[,""])[1];if(!language){var extension=(src.match(/\.(\w+)$/)||[,""])[1];language=Extensions[extension]||extension}var code=document.createElement("code");code.className="language-"+language;pre.textContent="";code.textContent="Loading\u2026";pre.appendChild(code);var xhr=new XMLHttpRequest;xhr.open("GET",src,true);xhr.onreadystatechange=function(){if(xhr.readyState==4)if(xhr.status<400&&
-xhr.responseText){code.textContent=xhr.responseText;Prism.highlightElement(code)}else if(xhr.status>=400)code.textContent="\u2716 Error "+xhr.status+" while fetching file: "+xhr.statusText;else code.textContent="\u2716 Error: File does not exist or is empty"};xhr.send(null)})};document.addEventListener("DOMContentLoaded",self.Prism.fileHighlight)})();</script><style>code[class*="language-"],
+(function(){if(typeof self==="undefined"||!self.Prism||!self.document||!document.querySelector)return;self.Prism.fileHighlight=function(){var Extensions={"js":"javascript","py":"python","rb":"ruby","ps1":"powershell","psm1":"powershell","sh":"bash","bat":"batch","h":"c","tex":"latex"};Array.prototype.slice.call(document.querySelectorAll("pre[data-src]")).forEach(function(pre){var src=pre.getAttribute("data-src");var language,parent=pre;var lang=/\blang(?:uage)?-(?!\*)(\w+)\b/i;while(parent&&!lang.test(parent.className))parent=
+parent.parentNode;if(parent)language=(pre.className.match(lang)||[,""])[1];if(!language){var extension=(src.match(/\.(\w+)$/)||[,""])[1];language=Extensions[extension]||extension}var code=document.createElement("code");code.className="language-"+language;pre.textContent="";code.textContent="Loading\u2026";pre.appendChild(code);var xhr=new XMLHttpRequest;xhr.open("GET",src,true);xhr.onreadystatechange=function(){if(xhr.readyState==4)if(xhr.status<400&&xhr.responseText){code.textContent=xhr.responseText;
+Prism.highlightElement(code)}else if(xhr.status>=400)code.textContent="\u2716 Error "+xhr.status+" while fetching file: "+xhr.statusText;else code.textContent="\u2716 Error: File does not exist or is empty"};xhr.send(null)})};document.addEventListener("DOMContentLoaded",self.Prism.fileHighlight)})();</script><style>code[class*="language-"],
 pre[class*="language-"]{color:black;background:none;text-shadow:0 1px white;font-family:Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
 code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection{text-shadow:none;background:#b3d4fc;}pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
 code[class*="language-"]::selection, code[class*="language-"] ::selection{text-shadow:none;background:#b3d4fc;}@media print{code[class*="language-"],
@@ -988,20 +1004,12 @@ pre[class*="language-"]{background:#f5f2f0;}:not(pre) > code[class*="language-"]
 .token.variable{color:#e90;}.token.important,
 .token.bold{font-weight:bold;}.token.italic{font-style:italic;}.token.entity{cursor:help;}</style><script>(function(){var HIGHLIGHT_EVENT="syntax-highlight";Polymer({is:"prism-highlighter",properties:{languages:{type:Object,value:function(){return{}}}},ready:function(){this._handler=this._highlight.bind(this)},attached:function(){(this.parentElement||this.parentNode.host).addEventListener(HIGHLIGHT_EVENT,this._handler)},detached:function(){(this.parentElement||this.parentNode.host).removeEventListener(HIGHLIGHT_EVENT,this._handler)},_highlight:function(event){if(!event.detail||!event.detail.code){Polymer.Base._warn("Malformed",
 HIGHLIGHT_EVENT,"event:",event.detail);return}event.stopPropagation();var detail=event.detail;detail.code=Prism.highlight(detail.code,this._detectLang(detail.code,detail.lang))},_detectLang:function(code,lang){if(!lang)return code.match(/^\s*</)?Prism.languages.markup:Prism.languages.javascript;if(this.languages[lang])return this.languages[lang];else if(Prism.languages[lang])return Prism.languages[lang];switch(lang.substr(0,2)){case "js":case "es":return Prism.languages.javascript;case "c":return Prism.languages.clike;
-default:return Prism.languages.markup}}})})();</script><dom-module id="structure-display" assetpath="bower_components/docs-parameters-table/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{background-color:var(--code-background-color, #f5f2f0) !important;}#output{@apply (--code-block);}</style><prism-highlighter></prism-highlighter><div id="output" class="markdown-html"></div></template><script>Polymer({is:"structure-display",extends:"pre",properties:{display:String,dataType:{type:String,value:"js"},autoHide:{type:Boolean,value:false},_ready:Boolean},observers:["_highlightSchema(display)","_autoHideChanged(autoHide, display)"],ready:function(){this.classList.add("markdown-html");this._ready=true;this._highlightSchema(this.display)},_autoHideChanged:function(state,display){if(state)if(!display){if(!this.hasAttribute("hidden"))this.setAttribute("hidden",true)}else{if(this.hasAttribute("hidden"))this.removeAttribute("hidden")}else if(this.hasAttribute("hidden"))this.removeAttribute("hidden")},
-_highlightSchema:function(str){if(!this._ready)return;if(!str){this.$.output.innerHTML="";return}this.debounce("structure-display-highlight",function(){this.$.output.innerHTML=this.highlight(str,this.dataType)},10)},highlight:function(code,lang){return this.fire("syntax-highlight",{code:code,lang:lang}).detail.code}});</script></dom-module><dom-module id="clipboard-copy" assetpath="bower_components/clipboard-copy/"><template><style>:host{display:none;}:host([copying]){display:inline;width:0;height:0;border:none;overflow:hidden;}</style><div id="content">[[content]]</div></template><script>Polymer({is:"clipboard-copy",properties:{content:String},copy:function(){this.setAttribute("copying",true);var snipRange=document.createRange();snipRange.selectNodeContents(this.$.content);var selection=window.getSelection();selection.removeAllRanges();selection.addRange(snipRange);var result=false;try{result=document.execCommand("copy");this.fire("content-copied",null,{bubbles:false})}catch(err){Polymer.Base._error(err);this.fire("content-copy-error",null,{bubbles:false})}selection.removeAllRanges();
-this.removeAttribute("copying");return result}});</script></dom-module><dom-module id="paper-tooltip" assetpath="bower_components/paper-tooltip/"><template><style>:host{display:block;position:absolute;outline:none;z-index:1002;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;cursor:default;}#tooltip{display:block;outline:none;@apply (--paper-font-common-base);font-size:10px;line-height:1;background-color:var(--paper-tooltip-background, #616161);opacity:var(--paper-tooltip-opacity, 0.9);color:var(--paper-tooltip-text-color, white);padding:8px;border-radius:2px;@apply (--paper-tooltip);}.hidden{display:none !important;}</style><div id="tooltip" class="hidden"><content></content></div></template><script>Polymer({is:"paper-tooltip",hostAttributes:{role:"tooltip",tabindex:-1},behaviors:[Polymer.NeonAnimationRunnerBehavior],properties:{for:{type:String,observer:"_findTarget"},manualMode:{type:Boolean,value:false,observer:"_manualModeChanged"},position:{type:String,value:"bottom"},fitToVisibleBounds:{type:Boolean,value:false},offset:{type:Number,value:14},marginTop:{type:Number,value:14},animationDelay:{type:Number,value:500},animationConfig:{type:Object,value:function(){return{"entry":[{name:"fade-in-animation",
-node:this,timing:{delay:0}}],"exit":[{name:"fade-out-animation",node:this}]}}},_showing:{type:Boolean,value:false}},listeners:{"neon-animation-finish":"_onAnimationFinish"},get target(){var parentNode=Polymer.dom(this).parentNode;var ownerRoot=Polymer.dom(this).getOwnerRoot();var target;if(this.for)target=Polymer.dom(ownerRoot).querySelector("#"+this.for);else target=parentNode.nodeType==Node.DOCUMENT_FRAGMENT_NODE?ownerRoot.host:parentNode;return target},attached:function(){this._findTarget()},detached:function(){if(!this.manualMode)this._removeListeners()},
-show:function(){if(this._showing)return;if(Polymer.dom(this).textContent.trim()===""){var allChildrenEmpty=true;var effectiveChildren=Polymer.dom(this).getEffectiveChildNodes();for(var i=0;i<effectiveChildren.length;i++)if(effectiveChildren[i].textContent.trim()!==""){allChildrenEmpty=false;break}if(allChildrenEmpty)return}this.cancelAnimation();this._showing=true;this.toggleClass("hidden",false,this.$.tooltip);this.updatePosition();this.animationConfig.entry[0].timing=this.animationConfig.entry[0].timing||
-{};this.animationConfig.entry[0].timing.delay=this.animationDelay;this._animationPlaying=true;this.playAnimation("entry")},hide:function(){if(!this._showing)return;if(this._animationPlaying){this.cancelAnimation();this._showing=false;this._onAnimationFinish();return}this._showing=false;this._animationPlaying=true;this.playAnimation("exit")},updatePosition:function(){if(!this._target||!this.offsetParent)return;var offset=this.offset;if(this.marginTop!=14&&this.offset==14)offset=this.marginTop;var parentRect=
-this.offsetParent.getBoundingClientRect();var targetRect=this._target.getBoundingClientRect();var thisRect=this.getBoundingClientRect();var horizontalCenterOffset=(targetRect.width-thisRect.width)/2;var verticalCenterOffset=(targetRect.height-thisRect.height)/2;var targetLeft=targetRect.left-parentRect.left;var targetTop=targetRect.top-parentRect.top;var tooltipLeft,tooltipTop;switch(this.position){case "top":tooltipLeft=targetLeft+horizontalCenterOffset;tooltipTop=targetTop-thisRect.height-offset;
-break;case "bottom":tooltipLeft=targetLeft+horizontalCenterOffset;tooltipTop=targetTop+targetRect.height+offset;break;case "left":tooltipLeft=targetLeft-thisRect.width-offset;tooltipTop=targetTop+verticalCenterOffset;break;case "right":tooltipLeft=targetLeft+targetRect.width+offset;tooltipTop=targetTop+verticalCenterOffset;break}if(this.fitToVisibleBounds){if(parentRect.left+tooltipLeft+thisRect.width>window.innerWidth){this.style.right="0px";this.style.left="auto"}else{this.style.left=Math.max(0,
-tooltipLeft)+"px";this.style.right="auto"}if(parentRect.top+tooltipTop+thisRect.height>window.innerHeight){this.style.bottom=parentRect.height+"px";this.style.top="auto"}else{this.style.top=Math.max(-parentRect.top,tooltipTop)+"px";this.style.bottom="auto"}}else{this.style.left=tooltipLeft+"px";this.style.top=tooltipTop+"px"}},_addListeners:function(){if(this._target){this.listen(this._target,"mouseenter","show");this.listen(this._target,"focus","show");this.listen(this._target,"mouseleave","hide");
-this.listen(this._target,"blur","hide");this.listen(this._target,"tap","hide")}this.listen(this,"mouseenter","hide")},_findTarget:function(){if(!this.manualMode)this._removeListeners();this._target=this.target;if(!this.manualMode)this._addListeners()},_manualModeChanged:function(){if(this.manualMode)this._removeListeners();else this._addListeners()},_onAnimationFinish:function(){this._animationPlaying=false;if(!this._showing)this.toggleClass("hidden",true,this.$.tooltip)},_removeListeners:function(){if(this._target){this.unlisten(this._target,
-"mouseenter","show");this.unlisten(this._target,"focus","show");this.unlisten(this._target,"mouseleave","hide");this.unlisten(this._target,"blur","hide");this.unlisten(this._target,"tap","hide")}this.unlisten(this,"mouseenter","hide")}});</script></dom-module><script>(function(global){global.ArcBehaviors=global.ArcBehaviors||{};global.ArcBehaviors.JsonTableBehavior={properties:{page:{type:Number,value:0},itemsPerPage:{type:Number,value:20},paginate:{type:Boolean,value:false}},isArray:function(arr){return arr instanceof Array},isObject:function(obj){return Object.prototype.toString.call(obj)==="[object Object]"},isPrimitive:function(obj){if(obj===null)return true;var primitives=["string","number","boolean","undefined"];var type=typeof obj;return primitives.indexOf(type)!==
+default:return Prism.languages.markup}}})})();</script><dom-module id="structure-display" assetpath="bower_components/docs-parameters-table/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{background-color:var(--code-background-color, #f5f2f0) !important;}#output{@apply (--code-block);}</style><prism-highlighter></prism-highlighter><div id="output" class="markdown-html"></div></template><script>Polymer({is:"structure-display",extends:"pre",properties:{display:String,dataType:{type:String,value:"js"},autoHide:{type:Boolean,value:false},_ready:Boolean},observers:["_highlightSchema(display, dataType)","_autoHideChanged(autoHide, display)"],ready:function(){this.classList.add("markdown-html");this._ready=true;this._highlightSchema(this.display,this.dataType)},_autoHideChanged:function(state,display){if(state)if(!display){if(!this.hasAttribute("hidden"))this.setAttribute("hidden",true)}else{if(this.hasAttribute("hidden"))this.removeAttribute("hidden")}else if(this.hasAttribute("hidden"))this.removeAttribute("hidden")},
+_highlightSchema:function(str){if(!this._ready)return;if(!str){this.$.output.innerHTML="";return}this.debounce("structure-display-highlight",function(){this.$.output.innerHTML=this.highlight(str,this.dataType)},10)},highlight:function(code,lang){return this.fire("syntax-highlight",{code:code,lang:lang}).detail.code}});</script></dom-module><dom-module id="clipboard-copy" assetpath="bower_components/clipboard-copy/"><template><style>:host{display:none;}:host([copying]){display:inline;width:0;height:0;border:none;overflow:hidden;}</style><div id="content">[[content]]</div></template><script>Polymer({is:"clipboard-copy",properties:{content:String},copy:function(){if(this._beforeCopy())return this._notifyCopied();this.setAttribute("copying",true);var snipRange=document.createRange();snipRange.selectNodeContents(this.$.content);var selection=window.getSelection();selection.removeAllRanges();selection.addRange(snipRange);var result=false;try{result=document.execCommand("copy");this._notifyCopied()}catch(err){Polymer.Base._error(err);this.fire("content-copy-error",null,{bubbles:false})}selection.removeAllRanges();
+this.removeAttribute("copying");return result},_beforeCopy:function(){var event=this.fire("content-copy",{value:this.content},{cancelable:true});return event.defaultPrevented},_notifyCopied:function(){this.fire("content-copied",null,{bubbles:false});return true}});</script></dom-module><script>(function(global){global.ArcBehaviors=global.ArcBehaviors||{};global.ArcBehaviors.JsonTableBehavior={properties:{page:{type:Number,value:0},itemsPerPage:{type:Number,value:20},paginate:{type:Boolean,value:false}},isArray:function(arr){return arr instanceof Array},isObject:function(obj){return Object.prototype.toString.call(obj)==="[object Object]"},isPrimitive:function(obj){if(obj===null)return true;var primitives=["string","number","boolean","undefined"];var type=typeof obj;return primitives.indexOf(type)!==
 -1},getPropertyModel:function(key,value){var result=this.getItemModel(value);result.key=key;return result},getItemModel:function(value){var result={value:value};if(this.isObject(value))result.isObject=true;else if(this.isArray(value))if(this.isEnum(value))result.isEnum=true;else result.isArray=true;else result.isPrimitive=true;return result},isEnum:function(arr){if(!arr||!arr.length)return false;for(var i=0,len=arr.length;i<len;i++)if(!this.isPrimitive(arr[i]))return false;return true},_isEnumOrArray:function(record){if(!record||
-!record.base)return false;var item=record.base;return item.isArray||item.isEnum},_computeArraySize:function(record){if(!record||!record.base)return 0;var item=record.base;if(item.isArray||item.isEnum)return item.value.length||0;return 0}}})(window);</script><dom-module id="json-table-primitive-teaser" assetpath="bower_components/json-table/"><template><style>:host{display:block;margin:4px 0;}:host([opened]) .primitive-wrapper{max-height:none;}.primitive-wrapper{max-height:var(--json-table-primitive-teaser-max-heigth, 160px);overflow:hidden;padding:4px 0;}*[hidden]{display:none;}.toggle{font-size:inherit;color:inherit;margin-top:12px;display:inline-block;}</style><div class="primitive-wrapper" id="wrapper"><content id="content"></content></div><a href="#" class="toggle" hidden$="[[!_isOverflow]]" on-tap="toggle">[[_computeToggleLabel(opened)]]</a></template><script>Polymer({is:"json-table-primitive-teaser",properties:{opened:{type:Boolean,value:false,reflectToAttribute:true},observer:{readOnly:true,type:Object},_nodesObserver:{type:Function,value:function(){return this._contentChanged.bind(this)}},_isOverflow:{type:Boolean,value:false},maxHeight:{type:String,value:"160px",observer:"_maxHeightChanged"}},attached:function(){var observer=Polymer.dom(this.$.content).observeNodes(this._nodesObserver);this._setObserver(observer)},detached:function(){Polymer.dom(this.$.content).unobserveNodes(this.observer)},
-_contentChanged:function(){var oh=this.$.wrapper.offsetHeight;var sh=this.$.wrapper.scrollHeight;this._isOverflow=sh>oh},toggle:function(e){e.preventDefault();this.opened=!this.opened},_computeToggleLabel:function(opened){return opened?"show less":"show more"},_maxHeightChanged:function(maxHeight){maxHeight=maxHeight||"160px";this.customStyle["--json-table-primitive-teaser-max-heigth"]=maxHeight;this.updateStyles()}});</script></dom-module><dom-module id="json-table-array" assetpath="bower_components/json-table/"><template><style>:host{display:block;--table-actions-label-color:rgba(0, 0, 0, 0.74);--table-actions-label-font-size:14px;--paper-dropdown-menu:{width:70px;};--paper-dropdown-menu-input:{text-align:right;};--paper-input-container-underline:{border-bottom-color:transparent;};--paper-input-container-underline-focus:{border-bottom-color:transparent;};}paper-dropdown-menu{--paper-input-container-input:{@apply (--arc-font-body1);color:var(--table-actions-label-color);font-size:var(--table-actions-label-font-size);};}table{border-collapse:collapse;}th{white-space:nowrap;text-align:left;padding:8px 16px;@apply (--arc-font-body);font-size:14px;color:var(--json-table-array-header-color, #58595A);border-bottom:3px #e8e9ea solid;}td{min-width:60px;padding:8px 16px;word-break:normal;vertical-align:top;border-bottom:1px #E8E9EA solid;@apply (--arc-font-body);font-size:14px;color:var(--json-table-array-body-color, #121314);}*[hidden]{display:none;}.enum-value{display:block;padding:4px 0;margin:4px 0;}.enum-value::after{content:',';color:rgba(0, 0, 0, 0.54);}.enum-value:last-of-type::after{content:'';}.toggle-view{font-size:inherit;color:inherit;margin-top:12px;display:block;white-space:nowrap;}.toggle-view.active{display:inline-block;margin-top:0;}.table-actions{height:56px;@apply (--layout-horizontal);@apply (--layout-center);@apply (--arc-font-body1);font-size:var(--table-actions-label-font-size);color:var(--table-actions-label-color);}.page-items-count-selector,
+!record.base)return false;var item=record.base;return item.isArray||item.isEnum},_computeArraySize:function(record){if(!record||!record.base)return 0;var item=record.base;if(item.isArray||item.isEnum)return item.value.length||0;return 0}}})(window);</script><dom-module id="json-table-primitive-teaser" assetpath="bower_components/json-table/"><template><style>:host{display:block;margin:4px 0;}:host([opened]) .primitive-wrapper{max-height:none;}.primitive-wrapper{max-height:var(--json-table-primitive-teaser-max-heigth, 160px);overflow:hidden;padding:4px 0;}*[hidden]{display:none !important;}.toggle{font-size:inherit;color:inherit;margin-top:12px;display:inline-block;}</style><div class="primitive-wrapper" id="wrapper"><content id="content"></content></div><a href="#" class="toggle" hidden$="[[!_isOverflow]]" on-tap="toggle">[[_computeToggleLabel(opened)]]</a></template><script>Polymer({is:"json-table-primitive-teaser",properties:{opened:{type:Boolean,value:false,reflectToAttribute:true},observer:{readOnly:true,type:Object},_nodesObserver:{type:Function,value:function(){return this._contentChanged.bind(this)}},_isOverflow:{type:Boolean,value:false},maxHeight:{type:String,value:"160px",observer:"_maxHeightChanged"}},attached:function(){var observer=Polymer.dom(this.$.content).observeNodes(this._nodesObserver);this._setObserver(observer)},detached:function(){Polymer.dom(this.$.content).unobserveNodes(this.observer)},
+_contentChanged:function(){var oh=this.$.wrapper.offsetHeight;var sh=this.$.wrapper.scrollHeight;this._isOverflow=sh>oh},toggle:function(e){e.preventDefault();this.opened=!this.opened},_computeToggleLabel:function(opened){return opened?"show less":"show more"},_maxHeightChanged:function(maxHeight){maxHeight=maxHeight||"160px";this.customStyle["--json-table-primitive-teaser-max-heigth"]=maxHeight;this.updateStyles()}});</script></dom-module><dom-module id="json-table-array" assetpath="bower_components/json-table/"><template><style>:host{display:block;--table-actions-label-color:rgba(0, 0, 0, 0.74);--table-actions-label-font-size:14px;--paper-dropdown-menu:{width:70px;};--paper-dropdown-menu-input:{text-align:right;};--paper-input-container-underline:{border-bottom-color:transparent;};--paper-input-container-underline-focus:{border-bottom-color:transparent;};}paper-dropdown-menu{--paper-input-container-input:{@apply (--arc-font-body1);color:var(--table-actions-label-color);font-size:var(--table-actions-label-font-size);};}table{border-collapse:collapse;}th{white-space:nowrap;text-align:left;padding:8px 16px;@apply (--arc-font-body);font-size:14px;color:var(--json-table-array-header-color, #58595A);border-bottom:3px #e8e9ea solid;}td{min-width:60px;padding:8px 16px;word-break:normal;vertical-align:top;border-bottom:1px #E8E9EA solid;@apply (--arc-font-body);font-size:14px;color:var(--json-table-array-body-color, #121314);}*[hidden]{display:none !important;}.enum-value{display:block;padding:4px 0;margin:4px 0;}.enum-value::after{content:',';color:rgba(0, 0, 0, 0.54);}.enum-value:last-of-type::after{content:'';}.toggle-view{font-size:inherit;color:inherit;margin-top:12px;display:block;white-space:nowrap;}.toggle-view.active{display:inline-block;margin-top:0;}.table-actions{height:56px;@apply (--layout-horizontal);@apply (--layout-center);@apply (--arc-font-body1);font-size:var(--table-actions-label-font-size);color:var(--table-actions-label-color);}.page-items-count-selector,
     .page-count{margin-right:32px;@apply (--layout-horizontal);@apply (--layout-center);}</style><template is="dom-if" if="[[paginate]]"><div class="table-actions"><div class="page-items-count-selector"><span class="page-items-count-label">Items per page</span><paper-dropdown-menu no-label-float=""><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{itemsPerPage}}"><paper-item data-value="10">10</paper-item><paper-item data-value="15">15</paper-item><paper-item data-value="20">20</paper-item><paper-item data-value="25">25</paper-item><paper-item data-value="50">50</paper-item><paper-item data-value="100">100</paper-item></paper-listbox></paper-dropdown-menu></div><div class="page-count">[[startItemLabel]]-[[endItemLabel]] of [[maxItemsLabel]]</div><div class="page-paginators"><paper-icon-button icon="arc:chevron-left" on-tap="previousPage" disabled="[[_isDisabedPrevious(page)]]"></paper-icon-button><paper-icon-button icon="arc:chevron-right" on-tap="nextPage" disabled="[[_isDisabedNext(maxItemsLabel, endItemLabel)]]"></paper-icon-button></div></div></template><table><template is="dom-if" if="[[hasColumns]]"><thead><tr><template is="dom-repeat" items="[[columns]]"><th>[[item]]</th></template></tr></thead></template><tbody><template is="dom-repeat" items="[[display]]" as="displayItem" initial-count="10"><tr><template is="dom-repeat" items="[[columns]]" as="column"><td><template is="dom-if" if="[[_isPrimitive(displayItem, column)]]"><json-table-primitive-teaser class="primitive-value">[[_getValue(displayItem, column)]]</json-table-primitive-teaser></template><template is="dom-if" if="[[_isObject(displayItem, column)]]"><json-table-object json="[[_getValue(displayItem, column)]]" paginate="[[paginate]]" page="[[page]]" items-per-page="[[itemsPerPage]]"></json-table-object></template><template is="dom-if" if="[[_isEnum(displayItem, column)]]"><template is="dom-repeat" items="[[_getValue(displayItem, column)]]"><span class="enum-value">[[item]]</span></template></template><template is="dom-if" if="[[_isArray(displayItem, column)]]" restamp="true"><span class="object-info"><span class="object-label" array="">Array ([[_computeValueSize(displayItem, column)]])</span> <a href="#" class="toggle-view" data-target="array" on-tap="_toggleItem">show array</a></span><template is="dom-if" if="[[false]]" array=""><json-table-array json="[[_getValue(displayItem, column)]]" paginate="[[paginate]]" page="[[page]]" items-per-page="[[itemsPerPage]]"></json-table-array></template></template></td></template></tr></template></tbody></table><template is="dom-if" if="[[paginate]]"><div class="table-actions"><div class="page-items-count-selector"><span class="page-items-count-label">Items per page</span><paper-dropdown-menu no-label-float=""><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{itemsPerPage}}"><paper-item data-value="10">10</paper-item><paper-item data-value="15">15</paper-item><paper-item data-value="20">20</paper-item><paper-item data-value="25">25</paper-item><paper-item data-value="50">50</paper-item><paper-item data-value="100">100</paper-item></paper-listbox></paper-dropdown-menu></div><div class="page-count">[[startItemLabel]]-[[endItemLabel]] of [[maxItemsLabel]]</div><div class="page-paginators"><paper-icon-button icon="arc:chevron-left" on-tap="previousPage" disabled="[[_isDisabedPrevious(page)]]"></paper-icon-button><paper-icon-button icon="arc:chevron-right" on-tap="nextPage" disabled="[[_isDisabedNext(maxItemsLabel, endItemLabel)]]"></paper-icon-button></div></div></template></template><script>Polymer({is:"json-table-array",behaviors:[ArcBehaviors.JsonTableBehavior],properties:{json:{type:Array,observer:"_jsonChanged"},columns:{type:Array,readOnly:true,observer:"_columnsChanged"},hasColumns:{type:Boolean,value:false,readOnly:true},display:{type:Array,readOnly:true},startItemLabel:{type:Number,readOnly:true},endItemLabel:{type:Number,readOnly:true},maxItemsLabel:{type:Number,readOnly:true}},observers:["_computeDisplay(json, paginate, page, itemsPerPage)"],_jsonChanged:function(json){if(!json){this._setDisplay(undefined);
 this._setColumns(undefined);return}var names=this._computeColumns(json);this._setColumns(names)},_computeDisplay:function(json,paginate,page,itemsPerPage){if(!json)return;var maxInxdex=json.length-1;if(maxInxdex===-1)return;if(maxInxdex<=itemsPerPage&&this.paginate)return this.set("paginate",false);var startIndex=paginate?page*itemsPerPage:0;if(maxInxdex<startIndex)return;var endIndex=paginate?Math.min(startIndex+itemsPerPage-1,maxInxdex):maxInxdex;var result=[];for(var i=startIndex;i<=endIndex;i++)result.push(this.getItemModel(json[i]));
 this._setDisplay(result);this._setStartItemLabel(startIndex+1);this._setEndItemLabel(Math.min(endIndex+1,maxInxdex));this._setMaxItemsLabel(maxInxdex)},_computeColumns:function(json){if(this.isEnum(json))return;var columnNames=[];json.forEach(function(value){if(this.isObject(value)){var names=Object.keys(value);for(var i=0,len=names.length;i<len;i++)if(columnNames.indexOf(names[i])===-1)columnNames.push(names[i])}},this);return columnNames.length?columnNames:undefined},_columnsChanged:function(columns){if(columns&&
@@ -1017,16 +1025,18 @@ return false},_computeValueSize:function(item,column){var value=this._getValue(i
       :host > .array > .property-name{color:#000;}.enum-value{display:block;}.enum-value::after{content:',';color:rgba(0, 0, 0, 0.54);}.enum-value:last-of-type::after{content:'';}.object-label,
       .array-label{color:#58595A;}</style><template is="dom-repeat" items="[[display]]"><div class$="item [[_computeItemClass(item.*)]]"><div class="property-name">[[item.key]]<template is="dom-if" if="[[item.isObject]]"><span class="object-label">(Object)</span></template><template is="dom-if" if="[[_isEnumOrArray(item.*)]]"><span class="array-label">(Array [[_computeArraySize(item.*)]])</span></template></div><div class="property-value"><template is="dom-if" if="[[item.isObject]]"><json-table-object json="[[item.value]]" paginate="[[paginate]]" page="[[page]]" items-per-page="[[itemsPerPage]]"></json-table-object></template><template is="dom-if" if="[[item.isEnum]]"><template is="dom-repeat" items="[[item.value]]"><span class="enum-value">[[item]]</span></template></template><template is="dom-if" if="[[item.isArray]]"><div class="array-wrapper"><json-table-array json="[[item.value]]" paginate="[[paginate]]" page="[[page]]" items-per-page="[[itemsPerPage]]"></json-table-array></div></template><template is="dom-if" if="[[item.isPrimitive]]"><json-table-primitive-teaser class="primitive-value">[[item.value]]</json-table-primitive-teaser></template></div></div></template></template><script>Polymer({is:"json-table-object",behaviors:[ArcBehaviors.JsonTableBehavior],properties:{json:{type:Object,observer:"_jsonChanged"},display:{type:Array,readOnly:true}},_jsonChanged:function(json){if(!json)return this._setDisplay(undefined);var names=Object.keys(json);var model=names.map(function(key){return this.getPropertyModel(key,json[key])},this);this._setDisplay(model)},_computeItemClass:function(record){if(!record||!record.base)return;var item=record.base;if(item.isArray)return"array";if(item.isEnum)return"enum";
 if(item.isObject)return"object"}});</script></dom-module><dom-module id="json-table" assetpath="bower_components/json-table/"><template><style>:host{display:block;@apply (--json-table);}.array-wrapper{@apply (--layout-horizontal);overflow-y:hidden;overflow-x:auto;@apply (--json-table-main-array-wrapper);}json-table-array{@apply (--layout-flex);}.actions-panel{@apply (--layout-horizontal);@apply (--layout-center);@apply (--response-raw-viewer-action-bar);}</style><div class="actions-panel"><content select="[content-action]"></content></div><template is="dom-if" if="[[isArray(_renderJson)]]" restamp="true"><div class="array-wrapper"><json-table-array json="[[_renderJson]]" paginate="[[paginate]]" page="[[page]]" items-per-page="[[itemsPerPage]]"></json-table-array></div></template><template is="dom-if" if="[[isObject(_renderJson)]]" restamp="true"><json-table-object json="[[_renderJson]]" paginate="[[paginate]]" page="[[page]]" items-per-page="[[itemsPerPage]]"></json-table-object></template></template><script>Polymer({is:"json-table",behaviors:[ArcBehaviors.JsonTableBehavior],properties:{json:{type:Object,observer:"_jsonChanged"},_renderJson:Object,parserError:{type:Boolean,value:false,readOnly:true}},_jsonChanged:function(json){this._setParserError(false);this.set("_renderJson",undefined);if(!json)return this.set("_renderJson",undefined);if(typeof json==="string")try{json=JSON.parse(json);return this._setRenderJson(json)}catch(e){this._setParserError(true);return}if(this.isArray(json))this._setRenderJson(Array.from(json));
-else this._setRenderJson(Object.assign({},json))},_setRenderJson:function(json){this.async(function(){this.set("_renderJson",json)},1)}});</script></dom-module><dom-module id="example-display" assetpath="bower_components/docs-parameters-table/"><template strip-whitespace=""><style>:host{display:block;@apply (--example-display);}*[hidden]{display:none;}paper-icon-button[active]{background-color:var(--example-display-button-active-background-color, #e0e0e0);border-radius:50%;@apply (--example-display-button-active);}.example-actions{@apply (--example-display-actions-container);}</style><div class="example-actions"><span><paper-icon-button icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-tooltip animation-delay="200">Copy example to clipboard</paper-tooltip></span><template is="dom-if" if="[[isJson]]"><span><paper-icon-button icon="arc:view-column" active="[[table]]" toggles="" on-tap="toggleTable"></paper-icon-button><paper-tooltip animation-delay="200">Toggle table view</paper-tooltip></span></template></div><template is="dom-if" if="[[!table]]"><pre is="structure-display" display="[[content]]" class="language-javascript" auto-hide=""></pre></template><template is="dom-if" if="[[_computeDisplayTable(isJson, table)]]"><json-table json="[[content]]"></json-table></template><clipboard-copy content="[[content]]"></clipboard-copy></template><script>Polymer({is:"example-display",properties:{content:String,isJson:{type:Boolean,observer:"_isJsonChanged"},table:{type:Boolean,observer:"_tableChanged"}},attached:function(){this.listen(window,"storage","_onStorageChanged");this.listen(window,"json-table-state-changed","_onJsonTableStateChanged")},detached:function(){this.unlisten(window,"storage","_onStorageChanged");this.unlisten(window,"json-table-state-changed","_onJsonTableStateChanged")},_copyToClipboard:function(e){var button=Polymer.dom(e).localTarget;
-var copy=this.$$("clipboard-copy");if(copy.copy())button.icon="arc:done";else button.icon="arc:error";this.async(function(){this._resetCopyButtonState(button)},1E3)},_resetCopyButtonState:function(button){button.icon="arc:content-copy"},toggleTable:function(){this.table=!this.table},_isJsonChanged:function(isJson){if(!isJson)return;var isTable=this._localStorageValueToBoolean(localStorage.jsonTableEnabled);if(this.table!==isTable)this.table=isTable},_tableChanged:function(state){if(state===undefined)return;
-if(localStorage.jsonTableEnabled!==String(state))window.localStorage.setItem("jsonTableEnabled",state);this.fire("json-table-state-changed",{enabled:state})},_onStorageChanged:function(e){if(e.key!=="jsonTableEnabled")return;if(!e.newValue)return;var v=this._localStorageValueToBoolean(e.newValue);if(this.table!==v)this.table=v},_localStorageValueToBoolean:function(value){if(!value)return false;if(value==="true")value=true;else value=false;return value},_onJsonTableStateChanged:function(e){if(e.target===
-this)return;var enabled=e.detail.enabled;if(enabled!==this.table)this.table=enabled},_computeDisplayTable:function(isJson,table){return isJson&&table}});</script></dom-module><dom-module id="docs-json-structure-view" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>:host{--paper-tabs-selection-bar-color:var(--params-table-header-background-color, #00A1DF);--paper-tab-ink:var(--params-table-header-background-color, #00A1DF);}</style><template is="dom-if" if="[[typeOnly]]"><div><pre is="structure-display" display="[[displayJson]]" class="language-javascript" auto-hide=""></pre></div></template><template is="dom-if" if="[[exampleOnly]]"><div class="examples"><template is="dom-repeat" items="[[examples]]"><example-display is-json="" content="[[item]]"></example-display></template></div></template><template is="dom-if" if="[[typeAndExample]]"><div><paper-tabs class="schemas" selected="{{selectedSchemaPage}}"><paper-tab>[[_getTypeTabName(isSchema)]]</paper-tab><paper-tab>Examples</paper-tab></paper-tabs><iron-pages selected="{{selectedSchemaPage}}"><div class="schema"><h5 hidden$="[[!type.schema]]">Schema: [[type.schema]]</h5><pre is="structure-display" display="[[displayJson]]" class="language-javascript" auto-hide=""></pre></div><div class="examples"><template is="dom-repeat" items="[[examples]]"><example-display is-json="" content="[[item]]"></example-display></template></div></iron-pages></div></template></template><script>(function(){Polymer({is:"docs-json-structure-view",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,hasType:Boolean,isSchema:Boolean,displayJson:{type:String,computed:"_computeDisplayJson(type.*)"},examples:{type:Array,computed:"_computeExamples(type.*)"},selectedSchemaPage:{type:Number,value:0},typeOnly:{type:Boolean,readOnly:true},exampleOnly:{type:Boolean,readOnly:true},typeAndExample:{type:Boolean,readOnly:true}},observers:["_updateUiVariables(hasType, hasExamples)"],_updateUiVariables:function(hasType,
-hasExamples){this._setTypeOnly(hasType&&!hasExamples);this._setExampleOnly(!hasType&&hasExamples);this._setTypeAndExample(hasType&&hasExamples)},_computeDisplayJson:function(record){if(!record||!record.base)return;if(record.base.schema)return record.base.schemaContent;if(record.base.type instanceof Array)record.base.type=record.base.type[0];if(record.base.type==="json")return record.base.content;var properties=record.base.properties;var isArray=false;var hasProperties=!!(properties&&Object.keys(properties).length);
-if(!hasProperties)if(record.base.type==="array"){properties=record.base.items.properties;isArray=true;hasProperties=!!(properties&&Object.keys(properties).length)}else if(record.base.type==="union");else return undefined;var data=hasProperties?this.__transformObject({},properties):{};var self=this;if(record.base.type==="union"){var ut=[];record.base.anyOf.forEach(function(item){var _props=self.__transformObject({},item.properties,true);ut[ut.length]=_props});data=Object.assign(data,ut[0])}if(isArray)data=
-[data];return JSON.stringify(data,null,2)},__transformObject:function(base,obj){var bt=this.baseTypes;for(var i=0,len=obj.length;i<len;i++){var item=obj[i];var type=item.type;var structure;if(type instanceof Array){type=type[0];obj.type=type}if(bt.indexOf(type)===-1)if(item.properties)structure=this.__transformObject({},this.readProperties(item.properties));else structure=type;else if(type==="object"&&item.properties)structure=this.__transformObject({},this.readProperties(item.properties));else if(type===
-"array"){if(item.items.type instanceof Array)item.items.type=item.items.type[0];if(typeof item.items==="string")structure=[item.items];else if(item.items.type==="object")structure=[this.__transformObject({},this.readProperties(item.items.properties))];else structure=[item.items.type]}else structure=type;base[item.key||item.name]=structure}return base},_getTypeTabName:function(isSchema){return isSchema?"Schema":"Type"}})})();</script></dom-module><dom-module id="docs-json-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>.parent-prefix{color:var(--params-table-subproperty-prefix-color, rgba(0, 0, 0, 0.54));}.parent-prefix::after{content:'.';}paper-listbox paper-item{cursor:pointer;}.params-table{display:table;}.tr{display:table-row;}</style><iron-collapse opened="[[structureDisplayOpened]]"><docs-json-structure-view type="[[type]]" has-type="[[hasType]]" is-schema="[[isSchema]]"></docs-json-structure-view></iron-collapse><template is="dom-if" if="[[renderTable]]"><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-repeat" items="[[model]]"><template is="dom-if" if="[[item.isArrayHeader]]"><section class="tr"><div class="td param-type"></div><div class="td param-type"></div><div class="td param-type">Array of [[item.type]] items</div></section></template><template is="dom-if" if="[[item.isUnionSelector]]"><section class="tr"><div class="td param-name">Type variant</div><div class="td param-type"><paper-dropdown-menu no-label-float=""><paper-listbox class="dropdown-content" selected="{{selectedUnion}}" data-action="toggle-type"><template is="dom-repeat" items="[[item.options]]" as="union"><paper-item data-type$="[[union.index]]">[[union.label]]</paper-item></template></paper-listbox></paper-dropdown-menu></div><div class="td param-desc"></div></section></template><template is="dom-if" if="[[item.isProperyItem]]"><section class="tr" data-parent$="[[item.dataParent]]" hidden$="[[item.isHidden]]" subproperty$="[[item.isSubproperty]]" has-children$="[[item.hasChildren]]"><div class="td param-name"><span class="name" child$="[[item.isSubproperty]]"><template is="dom-if" if="[[item.withParent]]"><span class="parent-prefix">[[item.parentDisplayValue]]</span> <span>[[item.nameDisplayValue]]</span></template><template is="dom-if" if="[[!item.withParent]]">[[item.nameDisplayValue]]</template></span><template is="dom-if" if="[[item.required]]"><span class="required-label">(required)</span></template></div><div class="td param-type"><span class="type">[[item.typeDisplay]]</span><template is="dom-if" if="[[item.hasEnum]]"><span class="enum-label">(enum)</span></template></div><div class="td param-desc"><raml-type-property-description item="[[item]]"></raml-type-property-description></div></section></template></template></div></div></template></template><script>(function(){Polymer({is:"docs-json-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,hasType:{type:Boolean,computed:"_computeHasType(type.*)",value:false,notify:true},isSchema:Boolean,structureDisplayOpened:{type:Boolean,value:true},narrow:{type:Boolean,reflectToAttribute:true},model:Array,selectedUnion:{type:Number,value:0},renderTable:{type:Boolean,readOnly:true}},observers:["_generateModel(hasType, type.*)","_selectedUnionChanged(selectedUnion, model)",
-"_updateUiVariables(hasType, isSchema)"],_updateUiVariables:function(hasType,isSchema){this._setRenderTable(!isSchema&&hasType)},_computeHasType:function(record){if(!record.base){this.isSchema=false;return false}var object=record.base;if(object.schema){this.isSchema=true;return!!object.schemaContent}this.isSchema=false;if(object.type==="array")return!!object.items;else if(object.type==="union")return!!(object.anyOf&&object.anyOf.length);else if(object.type==="json"){this.isSchema=true;return!!object.content}var hasType=
-!!(object.properties&&Object.keys(object.properties).length);return hasType},_generateModel:function(hasType,record){var type=record&&record.base;if(!hasType||!type)return;this.debounce("body-params-table-render",function(){var model=this.__computeModel(type,undefined,[]);this.set("model",model)}.bind(this),100)},__computeModel:function(object,opts,model){if(!object)return;model=model||[];opts=opts||{};var i;var len;var property;var options;var list;var modelItem;if(this.baseTypes.indexOf(object.type)!==
+else this._setRenderJson(Object.assign({},json))},_setRenderJson:function(json){this.async(function(){this.set("_renderJson",json)},1)}});</script></dom-module><dom-module id="example-display" assetpath="bower_components/docs-parameters-table/"><template strip-whitespace=""><style>:host{display:block;@apply (--example-display);}*[hidden]{display:none;}h5{@apply --example-display-title;}paper-icon-button[active]{background-color:var(--example-display-button-active-background-color, #e0e0e0);border-radius:50%;@apply (--example-display-button-active);}.example-actions{@apply (--example-display-actions-container);}</style><template is="dom-if" if="[[exampleTitle]]"><h5>[[exampleTitle]]</h5></template><div class="example-actions"><span><paper-icon-button icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-tooltip animation-delay="200">Copy example to clipboard</paper-tooltip></span><template is="dom-if" if="[[isJson]]"><span><paper-icon-button icon="arc:view-column" active="[[table]]" toggles="" on-tap="toggleTable"></paper-icon-button><paper-tooltip animation-delay="200">Toggle table view</paper-tooltip></span></template></div><template is="dom-if" if="[[!table]]"><pre is="structure-display" display="[[display]]" class="[[_highlightClass]]" data-type="[[_dataType]]" auto-hide=""></pre></template><template is="dom-if" if="[[_computeDisplayTable(isJson, table)]]"><json-table json="[[display]]"></json-table></template><clipboard-copy content="[[display]]"></clipboard-copy></template><script>Polymer({is:"example-display",properties:{content:String,display:{type:String,computed:"_computeExampleDisplay(content)"},exampleTitle:{type:String,computed:"_computeExampleTitle(content)"},isJson:{type:Boolean,observer:"_isJsonChanged"},isXml:{type:Boolean,observer:"_isXmlChanged"},table:{type:Boolean,value:false,observer:"_tableChanged"},_highlightClass:{type:String,value:"language-javascript"},_dataType:{type:String,value:"js"}},attached:function(){this.listen(window,"storage","_onStorageChanged");
+this.listen(window,"json-table-state-changed","_onJsonTableStateChanged")},detached:function(){this.unlisten(window,"storage","_onStorageChanged");this.unlisten(window,"json-table-state-changed","_onJsonTableStateChanged")},_computeExampleTitle:function(content){if(!content||typeof content==="string"||!content.name)return;return content.name},_computeExampleDisplay:function(content){if(!content||typeof content==="string")return content;return content.value},_copyToClipboard:function(e){var button=
+Polymer.dom(e).localTarget;var copy=this.$$("clipboard-copy");if(copy.copy())button.icon="arc:done";else button.icon="arc:error";this.async(function(){this._resetCopyButtonState(button)},1E3)},_resetCopyButtonState:function(button){button.icon="arc:content-copy"},toggleTable:function(){this.table=!this.table},_isJsonChanged:function(isJson){if(!isJson)return;if(this._highlightClass!=="language-javascript")this._highlightClass="language-javascript";if(this._dataType!=="js")this._dataType="js";var isTable=
+this._localStorageValueToBoolean(localStorage.jsonTableEnabled);if(this.table!==isTable)this.table=isTable},_isXmlChanged:function(isXml){if(isXml){this._highlightClass="language-xml";this._dataType="xml"}},_tableChanged:function(state){if(state===undefined)return;if(localStorage.jsonTableEnabled!==String(state))window.localStorage.setItem("jsonTableEnabled",state);this.fire("json-table-state-changed",{enabled:state})},_onStorageChanged:function(e){if(e.key!=="jsonTableEnabled")return;if(!e.newValue)return;
+var v=this._localStorageValueToBoolean(e.newValue);if(this.table!==v)this.table=v},_localStorageValueToBoolean:function(value){if(!value)return false;if(value==="true")value=true;else value=false;return value},_onJsonTableStateChanged:function(e){if(e.target===this)return;var enabled=e.detail.enabled;if(enabled!==this.table)this.table=enabled},_computeDisplayTable:function(isJson,table){return isJson&&table}});</script></dom-module><dom-module id="docs-json-structure-view" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>:host{--paper-tabs-selection-bar-color:var(--params-table-header-background-color, #00A1DF);--paper-tab-ink:var(--params-table-header-background-color, #00A1DF);}</style><template is="dom-if" if="[[typeOnly]]"><div><pre is="structure-display" display="[[displayJson]]" class="language-javascript" auto-hide=""></pre></div></template><template is="dom-if" if="[[exampleOnly]]" restamp=""><div class="examples"><template is="dom-repeat" items="[[examples]]"><example-display is-json="" content="[[item]]"></example-display></template></div></template><template is="dom-if" if="[[typeAndExample]]" restamp=""><div><paper-tabs class="schemas" selected="{{selectedSchemaPage}}"><paper-tab>[[_getTypeTabName(isSchema)]]</paper-tab><paper-tab>Examples</paper-tab></paper-tabs><iron-pages selected="{{selectedSchemaPage}}"><div class="schema"><h5 hidden$="[[_computeSchemaTypeHidden(type)]]">Schema: [[_computeSchemaLabel(type)]]</h5><pre is="structure-display" display="[[displayJson]]" class="language-javascript" auto-hide=""></pre></div><div class="examples"><template is="dom-repeat" items="[[examples]]"><example-display is-json="" content="[[item]]"></example-display></template></div></iron-pages></div></template></template><script>(function(){Polymer({is:"docs-json-structure-view",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,hasType:Boolean,isSchema:{type:Boolean,computed:"_computeIsSchema(type)"},displayJson:{type:String,computed:"_computeDisplayJson(type.*)"},examples:{type:Array,computed:"_computeExamples(type.*)"},selectedSchemaPage:{type:Number,value:0},typeOnly:{type:Boolean,readOnly:true},exampleOnly:{type:Boolean,readOnly:true},typeAndExample:{type:Boolean,readOnly:true}},observers:["_updateUiVariables(hasType, hasExamples)"],
+_updateUiVariables:function(hasType,hasExamples){this._setTypeOnly(hasType&&!hasExamples);this._setExampleOnly(!hasType&&hasExamples);this._setTypeAndExample(hasType&&hasExamples)},_computeDisplayJson:function(record){if(!record||!record.base)return;if(record.base.schema)return record.base.schemaContent;if(record.base.type instanceof Array)record.base.type=record.base.type[0];if(record.base.type==="json")return record.base.content;var properties=record.base.properties;var isArray=false;var hasProperties=
+!!(properties&&Object.keys(properties).length);if(!hasProperties)if(record.base.type==="array"){properties=record.base.items.properties;isArray=true;hasProperties=!!(properties&&Object.keys(properties).length)}else if(record.base.type==="union");else return undefined;var data=hasProperties?this.__transformObject({},properties):{};var self=this;if(record.base.type==="union"){var ut=[];record.base.anyOf.forEach(function(item){var _props=self.__transformObject({},item.properties,true);ut[ut.length]=
+_props});data=Object.assign(data,ut[0])}if(isArray)data=[data];return JSON.stringify(data,null,2)},__transformObject:function(base,obj){var bt=this.baseTypes;for(var i=0,len=obj.length;i<len;i++){var item=obj[i];var type=item.type;var structure;if(type instanceof Array){type=type[0];obj.type=type}if(bt.indexOf(type)===-1)if(item.properties)structure=this.__transformObject({},this.readProperties(item.properties));else structure=type;else if(type==="object"&&item.properties)structure=this.__transformObject({},
+this.readProperties(item.properties));else if(type==="array"){if(item.items.type instanceof Array)item.items.type=item.items.type[0];if(typeof item.items==="string")structure=[item.items];else if(item.items.type==="object")structure=[this.__transformObject({},this.readProperties(item.items.properties))];else structure=[item.items.type]}else structure=type;base[item.key||item.name]=structure}return base},_getTypeTabName:function(isSchema){return isSchema?"Schema":"Type"},_computeIsSchema:function(object){if(!object)return false;
+if(object.schema)return true;if(object.type==="json")return true;return false}})})();</script></dom-module><dom-module id="docs-json-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>.parent-prefix{color:var(--params-table-subproperty-prefix-color, rgba(0, 0, 0, 0.54));}.parent-prefix::after{content:'.';}paper-listbox paper-item{cursor:pointer;}.params-table{display:table;}.tr{display:table-row;}</style><iron-collapse opened="[[structureDisplayOpened]]"><docs-json-structure-view type="[[type]]" has-type="[[hasType]]"></docs-json-structure-view></iron-collapse><template is="dom-if" if="[[renderTable]]"><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-repeat" items="[[model]]"><template is="dom-if" if="[[item.isArrayHeader]]"><section class="tr"><div class="td param-type subheader">Array of [[item.type]] items</div><div class="td param-type subheader subheader-empty-cell"></div><div class="td param-type subheader subheader-empty-cell"></div></section></template><template is="dom-if" if="[[item.isUnionSelector]]"><section class="tr"><div class="td param-name">Type variant</div><div class="td param-type"><paper-dropdown-menu no-label-float=""><paper-listbox class="dropdown-content" selected="{{selectedUnion}}" data-action="toggle-type"><template is="dom-repeat" items="[[item.options]]" as="union"><paper-item data-type$="[[union.index]]">[[union.label]]</paper-item></template></paper-listbox></paper-dropdown-menu></div><div class="td param-desc"></div></section></template><template is="dom-if" if="[[item.isProperyItem]]"><section class="tr" data-parent$="[[item.dataParent]]" hidden$="[[item.isHidden]]" subproperty$="[[item.isSubproperty]]" has-children$="[[item.hasChildren]]"><div class="td param-name"><span class="name" child$="[[item.isSubproperty]]"><template is="dom-if" if="[[item.withParent]]"><span class="parent-prefix">[[item.parentDisplayValue]]</span> <span>[[item.nameDisplayValue]]</span></template><template is="dom-if" if="[[!item.withParent]]">[[item.nameDisplayValue]]</template></span><template is="dom-if" if="[[item.required]]"><span class="required-label">(required)</span></template></div><div class="td param-type"><span class="type">[[item.typeDisplay]]</span><template is="dom-if" if="[[item.hasEnum]]"><span class="enum-label">(enum)</span></template></div><div class="td param-desc"><raml-type-property-description item="[[item]]"></raml-type-property-description></div></section></template></template></div></div></template></template><script>(function(){Polymer({is:"docs-json-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,hasType:{type:Boolean,computed:"_computeHasType(type.*)",value:false,notify:true},isSchema:{type:Boolean,computed:"_computeIsSchema(type)"},structureDisplayOpened:{type:Boolean,value:true},narrow:{type:Boolean,reflectToAttribute:true},model:Array,selectedUnion:{type:Number,value:0},renderTable:{type:Boolean,readOnly:true}},observers:["_generateModel(hasType, type.*)","_selectedUnionChanged(selectedUnion, model)",
+"_updateUiVariables(hasType, isSchema)"],_updateUiVariables:function(hasType,isSchema){this._setRenderTable(!isSchema&&hasType)},_computeHasType:function(record){if(!record.base)return false;var object=record.base;if(object.schema)return!!object.schemaContent;switch(object.type){case "array":return!!object.items;case "union":return!!(object.anyOf&&object.anyOf.length);case "json":return!!object.content;default:var props=object.properties;return!!(props&&Object.keys(props).length)}},_computeIsSchema:function(object){if(!object)return false;
+if(object.schema)return true;if(object.type==="json")return true;return false},_generateModel:function(hasType,record){var type=record&&record.base;if(!hasType||!type)return;this.debounce("body-params-table-render",function(){var model=this.__computeModel(type,undefined,[]);this.set("model",model)}.bind(this),100)},__computeModel:function(object,opts,model){if(!object)return;model=model||[];opts=opts||{};var i;var len;var property;var options;var list;var modelItem;if(this.baseTypes.indexOf(object.type)!==
 -1&&object.type!=="object"&&object.type!=="array"){modelItem=this.__createModelForItem(object,opts);model.push(modelItem);return model}if(object.properties&&object.properties.length)for(i=0,len=object.properties.length;i<len;i++){property=object.properties[i];list=this.__handleModelProperty(property,opts);if(list)model=model.concat(list)}if(object.items&&object.items.properties&&object.items.properties.length){var isEmptyTable=model.length===0&&(!opts||!opts.parent);if(isEmptyTable){modelItem=this.__createModelForArrayHeader(object,
 opts);model.push(modelItem);var currentCopy=Object.assign({},object);currentCopy.displayName="item";options=Object.assign({},opts,{parent:currentCopy})}else{modelItem=this.__createModelForItem(object,opts);model.push(modelItem);options=Object.assign({},opts,{parent:object})}for(i=0,len=object.items.properties.length;i<len;i++){property=object.items.properties[i];list=this.__handleModelProperty(property,options);if(list)model=model.concat(list)}}if(object.type==="union"){if(!object.anyOf.length)return model;
 modelItem=this.__createModelForUnion(object.anyOf.length);model.push(modelItem);for(i=0,len=object.anyOf.length;i<len;i++)for(var j=0,pLen=object.anyOf[i].properties.length;j<pLen;j++){property=object.anyOf[i].properties[j];options={inUnion:true,parent:opts.parent||object,variantIndex:i,childIndex:j};list=this.__handleModelProperty(property,options);if(list)model=model.concat(list)}}return model},__handleModelProperty:function(property,opts){opts=opts||{};var model=[];var hasChildren=false;if(property.properties||
@@ -1036,14 +1046,14 @@ true;else item.hasChildren=false;var fillParentInfo=true;if(opts.inUnion){item.d
 item.name||item.key||item.displayName;item.withParent=false}if(item.type==="array"){var name="";if(typeof item.items==="string")name+="Array["+item.items+"]";else if(!item.items.properties||!item.items.displayName)name+="Array["+(item.items.type||"any")+"]";else name+=item.items.displayName+"["+item.items.type+"]";item.typeDisplay=name}else if(item.type==="any"&&item.enum)item.typeDisplay="Enum";else item.typeDisplay=item.type==="object"?item.displayName||item.type:item.type;item.hasDisplaName=this._hasDisplayName(item);
 item.hasExamples=this._hasExamples(item);if(item.hasExamples)item.example=this._getExamples(item);item.hasMinimum=this._hasMinimum(item);if(item.hasMinimum)item.minimum=this._getMinimum(item);item.hasMaximum=this._hasMaximum(item);if(item.hasMaximum)item.maximum=this._getMaximum(item);item.hasEnum=this.hasValue(item.enum);if(item.hasEnum)item.enum=this._computeEnumValue(item.enum);item.hasAnnotations=this.hasValue(item.annotations);item.isArrayHeader=false;item.isProperyItem=true;item.isUnionSelector=
 false;return item},__createModelForArrayHeader:function(item){var type;if(typeof item.items==="string")type=item.items;if(!type)type=item.items.name||item.items.type||"any";return{isArrayHeader:true,isProperyItem:false,isUnionSelector:false,type:type}},__createModelForUnion:function(no){if(!no){console.warn("Trying to invoke row for union but number is not set");return[]}var options=[];for(var i=0;i<no;i++)options.push({index:i,label:"Variant "+(i+1)});return{isArrayHeader:false,isProperyItem:false,
-isUnionSelector:true,options:options}},_selectedUnionChanged:function(selectedUnion,model){if(!model||selectedUnion===undefined)return;model.forEach(function(item,i){if(!item.isProperyItem||item.dataParent===undefined)return;if(item.dataParent===selectedUnion){if(model[i].isHidden)this.set(["model",i,"isHidden"],false)}else if(!model[i].isHidden)this.set(["model",i,"isHidden"],true)},this)}})})();</script></dom-module><dom-module id="docs-xml-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="prism-theme-default"></style><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;}#content{display:none;}:host([has-type]) #content{display:block;}:host([has-type]) .no-type{display:none;}.no-type{@apply (--no-info-message);}</style><prism-highlighter></prism-highlighter><p class="no-type">This object doesn't have a type description.</p><div id="content"><template is="dom-if" if="[[!hasExamples]]" restamp="true"><iron-collapse opened="[[structureDisplayOpened]]"><div><pre is="structure-display" display="[[schemaDisplay]]" class="language-xml" data-type="xml" auto-hide=""></pre></div></iron-collapse></template><template is="dom-if" if="[[hasExamples]]" restamp="true"><iron-collapse opened="[[structureDisplayOpened]]"><div><paper-tabs class="schemas" selected="{{selectedSchemaPage}}"><paper-tab>Schema</paper-tab><paper-tab>Examples</paper-tab></paper-tabs><iron-pages selected="{{selectedSchemaPage}}"><div class="schema"><h5 hidden$="[[!type.schema]]">Schema: [[type.schema]]</h5><pre is="structure-display" display="[[schemaDisplay]]" class="language-xml" data-type="xml" auto-hide=""></pre></div><div class="examples"><template is="dom-repeat" items="[[examples]]"><pre is="structure-display" display="[[item]]" class="language-xml" data-type="xml" auto-hide=""></pre></template></div></iron-pages></div></iron-collapse></template></div></template><script>Polymer({is:"docs-xml-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,schemaDisplay:{type:String,computed:"_computeDisplay(type.*)"},hasType:{type:Boolean,computed:"_computeHasType(schemaDisplay)",value:false,notify:true,reflectToAttribute:true},examples:{type:Array,computed:"_computeExamples(type.*)"},selectedSchemaPage:{type:Number,value:0},narrow:{type:Boolean,reflectToAttribute:true},structureDisplayOpened:Boolean},_computeHasType:function(display){return!!display},
-_computeDisplay:function(record){var object=record.base;if(!object)return undefined;if(object.type==="xml")return object.content;if(object.schema&&object.schemaContent)return object.schemaContent;if(object.type&&typeof object.type==="string")return object.type;return undefined}});</script></dom-module><dom-module id="docs-form-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;}</style><template is="dom-if" if="[[hasParams]]"><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-repeat" items="[[readProperties(type.formParameters)]]"><section class="tr"><div class="td param-name"><span class="name">[[item.name]]</span><template is="dom-if" if="[[item.required]]"><span class="required-label">(required)</span></template></div><div class="td param-type"><span class="type">[[item.type]]</span><template is="dom-if" if="[[hasValue(item.enum)]]"><span class="enum-label">(enum)</span></template></div><div class="td param-desc"><raml-type-property-description item="[[item]]"></raml-type-property-description></div></section></template></div></div></template></template><script>Polymer({is:"docs-form-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,hasParams:{type:Boolean,computed:"_computeHasParams(type.*)",value:false,notify:true,reflectToAttribute:true},narrow:{type:Boolean,reflectToAttribute:true}},_computeHasParams:function(record){if(!record.base)return false;var object=record.base;return!!(object.formParameters&&Object.keys(object.formParameters).length)}});</script></dom-module><dom-module id="docs-body-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>:host{--paper-tabs-selection-bar-color:var(--params-table-header-background-color, #00A1DF);--paper-tab-ink:var(--params-table-header-background-color, #00A1DF);display:block;overflow:auto;width:100%;}h4{padding:0 12px;@apply (--docs-body-parameters-table-type-name);}paper-listbox paper-item{cursor:pointer;}.body-selector{margin:0 12px;}.type-title{@apply (--layout-horizontal);@apply (--layout-center);}.type-title h4{@apply (--layout-flex);}.toggle-button{color:var(--docs-body-parameters-table-toggle-icon-color, rgba(0, 0, 0, 0.54));transform:rotateZ(0deg);transition:color 0.25s linear, transform 0.3s linear;@apply (--toggle-button);}.toggle-button.opened{transform:rotateZ(-180deg);}.toggle-button:hover{color:var(--docs-body-parameters-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));@apply (--toggle-button-hover);}*[hidden]{display:none !important;}</style><prism-highlighter></prism-highlighter><template is="dom-if" if="[[displayBodySelector]]"><paper-dropdown-menu label="Body type" class="body-selector"><paper-listbox class="dropdown-content" attr-for-selected="data-type" selected="{{selectedBodyType}}"><template is="dom-repeat" items="[[bodyTypes]]"><paper-item data-type$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><div class="type-title"><h4><span hidden$="[[!displayName]]">Type: [[displayName]]</span></h4><paper-icon-button class$="toggle-button[[_computeToggleClass(structureDisplayOpened)]]" icon="arc:expand-more" on-tap="toggleOpened" title="Toggle structure display" hidden$="[[isFormUrlEncoded]]"></paper-icon-button></div><template is="dom-if" if="[[isJson]]"><docs-json-parameters-table type="[[selectedBody]]" structure-display-opened="[[structureDisplayOpened]]" narrow="[[narrow]]"></docs-json-parameters-table></template><template is="dom-if" if="[[isXml]]"><docs-xml-parameters-table type="[[selectedBody]]" structure-display-opened="[[structureDisplayOpened]]" narrow="[[narrow]]"></docs-xml-parameters-table></template><template is="dom-if" if="[[isFormUrlEncoded]]"><docs-form-parameters-table type="[[selectedBody]]" narrow="[[narrow]]"><docs-form-parameters-table></docs-form-parameters-table></docs-form-parameters-table></template><iron-media-query query="max-width: 640px" query-matches="{{narrow}}"></iron-media-query></template><script>Polymer({is:"docs-body-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{body:Array,displayName:{type:String,computed:"_computeDisplayName(selectedBodyType, "+"displayBodySelector, selectedBody.*)"},isJson:{type:Object,value:false,readOnly:true},isXml:{type:Object,value:false,readOnly:true},isFormUrlEncoded:{type:Object,value:false,readOnly:true},hasBody:{value:false,type:Boolean,computed:"_computeHasBody(body)",notify:true},bodyTypes:{type:Array,readOnly:true,value:function(){return[]}},
-displayBodySelector:{type:Boolean,computed:"_computeDisplayBodySelector(bodyTypes.*)"},selectedBodyType:{type:String,notify:true},selectedBody:{type:Object,computed:"_computeSelectedBody(selectedBodyType)"},structureDisplayOpened:{type:Boolean,value:true},narrow:Boolean},observers:["_computeBodyTypes(body.*)","_autoHide(autoHide, hasBody)","_computeContentType(selectedBody.*)","_bodyTypesChanged(bodyTypes.*)","_selectedBodyTypeChanged(selectedBodyType)"],attached:function(){this.listen(window,"raml-docs-content-type-changed",
-"_bodyContentTypeHandler")},detached:function(){this.unlisten(window,"raml-docs-content-type-changed","_bodyContentTypeHandler")},_bodyContentTypeHandler:function(e){if(e.target===this)return;var ct=e.detail.value;this._cancelBodyContentTypeEvent=true;this.set("selectedBodyType",ct);this._cancelBodyContentTypeEvent=false},_selectedBodyTypeChanged:function(selectedBodyType){if(this._cancelBodyContentTypeEvent||!selectedBodyType)return;this.fire("raml-docs-content-type-changed",{value:selectedBodyType})},
-reset:function(){this._setBodyTypes([]);this.set("selectedBodyType","");this._setIsJson(false);this._setIsXml(false)},_autoHide:function(autoHide,hasBody){if(!autoHide)return;var state=!hasBody;this.toggleAttribute("hidden",state)},_computeDisplayName:function(selectedBodyType,displayBodySelector,record){var body=record&&record.base;if(!body||!selectedBodyType)return"";var type=body.displayName||body.name||body.type;if(type===selectedBodyType&&displayBodySelector)return"";return type},_computeContentType:function(record){var type=
-record.base;var isXml=false;var isJson=false;var isFormUrlEncoded=false;if(!type){this._setIsJson(isJson);this._setIsXml(isXml);this._setIsFormUrlEncoded(isFormUrlEncoded);return}var mime;if(type.contentType)mime=type.contentType;else mime=type.key;if(!mime)mime="application/json";if(mime.indexOf("json")!==-1)isJson=true;else if(mime.indexOf("xml")!==-1)isXml=true;else if(mime.indexOf("x-www-form-urlencoded")!==-1)isFormUrlEncoded=true;else isJson=true;this._setIsJson(isJson);this._setIsXml(isXml);
-this._setIsFormUrlEncoded(isFormUrlEncoded)},_computeHasBody:function(body){return!!(body&&body.length)},_computeBodyTypes:function(){this.reset();var body=this.body;if(!body||!body.length)return;var mime=body.map(function(item){return item.key});this._setBodyTypes(mime)},_computeDisplayBodySelector:function(){var size=this.bodyTypes?this.bodyTypes.length:0;return!!(size&&size>1)},_computeSelectedBody:function(selectedBodyType){var body=this.body;if(!selectedBodyType||!body||!body.length)return undefined;
-for(var i=0,len=body.length;i<len;i++)if(body[i].key===selectedBodyType)return body[i];return undefined},_bodyTypesChanged:function(record){var bt;if(record&&record.base&&record.base.length)bt=record.base[0];this._cancelBodyContentTypeEvent=true;this.set("selectedBodyType",bt);this._cancelBodyContentTypeEvent=false},toggleOpened:function(){this.structureDisplayOpened=!this.structureDisplayOpened},_computeToggleClass:function(toggleOpened){var clazz="";if(toggleOpened)clazz+=" opened";return clazz}});</script></dom-module><script>console.warn("This file is deprecated. Please use `iron-flex-layout/iron-flex-layout-classes.html`, and one of the specific dom-modules instead");</script><style>html /deep/ .layout.horizontal,
+isUnionSelector:true,options:options}},_selectedUnionChanged:function(selectedUnion,model){if(!model||selectedUnion===undefined)return;model.forEach(function(item,i){if(!item.isProperyItem||item.dataParent===undefined)return;if(item.dataParent===selectedUnion){if(model[i].isHidden)this.set(["model",i,"isHidden"],false)}else if(!model[i].isHidden)this.set(["model",i,"isHidden"],true)},this)}})})();</script></dom-module><dom-module id="docs-xml-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="prism-theme-default"></style><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;}#content{display:none;}:host([has-type]) #content{display:block;}:host([has-type]) .no-type{display:none;}.no-type{@apply (--no-info-message);}</style><prism-highlighter></prism-highlighter><p class="no-type">This object doesn't have a type description.</p><div id="content"><template is="dom-if" if="[[!hasExamples]]" restamp=""><iron-collapse opened="[[structureDisplayOpened]]"><div><pre is="structure-display" display="[[schemaDisplay]]" class="language-xml" data-type="xml" auto-hide=""></pre></div></iron-collapse></template><template is="dom-if" if="[[hasExamples]]" restamp=""><iron-collapse opened="[[structureDisplayOpened]]"><div><paper-tabs class="schemas" selected="{{selectedSchemaPage}}"><paper-tab>Schema</paper-tab><paper-tab>Examples</paper-tab></paper-tabs><iron-pages selected="{{selectedSchemaPage}}"><div class="schema"><h5 hidden$="[[_computeSchemaTypeHidden(type)]]">Schema: [[_computeSchemaLabel(type)]]</h5><pre is="structure-display" display="[[schemaDisplay]]" class="language-xml" data-type="xml" auto-hide=""></pre></div><div class="examples"><template is="dom-repeat" items="[[examples]]"><example-display is-xml="" content="[[item]]"></example-display></template></div></iron-pages></div></iron-collapse></template></div></template><script>Polymer({is:"docs-xml-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,schemaDisplay:{type:String,computed:"_computeDisplay(type.*)"},hasType:{type:Boolean,computed:"_computeHasType(schemaDisplay)",value:false,notify:true,reflectToAttribute:true},examples:{type:Array,computed:"_computeExamples(type.*)"},selectedSchemaPage:{type:Number,value:0},narrow:{type:Boolean,reflectToAttribute:true},structureDisplayOpened:Boolean},_computeHasType:function(display){return!!display},
+_computeDisplay:function(record){var object=record.base;if(!object)return undefined;if(object.type==="xml")return object.content;if(object.schema&&object.schemaContent)return object.schemaContent;if(object.type&&typeof object.type==="string")return object.type;return undefined}});</script></dom-module><dom-module id="docs-form-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;}</style><template is="dom-if" if="[[hasParams]]"><div class="params-table"><div class="thead params-table-header"><section class="tr"><span class="th">Parameter</span> <span class="th">Type</span> <span class="th">Description</span></section></div><h5 class="narrow-title">Properties</h5><div class="tbody"><template is="dom-repeat" items="[[readProperties(type.formParameters)]]"><section class="tr"><div class="td param-name"><span class="name">[[item.name]]</span><template is="dom-if" if="[[item.required]]"><span class="required-label">(required)</span></template></div><div class="td param-type"><span class="type">[[item.type]]</span><template is="dom-if" if="[[hasValue(item.enum)]]"><span class="enum-label">(enum)</span></template></div><div class="td param-desc"><raml-type-property-description item="[[item]]"></raml-type-property-description></div></section></template></div></div></template></template><script>Polymer({is:"docs-form-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior],properties:{type:Object,hasParams:{type:Boolean,computed:"_computeHasParams(type.*)",value:false,notify:true,reflectToAttribute:true},narrow:{type:Boolean,reflectToAttribute:true}},_computeHasParams:function(record){if(!record.base)return false;var object=record.base;return!!(object.formParameters&&Object.keys(object.formParameters).length)}});</script></dom-module><dom-module id="docs-body-media-type-selector" assetpath="bower_components/docs-parameters-table/"><template><style>:host{display:block;@apply --docs-body-media-type-selector;}paper-listbox paper-item{cursor:pointer;}.body-selector{@apply --docs-body-media-type-selector-dropdown;}</style><paper-dropdown-menu label="Media type" class="body-selector"><paper-listbox class="dropdown-content" attr-for-selected="data-type" selected="{{mediaType}}"><template is="dom-repeat" items="[[availableMediaTypes]]"><paper-item data-type$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><script>Polymer({is:"docs-body-media-type-selector",properties:{body:Array,availableMediaTypes:{type:Array,computed:"_computeMediaTypes(body)"},mediaType:{type:String,notify:true},selectedType:{type:Object,computed:"_computeSelectedBody(body, mediaType)",notify:true}},observers:["_mediaTypesChanged(availableMediaTypes)","_mediaTypeChanged(mediaType)"],attached:function(){this.listen(window,"raml-docs-media-type-changed","_bodyMediaTypeHandler")},detached:function(){this.unlisten(window,"raml-docs-media-type-changed",
+"_bodyMediaTypeHandler")},_computeMediaTypes:function(body){if(!body||!body.length)return[];return body.map(function(item){return item.key})},_bodyMediaTypeHandler:function(e){if(e.target===this)return;this._cancelBodyContentTypeEvent=true;this.set("mediaType",e.detail.value);this._cancelBodyContentTypeEvent=false},_mediaTypeChanged:function(mediaType){if(this._cancelBodyContentTypeEvent||!mediaType)return;this.fire("raml-docs-media-type-changed",{value:mediaType})},_computeSelectedBody:function(body,
+mediaType){if(!mediaType||!body||!body.length)return undefined;for(var i=0,len=body.length;i<len;i++)if(body[i].key===mediaType)return body[i];return undefined},_mediaTypesChanged:function(types){var mediaType;if(types&&types.length)mediaType=types[0];this._cancelBodyContentTypeEvent=true;this.set("mediaType",mediaType);this._cancelBodyContentTypeEvent=false}});</script></dom-module><dom-module id="docs-body-parameters-table" assetpath="bower_components/docs-parameters-table/"><template><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;overflow:auto;width:100%;@apply (--docs-body-parameters-table);}h4{@apply (--docs-body-parameters-table-type-name);}paper-listbox paper-item{cursor:pointer;}.type-title{@apply (--layout-horizontal);@apply (--layout-center);}.type-title h4{@apply (--layout-flex);}.toggle-button{color:var(--docs-body-parameters-table-toggle-icon-color, rgba(0, 0, 0, 0.54));transform:rotateZ(0deg);transition:color 0.25s linear, transform 0.3s linear;@apply (--toggle-button);}.toggle-button.opened{transform:rotateZ(-180deg);}.toggle-button:hover{color:var(--docs-body-parameters-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));@apply (--toggle-button-hover);}*[hidden]{display:none !important;}.type-desc{margin-bottom:28px;color:rgba(0, 0, 0, 0.74);@apply (--arc-font-body1);@apply (--raml-docs-item-description);}</style><docs-body-media-type-selector hidden$="[[!renderMediaTypeSelector]]" selected-type="{{selectedType}}" body="[[body]]" media-type="{{selectedMediaType}}"></docs-body-media-type-selector><div class="type-title"><h4><span class="label">Type</span> <span class="value">[[typeName(selectedType)]]</span></h4><span hidden$="[[hideStructureToggle]]"><paper-icon-button class$="toggle-button[[_computeToggleClass(structureDisplayOpened)]]" icon="arc:expand-more" on-tap="toggleOpened"></paper-icon-button><paper-tooltip animation-delay="200" position="left">Toggle structure display</paper-tooltip></span></div><template is="dom-if" if="[[!isPrimitive]]" restamp=""><template is="dom-if" if="[[hasValue(selectedType.description)]]" restamp=""><div class="type-desc"><marked-element markdown="[[selectedType.description]]"><div class="markdown-html markdown-body"></div></marked-element></div></template></template><template is="dom-if" if="[[isObject]]" restamp=""><docs-json-parameters-table type="[[typeProperties(selectedType)]]" structure-display-opened="[[structureDisplayOpened]]" narrow="[[narrow]]"></docs-json-parameters-table></template><template is="dom-if" if="[[isJson]]" restamp=""><iron-collapse opened="[[structureDisplayOpened]]"><docs-json-structure-view type="[[selectedType]]" has-type="" narrow="[[narrow]]"></docs-json-structure-view></iron-collapse></template><template is="dom-if" if="[[isXml]]" restamp=""><docs-xml-parameters-table type="[[selectedType]]" structure-display-opened="[[structureDisplayOpened]]" narrow="[[narrow]]"></docs-xml-parameters-table></template><template is="dom-if" if="[[isPrimitive]]" restamp=""><iron-collapse opened="[[structureDisplayOpened]]"><raml-type-property-description item="[[selectedType]]" display-type=""></raml-type-property-description></iron-collapse></template><iron-media-query query="max-width: 640px" query-matches="{{narrow}}"></iron-media-query></template><script>Polymer({is:"docs-body-parameters-table",behaviors:[RamlBehaviors.DocsParametersBehavior,Polymer.RamlBehavior],properties:{body:Array,hasBody:{value:false,type:Boolean,computed:"_computeHasBody(body)",notify:true},renderMediaTypeSelector:{type:Boolean,computed:"_computeRenderMediaSelector(body)"},selectedType:Object,selectedMediaType:String,isObject:{type:Object,value:false,readOnly:true},isJson:{type:Object,value:false,readOnly:true},isXml:{type:Object,value:false,readOnly:true},isPrimitive:{type:Object,
+value:false,readOnly:true},structureDisplayOpened:{type:Boolean,value:true},narrow:Boolean,hideStructureToggle:Boolean},observers:["_computeType(selectedType)","_autoHide(autoHide, hasBody)"],_computeRenderMediaSelector:function(body){return!!(body&&body.length>1)},_computeHasBody:function(body){return!!(body&&body.length)},reset:function(){this._setIsObject(false);this._setIsJson(false);this._setIsXml(false);this._setIsPrimitive(false)},_autoHide:function(autoHide,hasBody){if(!autoHide)return;var state=
+!hasBody;this.toggleAttribute("hidden",state)},_computeType:function(type){this.reset();if(!type)return;switch(type.type){case "object":case "array":case "union":this._setIsObject(true);break;case "xml":this._setIsXml(true);break;case "json":this._setIsJson(true);break;default:if(!type.type&&type.schema)if(type.key.indexOf("json")!==-1)this._setIsJson(true);else if(type.key.indexOf("xml")!==-1)this._setIsXml(true);else this._setIsPrimitive(true);else if(type.type&&typeof type.type==="string"&&type.type[0]===
+"\x3c")this._setIsXml(true);else this._setIsPrimitive(true)}this.async(function(){this._computeHideStructureToggle()},1)},toggleOpened:function(){this.structureDisplayOpened=!this.structureDisplayOpened},_computeToggleClass:function(toggleOpened){var clazz="";if(toggleOpened)clazz+=" opened";return clazz},_computeHideStructureToggle:function(){var value=false;if(this.isObject)value=!this.$$("docs-json-parameters-table").hasType;else if(this.isXml)value=!this.$$("docs-xml-parameters-table").hasType;
+this.hideStructureToggle=value}});</script></dom-module><script>console.warn("This file is deprecated. Please use `iron-flex-layout/iron-flex-layout-classes.html`, and one of the specific dom-modules instead");</script><style>html /deep/ .layout.horizontal,
   html /deep/ .layout.horizontal-reverse,
   html /deep/ .layout.vertical,
   html /deep/ .layout.vertical-reverse{display:-ms-flexbox;display:-webkit-flex;display:flex;}html /deep/ .layout.inline{display:-ms-inline-flexbox;display:-webkit-inline-flex;display:inline-flex;}html /deep/ .layout.horizontal{-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row;}html /deep/ .layout.horizontal-reverse{-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse;}html /deep/ .layout.vertical{-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;}html /deep/ .layout.vertical-reverse{-ms-flex-direction:column-reverse;-webkit-flex-direction:column-reverse;flex-direction:column-reverse;}html /deep/ .layout.wrap{-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;}html /deep/ .layout-no-wrap{-ms-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;}html /deep/ .layout.wrap-reverse{-ms-flex-wrap:wrap-reverse;-webkit-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse;}html /deep/ .flex-auto{-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto;}html /deep/ .flex-none{-ms-flex:none;-webkit-flex:none;flex:none;}html /deep/ .flex,
@@ -1061,13 +1071,12 @@ for(var i=0,len=body.length;i<len;i++)if(body[i].key===selectedBodyType)return b
   .layout.center-center{-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}.layout.end-justified{-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;}.layout.around-justified{-ms-flex-pack:around;-webkit-justify-content:space-around;justify-content:space-around;}.layout.justified{-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}.self-start{-ms-align-self:flex-start;-webkit-align-self:flex-start;align-self:flex-start;}.self-center{-ms-align-self:center;-webkit-align-self:center;align-self:center;}.self-end{-ms-align-self:flex-end;-webkit-align-self:flex-end;align-self:flex-end;}.self-stretch{-ms-align-self:stretch;-webkit-align-self:stretch;align-self:stretch;}.block{display:block;}[hidden]{display:none !important;}.invisible{visibility:hidden !important;}.relative{position:relative;}.fit{position:absolute;top:0;right:0;bottom:0;left:0;}body.fullbleed{margin:0;height:100vh;}.scroll{-webkit-overflow-scrolling:touch;overflow:auto;}.fixed-bottom,
   .fixed-left,
   .fixed-right,
-  .fixed-top{position:fixed;}.fixed-top{top:0;left:0;right:0;}.fixed-right{top:0;right:0;bottom:0;}.fixed-bottom{right:0;bottom:0;left:0;}.fixed-left{top:0;bottom:0;left:0;}</style><dom-module id="paper-menu-shared-styles" assetpath="bower_components/paper-menu/"><template><style>.selectable-content > ::content > .iron-selected{font-weight:bold;@apply (--paper-menu-selected-item);}.selectable-content > ::content > [disabled]{color:var(--paper-menu-disabled-color, --disabled-text-color);}.selectable-content > ::content > *:focus{position:relative;outline:0;@apply (--paper-menu-focused-item);}.selectable-content > ::content > *:focus:after{@apply (--layout-fit);background:currentColor;opacity:var(--dark-divider-opacity);content:'';pointer-events:none;@apply (--paper-menu-focused-item-after);}.selectable-content > ::content > *[colored]:focus:after{opacity:0.26;}</style></template></dom-module><dom-module id="paper-menu" assetpath="bower_components/paper-menu/"><template><style include="paper-menu-shared-styles"></style><style>:host{display:block;padding:8px 0;background:var(--paper-menu-background-color, --primary-background-color);color:var(--paper-menu-color, --primary-text-color);@apply (--paper-menu);}</style><div class="selectable-content"><content></content></div></template><script>(function(){Polymer({is:"paper-menu",behaviors:[Polymer.IronMenuBehavior]})})();</script></dom-module><dom-module id="raml-docs-response-panel" assetpath="bower_components/raml-docs-response-panel/"><template><style include="markdown-styles"></style><style>:host{display:block;@apply (--raml-docs-response-panel);}.container{@apply (--layout-horizontal);@apply (--raml-docs-response-panel-container);}.codes{border-right:1px var(--raml-docs-response-panel-codes-border-color, rgba(0, 161, 223, 0.24)) solid;@apply (--raml-docs-response-panel-codes-content);}.docs{@apply (--layout-flex);@apply (--paper-font-body1);margin-left:16px;overflow:auto;@apply (--raml-docs-response-panel-docs-content);}.no-data-info{@apply (--no-info-message);}.codes paper-item{cursor:pointer;}.codes .green{color:var(--arc-status-code-color-200, rgba(56, 142, 60, 1));}.codes .green[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-200, rgba(56, 142, 60, 0.12));}.codes .blue{color:var(--arc-status-code-color-300, rgba(48, 63, 159, 1));}.codes .blue[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-300, rgba(48, 63, 159, 0.12));}.codes .orange{color:var(--arc-status-code-color-400, rgba(245, 124, 0, 1));}.codes .orange[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-400, rgba(245, 124, 0, 0.12));}.codes .red{color:var(--arc-status-code-color-500, rgba(211, 47, 47, 1));}.codes .red[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-500, rgba(211, 47, 47, 0.12));}.markdown-html,
-    docs-body-parameters-table{margin-right:12px;}</style><div class="container" hidden$="[[!hasResponses]]"><div class="codes"><paper-menu selected="{{selectedResponseStatus}}" selected-attribute="active"><template is="dom-repeat" items="[[responses]]"><paper-item class$="[[_computeCodeClass(item.code)]]">[[item.code]]</paper-item></template></paper-menu></div><div class="docs"><section><template is="dom-if" if="[[description]]"><marked-element markdown="[[description]]"><div class="markdown-html"></div></marked-element></template><p class="no-data-info" hidden$="[[description]]">No description provided.</p><docs-body-parameters-table hidden$="[[!_hasProperty(selectedResponse, 'body')]]" selected-body-type="{{selectedBodyType}}" body="[[selectedResponse.body]]"></docs-body-parameters-table></section></div></div></template><script>Polymer({is:"raml-docs-response-panel",properties:{responses:Array,hasResponses:{type:Boolean,notify:true,readOnly:true,value:false},selectedResponseStatus:{type:Number,value:0},selectedResponse:{type:Object,value:null,computed:"_computeSelectedResponse(selectedResponseStatus, responses.length)"},selectedBodyType:{type:Object,value:null},description:{type:String,value:"",computed:"_computeDescription(selectedResponse, selectedBodyType, selectedResponseStatus)"}},observers:["_responsesChanged(responses.*)"],
-_responsesChanged:function(){this.selectedResponseStatus=0;this.clear();var d=this.responses;this._setHasResponses(!!(d&&d.length));if(!this.hasResponses)return},clear:function(){this.bodyTypes=[]},_computeSelectedResponse:function(selectedResponseStatus,respSize){if(!selectedResponseStatus&&selectedResponseStatus!==0||!respSize)return;return this.responses[selectedResponseStatus]},_hasProperty:function(obj,property){if(!obj)return false;return property in obj},_computeCodeClass:function(code){code=
-Number(code);if(code!==code)return"";if(code>=200&&code<300)return"green";if(code>=300&&code<400)return"blue";if(code>=400&&code<500)return"orange";if(code>=500&&code<600)return"red"},_computeDescription:function(resp,bodyType){if(!resp)return null;if("description"in resp)return resp.description;if(bodyType&&resp.body&&resp.body.length)for(var i=0,len=resp.body.length;i<len;i++)if(resp.body[i].key===bodyType){if(resp.body[i].description)return resp.body[i].description;break}return null}});</script></dom-module><dom-module id="raml-docs-method-viewer" assetpath="bower_components/raml-docs-method-viewer/"><template><style include="markdown-styles"></style><style>:host{display:block;@apply (--raml-docs-method-viewer);}:host([hidden]){display:none !important;}h1{@apply (--arc-font-headline);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-h1);}h2{@apply (--arc-font-title);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-h2);}h3{@apply (--arc-font-subhead);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-h3);}.method-name{font-weight:var(--raml-docs-method-viewer-title-method-font-weight, 500);}.method-value{text-transform:uppercase;font-weight:var(--raml-docs-method-viewer-http-method-font-weight, 500);}.title-area{@apply (--layout-horizontal);@apply (--layout-center);}.title{@apply (--layout-flex);}.method-desc{margin-bottom:28px;color:rgba(0,0,0,0.74);@apply (--arc-font-body1);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-item-description);}.url-area{@apply (--layout-horizontal);@apply (--arc-font-body1);font-size:16px;margin-bottom:40px;color:var(--raml-docs-method-viewer-url-color, --accent-color);@apply (--raml-docs-method-viewer-content-section);}.url-value{font-style:var(--raml-docs-method-viewer-url-font-style, italic);margin-left:12px;word-break:break-all;@apply (--raml-docs-method-viewer-url);}.body-selector{margin:0 12px;}.action-button{background-color:var(--primary-color);color:var(--primary-action-color, #fff);@apply (--action-button);}.action-button:hover{@apply (--action-button-hover);}.bottom.action{@apply (--layout-horizontal);@apply (--layout-end-justified);}:host([narrow]) .container{max-width:var(--raml-docs-method-viewer-narrow-container-width, calc(100vw - 32px));overflow:auto;}:host([narrow]) docs-parameters-table,
+  .fixed-top{position:fixed;}.fixed-top{top:0;left:0;right:0;}.fixed-right{top:0;right:0;bottom:0;}.fixed-bottom{right:0;bottom:0;left:0;}.fixed-left{top:0;bottom:0;left:0;}</style><dom-module id="paper-menu-shared-styles" assetpath="bower_components/paper-menu/"><template><style>.selectable-content > ::content > .iron-selected{font-weight:bold;@apply (--paper-menu-selected-item);}.selectable-content > ::content > [disabled]{color:var(--paper-menu-disabled-color, --disabled-text-color);}.selectable-content > ::content > *:focus{position:relative;outline:0;@apply (--paper-menu-focused-item);}.selectable-content > ::content > *:focus:after{@apply (--layout-fit);background:currentColor;opacity:var(--dark-divider-opacity);content:'';pointer-events:none;@apply (--paper-menu-focused-item-after);}.selectable-content > ::content > *[colored]:focus:after{opacity:0.26;}</style></template></dom-module><dom-module id="paper-menu" assetpath="bower_components/paper-menu/"><template><style include="paper-menu-shared-styles"></style><style>:host{display:block;padding:8px 0;background:var(--paper-menu-background-color, --primary-background-color);color:var(--paper-menu-color, --primary-text-color);@apply (--paper-menu);}</style><div class="selectable-content"><content></content></div></template><script>(function(){Polymer({is:"paper-menu",behaviors:[Polymer.IronMenuBehavior]})})();</script></dom-module><dom-module id="raml-docs-response-status-selector" assetpath="bower_components/raml-docs-response-panel/"><template><style include="markdown-styles"></style><style>:host{border-right:1px var(--raml-docs-response-panel-codes-border-color, rgba(0, 161, 223, 0.24)) solid;@apply (--raml-docs-response-panel-codes-content);}paper-item{cursor:pointer;}paper-item[active]{font-weight:500;}.green{color:var(--arc-status-code-color-200, rgba(56, 142, 60, 1));}.green[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-200, rgba(56, 142, 60, 0.12));}.blue{color:var(--arc-status-code-color-300, rgba(48, 63, 159, 1));}.blue[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-300, rgba(48, 63, 159, 0.12));}.orange{color:var(--arc-status-code-color-400, rgba(245, 124, 0, 1));}.orange[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-400, rgba(245, 124, 0, 0.12));}.red{color:var(--arc-status-code-color-500, rgba(211, 47, 47, 1));}.red[active]:not([focused]){background-color:var(--arc-status-code-bgcolor-500, rgba(211, 47, 47, 0.12));}</style><paper-menu selected="{{selected}}" selected-attribute="active"><template is="dom-repeat" items="[[responses]]"><paper-item class$="[[_computeCodeClass(item.code)]]">[[item.code]]</paper-item></template></paper-menu></template><script>Polymer({is:"raml-docs-response-status-selector",properties:{responses:Array,selected:{type:Number,notify:true,value:0},selectedStatusCode:{type:Number,notify:true,computed:"_computeSelectedCode(responses, selected)"},selectedResponse:{type:Object,notify:true,computed:"_computeSelectedResponse(responses, selected)"}},observers:["_responsesChanged(responses)"],_responsesChanged:function(){this.selected=0},_computeSelectedResponse:function(responses,selected){if(typeof selected!=="number"||!responses)return;
+return responses[selected]},_computeSelectedCode:function(responses,selected){if(typeof selected!=="number"||!responses||!responses.length)return;return responses[selected].code},_computeCodeClass:function(code){code=Number(code);if(code!==code)return"";if(code>=200&&code<300)return"green";if(code>=300&&code<400)return"blue";if(code>=400&&code<500)return"orange";if(code>=500&&code<600)return"red"}});</script></dom-module><dom-module id="raml-docs-response-panel" assetpath="bower_components/raml-docs-response-panel/"><template><style include="markdown-styles"></style><style>:host{display:block;@apply (--raml-docs-response-panel);}h4{@apply (--raml-docs-response-panel-headers-title);}.container{@apply (--layout-horizontal);@apply (--raml-docs-response-panel-container);}.docs{@apply (--layout-flex);@apply (--paper-font-body1);margin-left:16px;overflow:auto;@apply (--raml-docs-response-panel-docs-content);}.no-data-info{@apply (--no-info-message);}</style><div class="container"><raml-docs-response-status-selector responses="[[responses]]" selected-response="{{selectedResponse}}" selected="{{selected}}"></raml-docs-response-status-selector><div class="docs"><section><template is="dom-if" if="[[selectedResponse.description]]"><marked-element markdown="[[selectedResponse.description]]"><div class="markdown-html"></div></marked-element></template><p class="no-data-info" hidden$="[[hasProperties]]">No description provided.</p><template is="dom-if" if="[[_hasProperty(selectedResponse, 'headers')]]"><h4 class="sub-title">Response headers</h4><docs-headers-table headers="[[selectedResponse.headers]]"></docs-headers-table></template><template is="dom-if" if="[[_hasProperty(selectedResponse, 'body')]]"><docs-body-parameters-table body="[[selectedResponse.body]]"></docs-body-parameters-table></template></section></div></div></template><script>Polymer({is:"raml-docs-response-panel",properties:{responses:Array,hasResponses:{type:Boolean,notify:true,readOnly:true,value:false,computed:"_computeHasResponses(responses)"},hasProperties:{type:Boolean,computed:"_computeHasProperties(selectedResponse)"},selected:Number},_computeHasResponses:function(responses){return!!(responses&&responses.length)},_hasProperty:function(obj,property){if(!obj)return false;return property in obj},_computeHasProperties:function(response){if(!response)return false;
+if(response.description)return true;if(response.body&&response.body.length)return true;return false}});</script></dom-module><dom-module id="raml-docs-method-viewer" assetpath="bower_components/raml-docs-method-viewer/"><template><style include="markdown-styles"></style><style>:host{display:block;@apply (--raml-docs-method-viewer);}:host([hidden]){display:none !important;}h1{@apply (--arc-font-headline);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-h1);}h2{@apply (--arc-font-title);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-h2);}h3{@apply (--arc-font-subhead);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-h3);}.method-name{font-weight:var(--raml-docs-method-viewer-title-method-font-weight, 500);}.method-value{text-transform:uppercase;font-weight:var(--raml-docs-method-viewer-http-method-font-weight, 500);}.title-area{@apply (--layout-horizontal);@apply (--layout-center);}.title{@apply (--layout-flex);}.method-desc{margin-bottom:28px;color:rgba(0,0,0,0.74);@apply (--arc-font-body1);@apply (--raml-docs-method-viewer-content-section);@apply (--raml-docs-item-description);}.url-area{@apply (--layout-horizontal);@apply (--arc-font-body1);font-size:16px;margin-bottom:40px;color:var(--raml-docs-method-viewer-url-color, --accent-color);@apply (--raml-docs-method-viewer-content-section);}.url-value{font-style:var(--raml-docs-method-viewer-url-font-style, italic);margin-left:12px;word-break:break-all;@apply (--raml-docs-method-viewer-url);}.body-selector{margin:0 12px;}.action-button{background-color:var(--primary-color);color:var(--primary-action-color, #fff);@apply (--action-button);}.action-button:hover{@apply (--action-button-hover);}.bottom.action{@apply (--layout-horizontal);@apply (--layout-end-justified);}:host([narrow]) .container{max-width:var(--raml-docs-method-viewer-narrow-container-width, calc(100vw - 32px));overflow:auto;}:host([narrow]) docs-parameters-table,
     :host([narrow]) docs-headers-table,
     :host([narrow]) docs-body-parameters-table,
-    :host([narrow]) raml-docs-response-panel{max-width:var(--raml-docs-method-viewer-narrow-container-width, calc(100vw - 32px));overflow:auto;}:host([narrow]) .title-area{margin-bottom:24px;}:host([narrow]) h1{font-size:20px;margin:0;}:host([narrow]) h2{font-size:18px;}:host([narrow]) h3{font-size:17px;}.section-title-area{@apply (--layout-horizontal);@apply (--layout-center);}.section-title-area h3{@apply (--layout-flex);}.toggle-button{color:var(--arc-toggle-view-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--toggle-button);}.toggle-button:hover{color:var(--arc-toggle-view-icon-hover-color, rgba(0, 0, 0, 0.78));@apply (--toggle-button-hover);}.toggle-icon{transform:rotateZ(0deg);transition:transform 0.3s linear;}.toggle-icon.opened{transform:rotateZ(-180deg);}.title-area-actions{@apply (--raml-docs-method-viewer-title-area-actions);}.traits-list{@apply (--arc-font-body1);margin-bottom:8px;color:var(--raml-docs-method-viewer-traits-list-color, rgba(0,0,0,0.74));@apply (--raml-docs-method-viewer-traits-list);}.trait-value{color:var(--raml-docs-method-viewer-traits-list-values-color, rgba(0,0,0,0.94));@apply (--raml-docs-method-viewer-traits-list-values);}.trait-label{color:var(--raml-docs-method-viewer-traits-list-label-color, inherit);@apply (--raml-docs-method-viewer-traits-list-label);}raml-annotations-display{color:rgba(0,0,0,0.74);margin-bottom:12px;}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><section class="container"><div class="title-area"><h1 class="title"><span>[[parentName]]</span> <span hidden$="[[!parentName]]">:</span> <span class="method-name">[[methodName]]</span></h1><template is="dom-if" if="[[!noTryIt]]"><div class="action"><paper-button class="action-button" on-tap="_tryIt">Try it</paper-button></div></template></div><template is="dom-if" if="[[hasTraits]]"><div class="traits-list"><span class="trait-label">Traits:</span> <span class="trait-value">[[_computeTraitsList(raml.is)]]</span></div></template><template is="dom-if" if="[[hasValue(raml.annotations)]]"><raml-annotations-display annotations="[[raml.annotations]]"></raml-annotations-display></template><div hidden$="[[_computeHideMethodDesc(raml.description)]]" class="method-desc"><marked-element markdown="[[raml.description]]"><div class="markdown-html markdown-body"></div></marked-element></div><section class="request-doc"><h2>Request</h2><div class="url-area"><div class="method-value">[[raml.method]]</div><div class="url-value">[[raml.absoluteUri]]</div></div><section hidden$="[[!hasParameters]]"><div class="section-title-area"><h3>Parameters</h3><div class="title-area-actions"><paper-button data-section="parameters" on-tap="_toggleCollapseSection" class="toggle-button" title="Toogle parameters details">[[_computeToggleActionLabel(parametersOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(parametersOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[parametersOpened]]"><docs-parameters-table uri-parameters="[[raml.allUriParameters]]" query-parameters="[[raml.queryParameters]]" has-parameters="{{hasParameters}}" narrow="[[narrow]]" auto-hide=""></docs-parameters-table></iron-collapse></section><section hidden$="[[!hasHeaders]]"><div class="section-title-area"><h3>Headers</h3><div class="title-area-actions"><paper-button data-section="headers" on-tap="_toggleCollapseSection" class="toggle-button" title="Toogle headers details">[[_computeToggleActionLabel(headersOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(headersOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[headersOpened]]"><docs-headers-table has-headers="{{hasHeaders}}" headers="[[raml.headers]]" auto-hide=""></docs-headers-table></iron-collapse></section><section hidden$="[[!hasBody]]"><div class="section-title-area"><h3>Body</h3><div class="title-area-actions"><paper-button data-section="body" on-tap="_toggleCollapseSection" class="toggle-button" title="Toogle body details">[[_computeToggleActionLabel(bodyOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(bodyOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[bodyOpened]]"><docs-body-parameters-table body="[[raml.body]]" narrow="[[narrow]]"></docs-body-parameters-table></iron-collapse></section></section><section class="response-doc" hidden$="[[!hasResponses]]"><h2>Response</h2><raml-docs-response-panel has-responses="{{hasResponses}}" responses="[[raml.responses]]"></raml-docs-response-panel></section><template is="dom-if" if="[[!noTryIt]]"><div class="bottom action"><paper-button class="action-button" on-tap="_tryIt">Try it</paper-button></div></template></section></template><script>Polymer({is:"raml-docs-method-viewer",behaviors:[Polymer.RamlBehavior],properties:{parentEndpoint:{type:Object,value:false},hasBody:{value:false,type:Boolean,computed:"_computeHasBody(raml.body)"},parentName:{type:String,value:null,computed:"_computeParentName(parentEndpoint.*)"},methodName:{type:String,computed:"_computeMethodName(raml.*)"},hasParameters:Boolean,hasResponses:Boolean,hasTraits:{type:Boolean,readOnly:true},autoHide:{type:Boolean,observer:"_autoHideChanged"},hidden:{type:Boolean,reflectToAttribute:true},
+    :host([narrow]) raml-docs-response-panel{max-width:var(--raml-docs-method-viewer-narrow-container-width, calc(100vw - 32px));overflow:auto;}:host([narrow]) .title-area{margin-bottom:24px;}:host([narrow]) h1{font-size:20px;margin:0;}:host([narrow]) h2{font-size:18px;}:host([narrow]) h3{font-size:17px;}.section-title-area{@apply (--layout-horizontal);@apply (--layout-center);border-bottom:1px var(--raml-docs-resource-viewer-title-border-color, #e5e5e5) solid;}.section-title-area h3{@apply (--layout-flex);}.toggle-button{color:var(--arc-toggle-view-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--toggle-button);}.toggle-button:hover{color:var(--arc-toggle-view-icon-hover-color, rgba(0, 0, 0, 0.78));@apply (--toggle-button-hover);}.toggle-icon{transform:rotateZ(0deg);transition:transform 0.3s linear;}.toggle-icon.opened{transform:rotateZ(-180deg);}.title-area-actions{@apply (--raml-docs-method-viewer-title-area-actions);}.traits-list{@apply (--arc-font-body1);margin-bottom:8px;color:var(--raml-docs-method-viewer-traits-list-color, rgba(0,0,0,0.74));@apply (--raml-docs-method-viewer-traits-list);}.trait-value{color:var(--raml-docs-method-viewer-traits-list-values-color, rgba(0,0,0,0.94));@apply (--raml-docs-method-viewer-traits-list-values);}.trait-label{color:var(--raml-docs-method-viewer-traits-list-label-color, inherit);@apply (--raml-docs-method-viewer-traits-list-label);}raml-annotations-display{color:rgba(0,0,0,0.74);margin-bottom:12px;}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><section class="container"><div class="title-area"><h1 class="title"><span>[[parentName]]</span> <span hidden$="[[!parentName]]">:</span> <span class="method-name">[[methodName]]</span></h1><template is="dom-if" if="[[!noTryIt]]"><div class="action"><paper-button class="action-button" on-tap="_tryIt">Try it</paper-button></div></template></div><template is="dom-if" if="[[hasTraits]]"><div class="traits-list"><span class="trait-label">Traits:</span> <span class="trait-value">[[_computeTraitsList(raml.is)]]</span></div></template><template is="dom-if" if="[[hasValue(raml.annotations)]]"><raml-annotations-display annotations="[[raml.annotations]]"></raml-annotations-display></template><div hidden$="[[_computeHideMethodDesc(raml.description)]]" class="method-desc"><marked-element markdown="[[raml.description]]"><div class="markdown-html markdown-body"></div></marked-element></div><section class="request-doc"><h2>Request</h2><div class="url-area"><div class="method-value">[[raml.method]]</div><div class="url-value">[[raml.absoluteUri]]</div></div><section hidden$="[[!hasParameters]]"><div class="section-title-area"><h3>Parameters</h3><div class="title-area-actions"><paper-button data-section="parameters" on-tap="_toggleCollapseSection" class="toggle-button" title="Toogle parameters details">[[_computeToggleActionLabel(parametersOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(parametersOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[parametersOpened]]"><docs-parameters-table uri-parameters="[[raml.allUriParameters]]" query-parameters="[[raml.queryParameters]]" has-parameters="{{hasParameters}}" narrow="[[narrow]]" auto-hide=""></docs-parameters-table></iron-collapse></section><section hidden$="[[!hasHeaders]]"><div class="section-title-area"><h3>Headers</h3><div class="title-area-actions"><paper-button data-section="headers" on-tap="_toggleCollapseSection" class="toggle-button" title="Toogle headers details">[[_computeToggleActionLabel(headersOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(headersOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[headersOpened]]"><docs-headers-table has-headers="{{hasHeaders}}" headers="[[raml.headers]]" auto-hide=""></docs-headers-table></iron-collapse></section><section hidden$="[[!hasBody]]"><div class="section-title-area"><h3>Body</h3><div class="title-area-actions"><paper-button data-section="body" on-tap="_toggleCollapseSection" class="toggle-button" title="Toogle body details">[[_computeToggleActionLabel(bodyOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(bodyOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[bodyOpened]]"><docs-body-parameters-table body="[[raml.body]]" narrow="[[narrow]]"></docs-body-parameters-table></iron-collapse></section></section><section class="response-doc" hidden$="[[!hasResponses]]"><h2>Response</h2><raml-docs-response-panel has-responses="{{hasResponses}}" responses="[[raml.responses]]"></raml-docs-response-panel></section><template is="dom-if" if="[[!noTryIt]]"><div class="bottom action"><paper-button class="action-button" on-tap="_tryIt">Try it</paper-button></div></template></section></template><script>Polymer({is:"raml-docs-method-viewer",behaviors:[Polymer.RamlBehavior],properties:{parentEndpoint:{type:Object,value:false},hasBody:{value:false,type:Boolean,computed:"_computeHasBody(raml.body)"},parentName:{type:String,value:null,computed:"_computeParentName(parentEndpoint.*)"},methodName:{type:String,computed:"_computeMethodName(raml.*)"},hasParameters:Boolean,hasResponses:Boolean,hasTraits:{type:Boolean,readOnly:true},autoHide:{type:Boolean,observer:"_autoHideChanged"},hidden:{type:Boolean,reflectToAttribute:true},
 noTryIt:{type:Boolean,value:false},narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},parametersOpened:{type:Boolean,value:true},headersOpened:{type:Boolean,value:true},bodyOpened:{type:Boolean,value:true}},observers:["_objectChanged(raml.*)"],attached:function(){this._eventTarget=Polymer.dom(this).host||document;if(this.autoHide)this._attacheListeners();this.listen(window,"tryit-toggle","_toggleTryitHandler")},detached:function(){this.unlisten(window,
 "tryit-toggle","_toggleTryitHandler")},_autoHideChanged:function(state){if(state===undefined)return;if(state)this._attacheListeners();else this._detachListeners()},_attacheListeners:function(){if(!this._eventTarget){this.hidden=true;return}this._detachListeners();this.listen(this._eventTarget,"raml-is-method-changed","_isMethodHandler");this.listen(this._eventTarget,"raml-selected-object-changed","_selectedChangeHandler");this.listen(this._eventTarget,"raml-selected-parent-changed","_selectedParentChangeHandler")},
 _detachListeners:function(){if(!this._eventTarget)return;this.unlisten(this._eventTarget,"raml-is-method-changed","_isMethodHandler");this.unlisten(this._eventTarget,"raml-selected-object-changed","_selectedChangeHandler");this.unlisten(this._eventTarget,"raml-selected-parent-changed","_selectedParentChangeHandler")},_objectChanged:function(record){var raml=record&&record.base;if(!raml){this._setHasTraits(false);return}if(raml.is&&raml.is.length)this._setHasTraits(true);else this._setHasTraits(false)},
@@ -1080,7 +1089,7 @@ detail){var state=detail.state;this.hidden=!state},_selectedChangeHandler:functi
 this.domHost?this.domHost.$[scrollTarget]:Polymer.dom(this.ownerDocument).querySelector("#"+scrollTarget);else if(this._isValidScrollTarget()){this._boundScrollHandler=this._boundScrollHandler||this._scrollHandler.bind(this);this._oldScrollTarget=scrollTarget;this._toggleScrollListener(this._shouldHaveListener,scrollTarget)}},_scrollHandler:function scrollHandler(){},get _defaultScrollTarget(){return this._doc},get _doc(){return this.ownerDocument.documentElement},get _scrollTop(){if(this._isValidScrollTarget())return this.scrollTarget===
 this._doc?window.pageYOffset:this.scrollTarget.scrollTop;return 0},get _scrollLeft(){if(this._isValidScrollTarget())return this.scrollTarget===this._doc?window.pageXOffset:this.scrollTarget.scrollLeft;return 0},set _scrollTop(top){if(this.scrollTarget===this._doc)window.scrollTo(window.pageXOffset,top);else if(this._isValidScrollTarget())this.scrollTarget.scrollTop=top},set _scrollLeft(left){if(this.scrollTarget===this._doc)window.scrollTo(left,window.pageYOffset);else if(this._isValidScrollTarget())this.scrollTarget.scrollLeft=
 left},scroll:function(left,top){if(this.scrollTarget===this._doc)window.scrollTo(left,top);else if(this._isValidScrollTarget()){this.scrollTarget.scrollLeft=left;this.scrollTarget.scrollTop=top}},get _scrollTargetWidth(){if(this._isValidScrollTarget())return this.scrollTarget===this._doc?window.innerWidth:this.scrollTarget.offsetWidth;return 0},get _scrollTargetHeight(){if(this._isValidScrollTarget())return this.scrollTarget===this._doc?window.innerHeight:this.scrollTarget.offsetHeight;return 0},
-_isValidScrollTarget:function(){return this.scrollTarget instanceof HTMLElement},_toggleScrollListener:function(yes,scrollTarget){if(!this._boundScrollHandler)return;var eventTarget=scrollTarget===this._doc?window:scrollTarget;if(yes)eventTarget.addEventListener("scroll",this._boundScrollHandler);else eventTarget.removeEventListener("scroll",this._boundScrollHandler)},toggleScrollListener:function(yes){this._shouldHaveListener=yes;this._toggleScrollListener(yes,this.scrollTarget)}};</script><dom-module id="raml-docs-resource-viewer" assetpath="bower_components/raml-docs-resource-viewer/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;@apply (--raml-docs-resource-viewer);--paper-tabs-selection-bar-color:var(--params-table-header-background-color, #00A1DF);--paper-tab-ink:var(--params-table-header-background-color, #00A1DF);--paper-tab:{flex:initial;};--content-section:{padding:8px 12px;};}:host([hidden]){display:none !important;}h1{@apply (--arc-font-headline);@apply (--content-section);@apply (--raml-docs-h1);}h2{@apply (--arc-font-title);@apply (--content-section);@apply (--raml-docs-h2);}h3{@apply (--paper-font-subhead);@apply (--content-section);@apply (--raml-docs-h3);}.resource-name{font-weight:500;}.resource-desc{@apply (--arc-font-body1);@apply (--content-section);@apply (--raml-docs-item-description);}.type-block{@apply (--content-section);}.params-table,
+_isValidScrollTarget:function(){return this.scrollTarget instanceof HTMLElement},_toggleScrollListener:function(yes,scrollTarget){if(!this._boundScrollHandler)return;var eventTarget=scrollTarget===this._doc?window:scrollTarget;if(yes)eventTarget.addEventListener("scroll",this._boundScrollHandler);else eventTarget.removeEventListener("scroll",this._boundScrollHandler)},toggleScrollListener:function(yes){this._shouldHaveListener=yes;this._toggleScrollListener(yes,this.scrollTarget)}};</script><dom-module id="raml-docs-resource-viewer" assetpath="bower_components/raml-docs-resource-viewer/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;@apply (--raml-docs-resource-viewer);--paper-tabs-selection-bar-color:var(--params-table-header-background-color, #00A1DF);--paper-tab-ink:var(--params-table-header-background-color, #00A1DF);--paper-tab:{flex:initial;};--content-section:{padding:8px 12px;@apply (--raml-docs-resource-viewer-content-section);};}:host([hidden]){display:none !important;}h1{@apply (--arc-font-headline);@apply (--content-section);@apply (--raml-docs-h1);}h2{@apply (--arc-font-title);@apply (--content-section);@apply (--raml-docs-h2);}h3{@apply (--paper-font-subhead);@apply (--content-section);@apply (--raml-docs-h3);}.resource-name{font-weight:500;}.resource-desc{@apply (--arc-font-body1);@apply (--content-section);@apply (--raml-docs-item-description);}.type-block{@apply (--content-section);}.params-table,
     docs-body-parameters-table{max-width:var(--raml-docs-table-max-width, 800px);}.sub-resources-list{@apply (--content-section);}a{color:var(--raml-docs-link-color, #00A1DF);@apply (--raml-docs-link);}.container{@apply (--layout-horizontal);@apply (--raml-docs-resource-viewer-container);}.main{@apply (--layout-flex);overflow:auto;@apply (--raml-docs-resource-viewer-content);}nav{width:210px;min-height:160px;border-left:1px #e5e5e5 solid;padding-left:12px;margin:12px 0;position:relative;display:none;@apply (--raml-docs-resource-viewer-navigation);}[wide-layout] nav{display:block;@apply (--raml-docs-resource-viewer-navigation-wide-layout);}#nav-links{position:absolute;@apply (--sidebar-list);}#nav-links a{display:block;padding:8px 12px;margin:8px 0;@apply (--sidebar-list-link);}#nav-links a:hover{@apply (--sidebar-list-link-hover);}:host([narrow]) .container{max-width:var(--raml-docs-resource-viewer-narrow-container-width, calc(100vw - 32px));overflow:auto;}.section-title-area{@apply (--layout-horizontal);@apply (--layout-center);border-bottom:1px var(--raml-docs-resource-viewer-title-border-color, #e5e5e5) solid;}.section-title-area h2{@apply (--layout-flex);}.toggle-button{color:var(--response-status-view-toggle-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--toggle-button);}.toggle-icon{transform:rotateZ(0deg);transition:transform 0.3s linear;}.toggle-icon.opened{transform:rotateZ(-180deg);}.toggle-button:hover{color:var(--response-status-view-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));@apply (--toggle-button-hover);}.title-area-actions{@apply (--raml-docs-method-viewer-title-area-actions);}.traits-list,
     .resource-types-list{margin-bottom:8px;color:var(--raml-docs-method-viewer-traits-list-color, rgba(0,0,0,0.74));padding:var(--raml-docs-method-viewer-traits-list-padding, 0px 12px);@apply (--raml-docs-method-viewer-traits-list);}.trait-value,
     .resource-types-value{color:var(--raml-docs-method-viewer-traits-list-values-color, rgba(0,0,0,0.94));@apply (--raml-docs-method-viewer-traits-list-values);}.trait-label,
@@ -1100,31 +1109,142 @@ if(top<24){var _top=Math.abs(top)+24;elm.style.top=_top+"px"}else elm.style.remo
 "object"&&a&&(typeof b==="object"&&b)){var keysA=Object.keys(a);var keysB=Object.keys(b);var keyAlength=keysA.length;var keyBlength=keysB.length;if(keyAlength!==keyBlength)return false;for(i=0;i<keyAlength;i++){var prop=keysA[i];if(!b.hasOwnProperty(prop))return false;if(!this.deepEqual(a[prop],b[prop]))return false}return true}else if(a instanceof Array&&b instanceof Array){var aLength=a.length;var bLength=b.length;if(aLength!==bLength)return false;for(i=0;i<aLength;i++)if(!this.deepEqual(a[i],b[i]))return false;
 return true}else if(a!==b)return false;return true}});</script></dom-module><dom-module id="url-label" assetpath="bower_components/raml-summary-view/"><template><style>:host{@apply (--arc-font-body1);font-size:inherit;}.content{@apply (--layout-horizontal);@apply (--layout-center);height:42px;}div[hidden]{display:none !important;}.variable{font-weight:500;font-style:italic;}.variable:before{content:"\007B";}.variable:after{content:"\007D";}.part{font-weight:400;}</style><div class="content" on-opened-changed="_test"><template is="dom-repeat" items="[[parts]]"><div class$="[[_computeClass(item.variable)]]" id$="uri-part[[index]]">[[item.value]]</div><template is="dom-if" if="[[item.variable]]"><paper-tooltip for="uri-part[[index]]">This is a URI variable.</paper-tooltip></template></template></div></template><script>Polymer({is:"url-label",properties:{url:{type:String,observer:"_urlChanged"},parts:{type:Array,readOnly:true},uriParameters:Array},observers:["_computePartsMeta(parts, uriParameters)"],_computePartsMeta:function(parts,params){if(!parts||!parts.length||!params||!params.length)return;for(var i=0,len=parts.length;i<len;i++){if(!parts[i].variable)continue;var index=this._getVariableIndex(parts[i].key,params);if(index===-1)continue;this.set(["parts",i,"meta"],params[index])}},_urlChanged:function(url){if(!url)return this._setParts(undefined);
 var parts=[];var index;while((index=url.indexOf("{"))!==-1){var end=url.indexOf("}");var before=url.substr(0,index);var part=url.substr(index+1,end-index-1);url=url.substr(end+1);if(before)parts.push({value:before,variable:false});if(part)parts.push({value:part,variable:true,key:part})}if(url)parts.push({value:url,variable:false});this._setParts(parts)},_computeClass:function(isVariable){return isVariable?"variable":"part"},_getVariableIndex:function(variable,variables){var result=-1;variables=variables||
-this.uriParameters;if(!variables||!variables.length)return result;for(var i=0,len=variables.length;i<len;i++)if(variables[i].key===variable){result=i;break}return result}});</script></dom-module><dom-module id="raml-summary-view" assetpath="bower_components/raml-summary-view/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;@apply (--raml-summary-view);}:host([hidden]){display:none;}h1{@apply (--arc-font-title);@apply (--raml-summary-view-title);}h4{@apply (--arc-font-body1);margin:8px 0;color:rgba(0, 0, 0, 0.87);font-weight:500;@apply (--raml-summary-view-uri-section-title);}p.simple-desc{margin:8px 0;@apply (--arc-font-body1);@apply (--raml-summary-view-property);}.simple-desc > label{margin-right:4px;color:var(--raml-summary-view-description-label-color, rgba(0, 0, 0, 0.74));}.simple-desc > span{color:var(--raml-summary-view-description-value-color, rgba(0, 0, 0, 0.94));}.api-description{margin:20px 0;color:var(--raml-summary-view-description-color, rgba(0, 0, 0, 0.74));@apply (--arc-font-body1);font-size:15px;max-width:var(--raml-summary-view-description-max-width, 700px);@apply (--raml-summary-view-property);}.url-info{margin-top:var(--raml-summary-view-uri-section-margin-top, 24px);}url-label{font-size:var(--raml-summary-view-base-uri-font-size, 16px);@apply (--raml-summary-view-base-uri);}.section-title-area{@apply (--layout-horizontal);@apply (--layout-center);border-bottom:1px var(--raml-summary-view-title-border-color, #e5e5e5) solid;}.section-title-area h4{@apply (--layout-flex);}.toggle-button{color:var(--raml-summary-view-toggle-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--toggle-button);}.toggle-icon{transform:rotateZ(0deg);transition:transform 0.3s linear;}.toggle-icon.opened{transform:rotateZ(-180deg);}.toggle-button:hover{color:var(--raml-summary-view-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));@apply (--toggle-button-hover);}.title-area-actions{@apply (--raml-summary-view-title-area-actions);}.structure-info{max-width:var(--raml-docs-table-max-width, 800px);}.sub-resources-list{margin-top:12px;}a{color:var(--raml-docs-link-color, #00A1DF);@apply (--raml-docs-link);}*[hidden]{display:none;}</style><h1>[[raml.title]]</h1><p class="simple-desc" hidden$="[[isEmpty(raml.version)]]"><label>Version:</label><span>[[raml.version]]</span></p><p class="simple-desc" hidden$="[[isEmpty(raml.mediaType)]]"><label>Supported media type:</label><span>[[_displayArray(raml.mediaType)]]</span></p><p class="simple-desc" hidden$="[[isEmpty(raml.protocols)]]"><label>Supported protocols:</label><span>[[_displayArray(raml.protocols)]]</span></p><div hidden$="[[isEmpty(raml.description)]]" class="api-description"><marked-element markdown="[[raml.description]]"><div class="markdown-html markdown-body"></div></marked-element></div><section class="url-info"><h4>API base URI</h4><url-label url="[[raml.baseUri]]" uri-parameters="[[raml.baseUriParameters]]"></url-label></section><section class="structure-info" hidden$="[[!hasResources]]"><div class="section-title-area"><h4>API resources</h4><div class="title-area-actions"><paper-button on-tap="toggleMethodsCollapse" class="toggle-button" title="Toogle resources details">[[_computeToggleActionLabel(methodsOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(methodsOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[methodsOpened]]"><div class="sub-resources-list"><div class="params-table" id="substable"><div class="tbody"><template is="dom-repeat" items="[[resources]]"><section class="tr"><div class="param-name td"><a href="#" data-path$="[[item.path]]">[[item.meta.name]]</a></div><div class="param-desc td">[[item.meta.description]]</div></section></template></div></div></div></iron-collapse></section></template><script>Polymer({is:"raml-summary-view",behaviors:[Polymer.RamlBehavior],properties:{currentPath:String,methodsOpened:{type:Boolean,value:true},resources:{type:Array,readOnly:true},hasResources:{type:Boolean,value:false,computed:"_computeHasResources(resources)"}},observers:["_computeResources(raml, currentPath)"],listeners:{"substable.tap":"_subResourceTap"},_displayArray:function(arr){if(!arr||!arr.length)return"";if(!(arr instanceof Array))return arr;return arr.join(", ")},_computeHasResources:function(model){return!!(model&&
-model.length)},_computeResources:function(raml,currentPath){if(!raml||!raml.resources||!currentPath){this._setResources(undefined);return}var resources=[];raml.resources.forEach(function(resource,i){resources[resources.length]={path:currentPath+".resources."+i,meta:{name:resource.displayName||resource.relativeUri,description:resource.description}}});if(resources.length===0)resources=undefined;this._setResources(resources)},_computeToggleIconClass:function(opened){var clazz="toggle-icon";if(opened)clazz+=
-" opened";return clazz},_computeToggleActionLabel:function(opened){return opened?"Hide":"Show"},toggleMethodsCollapse:function(){this.methodsOpened=!this.methodsOpened},_subResourceTap:function(e){e.preventDefault();e.stopPropagation();var path=e.target.dataset.path;if(!path)return;this.fire("raml-path-changed",{path:path})}});</script></dom-module><dom-module id="raml-docs-types-viewer" assetpath="bower_components/raml-docs-types-viewer/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;}h2{@apply (--arc-font-headline);@apply (--raml-docs-h1);}h2 .value{font-weight:var(--raml-docs-types-viewer-title-type-font-weight, 500);margin-left:8px;}.type-desc{margin-bottom:28px;color:rgba(0, 0, 0, 0.74);@apply (--arc-font-body1);@apply (--raml-docs-types-viewer-content-section);@apply (--raml-docs-item-description);}</style><h2><span class="label">Type</span> <span class="value">[[_computeTypeName(type)]]</span></h2><template is="dom-if" if="[[!isPrimitive]]" restamp=""><template is="dom-if" if="[[_computeHasValue(type.description)]]" restamp=""><div class="type-desc"><marked-element markdown="[[type.description]]"><div class="markdown-html markdown-body"></div></marked-element></div></template></template><template is="dom-if" if="[[isObject]]" restamp=""><docs-json-parameters-table type="[[_computeTypeProperties(type)]]" structure-display-opened="" narrow="[[narrow]]"></docs-json-parameters-table></template><template is="dom-if" if="[[isJson]]" restamp=""><docs-json-structure-view type="[[type]]" structure-display-opened="" has-type="" narrow="[[narrow]]"></docs-json-structure-view></template><template is="dom-if" if="[[isXml]]" restamp=""><docs-xml-parameters-table type="[[type]]" structure-display-opened="" narrow="[[narrow]]"></docs-xml-parameters-table></template><template is="dom-if" if="[[isPrimitive]]" restamp=""><raml-type-property-description item="[[type]]" display-type=""></raml-type-property-description></template><iron-media-query query="max-width: 640px" query-matches="{{narrow}}"></iron-media-query></template><script>Polymer({is:"raml-docs-types-viewer",properties:{type:Object,narrow:Boolean,isObject:{type:Object,value:false,readOnly:true},isJson:{type:Object,value:false,readOnly:true},isXml:{type:Object,value:false,readOnly:true},isPrimitive:{type:Object,value:false,readOnly:true}},observers:["_computeType(type)"],reset:function(){this._setIsObject(false);this._setIsJson(false);this._setIsXml(false);this._setIsPrimitive(false)},_computeType:function(obj){this.reset();if(!obj)return;var type=obj.type;switch(type){case "object":case "array":this._setIsObject(true);
-break;case "xml":this._setIsXml(true);break;case "json":this._setIsJson(true);break;default:this._setIsPrimitive(true)}},_computeTypeName:function(type){if(!type)return;return type.displayName||type.name||type.key||undefined},_computeTypeProperties:function(type){if(!type)return;if(type.properties)if(!(type.properties instanceof Array)){var names=Object.getOwnPropertyNames(type.properties);var properties=[];names.forEach(function(name){var item=type.properties[name];item.key=name;properties.push(item)});
-type.properties=properties}return type},_computeHasValue:function(obj){var type=typeof obj;if(type==="number"&&obj===0)return true;if(type==="boolean")return true;if(type==="string"&&obj==="")return true;return!!obj}});</script></dom-module><dom-module id="raml-documentation-panel" assetpath="bower_components/raml-documentation-panel/"><template><style>:host{display:block;height:100%;@apply (--raml-documentation-panel);}.docs-content{max-width:var(--raml-docs-main-content-width, 900px);@apply (--layout-flex);@apply (--raml-docs-main-content);}.docs-content raml-docs-documentation-viewer{max-width:var(--raml-docs-documentation-width, 700px);}.no-selection,
-    .docs-content{height:100%;}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><div class="docs-content"><template is="dom-if" if="[[isMethod]]"><raml-docs-method-viewer parent-endpoint="[[selectedParent]]" raml="[[selectedObject]]" narrow="[[narrow]]" no-try-it="[[noTryIt]]"></raml-docs-method-viewer></template><template is="dom-if" if="[[isResource]]"><raml-docs-resource-viewer raml="[[selectedObject]]" current-path="{{path}}" narrow="[[narrow]]" scroll-target="[[scrollTarget]]"></raml-docs-resource-viewer></template><template is="dom-if" if="[[isDocumentation]]"><raml-docs-documentation-viewer documentation="[[selectedObject]]" narrow="[[narrow]]"></raml-docs-documentation-viewer></template><template is="dom-if" if="[[isSummary]]"><raml-summary-view current-path="{{path}}" raml="[[selectedObject]]"></raml-summary-view></template><template is="dom-if" if="[[isType]]"><raml-docs-types-viewer type="[[selectedObject]]" narrow="[[narrow]]"></raml-docs-types-viewer></template></div></template><script>Polymer({is:"raml-documentation-panel",properties:{path:{type:String,notify:true,observer:"_pathChanged"},selectedObject:Object,selectedParent:Object,narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},isMethod:{type:Boolean,readOnly:true,value:false},isResource:{type:Boolean,readOnly:true,value:false},isDocumentation:{type:Boolean,readOnly:true,value:false},isSummary:{type:Boolean,readOnly:true,value:false},isType:{type:Boolean,readOnly:true,value:false},
+this.uriParameters;if(!variables||!variables.length)return result;for(var i=0,len=variables.length;i<len;i++)if(variables[i].key===variable){result=i;break}return result}});</script></dom-module><dom-module id="raml-summary-view" assetpath="bower_components/raml-summary-view/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;@apply (--raml-summary-view);}:host([hidden]){display:none;}h1{@apply (--arc-font-title);@apply (--raml-summary-view-title);}h4{@apply (--arc-font-body1);margin:8px 0;color:rgba(0, 0, 0, 0.87);font-weight:500;@apply (--raml-summary-view-uri-section-title);}p.simple-desc{margin:8px 0;@apply (--arc-font-body1);@apply (--raml-summary-view-property);}.simple-desc > label{margin-right:4px;color:var(--raml-summary-view-description-label-color, rgba(0, 0, 0, 0.74));}.simple-desc > span{color:var(--raml-summary-view-description-value-color, rgba(0, 0, 0, 0.94));}.api-description{margin:20px 0;color:var(--raml-summary-view-description-color, rgba(0, 0, 0, 0.74));@apply (--arc-font-body1);font-size:15px;max-width:var(--raml-summary-view-description-max-width, 700px);@apply (--raml-summary-view-property);}.url-info{margin-top:var(--raml-summary-view-uri-section-margin-top, 24px);}url-label{font-size:var(--raml-summary-view-base-uri-font-size, 16px);@apply (--raml-summary-view-base-uri);}.section-title-area{@apply (--layout-horizontal);@apply (--layout-center);border-bottom:1px var(--raml-summary-view-title-border-color, #e5e5e5) solid;}.section-title-area h4{@apply (--layout-flex);}.toggle-button{color:var(--raml-summary-view-toggle-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--toggle-button);}.toggle-icon{transform:rotateZ(0deg);transition:transform 0.3s linear;}.toggle-icon.opened{transform:rotateZ(-180deg);}.toggle-button:hover{color:var(--raml-summary-view-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));@apply (--toggle-button-hover);}.title-area-actions{@apply (--raml-summary-view-title-area-actions);}.structure-info{max-width:var(--raml-docs-table-max-width, 800px);}.sub-resources-list{margin-top:12px;}a{color:var(--raml-docs-link-color, #00A1DF);@apply (--raml-docs-link);}*[hidden]{display:none;}</style><h1>[[raml.title]]</h1><p class="simple-desc" hidden$="[[isEmpty(raml.version)]]"><label>Version:</label><span>[[raml.version]]</span></p><p class="simple-desc" hidden$="[[isEmpty(raml.mediaType)]]"><label>Supported media type:</label><span>[[_displayArray(raml.mediaType)]]</span></p><p class="simple-desc" hidden$="[[isEmpty(raml.protocols)]]"><label>Supported protocols:</label><span>[[_displayArray(raml.protocols)]]</span></p><div hidden$="[[isEmpty(raml.description)]]" class="api-description"><marked-element markdown="[[raml.description]]"><div class="markdown-html markdown-body"></div></marked-element></div><section class="url-info"><h4>API base URI</h4><url-label url="[[raml.baseUri]]" uri-parameters="[[raml.baseUriParameters]]"></url-label></section><section class="structure-info" hidden$="[[!hasResources]]"><div class="section-title-area"><h4>API resources</h4><div class="title-area-actions"><paper-button on-tap="toggleMethodsCollapse" class="toggle-button" title="Toogle resources details">[[_computeToggleActionLabel(methodsOpened)]]<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(methodsOpened)]]"></iron-icon></paper-button></div></div><iron-collapse opened="[[methodsOpened]]"><div class="sub-resources-list"><div class="params-table" id="substable"><div class="tbody"><template is="dom-repeat" items="[[resources]]"><section class="tr"><div class="param-name td"><a href="#" data-path$="[[item.path]]">[[item.meta.name]]</a></div><div class="param-desc td">[[item.meta.description]]</div></section></template></div></div></div></iron-collapse></section></template><script>Polymer({is:"raml-summary-view",behaviors:[Polymer.RamlBehavior],properties:{methodsOpened:{type:Boolean,value:true},resources:{type:Array,readOnly:true},hasResources:{type:Boolean,value:false,computed:"_computeHasResources(resources)"}},observers:["_computeResources(raml)"],listeners:{"substable.tap":"_subResourceTap"},_displayArray:function(arr){if(!arr||!arr.length)return"";if(!(arr instanceof Array))return arr;return arr.join(", ")},_computeHasResources:function(model){return!!(model&&model.length)},
+_computeResources:function(raml){if(!raml||!raml.resources){this._setResources(undefined);return}var resources=[];raml.resources.forEach(function(resource,i){resources[resources.length]={path:"resources."+i,meta:{name:resource.displayName||resource.relativeUri,description:resource.description}}});if(resources.length===0)resources=undefined;this._setResources(resources)},_computeToggleIconClass:function(opened){var clazz="toggle-icon";if(opened)clazz+=" opened";return clazz},_computeToggleActionLabel:function(opened){return opened?
+"Hide":"Show"},toggleMethodsCollapse:function(){this.methodsOpened=!this.methodsOpened},_subResourceTap:function(e){e.preventDefault();e.stopPropagation();var path=e.target.dataset.path;if(!path)return;this.fire("raml-path-changed",{path:path})}});</script></dom-module><dom-module id="raml-docs-types-viewer" assetpath="bower_components/raml-docs-types-viewer/"><template><style include="markdown-styles"></style><style include="docs-parameters-table-shared-styles"></style><style>:host{display:block;}h2{@apply (--arc-font-headline);@apply (--raml-docs-h1);}h2 .value{font-weight:var(--raml-docs-types-viewer-title-type-font-weight, 500);margin-left:8px;}.type-desc{margin-bottom:28px;color:rgba(0, 0, 0, 0.74);@apply (--arc-font-body1);@apply (--raml-docs-types-viewer-content-section);@apply (--raml-docs-item-description);}</style><h2><span class="label">Type</span> <span class="value">[[typeName(type)]]</span></h2><template is="dom-if" if="[[!isPrimitive]]" restamp=""><template is="dom-if" if="[[hasValue(type.description)]]" restamp=""><div class="type-desc"><marked-element markdown="[[type.description]]"><div class="markdown-html markdown-body"></div></marked-element></div></template></template><template is="dom-if" if="[[isObject]]" restamp=""><docs-json-parameters-table type="[[typeProperties(type)]]" structure-display-opened="" narrow="[[narrow]]"></docs-json-parameters-table></template><template is="dom-if" if="[[isJson]]" restamp=""><docs-json-structure-view type="[[type]]" structure-display-opened="" has-type="" narrow="[[narrow]]"></docs-json-structure-view></template><template is="dom-if" if="[[isXml]]" restamp=""><docs-xml-parameters-table type="[[type]]" structure-display-opened="" narrow="[[narrow]]"></docs-xml-parameters-table></template><template is="dom-if" if="[[isPrimitive]]" restamp=""><raml-type-property-description item="[[type]]" display-type=""></raml-type-property-description></template><iron-media-query query="max-width: 640px" query-matches="{{narrow}}"></iron-media-query></template><script>Polymer({is:"raml-docs-types-viewer",behaviors:[Polymer.RamlBehavior],properties:{type:Object,narrow:Boolean,isObject:{type:Object,value:false,readOnly:true},isJson:{type:Object,value:false,readOnly:true},isXml:{type:Object,value:false,readOnly:true},isPrimitive:{type:Object,value:false,readOnly:true}},observers:["_computeType(type)"],reset:function(){this._setIsObject(false);this._setIsJson(false);this._setIsXml(false);this._setIsPrimitive(false)},_computeType:function(obj){this.reset();if(!obj)return;
+var type=obj.type;switch(type){case "object":case "array":this._setIsObject(true);break;case "xml":this._setIsXml(true);break;case "json":this._setIsJson(true);break;default:this._setIsPrimitive(true)}}});</script></dom-module><dom-module id="raml-documentation-panel" assetpath="bower_components/raml-documentation-panel/"><template><style>:host{display:block;height:100%;@apply (--raml-documentation-panel);}.docs-content{max-width:var(--raml-docs-main-content-width, 900px);@apply (--layout-flex);@apply (--raml-docs-main-content);}.docs-content raml-docs-documentation-viewer{max-width:var(--raml-docs-documentation-width, 700px);}.no-selection,
+    .docs-content{height:100%;}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><div class="docs-content"><template is="dom-if" if="[[isMethod]]"><raml-docs-method-viewer parent-endpoint="[[selectedParent]]" raml="[[selectedObject]]" narrow="[[narrow]]" no-try-it="[[noTryIt]]"></raml-docs-method-viewer></template><template is="dom-if" if="[[isResource]]"><raml-docs-resource-viewer raml="[[selectedObject]]" current-path="{{path}}" narrow="[[narrow]]" scroll-target="[[scrollTarget]]"></raml-docs-resource-viewer></template><template is="dom-if" if="[[isDocumentation]]"><raml-docs-documentation-viewer documentation="[[selectedObject]]" narrow="[[narrow]]"></raml-docs-documentation-viewer></template><template is="dom-if" if="[[isSummary]]"><raml-summary-view raml="[[selectedObject]]"></raml-summary-view></template><template is="dom-if" if="[[isType]]"><raml-docs-types-viewer type="[[selectedObject]]" narrow="[[narrow]]"></raml-docs-types-viewer></template></div></template><script>Polymer({is:"raml-documentation-panel",properties:{path:{type:String,notify:true,observer:"_pathChanged"},selectedObject:Object,selectedParent:Object,narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},isMethod:{type:Boolean,readOnly:true,value:false},isResource:{type:Boolean,readOnly:true,value:false},isDocumentation:{type:Boolean,readOnly:true,value:false},isSummary:{type:Boolean,readOnly:true,value:false},isType:{type:Boolean,readOnly:true,value:false},
 hasSelection:{type:Boolean,value:false,notify:true,computed:"_computeHasSelection(isMethod, isResource, isDocumentation, isSummary, isType)"},scrollTarget:HTMLElement,handlePathEvents:{type:Boolean,observer:"_handleEventsChanged"},isElementAttached:{type:Boolean,readOnly:true},noTryIt:Boolean},observers:["_handleEventsChanged(handlePathEvents, isElementAttached)"],attached:function(){this._setIsElementAttached(true)},detached:function(){this._setIsElementAttached(false)},_computeHasSelection:function(isMethod,
 isResource,isDocumentation,isSummary,isType){return!!(isMethod||isResource||isDocumentation||isSummary||isType)},_pathChanged:function(path){if(this.handlePathEvents)return;var isMethod=false;var isResource=false;var isDocumentation=false;var isSummary=false;var isType=false;if(path)if(path.indexOf("documentation")===0)isDocumentation=true;else if(/methods\.\d+$/.test(path))isMethod=true;else if(/resources\.\d+$/.test(path))isResource=true;else if(path==="summary")isSummary=true;else if(/types\.\d+$/.test(path))isType=
 true;this._setIsMethod(isMethod);this._setIsResource(isResource);this._setIsDocumentation(isDocumentation);this._setIsSummary(isSummary);this._setIsType(isType)},_handleEventsChanged:function(handlePathEvents,isElementAttached){if(handlePathEvents&&isElementAttached)this.registerPathEvents();else this.unregisterPathEvents()},registerPathEvents:function(){this.listen(window,"raml-is-method-changed","_onChangedSateMethod");this.listen(window,"raml-is-resource-changed","_onChangedSateResource");this.listen(window,
 "raml-is-documentation-changed","_onChangedSateDocs");this.listen(window,"raml-is-summary-changed","_onChangedSateSummary");this.listen(window,"raml-is-type-changed","_onChangedSateType")},unregisterPathEvents:function(){this.unlisten(window,"raml-is-method-changed","_onChangedSateMethod");this.unlisten(window,"raml-is-resource-changed","_onChangedSateResource");this.unlisten(window,"raml-is-documentation-changed","_onChangedSateDocs");this.unlisten(window,"raml-is-summary-changed","_onChangedSateSummary");
 this.unlisten(window,"raml-is-type-changed","_onChangedSateType")},_onChangedSateMethod:function(e){this._setIsMethod(e.detail.state)},_onChangedSateResource:function(e){this._setIsResource(e.detail.state)},_onChangedSateDocs:function(e){this._setIsDocumentation(e.detail.state)},_onChangedSateSummary:function(e){this._setIsSummary(e.detail.state)},_onChangedSateType:function(e){this._setIsType(e.detail.state)}});</script></dom-module><script>(function(global){var ERROR_MESSAGES={CONTENT_TYPE_MISSING:"Content-Type header is not defined",HEADER_NAME_EMPTY:"Header name can't be empty",HEADER_NAME_WHITESPACES:"Header name should not contain whitespaces",HEADER_VALUE_EMPTY:"Header value should not be empty"};global.ArcBehaviors=global.ArcBehaviors||{};global.ArcBehaviors.HeadersParserBehavior={properties:{isPayload:Boolean},filterHeaders:function(headers){var _tmp={};headers.forEach(function(header){if(header.name in _tmp){if(!!header.value)_tmp[header.name]+=
 ", "+header.value}else _tmp[header.name]=header.value});var result=[];for(var _key in _tmp)result[result.length]={"name":_key,"value":_tmp[_key]};return result},headersToString:function(headersArray){if(typeof headersArray==="string")return headersArray;if(!(headersArray instanceof Array))headersArray=this.headersToJSON(headersArray);if(headersArray.length===0)return"";headersArray=this.filterHeaders(headersArray);var result="";headersArray.forEach(function(header){if(result!=="")result+="\n";var key=
-header.name;var value=header.value;if(key&&key.trim()!==""){result+=key+": ";if(value&&value.trim()!=="")result+=value}});return result},headersToJSON:function(headers){if(typeof headers==="string")return this._headersStringToJSON(headers);else return this._hedersToJSON(headers)},_headersStringToJSON:function(headersString){if(!headersString||headersString.trim()==="")return[];if(typeof headersString!=="string")throw new Error("Headers must be an instance of String.");var result=[];var headers=headersString.split(/\n/gim);
-for(var i=0,len=headers.length;i<len;i++){var line=headers[i].trim();if(line==="")continue;var sepPosition=line.indexOf(":");if(sepPosition===-1){result[result.length]={name:line,value:""};continue}var name=line.substr(0,sepPosition);var value=line.substr(sepPosition+1).trim();var obj={name:name,value:value};result.push(obj)}return result},_hedersToJSON:function(headers){if(!headers)return[];return Array.from(headers).map(function(item){return{name:item[0],value:item[1]}})},_oldCombine:function(headers,
-encoding){if(!(headers instanceof Array))throw new Error("Headers must be an array");encoding=String(encoding);var ct=headers.filter(function(item){return item.name.toLowerCase()==="content-type"});if(ct.length===0){headers.push({"name":"Content-Type","value":encoding.trim()});return true}return false},getContentType:function(headers){if(typeof headers!=="string")headers=this.headersToString(headers);headers=headers.trim();if(headers==="")return null;var re=/^content-type:\s?(.*)$/im;var match=headers.match(re);
-if(!match)return null;var ct=match[1].trim();if(ct.indexOf("multipart")===-1){var index=ct.indexOf("; ");if(index>0)ct=ct.substr(0,index)}return ct},replaceHeaderValue:function(headers,name,value){var origType="headers";if(headers instanceof Array)origType="array";else if(typeof headers==="string")origType="string";if(origType!=="array")headers=this.headersToJSON(headers);var _name=name.toLowerCase();var found=false;headers.forEach(function(header){if(header.name.toLowerCase()===_name){header.value=
-value;found=true}});if(!found)headers.push({name:name,value:value});if(origType==="array")return headers;else if(origType==="string")return this.headersToString(headers);var obj={};headers.forEach(function(header){obj[header.name]=header.value});return new Headers(obj)},getHeaderError:function(input){if(!input){if(this.isPayload)return ERROR_MESSAGES.CONTENT_TYPE_MISSING;return null}if(!(input instanceof Array))input=this.headersToJSON(input);var msg=[];var hasContentType=false;for(var i=0,len=input.length;i<
-len;i++){var name=input[i].name;var value=input[i].value;if(name.toLowerCase()==="content-type")hasContentType=true;if(!name||!name.trim())msg[msg.length]=ERROR_MESSAGES.HEADER_NAME_EMPTY;else if(/\s/.test(name))msg[msg.length]=ERROR_MESSAGES.HEADER_NAME_WHITESPACES;if(!value||!value.trim())msg[msg.length]=ERROR_MESSAGES.HEADER_VALUE_EMPTY}if(this.isPayload&&!hasContentType)msg[msg.length]=ERROR_MESSAGES.CONTENT_TYPE_MISSING;if(msg.length>0)return msg.join("\n");return null}}})(window);</script><style is="custom-style">:root{--primary-color:var(--arc-color-primary, #00a2df);--secondary-color:var(--arc-color-secondary, #506773);--primary-background-color:var(--arc-color-primary-background, #fff);--accent-color:var(--arc-accent-color, #cc143c);--arc-font-common-base:{font-family:var(--arc-font-family, 'Roboto', 'Noto', sans-serif);-webkit-font-smoothing:antialiased;};--arc-font-common-code:{font-family:var(--arc-font-family-code, 'Roboto Mono', 'Consolas', 'Menlo', monospace);-webkit-font-smoothing:antialiased;};--arc-font-common-expensive-kerning:{text-rendering:optimizeLegibility;};--arc-font-common-nowrap:{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;};--arc-font-display1:{@apply (--arc-font-common-base);font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px;};--arc-font-headline:{@apply (--arc-font-common-base);font-weight:400;letter-spacing:-.012em;font-size:24px;line-height:32px;};--arc-font-title:{@apply (--arc-font-common-base);@apply (--arc-font-common-nowrap);font-weight:500;font-size:20px;line-height:28px;};--arc-font-subhead:{@apply (--arc-font-common-base);font-weight:400;font-size:16px;line-height:24px;};--arc-font-body2:{@apply (--arc-font-common-base);font-size:14px;font-weight:500;line-height:24px;};--arc-font-body1:{@apply (--arc-font-common-base);font-size:14px;font-weight:400;line-height:20px;};--arc-font-caption:{@apply (--arc-font-common-base);@apply (--arc-font-common-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20px;};--select-text:{@apply (--arc-font-common-base);-webkit-user-select:text;cursor:text;};--arc-link:{@apply (--arc-font-common-base);color:var(--arc-link-color, #00A1DF);};--arc-font-code1:{@apply (--arc-font-common-code);font-size:14px;font-weight:500;line-height:20px;};--no-info-message:{@apply (--arc-font-body1);font-style:italic;};--form-label:{font-weight:500;};--input-line-color:var(--primary-color);--code-block:{@apply (--arc-font-common-code);};--arc-code-mirror-background-color:var(--code-mirror-background-color, #f5f2f0);--code-mirror:{background-color:var(--arc-code-mirror-background-color, #f5f2f0);};--code-mirror-editor:{background-color:var(--arc-code-mirror-background-color, #f5f2f0);z-index:0;display:block;};--code-mirror-wrapper:{display:block;height:100%;};--paper-toolbar-background:var(--arc-toolbar-background, #121314);--paper-toolbar-title:{margin-left:0px;};--paper-tabs-selection-bar-color:var(--arc-tabs-selection-bar-color, --primary-color);--paper-tab-ink:var(--arc-tab-ink-color, --primary-color);--tabs-selection-width:var(--arc-tabs-selection-width, 2px);--paper-tabs-selection-bar:{border-width:var(--tabs-selection-width);border-color:var(--arc-tabs-selection-bar-border-color, --primary-color);};--paper-tabs-content:{@apply (--arc-font-common-base);height:calc(100% - var(--tabs-selection-width));border-bottom:var(--tabs-selection-width) solid var(--arc-tabs-content-border-bottom-color, rgba(39,47,51,.1));font-style:normal;color:var(--arc-tabs-content-selected-color, rgba(0,0,0,0.87));};--paper-tab-content-unselected:{color:var(--arc-tabs-content-color, rgba(0,0,0,0.78));};--raml-docs-main-content:{margin-bottom:var(--raml-docs-main-content-margin-bottom, 20px);};--paper-input-container-color:var(--arc-input-container-color, rgba(0, 0, 0, 0.24));--inline-docs-color:var(--arc-inline-docs-color, rgba(0, 0, 0, 0.32));--raml-request-parameters-editor-docs-color:var(--inline-docs-color);--raml-headers-form-docs-color:var(--inline-docs-color);--raml-request-parameters-editor-subheader:{@apply (--arc-font-subhead);@apply (--arc-request-parameters-editor-subheader);};--raml-docs-tree-item-selected-background:var(--arc-navigation-selected-background-color, rgb(3, 169, 244));--raml-docs-tree-item-selected-color:var(--arc-navigation-selected-color, #fff);--raml-request-panel:{margin-bottom:20px;max-width:900px;margin-left:16px;margin-right:12px;@apply (--arc-request-panel);};--response-view:{margin-bottom:20px;max-width:900px;margin-left:16px;margin-right:12px;@apply (--arc-response-view);};--request-form-panels:{margin:0 0 12px 16px;@apply (--arc-request-form-panels);};--raml-request-url-editor:{@apply (--request-form-panels);@apply (--arc-request-url-editor);};--raml-request-parameters-editor:{@apply (--request-form-panels);@apply (--arc-request-parameters-editor);};--raml-body-editor-panel:{@apply (--request-form-panels);@apply (--arc-body-editor-panel);};--raml-docs-response-panel:{@apply (--arc-docs-response-panel);};--raml-docs-method-viewer:{margin-right:12px;@apply (--arc-docs-method-viewer);};--raml-request-headers-editor:{@apply (--request-form-panels);@apply (--arc-request-headers-editor);};--authorization-panel:{@apply (--request-form-panels);@apply (--arc-authorization-panel);};--raml-documentation-panel:{padding:0;@apply (--request-form-panels);@apply (--arc-documentation-panel);};--raml-summary-view:{@apply (--request-form-panels);margin-right:var(--arc-summary-view-margin-right, 12px);@apply (--arc-summary-view);};--raml-path-selector:{overflow:auto;background-color:transparent;@apply (--layout-flex);@apply (--arc-navigation);};--raml-docs-response-panel-docs-content:{padding:8px;margin-left:0px;@apply (--arc-docs-response-panel-docs-content);};--params-table-header-background-color:var(--arc-params-table-header-background-color, #616161);--params-table-subheader-background-color:var(--arc-params-table-subheader-background-color, #EEEEEE);--params-table-row-border-color:var(--arc-params-table-row-border-color, #e0e0e0);--params-table-row-subproperty-border-color:var(--arc-params-table-subproperty-border-color, #e0e0e0);--params-table-header-color:var(--arc-params-table-header-color, #FAFAFA);--inline-documentation-color:var(--arc-inline-documentation-color, #1a237e);--raml-headers-form-docs-color:var(--arc-headers-form-docs-color, #1a237e);--response-error-view:{margin-top:var(--response-error-view-margin-top, 24px);@apply (--arc-response-error-view);};--code-type-text-value-color:#0d47a1;--code-type-number-value-color:#03a9f4;--code-type-boolean-value-color:#0288d1;--code-type-null-value-color:#0288d1;--code-punctuation-value-color:#757575;--code-type-link-color:#757575;--code-array-index-color:rgba(1, 87, 155, 0.57);--code-background-color:#F4F5F6;--raml-docs-main-content-width:1200px;--paper-checkbox-label:{@apply (--arc-font-body1);@apply (--arc-checkbox-label);};--docs-body-parameters-table-type-name:{@apply (--arc-font-common-base);font-size:16px;font-weight:100;margin:0;padding:0;@apply (--arc-parameters-type-name);};--raml-docs-link:{@apply (--arc-font-body1);@apply (--arc-link);};--paper-button:{@apply (--arc-font-common-base);font-size:var(--arc-button-font-size, 14px);@apply (--arc-button);};--toggle-button:{@apply (--arc-font-body1);color:var(--arc-toggle-button-color, #6B8A99);margin-right:0;font-weight:normal;@apply (--arc-toggle-button);};--toggle-button-hover:{@apply (--arc-toggle-button-hover);};--action-button:{background-color:var(--arc-action-button-background-color, --primary-color);color:var(--primary-action-color, #fff);};--action-button-hover:{background-color:var(--arc-action-button-background-color, --primary-color);color:var(--primary-action-color, #fff);};--auth-button:{@apply (--arc-font-body1);background-color:var(--arc-auth-button-background-color, #D1344E);color:var(--arc-auth-button-color, #fff);@apply (--arc-auth-button);};--raml-docs-resource-viewer-navigation-wide-layout:{background-color:var(--arc-resource-viewer-navigation-wide-layout-background-color, #F4F5F6);margin:0;border-left:0;@apply (--arc-resource-viewer-navigation-wide-layout);};--sidebar-list-link:{@apply (--arc-font-body1);padding:10px 12px;@apply (--arc-link);};}</style><dom-module id="codemirror" assetpath="bower_components/code-mirror/styles/"><template><style>.CodeMirror{font-family:monospace;height:300px;color:black;}.CodeMirror-lines{padding:4px 0;}.CodeMirror pre{padding:0 4px;}.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler{background-color:white;}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap;}.CodeMirror-linenumbers{}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap;}.CodeMirror-guttermarker{color:black;}.CodeMirror-guttermarker-subtle{color:#999;}.CodeMirror div.CodeMirror-cursor{border-left:1px solid black;}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursors{z-index:1;}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;}@-moz-keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}@-webkit-keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}@keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}div.CodeMirror-overwrite div.CodeMirror-cursor{}.cm-tab{display:inline-block;text-decoration:inherit;}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute;}.cm-s-default .cm-keyword{color:#708;}.cm-s-default .cm-atom{color:#219;}.cm-s-default .cm-number{color:#164;}.cm-s-default .cm-def{color:#00f;}.cm-s-default .cm-variable,
-.cm-s-default .cm-punctuation,
-.cm-s-default .cm-property,
-.cm-s-default .cm-operator{}.cm-s-default .cm-variable-2{color:#05a;}.cm-s-default .cm-variable-3{color:#085;}.cm-s-default .cm-comment{color:#a50;}.cm-s-default .cm-string{color:#a11;}.cm-s-default .cm-string-2{color:#f50;}.cm-s-default .cm-meta{color:#555;}.cm-s-default .cm-qualifier{color:#555;}.cm-s-default .cm-builtin{color:#30a;}.cm-s-default .cm-bracket{color:#997;}.cm-s-default .cm-tag{color:#170;}.cm-s-default .cm-attribute{color:#00c;}.cm-s-default .cm-header{color:blue;}.cm-s-default .cm-quote{color:#090;}.cm-s-default .cm-hr{color:#999;}.cm-s-default .cm-link{color:#00c;}.cm-negative{color:#d44;}.cm-positive{color:#292;}.cm-header, .cm-strong{font-weight:bold;}.cm-em{font-style:italic;}.cm-link{text-decoration:underline;}.cm-strikethrough{text-decoration:line-through;}.cm-s-default .cm-error{color:#f00;}.cm-invalidchar{color:#f00;}.CodeMirror-composing{border-bottom:2px solid;}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0;}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22;}.CodeMirror-matchingtag{background:rgba(255, 150, 0, .3);}.CodeMirror-activeline-background{background:#e8f2ff;}.CodeMirror{position:relative;overflow:hidden;background:white;}.CodeMirror-scroll{overflow:scroll !important;margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:none;position:relative;}.CodeMirror-sizer{position:relative;border-right:30px solid transparent;}.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll;}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll;}.CodeMirror-scrollbar-filler{right:0;bottom:0;}.CodeMirror-gutter-filler{left:0;bottom:0;}.CodeMirror-gutters{position:absolute;left:0;top:0;z-index:3;}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;margin-bottom:-30px;*zoom:1;*display:inline;}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;height:100%;}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4;}.CodeMirror-gutter-wrapper{-webkit-user-select:none;-moz-user-select:none;user-select:none;}.CodeMirror-lines{cursor:text;min-height:1px;}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal;}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0;}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto;}.CodeMirror-widget{}.CodeMirror-code{outline:none;}.CodeMirror-scroll,
-.CodeMirror-sizer,
-.CodeMirror-gutter,
-.CodeMirror-gutters,
-.CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box;}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden;}.CodeMirror-measure pre{position:static;}.CodeMirror div.CodeMirror-cursor{position:absolute;border-right:none;width:0;}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3;}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible;}.CodeMirror-selected{background:#d9d9d9;}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0;}.CodeMirror-crosshair{cursor:crosshair;}.CodeMirror ::selection{background:#d7d4f0;}.CodeMirror ::-moz-selection{background:#d7d4f0;}.cm-searching{background:#ffa;background:rgba(255, 255, 0, .4);}.CodeMirror span{*vertical-align:text-bottom;}.cm-force-border{padding-right:.1px;}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden;}}.cm-tab-wrap-hack:after{content:'';}span.CodeMirror-selectedtext{background:none;}</style></template></dom-module><dom-module id="xq-light" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-xq-light span.cm-keyword{line-height:1em;font-weight:bold;color:#5A5CAD;}.cm-s-xq-light span.cm-atom{color:#6C8CD5;}.cm-s-xq-light span.cm-number{color:#164;}.cm-s-xq-light span.cm-def{text-decoration:underline;}.cm-s-xq-light span.cm-variable{color:black;}.cm-s-xq-light span.cm-variable-2{color:black;}.cm-s-xq-light span.cm-variable-3{color:black;}.cm-s-xq-light span.cm-property{}.cm-s-xq-light span.cm-operator{}.cm-s-xq-light span.cm-comment{color:#0080FF;font-style:italic;}.cm-s-xq-light span.cm-string{color:red;}.cm-s-xq-light span.cm-meta{color:yellow;}.cm-s-xq-light span.cm-qualifier{color:grey;}.cm-s-xq-light span.cm-builtin{color:#7EA656;}.cm-s-xq-light span.cm-bracket{color:#cc7;}.cm-s-xq-light span.cm-tag{color:#3F7F7F;}.cm-s-xq-light span.cm-attribute{color:#7F007F;}.cm-s-xq-light span.cm-error{color:#f00;}.cm-s-xq-light .CodeMirror-activeline-background{background:#e8f2ff !important;}.cm-s-xq-light .CodeMirror-matchingbracket{outline:1px solid grey;color:black !important;background:yellow;}</style></template></dom-module><dom-module id="3024-day" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-3024-day.CodeMirror{background:#f7f7f7;color:#3a3432;}.cm-s-3024-day div.CodeMirror-selected{background:#d6d5d4 !important;}.cm-s-3024-day.CodeMirror ::selection{background:#d6d5d4;}.cm-s-3024-day.CodeMirror ::-moz-selection{background:#d9d9d9;}.cm-s-3024-day .CodeMirror-gutters{background:#f7f7f7;border-right:0px;}.cm-s-3024-day .CodeMirror-guttermarker{color:#db2d20;}.cm-s-3024-day .CodeMirror-guttermarker-subtle{color:#807d7c;}.cm-s-3024-day .CodeMirror-linenumber{color:#807d7c;}.cm-s-3024-day .CodeMirror-cursor{border-left:1px solid #5c5855 !important;}.cm-s-3024-day span.cm-comment{color:#cdab53;}.cm-s-3024-day span.cm-atom{color:#a16a94;}.cm-s-3024-day span.cm-number{color:#a16a94;}.cm-s-3024-day span.cm-property, .cm-s-3024-day span.cm-attribute{color:#01a252;}.cm-s-3024-day span.cm-keyword{color:#db2d20;}.cm-s-3024-day span.cm-string{color:#fded02;}.cm-s-3024-day span.cm-variable{color:#01a252;}.cm-s-3024-day span.cm-variable-2{color:#01a0e4;}.cm-s-3024-day span.cm-def{color:#e8bbd0;}.cm-s-3024-day span.cm-bracket{color:#3a3432;}.cm-s-3024-day span.cm-tag{color:#db2d20;}.cm-s-3024-day span.cm-link{color:#a16a94;}.cm-s-3024-day span.cm-error{background:#db2d20;color:#5c5855;}.cm-s-3024-day .CodeMirror-activeline-background{background:#e8f2ff !important;}.cm-s-3024-day .CodeMirror-matchingbracket{text-decoration:underline;color:#a16a94 !important;}</style></template></dom-module><dom-module id="3024-night" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-3024-night.CodeMirror{background:#090300;color:#d6d5d4;}.cm-s-3024-night div.CodeMirror-selected{background:#3a3432 !important;}.cm-s-3024-night.CodeMirror ::selection{background:rgba(58, 52, 50, .99);}.cm-s-3024-night.CodeMirror ::-moz-selection{background:rgba(58, 52, 50, .99);}.cm-s-3024-night .CodeMirror-gutters{background:#090300;border-right:0px;}.cm-s-3024-night .CodeMirror-guttermarker{color:#db2d20;}.cm-s-3024-night .CodeMirror-guttermarker-subtle{color:#5c5855;}.cm-s-3024-night .CodeMirror-linenumber{color:#5c5855;}.cm-s-3024-night .CodeMirror-cursor{border-left:1px solid #807d7c !important;}.cm-s-3024-night span.cm-comment{color:#cdab53;}.cm-s-3024-night span.cm-atom{color:#a16a94;}.cm-s-3024-night span.cm-number{color:#a16a94;}.cm-s-3024-night span.cm-property, .cm-s-3024-night span.cm-attribute{color:#01a252;}.cm-s-3024-night span.cm-keyword{color:#db2d20;}.cm-s-3024-night span.cm-string{color:#fded02;}.cm-s-3024-night span.cm-variable{color:#01a252;}.cm-s-3024-night span.cm-variable-2{color:#01a0e4;}.cm-s-3024-night span.cm-def{color:#e8bbd0;}.cm-s-3024-night span.cm-bracket{color:#d6d5d4;}.cm-s-3024-night span.cm-tag{color:#db2d20;}.cm-s-3024-night span.cm-link{color:#a16a94;}.cm-s-3024-night span.cm-error{background:#db2d20;color:#807d7c;}.cm-s-3024-night .CodeMirror-activeline-background{background:#2F2F2F !important;}.cm-s-3024-night .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="ambiance-mobile" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-ambiance.CodeMirror{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}</style></template></dom-module><dom-module id="ambiance" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-ambiance .cm-keyword{color:#cda869;}.cm-s-ambiance .cm-atom{color:#CF7EA9;}.cm-s-ambiance .cm-number{color:#78CF8A;}.cm-s-ambiance .cm-def{color:#aac6e3;}.cm-s-ambiance .cm-variable{color:#ffb795;}.cm-s-ambiance .cm-variable-2{color:#eed1b3;}.cm-s-ambiance .cm-variable-3{color:#faded3;}.cm-s-ambiance .cm-property{color:#eed1b3;}.cm-s-ambiance .cm-operator{color:#fa8d6a;}.cm-s-ambiance .cm-comment{color:#555;font-style:italic;}.cm-s-ambiance .cm-string{color:#8f9d6a;}.cm-s-ambiance .cm-string-2{color:#9d937c;}.cm-s-ambiance .cm-meta{color:#D2A8A1;}.cm-s-ambiance .cm-qualifier{color:yellow;}.cm-s-ambiance .cm-builtin{color:#9999cc;}.cm-s-ambiance .cm-bracket{color:#24C2C7;}.cm-s-ambiance .cm-tag{color:#fee4ff;}.cm-s-ambiance .cm-attribute{color:#9B859D;}.cm-s-ambiance .cm-header{color:blue;}.cm-s-ambiance .cm-quote{color:#24C2C7;}.cm-s-ambiance .cm-hr{color:pink;}.cm-s-ambiance .cm-link{color:#F4C20B;}.cm-s-ambiance .cm-special{color:#FF9D00;}.cm-s-ambiance .cm-error{color:#AF2018;}.cm-s-ambiance .CodeMirror-matchingbracket{color:#0f0;}.cm-s-ambiance .CodeMirror-nonmatchingbracket{color:#f22;}.cm-s-ambiance .CodeMirror-selected{background:rgba(255, 255, 255, 0.15);}.cm-s-ambiance.CodeMirror-focused .CodeMirror-selected{background:rgba(255, 255, 255, 0.10);}.cm-s-ambiance.CodeMirror ::selection{background:rgba(255, 255, 255, 0.10);}.cm-s-ambiance.CodeMirror ::-moz-selection{background:rgba(255, 255, 255, 0.10);}.cm-s-ambiance.CodeMirror{line-height:1.40em;color:#E6E1DC;background-color:#202020;-webkit-box-shadow:inset 0 0 10px black;-moz-box-shadow:inset 0 0 10px black;box-shadow:inset 0 0 10px black;}.cm-s-ambiance .CodeMirror-gutters{background:#3D3D3D;border-right:1px solid #4D4D4D;box-shadow:0 10px 20px black;}.cm-s-ambiance .CodeMirror-linenumber{text-shadow:0px 1px 1px #4d4d4d;color:#111;padding:0 5px;}.cm-s-ambiance .CodeMirror-guttermarker{color:#aaa;}.cm-s-ambiance .CodeMirror-guttermarker-subtle{color:#111;}.cm-s-ambiance .CodeMirror-lines .CodeMirror-cursor{border-left:1px solid #7991E8;}.cm-s-ambiance .CodeMirror-activeline-background{background:none repeat scroll 0% 0% rgba(255, 255, 255, 0.031);}.cm-s-ambiance.CodeMirror,
+header.name;var value=header.value;if(key&&key.trim()!==""){result+=key+": ";if(value&&value.trim()!=="")result+=value}});return result},headersToJSON:function(headers){if(typeof headers==="string")return this._headersStringToJSON(headers);else return this._hedersToJSON(headers)},_headersStringToJSON:function(headersString){if(!headersString||headersString.trim()==="")return[];if(typeof headersString!=="string")throw new Error("Headers must be an instance of String.");var result=[];var headers=headersString.split(/\n(?=[^ \t]+)/gim);
+for(var i=0,len=headers.length;i<len;i++){var line=headers[i].trim();if(line==="")continue;var sepPosition=line.indexOf(":");if(sepPosition===-1){result[result.length]={name:line,value:""};continue}var name=line.substr(0,sepPosition);var value=line.substr(sepPosition+1).trim();var obj={name:name,value:value};result.push(obj)}return result},_hedersToJSON:function(headers){var result=[];if(!headers)return result;var _tmp={};headers.forEach(function(value,name){if(_tmp[name])_tmp[name]+=", "+value;else _tmp[name]=
+value});return Object.keys(_tmp).map(function(key){var value=_tmp[key];if(value&&value.indexOf(",")!==-1)value=value.split(",").map(function(part){return part.trim()}).join(", ");return{name:key,value:value}})},_oldCombine:function(headers,encoding){if(!(headers instanceof Array))throw new Error("Headers must be an array");encoding=String(encoding);var ct=headers.filter(function(item){return item.name.toLowerCase()==="content-type"});if(ct.length===0){headers.push({"name":"Content-Type","value":encoding.trim()});
+return true}return false},getContentType:function(headers){if(typeof headers!=="string")headers=this.headersToString(headers);headers=headers.trim();if(headers==="")return null;var re=/^content-type:\s?(.*)$/im;var match=headers.match(re);if(!match)return null;var ct=match[1].trim();if(ct.indexOf("multipart")===-1){var index=ct.indexOf("; ");if(index>0)ct=ct.substr(0,index)}return ct},replaceHeaderValue:function(headers,name,value){var origType="headers";if(headers instanceof Array)origType="array";
+else if(typeof headers==="string")origType="string";if(origType!=="array")headers=this.headersToJSON(headers);var _name=name.toLowerCase();var found=false;headers.forEach(function(header){if(header.name.toLowerCase()===_name){header.value=value;found=true}});if(!found)headers.push({name:name,value:value});if(origType==="array")return headers;else if(origType==="string")return this.headersToString(headers);var obj={};headers.forEach(function(header){obj[header.name]=header.value});return new Headers(obj)},
+getHeaderError:function(input){if(!input){if(this.isPayload)return ERROR_MESSAGES.CONTENT_TYPE_MISSING;return null}if(!(input instanceof Array))input=this.headersToJSON(input);var msg=[];var hasContentType=false;for(var i=0,len=input.length;i<len;i++){var name=input[i].name;var value=input[i].value;if(name.toLowerCase()==="content-type")hasContentType=true;if(!name||!name.trim())msg[msg.length]=ERROR_MESSAGES.HEADER_NAME_EMPTY;else if(/\s/.test(name))msg[msg.length]=ERROR_MESSAGES.HEADER_NAME_WHITESPACES;
+if(!value||!value.trim())msg[msg.length]=ERROR_MESSAGES.HEADER_VALUE_EMPTY}if(this.isPayload&&!hasContentType)msg[msg.length]=ERROR_MESSAGES.CONTENT_TYPE_MISSING;if(msg.length>0)return msg.join("\n");return null}}})(window);</script><style is="custom-style">:root{--primary-color:var(--arc-color-primary, #00a2df);--secondary-color:var(--arc-color-secondary, #506773);--primary-background-color:var(--arc-color-primary-background, #fff);--accent-color:var(--arc-accent-color, #cc143c);--arc-font-common-base:{font-family:var(--arc-font-family, 'Roboto', 'Noto', sans-serif);-webkit-font-smoothing:antialiased;};--arc-font-common-code:{font-family:var(--arc-font-family-code, 'Roboto Mono', 'Consolas', 'Menlo', monospace);-webkit-font-smoothing:antialiased;};--arc-font-common-expensive-kerning:{text-rendering:optimizeLegibility;};--arc-font-common-nowrap:{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;};--arc-font-display1:{@apply (--arc-font-common-base);font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px;};--arc-font-headline:{@apply (--arc-font-common-base);font-weight:400;letter-spacing:-.012em;font-size:24px;line-height:32px;};--arc-font-title:{@apply (--arc-font-common-base);@apply (--arc-font-common-nowrap);font-weight:500;font-size:20px;line-height:28px;};--arc-font-subhead:{@apply (--arc-font-common-base);font-weight:400;font-size:16px;line-height:24px;};--arc-font-body2:{@apply (--arc-font-common-base);font-size:14px;font-weight:500;line-height:24px;};--arc-font-body1:{@apply (--arc-font-common-base);font-size:14px;font-weight:400;line-height:20px;};--arc-font-caption:{@apply (--arc-font-common-base);@apply (--arc-font-common-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20px;};--select-text:{@apply (--arc-font-common-base);-webkit-user-select:text;cursor:text;};--arc-link:{@apply (--arc-font-common-base);color:var(--arc-link-color, #00A1DF);};--arc-font-code1:{@apply (--arc-font-common-code);font-size:14px;font-weight:500;line-height:20px;};--no-info-message:{@apply (--arc-font-body1);font-style:italic;};--form-label:{font-weight:500;};--input-line-color:var(--primary-color);--code-block:{@apply (--arc-font-common-code);};--arc-code-mirror-background-color:var(--code-mirror-background-color, #f5f2f0);--code-mirror:{background-color:var(--arc-code-mirror-background-color, #f5f2f0);};--code-mirror-editor:{background-color:var(--arc-code-mirror-background-color, #f5f2f0);z-index:0;display:block;};--code-mirror-wrapper:{display:block;height:100%;};--paper-toolbar-background:var(--arc-toolbar-background, #121314);--paper-toolbar-title:{margin-left:0px;};--paper-tabs-selection-bar-color:var(--arc-tabs-selection-bar-color, --primary-color);--paper-tab-ink:var(--arc-tab-ink-color, --primary-color);--tabs-selection-width:var(--arc-tabs-selection-width, 2px);--paper-tabs-selection-bar:{border-width:var(--tabs-selection-width);border-color:var(--arc-tabs-selection-bar-border-color, --primary-color);};--paper-tabs-content:{@apply (--arc-font-common-base);height:calc(100% - var(--tabs-selection-width));border-bottom:var(--tabs-selection-width) solid var(--arc-tabs-content-border-bottom-color, rgba(39,47,51,.1));font-style:normal;color:var(--arc-tabs-content-selected-color, rgba(0,0,0,0.87));};--paper-tab-content-unselected:{color:var(--arc-tabs-content-color, rgba(0,0,0,0.78));};--raml-docs-main-content:{margin-bottom:var(--raml-docs-main-content-margin-bottom, 20px);};--paper-input-container-color:var(--arc-input-container-color, rgba(0, 0, 0, 0.24));--inline-docs-color:var(--arc-inline-docs-color, rgba(0, 0, 0, 0.32));--raml-request-parameters-editor-docs-color:var(--inline-docs-color);--raml-headers-form-docs-color:var(--inline-docs-color);--raml-request-parameters-editor-subheader:{@apply (--arc-font-subhead);@apply (--arc-request-parameters-editor-subheader);};--raml-docs-tree-item-selected-background:var(--arc-navigation-selected-background-color, rgb(3, 169, 244));--raml-docs-tree-item-selected-color:var(--arc-navigation-selected-color, #fff);--raml-request-panel:{margin-bottom:20px;max-width:900px;margin-left:16px;margin-right:12px;@apply (--arc-request-panel);};--response-view:{margin-bottom:20px;max-width:900px;margin-left:16px;margin-right:12px;@apply (--arc-response-view);};--request-form-panels:{margin:0 0 12px 16px;@apply (--arc-request-form-panels);};--raml-request-url-editor:{@apply (--request-form-panels);@apply (--arc-request-url-editor);};--raml-request-parameters-editor:{@apply (--request-form-panels);@apply (--arc-request-parameters-editor);};--raml-body-editor-panel:{@apply (--request-form-panels);@apply (--arc-body-editor-panel);};--raml-docs-response-panel:{@apply (--arc-docs-response-panel);};--raml-docs-method-viewer:{margin-right:12px;@apply (--arc-docs-method-viewer);};--raml-request-headers-editor:{@apply (--request-form-panels);@apply (--arc-request-headers-editor);};--authorization-panel:{@apply (--request-form-panels);@apply (--arc-authorization-panel);};--raml-documentation-panel:{padding:0;@apply (--request-form-panels);@apply (--arc-documentation-panel);};--raml-summary-view:{@apply (--request-form-panels);margin-right:var(--arc-summary-view-margin-right, 12px);@apply (--arc-summary-view);};--raml-path-selector:{overflow:auto;background-color:transparent;@apply (--layout-flex);@apply (--arc-navigation);};--raml-docs-response-panel-docs-content:{padding:8px;margin-left:0px;@apply (--arc-docs-response-panel-docs-content);};--params-table-header-background-color:var(--arc-params-table-header-background-color, #616161);--params-table-subheader-background-color:var(--arc-params-table-subheader-background-color, #EEEEEE);--params-table-row-border-color:var(--arc-params-table-row-border-color, #e0e0e0);--params-table-row-subproperty-border-color:var(--arc-params-table-subproperty-border-color, #e0e0e0);--params-table-header-color:var(--arc-params-table-header-color, #FAFAFA);--inline-documentation-color:var(--arc-inline-documentation-color, #1a237e);--raml-headers-form-docs-color:var(--arc-headers-form-docs-color, #1a237e);--response-error-view:{margin-top:var(--response-error-view-margin-top, 24px);@apply (--arc-response-error-view);};--code-type-text-value-color:#0d47a1;--code-type-number-value-color:#03a9f4;--code-type-boolean-value-color:#0288d1;--code-type-null-value-color:#0288d1;--code-punctuation-value-color:#757575;--code-type-link-color:#757575;--code-array-index-color:rgba(1, 87, 155, 0.57);--code-background-color:#F4F5F6;--raml-docs-main-content-width:1200px;--paper-checkbox-label:{@apply (--arc-font-body1);@apply (--arc-checkbox-label);};--docs-body-parameters-table-type-name:{@apply (--arc-font-common-base);font-size:16px;font-weight:100;margin:0;padding:0;@apply (--arc-parameters-type-name);};--raml-docs-link:{@apply (--arc-font-body1);@apply (--arc-link);};--paper-button:{@apply (--arc-font-common-base);font-size:var(--arc-button-font-size, 14px);@apply (--arc-button);};--toggle-button:{@apply (--arc-font-body1);color:var(--arc-toggle-button-color, #6B8A99);margin-right:0;font-weight:normal;@apply (--arc-toggle-button);};--toggle-button-hover:{@apply (--arc-toggle-button-hover);};--action-button:{background-color:var(--arc-action-button-background-color, --primary-color);color:var(--primary-action-color, #fff);};--action-button-hover:{background-color:var(--arc-action-button-background-color, --primary-color);color:var(--primary-action-color, #fff);};--auth-button:{@apply (--arc-font-body1);background-color:var(--arc-auth-button-background-color, #D1344E);color:var(--arc-auth-button-color, #fff);@apply (--arc-auth-button);};--raml-docs-resource-viewer-navigation-wide-layout:{background-color:var(--arc-resource-viewer-navigation-wide-layout-background-color, #F4F5F6);margin:0;border-left:0;@apply (--arc-resource-viewer-navigation-wide-layout);};--sidebar-list-link:{@apply (--arc-font-body1);padding:10px 12px;@apply (--arc-link);};}</style><script>(function(global){global.ArcBehaviors=global.ArcBehaviors||{};global.ArcBehaviors.PayloadParserBehavior={properties:{AMP_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/&/g)}},GT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/>/g)}},LT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/</g)}},SQUOT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/'/g)}},QUOT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/"/g)}}},
+htmlEscape:function(html){if(html.indexOf("\x26")!==-1)html=html.replace(this.AMP_RE,"\x26amp;");if(html.indexOf("\x3c")!==-1)html=html.replace(this.LT_RE,"\x26lt;");if(html.indexOf("\x3e")!==-1)html=html.replace(this.GT_RE,"\x26gt;");if(html.indexOf('"')!==-1)html=html.replace(this.QUOT_RE,"\x26quot;");if(html.indexOf("'")!==-1)html=html.replace(this.SQUOT_RE,"\x26apos;");return html},formArrayToString:function(arr){var result="";if(!arr)return result;result=arr.map(function(item){return this._modelItemToFormDataString(item)},
+this).join("\x26");return result},_modelItemToFormDataString:function(model){var name=this._paramValue(model.name);var value=model.value;if(value&&value instanceof Array)return value.map(function(item){return name+"\x3d"+this._paramValue(item)},this).join("\x26");value=this._paramValue(value);return name+"\x3d"+value},stringToArray:function(input){var result=[];if(!input||!input.trim())return result;var htmlInputCheck=/^([^\\=]{1,})=(.*)$/m;if(!htmlInputCheck.test(input)){input=input.replace(/^([^\\:]{1,}):(.*)$/gm,
+"$1\x3d$2\x26").replace(/\n/gm,"");input=input.substr(0,input.length-1)}result=this._createParamsArray(input);return result},_createParamsArray:function(input){var result=[];if(!input)return result;var state=0;var i=0;var _tmpName="";var _tmpValue="";while(true){var ch=input[i++];if(ch===undefined){if(_tmpValue||_tmpName)result=this._appendArrayResult(result,_tmpName,_tmpValue);break}if(ch==="\x3d")if(state!==1){state=1;continue}if(ch==="\x26"){state=0;result=this._appendArrayResult(result,_tmpName,
+_tmpValue);_tmpName="";_tmpValue="";continue}if(state===0)_tmpName+=ch;else if(state===1)_tmpValue+=ch}return result},_appendArrayResult:function(array,name,value){for(var i=0,len=array.length;i<len;i++)if(array[i].name===name){if(array[i].value instanceof Array)array[i].value.push(value);else array[i].value=[array[i].value,value];return array}array.push({name:name,value:value});return array},encodeUrlEncoded:function(input){if(!input||!input.length)return input;var isArray=input instanceof Array;
+if(!isArray)input=this.stringToArray(input);input.forEach(function(obj){obj.name=this.encodeQueryString(obj.name);obj.value=this._encodeValue(obj.value)},this);if(isArray)return input;return this.formArrayToString(input)},_encodeValue:function(value){if(value instanceof Array){for(var i=0,len=value.length;i<len;i++)value[i]=this.encodeQueryString(value[i]);return value}return this.encodeQueryString(value)},decodeUrlEncoded:function(input){if(!input||!input.length)return input;var isArray=input instanceof
+Array;if(!isArray)input=this.stringToArray(input);input.forEach(function(obj){obj.name=this.decodeQueryString(obj.name);obj.value=this._decodeValue(obj.value)},this);if(isArray)return input;return this.formArrayToString(input)},_decodeValue:function(value){if(value instanceof Array){for(var i=0,len=value.length;i<len;i++)value[i]=this.decodeQueryString(value[i]);return value}return this.decodeQueryString(value)},_paramValue:function(input){if(!input)return String();input=String(input);input=input.trim();
+return input},_paramLineToFormObject:function(input){if(!input)return;var _tmp=input.split("\x3d");var name=_tmp[0].trim();if(!name&&_tmp.length===1)return;var value;if(_tmp.length===1)value="";else value=_tmp[1].trim();return{name:name,value:value}},encodeQueryString:function(str){if(!str)return str;var regexp=/%20/g;return encodeURIComponent(str).replace(regexp,"+")},decodeQueryString:function(str){if(!str)return str;var regexp=/\+/g;return decodeURIComponent(str.replace(regexp,"%20"))}}})(window);</script><script>(function(global){global.ArcBehaviors=global.ArcBehaviors||{};global.ArcBehaviors.OpenablePanelBehavior={properties:{attrForOpened:String,_isOpened:Boolean},get _propertyForOpened(){if(!this.attrForOpened)return;return Polymer.CaseMap.dashToCamelCase(this.attrForOpened)},get _openedValue(){var prop=this._propertyForOpened;if(prop)return this.hasAttribute(prop);return true},observers:["__attrForOpenedChanged(attrForOpened)"],ready:function(){this.__attrForOpenedChanged(this.attrForOpened)},attributeChanged:function(name){var prop=
+this._propertyForOpened;if(prop&&prop===name)this.__updateOpenedState(name)},__attrForOpenedChanged:function(attrForOpened){if(!attrForOpened&&!this._isOpened)this.set("_isOpened",true);else if(attrForOpened)this.__updateOpenedState(attrForOpened)},__updateOpenedState:function(name){var state=this.getAttribute(name)!==null;if(this._isOpened!==state)this.set("_isOpened",state)}}})(window);</script><script>(function(global){global.ArcBehaviors=global.ArcBehaviors||{};var RequestPayloadEditorBehaviorImpl={properties:{value:{type:String,notify:true},attrForOpened:String,_isOpened:Boolean},get _propertyForOpened(){if(!this.attrForOpened)return;return Polymer.CaseMap.dashToCamelCase(this.attrForOpened)},get _openedValue(){var prop=this._propertyForOpened;if(prop)return this.hasAttribute(prop);return true},observers:["__attrForOpenedChanged(attrForOpened)"],ready:function(){this.__attrForOpenedChanged(this.attrForOpened)},
+attributeChanged:function(name){var prop=this._propertyForOpened;if(prop&&prop===name)this.__updateOpenedState(name)},__attrForOpenedChanged:function(attrForOpened){if(!attrForOpened&&!this._isOpened)this.set("_isOpened",true);else if(attrForOpened)this.__updateOpenedState(attrForOpened)},__updateOpenedState:function(name){var state=this.getAttribute(name)!==null;if(this._isOpened!==state)this.set("_isOpened",state)},encodeValue:function(){if(!this._openedValue)return;var value=this.encodeUrlEncoded(this.value);
+this.__internalChange=true;this.set("value",value);this.__internalChange=false},decodeValue:function(){if(!this._openedValue)return;var value=this.decodeUrlEncoded(this.value);this.__internalChange=true;this.set("value",value);this.__internalChange=false}};global.ArcBehaviors.RequestPayloadEditorBehavior=[global.ArcBehaviors.PayloadParserBehavior,global.ArcBehaviors.OpenablePanelBehavior,RequestPayloadEditorBehaviorImpl]})(window);</script><script>window.ArcBehaviors=window.ArcBehaviors||{};
+window.ArcBehaviors.BodyJsonEditorBehavior={properties:{name:{type:String,notify:true,value:""},value:{type:String,notify:true},model:{type:Object,notify:true},typeModel:Object,narrow:{type:Boolean,reflectToAttribute:true,value:false}},observers:[],_computeModelItem:function(base){base=base||{};var result={value:base.value||"",name:base.name||""};var type=this._computeModelItemTypeProperties(base.type);result=Object.assign(result,type);if(result.isComplex)result.isRoot=base.isRoot;if(result.isObject)result.properties=
+[];else if(result.isArray)result.items=[];else if(result.isEnum)result.enum=[];if(base.properties&&base.properties.length)result.properties=base.properties;if(base.items&&base.items.length)result.items=base.items;if(base.enum&&base.enum.length)result.enum=base.enum;switch(true){case result.isString:result.inputType="text";break;case result.isNumber:result.inputType="number";switch(result.type){case "float":result.inputStep=.00001;break;case "integer":case "number":result.inputStep=1;break}break;default:result.inputType=
+"text"}return result},_computeModelItemTypeProperties:function(type){var result={hasType:true,isObject:false,isArray:false,isNull:false,isBoolean:false,isNumber:false,isString:false,isDate:false,isEnum:false,isComplex:false,isPrimitive:true,type:type};switch(type){case "string":result.isString=true;break;case "null":result.isNull=true;break;case "boolean":result.isBoolean=true;break;case "null":result.isNull=true;break;case "enum":result.isEnum=true;break;case "array":result.isArray=true;result.isComplex=
+true;result.isPrimitive=false;break;case "number":case "integer":case "float":result.isNumber=true;break;case "object":result.isObject=true;result.isComplex=true;result.isPrimitive=false;break;default:result.hasType=false;result.isPrimitive=false}return result},_isArray:function(obj){return Object.prototype.toString.apply(obj)==="[object Array]"},_clone:function(obj){var result;var i;if(typeof obj!=="object")return obj;if(!obj)return obj;if(this._isArray(obj)){result=[];for(i=0;i<obj.length;i+=1)result[i]=
+this._clone(obj[i]);return result}result={};for(i in obj)if(obj.hasOwnProperty(i))result[i]=this._clone(obj[i]);return result}};</script><dom-module id="paper-material" assetpath="bower_components/paper-material/"><template><style include="paper-material-shared-styles"></style><style>:host([animated]){@apply (--shadow-transition);}:host{@apply (--paper-material);}</style><content></content></template></dom-module><script>Polymer({is:"paper-material",properties:{elevation:{type:Number,reflectToAttribute:true,value:1},animated:{type:Boolean,reflectToAttribute:true,value:false}}});</script><script>Polymer({is:"iron-a11y-keys",behaviors:[Polymer.IronA11yKeysBehavior],properties:{target:{type:Object,observer:"_targetChanged"},keys:{type:String,reflectToAttribute:true,observer:"_keysChanged"}},attached:function(){if(!this.target)this.target=this.parentNode},_targetChanged:function(target){this.keyEventTarget=target},_keysChanged:function(){this.removeOwnKeyBindings();this.addOwnKeyBinding(this.keys,"_fireKeysPressed")},_fireKeysPressed:function(event){this.fire("keys-pressed",event.detail,{})}});</script><script>Polymer.IronRangeBehavior={properties:{value:{type:Number,value:0,notify:true,reflectToAttribute:true},min:{type:Number,value:0,notify:true},max:{type:Number,value:100,notify:true},step:{type:Number,value:1,notify:true},ratio:{type:Number,value:0,readOnly:true,notify:true}},observers:["_update(value, min, max, step)"],_calcRatio:function(value){return(this._clampValue(value)-this.min)/(this.max-this.min)},_clampValue:function(value){return Math.min(this.max,Math.max(this.min,this._calcStep(value)))},
+_calcStep:function(value){value=parseFloat(value);if(!this.step)return value;var numSteps=Math.round((value-this.min)/this.step);if(this.step<1)return numSteps/(1/this.step)+this.min;else return numSteps*this.step+this.min},_validateValue:function(){var v=this._clampValue(this.value);this.value=this.oldValue=isNaN(v)?this.oldValue:v;return this.value!==v},_update:function(){this._validateValue();this._setRatio(this._calcRatio(this.value)*100)}};</script><dom-module id="paper-progress" assetpath="bower_components/paper-progress/"><template><style>:host{display:block;width:200px;position:relative;overflow:hidden;}:host([hidden]){display:none !important;}#progressContainer{@apply (--paper-progress-container);position:relative;}#progressContainer,
+      /* the stripe for the indeterminate animation*/
+      .indeterminate::after{height:var(--paper-progress-height, 4px);}#primaryProgress,
+      #secondaryProgress,
+      .indeterminate::after{@apply (--layout-fit);}#progressContainer,
+      .indeterminate::after{background:var(--paper-progress-container-color, --google-grey-300);}:host(.transiting) #primaryProgress,
+      :host(.transiting) #secondaryProgress{-webkit-transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:var(--paper-progress-transition-duration, 0.08s);transition-duration:var(--paper-progress-transition-duration, 0.08s);-webkit-transition-timing-function:var(--paper-progress-transition-timing-function, ease);transition-timing-function:var(--paper-progress-transition-timing-function, ease);-webkit-transition-delay:var(--paper-progress-transition-delay, 0s);transition-delay:var(--paper-progress-transition-delay, 0s);}#primaryProgress,
+      #secondaryProgress{@apply (--layout-fit);-webkit-transform-origin:left center;transform-origin:left center;-webkit-transform:scaleX(0);transform:scaleX(0);will-change:transform;}#primaryProgress{background:var(--paper-progress-active-color, --google-green-500);}#secondaryProgress{background:var(--paper-progress-secondary-color, --google-green-100);}:host([disabled]) #primaryProgress{background:var(--paper-progress-disabled-active-color, --google-grey-500);}:host([disabled]) #secondaryProgress{background:var(--paper-progress-disabled-secondary-color, --google-grey-300);}:host(:not([disabled])) #primaryProgress.indeterminate{-webkit-transform-origin:right center;transform-origin:right center;-webkit-animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;}:host(:not([disabled])) #primaryProgress.indeterminate::after{content:"";-webkit-transform-origin:center center;transform-origin:center center;-webkit-animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;}@-webkit-keyframes indeterminate-bar{0%{-webkit-transform:scaleX(1) translateX(-100%);}50%{-webkit-transform:scaleX(1) translateX(0%);}75%{-webkit-transform:scaleX(1) translateX(0%);-webkit-animation-timing-function:cubic-bezier(.28,.62,.37,.91);}100%{-webkit-transform:scaleX(0) translateX(0%);}}@-webkit-keyframes indeterminate-splitter{0%{-webkit-transform:scaleX(.75) translateX(-125%);}30%{-webkit-transform:scaleX(.75) translateX(-125%);-webkit-animation-timing-function:cubic-bezier(.42,0,.6,.8);}90%{-webkit-transform:scaleX(.75) translateX(125%);}100%{-webkit-transform:scaleX(.75) translateX(125%);}}@keyframes indeterminate-bar{0%{transform:scaleX(1) translateX(-100%);}50%{transform:scaleX(1) translateX(0%);}75%{transform:scaleX(1) translateX(0%);animation-timing-function:cubic-bezier(.28,.62,.37,.91);}100%{transform:scaleX(0) translateX(0%);}}@keyframes indeterminate-splitter{0%{transform:scaleX(.75) translateX(-125%);}30%{transform:scaleX(.75) translateX(-125%);animation-timing-function:cubic-bezier(.42,0,.6,.8);}90%{transform:scaleX(.75) translateX(125%);}100%{transform:scaleX(.75) translateX(125%);}}</style><div id="progressContainer"><div id="secondaryProgress" hidden$="[[_hideSecondaryProgress(secondaryRatio)]]"></div><div id="primaryProgress"></div></div></template></dom-module><script>Polymer({is:"paper-progress",behaviors:[Polymer.IronRangeBehavior],properties:{secondaryProgress:{type:Number,value:0},secondaryRatio:{type:Number,value:0,readOnly:true},indeterminate:{type:Boolean,value:false,observer:"_toggleIndeterminate"},disabled:{type:Boolean,value:false,reflectToAttribute:true,observer:"_disabledChanged"}},observers:["_progressChanged(secondaryProgress, value, min, max)"],hostAttributes:{role:"progressbar"},_toggleIndeterminate:function(indeterminate){this.toggleClass("indeterminate",
+indeterminate,this.$.primaryProgress)},_transformProgress:function(progress,ratio){var transform="scaleX("+ratio/100+")";progress.style.transform=progress.style.webkitTransform=transform},_mainRatioChanged:function(ratio){this._transformProgress(this.$.primaryProgress,ratio)},_progressChanged:function(secondaryProgress,value,min,max){secondaryProgress=this._clampValue(secondaryProgress);value=this._clampValue(value);var secondaryRatio=this._calcRatio(secondaryProgress)*100;var mainRatio=this._calcRatio(value)*
+100;this._setSecondaryRatio(secondaryRatio);this._transformProgress(this.$.secondaryProgress,secondaryRatio);this._transformProgress(this.$.primaryProgress,mainRatio);this.secondaryProgress=secondaryProgress;this.setAttribute("aria-valuenow",value);this.setAttribute("aria-valuemin",min);this.setAttribute("aria-valuemax",max)},_disabledChanged:function(disabled){this.setAttribute("aria-disabled",disabled?"true":"false")},_hideSecondaryProgress:function(secondaryRatio){return secondaryRatio===0}});</script><dom-module id="paper-autocomplete" assetpath="bower_components/paper-autocomplete/"><style>:host{position:absolute !important;left:0px;top:52px;@apply (--paper-autocomplete);}paper-material{background-color:white;}#container{overflow:auto;}</style><template><paper-material elevation="2" id="container"><paper-progress hidden$="[[!_showLoader]]" indeterminate=""></paper-progress><iron-selector selected="{{selectedItem}}" id="selector"><template is="dom-repeat" items="{{suggestions}}" id="repeater"><paper-item><div>{{_suggestionDisplay(item)}}</div><paper-ripple></paper-ripple></paper-item></template></iron-selector></paper-material><iron-a11y-keys id="a11y" target="[[target]]" keys="up" on-keys-pressed="selectPrevious"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[target]]" keys="down" on-keys-pressed="selectNext"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[target]]" keys="enter" on-keys-pressed="acceptSelection"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[_keyTarget]]" keys="up" on-keys-pressed="selectPrevious"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[_keyTarget]]" keys="down" on-keys-pressed="selectNext"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[_keyTarget]]" keys="enter" on-keys-pressed="acceptSelection"></iron-a11y-keys></template></dom-module><script>Polymer({is:"paper-autocomplete",behaviors:[Polymer.IronOverlayBehavior,Polymer.IronScrollTargetBehavior],properties:{source:{type:Array},value:{type:Object,notify:true},suggestions:{type:Array,value:[],readOnly:true},target:HTMLElement,selectedItem:{type:Number,value:0},scrollTarget:{type:Object,value:function(){return this.$.container}},sizingTarget:{type:HTMLElement,value:function(){return this.$.container}},loading:{type:Boolean,value:false,readOnly:true,notify:true},loader:{type:Boolean,value:false},
+_showLoader:{type:Boolean,computed:"_computeShowLoader(loader, loading)"},isAttached:Boolean,openOnFocus:{type:Boolean,value:false},_oldTarget:HTMLElement,_keyTarget:{type:HTMLElement,value:function(){return this}}},observers:["_targetChanged(target, isAttached)","_filterSuggestions(source, _oldTarget, isAttached)"],listeners:{"tap":"acceptSelection"},_targetChanged:function(target,isAttached){if(!isAttached)return;this.resetFit();if(this._oldTarget){this.unlisten(this._oldTarget,"input","_valueChanged");
+this.unlisten(this._oldTarget,"focus","_targetFocus");this.unlisten(this._oldTarget,"click","_targetClick");this._oldTarget=null}if(!target)return;if(typeof target==="string")this.target=this.domHost?this.domHost.$[target]:Polymer.dom(this.ownerDocument).querySelector("#"+target);else if(target){this.listen(target,"input","_valueChanged");this.listen(target,"focus","_targetFocus");this.listen(target,"click","_targetClick");this._oldTarget=target;if(target===document.activeElement)this._targetFocus()}},
+_valueChanged:function(){if(!this.isAttached||!this._oldTarget)return;var value=this._oldTarget.value;if(this._previousQuery)if(value.indexOf(this._previousQuery)===0){this._previousQuery=value;this._filterSuggestions();return}else{this._previousQuery=null;this._setSuggestions([])}else if(!value&&this._previousQuery===undefined)return;this.fire("query",{value:value});this._previousQuery=value;if(!this.opened)this.selectedItem=0;this._filterSuggestions();this._setLoading(true)},_filterSuggestions:function(){if(!this.isAttached||
+!this._oldTarget)return;if(this._previousQuery===undefined)return;this._setLoading(false);var source=this.source;if(!source){this._setSuggestions([]);return}var query=this._previousQuery?this._previousQuery.toLowerCase():"";var filter=function(item){var value=typeof item==="string"?item:item.value;return value.toLowerCase().indexOf(query)!==-1};var filtered=query?source.filter(filter):source;if(filtered.length===0){this.close();return}filtered.sort(function(a,b){var valueA=typeof a==="string"?a:a.value;
+var valueB=typeof b==="string"?b:b.value;var aIndex=valueA.indexOf(query);var bIndex=valueB.indexOf(query);if(aIndex===0&&bIndex!==0)return 1;if(aIndex!==0&&bIndex===0)return-1;if(valueA>valueB)return 1;if(valueA<valueB)return-1;return 0});this._setSuggestions(filtered);this.notifyResize();this._ensureSelection();this.opened=true},_suggestionDisplay:function(item){return item.value||item},selectPrevious:function(){if(!this.suggestions||!this.suggestions.length)return;if(!this.opened)this.opened=true;
+this.$.selector.selectPrevious();this.ensureItemVisible(false)},selectNext:function(){if(!this.suggestions||!this.suggestions.length)return;if(!this.opened)this.opened=true;this.$.selector.selectNext();this.ensureItemVisible(true)},acceptSelection:function(){if(!this.opened||!this.suggestions||!this.suggestions.length||!this.$.selector.selectedItem)return;var value=this.$.repeater.itemForElement(this.$.selector.selectedItem);if(typeof value!=="string")value=value.value;this.async(function(){this._inform(value)},
+1)},_inform:function(value){var e=this.fire("selected",{value:value},{cancelable:true});if(!e.defaultPrevented)this.target.value=value;this.close()},ensureItemVisible:function(bottom){if(!this.opened||!this.suggestions||!this.suggestions.length)return;var container=this.scrollTarget;var index=this.$.selector.selected;if(bottom&&index===0){this.scroll(0);return}var toMove;if(!bottom&&index===this.suggestions.length-1){toMove=container.scrollHeight-container.offsetHeight;this.scroll(0,toMove);return}var item=
+this.$.selector.selectedItem;var containerOffsetHeight=bottom?container.offsetHeight:0;var itemOffsetHeight=bottom?item.offsetHeight:0;var visible=containerOffsetHeight+container.scrollTop;var treshold=item.offsetTop+itemOffsetHeight;if(bottom&&treshold>visible){toMove=item.offsetHeight+item.offsetTop-container.offsetHeight;this.scroll(0,toMove)}else if(!bottom&&visible>treshold)this.scroll(0,treshold)},_computeShowLoader:function(loader,loading){return!!loader&&!!loading},_targetFocus:function(){if(!this.openOnFocus||
+this.opened)return;this._previousQuery=this._previousQuery||"";this.debounce("autocomplete-focus",this._valueChanged,20)},_targetClick:function(e){if(!this.opened)return;e.stopPropagation();e.stopImmediatePropagation()},_ensureSelection:function(){if(this.$.selector.selectedItem)return;this.$.selector.selected=0}});</script><dom-module id="primitive-value" assetpath="bower_components/body-json-editor/"><template><style>:host{display:block;@apply --arc-font-body1;@apply --primitive-value;}.value-field{position:relative;display:inline-block;}:host,
+    .value-field{@apply --layout-flex;@apply --layout-horizontal;}paper-input{width:100%;}paper-input[type="text"]{--paper-input-container-input:{color:var(--code-type-text-value-color, #080);};}paper-input[type="number"]{--paper-input-container-input:{color:var(--code-type-number-value-color, #303F9F);};}.boolean-input{--paper-input-container-input:{color:var(--code-type-boolean-value-color, #4A148C);};}.null-value{font-style:italic;color:var(--code-type-null-value-color, #4A148C);}paper-autocomplete{top:var(--body-json-editor-autocomplete-top, 34px);}</style><template is="dom-if" if="[[model.isEnum]]"><paper-dropdown-menu label="Select value" required="[[model.required]]" no-label-float="[[!narrow]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{value}}"><template is="dom-repeat" items="[[model.enum]]"><paper-item data-value$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[model.isBoolean]]"><paper-dropdown-menu label="Select boolean value" required="[[model.required]]" class="boolean-input" no-label-float="[[!narrow]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{value}}"><paper-item data-value="true">True</paper-item><paper-item data-value="false">False</paper-item></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[model.isNull]]"><span class="null-value">Null</span></template><template is="dom-if" if="[[displayInput]]"><span class="value-field"><paper-input id="valueInput" label="Property value" value="{{value}}" required="[[model.required]]" pattern="[[model.pattern]]" name="[[name]]" auto-validate="" type$="[[model.inputType]]" min="[[model.minimum]]" max="[[model.maximum]]" maxlength="[[model.maxLength]]" minlength="[[model.minLength]]" step="[[model.inputStep]]" no-label-float="[[!narrow]]"></paper-input><paper-autocomplete id="valueAutocomplete" source="[[valueSuggestions]]" open-on-focus=""></paper-autocomplete></span></template></template><script>Polymer({is:"primitive-value",behaviors:[ArcBehaviors.BodyJsonEditorBehavior],properties:{narrow:{type:Boolean,value:false},displayInput:{type:Boolean,value:false,observer:"_displayInputChanged",computed:"_computeDisplayInput(model.isBoolean, model.isEnum, model.isNull)"},valueSuggestions:Array},_computeDisplayInput:function(isBoolean,isEnum,isNull){return!isBoolean&&!isEnum&&!isNull},_displayInputChanged:function(display){if(!display)return;Polymer.RenderStatus.afterNextRender(this,function(){var input=
+this.$$("#valueInput");var autocomplete=this.$$("#valueAutocomplete");autocomplete.target=input})},_remove:function(){this.fire("remove-property",{value:this.value})},_changeType:function(){this._previousType=this.value.type;this.set("value.type","")},_cancelTypeChange:function(){this.set("value.type",this._previousType)}});</script></dom-module><dom-module id="property-type-selector" assetpath="bower_components/body-json-editor/"><template><style>:host{@apply --layout-horizontal;@apply --property-type-selector;}paper-dropdown-menu{@apply --layout-flex;@apply --property-type-selector-dropdown;}paper-listbox{@apply --property-type-selector-dropdown-list;}paper-item{@apply --property-type-selector-dropdown-list-item;}paper-item:hover{@apply --property-type-selector-dropdown-list-item-hover;}</style><paper-dropdown-menu label="Select type" no-label-float=""><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{selected}}"><paper-item data-value="string">String</paper-item><paper-item data-value="float">Float</paper-item><paper-item data-value="integer">Integer</paper-item><paper-item data-value="boolean">Boolean</paper-item><paper-item data-value="null">Null</paper-item><paper-item data-value="object">Object</paper-item><paper-item data-value="array">Array</paper-item></paper-listbox></paper-dropdown-menu></template><script>Polymer({is:"property-type-selector",properties:{selected:{type:String,notify:true}}});</script></dom-module><dom-module id="property-editor" assetpath="bower_components/body-json-editor/"><template><style>:host{display:block;@apply --arc-font-body1;@apply --property-editor;--paper-input-container-color:rgba(0, 0, 0, 0.54);--paper-dropdown-menu-input:{color:var(--property-editor-dropdown-menu-input-color, #673AB7);};--paper-dropdown-menu-button:{color:var(--property-editor-dropdown-menu-button-color, #673AB7);};}.indent{padding-left:12px;border-left:1px #FFCA28 solid;}.action-button{color:var(--body-json-editor-action-button-color, var(--secondary-button-color, var(--accent-color)));background:var(--body-json-editor-action-button-background, var(--secondary-button-background, #fff));transition:opacity 0.2s ease-in-out, color 0.2s ease-in-out;@apply --secondary-button;@apply --body-json-editor-action-button;}.action-button:hover{color:var(--body-json-editor-action-button-color-hover, var(--secondary-button-color, var(--accent-color)));background:var(--body-json-editor-action-button-background-hover, var(--secondary-button-background, #fff));@apply --secondary-button-hover;@apply --body-json-editor-action-button-hover;}.action-icon{margin-right:8px;color:var(--body-json-editor-action-icon-color, var(--secondary-button-color, var(--accent-color)));opacity:var(--body-json-editor-action-icon-opacity, 0.54);transition:opacity 0.2s ease-in-out, color 0.2s ease-in-out;}.action-button:hover .action-icon,
+    .action-icon:hover{color:var(--body-json-editor-action-icon-color-hover, var(--secondary-button-color, var(--accent-color)));opacity:var(--body-json-editor-action-icon-opacity-hover, 0.74);}paper-icon-button{color:var(--inline-form-action-icon-color, rgba(0, 0, 0, 0.74));transition:color 0.2s linear;}paper-icon-button:hover{color:var(--inline-form-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.property-input,
+    .value-area{@apply --layout-horizontal;@apply --layout-center;}:host:not([narrow]) .value-area{@apply --layout-flex;}primitive-value,
+    property-type-selector,
+    .key-input,
+    .key-name-container{@apply --layout-flex;}.key-name-container{margin-right:8px;display:inline-block;position:relative;}.array-items-label{color:var(--property-editor-array-label-color, rgba(0, 0, 0, 0.74));@apply --property-editor-array-label;}paper-autocomplete{top:var(--body-json-editor-autocomplete-top, 34px);}:host([narrow]) .property-input{@apply --layout-vertical;@apply --layout-start;@apply --layout-flex;}:host([narrow]) .key-input,
+    :host([narrow]) .key-name-container{width:100%;}:host([narrow]) .key-input,
+    :host([narrow]) .value-area{width:100%;margin-right:0;}:host([narrow]){margin-bottom:var(--property-editor-narrow-margin-bottom, 12px);}</style><div class="property-input"><template is="dom-if" if="[[!noKey]]"><span class="key-name-container"><paper-input id="keyInput" label="property name" class="key-input" no-label-float="[[!narrow]]" value="{{name}}"></paper-input><paper-autocomplete id="keyAutocomplete" source="[[typeModel.keys]]" open-on-focus=""></paper-autocomplete></span></template><div class="value-area"><template is="dom-if" if="[[model.isPrimitive]]" restamp=""><primitive-value narrow="[[narrow]]" value="{{value}}" model="{{model}}" value-suggestions="[[_computeValuesSuggestions(name, typeModel.valuesMapping)]]"></primitive-value></template><template is="dom-if" if="[[!model.hasType]]"><property-type-selector on-selected-changed="_updateType"></property-type-selector><template is="dom-if" if="[[_previousType]]"><span><paper-icon-button icon="arc:clear" on-tap="_cancelTypeChange"></paper-icon-button><paper-tooltip animation-delay="200">Cancel type change</paper-tooltip></span></template></template><template is="dom-if" if="[[model.hasType]]"><template is="dom-if" if="[[model.isArray]]" restamp=""><span class="array-items-label">Array items ([[model.items.length]])</span></template><template is="dom-if" if="[[noKey]]"><template is="dom-if" if="[[model.isObject]]" restamp=""><span class="array-item-object-label">Object</span></template></template><span><paper-icon-button icon="arc:edit" on-tap="_changeType"></paper-icon-button><paper-tooltip animation-delay="200">Change data type</paper-tooltip></span><span><paper-icon-button icon="arc:remove-circle-outline" on-tap="_removeProperty"></paper-icon-button><paper-tooltip animation-delay="200">Remove property</paper-tooltip></span></template></div></div><template is="dom-if" if="[[model.isComplex]]" restamp=""><section class="indent"><template is="dom-if" if="[[model.isObject]]" restamp=""><template is="dom-repeat" items="{{model.properties}}"><property-editor data-object-property="" narrow="[[narrow]]" value="{{item.value}}" name="{{item.name}}" model="{{item}}" type-model="[[_computeProperyTypeModel(name, typeModel.properties)]]" on-remove-property="_removeSubProperty" on-duplicate-property="_onDuplicateObject"></property-editor></template><div class="add-action"><span><paper-button class="action-button" on-tap="addProperty"><iron-icon class="action-icon" icon="arc:add-circle-outline"></iron-icon>Add property</paper-button><paper-tooltip animation-delay="200">Add new object property</paper-tooltip></span><template is="dom-if" if="[[noKey]]"><span><paper-button class="action-button" on-tap="_duplicateProperty">Duplicate</paper-button><paper-tooltip animation-delay="200">Copy this object and append to array</paper-tooltip></span></template></div></template><template is="dom-if" if="[[model.isArray]]" restamp=""><template is="dom-repeat" items="{{model.items}}"><property-editor data-array-property="" narrow="[[narrow]]" no-key="" value="{{item.value}}" model="{{item}}" type-model="[[_computeProperyTypeModel(name, typeModel.properties)]]" on-remove-property="_removeSubProperty" on-duplicate-property="_onDuplicateObject"></property-editor></template><div class="add-action"><paper-button class="action-button" on-tap="addProperty"><iron-icon class="action-icon" icon="arc:add-circle-outline"></iron-icon>Add item</paper-button></div></template></section></template></template><script>Polymer({is:"property-editor",behaviors:[ArcBehaviors.BodyJsonEditorBehavior],properties:{noKey:{type:Boolean,value:false,observer:"_noKeyChanged"},_previousType:String,hasNameAutofill:{type:Boolean,value:false,computed:"_computeHasNameAutofill(typeModel.isObject, typeModel.keys)"},_lastAddedType:String},observers:["_nameChanged(hasNameAutofill, name, typeModel)"],_noKeyChanged:function(noKey){if(noKey)return;Polymer.RenderStatus.afterNextRender(this,function(){var input=this.$$("#keyInput");var autocomplete=
+this.$$("#keyAutocomplete");autocomplete.target=input})},_updateType:function(e){this._updateModelType(e.detail.value)},_changeType:function(){this._previousType=this.model.type;this._updateModelType(undefined)},_cancelTypeChange:function(){this._updateModelType(this._previousType);this._previousType=undefined},_updateModelType:function(type){var m=this.model;m.type=type;var model=this._computeModelItem(m);this.set("model",model);this._lastAddedType=type;this.fire("last-used-type",{value:type},{bubbles:false})},
+_removeProperty:function(){this.fire("remove-property",{},{bubbles:false})},addProperty:function(){var hostModel=this.model;var base={};if(this._lastAddedType)base.type=this._lastAddedType;var childModel=this._computeModelItem(base);var property;if(hostModel.isObject)property="properties";else property="items";this.push(["model",property],childModel)},_duplicateProperty:function(){this.fire("duplicate-property",{},{bubbles:false})},_onDuplicateObject:function(e){if(e.target===this)return;var index=
+e.model.get("index");var base=this.model.items[index];base=this._clone(base);this.push(["model","items"],base)},_removeSubProperty:function(e){var index=e.model.get("index");var property;if(this.model.isObject)property="properties";else property="items";this.splice(["model",property],index,1)},_computeHasNameAutofill:function(isObject,keys){return!!(isObject&&keys&&keys.length)},_nameChanged:function(hasNameAutofill,name,typeModel){if(!hasNameAutofill||!name||!typeModel)return;if(typeModel.typesMapping&&
+typeModel.typesMapping[name]){var type=typeModel.typesMapping[name];this._updateModelType(type)}if(typeModel.defaultsMapping&&typeModel.defaultsMapping[name]){var defaultValue=typeModel.defaultsMapping[name];this.set("value",defaultValue)}},_computeValuesSuggestions:function(name,valuesMapping){if(!valuesMapping||!valuesMapping[name])return;return valuesMapping[name]},_computeProperyTypeModel:function(name,list){if(name===undefined||!list||!list[name])return;return list[name]}});</script></dom-module><dom-module id="body-json-editor" assetpath="bower_components/body-json-editor/"><template><style>:host{display:block;@apply --body-json-editor;}.action-button{color:var(--body-json-editor-action-button-color, var(--secondary-button-color, var(--accent-color)));background:var(--body-json-editor-action-button-background, var(--secondary-button-background, #fff));transition:opacity 0.2s ease-in-out, color 0.2s ease-in-out;@apply --secondary-button;@apply --body-json-editor-action-button;}.action-button:hover{color:var(--body-json-editor-action-button-color-hover, var(--secondary-button-color, var(--accent-color)));background:var(--body-json-editor-action-button-background-hover, var(--secondary-button-background, #fff));@apply --secondary-button-hover;@apply --body-json-editor-action-button-hover;}.action-icon{margin-right:8px;color:var(--body-json-editor-action-icon-color, var(--secondary-button-color, var(--accent-color)));opacity:var(--body-json-editor-action-icon-opacity, 0.54);transition:opacity 0.2s ease-in-out, color 0.2s ease-in-out;}.action-button:hover .action-icon,
+    .action-icon:hover{color:var(--body-json-editor-action-icon-color-hover, var(--secondary-button-color, var(--accent-color)));opacity:var(--body-json-editor-action-icon-opacity-hover, 0.74);}</style><template is="dom-if" if="[[_modelNotSet]]"><div class="add-action"><paper-button class="action-button" on-tap="_addProperty">Add object property</paper-button><paper-button class="action-button" on-tap="_addItem">Add array item</paper-button></div></template><template is="dom-if" if="[[model.isObject]]"><template is="dom-repeat" items="{{model.properties}}" id="object"><property-editor narrow="[[narrow]]" value="{{item.value}}" name="{{item.name}}" model="{{item}}" type-model="[[typeModel]]" on-remove-property="_removeProperty" on-duplicate-property="_onDuplicateObject" on-last-used-type="_updateLastUsedType"></property-editor></template><div class="add-action"><paper-button class="action-button" on-tap="_addProperty"><iron-icon class="action-icon" icon="arc:add-circle-outline"></iron-icon>Add property</paper-button></div></template><template is="dom-if" if="[[model.isArray]]"><template is="dom-repeat" items="{{model.items}}" id="array"><property-editor narrow="[[narrow]]" no-key="" value="{{item.value}}" model="{{item}}" type-model="[[typeModel]]" on-remove-property="_removeProperty" on-duplicate-property="_onDuplicateObject" on-last-used-type="_updateLastUsedType"></property-editor></template><div class="add-action"><paper-button class="action-button" on-tap="_addItem"><iron-icon class="action-icon" icon="arc:add-circle-outline"></iron-icon>Add array item</paper-button></div></template></template><script>Polymer({is:"body-json-editor",behaviors:[ArcBehaviors.BodyJsonEditorBehavior,ArcBehaviors.RequestPayloadEditorBehavior],properties:{ramlType:Object,model:{type:Object,readOnly:true},typeModel:{type:Object,readOnly:true},_modelNotSet:{type:Boolean,value:true,computed:"_computeModelNotSet(model)"},_lastAddedType:String},observers:["_typeChanged(_isOpened, ramlType)","_valueChanged(_isOpened, value)","_modelChanged(_isOpened, model.*)"],_typeChanged:function(opened,type){if(!opened||!type)return;if(type instanceof
+Array)type=type[0];if(!type)return;this._computeRamlBaseModel(type);var model=this.__computeTypeModel(type);this._setTypeModel(model)},__computeTypeModel:function(type){if(!type)return;if(["object","array"].indexOf(type.type)===-1)return;var result=this._computeTypeModel(type);return result},_computeModelNotSet:function(model){return!model||!(model.properties||model.items)},_computeRamlBaseModel:function(type){var baseType=type.type;var model=this._computeModelItem({isRoot:true,type:baseType});this._setModel(model)},
+_addProperty:function(){this.__createItemType("object")},_addItem:function(){this.__createItemType("array")},__createItemType:function(type){var base={isRoot:false};if(this._lastAddedType)base.type=this._lastAddedType;var property=this._computeModelItem(base);var propertyName;if(type==="object")propertyName="properties";else propertyName="items";if(!this.model){var model=this._computeModelItem({type:type,isRoot:true});model[propertyName].push(property);this._setModel(model)}else this.push(["model",
+propertyName],property)},_removeProperty:function(e){var index=e.model.get("index");var model=this.model;var property;if(model.isObject)property="properties";else property="items";if(model[property].length===1)this._setModel(undefined);else this.splice(["model",property],index,1)},_modelChanged:function(opened,record){if(!opened||!record||!record.path)return;if(record.path.indexOf("length")!==-1)return;this.debounce("model-to-value",function(){this._setValueFromModel()},10)},_setValueFromModel:function(){var model=
+this.model;var value=this._computeJson(model);value=JSON.stringify(value);this._internalValueChage=true;this.set("value",value);this._internalValueChage=false},_computeJson:function(model){var result=model.isArray?[]:{};var properties;if(model.isArray){if(!model.items||!model.items.length)return result;properties=model.items}else{if(!model.properties||!model.properties.length)return result;properties=model.properties}properties.forEach(function(item){var _value;if(item.isObject||item.isArray)_value=
+this._computeJson(item);else _value=this._valueWithType(item);if(model.isArray)result[result.length]=_value;else result[item.name]=_value},this);return result},_valueWithType:function(model){var result;switch(model.type){case "integer":case "float":result=Number(model.value);if(result!==result)result=model.value;break;case "boolean":var type=typeof model.value;if(type==="boolean")result=model.value;else if(model.value==="true")result=true;else result=false;break;case "null":result=null;break;default:result=
+model.value}return result},_valueChanged:function(opened,value){if(!opened||this._internalValueChage)return;var json;if(typeof value==="string")try{json=JSON.parse(value)}catch(e){return}else json=value;var model=this._modelFromValue(json);this._setModel(model)},_modelFromValue:function(obj){var type=this._detectObjectType(obj);if(!(type==="object"||type==="array")){console.info("body-json-editor can only support objects or arrays.");return}var model=this._computeValueProperyModel(obj);model.isRoot=
+true;return model},_computeValueProperyModel:function(value,key){var baseType=this._detectObjectType(value);var baseModel=this._computeModelItem({type:baseType,isRoot:false,name:key||"",value:value||""});if(baseModel.isArray)value.forEach(function(item){var _model=this._computeValueProperyModel(item);if(_model.isBoolean)_model.value=String(_model.value);baseModel.items.push(_model)},this);else if(baseModel.isObject)Object.keys(value).forEach(function(key){var _model=this._computeValueProperyModel(value[key],
+key);if(_model.isBoolean)_model.value=String(_model.value);baseModel.properties.push(_model)},this);return baseModel},_detectObjectType:function(obj){if(obj===undefined||obj===null)return"null";var type=typeof obj;switch(type){case "number":if(!Number.isInteger(obj))return"float";return type;case "string":var _test=Number(obj);if(_test!==_test)return type;if(!Number.isInteger(_test))return"float";return"number";case "boolean":return type}if(this._isArray(obj))return"array";return"object"},_updateLastUsedType:function(e){this._lastAddedType=
+e.detail.value},_computeTypeModel:function(type){if(!type)return;var dataType=type.type;switch(dataType){case "object":case "enum":return this._computeObjectTypeModel(type);case "array":return this._computeArrayTypeModel(type)}},_computeObjectTypeModel:function(type){var result={defaultsMapping:{},typesMapping:{},keys:[],valuesMapping:{},type:type.type,isArray:false,isObject:true,properties:{}};if(!type.properties)return result;var typeProperties=type.properties;if(!(typeProperties instanceof Array))typeProperties=
+this._obj2array(typeProperties);for(var i=0,size=typeProperties.length;i<size;i++){var property=typeProperties[i];var key=property.key;result.keys.push(key);result.typesMapping[key]=property.type;if(property.type!=="object"){var typeDefault=this._propertyDefault(property);if(typeDefault)result.defaultsMapping[key]=typeDefault;var typeValues=this._propertyValues(property);if(typeValues&&typeValues.length)result.valuesMapping[key]=typeValues}var model=this._computeTypeModel(property);if(model)result.properties[key]=
+model}return result},_computeArrayTypeModel:function(type){var result={types:[],type:type.type,isArray:true,isObject:false};var items=type.items;if(this._isArray(items))items=items[0];if(typeof items==="string"){result.types.push(items);return result}if(items.type){result.types.push(items.type);if(items.type==="object"&&items.properties)result.properties={"":this._computeTypeModel(items)}}return result},_propertyDefault:function(type){if(type.default)return type.default;if(type.required&&type.examples)return type.examples[0]},
+_propertyValues:function(type){var result=[];if(type.default)result.push(type.default);if(type.examples)result=result.concat(type.examples);return result},_obj2array:function(obj){if(obj instanceof Array)return obj;return Object.keys(obj).map(function(key){if(Object(obj[key])===obj[key])obj[key].key=key;return obj[key]})}});</script></dom-module><script>Polymer({is:"iron-request",hostAttributes:{hidden:true},properties:{xhr:{type:Object,notify:true,readOnly:true,value:function(){return new XMLHttpRequest}},response:{type:Object,notify:true,readOnly:true,value:function(){return null}},status:{type:Number,notify:true,readOnly:true,value:0},statusText:{type:String,notify:true,readOnly:true,value:""},completes:{type:Object,readOnly:true,notify:true,value:function(){return new Promise(function(resolve,reject){this.resolveCompletes=resolve;this.rejectCompletes=
+reject}.bind(this))}},progress:{type:Object,notify:true,readOnly:true,value:function(){return{}}},aborted:{type:Boolean,notify:true,readOnly:true,value:false},errored:{type:Boolean,notify:true,readOnly:true,value:false},timedOut:{type:Boolean,notify:true,readOnly:true,value:false}},get succeeded(){if(this.errored||this.aborted||this.timedOut)return false;var status=this.xhr.status||0;return status===0||status>=200&&status<300},send:function(options){var xhr=this.xhr;if(xhr.readyState>0)return null;
+xhr.addEventListener("progress",function(progress){this._setProgress({lengthComputable:progress.lengthComputable,loaded:progress.loaded,total:progress.total})}.bind(this));xhr.addEventListener("error",function(error){this._setErrored(true);this._updateStatus();this.rejectCompletes(error)}.bind(this));xhr.addEventListener("timeout",function(error){this._setTimedOut(true);this._updateStatus();this.rejectCompletes(error)}.bind(this));xhr.addEventListener("abort",function(){this._updateStatus();this.rejectCompletes(new Error("Request aborted."))}.bind(this));
+xhr.addEventListener("loadend",function(){this._updateStatus();this._setResponse(this.parseResponse());if(!this.succeeded){this.rejectCompletes(new Error("The request failed with status code: "+this.xhr.status));return}this.resolveCompletes(this)}.bind(this));this.url=options.url;xhr.open(options.method||"GET",options.url,options.async!==false);var acceptType={"json":"application/json","text":"text/plain","html":"text/html","xml":"application/xml","arraybuffer":"application/octet-stream"}[options.handleAs];
+var headers=options.headers||Object.create(null);var newHeaders=Object.create(null);for(var key in headers)newHeaders[key.toLowerCase()]=headers[key];headers=newHeaders;if(acceptType&&!headers["accept"])headers["accept"]=acceptType;Object.keys(headers).forEach(function(requestHeader){if(/[A-Z]/.test(requestHeader))Polymer.Base._error("Headers must be lower case, got",requestHeader);xhr.setRequestHeader(requestHeader,headers[requestHeader])},this);if(options.async!==false){if(options.async)xhr.timeout=
+options.timeout;var handleAs=options.handleAs;if(!!options.jsonPrefix||!handleAs)handleAs="text";xhr.responseType=xhr._responseType=handleAs;if(!!options.jsonPrefix)xhr._jsonPrefix=options.jsonPrefix}xhr.withCredentials=!!options.withCredentials;var body=this._encodeBodyObject(options.body,headers["content-type"]);xhr.send((body));return this.completes},parseResponse:function(){var xhr=this.xhr;var responseType=xhr.responseType||xhr._responseType;var preferResponseText=!this.xhr.responseType;var prefixLen=
+xhr._jsonPrefix&&xhr._jsonPrefix.length||0;try{switch(responseType){case "json":if(preferResponseText||xhr.response===undefined)try{return JSON.parse(xhr.responseText)}catch(_){return null}return xhr.response;case "xml":return xhr.responseXML;case "blob":case "document":case "arraybuffer":return xhr.response;case "text":default:{if(prefixLen)try{return JSON.parse(xhr.responseText.substring(prefixLen))}catch(_$0){return null}return xhr.responseText}}}catch(e){this.rejectCompletes(new Error("Could not parse response. "+
+e.message))}},abort:function(){this._setAborted(true);this.xhr.abort()},_encodeBodyObject:function(body,contentType){if(typeof body=="string")return body;var bodyObj=(body);switch(contentType){case "application/json":return JSON.stringify(bodyObj);case "application/x-www-form-urlencoded":return this._wwwFormUrlEncode(bodyObj)}return body},_wwwFormUrlEncode:function(object){if(!object)return"";var pieces=[];Object.keys(object).forEach(function(key){pieces.push(this._wwwFormUrlEncodePiece(key)+"\x3d"+
+this._wwwFormUrlEncodePiece(object[key]))},this);return pieces.join("\x26")},_wwwFormUrlEncodePiece:function(str){if(str===null)return"";return encodeURIComponent(str.toString().replace(/\r?\n/g,"\r\n")).replace(/%20/g,"+")},_updateStatus:function(){this._setStatus(this.xhr.status);this._setStatusText(this.xhr.statusText===undefined?"":this.xhr.statusText)}});</script><script>Polymer({is:"iron-ajax",hostAttributes:{hidden:true},properties:{url:{type:String},params:{type:Object,value:function(){return{}}},method:{type:String,value:"GET"},headers:{type:Object,value:function(){return{}}},contentType:{type:String,value:null},body:{type:Object,value:null},sync:{type:Boolean,value:false},handleAs:{type:String,value:"json"},withCredentials:{type:Boolean,value:false},timeout:{type:Number,value:0},auto:{type:Boolean,value:false},verbose:{type:Boolean,value:false},lastRequest:{type:Object,
+notify:true,readOnly:true},loading:{type:Boolean,notify:true,readOnly:true},lastResponse:{type:Object,notify:true,readOnly:true},lastError:{type:Object,notify:true,readOnly:true},activeRequests:{type:Array,notify:true,readOnly:true,value:function(){return[]}},debounceDuration:{type:Number,value:0,notify:true},jsonPrefix:{type:String,value:""},bubbles:{type:Boolean,value:false},_boundHandleResponse:{type:Function,value:function(){return this._handleResponse.bind(this)}}},observers:["_requestOptionsChanged(url, method, params.*, headers, contentType, "+
+"body, sync, handleAs, jsonPrefix, withCredentials, timeout, auto)"],get queryString(){var queryParts=[];var param;var value;for(param in this.params){value=this.params[param];param=window.encodeURIComponent(param);if(Array.isArray(value))for(var i=0;i<value.length;i++)queryParts.push(param+"\x3d"+window.encodeURIComponent(value[i]));else if(value!==null)queryParts.push(param+"\x3d"+window.encodeURIComponent(value));else queryParts.push(param)}return queryParts.join("\x26")},get requestUrl(){var queryString=
+this.queryString;var url=this.url||"";if(queryString){var bindingChar=url.indexOf("?")>=0?"\x26":"?";return url+bindingChar+queryString}return url},get requestHeaders(){var headers={};var contentType=this.contentType;if(contentType==null&&typeof this.body==="string")contentType="application/x-www-form-urlencoded";if(contentType)headers["content-type"]=contentType;var header;if(this.headers instanceof Object)for(header in this.headers)headers[header]=this.headers[header].toString();return headers},
+toRequestOptions:function(){return{url:this.requestUrl||"",method:this.method,headers:this.requestHeaders,body:this.body,async:!this.sync,handleAs:this.handleAs,jsonPrefix:this.jsonPrefix,withCredentials:this.withCredentials,timeout:this.timeout}},generateRequest:function(){var request=(document.createElement("iron-request"));var requestOptions=this.toRequestOptions();this.push("activeRequests",request);request.completes.then(this._boundHandleResponse).catch(this._handleError.bind(this,request)).then(this._discardRequest.bind(this,
+request));request.send(requestOptions);this._setLastRequest(request);this._setLoading(true);this.fire("request",{request:request,options:requestOptions},{bubbles:this.bubbles});this.fire("iron-ajax-request",{request:request,options:requestOptions},{bubbles:this.bubbles});return request},_handleResponse:function(request){if(request===this.lastRequest){this._setLastResponse(request.response);this._setLastError(null);this._setLoading(false)}this.fire("response",request,{bubbles:this.bubbles});this.fire("iron-ajax-response",
+request,{bubbles:this.bubbles})},_handleError:function(request,error){if(this.verbose)Polymer.Base._error(error);if(request===this.lastRequest){this._setLastError({request:request,error:error,status:request.xhr.status,statusText:request.xhr.statusText,response:request.xhr.response});this._setLastResponse(null);this._setLoading(false)}this.fire("iron-ajax-error",{request:request,error:error},{bubbles:this.bubbles});this.fire("error",{request:request,error:error},{bubbles:this.bubbles})},_discardRequest:function(request){var requestIndex=
+this.activeRequests.indexOf(request);if(requestIndex>-1)this.splice("activeRequests",requestIndex,1)},_requestOptionsChanged:function(){this.debounce("generate-request",function(){if(this.url==null)return;if(this.auto)this.generateRequest()},this.debounceDuration)}});</script><script>Polymer({is:"iron-form",extends:"form",properties:{disableNativeValidationUi:{type:Boolean,value:false},withCredentials:{type:Boolean,value:false},contentType:{type:String,value:"application/x-www-form-urlencoded"},headers:{type:Object,value:function(){return{}}},request:{type:Object}},listeners:{"iron-form-element-register":"_registerElement","iron-form-element-unregister":"_unregisterElement","submit":"_onSubmit","reset":"_onReset"},registered:function(){var form=document.createElement("form");
+var input=document.createElement("input");input.setAttribute("required","true");form.appendChild(input);var button=document.createElement("input");button.setAttribute("type","submit");form.appendChild(button);Polymer.clientSupportsFormValidationUI=true;form.addEventListener("submit",function(event){Polymer.clientSupportsFormValidationUI=false;event.preventDefault()});button.click()},ready:function(){this.request=document.createElement("iron-ajax");this.request.addEventListener("response",this._handleFormResponse.bind(this));
+this.request.addEventListener("error",this._handleFormError.bind(this));this._customElements=[];this._customElementsInitialValues=[]},submit:function(){if(!this.noValidate&&!this.validate()){if(Polymer.clientSupportsFormValidationUI&&!this.disableNativeValidationUi)this._doFakeSubmitForValidation();this.fire("iron-form-invalid");return}var json=this.serialize();this.request.url=this.getAttribute("action");this.request.method=this.getAttribute("method")||"GET";this.request.contentType=this.contentType;
+this.request.withCredentials=this.withCredentials;this.request.headers=this.headers;if(this.request.method.toUpperCase()==="POST")this.request.body=json;else this.request.params=json;var event=this.fire("iron-form-presubmit",{},{cancelable:true});if(!event.defaultPrevented){this.request.generateRequest();this.fire("iron-form-submit",json)}},_onSubmit:function(event){this.submit();if(event)event.preventDefault();return false},_onReset:function(event){this._resetCustomElements()},serialize:function(){var json=
+{};function addSerializedElement(name,value){if(json[name]===undefined)json[name]=value;else{if(!Array.isArray(json[name]))json[name]=[json[name]];json[name].push(value)}}for(var el,i=0;el=this._customElements[i],i<this._customElements.length;i++)if(!this._isChildOfRegisteredParent(el,true)&&this._useValue(el))addSerializedElement(el.name,el.value);for(var el,i=0;el=this.elements[i],i<this.elements.length;i++){if(this._isChildOfRegisteredParent(el,true)||!this._useValue(el))continue;if(el.tagName.toLowerCase()===
+"select"&&el.multiple)for(var o=0;o<el.options.length;o++){if(el.options[o].selected)addSerializedElement(el.name,el.options[o].value)}else addSerializedElement(el.name,el.value)}return json},_handleFormResponse:function(event){this.fire("iron-form-response",event.detail)},_handleFormError:function(event){this.fire("iron-form-error",event.detail)},_registerElement:function(e){var element=Polymer.dom(e).rootTarget;element._parentForm=this;this._customElements.push(element);this._customElementsInitialValues.push(this._usesCheckedInsteadOfValue(element)?
+element.checked:element.value)},_unregisterElement:function(e){var target=e.detail.target;if(target){var index=this._customElements.indexOf(target);if(index>-1){this._customElements.splice(index,1);this._customElementsInitialValues.splice(index,1)}}},validate:function(){var valid=true;var validatable;for(var el,i=0;el=this._customElements[i],i<this._customElements.length;i++)if(!this._isChildOfRegisteredParent(el,false)&&!el.disabled){validatable=(el);if(validatable.validate)valid=!!validatable.validate()&&
+valid}for(var el,i=0;el=this.elements[i],i<this.elements.length;i++){if(this._isChildOfRegisteredParent(el,false))continue;if(!el.hasAttribute("is")&&el.willValidate&&el.checkValidity)valid=el.checkValidity()&&valid}return valid},_usesCheckedInsteadOfValue:function(el){if(el.type=="checkbox"||el.type=="radio"||el.getAttribute("role")=="checkbox"||el.getAttribute("role")=="radio"||el["_hasIronCheckedElementBehavior"])return true;return false},_useValue:function(el){if(el.disabled||!el.name)return false;
+if(this._usesCheckedInsteadOfValue(el))return el.checked;return true},_doFakeSubmitForValidation:function(){var fakeSubmit=document.createElement("input");fakeSubmit.setAttribute("type","submit");fakeSubmit.style.display="none";this.appendChild(fakeSubmit);fakeSubmit.click();this.removeChild(fakeSubmit)},_resetCustomElements:function(){this.async(function(){for(var el,i=0;el=this._customElements[i],i<this._customElements.length;i++){if(el.disabled)continue;if(this._usesCheckedInsteadOfValue(el))el.checked=
+this._customElementsInitialValues[i];else{var value=this._customElementsInitialValues[i];if(value===undefined)value=null;el.value=value;if(el.inputElement)el.inputElement.value=el.value;else if(el.textarea)el.textarea.value=el.value}el.invalid=false}this.fire("iron-form-reset")},1)},_isChildOfRegisteredParent:function(node,checkHasName){var parent=node;while(parent&&parent!==document&&parent!=this){parent=Polymer.dom(parent).parentNode||parent.host;if(parent&&(!checkHasName||parent.name)&&parent._parentForm===
+this)return true}return false}});</script><script>(function(global){var NUMBER_INPUT_TYPES=["number","integer","float"];global.ArcBehaviors=global.ArcBehaviors||{};global.ArcBehaviors.RamlTypeFormBehavior={properties:{},__parseArrayExample:function(example){try{var arr=JSON.parse(example);if(arr instanceof Array)return arr;return example}catch(e){}return example},_computeItemInputType:function(item){if(item.type==="array"){if(typeof item.items==="string")return this.__computeInputType(item.items);return this.__computeInputType(item.items.type)}return this.__computeInputType(item.type)},
+__computeInputType:function(type){if(type&&NUMBER_INPUT_TYPES.indexOf(type)!==-1)return"number";else if(type==="boolean")return"boolean";else if(type==="date-only")return"date";return"text"},_createModelObject:function(item,opts){opts=this._defaultModelOptions(opts);item=this._clone(item);item.isEnum=!!(item.enum&&item.enum.length);item.isArray=item.type==="array";item.hasDescription=!!item.description;item.inputLabel=item.displayName||item.name||"Value";if(item.required)item.inputLabel+="*";item.inputType=
+this._computeItemInputType(item);item.isBoolean=item.inputType==="boolean";this._computeModelPattern(item);if(item.examples&&item.examples.length&&item.examples[0])item.inputPlaceholder="Example: "+item.examples[0];else if(item.example&&typeof item.example==="string")item.inputPlaceholder="Example: "+item.example;if(item.inputPlaceholder)item.inputFloatLabel=true;if(item.required&&typeof item.default!=="undefined"&&!item.value)item.value=item.isArray?this.__parseArrayExample(item.default):item.default;
+if(typeof item.value==="undefined"&&item.required){if(item.examples)item.value=item.examples[0];else if(item.example)item.value=item.example;if(item.value&&item.value.indexOf&&item.value.indexOf(item.name+opts.valueDelimiter)===0)item.value=item.value.substr(item.name.length+1);if(typeof item.value==="undefined"&&item.isEnum)item.value=item.enum[0]}if(opts.decodeValues&&item.value&&typeof item.value==="string")item.value=decodeURIComponent(item.value.replace(/\+/g," "));if(item.value&&item.isArray&&
+typeof item.value==="string"){var _v=this.__parseArrayExample(item.value);item.value=_v instanceof Array?_v:[_v]}if(item.isArray&&!item.value)item.value=[""];if(item.isBoolean&&typeof item.value==="boolean")item.value=String(item.value);return item},_defaultModelOptions:function(opts){opts=opts||{};opts.valueDelimiter=opts.valueDelimiter||"\x3d";opts.decodeValues=opts.decodeValues||false;return opts},_computeModelPattern:function(item){if(!item.pattern)if(item.inputType==="date")item.pattern="[0-9]{4}-[0-9]{2}-[0-9]{2}";
+return item},_isArray:function(obj){return Object.prototype.toString.apply(obj)==="[object Array]"},_clone:function(obj){var result;var i;if(typeof obj!=="object")return obj;if(!obj)return obj;if(this._isArray(obj)){result=[];for(i=0;i<obj.length;i+=1)result[i]=this._clone(obj[i]);return result}result={};for(i in obj)if(obj.hasOwnProperty(i))result[i]=this._clone(obj[i]);return result}}})(window);</script><script>Polymer.IronCheckedElementBehaviorImpl={properties:{checked:{type:Boolean,value:false,reflectToAttribute:true,notify:true,observer:"_checkedChanged"},toggles:{type:Boolean,value:true,reflectToAttribute:true},value:{type:String,value:"on",observer:"_valueChanged"}},observers:["_requiredChanged(required)"],created:function(){this._hasIronCheckedElementBehavior=true},_getValidity:function(_value){return this.disabled||!this.required||this.checked},_requiredChanged:function(){if(this.required)this.setAttribute("aria-required",
+"true");else this.removeAttribute("aria-required")},_checkedChanged:function(){this.active=this.checked;this.fire("iron-change")},_valueChanged:function(){if(this.value===undefined||this.value===null)this.value="on"}};Polymer.IronCheckedElementBehavior=[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior,Polymer.IronCheckedElementBehaviorImpl];</script><script>Polymer.PaperCheckedElementBehaviorImpl={_checkedChanged:function(){Polymer.IronCheckedElementBehaviorImpl._checkedChanged.call(this);if(this.hasRipple())if(this.checked)this._ripple.setAttribute("checked","");else this._ripple.removeAttribute("checked")},_buttonStateChanged:function(){Polymer.PaperRippleBehavior._buttonStateChanged.call(this);if(this.disabled)return;if(this.isAttached)this.checked=this.active}};
+Polymer.PaperCheckedElementBehavior=[Polymer.PaperInkyFocusBehavior,Polymer.IronCheckedElementBehavior,Polymer.PaperCheckedElementBehaviorImpl];</script><dom-module id="paper-checkbox" assetpath="bower_components/paper-checkbox/"><template strip-whitespace=""><style>:host{display:inline-block;white-space:nowrap;cursor:pointer;--calculated-paper-checkbox-size:var(--paper-checkbox-size, 18px);--calculated-paper-checkbox-ink-size:var(--paper-checkbox-ink-size, -1px);@apply (--paper-font-common-base);line-height:0;-webkit-tap-highlight-color:transparent;}:host([hidden]){display:none !important;}:host(:focus){outline:none;}.hidden{display:none;}#checkboxContainer{display:inline-block;position:relative;width:var(--calculated-paper-checkbox-size);height:var(--calculated-paper-checkbox-size);min-width:var(--calculated-paper-checkbox-size);margin:var(--paper-checkbox-margin, initial);vertical-align:var(--paper-checkbox-vertical-align, middle);background-color:var(--paper-checkbox-unchecked-background-color, transparent);}#ink{position:absolute;top:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size)) / 2);left:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size)) / 2);width:var(--calculated-paper-checkbox-ink-size);height:var(--calculated-paper-checkbox-ink-size);color:var(--paper-checkbox-unchecked-ink-color, var(--primary-text-color));opacity:0.6;pointer-events:none;}:host-context([dir="rtl"]) #ink{right:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size)) / 2);left:auto;}#ink[checked]{color:var(--paper-checkbox-checked-ink-color, var(--primary-color));}#checkbox{position:relative;box-sizing:border-box;height:100%;border:solid 2px;border-color:var(--paper-checkbox-unchecked-color, var(--primary-text-color));border-radius:2px;pointer-events:none;-webkit-transition:background-color 140ms, border-color 140ms;transition:background-color 140ms, border-color 140ms;}#checkbox.checked #checkmark{-webkit-animation:checkmark-expand 140ms ease-out forwards;animation:checkmark-expand 140ms ease-out forwards;}@-webkit-keyframes checkmark-expand{0%{-webkit-transform:scale(0, 0) rotate(45deg);}100%{-webkit-transform:scale(1, 1) rotate(45deg);}}@keyframes checkmark-expand{0%{transform:scale(0, 0) rotate(45deg);}100%{transform:scale(1, 1) rotate(45deg);}}#checkbox.checked{background-color:var(--paper-checkbox-checked-color, var(--primary-color));border-color:var(--paper-checkbox-checked-color, var(--primary-color));}#checkmark{position:absolute;width:36%;height:70%;border-style:solid;border-top:none;border-left:none;border-right-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-bottom-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-color:var(--paper-checkbox-checkmark-color, white);-webkit-transform-origin:97% 86%;transform-origin:97% 86%;box-sizing:content-box;}:host-context([dir="rtl"]) #checkmark{-webkit-transform-origin:50% 14%;transform-origin:50% 14%;}#checkboxLabel{position:relative;display:inline-block;vertical-align:middle;padding-left:var(--paper-checkbox-label-spacing, 8px);white-space:normal;line-height:normal;color:var(--paper-checkbox-label-color, var(--primary-text-color));@apply (--paper-checkbox-label);}:host([checked]) #checkboxLabel{color:var(--paper-checkbox-label-checked-color, var(--paper-checkbox-label-color, var(--primary-text-color)));@apply (--paper-checkbox-label-checked);}:host-context([dir="rtl"]) #checkboxLabel{padding-right:var(--paper-checkbox-label-spacing, 8px);padding-left:0;}#checkboxLabel[hidden]{display:none;}:host([disabled]) #checkbox{opacity:0.5;border-color:var(--paper-checkbox-unchecked-color, var(--primary-text-color));}:host([disabled][checked]) #checkbox{background-color:var(--paper-checkbox-unchecked-color, var(--primary-text-color));opacity:0.5;}:host([disabled]) #checkboxLabel{opacity:0.65;}#checkbox.invalid:not(.checked){border-color:var(--paper-checkbox-error-color, var(--error-color));}</style><div id="checkboxContainer"><div id="checkbox" class$="[[_computeCheckboxClass(checked, invalid)]]"><div id="checkmark" class$="[[_computeCheckmarkClass(checked)]]"></div></div></div><div id="checkboxLabel"><content></content></div></template><script>Polymer({is:"paper-checkbox",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttributes:{role:"checkbox","aria-checked":false,tabindex:0},properties:{ariaActiveAttribute:{type:String,value:"aria-checked"}},attached:function(){var inkSize=this.getComputedStyleValue("--calculated-paper-checkbox-ink-size").trim();if(inkSize==="-1px"){var checkboxSize=parseFloat(this.getComputedStyleValue("--calculated-paper-checkbox-size").trim());var defaultInkSize=Math.floor(8/3*checkboxSize);if(defaultInkSize%
+2!==checkboxSize%2)defaultInkSize++;this.customStyle["--paper-checkbox-ink-size"]=defaultInkSize+"px";this.updateStyles()}},_computeCheckboxClass:function(checked,invalid){var className="";if(checked)className+="checked ";if(invalid)className+="invalid";return className},_computeCheckmarkClass:function(checked){return checked?"":"hidden"},_createRipple:function(){this._rippleContainer=this.$.checkboxContainer;return Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)}});</script></dom-module><dom-module id="raml-type-form-input" assetpath="bower_components/raml-type-form-input/"><template strip-whitespace=""><style>:host([required]) paper-input{--paper-input-container-label:{color:var(--raml-type-form-input-required-label-color, rgba(0, 0, 0, 0.74));};}:host([is-array]){padding-left:8px;border-left:1px var(--raml-type-form-input-array-border-color, rgba(0, 0, 0, 0.14)) solid;}.action-icon{color:var(--from-row-action-icon-color, var(--icon-button-color, rgba(0, 0, 0, 0.74)));opacity:var(--from-row-action-icon-opacity, 0.54);transition:opacity 0.2s ease-in-out, color 0.2s ease-in-out;}.action-icon:hover{color:var(--from-row-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));opacity:var(--from-row-action-icon-opacity-hover, 0.74);}.array-item{@apply (--layout-horizontal);}.array-item paper-input{@apply (--layout-flex);}paper-dropdown-menu{width:100%;}paper-button iron-icon{margin-right:12px;}label{@apply --arc-font-caption;}</style><template is="dom-if" if="[[isEnum]]"><paper-dropdown-menu label="[[model.inputLabel]]" name="[[name]]" required="[[model.required]]" data-type="enum" no-label-float="[[noLabelFloat]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{value}}"><template is="dom-repeat" items="[[model.enum]]"><paper-item data-value$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[isBoolean]]"><paper-dropdown-menu label="[[model.inputLabel]]" name="[[name]]" required="[[model.required]]" data-type="boolean" no-label-float="[[noLabelFloat]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{value}}"><paper-item data-value="true">True</paper-item><paper-item data-value="false">False</paper-item></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[isInput]]"><paper-input label="[[model.inputLabel]]" value="{{value}}" required="[[model.required]]" pattern="[[model.pattern]]" name="[[name]]" auto-validate="" type="[[model.inputType]]" min="[[model.minimum]]" max="[[model.maximum]]" maxlength="[[model.maxLength]]" minlength="[[model.minLength]]" always-float-label="[[model.inputFloatLabel]]" placeholder="[[model.inputPlaceholder]]" no-label-float="[[noLabelFloat]]" data-type="input"></paper-input></template><template is="dom-if" if="[[isArray]]"><label hidden$="[[noLabelFloat]]">[[model.inputLabel]]</label><template is="dom-repeat" items="[[arrayValue]]"><div class="array-item"><paper-input label="Parameter value" value="{{item.value}}" required="[[model.required]]" pattern="[[model.pattern]]" name="[[name]]" auto-validate="" type="[[model.inputType]]" min="[[model.minimum]]" max="[[model.maximum]]" maxlength="[[model.maxLength]]" minlength="[[model.minLength]]" no-label-float="" on-input="_arrayValueChanged" data-type="array"></paper-input><template is="dom-if" if="[[index]]"><span><paper-icon-button class="action-icon" suffix="" icon="arc:remove-circle-outline" on-tap="_removeArrayValue"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Remove array value</paper-tooltip></span></template></div></template><div class="add-action"><paper-button on-tap="addEmptyArrayValue"><iron-icon class="action-icon" icon="arc:add-circle-outline"></iron-icon>Add array value</paper-button></div></template></template><script>Polymer({is:"raml-type-form-input",behaviors:[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior],properties:{model:{type:Object,observer:"_modelChanged"},isEnum:Boolean,isInput:{type:Boolean,value:true},isArray:{type:Boolean,reflectToAttribute:true},isBoolean:Boolean,arrayValue:Array,noLabelFloat:Boolean},observers:["_isArrayChanged(isArray, value)"],_resetStates:function(){this.isEnum=undefined;this.isInput=undefined;this.isArray=undefined;this.isBoolean=undefined},_modelChanged:function(model){this._resetStates();
+if(!model)return;if(model.isEnum){this.isEnum=true;return}if(model.isArray){this.isArray=true;if(model.value&&model.value instanceof Array)this.arrayValue=model.value.map(function(item){return{value:item}});else this.arrayValue=[];return}if(model.isBoolean){this.isBoolean=true;return}this.isInput=true},_isArrayChanged:function(isArray){if(this.__internalChange)return;var v=this.value;if(!v||!isArray){this.arrayValue=[];return}this.arrayValue=this._itemsForArray(v)},_itemsForArray:function(value){var result=
+[];if(value instanceof Array)result=value.map(function(item){return{value:item}});else result.push({value:value});return result},_arrayValueChanged:function(){var arr=this.arrayValue;if(arr)arr=arr.map(function(item){return item.value});this.__internalChange=true;this.set("value",arr);this.__internalChange=false},addEmptyArrayValue:function(){if(this.arrayValue)this.push("arrayValue",{value:""});else this.set("arrayValue",[{value:""}]);return this.arrayValue.length-1},removeArrayValue:function(index){this.splice("arrayValue",
+index,1);this._arrayValueChanged()},_removeArrayValue:function(e){var repeater=this.$$('template[is\x3d"dom-repeat"]');var index=repeater.indexForElement(e.target);this.removeArrayValue(index)},_getValidity:function(){switch(true){case this.isInput:var input=this.$$('paper-input[data-type\x3d"input"]');return input.validate();case this.isArray:var inputs=Polymer.dom(this.root).querySelectorAll('paper-input[data-type\x3d"array"]');for(var i=0;i<inputs.length;i++)if(!inputs[i].validate())return false;
+return true;default:return true}}});</script></dom-module><dom-module id="form-data-editor-item" assetpath="bower_components/form-data-editor/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{display:block;input::-webkit-input-placeholder{color:var(--paper-input-container-color, --secondary-text-color);}}.form-row{@apply (--layout-horizontal);@apply (--layout-center);@apply (--form-data-editor-row);}.param-name{margin-right:12px;@apply (--form-data-editor-name-input);}.encoder-buttons{margin:8px 0;@apply (--form-data-editor-encode-buttons);}paper-icon-button{color:var(--from-row-action-icon-color, var(--icon-button-color, rgba(0, 0, 0, 0.74)));transition:color 0.2s linear;}paper-icon-button:hover{color:var(--from-row-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.name-field,
+    .value-field{@apply --layout-flex;@apply --layout-horizontal;@apply --layout-start;}.param-name,
+    raml-type-form-input{@apply --layout-flex;}.narrow.form-row{display:block;}.narrow .param-name{margin-right:0;}</style><div class$="form-row [[_computeNarrowClass(narrow)]]"><div class="name-field"><paper-input value="{{name}}" label="Parameter name" class="param-name" no-label-float="[[noLabelFloat]]" required=""></paper-input></div><div class="value-field"><raml-type-form-input model="[[_computeLabel(model)]]" name="[[name]]" value="{{value}}" no-label-float="[[noLabelFloat]]"></raml-type-form-input><template is="dom-if" if="[[model.hasDescription]]"><span><paper-icon-button class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="toggleDocumentation"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Display documentation</paper-tooltip></span></template></div></div><template is="dom-if" if="[[model.hasDescription]]"><div class="docs"><iron-collapse opened="[[docsOpened]]"><marked-element markdown="[[model.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></template><script>Polymer({is:"form-data-editor-item",behaviors:[Polymer.IronFormElementBehavior],properties:{name:{notify:true,type:String},model:Object,narrow:{type:Boolean,value:false},docsOpened:Boolean,noLabelFloat:{type:Boolean,value:true,computed:"_computeNoLabelFloat(narrow)"}},_computeNarrowClass:function(narrow){return narrow?"narrow":undefined},_computeNoLabelFloat:function(narrow){return!narrow},toggleDocumentation:function(){this.docsOpened=!this.docsOpened},_computeLabel:function(model){if(model===undefined)model=
+{};if(model.inputPlaceholder)model.inputLabel=model.inputPlaceholder;else model.inputLabel="Parameter value";return model}});</script></dom-module><dom-module id="form-data-editor" assetpath="bower_components/form-data-editor/"><template><style>:host{display:block;@apply --form-data-editor;}.form-item{@apply --layout-horizontal;@apply --layout-start;@apply --form-data-editor-row;}form-data-editor-item{@apply (--layout-flex);}.option-pane{margin:8px 0;@apply --layout-horizontal;@apply --layout-center;@apply --form-data-editor-encode-buttons;}.option-pane paper-checkbox{margin-left:12px;}.add-param-button{margin-top:12px;background-color:var(--form-data-editor-add-button-background-color, --primary-color);color:var(--form-data-editor-add-button-color, --primary-background-color);@apply --action-button;@apply --form-data-editor-add-button;}paper-icon-button{color:var(--from-row-action-icon-color, var(--icon-button-color, rgba(0, 0, 0, 0.74)));transition:color 0.2s linear;}paper-icon-button:hover{color:var(--from-row-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.narrow .form-item{display:block;@apply --form-data-editor-row-narrow;}.form-item[data-optional]{display:none;@apply --form-data-editor-row-optional;}:host([optional-opened]) [data-optional]{@apply --layout-horizontal;@apply --form-data-editor-row-optional-visible;}</style><div class="option-pane"><paper-button title="Encodes payload to x-www-form-urlencoded data" on-tap="_encodePaylod">encode payload</paper-button><paper-button title="Decodes payload to human readable form" on-tap="_decodePaylod">decode payload</paper-button><paper-checkbox hidden$="[[!hasOptional]]" checked="{{optionalOpened}}">Show optional properties</paper-checkbox></div><form is="iron-form" id="form"><template is="dom-repeat" items="{{model}}"><div class="form-item" data-optional$="[[_computeIsOptional(hasOptional, item.model.required)]]"><form-data-editor-item narrow="[[narrow]]" name="{{item.name}}" value="{{item.value}}" model="[[item.model]]" required="[[item.model.required]]"></form-data-editor-item><span><paper-icon-button icon="arc:close" on-tap="_removeParam"></paper-icon-button><paper-tooltip animation-delay="200">Remove parameter</paper-tooltip></span></div></template></form><paper-button on-tap="add" class="add-param-button">Add form parameter</paper-button></template><script>Polymer({is:"form-data-editor",behaviors:[ArcBehaviors.RequestPayloadEditorBehavior,ArcBehaviors.RamlTypeFormBehavior,Polymer.IronValidatableBehavior],properties:{model:Array,narrow:{type:Boolean,value:false},ramlType:Object,dataModel:{type:Array,readOnly:true,observer:"_modelFromDataModel"},hasOptional:{type:Boolean,value:false,computed:"_computeHasOptional(dataModel)"},optionalOpened:{type:Boolean,reflectToAttribute:true}},get _modelOpts(){return{decodeValues:true}},observers:["_valueChanged(_isOpened, value)",
+"_modelChanged(_isOpened, model.*)","_ramlTypeChanged(_isOpened, ramlType)","__isOpenedChanged(_isOpened)"],__isOpenedChanged:function(isOpened){if(isOpened)this.updateModel(this.value)},_getValidity:function(){return this.$.form.validate()},_ramlTypeChanged:function(opened,ramlType){if(!opened)return;if(!ramlType){this._setDataModel(undefined);return}if(ramlType.formParameters)this._modelFromRaml08(ramlType);else this._modelFromRaml10(ramlType)},_modelFromRaml10:function(type){if(!type||!type.properties||
+!type.properties.length){this._setDataModel(undefined);return}var modelOpts=this._modelOpts;var model=type.properties.map(function(value){return this._createModelObject(value,modelOpts)},this);this._setDataModel(model)},_modelFromRaml08:function(type){var params=this._clone(type.formParameters);var modelOpts=this._modelOpts;var model=Object.keys(params).map(function(key){var value=type.formParameters[key];value.key=key;return this._createModelObject(value,modelOpts)},this);this._setDataModel(model)},
+_valueChanged:function(opened,value){if(!opened)return;if(this.__internalChange){this.fire("payload-value-changed",{value:value});return}this.updateModel(value)},updateModel:function(value){if(!value){if(this.model&&this.dataModel){this.updateValue();return}return this.set("model",undefined)}var arr=this.stringToArray(value);this.set("model",arr);this._linkModels(arr,this.dataModel)},_linkModels:function(viewModel,dataModel){if(!dataModel||!viewModel||!viewModel.length)return;this.__stopValueChanged=
+true;var vl=dataModel.length;for(var i=0,len=viewModel.length;i<len;i++){var oldModel=viewModel[i].model;var changed=false;for(var j=0;j<vl;j++)if(viewModel[i].name===dataModel[j].name){changed=true;if(oldModel!==dataModel[j])this.set(["model",i,"model"],dataModel[j]);break}if(oldModel&&!changed)this.set(["model",i,"model"],{})}this.__stopValueChanged=false},_encodePaylod:function(){if(!this._isOpened)return;this.encodeUrlEncoded(this.model);this.__postEncodeDecode()},_decodePaylod:function(){if(!this._isOpened)return;
+this.decodeUrlEncoded(this.model);this.__postEncodeDecode()},__postEncodeDecode:function(){var model=this.model;if(!model)return;this.__internalChange=true;for(var i=0,len=model.length;i<len;i++){this.notifyPath(["model",i,"name"]);this.notifyPath(["model",i,"value"])}this.__internalChange=false},add:function(item){if(item instanceof Event)item=undefined;item=this._createModelItem(item);if(!this.model)this.set("model",[item]);else this.push("model",item)},_createModelItem:function(item){item=item||
+{};item.name=item.name||"";item.value=item.value||"";item=this._createModelObject(item,this._modelOpts);item=this._addDataModel(item);return item},_removeParam:function(e){var index=this.$$('template[is\x3d"dom-repeat"]').indexForElement(e.target);this.splice("model",index,1)},_modelChanged:function(opened,record){if(!opened||!record||!record.path||this.__stopValueChanged)return;var paths=record.path.split(".");var propertyChanged=paths.pop();if(record.path!=="model")this.updateValue(record.base);
+if(propertyChanged==="name"){var path=paths.join(".");this._updateModelWithDataModel(path,record.value)}},_updateModelWithDataModel:function(path,modelName){if(!this.dataModel)return;var model=this.dataModel.find(function(item){return item.name===modelName});this.set(path+".model",model)},_addDataModel:function(dataModel){var model=this._getDataModelForName(dataModel.name);dataModel.model=model||{};return dataModel},_getDataModelForName:function(name){var model=this.dataModel;if(!model)return;return model.find(function(item){return item.name===
+name})},_modelFromDataModel:function(dataModel){if(!dataModel)return;var model=dataModel.map(function(item){return{name:item.name||item.key,value:item.value||"",model:item}});this.set(["model"],model)},updateValue:function(model){if(!this._isOpened)return;model=model||this.model;var hasModel=model&&model.length;var value=hasModel?this.formArrayToString(model):"";this.__internalChange=true;this.set("value",value);this.__internalChange=false},_computeNarrowClass:function(narrow){return narrow?"narrow":
+undefined},_computeHasOptional:function(model){for(var i=0,len=model.length;i<len;i++)if(!model[i].required)return true;return false},_computeIsOptional:function(hasOptional,required){return hasOptional&&!required}});</script></dom-module><dom-module id="codemirror" assetpath="bower_components/code-mirror/styles/"><template><style>.CodeMirror{font-family:monospace;height:300px;color:black;background:var(--arc-code-mirror-background-color, white);}.CodeMirror-lines{padding:var(--arc-code-mirror-line-padding, 4px 0);}.CodeMirror pre{padding:var(--arc-code-mirror-pre-padding, 0 4px);}.CodeMirror-scrollbar-filler,
+    .CodeMirror-gutter-filler{background-color:white;}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap;}.CodeMirror-linenumbers{}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap;}.CodeMirror-guttermarker{color:black;}.CodeMirror-guttermarker-subtle{color:#999;}.CodeMirror div.CodeMirror-cursor{border-left:1px solid black;}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursors{z-index:1;}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;}@-moz-keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}@-webkit-keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}@keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}div.CodeMirror-overwrite div.CodeMirror-cursor{}.cm-tab{display:inline-block;text-decoration:inherit;}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute;}.cm-negative{color:#d44;}.cm-positive{color:#292;}.cm-header,
+    .cm-strong{font-weight:bold;}.cm-em{font-style:italic;}.cm-link{text-decoration:underline;}.cm-strikethrough{text-decoration:line-through;}.cm-invalidchar{color:#f00;}.CodeMirror-composing{border-bottom:2px solid;}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0;}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22;}.CodeMirror-matchingtag{background:var(--code-mirror-matches-background-color, rgba(255, 150, 0, .3));}.CodeMirror-activeline-background{background:var(--code-mirror-active-line-background-color, #e8f2ff);}.CodeMirror{position:relative;overflow:hidden;}.CodeMirror-scroll{overflow:scroll !important;margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:none;position:relative;}.CodeMirror-sizer{position:relative;border-right:30px solid transparent;}.CodeMirror-vscrollbar,
+    .CodeMirror-hscrollbar,
+    .CodeMirror-scrollbar-filler,
+    .CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll;}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll;}.CodeMirror-scrollbar-filler{right:0;bottom:0;}.CodeMirror-gutter-filler{left:0;bottom:0;}.CodeMirror-gutters{position:absolute;left:0;top:0;z-index:3;}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;margin-bottom:-30px;*zoom:1;*display:inline;}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;height:100%;}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4;}.CodeMirror-gutter-wrapper{-webkit-user-select:none;-moz-user-select:none;user-select:none;}.CodeMirror-lines{cursor:text;min-height:1px;}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal;}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0;}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto;}.CodeMirror-widget{}.CodeMirror-code{outline:none;}.CodeMirror-scroll,
+    .CodeMirror-sizer,
+    .CodeMirror-gutter,
+    .CodeMirror-gutters,
+    .CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box;}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden;}.CodeMirror-measure pre{position:static;}.CodeMirror div.CodeMirror-cursor{position:absolute;border-right:none;width:0;}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3;}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible;}.CodeMirror-selected{background:#d9d9d9;}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0;}.CodeMirror-crosshair{cursor:crosshair;}.CodeMirror ::selection{background:#d7d4f0;}.CodeMirror ::-moz-selection{background:#d7d4f0;}.cm-searching{background:#ffa;background:rgba(255, 255, 0, .4);}.CodeMirror span{*vertical-align:text-bottom;}.cm-force-border{padding-right:.1px;}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden;}}.cm-tab-wrap-hack:after{content:'';}span.CodeMirror-selectedtext{background:none;}</style></template></dom-module><dom-module id="3024-day" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-3024-day.CodeMirror{background:#f7f7f7;color:#3a3432;}.cm-s-3024-day div.CodeMirror-selected{background:#d6d5d4 !important;}.cm-s-3024-day.CodeMirror ::selection{background:#d6d5d4;}.cm-s-3024-day.CodeMirror ::-moz-selection{background:#d9d9d9;}.cm-s-3024-day .CodeMirror-gutters{background:#f7f7f7;border-right:0px;}.cm-s-3024-day .CodeMirror-guttermarker{color:#db2d20;}.cm-s-3024-day .CodeMirror-guttermarker-subtle{color:#807d7c;}.cm-s-3024-day .CodeMirror-linenumber{color:#807d7c;}.cm-s-3024-day .CodeMirror-cursor{border-left:1px solid #5c5855 !important;}.cm-s-3024-day span.cm-comment{color:#cdab53;}.cm-s-3024-day span.cm-atom{color:#a16a94;}.cm-s-3024-day span.cm-number{color:#a16a94;}.cm-s-3024-day span.cm-property, .cm-s-3024-day span.cm-attribute{color:#01a252;}.cm-s-3024-day span.cm-keyword{color:#db2d20;}.cm-s-3024-day span.cm-string{color:#fded02;}.cm-s-3024-day span.cm-variable{color:#01a252;}.cm-s-3024-day span.cm-variable-2{color:#01a0e4;}.cm-s-3024-day span.cm-def{color:#e8bbd0;}.cm-s-3024-day span.cm-bracket{color:#3a3432;}.cm-s-3024-day span.cm-tag{color:#db2d20;}.cm-s-3024-day span.cm-link{color:#a16a94;}.cm-s-3024-day span.cm-error{background:#db2d20;color:#5c5855;}.cm-s-3024-day .CodeMirror-activeline-background{background:#e8f2ff !important;}.cm-s-3024-day .CodeMirror-matchingbracket{text-decoration:underline;color:#a16a94 !important;}</style></template></dom-module><dom-module id="3024-night" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-3024-night.CodeMirror{background:#090300;color:#d6d5d4;}.cm-s-3024-night div.CodeMirror-selected{background:#3a3432 !important;}.cm-s-3024-night.CodeMirror ::selection{background:rgba(58, 52, 50, .99);}.cm-s-3024-night.CodeMirror ::-moz-selection{background:rgba(58, 52, 50, .99);}.cm-s-3024-night .CodeMirror-gutters{background:#090300;border-right:0px;}.cm-s-3024-night .CodeMirror-guttermarker{color:#db2d20;}.cm-s-3024-night .CodeMirror-guttermarker-subtle{color:#5c5855;}.cm-s-3024-night .CodeMirror-linenumber{color:#5c5855;}.cm-s-3024-night .CodeMirror-cursor{border-left:1px solid #807d7c !important;}.cm-s-3024-night span.cm-comment{color:#cdab53;}.cm-s-3024-night span.cm-atom{color:#a16a94;}.cm-s-3024-night span.cm-number{color:#a16a94;}.cm-s-3024-night span.cm-property, .cm-s-3024-night span.cm-attribute{color:#01a252;}.cm-s-3024-night span.cm-keyword{color:#db2d20;}.cm-s-3024-night span.cm-string{color:#fded02;}.cm-s-3024-night span.cm-variable{color:#01a252;}.cm-s-3024-night span.cm-variable-2{color:#01a0e4;}.cm-s-3024-night span.cm-def{color:#e8bbd0;}.cm-s-3024-night span.cm-bracket{color:#d6d5d4;}.cm-s-3024-night span.cm-tag{color:#db2d20;}.cm-s-3024-night span.cm-link{color:#a16a94;}.cm-s-3024-night span.cm-error{background:#db2d20;color:#807d7c;}.cm-s-3024-night .CodeMirror-activeline-background{background:#2F2F2F !important;}.cm-s-3024-night .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="ambiance-mobile" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-ambiance.CodeMirror{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}</style></template></dom-module><dom-module id="ambiance" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-ambiance .cm-keyword{color:#cda869;}.cm-s-ambiance .cm-atom{color:#CF7EA9;}.cm-s-ambiance .cm-number{color:#78CF8A;}.cm-s-ambiance .cm-def{color:#aac6e3;}.cm-s-ambiance .cm-variable{color:#ffb795;}.cm-s-ambiance .cm-variable-2{color:#eed1b3;}.cm-s-ambiance .cm-variable-3{color:#faded3;}.cm-s-ambiance .cm-property{color:#eed1b3;}.cm-s-ambiance .cm-operator{color:#fa8d6a;}.cm-s-ambiance .cm-comment{color:#555;font-style:italic;}.cm-s-ambiance .cm-string{color:#8f9d6a;}.cm-s-ambiance .cm-string-2{color:#9d937c;}.cm-s-ambiance .cm-meta{color:#D2A8A1;}.cm-s-ambiance .cm-qualifier{color:yellow;}.cm-s-ambiance .cm-builtin{color:#9999cc;}.cm-s-ambiance .cm-bracket{color:#24C2C7;}.cm-s-ambiance .cm-tag{color:#fee4ff;}.cm-s-ambiance .cm-attribute{color:#9B859D;}.cm-s-ambiance .cm-header{color:blue;}.cm-s-ambiance .cm-quote{color:#24C2C7;}.cm-s-ambiance .cm-hr{color:pink;}.cm-s-ambiance .cm-link{color:#F4C20B;}.cm-s-ambiance .cm-special{color:#FF9D00;}.cm-s-ambiance .cm-error{color:#AF2018;}.cm-s-ambiance .CodeMirror-matchingbracket{color:#0f0;}.cm-s-ambiance .CodeMirror-nonmatchingbracket{color:#f22;}.cm-s-ambiance .CodeMirror-selected{background:rgba(255, 255, 255, 0.15);}.cm-s-ambiance.CodeMirror-focused .CodeMirror-selected{background:rgba(255, 255, 255, 0.10);}.cm-s-ambiance.CodeMirror ::selection{background:rgba(255, 255, 255, 0.10);}.cm-s-ambiance.CodeMirror ::-moz-selection{background:rgba(255, 255, 255, 0.10);}.cm-s-ambiance.CodeMirror{line-height:1.40em;color:#E6E1DC;background-color:#202020;-webkit-box-shadow:inset 0 0 10px black;-moz-box-shadow:inset 0 0 10px black;box-shadow:inset 0 0 10px black;}.cm-s-ambiance .CodeMirror-gutters{background:#3D3D3D;border-right:1px solid #4D4D4D;box-shadow:0 10px 20px black;}.cm-s-ambiance .CodeMirror-linenumber{text-shadow:0px 1px 1px #4d4d4d;color:#111;padding:0 5px;}.cm-s-ambiance .CodeMirror-guttermarker{color:#aaa;}.cm-s-ambiance .CodeMirror-guttermarker-subtle{color:#111;}.cm-s-ambiance .CodeMirror-lines .CodeMirror-cursor{border-left:1px solid #7991E8;}.cm-s-ambiance .CodeMirror-activeline-background{background:none repeat scroll 0% 0% rgba(255, 255, 255, 0.031);}.cm-s-ambiance.CodeMirror,
 .cm-s-ambiance .CodeMirror-gutters{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAQAAAAHUWYVAABFFUlEQVQYGbzBCeDVU/74/6fj9HIcx/FRHx9JCFmzMyGRURhLZIkUsoeRfUjS2FNDtr6WkMhO9sm+S8maJfu+Jcsg+/o/c+Z4z/t97/vezy3z+z8ekGlnYICG/o7gdk+wmSHZ1z4pJItqapjoKXWahm8NmV6eOTbWUOp6/6a/XIg6GQqmenJ2lDHyvCFZ2cBDbmtHA043VFhHwXxClWmeYAdLhV00Bd85go8VmaFCkbVkzlQENzfBDZ5gtN7HwF0KDrTwJ0dypSOzpaKCMwQHKTIreYIxlmhXTzTWkVm+LTynZhiSBT3RZQ7aGfjGEd3qyXQ1FDymqbKxpspERQN2MiRjNZlFFQXfCNFm9nM1zpAsoYjmtRTc5ajwuaXc5xrWskT97RaKzAGe5ARHhVUsDbjKklziiX5WROcJwSNCNI+9w1Jwv4Zb2r7lCMZ4oq5C0EdTx+2GzNuKpJ+iFf38JEWkHJn9DNF7mmBDITrWEg0VWL3pHU20tSZnuqWu+R3BtYa8XxV1HO7GyD32UkOpL/yDloINFTmvtId+nmAjxRw40VMwVKiwrKLE4bK5UOVntYwhOcSSXKrJHKPJedocpGjVz/ZMIbnYUPB10/eKCrs5apqpgVmWzBYWpmtKHecJPjaUuEgRDDaU0oZghCJ6zNMQ5ZhDYx05r5v2muQdM0EILtXUsaKiQX9WMEUotagQzFbUNN6NUPC2nm5pxEWGCjMc3GdJHjSU2kORLK/JGSrkfGEIjncU/CYUnOipoYemwj8tST9NsJmB7TUVXtbUtXATJVZXBMvYeTXJfobgJUPmGMP/yFaWonaa6BcFO3nqcIqCozSZoZoSr1g4zJOzuyGnxTEX3lUEJ7WcZgme8ddaWvWJo2AJR9DZU3CUIbhCSG6ybSwN6qtJVnCU2svDTP2ZInOw2cBTrqtQahtNZn9NcJ4l2NaSmSkkP1noZWnVwkLmdUPOwLZEwy2Z3S3R+4rIG9hcbpPXHFVWcQdZkn2FOta3cKWQnNRC5g1LsJah4GCzSVsKnCOY5OAFRTBekyyryeyilhFKva75r4Mc0aWanGEaThcy31s439KKxTzJYY5WTHPU1FtIHjQU3Oip4xlNzj/lBw23dYZVliQa7WAXf4shetcQfatI+jWRDBPmyNeW6A1P5kdDgyYJlba0BIM8BZu1JfrFwItyjcAMR3K0BWOIrtMEXyhyrlVEx3ui5dUBjmB/Q3CXW85R4mBD0s7B+4q5tKUjOlb9qqmhi5AZ6GFIC5HXtOobdYGlVdMVbNJ8toNTFcHxnoL+muBagcctjWnbNMuR00uI7nQESwg5q2qqrKWIfrNUmeQocY6HuyxJV02wj36w00yhpmUFenv4p6fUkZYqLyuinx2RGOjhCXYyJF84oiU00YMOOhhquNdfbOB7gU88pY4xJO8LVdp6/q2voeB4R04vIdhSE40xZObx1HGGJ/ja0LBthFInKaLPPFzuCaYaoj8JjPME8yoyxo6zlBqkiUZYgq00OYMswbWO5NGmq+xhipxHLRW29ARjNKXO0wRnear8XSg4XFPLKEPUS1GqvyLwiuBUoa7zpZ0l5xxFwWmWZC1H5h5FwU8eQ7K+g8UcVY6TMQreVQT/8uQ8Z+ALIXnSEa2pYZQneE9RZbSBNYXfWYJzW/h/4j4Dp1tYVcFIC5019Vyi4ThPqSFCzjGWaHQTBU8q6vrVwgxP9Lkm840imWKpcLCjYTtrKuwvsKSnrvHCXGkSMk9p6lhckfRpIeis+N2PiszT+mFLspyGleUhDwcLrZqmyeylxwjBcKHEapqkmyangyLZRVOijwOtCY5SsG5zL0OwlCJ4y5KznF3EUNDDrinwiyLZRzOXtlBbK5ITHFGLp8Q0R6ab6mS7enI2cFrxOyHvOCFaT1HThS1krjCwqWeurCkk+willhCC+RSZnRXBiZaC5RXRIZYKp2lyfrHwiKPKR0JDzrdU2EFgpidawlFDR6FgXUMNa+g1FY3bUQh2cLCwosRdnuQTS/S+JVrGLeWIvtQUvONJxlqSQYYKpwoN2kaocLjdVsis4Mk80ESF2YpSkzwldjHkjFCUutI/r+EHDU8oCs6yzL3PhWiEooZdFMkymlas4AcI3KmoMMNSQ3tHzjGWCrcJJdYyZC7QFGwjRL9p+MrRkAGWzIaWCn9W0F3TsK01c2ZvQw0byvxuQU0r1lM0qJO7wW0kRIMdDTtXEdzi4VIh+EoIHm0mWtAtpCixlabgn83fKTI7anJe9ST7WIK1DMGpQmYeA58ImV6ezOGOzK2Kgq01pd60cKWiUi9Lievb/0vIDPHQ05Kzt4ddPckQBQtoaurjyHnek/nKzpQLrVgKPjIkh2v4uyezpv+Xoo7fPFXaGFp1vaLKxQ4uUpQQS5VuQs7BCq4xRJv7fwpVvvFEB3j+620haOuocqMhWd6TTPAEx+mdFNGHdranFe95WrWmIvlY4F1Dle2ECgc6cto7SryuqGGGha0tFQ5V53migUKmg6XKAo4qS3mik+0OZpAhOLeZKicacgaYcyx5hypYQE02ZA4xi/pNhOQxR4klNKyqacj+mpxnLTnnGSo85++3ZCZq6lrZkXlGEX3o+C9FieccJbZWVFjC0Yo1FZnJhoYMFoI1hEZ9r6hwg75HwzBNhbZCdJEfJwTPGzJvaKImw1yYX1HDAmpXR+ZJQ/SmgqMNVQb5vgamGwLtt7VwvP7Qk1xpiM5x5Cyv93E06MZmgs0Nya2azIKOYKCGBQQW97RmhKNKF02JZqHEJ4o58qp7X5EcZmc56trXEqzjCBZ1MFGR87Ql2tSTs6CGxS05PTzRQorkbw7aKoKXFDXsYW42VJih/q+FP2BdTzDTwVqOYB13liM50vG7wy28qagyuIXMeQI/Oqq8bcn5wJI50xH00CRntyfpL1T4hydYpoXgNiFzoIUTDZnLNRzh4TBHwbYGDvZkxmlyJloyr6tRihpeUG94GnKtIznREF0tzJG/OOr73JBcrSh1k6WuTprgLU+mnSGnv6Zge0NNz+kTDdH8nuAuTdJDCNb21LCiIuqlYbqGzT3RAoZofQfjFazkqeNWdYaGvYTM001EW2oKPvVk1ldUGSgUtHFwjKM1h9jnFcmy5lChoLNaQMGGDsYbKixlaMBmmsx1QjCfflwTfO/gckW0ruZ3jugKR3R5W9hGUWqCgxuFgsuaCHorotGKzGaeZB9DMsaTnKCpMtwTvOzhYk0rdrArKCqcaWmVk1+F372ur1YkKxgatI8Qfe1gIX9wE9FgS8ESmuABIXnRUbCapcKe+nO7slClSZFzpV/LkLncEb1qiO42fS3R855Su2mCLh62t1SYZZYVmKwIHjREF2uihTzB20JOkz7dkxzYQnK0UOU494wh+VWRc6Un2kpTaVgLDFEkJ/uhzRcI0YKGgpGWOlocBU/a4fKoJ/pEaNV6jip3+Es9VXY078rGnmAdf7t9ylPXS34RBSuYPs1UecZTU78WanhBCHpZ5sAoTz0LGZKjPf9TRypqWEiTvOFglL1fCEY3wY/++rbk7C8bWebA6p6om6PgOL2kp44TFJlVNBXae2rqqdZztOJpT87GQsE9jqCPIe9VReZuQ/CIgacsyZdCpIScSYqcZk8r+nsyCzhyfhOqHGOIvrLknC8wTpFcaYiGC/RU1NRbUeUpocQOnkRpGOrIOcNRx+1uA0UrzhSSt+VyS3SJpnFWkzNDqOFGIWcfR86DnmARTQ1HKIL33ExPiemeOhYSSjzlSUZZuE4TveoJLnBUOFof6KiysCbnAEcZgcUNTDOwkqWu3RWtmGpZwlHhJENdZ3miGz0lJlsKnjbwqSHQjpxnFDlTLLwqJPMZMjd7KrzkSG7VsxXBZE+F8YZkb01Oe00yyRK9psh5SYh29ySPKBo2ylNht7ZkZnsKenjKNJu9PNEyZpaCHv4Kt6RQsLvAVp7M9kIimmCUwGeWqLMmGuIotYMmWNpSahkhZw9FqZsVnKJhsjAHvtHMsTM9fCI06Dx/u3vfUXCqfsKRc4oFY2jMsoo/7DJDwZ1CsIKnJu+J9ldkpmiCxQx1rWjI+T9FwcWWzOuaYH0Hj7klNRVWEQpmaqosakiGNTFHdjS/qnUdmf0NJW5xsL0HhimCCZZSRzmSPTXJQ4aaztAwtZnoabebJ+htCaZ7Cm535ByoqXKbX1WRc4Eh2MkRXWzImVc96Cj4VdOKVxR84VdQsIUM8Psoou2byVHyZFuq7O8otbSQ2UAoeEWTudATLGSpZzVLlXVkPU2Jc+27lsw2jmg5T5VhbeE3BT083K9WsTTkFU/Osi0rC5lRlpwRHUiesNS0sOvmqGML1aRbPAxTJD9ZKtxuob+hhl8cwYGWpJ8nub7t5p6coYbMovZ1BTdaKn1jYD6h4GFDNFyT/Kqe1XCXphXHOKLZmuRSRdBPEfVUXQzJm5YGPGGJdvAEr7hHNdGZnuBvrpciGmopOLf5N0uVMy0FfYToJk90uUCbJupaVpO53UJXR2bVpoU00V2KOo4zMFrBd0Jtz2pa0clT5Q5L8IpQ177mWQejPMEJhuQjS10ref6HHjdEhy1P1EYR7GtO0uSsKJQYLiTnG1rVScj5lyazpqWGl5uBbRWl7m6ixGOOnEsMJR7z8J0n6KMnCdxhiNYQCoZ6CmYLnO8omC3MkW3bktlPmEt/VQQHejL3+dOE5FlPdK/Mq8hZxxJtLyRrepLThYKbLZxkSb5W52vYxNOaOxUF0yxMUPwBTYqCzy01XayYK0sJyWBLqX0MwU5CzoymRzV0EjjeUeLgDpTo6ij42ZAzvD01dHUUTPLU96MdLbBME8nFBn7zJCMtJcZokn8YoqU0FS5WFKyniHobguMcmW8N0XkWZjkyN3hqOMtS08r+/xTBwpZSZ3qiVRX8SzMHHjfUNFjgHEPmY9PL3ykEzxkSre/1ZD6z/NuznuB0RcE1TWTm9zRgfUWVJiG6yrzgmWPXC8EAR4Wxhlad0ZbgQyEz3pG5RVEwwDJH2mgKpjcTiCOzn1lfUWANFbZ2BA8balnEweJC9J0iuaeZoI+ippFCztEKVvckR2iice1JvhVytrQwUAZpgsubCPaU7xUe9vWnaOpaSBEspalykhC9bUlOMpT42ZHca6hyrqKmw/wMR8H5ZmdFoBVJb03O4UL0tSNnvIeRmkrLWqrs78gcrEn2tpcboh0UPOW3UUR9PMk4T4nnNKWmCjlrefhCwxRNztfmIQVdDElvS4m1/WuOujoZCs5XVOjtKPGokJzsYCtFYoWonSPT21DheU/wWhM19FcElwqNGOsp9Q8N/cwXaiND1MmeL1Q5XROtYYgGeFq1aTMsoMmcrKjQrOFQTQ1fmBYhmW6o8Jkjc7iDJRTBIo5kgJD5yMEYA3srCg7VFKwiVJkmRCc5ohGOKhsYMn/XBLdo5taZjlb9YAlGWRimqbCsoY7HFAXLa5I1HPRxMMsQDHFkWtRNniqT9UEeNjcE7RUlrCJ4R2CSJuqlKHWvJXjAUNcITYkenuBRB84TbeepcqTj3zZyFJzgYQdHnqfgI0ddUwS6GqWpsKWhjq9cV0vBAEMN2znq+EBfIWT+pClYw5xsTlJU6GeIBsjGmmANTzJZiIYpgrM0Oa8ZMjd7NP87jxhqGOhJlnQtjuQpB+8aEE00wZFznSJPyHxgH3HkPOsJFvYk8zqCHzTs1BYOa4J3PFU+UVRZxlHDM4YavlNUuMoRveiZA2d7grMNc2g+RbSCEKzmgYsUmWmazFJyoiOZ4KnyhKOGRzWJa0+moyV4TVHDzn51Awtqaphfk/lRQ08FX1iiqxTB/kLwd0VynKfEvI6cd4XMV5bMhZ7gZUWVzYQ6Nm2BYzxJbw3bGthEUUMfgbGeorae6DxHtJoZ6alhZ0+ytiVoK1R4z5PTrOECT/SugseEOlb1MMNR4VRNcJy+V1Hg9ONClSZFZjdHlc6W6FBLdJja2MC5hhpu0DBYEY1TFGwiFAxRRCsYkiM9JRb0JNMVkW6CZYT/2EiTGWmo8k+h4FhDNE7BvppoTSFnmCV5xZKzvcCdDo7VVPnIU+I+Rc68juApC90MwcFCsJ5hDqxgScYKreruyQwTqrzoqDCmhWi4IbhB0Yrt3RGa6GfDv52rKXWhh28dyZaWUvcZeMTBaZoSGyiCtRU5J8iviioHaErs7Jkj61syVzTTgOcUOQ8buFBTYWdL5g3T4qlpe0+wvD63heAXRfCCIed9RbCsp2CiI7raUOYOTU13N8PNHvpaGvayo4a3LLT1lDrVEPT2zLUlheB1R+ZTRfKWJ+dcocLJfi11vyJ51lLqJ0WD7tRwryezjiV5W28uJO9qykzX8JDe2lHl/9oyBwa2UMfOngpXCixvKdXTk3wrsKmiVYdZIqsoWEERjbcUNDuiaQomGoIbFdEHmsyWnuR+IeriKDVLnlawlyNHKwKlSU631PKep8J4Q+ayjkSLKYLhalNHlYvttb6fHm0p6OApsZ4l2VfdqZkjuysy6ysKLlckf1KUutCTs39bmCgEyyoasIWlVaMF7mgmWtBT8Kol5xpH9IGllo8cJdopcvZ2sImlDmMIbtDk3KIpeNiS08lQw11NFPTwVFlPP6pJ2gvRfI7gQUfmNAtf6Gs0wQxDsKGlVBdF8rCa3jzdwMaGHOsItrZk7hAyOzpK9VS06j5F49b0VNGOOfKs3lDToMsMBe9ZWtHFEgxTJLs7qrygKZjUnmCYoeAqeU6jqWuLJup4WghOdvCYJnrSkSzoyRkm5M2StQwVltPkfCAk58tET/CSg+8MUecmotMEnhBKfWBIZsg2ihruMJQaoIm+tkTLKEqspMh00w95gvFCQRtDwTT1gVDDSEVdlwqZfxoQRbK0g+tbiBZxzKlpnpypejdDwTaeOvorMk/IJE10h9CqRe28hhLbe0pMsdSwv4ZbhKivo2BjDWfL8UKJgeavwlwb5KlwhyE4u4XkGE2ytZCznKLCDZZq42VzT8HLCrpruFbIfOIINmh/qCdZ1ZBc65kLHR1Bkyf5zn6pN3SvGKIlFNGplhrO9QSXanLOMQTLCa0YJCRrCZm/CZmrLTm7WzCK4GJDiWUdFeYx1LCFg3NMd0XmCuF3Y5rITLDUsYS9zoHVzwnJoYpSTQoObyEzr4cFBNqYTopoaU/wkyLZ2lPhX/5Y95ulxGTV7KjhWrOZgl8MyUUafjYraNjNU1N3IWcjT5WzWqjwtoarHSUObGYO3GCJZpsBlnJGPd6ZYLyl1GdCA2625IwwJDP8GUKymbzuyPlZlvTUsaUh5zFDhRWFzPKKZLAlWdcQbObgF9tOqOsmB1dqcqYJmWstFbZRRI9poolmqiLnU0POvxScpah2iSL5UJNzgScY5+AuIbpO0YD3NCW+dLMszFSdFCWGqG6eVq2uYVNDdICGD6W7EPRWZEY5gpsE9rUkS3mijzzJnm6UpUFXG1hCUeVoS5WfNcFpblELL2qqrCvMvRfd45oalvKU2tiQ6ePJOVMRXase9iTtLJztPxJKLWpo2CRDcJwn2sWSLKIO1WQWNTCvpVUvOZhgSC40JD0dOctaSqzkCRbXsKlb11Oip6PCJ0IwSJM31j3akRxlP7Rwn6aGaUL0qiLnJkvB3xWZ2+Q1TfCwpQH3G0o92UzmX4o/oJNQMMSQc547wVHhdk+VCw01DFYEnTxzZKAm74QmeNNR1w6WzEhNK15VJzuCdxQ53dRUDws5KvwgBMOEgpcVNe0hZI6RXT1Jd0cyj5nsaEAHgVmGaJIlWdsc5Ui2ElrRR6jrRAttNMEAIWrTDFubkZaok7/AkzfIwfuWVq0jHzuCK4QabtLUMVPB3kJ0oyHTSVFlqMALilJf2Rf8k5aaHtMfayocLBS8L89oKoxpJvnAkDPa0qp5DAUTHKWmCcnthlou8iCKaFFLHWcINd1nyIwXqrSxMNmSs6KmoL2QrKuWtlQ5V0120xQ5vRyZS1rgFkWwhiOwiuQbR0OOVhQM9iS3tiXp4RawRPMp5tDletOOBL95MpM01dZTBM9pkn5qF010rIeHFcFZhmSGpYpTsI6nwhqe5C9ynhlpp5ophuRb6WcJFldkVnVEwwxVfrVkvnWUuNLCg5bgboFHPDlDPDmnK7hUrWiIbjadDclujlZcaokOFup4Ri1kacV6jmrrK1hN9bGwpKEBQ4Q6DvIUXOmo6U5LqQM6EPyiKNjVkPnJkDPNEaxhiFay5ExW1NXVUGqcpYYdPcGiCq7z/TSlbhL4pplWXKd7NZO5QQFrefhRQW/NHOsqcIglc4UhWklR8K0QzbAw08CBDnpbgqXdeD/QUsM4RZXDFBW6WJKe/mFPdH0LtBgiq57wFLzlyQzz82qYx5D5WJP5yVJDW01BfyHnS6HKO/reZqId1WGa4Hkh2kWodJ8i6KoIPlAj2hPt76CzXsVR6koPRzWTfKqIentatYpQw2me4AA3y1Kind3SwoOKZDcFXTwl9tWU6mfgRk9d71sKtlNwrjnYw5tC5n5LdKiGry3JKNlHEd3oaMCFHrazBPMp/uNJ+V7IudcSbeOIdjUEdwl0VHCOZo5t6YluEuaC9mQeMgSfOyKnYGFHcIeQ84yQWbuJYJpZw5CzglDH7gKnWqqM9ZTaXcN0TeYhR84eQtJT76JJ1lREe7WnnvsMmRc9FQ7SBBM9mV3lCUdmHk/S2RAMt0QjFNFqQpWjDPQ01DXWUdDBkXziKPjGEP3VP+zIWU2t7im41FOloyWzn/L6dkUy3VLDaZ6appgDLHPjJEsyvJngWEPUyVBiAaHCTEXwrLvSEbV1e1gKJniicWorC1MUrVjB3uDhJE/wgSOzk1DXpk0k73qCM8xw2UvD5kJmDUfOomqMpWCkJRlvKXGmoeBm18USjVIk04SClxTB6YrgLAPLWYK9HLUt5cmc0vYES8GnTeRc6skZbQkWdxRsIcyBRzx1DbTk9FbU0caTPOgJHhJKnOGIVhQqvKmo0llRw9sabrZkDtdg3PqaKi9oatjY8B+G371paMg6+mZFNNtQ04mWBq3rYLOmtWWQp8KJnpy9DdFensyjdqZ+yY40VJlH8wcdLzC8PZnvHMFUTZUrDTkLyQaGus5X5LzpYAf3i+e/ZlhqGqWhh6Ou6xTR9Z6oi5AZZtp7Mj2EEm8oSpxiYZCHU/1fbGdNNNRRoZMhmilEb2gqHOEJDtXkHK/JnG6IrvbPCwV3NhONVdS1thBMs1T4QOBcTWa2IzhMk2nW5Kyn9tXUtpv9RsG2msxk+ZsQzRQacJncpgke0+T8y5Fzj8BiGo7XlJjaTIlpQs7KFjpqGnKuoyEPeIKnFMkZHvopgh81ySxNFWvJWcKRs70j2FOT012IllEEO1n4pD1513Yg2ssQPOThOkvyrqHUdEXOSEsihmBbTbKX1kLBPWqWkLOqJbjB3GBIZmoa8qWl4CG/iZ7oiA72ZL7TJNeZUY7kFQftDcHHluBzRbCegzMtrRjVQpX2lgoPKKLJAkcbMl01XK2p7yhL8pCBbQ3BN2avJgKvttcrWDK3CiUOVxQ8ZP+pqXKyIxnmBymCg5vJjNfkPK4+c8cIfK8ocVt7kmfd/I5SR1hKvCzUtb+lhgc00ZaO6CyhIQP1Uv4yIZjload72PXX0OIJvnFU+0Zf6MhsJwTfW0r0UwQfW4LNLZl5HK261JCZ4qnBaAreVAS3WrjV0LBnNDUNNDToCEeFfwgcb4gOEqLRhirWkexrCEYKVV711DLYEE1XBEsp5tpTGjorkomKYF9FDXv7fR3BGwbettSxnyL53MBPjsxDZjMh+VUW9NRxq1DhVk+FSxQcaGjV9Pawv6eGByw5qzoy7xk4RsOShqjJwWKe/1pEEfzkobeD/dQJmpqedcyBTy2sr4nGNRH0c0SPWTLrqAc0OQcb/gemKgqucQT7ySWKCn2EUotoCvpZct7RO2sy/QW0IWcXd7pQRQyZVwT2USRO87uhjioTLKV2brpMUcMQRbKH/N2T+UlTpaMls6cmc6CCNy3JdYYSUzzJQ4oSD3oKLncULOiJvjBEC2oqnCJkJluCYy2ZQ5so9YYlZ1VLlQU1mXEW1jZERwj/MUSRc24TdexlqLKfQBtDTScJUV8FszXBEY5ktpD5Ur9hYB4Nb1iikw3JoYpkKX+RodRKFt53MMuRnKSpY31PwYaGaILh3wxJGz9TkTPEETxoCWZrgvOlmyMzxFEwVJE5xZKzvyJ4WxEc16Gd4Xe3Weq4XH2jKRikqOkGQ87hQnC7wBmGYLAnesX3M+S87eFATauuN+Qcrh7xIxXJbUIdMw3JGE3ylCWzrieaqCn4zhGM19TQ3z1oH1AX+pWEqIc7wNGAkULBo/ZxRaV9NNyh4Br3rCHZzbzmSfawBL0dNRwpW1kK9mxPXR9povcdrGSZK9c2k0xwFGzjuniCtRSZCZ6ccZ7gaktmgAOtKbG/JnOkJrjcQTdFMsxRQ2cLY3WTIrlCw1eWKn8R6pvt4GFDso3QoL4a3nLk3G6JrtME3dSenpx7PNFTmga0EaJTLQ061sEeQoWXhSo9LTXsaSjoJQRXeZLtDclbCrYzfzHHeaKjHCVOUkQHO3JeEepr56mhiyaYYKjjNU+Fed1wS5VlhWSqI/hYUdDOkaxiKehoyOnrCV5yBHtbWFqTHCCwtpDcYolesVR5yUzTZBb3RNMd0d6WP+SvhuBmRcGxnuQzT95IC285cr41cLGQ6aJJhmi4TMGempxeimBRQw1tFKV+8jd6KuzoSTqqDxzRtpZkurvKEHxlqXKRIjjfUNNXQsNOsRScoWFLT+YeRZVD3GRN0MdQcKqQjHDMrdGGVu3iYJpQx3WGUvfbmxwFfR20WBq0oYY7LMFhhgYtr8jpaEnaOzjawWWaTP8mMr0t/EPDPoqcnxTBI5o58L7uoWnMrpoqPwgVrlAUWE+V+TQl9rawoyP6QGAlQw2TPRX+YSkxyBC8Z6jhHkXBgQL7WII3DVFnRfCrBfxewv9D6xsyjys4VkhWb9pUU627JllV0YDNHMku/ldNMMXDEo4aFnAkk4U6frNEU4XgZUPmEKHUl44KrzmYamjAbh0JFvGnaTLPu1s9jPCwjFpYiN7z1DTOk/nc07CfDFzmCf7i+bfNHXhDtLeBXzTBT5rkMvWOIxpl4EMh2LGJBu2syDnAEx2naEhHDWMMzPZEhygyS1mS5RTJr5ZkoKbEUoYqr2kqdDUE8ztK7OaIntJkFrIECwv8LJTaVx5XJE86go8dFeZ3FN3rjabCAYpoYEeC9zzJVULBbmZhDyd7ko09ydpNZ3nm2Kee4FPPXHnYEF1nqOFEC08LUVcDvYXkJHW8gTaKCk9YGOeIJhqiE4ToPEepdp7IWFjdwnWaufGMwJJCMtUTTBBK9BGCOy2tGGrJTHIwyEOzp6aPzNMOtlZkDvcEWpP5SVNhfkvDxhmSazTJXYrM9U1E0xwFVwqZQwzJxw6+kGGGUj2FglGGmnb1/G51udRSMNlTw6GGnCcUwVcOpmsqTHa06o72sw1RL02p9z0VbnMLOaIX3QKaYKSCFQzBKEUNHTSc48k53RH9wxGMtpQa5KjjW0W0n6XCCCG4yxNNdhQ4R4l1Ff+2sSd6UFHiIEOyqqFgT01mEUMD+joy75jPhOA+oVVLm309FR4yVOlp4RhLiScNmSmaYF5Pw0STrOIoWMSR2UkRXOMp+M4SHW8o8Zoi6OZgjKOaFar8zZDzkWzvKOjkKBjmCXby8JahhjXULY4KlzgKLvAwxVGhvyd4zxB1d9T0piazmKLCVZY5sKiD0y2ZSYrkUEPUbIk+dlQ4SJHTR50k1DPaUWIdTZW9NJwnJMOECgd7ou/MnppMJ02O1VT4Wsh85MnZzcFTngpXGKo84qmwgKbCL/orR/SzJ2crA+t6Mp94KvxJUeIbT3CQu1uIdlQEOzlKfS3UMcrTiFmOuroocrZrT2AcmamOKg8YomeEKm/rlT2sociMaybaUlFhuqHCM2qIJ+rg4EcDFymiDSxzaHdPcpE62pD5kyM5SBMoA1PaUtfIthS85ig1VPiPPYXgYEMNk4Qq7TXBgo7oT57gPUdwgCHzhIVFPFU6OYJzHAX9m5oNrVjeE61miDrqQ4VSa1oiURTsKHC0IfjNwU2WzK6eqK8jWln4g15TVBnqmDteCJ501PGAocJhhqjZdtBEB6lnhLreFJKxmlKbeGrqLiSThVIbCdGzloasa6lpMQXHCME2boLpJgT7yWaemu6wBONbqGNVRS0PKIL7LckbjmQtR7K8I5qtqel+T/ChJTNIKLjdUMNIRyvOEko9YYl2cwQveBikCNawJKcLBbc7+JM92mysNvd/Fqp8a0k6CNEe7cnZrxlW0wQXaXjaktnRwNOGZKYiONwS7a1JVheq3WgJHlQUGKHKmp4KAxXR/ULURcNgoa4zhKSLpZR3kxRRb0NmD0OFn+UCS7CzI1nbP6+o4x47QZE5xRCt3ZagnYcvmpYQktXdk5YKXTzBC57kKEe0VVuiSYqapssMS3C9p2CKkHOg8B8Pa8p5atrIw3qezIWanMGa5HRDNF6RM9wcacl0N+Q8Z8hsIkSnaIIdHRUOEebAPy1zbCkhM062FCJtif7PU+UtoVXzWKqM1PxXO8cfdruhFQ/a6x3JKYagvVDhQEtNiyiiSQ7OsuRsZUku0CRNDs4Sog6KKjsZgk2bYJqijgsEenoKeniinRXBn/U3lgpPdyDZynQx8IiioMnCep5Ky8mjGs6Wty0l1hUQTcNWswS3WRp2kCNZwJG8omG8JphPUaFbC8lEfabwP7VtM9yoaNCAjpR41VNhrD9LkbN722v0CoZMByFzhaW+MyzRYEWFDQwN2M4/JiT76PuljT3VU/A36eaIThb+R9oZGOAJ9tewkgGvqOMNRWYjT/Cwu99Q8LqDE4TgbLWxJ1jaDDAERsFOFrobgjUsBScaguXU8kKm2RL19tRypSHnHNlHiIZqgufs4opgQdVdwxBNNFBR6kVFqb8ogimOzB6a6HTzrlDHEpYaxjiiA4TMQobkDg2vejjfwJGWmnbVFAw3H3hq2NyQfG7hz4aC+w3BbwbesG0swYayvpAs6++Ri1Vfzx93mFChvyN5xVHTS+0p9aqCAxyZ6ZacZyw5+7uuQkFPR9DDk9NOiE7X1PCYJVjVUqq7JlrHwWALF5nfHNGjApdpqgzx5OwilDhCiDYTgnc9waGW4BdLNNUQvOtpzDOWHDH8D7TR/A/85KljEQu3NREc4Pl/6B1Hhc8Umb5CsKMmGC9EPcxoT2amwHNCmeOEnOPbklnMkbOgIvO5UMOpQrS9UGVdt6iH/fURjhI/WOpaW9OKLYRod6HCUEdOX000wpDZQ6hwg6LgZfOqo1RfT/CrJzjekXOGhpc1VW71ZLbXyyp+93ILbC1kPtIEYx0FIx1VDrLoVzXRKRYWk809yYlC9ImcrinxtabKnzRJk3lAU1OLEN1j2zrYzr2myHRXJFf4h4QKT1qSTzTB5+ZNTzTRkAxX8FcLV2uS8eoQQ2aAkFzvCM72sJIcJET3WPjRk5wi32uSS9rfZajpWEvj9hW42F4o5NytSXYy8IKHay10VYdrcl4SkqscrXpMwyGOgtkajheSxdQqmpxP1L3t4R5PqasFnrQEjytq6qgp9Y09Qx9o4S1FzhUCn1kyHSzBWLemoSGvOqLNhZyBjmCaAUYpMgt4Ck7wBBMMwWKWgjsUwTaGVsxWC1mYoKiyqqeGKYqonSIRQ3KIkHO0pmAxTdBHkbOvfllfr+AA+7gnc50huVKYK393FOyg7rbPO/izI7hE4CnHHHnJ0ogNPRUGeUpsrZZTBJcrovUcJe51BPsr6GkJdhCCsZ6aTtMEb2pqWkqeVtDXE/QVggsU/Nl86d9RMF3DxvZTA58agu810RWawCiSzzXBeU3MMW9oyJUedvNEvQyNu1f10BSMddR1vaLCYpYa/mGocLSiYDcLbQz8aMn5iyF4xBNMs1P0QEOV7o5gaWGuzSeLue4tt3ro7y4Tgm4G/mopdZgl6q0o6KzJWE3mMksNr3r+a6CbT8g5wZNzT9O7fi/zpaOmnz3BRoqos+tv9zMbdpxsqDBOEewtJLt7cg5wtKKbvldpSzRRCD43VFheCI7yZLppggMVBS/KMAdHODJvOwq2NQSbKKKPLdFWQs7Fqo+mpl01JXYRgq8dnGLhTiFzqmWsUMdpllZdbKlyvSdYxhI9YghOtxR8LgSLWHK62mGGVoxzBE8LNWzqH9CUesQzFy5RQzTc56mhi6fgXEWwpKfE5Z7M05ZgZUPmo6auiv8YKzDYwWBLMErIbKHJvOwIrvEdhOBcQ9JdU1NHQ7CXn2XIDFBKU2WAgcX9UAUzDXWd5alwuyJ41Z9rjKLCL4aCp4WarhPm2rH+SaHUYE001JDZ2ZAzXPjdMpZWvC9wmqIB2lLhQ01D5jO06hghWMndbM7yRJMsoCj1vYbnFQVrW9jak3OlEJ3s/96+p33dEPRV5GxiqaGjIthUU6FFEZyqCa5qJrpBdzSw95IUnOPIrCUUjRZQFrbw5PR0R1qiYx3cb6nrWUMrBmmiBQxVHtTew5ICP/ip6g4hed/Akob/32wvBHsIOX83cI8hGeNeNPCIkPmXe8fPKx84OMSRM1MTdXSwjCZ4S30jVGhvqTRak/OVhgGazHuOCud5onEO1lJr6ecVyaOK6H7zqlBlIaHE0oroCgfvGJIdPcmfLNGLjpz7hZwZQpUbFME0A1cIJa7VNORkgfsMBatbKgwwJM9bSvQXeNOvbIjelg6WWvo5kvbKaJJNHexkKNHL9xRyFlH8Ti2riB5wVPhUk7nGkJnoCe428LR/wRGdYIlmWebCyxou1rCk4g/ShugBDX0V0ZQWkh0dOVsagkM0yV6OoLd5ye+pRlsCr0n+KiQrGuq5yJDzrTAXHtLUMduTDBVKrSm3eHL+6ijxhFDX9Z5gVU/wliHYTMiMFpKLNMEywu80wd3meoFmt6VbRMPenhrOc6DVe4pgXU8DnnHakLOIIrlF4FZPIw6R+zxBP0dyq6OOZ4Q5sLKCcz084ok+VsMMyQhNZmmBgX5xIXOEJTmi7VsGTvMTNdHHhpzdbE8Du2oKxgvBqQKdDDnTFOylCFaxR1syz2iqrOI/FEpNc3C6f11/7+ASS6l2inq2ciTrCCzgyemrCL5SVPjQkdPZUmGy2c9Sw9FtR1sS30RmsKPCS4rkIC/2U0MduwucYolGaPjKEyhzmiPYXagyWbYz8LWBDdzRimAXzxx4z8K9hpzlhLq+NiQ97HuKorMUfK/OVvC2JfiHUPCQI/q7J2gjK+tTDNxkCc4TMssqCs4TGtLVwQihyoAWgj9bosU80XGW6Ac9TJGziaUh5+hnFcHOnlaM1iRn29NaqGENTTTSUHCH2tWTeV0osUhH6psuVLjRUmGWhm6OZEshGeNowABHcJ2Bpy2ZszRcKkRXd2QuKVEeXnbfaEq825FguqfgfE2whlChSRMdron+LATTPQ2Z369t4B9C5gs/ylzv+CMmepIDPclFQl13W0rspPd1JOcbghGOEutqCv5qacURQl3dDKyvyJlqKXGPgcM9FfawJAMVmdcspcYKOZc4GjDYkFlK05olNMHyHn4zFNykyOxt99RkHlfwmiHo60l2EKI+mhreEKp080Tbug08BVPcgoqC5zWt+NLDTZ7oNSF51N1qie7Va3uCCwyZbkINf/NED6jzOsBdZjFN8oqG3wxVunqCSYYKf3EdhJyf9YWGf7tRU2oH3VHgPr1fe5J9hOgHd7xQ0y7qBwXr23aGErP0cm64JVjZwsOGqL+mhNgZmhJLW2oY4UhedsyBgzrCKrq7BmcpNVhR6jBPq64Vgi+kn6XE68pp8J5/+0wRHGOpsKenQn9DZntPzjRLZpDAdD2fnSgkG9tmIXnUwQ6WVighs7Yi2MxQ0N3CqYaCXkJ0oyOztMDJjmSSpcpvlrk0RMMOjmArQ04PRV1DO1FwhCVaUVPpKUM03JK5SxPsIWRu8/CGHi8UHChiqGFDTbSRJWeYUDDcH6vJWUxR4k1FXbMUwV6e4AJFXS8oMqsZKqzvYQ9DDQdZckY4aGsIhtlubbd2r3j4QBMoTamdPZk7O/Bf62lacZwneNjQoGcdVU7zJOd7ghsUHOkosagic6cnWc8+4gg285R6zZP5s1/LUbCKIznTwK36PkdwlOrl4U1LwfdCCa+IrvFkmgw1PCAUXKWo0sURXWcI2muKJlgyFzhynCY4RBOsqCjoI1R5zREco0n2Vt09BQtYSizgKNHfUmUrQ5UOCh51BFcLmY7umhYqXKQomOop8bUnWNNQcIiBcYaC6xzMNOS8JQQfeqKBmmglB+97ok/lfk3ygaHSyZaCRTzRxQo6GzLfa2jWBPepw+UmT7SQEJyiyRkhBLMVOfcoMjcK0eZChfUNzFAUzCsEN5vP/X1uP/n/aoMX+K+nw/Hjr/9xOo7j7Pju61tLcgvJpTWXNbfN5jLpi6VfCOviTktKlFusQixdEKWmEBUKNaIpjZRSSOXSgzaaKLdabrm1/9nZ+/f+vd/vz/v9+Xy+zZ7PRorYoZqyLrCwQdEAixxVOEXNNnjX2nUSRlkqGmWowk8lxR50JPy9Bo6qJXaXwNvREBvnThPEPrewryLhcAnj5WE15Fqi8W7R1sAuEu86S4ENikItFN4xkv9Af4nXSnUVcLiA9xzesFpivRRVeFKtsMRaKBhuSbjOELnAUtlSQUpXgdfB4Z1oSbnFEetbQ0IrAe+Y+pqnDcEJFj6S8LDZzZHwY4e3XONNlARraomNEt2bkvGsosA3ioyHm+6jCMbI59wqt4eeara28IzEmyPgoRaUOEDhTVdEJhmCoTWfC0p8aNkCp0oYqih2iqGi4yXeMkOsn4LdLLnmKfh/YogjNsPebeFGR4m9BJHLzB61XQ3BtpISfS2FugsK9FAtLWX1dCRcrCnUp44CNzuCowUZmxSRgYaE6Za0W2u/E7CVXCiI/UOR8aAm1+OSyE3mOUcwyc1zBBeoX1kiKy0Zfxck1Gsyulti11i83QTBF5Kg3pDQThFMVHiPSlK+0cSedng/VaS8bOZbtsBcTcZAR8JP5KeqQ1OYKAi20njdNNRpgnsU//K+JnaXJaGTomr7aYIphoRn9aeShJWKEq9LcozSF7QleEfDI5LYm5bgVkFkRwVDBCVu0DDIkGupo8TZBq+/pMQURYErJQmPKGKjNDkWOLx7Jd5QizdUweIaKrlP7SwJDhZvONjLkOsBBX9UpGxnydhXkfBLQ8IxgojQbLFnJf81JytSljclYYyEFyx0kVBvKWOFJmONpshGAcsduQY5giVNCV51eOdJYo/pLhbvM0uDHSevNKRcrKZIqnCtJeEsO95RoqcgGK4ocZcho1tTYtcZvH41pNQ7vA0WrhIfOSraIIntIAi+NXWCErdbkvrWwjRLrt0NKUdL6KSOscTOdMSOUtBHwL6OLA0vNSdynaWQEnCpIvKaIrJJEbvHkmuNhn6OjM8VkSGSqn1uYJCGHnq9I3aLhNME3t6GjIkO7xrNFumpyTNX/NrwX7CrIRiqqWijI9JO4d1iieykyfiposQIQ8YjjsjlBh6oHWbwRjgYJQn2NgSnNycmJAk3NiXhx44Sxykihxm8ybUwT1OVKySc7vi3OXVkdBJ4AyXBeksDXG0IhgtYY0lY5ahCD0ehborIk5aUWRJviMA7Xt5kyRjonrXENkm8yYqgs8VzgrJmClK20uMM3jRJ0FiQICQF9hdETlLQWRIb5ki6WDfWRPobvO6a4GP5mcOrNzDFELtTkONLh9dXE8xypEg7z8A9jkhrQ6Fhjlg/QVktJXxt4WXzT/03Q8IaQWSqIuEvloQ2mqC9Jfi7wRul4RX3pSPlzpoVlmCtI2jvKHCFhjcM3sN6lqF6HxnKelLjXWbwrpR4xzuCrTUZx2qq9oAh8p6ixCUGr78g8oyjRAtB5CZFwi80VerVpI0h+IeBxa6Zg6kWvpDHaioYYuEsRbDC3eOmC2JvGYLeioxGknL2UATNJN6hmtj1DlpLvDVmocYbrGCVJKOrg4X6DgddLA203BKMFngdJJFtFd7vJLm6KEpc5yjQrkk7M80SGe34X24nSex1Ra5Omgb71JKyg8SrU3i/kARKwWpH0kOGhKkObyfd0ZGjvyXlAkVZ4xRbYJ2irFMkFY1SwyWxr2oo4zlNiV+7zmaweFpT4kR3kaDAFW6xpSqzJay05FtYR4HmZhc9UxKbbfF2V8RG1MBmSaE+kmC6JnaRXK9gsiXhJHl/U0qM0WTcbyhwkYIvFGwjSbjfwhiJt8ZSQU+Bd5+marPMOkVkD0muxYLIfEuhh60x/J92itguihJSEMySVPQnTewnEm+620rTQEMsOfo4/kP/0ARvWjitlpSX7GxBgcMEsd3EEeYWvdytd+Saawi6aCIj1CkGb6Aj9rwhx16Cf3vAwFy5pyLhVonXzy51FDpdEblbkdJbUcEPDEFzQ8qNmhzzLTmmKWKbFCXeEuRabp6rxbvAtLF442QjQ+wEA9eL1xSR7Q0JXzlSHjJ4exq89yR0laScJ/FW6z4a73pFMEfDiRZvuvijIt86RaSFOl01riV2mD1UEvxGk/Geg5aWwGki1zgKPG9J2U8PEg8qYvMsZeytiTRXBMslCU8JSlxi8EabjwUldlDNLfzTUmCgxWsjqWCOHavYAqsknKFIO0yQ61VL5AVFxk6WhEaCAkdJgt9aSkzXlKNX2jEa79waYuc7gq0N3GDJGCBhoiTXUEPsdknCUE1CK0fwsiaylSF2uiDyO4XX3pFhNd7R4itFGc0k/ElBZwWvq+GC6szVeEoS/MZ+qylwpKNKv9Z469UOjqCjwlusicyTxG6VpNxcQ8IncoR4RhLbR+NdpGGmJWOcIzJGUuKPGpQg8rrG21dOMqQssJQ4RxH5jaUqnZuQ0F4Q+cjxLwPtpZbIAk3QTJHQWBE5S1BokoVtDd6lhqr9UpHSUxMcIYl9pojsb8h4SBOsMQcqvOWC2E8EVehqiJ1hrrAEbQxeK0NGZ0Gkq+guSRgniM23bIHVkqwx4hiHd7smaOyglyIyQuM978j4VS08J/A2G1KeMBRo4fBaSNhKUEZfQewVQ/C1I+MgfbEleEzCUw7mKXI0M3hd1EESVji8x5uQ41nxs1q4RMJCCXs7Iq9acpxn22oSDnQ/sJTxsCbHIYZiLyhY05TY0ZLIOQrGaSJDDN4t8pVaIrsqqFdEegtizc1iTew5Q4ayBDMUsQMkXocaYkc0hZua412siZ1rSXlR460zRJ5SlHGe5j801RLMlJTxtaOM3Q1pvxJ45zUlWFD7rsAbpfEm1JHxG0eh8w2R7QQVzBUw28FhFp5QZzq8t2rx2joqulYTWSuJdTYfWwqMFMcovFmSyJPNyLhE4E10pHzYjOC3huArRa571ZsGajQpQx38SBP5pyZB6lMU3khDnp0MBV51BE9o2E+TY5Ml2E8S7C0o6w1xvCZjf0HkVEHCzFoyNmqC+9wdcqN+Tp7jSDheE9ws8Y5V0NJCn2bk2tqSY4okdrEhx1iDN8cSudwepWmAGXKcJXK65H9to8jYQRH7SBF01ESUJdd0TayVInaWhLkOjlXE5irKGOnI6GSWGCJa482zBI9rCr0jyTVcEuzriC1vcr6mwFGSiqy5zMwxBH/TJHwjSPhL8+01kaaSUuMFKTcLEvaUePcrSmwn8DZrgikWb7CGPxkSjhQwrRk57tctmxLsb9sZvL9LSlyuSLlWkqOjwduo8b6Uv1DkmudIeFF2dHCgxVtk8dpIvHpBxhEOdhKk7OLIUSdJ+cSRY57B+0DgGUUlNfpthTfGkauzxrvTsUUaCVhlKeteTXCoJDCa2NOKhOmC4G1H8JBd4OBZReSRGkqcb/CO1PyLJTLB4j1q8JYaIutEjSLX8YKM+a6phdMsdLFUoV5RTm9JSkuDN8WcIon0NZMNZWh1q8C7SJEwV5HxrmnnTrf3KoJBlmCYI2ilSLlfEvlE4011NNgjgthzEua0oKK7JLE7HZHlEl60BLMVFewg4EWNt0ThrVNEVkkiTwpKXSWJzdRENgvKGq4IhjsiezgSFtsfCUq8qki5S1LRQeYQQ4nemmCkImWMw3tFUoUBZk4NOeZYEp4XRKTGa6wJjrWNHBVJR4m3FCnbuD6aak2WsMTh3SZImGCIPKNgsDpVwnsa70K31lCFJZYcwwSMFcQulGTsZuEaSdBXkPGZhu0FsdUO73RHjq8MPGGIfaGIbVTk6iuI3GFgucHrIQkmWSJdBd7BBu+uOryWAhY7+Lki9rK5wtEQzWwvtbqGhIMFwWRJsElsY4m9IIg9L6lCX0VklaPAYkfkZEGDnOWowlBJjtMUkcGK4Lg6EtoZInMUBVYLgn0UsdmCyCz7gIGHFfk+k1QwTh5We7A9x+IdJ6CvIkEagms0hR50eH9UnTQJ+2oiKyVlLFUE+8gBGu8MQ3CppUHesnjTHN4QB/UGPhCTHLFPHMFrCqa73gqObUJGa03wgbhHkrCfpEpzNLE7JDS25FMKhlhKKWKfCgqstLCPu1zBXy0J2ztwjtixBu8UTRn9LVtkmCN2iyFhtME70JHRQ1KVZXqKI/KNIKYMCYs1GUMEKbM1bKOI9LDXC7zbHS+bt+1MTWS9odA9DtrYtpbImQJ2VHh/lisEwaHqUk1kjKTAKknkBEXkbkdMGwq0dnhzLJF3NJH3JVwrqOB4Sca2hti75nmJN0WzxS6UxDYoEpxpa4htVlRjkYE7DZGzJVU72uC9IyhQL4i8YfGWSYLLNcHXloyz7QhNifmKSE9JgfGmuyLhc403Xm9vqcp6gXe3xuuv8F6VJNxkyTHEkHG2g0aKXL0MsXc1bGfgas2//dCONXiNLCX+5mB7eZIl1kHh7ajwpikyzlUUWOVOsjSQlsS+M0R+pPje/dzBXRZGO0rMtgQrLLG9VSu9n6CMXS3BhwYmSoIBhsjNBmZbgusE9BCPCP5triU4VhNbJfE+swSP27aayE8tuTpYYjtrYjMVGZdp2NpS1s6aBnKSHDsbKuplKbHM4a0wMFd/5/DmGyKrJSUaW4IBrqUhx0vyfzTBBLPIUcnZdrAkNsKR0sWRspumSns6Ch0v/qqIbBYUWKvPU/CFoyrDJGwSNFhbA/MlzKqjrO80hRbpKx0Jewsi/STftwGSlKc1JZyAzx05dhLEdnfQvhZOqiHWWEAHC7+30FuRcZUgaO5gpaIK+xsiHRUsqaPElTV40xQZQ107Q9BZE1nryDVGU9ZSQ47bmhBpLcYpUt7S+xuK/FiT8qKjwXYw5ypS2iuCv7q1gtgjhuBuB8LCFY5cUuCNtsQOFcT+4Ih9JX+k8Ea6v0iCIRZOtCT0Et00JW5UeC85Cg0ScK0k411HcG1zKtre3SeITBRk7WfwDhEvaYLTHP9le0m8By0JDwn4TlLW/aJOvGHxdjYUes+ScZigCkYQdNdEOhkiezgShqkx8ueKjI8lDfK2oNiOFvrZH1hS+tk7NV7nOmLHicGWEgubkXKdwdtZknCLJXaCpkrjZBtLZFsDP9CdxWsSr05Sxl6CMmoFbCOgryX40uDtamB7SVmXW4Ihlgpmq+00tBKUUa83WbjLUNkzDmY7cow1JDygyPGlhgGKYKz4vcV7QBNbJIgM11TUqZaMdwTeSguH6rOaw1JRKzaaGyxVm2EJ/uCIrVWUcZUkcp2grMsEjK+DMwS59jQk3Kd6SEq1d0S6uVmO4Bc1lDXTUcHjluCXEq+1OlBDj1pi9zgiXxnKuE0SqTXwhqbETW6RggMEnGl/q49UT2iCzgJvRwVXS2K/d6+ZkyUl7jawSVLit46EwxVljDZwoSQ20sDBihztHfk2yA8NVZghiXwrYHQdfKAOtzsayjhY9bY0yE2CWEeJ9xfzO423xhL5syS2TFJofO2pboHob0nY4GiAgRrvGQEDa/FWSsoaaYl0syRsEt3kWoH3B01shCXhTUWe9w3Bt44SC9QCh3eShQctwbaK2ApLroGCMlZrYqvlY3qYhM0aXpFkPOuoqJ3Dm6fxXrGwVF9gCWZagjPqznfkuMKQ8DPTQRO8ZqG1hPGKEm9IgpGW4DZDgTNriTxvFiq+Lz+0cKfp4wj6OCK9JSnzNSn9LFU7UhKZZMnYwcJ8s8yRsECScK4j5UOB95HFO0CzhY4xJxuCix0lDlEUeMdS6EZBkTsUkZ4K74dugyTXS7aNgL8aqjDfkCE0ZbwkCXpaWCKhl8P7VD5jxykivSyxyZrYERbe168LYu9ZYh86IkscgVLE7tWPKmJv11CgoyJltMEbrohtVAQfO4ImltiHEroYEs7RxAarVpY8AwXMcMReFOTYWe5iiLRQxJ5Q8DtJ8LQhWOhIeFESPGsILhbNDRljNbHzNRlTFbk2S3L0NOS6V1KFJYKUbSTcIIhM0wQ/s2TM0SRMNcQmSap3jCH4yhJZKSkwyRHpYYgsFeQ4U7xoCB7VVOExhXepo9ABBsYbvGWKXPME3lyH95YioZ0gssQRWWbI+FaSMkXijZXwgiTlYdPdkNLaETxlyDVIwqeaEus0aTcYcg0RVOkpR3CSJqIddK+90JCxzsDVloyrFd5ZAr4TBKfaWa6boEA7C7s6EpYaeFPjveooY72mjIccLHJ9HUwVlDhKkmutJDJBwnp1rvulJZggKDRfbXAkvC/4l3ozQOG9a8lxjx0i7nV4jSXc7vhe3OwIxjgSHjdEhhsif9YkPGlus3iLFDnWOFhtCZbJg0UbQcIaR67JjthoCyMEZRwhiXWyxO5QxI6w5NhT4U1WsJvDO60J34fW9hwzwlKij6ZAW9ne4L0s8C6XeBMEkd/LQy1VucBRot6QMlbivaBhoBgjqGiCJNhsqVp/S2SsG6DIONCR0dXhvWbJ+MRRZJkkuEjgDXJjFQW6SSL7GXK8Z2CZg7cVsbWGoKmEpzQ5elpiy8Ryg7dMkLLUEauzeO86CuwlSOlgYLojZWeJ9xM3S1PWfEfKl5ISLQ0MEKR8YOB2QfCxJBjrKPCN4f9MkaSsqoVXJBmP7EpFZ9UQfOoOFwSzBN4MQ8LsGrymlipcJQhmy0GaQjPqCHaXRwuCZwRbqK2Fg9wlClZqYicrIgMdZfxTQ0c7TBIbrChxmuzoKG8XRaSrIhhiyNFJkrC7oIAWMEOQa5aBekPCRknCo4IKPrYkvCDI8aYmY7WFtprgekcJZ3oLIqssCSMtFbQTJKwXYy3BY5oCh2iKPCpJOE+zRdpYgi6O2KmOAgvVCYaU4ySRek1sgyFhJ403QFHiVEmJHwtybO1gs8Hr5+BETQX3War0qZngYGgtVZtoqd6vFSk/UwdZElYqyjrF4HXUeFspIi9IGKf4j92pKGAdCYMVsbcV3kRF0N+R8LUd5PCsIGWoxDtBkCI0nKofdJQxT+LtZflvuc8Q3CjwWkq8KwUpHzkK/NmSsclCL0nseQdj5FRH5CNHSgtLiW80Of5HU9Hhlsga9bnBq3fEVltKfO5IaSTmGjjc4J0otcP7QsJUSQM8pEj5/wCuUuC2DWz8AAAAAElFTkSuQmCC");}</style></template></dom-module><dom-module id="base16-dark" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-base16-dark.CodeMirror{background:#151515;color:#e0e0e0;}.cm-s-base16-dark div.CodeMirror-selected{background:#303030 !important;}.cm-s-base16-dark.CodeMirror ::selection{background:rgba(48, 48, 48, .99);}.cm-s-base16-dark.CodeMirror ::-moz-selection{background:rgba(48, 48, 48, .99);}.cm-s-base16-dark .CodeMirror-gutters{background:#151515;border-right:0px;}.cm-s-base16-dark .CodeMirror-guttermarker{color:#ac4142;}.cm-s-base16-dark .CodeMirror-guttermarker-subtle{color:#505050;}.cm-s-base16-dark .CodeMirror-linenumber{color:#505050;}.cm-s-base16-dark .CodeMirror-cursor{border-left:1px solid #b0b0b0 !important;}.cm-s-base16-dark span.cm-comment{color:#8f5536;}.cm-s-base16-dark span.cm-atom{color:#aa759f;}.cm-s-base16-dark span.cm-number{color:#aa759f;}.cm-s-base16-dark span.cm-property, .cm-s-base16-dark span.cm-attribute{color:#90a959;}.cm-s-base16-dark span.cm-keyword{color:#ac4142;}.cm-s-base16-dark span.cm-string{color:#f4bf75;}.cm-s-base16-dark span.cm-variable{color:#90a959;}.cm-s-base16-dark span.cm-variable-2{color:#6a9fb5;}.cm-s-base16-dark span.cm-def{color:#d28445;}.cm-s-base16-dark span.cm-bracket{color:#e0e0e0;}.cm-s-base16-dark span.cm-tag{color:#ac4142;}.cm-s-base16-dark span.cm-link{color:#aa759f;}.cm-s-base16-dark span.cm-error{background:#ac4142;color:#b0b0b0;}.cm-s-base16-dark .CodeMirror-activeline-background{background:#202020 !important;}.cm-s-base16-dark .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="base16-light" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-base16-light.CodeMirror{background:#f5f5f5;color:#202020;}.cm-s-base16-light div.CodeMirror-selected{background:#e0e0e0 !important;}.cm-s-base16-light.CodeMirror ::selection{background:#e0e0e0;}.cm-s-base16-light.CodeMirror ::-moz-selection{background:#e0e0e0;}.cm-s-base16-light .CodeMirror-gutters{background:#f5f5f5;border-right:0px;}.cm-s-base16-light .CodeMirror-guttermarker{color:#ac4142;}.cm-s-base16-light .CodeMirror-guttermarker-subtle{color:#b0b0b0;}.cm-s-base16-light .CodeMirror-linenumber{color:#b0b0b0;}.cm-s-base16-light .CodeMirror-cursor{border-left:1px solid #505050 !important;}.cm-s-base16-light span.cm-comment{color:#8f5536;}.cm-s-base16-light span.cm-atom{color:#aa759f;}.cm-s-base16-light span.cm-number{color:#aa759f;}.cm-s-base16-light span.cm-property, .cm-s-base16-light span.cm-attribute{color:#90a959;}.cm-s-base16-light span.cm-keyword{color:#ac4142;}.cm-s-base16-light span.cm-string{color:#f4bf75;}.cm-s-base16-light span.cm-variable{color:#90a959;}.cm-s-base16-light span.cm-variable-2{color:#6a9fb5;}.cm-s-base16-light span.cm-def{color:#d28445;}.cm-s-base16-light span.cm-bracket{color:#202020;}.cm-s-base16-light span.cm-tag{color:#ac4142;}.cm-s-base16-light span.cm-link{color:#aa759f;}.cm-s-base16-light span.cm-error{background:#ac4142;color:#505050;}.cm-s-base16-light .CodeMirror-activeline-background{background:#DDDCDC !important;}.cm-s-base16-light .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="blackboard" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-blackboard.CodeMirror{background:#0C1021;color:#F8F8F8;}.cm-s-blackboard .CodeMirror-selected{background:#253B76 !important;}.cm-s-blackboard.CodeMirror ::selection{background:rgba(37, 59, 118, .99);}.cm-s-blackboard.CodeMirror ::-moz-selection{background:rgba(37, 59, 118, .99);}.cm-s-blackboard .CodeMirror-gutters{background:#0C1021;border-right:0;}.cm-s-blackboard .CodeMirror-guttermarker{color:#FBDE2D;}.cm-s-blackboard .CodeMirror-guttermarker-subtle{color:#888;}.cm-s-blackboard .CodeMirror-linenumber{color:#888;}.cm-s-blackboard .CodeMirror-cursor{border-left:1px solid #A7A7A7 !important;}.cm-s-blackboard .cm-keyword{color:#FBDE2D;}.cm-s-blackboard .cm-atom{color:#D8FA3C;}.cm-s-blackboard .cm-number{color:#D8FA3C;}.cm-s-blackboard .cm-def{color:#8DA6CE;}.cm-s-blackboard .cm-variable{color:#FF6400;}.cm-s-blackboard .cm-operator{color:#FBDE2D;}.cm-s-blackboard .cm-comment{color:#AEAEAE;}.cm-s-blackboard .cm-string{color:#61CE3C;}.cm-s-blackboard .cm-string-2{color:#61CE3C;}.cm-s-blackboard .cm-meta{color:#D8FA3C;}.cm-s-blackboard .cm-builtin{color:#8DA6CE;}.cm-s-blackboard .cm-tag{color:#8DA6CE;}.cm-s-blackboard .cm-attribute{color:#8DA6CE;}.cm-s-blackboard .cm-header{color:#FF6400;}.cm-s-blackboard .cm-hr{color:#AEAEAE;}.cm-s-blackboard .cm-link{color:#8DA6CE;}.cm-s-blackboard .cm-error{background:#9D1E15;color:#F8F8F8;}.cm-s-blackboard .CodeMirror-activeline-background{background:#3C3636 !important;}.cm-s-blackboard .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="cobalt" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-cobalt.CodeMirror{background:#002240;color:white;}.cm-s-cobalt div.CodeMirror-selected{background:#b36539 !important;}.cm-s-cobalt.CodeMirror ::selection{background:rgba(179, 101, 57, .99);}.cm-s-cobalt.CodeMirror ::-moz-selection{background:rgba(179, 101, 57, .99);}.cm-s-cobalt .CodeMirror-gutters{background:#002240;border-right:1px solid #aaa;}.cm-s-cobalt .CodeMirror-guttermarker{color:#ffee80;}.cm-s-cobalt .CodeMirror-guttermarker-subtle{color:#d0d0d0;}.cm-s-cobalt .CodeMirror-linenumber{color:#d0d0d0;}.cm-s-cobalt .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-cobalt span.cm-comment{color:#08f;}.cm-s-cobalt span.cm-atom{color:#845dc4;}.cm-s-cobalt span.cm-number, .cm-s-cobalt span.cm-attribute{color:#ff80e1;}.cm-s-cobalt span.cm-keyword{color:#ffee80;}.cm-s-cobalt span.cm-string{color:#3ad900;}.cm-s-cobalt span.cm-meta{color:#ff9d00;}.cm-s-cobalt span.cm-variable-2, .cm-s-cobalt span.cm-tag{color:#9effff;}.cm-s-cobalt span.cm-variable-3, .cm-s-cobalt span.cm-def{color:white;}.cm-s-cobalt span.cm-bracket{color:#d8d8d8;}.cm-s-cobalt span.cm-builtin, .cm-s-cobalt span.cm-special{color:#ff9e59;}.cm-s-cobalt span.cm-link{color:#845dc4;}.cm-s-cobalt span.cm-error{color:#9d1e15;}.cm-s-cobalt .CodeMirror-activeline-background{background:#002D57 !important;}.cm-s-cobalt .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="colorforth" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-colorforth.CodeMirror{background:#000000;color:#f8f8f8;}.cm-s-colorforth .CodeMirror-gutters{background:#0a001f;border-right:1px solid #aaa;}.cm-s-colorforth .CodeMirror-guttermarker{color:#FFBD40;}.cm-s-colorforth .CodeMirror-guttermarker-subtle{color:#78846f;}.cm-s-colorforth .CodeMirror-linenumber{color:#bababa;}.cm-s-colorforth .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-colorforth span.cm-comment{color:#ededed;}.cm-s-colorforth span.cm-def{color:#ff1c1c;font-weight:bold;}.cm-s-colorforth span.cm-keyword{color:#ffd900;}.cm-s-colorforth span.cm-builtin{color:#00d95a;}.cm-s-colorforth span.cm-variable{color:#73ff00;}.cm-s-colorforth span.cm-string{color:#007bff;}.cm-s-colorforth span.cm-number{color:#00c4ff;}.cm-s-colorforth span.cm-atom{color:#606060;}.cm-s-colorforth span.cm-variable-2{color:#EEE;}.cm-s-colorforth span.cm-variable-3{color:#DDD;}.cm-s-colorforth span.cm-property{}.cm-s-colorforth span.cm-operator{}.cm-s-colorforth span.cm-meta{color:yellow;}.cm-s-colorforth span.cm-qualifier{color:#FFF700;}.cm-s-colorforth span.cm-bracket{color:#cc7;}.cm-s-colorforth span.cm-tag{color:#FFBD40;}.cm-s-colorforth span.cm-attribute{color:#FFF700;}.cm-s-colorforth span.cm-error{color:#f00;}.cm-s-colorforth .CodeMirror-selected{background:#333d53 !important;}.cm-s-colorforth span.cm-compilation{background:rgba(255, 255, 255, 0.12);}.cm-s-colorforth .CodeMirror-activeline-background{background:#253540 !important;}</style></template></dom-module><dom-module id="eclipse" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-eclipse span.cm-meta{color:#FF1717;}.cm-s-eclipse span.cm-keyword{line-height:1em;font-weight:bold;color:#7F0055;}.cm-s-eclipse span.cm-atom{color:#219;}.cm-s-eclipse span.cm-number{color:#164;}.cm-s-eclipse span.cm-def{color:#00f;}.cm-s-eclipse span.cm-variable{color:black;}.cm-s-eclipse span.cm-variable-2{color:#0000C0;}.cm-s-eclipse span.cm-variable-3{color:#0000C0;}.cm-s-eclipse span.cm-property{color:black;}.cm-s-eclipse span.cm-operator{color:black;}.cm-s-eclipse span.cm-comment{color:#3F7F5F;}.cm-s-eclipse span.cm-string{color:#2A00FF;}.cm-s-eclipse span.cm-string-2{color:#f50;}.cm-s-eclipse span.cm-qualifier{color:#555;}.cm-s-eclipse span.cm-builtin{color:#30a;}.cm-s-eclipse span.cm-bracket{color:#cc7;}.cm-s-eclipse span.cm-tag{color:#170;}.cm-s-eclipse span.cm-attribute{color:#00c;}.cm-s-eclipse span.cm-link{color:#219;}.cm-s-eclipse span.cm-error{color:#f00;}.cm-s-eclipse .CodeMirror-activeline-background{background:#e8f2ff !important;}.cm-s-eclipse .CodeMirror-matchingbracket{outline:1px solid grey;color:black !important;}</style></template></dom-module><dom-module id="elegant" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-elegant span.cm-number, .cm-s-elegant span.cm-string, .cm-s-elegant span.cm-atom{color:#762;}.cm-s-elegant span.cm-comment{color:#262;font-style:italic;line-height:1em;}.cm-s-elegant span.cm-meta{color:#555;font-style:italic;line-height:1em;}.cm-s-elegant span.cm-variable{color:black;}.cm-s-elegant span.cm-variable-2{color:#b11;}.cm-s-elegant span.cm-qualifier{color:#555;}.cm-s-elegant span.cm-keyword{color:#730;}.cm-s-elegant span.cm-builtin{color:#30a;}.cm-s-elegant span.cm-link{color:#762;}.cm-s-elegant span.cm-error{background-color:#fdd;}.cm-s-elegant .CodeMirror-activeline-background{background:#e8f2ff !important;}.cm-s-elegant .CodeMirror-matchingbracket{outline:1px solid grey;color:black !important;}</style></template></dom-module><dom-module id="erlang-dark" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-erlang-dark.CodeMirror{background:#002240;color:white;}.cm-s-erlang-dark div.CodeMirror-selected{background:#b36539 !important;}.cm-s-erlang-dark.CodeMirror ::selection{background:rgba(179, 101, 57, .99);}.cm-s-erlang-dark.CodeMirror ::-moz-selection{background:rgba(179, 101, 57, .99);}.cm-s-erlang-dark .CodeMirror-gutters{background:#002240;border-right:1px solid #aaa;}.cm-s-erlang-dark .CodeMirror-guttermarker{color:white;}.cm-s-erlang-dark .CodeMirror-guttermarker-subtle{color:#d0d0d0;}.cm-s-erlang-dark .CodeMirror-linenumber{color:#d0d0d0;}.cm-s-erlang-dark .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-erlang-dark span.cm-atom{color:#f133f1;}.cm-s-erlang-dark span.cm-attribute{color:#ff80e1;}.cm-s-erlang-dark span.cm-bracket{color:#ff9d00;}.cm-s-erlang-dark span.cm-builtin{color:#eaa;}.cm-s-erlang-dark span.cm-comment{color:#77f;}.cm-s-erlang-dark span.cm-def{color:#e7a;}.cm-s-erlang-dark span.cm-keyword{color:#ffee80;}.cm-s-erlang-dark span.cm-meta{color:#50fefe;}.cm-s-erlang-dark span.cm-number{color:#ffd0d0;}.cm-s-erlang-dark span.cm-operator{color:#d55;}.cm-s-erlang-dark span.cm-property{color:#ccc;}.cm-s-erlang-dark span.cm-qualifier{color:#ccc;}.cm-s-erlang-dark span.cm-quote{color:#ccc;}.cm-s-erlang-dark span.cm-special{color:#ffbbbb;}.cm-s-erlang-dark span.cm-string{color:#3ad900;}.cm-s-erlang-dark span.cm-string-2{color:#ccc;}.cm-s-erlang-dark span.cm-tag{color:#9effff;}.cm-s-erlang-dark span.cm-variable{color:#50fe50;}.cm-s-erlang-dark span.cm-variable-2{color:#e0e;}.cm-s-erlang-dark span.cm-variable-3{color:#ccc;}.cm-s-erlang-dark span.cm-error{color:#9d1e15;}.cm-s-erlang-dark .CodeMirror-activeline-background{background:#013461 !important;}.cm-s-erlang-dark .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="lesser-dark" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-lesser-dark{line-height:1.3em;}.cm-s-lesser-dark.CodeMirror{background:#262626;color:#EBEFE7;text-shadow:0 -1px 1px #262626;}.cm-s-lesser-dark div.CodeMirror-selected{background:#45443B !important;}.cm-s-lesser-dark.CodeMirror ::selection{background:rgba(69, 68, 59, .99);}.cm-s-lesser-dark.CodeMirror ::-moz-selection{background:rgba(69, 68, 59, .99);}.cm-s-lesser-dark .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-lesser-dark pre{padding:0 8px;}.cm-s-lesser-dark.CodeMirror span.CodeMirror-matchingbracket{color:#7EFC7E;}.cm-s-lesser-dark .CodeMirror-gutters{background:#262626;border-right:1px solid #aaa;}.cm-s-lesser-dark .CodeMirror-guttermarker{color:#599eff;}.cm-s-lesser-dark .CodeMirror-guttermarker-subtle{color:#777;}.cm-s-lesser-dark .CodeMirror-linenumber{color:#777;}.cm-s-lesser-dark span.cm-keyword{color:#599eff;}.cm-s-lesser-dark span.cm-atom{color:#C2B470;}.cm-s-lesser-dark span.cm-number{color:#B35E4D;}.cm-s-lesser-dark span.cm-def{color:white;}.cm-s-lesser-dark span.cm-variable{color:#D9BF8C;}.cm-s-lesser-dark span.cm-variable-2{color:#669199;}.cm-s-lesser-dark span.cm-variable-3{color:white;}.cm-s-lesser-dark span.cm-property{color:#92A75C;}.cm-s-lesser-dark span.cm-operator{color:#92A75C;}.cm-s-lesser-dark span.cm-comment{color:#666;}.cm-s-lesser-dark span.cm-string{color:#BCD279;}.cm-s-lesser-dark span.cm-string-2{color:#f50;}.cm-s-lesser-dark span.cm-meta{color:#738C73;}.cm-s-lesser-dark span.cm-qualifier{color:#555;}.cm-s-lesser-dark span.cm-builtin{color:#ff9e59;}.cm-s-lesser-dark span.cm-bracket{color:#EBEFE7;}.cm-s-lesser-dark span.cm-tag{color:#669199;}.cm-s-lesser-dark span.cm-attribute{color:#00c;}.cm-s-lesser-dark span.cm-header{color:#a0a;}.cm-s-lesser-dark span.cm-quote{color:#090;}.cm-s-lesser-dark span.cm-hr{color:#999;}.cm-s-lesser-dark span.cm-link{color:#00c;}.cm-s-lesser-dark span.cm-error{color:#9d1e15;}.cm-s-lesser-dark .CodeMirror-activeline-background{background:#3C3A3A !important;}.cm-s-lesser-dark .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="liquibyte" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-liquibyte.CodeMirror{background-color:#000;color:#fff;line-height:1.2em;font-size:1em;}.CodeMirror-focused .cm-matchhighlight{text-decoration:underline;text-decoration-color:#0f0;text-decoration-style:wavy;}.cm-trailingspace{text-decoration:line-through;text-decoration-color:#f00;text-decoration-style:dotted;}.cm-tab{text-decoration:line-through;text-decoration-color:#404040;text-decoration-style:dotted;}.cm-s-liquibyte .CodeMirror-gutters{background-color:#262626;border-right:1px solid #505050;padding-right:0.8em;}.cm-s-liquibyte .CodeMirror-gutter-elt div{font-size:1.2em;}.cm-s-liquibyte .CodeMirror-guttermarker{}.cm-s-liquibyte .CodeMirror-guttermarker-subtle{}.cm-s-liquibyte .CodeMirror-linenumber{color:#606060;padding-left:0;}.cm-s-liquibyte .CodeMirror-cursor{border-left:1px solid #eee !important;}.cm-s-liquibyte span.cm-comment{color:#008000;}.cm-s-liquibyte span.cm-def{color:#ffaf40;font-weight:bold;}.cm-s-liquibyte span.cm-keyword{color:#c080ff;font-weight:bold;}.cm-s-liquibyte span.cm-builtin{color:#ffaf40;font-weight:bold;}.cm-s-liquibyte span.cm-variable{color:#5967ff;font-weight:bold;}.cm-s-liquibyte span.cm-string{color:#ff8000;}.cm-s-liquibyte span.cm-number{color:#0f0;font-weight:bold;}.cm-s-liquibyte span.cm-atom{color:#bf3030;font-weight:bold;}.cm-s-liquibyte span.cm-variable-2{color:#007f7f;font-weight:bold;}.cm-s-liquibyte span.cm-variable-3{color:#c080ff;font-weight:bold;}.cm-s-liquibyte span.cm-property{color:#999;font-weight:bold;}.cm-s-liquibyte span.cm-operator{color:#fff;}.cm-s-liquibyte span.cm-meta{color:#0f0;}.cm-s-liquibyte span.cm-qualifier{color:#fff700;font-weight:bold;}.cm-s-liquibyte span.cm-bracket{color:#cc7;}.cm-s-liquibyte span.cm-tag{color:#ff0;font-weight:bold;}.cm-s-liquibyte span.cm-attribute{color:#c080ff;font-weight:bold;}.cm-s-liquibyte span.cm-error{color:#f00;}.cm-s-liquibyte .CodeMirror-selected{background-color:rgba(255, 0, 0, 0.25) !important;}.cm-s-liquibyte span.cm-compilation{background-color:rgba(255, 255, 255, 0.12);}.cm-s-liquibyte .CodeMirror-activeline-background{background-color:rgba(0, 255, 0, 0.15) !important;}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0;font-weight:bold;}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f00;font-weight:bold;}.CodeMirror-matchingtag{background-color:rgba(150, 255, 0, .3);}div.CodeMirror-simplescroll-horizontal div:hover, div.CodeMirror-simplescroll-vertical div:hover{background-color:rgba(80, 80, 80, .7);}div.CodeMirror-simplescroll-horizontal div, div.CodeMirror-simplescroll-vertical div{background-color:rgba(80, 80, 80, .3);border:1px solid #404040;border-radius:5px;}div.CodeMirror-simplescroll-vertical div{border-top:1px solid #404040;border-bottom:1px solid #404040;}div.CodeMirror-simplescroll-horizontal div{border-left:1px solid #404040;border-right:1px solid #404040;}div.CodeMirror-simplescroll-vertical{background-color:#262626;}div.CodeMirror-simplescroll-horizontal{background-color:#262626;border-top:1px solid #404040;}div.CodeMirror-overlayscroll-horizontal div, div.CodeMirror-overlayscroll-vertical div{background-color:#404040;border-radius:5px;}div.CodeMirror-overlayscroll-vertical div{border:1px solid #404040;}div.CodeMirror-overlayscroll-horizontal div{border:1px solid #404040;}</style></template></dom-module><dom-module id="mbo" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-mbo.CodeMirror{background:#2c2c2c;color:#ffffec;}.cm-s-mbo div.CodeMirror-selected{background:#716C62 !important;}.cm-s-mbo.CodeMirror ::selection{background:rgba(113, 108, 98, .99);}.cm-s-mbo.CodeMirror ::-moz-selection{background:rgba(113, 108, 98, .99);}.cm-s-mbo .CodeMirror-gutters{background:#4e4e4e;border-right:0px;}.cm-s-mbo .CodeMirror-guttermarker{color:white;}.cm-s-mbo .CodeMirror-guttermarker-subtle{color:grey;}.cm-s-mbo .CodeMirror-linenumber{color:#dadada;}.cm-s-mbo .CodeMirror-cursor{border-left:1px solid #ffffec !important;}.cm-s-mbo span.cm-comment{color:#95958a;}.cm-s-mbo span.cm-atom{color:#00a8c6;}.cm-s-mbo span.cm-number{color:#00a8c6;}.cm-s-mbo span.cm-property, .cm-s-mbo span.cm-attribute{color:#9ddfe9;}.cm-s-mbo span.cm-keyword{color:#ffb928;}.cm-s-mbo span.cm-string{color:#ffcf6c;}.cm-s-mbo span.cm-string.cm-property{color:#ffffec;}.cm-s-mbo span.cm-variable{color:#ffffec;}.cm-s-mbo span.cm-variable-2{color:#00a8c6;}.cm-s-mbo span.cm-def{color:#ffffec;}.cm-s-mbo span.cm-bracket{color:#fffffc;font-weight:bold;}.cm-s-mbo span.cm-tag{color:#9ddfe9;}.cm-s-mbo span.cm-link{color:#f54b07;}.cm-s-mbo span.cm-error{border-bottom:#636363;color:#ffffec;}.cm-s-mbo span.cm-qualifier{color:#ffffec;}.cm-s-mbo .CodeMirror-activeline-background{background:#494b41 !important;}.cm-s-mbo .CodeMirror-matchingbracket{color:#222 !important;}.cm-s-mbo .CodeMirror-matchingtag{background:rgba(255, 255, 255, .37);}</style></template></dom-module><dom-module id="mdn-like" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-mdn-like.CodeMirror{color:#999;background-color:#fff;}.cm-s-mdn-like .CodeMirror-selected{background:#cfc !important;}.cm-s-mdn-like.CodeMirror ::selection{background:#cfc;}.cm-s-mdn-like.CodeMirror ::-moz-selection{background:#cfc;}.cm-s-mdn-like .CodeMirror-gutters{background:#f8f8f8;border-left:6px solid rgba(0,83,159,0.65);color:#333;}.cm-s-mdn-like .CodeMirror-linenumber{color:#aaa;padding-left:8px;}div.cm-s-mdn-like .CodeMirror-cursor{border-left:2px solid #222;}.cm-s-mdn-like .cm-keyword{color:#6262FF;}.cm-s-mdn-like .cm-atom{color:#F90;}.cm-s-mdn-like .cm-number{color:#ca7841;}.cm-s-mdn-like .cm-def{color:#8DA6CE;}.cm-s-mdn-like span.cm-variable-2, .cm-s-mdn-like span.cm-tag{color:#690;}.cm-s-mdn-like span.cm-variable-3, .cm-s-mdn-like span.cm-def{color:#07a;}.cm-s-mdn-like .cm-variable{color:#07a;}.cm-s-mdn-like .cm-property{color:#905;}.cm-s-mdn-like .cm-qualifier{color:#690;}.cm-s-mdn-like .cm-operator{color:#cda869;}.cm-s-mdn-like .cm-comment{color:#777;font-weight:normal;}.cm-s-mdn-like .cm-string{color:#07a;font-style:italic;}.cm-s-mdn-like .cm-string-2{color:#bd6b18;}.cm-s-mdn-like .cm-meta{color:#000;}.cm-s-mdn-like .cm-builtin{color:#9B7536;}.cm-s-mdn-like .cm-tag{color:#997643;}.cm-s-mdn-like .cm-attribute{color:#d6bb6d;}.cm-s-mdn-like .cm-header{color:#FF6400;}.cm-s-mdn-like .cm-hr{color:#AEAEAE;}.cm-s-mdn-like .cm-link{color:#ad9361;font-style:italic;text-decoration:none;}.cm-s-mdn-like .cm-error{border-bottom:1px solid red;}div.cm-s-mdn-like .CodeMirror-activeline-background{background:#efefff;}div.cm-s-mdn-like span.CodeMirror-matchingbracket{outline:1px solid grey;color:inherit;}.cm-s-mdn-like.CodeMirror{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFcAAAAyCAYAAAAp8UeFAAAHvklEQVR42s2b63bcNgyEQZCSHCdt2vd/0tWF7I+Q6XgMXiTtuvU5Pl57ZQKkKHzEAOtF5KeIJBGJ8uvL599FRFREZhFx8DeXv8trn68RuGaC8TRfo3SNp9dlDDHedyLyTUTeRWStXKPZrjtpZxaRw5hPqozRs1N8/enzIiQRWcCgy4MUA0f+XWliDhyL8Lfyvx7ei/Ae3iQFHyw7U/59pQVIMEEPEz0G7XiwdRjzSfC3UTtz9vchIntxvry5iMgfIhJoEflOz2CQr3F5h/HfeFe+GTdLaKcu9L8LTeQb/R/7GgbsfKedyNdoHsN31uRPWrfZ5wsj/NzzRQHuToIdU3ahwnsKPxXCjJITuOsi7XLc7SG/v5GdALs7wf8JjTFiB5+QvTEfRyGOfX3Lrx8wxyQi3sNq46O7QahQiCsRFgqddjBouVEHOKDgXAQHD9gJCr5sMKkEdjwsarG/ww3BMHBU7OBjXnzdyY7SfCxf5/z6ATccrwlKuwC/jhznnPF4CgVzhhVf4xp2EixcBActO75iZ8/fM9zAs2OMzKdslgXWJ9XG8PQoOAMA5fGcsvORgv0doBXyHrCwfLJAOwo71QLNkb8n2Pl6EWiR7OCibtkPaz4Kc/0NNAze2gju3zOwekALDaCFPI5vjPFmgGY5AZqyGEvH1x7QfIb8YtxMnA/b+QQ0aQDAwc6JMFg8CbQZ4qoYEEHbRwNojuK3EHwd7VALSgq+MNDKzfT58T8qdpADrgW0GmgcAS1lhzztJmkAzcPNOQbsWEALBDSlMKUG0Eq4CLAQWvEVQ9WU57gZJwZtgPO3r9oBTQ9WO8TjqXINx8R0EYpiZEUWOF3FxkbJkgU9B2f41YBrIj5ZfsQa0M5kTgiAAqM3ShXLgu8XMqcrQBvJ0CL5pnTsfMB13oB8athpAq2XOQmcGmoACCLydx7nToa23ATaSIY2ichfOdPTGxlasXMLaL0MLZAOwAKIM+y8CmicobGdCcbbK9DzN+yYGVoNNI5iUKTMyYOjPse4A8SM1MmcXgU0toOq1yO/v8FOxlASyc7TgeYaAMBJHcY1CcCwGI/TK4AmDbDyKYBBtFUkRwto8gygiQEaByFgJ00BH2M8JWwQS1nafDXQCidWyOI8AcjDCSjCLk8ngObuAm3JAHAdubAmOaK06V8MNEsKPJOhobSprwQa6gD7DclRQdqcwL4zxqgBrQcabUiBLclRDKAlWp+etPkBaNMA0AKlrHwTdEByZAA4GM+SNluSY6wAzcMNewxmgig5Ks0nkrSpBvSaQHMdKTBAnLojOdYyGpQ254602ZILPdTD1hdlggdIm74jbTp8vDwF5ZYUeLWGJpWsh6XNyXgcYwVoJQTEhhTYkxzZjiU5npU2TaB979TQehlaAVq4kaGpiPwwwLkYUuBbQwocyQTv1tA0+1UFWoJF3iv1oq+qoSk8EQdJmwHkziIF7oOZk14EGitibAdjLYYK78H5vZOhtWpoI0ATGHs0Q8OMb4Ey+2bU2UYztCtA0wFAs7TplGLRVQCcqaFdGSPCeTI1QNIC52iWNzof6Uib7xjEp07mNNoUYmVosVItHrHzRlLgBn9LFyRHaQCtVUMbtTNhoXWiTOO9k/V8BdAc1Oq0ArSQs6/5SU0hckNy9NnXqQY0PGYo5dWJ7nINaN6o958FWin27aBaWRka1r5myvLOAm0j30eBJqCxHLReVclxhxOEN2JfDWjxBtAC7MIH1fVaGdoOp4qJYDgKtKPSFNID2gSnGldrCqkFZ+5UeQXQBIRrSwocbdZYQT/2LwRahBPBXoHrB8nxaGROST62DKUbQOMMzZIC9abkuELfQzQALWTnDNAm8KHWFOJgJ5+SHIvTPcmx1xQyZRhNL5Qci689aXMEaN/uNIWkEwDAvFpOZmgsBaaGnbs1NPa1Jm32gBZAIh1pCtG7TSH4aE0y1uVY4uqoFPisGlpP2rSA5qTecWn5agK6BzSpgAyD+wFaqhnYoSZ1Vwr8CmlTQbrcO3ZaX0NAEyMbYaAlyquFoLKK3SPby9CeVUPThrSJmkCAE0CrKUQadi4DrdSlWhmah0YL9z9vClH59YGbHx1J8VZTyAjQepJjmXwAKTDQI3omc3p1U4gDUf6RfcdYfrUp5ClAi2J3Ba6UOXGo+K+bQrjjssitG2SJzshaLwMtXgRagUNpYYoVkMSBLM+9GGiJZMvduG6DRZ4qc04DMPtQQxOjEtACmhO7K1AbNbQDEggZyJwscFpAGwENhoBeUwh3bWolhe8BTYVKxQEWrSUn/uhcM5KhvUu/+eQu0Lzhi+VrK0PrZZNDQKs9cpYUuFYgMVpD4/NxenJTiMCNqdUEUf1qZWjppLT5qSkkUZbCwkbZMSuVnu80hfSkzRbQeqCZSAh6huR4VtoM2gHAlLf72smuWgE+VV7XpE25Ab2WFDgyhnSuKbs4GuGzCjR+tIoUuMFg3kgcWKLTwRqanJQ2W00hAsenfaApRC42hbCvK1SlE0HtE9BGgneJO+ELamitD1YjjOYnNYVcraGhtKkW0EqVVeDx733I2NH581k1NNxNLG0i0IJ8/NjVaOZ0tYZ2Vtr0Xv7tPV3hkWp9EFkgS/J0vosngTaSoaG06WHi+xObQkaAdlbanP8B2+2l0f90LmUAAAAASUVORK5CYII=");}</style></template></dom-module><dom-module id="midnight" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-midnight span.CodeMirror-matchhighlight{background:#494949;}.cm-s-midnight.CodeMirror-focused span.CodeMirror-matchhighlight{background:#314D67 !important;}.cm-s-midnight .CodeMirror-activeline-background{background:#253540 !important;}.cm-s-midnight.CodeMirror{background:#0F192A;color:#D1EDFF;}.cm-s-midnight.CodeMirror{border-top:1px solid black;border-bottom:1px solid black;}.cm-s-midnight div.CodeMirror-selected{background:#314D67 !important;}.cm-s-midnight.CodeMirror ::selection{background:rgba(49, 77, 103, .99);}.cm-s-midnight.CodeMirror ::-moz-selection{background:rgba(49, 77, 103, .99);}.cm-s-midnight .CodeMirror-gutters{background:#0F192A;border-right:1px solid;}.cm-s-midnight .CodeMirror-guttermarker{color:white;}.cm-s-midnight .CodeMirror-guttermarker-subtle{color:#d0d0d0;}.cm-s-midnight .CodeMirror-linenumber{color:#D0D0D0;}.cm-s-midnight .CodeMirror-cursor{border-left:1px solid #F8F8F0 !important;}.cm-s-midnight span.cm-comment{color:#428BDD;}.cm-s-midnight span.cm-atom{color:#AE81FF;}.cm-s-midnight span.cm-number{color:#D1EDFF;}.cm-s-midnight span.cm-property, .cm-s-midnight span.cm-attribute{color:#A6E22E;}.cm-s-midnight span.cm-keyword{color:#E83737;}.cm-s-midnight span.cm-string{color:#1DC116;}.cm-s-midnight span.cm-variable{color:#FFAA3E;}.cm-s-midnight span.cm-variable-2{color:#FFAA3E;}.cm-s-midnight span.cm-def{color:#4DD;}.cm-s-midnight span.cm-bracket{color:#D1EDFF;}.cm-s-midnight span.cm-tag{color:#449;}.cm-s-midnight span.cm-link{color:#AE81FF;}.cm-s-midnight span.cm-error{background:#F92672;color:#F8F8F0;}.cm-s-midnight .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="monokai" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-monokai.CodeMirror{background:#272822;color:#f8f8f2;}.cm-s-monokai div.CodeMirror-selected{background:#49483E !important;}.cm-s-monokai.CodeMirror ::selection{background:rgba(73, 72, 62, .99);}.cm-s-monokai.CodeMirror ::-moz-selection{background:rgba(73, 72, 62, .99);}.cm-s-monokai .CodeMirror-gutters{background:#272822;border-right:0px;}.cm-s-monokai .CodeMirror-guttermarker{color:white;}.cm-s-monokai .CodeMirror-guttermarker-subtle{color:#d0d0d0;}.cm-s-monokai .CodeMirror-linenumber{color:#d0d0d0;}.cm-s-monokai .CodeMirror-cursor{border-left:1px solid #f8f8f0 !important;}.cm-s-monokai span.cm-comment{color:#75715e;}.cm-s-monokai span.cm-atom{color:#ae81ff;}.cm-s-monokai span.cm-number{color:#ae81ff;}.cm-s-monokai span.cm-property, .cm-s-monokai span.cm-attribute{color:#a6e22e;}.cm-s-monokai span.cm-keyword{color:#f92672;}.cm-s-monokai span.cm-string{color:#e6db74;}.cm-s-monokai span.cm-variable{color:#f8f8f2;}.cm-s-monokai span.cm-variable-2{color:#9effff;}.cm-s-monokai span.cm-variable-3{color:#66d9ef;}.cm-s-monokai span.cm-def{color:#fd971f;}.cm-s-monokai span.cm-bracket{color:#f8f8f2;}.cm-s-monokai span.cm-tag{color:#f92672;}.cm-s-monokai span.cm-link{color:#ae81ff;}.cm-s-monokai span.cm-error{background:#f92672;color:#f8f8f0;}.cm-s-monokai .CodeMirror-activeline-background{background:#373831 !important;}.cm-s-monokai .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="neat" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-neat span.cm-comment{color:#a86;}.cm-s-neat span.cm-keyword{line-height:1em;font-weight:bold;color:blue;}.cm-s-neat span.cm-string{color:#a22;}.cm-s-neat span.cm-builtin{line-height:1em;font-weight:bold;color:#077;}.cm-s-neat span.cm-special{line-height:1em;font-weight:bold;color:#0aa;}.cm-s-neat span.cm-variable{color:black;}.cm-s-neat span.cm-number, .cm-s-neat span.cm-atom{color:#3a3;}.cm-s-neat span.cm-meta{color:#555;}.cm-s-neat span.cm-link{color:#3a3;}.cm-s-neat .CodeMirror-activeline-background{background:#e8f2ff !important;}.cm-s-neat .CodeMirror-matchingbracket{outline:1px solid grey;color:black !important;}</style></template></dom-module><dom-module id="neo" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-neo.CodeMirror{background-color:#ffffff;color:#2e383c;line-height:1.4375;}.cm-s-neo .cm-comment{color:#75787b;}.cm-s-neo .cm-keyword, .cm-s-neo .cm-property{color:#1d75b3;}.cm-s-neo .cm-atom,.cm-s-neo .cm-number{color:#75438a;}.cm-s-neo .cm-node,.cm-s-neo .cm-tag{color:#9c3328;}.cm-s-neo .cm-string{color:#b35e14;}.cm-s-neo .cm-variable,.cm-s-neo .cm-qualifier{color:#047d65;}.cm-s-neo pre{padding:0;}.cm-s-neo .CodeMirror-gutters{border:none;border-right:10px solid transparent;background-color:transparent;}.cm-s-neo .CodeMirror-linenumber{padding:0;color:#e0e2e5;}.cm-s-neo .CodeMirror-guttermarker{color:#1d75b3;}.cm-s-neo .CodeMirror-guttermarker-subtle{color:#e0e2e5;}.cm-s-neo div.CodeMirror-cursor{width:auto;border:0;background:rgba(155,157,162,0.37);z-index:1;}</style></template></dom-module><dom-module id="night" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-night.CodeMirror{background:#0a001f;color:#f8f8f8;}.cm-s-night div.CodeMirror-selected{background:#447 !important;}.cm-s-night.CodeMirror ::selection{background:rgba(68, 68, 119, .99);}.cm-s-night.CodeMirror ::-moz-selection{background:rgba(68, 68, 119, .99);}.cm-s-night .CodeMirror-gutters{background:#0a001f;border-right:1px solid #aaa;}.cm-s-night .CodeMirror-guttermarker{color:white;}.cm-s-night .CodeMirror-guttermarker-subtle{color:#bbb;}.cm-s-night .CodeMirror-linenumber{color:#f8f8f8;}.cm-s-night .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-night span.cm-comment{color:#6900a1;}.cm-s-night span.cm-atom{color:#845dc4;}.cm-s-night span.cm-number, .cm-s-night span.cm-attribute{color:#ffd500;}.cm-s-night span.cm-keyword{color:#599eff;}.cm-s-night span.cm-string{color:#37f14a;}.cm-s-night span.cm-meta{color:#7678e2;}.cm-s-night span.cm-variable-2, .cm-s-night span.cm-tag{color:#99b2ff;}.cm-s-night span.cm-variable-3, .cm-s-night span.cm-def{color:white;}.cm-s-night span.cm-bracket{color:#8da6ce;}.cm-s-night span.cm-comment{color:#6900a1;}.cm-s-night span.cm-builtin, .cm-s-night span.cm-special{color:#ff9e59;}.cm-s-night span.cm-link{color:#845dc4;}.cm-s-night span.cm-error{color:#9d1e15;}.cm-s-night .CodeMirror-activeline-background{background:#1C005A !important;}.cm-s-night .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="paraiso-dark" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-paraiso-dark.CodeMirror{background:#2f1e2e;color:#b9b6b0;}.cm-s-paraiso-dark div.CodeMirror-selected{background:#41323f !important;}.cm-s-paraiso-dark.CodeMirror ::selection{background:rgba(65, 50, 63, .99);}.cm-s-paraiso-dark.CodeMirror ::-moz-selection{background:rgba(65, 50, 63, .99);}.cm-s-paraiso-dark .CodeMirror-gutters{background:#2f1e2e;border-right:0px;}.cm-s-paraiso-dark .CodeMirror-guttermarker{color:#ef6155;}.cm-s-paraiso-dark .CodeMirror-guttermarker-subtle{color:#776e71;}.cm-s-paraiso-dark .CodeMirror-linenumber{color:#776e71;}.cm-s-paraiso-dark .CodeMirror-cursor{border-left:1px solid #8d8687 !important;}.cm-s-paraiso-dark span.cm-comment{color:#e96ba8;}.cm-s-paraiso-dark span.cm-atom{color:#815ba4;}.cm-s-paraiso-dark span.cm-number{color:#815ba4;}.cm-s-paraiso-dark span.cm-property, .cm-s-paraiso-dark span.cm-attribute{color:#48b685;}.cm-s-paraiso-dark span.cm-keyword{color:#ef6155;}.cm-s-paraiso-dark span.cm-string{color:#fec418;}.cm-s-paraiso-dark span.cm-variable{color:#48b685;}.cm-s-paraiso-dark span.cm-variable-2{color:#06b6ef;}.cm-s-paraiso-dark span.cm-def{color:#f99b15;}.cm-s-paraiso-dark span.cm-bracket{color:#b9b6b0;}.cm-s-paraiso-dark span.cm-tag{color:#ef6155;}.cm-s-paraiso-dark span.cm-link{color:#815ba4;}.cm-s-paraiso-dark span.cm-error{background:#ef6155;color:#8d8687;}.cm-s-paraiso-dark .CodeMirror-activeline-background{background:#4D344A !important;}.cm-s-paraiso-dark .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="paraiso-light" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-paraiso-light.CodeMirror{background:#e7e9db;color:#41323f;}.cm-s-paraiso-light div.CodeMirror-selected{background:#b9b6b0 !important;}.cm-s-paraiso-light.CodeMirror ::selection{background:#b9b6b0;}.cm-s-paraiso-light.CodeMirror ::-moz-selection{background:#b9b6b0;}.cm-s-paraiso-light .CodeMirror-gutters{background:#e7e9db;border-right:0px;}.cm-s-paraiso-light .CodeMirror-guttermarker{color:black;}.cm-s-paraiso-light .CodeMirror-guttermarker-subtle{color:#8d8687;}.cm-s-paraiso-light .CodeMirror-linenumber{color:#8d8687;}.cm-s-paraiso-light .CodeMirror-cursor{border-left:1px solid #776e71 !important;}.cm-s-paraiso-light span.cm-comment{color:#e96ba8;}.cm-s-paraiso-light span.cm-atom{color:#815ba4;}.cm-s-paraiso-light span.cm-number{color:#815ba4;}.cm-s-paraiso-light span.cm-property, .cm-s-paraiso-light span.cm-attribute{color:#48b685;}.cm-s-paraiso-light span.cm-keyword{color:#ef6155;}.cm-s-paraiso-light span.cm-string{color:#fec418;}.cm-s-paraiso-light span.cm-variable{color:#48b685;}.cm-s-paraiso-light span.cm-variable-2{color:#06b6ef;}.cm-s-paraiso-light span.cm-def{color:#f99b15;}.cm-s-paraiso-light span.cm-bracket{color:#41323f;}.cm-s-paraiso-light span.cm-tag{color:#ef6155;}.cm-s-paraiso-light span.cm-link{color:#815ba4;}.cm-s-paraiso-light span.cm-error{background:#ef6155;color:#776e71;}.cm-s-paraiso-light .CodeMirror-activeline-background{background:#CFD1C4 !important;}.cm-s-paraiso-light .CodeMirror-matchingbracket{text-decoration:underline;color:white !important;}</style></template></dom-module><dom-module id="pastel-on-dark" assetpath="bower_components/code-mirror/styles/"><template><style>/**
  * Pastel On Dark theme ported from ACE editor
  * @license MIT
@@ -1144,7 +1264,7 @@ len;i++){var name=input[i].name;var value=input[i].value;if(name.toLowerCase()==
 .cm-s-ttcn .cm-timerOps,
 .cm-s-ttcn .cm-verdictOps{color:#0000FF;}.cm-s-ttcn .cm-preprocessor,
 .cm-s-ttcn .cm-templateMatch,
-.cm-s-ttcn .cm-ttcn3Macros{color:#27408B;}.cm-s-ttcn .cm-types{color:#A52A2A;font-weight:bold;}.cm-s-ttcn .cm-visibilityModifiers{font-weight:bold;}</style></template></dom-module><dom-module id="twilight" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-twilight.CodeMirror{background:#141414;color:#f7f7f7;}.cm-s-twilight .CodeMirror-selected{background:#323232 !important;}.cm-s-twilight.CodeMirror ::selection{background:rgba(50, 50, 50, 0.99);}.cm-s-twilight.CodeMirror ::-moz-selection{background:rgba(50, 50, 50, 0.99);}.cm-s-twilight .CodeMirror-gutters{background:#222;border-right:1px solid #aaa;}.cm-s-twilight .CodeMirror-guttermarker{color:white;}.cm-s-twilight .CodeMirror-guttermarker-subtle{color:#aaa;}.cm-s-twilight .CodeMirror-linenumber{color:#aaa;}.cm-s-twilight .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-twilight .cm-keyword{color:#f9ee98;}.cm-s-twilight .cm-atom{color:#FC0;}.cm-s-twilight .cm-number{color:#ca7841;}.cm-s-twilight .cm-def{color:#8DA6CE;}.cm-s-twilight span.cm-variable-2, .cm-s-twilight span.cm-tag{color:#607392;}.cm-s-twilight span.cm-variable-3, .cm-s-twilight span.cm-def{color:#607392;}.cm-s-twilight .cm-operator{color:#cda869;}.cm-s-twilight .cm-comment{color:#777;font-style:italic;font-weight:normal;}.cm-s-twilight .cm-string{color:#8f9d6a;font-style:italic;}.cm-s-twilight .cm-string-2{color:#bd6b18;}.cm-s-twilight .cm-meta{background-color:#141414;color:#f7f7f7;}.cm-s-twilight .cm-builtin{color:#cda869;}.cm-s-twilight .cm-tag{color:#997643;}.cm-s-twilight .cm-attribute{color:#d6bb6d;}.cm-s-twilight .cm-header{color:#FF6400;}.cm-s-twilight .cm-hr{color:#AEAEAE;}.cm-s-twilight .cm-link{color:#ad9361;font-style:italic;text-decoration:none;}.cm-s-twilight .cm-error{border-bottom:1px solid red;}.cm-s-twilight .CodeMirror-activeline-background{background:#27282E !important;}.cm-s-twilight .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="vibrant-ink" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-vibrant-ink.CodeMirror{background:black;color:white;}.cm-s-vibrant-ink .CodeMirror-selected{background:#35493c !important;}.cm-s-vibrant-ink.CodeMirror ::selection{background:rgba(53, 73, 60, 0.99);}.cm-s-vibrant-ink.CodeMirror ::-moz-selection{background:rgba(53, 73, 60, 0.99);}.cm-s-vibrant-ink .CodeMirror-gutters{background:#002240;border-right:1px solid #aaa;}.cm-s-vibrant-ink .CodeMirror-guttermarker{color:white;}.cm-s-vibrant-ink .CodeMirror-guttermarker-subtle{color:#d0d0d0;}.cm-s-vibrant-ink .CodeMirror-linenumber{color:#d0d0d0;}.cm-s-vibrant-ink .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-vibrant-ink .cm-keyword{color:#CC7832;}.cm-s-vibrant-ink .cm-atom{color:#FC0;}.cm-s-vibrant-ink .cm-number{color:#FFEE98;}.cm-s-vibrant-ink .cm-def{color:#8DA6CE;}.cm-s-vibrant-ink span.cm-variable-2, .cm-s-vibrant span.cm-tag{color:#FFC66D;}.cm-s-vibrant-ink span.cm-variable-3, .cm-s-vibrant span.cm-def{color:#FFC66D;}.cm-s-vibrant-ink .cm-operator{color:#888;}.cm-s-vibrant-ink .cm-comment{color:gray;font-weight:bold;}.cm-s-vibrant-ink .cm-string{color:#A5C25C;}.cm-s-vibrant-ink .cm-string-2{color:red;}.cm-s-vibrant-ink .cm-meta{color:#D8FA3C;}.cm-s-vibrant-ink .cm-builtin{color:#8DA6CE;}.cm-s-vibrant-ink .cm-tag{color:#8DA6CE;}.cm-s-vibrant-ink .cm-attribute{color:#8DA6CE;}.cm-s-vibrant-ink .cm-header{color:#FF6400;}.cm-s-vibrant-ink .cm-hr{color:#AEAEAE;}.cm-s-vibrant-ink .cm-link{color:blue;}.cm-s-vibrant-ink .cm-error{border-bottom:1px solid red;}.cm-s-vibrant-ink .CodeMirror-activeline-background{background:#27282E !important;}.cm-s-vibrant-ink .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="xq-dark" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-xq-dark.CodeMirror{background:#0a001f;color:#f8f8f8;}.cm-s-xq-dark .CodeMirror-selected{background:#27007A !important;}.cm-s-xq-dark.CodeMirror ::selection{background:rgba(39, 0, 122, 0.99);}.cm-s-xq-dark.CodeMirror ::-moz-selection{background:rgba(39, 0, 122, 0.99);}.cm-s-xq-dark .CodeMirror-gutters{background:#0a001f;border-right:1px solid #aaa;}.cm-s-xq-dark .CodeMirror-guttermarker{color:#FFBD40;}.cm-s-xq-dark .CodeMirror-guttermarker-subtle{color:#f8f8f8;}.cm-s-xq-dark .CodeMirror-linenumber{color:#f8f8f8;}.cm-s-xq-dark .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-xq-dark span.cm-keyword{color:#FFBD40;}.cm-s-xq-dark span.cm-atom{color:#6C8CD5;}.cm-s-xq-dark span.cm-number{color:#164;}.cm-s-xq-dark span.cm-def{color:#FFF;text-decoration:underline;}.cm-s-xq-dark span.cm-variable{color:#FFF;}.cm-s-xq-dark span.cm-variable-2{color:#EEE;}.cm-s-xq-dark span.cm-variable-3{color:#DDD;}.cm-s-xq-dark span.cm-property{}.cm-s-xq-dark span.cm-operator{}.cm-s-xq-dark span.cm-comment{color:gray;}.cm-s-xq-dark span.cm-string{color:#9FEE00;}.cm-s-xq-dark span.cm-meta{color:yellow;}.cm-s-xq-dark span.cm-qualifier{color:#FFF700;}.cm-s-xq-dark span.cm-builtin{color:#30a;}.cm-s-xq-dark span.cm-bracket{color:#cc7;}.cm-s-xq-dark span.cm-tag{color:#FFBD40;}.cm-s-xq-dark span.cm-attribute{color:#FFF700;}.cm-s-xq-dark span.cm-error{color:#f00;}.cm-s-xq-dark .CodeMirror-activeline-background{background:#27282E !important;}.cm-s-xq-dark .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="zenburn" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-zenburn .CodeMirror-gutters{background:#3f3f3f !important;}.cm-s-zenburn .CodeMirror-foldgutter-open, .CodeMirror-foldgutter-folded{color:#999;}.cm-s-zenburn .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-zenburn{background-color:#3f3f3f;color:#dcdccc;}.cm-s-zenburn span.cm-builtin{color:#dcdccc;font-weight:bold;}.cm-s-zenburn span.cm-comment{color:#7f9f7f;}.cm-s-zenburn span.cm-keyword{color:#f0dfaf;font-weight:bold;}.cm-s-zenburn span.cm-atom{color:#bfebbf;}.cm-s-zenburn span.cm-def{color:#dcdccc;}.cm-s-zenburn span.cm-variable{color:#dfaf8f;}.cm-s-zenburn span.cm-variable-2{color:#dcdccc;}.cm-s-zenburn span.cm-string{color:#cc9393;}.cm-s-zenburn span.cm-string-2{color:#cc9393;}.cm-s-zenburn span.cm-number{color:#dcdccc;}.cm-s-zenburn span.cm-tag{color:#93e0e3;}.cm-s-zenburn span.cm-property{color:#dfaf8f;}.cm-s-zenburn span.cm-attribute{color:#dfaf8f;}.cm-s-zenburn span.cm-qualifier{color:#7cb8bb;}.cm-s-zenburn span.cm-meta{color:#f0dfaf;}.cm-s-zenburn span.cm-header{color:#f0efd0;}.cm-s-zenburn span.cm-operator{color:#f0efd0;}.cm-s-zenburn span.CodeMirror-matchingbracket{box-sizing:border-box;background:transparent;border-bottom:1px solid;}.cm-s-zenburn span.CodeMirror-nonmatchingbracket{border-bottom:1px solid;background:none;}.cm-s-zenburn .CodeMirror-activeline{background:#000000;}.cm-s-zenburn .CodeMirror-activeline-background{background:#000000;}.cm-s-zenburn .CodeMirror-selected{background:#545454;}.cm-s-zenburn .CodeMirror-focused .CodeMirror-selected{background:#4f4f4f;}</style></template></dom-module><script>(function(mod){if(typeof exports=="object"&&typeof module=="object")module.exports=mod();else if(typeof define=="function"&&define.amd)return define([],mod);else this.CodeMirror=mod()})(function(){var gecko=/gecko\/\d/i.test(navigator.userAgent);var ie_upto10=/MSIE \d/.test(navigator.userAgent);var ie_11up=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);var ie=ie_upto10||ie_11up;var ie_version=ie&&(ie_upto10?document.documentMode||6:ie_11up[1]);var webkit=/WebKit\//.test(navigator.userAgent);
+.cm-s-ttcn .cm-ttcn3Macros{color:#27408B;}.cm-s-ttcn .cm-types{color:#A52A2A;font-weight:bold;}.cm-s-ttcn .cm-visibilityModifiers{font-weight:bold;}</style></template></dom-module><dom-module id="twilight" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-twilight.CodeMirror{background:#141414;color:#f7f7f7;}.cm-s-twilight .CodeMirror-selected{background:#323232 !important;}.cm-s-twilight.CodeMirror ::selection{background:rgba(50, 50, 50, 0.99);}.cm-s-twilight.CodeMirror ::-moz-selection{background:rgba(50, 50, 50, 0.99);}.cm-s-twilight .CodeMirror-gutters{background:#222;border-right:1px solid #aaa;}.cm-s-twilight .CodeMirror-guttermarker{color:white;}.cm-s-twilight .CodeMirror-guttermarker-subtle{color:#aaa;}.cm-s-twilight .CodeMirror-linenumber{color:#aaa;}.cm-s-twilight .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-twilight .cm-keyword{color:#f9ee98;}.cm-s-twilight .cm-atom{color:#FC0;}.cm-s-twilight .cm-number{color:#ca7841;}.cm-s-twilight .cm-def{color:#8DA6CE;}.cm-s-twilight span.cm-variable-2, .cm-s-twilight span.cm-tag{color:#607392;}.cm-s-twilight span.cm-variable-3, .cm-s-twilight span.cm-def{color:#607392;}.cm-s-twilight .cm-operator{color:#cda869;}.cm-s-twilight .cm-comment{color:#777;font-style:italic;font-weight:normal;}.cm-s-twilight .cm-string{color:#8f9d6a;font-style:italic;}.cm-s-twilight .cm-string-2{color:#bd6b18;}.cm-s-twilight .cm-meta{background-color:#141414;color:#f7f7f7;}.cm-s-twilight .cm-builtin{color:#cda869;}.cm-s-twilight .cm-tag{color:#997643;}.cm-s-twilight .cm-attribute{color:#d6bb6d;}.cm-s-twilight .cm-header{color:#FF6400;}.cm-s-twilight .cm-hr{color:#AEAEAE;}.cm-s-twilight .cm-link{color:#ad9361;font-style:italic;text-decoration:none;}.cm-s-twilight .cm-error{border-bottom:1px solid red;}.cm-s-twilight .CodeMirror-activeline-background{background:#27282E !important;}.cm-s-twilight .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="vibrant-ink" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-vibrant-ink.CodeMirror{background:black;color:white;}.cm-s-vibrant-ink .CodeMirror-selected{background:#35493c !important;}.cm-s-vibrant-ink.CodeMirror ::selection{background:rgba(53, 73, 60, 0.99);}.cm-s-vibrant-ink.CodeMirror ::-moz-selection{background:rgba(53, 73, 60, 0.99);}.cm-s-vibrant-ink .CodeMirror-gutters{background:#002240;border-right:1px solid #aaa;}.cm-s-vibrant-ink .CodeMirror-guttermarker{color:white;}.cm-s-vibrant-ink .CodeMirror-guttermarker-subtle{color:#d0d0d0;}.cm-s-vibrant-ink .CodeMirror-linenumber{color:#d0d0d0;}.cm-s-vibrant-ink .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-vibrant-ink .cm-keyword{color:#CC7832;}.cm-s-vibrant-ink .cm-atom{color:#FC0;}.cm-s-vibrant-ink .cm-number{color:#FFEE98;}.cm-s-vibrant-ink .cm-def{color:#8DA6CE;}.cm-s-vibrant-ink span.cm-variable-2, .cm-s-vibrant span.cm-tag{color:#FFC66D;}.cm-s-vibrant-ink span.cm-variable-3, .cm-s-vibrant span.cm-def{color:#FFC66D;}.cm-s-vibrant-ink .cm-operator{color:#888;}.cm-s-vibrant-ink .cm-comment{color:gray;font-weight:bold;}.cm-s-vibrant-ink .cm-string{color:#A5C25C;}.cm-s-vibrant-ink .cm-string-2{color:red;}.cm-s-vibrant-ink .cm-meta{color:#D8FA3C;}.cm-s-vibrant-ink .cm-builtin{color:#8DA6CE;}.cm-s-vibrant-ink .cm-tag{color:#8DA6CE;}.cm-s-vibrant-ink .cm-attribute{color:#8DA6CE;}.cm-s-vibrant-ink .cm-header{color:#FF6400;}.cm-s-vibrant-ink .cm-hr{color:#AEAEAE;}.cm-s-vibrant-ink .cm-link{color:blue;}.cm-s-vibrant-ink .cm-error{border-bottom:1px solid red;}.cm-s-vibrant-ink .CodeMirror-activeline-background{background:#27282E !important;}.cm-s-vibrant-ink .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="xq-dark" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-xq-dark.CodeMirror{background:#0a001f;color:#f8f8f8;}.cm-s-xq-dark .CodeMirror-selected{background:#27007A !important;}.cm-s-xq-dark.CodeMirror ::selection{background:rgba(39, 0, 122, 0.99);}.cm-s-xq-dark.CodeMirror ::-moz-selection{background:rgba(39, 0, 122, 0.99);}.cm-s-xq-dark .CodeMirror-gutters{background:#0a001f;border-right:1px solid #aaa;}.cm-s-xq-dark .CodeMirror-guttermarker{color:#FFBD40;}.cm-s-xq-dark .CodeMirror-guttermarker-subtle{color:#f8f8f8;}.cm-s-xq-dark .CodeMirror-linenumber{color:#f8f8f8;}.cm-s-xq-dark .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-xq-dark span.cm-keyword{color:#FFBD40;}.cm-s-xq-dark span.cm-atom{color:#6C8CD5;}.cm-s-xq-dark span.cm-number{color:#164;}.cm-s-xq-dark span.cm-def{color:#FFF;text-decoration:underline;}.cm-s-xq-dark span.cm-variable{color:#FFF;}.cm-s-xq-dark span.cm-variable-2{color:#EEE;}.cm-s-xq-dark span.cm-variable-3{color:#DDD;}.cm-s-xq-dark span.cm-property{}.cm-s-xq-dark span.cm-operator{}.cm-s-xq-dark span.cm-comment{color:gray;}.cm-s-xq-dark span.cm-string{color:#9FEE00;}.cm-s-xq-dark span.cm-meta{color:#9e9e9e;}.cm-s-xq-dark span.cm-qualifier{color:#FFF700;}.cm-s-xq-dark span.cm-builtin{color:#30a;}.cm-s-xq-dark span.cm-bracket{color:#cc7;}.cm-s-xq-dark span.cm-tag{color:#FFBD40;}.cm-s-xq-dark span.cm-attribute{color:#FFF700;}.cm-s-xq-dark span.cm-error{color:#f00;}.cm-s-xq-dark .CodeMirror-activeline-background{background:#27282E !important;}.cm-s-xq-dark .CodeMirror-matchingbracket{outline:1px solid grey;color:white !important;}</style></template></dom-module><dom-module id="xq-light" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-xq-light span.cm-keyword{line-height:1em;font-weight:bold;color:var(--code-mirror-keyword-color, #5A5CAD);}.cm-s-xq-light span.cm-atom{color:var(--code-mirror-atom-color, #6C8CD5);}.cm-s-xq-light span.cm-number{color:var(--code-mirror-number-color, #164);}.cm-s-xq-light span.cm-def{text-decoration:underline;}.cm-s-xq-light span.cm-variable{color:var(--code-mirror-variable-color, black);}.cm-s-xq-light span.cm-variable-2{color:var(--code-mirror-variable2-color, black);}.cm-s-xq-light span.cm-variable-3{color:var(--code-mirror-variable3-color, black);}.cm-s-xq-light span.cm-property{color:var(--code-mirror-property-color, inherit);}.cm-s-xq-light span.cm-operator{color:var(--code-mirror-operator-color, inherit);}.cm-s-xq-light span.cm-comment{color:var(--code-mirror-comment-color, #0080FF);font-style:italic;}.cm-s-xq-light span.cm-string{color:var(--code-mirror-string-color, #6C8CD5);}.cm-s-xq-light span.cm-meta{color:var(--code-mirror-meta-color, #9e9e9e);}.cm-s-xq-light span.cm-qualifier{color:var(--code-mirror-qualifier-color, grey);}.cm-s-xq-light span.cm-builtin{color:var(--code-mirror-builtin-color, #7EA656);}.cm-s-xq-light span.cm-bracket{color:var(--code-mirror-bracket-color, #cc7);}.cm-s-xq-light span.cm-tag{color:var(--code-mirror-tag-color, #3F7F7F);}.cm-s-xq-light span.cm-attribute{color:var(--code-mirror-attribute-color, #7F007F);}.cm-s-xq-light span.cm-error{color:var(--code-mirror-error-color, #f00);}.cm-s-xq-light .CodeMirror-activeline-background{background:var(--code-mirror-active-line-background-color, #e8f2ff) !important;}.cm-s-xq-light .CodeMirror-matchingbracket{outline:1px solid grey;color:var(--code-mirror-active-match-bracked-color, black) !important;background:var(--code-mirror-active-match-bracked-background-color, yellow);}</style></template></dom-module><dom-module id="zenburn" assetpath="bower_components/code-mirror/styles/"><template><style>.cm-s-zenburn .CodeMirror-gutters{background:#3f3f3f !important;}.cm-s-zenburn .CodeMirror-foldgutter-open, .CodeMirror-foldgutter-folded{color:#999;}.cm-s-zenburn .CodeMirror-cursor{border-left:1px solid white !important;}.cm-s-zenburn{background-color:#3f3f3f;color:#dcdccc;}.cm-s-zenburn span.cm-builtin{color:#dcdccc;font-weight:bold;}.cm-s-zenburn span.cm-comment{color:#7f9f7f;}.cm-s-zenburn span.cm-keyword{color:#f0dfaf;font-weight:bold;}.cm-s-zenburn span.cm-atom{color:#bfebbf;}.cm-s-zenburn span.cm-def{color:#dcdccc;}.cm-s-zenburn span.cm-variable{color:#dfaf8f;}.cm-s-zenburn span.cm-variable-2{color:#dcdccc;}.cm-s-zenburn span.cm-string{color:#cc9393;}.cm-s-zenburn span.cm-string-2{color:#cc9393;}.cm-s-zenburn span.cm-number{color:#dcdccc;}.cm-s-zenburn span.cm-tag{color:#93e0e3;}.cm-s-zenburn span.cm-property{color:#dfaf8f;}.cm-s-zenburn span.cm-attribute{color:#dfaf8f;}.cm-s-zenburn span.cm-qualifier{color:#7cb8bb;}.cm-s-zenburn span.cm-meta{color:#f0dfaf;}.cm-s-zenburn span.cm-header{color:#f0efd0;}.cm-s-zenburn span.cm-operator{color:#f0efd0;}.cm-s-zenburn span.CodeMirror-matchingbracket{box-sizing:border-box;background:transparent;border-bottom:1px solid;}.cm-s-zenburn span.CodeMirror-nonmatchingbracket{border-bottom:1px solid;background:none;}.cm-s-zenburn .CodeMirror-activeline{background:#000000;}.cm-s-zenburn .CodeMirror-activeline-background{background:#000000;}.cm-s-zenburn .CodeMirror-selected{background:#545454;}.cm-s-zenburn .CodeMirror-focused .CodeMirror-selected{background:#4f4f4f;}</style></template></dom-module><script>(function(mod){if(typeof exports=="object"&&typeof module=="object")module.exports=mod();else if(typeof define=="function"&&define.amd)return define([],mod);else this.CodeMirror=mod()})(function(){var gecko=/gecko\/\d/i.test(navigator.userAgent);var ie_upto10=/MSIE \d/.test(navigator.userAgent);var ie_11up=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);var ie=ie_upto10||ie_11up;var ie_version=ie&&(ie_upto10?document.documentMode||6:ie_11up[1]);var webkit=/WebKit\//.test(navigator.userAgent);
 var qtwebkit=webkit&&/Qt\/\d+\.\d+/.test(navigator.userAgent);var chrome=/Chrome\//.test(navigator.userAgent);var presto=/Opera\//.test(navigator.userAgent);var safari=/Apple Computer/.test(navigator.vendor);var mac_geMountainLion=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent);var phantom=/PhantomJS/.test(navigator.userAgent);var ios=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent);var mobile=ios||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent);
 var mac=ios||/Mac/.test(navigator.platform);var windows=/win/i.test(navigator.platform);var presto_version=presto&&navigator.userAgent.match(/Version\/(\d*\.\d*)/);if(presto_version)presto_version=Number(presto_version[1]);if(presto_version&&presto_version>=15){presto=false;webkit=true}var flipCtrlCmd=mac&&(qtwebkit||presto&&(presto_version==null||presto_version<12.11));var captureRightClick=gecko||ie&&ie_version>=9;var sawReadOnlySpans=false,sawCollapsedSpans=false;function CodeMirror(place,options){if(!(this instanceof
 CodeMirror))return new CodeMirror(place,options);this.options=options=options?copyObj(options):{};copyObj(defaults,options,false);setGuttersForLineNumbers(options);var doc=options.value;if(typeof doc=="string")doc=new Doc(doc,options.mode);this.doc=doc;var input=new CodeMirror.inputStyles[options.inputStyle](this);var display=this.display=new Display(place,doc,input);display.wrapper.CodeMirror=this;updateGutters(this);themeChanged(this);if(options.lineWrapping)this.display.wrapper.className+=" CodeMirror-wrap";
@@ -1661,136 +1781,76 @@ tabSize:{type:Number,observer:"_tabSizeChanged"},lineNumbers:{type:Boolean,obser
 historyEventDelay:{type:Number,observer:"_historyEventDelayChanged"},autofocus:{type:Boolean,observer:"_autofocusChanged"},editor:{type:Object,readOnly:true},_changeHandler:{value:function(){return this._onChangeEvent.bind(this)}},_beforeChangeHandler:{value:function(){return this._onBeforeChangeEvent.bind(this)}},_settingInternal:Boolean,importLocation:{type:String,value:function(){if(importLocation){importLocation=importLocation.replace("code-mirror/","codemirror/");var base=document.querySelector("base");
 if(base&&base.href)if(importLocation[0]==="/")importLocation=importLocation.substr(1)}return importLocation}}},observers:["_importLocationChanegd(importLocation)"],ready:function(){this._importTheme("codemirror");if(!this.value)this.value=this.textContent.trim();try{var editor=CodeMirror(this.$.wrapper,{value:this.value,mode:this.mode,theme:this.theme});this._setEditor(editor);this._pendingOptions.forEach(function(item){this.setOption(item.option,item.value);if(item.post)try{item.post()}catch(e){}},
 this)}catch(e){console.error("Unable to initialize CodeMirror.",e);this.fire("error",e)}},attached:function(){if(!this.editor)return;this.editor.on("change",this._changeHandler);this.editor.on("beforeChange",this._beforeChangeHandler);this.editor.refresh();this.focus()},detached:function(){if(!this.editor)return;this.editor.off("change",this._changeHandler);this.editor.off("beforeChange",this._beforeChangeHandler)},focus:function(){if(!this.editor)return;this.editor.focus()},setOption:function(option,
-value){if(!this.editor){this._pendingOptions.push({option:option,value:value});return}this.editor.setOption(option,value)},_valueChanged:function(){if(!this.editor)return;if(this.editor.getValue()!==this.value&&this.value!==undefined&&this.value!==null)this.editor.setValue(this.value)},_modeChanged:function(){var val=this.mode;var mode;var spec;var info;var m=/.+\.([^.]+)$/.exec(val);if(m){info=CodeMirror.findModeByExtension(m[1]);if(info){mode=info.mode;spec=info.mime}}else if(/\//.test(val)){info=
-CodeMirror.findModeByMIME(val);if(info){mode=info.mode;spec=val}}else mode=spec=val;if(!this.editor){this._pendingOptions.push({option:"mode",value:mode,post:function(){CodeMirror.autoLoadMode(this.editor,mode)}.bind(this)});return}if(!mode){this.setOption("mode",null);return}this.setOption("mode",spec);CodeMirror.autoLoadMode(this.editor,mode)},_themeChanged:function(theme){theme=theme||"xq-light";this._cleanThemes();this._importTheme(theme);this.setOption("theme",theme)},_cleanThemes:function(){var dom=
-Polymer.dom(this.root);var old=dom.querySelector("[data-theme]");if(old)dom.removeChild(old)},_importTheme:function(theme){var s=document.createElement("style","custom-style");s.include=theme;s.dataset.theme=theme;Polymer.dom(this.root).appendChild(s);this.updateStyles()},_tabSizeChanged:function(){this.setOption("tabSize",this.tabSize)},_lineNumbersChanged:function(){this.setOption("lineNumbers",this.lineNumbers)},_lineSeparatorChanged:function(){this.setOption("lineSeparator",this.lineSeparator)},
-_smartIndentChanged:function(){this.setOption("smartIndent",this.smartIndent)},_keyMapChanged:function(){this.setOption("keyMap",this.keyMap)},_lineWrappingChanged:function(){this.setOption("lineWrapping",this.lineWrapping)},_readOnlyChanged:function(){this.setOption("readOnly",this.readOnly)},_showCursorWhenSelectingChanged:function(){this.setOption("showCursorWhenSelecting",this.showCursorWhenSelecting)},_lineWiseCopyCutChanged:function(){this.setOption("lineWiseCopyCut",this.lineWiseCopyCut)},
+value){if(!this.editor){this._pendingOptions.push({option:option,value:value});return}this.editor.setOption(option,value)},_valueChanged:function(value){if(!this.editor)return;if(this.editor.getValue()!==value&&value!==undefined&&value!==null){if(typeof value!=="string")value=String(value);this.editor.setValue(value)}else if(value===undefined||value===null)this.editor.setValue("")},_modeChanged:function(){var val=this.mode;var mode;var spec;var info;var m=/.+\.([^.]+)$/.exec(val);if(m){info=CodeMirror.findModeByExtension(m[1]);
+if(info){mode=info.mode;spec=info.mime}}else if(/\//.test(val)){info=CodeMirror.findModeByMIME(val);if(info){mode=info.mode;spec=val}}else mode=spec=val;if(!this.editor){this._pendingOptions.push({option:"mode",value:mode,post:function(){CodeMirror.autoLoadMode(this.editor,mode)}.bind(this)});return}if(!mode){this.setOption("mode",null);return}this.setOption("mode",spec);CodeMirror.autoLoadMode(this.editor,mode)},_themeChanged:function(theme){theme=theme||"xq-light";this._cleanThemes();this._importTheme(theme);
+this.setOption("theme",theme)},_cleanThemes:function(){var dom=Polymer.dom(this.root);var old=dom.querySelector("[data-theme]");if(old)dom.removeChild(old)},_importTheme:function(theme){var s=document.createElement("style","custom-style");s.include=theme;s.dataset.theme=theme;Polymer.dom(this.root).appendChild(s);this.updateStyles()},_tabSizeChanged:function(){this.setOption("tabSize",this.tabSize)},_lineNumbersChanged:function(){this.setOption("lineNumbers",this.lineNumbers)},_lineSeparatorChanged:function(){this.setOption("lineSeparator",
+this.lineSeparator)},_smartIndentChanged:function(){this.setOption("smartIndent",this.smartIndent)},_keyMapChanged:function(){this.setOption("keyMap",this.keyMap)},_lineWrappingChanged:function(){this.setOption("lineWrapping",this.lineWrapping)},_readOnlyChanged:function(){this.setOption("readOnly",this.readOnly)},_showCursorWhenSelectingChanged:function(){this.setOption("showCursorWhenSelecting",this.showCursorWhenSelecting)},_lineWiseCopyCutChanged:function(){this.setOption("lineWiseCopyCut",this.lineWiseCopyCut)},
 _undoDepthChanged:function(){this.setOption("undoDepth",this.undoDepth)},_historyEventDelayChanged:function(){this.setOption("historyEventDelay",this.historyEventDelay)},_autofocusChanged:function(){this.setOption("autofocus",this.autofocus)},_onChangeEvent:function(instance,changeObj){this.set("value",this.editor.getValue());this.fire("value-change",{change:changeObj})},_onBeforeChangeEvent:function(instance,changeObj){var e=this.fire("before-change",{change:changeObj});if(e.detail.change.canceled)this.set("value",
-this.editor.getValue())},_importLocationChanegd:function(importLocation){if(importLocation[importLocation.length-1]!=="/")importLocation+="/";CodeMirror.modeURL=importLocation+"mode/%N/%N.js"},_getValidity:function(){if(this.required&&!this.value)return false;return true}})})();</script></dom-module><script>(function(g){g.ArcBehaviors=g.ArcBehaviors||{};g.ArcBehaviors.BodyJsonEditorBehavior={properties:{value:{type:Object,notify:true},noKey:{type:Boolean},nameSuggestions:Array,schema:Array,subPropertySchema:{type:Array,readOnly:true},description:String,allowedTypes:{type:Array},narrow:{type:Boolean,reflectToAttribute:true}},observers:["_schemaChanged(schema.*)","_computeChildSchema(value.name, value.type, schema.*)"],_typeIs:function(){var args=Array.from(arguments);var type=args.shift();return args.indexOf(type)!==
--1},_schemaChanged:function(record){var s=record.base;if(!s||!s.length){this.nameSuggestions=[];return}var suggestions=[];s.forEach(function(item){if(item instanceof Array)for(var i=0,len=item.length;i<len;i++){if(suggestions.indexOf(item[i].key)===-1)suggestions[suggestions.length]=item[i].key}else if(suggestions.indexOf(item.key)===-1)suggestions[suggestions.length]=item.key});if(!suggestions.length){this.nameSuggestions=[];return}this.set("nameSuggestions",suggestions)},_onSuggestion:function(e){var key=
-e.detail.value;var property=this._getSchemaPropery(key);if(!property)return;var type=property.type;if(type){if(type==="any")type="";this.set("value.type",type);if(type==="object")this._fillDefaultChildren(property);else if(type==="array")this._fillDefaultArrayChildren(property)}if(property.description)this.description=property.description;else this.description=undefined},_getSchemaPropery:function(propertyName){var p=this.schema;var property;for(var i=0,len=p.length;i<len;i++){if(property)break;var _item=
-p[i];if(_item instanceof Array)for(var j=0,_itemLen=_item.length;j<_itemLen;j++){if(_item[j].key===propertyName){property=_item[j];break}}else if(p[i].key===propertyName){property=p[i];break}}return property},_computeChildSchema:function(name,type,record){if(!type||["object","array","any"].indexOf(type)===-1)return this._setSubPropertySchema(undefined);var schema=record.base;if(!name)return this._setSubPropertySchema(schema);var property=this._getSchemaPropery(name);if(property){property=this._generateJsonSchema(property);
-return this._setSubPropertySchema(property)}return this._setSubPropertySchema(undefined)},_generateJsonSchema:function(object){object=object||{};var properties=object&&object.properties?object.properties:[];if(object.type==="union"&&object.anyOf&&object.anyOf.length){var result=[];object.anyOf.forEach(function(item){if(item.properties)result[result.length]=properties.concat(item.properties)});properties=result}else if(object.type==="array")properties=object.items;return properties},_fillDefaultChildren:function(property){if(!property||
-!property.properties||!property.properties.length)return;var properties=property.properties;if(!this.value.properties)this.set("value.properties",[]);properties.forEach(function(property){if(!property.key&&!property.name)return;var item=Object.assign({},property);if(!item.name&&property.key)item.name=property.key;if(!item.key&&property.name)item.key=property.name;this.push("value.properties",item)},this)},_fillDefaultArrayChildren:function(property){if(!property||!property.items||!property.items.length)return;
-var properties=property.items;if(!this.value.items)this.set("value.items",[]);properties.forEach(function(property){var item=Object.assign({},property);this.push("value.items",item)},this)}}})(window);</script><dom-module id="paper-material" assetpath="bower_components/paper-material/"><template><style include="paper-material-shared-styles"></style><style>:host([animated]){@apply (--shadow-transition);}:host{@apply (--paper-material);}</style><content></content></template></dom-module><script>Polymer({is:"paper-material",properties:{elevation:{type:Number,reflectToAttribute:true,value:1},animated:{type:Boolean,reflectToAttribute:true,value:false}}});</script><script>Polymer({is:"iron-a11y-keys",behaviors:[Polymer.IronA11yKeysBehavior],properties:{target:{type:Object,observer:"_targetChanged"},keys:{type:String,reflectToAttribute:true,observer:"_keysChanged"}},attached:function(){if(!this.target)this.target=this.parentNode},_targetChanged:function(target){this.keyEventTarget=target},_keysChanged:function(){this.removeOwnKeyBindings();this.addOwnKeyBinding(this.keys,"_fireKeysPressed")},_fireKeysPressed:function(event){this.fire("keys-pressed",event.detail,{})}});</script><script>Polymer.IronRangeBehavior={properties:{value:{type:Number,value:0,notify:true,reflectToAttribute:true},min:{type:Number,value:0,notify:true},max:{type:Number,value:100,notify:true},step:{type:Number,value:1,notify:true},ratio:{type:Number,value:0,readOnly:true,notify:true}},observers:["_update(value, min, max, step)"],_calcRatio:function(value){return(this._clampValue(value)-this.min)/(this.max-this.min)},_clampValue:function(value){return Math.min(this.max,Math.max(this.min,this._calcStep(value)))},
-_calcStep:function(value){value=parseFloat(value);if(!this.step)return value;var numSteps=Math.round((value-this.min)/this.step);if(this.step<1)return numSteps/(1/this.step)+this.min;else return numSteps*this.step+this.min},_validateValue:function(){var v=this._clampValue(this.value);this.value=this.oldValue=isNaN(v)?this.oldValue:v;return this.value!==v},_update:function(){this._validateValue();this._setRatio(this._calcRatio(this.value)*100)}};</script><dom-module id="paper-progress" assetpath="bower_components/paper-progress/"><template><style>:host{display:block;width:200px;position:relative;overflow:hidden;}:host([hidden]){display:none !important;}#progressContainer{@apply (--paper-progress-container);position:relative;}#progressContainer,
-      /* the stripe for the indeterminate animation*/
-      .indeterminate::after{height:var(--paper-progress-height, 4px);}#primaryProgress,
-      #secondaryProgress,
-      .indeterminate::after{@apply (--layout-fit);}#progressContainer,
-      .indeterminate::after{background:var(--paper-progress-container-color, --google-grey-300);}:host(.transiting) #primaryProgress,
-      :host(.transiting) #secondaryProgress{-webkit-transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:var(--paper-progress-transition-duration, 0.08s);transition-duration:var(--paper-progress-transition-duration, 0.08s);-webkit-transition-timing-function:var(--paper-progress-transition-timing-function, ease);transition-timing-function:var(--paper-progress-transition-timing-function, ease);-webkit-transition-delay:var(--paper-progress-transition-delay, 0s);transition-delay:var(--paper-progress-transition-delay, 0s);}#primaryProgress,
-      #secondaryProgress{@apply (--layout-fit);-webkit-transform-origin:left center;transform-origin:left center;-webkit-transform:scaleX(0);transform:scaleX(0);will-change:transform;}#primaryProgress{background:var(--paper-progress-active-color, --google-green-500);}#secondaryProgress{background:var(--paper-progress-secondary-color, --google-green-100);}:host([disabled]) #primaryProgress{background:var(--paper-progress-disabled-active-color, --google-grey-500);}:host([disabled]) #secondaryProgress{background:var(--paper-progress-disabled-secondary-color, --google-grey-300);}:host(:not([disabled])) #primaryProgress.indeterminate{-webkit-transform-origin:right center;transform-origin:right center;-webkit-animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;}:host(:not([disabled])) #primaryProgress.indeterminate::after{content:"";-webkit-transform-origin:center center;transform-origin:center center;-webkit-animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration, 2s) linear infinite;}@-webkit-keyframes indeterminate-bar{0%{-webkit-transform:scaleX(1) translateX(-100%);}50%{-webkit-transform:scaleX(1) translateX(0%);}75%{-webkit-transform:scaleX(1) translateX(0%);-webkit-animation-timing-function:cubic-bezier(.28,.62,.37,.91);}100%{-webkit-transform:scaleX(0) translateX(0%);}}@-webkit-keyframes indeterminate-splitter{0%{-webkit-transform:scaleX(.75) translateX(-125%);}30%{-webkit-transform:scaleX(.75) translateX(-125%);-webkit-animation-timing-function:cubic-bezier(.42,0,.6,.8);}90%{-webkit-transform:scaleX(.75) translateX(125%);}100%{-webkit-transform:scaleX(.75) translateX(125%);}}@keyframes indeterminate-bar{0%{transform:scaleX(1) translateX(-100%);}50%{transform:scaleX(1) translateX(0%);}75%{transform:scaleX(1) translateX(0%);animation-timing-function:cubic-bezier(.28,.62,.37,.91);}100%{transform:scaleX(0) translateX(0%);}}@keyframes indeterminate-splitter{0%{transform:scaleX(.75) translateX(-125%);}30%{transform:scaleX(.75) translateX(-125%);animation-timing-function:cubic-bezier(.42,0,.6,.8);}90%{transform:scaleX(.75) translateX(125%);}100%{transform:scaleX(.75) translateX(125%);}}</style><div id="progressContainer"><div id="secondaryProgress" hidden$="[[_hideSecondaryProgress(secondaryRatio)]]"></div><div id="primaryProgress"></div></div></template></dom-module><script>Polymer({is:"paper-progress",behaviors:[Polymer.IronRangeBehavior],properties:{secondaryProgress:{type:Number,value:0},secondaryRatio:{type:Number,value:0,readOnly:true},indeterminate:{type:Boolean,value:false,observer:"_toggleIndeterminate"},disabled:{type:Boolean,value:false,reflectToAttribute:true,observer:"_disabledChanged"}},observers:["_progressChanged(secondaryProgress, value, min, max)"],hostAttributes:{role:"progressbar"},_toggleIndeterminate:function(indeterminate){this.toggleClass("indeterminate",
-indeterminate,this.$.primaryProgress)},_transformProgress:function(progress,ratio){var transform="scaleX("+ratio/100+")";progress.style.transform=progress.style.webkitTransform=transform},_mainRatioChanged:function(ratio){this._transformProgress(this.$.primaryProgress,ratio)},_progressChanged:function(secondaryProgress,value,min,max){secondaryProgress=this._clampValue(secondaryProgress);value=this._clampValue(value);var secondaryRatio=this._calcRatio(secondaryProgress)*100;var mainRatio=this._calcRatio(value)*
-100;this._setSecondaryRatio(secondaryRatio);this._transformProgress(this.$.secondaryProgress,secondaryRatio);this._transformProgress(this.$.primaryProgress,mainRatio);this.secondaryProgress=secondaryProgress;this.setAttribute("aria-valuenow",value);this.setAttribute("aria-valuemin",min);this.setAttribute("aria-valuemax",max)},_disabledChanged:function(disabled){this.setAttribute("aria-disabled",disabled?"true":"false")},_hideSecondaryProgress:function(secondaryRatio){return secondaryRatio===0}});</script><dom-module id="paper-autocomplete" assetpath="bower_components/paper-autocomplete/"><style>:host{position:absolute !important;left:0px;top:52px;@apply (--paper-autocomplete);}paper-material{background-color:white;}#container{overflow:auto;}</style><template><paper-material elevation="2" id="container"><paper-progress hidden$="[[!_showLoader]]" indeterminate=""></paper-progress><iron-selector selected="{{selectedItem}}" id="selector"><template is="dom-repeat" items="{{suggestions}}" id="repeater"><paper-item><div>{{_suggestionDisplay(item)}}</div><paper-ripple></paper-ripple></paper-item></template></iron-selector></paper-material><iron-a11y-keys id="a11y" target="[[target]]" keys="up" on-keys-pressed="selectPrevious"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[target]]" keys="down" on-keys-pressed="selectNext"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[target]]" keys="enter" on-keys-pressed="acceptSelection"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[this]]" keys="up" on-keys-pressed="selectPrevious"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[this]]" keys="down" on-keys-pressed="selectNext"></iron-a11y-keys><iron-a11y-keys id="a11y" target="[[this]]" keys="enter" on-keys-pressed="acceptSelection"></iron-a11y-keys></template></dom-module><script>Polymer({is:"paper-autocomplete",behaviors:[Polymer.IronOverlayBehavior,Polymer.IronScrollTargetBehavior],properties:{source:{type:Array},value:{type:Object,notify:true},suggestions:{type:Array,value:[],readOnly:true},target:HTMLElement,selectedItem:{type:Number,value:0},scrollTarget:{type:Object,value:function(){return this.$.container}},sizingTarget:{type:HTMLElement,value:function(){return this.$.container}},loading:{type:Boolean,value:false,readOnly:true,notify:true},loader:{type:Boolean,value:false},
-_showLoader:{type:Boolean,computed:"_computeShowLoader(loader, loading)"},isAttached:Boolean,openOnFocus:{type:Boolean,value:false},_oldTarget:HTMLElement},observers:["_targetChanged(target, isAttached)","_filterSuggestions(source, _oldTarget, isAttached)"],listeners:{"tap":"acceptSelection"},_targetChanged:function(target,isAttached){if(!isAttached)return;this.resetFit();if(this._oldTarget){this.unlisten(this._oldTarget,"input","_valueChanged");this.unlisten(this._oldTarget,"focus","_targetFocus");
-this._oldTarget=null}if(!target)return;if(typeof target==="string")this.target=this.domHost?this.domHost.$[target]:Polymer.dom(this.ownerDocument).querySelector("#"+target);else if(target){this.listen(target,"input","_valueChanged");this.listen(target,"focus","_targetFocus");this._oldTarget=target;if(target===document.activeElement)this._targetFocus()}},_valueChanged:function(){if(!this.isAttached||!this._oldTarget)return;var value=this._oldTarget.value;if(this._previousQuery)if(value.indexOf(this._previousQuery)===
-0){this._previousQuery=value;this._filterSuggestions();return}else{this._previousQuery=null;this._setSuggestions([])}else if(!value&&this._previousQuery===undefined)return;this.fire("query",{value:value});this._previousQuery=value;if(!this.opened)this.selectedItem=0;this._filterSuggestions();this._setLoading(true)},_filterSuggestions:function(){if(!this.isAttached||!this._oldTarget)return;if(this._previousQuery===undefined)return;this._setLoading(false);var source=this.source;if(!source){this._setSuggestions([]);
-return}var query=this._previousQuery?this._previousQuery.toLowerCase():"";var filter=function(item){var value=typeof item==="string"?item:item.value;return value.toLowerCase().indexOf(query)!==-1};var filtered=query?source.filter(filter):source;if(filtered.length===0){this.close();return}filtered.sort(function(a,b){var valueA=typeof a==="string"?a:a.value;var valueB=typeof b==="string"?b:b.value;var aIndex=valueA.indexOf(query);var bIndex=valueB.indexOf(query);if(aIndex===0&&bIndex!==0)return 1;if(aIndex!==
-0&&bIndex===0)return-1;if(valueA>valueB)return 1;if(valueA<valueB)return-1;return 0});this._setSuggestions(filtered);this.opened=true},_suggestionDisplay:function(item){return item.value||item},selectPrevious:function(){if(!this.suggestions||!this.suggestions.length)return;if(!this.opened)this.opened=true;this.$.selector.selectPrevious();this.ensureItemVisible(false)},selectNext:function(){if(!this.suggestions||!this.suggestions.length)return;if(!this.opened)this.opened=true;this.$.selector.selectNext();
-this.ensureItemVisible(true)},acceptSelection:function(){if(!this.opened||!this.suggestions||!this.suggestions.length)return;var value=this.$.repeater.itemForElement(this.$.selector.selectedItem);if(typeof value!=="string")value=value.value;this.async(function(){this._inform(value)},1)},_inform:function(value){var e=this.fire("selected",{value:value},{cancelable:true});if(!e.defaultPrevented)this.target.value=value;this.close()},ensureItemVisible:function(bottom){if(!this.opened||!this.suggestions||
-!this.suggestions.length)return;var container=this.scrollTarget;var index=this.$.selector.selected;if(bottom&&index===0){this.scroll(0);return}var toMove;if(!bottom&&index===this.suggestions.length-1){toMove=container.scrollHeight-container.offsetHeight;this.scroll(0,toMove);return}var item=this.$.selector.selectedItem;var containerOffsetHeight=bottom?container.offsetHeight:0;var itemOffsetHeight=bottom?item.offsetHeight:0;var visible=containerOffsetHeight+container.scrollTop;var treshold=item.offsetTop+
-itemOffsetHeight;if(bottom&&treshold>visible){toMove=item.offsetHeight+item.offsetTop-container.offsetHeight;this.scroll(0,toMove)}else if(!bottom&&visible>treshold)this.scroll(0,treshold)},_computeShowLoader:function(loader,loading){return!!loader&&!!loading},_targetFocus:function(){if(!this.openOnFocus||this.opened)return;this._previousQuery=this._previousQuery||"";this.async(this._valueChanged,100)}});</script><dom-module id="simple-type-editor" assetpath="bower_components/body-json-editor/"><template><style include="markdown-styles"></style><style>:host{display:block;@apply (--simple-type-editor);}#container{@apply (--layout-horizontal);position:relative;}.input-values{@apply (--layout-flex);@apply (--layout-horizontal);@apply (--layout-center);}.input-actions{@apply (--layout-horizontal);@apply (--layout-center);}paper-input,
-    .input-value{width:100%;display:block;}.value-input[type="text"]{--paper-input-container-input:{color:var(--code-type-text-value-color, #080);};}.value-input[type="number"]{--paper-input-container-input:{color:var(--code-type-number-value-color, #303F9F);};}.boolean-input{--paper-input-container-input:{color:var(--code-type-boolean-value-color, #4A148C);};}.null-input{color:var(--code-type-null-value-color, #4A148C);}.punctuation{color:var(--code-punctuation-value-color, rgba(0, 0, 0, 0.54));font-size:14px;display:inline-block;margin:0 4px;}.complex-type-label{font-weight:500;color:rgba(0, 0, 0, 0.54);text-transform:capitalize;}paper-icon-button{@apply (--icon-button);}paper-icon-button:hover{@apply (--icon-button-hover);}paper-autocomplete{position:fixed !important;}#docs .markdown-body{color:var(--inline-documentation-text-color, rgba(0, 0, 0, 0.64));font-size:var(--inline-documentation-text-size, 12px);@apply (--code-block);}.type-selector{@apply (--layout-horizontal);}:host([narrow]) #container{margin-bottom:24px;}:host([narrow]) .input-values{@apply (--layout-vertical);@apply (--layout-start);}:host([narrow]) .input-actions{@apply (--layout-start);padding-top:16px;}:host([narrow]) .punctuation{display:none;}</style><div id="container"><div class="input-values"><paper-input id="keyInput" hidden$="[[noKey]]" label="property name" class="key-input" no-label-float="[[!narrow]]" value="{{value.name}}"></paper-input><paper-autocomplete target="[[keyInput]]" source="[[nameSuggestions]]" on-selected="_onSuggestion" open-on-focus="" vertical-align="top"></paper-autocomplete><span class="punctuation" hidden$="[[noKey]]">:</span><template is="dom-if" if="[[!_typeIs(value.type, 'array', 'object')]]" restamp="true"><template is="dom-if" if="[[_typeIs(value.type, 'number', 'float', 'integer', 'string')]]" restamp="true"><paper-input label="property value" class="value-input" no-label-float="[[!narrow]]" auto-validate="" required="[[value.required]]" value="{{value.value}}" type$="[[_compueInputType(value.type)]]" step="[[_computeStep(value.type)]]"></paper-input></template><template is="dom-if" if="[[_typeIs(value.type, 'boolean')]]" restamp="true"><paper-dropdown-menu class="boolean-input" no-label-float="[[!narrow]]" label="Boolean value"><paper-listbox class="dropdown-content" selected="{{value.value}}" attr-for-selected="data-value"><template is="dom-repeat" items="{{booleanValues}}"><paper-item data-value="[[item.value]]">[[item.display]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[_typeIs(value.type, 'null')]]" restamp="true"><span class="null-input input-value">null</span></template></template><template is="dom-if" if="[[_typeIs(value.type, 'array', 'object')]]"><span class="complex-type-label input-value">[[value.type]]</span></template><template is="dom-if" if="[[_typeIs(value.type, '')]]" restamp="true"><div class="type-selector"><paper-dropdown-menu no-label-float="" label="Select type"><paper-listbox class="dropdown-content" selected="{{value.type}}" attr-for-selected="data-type"><template is="dom-repeat" items="{{_computeTypesList(typesValues, allowedTypes)}}"><paper-item data-type$="[[item.value]]">[[item.display]]</paper-item></template></paper-listbox></paper-dropdown-menu><paper-icon-button hidden$="[[!_previousType]]" icon="arc:cancel" on-tap="_cancelTypeChange" title="Cancel"></paper-icon-button></div></template></div><div class="input-actions" hidden$="[[_typeIs(value.type, '')]]"><paper-icon-button icon="arc:arc:refresh" on-tap="_changeType" title="Change data type"></paper-icon-button><paper-icon-button icon="arc:remove-circle-outline" on-tap="_remove" title="Remove property"></paper-icon-button></div></div><div id="docs" hidden$="[[!description]]"><marked-element markdown="[[description]]"><div class="markdown-html markdown-body"></div></marked-element></div></template><script>Polymer({is:"simple-type-editor",behaviors:[ArcBehaviors.BodyJsonEditorBehavior],properties:{booleanValues:{type:Array,value:function(){return[{display:"True",value:true},{display:"False",value:false}]},readOnly:true},typesValues:{type:Array,value:function(){return[{display:"String",value:"string"},{display:"Float",value:"float"},{display:"Integer",value:"integer"},{display:"Boolean",value:"boolean"},{display:"Null",value:"null"},{display:"Object",value:"object"},{display:"Array",value:"array"}]},
-readOnly:true},_previousType:{type:String,value:""},keyInput:{type:HTMLElement,value:function(){return this.$.keyInput}},allowedTypes:{type:Array,value:[]},narrow:{type:Boolean,value:false}},observers:["_descriptionChanged(value.description)"],_compueInputType:function(type){switch(type){case "number":case "integer":case "float":return"number";default:return"text"}},_computeStep:function(type){switch(type){case "number":case "float":return 1e-7;case "integer":return 1;default:return}},_remove:function(){this.fire("remove-property",
-{value:this.value})},_changeType:function(){this._previousType=this.value.type;this.set("value.type","")},_cancelTypeChange:function(){this.set("value.type",this._previousType)},_descriptionChanged:function(description){if(!description)return;this.description=description},_computeTypesList:function(typesValues,allowedTypes){if(!allowedTypes||!allowedTypes.length)return typesValues;var result=allowedTypes.map(function(item){return{display:item,value:item}});return result}});</script></dom-module><dom-module id="object-editor" assetpath="bower_components/body-json-editor/"><template><style>:host{display:block;@apply (--body-json-object-editor);--paper-input-container-color:rgba(0, 0, 0, 0.24);--paper-dropdown-menu-input:{color:#673AB7;};--paper-dropdown-menu-button:{color:#673AB7;};}.indent{margin-left:12px;}.action-button{color:var(--primary-color);}</style><template is="dom-if" if="[[_typeIs(value.type, 'object')]]"><simple-type-editor value="{{value}}"></simple-type-editor><template is="dom-repeat" items="{{value.properties}}" id="object"><object-editor narrow="[[narrow]]" class="indent" value="{{item}}" schema="[[subPropertySchema]]"></object-editor></template><div class="indent add-action"><paper-button class="action-button" on-tap="_appendProperty">add subproperty</paper-button></div></template><template is="dom-if" if="[[_typeIs(value.type, 'array')]]"><simple-type-editor value="{{value}}"></simple-type-editor><template is="dom-repeat" items="{{value.items}}" id="array"><object-editor narrow="[[narrow]]" class="indent" no-key="" value="{{item}}" schema="[[subPropertySchema]]" is-array-item="" allowed-types="[[allowedTypes]]"></object-editor></template><div class="indent add-action"><paper-button class="action-button" on-tap="_appendProperty">add array item</paper-button></div></template><template is="dom-if" if="[[!_typeIs(value.type, 'array', 'object')]]"><simple-type-editor narrow="[[narrow]]" value="{{value}}" no-key="[[noKey]]" schema="[[schema]]" allowed-types="[[allowedTypes]]"></simple-type-editor></template></template><script>Polymer({is:"object-editor",behaviors:[ArcBehaviors.BodyJsonEditorBehavior],properties:{noKey:{type:Boolean},value:{type:Object,notify:true},isArrayItem:{type:Boolean,value:false}},observers:["_schemaChanged(schema.*)","_computeChildTypes(isArrayItem, schema.*)"],listeners:{"remove-property":"_onRemoveProperty"},_onRemoveProperty:function(e){var value=this.value;if(!value)return;if(["object","array"].indexOf(value.type)!==-1){var _repeater;if(this.value.type==="object")_repeater=this.$$("#object");
-else _repeater=this.$$("#array");if(!_repeater)return;var index=_repeater.indexForElement(e.target);if(index===-1||index===undefined)return;if(this.value.type==="object")this.splice("value.properties",index,1);else this.splice("value.items",index,1);e.preventDefault();e.stopImmediatePropagation();e.stopPropagation()}},_appendProperty:function(){var property={name:"",type:""};if(this.value.type==="object")if(this.value.properties)this.push("value.properties",property);else this.set("value.properties",
-[property]);else if(this.value.items&&this.value.items.length){var type=this.value.items[this.value.items.length-1].type;property.type=type;this.push("value.items",property)}else this.set("value.items",[property])},_computeChildTypes:function(isArray,record){if(!isArray)return;var s=record.base;if(!s||!s.length){this.set("allowedTypes",null);return}var allowedTypes=[];s.forEach(function(item){if(!item.type)return;if(allowedTypes.indexOf(item.type)!==-1)return;allowedTypes[allowedTypes.length]=item.type});
-this.set("allowedTypes",allowedTypes)}});</script></dom-module><dom-module id="body-json-editor" assetpath="bower_components/body-json-editor/"><template><style>:host{display:block;@apply (--body-json-editor);}.action-button{color:var(--primary-color);}</style><template is="dom-if" if="[[_isObject(model.type)]]"><template is="dom-repeat" items="{{model.properties}}" id="object"><object-editor narrow="[[narrow]]" value="{{item}}" schema="[[schema]]"></object-editor></template><div class="add-action"><paper-button class="action-button" on-tap="_appendProperty">add property</paper-button></div></template><template is="dom-if" if="[[_isArray(model.type)]]"><template is="dom-repeat" items="{{model.items}}" id="array"><object-editor narrow="[[narrow]]" no-key="" value="{{item}}" schema="[[schema]]"></object-editor></template><div class="add-action"><paper-button class="action-button" on-tap="_appendProperty">add array item</paper-button></div></template></template><script>Number.isInteger=Number.isInteger||function(value){return typeof value==="number"&&isFinite(value)&&Math.floor(value)===value};
-if(!Array.from)Array.from=function(){var toStr=Object.prototype.toString;var isCallable=function(fn){return typeof fn==="function"||toStr.call(fn)==="[object Function]"};var toInteger=function(value){var number=Number(value);if(isNaN(number))return 0;if(number===0||!isFinite(number))return number;return(number>0?1:-1)*Math.floor(Math.abs(number))};var maxSafeInteger=Math.pow(2,53)-1;var toLength=function(value){var len=toInteger(value);return Math.min(Math.max(len,0),maxSafeInteger)};return function from(arrayLike){var C=
-this;var items=Object(arrayLike);if(arrayLike===null)throw new TypeError("Array.from requires an array-like object - not null or undefined");var mapFn=arguments.length>1?arguments[1]:void undefined;var T;if(typeof mapFn!=="undefined"){if(!isCallable(mapFn))throw new TypeError("Array.from: when provided, the second argument must be a function");if(arguments.length>2)T=arguments[2]}var len=toLength(items.length);var A=isCallable(C)?Object(new C(len)):new Array(len);var k=0;var kValue;while(k<len){kValue=
-items[k];if(mapFn)A[k]=typeof T==="undefined"?mapFn(kValue,k):mapFn.call(T,kValue,k);else A[k]=kValue;k+=1}A.length=len;return A}}();
-Polymer({is:"body-json-editor",behaviors:[ArcBehaviors.BodyJsonEditorBehavior],properties:{json:{type:Object,notify:true},model:Object,type:Object,value:{type:String,notify:true,value:""},opened:{type:Boolean,value:true}},observers:["_typeChanged(type.*)","_valueChanged(opened, value)","_jsonChanged(opened, json)","_modelChanged(opened, model.*)"],listeners:{"remove-property":"_onRemoveProperty"},ready:function(){if(!this.json)this.json={}},_jsonChanged:function(opened,json){if(!opened)return;this.debounce("model-translator",
-function(){this.model=this._createModel(json)},250)},_createModel:function(object,parentType){var result={type:"object"};if(object===undefined)return result;if(parentType&&parentType!=="array")result.name="";if(object instanceof Array){result.type="array";var items=[];object.forEach(function(item){var _m=this._createModel(item,"array");if(_m)items[items.length]=_m},this);result.items=items}else if(object instanceof Object)try{var keys=Object.keys(object);var properties=[];keys.forEach(function(key){var _m=
-this._createModel(object[key],"object");if(_m){_m.name=key;properties[properties.length]=_m}},this);result.properties=properties}catch(e){}else if(typeof object==="string"){result.type="string";result.value=object}else if(typeof object==="number"){result.type=Number.isInteger(object)?"integer":"float";result.value=object}else if(typeof object==="boolean"){result.type="boolean";result.value=object}else if(object===null){result.type="null";result.value=null}else return;return result},_isObject:function(type){return type===
-"object"},_isArray:function(type){return type==="array"},_onRemoveProperty:function(e){e.preventDefault();e.stopImmediatePropagation();e.stopPropagation();var _repeater;if(this.model.type==="object")_repeater=this.$$("#object");else _repeater=this.$$("#array");if(!_repeater)return;var index=_repeater.indexForElement(e.target);if(index===-1)return;if(this.model.type==="object")this.splice("model.properties",index,1);else this.splice("model.items",index,1)},_modelChanged:function(opened,record){if(!opened)return;
-var obj=record.base;obj=this._computeJson(obj);this._internalValueChage=true;this.set("value",JSON.stringify(obj,null,2));this._internalValueChage=false},_computeJson:function(model){var isArray=model.type==="array";var result=isArray?[]:{};var properties;if(isArray){if(!model.items||!model.items.length)return result;properties=model.items}else{if(!model.properties||!model.properties.length)return result;properties=model.properties}properties.forEach(function(item){var _value;if(item.type==="object"||
-item.type==="array")_value=this._computeJson(item);else{_value=item.value;if(["integer","float"].indexOf(item.type)!==-1){_value=Number(_value);if(_value!==_value)_value=item.value}}if(isArray)result[result.length]=_value;else result[item.name]=_value},this);return result},_appendProperty:function(){var property={name:"",type:""};if(this.model.type==="object")if(this.model.properties)this.push("model.properties",property);else this.set("model.properties",[property]);else if(this.model.items){var type=
-this.model.items[this.model.items.length-1].type;property.type=type;this.push("model.items",property)}else this.set("model.items",[property])},_valueChanged:function(opened,value){if(!opened)return;if(this._internalValueChage)return;if(!value)return this.set("json","{}");try{var json=JSON.parse(value);this.set("json",json)}catch(e){}},_typeChanged:function(record){var type=record.base;if(!type)this.schema=undefined;else this.schema=this._generateJsonSchema(type)}});</script></dom-module><script>Polymer({is:"iron-request",hostAttributes:{hidden:true},properties:{xhr:{type:Object,notify:true,readOnly:true,value:function(){return new XMLHttpRequest}},response:{type:Object,notify:true,readOnly:true,value:function(){return null}},status:{type:Number,notify:true,readOnly:true,value:0},statusText:{type:String,notify:true,readOnly:true,value:""},completes:{type:Object,readOnly:true,notify:true,value:function(){return new Promise(function(resolve,reject){this.resolveCompletes=resolve;this.rejectCompletes=
-reject}.bind(this))}},progress:{type:Object,notify:true,readOnly:true,value:function(){return{}}},aborted:{type:Boolean,notify:true,readOnly:true,value:false},errored:{type:Boolean,notify:true,readOnly:true,value:false},timedOut:{type:Boolean,notify:true,readOnly:true,value:false}},get succeeded(){if(this.errored||this.aborted||this.timedOut)return false;var status=this.xhr.status||0;return status===0||status>=200&&status<300},send:function(options){var xhr=this.xhr;if(xhr.readyState>0)return null;
-xhr.addEventListener("progress",function(progress){this._setProgress({lengthComputable:progress.lengthComputable,loaded:progress.loaded,total:progress.total})}.bind(this));xhr.addEventListener("error",function(error){this._setErrored(true);this._updateStatus();this.rejectCompletes(error)}.bind(this));xhr.addEventListener("timeout",function(error){this._setTimedOut(true);this._updateStatus();this.rejectCompletes(error)}.bind(this));xhr.addEventListener("abort",function(){this._updateStatus();this.rejectCompletes(new Error("Request aborted."))}.bind(this));
-xhr.addEventListener("loadend",function(){this._updateStatus();this._setResponse(this.parseResponse());if(!this.succeeded){this.rejectCompletes(new Error("The request failed with status code: "+this.xhr.status));return}this.resolveCompletes(this)}.bind(this));this.url=options.url;xhr.open(options.method||"GET",options.url,options.async!==false);var acceptType={"json":"application/json","text":"text/plain","html":"text/html","xml":"application/xml","arraybuffer":"application/octet-stream"}[options.handleAs];
-var headers=options.headers||Object.create(null);var newHeaders=Object.create(null);for(var key in headers)newHeaders[key.toLowerCase()]=headers[key];headers=newHeaders;if(acceptType&&!headers["accept"])headers["accept"]=acceptType;Object.keys(headers).forEach(function(requestHeader){if(/[A-Z]/.test(requestHeader))Polymer.Base._error("Headers must be lower case, got",requestHeader);xhr.setRequestHeader(requestHeader,headers[requestHeader])},this);if(options.async!==false){if(options.async)xhr.timeout=
-options.timeout;var handleAs=options.handleAs;if(!!options.jsonPrefix||!handleAs)handleAs="text";xhr.responseType=xhr._responseType=handleAs;if(!!options.jsonPrefix)xhr._jsonPrefix=options.jsonPrefix}xhr.withCredentials=!!options.withCredentials;var body=this._encodeBodyObject(options.body,headers["content-type"]);xhr.send((body));return this.completes},parseResponse:function(){var xhr=this.xhr;var responseType=xhr.responseType||xhr._responseType;var preferResponseText=!this.xhr.responseType;var prefixLen=
-xhr._jsonPrefix&&xhr._jsonPrefix.length||0;try{switch(responseType){case "json":if(preferResponseText||xhr.response===undefined)try{return JSON.parse(xhr.responseText)}catch(_){return null}return xhr.response;case "xml":return xhr.responseXML;case "blob":case "document":case "arraybuffer":return xhr.response;case "text":default:{if(prefixLen)try{return JSON.parse(xhr.responseText.substring(prefixLen))}catch(_$0){return null}return xhr.responseText}}}catch(e){this.rejectCompletes(new Error("Could not parse response. "+
-e.message))}},abort:function(){this._setAborted(true);this.xhr.abort()},_encodeBodyObject:function(body,contentType){if(typeof body=="string")return body;var bodyObj=(body);switch(contentType){case "application/json":return JSON.stringify(bodyObj);case "application/x-www-form-urlencoded":return this._wwwFormUrlEncode(bodyObj)}return body},_wwwFormUrlEncode:function(object){if(!object)return"";var pieces=[];Object.keys(object).forEach(function(key){pieces.push(this._wwwFormUrlEncodePiece(key)+"\x3d"+
-this._wwwFormUrlEncodePiece(object[key]))},this);return pieces.join("\x26")},_wwwFormUrlEncodePiece:function(str){if(str===null)return"";return encodeURIComponent(str.toString().replace(/\r?\n/g,"\r\n")).replace(/%20/g,"+")},_updateStatus:function(){this._setStatus(this.xhr.status);this._setStatusText(this.xhr.statusText===undefined?"":this.xhr.statusText)}});</script><script>Polymer({is:"iron-ajax",hostAttributes:{hidden:true},properties:{url:{type:String},params:{type:Object,value:function(){return{}}},method:{type:String,value:"GET"},headers:{type:Object,value:function(){return{}}},contentType:{type:String,value:null},body:{type:Object,value:null},sync:{type:Boolean,value:false},handleAs:{type:String,value:"json"},withCredentials:{type:Boolean,value:false},timeout:{type:Number,value:0},auto:{type:Boolean,value:false},verbose:{type:Boolean,value:false},lastRequest:{type:Object,
-notify:true,readOnly:true},loading:{type:Boolean,notify:true,readOnly:true},lastResponse:{type:Object,notify:true,readOnly:true},lastError:{type:Object,notify:true,readOnly:true},activeRequests:{type:Array,notify:true,readOnly:true,value:function(){return[]}},debounceDuration:{type:Number,value:0,notify:true},jsonPrefix:{type:String,value:""},bubbles:{type:Boolean,value:false},_boundHandleResponse:{type:Function,value:function(){return this._handleResponse.bind(this)}}},observers:["_requestOptionsChanged(url, method, params.*, headers, contentType, "+
-"body, sync, handleAs, jsonPrefix, withCredentials, timeout, auto)"],get queryString(){var queryParts=[];var param;var value;for(param in this.params){value=this.params[param];param=window.encodeURIComponent(param);if(Array.isArray(value))for(var i=0;i<value.length;i++)queryParts.push(param+"\x3d"+window.encodeURIComponent(value[i]));else if(value!==null)queryParts.push(param+"\x3d"+window.encodeURIComponent(value));else queryParts.push(param)}return queryParts.join("\x26")},get requestUrl(){var queryString=
-this.queryString;var url=this.url||"";if(queryString){var bindingChar=url.indexOf("?")>=0?"\x26":"?";return url+bindingChar+queryString}return url},get requestHeaders(){var headers={};var contentType=this.contentType;if(contentType==null&&typeof this.body==="string")contentType="application/x-www-form-urlencoded";if(contentType)headers["content-type"]=contentType;var header;if(this.headers instanceof Object)for(header in this.headers)headers[header]=this.headers[header].toString();return headers},
-toRequestOptions:function(){return{url:this.requestUrl||"",method:this.method,headers:this.requestHeaders,body:this.body,async:!this.sync,handleAs:this.handleAs,jsonPrefix:this.jsonPrefix,withCredentials:this.withCredentials,timeout:this.timeout}},generateRequest:function(){var request=(document.createElement("iron-request"));var requestOptions=this.toRequestOptions();this.push("activeRequests",request);request.completes.then(this._boundHandleResponse).catch(this._handleError.bind(this,request)).then(this._discardRequest.bind(this,
-request));request.send(requestOptions);this._setLastRequest(request);this._setLoading(true);this.fire("request",{request:request,options:requestOptions},{bubbles:this.bubbles});this.fire("iron-ajax-request",{request:request,options:requestOptions},{bubbles:this.bubbles});return request},_handleResponse:function(request){if(request===this.lastRequest){this._setLastResponse(request.response);this._setLastError(null);this._setLoading(false)}this.fire("response",request,{bubbles:this.bubbles});this.fire("iron-ajax-response",
-request,{bubbles:this.bubbles})},_handleError:function(request,error){if(this.verbose)Polymer.Base._error(error);if(request===this.lastRequest){this._setLastError({request:request,error:error,status:request.xhr.status,statusText:request.xhr.statusText,response:request.xhr.response});this._setLastResponse(null);this._setLoading(false)}this.fire("iron-ajax-error",{request:request,error:error},{bubbles:this.bubbles});this.fire("error",{request:request,error:error},{bubbles:this.bubbles})},_discardRequest:function(request){var requestIndex=
-this.activeRequests.indexOf(request);if(requestIndex>-1)this.splice("activeRequests",requestIndex,1)},_requestOptionsChanged:function(){this.debounce("generate-request",function(){if(this.url==null)return;if(this.auto)this.generateRequest()},this.debounceDuration)}});</script><script>Polymer({is:"iron-form",extends:"form",properties:{disableNativeValidationUi:{type:Boolean,value:false},withCredentials:{type:Boolean,value:false},contentType:{type:String,value:"application/x-www-form-urlencoded"},headers:{type:Object,value:function(){return{}}},request:{type:Object}},listeners:{"iron-form-element-register":"_registerElement","iron-form-element-unregister":"_unregisterElement","submit":"_onSubmit","reset":"_onReset"},registered:function(){var form=document.createElement("form");
-var input=document.createElement("input");input.setAttribute("required","true");form.appendChild(input);var button=document.createElement("input");button.setAttribute("type","submit");form.appendChild(button);Polymer.clientSupportsFormValidationUI=true;form.addEventListener("submit",function(event){Polymer.clientSupportsFormValidationUI=false;event.preventDefault()});button.click()},ready:function(){this.request=document.createElement("iron-ajax");this.request.addEventListener("response",this._handleFormResponse.bind(this));
-this.request.addEventListener("error",this._handleFormError.bind(this));this._customElements=[];this._customElementsInitialValues=[]},submit:function(){if(!this.noValidate&&!this.validate()){if(Polymer.clientSupportsFormValidationUI&&!this.disableNativeValidationUi)this._doFakeSubmitForValidation();this.fire("iron-form-invalid");return}var json=this.serialize();this.request.url=this.getAttribute("action");this.request.method=this.getAttribute("method")||"GET";this.request.contentType=this.contentType;
-this.request.withCredentials=this.withCredentials;this.request.headers=this.headers;if(this.request.method.toUpperCase()==="POST")this.request.body=json;else this.request.params=json;var event=this.fire("iron-form-presubmit",{},{cancelable:true});if(!event.defaultPrevented){this.request.generateRequest();this.fire("iron-form-submit",json)}},_onSubmit:function(event){this.submit();if(event)event.preventDefault();return false},_onReset:function(event){this._resetCustomElements()},serialize:function(){var json=
-{};function addSerializedElement(name,value){if(json[name]===undefined)json[name]=value;else{if(!Array.isArray(json[name]))json[name]=[json[name]];json[name].push(value)}}for(var el,i=0;el=this._customElements[i],i<this._customElements.length;i++)if(!this._isChildOfRegisteredParent(el,true)&&this._useValue(el))addSerializedElement(el.name,el.value);for(var el,i=0;el=this.elements[i],i<this.elements.length;i++){if(this._isChildOfRegisteredParent(el,true)||!this._useValue(el))continue;if(el.tagName.toLowerCase()===
-"select"&&el.multiple)for(var o=0;o<el.options.length;o++){if(el.options[o].selected)addSerializedElement(el.name,el.options[o].value)}else addSerializedElement(el.name,el.value)}return json},_handleFormResponse:function(event){this.fire("iron-form-response",event.detail)},_handleFormError:function(event){this.fire("iron-form-error",event.detail)},_registerElement:function(e){var element=Polymer.dom(e).rootTarget;element._parentForm=this;this._customElements.push(element);this._customElementsInitialValues.push(this._usesCheckedInsteadOfValue(element)?
-element.checked:element.value)},_unregisterElement:function(e){var target=e.detail.target;if(target){var index=this._customElements.indexOf(target);if(index>-1){this._customElements.splice(index,1);this._customElementsInitialValues.splice(index,1)}}},validate:function(){var valid=true;var validatable;for(var el,i=0;el=this._customElements[i],i<this._customElements.length;i++)if(!this._isChildOfRegisteredParent(el,false)&&!el.disabled){validatable=(el);if(validatable.validate)valid=!!validatable.validate()&&
-valid}for(var el,i=0;el=this.elements[i],i<this.elements.length;i++){if(this._isChildOfRegisteredParent(el,false))continue;if(!el.hasAttribute("is")&&el.willValidate&&el.checkValidity)valid=el.checkValidity()&&valid}return valid},_usesCheckedInsteadOfValue:function(el){if(el.type=="checkbox"||el.type=="radio"||el.getAttribute("role")=="checkbox"||el.getAttribute("role")=="radio"||el["_hasIronCheckedElementBehavior"])return true;return false},_useValue:function(el){if(el.disabled||!el.name)return false;
-if(this._usesCheckedInsteadOfValue(el))return el.checked;return true},_doFakeSubmitForValidation:function(){var fakeSubmit=document.createElement("input");fakeSubmit.setAttribute("type","submit");fakeSubmit.style.display="none";this.appendChild(fakeSubmit);fakeSubmit.click();this.removeChild(fakeSubmit)},_resetCustomElements:function(){this.async(function(){for(var el,i=0;el=this._customElements[i],i<this._customElements.length;i++){if(el.disabled)continue;if(this._usesCheckedInsteadOfValue(el))el.checked=
-this._customElementsInitialValues[i];else{var value=this._customElementsInitialValues[i];if(value===undefined)value=null;el.value=value;if(el.inputElement)el.inputElement.value=el.value;else if(el.textarea)el.textarea.value=el.value}el.invalid=false}this.fire("iron-form-reset")},1)},_isChildOfRegisteredParent:function(node,checkHasName){var parent=node;while(parent&&parent!==document&&parent!=this){parent=Polymer.dom(parent).parentNode||parent.host;if(parent&&(!checkHasName||parent.name)&&parent._parentForm===
-this)return true}return false}});</script><dom-module id="body-form-editor" assetpath="bower_components/body-form-editor/"><template><style>:host{display:block;padding:8px;@apply (--raml-request-parameters-form);@apply (--body-form-editor);--paper-input-container-label:{color:var(--raml-request-parameters-editor-input-label-color, rgba(0, 0, 0, 0.48));};}.user-defined-row,
-    .predefined-row{@apply (--layout-horizontal);position:relative;}.predefined-row{@apply (--raml-request-parameters-editor-predefined-row);}.user-defined-row{@apply (--raml-request-parameters-editor-user-defined-row);}.predefined-row label{display:block;min-width:120px;@apply (--layout-horizontal);@apply (--layout-end-justified);@apply (--paper-font-body1);font-size:15px;color:var(--raml-request-parameters-editor-predefined-label-color, rgba(0, 0, 0, 0.87));text-align:right;margin-right:8px;padding-top:12px;@apply (--form-label);}.param-name{margin-right:8px;@apply (--layout-flex);}.param-value{@apply (--layout-vertical);@apply (--layout-flex);}.param-value .input{@apply (--layout-horizontal);}paper-input{width:100%;}.docs{@apply (--paper-font-common-base);font-size:13px;font-weight:200;line-height:24px;color:var(--raml-request-parameters-editor-docs-color, rgba(0, 0, 0, 0.87));}.action-button{color:var(--primary-color);}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}paper-icon-button{@apply (--icon-button);}paper-icon-button:hover{@apply (--icon-button-hover);}</style><form is="iron-form" id="form"><template is="dom-repeat" items="{{schema}}"><div class="predefined-row"><label class="label" for="body-form-editor-[[index]]" hidden="[[narrow]]">[[item.name]]<span hidden$="[[!item.required]]">*</span></label><div class="param-value"><template is="dom-if" if="[[_computeIsEnum(item.enum)]]" restamp=""><paper-dropdown-menu no-label-float="" label="[[_computeInputLabel(item.*, narrow)]]" name="[[item.name]]" required="" id="body-form-editor-[[index]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{item.value}}"><template is="dom-repeat" items="[[item.enum]]"><paper-item data-value="[[item]]">[[item]]</paper-item></template><paper-item label=" ">(empty value)</paper-item></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[!_computeIsEnum(item.enum)]]" restamp=""><div class="input"><paper-input no-label-float="[[!narrow]]" label="[[_computeInputLabel(item.*, narrow)]]" id="body-form-editor-[[index]]" value="{{item.value}}" required="[[item.required]]" pattern="[[item.pattern]]" name="[[item.name]]" auto-validate="" type="[[_computeInputType(item.type)]]" min="[[item.minimum]]" max="[[item.maximum]]" maxlength="[[item.maxLength]]"></paper-input></div></template><div class="docs" hidden$="[[!_hasValue(item.description)]]"><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></div></div></div></template><template is="dom-repeat" items="{{userParams}}" user-params=""><div class="user-defined-row"><div class="param-name"><paper-input no-label-float="[[!narrow]]" label="Param name" value="{{item.name}}" type="text"></paper-input></div><div class="param-value"><div class="input"><paper-input no-label-float="[[!narrow]]" label="Param value" name="[[item.name]]" value="{{item.value}}" type="text"></paper-input></div></div><paper-icon-button icon="arc:close" on-tap="_removeUserParam" title="Remove form parameter"></paper-icon-button></div></template><div class="add-action"><paper-button class="action-button" on-tap="_addUserParam" title="Add form parameter">add</paper-button></div></form></template><script>Polymer({is:"body-form-editor",behaviors:[Polymer.IronValidatableBehavior],properties:{type:Object,value:{type:String,notify:true,value:""},opened:{type:Boolean,value:true},schema:Array,narrow:{type:Boolean,value:false},userParams:Array},observers:["_typeChanged(type.*)","_schemaChanged(schema.*)","_schemaChanged(userParams.*)","_valueChanged(opened, value)"],_typeChanged:function(record){var type=record.base;if(!type||!type.formParameters)this.schema=undefined;else this.schema=this.readSchema(type.formParameters)},
-_computeIsEnum:function(itemEnum){return!!(itemEnum&&itemEnum.length)},_computeInputType:function(itemType){if(!itemType||itemType==="text")return"text";switch(itemType){case "number":case "integer":case "float":return"number";default:return"text"}},_computeInputLabel:function(record,narrow){var object=record.base;if(!object)return;if(narrow)return object.name;if(!!object.examples&&object.examples.length&&object.examples[0])return"Example: "+object.examples[0];return"Param value"},_hasValue:function(obj){if(typeof obj===
-"number"&&obj===0)return true;if(typeof obj==="boolean")return true;return!!obj},_getValidity:function(){return this.$.form.validate()},readSchema:function(obj){if(!obj)return[];if(obj instanceof Array)return obj;var names=Object.keys(obj);if(!names)return[];return names.map(function(key){var item=obj[key];item.key=key;if(typeof item.default!=="undefined"&&!item.value)item.value=item.default;if(typeof item.value==="undefined"&&item.required){if(item.examples)item.value=item.examples[0];else if(item.example)item.value=
-item.example;if(item.value&&item.value.indexOf&&item.value.indexOf(item.name+"\x3d")===0)item.value=item.value.substr(item.name.length+1)}if(typeof item.value==="undefined"&&item.enum&&item.enum.length)item.value=item.enum[0];return Object.assign({},item)})},_schemaChanged:function(){this.async(function(){var values=this.$.form.serialize();var value=this._wwwFormUrlEncode(values);this._internalValueChange=true;this.set("value",value);this._internalValueChange=false},1)},_wwwFormUrlEncode:function(object){if(!object)return"";
-var pieces=[];Object.keys(object).forEach(function(key){var value=object[key];if(!value)if(!this._isKeyRequired(key))return;pieces.push(this._wwwFormUrlEncodePiece(key)+"\x3d"+this._wwwFormUrlEncodePiece(value))},this);return pieces.join("\x26")},_wwwFormUrlEncodePiece:function(str){if(!str)return"";return encodeURIComponent(str.toString().replace(/\r?\n/g,"\r\n")).replace(/%20/g,"+")},_wwwFormUrlDecode:function(str){if(!str)return"";return decodeURIComponent(str.toString().replace(/\+/g," "))},_isKeyRequired:function(key){if(!key)return false;
-var schema=this.schema;if(!schema||!schema.length)return false;for(var i=0,len=schema.length;i<len;i++)if(schema[i].key===key)return schema[i].required===true;return false},_valueChanged:function(opened,value){if(!opened||this._internalValueChange)return;if(!value)return this._updateValues({});var map=this._deserializeValues(value);this._updateValues(map)},_deserializeValues:function(data){if(!data||typeof data!=="string")return{};var params=data.split("\x26").map(function(pair){if(!pair)return null;
-var _param=pair.split("\x3d");if(!_param.length)return null;return{name:this._wwwFormUrlDecode(_param[0]),value:this._wwwFormUrlDecode(_param[1])}},this).filter(function(item){return!!item});var result={};params.forEach(function(item){result[item.name]=item.value});return result},_updateValues:function(map){map=map||{};var mapNames=Object.keys(map);var schema=this.schema;if(schema)schema.forEach(function(item,i){var _name=item.name;var _index=mapNames.indexOf(_name);if(_index===-1)this.set(["schema",
-i,"value"],"");else{this.set(["schema",i,"value"],map[_name]);mapNames.splice(_index,1)}},this);if(!mapNames.length)return;if(!this.userParams)this.userParams=[];var userParamsNames=this.userParams.map(function(item,i){if(mapNames.indexOf(item.name)===-1){this.splice("userParams",i,1);return null}return item.name},this).filter(function(item){return!!item});mapNames.forEach(function(item){var _index=userParamsNames.indexOf(item);if(_index!==-1)this.set(["userParams",_index,"value"],map[item]);else this.push("userParams",
-{name:item,value:map[item]})},this)},_removeUserParam:function(e){var rp=this.$$("template[user-params]");var index=rp.indexForElement(e.target);if(index===undefined||index===-1)return;this.splice("userParams",index,1)},_addUserParam:function(){if(!this.userParams)this.userParams=[];this.push("userParams",{name:"",value:""})}});</script></dom-module><dom-module id="cm-arc" assetpath="bower_components/code-mirror-styles/"><template><style>.CodeMirror.cm-s-cm-arc{font-family:var(--code-mirror-font-family, monospace);font-size:var(--code-mirror-font-size, 15px);height:var(--code-mirror-height, inherit);min-height:var(--code-mirror-minimum-height, 60px);padding:var(--code-mirror-padding, 8px);color:var(--code-mirror-color, #757575);background-color:var(--code-mirror-background-color, #fff);cursor:text;@apply (--code-mirror-editor);}.CodeMirror.cm-s-cm-arc.parsed-content{white-space:pre-line;}.cm-s-cm-arc .CodeMirror-lines{padding:4px 0;@apply (--code-mirror-editor-lines);}.CodeMirror.cm-s-cm-arc pre{padding:0 4px;@apply (--code-mirror-editor-pre-element);}.cm-s-cm-arc .CodeMirror-scrollbar-filler,
-    .cm-s-cm-arc .CodeMirror-gutter-filler{background-color:white;}.cm-s-cm-arc .CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap;}.cm-s-cm-arc .CodeMirror-linenumbers{}.cm-s-cm-arc .CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap;}.cm-s-cm-arc .CodeMirror-guttermarker{color:black;}.cm-s-cm-arc .CodeMirror-guttermarker-subtle{color:#999;}.CodeMirror.cm-s-cm-arc div.CodeMirror-cursor{border-left:1px solid black;}.CodeMirror.cm-s-cm-arc div.CodeMirror-secondarycursor{border-left:1px solid silver;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursors{z-index:1;}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;}@-webkit-keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}@keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}div.CodeMirror-overwrite div.CodeMirror-cursor{}.cm-tab{display:inline-block;text-decoration:inherit;}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute;}.cm-s-cm-arc .cm-keyword{color:#708;}.cm-s-cm-arc .cm-atom{color:#B71C1C;}.cm-s-cm-arc .cm-number{color:#164;}.cm-s-cm-arc .cm-def{color:#00f;}.cm-s-cm-arc .cm-variable,
-    .cm-s-cm-arc .cm-punctuation,
-    .cm-s-cm-arc .cm-property,
-    .cm-s-cm-arc .cm-operator{}.cm-s-cm-arc .cm-string.cm-property{color:#43A047;}.cm-s-cm-arc .cm-variable-2{color:#05a;}.cm-s-cm-arc .cm-variable-3{color:#085;}.cm-s-cm-arc .cm-comment{color:#a50;}.cm-s-cm-arc .cm-string{color:#009688;}.cm-s-cm-arc .cm-string-2{color:#f50;}.cm-s-cm-arc .cm-meta{color:#555;}.cm-s-cm-arc .cm-qualifier{color:#555;}.cm-s-cm-arc .cm-builtin{color:#30a;}.cm-s-cm-arc .cm-bracket{color:#997;}.cm-s-cm-arc .cm-tag{color:#170;}.cm-s-cm-arc .cm-attribute{color:#00c;}.cm-s-cm-arc .cm-header{color:blue;}.cm-s-cm-arc .cm-quote{color:#090;}.cm-s-cm-arc .cm-hr{color:#999;}.cm-s-cm-arc .cm-link{color:#00c;}.cm-negative{color:#d44;}.cm-positive{color:#292;}.cm-header,
-    .cm-strong{font-weight:bold;}.cm-em{font-style:italic;}.cm-link{text-decoration:underline;}.cm-strikethrough{text-decoration:line-through;}.cm-s-cm-arc .cm-error{color:#f00;}.cm-invalidchar{color:#f00;}.CodeMirror-composing{border-bottom:2px solid;}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0;}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22;}.CodeMirror-matchingtag{background:rgba(255, 150, 0, .3);}.CodeMirror-activeline-background{background:#e8f2ff;}.CodeMirror{position:relative;overflow:hidden;background:white;}.cm-s-cm-arc .CodeMirror-scroll{overflow:auto !important;margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:none;position:relative;}.CodeMirror-sizer{position:relative;border-right:30px solid transparent;}.CodeMirror-vscrollbar,
-    .CodeMirror-hscrollbar,
-    .CodeMirror-scrollbar-filler,
-    .CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll;}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll;}.CodeMirror-scrollbar-filler{right:0;bottom:0;}.CodeMirror-gutter-filler{left:0;bottom:0;}.CodeMirror-gutters{position:absolute;left:0;top:0;z-index:3;}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;margin-bottom:-30px;*zoom:1;*display:inline;}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;height:100%;}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4;}.CodeMirror-gutter-wrapper{-webkit-user-select:none;-moz-user-select:none;user-select:none;}.CodeMirror-lines{cursor:text;min-height:1px;}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal;}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0;}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto;}.CodeMirror-widget{}.CodeMirror-code{outline:none;}.CodeMirror-scroll,
-    .CodeMirror-sizer,
-    .CodeMirror-gutter,
-    .CodeMirror-gutters,
-    .CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box;}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden;}.CodeMirror-measure pre{position:static;}.CodeMirror div.CodeMirror-cursor{position:absolute;border-right:none;width:0;}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3;}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible;}.CodeMirror-selected{background:#d9d9d9;}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0;}.CodeMirror-crosshair{cursor:crosshair;}.CodeMirror ::selection{background:#d7d4f0;}.CodeMirror ::-moz-selection{background:#d7d4f0;}.cm-searching{background:#ffa;background:rgba(255, 255, 0, .4);}.CodeMirror span{*vertical-align:text-bottom;}.cm-force-border{padding-right:0.1px;}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden;}}.cm-tab-wrap-hack:after{content:'';}span.CodeMirror-selectedtext{background:none;}</style></template></dom-module><dom-module id="raml-body-editor-panel" assetpath="bower_components/raml-body-editor-panel/"><template><style>:host{display:block;@apply (--raml-body-editor-panel);--paper-tabs-content:{overflow:auto;};}.content-actions{@apply (--layout-horizontal);@apply (--layout-center);}.actions-divider{@apply (--layout-flex);}paper-icon-button[active]{background-color:var(--raml-body-editor-panel-button-active, #BDBDBD);}</style><div class="content-actions"><paper-icon-button icon="arc:content-copy" id="copyButton"></paper-icon-button><paper-icon-button icon="arc:list" id="formButton" toggles="" active="{{formView}}"></paper-icon-button><paper-tooltip for="copyButton">Copy current editor value to clipboard</paper-tooltip><paper-tooltip for="formButton">Toggle form / source editor view</paper-tooltip><template is="dom-if" if="[[_computeHasMany(mimeTypes)]]"><paper-dropdown-menu label="Select content type" no-label-float=""><paper-listbox class="dropdown-content" attr-for-selected="data-mime" selected="{{contentType}}"><template is="dom-repeat" items="[[mimeTypes]]"><paper-item data-mime$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><span class="actions-divider"></span><paper-menu-button horizontal-align="right"><paper-icon-button icon="arc:more-vert" class="dropdown-trigger"></paper-icon-button><paper-menu class="dropdown-content"><paper-item on-tap="clearForm">Clear form</paper-item></paper-menu></paper-menu-button></div><iron-pages selected="{{selected}}" attr-for-selected="data-editor" selected-attribute="opened"><div class="cm-tab-editor" data-editor="code-mirror"><code-mirror import-location="/bower_components/codemirror/" opened="" mode="[[cmMode]]" value="{{_valueCodeMirror}}" theme="cm-arc"></code-mirror></div><body-json-editor data-editor="json" narrow="[[narrow]]" value="{{_valueJson}}" type="[[selectedType]]"></body-json-editor><body-form-editor data-editor="form" value="{{_valueForm}}" type="[[selectedType]]"></body-form-editor></iron-pages></template><script>Polymer({is:"raml-body-editor-panel",properties:{selected:{type:String,value:"code-mirror",observer:"_selectedChanged"},value:{type:String,value:"",notify:true},cmMode:{type:String,value:"application/json",computed:"_computeCmMode(contentType)"},contentType:{type:String,notify:true},body:{type:Array,observer:"_bodyChanged"},mimeTypes:{type:Array,readOnly:true,observer:"_mimeTypesChanged"},selectedType:{type:Object,computed:"_computeSelectedType(contentType, body)"},selectedExample:{type:String,computed:"_computeSelectedExample(selectedType.*)"},
-_valueCodeMirror:String,_valueJson:String,_valueForm:String,_valueXml:String,narrow:{type:Boolean,value:false},formView:{type:Boolean,observer:"_formViewChanged"}},observers:["_valueChanged(value)","_editorCodeMirrorChanged(selected, _valueCodeMirror)","_editorJsonChanged(selected, _valueJson)","_editorFormChanged(selected, _valueForm)","_editorXmlChanged(selected, _valueXml)","_upgateBodyFromExample(selectedExample)"],attached:function(){this.listen(window,"content-type-changed","_ctHandler")},detached:function(){this.unlisten(window,
-"content-type-changed","_ctHandler")},ready:function(){this._isReady=true},notifyResize:function(){var cm=this.$$("code-mirror");if(!cm)return;cm.editor.refresh()},_selectedChanged:function(newVal,oldVal){if(oldVal===undefined)return;if(newVal==="code-mirror"){switch(oldVal){case "json":this.set("_valueCodeMirror",this._valueJson);break;case "xml":this.set("_valueCodeMirror",this._valueXml);break;case "form":this.set("_valueCodeMirror",this._valueForm);break}this.$$("code-mirror").editor.refresh()}else switch(newVal){case "json":this.set("_valueJson",
-this._valueCodeMirror);break;case "xml":this.set("_valueXml",this._valueCodeMirror);break;case "form":this.set("_valueForm",this._valueCodeMirror);break}},_editorCodeMirrorChanged:function(selected,value){if(selected!=="code-mirror")return;this.set("value",value)},_editorJsonChanged:function(selected,value){if(selected!=="json")return;this.set("value",value)},_editorFormChanged:function(selected,value){if(selected!=="form")return;this.set("value",value)},_editorXmlChanged:function(selected,value){if(selected!==
-"xml")return;this.set("value",value)},_ctHandler:function(e){this.set("contentType",e.detail.value)},_computeCmMode:function(contentType){return contentType},_valueChanged:function(value){this.fire("body-value-changed",{value:value})},_cleanBodySettings:function(){this._setMimeTypes(undefined)},_bodyChanged:function(body){this._cleanBodySettings();if(!body||!(body instanceof Array))return;var mimes=body.map(function(item){return item.key});this._setMimeTypes(mimes);if(mimes&&mimes.length)this.set("contentType",
-mimes[0])},_mimeTypesChanged:function(mimes){if(!mimes)return;if(mimes[0]!==this.contentType)this.fire("content-type-changed",{value:mimes[0]})},_computeHasMany:function(arr){return arr&&arr instanceof Array?arr.length>1:false},_computeSelectedType:function(mimeType,body){if(!mimeType||!body||!body.length)return;return this._getBodyForMime(mimeType,body)},_getBodyForMime:function(mime,body){body=body||this.body;if(!mime||!body||!body.length)return;for(var i=0,len=body.length;i<len;i++)if(body[i].key===
-mime)return body[i]},_formViewChanged:function(formView,oldVal){if(oldVal===undefined)return;if(formView){var ct=this.contentType;var toEditor;if(ct)if(ct.indexOf("json")!==-1)toEditor="json";else if(ct.indexOf("xml")!==-1)toEditor="xml";else{if(ct.indexOf("form-urlencoded")!==-1)toEditor="form"}else toEditor="json";this.set("selected",toEditor)}else this.set("selected","code-mirror")},clearForm:function(){switch(this.selected){case "code-mirror":this.set("_valueCodeMirror","");this.$$("code-mirror").editor.refresh();
-break;case "json":this.set("_valueJson","");break;case "xml":this.set("_valueXml","");break;case "form":this.set("_valueForm","");break}},_computeSelectedExample:function(record){if(!record||!record.base)return;var selectedType=record.base;if(selectedType.example)return selectedType.example;if(selectedType.examples&&selectedType.examples.length)return selectedType.examples[0]},_upgateBodyFromExample:function(newBody){if(!newBody)return;switch(this.selected){case "code-mirror":this.set("_valueCodeMirror",
-newBody);this.$$("code-mirror").editor.refresh();break;case "json":this.set("_valueJson",newBody);break;case "xml":this.set("_valueXml",newBody);break;case "form":this.set("_valueForm",newBody);break}}});</script></dom-module><dom-module id="arc-definitions" assetpath="bower_components/arc-definitions/"><template><style>:host{display:none;}</style><script id="content" type="application/json">{
+this.editor.getValue())},_importLocationChanegd:function(importLocation){if(importLocation[importLocation.length-1]!=="/")importLocation+="/";CodeMirror.modeURL=importLocation+"mode/%N/%N.js"},_getValidity:function(){if(this.required&&!this.value)return false;return true}})})();</script></dom-module><dom-module id="raw-payload-editor" assetpath="bower_components/raw-payload-editor/"><template><style>:host{display:block;@apply (--raw-payload-editor);}.encoder-buttons{margin:8px 0;@apply (--raw-payload-editor-encode-buttons);}*[hidden]{display:none !important;}</style><div class="encoder-buttons" hidden$="[[!encodeEnabled]]"><paper-button id="encodePayload" on-tap="encodeValue">encode payload</paper-button><paper-button id="decodePayload" on-tap="decodeValue">decode payload</paper-button><paper-tooltip animation-delay="200" for="encodePayload">Encodes payload to x-www-form-urlencoded data</paper-tooltip><paper-tooltip animation-delay="200" for="decodePayload">Decodes payload to human readable form</paper-tooltip></div><code-mirror import-location="/bower_components/codemirror/" mode="application/json" on-value-changed="_editorValueChanged" on-paste="_onPaste"></code-mirror></template><script>Polymer({is:"raw-payload-editor",behaviors:[ArcBehaviors.RequestPayloadEditorBehavior,Polymer.IronResizableBehavior],properties:{contentType:{type:String,observer:"_onContentTypeChanged"},encodeEnabled:{type:Boolean,computed:"_computeEncodeEnabled(contentType)",value:false}},observers:["_valueChanged(value)","__isOpenedChanged(_isOpened)"],listeners:{"iron-resize":"refresh"},attached:function(){this.listen(window,"content-type-changed","_contentTypeHandler")},detached:function(){this.unlisten(window,
+"content-type-changed","_contentTypeHandler")},__isOpenedChanged:function(isOpened){if(isOpened){this.__editorValueChange=false;this._valueChanged(this.value);this.refresh()}},refresh:function(){if(!this._isOpened)return;var elm=this.$$("code-mirror");if(!elm)return;elm.editor.refresh()},_onContentTypeChanged:function(ct){if(!ct)return;if(ct.indexOf&&ct.indexOf(";")!==-1)ct=ct.substr(0,ct.indexOf(";"));this.$$("code-mirror").mode=ct},_computeEncodeEnabled:function(ct){if(!ct)return false;if(ct.indexOf&&
+ct.indexOf("x-www-form-urlencoded")!==-1)return true;return false},_contentTypeHandler:function(e){var event=Polymer.dom(e);if(event.rootTarget===this)return;var ct=e.detail.value;this.set("contentType",ct)},_valueChanged:function(value){if(this._isOpened)if(this.__editorValueChange)this.fire("payload-value-changed",{value:value});else{this.$$("code-mirror").value=value;if(this.__internalChange)this.fire("payload-value-changed",{value:value})}},_editorValueChanged:function(e){e.stopPropagation();
+this.__editorValueChange=true;this.set("value",e.detail.value);this.__editorValueChange=false},_onPaste:function(e){if(this.contentType!=="application/json")return;var len;if(this.value)len=this.value.length;if(this._cancelPaste(len))return;var data=e.clipboardData.getData("text");try{data=JSON.parse(data);data=JSON.stringify(data,null,2);e.preventDefault();this.set("value",data)}catch(e$0){}},_cancelPaste:function(inputSize){if(!inputSize)return false;var el=document.activeElement;var start=0;var end=
+0;if(el){if(typeof el.selectionStart==="number")start=el.selectionStart;if(typeof el.selectionEnd==="number")end=el.selectionEnd}if(start===0&&end===0){var selection=window.getSelection();if(selection.rangeCount===0)return false;var range=selection.getRangeAt(0);start=range.startOffset;end=range.endOffset}if(start===0&&end===inputSize)return false;return true}});</script></dom-module><script>Polymer.PaperSpinnerBehavior={listeners:{"animationend":"__reset","webkitAnimationEnd":"__reset"},properties:{active:{type:Boolean,value:false,reflectToAttribute:true,observer:"__activeChanged"},alt:{type:String,value:"loading",observer:"__altChanged"},__coolingDown:{type:Boolean,value:false}},__computeContainerClasses:function(active,coolingDown){return[active||coolingDown?"active":"",coolingDown?"cooldown":""].join(" ")},__activeChanged:function(active,old){this.__setAriaHidden(!active);this.__coolingDown=
+!active&&old},__altChanged:function(alt){if(alt===this.getPropertyInfo("alt").value)this.alt=this.getAttribute("aria-label")||alt;else{this.__setAriaHidden(alt==="");this.setAttribute("aria-label",alt)}},__setAriaHidden:function(hidden){var attr="aria-hidden";if(hidden)this.setAttribute(attr,"true");else this.removeAttribute(attr)},__reset:function(){this.active=false;this.__coolingDown=false}};</script><dom-module id="paper-spinner-styles" assetpath="bower_components/paper-spinner/"><template><style>:host{display:inline-block;position:relative;width:28px;height:28px;--paper-spinner-container-rotation-duration:1568ms;--paper-spinner-expand-contract-duration:1333ms;--paper-spinner-full-cycle-duration:5332ms;--paper-spinner-cooldown-duration:400ms;}#spinnerContainer{width:100%;height:100%;direction:ltr;}#spinnerContainer.active{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite;animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite;}@-webkit-keyframes container-rotate{to{-webkit-transform:rotate(360deg);}}@keyframes container-rotate{to{transform:rotate(360deg);}}.spinner-layer{position:absolute;width:100%;height:100%;opacity:0;white-space:nowrap;border-color:var(--paper-spinner-color, --google-blue-500);}.layer-1{border-color:var(--paper-spinner-layer-1-color, --google-blue-500);}.layer-2{border-color:var(--paper-spinner-layer-2-color, --google-red-500);}.layer-3{border-color:var(--paper-spinner-layer-3-color, --google-yellow-500);}.layer-4{border-color:var(--paper-spinner-layer-4-color, --google-green-500);}.active .spinner-layer{-webkit-animation-name:fill-unfill-rotate;-webkit-animation-duration:var(--paper-spinner-full-cycle-duration);-webkit-animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);-webkit-animation-iteration-count:infinite;animation-name:fill-unfill-rotate;animation-duration:var(--paper-spinner-full-cycle-duration);animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);animation-iteration-count:infinite;opacity:1;}.active .spinner-layer.layer-1{-webkit-animation-name:fill-unfill-rotate, layer-1-fade-in-out;animation-name:fill-unfill-rotate, layer-1-fade-in-out;}.active .spinner-layer.layer-2{-webkit-animation-name:fill-unfill-rotate, layer-2-fade-in-out;animation-name:fill-unfill-rotate, layer-2-fade-in-out;}.active .spinner-layer.layer-3{-webkit-animation-name:fill-unfill-rotate, layer-3-fade-in-out;animation-name:fill-unfill-rotate, layer-3-fade-in-out;}.active .spinner-layer.layer-4{-webkit-animation-name:fill-unfill-rotate, layer-4-fade-in-out;animation-name:fill-unfill-rotate, layer-4-fade-in-out;}@-webkit-keyframes fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);}25%{-webkit-transform:rotate(270deg);}37.5%{-webkit-transform:rotate(405deg);}50%{-webkit-transform:rotate(540deg);}62.5%{-webkit-transform:rotate(675deg);}75%{-webkit-transform:rotate(810deg);}87.5%{-webkit-transform:rotate(945deg);}to{-webkit-transform:rotate(1080deg);}}@keyframes fill-unfill-rotate{12.5%{transform:rotate(135deg);}25%{transform:rotate(270deg);}37.5%{transform:rotate(405deg);}50%{transform:rotate(540deg);}62.5%{transform:rotate(675deg);}75%{transform:rotate(810deg);}87.5%{transform:rotate(945deg);}to{transform:rotate(1080deg);}}@-webkit-keyframes layer-1-fade-in-out{0%{opacity:1;}25%{opacity:1;}26%{opacity:0;}89%{opacity:0;}90%{opacity:1;}to{opacity:1;}}@keyframes layer-1-fade-in-out{0%{opacity:1;}25%{opacity:1;}26%{opacity:0;}89%{opacity:0;}90%{opacity:1;}to{opacity:1;}}@-webkit-keyframes layer-2-fade-in-out{0%{opacity:0;}15%{opacity:0;}25%{opacity:1;}50%{opacity:1;}51%{opacity:0;}to{opacity:0;}}@keyframes layer-2-fade-in-out{0%{opacity:0;}15%{opacity:0;}25%{opacity:1;}50%{opacity:1;}51%{opacity:0;}to{opacity:0;}}@-webkit-keyframes layer-3-fade-in-out{0%{opacity:0;}40%{opacity:0;}50%{opacity:1;}75%{opacity:1;}76%{opacity:0;}to{opacity:0;}}@keyframes layer-3-fade-in-out{0%{opacity:0;}40%{opacity:0;}50%{opacity:1;}75%{opacity:1;}76%{opacity:0;}to{opacity:0;}}@-webkit-keyframes layer-4-fade-in-out{0%{opacity:0;}65%{opacity:0;}75%{opacity:1;}90%{opacity:1;}to{opacity:0;}}@keyframes layer-4-fade-in-out{0%{opacity:0;}65%{opacity:0;}75%{opacity:1;}90%{opacity:1;}to{opacity:0;}}.circle-clipper{display:inline-block;position:relative;width:50%;height:100%;overflow:hidden;border-color:inherit;}.spinner-layer::after{left:45%;width:10%;border-top-style:solid;}.spinner-layer::after,
+      .circle-clipper::after{content:'';box-sizing:border-box;position:absolute;top:0;border-width:var(--paper-spinner-stroke-width, 3px);border-color:inherit;border-radius:50%;}.circle-clipper::after{bottom:0;width:200%;border-style:solid;border-bottom-color:transparent !important;}.circle-clipper.left::after{left:0;border-right-color:transparent !important;-webkit-transform:rotate(129deg);transform:rotate(129deg);}.circle-clipper.right::after{left:-100%;border-left-color:transparent !important;-webkit-transform:rotate(-129deg);transform:rotate(-129deg);}.active .gap-patch::after,
+      .active .circle-clipper::after{-webkit-animation-duration:var(--paper-spinner-expand-contract-duration);-webkit-animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);-webkit-animation-iteration-count:infinite;animation-duration:var(--paper-spinner-expand-contract-duration);animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);animation-iteration-count:infinite;}.active .circle-clipper.left::after{-webkit-animation-name:left-spin;animation-name:left-spin;}.active .circle-clipper.right::after{-webkit-animation-name:right-spin;animation-name:right-spin;}@-webkit-keyframes left-spin{0%{-webkit-transform:rotate(130deg);}50%{-webkit-transform:rotate(-5deg);}to{-webkit-transform:rotate(130deg);}}@keyframes left-spin{0%{transform:rotate(130deg);}50%{transform:rotate(-5deg);}to{transform:rotate(130deg);}}@-webkit-keyframes right-spin{0%{-webkit-transform:rotate(-130deg);}50%{-webkit-transform:rotate(5deg);}to{-webkit-transform:rotate(-130deg);}}@keyframes right-spin{0%{transform:rotate(-130deg);}50%{transform:rotate(5deg);}to{transform:rotate(-130deg);}}#spinnerContainer.cooldown{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite, fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(0.4, 0.0, 0.2, 1);animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite, fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(0.4, 0.0, 0.2, 1);}@-webkit-keyframes fade-out{0%{opacity:1;}to{opacity:0;}}@keyframes fade-out{0%{opacity:1;}to{opacity:0;}}</style></template></dom-module><dom-module id="paper-spinner" assetpath="bower_components/paper-spinner/"><template strip-whitespace=""><style include="paper-spinner-styles"></style><div id="spinnerContainer" class-name="[[__computeContainerClasses(active, __coolingDown)]]"><div class="spinner-layer layer-1"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-2"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-3"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-4"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div></div></template><script>Polymer({is:"paper-spinner",behaviors:[Polymer.PaperSpinnerBehavior]});</script></dom-module><script>Polymer({is:"multipart-payload-transformer",properties:{formData:Object,boundary:{type:String,notify:true},contentType:{type:String,notify:true}},generateMessage:function(){var request=new Request("/",{method:"POST",body:this.formData});var ct=request.headers.get("content-type");this._processContentType(ct);if(!request.arrayBuffer)return Promise.reject(new Error("Your browser do not support this method."));return request.arrayBuffer()},_processContentType:function(contentType){this.set("contentType",
+contentType);this.fire("content-type-changed",{value:contentType});var match=contentType.match(/boundary=(.*)/);if(!match)return;var boundary=match[1];this.set("boundary",boundary);this.fire("multipart-boundary-changed",{value:boundary})},generatePreview:function(){if(!this.formData)return Promise.reject(new Error("The FormData property is not set."));return this.generateMessage().then(function(ab){return this._previewFromBuffer(ab)}.bind(this))},_previewFromBuffer:function(buffer){return this.arrayBufferToString(buffer)},
+arrayBufferToString:function(buffer){if(!!buffer.buffer){var b=buffer.slice(0);buffer=b.buffer}if("TextDecoder"in window){var decoder=new TextDecoder("utf-8");var view=new DataView(buffer);return decoder.decode(view)}var array=new Uint8Array(buffer);var str="";for(var i=0;i<array.length;++i)str+=String.fromCharCode(array[i]);return str}});</script><script>(function(){window.ArcBehaviors=window.ArcBehaviors||{};window.ArcBehaviors.MultipartFormItemBehaviorImpl={properties:{name:{type:String,notify:true},value:{notify:true,type:String},model:Object,docsOpened:Boolean},toggleDocumentation:function(){this.docsOpened=!this.docsOpened}};window.ArcBehaviors.MultipartFormItemBehavior=[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior,window.ArcBehaviors.MultipartFormItemBehaviorImpl]})();</script><dom-module id="multipart-text-form-item" assetpath="bower_components/multipart-payload-editor/"><template><style include="markdown-styles"></style><style>:host{display:block;@apply --layout-flex;}.multipart-item{@apply --layout-vertical;@apply --layout-flex;}.mime-selector{position:relative;}.value-selector{@apply --layout-horizontal;@apply --layout-center;}raml-type-form-input{@apply --layout-flex;margin-left:12px;}.mime-selector paper-input{max-width:360px;}.name-field{max-width:360px;@apply --layout-flex;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}.docs{@apply --arc-font-common-base;font-size:13px !important;font-weight:200;line-height:24px;color:var(--inline-documentation-color, rgba(0, 0, 0, 0.87));}.help-icon{color:var(--from-row-action-icon-color, var(--icon-button-color, rgba(0, 0, 0, 0.74)));transition:color 0.2s linear;}.help-icon:hover{color:var(--from-row-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}paper-autocomplete{top:34px;}</style><div class="multipart-item"><template is="dom-if" if="[[hasFormData]]"><div class="mime-selector"><paper-input label="Content type (Optional)" value="{{contentType}}" no-label-float=""></paper-input><paper-autocomplete target="[[_mimeInput]]" source="[[suggestions]]" open-on-focus=""></paper-autocomplete></div></template><div class="value-selector"><paper-input class="name-field" label="Field name" error-message="The name is required" required="" auto-validate="" value="{{name}}" no-label-float=""></paper-input><raml-type-form-input model="[[model]]" name="[[name]]" value="{{value}}" no-label-float=""></raml-type-form-input><template is="dom-if" if="[[model.hasDescription]]"><span><paper-icon-button class="help-icon" suffix="" icon="arc:help-outline" hidden$="[[!model.hasDescription]]" on-tap="toggleDocumentation"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Display documentation</paper-tooltip></span></template></div></div><template is="dom-if" if="[[model.hasDescription]]" restamp=""><div class="docs"><iron-collapse opened="[[docsOpened]]"><marked-element markdown="[[model.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></template><script>Polymer({is:"multipart-text-form-item",behaviors:[ArcBehaviors.MultipartFormItemBehavior],properties:{_mimeInput:{type:HTMLElement},contentType:{type:String,notify:true},suggestions:{type:Array,value:function(){return["multipart-form-data","application/x-www-form-urlencoded","application/json","application/xml","application/base64","application/octet-stream","text/plain","text/css","text/html","application/javascript"]}},hasFormData:Boolean},observers:["_hasFormDataChanged(hasFormData)"],ready:function(){if(this.hasFormData)this._setAutocompleteTarget()},
+_getValidity:function(){return!!(this.name&&this.value)},_hasFormDataChanged:function(hasFormData){if(hasFormData)this._setAutocompleteTarget();else this.set("_mimeInput",undefined)},_setAutocompleteTarget:function(){Polymer.RenderStatus.afterNextRender(this,function(){this.set("_mimeInput",this.$$(".mime-selector paper-input"))})}});</script></dom-module><dom-module id="multipart-file-form-item" assetpath="bower_components/multipart-payload-editor/"><template><style include="markdown-styles"></style><style>:host{display:block;}*[hidden]{display:none !important;}.file-row{margin:8px 0;}.controls{@apply (--layout-horizontal);@apply (--layout-flex);@apply (--layout-center);}.controls > *:not(:last-child){margin-right:12px;}.file-trigger,
+    .param-name{margin-right:12px;}.file-trigger{color:var(--multipart-payload-editor-file-trigger-color, var(--accent-color, #FF5722));}.param-value{@apply (--layout-flex);}.file-list-names{@apply (--layout-flex);}.files-counter-message{color:rgba(0, 0, 0, 0.74);@apply (--layout-flex);@apply (--arc-font-body1);}.files-list{@apply (--arc-font-body1);}.files-list span{margin-right:8px;}.name-field{max-width:360px;@apply (--layout-flex);}.error{color:#F44336;}.delete-icon{color:var(--inline-fom-action-icon-color, rgba(0, 0, 0, 0.74));transition:color 0.2s linear;}.delete-icon:hover{color:var(--inline-fom-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}</style><div class="file-row"><div class="controls"><paper-input error-message="The name is required" label="Field name" required="" auto-validate="" value="{{name}}" class="name-field"></paper-input><paper-button raised="" on-tap="_selectFile" class="file-trigger">Choose file</paper-button><template is="dom-if" if="[[hasFile]]"><span class="files-counter-message" hidden$="[[!hasFile]]">[[value.name]] ([[value.size]] bytes)</span></template><template is="dom-if" if="[[model.hasDescription]]"><span><paper-icon-button class="help-icon" suffix="" icon="arc:help" hidden$="[[!model.hasDescription]]" on-tap="toggleDocumentation"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Display documentation</paper-tooltip></span></template></div><template is="dom-if" if="[[model.hasDescription]]" restamp=""><div class="docs"><iron-collapse opened="[[docsOpened]]"><marked-element markdown="[[model.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></div><input type="file" hidden="" on-change="_fileObjectChanged" accept$="[[_computeAccept(model)]]"></template><script>Polymer({is:"multipart-file-form-item",behaviors:[ArcBehaviors.MultipartFormItemBehavior],properties:{hasFile:{type:Boolean,computed:"_computeHasFile(value)"}},_getValidity:function(){return!!(this.name&&this.value instanceof Blob)},_computeHasFile:function(value){return!!(value&&value instanceof Blob)},_selectFile:function(){var file=this.$$('input[type\x3d"file"]');file.click()},_fileObjectChanged:function(e){this.set("value",e.target.files[0])},_computeAccept:function(model){if(!model)return;if(model.fileTypes&&
+model.fileTypes.length&&typeof model.fileTypes[0]==="string")return model.fileTypes.join(",");if(model.fixedFacets)if(model.fixedFacets.fileTypes&&model.fixedFacets.fileTypes.length)return model.fixedFacets.fileTypes.join(",")}});</script></dom-module><script>Prism.languages.http={"request-line":{pattern:/^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\shttps?:\/\/\S+\sHTTP\/[0-9.]+/m,inside:{property:/^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\b/,"attr-name":/:\w+/}},"response-status":{pattern:/^HTTP\/1.[01] \d+.*/m,inside:{property:{pattern:/(^HTTP\/1.[01] )\d+.*/i,lookbehind:!0}}},"header-name":{pattern:/^[\w-]+:(?=.)/m,alias:"keyword"}};var httpLanguages={"application/json":Prism.languages.javascript,"application/xml":Prism.languages.markup,"text/xml":Prism.languages.markup,"text/html":Prism.languages.markup};for(var contentType in httpLanguages)if(httpLanguages[contentType]){var options={};options[contentType]={pattern:new RegExp("(content-type:\\s*"+contentType+"[\\w\\W]*?)(?:\\r?\\n|\\r){2}[\\w\\W]*","i"),lookbehind:!0,inside:{rest:httpLanguages[contentType]}},Prism.languages.insertBefore("http","header-name",options)}</script><dom-module id="multipart-payload-editor" assetpath="bower_components/multipart-payload-editor/"><template strip-whitespace=""><style include="prism-theme-default"></style><style>:host{display:block;@apply --multipart-payload-editor;}[hidden]{display:none !important;}.form-item{@apply --layout-horizontal;margin:8px 0;}.delete-action{display:block;margin-top:20px;}.form-item:not([data-file]) .delete-action{margin-top:42px;}.delete-icon{color:var(--from-row-action-icon-color, var(--icon-button-color, rgba(0, 0, 0, 0.74)));transition:color 0.2s linear;}.delete-icon:hover{color:var(--from-row-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}multipart-text-form-item,
+    multipart-file-form-item{margin-bottom:8px;}code{@apply --arc-font-code1;white-space:pre-line;word-break:break-all;overflow:auto;@apply --multipart-payload-editor-code-preview;}.editor-actions{@apply --layout-horizontal;@apply --layout-center;@apply --view-action-bar;@apply --multipart-payload-editor-action-bar;}paper-icon-button[active]{background-color:var(--body-editor-panel-button-active-background-color, #e0e0e0);border-radius:50%;@apply --body-editor-panel-button-active;}.content-action-button{color:var(--content-action-icon-color, rgba(0, 0, 0, 0.74));transition:color 0.2s linear;}.content-action-button:hover{color:var(--content-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.action-button{color:var(--multipart-payload-editor-action-button-color, var(--secondary-button-color, --accent-color));background:var(--multipart-payload-editor-action-button-background, var(--secondary-button-background, #fff));@apply --secondary-button;@apply --multipart-payload-editor-action-button;}.action-button:hover{color:var(--multipart-payload-editor-action-button-color-hover, var(--secondary-button-color, --accent-color));background:var(--rmultipart-payload-editor-action-button-background-hover, var(--secondary-button-background, #fff));@apply --secondary-button-hover;@apply --multipart-payload-editor-action-button-hover;}</style><template is="dom-if" if="[[hasFormDataSupport]]"><div class="editor-actions"><paper-icon-button id="previewIcon" icon="[[_computeToggleIcon(previewOpened)]]" class="content-action-button" toggles="" active="{{previewOpened}}" disabled="[[generatingPreview]]"></paper-icon-button><paper-icon-button id="copyIcon" icon="arc:content-copy" class="content-action-button" on-tap="_copyToClipboard" disabled="[[generatingPreview]]" hidden$="[[!previewOpened]]"></paper-icon-button><paper-spinner alt="Loading preview" active="[[generatingPreview]]"></paper-spinner><paper-tooltip for="previewIcon" animation-delay="200">Toggles generated payload message preview</paper-tooltip><paper-tooltip for="copyIcon" animation-delay="200">Copy payload message</paper-tooltip></div></template><section hidden$="[[previewOpened]]"><form is="iron-form" id="form" enctype="multipart/form-data" method="post"><template is="dom-repeat" id="list" items="{{model}}" observe="value"><div class="form-item" data-file$="[[item.isFile]]"><template is="dom-if" if="[[item.isFile]]"><multipart-file-form-item name="{{item.name}}" value="{{item.value}}" model="[[item]]" required="" auto-validate=""></multipart-file-form-item></template><template is="dom-if" if="[[!item.isFile]]"><multipart-text-form-item has-form-data="[[hasFormDataSupport]]" name="{{item.name}}" value="{{item.value}}" content-type="{{item.contentType}}" model="[[item]]" required="" auto-validate=""></multipart-text-form-item></template><span class="delete-action"><paper-icon-button icon="arc:close" on-tap="_removeItem" class="delete-icon"></paper-icon-button><paper-tooltip animation-delay="200">Remove this form parameter</paper-tooltip></span></div></template></form><div class="add-actions"><paper-button on-tap="addFile" class="action-button">Add file part</paper-button><paper-button on-tap="addText" class="action-button">Add text part</paper-button></div></section><section hidden$="[[!previewOpened]]"><code></code></section><prism-highlighter></prism-highlighter><multipart-payload-transformer></multipart-payload-transformer><clipboard-copy content="[[messagePreview]]"></clipboard-copy><paper-toast horizontal-align="right"></paper-toast></template><script>Polymer({is:"multipart-payload-editor",behaviors:[ArcBehaviors.RamlTypeFormBehavior,ArcBehaviors.RequestPayloadEditorBehavior],properties:{model:Array,value:{type:Object,notify:true},ramlType:Object,hasFormDataSupport:{type:Boolean,value:function(){try{var fd=new FormData;fd.append("test",new Blob(["."],{type:"image/jpg"}),"test.jpg");return"entries"in fd}catch(e){return false}}},previewOpened:{type:Boolean,value:false},generatingPreview:Boolean,messagePreview:String},observers:["_valueChanged(value, _isOpened)",
+"_modelChanged(model.*, _isOpened)","__isOpenedChanged(_isOpened)","_previewOpenedChanged(previewOpened)","_modelFromRaml(_isOpened, ramlType)"],__isOpenedChanged:function(opened){if(opened&&!this.model)this.addFile()},addFile:function(){var item={name:"",value:"",type:"file"};item=this._createModelObject(item,{});item.isFile=true;if(!this.model)this.set("model",[item]);else this.push("model",item)},addText:function(){var item={name:"",value:"",type:"text"};item=this._createModelObject(item,{});item.isFile=
+false;if(this.hasFormDataSupport)item.contentType="";if(!this.model)this.set("model",[item]);else this.push("model",item)},_valueChanged:function(value,_isOpened){if(!_isOpened)return;var model=[];if(this.model)this.model.forEach(function(item){model.push({name:item.name,value:item.value,contentType:item.contentType,isFile:item.isFile})});this.fire("payload-value-changed",{value:value,model:model})},_previewOpenedChanged:function(opened){if(opened){if(!this.value){var toast=this.$$("paper-toast");
+toast.text="Add a valid form items first";toast.opened=true;this.previewOpened=false;return}this._generatePreview().then(function(preview){if(!preview){this.previewOpened=false;return}var event=this.fire("syntax-highlight",{code:preview,lang:"http"},{composed:true});this.$$("code").innerHTML=event.detail.code||preview}.bind(this))}},_computeToggleIcon:function(previewOpened){return previewOpened?"arc:visibility-off":"arc:visibility"},removeItem:function(index){this.splice("model",index,1)},_removeItem:function(e){e.stopPropagation();
+var index=e.model.get("index");this.removeItem(index)},_modelChanged:function(record,_isOpened){if(!_isOpened)return;if(!record||!record.path)return;if(record.path==="model.splices")return;var formData=this.createFormData(record.base);this.set("value",formData)},createFormData:function(model){if(this.hasFormDataSupport)return this._getFormData(model);else return this._getLegacyFormData(model)},_getFormData:function(model){if(!model||!model.length)return;var fd=new FormData;var hasValue=false;model.forEach(function(item){if(!item.name)return;
+if(item.isFile){if(!item.value)return;fd.append(item.name,item.value);hasValue=true}else{if(item.contentType){var blob=new Blob([item.value],{type:item.contentType});fd.append(item.name,blob)}else fd.append(item.name,item.value);hasValue=true}});return hasValue?fd:undefined},_getLegacyFormData:function(model){if(!model||!model.length)return;var values=model.map(function(item){if(!item.name)return;return item.value});var hasValue=false;for(var i=0,len=values.length;i<len;i++)if(!!values[i]){hasValue=
+true;break}return hasValue?new FormData(this.$.form):undefined},_generatePreview:function(){this.set("messagePreview",undefined);this.set("generatingPreview",true);var transformer=this.$$("multipart-payload-transformer");transformer.formData=this.value;return transformer.generatePreview().then(function(preview){this.set("generatingPreview",false);this.set("messagePreview",preview);return preview}.bind(this)).catch(function(cause){this.set("generatingPreview",false);var toast=this.$$("paper-toast");
+toast.text=cause.message;toast.opened=true}.bind(this))},_copyToClipboard:function(){var elm=this.$$("clipboard-copy");if(elm.copy())this.$$("#copyIcon").icon="arc:done";else{this.$$("#copyIcon").icon="arc:error";var toast=this.$$("paper-toast");toast.text="Copy command is disabled in your browser.";toast.opened=true}if(this.__copyButtonAsync)this.cancelAsync(this.__copyButtonAsync);this.__copyButtonAsync=this.async(function(){this.$$("#copyIcon").icon="arc:content-copy";this.__copyButtonAsync=undefined},
+1E3)},_modelFromRaml:function(_isOpened,ramlType){if(!_isOpened||!ramlType||!ramlType.properties)return;var model=ramlType.properties.map(function(value){var model=this._createModelObject(value,{});model.isFile=model.type==="file";return model},this);this.set("model",model)}});</script></dom-module><dom-module id="files-payload-editor" assetpath="bower_components/files-payload-editor/"><template><style>:host{display:block;padding:12px 0;@apply (--files-payload-editor);}.selector{@apply (--layout-horizontal);@apply (--layout-center);}.list{margin:0 0.29em;display:inline-block;margin-top:12px;}paper-material{padding:0.4em 0.57em;@apply (--layout-horizontal);@apply (--layout-center);@apply (--files-payload-editor-file-item);}.file-trigger{margin-right:12px;color:var(--files-payload-editor-file-trigger-color, var(--accent-color, #FF5722));}.files-counter-message{@apply (--layout-flex);@apply (--arc-font-body1);color:var(--files-payload-editor-file-summary-color, rgba(0,0,0,0.74));}.file-icon{color:var(--files-payload-editor-selected-file-icon-color, var(--accent-color, #2196F3));}.delete-icon{color:var(--inline-fom-action-icon-color, rgba(0, 0, 0, 0.74));transition:color 0.2s linear;}.delete-icon:hover{color:var(--inline-fom-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.file-name{@apply (--arc-font-body1);margin-left:8px;color:var(--files-payload-editor-selected-file-name-color, rgba(0,0,0,0.74));}</style><div class="selector"><paper-button raised="" on-tap="_selectFile" class="file-trigger">Choose a file</paper-button><template is="dom-if" if="[[hasFile]]"><span class="files-counter-message" hidden$="[[!hasFile]]">1 file selected, [[fileSize]] bytes</span></template></div><template is="dom-if" if="[[hasFile]]"><div class="list"><paper-material elevation="1"><iron-icon class="file-icon" icon="arc:insert-drive-file"></iron-icon><span class="file-name">[[fileName]]</span><paper-icon-button class="delete-icon" icon="arc:close" hidden$="[[!hasFile]]" title="Clear file" on-tap="removeFile"></paper-icon-button></paper-material></div></template><input type="file" hidden="" on-change="_fileObjectChanged"></template><script>Polymer({is:"files-payload-editor",behaviors:[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior,ArcBehaviors.RequestPayloadEditorBehavior],properties:{hasFile:{type:Boolean,readOnly:true},base64Encode:Boolean,fileName:String,fileSize:Number},observers:["_valueChnaged(value, _isOpened)"],_valueChnaged:function(value,_isOpened){this._setHasFile(!!value);if(!_isOpened)return;this.fire("payload-value-changed",{value:value});if(!value)return;if(value instanceof Blob){this.set("fileName",
+value.name||"blob");this.set("fileSize",value.size)}if(!this.fileName||!this.fileSize&&this.fileSize!==0){this._updateFileMeta(value);return}var type;if(value.type)type=value.type;else type="application/octet-stream";this.fire("content-type-changed",{value:type})},_updateFileMeta:function(value){if(!value||value instanceof Blob)return;var type;if(value.indexOf("data:")===0){value=value.substr(5);var comaIndex=value.indexOf(",");type=value.substr(0,value.indexOf(";"));value=value.substr(comaIndex+
+1)}var byteChars;try{byteChars=atob(value)}catch(e){console.info("Unable to decode base64 string")}type=type||"application/octet-stream";this.fire("content-type-changed",{value:type});this.set("fileName","blob");this.set("fileSize",byteChars?byteChars.length:-1)},_selectFile:function(){var file=this.$$('input[type\x3d"file"]');file.click()},_fileObjectChanged:function(e){this._setFileValue(e.target.files[0]);this.$$(".file-trigger").blur()},_setFileValue:function(file){if(!file){this.set("value",
+undefined);return}if(!this.base64Encode){this.set("value",file);return}var reader=new FileReader;var context=this;reader.addEventListener("load",function(){var typed=new Uint8Array(this.result);var result=btoa(String.fromCharCode.apply(null,typed));context.set("value",result);context.__informBase64Conversion()});reader.addEventListener("error",function(){context.set("value","Invalid file");context.__informBase64Conversion()});reader.readAsArrayBuffer(file)},__informBase64Conversion:function(){this.fire("base64-value-set",
+{},{bubbles:false})},_getValidity:function(){return this._computeHasFile(this.value)},_computeHasFile:function(file){if(!file)return false;var enc=this.base64Encode;if(enc)return!!file;return file instanceof Blob},removeFile:function(){this.value=undefined;this.fileName=undefined;this.fileSize=undefined;this._setHasFile(false);var file=this.$$('input[type\x3d"file"]');file.value=""}});</script></dom-module><dom-module id="raml-body-editor-panel" assetpath="bower_components/raml-body-editor-panel/"><template><style>:host{display:block;@apply --raml-body-editor-panel;}.content-actions{@apply --layout-horizontal;@apply --layout-center;@apply --raml-body-editor-panel-content-actions;}paper-icon-button[active]{background-color:var(--raml-body-editor-panel-button-active, #e0e0e0);border-radius:50%;@apply (--raml-body-editor-panel-button-active);}</style><div class="content-actions"><paper-icon-button icon="arc:content-copy" id="copyButton" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button icon="arc:list" id="formButton" toggles="" active="{{formView}}" hidden$="[[formEditorDisabled]]"></paper-icon-button><paper-tooltip for="copyButton">Copy current editor value to clipboard</paper-tooltip><paper-tooltip for="formButton">Toggle form / source editor view</paper-tooltip><template is="dom-if" if="[[_computeHasMany(mimeTypes)]]"><paper-dropdown-menu label="Select content type" no-label-float=""><paper-listbox class="dropdown-content" attr-for-selected="data-mime" selected="{{contentType}}"><template is="dom-repeat" items="[[mimeTypes]]"><paper-item data-mime$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template></div><iron-pages selected="{{openedEditor}}" selected-attribute="opened"><raw-payload-editor attr-for-opened="opened" value="{{value}}" content-type="[[contentType]]"></raw-payload-editor><form-data-editor attr-for-opened="opened" narrow="[[narrow]]" value="{{value}}" raml-type="[[selectedType]]"></form-data-editor><multipart-payload-editor attr-for-opened="opened" value="{{value}}" raml-type="[[selectedType]]"></multipart-payload-editor><files-payload-editor attr-for-opened="opened" value="{{value}}" on-content-type-changed="_handleFileTypeChange"></files-payload-editor><body-json-editor attr-for-opened="opened" narrow="[[narrow]]" value="{{value}}" raml-type="[[selectedType]]"></body-json-editor></iron-pages><clipboard-copy></clipboard-copy></template><script>Polymer({is:"raml-body-editor-panel",properties:{openedEditor:{type:Number,value:0,observer:"_openedEditorChanged"},value:{type:String,value:"",notify:true},contentType:{type:String,notify:true,observer:"_contentTypeChanged"},body:{type:Array,observer:"_bodyChanged"},mimeTypes:{type:Array,readOnly:true,observer:"_mimeTypesChanged"},selectedType:{type:Object,readOnly:true},selectedExample:{type:String,readOnly:true},narrow:{type:Boolean,value:false},formView:{type:Boolean,observer:"_formViewChanged"},
+formEditorDisabled:Boolean},observers:["_valueChanged(value)","_updateBodyFromExample(selectedExample)","_computeSelectedType(contentType, body)","_computeSelectedExample(selectedType)"],attached:function(){this.listen(window,"content-type-changed","_ctHandler")},detached:function(){this.unlisten(window,"content-type-changed","_ctHandler")},notifyResize:function(){if(this.openedEditor!==0)return;var cm=this.$$("raw-payload-editor");this.toggleAttribute("opened",false,cm);Polymer.RenderStatus.afterNextRender(this,
+function(){this.toggleAttribute("opened",true,cm)})},_contentTypeChanged:function(contentType){var ramlType=this.selectedType;if(!ramlType||!ramlType.type||ramlType.type!=="file")if(this.value instanceof Blob)this.set("value","");this._setViewOpened(contentType,this.value,this.formView)},_setViewOpened:function(contentType,value,formView){contentType=contentType||"";value=value||"";if(this.__isFormDataType(contentType)){this.formEditorDisabled=true;this.openedEditor=2;return}if(this.__isFileType(contentType,
+value,this.selectedType)){if(!(value instanceof Blob))this.set("value","");this.formEditorDisabled=true;this.openedEditor=3;return}if(value instanceof FormData){this.set("value","");this._updateBodyFromExample(this.selectedExample)}if(contentType.indexOf("json")!==-1){this.formEditorDisabled=false;this.openedEditor=formView?4:0;return}if(contentType==="application/x-www-form-urlencoded"){this.formEditorDisabled=false;this.openedEditor=formView?1:0;return}this.formEditorDisabled=true;this.openedEditor=
+0},__isFileType:function(contentType,value,ramlType){if(contentType==="application/octet-stream")return true;if(value instanceof Blob)return true;if(ramlType&&ramlType.type&&ramlType.type==="file")return true;return false},__isFormDataType:function(contentType){return contentType&&contentType.indexOf("multipart/form-data")===0},_editorFormChanged:function(selected,value){if(selected!=="form")return;this.set("value",value)},_ctHandler:function(e){this.set("contentType",e.detail.value)},_valueChanged:function(value){this.fire("body-value-changed",
+{value:value});this._setViewOpened(this.contentType,value,this.formView)},_bodyChanged:function(body,oldBody){this._setMimeTypes(undefined);this._setSelectedType(undefined);this._setSelectedExample(undefined);if(!body||!(body instanceof Array)){if(oldBody)this.set("value","");return}var mimes=body.map(function(item){return item.key});this._setMimeTypes(mimes);if(mimes&&mimes.length)this.set("contentType",mimes[0])},_mimeTypesChanged:function(mimes){if(!mimes)return;if(mimes[0]!==this.contentType)this.fire("content-type-changed",
+{value:mimes[0]})},_computeHasMany:function(arr){return arr&&arr instanceof Array?arr.length>1:false},_computeSelectedType:function(mimeType,body){if(!mimeType||!body||!body.length)return;var type=this._getBodyForMime(mimeType,body);this._setSelectedType(type)},_getBodyForMime:function(mime,body){body=body||this.body;if(!mime||!body||!body.length)return;for(var i=0,len=body.length;i<len;i++)if(body[i].key===mime)return body[i]},_formViewChanged:function(formView,oldVal){if(oldVal===undefined)return;
+this._setViewOpened(this.contentType,this.value,formView);this.fire("send-analytics",{type:"event",category:"raml-body-editor",action:"Toggle form view",label:String(formView)})},_computeSelectedExample:function(type){var example;if(type&&type.example)example=type.example;else if(type&&type.examples&&type.examples.length)example=type.examples[0];this._setSelectedExample(example)},_updateBodyFromExample:function(newBody){if(!newBody)return;this.set("value",newBody)},_copyToClipboard:function(e){var button=
+Polymer.dom(e).localTarget;var copy=this.$$("clipboard-copy");copy.content=this.value;if(copy.copy())button.icon="arc:done";else{button.icon="arc:error";this.fire("send-analytics",{type:"exception",description:"Copy to clipboard error - raml-body-editor",fatal:false})}this.async(function(){this._resetCopyButtonState(button)},1E3);this.fire("send-analytics",{type:"event",category:"raml-body-editor",action:"Copy to clipboard"})},_resetCopyButtonState:function(button){button.icon="arc:content-copy"},
+_handleFileTypeChange:function(e){e.preventDefault();e.stopPropagation()},_openedEditorChanged:function(newValue,oldVal){if(oldVal===undefined)return;var label;switch(newValue){case 0:label="Raw data";break;case 1:label="URL form editor";break;case 2:label="Multipart body";break;case 3:label="Files editor";break;case 4:label="JSON editor";break}this.fire("send-analytics",{type:"event",category:"raml-body-editor",action:"Opened editor changed",label:label})}});</script></dom-module><dom-module id="arc-definitions" assetpath="bower_components/arc-definitions/"><template><style>:host{display:none;}</style><script id="content" type="application/json">{
      "requests":[
-      {"key":"Accept","desc":"Content-Types that are acceptable.","example":"Accept: text/plain"},
-      {"key":"Accept-Charset","desc":"Character sets that are acceptable","example":"Accept-Charset: utf-8"},
-      {"key":"Accept-Encoding","desc":"Acceptable encodings","example":"Accept-Encoding: &lt;compress | gzip | deflate | identity&gt;"},
-      {"key":"Accept-Language","desc":"Acceptable languages for response","example":"Accept-Language: en-US"},
+      {"key":"Accept","desc":"Content-Types that are acceptable.","example":"Accept: text/plain","autocomplete":["application/json","application/xml","text/plain","application/xml,application/xhtml+xml,text/html;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/x-shockwave-flash, application/msword, */*","text/html, application/xhtml+xml, image/jxr, */*","text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1","*/*","image/webp,image/*,*/*;q=0.8", "image/png,image/svg+xml,image/*;q=0.8, */*;q=0.5","audio/webm, audio/ogg, audio/wav, audio/*;q=0.9, application/ogg;q=0.7, video/*;q=0.6;*/*;q=0.5","audio/webm,audio/ogg,audio/wav,audio/*;q=0.9,application/ogg;q=0.7,video/*;q=0.6,*/*;q=0.5", "application/javascript, */*;q=0.8","text/css,*/*;q=0.1"]},
+      {"key":"Accept-Charset","desc":"Character sets that are acceptable","example":"Accept-Charset: utf-8", "autocomplete": ["utf-8"]},
+      {"key":"Accept-Encoding","desc":"Acceptable encodings","example":"Accept-Encoding: &lt;compress | gzip | deflate | identity&gt;","autocomplete":["compress","gzip","deflate"]},
+      {"key":"Accept-Language","desc":"Acceptable languages for response","example":"Accept-Language: en-US","autocomplete":["en-US","en-GB, en;q=0.5","hin","jpn","zh-CN","es","ru"]},
       {"key":"Authorization","desc":"Authentication credentials for HTTP authentication","example":"Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="},
-      {"key":"Cache-Control","desc":"Used to specify directives that MUST be obeyed by all caching mechanisms along the request/response chain","example":"Cache-Control: no-cache"},
-      {"key":"Connection","desc":"What type of connection the user-agent would prefer","example":"Connection: close"},
-      {"key":"Cookie","desc":"an HTTP cookie previously sent by the server with Set-Cookie","example":"Cookie: $Version=1; Skin=new;"},
+      {"key":"Cache-Control","desc":"Used to specify directives that MUST be obeyed by all caching mechanisms along the request/response chain","example":"Cache-Control: no-cache","autocomplete":["no-cache","no-store","max-age=3600","max-stale","min-fresh=3600","no-transform","only-if-cached"]},
+      {"key":"Connection","desc":"What type of connection the user-agent would prefer","example":"Connection: close","autocomplete": ["keep-alive","close"]},
+      {"key":"Cookie","desc":"an HTTP cookie previously sent by the server with Set-Cookie","example":"Cookie: $Version=1; Skin=new;","autocomplete":["name=value","name=value; name2=value2; name3=value3"]},
       {"key":"Content-Length","desc":"The length of the request body in octets (8-bit bytes)","example":"Content-Length: 348"},
-      {"key":"Content-Type","desc":"The mime type of the body of the request (used with POST and PUT requests)","example":"Content-Type: application/x-www-form-urlencoded"},
+      {"key":"Content-Type","desc":"The mime type of the body of the request (used with POST and PUT requests)","example":"Content-Type: application/x-www-form-urlencoded","autocomplete":["application/json","application/xml","application/atom+xml","multipart/form-data","multipart/alternative","multipart/mixed","application/x-www-form-urlencoded","application/base64","application/octet-stream","text/plain","text/css","text/html","application/javascript"]},
       {"key":"Date","desc":"The date and time that the message was sent","example":"Date: Tue, 15 Nov 1994 08:12:31 GMT"},
-      {"key":"Expect","desc":"Indicates that particular server behaviors are required by the client","example":"Expect: 100-continue"},
-      {"key":"From","desc":"The email address of the user making the request","example":"From: user@example.com"},
-      {"key":"Host","desc":"The domain name of the server (for virtual hosting), mandatory since HTTP/1.1","example":"Host: en.wikipedia.org"},
-      {"key":"If-Match","desc":"Only perform the action if the client supplied entity matches the same entity on the server. This is mainly for methods like PUT to only update a resource if it has not been modified since the user last updated it.","example":"If-Match: \"737060cd8c284d8af7ad3082f209582d\""},
+      {"key":"Expect","desc":"Indicates that particular server behaviors are required by the client","example":"Expect: 100-continue","autocomplete":["100-continue"]},
+      {"key":"From","desc":"The email address of the user making the request","example":"From: user@example.com","autocomplete":["webmaster@example.org"]},
+      {"key":"Host","desc":"The domain name of the server (for virtual hosting), mandatory since HTTP/1.1","example":"Host: en.wikipedia.org","autocomplete":["advancedrestclient.com"]},
+      {"key":"If-Match","desc":"Only perform the action if the client supplied entity matches the same entity on the server. This is mainly for methods like PUT to only update a resource if it has not been modified since the user last updated it.","example":"If-Match: \"737060cd8c284d8af7ad3082f209582d\"","autocomplete":["\"737060cd8c284d8af7ad3082f209582d\""]},
       {"key":"If-Modified-Since","desc":"Allows a 304 Not Modified to be returned if content is unchanged","example":"If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT"},
-      {"key":"If-None-Match","desc":"Allows a 304 Not Modified to be returned if content is unchanged, see HTTP ETag","example":"If-None-Match: \"737060cd8c284d8af7ad3082f209582d\""},
-      {"key":"If-Range","desc":"If the entity is unchanged, send me the part(s) that I am missing; otherwise, send me the entire new entity","example":"If-Range: \"737060cd8c284d8af7ad3082f209582d\""},
+      {"key":"If-None-Match","desc":"Allows a 304 Not Modified to be returned if content is unchanged, see HTTP ETag","example":"If-None-Match: \"737060cd8c284d8af7ad3082f209582d\"","autocomplete":["\"737060cd8c284d8af7ad3082f209582d\""]},
+      {"key":"If-Range","desc":"If the entity is unchanged, send me the part(s) that I am missing; otherwise, send me the entire new entity","example":"If-Range: \"737060cd8c284d8af7ad3082f209582d\"","autocomplete":["\"737060cd8c284d8af7ad3082f209582d\""]},
       {"key":"If-Unmodified-Since","desc":"Only send the response if the entity has not been modified since a specific time.","example":"If-Unmodified-Since: Sat, 29 Oct 1994 19:43:31 GMT"},
       {"key":"Max-Forwards","desc":"Limit the number of times the message can be forwarded through proxies or gateways.","example":"Max-Forwards: 10"},
-      {"key":"Pragma","desc":"Implementation-specific headers that may have various effects anywhere along the request-response chain","example":"Pragma: no-cache"},
+      {"key":"Pragma","desc":"Implementation-specific headers that may have various effects anywhere along the request-response chain","example":"Pragma: no-cache","autocomplete":["no-cache"]},
       {"key":"Proxy-Authorization","desc":"Authorization credentials for connecting to a proxy.","example":"Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="},
-      {"key":"Range","desc":"Request only part of an entity. Bytes are numbered from 0.","example":"Range: bytes=500-999"},
-      {"key":"Referer","desc":"This is the address of the previous web page from which a link to the currently requested page was followed.","example":"Referer: http://en.wikipedia.org/wiki/Main_Page"},
-      {"key":"TE","desc":"The transfer encodings the user agent is willing to accept: the same values as for the response header Transfer-Encoding can be used, plus the \"trailers\" value (related to the \"chunked\" transfer method) to notify the server it accepts to receive additional headers (the trailers) after the last, zero-sized, chunk.","example":"TE: trailers, deflate"},
-      {"key":"Upgrade","desc":"Ask the server to upgrade to another protocol","example":"Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11"},
-      {"key":"User-Agent","desc":"The user agent string of the user agent","example":"User-Agent: Mozilla/5.0 (Linux; X11)"},
-      {"key":"Via","desc":"Informs the server of proxies through which the request was sent.","example":"Via: 1.0 fred, 1.1 nowhere.com (Apache/1.1)"},
-      {"key":"Warning","desc":"A general warning about possible problems with the entity body.","example":"Warning: 199 Miscellaneous warning"}
+      {"key":"Range","desc":"Request only part of an entity. Bytes are numbered from 0.","example":"Range: bytes=500-999","autocomplete":["bytes=0-999","bytes=200-1000, 2000-6576","bytes=200-1000, 2000-6576, 19000-"]},
+      {"key":"Referer","desc":"This is the address of the previous web page from which a link to the currently requested page was followed.","example":"Referer: http://en.wikipedia.org/wiki/Main_Page","autocomplete":["https://advancedrestclient.com/"]},
+      {"key":"TE","desc":"The transfer encodings the user agent is willing to accept: the same values as for the response header Transfer-Encoding can be used, plus the \"trailers\" value (related to the \"chunked\" transfer method) to notify the server it accepts to receive additional headers (the trailers) after the last, zero-sized, chunk.","example":"TE: trailers, deflate","autocomplete":["compress","deflate","gzip","trailers","gzip, deflate;q=0.5"]},
+      {"key":"Upgrade","desc":"Ask the server to upgrade to another protocol","example":"Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11","autocomplete":["h2c","websocket","TLS/1.0","TLS/1.0, HTTP/1.1"]},
+      {"key":"User-Agent","desc":"The user agent string of the user agent","example":"User-Agent: Mozilla/5.0 (Linux; X11)","autocomplete":["Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0","Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0","Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36","Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41","Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1","Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0)","Googlebot/2.1 (+http://www.google.com/bot.html)"]},
+      {"key":"Via","desc":"Informs the server of proxies through which the request was sent.","example":"Via: 1.0 fred, 1.1 nowhere.com (Apache/1.1)","autocomplete":["1.1 vegur","HTTP/1.1 GWA","1.0 fred, 1.1 p.example.net"]},
+      {"key":"Warning","desc":"A general warning about possible problems with the entity body.","example":"Warning: 199 Miscellaneous warning","autocomplete":["110 anderson/1.3.37 \"Response is stale\"","112 - \"cache down\" \"Wed, 21 Oct 2015 07:28:00 GMT\""]}
      ],
      "responses": [
       {"key":"Accept-Ranges","desc":"What partial content range types this server supports","example":"Accept-Ranges: bytes"},
@@ -1884,24 +1944,39 @@ newBody);this.$$("code-mirror").editor.refresh();break;case "json":this.set("_va
       {"key":509, "label":"Bandwidth Limit Exceeded (Apache bw/limited extension)","desc":"This status code, while used by many servers, is not specified in any RFCs."},
       {"key":510, "label":"Not Extended (RFC 2774)","desc":"Further extensions to the request are required for the server to fulfill it."}
      ]
-    }</script></template><script>Polymer({is:"arc-definitions",properties:{requestHeaders:{type:Array,notify:true,readOnly:true,value:function(){return[]}},responseHeaders:{type:Array,notify:true,readOnly:true,value:function(){return[]}},statusCodes:{type:Array,notify:true,readOnly:true,value:function(){return[]}}},ready:function(){var defs=JSON.parse(this.$.content.textContent);this._setRequestHeaders(defs.requests);this._setResponseHeaders(defs.responses);this._setStatusCodes(defs.codes)},attached:function(){this._eventTarget=
-Polymer.dom(this).host||window;this.listen(this._eventTarget,"query-headers","_queryHeadersHandler");this.listen(this._eventTarget,"query-status-codes","_queryCodesHandler")},detached:function(){this.unlisten(this._eventTarget,"query-headers","_queryHeadersHandler");this.unlisten(this._eventTarget,"query-status-codes","_queryCodesHandler")},queryRequestHeaders:function(name){return this.queryHeaders(name,"request")},queryResponseHeaders:function(name){return this.queryHeaders(name)},queryHeaders:function(query,
-type){var headers=type==="request"?this.requestHeaders:this.responseHeaders;if(!query||!headers||!headers.length)return[];query=query.trim().toLowerCase();if(!query)return[];return headers.filter(function(item){return item.key.toLowerCase().indexOf(query)!==-1})},getStatusCode:function(code){var codes=this.statusCodes;if(!code||!codes||!codes.length)return null;code=Number(code);if(code!==code){console.warn("Passed code is not a number.");return null}var res=codes.filter(function(item){return item.key===
-code});if(!res.length)return null;return res[0]},_queryHeadersHandler:function(event){event.stopImmediatePropagation();var type=event.detail.type;if(!type){event.detail.headers=[];return}event.detail.headers=this.queryHeaders(event.detail.query,type)},_queryCodesHandler:function(event){event.stopImmediatePropagation();event.detail.statusCode=this.getStatusCode(event.detail.code)}});</script></dom-module><dom-module id="raml-headers-form" assetpath="bower_components/raml-headers-form/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{display:block;@apply (--raml-headers-form);--paper-input-container-label:{color:var(--raml-headers-form-input-label-color, var(--raml-request-parameters-editor-input-label-color, rgba(0, 0, 0, 0.48)));};}.required paper-input{--paper-input-container-label:{color:var(--raml-headers-form-input-label-color-required, var(--raml-request-parameters-editor-required-input-label-color, rgba(0, 0, 0, 0.72)));};}.header-value{@apply (--raml-request-parameters-editor-row);@apply (--raml-headers-form);position:relative;}.header-value .input{@apply (--layout-horizontal);@apply (--layout-flex);}.docs{@apply (--arc-font-common-base);font-size:13px !important;font-weight:200;line-height:24px;color:var(--inline-documentation-color, rgba(0, 0, 0, 0.87));}.markdown-html *{font-size:13px !important;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}.help-icon{color:var(--inline-help-icon-color, rgba(0, 0, 0, 0.24));transition:color 0.2s linear;}.help-icon:hover{color:var(--inline-help-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.value-input{@apply (--layout-horizontal);@apply (--layout-center);@apply (--layout-flex);}.value-input paper-dropdown-menu,
-    .value-input paper-input{@apply (--layout-flex);}.header-name{margin-right:8px;}.action-button{color:var(--raml-headers-form-action-button-color, var(--secondary-button-color, --accent-color));background:var(--raml-headers-form-action-button-background, var(--secondary-button-background, #fff));@apply (--secondary-button);@apply (--raml-headers-form-action-button);}.action-button:hover{color:var(--raml-headers-form-action-button-color-hover, var(--secondary-button-color, --accent-color));background:var(--raml-headers-form-action-button-background-hover, var(--secondary-button-background, #fff));@apply (--secondary-button-hover);@apply (--raml-headers-form-action-button-hover);}</style><form is="iron-form" id="form"><template is="dom-repeat" items="{{renderedRamlHeaders}}" id="headersList"><div class$="[[_computeRowClass(item)]]"><div class="value-input"><template is="dom-if" if="[[item.isEnum]]"><paper-dropdown-menu label="[[item.inputLabel]]" name="[[item.name]]" required$="[[item.required]]" id="rrpv-[[index]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{item.value}}"><template is="dom-repeat" items="[[item.enum]]"><paper-item data-value="[[item]]">[[item]]</paper-item></template><paper-item label=" ">(empty value)</paper-item></paper-listbox></paper-dropdown-menu><paper-icon-button title="Display documentation" class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="_openDocs"></paper-icon-button></template><template is="dom-if" if="[[!item.isEnum]]"><div class="input"><template is="dom-if" if="[[item.customHeader]]"><paper-input-container class="header-name" auto-validate=""><label>Header name</label><input is="iron-input" class="name-change-input" on-focus="_headerNameFocus" type="text" value="{{item.name::input}}" required="" pattern="\S*" on-change="_headerNameChanged"><paper-input-error>Header name is not valid</paper-input-error></paper-input-container></template><paper-input label="[[item.inputLabel]]" id="rrpv-[[index]]" value="{{item.value}}" required$="[[item.required]]" pattern="[[item.pattern]]" name="[[item.name]]" auto-validate="" type="[[item.inputType]]" min="[[item.minimum]]" max="[[item.maximum]]" maxlength="[[item.maxLength]]" always-float-label="[[item.inputFloatLabel]]" placeholder="[[item.inputPlaceholder]]"></paper-input></div><paper-icon-button title="Remove header" class="delete-icon" suffix="" icon="arc:close" hidden$="[[!item.customHeader]]" on-tap="_removeHeader"></paper-icon-button><paper-icon-button title="Display documentation" class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="_openDocs"></paper-icon-button></template></div><template is="dom-if" if="[[item.hasDescription]]"><div class="docs"><iron-collapse><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template><paper-autocomplete open-on-focus="" on-query="_queryHeaderName" on-selected="_onHeaderNameSelected"></paper-autocomplete></div></template></form><div class="add-action"><paper-button class="action-button" on-tap="add" hidden$="[[disallowCustom]]">Add custom header</paper-button></div><arc-definitions></arc-definitions></template><script>Polymer({is:"raml-headers-form",behaviors:[ArcBehaviors.HeadersParserBehavior],properties:{ramlHeaders:Array,renderedRamlHeaders:{type:Array,value:function(){return[]},computed:"_computeRenderedRamlHeaders(ramlHeaders.*)"},activeHeaderNameField:{type:HTMLElement,readOnly:true},activeAutocompleteNameField:{type:HTMLElement,readOnly:true},value:{type:String,value:"",notify:true},_eventTarget:HTMLElement,disallowCustom:Boolean},observers:["_renderedRamlHeaders(renderedRamlHeaders.*)","_valueChanged(value)"],
-attached:function(){this._eventTarget=Polymer.dom(this).host||document;this.listen(this._eventTarget,"headers-value-changed","_extValueChangedHandler")},detached:function(){if(!this._eventTarget)return;this.unlisten(this._eventTarget,"headers-value-changed","_extValueChangedHandler")},_computeRenderedRamlHeaders:function(record){var h=record&&record.base;if(!h||!h.length)return[];return this._transformHeaders(h)},_transformHeaders:function(headers){return headers.map(function(item){item=Object.assign({},
-item);return this._createFormModel(item)},this)},_createFormModel:function(item){item.isEnum=!!(item.enum&&item.enum.length);item.hasDescription=!!item.description;item.inputLabel=item.displayName||item.name||"Header value";if(item.required)item.inputLabel+="*";if(["number","integer","float"].indexOf(item.type)!==-1)item.inputType="number";else item.inputType="text";if(item.examples&&item.examples.length&&item.examples[0])item.inputPlaceholder="Example: "+item.examples[0];else if(item.example&&typeof item.example===
-"string")item.inputPlaceholder="Example: "+item.example;if(item.inputPlaceholder)item.inputFloatLabel=true;if(item.required&&typeof item.default!=="undefined"&&!item.value)item.value=item.default;if(typeof item.value==="undefined"&&item.required){if(item.examples)item.value=item.examples[0];else if(item.example)item.value=item.example;if(item.value&&item.value.indexOf&&item.value.indexOf(item.name+":")===0)item.value=item.value.substr(item.name.length+1);if(typeof item.value==="undefined"&&item.isEnum)item.value=
-item.enum[0]}return item},_removeHeader:function(e){if(!e.model)return;var i=e.model.get("index");if(i<0)return;this.splice("renderedRamlHeaders",i,1)},add:function(){if(this.disallowCustom)return;var obj={type:"string",value:"",name:"",customHeader:true};obj=this._createFormModel(obj);if(!this.renderedRamlHeaders)this.set("renderedRamlHeaders",[obj]);else this.push("renderedRamlHeaders",obj)},_headerNameFocus:function(e){var i=this.$.headersList.indexForElement(e.target);if(i===undefined||i<0)return;
-var elm=Polymer.dom(this.root).querySelector(".header-value:nth-child("+(i+1)+") paper-autocomplete");if(!elm){console.warn("Autocomplete element not found.");return}elm.target=e.target;this._setActiveHeaderNameField(e.target);this._setActiveAutocompleteNameField(elm)},_onHeaderNameSelected:function(e){var index=e.model.get("index");if(index||index===0){this.set(["renderedRamlHeaders",index,"name"],e.detail.value);var elm=Polymer.dom(this.root).querySelector(".header-value:nth-child("+(index+1)+") .name-change-input");
-if(elm)elm.fire("bind-value-changed");if(!this._queryHeaderInfo(e.detail.value))this._updateCustomHeaderMeta(index)}},_headerNameChanged:function(e){if(!e.model)return;var item=e.model.get("item");var index=this.$.headersList.indexForElement(e.target);if(!index)return;if(item.name)if(this._queryHeaderInfo(item.name))return;this._updateCustomHeaderMeta(index)},_queryHeaderInfo:function(name){var info=this._queryHeaderNameSuggestions(name);var helpItem;var i;var len;if(info&&info.length)for(i=0,len=
-info.length;i<len;i++)if(info[i].key===name){helpItem=info[i];break}if(!helpItem)return false;var headers=this.renderedRamlHeaders;var index;for(i=0,len=headers.length;i<len;i++)if(headers[i].name===name){index=i;break}if(index===undefined)return false;this._updateCustomHeaderMeta(index,helpItem.desc,helpItem.example);return true},_updateCustomHeaderMeta:function(index,desc,example){desc=desc||"";example=example||"";this.set(["renderedRamlHeaders",index,"description"],desc);this.set(["renderedRamlHeaders",
-index,"hasDescription"],desc?true:false);this.set(["renderedRamlHeaders",index,"examples"],[example])},_queryHeaderName:function(e){if(!this.activeAutocompleteNameField)return;var value=e.detail.value;if(!value){var defs=this.$$("arc-definitions");if(defs&&defs.requestHeaders)this.activeAutocompleteNameField.source=defs.requestHeaders.map(function(item){return item.key});else this.activeAutocompleteNameField.source=[];return}var suggestions=this._queryHeaderNameSuggestions(value);if(!suggestions||
-!suggestions.length){this.activeAutocompleteNameField.source=[];return}this.activeAutocompleteNameField.source=suggestions.map(function(item){return{value:item.key,display:item.key}})},_queryHeaderNameSuggestions:function(q){var event=this.fire("query-headers",{"type":"request","query":q});return event.detail.headers},_renderedRamlHeaders:function(record){if(this._internalValueChange)return;if(record.path==="renderedRamlHeaders")this._updateValue();else if(record.path.match(/renderedRamlHeaders.#\d+.(name|value)/))this._updateValue();
-else if(record.path==="renderedRamlHeaders.splices")this._updateValue()},_updateValue:function(){var h=this.renderedRamlHeaders;if(!h||!h.length){this.value="";return}var value=h.map(function(item){var n=item.name||"";var v=item.value||"";if(!n&&!v)return;return n+": "+v}).filter(function(item){return!!item}).join("\n");this._internalValueChange=true;this.set("value",value);this._internalValueChange=false},_valueChanged:function(value){if(this._internalValueChange){this.fire("headers-value-changed",
-{value:value});return}var headers=this.headersToJSON(value);if(!headers||!headers.length)return;var def=this.renderedRamlHeaders;var i;var len;this._internalValueChange=true;if(def&&def.length){var defLength=def.length;for(i=0,len=headers.length;i<len;i++){var found=false;for(var j=0;j<defLength;j++)if(headers[i].name===def[j].name){found=true;this.set(["renderedRamlHeaders",j,"value"],headers[i].value);break}if(!found)this.push("renderedRamlHeaders",this._headersModelFromObject(headers[i]))}var parsedNames=
-headers.map(function(item){return item.name});for(i=def.length-1;i>=0;i--)if(parsedNames.indexOf(def[i].name)===-1)this.splice("renderedRamlHeaders",i,1)}else for(i=0,len=headers.length;i<len;i++)this.push("renderedRamlHeaders",this._headersModelFromObject(headers[i]));this._internalValueChange=false},_headersModelFromObject:function(header){var obj={key:header.name,name:header.name,value:header.value,customHeader:true};return this._createFormModel(obj)},_extValueChangedHandler:function(e){if(e.target===
-this)return;this.set("value",e.detail.value)},_getValidity:function(){return this.$.form.validate()},_openDocs:function(e){var model=e.model;var collapse=this.$.form.querySelector(".header-value:nth-child("+(model.index+1)+") iron-collapse");if(!collapse)return;collapse.opened=!collapse.opened},_computeRowClass:function(item){var clazz="header-value";if(item.required)clazz+=" required";else clazz+=" optional";return clazz}});</script></dom-module><script>(function(mod){if(typeof exports=="object"&&typeof module=="object")mod(require("../../lib/codemirror"));else if(typeof define=="function"&&define.amd)define(["../../lib/codemirror"],mod);else mod(CodeMirror)})(function(CodeMirror){CodeMirror.defineMode("http-headers",function(){function failRest(stream,state){stream.skipToEnd();state.cur=failRest;return"error"}function header(stream){if(stream.sol()&&!stream.eat(/[ \t]/))if(stream.match(/^.*?:/))return"atom";else{stream.skipToEnd();return"error"}else{stream.skipToEnd();
+    }</script></template><script>Polymer({is:"arc-definitions",properties:{requestHeaders:{type:Array,notify:true,readOnly:true},responseHeaders:{type:Array,notify:true,readOnly:true},statusCodes:{type:Array,notify:true,readOnly:true},loadOnDemand:Boolean},ready:function(){if(!this.loadOnDemand)this._setDefinitions()},attached:function(){this._eventTarget=Polymer.dom(this).host||window;this.listen(this._eventTarget,"query-headers","_queryHeadersHandler");this.listen(this._eventTarget,"query-status-codes","_queryCodesHandler")},detached:function(){this.unlisten(this._eventTarget,
+"query-headers","_queryHeadersHandler");this.unlisten(this._eventTarget,"query-status-codes","_queryCodesHandler")},_setDefinitions:function(){var defs=JSON.parse(this.$.content.textContent);this._setRequestHeaders(defs.requests);this._setResponseHeaders(defs.responses);this._setStatusCodes(defs.codes);this._definitionsReady=true},queryRequestHeaders:function(name){return this.queryHeaders(name,"request")},queryResponseHeaders:function(name){return this.queryHeaders(name)},queryHeaders:function(query,
+type){if(!this._definitionsReady)this._setDefinitions();var headers=type==="request"?this.requestHeaders:this.responseHeaders;if(!headers||!headers.length)return[];if(!query)return headers;query=query.trim().toLowerCase();if(!query)return headers;return headers.filter(function(item){return item.key.toLowerCase().indexOf(query)!==-1})},getStatusCode:function(code){if(!this._definitionsReady)this._setDefinitions();var codes=this.statusCodes;if(!codes||!codes.length)return null;if(!code)return codes;
+code=Number(code);if(code!==code){console.warn("Passed code is not a number.");return null}var res=codes.filter(function(item){return item.key===code});if(!res.length)return null;return res[0]},_queryHeadersHandler:function(event){if(event.defaultPrevented)return;event.stopImmediatePropagation();event.preventDefault();var type=event.detail.type;if(!type){event.detail.headers=[];return}event.detail.headers=this.queryHeaders(event.detail.query,type)},_queryCodesHandler:function(event){if(event.defaultPrevented)return;
+event.stopImmediatePropagation();event.preventDefault();event.detail.statusCode=this.getStatusCode(event.detail.code)}});</script></dom-module><script>(function(){window.ArcBehaviors=window.ArcBehaviors||{};window.ArcBehaviors.EventsTargetBehavior={properties:{eventsTarget:{type:Object,observer:"_eventsTargetChanged"},_oldEventsTarget:Object},attached:function(){this._eventsTargetChanged(this.eventsTarget)},detached:function(){if(this._oldEventsTarget)this._detachListeners(this._oldEventsTarget)},_eventsTargetChanged:function(eventsTarget){if(this._oldEventsTarget)this._detachListeners(this._oldEventsTarget);this._oldEventsTarget=eventsTarget||
+window;this._attachListeners(this._oldEventsTarget)},_attachListeners:function(){console.warn("_attachListeners not found in the element methods")},_detachListeners:function(){console.warn("_detachListeners not found in the element methods")}}})();</script><dom-module id="raml-headers-form-item" assetpath="bower_components/raml-headers-form/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{display:block;@apply --raml-headers-form-item;--paper-input-container-label:{color:var(--raml-headers-form-input-label-color, var(--raml-request-parameters-editor-input-label-color, rgba(0, 0, 0, 0.54)));};input::-webkit-input-placeholder{color:var(--paper-input-container-color, --secondary-text-color);}}:host([required]) paper-input{--paper-input-container-label:{color:var(--raml-headers-form-input-label-color-required, var(--raml-request-parameters-editor-required-input-label-color, rgba(0, 0, 0, 0.72)));};}.form-row{@apply --layout-horizontal;@apply --layout-center;@apply --raml-request-parameters-editor-row;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}.docs{@apply --arc-font-common-base;font-size:13px !important;font-weight:200;line-height:24px;color:var(--inline-documentation-color, rgba(0, 0, 0, 0.87));}.help-icon{margin-top:16px;color:var(--from-row-action-icon-color, var(--icon-button-color, rgba(0, 0, 0, 0.74)));transition:color 0.2s linear;}.help-icon:hover{color:var(--from-row-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.name-field{position:relative;}.name-field,
+    .value-field{@apply --layout-flex;@apply --layout-horizontal;@apply --layout-start;}.param-name,
+    raml-type-form-input{@apply --layout-flex;}.param-name{margin-right:12px;@apply --raml-headers-form-name-input;}.narrow.form-row{display:block;@apply --raml-request-parameters-editor-row-narrow;}.narrow .param-name{margin-right:0;@apply --raml-headers-form-name-input-narrow;}[hidden]{display:none !important;}:host([is-array]) .value-field{@apply --layout-start;@apply --raml-headers-form-array-parameter;}</style><template is="dom-if" if="[[!isCustom]]"><div class="value-field"><raml-type-form-input model="[[model]]" name="[[name]]" value="{{value}}" data-type="typed"></raml-type-form-input><template is="dom-if" if="[[model.hasDescription]]"><span><paper-icon-button class="help-icon" suffix="" icon="arc:help" hidden$="[[!model.hasDescription]]" on-tap="toggleDocumentation"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Display documentation</paper-tooltip></span></template></div></template><template is="dom-if" if="[[isCustom]]"><div class$="form-row [[_computeNarrowClass(narrow)]]"><div class="name-field"><paper-input value="{{name}}" label="Header name" class="param-name" on-focus="_headerNameFocus" type="text" pattern="\S*" error="Header name is not valid" required=""></paper-input><paper-autocomplete open-on-focus="" on-query="_queryHeaderName" on-selected="_onHeaderNameSelected"></paper-autocomplete></div><div class="value-field"><raml-type-form-input model="[[model]]" name="[[name]]" value="{{value}}" data-type="custom"></raml-type-form-input><template is="dom-if" if="[[model.hasDescription]]"><span><paper-icon-button class="help-icon" suffix="" icon="arc:help" hidden$="[[!model.hasDescription]]" on-tap="toggleDocumentation"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Display documentation</paper-tooltip></span></template></div></div></template><template is="dom-if" if="[[model.hasDescription]]" restamp=""><div class="docs"><iron-collapse opened="[[docsOpened]]"><marked-element markdown="[[model.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></template><script>Polymer({is:"raml-headers-form-item",behaviors:[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior],properties:{name:{notify:true,type:String},model:Object,narrow:{type:Boolean,value:false},docsOpened:Boolean,isCustom:{type:Boolean,value:false},isArray:{type:Boolean,reflectToAttribute:true}},toggleDocumentation:function(){this.docsOpened=!this.docsOpened},_headerNameFocus:function(e){var autocomplete=this.$$("paper-autocomplete");if(autocomplete.target)return;autocomplete.target=e.target},
+_onHeaderNameSelected:function(e){this.set("name",e.detail.value)},_queryHeaderName:function(e){var suggestions=this._queryHeaderNameSuggestions(e.detail.value);var autocomplete=this.$$("paper-autocomplete");if(!suggestions||!suggestions.length){autocomplete.source=[];return}autocomplete.source=suggestions.map(function(item){return{value:item.key,display:item.key}})},_queryHeaderNameSuggestions:function(q){var event=this.fire("query-headers",{type:"request",query:q},{cancelable:true});return event.detail.headers},
+_computeNarrowClass:function(narrow){return narrow?"narrow":undefined},_getValidity:function(){var selector='raml-type-form-input[data-type\x3d"';selector+=this.isCustom?"custom":"typed";selector+='"]';var input=this.$$(selector);return input.validate()}});</script></dom-module><dom-module id="raml-headers-form" assetpath="bower_components/raml-headers-form/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{display:block;@apply --raml-headers-form;}.form-item{@apply --layout-horizontal;@apply --layout-start;}raml-headers-form-item{@apply --layout-flex;}.delete-icon{margin-top:16px;color:var(--from-row-action-icon-color, var(--icon-button-color, rgba(0, 0, 0, 0.74)));transition:color 0.2s linear;}.delete-icon:hover{color:var(--from-row-action-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.action-button{color:var(--raml-headers-form-action-button-color, var(--secondary-button-color, --accent-color));background:var(--raml-headers-form-action-button-background, var(--secondary-button-background, #fff));@apply --secondary-button;@apply --raml-headers-form-action-button;}.action-button:hover{color:var(--raml-headers-form-action-button-color-hover, var(--secondary-button-color, --accent-color));background:var(--raml-headers-form-action-button-background-hover, var(--secondary-button-background, #fff));@apply --secondary-button-hover;@apply --raml-headers-form-action-button-hover;}.action-icon{margin-right:8px;color:var(--raml-headers-form-action-icon-color, var(--secondary-button-color, --accent-color));opacity:var(--raml-headers-form-action-icon-opacity, 0.54);transition:opacity 0.2s ease-in-out, color 0.2s ease-in-out;}.action-button:hover  .action-icon,
+    .action-icon:hover{color:var(--raml-headers-form-action-icon-color-hover, var(--secondary-button-color, --accent-color));opacity:var(--raml-headers-form-action-icon-opacity-hover, 0.74);}[hidden]{display:none !important;}</style><form is="iron-form" id="form"><template is="dom-repeat" items="{{model}}" id="headersList"><div class="form-item"><raml-headers-form-item name="{{item.name}}" value="{{item.value}}" model="[[item]]" required$="[[item.required]]" is-custom="[[item.isCustom]]" is-array="[[item.isArray]]" narrow="[[narrow]]"></raml-headers-form-item><span><paper-icon-button title="Remove header" class="delete-icon" suffix="" icon="arc:remove-circle-outline" hidden$="[[!item.isCustom]]" on-tap="_removeHeader"></paper-icon-button></span></div></template></form><div class="add-action" hidden$="[[disallowCustom]]"><paper-button class="action-button" on-tap="add"><iron-icon class="action-icon" icon="arc:add-circle-outline"></iron-icon>Add custom header</paper-button></div><arc-definitions></arc-definitions></template><script>Polymer({is:"raml-headers-form",behaviors:[ArcBehaviors.HeadersParserBehavior,ArcBehaviors.RamlTypeFormBehavior,ArcBehaviors.EventsTargetBehavior,Polymer.IronValidatableBehavior],properties:{ramlHeaders:Array,model:Array,value:{type:String,notify:true},_eventTarget:HTMLElement,disallowCustom:Boolean,narrow:Boolean},get _modelOpts(){return{valueDelimiter:":"}},observers:["_modelFromRaml(ramlHeaders)","_valueChanged(value)","_modelChanged(model.*)"],_attachListeners:function(node){this.listen(node,
+"headers-value-changed","_extValueChangedHandler")},_detachListeners:function(node){this.unlisten(node,"headers-value-changed","_extValueChangedHandler")},_modelFromRaml:function(headers){if(!headers||!headers.length)return this.set("model",undefined);var modelOpts=this._modelOpts;var model=headers.map(function(value){return this._createModelObject(value,modelOpts)},this);this.set("model",model)},_removeHeader:function(e){if(!e.model)return;var i=e.model.get("index");if(i<0)return;this.splice("model",
+i,1)},add:function(){if(this.disallowCustom)return;var obj={type:"string",value:"",name:"",isCustom:true};obj=this._createModelObject(obj);if(!this.model)this.set("model",[obj]);else this.push("model",obj)},_modelChanged:function(record){if(this._internalValueChange||!record)return;if(["model","model.splices"].indexOf(record.path)!==-1){this._updateValue();if(record.path==="model"&&record.value)this._autoDescribeModel(record.value)}else if(record.path.match(/model.#\d+.(name|value)/)){this._updateValue();
+if(record.path.match(/model.#\d+.name/))this._headerNameChanged(record.path,record.value)}},_autoDescribeModel:function(model){for(var i=0,len=model.length;i<len;i++){if(model[i].hasDescription)continue;var type=this._queryHeaderData(name);if(type){model.description=type.desc;model.examples=[type.example];type=this._createModelObject(model,this._modelOpts);this.set(["model",i],type)}}},_headerNameChanged:function(changePath,name){changePath=changePath.substr(0,changePath.lastIndexOf("."));var type=
+this._getRamlHeader(name);if(type){type=this._createModelObject(type,this._modelOpts);return this.set(changePath,type)}type=this._queryHeaderData(name);if(type){type=this._createModelObject({name:name,value:this.get(changePath+".value"),examples:[type.example],description:type.desc,isCustom:true},this._modelOpts);return this.set(changePath,type)}if(this.get(changePath+".description")){type=this._createModelObject({name:name,value:this.get(changePath+".value"),isCustom:true},this._modelOpts);return this.set(changePath,
+type)}},_getRamlHeader:function(name){var headers=this.ramlHeaders;if(!headers||!headers.length||!name)return;name=String(name).toLowerCase();for(var i=0,len=headers.length;i<len;i++)if(headers[i].name===name)return headers[i]},_queryHeaderData:function(name){var suggestions=this._queryHeaderNameSuggestions(name);if(!suggestions)return;name=name.toLowerCase();for(var i=0,len=suggestions.length;i<len;i++)if(suggestions[i].key.toLowerCase()===name)return suggestions[i]},_queryHeaderNameSuggestions:function(q){var event=
+this.fire("query-headers",{"type":"request","query":q},{cancelable:true});return event.detail.headers},_updateValue:function(){var h=this.model;if(!h||!h.length){this.value="";return}var value=h.map(function(item){var n=item.name||"";var v=item.value||"";if(!n&&!v)return;if(v instanceof Array)v=v.join(",");return n+": "+v}).filter(function(item){return!!item}).join("\n");this._internalValueChange=true;this.set("value",value);this._internalValueChange=false},_valueChanged:function(value){if(this._internalValueChange){this.fire("headers-value-changed",
+{value:value});return}var headers=this.headersToJSON(value);if(!headers||!headers.length)return;var def=this.model;var i;var len;var _updatePosition;this._internalValueChange=true;if(def&&def.length){var defLength=def.length;for(i=0,len=headers.length;i<len;i++){var found=false;for(var j=0;j<defLength;j++)if(headers[i].name===def[j].name){found=true;this._setModelValue(j,headers[i].value);break}if(!found){var item=this._headersModelFromObject(headers[i]);_updatePosition=0;if(this.model){_updatePosition=
+this.push("model",item);_updatePosition--}else this.set("model",[item]);this._headerNameChanged("model."+_updatePosition+".name",item.name)}}var parsedNames=headers.map(function(item){return item.name});for(i=def.length-1;i>=0;i--)if(parsedNames.indexOf(def[i].name)===-1)this.splice("model",i,1)}else for(i=0,len=headers.length;i<len;i++){var _model=this._headersModelFromObject(headers[i]);_updatePosition=0;if(this.model){_updatePosition=this.push("model",_model);_updatePosition--}else this.set("model",
+[_model]);this._headerNameChanged("model."+_updatePosition+".name",_model.name)}this._internalValueChange=false},_setModelValue:function(index,value){var type=this.get(["model",index,"type"]);if(type==="array")value=value.split(",").map(function(item){return item.trim()});this.set(["model",index,"value"],value)},_headersModelFromObject:function(header){var obj={key:header.name,name:header.name,value:header.value,isCustom:true};return this._createModelObject(obj)},_extValueChangedHandler:function(e){if(e.target===
+this)return;this.set("value",e.detail.value)},_getValidity:function(){return this.$.form.validate()}});</script></dom-module><dom-module id="cm-arc" assetpath="bower_components/code-mirror-styles/"><template><style>.CodeMirror.cm-s-cm-arc{font-family:var(--code-mirror-font-family, monospace);font-size:var(--code-mirror-font-size, 15px);height:var(--code-mirror-height, inherit);min-height:var(--code-mirror-minimum-height, 60px);padding:var(--code-mirror-padding, 8px);color:var(--code-mirror-color, #757575);background-color:var(--code-mirror-background-color, #fff);cursor:text;@apply (--code-mirror-editor);}.CodeMirror.cm-s-cm-arc.parsed-content{white-space:pre-line;}.cm-s-cm-arc .CodeMirror-lines{padding:4px 0;@apply (--code-mirror-editor-lines);}.CodeMirror.cm-s-cm-arc pre{padding:0 4px;@apply (--code-mirror-editor-pre-element);}.cm-s-cm-arc .CodeMirror-scrollbar-filler,
+    .cm-s-cm-arc .CodeMirror-gutter-filler{background-color:white;}.cm-s-cm-arc .CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap;}.cm-s-cm-arc .CodeMirror-linenumbers{}.cm-s-cm-arc .CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap;}.cm-s-cm-arc .CodeMirror-guttermarker{color:black;}.cm-s-cm-arc .CodeMirror-guttermarker-subtle{color:#999;}.CodeMirror.cm-s-cm-arc div.CodeMirror-cursor{border-left:1px solid black;}.CodeMirror.cm-s-cm-arc div.CodeMirror-secondarycursor{border-left:1px solid silver;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7;}.CodeMirror.cm-fat-cursor div.CodeMirror-cursors{z-index:1;}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;}@-webkit-keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}@keyframes blink{0%{background:#7e7;}50%{background:none;}100%{background:#7e7;}}div.CodeMirror-overwrite div.CodeMirror-cursor{}.cm-tab{display:inline-block;text-decoration:inherit;}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute;}.cm-s-cm-arc .cm-keyword{color:#708;}.cm-s-cm-arc .cm-atom{color:#B71C1C;@apply --code-mirror-atom;}.cm-s-cm-arc .cm-number{color:#164;@apply --code-mirror-number;}.cm-s-cm-arc .cm-def{color:#00f;}.cm-s-cm-arc .cm-variable,
+    .cm-s-cm-arc .cm-punctuation,
+    .cm-s-cm-arc .cm-property,
+    .cm-s-cm-arc .cm-operator{}.cm-s-cm-arc .cm-string.cm-property{color:#43A047;}.cm-s-cm-arc .cm-variable-2{color:#05a;}.cm-s-cm-arc .cm-variable-3{color:#085;}.cm-s-cm-arc .cm-comment{color:#a50;}.cm-s-cm-arc .cm-string{color:#009688;@apply --code-mirror-string;}.cm-s-cm-arc .cm-string-2{color:#f50;}.cm-s-cm-arc .cm-meta{color:#555;}.cm-s-cm-arc .cm-qualifier{color:#555;}.cm-s-cm-arc .cm-builtin{color:#30a;}.cm-s-cm-arc .cm-bracket{color:#997;}.cm-s-cm-arc .cm-tag{color:#170;}.cm-s-cm-arc .cm-attribute{color:#00c;}.cm-s-cm-arc .cm-header{color:blue;}.cm-s-cm-arc .cm-quote{color:#090;}.cm-s-cm-arc .cm-hr{color:#999;}.cm-s-cm-arc .cm-link{color:#00c;}.cm-negative{color:#d44;}.cm-positive{color:#292;}.cm-header,
+    .cm-strong{font-weight:bold;}.cm-em{font-style:italic;}.cm-link{text-decoration:underline;}.cm-strikethrough{text-decoration:line-through;}.cm-s-cm-arc .cm-error{color:#f00;}.cm-invalidchar{color:#f00;}.CodeMirror-composing{border-bottom:2px solid;}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0;}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22;}.CodeMirror-matchingtag{background:rgba(255, 150, 0, .3);}.CodeMirror-activeline-background{background:#e8f2ff;}.CodeMirror{position:relative;overflow:hidden;background:white;}.cm-s-cm-arc .CodeMirror-scroll{overflow:auto !important;margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:none;position:relative;}.CodeMirror-sizer{position:relative;border-right:30px solid transparent;}.CodeMirror-vscrollbar,
+    .CodeMirror-hscrollbar,
+    .CodeMirror-scrollbar-filler,
+    .CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll;}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll;}.CodeMirror-scrollbar-filler{right:0;bottom:0;}.CodeMirror-gutter-filler{left:0;bottom:0;}.CodeMirror-gutters{position:absolute;left:0;top:0;z-index:3;}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;margin-bottom:-30px;*zoom:1;*display:inline;}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;height:100%;}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4;}.CodeMirror-gutter-wrapper{-webkit-user-select:none;-moz-user-select:none;user-select:none;}.CodeMirror-lines{cursor:text;min-height:1px;}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal;}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0;}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto;}.CodeMirror-widget{}.CodeMirror-code{outline:none;}.CodeMirror-scroll,
+    .CodeMirror-sizer,
+    .CodeMirror-gutter,
+    .CodeMirror-gutters,
+    .CodeMirror-linenumber{-moz-box-sizing:content-box;box-sizing:content-box;}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden;}.CodeMirror-measure pre{position:static;}.CodeMirror div.CodeMirror-cursor{position:absolute;border-right:none;width:0;}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3;}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible;}.CodeMirror-selected{background:#d9d9d9;}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0;}.CodeMirror-crosshair{cursor:crosshair;}.CodeMirror ::selection{background:#d7d4f0;}.CodeMirror ::-moz-selection{background:#d7d4f0;}.cm-searching{background:#ffa;background:rgba(255, 255, 0, .4);}.CodeMirror span{*vertical-align:text-bottom;}.cm-force-border{padding-right:0.1px;}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden;}}.cm-tab-wrap-hack:after{content:'';}span.CodeMirror-selectedtext{background:none;}</style></template></dom-module><script>(function(mod){if(typeof exports=="object"&&typeof module=="object")mod(require("../../lib/codemirror"));else if(typeof define=="function"&&define.amd)define(["../../lib/codemirror"],mod);else mod(CodeMirror)})(function(CodeMirror){CodeMirror.defineMode("http-headers",function(){function failRest(stream,state){stream.skipToEnd();state.cur=failRest;return"error"}function header(stream){if(stream.sol()&&!stream.eat(/[ \t]/))if(stream.match(/^.*?:/))return"atom";else{stream.skipToEnd();return"error"}else{stream.skipToEnd();
 return"string"}}return{token:function(stream,state){var cur=state.cur;if(!cur||cur!==header&&stream.eatSpace())return null;return cur(stream,state)},blankLine:function(state){state.cur=failRest},startState:function(){return{cur:header}}}});CodeMirror.defineMIME("message/http-headers","http-headers")});</script><script>(function(mod){if(typeof exports=="object"&&typeof module=="object")mod(require("../../lib/codemirror"));else if(typeof define=="function"&&define.amd)define(["../../lib/codemirror"],mod);else mod(CodeMirror)})(function(CodeMirror){var Pos=CodeMirror.Pos;var accept=["*/*","text/html,application/xhtml+xml,application/xml;q\x3d0.9,*/*;q\x3d0.8","application/xml,application/xhtml+xml,text/html;q\x3d0.9, text/plain;q\x3d0.8,image/png,*/*;q\x3d0.5","text/html,application/xhtml+xml,application/xml;q\x3d0.9,*/*;q\x3d0.8",
 "image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, "+"application/x-ms-xbap, application/x-shockwave-flash, application/msword, */*","text/html, application/xml;q\x3d0.9, application/xhtml+xml, image/png, image/webp, image/jpeg,"+" image/gif, image/x-xbitmap, */*;q\x3d0.1","image/png,image/*;q\x3d0.8,*/*;q\x3d0.5","audio/webm, audio/ogg, audio/wav, audio/*;q\x3d0.9, application/ogg;q\x3d0.7, video/*;q\x3d0.6; "+"*/*;q\x3d0.5","video/webm, video/ogg, video/*;q\x3d0.9, application/ogg\x3d0.7, audio/*;q\x3d0.6; */*;q\x3d0.5",
 "application/javascript, */*;q\x3d0.8","text/css,*/*;q\x3d0.1","text/html, application/xml;q\x3d0.9, application/xhtml+xml, image/png, image/webp, image/jpeg"+", image/gif, image/x-xbitmap, */*;q\x3d0.1"];var contentTypes=["application/json","application/xml","application/atom+xml","multipart-form-data","application/x-www-form-urlencoded","application/base64","application/octet-stream","text/plain","text/css","text/html","application/javascript"];var authorizationHeaders=["Basic {base64 of user:password}",
@@ -1940,51 +2015,45 @@ this.onScroll)},disable:function(){this.completion.cm.removeKeyMap(this.keyMap);
 this.hints.children[0].children[selectedHint];node.classList.remove(ACTIVE_HINT_ELEMENT_CLASS);selectedHint=i+this._indexOffset;this.selectedHint=i;node=this.hints.children[0].children[selectedHint];node.classList.add(ACTIVE_HINT_ELEMENT_CLASS);if(node.offsetTop<this.hints.scrollTop)this.hints.scrollTop=node.offsetTop-3;else if(node.offsetTop+node.offsetHeight>this.hints.scrollTop+this.hints.clientHeight)this.hints.scrollTop=node.offsetTop+node.offsetHeight-this.hints.clientHeight+3;CodeMirror.signal(this.data,
 "select",this.data.list[selectedHint],node)},screenAmount:function(){return Math.floor(this.hints.clientHeight/this.hints.children[0].children[0].offsetHeight)||1}};CodeMirror.registerHelper("hint","auto",function(cm,options){var helpers=cm.getHelpers(cm.getCursor(),"hint");var words;if(helpers.length)for(var i=0;i<helpers.length;i++){var cur=helpers[i](cm,options);if(cur&&cur.list.length)return cur}else if(words=cm.getHelper(cm.getCursor(),"hintWords")){if(words)return CodeMirror.hint.fromList(cm,
 {words:words})}else if(CodeMirror.hint.anyword)return CodeMirror.hint.anyword(cm,options)});CodeMirror.registerHelper("hint","fromList",function(cm,options){var cur=cm.getCursor();var token=cm.getTokenAt(cur);var found=[];for(var i=0;i<options.words.length;i++){var word=options.words[i];if(word.slice(0,token.string.length)===token.string)found.push(word)}if(found.length)return{list:found,from:CodeMirror.Pos(cur.line,token.start),to:CodeMirror.Pos(cur.line,token.end)}});CodeMirror.commands.autocomplete=
-CodeMirror.showHint;var defaultOptions={hint:CodeMirror.hint.auto,completeSingle:true,alignWithWord:true,closeCharacters:/[\s()\[\]{};:>,]/,closeOnUnfocus:true,completeOnSingleClick:false,container:null,customKeys:null,extraKeys:null};CodeMirror.defineOption("hintOptions",null)});</script><dom-module id="raml-request-headers-editor" assetpath="bower_components/raml-request-headers-editor/"><template><style>:host{display:block;position:relative;@apply (--raml-request-headers-editor);--code-mirror-editor:{z-index:0;};--paper-autocomplete:{top:32px;};}.CodeMirror-hints{position:absolute;z-index:10;background:white;overflow:hidden;overflow-y:auto;max-height:20em;margin-left:20px;}.editor-actions{padding:0 8px;@apply (--raml-body-editor-actions-container);}#copyContainer{margin:0;padding:0;}paper-icon-button[active]{background-color:var(--raml-body-editor-panel-button-active-background-color, #e0e0e0);border-radius:50%;@apply (--raml-body-editor-panel-button-active);}</style><div class="content"><div class="editor-actions"><paper-icon-button icon="arc:content-copy" id="copyButton" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button icon="arc:code" id="editMode" toggles="" active="{{sourceMode}}"></paper-icon-button><paper-tooltip for="copyButton">Copy headers value to clipboard</paper-tooltip><paper-tooltip for="editMode">Toggle source edit mode</paper-tooltip></div><iron-pages content="" selected="{{selected}}" on-iron-select="_tabChangedHandler" selected-attribute="active"><raml-headers-form value="{{value}}" raml-headers="[[ramlHeaders]]"></raml-headers-form><code-mirror import-location="/bower_components/codemirror/" mode="http-headers" theme="cm-arc" value="{{value}}"></code-mirror></iron-pages></div><p id="copyContainer"></p></template><script>Polymer({is:"raml-request-headers-editor",behaviors:[ArcBehaviors.HeadersParserBehavior],properties:{value:{type:String,notify:true},selected:{type:Number,value:0},ramlHeaders:Object,contentType:{type:String,notify:true,observer:"_onContentTypeChanged"},narrow:{type:Boolean,value:false,notify:true},narrowWidth:{type:String,value:"768px"},sourceMode:Boolean},observers:["_valueChanged(value)","_sourceModeChanged(sourceMode)"],attached:function(){this.listen(window,"request-headers-changed","_headersChangedHandler");
-this.listen(window,"request-header-changed","_headerChangedHandler")},detached:function(){this.unlisten(window,"request-headers-changed","_headersChangedHandler");this.unlisten(window,"request-header-changed","_headerChangedHandler")},ready:function(){var cm=this.$$("code-mirror");cm.setOption("extraKeys",{"Ctrl-Space":function(cm){CodeMirror.showHint(cm,CodeMirror.hint["http-headers"],{container:Polymer.dom(this.root)})}.bind(this)})},_sourceModeChanged:function(sourceMode){if(sourceMode)this.set("selected",
-1);else this.set("selected",0)},_valueChanged:function(value){this._detectContentType(value);if(!this._cacncelChangeEvent)this.fire("request-headers-changed",{value:value})},_detectContentType:function(value){if(!value&&this.contentType){this.set("contentType",null);return}if(!this.value)return;var ct=this.getContentType(value);if(!ct)return;this.set("contentType",ct)},_onContentTypeChanged:function(currentCt){if(!currentCt){this.fire("content-type-changed",{"value":""});return}var arr=this.headersToJSON(this.value);
-var updated=false;var notChanged=false;arr.map(function(item){if(updated||item.name.toLowerCase()!=="content-type")return item;updated=true;if(item.value===currentCt){notChanged=true;return item}item.value=currentCt;return item});if(notChanged)return;if(!updated)arr.push({name:"Content-Type",value:currentCt});var headers=this.headersToString(arr);this.set("value",headers);this.fire("content-type-changed",{"value":currentCt})},_tabChangedHandler:function(e){var name=e.detail.item&&e.detail.item.nodeName;
-if(!name)return;if(name==="CODE-MIRROR")e.detail.item.editor.refresh()},_copyToClipboard:function(){this.$.copyContainer.innerText=this.value;var snipRange=document.createRange();snipRange.selectNodeContents(this.$.copyContainer);var selection=window.getSelection();selection.removeAllRanges();selection.addRange(snipRange);var result=false;try{result=document.execCommand("copy");this.$.copyButton.icon="arc:done"}catch(err){Polymer.Base._error(err);this.$.copyButton.icon="arc:error"}this.$.copyContainer.innerText=
-"";setTimeout(this._resetCopyButtonState.bind(this),1E3);selection.removeAllRanges();return result},_resetCopyButtonState:function(){this.$.copyButton.icon="arc:content-copy"},_headersChangedHandler:function(e){if(e.target===this)return;if(e.defaultPrevented)return;var value=e.detail.value;this._cacncelChangeEvent=true;this.set("value",value);this._cacncelChangeEvent=false},_headerChangedHandler:function(e){if(e.defaultPrevented)return;var name=e.detail.name;if(!name)return console.warn("request-header-changed fired without the name.");
-var value=e.detail.value;var arr=this.headersToJSON(this.value);var updated=false;for(var i=0,len=arr.length;i<len;i++)if(arr[i].name.toLowerCase()===name.toLowerCase()){arr[i].value=value;updated=true;break}if(!updated)arr.push({name:name,value:value});var headers=this.headersToString(arr);this._cacncelChangeEvent=true;this.set("value",headers);this._cacncelChangeEvent=false}});</script></dom-module><script>Polymer.IronCheckedElementBehaviorImpl={properties:{checked:{type:Boolean,value:false,reflectToAttribute:true,notify:true,observer:"_checkedChanged"},toggles:{type:Boolean,value:true,reflectToAttribute:true},value:{type:String,value:"on",observer:"_valueChanged"}},observers:["_requiredChanged(required)"],created:function(){this._hasIronCheckedElementBehavior=true},_getValidity:function(_value){return this.disabled||!this.required||this.checked},_requiredChanged:function(){if(this.required)this.setAttribute("aria-required",
-"true");else this.removeAttribute("aria-required")},_checkedChanged:function(){this.active=this.checked;this.fire("iron-change")},_valueChanged:function(){if(this.value===undefined||this.value===null)this.value="on"}};Polymer.IronCheckedElementBehavior=[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior,Polymer.IronCheckedElementBehaviorImpl];</script><script>Polymer.PaperCheckedElementBehaviorImpl={_checkedChanged:function(){Polymer.IronCheckedElementBehaviorImpl._checkedChanged.call(this);if(this.hasRipple())if(this.checked)this._ripple.setAttribute("checked","");else this._ripple.removeAttribute("checked")},_buttonStateChanged:function(){Polymer.PaperRippleBehavior._buttonStateChanged.call(this);if(this.disabled)return;if(this.isAttached)this.checked=this.active}};
-Polymer.PaperCheckedElementBehavior=[Polymer.PaperInkyFocusBehavior,Polymer.IronCheckedElementBehavior,Polymer.PaperCheckedElementBehaviorImpl];</script><dom-module id="paper-checkbox" assetpath="bower_components/paper-checkbox/"><template strip-whitespace=""><style>:host{display:inline-block;white-space:nowrap;cursor:pointer;--calculated-paper-checkbox-size:var(--paper-checkbox-size, 18px);--calculated-paper-checkbox-ink-size:var(--paper-checkbox-ink-size, -1px);@apply (--paper-font-common-base);line-height:0;-webkit-tap-highlight-color:transparent;}:host([hidden]){display:none !important;}:host(:focus){outline:none;}.hidden{display:none;}#checkboxContainer{display:inline-block;position:relative;width:var(--calculated-paper-checkbox-size);height:var(--calculated-paper-checkbox-size);min-width:var(--calculated-paper-checkbox-size);margin:var(--paper-checkbox-margin, initial);vertical-align:var(--paper-checkbox-vertical-align, middle);background-color:var(--paper-checkbox-unchecked-background-color, transparent);}#ink{position:absolute;top:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size)) / 2);left:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size)) / 2);width:var(--calculated-paper-checkbox-ink-size);height:var(--calculated-paper-checkbox-ink-size);color:var(--paper-checkbox-unchecked-ink-color, var(--primary-text-color));opacity:0.6;pointer-events:none;}:host-context([dir="rtl"]) #ink{right:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size)) / 2);left:auto;}#ink[checked]{color:var(--paper-checkbox-checked-ink-color, var(--primary-color));}#checkbox{position:relative;box-sizing:border-box;height:100%;border:solid 2px;border-color:var(--paper-checkbox-unchecked-color, var(--primary-text-color));border-radius:2px;pointer-events:none;-webkit-transition:background-color 140ms, border-color 140ms;transition:background-color 140ms, border-color 140ms;}#checkbox.checked #checkmark{-webkit-animation:checkmark-expand 140ms ease-out forwards;animation:checkmark-expand 140ms ease-out forwards;}@-webkit-keyframes checkmark-expand{0%{-webkit-transform:scale(0, 0) rotate(45deg);}100%{-webkit-transform:scale(1, 1) rotate(45deg);}}@keyframes checkmark-expand{0%{transform:scale(0, 0) rotate(45deg);}100%{transform:scale(1, 1) rotate(45deg);}}#checkbox.checked{background-color:var(--paper-checkbox-checked-color, var(--primary-color));border-color:var(--paper-checkbox-checked-color, var(--primary-color));}#checkmark{position:absolute;width:36%;height:70%;border-style:solid;border-top:none;border-left:none;border-right-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-bottom-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-color:var(--paper-checkbox-checkmark-color, white);-webkit-transform-origin:97% 86%;transform-origin:97% 86%;box-sizing:content-box;}:host-context([dir="rtl"]) #checkmark{-webkit-transform-origin:50% 14%;transform-origin:50% 14%;}#checkboxLabel{position:relative;display:inline-block;vertical-align:middle;padding-left:var(--paper-checkbox-label-spacing, 8px);white-space:normal;line-height:normal;color:var(--paper-checkbox-label-color, var(--primary-text-color));@apply (--paper-checkbox-label);}:host([checked]) #checkboxLabel{color:var(--paper-checkbox-label-checked-color, var(--paper-checkbox-label-color, var(--primary-text-color)));@apply (--paper-checkbox-label-checked);}:host-context([dir="rtl"]) #checkboxLabel{padding-right:var(--paper-checkbox-label-spacing, 8px);padding-left:0;}#checkboxLabel[hidden]{display:none;}:host([disabled]) #checkbox{opacity:0.5;border-color:var(--paper-checkbox-unchecked-color, var(--primary-text-color));}:host([disabled][checked]) #checkbox{background-color:var(--paper-checkbox-unchecked-color, var(--primary-text-color));opacity:0.5;}:host([disabled]) #checkboxLabel{opacity:0.65;}#checkbox.invalid:not(.checked){border-color:var(--paper-checkbox-error-color, var(--error-color));}</style><div id="checkboxContainer"><div id="checkbox" class$="[[_computeCheckboxClass(checked, invalid)]]"><div id="checkmark" class$="[[_computeCheckmarkClass(checked)]]"></div></div></div><div id="checkboxLabel"><content></content></div></template><script>Polymer({is:"paper-checkbox",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttributes:{role:"checkbox","aria-checked":false,tabindex:0},properties:{ariaActiveAttribute:{type:String,value:"aria-checked"}},attached:function(){var inkSize=this.getComputedStyleValue("--calculated-paper-checkbox-ink-size").trim();if(inkSize==="-1px"){var checkboxSize=parseFloat(this.getComputedStyleValue("--calculated-paper-checkbox-size").trim());var defaultInkSize=Math.floor(8/3*checkboxSize);if(defaultInkSize%
-2!==checkboxSize%2)defaultInkSize++;this.customStyle["--paper-checkbox-ink-size"]=defaultInkSize+"px";this.updateStyles()}},_computeCheckboxClass:function(checked,invalid){var className="";if(checked)className+="checked ";if(invalid)className+="invalid";return className},_computeCheckmarkClass:function(checked){return checked?"":"hidden"},_createRipple:function(){this._rippleContainer=this.$.checkboxContainer;return Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)}});</script></dom-module><dom-module id="query-parameter-input" assetpath="bower_components/raml-request-parameters-editor/"><template strip-whitespace=""><style>:host([required]) paper-input{--paper-input-container-label:{color:var(--raml-request-parameters-editor-required-input-label-color, rgba(0, 0, 0, 0.72));};}:host([is-array]){padding-left:8px;border-left:1px rgba(0, 0, 0, 0.14) solid;}.help-icon{color:var(--accent-color, rgba(0, 0, 0, 0.74));transition:opacity 0.2s ease-in-out;opacity:0.54;}.help-icon:hover{opacity:0.74;}.array-item{@apply (--layout-horizontal);}.array-item paper-input{@apply (--layout-flex);}paper-dropdown-menu{width:100%;}paper-button iron-icon{margin-right:12px;}label{@apply (--paper-font-caption);}</style><template is="dom-if" if="[[isEnum]]"><paper-dropdown-menu label="[[model.inputLabel]]" name="[[name]]" required="[[model.required]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{value}}"><template is="dom-repeat" items="[[model.enum]]"><paper-item data-value$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[isInput]]"><paper-input label="[[model.inputLabel]]" value="{{value}}" required="[[model.required]]" pattern="[[model.pattern]]" name="[[name]]" auto-validate="" type="[[model.inputType]]" min="[[model.minimum]]" max="[[model.maximum]]" maxlength="[[model.maxLength]]" always-float-label="[[model.inputFloatLabel]]" placeholder="[[model.inputPlaceholder]]"></paper-input></template><template is="dom-if" if="[[isArray]]"><label>[[model.inputLabel]]</label><template is="dom-repeat" items="[[arrayValue]]"><div class="array-item"><paper-input label="Parameter value" value="{{item.value}}" required="[[model.required]]" pattern="[[model.pattern]]" name="[[name]]" auto-validate="" type="[[model.inputType]]" min="[[model.minimum]]" max="[[model.maximum]]" maxlength="[[model.maxLength]]" no-label-float="" on-input="_arrayValueChanged"></paper-input><template is="dom-if" if="[[index]]"><span><paper-icon-button class="help-icon" suffix="" icon="arc:remove-circle-outline" on-tap="_removeArrayValue"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Remove array value</paper-tooltip></span></template></div></template><div class="add-action"><paper-button on-tap="_addArrayValue"><iron-icon class="help-icon" icon="arc:add-circle-outline"></iron-icon>Add array value</paper-button></div></template></template><script>Polymer({is:"query-parameter-input",behaviors:[Polymer.IronFormElementBehavior],properties:{model:{type:Object,observer:"_modelChanged"},isEnum:Boolean,isInput:Boolean,isArray:{type:Boolean,reflectToAttribute:true},arrayValue:{type:Array,value:function(){return[]}}},observers:["_isArrayChanged(isArray, value)"],resetStates:function(){this.isEnum=undefined;this.isInput=undefined;this.isArray=undefined},_modelChanged:function(model){this.resetStates();if(!model)return;if(model.isEnum){this.isEnum=true;
-return}if(model.isArray){this.isArray=true;return}this.isInput=true},_isArrayChanged:function(isArray){if(this.__internalChange)return;var v=this.value;if(!v||!isArray){this.arrayValue=[];return}this.arrayValue=this._itemsForArray(v)},_itemsForArray:function(value){var result=[];if(value instanceof Array)result=value.map(function(item){return{value:item}});else result.push({value:value});return result},_arrayValueChanged:function(){var arr=this.arrayValue;if(arr)arr=arr.map(function(item){return item.value});
-this.__internalChange=true;this.set("value",arr);this.__internalChange=false},_addArrayValue:function(){this.push("arrayValue",{value:""})},_removeArrayValue:function(e){var repeater=this.$$('template[is\x3d"dom-repeat"]');var index=repeater.indexForElement(e.target);this.splice("arrayValue",index,1);this._arrayValueChanged()}});</script></dom-module><dom-module id="raml-request-parameters-form" assetpath="bower_components/raml-request-parameters-editor/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{display:block;@apply (--raml-request-parameters-form);--paper-input-container-label:{color:var(--raml-request-parameters-editor-input-label-color, rgba(0, 0, 0, 0.48));};}.param-value{@apply (--raml-request-parameters-editor-row);}.param-value.optional{display:none;}.param-value.required{}.param-value.optional.with-optional{display:block;}.param-value .input{@apply (--layout-horizontal);@apply (--layout-flex);}.docs{@apply (--arc-font-common-base);font-size:13px !important;font-weight:200;line-height:24px;color:var(--inline-documentation-color, rgba(0, 0, 0, 0.87));}.markdown-html *{font-size:13px !important;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}.help-icon{color:var(--accent-color, rgba(0, 0, 0, 0.74));transition:opacity 0.2s ease-in-out;opacity:0.54;}.help-icon:hover{opacity:0.74;}.value-input{@apply (--layout-horizontal);@apply (--layout-center);@apply (--layout-flex);}.optional-toggle-button{font-size:13px;@apply (--raml-request-parameters-form-optional-toggle-button);}query-parameter-input{@apply (--layout-flex);margin-bottom:8px;}</style><form is="iron-form" id="form"><template is="dom-repeat" items="{{parameters}}" items-repeater=""><div class$="[[_computeRowClass(item, optionalOpened)]]"><div class="value-input"><query-parameter-input model="[[item]]" name="[[item.name]]" value="{{item.value}}" required$="[[item.required]]" on-value-changed="_parameterValueChanged"></query-parameter-input><span><paper-icon-button class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="_openDocs"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Display documentation</paper-tooltip></span></div><template is="dom-if" if="[[item.hasDescription]]"><div class="docs"><iron-collapse><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></div></template></form></template><script>Polymer({is:"raml-request-parameters-form",behaviors:[Polymer.IronValidatableBehavior],properties:{parameters:Array,optionalOpened:{type:Boolean,value:false},formType:String},_getValidity:function(){return this.$.form.validate()},serialize:function(){return this.$.form.serialize()},_openDocs:function(e){var template=this.$.form.querySelector("[items-repeater]");var model=template.modelForElement(e.target);var collapse=this.$.form.querySelector(".param-value:nth-child("+(model.index+1)+") iron-collapse");
-if(!collapse)return;collapse.opened=!collapse.opened},_computeRowClass:function(item,optionalOpened){var clazz="param-value";if(item.required)clazz+=" required";else clazz+=" optional";if(optionalOpened)clazz+=" with-optional";return clazz},toggleOptionalParams:function(){this.optionalOpened=!this.optionalOpened},_parameterValueChanged:function(e){var formType=this.formType;if(!formType||["query","uri"].indexOf(formType)===-1)return;var item=e.model.get("item");var name=item.name||item.key;var value=
-item.value;this.fire(formType+"-parameter-changed",{name:name,value:value})}});</script></dom-module><dom-module id="raml-request-parameters-editor" assetpath="bower_components/raml-request-parameters-editor/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{display:block;@apply (--raml-request-parameters-editor);}h3{@apply (--raml-request-parameters-editor-subheader);}.params-title{@apply (--layout-horizontal);@apply (--layout-center);}.params-title h3{display:inline-block;margin-right:12px;}.params-title paper-checkbox{--paper-checkbox-label-color:rgba(0, 0, 0, 0.54);}.empty-message{@apply (--raml-request-parameters-editor-no-params);}.empty-message p{@apply (--raml-request-parameters-editor-no-params-message);}</style><section hidden$="[[hasParameters]]" class="empty-message"><p>This API doesn't require to declare query or URI parameters.</p></section><section hidden$="[[!hasUriParameters]]"><h3>URI parameters</h3><raml-request-parameters-form id="uriParametersForm" form-type="uri" parameters="{{_renderUriParameters}}"></raml-request-parameters-form></section><section hidden$="[[!hasQueryParameters]]"><div class="params-title"><h3>Query parameters</h3><paper-checkbox hidden$="[[!hasOptionalQueryParameters]]" checked="{{optionalQueryParamsOpened}}">Show optional parameters</paper-checkbox></div><raml-request-parameters-form id="queryParametersForm" form-type="query" optional-opened="[[optionalQueryParamsOpened]]" parameters="{{_renderQueryParameters}}"></raml-request-parameters-form></section></template><script>(function(){var NUMBER_INPUT_TYPES=["number","integer","float"];Polymer({is:"raml-request-parameters-editor",behaviors:[Polymer.IronValidatableBehavior],properties:{queryParameters:Array,_renderQueryParameters:{type:Array,computed:"_computeParameters(queryParameters.*)"},hasQueryParameters:{type:Boolean,value:false,computed:"_computeHasParameters(_renderQueryParameters)"},uriParameters:Array,_renderUriParameters:{type:Array,computed:"_computeParameters(uriParameters.*)"},hasUriParameters:{type:Boolean,
-value:false,computed:"_computeHasParameters(uriParameters)"},hasParameters:{type:Boolean,computed:"_computeParametersSet(hasUriParameters, hasQueryParameters)"},url:String,urlParams:{type:Array,computed:"_computeUrlParams(url)"},urlSearchRegexp:{type:String,computed:"_computeUrlRegexp(url)"},value:{type:String,notify:true},hasOptionalQueryParameters:{type:Boolean,value:false,computed:"_computeHasOptionalParameters(_renderQueryParameters.*)",notify:true},optionalQueryParamsOpened:Boolean},observers:["_valueChanged(value)"],
-attached:function(){this.listen(window,"url-value-changed","_extValueChangedHandler");this.listen(window,"query-parameter-changed","_queryParameterChangedHandler");this.listen(window,"uri-parameter-changed","_uriParameterChangedHandler")},detached:function(){this.unlisten(window,"url-value-changed","_extValueChangedHandler");this.unlisten(window,"query-parameter-changed","_queryParameterChangedHandler");this.unlisten(window,"uri-parameter-changed","_uriParameterChangedHandler")},_computeParameters:function(record){var array=
-record.base;if(!array||!array.length)return[];return this._transformQueryParameters(array)},_transformQueryParameters:function(array){var items=[];for(var i=0,len=array.length;i<len;i++){var item=Object.assign({},array[i]);if(item.type==="array"&&item.required){var example=null;if(item.examples)example=item.examples[0];else if(item.example)example=item.example;if(example){example=this.__parseArrayExample(example);item.examples=undefined;item.example=example}}items.push(this._createRenderObject(item))}return items},
-_createRenderObject:function(item){item.isEnum=!!(item.enum&&item.enum.length);item.isArray=item.type==="array";item.hasDescription=!!item.description;item.inputLabel=item.displayName||item.name||"Value";if(item.required)item.inputLabel+="*";item.inputType=this._computeItemInputType(item);if(item.examples&&item.examples.length&&item.examples[0])item.inputPlaceholder="Example: "+item.examples[0];else if(item.example&&typeof item.example==="string")item.inputPlaceholder="Example: "+item.example;if(item.inputPlaceholder)item.inputFloatLabel=
-true;if(item.required&&typeof item.default!=="undefined"&&!item.value)item.value=item.isArray?this.__parseArrayExample(item.default):item.default;if(typeof item.value==="undefined"&&item.required){if(item.examples)item.value=item.examples[0];else if(item.example)item.value=item.example;if(item.value&&item.value.indexOf&&item.value.indexOf(item.name+"\x3d")===0)item.value=item.value.substr(item.name.length+1);if(typeof item.value==="undefined"&&item.isEnum)item.value=item.enum[0]}if(item.value&&typeof item.value===
-"string")item.value=decodeURIComponent(item.value.replace(/\+/g," "));if(item.value&&item.isArray&&typeof item.value==="string")item.value=[item.value];if(item.isArray&&!item.value)item.value=[""];return item},__parseArrayExample:function(example){try{var arr=JSON.parse(example);if(arr instanceof Array)return arr}catch(e){}return example},_computeItemInputType:function(item){if(item.type==="array"){if(typeof item.items==="string")return this.__computeInputType(item.items);return this.__computeInputType(item.items.type)}return this.__computeInputType(item.type)},
-__computeInputType:function(type){if(type&&NUMBER_INPUT_TYPES.indexOf(type)!==-1)return"number";return"text"},_computeHasParameters:function(params){return!!(params&&params instanceof Array&&params.length)},_computeParametersSet:function(hasUriParameters,hasQueryParameters){return hasUriParameters||hasQueryParameters},_processInput:function(){if(!this.url){this._internalValueChange=true;this.set("value",undefined);this._internalValueChange=false;return}var url=this.url;if(this.hasUriParameters)url=
-this._applyUriParams(url);if(this.hasQueryParameters)url=this._applyQueryParams(url);this._internalValueChange=true;this.set("value",url);this._internalValueChange=false},_applyUriParams:function(url){var uriParams=this.$.uriParametersForm.serialize();for(var paramName in uriParams){var value=uriParams[paramName];if(!value)continue;value=String(value);if(value.trim()==="")continue;value=this._wwwFormUrlEncodePiece(value);var re=new RegExp("{"+paramName+"}");url=url.replace(re,value)}return url},_applyQueryParams:function(url){var params=
-this.$.queryParametersForm.serialize();var items=[];for(var paramName in params){var value=params[paramName];if(!value&&value!==0&&value!==null&&value!==false)continue;var isArray=false;if(value instanceof Array){isArray=true;if(!value.length||value.length===1&&!value[0])continue}else{value=String(value);if(value.trim()===""){delete params[paramName];continue}}if(isArray)for(var i=0,len=value.length;i<len;i++){if(value||value===0||value===false)items.push({name:paramName,value:value[i]})}else items.push({name:paramName,
-value:value})}params=this._wwwFormUrlEncode(items);if(!params)return url;if(url.indexOf("?")!==-1)url+="\x26"+params;else url+="?"+params;return url},_wwwFormUrlEncode:function(object){if(!object||!object.length)return"";var pieces=object.map(function(item){return this._wwwFormUrlEncodePiece(item.name)+"\x3d"+this._wwwFormUrlEncodePiece(item.value)},this);return pieces.join("\x26")},_wwwFormUrlEncodePiece:function(str){if(!str)return"";return encodeURIComponent(str.toString().replace(/\r?\n/g,"\r\n")).replace(/%20/g,
-"+")},_valueChanged:function(value){if(this._internalValueChange){this.fire("url-value-changed",{value:value});return}if(!value)return;var url=this.url;if(!url)return;var matches;if(this.urlParams&&this.urlSearchRegexp){matches=value.match(this.urlSearchRegexp);if(matches){matches.shift();this._applyUriValues(matches,this.urlParams)}}matches=value.match(/[^&?]*?=[^&?]*/g);if(matches){var params={};matches.forEach(function(item){var parts=item.split("\x3d");var name=parts[0];if(name in params){if(!(params[name]instanceof
-Array))params[name]=[params[name]];params[name].push(parts[1])}else params[name]=parts[1]});this._applyQueryParamsValues(params)}},_computeUrlRegexp:function(url){if(!url)return null;url=url.replace(/(\.|\/)/g,"\\$1");url=url.replace(/{\w+}/g,"(\\w+)");return new RegExp(url)},_computeUrlParams:function(url){if(!url)return null;var paramsNames=url.match(/\{\w+\}/g);if(paramsNames)paramsNames=paramsNames.map(function(item){return item.substr(1,item.length-2)});return paramsNames},_applyUriValues:function(values,
-names){var up=this._renderUriParameters;var len=up.length;this._internalValueChange=true;names.forEach(function(item,index){for(var i=0;i<len;i++)if(up[i].name===item){this.set(["_renderUriParameters",i,"value"],values[index]);break}},this);this._internalValueChange=false},_applyQueryParamsValues:function(map){var qp=this._renderQueryParameters;var len=qp.length;this._internalValueChange=true;for(var _key in map)for(var i=0;i<len;i++)if(qp[i].name===_key){this.set(["_renderQueryParameters",i,"value"],
-map[_key]);break}this._internalValueChange=false},_extValueChangedHandler:function(e){if(e.target===this)return;this.set("value",e.detail.value)},_getValidity:function(){var validUri=true;var validUrl=true;if(this.hasUriParameters)validUri=this.$.uriParametersForm.validate();if(this.hasQueryParameters)validUrl=this.$.queryParametersForm.validate();return validUri&&validUrl},_computeHasOptionalParameters:function(record){if(!record||!record.base||!record.base.length)return false;var list=record.base;
-for(var i=0,len=list.length;i<len;i++)if(!list[i].required)return true;return false},_queryParameterChangedHandler:function(e){if(this._isChildEvent(e)){this._processInput();return}this._updateEventValue("_renderQueryParameters",e)},_uriParameterChangedHandler:function(e){if(this._isChildEvent(e)){this._processInput();return}this._updateEventValue("_renderUriParameters",e)},_isChildEvent:function(e){e=Polymer.dom(e);var path=e.path;for(var i=0,len=path.length;i<len;i++)if(path[i]===this)return true;
-return false},_updateEventValue:function(target,e){if(e.target===this)return;if(e.defaultPrevented)return;var name=e.detail.name;if(!name)return;var parameters=this[target];if(!parameters||!parameters.length)return;for(var i=0,len=parameters.length;i<len;i++){var paramName=parameters[i].name||parameters[i].key;if(!paramName)continue;if(paramName===name){this.set([target,i,"value"],e.detail.value);this._processInput();return}}}})})();</script></dom-module><dom-module id="raml-request-url-editor" assetpath="bower_components/raml-request-url-editor/"><template><style include="markdown-styles"></style><style>:host{outline:none;display:block;@apply (--raml-request-url-editor);}.markdown-body{@apply (--arc-font-body1);margin-top:12px;color:rgba(0, 0, 0, 0.54);@apply (--raml-request-url-editor-documentation);}</style><paper-input-container no-label-float="[[noLabelFloat]]" attr-for-value="bind-value" always-float-label="[[alwaysFloatLabel]]" disabled$="[[disabled]]" invalid="[[invalid]]"><label hidden$="[[!label]]">[[label]]</label><input is="iron-input" id="input" class="paper-input-input" aria-label-prefix="[[_ariaLabelledBy]]" bind-value="{{value}}" disabled$="[[disabled]]" required$="[[required]]" autofocus$="[[autofocus]]" readonly$="[[readonly]]" type="url" on-tap="_inputTap" on-blur="_onElementBlur"><template is="dom-if" if="[[errorMessage]]"><paper-input-error>[[errorMessage]]</paper-input-error></template></paper-input-container><template is="dom-if" if="[[documentation]]"><marked-element markdown="[[documentation]]"><div class="markdown-html markdown-body"></div></marked-element></template></template><script>Polymer({is:"raml-request-url-editor",behaviors:[Polymer.PaperInputBehavior,Polymer.IronValidatableBehavior,Polymer.IronFormElementBehavior],properties:{uriParameters:Array,url:{type:String,observer:"_onUrlChanged"},label:{type:String,value:"Request URL"},value:{type:String,notify:true,observer:"_onValueChanged"},errorMessage:{type:String,value:"Fill the URI parameters before making a request"},documentation:{type:String},skipDocs:Boolean},hostAttributes:{"tabindex":-1,focusable:true},ready:function(){this._ready=
-true;if(this.value)this._handleAutoValidate()},attached:function(){this.listen(window,"url-value-changed","_extValueChangedHandler")},detached:function(){this.unlisten(window,"url-value-changed","_extValueChangedHandler")},_onValueChanged:function(){if(!this._ready)return;this.fire("url-value-changed",{value:this.value});this._handleAutoValidate()},_onUrlChanged:function(value,oldValue){if(value===oldValue&&value!==undefined)return;this.set("value",value)},_displayVariableDoc:function(id){if(this.skipDocs)return;
-var up=this.uriParameters;if(!id||!up){this.documentation="";return}var item;for(var i=0,len=up.length;i<len;i++)if(up[i].name===id){item=up[i];break}if(!item||!item.description){this.documentation="";return}this.documentation=item.description},_onElementBlur:function(){this.documentation=""},_extValueChangedHandler:function(e){if(e.target===this)return;this.set("value",e.detail.value)},_getValidity:function(){var value=this.value;if(!this.required&&!value)return true;if(value===undefined)return true;
+CodeMirror.showHint;var defaultOptions={hint:CodeMirror.hint.auto,completeSingle:true,alignWithWord:true,closeCharacters:/[\s()\[\]{};:>,]/,closeOnUnfocus:true,completeOnSingleClick:false,container:null,customKeys:null,extraKeys:null};CodeMirror.defineOption("hintOptions",null)});</script><dom-module id="raml-request-headers-editor" assetpath="bower_components/raml-request-headers-editor/"><template><style>:host{display:block;position:relative;@apply (--raml-request-headers-editor);--code-mirror-editor:{z-index:0;};}.CodeMirror-hints{position:absolute;z-index:10;background:white;overflow:hidden;overflow-y:auto;max-height:20em;margin-left:20px;}.editor-actions{padding:0 8px;@apply (--raml-body-editor-actions-container);}#copyContainer{margin:0;padding:0;}paper-icon-button[active]{background-color:var(--raml-body-editor-panel-button-active-background-color, #e0e0e0);border-radius:50%;@apply (--raml-body-editor-panel-button-active);}</style><div class="content"><div class="editor-actions"><paper-icon-button icon="arc:content-copy" id="copyButton" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button icon="arc:code" id="editMode" toggles="" active="{{sourceMode}}"></paper-icon-button><paper-tooltip for="copyButton">Copy headers value to clipboard</paper-tooltip><paper-tooltip for="editMode">Toggle source edit mode</paper-tooltip></div><iron-pages content="" selected="{{selected}}" on-iron-select="_tabChangedHandler" selected-attribute="active"><raml-headers-form value="{{value}}" raml-headers="[[ramlHeaders]]" narrow="[[narrow]]"></raml-headers-form><code-mirror import-location="/bower_components/codemirror/" mode="http-headers" theme="cm-arc" value="{{value}}"></code-mirror></iron-pages></div><clipboard-copy content="[[value]]"></clipboard-copy></template><script>Polymer({is:"raml-request-headers-editor",behaviors:[ArcBehaviors.HeadersParserBehavior],properties:{value:{type:String,notify:true},selected:{type:Number,value:0},ramlHeaders:Object,contentType:{type:String,notify:true,observer:"_onContentTypeChanged"},narrow:{type:Boolean,value:false,notify:true},sourceMode:Boolean},observers:["_valueChanged(value)","_sourceModeChanged(sourceMode)"],attached:function(){this.listen(window,"request-headers-changed","_headersChangedHandler");this.listen(window,"request-header-changed",
+"_headerChangedHandler")},detached:function(){this.unlisten(window,"request-headers-changed","_headersChangedHandler");this.unlisten(window,"request-header-changed","_headerChangedHandler")},ready:function(){var cm=this.$$("code-mirror");cm.setOption("extraKeys",{"Ctrl-Space":function(cm){CodeMirror.showHint(cm,CodeMirror.hint["http-headers"],{container:Polymer.dom(this.root)})}.bind(this)})},_sourceModeChanged:function(sourceMode){if(sourceMode)this.set("selected",1);else this.set("selected",0)},
+_valueChanged:function(value){this._detectContentType(value);if(!this._cacncelChangeEvent)this.fire("request-headers-changed",{value:value})},_detectContentType:function(value){if(!value&&this.contentType){this.set("contentType",null);return}if(!this.value)return;var ct=this.getContentType(value);if(!ct)return;this.set("contentType",ct)},_onContentTypeChanged:function(currentCt){if(!currentCt){this.fire("content-type-changed",{"value":""});return}var arr=this.headersToJSON(this.value);var updated=
+false;var notChanged=false;arr.map(function(item){if(updated||item.name.toLowerCase()!=="content-type")return item;updated=true;if(item.value===currentCt){notChanged=true;return item}item.value=currentCt;return item});if(notChanged)return;if(!updated)arr.push({name:"Content-Type",value:currentCt});var headers=this.headersToString(arr);this.set("value",headers);this.fire("content-type-changed",{"value":currentCt})},_tabChangedHandler:function(e){var name=e.detail.item&&e.detail.item.nodeName;if(!name)return;
+if(name==="CODE-MIRROR")e.detail.item.editor.refresh()},_copyToClipboard:function(e){var button=Polymer.dom(e).localTarget;var copy=this.$$("clipboard-copy");if(copy.copy())button.icon="arc:done";else button.icon="arc:error";this.async(function(){this._resetCopyButtonState(button)},1E3)},_resetCopyButtonState:function(button){button.icon="arc:content-copy"},_headersChangedHandler:function(e){if(e.target===this)return;if(e.defaultPrevented)return;var value=e.detail.value;this._cacncelChangeEvent=true;
+this.set("value",value);this._cacncelChangeEvent=false},_headerChangedHandler:function(e){if(e.defaultPrevented)return;var name=e.detail.name;if(!name)return console.warn("request-header-changed fired without the name.");var value=e.detail.value;var arr=this.headersToJSON(this.value);var updated=false;for(var i=0,len=arr.length;i<len;i++)if(arr[i].name.toLowerCase()===name.toLowerCase()){arr[i].value=value;updated=true;break}if(!updated)arr.push({name:name,value:value});var headers=this.headersToString(arr);
+this._cacncelChangeEvent=true;this.set("value",headers);this._cacncelChangeEvent=false}});</script></dom-module><dom-module id="query-parameter-input" assetpath="bower_components/raml-request-parameters-editor/"><template strip-whitespace=""><style>:host{@apply --layout-vertical;@apply --layout-flex;@apply --query-parameter-input;}:host([required]) paper-input{--paper-input-container-label:{color:var(--raml-request-parameters-editor-required-input-label-color, rgba(0, 0, 0, 0.72));};}:host([is-array]){padding-left:8px;border-left:1px rgba(0, 0, 0, 0.14) solid;}.delete-icon,
+    .array-add-icon{color:var(--accent-color, rgba(0, 0, 0, 0.74));transition:opacity 0.2s ease-in-out;opacity:0.54;@apply --query-parameter-input-icons;}.delete-icon:hover,
+    .array-add-icon:hover{opacity:0.74;@apply --query-parameter-input-icons-hover;}.array-item{@apply --layout-horizontal;@apply --layout-center;}.array-item paper-input,
+    paper-dropdown-menu{@apply --layout-flex;}paper-dropdown-menu{margin-right:8px;}paper-button iron-icon{margin-right:12px;}label{@apply --arc-font-caption;}.add-action{@apply --query-parameter-input-add-actions;}.add-action:hover,
+    .add-action:hover .array-add-icon{@apply --query-parameter-input-add-actions-hover;}.array-add-icon{@apply --query-parameter-input-add-icon;}.add-array-button{@apply --query-parameter-input-add-button;}</style><template is="dom-if" if="[[isEnum]]"><paper-dropdown-menu label="[[model.inputLabel]]" name="[[name]]" required="[[model.required]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{value}}"><template is="dom-repeat" items="[[model.enum]]"><paper-item data-value$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[isBoolean]]"><paper-dropdown-menu label="[[model.inputLabel]]" name="[[name]]" required="[[model.required]]"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{value}}"><paper-item data-value="true">True</paper-item><paper-item data-value="false">False</paper-item></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[isInput]]"><paper-input label="[[model.inputLabel]]" value="{{value}}" required="[[model.required]]" pattern="[[model.pattern]]" name="[[name]]" auto-validate="" type="[[model.inputType]]" min="[[model.minimum]]" max="[[model.maximum]]" maxlength="[[model.maxLength]]" minlength="[[model.minLength]]" always-float-label="[[model.inputFloatLabel]]" placeholder="[[model.inputPlaceholder]]"></paper-input></template><template is="dom-if" if="[[isArray]]"><label>[[model.inputLabel]]</label><template is="dom-repeat" items="[[arrayValue]]"><div class="array-item"><paper-input label="Parameter value" value="{{item.value}}" required="[[model.required]]" pattern="[[model.pattern]]" name="[[name]]" auto-validate="" type="[[model.inputType]]" min="[[model.minimum]]" max="[[model.maximum]]" maxlength="[[model.maxLength]]" minlength="[[model.minLength]]" no-label-float="" on-input="_arrayValueChanged"></paper-input><template is="dom-if" if="[[index]]"><span><paper-icon-button class="delete-icon" suffix="" icon="arc:remove-circle-outline" on-tap="_removeArrayValue"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Remove array value</paper-tooltip></span></template></div></template><div class="add-action"><paper-button on-tap="_addArrayValue" class="add-array-button"><iron-icon class="array-add-icon" icon="arc:add-circle-outline"></iron-icon>Add array value</paper-button></div></template></template><script>Polymer({is:"query-parameter-input",behaviors:[Polymer.IronFormElementBehavior],properties:{model:{type:Object,observer:"_modelChanged"},isEnum:Boolean,isInput:Boolean,isArray:{type:Boolean,reflectToAttribute:true},isBoolean:Boolean,arrayValue:{type:Array,value:function(){return[]}}},observers:["_isArrayChanged(isArray, value)"],resetStates:function(){this.isEnum=undefined;this.isInput=undefined;this.isArray=undefined;this.isBoolean=undefined},_modelChanged:function(model){this.resetStates();if(!model){this._forceNotifyChange();
+return}if(model.isEnum){this.isEnum=true;this._forceNotifyChange();return}if(model.isArray){this.isArray=true;return}if(model.isBoolean){this.isBoolean=true;return}this.isInput=true},_isArrayChanged:function(isArray){if(this.__internalChange)return;var v=this.value;if(!v||!isArray){this.arrayValue=[];return}this.arrayValue=this._itemsForArray(v)},_itemsForArray:function(value){var result=[];if(value instanceof Array)result=value.map(function(item){return{value:item}});else result.push({value:value});
+return result},_arrayValueChanged:function(){var arr=this.arrayValue;if(arr)arr=arr.map(function(item){return item.value});this.__internalChange=true;this.set("value",arr);this.__internalChange=false},_addArrayValue:function(){this.push("arrayValue",{value:""})},_removeArrayValue:function(e){var repeater=this.$$('template[is\x3d"dom-repeat"]');var index=repeater.indexForElement(e.target);this.splice("arrayValue",index,1);this._arrayValueChanged()},_forceNotifyChange:function(){Polymer.RenderStatus.afterNextRender(this,
+function(){this.fire("value-changed",{value:this.value},{bubbles:false})})}});</script></dom-module><dom-module id="raml-request-parameters-form" assetpath="bower_components/raml-request-parameters-editor/"><template strip-whitespace=""><style include="markdown-styles"></style><style>:host{display:block;@apply --raml-request-parameters-form;--paper-input-container-label:{color:var(--raml-request-parameters-editor-input-label-color, rgba(0, 0, 0, 0.48));};}.param-value{@apply --raml-request-parameters-editor-row;}.param-value.optional{display:none;}.param-value.required{}.param-value.optional.with-optional{display:block;}.param-value .input{@apply --layout-horizontal;@apply --layout-flex;}.docs{@apply --arc-font-common-base;font-size:13px !important;font-weight:200;line-height:24px;color:var(--inline-documentation-color, rgba(0, 0, 0, 0.87));}.markdown-html *{font-size:13px !important;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}.help-icon{color:var(--accent-color, rgba(0, 0, 0, 0.74));transition:opacity 0.2s ease-in-out;opacity:0.54;}.help-icon:hover{opacity:0.74;}.value-input{@apply --layout-horizontal;@apply --layout-center;@apply --layout-flex;}.value-input.is-array{@apply --layout-end;@apply --raml-request-parameters-form-array-paramtere;}.optional-toggle-button{font-size:13px;@apply --raml-request-parameters-form-optional-toggle-button;}query-parameter-input{@apply --layout-flex;margin-bottom:8px;}</style><form is="iron-form"><template is="dom-repeat" items="{{model}}" items-repeater=""><div class$="[[_computeRowClass(item, optionalOpened)]]"><div class$="value-input [[_computeTypeClass(item.isArray)]]"><query-parameter-input model="[[item]]" name="[[item.key]]" value="{{item.value}}" required$="[[item.required]]" on-value-changed="_parameterValueChanged"></query-parameter-input><template is="dom-if" if="[[item.hasDescription]]"><span><paper-icon-button class="help-icon" suffix="" icon="arc:help" on-tap="_openDocs"></paper-icon-button><paper-tooltip position="left" offset="1" margin-top="1" animation-delay="300">Display documentation</paper-tooltip></span></template></div><template is="dom-if" if="[[item.hasDescription]]"><div class="docs"><iron-collapse><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></div></template></form></template><script>Polymer({is:"raml-request-parameters-form",behaviors:[Polymer.IronValidatableBehavior],properties:{model:Array,optionalOpened:{type:Boolean,value:false},formType:String},_getForm:function(){return this.$$("form")},_getValidity:function(){return this._getForm().validate()},serialize:function(){return this._getForm().serialize()},_openDocs:function(e){var form=this._getForm();var template=form.querySelector("[items-repeater]");var model=template.modelForElement(e.target);var collapse=form.querySelector(".param-value:nth-child("+
+(model.index+1)+") iron-collapse");if(!collapse)return;collapse.opened=!collapse.opened},_computeRowClass:function(item,optionalOpened){var clazz="param-value";if(item.required)clazz+=" required";else clazz+=" optional";if(optionalOpened)clazz+=" with-optional";return clazz},toggleOptionalParams:function(){this.optionalOpened=!this.optionalOpened},_parameterValueChanged:function(e){var formType=this.formType;if(!formType||["query","uri"].indexOf(formType)===-1)return;var item=e.model.get("item");
+var name=item.name||item.key;var value=item.value;this.fire(formType+"-parameter-changed",{name:name,value:value})},_computeTypeClass:function(isArray){return isArray?"is-array":""}});</script></dom-module><dom-module id="raml-request-parameters-editor" assetpath="bower_components/raml-request-parameters-editor/"><template strip-whitespace=""><style>:host{display:block;@apply --raml-request-parameters-editor;}h3{@apply --raml-request-parameters-editor-subheader;}.params-title{@apply --layout-horizontal;@apply --layout-center;}.params-title h3{display:inline-block;margin-right:12px;}.params-title paper-checkbox{--paper-checkbox-label-color:rgba(0, 0, 0, 0.54);}.empty-message{@apply --raml-request-parameters-editor-no-params;}.empty-message p{@apply --raml-request-parameters-editor-no-params-message;}</style><section hidden$="[[hasParameters]]" class="empty-message"><p>This endpoint doesn't require to declare query or URI parameters.</p></section><template is="dom-if" if="[[hasUriParameters]]"><section><h3>URI parameters</h3><raml-request-parameters-form id="uriParametersForm" form-type="uri" model="{{uriModel}}" optional-opened=""></raml-request-parameters-form></section></template><template is="dom-if" if="[[hasQueryParameters]]"><section><div class="params-title"><h3>Query parameters</h3><template is="dom-if" if="[[hasOptional]]"><paper-checkbox hidden$="[[!hasOptional]]" checked="{{optionalOpened}}">Show optional parameters</paper-checkbox></template></div><raml-request-parameters-form id="queryParametersForm" form-type="query" optional-opened="[[optionalOpened]]" model="{{queryModel}}"></raml-request-parameters-form></section></template></template><script>(function(){Polymer({is:"raml-request-parameters-editor",behaviors:[Polymer.IronValidatableBehavior],properties:{queryModel:Array,hasQueryParameters:Boolean,uriModel:Array,hasUriParameters:Boolean,hasParameters:Boolean,hasOptional:{type:Boolean,computed:"_computeHasOptionalParameters(queryModel.*)",notify:true},optionalOpened:Boolean},_getValidity:function(){var validUri=true;var validUrl=true;if(this.hasUriParameters)validUri=this.$$("#uriParametersForm").validate();if(this.hasQueryParameters)validUrl=
+this.$$("#queryParametersForm").validate();return validUri&&validUrl},_computeHasOptionalParameters:function(record){if(!record||!record.base||!record.base.length)return false;var list=record.base;for(var i=0,len=list.length;i<len;i++)if(!list[i].required)return true;return false}})})();</script></dom-module><dom-module id="raml-request-url-editor" assetpath="bower_components/raml-request-url-editor/"><template><style include="markdown-styles"></style><style>:host{outline:none;display:block;@apply (--raml-request-url-editor);}.markdown-body{@apply (--arc-font-body1);margin-top:12px;color:rgba(0, 0, 0, 0.54);@apply (--raml-request-url-editor-documentation);}.paper-input-input{@apply (--raml-request-url-editor-input);}</style><paper-input-container no-label-float="[[noLabelFloat]]" attr-for-value="bind-value" always-float-label="[[alwaysFloatLabel]]" disabled$="[[disabled]]" invalid="[[invalid]]"><label hidden$="[[!label]]">[[label]]</label><input is="iron-input" id="input" class="paper-input-input" aria-label-prefix="[[_ariaLabelledBy]]" bind-value="{{value}}" disabled$="[[disabled]]" required$="[[required]]" autofocus$="[[autofocus]]" readonly$="[[readonly]]" type="url" on-tap="_inputTap" on-blur="_onElementBlur" on-input="__userInputHandler"><template is="dom-if" if="[[errorMessage]]"><paper-input-error>[[errorMessage]]</paper-input-error></template></paper-input-container><template is="dom-if" if="[[documentation]]"><marked-element markdown="[[documentation]]"><div class="markdown-html markdown-body"></div></marked-element></template></template><script>Polymer({is:"raml-request-url-editor",behaviors:[Polymer.PaperInputBehavior,Polymer.IronValidatableBehavior,Polymer.IronFormElementBehavior,ArcBehaviors.EventsTargetBehavior],properties:{label:{type:String,value:"Request URL"},value:{type:String,notify:true,observer:"_onValueChanged"},errorMessage:{type:String,value:"Fill the URI parameters before making a request"},documentation:{type:String},skipDocs:Boolean,baseUri:String,endpointUri:String,_fullUri:{computed:"_computeFullUrl(baseUri, endpointUri)"},
+queryModel:{type:Array,value:function(){return[]}},uriModel:{type:Array,value:function(){return[]}},urlParams:{type:Array,computed:"_computeUrlParams(_fullUri)"},urlSearchRegexp:{type:RegExp,computed:"_computeUrlRegexp(_fullUri)"}},hostAttributes:{"tabindex":-1,focusable:true},observers:["_computeValueChanged(_fullUri, queryModel.*, uriModel.*)","_notifyModelChanged(queryModel.*)","_notifyModelChanged(uriModel.*)"],ready:function(){this._ready=true;if(this.value)this._handleAutoValidate()},_attachListeners:function(node){this.listen(node,
+"url-value-changed","_extValueChangedHandler")},_detachListeners:function(node){this.unlisten(node,"url-value-changed","_extValueChangedHandler")},_computeFullUrl:function(baseUri,endpointUri){if(!endpointUri)endpointUri="/";if(endpointUri[0]!=="/")endpointUri="/"+endpointUri;if(!baseUri)return endpointUri;if(baseUri[baseUri.length-1]==="/")baseUri=baseUri.substr(0,baseUri.length-1);return baseUri+endpointUri},_computeValueChanged:function(_fullUri,queryRecord,uriRecord){this._computeValue(queryRecord.base,
+uriRecord.base,_fullUri)},_computeValue:function(queryModel,uriModel,uri){if(!uri){this.set("value",undefined);return}uri=this._applyUriParams(uri,uriModel);uri=this._applyQueryParams(uri,queryModel);this.set("value",uri)},_formValuesFromModel:function(model){var result={};if(!model||!model.length)return result;model.forEach(function(item){result[item.key]=item.value});return result},_applyUriParams:function(url,model){var uriParams=this._formValuesFromModel(model);for(var paramName in uriParams){var value=
+uriParams[paramName];if(!value)continue;value=String(value);if(value.trim()==="")continue;value=this._wwwFormUrlEncodePiece(value);var re=new RegExp("{"+paramName+"}");url=url.replace(re,value)}return url},_applyQueryParams:function(url,model){var params=this._formValuesFromModel(model);var items=this._computeQueryItems(params);params=this._wwwFormUrlEncode(items);if(!params)return url;url+=url.indexOf("?")===-1?"?":"\x26";url+=params;return url},_computeQueryItems:function(params){var items=[];for(var paramName in params){var value=
+params[paramName];if(!value&&value!==0&&value!==null&&value!==false)continue;var isArray=false;if(value instanceof Array){isArray=true;if(!value.length||value.length===1&&!value[0])continue}else{value=String(value);if(value.trim()===""){delete params[paramName];continue}}if(isArray)for(var i=0,len=value.length;i<len;i++){if(value||value===0||value===false)items.push({name:paramName,value:value[i]})}else items.push({name:paramName,value:value})}return items},_wwwFormUrlEncode:function(object){if(!object||
+!object.length)return"";var pieces=object.map(function(item){return this._wwwFormUrlEncodePiece(item.name)+"\x3d"+this._wwwFormUrlEncodePiece(item.value)},this);return pieces.join("\x26")},_wwwFormUrlEncodePiece:function(str){if(!str)return"";return encodeURIComponent(str.toString().replace(/\r?\n/g,"\r\n")).replace(/%20/g,"+")},__userInputHandler:function(e){var value=e.target.value;var matches;var uriParams=this.urlParams;var uriRegexp=this.urlSearchRegexp;if(uriParams&&uriRegexp){matches=value.match(uriRegexp);
+if(matches){matches.shift();this._applyUriValues(matches,uriParams)}}matches=value.match(/[^&?]*?=[^&?]*/g);if(!matches)return;var params={};matches.forEach(function(item){var parts=item.split("\x3d");var name=parts[0];if(name in params){if(!(params[name]instanceof Array))params[name]=[params[name]];params[name].push(parts[1])}else params[name]=parts[1]});this._applyQueryParamsValues(params)},_applyUriValues:function(values,names){var up=this.uriModel;var len=up.length;names.forEach(function(item,
+index){for(var i=0;i<len;i++)if(up[i].name===item){this.fire("uri-parameter-changed",{name:up[i].name,value:values[index]});break}},this)},_applyQueryParamsValues:function(map){var qp=this.queryModel;var len=qp.length;for(var _key in map)for(var i=0;i<len;i++)if(qp[i].name===_key){this.fire("query-parameter-changed",{name:qp[i].name,value:map[_key]});break}},_onValueChanged:function(){if(!this._ready)return;this.fire("url-value-changed",{value:this.value});this._handleAutoValidate()},_displayVariableDoc:function(id){if(this.skipDocs)return;
+var up=this.uriModel;if(!id||!up){this.documentation="";return}var item;for(var i=0,len=up.length;i<len;i++)if(up[i].name===id){item=up[i];break}if(!item||!item.description){this.documentation="";return}this.documentation=item.description},_onElementBlur:function(){this.documentation=""},_extValueChangedHandler:function(e){if(e.target===this)return;this.set("value",e.detail.value)},_getValidity:function(){var value=this.value;if(!this.required&&!value)return true;if(value===undefined)return true;
 if(!value&&this.required)return false;if(!value)return true;if(value.indexOf("{")!==-1&&value.indexOf("}")!==-1)return false;if("URL"in window)try{new URL(value);return true}catch(e){return false}return this.$.input.validity.valid},_inputTap:function(){var variable=this._getSelectedVariable();this._displayVariableDoc(variable)},_getSelectedVariable:function(){var start=this.$.input.selectionStart;var variable=this._computeVariableFromPosition(start);return variable},_computeVariableFromPosition:function(start){var value=
-this.value;if(!start||!value)return;var pos;var leftBracketPos=-1;for(pos=start;pos>0;pos--){if(value[pos]==="}")break;if(value[pos]==="{"){leftBracketPos=pos;break}}if(leftBracketPos===-1)return;var rightBracketPos=-1;for(pos=leftBracketPos;pos<value.length;pos++){var _val=value[pos];if(_val==="}"){rightBracketPos=pos;break}else if(_val==="."||_val==="/")break}if(rightBracketPos===-1)return;var variable=value.substr(leftBracketPos+1,rightBracketPos-leftBracketPos-1);return variable}});</script></dom-module><script>Polymer.PaperSpinnerBehavior={listeners:{"animationend":"__reset","webkitAnimationEnd":"__reset"},properties:{active:{type:Boolean,value:false,reflectToAttribute:true,observer:"__activeChanged"},alt:{type:String,value:"loading",observer:"__altChanged"},__coolingDown:{type:Boolean,value:false}},__computeContainerClasses:function(active,coolingDown){return[active||coolingDown?"active":"",coolingDown?"cooldown":""].join(" ")},__activeChanged:function(active,old){this.__setAriaHidden(!active);this.__coolingDown=
-!active&&old},__altChanged:function(alt){if(alt===this.getPropertyInfo("alt").value)this.alt=this.getAttribute("aria-label")||alt;else{this.__setAriaHidden(alt==="");this.setAttribute("aria-label",alt)}},__setAriaHidden:function(hidden){var attr="aria-hidden";if(hidden)this.setAttribute(attr,"true");else this.removeAttribute(attr)},__reset:function(){this.active=false;this.__coolingDown=false}};</script><dom-module id="paper-spinner-styles" assetpath="bower_components/paper-spinner/"><template><style>:host{display:inline-block;position:relative;width:28px;height:28px;--paper-spinner-container-rotation-duration:1568ms;--paper-spinner-expand-contract-duration:1333ms;--paper-spinner-full-cycle-duration:5332ms;--paper-spinner-cooldown-duration:400ms;}#spinnerContainer{width:100%;height:100%;direction:ltr;}#spinnerContainer.active{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite;animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite;}@-webkit-keyframes container-rotate{to{-webkit-transform:rotate(360deg);}}@keyframes container-rotate{to{transform:rotate(360deg);}}.spinner-layer{position:absolute;width:100%;height:100%;opacity:0;white-space:nowrap;border-color:var(--paper-spinner-color, --google-blue-500);}.layer-1{border-color:var(--paper-spinner-layer-1-color, --google-blue-500);}.layer-2{border-color:var(--paper-spinner-layer-2-color, --google-red-500);}.layer-3{border-color:var(--paper-spinner-layer-3-color, --google-yellow-500);}.layer-4{border-color:var(--paper-spinner-layer-4-color, --google-green-500);}.active .spinner-layer{-webkit-animation-name:fill-unfill-rotate;-webkit-animation-duration:var(--paper-spinner-full-cycle-duration);-webkit-animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);-webkit-animation-iteration-count:infinite;animation-name:fill-unfill-rotate;animation-duration:var(--paper-spinner-full-cycle-duration);animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);animation-iteration-count:infinite;opacity:1;}.active .spinner-layer.layer-1{-webkit-animation-name:fill-unfill-rotate, layer-1-fade-in-out;animation-name:fill-unfill-rotate, layer-1-fade-in-out;}.active .spinner-layer.layer-2{-webkit-animation-name:fill-unfill-rotate, layer-2-fade-in-out;animation-name:fill-unfill-rotate, layer-2-fade-in-out;}.active .spinner-layer.layer-3{-webkit-animation-name:fill-unfill-rotate, layer-3-fade-in-out;animation-name:fill-unfill-rotate, layer-3-fade-in-out;}.active .spinner-layer.layer-4{-webkit-animation-name:fill-unfill-rotate, layer-4-fade-in-out;animation-name:fill-unfill-rotate, layer-4-fade-in-out;}@-webkit-keyframes fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);}25%{-webkit-transform:rotate(270deg);}37.5%{-webkit-transform:rotate(405deg);}50%{-webkit-transform:rotate(540deg);}62.5%{-webkit-transform:rotate(675deg);}75%{-webkit-transform:rotate(810deg);}87.5%{-webkit-transform:rotate(945deg);}to{-webkit-transform:rotate(1080deg);}}@keyframes fill-unfill-rotate{12.5%{transform:rotate(135deg);}25%{transform:rotate(270deg);}37.5%{transform:rotate(405deg);}50%{transform:rotate(540deg);}62.5%{transform:rotate(675deg);}75%{transform:rotate(810deg);}87.5%{transform:rotate(945deg);}to{transform:rotate(1080deg);}}@-webkit-keyframes layer-1-fade-in-out{0%{opacity:1;}25%{opacity:1;}26%{opacity:0;}89%{opacity:0;}90%{opacity:1;}to{opacity:1;}}@keyframes layer-1-fade-in-out{0%{opacity:1;}25%{opacity:1;}26%{opacity:0;}89%{opacity:0;}90%{opacity:1;}to{opacity:1;}}@-webkit-keyframes layer-2-fade-in-out{0%{opacity:0;}15%{opacity:0;}25%{opacity:1;}50%{opacity:1;}51%{opacity:0;}to{opacity:0;}}@keyframes layer-2-fade-in-out{0%{opacity:0;}15%{opacity:0;}25%{opacity:1;}50%{opacity:1;}51%{opacity:0;}to{opacity:0;}}@-webkit-keyframes layer-3-fade-in-out{0%{opacity:0;}40%{opacity:0;}50%{opacity:1;}75%{opacity:1;}76%{opacity:0;}to{opacity:0;}}@keyframes layer-3-fade-in-out{0%{opacity:0;}40%{opacity:0;}50%{opacity:1;}75%{opacity:1;}76%{opacity:0;}to{opacity:0;}}@-webkit-keyframes layer-4-fade-in-out{0%{opacity:0;}65%{opacity:0;}75%{opacity:1;}90%{opacity:1;}to{opacity:0;}}@keyframes layer-4-fade-in-out{0%{opacity:0;}65%{opacity:0;}75%{opacity:1;}90%{opacity:1;}to{opacity:0;}}.circle-clipper{display:inline-block;position:relative;width:50%;height:100%;overflow:hidden;border-color:inherit;}.spinner-layer::after{left:45%;width:10%;border-top-style:solid;}.spinner-layer::after,
-      .circle-clipper::after{content:'';box-sizing:border-box;position:absolute;top:0;border-width:var(--paper-spinner-stroke-width, 3px);border-color:inherit;border-radius:50%;}.circle-clipper::after{bottom:0;width:200%;border-style:solid;border-bottom-color:transparent !important;}.circle-clipper.left::after{left:0;border-right-color:transparent !important;-webkit-transform:rotate(129deg);transform:rotate(129deg);}.circle-clipper.right::after{left:-100%;border-left-color:transparent !important;-webkit-transform:rotate(-129deg);transform:rotate(-129deg);}.active .gap-patch::after,
-      .active .circle-clipper::after{-webkit-animation-duration:var(--paper-spinner-expand-contract-duration);-webkit-animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);-webkit-animation-iteration-count:infinite;animation-duration:var(--paper-spinner-expand-contract-duration);animation-timing-function:cubic-bezier(0.4, 0.0, 0.2, 1);animation-iteration-count:infinite;}.active .circle-clipper.left::after{-webkit-animation-name:left-spin;animation-name:left-spin;}.active .circle-clipper.right::after{-webkit-animation-name:right-spin;animation-name:right-spin;}@-webkit-keyframes left-spin{0%{-webkit-transform:rotate(130deg);}50%{-webkit-transform:rotate(-5deg);}to{-webkit-transform:rotate(130deg);}}@keyframes left-spin{0%{transform:rotate(130deg);}50%{transform:rotate(-5deg);}to{transform:rotate(130deg);}}@-webkit-keyframes right-spin{0%{-webkit-transform:rotate(-130deg);}50%{-webkit-transform:rotate(5deg);}to{-webkit-transform:rotate(-130deg);}}@keyframes right-spin{0%{transform:rotate(-130deg);}50%{transform:rotate(5deg);}to{transform:rotate(-130deg);}}#spinnerContainer.cooldown{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite, fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(0.4, 0.0, 0.2, 1);animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite, fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(0.4, 0.0, 0.2, 1);}@-webkit-keyframes fade-out{0%{opacity:1;}to{opacity:0;}}@keyframes fade-out{0%{opacity:1;}to{opacity:0;}}</style></template></dom-module><dom-module id="paper-spinner" assetpath="bower_components/paper-spinner/"><template strip-whitespace=""><style include="paper-spinner-styles"></style><div id="spinnerContainer" class-name="[[__computeContainerClasses(active, __coolingDown)]]"><div class="spinner-layer layer-1"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-2"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-3"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-4"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div></div></template><script>Polymer({is:"paper-spinner",behaviors:[Polymer.PaperSpinnerBehavior]});</script></dom-module><dom-module id="paper-masked-input" assetpath="bower_components/paper-masked-input/"><template><style>:host{display:block;}:host([disabled]){pointer-events:none;outline:none;@apply (--paper-masked-input-disabled);}</style><paper-input label="[[label]]" type="[[type]]" value="{{value}}" error-message="[[errorMessage]]" invalid="{{invalid}}" prevent-invalid-input="[[preventInvalidInput]]" allowed-pattern="[[allowedPattern]]" validator="[[validator]]" pattern$="[[pattern]]" autocomplete$="[[autocomplete]]" required$="[[required]]" autofocus$="[[autofocus]]" inputmode$="[[inputmode]]" minlength$="[[minlength]]" maxlength$="[[maxlength]]" name$="[[name]]" placeholder$="[[placeholder]]" readonly$="[[readonly]]" size$="[[size]]" autocapitalize$="[[autocapitalize]]" autocorrect$="[[autocorrect]]" tabindex$="[[tabindex]]" disabled$="[[disabled]]" no-label-float="[[noLabelFloat]]" always-float-label="[[alwaysFloatLabel]]" auto-validate$="[[autoValidate]]" id="input"><paper-icon-button suffix="" on-tap="toggle" icon="[[icon]]" alt="[[alt]]" title$="[[title]]" disabled$="[[disabled]]"></paper-icon-button><paper-icon-button suffix="" on-tap="clear" icon="arc:clear" alt="Clear input icon" title="Clear input" disabled$="[[disabled]]"></paper-icon-button></paper-input></template><script>Polymer({is:"paper-masked-input",properties:{label:String,value:{type:String,notify:true},visible:{type:Boolean,value:false,notify:true},icon:{type:String,value:"arc:visibility",readOnly:true},type:{type:String,value:"password",readOnly:true},alt:{type:String,computed:"_computeAlt(title)"},title:{type:String,value:"Show password",readOnly:true},errorMessage:String,invalid:{type:Boolean,notify:true},preventInvalidInput:Boolean,allowedPattern:String,validator:String,pattern:String,autocomplete:{type:String,
-value:"off"},required:{type:Boolean,value:false},autofocus:Boolean,inputmode:String,minlength:Number,maxlength:Number,name:String,placeholder:{type:String,value:""},readonly:{type:Boolean,value:false},size:Number,autocapitalize:{type:String,value:"none"},autocorrect:{type:String,value:"off"},disabled:{type:Boolean,value:false},noLabelFloat:{type:Boolean,value:false},alwaysFloatLabel:{type:Boolean,value:false},autoValidate:{type:Boolean,value:false}},hostAttributes:{tabindex:0},observers:["_visibleChanged(visible)"],
-toggle:function(){this.set("visible",!this.visible)},_visibleChanged:function(visible){if(visible){this._setType("text");this._setIcon("arc:visibility-off");this._setTitle("Hide password")}else{this._setType("password");this._setIcon("arc:visibility");this._setTitle("Show password")}},_computeAlt:function(title){return title+" icon"},clear:function(){this.set("value","")},validate:function(){this.$.input.validate()},get inputElement(){return this.$.input}});</script></dom-module><script>(function(){window.ArcBehaviors=window.ArcBehaviors||{};window.ArcBehaviors.AuthMethodsBehavior={properties:{stepStartIndex:{type:Number,value:1},noStepper:{type:Boolean,reflectToAttribute:true}},_getAuthType:function(){var name=this.nodeName.toLowerCase();switch(name){case "auth-method-basic":return"basic";case "auth-method-ntlm":return"ntlm";case "auth-method-oauth1":return"oauth1";case "auth-method-oauth2":return"oauth2";case "auth-method-digest":return"digest"}},_computeStep:function(stepStartIndex,
-currentStep){return stepStartIndex+currentStep}}})();</script><dom-module id="auth-methods-styles" assetpath="bower_components/auth-methods/"><template><style>.stepper{@apply (--layout-horizontal);@apply (--layout-center);padding:12px 0;position:relative;pointer-events:none;}.stepper.active{pointer-events:all;cursor:pointer;}.stepper .step{display:inline-block;background-color:var(--stepper-step-number-background-color, #3D8099);color:var(--stepper-step-number-color, #fff);font-size:14px;@apply (--layout-center-center);@apply (--layout-horizontal);width:24px;height:24px;border-radius:50%;margin-right:12px;}.stepper .step-header{position:relative;@apply (--layout-flex);}.stepper .step-title{@apply (--arc-font-body1);display:block;color:var(--stepper-step-title-color, #3D8099);font-size:16px;font-weight:500;}.stepper .step-selection{@apply (--arc-font-body1);color:var(--stepper-step-selection-label-color, rgba(0, 0, 0, 0.54));position:absolute;bottom:-16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%;}.stepper paper-ripple{color:var(--stepper-step-title-color, #3D8099);}.step-content{@apply (--layout-horizontal);margin-bottom:12px;min-height:32px;}.step-content .line{min-width:11px;max-width:11px;border-right:1px var(--stepper-line-color, rgba(0, 0, 0, 0.12)) solid;margin-right:24px;}.step-content .content{@apply (--layout-flex);}paper-input,
-    paper-masked-input{max-width:560px;}.step-content .content{max-width:calc(100% - 16px);}#form{width:100%;}:host([no-stepper]) .step-content .line,
-    :host([no-stepper]) .stepper{display:none;}.edit-icon{visibility:hidden;}.active .step-header:hover .edit-icon{visibility:visible;}</style></template></dom-module><dom-module id="auth-method-basic" assetpath="bower_components/auth-methods/"><template><style include="auth-methods-styles">:host{display:block;@apply (--auth-method-panel);@apply (--auth-method-basic);}</style><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><form is="iron-form" id="form" autocomplete="on"><paper-input label="User name" value="{{username}}" type="text" required="" auto-validate="" autocomplete="on"><paper-icon-button suffix="" on-tap="clearUsername" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-masked-input label="Password" value="{{password}}" auto-validate="" autocomplete="on"></paper-masked-input></form></div></div></template><script>Polymer({is:"auth-method-basic",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{hash:{type:String,notify:true},password:{type:String,notify:true,value:""},username:{type:String,notify:true,value:""}},attached:function(){this.listen(window,"auth-settings-changed","_onAuthSettings")},detached:function(){this.unlisten(window,"auth-settings-changed","_onAuthSettings")},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},
-observers:["_hashChanged(hash)","_userInputChanged(username, password)","_settingsChanged(hash)"],_settingsChanged:function(){var validationResult=this.$.form.validate();var settings=this._getSettings();var detail={settings:settings,type:"basic",valid:validationResult};this.fire("auth-settings-changed",detail)},_getSettings:function(){return{hash:this.hash,password:this.password,username:this.username}},_hashChanged:function(hash){if(this._internalHashChange||!hash)return;var encoded;try{encoded=
-atob(hash);var parts=encoded.split(":");if(parts.length){this.username=parts[0];if(parts[1])this.password=parts[1]}}catch(e){console.warn(e);this.fire("error",{error:e})}},_userInputChanged:function(uid,passwd){if(!uid)uid="";if(!passwd)passwd="";var enc=uid+":"+passwd;var hash=btoa(enc);this._internalHashChange=true;this.set("hash",hash);this._internalHashChange=false},clearUsername:function(){this.username=""},_onAuthSettings:function(e){if(!this._initialized)return;var event=Polymer.dom(e);if(event.rootTarget===
-this)return;if(e.detail.type!=="basic")return;var otherSettings=e.detail.settings;for(var _key in otherSettings)if(this[_key]!==otherSettings[_key])this[_key]=otherSettings[_key]}});</script></dom-module><script>var CryptoJS=CryptoJS||function(s,p){var m={},l=m.lib={},n=function(){},r=l.Base={extend:function(b){n.prototype=this;var h=new n;b&&h.mixIn(b);h.hasOwnProperty("init")||(h.init=function(){h.$super.init.apply(this,arguments)});h.init.prototype=h;h.$super=this;return h},create:function(){var b=this.extend();b.init.apply(b,arguments);return b},init:function(){},mixIn:function(b){for(var h in b)b.hasOwnProperty(h)&&(this[h]=b[h]);b.hasOwnProperty("toString")&&(this.toString=b.toString)},clone:function(){return this.init.prototype.extend(this)}},
+this.value;if(!start||!value)return;var pos;var leftBracketPos=-1;for(pos=start;pos>0;pos--){if(value[pos]==="}")break;if(value[pos]==="{"){leftBracketPos=pos;break}}if(leftBracketPos===-1)return;var rightBracketPos=-1;for(pos=leftBracketPos;pos<value.length;pos++){var _val=value[pos];if(_val==="}"){rightBracketPos=pos;break}else if(_val==="."||_val==="/")break}if(rightBracketPos===-1)return;var variable=value.substr(leftBracketPos+1,rightBracketPos-leftBracketPos-1);return variable},_computeUrlRegexp:function(url){if(!url)return null;
+url=url.replace(/(\.|\/)/g,"\\$1");url=url.replace(/{\w+}/g,"([a-zA-Z0-9\\$\\-_\\.~\\+!'\\(\\)\\*]+)");return new RegExp(url)},_computeUrlParams:function(url){if(!url)return null;var paramsNames=url.match(/\{\w+\}/g);if(paramsNames)paramsNames=paramsNames.map(function(item){return item.substr(1,item.length-2)});return paramsNames},_notifyModelChanged:function(record){if(!record)return;if(record.path==="queryModel"||record.path==="uriModel")return;if(record.path.indexOf("value")<2)return;var item=
+record.path.substr(0,record.path.lastIndexOf("."));if(!item){console.warn("Unable to notify parameter change. Unknown path",record.path);return}var type=record.path.substr(0,record.path.indexOf("."));var formType=type==="queryModel"?"query":"uri";this.fire(formType+"-parameter-changed",{name:item.name,value:item.value})}});</script></dom-module><dom-module id="paper-masked-input" assetpath="bower_components/paper-masked-input/"><template><style>:host{display:block;}:host([disabled]){pointer-events:none;outline:none;@apply (--paper-masked-input-disabled);}.action-icon{color:var(--content-action-button-color, rgba(0, 0, 0, 0.74));transition:color 0.25s linear;}.action-icon:hover{color:var(--content-action-button-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}</style><paper-input label="[[label]]" type="[[_computeInputType(visible)]]" value="{{value}}" error-message="[[errorMessage]]" invalid="{{invalid}}" prevent-invalid-input="[[preventInvalidInput]]" allowed-pattern="[[allowedPattern]]" validator="[[validator]]" pattern$="[[pattern]]" autocomplete$="[[autocomplete]]" required$="[[required]]" autofocus$="[[autofocus]]" inputmode$="[[inputmode]]" minlength$="[[minlength]]" maxlength$="[[maxlength]]" name$="[[name]]" placeholder$="[[placeholder]]" readonly$="[[readonly]]" size$="[[size]]" autocapitalize$="[[autocapitalize]]" autocorrect$="[[autocorrect]]" tabindex="0" disabled$="[[disabled]]" no-label-float="[[noLabelFloat]]" always-float-label="[[alwaysFloatLabel]]" auto-validate$="[[autoValidate]]" id="input"><paper-icon-button id="toggleButton" suffix="" on-tap="toggle" class="action-icon" icon="[[_computeToggleIcon(visible)]]" alt="Toggle icon" disabled$="[[disabled]]"></paper-icon-button><paper-icon-button id="clearButton" suffix="" on-tap="clear" class="action-icon" icon="arc:clear" alt="Clear input icon" title="Clear input" disabled$="[[disabled]]"></paper-icon-button></paper-input><paper-tooltip for="toggleButton" animation-delay="200">[[_computeToggleLabel(visible)]]</paper-tooltip><paper-tooltip for="clearButton" animation-delay="200">Clear input</paper-tooltip></template><script>Polymer({is:"paper-masked-input",properties:{label:String,value:{type:String,notify:true},visible:{type:Boolean,value:false,notify:true},type:{type:String,value:"text"},errorMessage:String,invalid:{type:Boolean,notify:true},preventInvalidInput:Boolean,allowedPattern:String,validator:String,pattern:String,autocomplete:{type:String,value:"off"},required:{type:Boolean,value:false},autofocus:Boolean,inputmode:String,minlength:Number,maxlength:Number,name:String,placeholder:{type:String,value:""},readonly:{type:Boolean,
+value:false},size:Number,autocapitalize:{type:String,value:"none"},autocorrect:{type:String,value:"off"},disabled:{type:Boolean,value:false},noLabelFloat:{type:Boolean,value:false},alwaysFloatLabel:{type:Boolean,value:false},autoValidate:{type:Boolean,value:false}},hostAttributes:{tabindex:-1},toggle:function(){this.set("visible",!this.visible)},_computeToggleLabel:function(visible){return visible?"Hide password":"Show password"},_computeToggleIcon:function(visible){return visible?"arc:visibility-off":
+"arc:visibility"},_computeInputType:function(visible){return visible?this.type:"password"},clear:function(){this.set("value","")},validate:function(){this.$.input.validate()},get inputElement(){return this.$.input}});</script></dom-module><script>(function(){window.ArcBehaviors=window.ArcBehaviors||{};ArcBehaviors.AuthMethodsBehaviorImpl={properties:{stepStartIndex:{type:Number,value:1},noStepper:{type:Boolean,reflectToAttribute:true}},_getAuthType:function(){var name=this.nodeName.toLowerCase();switch(name){case "auth-method-basic":return"basic";case "auth-method-ntlm":return"ntlm";case "auth-method-oauth1":return"oauth1";case "auth-method-oauth2":return"oauth2";case "auth-method-digest":return"digest"}},_computeStep:function(stepStartIndex,
+currentStep){return stepStartIndex+currentStep}};ArcBehaviors.AuthMethodsBehavior=[ArcBehaviors.AuthMethodsBehaviorImpl,ArcBehaviors.OpenablePanelBehavior,ArcBehaviors.EventsTargetBehavior]})();</script><dom-module id="auth-methods-styles" assetpath="bower_components/auth-methods/"><template><style>.stepper{@apply --layout-horizontal;@apply --layout-center;padding:12px 0;position:relative;pointer-events:none;}.stepper.active{pointer-events:all;cursor:pointer;}.stepper .step{display:inline-block;background-color:var(--stepper-step-number-background-color, #3D8099);color:var(--stepper-step-number-color, #fff);font-size:14px;@apply --layout-center-center;@apply --layout-horizontal;width:24px;height:24px;border-radius:50%;margin-right:12px;}.stepper .step-header{position:relative;@apply --layout-flex;}.stepper .step-title{@apply --arc-font-body1;display:block;color:var(--stepper-step-title-color, #3D8099);font-size:16px;font-weight:500;}.stepper .step-selection{@apply --arc-font-body1;color:var(--stepper-step-selection-label-color, rgba(0, 0, 0, 0.54));position:absolute;bottom:-16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%;}.stepper paper-ripple{color:var(--stepper-step-title-color, #3D8099);}.step-content{@apply --layout-horizontal;margin-bottom:12px;min-height:32px;}.step-content .line{min-width:11px;max-width:11px;border-right:1px var(--stepper-line-color, rgba(0, 0, 0, 0.12)) solid;margin-right:24px;}.step-content .content{@apply --layout-flex;max-width:calc(100% - 16px);@apply (--auth-methods-step-content);}paper-input,
+    paper-masked-input{max-width:560px;}#form{width:100%;}:host([no-stepper]) .step-content .line,
+    :host([no-stepper]) .stepper{display:none;}.edit-icon{visibility:hidden;}.active .step-header:hover .edit-icon{visibility:visible;}[hidden]{display:none !important;}</style></template></dom-module><dom-module id="auth-method-basic" assetpath="bower_components/auth-methods/"><template><style include="auth-methods-styles">:host{display:block;@apply --auth-method-panel;@apply --auth-method-basic;}</style><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><form is="iron-form" id="form" autocomplete="on"><paper-input label="User name" value="{{username}}" type="text" required="" auto-validate="" autocomplete="on"><paper-icon-button suffix="" on-tap="clearUsername" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-masked-input label="Password" value="{{password}}" auto-validate="" autocomplete="on"></paper-masked-input></form></div></div></template><script>Polymer({is:"auth-method-basic",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{hash:{type:String,notify:true},password:{type:String,notify:true,value:""},username:{type:String,notify:true,value:""}},_attachListeners:function(node){this.listen(node,"auth-settings-changed","_onAuthSettings");this.listen(node,"request-header-changed","_headerChangedHandler")},_detachListeners:function(node){this.unlisten(node,"auth-settings-changed","_onAuthSettings");this.unlisten(node,"request-header-changed",
+"_headerChangedHandler")},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},observers:["_hashChanged(hash)","_userInputChanged(username, password)","_settingsChanged(hash)"],reset:function(){this.set("hash","");this.set("username","");this.set("password","")},_settingsChanged:function(){var validationResult=this.$.form.validate();var settings=this._getSettings();var detail={settings:settings,type:"basic",valid:validationResult};
+this.fire("auth-settings-changed",detail)},_getSettings:function(){return{hash:this.hash,password:this.password,username:this.username}},_hashChanged:function(hash){if(this._internalHashChange||!hash)return;var encoded;try{encoded=atob(hash);var parts=encoded.split(":");if(parts.length){this.username=parts[0];if(parts[1])this.password=parts[1]}}catch(e){console.warn(e);this.fire("error",{error:e})}},hashData:function(uid,passwd){if(!uid)uid="";if(!passwd)passwd="";var hash;if(uid||passwd){var enc=
+uid+":"+passwd;hash=btoa(enc)}else hash="";return hash},_userInputChanged:function(uid,passwd){this._internalHashChange=true;this.set("hash",this.hashData(uid,passwd));this._internalHashChange=false},clearUsername:function(){this.username=""},_onAuthSettings:function(e){if(!this._initialized)return;var event=Polymer.dom(e);if(event.rootTarget===this)return;if(e.detail.type!=="basic")return;var otherSettings=e.detail.settings;for(var _key in otherSettings)if(this[_key]!==otherSettings[_key])this[_key]=
+otherSettings[_key]},_headerChangedHandler:function(e){if(!this._isOpened||e.defaultPrevented)return;var name=e.detail.name;if(!name)return;name=name.toLowerCase();if(name!=="authorization")return;var value=e.detail.value;if(!value){if(this.hash)this.reset();return}var lowerValue=value.toLowerCase();if(lowerValue.indexOf("basic")!==0){if(this.hash)this.reset();return}value=value.substr(6);this.set("hash",value)}});</script></dom-module><script>var CryptoJS=CryptoJS||function(s,p){var m={},l=m.lib={},n=function(){},r=l.Base={extend:function(b){n.prototype=this;var h=new n;b&&h.mixIn(b);h.hasOwnProperty("init")||(h.init=function(){h.$super.init.apply(this,arguments)});h.init.prototype=h;h.$super=this;return h},create:function(){var b=this.extend();b.init.apply(b,arguments);return b},init:function(){},mixIn:function(b){for(var h in b)b.hasOwnProperty(h)&&(this[h]=b[h]);b.hasOwnProperty("toString")&&(this.toString=b.toString)},clone:function(){return this.init.prototype.extend(this)}},
 q=l.WordArray=r.extend({init:function(b,h){b=this.words=b||[];this.sigBytes=h!=p?h:4*b.length},toString:function(b){return(b||t).stringify(this)},concat:function(b){var h=this.words,a=b.words,j=this.sigBytes;b=b.sigBytes;this.clamp();if(j%4)for(var g=0;g<b;g++)h[j+g>>>2]|=(a[g>>>2]>>>24-8*(g%4)&255)<<24-8*((j+g)%4);else if(65535<a.length)for(g=0;g<b;g+=4)h[j+g>>>2]=a[g>>>2];else h.push.apply(h,a);this.sigBytes+=b;return this},clamp:function(){var b=this.words,h=this.sigBytes;b[h>>>2]&=4294967295<<
 32-8*(h%4);b.length=s.ceil(h/4)},clone:function(){var b=r.clone.call(this);b.words=this.words.slice(0);return b},random:function(b){for(var h=[],a=0;a<b;a+=4)h.push(4294967296*s.random()|0);return new q.init(h,b)}}),v=m.enc={},t=v.Hex={stringify:function(b){var a=b.words;b=b.sigBytes;for(var g=[],j=0;j<b;j++){var k=a[j>>>2]>>>24-8*(j%4)&255;g.push((k>>>4).toString(16));g.push((k&15).toString(16))}return g.join("")},parse:function(b){for(var a=b.length,g=[],j=0;j<a;j+=2)g[j>>>3]|=parseInt(b.substr(j,
 2),16)<<24-4*(j%8);return new q.init(g,a/2)}},a=v.Latin1={stringify:function(b){var a=b.words;b=b.sigBytes;for(var g=[],j=0;j<b;j++)g.push(String.fromCharCode(a[j>>>2]>>>24-8*(j%4)&255));return g.join("")},parse:function(b){for(var a=b.length,g=[],j=0;j<a;j++)g[j>>>2]|=(b.charCodeAt(j)&255)<<24-8*(j%4);return new q.init(g,a)}},u=v.Utf8={stringify:function(b){try{return decodeURIComponent(escape(a.stringify(b)))}catch(g$0){throw Error("Malformed UTF-8 data");}},parse:function(b){return a.parse(unescape(encodeURIComponent(b)))}},
@@ -1996,61 +2065,61 @@ _doProcessBlock:function(g,k){for(var b=0;16>b;b++){var h=k+b,w=g[h];g[h]=(w<<8|
 c=p(c,d,e,f,v,7,a[8]),f=p(f,c,d,e,x,12,a[9]),e=p(e,f,c,d,y,17,a[10]),d=p(d,e,f,c,z,22,a[11]),c=p(c,d,e,f,A,7,a[12]),f=p(f,c,d,e,B,12,a[13]),e=p(e,f,c,d,C,17,a[14]),d=p(d,e,f,c,D,22,a[15]),c=m(c,d,e,f,w,5,a[16]),f=m(f,c,d,e,t,9,a[17]),e=m(e,f,c,d,z,14,a[18]),d=m(d,e,f,c,h,20,a[19]),c=m(c,d,e,f,s,5,a[20]),f=m(f,c,d,e,y,9,a[21]),e=m(e,f,c,d,D,14,a[22]),d=m(d,e,f,c,r,20,a[23]),c=m(c,d,e,f,x,5,a[24]),f=m(f,c,d,e,C,9,a[25]),e=m(e,f,c,d,q,14,a[26]),d=m(d,e,f,c,v,20,a[27]),c=m(c,d,e,f,B,5,a[28]),f=m(f,c,
 d,e,j,9,a[29]),e=m(e,f,c,d,u,14,a[30]),d=m(d,e,f,c,A,20,a[31]),c=l(c,d,e,f,s,4,a[32]),f=l(f,c,d,e,v,11,a[33]),e=l(e,f,c,d,z,16,a[34]),d=l(d,e,f,c,C,23,a[35]),c=l(c,d,e,f,w,4,a[36]),f=l(f,c,d,e,r,11,a[37]),e=l(e,f,c,d,u,16,a[38]),d=l(d,e,f,c,y,23,a[39]),c=l(c,d,e,f,B,4,a[40]),f=l(f,c,d,e,h,11,a[41]),e=l(e,f,c,d,q,16,a[42]),d=l(d,e,f,c,t,23,a[43]),c=l(c,d,e,f,x,4,a[44]),f=l(f,c,d,e,A,11,a[45]),e=l(e,f,c,d,D,16,a[46]),d=l(d,e,f,c,j,23,a[47]),c=n(c,d,e,f,h,6,a[48]),f=n(f,c,d,e,u,10,a[49]),e=n(e,f,c,d,
 C,15,a[50]),d=n(d,e,f,c,s,21,a[51]),c=n(c,d,e,f,A,6,a[52]),f=n(f,c,d,e,q,10,a[53]),e=n(e,f,c,d,y,15,a[54]),d=n(d,e,f,c,w,21,a[55]),c=n(c,d,e,f,v,6,a[56]),f=n(f,c,d,e,D,10,a[57]),e=n(e,f,c,d,t,15,a[58]),d=n(d,e,f,c,B,21,a[59]),c=n(c,d,e,f,r,6,a[60]),f=n(f,c,d,e,z,10,a[61]),e=n(e,f,c,d,j,15,a[62]),d=n(d,e,f,c,x,21,a[63]);b[0]=b[0]+c|0;b[1]=b[1]+d|0;b[2]=b[2]+e|0;b[3]=b[3]+f|0},_doFinalize:function(){var a=this._data,k=a.words,b=8*this._nDataBytes,h=8*a.sigBytes;k[h>>>5]|=128<<24-h%32;var l=s.floor(b/
-4294967296);k[(h+64>>>9<<4)+15]=(l<<8|l>>>24)&16711935|(l<<24|l>>>8)&4278255360;k[(h+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360;a.sigBytes=4*(k.length+1);this._process();a=this._hash;k=a.words;for(b=0;4>b;b++)h=k[b],k[b]=(h<<8|h>>>24)&16711935|(h<<24|h>>>8)&4278255360;return a},clone:function(){var a=t.clone.call(this);a._hash=this._hash.clone();return a}});r.MD5=t._createHelper(q);r.HmacMD5=t._createHmacHelper(q)})(Math);</script><dom-module id="auth-method-digest" assetpath="bower_components/auth-methods/"><template><style include="auth-methods-styles">:host{display:block;@apply (--auth-method-panel);@apply (--auth-method-digest);}</style><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><form is="iron-form" id="form" autocomplete="on"><paper-input label="User name" value="{{username}}" type="text" required="" auto-validate="" autocomplete="on"><paper-icon-button suffix="" on-tap="clearUsername" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-masked-input label="Password" value="{{password}}" required="" auto-validate="" autocomplete="on"></paper-masked-input><paper-checkbox class="adv-settings-input" checked="{{fullForm}}">Advanced settings</paper-checkbox><iron-collapse opened="[[fullForm]]"><div class="extended-form"><paper-input label="Server issued realm" value="{{realm}}" type="text" required="[[fullForm]]" auto-validate="" autocomplete="on"></paper-input><paper-input label="Server issued nonce" value="{{nonce}}" type="text" required="[[fullForm]]" auto-validate="" autocomplete="on"></paper-input><paper-dropdown-menu label="Quality of protection"><paper-listbox class="dropdown-content" selected="{{qop}}" attr-for-selected="data-qop"><paper-item data-qop="auth">auth</paper-item><paper-item data-qop="auth-int">auth-int</paper-item></paper-listbox></paper-dropdown-menu><paper-input label="Nounce count" value="{{nc}}" type="number" required="[[fullForm]]" auto-validate="" autocomplete="on"></paper-input><paper-dropdown-menu label="Hash algorithm"><paper-listbox class="dropdown-content" selected="{{algorithm}}" attr-for-selected="data-algorithm"><paper-item data-algorithm="MD5">MD5</paper-item><paper-item data-algorithm="MD5-sess">MD5-sess</paper-item></paper-listbox></paper-dropdown-menu><paper-input label="Server issued opaque string" value="{{opaque}}" type="string" autocomplete="on"></paper-input><paper-input label="Client nounce" value="{{cnonce}}" type="string" autocomplete="on"></paper-input></div></iron-collapse></form></div></div></template><script>Polymer({is:"auth-method-digest",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{password:{type:String,notify:true,value:""},username:{type:String,notify:true,value:""},fullForm:{type:Boolean,value:false},realm:{type:String,value:""},nonce:{type:String,value:""},algorithm:{type:String,value:""},qop:{type:String,value:""},nc:{type:Number,value:1},cnonce:{type:String,value:""},opaque:{type:String,value:""},response:{type:String,value:""},httpMethod:{type:String,value:""},requestUrl:{type:String,
-value:""},requestBody:{type:String,value:""}},get settings(){return this._getSettings()},attached:function(){this.listen(window,"url-value-changed","_onUrlChanged");this.listen(window,"http-method-changed","_onHttpMethodChanged");this.listen(window,"body-value-changed","_onBodyChanged");this.listen(window,"auth-settings-changed","_onAuthSettings")},detached:function(){this.unlisten(window,"url-value-changed","_onUrlChanged");this.unlisten(window,"http-method-changed","_onHttpMethodChanged");this.unlisten(window,
-"body-value-changed","_onBodyChanged");this.unlisten(window,"auth-settings-changed","_onAuthSettings")},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},observers:["_userInputChanged(username, password, realm, nonce, qop, nc, algorithm, opaque, cnonce, httpMethod, requestUrl, fullForm)"],_getSettings:function(){if(!this.fullForm)return{password:this.password,username:this.username};this.response=this.generateResponse();var settings={};settings.username=
-this.username;settings.realm=this.realm;settings.nonce=this.nonce;settings.uri=this.requestUrl;settings.response=this.response;settings.opaque=this.opaque;settings.qop=this.qop;settings.nc=("00000000"+this.nc).slice(-8);settings.cnonce=this.cnonce;return settings},_userInputChanged:function(username,password,realm,nonce,qop,nc,algorithm,opaque,cnonce,httpMethod,requestUrl,fullForm){var detail;if(!fullForm){if(!username||!password){detail={settings:undefined,type:"digest",valid:false};this.fire("auth-settings-changed",
-detail);return}detail={settings:this._getSettings(),type:"digest",valid:true};this.fire("auth-settings-changed",detail);return}if(!username||!password||!realm||!nonce||!httpMethod||!requestUrl){detail={settings:undefined,type:"digest",valid:false};this.fire("auth-settings-changed",detail);return}if(!nc)return this.set("nc",1);if(!cnonce)return this.set("cnonce",this.generateCnonce());var settings=this._getSettings();detail={settings:settings,type:"digest",valid:true};this.fire("auth-settings-changed",
-detail)},clearUsername:function(){this.username=""},generateCnonce:function(){var characters="abcdef0123456789";var token="";for(var i=0;i<16;i++){var randNum=Math.round(Math.random()*characters.length);token+=characters.substr(randNum,1)}return token},generateResponse:function(){var HA1=this._getHA1();var HA2=this._getHA2();var ncString=("00000000"+this.nc).slice(-8);var responseStr=HA1+":"+this.nonce;if(!this.qop)responseStr+=":"+HA2;else responseStr+=":"+ncString+":"+this.cnonce+":"+this.qop+":"+
-HA2;return CryptoJS.MD5(responseStr).toString()},_getHA1:function(){var HA1param=this.username+":"+this.realm+":"+this.password;var HA1=CryptoJS.MD5(HA1param).toString();if(this.algorithm==="MD5-sess"){HA1param=HA1+":"+this.nonce+":"+this.cnonce;HA1=CryptoJS.MD5(HA1param).toString()}return HA1},_getHA2:function(){var HA2param=this.httpMethod+":"+this.requestUrl;if(this.qop==="auth-int")HA2param+=":"+CryptoJS.MD5(this.requestBody).toString();return CryptoJS.MD5(HA2param).toString()},_onUrlChanged:function(e){this.requestUrl=
-e.detail.value},_onHttpMethodChanged:function(e){this.httpMethod=e.detail.value},_onBodyChanged:function(e){this.requestBody=e.detail.value},_onAuthSettings:function(e){if(!this._initialized)return;var event=Polymer.dom(e);if(event.rootTarget===this)return;if(e.detail.type!=="basic")return;var otherSettings=e.detail.settings;for(var _key in otherSettings){var _localKey;var _newValue;if(_key==="uri"){_localKey="requestUrl";_newValue=otherSettings[_key]}else if(_key==="nc"){_newValue=Number(otherSettings[_key].replace(/0+/,
-""));_localKey=_key}else{_localKey=_key;_newValue=otherSettings[_key]}if(this[_localKey]!==_newValue)this[_localKey]=_newValue}}});</script></dom-module><dom-module id="auth-method-ntlm" assetpath="bower_components/auth-methods/"><template><style include="auth-methods-styles">:host{display:block;@apply (--auth-method-panel);@apply (--auth-method-ntlm);}</style><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><form is="iron-form" id="form" autocomplete="on"><paper-input required="" auto-validate="" label="User name" value="{{username}}" type="text" autocomplete="on"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear username"></paper-icon-button></paper-input><paper-masked-input required="" auto-validate="" label="Password" value="{{password}}" autocomplete="on"></paper-masked-input><paper-input label="NT domain" value="{{domain}}" type="text"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear domain"></paper-icon-button></paper-input></form></div></div></template><script>Polymer({is:"auth-method-ntlm",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{domain:{type:String,notify:true,value:""},password:{type:String,notify:true,value:""},username:{type:String,notify:true,value:""}},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},observers:["_settingsChanged(username, password, domain)"],_settingsChanged:function(){var validationResult=this.$.form.validate();var settings=this._getSettings();
-var detail={settings:settings,type:"ntlm",valid:validationResult};this.fire("auth-settings-changed",detail)},_getSettings:function(){return{domain:this.domain,password:this.password,username:this.username}},_clearField:function(e){e=Polymer.dom(e);var path=e.path;var inputTarget;while(inputTarget=path.shift())if(inputTarget.nodeName==="INPUT"||inputTarget.nodeName==="PAPER-INPUT")break;if(!inputTarget)return;inputTarget.value=""}});</script></dom-module><dom-module id="paper-item-body" assetpath="bower_components/paper-item/"><template><style>:host{overflow:hidden;@apply (--layout-vertical);@apply (--layout-center-justified);@apply (--layout-flex);}:host([two-line]){min-height:var(--paper-item-body-two-line-min-height, 72px);}:host([three-line]){min-height:var(--paper-item-body-three-line-min-height, 88px);}:host > ::content > *{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}:host > ::content [secondary]{@apply (--paper-font-body1);color:var(--paper-item-body-secondary-color, --secondary-text-color);@apply (--paper-item-body-secondary);}</style><content></content></template><script>Polymer({is:"paper-item-body"});</script></dom-module><dom-module id="oauth2-scope-selector" assetpath="bower_components/oauth2-scope-selector/"><template><style>:host{display:block;outline:none;@apply (--oauth2-scope-selector);}.form-label{@apply (--form-label);@apply (--oauth2-scope-selector-label);}.item{width:calc(100% - 32px);@apply (--oauth2-scope-selector-list-item);}paper-autocomplete{top:32px;}paper-icon-button{color:var(--hint-trigger-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--icon-button);}paper-icon-button:hover{color:var(--hint-trigger-hover-color, rgba(0, 0, 0, 0.78));@apply (--icon-button-hover);}.scope-item{@apply (--layout-horizontal);@apply (--layout-center);}.scope-display{@apply (--layout-flex);overflow:hidden;@apply (--arc-font-body1);font-size:16px;}.scope-item[two-line]{margin-bottom:12px;}.scope-item[two-line] .scope-display{font-weight:400;}.scope-item-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;}.scope-display div[secondary]{font-size:14px;font-weight:400;line-height:20px;color:#737373;}</style><div class="container"><label class="form-label">Scopes</label><paper-input-container no-label-float="" invalid="[[invalid]]"><label>Scope value</label><input is="iron-input" bind-value="{{currentValue}}" on-keydown="_keyDown" id="input" autocomplete="off"><paper-icon-button suffix="" icon="arc:add-circle-outline" on-tap="_appendScope" title="Add scope"></paper-icon-button><paper-autocomplete target="[[_inputTarget]]" source="[[_normalizeScopes(allowedScopes)]]" on-selected="_suggestionSelected" open-on-focus=""></paper-autocomplete></paper-input-container><paper-tooltip for="input" position="bottom">Enter authorization scopes for this API endpoint. Check your provider's documentation for more information about scopes.</paper-tooltip><section class="scopes-list" role="list"><template is="dom-repeat" items="[[scopes]]"><div class="scope-item" two-line$="[[_allowedIsObject]]"><div class="scope-display"><div class="scope-item-label">[[item]]</div><div secondary="">[[_computeItemDescription(item)]]</div></div><paper-icon-button icon="arc:remove-circle-outline" on-tap="_removeScope"></paper-icon-button></div></template></section></div><paper-toast text="Enter scope value to add a scope."></paper-toast><paper-toast dissalowed="" text="You can't enter this scope. Use one of the provided scopes."></paper-toast></template><script>Polymer({is:"oauth2-scope-selector",behaviors:[Polymer.IronControlState,Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior],properties:{scopes:{type:Array,value:function(){return[]},notify:true},currentValue:String,_inputTarget:{type:HTMLElement,value:function(){return this.$$('input[is\x3d"iron-input"]')}},allowedScopes:Array,preventCustomScopes:Boolean,_allowedIsObject:{type:Boolean,value:false,computed:"_computeAllowedInputType(allowedScopes)"},autoValidate:{type:Boolean,value:false},
+4294967296);k[(h+64>>>9<<4)+15]=(l<<8|l>>>24)&16711935|(l<<24|l>>>8)&4278255360;k[(h+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360;a.sigBytes=4*(k.length+1);this._process();a=this._hash;k=a.words;for(b=0;4>b;b++)h=k[b],k[b]=(h<<8|h>>>24)&16711935|(h<<24|h>>>8)&4278255360;return a},clone:function(){var a=t.clone.call(this);a._hash=this._hash.clone();return a}});r.MD5=t._createHelper(q);r.HmacMD5=t._createHmacHelper(q)})(Math);</script><dom-module id="auth-method-digest" assetpath="bower_components/auth-methods/"><template><style include="auth-methods-styles">:host{display:block;@apply --auth-method-panel;@apply --auth-method-digest;}</style><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><form is="iron-form" id="form" autocomplete="on"><paper-input label="User name" value="{{username}}" type="text" required="" auto-validate="" autocomplete="on"><paper-icon-button suffix="" on-tap="clearUsername" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-masked-input label="Password" value="{{password}}" required="" auto-validate="" autocomplete="on"></paper-masked-input><paper-checkbox class="adv-settings-input" checked="{{fullForm}}">Advanced settings</paper-checkbox><iron-collapse opened="[[fullForm]]"><div class="extended-form"><paper-input label="Server issued realm" value="{{realm}}" type="text" required="[[fullForm]]" auto-validate="" autocomplete="on"></paper-input><paper-input label="Server issued nonce" value="{{nonce}}" type="text" required="[[fullForm]]" auto-validate="" autocomplete="on"></paper-input><paper-dropdown-menu label="Quality of protection"><paper-listbox class="dropdown-content" selected="{{qop}}" attr-for-selected="data-qop"><paper-item data-qop="auth">auth</paper-item><paper-item data-qop="auth-int">auth-int</paper-item></paper-listbox></paper-dropdown-menu><paper-input label="Nounce count" value="{{nc}}" type="number" required="[[fullForm]]" auto-validate="" autocomplete="on"></paper-input><paper-dropdown-menu label="Hash algorithm"><paper-listbox class="dropdown-content" selected="{{algorithm}}" attr-for-selected="data-algorithm"><paper-item data-algorithm="MD5">MD5</paper-item><paper-item data-algorithm="MD5-sess">MD5-sess</paper-item></paper-listbox></paper-dropdown-menu><paper-input label="Server issued opaque string" value="{{opaque}}" type="string" autocomplete="on"></paper-input><paper-input label="Client nounce" value="{{cnonce}}" type="string" autocomplete="on"></paper-input></div></iron-collapse></form></div></div></template><script>Polymer({is:"auth-method-digest",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{password:{type:String,notify:true,value:""},username:{type:String,notify:true,value:""},fullForm:{type:Boolean,value:false},realm:{type:String,value:""},nonce:{type:String,value:""},algorithm:{type:String,value:""},qop:{type:String,value:""},nc:{type:Number,value:1},cnonce:{type:String,value:""},opaque:{type:String,value:""},response:{type:String,value:""},httpMethod:{type:String,value:""},requestUrl:{type:String,
+value:""},requestBody:{type:String,value:""}},get settings(){return this._getSettings()},_attachListeners:function(node){this.listen(node,"url-value-changed","_onUrlChanged");this.listen(node,"http-method-changed","_onHttpMethodChanged");this.listen(node,"body-value-changed","_onBodyChanged");this.listen(node,"auth-settings-changed","_onAuthSettings")},_detachListeners:function(node){this.unlisten(node,"url-value-changed","_onUrlChanged");this.unlisten(node,"http-method-changed","_onHttpMethodChanged");
+this.unlisten(node,"body-value-changed","_onBodyChanged");this.unlisten(node,"auth-settings-changed","_onAuthSettings")},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},observers:["_userInputChanged(username, password, realm, nonce, qop, nc, algorithm, opaque, cnonce, httpMethod, requestUrl, fullForm)"],_getSettings:function(){if(!this.fullForm)return{password:this.password,username:this.username};this.response=this.generateResponse();var settings={};
+settings.username=this.username;settings.realm=this.realm;settings.nonce=this.nonce;settings.uri=this.requestUrl;settings.response=this.response;settings.opaque=this.opaque;settings.qop=this.qop;settings.nc=("00000000"+this.nc).slice(-8);settings.cnonce=this.cnonce;return settings},_userInputChanged:function(username,password,realm,nonce,qop,nc,algorithm,opaque,cnonce,httpMethod,requestUrl,fullForm){var detail;if(!fullForm){if(!username||!password){detail={settings:undefined,type:"digest",valid:false};
+this.fire("auth-settings-changed",detail);return}detail={settings:this._getSettings(),type:"digest",valid:true};this.fire("auth-settings-changed",detail);return}if(!username||!password||!realm||!nonce||!httpMethod||!requestUrl){detail={settings:undefined,type:"digest",valid:false};this.fire("auth-settings-changed",detail);return}if(!nc)return this.set("nc",1);if(!cnonce)return this.set("cnonce",this.generateCnonce());var settings=this._getSettings();detail={settings:settings,type:"digest",valid:true};
+this.fire("auth-settings-changed",detail)},clearUsername:function(){this.username=""},generateCnonce:function(){var characters="abcdef0123456789";var token="";for(var i=0;i<16;i++){var randNum=Math.round(Math.random()*characters.length);token+=characters.substr(randNum,1)}return token},generateResponse:function(){var HA1=this._getHA1();var HA2=this._getHA2();var ncString=("00000000"+this.nc).slice(-8);var responseStr=HA1+":"+this.nonce;if(!this.qop)responseStr+=":"+HA2;else responseStr+=":"+ncString+
+":"+this.cnonce+":"+this.qop+":"+HA2;return CryptoJS.MD5(responseStr).toString()},_getHA1:function(){var HA1param=this.username+":"+this.realm+":"+this.password;var HA1=CryptoJS.MD5(HA1param).toString();if(this.algorithm==="MD5-sess"){HA1param=HA1+":"+this.nonce+":"+this.cnonce;HA1=CryptoJS.MD5(HA1param).toString()}return HA1},_getHA2:function(){var HA2param=this.httpMethod+":"+this.requestUrl;if(this.qop==="auth-int")HA2param+=":"+CryptoJS.MD5(this.requestBody).toString();return CryptoJS.MD5(HA2param).toString()},
+_onUrlChanged:function(e){this.requestUrl=e.detail.value},_onHttpMethodChanged:function(e){this.httpMethod=e.detail.value},_onBodyChanged:function(e){this.requestBody=e.detail.value},_onAuthSettings:function(e){if(!this._initialized)return;var event=Polymer.dom(e);if(event.rootTarget===this)return;if(e.detail.type!=="digest")return;var otherSettings=e.detail.settings;for(var _key in otherSettings){var _localKey;var _newValue;if(_key==="uri"){_localKey="requestUrl";_newValue=otherSettings[_key]}else if(_key===
+"nc"){_newValue=Number(otherSettings[_key].replace(/0+/,""));_localKey=_key}else{_localKey=_key;_newValue=otherSettings[_key]}if(this[_localKey]!==_newValue)this[_localKey]=_newValue}}});</script></dom-module><dom-module id="auth-method-ntlm" assetpath="bower_components/auth-methods/"><template><style include="auth-methods-styles">:host{display:block;@apply --auth-method-panel;@apply --auth-method-ntlm;}</style><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><form is="iron-form" id="form" autocomplete="on"><paper-input required="" auto-validate="" label="User name" value="{{username}}" type="text" autocomplete="on"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear username"></paper-icon-button></paper-input><paper-masked-input required="" auto-validate="" label="Password" value="{{password}}" autocomplete="on"></paper-masked-input><paper-input label="NT domain" value="{{domain}}" type="text"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear domain"></paper-icon-button></paper-input></form></div></div></template><script>Polymer({is:"auth-method-ntlm",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{domain:{type:String,notify:true,value:""},password:{type:String,notify:true,value:""},username:{type:String,notify:true,value:""}},get settings(){return this._getSettings()},_attachListeners:function(){},_detachListeners:function(){},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},observers:["_settingsChanged(username, password, domain)"],_settingsChanged:function(){var validationResult=
+this.$.form.validate();var settings=this._getSettings();var detail={settings:settings,type:"ntlm",valid:validationResult};this.fire("auth-settings-changed",detail)},_getSettings:function(){return{domain:this.domain,password:this.password,username:this.username}},_clearField:function(e){e=Polymer.dom(e);var path=e.path;var inputTarget;while(inputTarget=path.shift())if(inputTarget.nodeName==="INPUT"||inputTarget.nodeName==="PAPER-INPUT")break;if(!inputTarget)return;inputTarget.value=""}});</script></dom-module><dom-module id="paper-item-body" assetpath="bower_components/paper-item/"><template><style>:host{overflow:hidden;@apply (--layout-vertical);@apply (--layout-center-justified);@apply (--layout-flex);}:host([two-line]){min-height:var(--paper-item-body-two-line-min-height, 72px);}:host([three-line]){min-height:var(--paper-item-body-three-line-min-height, 88px);}:host > ::content > *{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}:host > ::content [secondary]{@apply (--paper-font-body1);color:var(--paper-item-body-secondary-color, --secondary-text-color);@apply (--paper-item-body-secondary);}</style><content></content></template><script>Polymer({is:"paper-item-body"});</script></dom-module><dom-module id="oauth2-scope-selector" assetpath="bower_components/oauth2-scope-selector/"><template><style>:host{display:block;outline:none;@apply (--oauth2-scope-selector);}.form-label{@apply (--form-label);@apply (--oauth2-scope-selector-label);}.item{width:calc(100% - 32px);@apply (--oauth2-scope-selector-list-item);}paper-autocomplete{top:32px;}paper-icon-button{color:var(--hint-trigger-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--icon-button);}paper-icon-button:hover{color:var(--hint-trigger-hover-color, rgba(0, 0, 0, 0.78));@apply (--icon-button-hover);}.scope-item{@apply (--layout-horizontal);@apply (--layout-center);}.scope-display{@apply (--layout-flex);overflow:hidden;@apply (--arc-font-body1);font-size:16px;}.scope-item[two-line]{margin-bottom:12px;}.scope-item[two-line] .scope-display{font-weight:400;}.scope-item-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;}.scope-display div[secondary]{font-size:14px;font-weight:400;line-height:20px;color:#737373;}</style><div class="container"><label class="form-label">Scopes</label><paper-input-container no-label-float="" invalid="[[invalid]]"><label>Scope value</label><input is="iron-input" bind-value="{{currentValue}}" on-keydown="_keyDown" id="input" autocomplete="off"><paper-icon-button suffix="" icon="arc:add-circle-outline" on-tap="_appendScope" title="Add scope"></paper-icon-button><paper-autocomplete target="[[_inputTarget]]" source="[[_normalizeScopes(allowedScopes)]]" on-selected="_suggestionSelected" open-on-focus=""></paper-autocomplete></paper-input-container><paper-tooltip for="input" position="bottom">Enter authorization scopes for this API endpoint. Check your provider's documentation for more information about scopes.</paper-tooltip><section class="scopes-list" role="list"><template is="dom-repeat" items="[[scopes]]"><div class="scope-item" two-line$="[[_allowedIsObject]]"><div class="scope-display"><div class="scope-item-label">[[item]]</div><div secondary="">[[_computeItemDescription(item)]]</div></div><paper-icon-button icon="arc:remove-circle-outline" on-tap="_removeScope"></paper-icon-button></div></template></section></div><paper-toast text="Enter scope value to add a scope."></paper-toast><paper-toast dissalowed="" text="You can't enter this scope. Use one of the provided scopes."></paper-toast></template><script>Polymer({is:"oauth2-scope-selector",behaviors:[Polymer.IronControlState,Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior],properties:{scopes:{type:Array,value:function(){return[]},notify:true},currentValue:String,_inputTarget:{type:HTMLElement,value:function(){return this.$$('input[is\x3d"iron-input"]')}},allowedScopes:Array,preventCustomScopes:Boolean,_allowedIsObject:{type:Boolean,value:false,computed:"_computeAllowedInputType(allowedScopes)"},autoValidate:{type:Boolean,value:false},
 _oldTabIndex:{type:Number,value:-1}},hostAttributes:{"tabIndex":"-1"},observers:["_handleAutoValidate(autoValidate, scopes.*)"],get value(){return this.scopes},set value(scopes){this.scopes=scopes},_appendScope:function(){var value=this.currentValue;if(!value){this.$$("paper-toast").opened=true;return}this.currentValue="";this.append(value)},_removeScope:function(e){var item=this.$$('template[is\x3d"dom-repeat"]').itemForElement(e.target);if(!item)return;var all=this.scopes;var index=all.indexOf(item);
 if(index===-1)return;this.splice("scopes",index,1)},_suggestionSelected:function(e,detail){e.preventDefault();var scope=detail.value;this.append(scope);this.async(function(){this.currentValue=""},1)},append:function(scope){var scopeValue=typeof scope==="string"?scope:scope.value;var all=this.scopes;var index=all.indexOf(scopeValue);if(index!==-1)return;if(this.preventCustomScopes&&this.allowedScopes&&this.allowedScopes.length){index=this._findAllowedScopeIndex(scopeValue);if(index===-1){this.$$("paper-toast[dissalowed]").opened=
 true;return}}this.push("scopes",scopeValue)},_findAllowedScopeIndex:function(scope){var index=-1;var scopes=this.allowedScopes;if(!scopes||!scopes.length||!scope)return index;if(this._allowedIsObject)for(var i=0,len=scopes.length;i<len;i++){if(scopes[i].label===scope){index=i;break}}else index=this.allowedScopes.indexOf(scope);return index},_keyDown:function(e){if(e.keyCode!==13)return;if(this.$$("paper-autocomplete").opened)return;this._appendScope();this.async(function(){this.currentValue="";this.$$('input[is\x3d"iron-input"]').focus()},
 10)},_normalizeScopes:function(scopes){if(!scopes||!scopes.length)return undefined;return scopes.map(function(item){if(typeof item==="string")return item;return{"display":item.label,"value":item.label}})},_computeAllowedInputType:function(allowedScopes){if(!allowedScopes||!allowedScopes.length)return false;var first=allowedScopes[0];return typeof first!=="string"},_computeItemDescription:function(scope){var index=this._findAllowedScopeIndex(scope);if(index===-1)return"";return this.allowedScopes[index].description},
-_getValidity:function(){return this.disabled||!this.required||this.required&&!!(this.scopes&&this.scopes.length)},_handleAutoValidate:function(autoValidate){if(autoValidate)this.invalid=!this._getValidity()}});</script></dom-module><dom-module id="auth-method-oauth2" assetpath="bower_components/auth-methods/"><template strip-whitespace=""><style include="auth-methods-styles">:host{display:block;@apply (--auth-method-panel);@apply (--auth-method-oauth2);--paper-icon-button:{color:var(--hint-trigger-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--icon-button);};--paper-icon-button-hover:{color:var(--hint-trigger-hover-color, rgba(0, 0, 0, 0.78));@apply (--icon-button-hover);};}.form-panel{@apply (--layout-horizontal);}.form{@apply (--layout-flex);max-width:700px;}oauth2-scope-selector{margin:24px 0;outline:none;}.grant-dropdown{width:320px;}.next-button,
-    .auth-button{color:var(--accent-color);background-color:#fff;@apply (--auth-button);}.next-button:hover,
-    .auth-button:hover{@apply (--auth-button-hover);}.next-button[disabled],
-    .auth-button[disabled]{background-color:rgba(0, 0, 0, 0.24);color:rgba(0, 0, 0, 0.54);@apply (--auth-button-disabled);}.authorize-actions{margin-top:12px;}.read-only-param-field{background-color:rgba(0, 0, 0, 0.12);@apply (--arc-font-body1);display:block;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;@apply (--layout-horizontal);}.read-only-param-field.padding{padding:12px;}.read-only-param-field.no-background{background-color:transparent;}.current-token{margin-top:24px;}.top-line{@apply (--layout-horizontal);@apply (--layout-center);}.enable-container{@apply (--layout-flex);}label{@apply (--form-label);}.token-info,
-    .redirect-info{@apply (--arc-font-body1);font-weight:200;color:rgba(0, 0, 0, 0.54);}.code{font-family:'Roboto Mono', 'Consolas', 'Menlo', monospace;-webkit-font-smoothing:antialiased;@apply (--arc-font-code1);@apply (--layout-flex);}.token-label{font-weight:500;font-size:16px;}.current-token{padding:12px;border:2px #3D8099 solid;}.current-token,
+_getValidity:function(){return this.disabled||!this.required||this.required&&!!(this.scopes&&this.scopes.length)},_handleAutoValidate:function(autoValidate){if(autoValidate)this.invalid=!this._getValidity()}});</script></dom-module><dom-module id="auth-method-oauth2" assetpath="bower_components/auth-methods/"><template strip-whitespace=""><style include="auth-methods-styles">:host{display:block;@apply (--auth-method-panel);@apply (--auth-method-oauth2);--paper-icon-button:{color:var(--hint-trigger-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--icon-button);};--paper-icon-button-hover:{color:var(--hint-trigger-hover-color, rgba(0, 0, 0, 0.78));@apply (--icon-button-hover);};}.form{@apply (--layout-flex);max-width:700px;}oauth2-scope-selector{margin:24px 0;outline:none;}.grant-dropdown{width:320px;@apply (--auth-grant-dropdown);}.auth-button{color:var(--accent-color);background-color:#fff;@apply (--auth-button);}.auth-button:hover{@apply (--auth-button-hover);}.auth-button[disabled]{background-color:rgba(0, 0, 0, 0.24);color:rgba(0, 0, 0, 0.54);@apply (--auth-button-disabled);}.authorize-actions{margin-top:12px;}.read-only-param-field{background-color:rgba(0, 0, 0, 0.12);@apply (--arc-font-body1);display:block;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;@apply (--layout-horizontal);}.read-only-param-field.padding{padding:12px;}.read-only-param-field.no-background{background-color:transparent;}label{@apply (--form-label);}.token-info,
+    .redirect-info{@apply (--arc-font-body1);font-weight:200;color:rgba(0, 0, 0, 0.54);}.code{font-family:'Roboto Mono', 'Consolas', 'Menlo', monospace;-webkit-font-smoothing:antialiased;@apply (--arc-font-code1);@apply (--layout-flex);}.token-label{font-weight:500;font-size:16px;}.current-token{margin-top:24px;padding:12px;border:2px #3D8099 solid;}.current-token,
     .redirect-section,
-    oauth2-scope-selector{max-width:560px;width:calc(100% - 16px);box-sizing:border-box;}*[hiddable]{display:none;}*[data-grant="authorization_code"] *[data-visible~="authorization_code"],
+    oauth2-scope-selector{max-width:560px;width:calc(100% - 16px);box-sizing:border-box;}.redirect-section{@apply (--auth-redirect-section);}*[hiddable]{display:none;}*[data-grant="authorization_code"] *[data-visible~="authorization_code"],
     *[data-grant="client_credentials"] *[data-visible~="client_credentials"],
     *[data-grant="implicit"] *[data-visible~="implicit"],
-    *[data-grant="password"] *[data-visible~="password"]{display:block;}</style><form is="iron-form" id="form" data-grant$="[[grantType]]"><div class="row" hidden$="[[noGrantType]]"><div class$="[[_computeStepperClass(isSelectedType)]]" on-tap="_clearTypeSelection"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Select OAuth 2.0 grant type<iron-icon icon="arc:edit" class="edit-icon" title="Click to make changes"></iron-icon></span><span class="step-selection" hidden$="[[!isSelectedType]]">[[_computeSelectedTypeLabel(grantType)]]</span></span><paper-ripple></paper-ripple></div><div class="step-content"><div class="line"></div><iron-collapse opened="[[typeSelectorOpened]]" class="content"><div class="content"><paper-dropdown-menu label="Grant type" class="grant-dropdown" required="" auto-validate=""><paper-listbox class="dropdown-content" selected="{{grantType}}" attr-for-selected="data-type"><template is="dom-repeat" items="[[grantTypes]]"><paper-item data-type="[[item.type]]">[[item.label]]</paper-item></template></paper-listbox></paper-dropdown-menu></div></iron-collapse></div></div><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 2)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content" id="authDataForm"><div class="line"></div><div class="content"><paper-masked-input auto-validate="" required="" label="Client id" value="{{clientId}}" id="clientId" autocomplete="on"></paper-masked-input><paper-tooltip for="clientId" position="bottom">Your client ID registered in your OAuth provider.</paper-tooltip><paper-masked-input auto-validate="" required="" label="Client secret" value="{{clientSecret}}" id="clientSecret" hiddable="" data-visible="client_credentials authorization_code" disabled$="[[_isFieldHidden(grantType, 'client_credentials', 'authorization_code')]]" autocomplete="on"></paper-masked-input><paper-tooltip for="clientSecret" position="bottom">The client secret is generated by your provider unique string for your app. Check provider's console to get the code.</paper-tooltip><template is="dom-if" if="[[isAdvanced]]"><paper-checkbox class="adv-settings-input" checked="{{advancedOpened}}">Advanced settings</paper-checkbox></template><iron-collapse opened="[[advancedOpened]]"><paper-input auto-validate="" required="" label="Authorization url" value="{{authUrl}}" id="authUrl" hiddable="" data-visible="implicit authorization_code" disabled$="[[_isFieldHidden(grantType, 'implicit', 'authorization_code')]]" type="text" autocomplete="on"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-tooltip for="authUrl" position="bottom">The authorization URL initializes the OAuth flow. If you don't know the authorization URL check your provider's documentation.</paper-tooltip><paper-input auto-validate="" required="" label="Access token URL" value="{{accessTokenUrl}}" id="accessTokenUrl" hiddable="" data-visible="client_credentials authorization_code password" disabled$="[[_isFieldHidden(grantType, 'client_credentials', 'authorization_code', 'password')]]" type="text" autocomplete="on"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-tooltip for="accessTokenUrl" position="bottom">The access token URL is used by server implementations to exchange access code for access token.</paper-tooltip><paper-masked-input auto-validate="" required="" label="Username" value="{{username}}" id="username" hiddable="" data-visible="password" disabled$="[[_isFieldHidden(grantType, 'password')]]" autocomplete="on"></paper-masked-input><paper-tooltip for="username" position="bottom">The username required for this OAuth authentication.</paper-tooltip><paper-masked-input auto-validate="" required="" label="Password" value="{{password}}" id="password" hiddable="" data-visible="password" disabled$="[[_isFieldHidden(grantType, 'password')]]" autocomplete="on"></paper-masked-input><paper-tooltip for="password" position="bottom">The password required for this OAuth authentication.</paper-tooltip><div hiddable="" data-visible="implicit authorization_code"><oauth2-scope-selector required="" auto-validate="" allowed-scopes="[[allowedScopes]]" prevent-custom-scopes="[[preventCustomScopes]]" scopes="{{scopes}}" disabled$="[[_isFieldHidden(grantType, 'implicit', 'authorization_code')]]"></oauth2-scope-selector></div></iron-collapse></div></div></div><div class="row" hiddable="" data-visible="implicit authorization_code"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 3)]]</span> <span class="step-header"><span class="step-title">Set redirect URL</span></span></div><div class="step-content"><div class="line"></div><div class="content"><div class="redirect-section"><p class="redirect-info">Set this redirect URL in OAuth 2.0 provider settings.</p><p class="read-only-param-field padding"><span class="code" tabindex="0" id="redirectLabel">[[redirectUrl]]</span><paper-icon-button icon="arc:content-copy" on-tap="_copyRedirectUrl" data-src="redirect" id="redirectCopyButton"></paper-icon-button></p></div><div class="authorize-actions" hidden$="[[hasTokenValue]]"><paper-button disabled$="[[_authorizing]]" class="auth-button" on-tap="authorize">Get access token</paper-button><paper-spinner active="[[_authorizing]]"></paper-spinner></div><div class="current-token" hidden$="[[!hasTokenValue]]"><label class="token-label">Current token</label><p class="token-info">The token will be set to the corresponding field (header or query parameter).</p><p class="read-only-param-field no-background"><span class="code" tabindex="0" id="tokenLabel">[[tokenValue]]</span><paper-icon-button icon="arc:content-copy" on-tap="_copyRedirectUrl" data-src="token" id="tokenCopyButton"></paper-icon-button></p><div class="authorize-actions"><paper-button disabled$="[[_authorizing]]" class="auth-button" on-tap="authorize">Refresh access token</paper-button><paper-spinner active="[[_authorizing]]"></paper-spinner></div></div></div></div></div></form><paper-toast text="" duration="5000"></paper-toast></template><script>Polymer({is:"auth-method-oauth2",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{grantType:{type:String,value:"",notify:true},isSelectedType:{type:Boolean,value:false,computed:"_computeIsSelectedType(grantType)"},forceHideTypeSelector:{type:Boolean,value:false},typeSelectorOpened:{type:Boolean,value:false,computed:"_computeTypeSelectorOpened(isSelectedType, forceHideTypeSelector, _typeSelectorForceOpened)"},clientId:{type:String,notify:true,value:""},clientSecret:{type:String,notify:true,
+    *[data-grant="password"] *[data-visible~="password"]{display:block;}</style><form is="iron-form" id="form" data-grant$="[[grantType]]"><div class="row" hidden$="[[noGrantType]]"><div class$="[[_computeStepperClass(isSelectedType)]]" on-tap="_clearTypeSelection"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Select OAuth 2.0 grant type<iron-icon icon="arc:edit" class="edit-icon" title="Click to make changes"></iron-icon></span><span class="step-selection" hidden$="[[!isSelectedType]]">[[_computeSelectedTypeLabel(grantType)]]</span></span><paper-ripple></paper-ripple></div><div class="step-content"><div class="line"></div><iron-collapse opened="[[typeSelectorOpened]]" class="content"><div class="content"><paper-dropdown-menu label="Grant type" class="grant-dropdown" required="" auto-validate=""><paper-listbox class="dropdown-content" selected="{{grantType}}" attr-for-selected="data-type"><template is="dom-repeat" items="[[grantTypes]]"><paper-item data-type$="[[item.type]]">[[item.label]]</paper-item></template></paper-listbox></paper-dropdown-menu></div></iron-collapse></div></div><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 2)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content" id="authDataForm"><div class="line"></div><div class="content"><paper-masked-input auto-validate="" required="" label="Client id" value="{{clientId}}" id="clientId" autocomplete="on"></paper-masked-input><paper-tooltip for="clientId" position="bottom">Your client ID registered in your OAuth provider.</paper-tooltip><paper-masked-input auto-validate="" required="" label="Client secret" value="{{clientSecret}}" id="clientSecret" hiddable="" data-visible="client_credentials authorization_code" disabled$="[[_isFieldHidden(grantType, 'client_credentials', 'authorization_code')]]" autocomplete="on"></paper-masked-input><paper-tooltip for="clientSecret" position="bottom">The client secret is generated by your provider unique string for your app. Check provider's console to get the code.</paper-tooltip><template is="dom-if" if="[[isAdvanced]]"><paper-checkbox class="adv-settings-input" checked="{{advancedOpened}}">Advanced settings</paper-checkbox></template><iron-collapse opened="[[advancedOpened]]"><paper-input auto-validate="" required="" label="Authorization url" value="{{authUrl}}" id="authUrl" hiddable="" data-visible="implicit authorization_code" disabled$="[[_isFieldHidden(grantType, 'implicit', 'authorization_code')]]" type="text" autocomplete="on"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-tooltip for="authUrl" position="bottom">The authorization URL initializes the OAuth flow. If you don't know the authorization URL check your provider's documentation.</paper-tooltip><paper-input auto-validate="" required="" label="Access token URL" value="{{accessTokenUrl}}" id="accessTokenUrl" hiddable="" data-visible="client_credentials authorization_code password" disabled$="[[_isFieldHidden(grantType, 'client_credentials', 'authorization_code', 'password')]]" type="text" autocomplete="on"><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-tooltip for="accessTokenUrl" position="bottom">The access token URL is used by server implementations to exchange access code for access token.</paper-tooltip><paper-masked-input auto-validate="" required="" label="Username" value="{{username}}" id="username" hiddable="" data-visible="password" disabled$="[[_isFieldHidden(grantType, 'password')]]" autocomplete="on"></paper-masked-input><paper-tooltip for="username" position="bottom">The username required for this OAuth authentication.</paper-tooltip><paper-masked-input auto-validate="" required="" label="Password" value="{{password}}" id="password" hiddable="" data-visible="password" disabled$="[[_isFieldHidden(grantType, 'password')]]" autocomplete="on"></paper-masked-input><paper-tooltip for="password" position="bottom">The password required for this OAuth authentication.</paper-tooltip><div hiddable="" data-visible="implicit authorization_code"><oauth2-scope-selector allowed-scopes="[[allowedScopes]]" prevent-custom-scopes="[[preventCustomScopes]]" scopes="{{scopes}}" disabled$="[[_isFieldHidden(grantType, 'implicit', 'authorization_code')]]"></oauth2-scope-selector></div></iron-collapse></div></div></div><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 3)]]</span> <span class="step-header"><span class="step-title">Set redirect URL</span></span></div><div class="step-content"><div class="line"></div><div class="content"><div class="redirect-section"><p class="redirect-info">Set this redirect URL in OAuth 2.0 provider settings.</p><p class="read-only-param-field padding"><span class="code" tabindex="0" id="redirectLabel">[[redirectUrl]]</span><paper-icon-button icon="arc:content-copy" on-tap="_copyRedirectUrl" data-src="redirect" id="redirectCopyButton"></paper-icon-button></p></div><div class="authorize-actions" hidden$="[[hasTokenValue]]"><paper-button disabled$="[[_authorizing]]" class="auth-button" on-tap="authorize">Get access token</paper-button><paper-spinner active="[[_authorizing]]"></paper-spinner></div><div class="current-token" hidden$="[[!hasTokenValue]]"><label class="token-label">Current token</label><p class="token-info">The token will be set to the corresponding field (header or query parameter).</p><p class="read-only-param-field no-background"><span class="code" tabindex="0" id="tokenLabel">[[tokenValue]]</span><paper-icon-button icon="arc:content-copy" on-tap="_copyRedirectUrl" data-src="token" id="tokenCopyButton"></paper-icon-button></p><div class="authorize-actions"><paper-button disabled$="[[_authorizing]]" class="auth-button" on-tap="authorize">Refresh access token</paper-button><paper-spinner active="[[_authorizing]]"></paper-spinner></div></div></div></div></div></form><paper-toast text="" duration="5000"></paper-toast></template><script>Polymer({is:"auth-method-oauth2",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{grantType:{type:String,value:"",notify:true},isSelectedType:{type:Boolean,value:false,computed:"_computeIsSelectedType(grantType)"},forceHideTypeSelector:{type:Boolean,value:false},typeSelectorOpened:{type:Boolean,value:false,computed:"_computeTypeSelectorOpened(isSelectedType, forceHideTypeSelector, _typeSelectorForceOpened)"},clientId:{type:String,notify:true,value:""},clientSecret:{type:String,notify:true,
 value:""},authUrl:{type:String,notify:true,value:""},accessTokenUrl:{type:String,notify:true,value:""},password:{type:String,notify:true,value:""},username:{type:String,notify:true,value:""},redirectUrl:String,scopes:Array,allowedScopes:Array,preventCustomScopes:Boolean,_authorizing:Boolean,tokenValue:{type:String,observer:"_tokenValueChanged",value:""},hasTokenValue:{type:Boolean,value:false,readOnly:true},ramlSettings:Object,_supportedGrantTypes:{type:Array,value:function(){return[{type:"implicit",
 label:"Access token (browser flow)"},{type:"authorization_code",label:"Authorization code (server flow)"},{type:"client_credentials",label:"Client credentials"},{type:"password",label:"Password"}]}},grantTypes:{type:Array},_initialized:Boolean,_typeSelectorForceOpened:{type:Boolean,value:false},noAuto:Boolean,isAdvanced:Boolean,advancedOpened:Boolean,noGrantType:{type:Boolean,observer:"_noGrantTypeChanged"}},observers:["_settingsChanged(grantType, clientId, clientSecret, authUrl, accessTokenUrl, password, username, scopes.*, tokenValue, _initialized)",
-"_ramlSettingsChanged(ramlSettings.*)","_updateStepperState(noStepper)"],ready:function(){this._initialized=true;this._autoHide()},attached:function(){this.listen(window,"oauth2-error","_oauth2ErrorHandler");this.listen(window,"oauth2-token-response","_oauth2SccessHandler");this.listen(window,"auth-settings-changed","_onAuthSettings");this._updateGrantTypes()},detached:function(){this.unlisten(window,"oauth2-error","_oauth2ErrorHandler");this.unlisten(window,"oauth2-token-response","_oauth2SccessHandler");
-this.unlisten(window,"auth-settings-changed","_onAuthSettings")},_autoHide:function(){if(this.noAuto){this.advancedOpened=true;return}if(!!this.authUrl&&!!this.accessTokenUrl&&!!(this.scopes&&this.scopes.length)){this.isAdvanced=true;this.advancedOpened=false}else this.advancedOpened=true},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},_settingsChanged:function(){var validationResult=this.$.form.validate();var settings=
-this._getSettings();var detail={settings:settings,type:"oauth2",valid:validationResult};this.fire("auth-settings-changed",detail)},_clearField:function(e){e=Polymer.dom(e);var path=e.path;var inputTarget;while(inputTarget=path.shift())if(inputTarget.nodeName==="INPUT"||inputTarget.nodeName==="PAPER-INPUT")break;if(!inputTarget)return;inputTarget.value=""},_isFieldHidden:function(){var args=Array.from(arguments);var grantType=args.splice(0,1)[0];return args.indexOf(grantType)===-1},authorize:function(){var validationResult=
-this.$.form.validate();if(!validationResult)return;var detail=this._getSettings();this._authorizing=true;this.fire("oauth2-token-requested",detail)},_getSettings:function(){var detail={type:this.grantType,clientId:this.clientId,tokenValue:this.tokenValue||""};switch(this.grantType){case "implicit":detail.authorizationUrl=this.authUrl;detail.redirectUrl=this.redirectUrl;detail.scopes=this.scopes;break;case "authorization_code":detail.authorizationUrl=this.authUrl;detail.clientSecret=this.clientSecret;
-detail.accessTokenUrl=this.accessTokenUrl;detail.redirectUrl=this.redirectUrl;detail.scopes=this.scopes;break;case "client_credentials":detail.clientSecret=this.clientSecret;detail.accessTokenUrl=this.accessTokenUrl;break;case "password":detail.username=this.username;detail.password=this.password;detail.accessTokenUrl=this.accessTokenUrl;break}return detail},_tokenValueChanged:function(newValue){this._authorizing=false;if(newValue)this._setHasTokenValue(true);else this._setHasTokenValue(false)},_oauth2ErrorHandler:function(e,
-detail){this._authorizing=false;var toast=this.$$("paper-toast");toast.text=detail.message;toast.opened=true},_oauth2SccessHandler:function(e,detail){if(detail.accessToken&&detail.accessToken!==this.tokenValue){this.set("tokenValue",detail.accessToken);this.fire("oauth2-token-ready",{token:detail.accessToken})}},_ramlSettingsChanged:function(record){if(!record||!record.base)return;var type=record.base;if(!type||!type.settings)return;this.preFill(type.settings);this._autoHide()},preFill:function(settings){if(!settings)throw new Error("The `settings` argument is not set.");
-if(settings.authorizationGrants&&settings.authorizationGrants instanceof Array&&settings.authorizationGrants.length){var index=settings.authorizationGrants.indexOf("code");if(index!==-1)settings.authorizationGrants[index]="authorization_code";this._updateGrantTypes(settings.authorizationGrants)}else this._updateGrantTypes();if(settings.accessTokenUri)this.accessTokenUrl=settings.accessTokenUri;if(settings.authorizationUri)this.authUrl=settings.authorizationUri;if(settings.scopes)this.scopes=settings.scopes},
-_updateGrantTypes:function(supportedTypes){var available=this._supportedGrantTypes.map(function(item){return item});if(!supportedTypes||!supportedTypes.length){this.set("grantTypes",available);return}var i;for(i=available.length-1;i>=0;i--)if(supportedTypes.indexOf(available[i].type)===-1)available.splice(i,1);this.set("grantTypes",available);var current=this.grantType;var hasCurrent=false;for(i=available.length-1;i>=0;i--)if(available[i].type===current){hasCurrent=true;break}if(!hasCurrent)if(available&&
-available[0])this.set("grantType",available[0].type);else this.set("grantType","")},_computeIsSelectedType:function(grantType){return!!grantType},_computeStepperClass:function(isSelected){var cls="stepper";if(isSelected)cls+=" active";return cls},_clearTypeSelection:function(){this.grantType=""},_computeSelectedTypeLabel:function(grantType){switch(grantType){case "implicit":return"Access token (browser flow)";case "authorization_code":return"Authorization code (server flow)";case "client_credentials":return"Client credentials";
-case "password":return"Password"}},_copyRedirectUrl:function(e){e=Polymer.dom(e);var src=e.localTarget.dataset.src;if(!src)throw new Error("Copy to clipboard require the data-src attribute.");var params;switch(src){case "redirect":params={container:this.$.redirectLabel,button:this.$.redirectCopyButton};break;case "token":params={container:this.$.tokenLabel,button:this.$.tokenCopyButton};break;default:throw new Error("Unknown src value");}return this._copyToClipboard(params)},_copyToClipboard:function(params){var snipRange=
-document.createRange();snipRange.selectNodeContents(params.container);var selection=window.getSelection();selection.removeAllRanges();selection.addRange(snipRange);var result=false;try{result=document.execCommand("copy");params.button.icon="done"}catch(err){Polymer.Base._error(err);params.button.icon="error"}setTimeout(this._resetCopyButtonState.bind(this,params.button),1E3);selection.removeAllRanges();return result},_resetCopyButtonState:function(button){button.icon="content-copy"},_onAuthSettings:function(e){if(!this._initialized)return;
-var event=Polymer.dom(e);if(event.rootTarget===this)return;if(e.detail.type!=="oauth2")return;var otherSettings=e.detail.settings;for(var _key in otherSettings){var _localKey;if(_key==="type")_localKey="grantType";else if(_key==="authorizationUrl")_localKey="authUrl";else _localKey=_key;if(this[_localKey]!==otherSettings[_key])this[_localKey]=otherSettings[_key]}},_updateStepperState:function(noStepper){this._typeSelectorForceOpened=noStepper?true:false},_computeTypeSelectorOpened:function(isSelectedType,
-forceHideTypeSelector,_typeSelectorForceOpened){if(forceHideTypeSelector)return false;if(_typeSelectorForceOpened||!isSelectedType)return true;return false},_noGrantTypeChanged:function(newValue,oldValue){if(newValue)this.stepStartIndex--;else if(oldValue!==undefined)this.stepStartIndex++}});</script></dom-module><dom-module id="auth-method-oauth1" assetpath="bower_components/auth-methods/"><template><style>:host{display:block;@apply (--auth-method-panel);@apply (--auth-method-oauth1);--paper-icon-button:{color:var(--hint-trigger-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply (--icon-button);};--paper-icon-button-hover:{color:var(--hint-trigger-hover-color, rgba(0, 0, 0, 0.78));@apply (--icon-button-hover);};--paper-input-container-focus-color:{@apply (--input-line-color);};}paper-input,
-    paper-masked-input{max-width:700px;}.hints .hint{display:none;color:rgba(0, 0, 0, 0.54);}.hints .hint[active]{display:block;}.form-panel{@apply (--layout-horizontal);}.form{@apply (--layout-flex);max-width:700px;}.hints{margin-left:0;padding-left:0;border-left:1px rgba(0,0,0,0) solid;max-width:300px;width:0;@apply (--paper-font-body1);transition:width 0.35s linear, margin 0.2s linear, padding 0.2s linear, border-color 0.15s linear;overflow:hidden;}.hints.active{width:100%;margin-left:16px;padding-left:16px;border-left-color:rgba(0,0,0,0.12);overflow:auto;}oauth2-scope-selector{margin:24px 0;}.grant-dropdown{width:320px;}.auth-button{background-color:var(--primary-color);color:rgba(255, 255, 255, 0.87);@apply (--auth-button);}.auth-button:hover{@apply (--auth-button-hover);}.auth-button[disabled]{background-color:rgba(0, 0, 0, 0.24);color:rgba(0, 0, 0, 0.54);@apply (--auth-button-disabled);}.authorize-actions{margin-top:12px;}.read-only-param-field{padding:12px;background-color:rgba(0, 0, 0, 0.12);@apply (--paper-font-body1);display:block;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;}.current-token{margin-top:24px;}.top-line{@apply (--layout-horizontal);@apply (--layout-center);}.enable-container{@apply (--layout-flex);}label{@apply (--form-label);}</style><div class="form-panel"><div class="form"><form is="iron-form" id="form"><paper-masked-input auto-validate="" required="" label="Consumer key" value="{{consumeKey}}" data-field="consumeKey" on-focus="_activateHint" on-blur="_deactivateHint" on-mouseover="_activateHint" on-mouseout="_deactivateHint" autocomplete="on"></paper-masked-input><paper-masked-input label="Consumer secret" value="{{consumerSecret}}" data-field="consumerSecret" on-focus="_activateHint" on-blur="_deactivateHint" on-mouseover="_activateHint" on-mouseout="_deactivateHint" autocomplete="on"></paper-masked-input><paper-masked-input auto-validate="" required="" label="Token" value="{{token}}" data-field="token" on-focus="_activateHint" on-blur="_deactivateHint" on-mouseover="_activateHint" on-mouseout="_deactivateHint" autocomplete="on"></paper-masked-input><paper-masked-input label="Token secret" value="{{tokenSecret}}" data-field="tokenSecret" on-focus="_activateHint" on-blur="_deactivateHint" on-mouseover="_activateHint" on-mouseout="_deactivateHint" autocomplete="on"></paper-masked-input><paper-input auto-validate="" required="" label="Timestamp" value="{{timestamp}}" type="text" data-field="timestamp" on-focus="_activateHint" on-blur="_deactivateHint" on-mouseover="_activateHint" on-mouseout="_deactivateHint" autocomplete="on"><paper-icon-button suffix="" on-tap="_genTimestamp" icon="arc:cached" alt="Regenerate input icon" title="Regenerate timestamp"></paper-icon-button><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-input auto-validate="" required="" label="Nonce" value="{{nonce}}" type="text" data-field="nonce" on-focus="_activateHint" on-blur="_deactivateHint" on-mouseover="_activateHint" on-mouseout="_deactivateHint" autocomplete="on"><paper-icon-button suffix="" on-tap="_genNonce" icon="arc:cached" alt="Regenerate input icon" title="Regenerate nonce"></paper-icon-button><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-input label="Realm" value="{{realm}}" type="text" data-field="realm" on-focus="_activateHint" on-blur="_deactivateHint" on-mouseover="_activateHint" on-mouseout="_deactivateHint" autocomplete="on"></paper-input><paper-dropdown-menu label="Signature method" class="grant-dropdown" required="" auto-validate=""><paper-listbox class="dropdown-content" selected="{{signatureMethod}}" attr-for-selected="data-type"><paper-item data-type="HMAC-SHA256">HMAC-SHA256</paper-item><paper-item data-type="HMAC-SHA1">HMAC-SHA1</paper-item><paper-item data-type="PLAINTEXT">PLAINTEXT</paper-item></paper-listbox></paper-dropdown-menu><div class="authorize-actions"><paper-button disabled$="[[_authorizing]]" class="auth-button" on-tap="authorize">Authorize</paper-button><paper-spinner active="[[_authorizing]]"></paper-spinner></div><div class="current-token" hidden$="[[!signatureValue]]"><label>Current signature</label><p class="read-only-param-field">[[signatureValue]]</p></div></form></div><div class$="[[_computeHintsClass(hintsEnabled)]]"><p class="hint" field="consumeKey">The consumer key identifies which application is making the request. It can be found in your provider's API console.</p><p class="hint" field="consumerSecret">The consumer secret is generated by your provider unique string for your app. Check provider's console to get the code.</p><p class="hint" field="token">The token typically represents a user鈥檚 permission to share access to their account with your application. You can typically generate the token in your provider's API console.</p><p class="hint" field="tokenSecret">A secret used by the application to establish ownership of a given Token. As stored by the Service Provider.</p><p class="hint" field="timestamp">The timestamp parameter indicates when the request was created. This value should be the number of seconds since the Unix epoch at the point the request is generated, and should be easily generated in most programming languages.</p><p class="hint" field="nonce">The nonce is a unique token your application should generate for each unique request. It was autogenerated when you've opened this form.</p><p class="hint" field="realm"></p></div></div><paper-toast text="" duration="5000"></paper-toast></template><script>Polymer({is:"auth-method-oauth1",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{consumeKey:{type:String,notify:true},consumerSecret:{type:String,notify:true},token:{type:String,notify:true},tokenSecret:{type:String,notify:true},timestamp:{type:Number,notify:true},nonce:{type:String,notify:true},realm:{type:String,notify:true},signatureMethod:{type:String,value:"HMAC-SHA1",notify:true},signatureValue:{type:String,value:""},hintsEnabled:{type:Boolean,value:false},_authorizing:Boolean},observers:["_settingsChanged(consumeKey, consumerSecret, token, tokenSecret, timestamp, nonce, realm, signatureMethod)"],
-attached:function(){this.listen(window,"oauth1-error","_oauth1ErrorHandler")},detached:function(){this.unlisten(window,"oauth1-error","_oauth1ErrorHandler")},ready:function(){this._genTimestamp();this._genNonce()},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},_settingsChanged:function(){var validationResult=this.$.form.validate();if(!validationResult)return;var settings=this._getSettings();var detail={settings:settings,
-type:"oauth1"};this.fire("auth-settings-changed",detail)},_getSettings:function(){return{consumeKey:this.consumeKey,consumerSecret:this.consumerSecret,token:this.token,tokenSecret:this.tokenSecret,timestamp:this.timestamp,nonce:this.nonce,realm:this.realm,signatureMethod:this.signatureMethod}},_clearField:function(e){e=Polymer.dom(e);var path=e.path;var inputTarget;while(inputTarget=path.shift())if(inputTarget.nodeName==="INPUT"||inputTarget.nodeName==="PAPER-INPUT")break;if(!inputTarget)return;inputTarget.value=
-""},_activateHint:function(e){if(!this.hintsEnabled)return;var field=this.__getHintField(e);if(!field)return;field.setAttribute("active",true)},_deactivateHint:function(e){if(!this.hintsEnabled)return;var field=this.__getHintField(e);if(!field)return;field.removeAttribute("active")},__getHintField:function(e){e=Polymer.dom(e);var set=e.localTarget.dataset;if(!("field"in set))return;var field=set.field;return Polymer.dom(this.root).querySelector('.hint[field\x3d"'+field+'"]')},_computeHintsClass:function(hintsEnabled){var clazz=
-"hints";if(hintsEnabled)clazz+=" active";return clazz},_toggleHints:function(){this.hintsEnabled=!this.hintsEnabled},authorize:function(){var detail={};if(this.consumeKey)detail.consumeKey=this.consumeKey;if(this.consumeKey)detail.consumeKey=this.consumeKey;if(this.consumerSecret)detail.consumerSecret=this.consumerSecret;if(this.token)detail.token=this.token;if(this.tokenSecret)detail.tokenSecret=this.tokenSecret;if(this.timestamp)detail.timestamp=this.timestamp;if(this.nonce)detail.nonce=this.nonce;
-if(this.realm)detail.realm=this.realm;if(this.signatureMethod)detail.signatureMethod=this.signatureMethod;this.fire("oauth1-token-requested",detail)},_oauth1ErrorHandler:function(e,detail){this._authorizing=false;var toast=this.$$("paper-toast");toast.text=detail.message;toast.opened=true},_genTimestamp:function(){var t=Math.floor(Date.now()/1E3);this.timestamp=t},_genNonce:function(length){var result=[];var chrs="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";var chrsLength=chrs.length;
-length=Number(length||32);if(length!==length)length=32;for(var i=0;i<length;i++)result[result.length]=chrs[Math.floor(Math.random()*chrsLength)];this.nonce=result.join("")}});</script></dom-module><dom-module id="auth-method-custom" assetpath="bower_components/auth-methods/"><template strip-whitespace=""><style include="markdown-styles"></style><style include="auth-methods-styles">:host{display:block;@apply (--auth-method-panel);@apply (--auth-method-custom);--paper-input-container-label:{color:var(--raml-headers-form-input-label-color, rgba(0, 0, 0, 0.48));};}paper-input[required]{--paper-input-container-label:{color:var(--raml-request-parameters-editor-required-input-label-color, rgba(0, 0, 0, 0.72));};}.input-row{display:block;}.docs{@apply (--arc-font-common-base);font-size:13px !important;font-weight:200;line-height:24px;color:var(--inline-documentation-color, rgba(0, 0, 0, 0.87));}.markdown-html *{font-size:13px !important;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}.help-icon{color:var(--inline-help-icon-color, rgba(0, 0, 0, 0.24));transition:color 0.2s linear;}.help-icon:hover{color:var(--inline-help-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.value-input{@apply (--layout-horizontal);@apply (--layout-center);@apply (--layout-flex);}.value-input paper-input,
-    .value-input paper-dropdown-menu{@apply (--layout-flex);}</style><form is="iron-form" id="form"><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><div class="content"><template is="dom-if" if="[[hasHeaders]]"><section id="headersList"><template is="dom-repeat" items="[[headers]]" headers-repeater=""><div class="input-row"><div class="value-input"><paper-input label="[[item.inputLabel]]" value="{{item.value}}" required="[[item.required]]" pattern="[[item.pattern]]" name="[[item.name]]" auto-validate="" type="[[item.inputType]]" min="[[item.minimum]]" max="[[item.maximum]]" maxlength="[[item.maxLength]]" always-float-label="[[item.inputFloatLabel]]" placeholder="[[item.inputPlaceholder]]" on-input="_headerValueChanged"></paper-input><paper-icon-button title="Display documentation" class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="_openHeaderDoc"></paper-icon-button></div><template is="dom-if" if="[[item.hasDescription]]"><div class="docs"><iron-collapse><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></div></template></section></template><template is="dom-if" if="[[hasQueryParameters]]"><section id="paramsList"><template is="dom-repeat" items="[[queryParameters]]" params-repeater=""><div class="input-row"><div class="value-input"><template is="dom-if" if="[[item.isEnum]]"><paper-dropdown-menu label="[[item.inputLabel]]" name="[[item.name]]" required="[[item.required]]" on-iron-select="_parameterValueChanged"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{item.value}}"><template is="dom-repeat" items="[[item.enum]]"><paper-item data-value$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[!item.isEnum]]"><paper-input label="[[item.inputLabel]]" value="{{item.value}}" required="[[item.required]]" pattern="[[item.pattern]]" name="[[item.name]]" auto-validate="" type="[[item.inputType]]" min="[[item.minimum]]" max="[[item.maximum]]" maxlength="[[item.maxLength]]" always-float-label="[[item.inputFloatLabel]]" placeholder="[[item.inputPlaceholder]]" on-input="_parameterValueChanged"></paper-input></template><paper-icon-button title="Display documentation" class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="_openParamDoc"></paper-icon-button></div><template is="dom-if" if="[[item.hasDescription]]"><div class="docs"><iron-collapse><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></div></template></section></template></div></div></div></form></template><script>Polymer({is:"auth-method-custom",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{ramlSettings:Object,headers:{type:Array,computed:"_computeHeaders(ramlSettings.describedBy.*)"},queryParameters:{type:Array,computed:"_computeParameters(ramlSettings.describedBy.queryParameters.*)"},hasHeaders:{type:Boolean,computed:"_computeHasHeaders(ramlSettings.describedBy.*)"},hasQueryParameters:{type:Boolean,computed:"_computeHasQueryParameters(ramlSettings.describedBy.*)"}},attached:function(){this.listen(window,
-"request-header-changed","_headerChangedHandler");this.listen(window,"query-parameter-changed","_parameterChangedHandler")},detached:function(){this.unlisten(window,"request-header-changed","_headerChangedHandler");this.unlisten(window,"query-parameter-changed","_parameterChangedHandler")},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},_computeParameters:function(record){var array=record&&record.base;if(!array||
+"_ramlSettingsChanged(ramlSettings.*)","_updateStepperState(noStepper)"],ready:function(){this._initialized=true;this._autoHide()},_attachListeners:function(node){this.listen(node,"oauth2-error","_oauth2ErrorHandler");this.listen(node,"oauth2-token-response","_oauth2SccessHandler");this.listen(node,"auth-settings-changed","_onAuthSettings");this.listen(node,"request-header-changed","_headerChangedHandler");this._updateGrantTypes()},_detachListeners:function(node){this.unlisten(node,"oauth2-error",
+"_oauth2ErrorHandler");this.unlisten(node,"oauth2-token-response","_oauth2SccessHandler");this.unlisten(node,"auth-settings-changed","_onAuthSettings");this.unlisten(node,"request-header-changed","_headerChangedHandler")},_autoHide:function(){if(this.noAuto){this.advancedOpened=true;return}if(!!this.authUrl&&!!this.accessTokenUrl&&!!(this.scopes&&this.scopes.length)){this.isAdvanced=true;this.advancedOpened=false}else this.advancedOpened=true},get settings(){return this._getSettings()},validate:function(passive){return passive?
+this.$.form.checkValidity():this.$.form.validate()},_settingsChanged:function(){var validationResult=this.$.form.validate();var settings=this._getSettings();var detail={settings:settings,type:"oauth2",valid:validationResult};this.fire("auth-settings-changed",detail)},_clearField:function(e){e=Polymer.dom(e);var path=e.path;var inputTarget;while(inputTarget=path.shift())if(inputTarget.nodeName==="INPUT"||inputTarget.nodeName==="PAPER-INPUT")break;if(!inputTarget)return;inputTarget.value=""},_isFieldHidden:function(){var args=
+Array.from(arguments);var grantType=args.splice(0,1)[0];return args.indexOf(grantType)===-1},authorize:function(){var validationResult=this.$.form.validate();if(!validationResult)return;var detail=this._getSettings();this._authorizing=true;this.fire("oauth2-token-requested",detail)},_getSettings:function(){var detail={type:this.grantType,clientId:this.clientId,tokenValue:this.tokenValue||""};switch(this.grantType){case "implicit":detail.authorizationUrl=this.authUrl;detail.redirectUrl=this.redirectUrl;
+detail.scopes=this.scopes;break;case "authorization_code":detail.authorizationUrl=this.authUrl;detail.clientSecret=this.clientSecret;detail.accessTokenUrl=this.accessTokenUrl;detail.redirectUrl=this.redirectUrl;detail.scopes=this.scopes;break;case "client_credentials":detail.clientSecret=this.clientSecret;detail.accessTokenUrl=this.accessTokenUrl;break;case "password":detail.username=this.username;detail.password=this.password;detail.accessTokenUrl=this.accessTokenUrl;break}return detail},_tokenValueChanged:function(newValue){this._authorizing=
+false;if(newValue)this._setHasTokenValue(true);else this._setHasTokenValue(false)},_oauth2ErrorHandler:function(e,detail){this._authorizing=false;var toast=this.$$("paper-toast");toast.text=detail.message;toast.opened=true},_oauth2SccessHandler:function(e,detail){if(detail.accessToken&&detail.accessToken!==this.tokenValue){this.set("tokenValue",detail.accessToken);this.fire("oauth2-token-ready",{token:detail.accessToken})}},_ramlSettingsChanged:function(record){if(!record||!record.base)return;var type=
+record.base;if(!type||!type.settings)return;this.preFill(type.settings);this._autoHide()},preFill:function(settings){if(!settings)throw new Error("The `settings` argument is not set.");var grants=settings.authorizationGrants;if(typeof grants==="string")grants=[grants];if(grants&&grants instanceof Array&&grants.length){var index=grants.indexOf("code");if(index!==-1)grants[index]="authorization_code";this._updateGrantTypes(grants)}else this._updateGrantTypes();if(settings.accessTokenUri)this.accessTokenUrl=
+settings.accessTokenUri;if(settings.authorizationUri)this.authUrl=settings.authorizationUri;if(settings.scopes)this.scopes=settings.scopes},_updateGrantTypes:function(supportedTypes){var available=this._supportedGrantTypes.map(function(item){return item});if(!supportedTypes||!supportedTypes.length){this.set("grantTypes",available);return}var i;for(i=available.length-1;i>=0;i--)if(supportedTypes.indexOf(available[i].type)===-1)available.splice(i,1);this.set("grantTypes",available);var current=this.grantType;
+var hasCurrent=false;if(current)for(i=available.length-1;i>=0;i--)if(available[i].type===current){hasCurrent=true;break}if(!hasCurrent)if(available&&available[0])this.set("grantType",available[0].type);else this.set("grantType","")},_computeIsSelectedType:function(grantType){return!!grantType},_computeStepperClass:function(isSelected){var cls="stepper";if(isSelected)cls+=" active";return cls},_clearTypeSelection:function(){this.grantType=""},_computeSelectedTypeLabel:function(grantType){switch(grantType){case "implicit":return"Access token (browser flow)";
+case "authorization_code":return"Authorization code (server flow)";case "client_credentials":return"Client credentials";case "password":return"Password"}},_copyRedirectUrl:function(e){e=Polymer.dom(e);var src=e.localTarget.dataset.src;if(!src)throw new Error("Copy to clipboard require the data-src attribute.");var params;switch(src){case "redirect":params={container:this.$.redirectLabel,button:this.$.redirectCopyButton};break;case "token":params={container:this.$.tokenLabel,button:this.$.tokenCopyButton};
+break;default:throw new Error("Unknown src value");}return this._copyToClipboard(params)},_copyToClipboard:function(params){var snipRange=document.createRange();snipRange.selectNodeContents(params.container);var selection=window.getSelection();selection.removeAllRanges();selection.addRange(snipRange);var result=false;try{result=document.execCommand("copy");params.button.icon="done"}catch(err){Polymer.Base._error(err);params.button.icon="error"}setTimeout(this._resetCopyButtonState.bind(this,params.button),
+1E3);selection.removeAllRanges();return result},_resetCopyButtonState:function(button){button.icon="content-copy"},_onAuthSettings:function(e){if(!this._initialized)return;var event=Polymer.dom(e);if(event.rootTarget===this)return;if(e.detail.type!=="oauth2")return;var otherSettings=e.detail.settings;for(var _key in otherSettings){var _localKey;if(_key==="type")_localKey="grantType";else if(_key==="authorizationUrl")_localKey="authUrl";else _localKey=_key;if(this[_localKey]!==otherSettings[_key])this[_localKey]=
+otherSettings[_key]}},_updateStepperState:function(noStepper){this._typeSelectorForceOpened=noStepper?true:false},_computeTypeSelectorOpened:function(isSelectedType,forceHideTypeSelector,_typeSelectorForceOpened){if(forceHideTypeSelector)return false;if(_typeSelectorForceOpened||!isSelectedType)return true;return false},_noGrantTypeChanged:function(newValue,oldValue){if(newValue)this.stepStartIndex--;else if(oldValue!==undefined)this.stepStartIndex++},_headerChangedHandler:function(e){if(!this._isOpened||
+e.defaultPrevented)return;var name=e.detail.name;if(!name)return;name=name.toLowerCase();if(name!=="authorization")return;var value=e.detail.value;if(!value){if(this.tokenValue)this.set("tokenValue","");return}var lowerValue=value.toLowerCase();if(lowerValue.indexOf("bearer")!==0){if(this.tokenValue)this.set("tokenValue","");return}value=value.substr(7);this.set("tokenValue",value)}});</script></dom-module><dom-module id="auth-method-oauth1" assetpath="bower_components/auth-methods/"><template><style>:host{display:block;@apply --auth-method-panel;@apply --auth-method-oauth1;--paper-icon-button:{color:var(--hint-trigger-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;@apply --icon-button;};--paper-icon-button-hover:{color:var(--hint-trigger-hover-color, rgba(0, 0, 0, 0.78));@apply --icon-button-hover;};--paper-input-container-focus-color:{@apply --input-line-color;};}.form{max-width:700px;}.grant-dropdown{width:320px;}.auth-button{background-color:var(--primary-color);color:rgba(255, 255, 255, 0.87);@apply --auth-button;}.auth-button:hover{@apply --auth-button-hover;}.auth-button[disabled]{background-color:rgba(0, 0, 0, 0.24);color:rgba(0, 0, 0, 0.54);@apply --auth-button-disabled;}.authorize-actions{margin-top:12px;@apply --layout-horizontal;@apply --layout-center;}</style><div class="form"><form is="iron-form" id="oauth1form"><paper-dropdown-menu label="Authorization token method" class="auth-token-method" required="" auto-validate=""><paper-listbox class="dropdown-content" selected="{{authTokenMethod}}" attr-for-selected="data-type"><paper-item data-type="GET">GET</paper-item><paper-item data-type="POST">POST</paper-item></paper-listbox></paper-dropdown-menu><paper-dropdown-menu label="Oauth parameters location" class="auth-params-location" required="" auto-validate=""><paper-listbox class="dropdown-content" selected="{{authParamsLocation}}" attr-for-selected="data-type"><paper-item data-type="querystring">Query string</paper-item><paper-item data-type="authorization">Authorization header</paper-item></paper-listbox></paper-dropdown-menu><paper-masked-input auto-validate="" required="" label="Consumer key" value="{{consumerKey}}" data-field="consumerKey" autocomplete="on"></paper-masked-input><paper-masked-input label="Consumer secret" value="{{consumerSecret}}" data-field="consumerSecret" autocomplete="on"></paper-masked-input><paper-masked-input auto-validate="" label="Token" value="{{token}}" data-field="token" autocomplete="on"></paper-masked-input><paper-masked-input label="Token secret" value="{{tokenSecret}}" data-field="tokenSecret" autocomplete="on"></paper-masked-input><paper-input label="Request token URL" value="{{requestTokenUrl}}"></paper-input><paper-input label="Token Authorization URL" value="{{accessTokenUrl}}"></paper-input><paper-input label="User authorization dialog URL" value="{{authorizationUrl}}"></paper-input><paper-input label="Redirect URL" value="{{redirectUrl}}"></paper-input><paper-input auto-validate="" required="" label="Timestamp" value="{{timestamp}}" type="text" data-field="timestamp" autocomplete="on"><paper-icon-button suffix="" on-tap="_genTimestamp" icon="arc:cached" alt="Regenerate input icon" title="Regenerate timestamp"></paper-icon-button><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-input auto-validate="" required="" label="Nonce" value="{{nonce}}" type="text" data-field="nonce" autocomplete="on"><paper-icon-button suffix="" on-tap="_genNonce" icon="arc:cached" alt="Regenerate input icon" title="Regenerate nonce"></paper-icon-button><paper-icon-button suffix="" on-tap="_clearField" icon="arc:clear" alt="Clear input icon" title="Clear input"></paper-icon-button></paper-input><paper-input label="Realm" value="{{realm}}" type="text" data-field="realm" autocomplete="on"></paper-input><paper-dropdown-menu label="Signature method" class="grant-dropdown" required="" auto-validate=""><paper-listbox class="dropdown-content" selected="{{signatureMethod}}" attr-for-selected="data-type"><template is="dom-repeat" items="[[signatureMethods]]"><paper-item data-type$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu><div class="authorize-actions"><paper-button disabled$="[[_authorizing]]" class="auth-button" on-tap="authorize">Authorize</paper-button><paper-spinner active="[[_authorizing]]"></paper-spinner></div></form></div><paper-toast text="" duration="5000"></paper-toast></template><script>Polymer({is:"auth-method-oauth1",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{consumerKey:{type:String,notify:true},consumerSecret:{type:String,notify:true},token:{type:String,notify:true},tokenSecret:{type:String,notify:true},timestamp:{type:Number,notify:true},nonce:{type:String,notify:true},realm:{type:String,notify:true},signatureMethod:{type:String,value:"HMAC-SHA1",notify:true},_authorizing:Boolean,redirectUrl:String,requestTokenUrl:String,accessTokenUrl:String,authTokenMethod:{type:String,
+value:"POST"},authParamsLocation:{type:String,value:"authorization"},authorizationUrl:String,ramlSettings:{type:Object,observer:"_ramlSettingsChanged"},signatureMethods:Array},get defaultSignatureMethods(){return["HMAC-SHA1","RSA-SHA1","PLAINTEXT"]},observers:["_settingsChanged(consumerKey, consumerSecret, token, tokenSecret, timestamp, nonce, realm, signatureMethod, redirectUrl, requestTokenUrl, accessTokenUrl, authTokenMethod, authParamsLocation, authorizationUrl)"],_attachListeners:function(node){this.listen(node,
+"oauth1-error","_oauth1ErrorHandler");this.listen(node,"oauth1-token-response","_tokenResponseHandler")},_detachListeners:function(node){this.unlisten(node,"oauth1-error","_oauth1ErrorHandler");this.unlisten(node,"oauth1-token-response","_tokenResponseHandler")},ready:function(){this._genTimestamp();this._genNonce();if(!this.signatureMethods)this.signatureMethods=this.defaultSignatureMethods},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.oauth1form.checkValidity():
+this.$.oauth1form.validate()},_settingsChanged:function(){var validationResult=this.$.oauth1form.validate();var settings=this._getSettings();if(validationResult)if(!settings||!settings.token||!settings.tokenSecret)validationResult=false;var detail={settings:settings,type:"oauth1",valid:validationResult};this.fire("auth-settings-changed",detail)},_getSettings:function(){return{consumerKey:this.consumerKey,consumerSecret:this.consumerSecret,token:this.token,tokenSecret:this.tokenSecret,timestamp:this.timestamp,
+nonce:this.nonce,realm:this.realm,signatureMethod:this.signatureMethod,requestTokenUrl:this.requestTokenUrl,accessTokenUrl:this.accessTokenUrl,redirectUrl:this.redirectUrl,authTokenMethod:this.authTokenMethod,authParamsLocation:this.authParamsLocation,authorizationUrl:this.authorizationUrl,type:"oauth1"}},_clearField:function(e){e=Polymer.dom(e);var path=e.path;var inputTarget;while(inputTarget=path.shift())if(inputTarget.nodeName==="INPUT"||inputTarget.nodeName==="PAPER-INPUT")break;if(!inputTarget)return;
+inputTarget.value=""},authorize:function(){this._authorizing=true;var detail={};if(this.consumerKey)detail.consumerKey=this.consumerKey;if(this.consumerSecret)detail.consumerSecret=this.consumerSecret;if(this.token)detail.token=this.token;if(this.tokenSecret)detail.tokenSecret=this.tokenSecret;if(this.timestamp)detail.timestamp=this.timestamp;if(this.nonce)detail.nonce=this.nonce;if(this.realm)detail.realm=this.realm;if(this.signatureMethod)detail.signatureMethod=this.signatureMethod;if(this.requestTokenUrl)detail.requestTokenUrl=
+this.requestTokenUrl;if(this.accessTokenUrl)detail.accessTokenUrl=this.accessTokenUrl;if(this.redirectUrl)detail.redirectUrl=this.redirectUrl;if(this.authParamsLocation)detail.authParamsLocation=this.authParamsLocation;if(this.authTokenMethod)detail.authTokenMethod=this.authTokenMethod;if(this.authorizationUrl)detail.authorizationUrl=this.authorizationUrl;detail.type="oauth1";this.fire("oauth1-token-requested",detail)},_oauth1ErrorHandler:function(e,detail){this._authorizing=false;var toast=this.$$("paper-toast");
+toast.text=detail.message;toast.opened=true},_tokenResponseHandler:function(e){this._authorizing=false;this.token=e.detail.oauth_token;this.tokenSecret=e.detail.oauth_token_secret},_genTimestamp:function(){var t=Math.floor(Date.now()/1E3);this.timestamp=t},_genNonce:function(length){var result=[];var chrs="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";var chrsLength=chrs.length;length=Number(length||32);if(length!==length)length=32;for(var i=0;i<length;i++)result[result.length]=
+chrs[Math.floor(Math.random()*chrsLength)];this.nonce=result.join("")},_ramlSettingsChanged:function(type){if(!type)type={};if(!type.settings)type.settings={};this.preFill(type.settings)},preFill:function(settings){if(settings.requestTokenUri)this.requestTokenUrl=settings.requestTokenUri;if(settings.authorizationUri)this.authorizationUrl=settings.authorizationUri;if(settings.tokenCredentialsUri)this.accessTokenUrl=settings.tokenCredentialsUri;if(settings.signatures)this.signatureMethods=settings.signatures;
+else this.signatureMethods=this.defaultSignatureMethods}});</script></dom-module><dom-module id="auth-method-custom" assetpath="bower_components/auth-methods/"><template strip-whitespace=""><style include="markdown-styles"></style><style include="auth-methods-styles">:host{display:block;@apply --auth-method-panel;@apply --auth-method-custom;--paper-input-container-label:{color:var(--raml-headers-form-input-label-color, rgba(0, 0, 0, 0.48));};}paper-input[required]{--paper-input-container-label:{color:var(--raml-request-parameters-editor-required-input-label-color, rgba(0, 0, 0, 0.72));};}.input-row{display:block;}.docs{@apply --arc-font-common-base;font-size:13px !important;font-weight:200;line-height:24px;color:var(--inline-documentation-color, rgba(0, 0, 0, 0.87));}.markdown-html *{font-size:13px !important;}.markdown-html p:first-child{margin-top:0;padding-top:0;}.markdown-html p:last-child{margin-bottom:0;padding-bottom:0;}.help-icon{color:var(--inline-help-icon-color, rgba(0, 0, 0, 0.24));transition:color 0.2s linear;}.help-icon:hover{color:var(--inline-help-icon-color-hover, var(--accent-color, rgba(0, 0, 0, 0.74)));}.value-input{@apply --layout-horizontal;@apply --layout-center;@apply --layout-flex;}.value-input paper-input,
+    .value-input paper-dropdown-menu{@apply --layout-flex;}</style><form is="iron-form" id="form"><div class="row"><div class="stepper"><span class="step">[[_computeStep(stepStartIndex, 1)]]</span> <span class="step-header"><span class="step-title">Set authorization data</span></span></div><div class="step-content"><div class="line"></div><div class="content"><template is="dom-if" if="[[hasHeaders]]"><section id="headersList"><template is="dom-repeat" items="[[headers]]" headers-repeater=""><div class="input-row"><div class="value-input"><paper-input label="[[item.inputLabel]]" value="{{item.value}}" required="[[item.required]]" pattern="[[item.pattern]]" name="[[item.name]]" auto-validate="" type="[[item.inputType]]" min="[[item.minimum]]" max="[[item.maximum]]" maxlength="[[item.maxLength]]" always-float-label="[[item.inputFloatLabel]]" placeholder="[[item.inputPlaceholder]]" on-input="_headerValueChanged"></paper-input><paper-icon-button title="Display documentation" class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="_openHeaderDoc"></paper-icon-button></div><template is="dom-if" if="[[item.hasDescription]]"><div class="docs"><iron-collapse><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></div></template></section></template><template is="dom-if" if="[[hasQueryParameters]]"><section id="paramsList"><template is="dom-repeat" items="[[queryParameters]]" params-repeater=""><div class="input-row"><div class="value-input"><template is="dom-if" if="[[item.isEnum]]"><paper-dropdown-menu label="[[item.inputLabel]]" name="[[item.name]]" required="[[item.required]]" on-iron-select="_parameterValueChanged"><paper-listbox class="dropdown-content" attr-for-selected="data-value" selected="{{item.value}}"><template is="dom-repeat" items="[[item.enum]]"><paper-item data-value$="[[item]]">[[item]]</paper-item></template></paper-listbox></paper-dropdown-menu></template><template is="dom-if" if="[[!item.isEnum]]"><paper-input label="[[item.inputLabel]]" value="{{item.value}}" required="[[item.required]]" pattern="[[item.pattern]]" name="[[item.name]]" auto-validate="" type="[[item.inputType]]" min="[[item.minimum]]" max="[[item.maximum]]" maxlength="[[item.maxLength]]" always-float-label="[[item.inputFloatLabel]]" placeholder="[[item.inputPlaceholder]]" on-input="_parameterValueChanged"></paper-input></template><paper-icon-button title="Display documentation" class="help-icon" suffix="" icon="arc:help" hidden$="[[!item.hasDescription]]" on-tap="_openParamDoc"></paper-icon-button></div><template is="dom-if" if="[[item.hasDescription]]"><div class="docs"><iron-collapse><marked-element markdown="[[item.description]]"><div class="markdown-html markdown-body"></div></marked-element></iron-collapse></div></template></div></template></section></template></div></div></div></form></template><script>Polymer({is:"auth-method-custom",behaviors:[ArcBehaviors.AuthMethodsBehavior],properties:{ramlSettings:Object,headers:{type:Array,computed:"_computeHeaders(ramlSettings.describedBy.*)"},queryParameters:{type:Array,computed:"_computeParameters(ramlSettings.describedBy.queryParameters.*)"},hasHeaders:{type:Boolean,computed:"_computeHasHeaders(ramlSettings.describedBy.*)"},hasQueryParameters:{type:Boolean,computed:"_computeHasQueryParameters(ramlSettings.describedBy.*)"}},_attachListeners:function(node){this.listen(node,
+"request-header-changed","_headerChangedHandler");this.listen(node,"query-parameter-changed","_parameterChangedHandler")},_detachListeners:function(node){this.unlisten(node,"request-header-changed","_headerChangedHandler");this.unlisten(node,"query-parameter-changed","_parameterChangedHandler")},get settings(){return this._getSettings()},validate:function(passive){return passive?this.$.form.checkValidity():this.$.form.validate()},_computeParameters:function(record){var array=record&&record.base;if(!array||
 !array.length)return;return this._computeFormData(array)},_computeHeaders:function(record){var describedBy=record&&record.base;if(!(describedBy&&describedBy.headers&&describedBy.headers.length))return;return this._computeFormData(describedBy.headers)},_computeFormData:function(array){var numTypes=["number","integer","float"];return array.map(function(item){item=Object.assign({},item);item.isEnum=!!(item.enum&&item.enum.length);item.hasDescription=!!item.description;item.inputLabel=item.displayName||
 item.name||"Value";if(item.required)item.inputLabel+="*";if(numTypes.indexOf(item.type)!==-1)item.inputType="number";else item.inputType="text";if(item.examples&&item.examples.length&&item.examples[0])item.inputPlaceholder="Example: "+item.examples[0];else if(item.example&&typeof item.example==="string")item.inputPlaceholder="Example: "+item.example;if(item.inputPlaceholder)item.inputFloatLabel=true;if(item.required&&typeof item.default!=="undefined"&&!item.value)item.value=item.default;if(typeof item.value===
 "undefined"&&item.required){if(item.examples)item.value=item.examples[0];else if(item.example)item.value=item.example;if(item.value&&item.value.indexOf&&item.value.indexOf(item.name+"\x3d")===0)item.value=item.value.substr(item.name.length+1);if(typeof item.value==="undefined"&&item.isEnum)item.value=item.enum[0]}if(item.value&&typeof item.value==="string")item.value=decodeURIComponent(item.value.replace(/\+/g," "));return item})},_computeHasHeaders:function(record){var describedBy=record&&record.base;
 return!!(describedBy&&describedBy.headers&&describedBy.headers.length)},_computeHasQueryParameters:function(record){var describedBy=record&&record.base;return!!(describedBy&&describedBy.queryParameters&&describedBy.queryParameters.length)},_getSettings:function(){return this.$.form.serialize()},notifySettingsChanged:function(){var validationResult=this.$.form.validate();var settings=this._getSettings();var detail={settings:settings,type:"x-custom",name:this.ramlSettings.name,valid:validationResult};
 this.fire("auth-settings-changed",detail)},_headerValueChanged:function(e){var item=e.model.get("item");var name=item.name||item.key;var value=item.value;this.fire("request-header-changed",{name:name,value:value});this.notifySettingsChanged()},_openHeaderDoc:function(e){var model=this._getItemModel("headers",e);this._toggleDoc("headers",model)},_openParamDoc:function(e){var model=this._getItemModel("params",e);this._toggleDoc("params",model)},_getItemModel:function(source,e){var template=this.$.form.querySelector("["+
 source+"-repeater]");return template.modelForElement(e.target)},_toggleDoc:function(type,model){var i=model.index+1;var collapse=this.$$("#"+type+"List").querySelector(".input-row:nth-child("+i+") iron-collapse");if(!collapse)return;collapse.opened=!collapse.opened},_parameterValueChanged:function(e){var item=e.model.get("item");var name=item.name||item.key;var value=item.value;this.fire("query-parameter-changed",{name:name,value:value});this.notifySettingsChanged()},_headerChangedHandler:function(e){this._updateEventValue("headers",
-e)},_parameterChangedHandler:function(e){this._updateEventValue("queryParameters",e)},_updateEventValue:function(target,e){if(e.target===this)return;if(e.defaultPrevented)return;var name=e.detail.name;if(!name)return;name=target==="headers"?name.toLowerCase():name;var parameters=this[target];if(!parameters||!parameters.length)return;for(var i=0,len=parameters.length;i<len;i++){var paramName=parameters[i].name||parameters[i].key;if(!paramName)continue;paramName=target==="headers"?paramName.toLowerCase():
+e)},_parameterChangedHandler:function(e){this._updateEventValue("queryParameters",e)},_updateEventValue:function(target,e){if(e.target===this||!this._isOpened||e.defaultPrevented)return;var name=e.detail.name;if(!name)return;name=target==="headers"?name.toLowerCase():name;var parameters=this[target];if(!parameters||!parameters.length)return;for(var i=0,len=parameters.length;i<len;i++){var paramName=parameters[i].name||parameters[i].key;if(!paramName)continue;paramName=target==="headers"?paramName.toLowerCase():
 paramName;if(paramName===name){this.set([target,i,"value"],e.detail.value);return}}}});</script></dom-module><dom-module id="authorization-panel" assetpath="bower_components/authorization-panel/"><template><style>:host{display:block;@apply (--authorization-panel);}#container{position:relative;}.stepper{@apply (--layout-horizontal);@apply (--layout-center);padding:12px 0;position:relative;pointer-events:none;}.stepper.active{pointer-events:all;cursor:pointer;}.step{display:inline-block;background-color:var(--stepper-step-number-background-color, #3D8099);color:var(--stepper-step-number-color, #fff);font-size:14px;@apply (--layout-center-center);@apply (--layout-horizontal);width:24px;height:24px;border-radius:50%;margin-right:12px;}.step-header{position:relative;}.step-title{@apply (--arc-font-body1);display:block;color:var(--stepper-step-title-color, #3D8099);font-size:16px;font-weight:500;}.step-selection{@apply (--arc-font-body1);color:var(--stepper-step-selection-label-color, rgba(0, 0, 0, 0.54));position:absolute;bottom:-16px;}paper-ripple{color:var(--stepper-step-title-color, #3D8099);}.step-content{@apply (--layout-horizontal);@apply (--arc-font-body1);margin-bottom:12px;min-height:32px;}.line{width:11px;border-right:1px var(--stepper-line-color, rgba(0, 0, 0, 0.12)) solid;margin-right:24px;}.edit-icon{visibility:hidden;}.active .step-header:hover .edit-icon{visibility:visible;}</style><div id="container"><div class="row" hidden$="[[noSelector]]"><div class$="[[_computeStepperClass(isSelected)]]" on-tap="_clearCelection"><span class="step">1</span> <span class="step-header"><span class="step-title">Select authorization method<iron-icon icon="arc:edit" class="edit-icon"></iron-icon></span><span class="step-selection" hidden$="[[!isSelected]]">[[_computeSelectedLabel(selected)]]</span></span><paper-ripple></paper-ripple></div><div class="step-content"><div class="line"></div><iron-collapse opened="[[!isSelected]]"><div class="content"><paper-dropdown-menu label="Authorization method"><paper-listbox class="dropdown-content" selected="{{selected}}" attr-for-selected="data-type"><template is="dom-repeat" items="[[authMethods]]"><paper-item data-type="[[item.id]]">[[item.name]]</paper-item></template></paper-listbox></paper-dropdown-menu></div></iron-collapse></div></div><iron-pages selected="[[selected]]" attr-for-selected="data-type" hidden$="[[!isSelected]]"><auth-method-basic data-type="basic" no-stepper="[[noSelector]]"></auth-method-basic><auth-method-digest data-type="digest" no-stepper="[[noSelector]]"></auth-method-digest><auth-method-oauth2 data-type="oauth2" no-stepper="[[noSelector]]" redirect-url="[[redirectUrl]]" raml-settings="[[_computeSettings(securedBy, 'OAuth 2.0')]]"></auth-method-oauth2><template is="dom-repeat" items="[[customSchemes]]"><auth-method-custom data-type$="[[item]]" no-stepper="[[noSelector]]" raml-settings="[[_computeSettings(securedBy, item)]]"></auth-method-custom></template></iron-pages></div></template><script>Polymer({is:"authorization-panel",properties:{selected:{type:String,notify:true},isSelected:{type:Boolean,value:false,computed:"_computeIsSelected(selected)"},isRequired:{type:Boolean,value:false,readOnly:true,notify:true},settings:{type:Object,readOnly:true,notify:true},securedBy:{type:Object,observer:"_securedByChanged"},redirectUrl:String,noRamlSelected:{type:Boolean,value:false,readOnly:true,notify:true},authMethods:{type:Array},_availableAuthMethods:{type:Array,value:function(){return[{"id":"basic",
 "name":"Basic authorization"},{"id":"digest","name":"Digest Authentication"},{"id":"oauth2","name":"Oauth 2.0"}]}},valid:{type:Boolean,value:true,notify:true,computed:"_checkAuthorizationReady(settings.valid, selected, required)"},noSelector:{type:Boolean},customSchemes:Array},observers:["_authSettingsChanged(selected, settings.*)","_selectedChanged(selected)"],ready:function(){if(!this.authMethods)this.set("authMethods",this._availableAuthMethods);this._updateValidationState()},listeners:{"auth-settings-changed":"_authSettingsHandler",
 "authorization-settings-changed":"_onAuthSettingsChanged"},_updateValidationState:function(){this.debounce("check-validation-state",function(){if(!this.selected||!this.settings)return;var panel=this.$$('[data-type\x3d"'+this.selected+'"]');if(!panel){console.warn("The auth panel for %s not set",this.selected);return}this.set("settings.valid",panel.validate())},200)},_authSettingsHandler:function(e){if(e.detail.type!==this.selected)return;this._setSettings(e.detail)},_authSettingsChanged:function(selected,
@@ -2083,19 +2152,31 @@ _authorizeClientCredential:function(settings){var url=this._settings.accessToken
 url);xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr.send(body)},_getClientCredentialBody:function(settings){var url="grant_type\x3dclient_credentials";if(settings.clientId)url+="\x26client_id\x3d"+encodeURIComponent(settings.clientId);if(settings.clientSecret)url+="\x26client_secret\x3d"+settings.clientSecret;if(settings.scopes&&settings.scopes.length)url+="scope\x3d"+encodeURIComponent(settings.scopes.join(" "));return url}});</script><script>Polymer.PaperDialogBehaviorImpl={hostAttributes:{"role":"dialog","tabindex":"-1"},properties:{modal:{type:Boolean,value:false}},observers:["_modalChanged(modal, _readied)"],listeners:{"tap":"_onDialogClick"},ready:function(){this.__prevNoCancelOnOutsideClick=this.noCancelOnOutsideClick;this.__prevNoCancelOnEscKey=this.noCancelOnEscKey;this.__prevWithBackdrop=this.withBackdrop},_modalChanged:function(modal,readied){if(!readied)return;if(modal){this.__prevNoCancelOnOutsideClick=this.noCancelOnOutsideClick;
 this.__prevNoCancelOnEscKey=this.noCancelOnEscKey;this.__prevWithBackdrop=this.withBackdrop;this.noCancelOnOutsideClick=true;this.noCancelOnEscKey=true;this.withBackdrop=true}else{this.noCancelOnOutsideClick=this.noCancelOnOutsideClick&&this.__prevNoCancelOnOutsideClick;this.noCancelOnEscKey=this.noCancelOnEscKey&&this.__prevNoCancelOnEscKey;this.withBackdrop=this.withBackdrop&&this.__prevWithBackdrop}},_updateClosingReasonConfirmed:function(confirmed){this.closingReason=this.closingReason||{};this.closingReason.confirmed=
 confirmed},_onDialogClick:function(event){var path=Polymer.dom(event).path;for(var i=0;i<path.indexOf(this);i++){var target=path[i];if(target.hasAttribute&&(target.hasAttribute("dialog-dismiss")||target.hasAttribute("dialog-confirm"))){this._updateClosingReasonConfirmed(target.hasAttribute("dialog-confirm"));this.close();event.stopPropagation();break}}}};Polymer.PaperDialogBehavior=[Polymer.IronOverlayBehavior,Polymer.PaperDialogBehaviorImpl];</script><dom-module id="paper-dialog-scrollable" assetpath="bower_components/paper-dialog-scrollable/"><template><style>:host{display:block;@apply (--layout-relative);}:host(.is-scrolled:not(:first-child))::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--divider-color);}:host(.can-scroll:not(.scrolled-to-bottom):not(:last-child))::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--divider-color);}.scrollable{padding:0 24px;@apply (--layout-scroll);@apply (--paper-dialog-scrollable);}.fit{@apply (--layout-fit);}</style><div id="scrollable" class="scrollable"><content></content></div></template></dom-module><script>Polymer({is:"paper-dialog-scrollable",properties:{dialogElement:{type:Object}},listeners:{"scrollable.scroll":"_scroll"},get scrollTarget(){return this.$.scrollable},ready:function(){this._ensureTarget()},attached:function(){this.classList.add("no-padding");this._ensureTarget();requestAnimationFrame(this._scroll.bind(this))},_scroll:function(){this.toggleClass("is-scrolled",this.scrollTarget.scrollTop>0);this.toggleClass("can-scroll",this.scrollTarget.offsetHeight<this.scrollTarget.scrollHeight);
-this.toggleClass("scrolled-to-bottom",this.scrollTarget.scrollTop+this.scrollTarget.offsetHeight>=this.scrollTarget.scrollHeight)},_ensureTarget:function(){this.dialogElement=this.dialogElement||Polymer.dom(this).parentNode;if(this.dialogElement&&this.dialogElement.behaviors&&this.dialogElement.behaviors.indexOf(Polymer.PaperDialogBehaviorImpl)>=0){this.dialogElement.sizingTarget=this.scrollTarget;this.scrollTarget.classList.remove("fit")}else if(this.dialogElement)this.scrollTarget.classList.add("fit")}});</script><dom-module id="paper-dialog-shared-styles" assetpath="bower_components/paper-dialog-behavior/"><template><style>:host{display:block;margin:24px 40px;background:var(--paper-dialog-background-color, --primary-background-color);color:var(--paper-dialog-color, --primary-text-color);@apply (--paper-font-body1);@apply (--shadow-elevation-16dp);@apply (--paper-dialog);}:host > ::content > *{margin-top:20px;padding:0 24px;}:host > ::content > .no-padding{padding:0;}:host > ::content > *:first-child{margin-top:24px;}:host > ::content > *:last-child{margin-bottom:24px;}:host > ::content h2{position:relative;margin:0;@apply (--paper-font-title);@apply (--paper-dialog-title);}:host > ::content .buttons{position:relative;padding:8px 8px 8px 24px;margin:0;color:var(--paper-dialog-button-color, --primary-color);@apply (--layout-horizontal);@apply (--layout-end-justified);}</style></template></dom-module><dom-module id="paper-dialog" assetpath="bower_components/paper-dialog/"><template><style include="paper-dialog-shared-styles"></style><content></content></template></dom-module><script>(function(){Polymer({is:"paper-dialog",behaviors:[Polymer.PaperDialogBehavior,Polymer.NeonAnimationRunnerBehavior],listeners:{"neon-animation-finish":"_onNeonAnimationFinish"},_renderOpened:function(){this.cancelAnimation();this.playAnimation("entry")},_renderClosed:function(){this.cancelAnimation();this.playAnimation("exit")},_onNeonAnimationFinish:function(){if(this.opened)this._finishRenderOpened();else this._finishRenderClosed()}})})();</script><script>Polymer({is:"raml-request-panel-simple-xhr",properties:{loading:{type:Boolean,notify:true,readOnly:true,value:false},request:Object,response:Object,error:Object,loadingTime:Number},execute:function(data){this._setLoading(true);this.error=undefined;this.response=undefined;this.request=this._createRequest(data);var requestStart=performance.now();fetch(this.request).then(function(response){this.loadingTime=performance.now()-requestStart;this.response=response;if(!response.ok)this.error=new Error("Resource is unavailable");
+this.toggleClass("scrolled-to-bottom",this.scrollTarget.scrollTop+this.scrollTarget.offsetHeight>=this.scrollTarget.scrollHeight)},_ensureTarget:function(){this.dialogElement=this.dialogElement||Polymer.dom(this).parentNode;if(this.dialogElement&&this.dialogElement.behaviors&&this.dialogElement.behaviors.indexOf(Polymer.PaperDialogBehaviorImpl)>=0){this.dialogElement.sizingTarget=this.scrollTarget;this.scrollTarget.classList.remove("fit")}else if(this.dialogElement)this.scrollTarget.classList.add("fit")}});</script><dom-module id="paper-dialog-shared-styles" assetpath="bower_components/paper-dialog-behavior/"><template><style>:host{display:block;margin:24px 40px;background:var(--paper-dialog-background-color, --primary-background-color);color:var(--paper-dialog-color, --primary-text-color);@apply (--paper-font-body1);@apply (--shadow-elevation-16dp);@apply (--paper-dialog);}:host > ::content > *{margin-top:20px;padding:0 24px;}:host > ::content > .no-padding{padding:0;}:host > ::content > *:first-child{margin-top:24px;}:host > ::content > *:last-child{margin-bottom:24px;}:host > ::content h2{position:relative;margin:0;@apply (--paper-font-title);@apply (--paper-dialog-title);}:host > ::content .buttons{position:relative;padding:8px 8px 8px 24px;margin:0;color:var(--paper-dialog-button-color, --primary-color);@apply (--layout-horizontal);@apply (--layout-end-justified);}</style></template></dom-module><dom-module id="paper-dialog" assetpath="bower_components/paper-dialog/"><template><style include="paper-dialog-shared-styles"></style><content></content></template></dom-module><script>(function(){Polymer({is:"paper-dialog",behaviors:[Polymer.PaperDialogBehavior,Polymer.NeonAnimationRunnerBehavior],listeners:{"neon-animation-finish":"_onNeonAnimationFinish"},_renderOpened:function(){this.cancelAnimation();this.playAnimation("entry")},_renderClosed:function(){this.cancelAnimation();this.playAnimation("exit")},_onNeonAnimationFinish:function(){if(this.opened)this._finishRenderOpened();else this._finishRenderClosed()}})})();</script><script>(function(){var NUMBER_INPUT_TYPES=["number","integer","float"];var GLOBAL_URI_PARAMS=[];var GLOBAL_QUERY_PARAMS=[];function getGlobalParam(key,type){var model=type==="uri"?GLOBAL_URI_PARAMS:GLOBAL_QUERY_PARAMS;if(!model.length)return;for(var i=0,len=model.length;i<len;i++)if(model[i].key===key)return model[i]}function appendGlobalParam(param,type){var item=getGlobalParam(param.key,type);if(!item)if(type==="uri")GLOBAL_URI_PARAMS.push(param);else GLOBAL_QUERY_PARAMS.push(param)}Polymer({is:"raml-request-parameters-model",
+behaviors:[ArcBehaviors.EventsTargetBehavior],properties:{queryParameters:{type:Array,observer:"_renotifyQuery"},uriParameters:{type:Array,observer:"_renotifyUri"},queryModel:{type:Array,notify:true,value:function(){return[]},computed:"_computeQueryModel(queryParameters)"},uriModel:{type:Array,notify:true,value:function(){return[]},computed:"_computeUriModel(uriParameters)"},hasQueryParameters:{type:Boolean,notify:true,computed:"_computeHasParameters(queryModel)"},hasUriParameters:{type:Boolean,notify:true,
+computed:"_computeHasParameters(uriModel)"},hasParameters:{type:Boolean,notify:true,computed:"_computeParametersSet(hasUriParameters, hasQueryParameters)"}},_attachListeners:function(node){this.listen(node,"uri-parameter-changed","_modelParamChanged");this.listen(node,"query-parameter-changed","_modelParamChanged");this.listen(node,"raml-selected-object-changed","_ramlObjectChanged")},_detachListeners:function(node){this.unlisten(node,"uri-parameter-changed","_modelParamChanged");this.unlisten(node,
+"query-parameter-changed","_modelParamChanged");this.unlisten(node,"raml-selected-object-changed","_ramlObjectChanged")},_computeUriModel:function(uriParameters){if(!uriParameters)return[];return this._transformModelParameters(uriParameters,"uri")},_computeQueryModel:function(queryParameters){if(!queryParameters)return[];return this._transformModelParameters(queryParameters,"query")},_transformModelParameters:function(array,type){var items=[];for(var i=0,len=array.length;i<len;i++){var item=getGlobalParam(array[i].key,
+type);if(!item){item=this.computeModelItem(array[i]);appendGlobalParam(item,type)}items.push(item)}return items},computeModelItem:function(param){var item=Object.assign({},param);if(item.type==="array"&&item.required){var example=null;if(item.examples)example=item.examples[0];else if(item.example)example=item.example;if(example){example=this.__parseArrayExample(example);item.examples=undefined;item.example=example}}return this._createModelItem(item)},_createModelItem:function(item){item.isEnum=!!(item.enum&&
+item.enum.length);item.isArray=item.type==="array";item.hasDescription=!!item.description;item.inputLabel=item.displayName||item.name||"Value";if(item.required)item.inputLabel+="*";item.inputType=this._computeItemInputType(item);item.isBoolean=item.inputType==="boolean";if(!item.pattent)if(item.inputType==="date")item.pattern="[0-9]{4}-[0-9]{2}-[0-9]{2}";if(item.examples&&item.examples.length&&item.examples[0])item.inputPlaceholder="Example: "+item.examples[0];else if(item.example&&typeof item.example===
+"string")item.inputPlaceholder="Example: "+item.example;if(item.inputPlaceholder)item.inputFloatLabel=true;else item.inputFloatLabel=false;if(item.required&&typeof item.default!=="undefined"&&!item.value)item.value=item.isArray?this.__parseArrayExample(item.default):item.default;if(typeof item.value==="undefined"&&item.required){if(item.examples)item.value=item.examples[0];else if(item.example)item.value=item.example;if(item.value&&item.value.indexOf&&item.value.indexOf(item.name+"\x3d")===0)item.value=
+item.value.substr(item.name.length+1);if(typeof item.value==="undefined"&&item.isEnum)item.value=item.enum[0]}if(item.value&&typeof item.value==="string")item.value=decodeURIComponent(item.value.replace(/\+/g," "));if(item.value&&item.isArray&&typeof item.value==="string")item.value=[item.value];if(item.isArray&&!item.value)item.value=[""];if(item.isBoolean&&typeof item.value==="boolean")item.value=String(item.value);return item},__parseArrayExample:function(example){try{var arr=JSON.parse(example);
+if(arr instanceof Array)return arr}catch(e){}return example},_computeItemInputType:function(item){if(item.type==="array"){if(typeof item.items==="string")return this.__computeInputType(item.items);return this.__computeInputType(item.items.type)}return this.__computeInputType(item.type)},__computeInputType:function(type){if(type&&NUMBER_INPUT_TYPES.indexOf(type)!==-1)return"number";else if(type==="boolean")return"boolean";else if(type==="date-only")return"date";return"text"},_computeHasParameters:function(params){return!!(params&&
+params instanceof Array&&params.length)},_computeParametersSet:function(hasUriParameters,hasQueryParameters){return hasUriParameters||hasQueryParameters},_modelParamChanged:function(e){if(e.target===this)return;if(e.type==="query-parameter-changed")this._updateModelItem("query",e.detail);else this._updateModelItem("uri",e.detail)},_updateModelItem:function(type,detail){var name=detail.name;if(!name)return;var modelPath=type+"Model";var model=this.get(modelPath);if(!model||!model.length)return;for(var i=
+0,len=model.length;i<len;i++)if(model[i].name===name){this.set([modelPath,i,"value"],detail.value);break}},_ramlObjectChanged:function(e){if(!e.detail.selectedObject||!e.detail.selectedObject.method)return;this.async(function(){this._renotify()},2)},_renotify:function(){this._renotifyModel(this.uriModel,"uri");this._renotifyModel(this.queryModel,"query")},_renotifyUri:function(newValue,oldValue){if(!(oldValue===undefined||oldValue.length===0))return;this._renotifyModel(newValue,"uri")},_renotifyQuery:function(newValue,
+oldValue){if(!(oldValue===undefined||oldValue.length===0))return;this._renotifyModel(newValue,"query")},_renotifyModel:function(model,type){if(!model)return;this.debounce("renotify-model-"+type,function(){model.forEach(function(item){Polymer.RenderStatus.afterNextRender(this,function(){this._notifyInitialValueChange(item,type)})},this)},20)},_notifyInitialValueChange:function(item,type){var name=item.key;var value=item.value;this.fire(type+"-parameter-changed",{name:name,value:value})}})})();</script><script>Polymer({is:"raml-request-panel-simple-xhr",properties:{loading:{type:Boolean,notify:true,readOnly:true,value:false},request:Object,response:Object,error:Object,loadingTime:Number},execute:function(data){this._setLoading(true);this.error=undefined;this.response=undefined;this.request=this._createRequest(data);var requestStart=performance.now();fetch(this.request).then(function(response){this.loadingTime=performance.now()-requestStart;this.response=response;if(!response.ok)this.error=new Error("Resource is unavailable");
 this._finishRequest()}.bind(this)).catch(function(e){this.loadingTime=performance.now()-requestStart;this.response=Response.error();this.error=e;this._finishRequest()}.bind(this))},_finishRequest:function(){var detail={request:this.request,response:this.response,loadingTime:this.loadingTime,isXhr:true};if(this.error)detail.error=this.error;var event=new CustomEvent("api-console-response",{cancelable:false,bubbles:true,composed:true,detail:detail});this.dispatchEvent(event)},_createRequest:function(data){var init=
 {method:data.method,mode:"cors"};if(data.headers){var headers=new Headers;var list=data.headers.split("\n").map(function(line){var _parts=line.split(":");var _name=_parts[0];var _value=_parts[1];_name=_name?_name.trim():null;_value=_value?_value.trim():null;if(!_name||!_value)return null;return{name:_name,value:_value}}).filter(function(item){return!!item});list.forEach(function(item){headers.append(item.name,item.value)});init.headers=headers}if(["GET","HEAD"].indexOf(data.method)!==-1)data.payload=
-undefined;else if(data.payload)init.body=data.payload;return new Request(data.url,init)}});</script><dom-module id="raml-request-panel" assetpath="bower_components/raml-request-panel/"><template><style>:host{display:block;@apply (--raml-request-panel);}*[hidden]{display:none !important;}.content{height:100%;@apply (--layout-vertical);@apply (--raml-request-panel-container);}h2{@apply (--paper-font-subhead);margin:8px 12px;font-weight:var(--raml-request-panel-navigation-title-font-weight, 500);}*[hidden]{display:none !important;}iron-pages>*{border:1px var(--raml-request-panel-panel-border-color, transparent) solid;min-height:120px;}.action-bar{@apply (--layout-horizontal);@apply (--layout-end-justified);@apply (--layout-center);margin-top:8px;}.action-button{background-color:var(--primary-button-background-color, --accent-color);color:var(--primary-button-color, #fff);@apply (--action-button);}.action-button:hover{background-color:var(--primary-button-hover-background-color, --accent-color);color:var(--primary-button-hover-color, #fff);@apply (--action-button-hover);}.action-button[disabled]{background-color:var(--action-accent-button-disabled-color);color:#fff;@apply (--action-button-disabled);}.url-editor{@apply (--layout-horizontal);@apply (--layout-center);}raml-request-url-editor{@apply (--layout-flex);}:host([narrow]) .content{@apply (--layout-vertical);@apply (--raml-request-panel-container-narrow);}:host([narrow]) raml-request-url-editor{width:auto;}paper-spinner{margin-right:8px;}.panel-warning{width:16px;height:16px;margin-left:4px;color:#FF5722;}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><div class="content"><div class="url-editor" hidden$="[[noUrlEditor]]"><raml-request-url-editor auto-validate="" required="" uri-parameters="[[method.allUriParameters]]" url="[[method.absoluteUri]]" value="{{url}}" invalid="{{urlInvalid}}"></raml-request-url-editor></div><paper-tabs selected="{{selectedTab}}"><paper-tab hidden$="[[!authRequired]]">Authorization<iron-icon icon="arc:warning" class="panel-warning" hidden$="[[authValid]]" title="Fill up missing auth data"></iron-icon></paper-tab><paper-tab>Parameters</paper-tab><paper-tab>Headers</paper-tab><paper-tab hidden$="[[!isPayloadRequest]]">Body</paper-tab></paper-tabs><iron-pages selected="{{selectedTab}}"><authorization-panel hidden$="[[!authRequired]]" secured-by="[[method.securedBy]]" narrow="[[narrow]]" request-url="[[url]]" request-method="[[method.method]]" redirect-url="[[redirectUrl]]" is-required="{{authRequired}}"></authorization-panel><raml-request-parameters-editor narrow="[[narrow]]" query-parameters="[[method.queryParameters]]" uri-parameters="[[method.allUriParameters]]" url="[[method.absoluteUri]]" value="{{url}}"></raml-request-parameters-editor><raml-request-headers-editor narrow="[[narrow]]" raml-headers="[[method.headers]]" content-type="{{contentType}}" is-payload="[[isPayloadRequest]]" value="{{headers}}"></raml-request-headers-editor><raml-body-editor-panel narrow="[[narrow]]" body="[[method.body]]" hidden$="[[!isPayloadRequest]]" content-type="{{contentType}}" value="{{payload}}"></raml-body-editor-panel></iron-pages><div class="action-bar"><paper-spinner alt="Loading contacts list" active="[[loadingRequest]]"></paper-spinner><span class="url-invalid-info" hidden$="[[!urlInvalid]]">Request URL is invalid.</span><paper-button class="action-button" on-tap="execute" hidden$="[[authNeeded]]" disabled="[[urlInvalid]]">Send</paper-button><div hidden$="[[!authNeeded]]"><paper-button class="action-button" on-tap="authAndExecute" disabled="[[urlInvalid]]">Authorize and send</paper-button></div></div></div><paper-dialog opened="[[authDialogOpened]]"><h2>Authorization</h2><paper-dialog-scrollable><template is="dom-if" if="[[authDialogOpened]]" restamp=""><authorization-panel secured-by="[[method.securedBy]]" narrow="[[narrow]]" request-url="[[url]]" request-method="[[method.method]]" redirect-url="[[redirectUrl]]"></authorization-panel></template></paper-dialog-scrollable><div class="buttons"><paper-button dialog-dismiss="" autofocus="">Cancel</paper-button><paper-button dialog-confirm="" on-tap="_onAuthAndSend">Authorize</paper-button></div></paper-dialog><oauth2-authorization></oauth2-authorization><raml-request-panel-simple-xhr id="xhr"></raml-request-panel-simple-xhr><paper-toast text="Authorization is required for this endpoint" id="authRequired" horizontal-align="right" horizontal-offset="12"></paper-toast><paper-toast text="Fill in the authorization form first" id="authFormError" horizontal-align="right" horizontal-offset="12"></paper-toast></template><script>Polymer({is:"raml-request-panel",properties:{method:Object,selectedTab:{type:Number,value:0,notify:true},contentType:{type:String,notify:true},isPayloadRequest:{type:Boolean,value:false,computed:"_computeIsPayloadRequest(method.*)"},headers:String,payload:String,url:{type:String,notify:true},narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},loadingRequest:{type:Boolean,notify:true,readOnly:true,value:false},responseIsXhr:{type:Boolean,notify:true,readOnly:true},
-request:{type:Request,notify:true,readOnly:true},response:{type:Response,notify:true,readOnly:true},responseError:{type:Object,notify:true,readOnly:true},loadingTime:{type:Number,notify:true,readOnly:true},timings:{type:Object,notify:true,readOnly:true},redirectTimings:{type:Array,notify:true,readOnly:true},redirects:{type:Array,notify:true,readOnly:true},sourceMessage:{type:String,notify:true,readOnly:true},authRequired:Boolean,redirectUrl:String,authorizationMethod:String,authorizationSettings:Object,
-authValid:Boolean,authNeeded:{type:Boolean,value:false,computed:"_computeAuthNeeded(authValid,authorizationMethod,authorizationSettings)"},urlInvalid:{type:Boolean},noUrlEditor:Boolean,authDialogOpened:Boolean},observers:["_isPayloadRequestChanged(isPayloadRequest)","_authRequiredChanged(authRequired)","_selectedTabChanged(selectedTab)"],listeners:{"authorization-settings-changed":"_authSettingsChanged"},attached:function(){this.listen(window,"api-console-response","_responseHandler")},detached:function(){this.unlisten(window,
-"api-console-response","_responseHandler")},_computeIsPayloadRequest:function(record){var base=record.base;if(!base||!base.method)return false;return["get","head"].indexOf(base.method)===-1},_isPayloadRequestChanged:function(required){if(!required&&this.selectedTab===3)if(this.authRequired)this.selectedTab=0;else this.selectedTab=1;var tabs=this.$$("paper-tabs");if(!tabs)return;tabs.notifyResize()},_authRequiredChanged:function(required){if(required&&this.selectedTab===2)this.selectedTab=0;else if(!required&&
-this.selectedTab===0)this.selectedTab=1;var tabs=this.$$("paper-tabs");if(!tabs)return;tabs.notifyResize()},execute:function(){this._clearRequestData();this._setLoadingRequest(true);var event=new CustomEvent("api-console-request",{cancelable:true,bubbles:true,composed:true,detail:this.serializeRequest()});this.dispatchEvent(event);if(!event.defaultPrevented)this._executeRequest(event.detail)},authAndExecute:function(){if(this.selectedTab===0){this.$.authFormError.opened=true;return}this.authDialogOpened=
-true},_onAuthAndSend:function(){if(!this.authValid){this.$.authRequired.opened=true;return}var callSend=false;switch(this.authorizationMethod){case "oauth2":if(!this.authorizationSettings||!this.authorizationSettings.tokenValue)this.fire("oauth2-token-requested",this.authorizationSettings);else callSend=true;break;case "basic":if(!this.authorizationSettings||!this.authorizationSettings.hash){this.$.authRequired.opened=true;return}else callSend=true;break}if(callSend)this.execute();else this.__pendingRequest=
-true},serializeRequest:function(){var result={method:this.method.method.toUpperCase(),url:this.url,headers:this.headers,payload:this.payload};return result},_executeRequest:function(data){this.$.xhr.execute(data)},_responseHandler:function(e){this._setResponseIsXhr(e.detail.isXhr||true);this._setResponse(e.detail.response);this._setResponseError(e.detail.error);this._setRequest(e.detail.request);this._setLoadingTime(e.detail.loadingTime);this._setTimings(e.detail.timings);this._setRedirectTimings(e.detail.redirectTimings);
-this._setRedirects(e.detail.redirects);this._setSourceMessage(e.detail.sourceMessage);this.fire("api-console-response-ready",{isXhr:e.detail.isXhr,response:e.detail.response,responseError:e.detail.error,request:e.detail.request,loadingTime:e.detail.loadingTime,timings:e.detail.timings,redirectTimings:e.detail.redirectTimings,redirects:e.detail.redirects,sourceMessage:e.detail.sourceMessage});this._setLoadingRequest(false)},_clearRequestData:function(){this._setResponseIsXhr(false);this._setResponse(undefined);
-this._setResponseError(undefined);this._setRequest(undefined);this._setLoadingTime(undefined);this._setTimings(undefined);this._setRedirectTimings(undefined);this._setRedirects(undefined)},_authSettingsChanged:function(e){this.authorizationMethod=e.detail.type;this.authorizationSettings=e.detail.settings;this.set("authValid",e.detail.valid);if(this.__pendingRequest){this.__pendingRequest=false;this.execute()}},_computeAuthNeeded:function(authValid,authorizationMethod,authorizationSettings){if(!authValid)return true;
-if(authorizationMethod==="oauth2")if(!authorizationSettings.tokenValue)return true;return false},_selectedTabChanged:function(selectedTab){if(selectedTab===3)this.$$("raml-body-editor-panel").notifyResize()}});</script></dom-module><dom-module id="date-time" assetpath="bower_components/date-time/"><template><style>:host{display:inline;@apply (--date-time);}</style><time datetime$="[[iso]]">[[display]]</time></template><script>Number.isInteger=Number.isInteger||function(value){return typeof value==="number"&&isFinite(value)&&Math.floor(value)===value};
+undefined;else if(data.payload)init.body=data.payload;return new Request(data.url,init)}});</script><dom-module id="raml-request-panel" assetpath="bower_components/raml-request-panel/"><template><style>:host{display:block;@apply (--raml-request-panel);}*[hidden]{display:none !important;}.content{height:100%;@apply (--layout-vertical);@apply (--raml-request-panel-container);}h2{@apply (--paper-font-subhead);margin:8px 12px;font-weight:var(--raml-request-panel-navigation-title-font-weight, 500);@apply --raml-request-panel-popup-header;}.buttons{@apply --raml-request-panel-popup-btn-container;}[dialog-confirm]{@apply --raml-request-panel-popup-btn-confirm;}[dialog-confirm]:hover{@apply --raml-request-panel-popup-btn-confirm-hover;}[dialog-dismiss]{@apply --raml-request-panel-popup-btn-dismiss;}[dialog-dismiss]:hover{@apply --raml-request-panel-popup-btn-dismiss-hover;}*[hidden]{display:none !important;}iron-pages>*{border:1px var(--raml-request-panel-panel-border-color, transparent) solid;min-height:120px;}.action-bar{@apply (--layout-horizontal);@apply (--layout-end-justified);@apply (--layout-center);margin-top:8px;}.action-button{background-color:var(--primary-button-background-color, --accent-color);color:var(--primary-button-color, #fff);@apply (--action-button);}.action-button:hover{background-color:var(--primary-button-hover-background-color, --accent-color);color:var(--primary-button-hover-color, #fff);@apply (--action-button-hover);}.action-button[disabled]{background-color:var(--action-accent-button-disabled-color);color:#fff;@apply (--action-button-disabled);}.url-editor{@apply (--layout-horizontal);@apply (--layout-center);}raml-request-url-editor{@apply (--layout-flex);}:host([narrow]) .content{@apply (--layout-vertical);@apply (--raml-request-panel-container-narrow);}:host([narrow]) raml-request-url-editor{width:auto;}paper-spinner{margin-right:8px;}paper-dialog{@apply (--raml-request-panel-popup);}.panel-warning{width:16px;height:16px;margin-left:4px;color:#FF5722;}.url-invalid-info{@apply --arc-font-body1;}</style><iron-media-query query="(max-width: [[narrowWidth]])" query-matches="{{narrow}}"></iron-media-query><raml-request-parameters-model query-parameters="[[method.queryParameters]]" uri-parameters="[[method.allUriParameters]]" query-model="{{queryModel}}" uri-model="{{uriModel}}" has-query-parameters="{{hasQueryParameters}}" has-uri-parameters="{{hasUriParameters}}" has-parameters="{{hasParameters}}"></raml-request-parameters-model><div class="content"><div class="url-editor" hidden$="[[noUrlEditor]]"><raml-request-url-editor auto-validate="" required="" value="{{url}}" invalid="{{urlInvalid}}" base-uri="[[_baseUri]]" endpoint-uri="[[method.relativeUri]]" query-model="[[queryModel]]" uri-model="[[uriModel]]"></raml-request-url-editor></div><paper-tabs selected="{{selectedTab}}"><paper-tab hidden$="[[!authRequired]]">Authorization<iron-icon icon="arc:warning" class="panel-warning" hidden$="[[authValid]]" title="Fill up missing auth data"></iron-icon></paper-tab><paper-tab>Parameters</paper-tab><paper-tab>Headers</paper-tab><paper-tab hidden$="[[!isPayloadRequest]]">Body</paper-tab></paper-tabs><iron-pages selected="{{selectedTab}}"><authorization-panel hidden$="[[!authRequired]]" secured-by="[[method.securedBy]]" redirect-url="[[redirectUrl]]" is-required="{{authRequired}}"></authorization-panel><raml-request-parameters-editor query-model="[[queryModel]]" uri-model="[[uriModel]]" has-query-parameters="[[hasQueryParameters]]" has-uri-parameters="[[hasUriParameters]]" has-parameters="[[hasParameters]]"></raml-request-parameters-editor><raml-request-headers-editor narrow="[[narrow]]" raml-headers="[[method.headers]]" content-type="{{contentType}}" is-payload="[[isPayloadRequest]]" value="{{headers}}"></raml-request-headers-editor><raml-body-editor-panel narrow="[[narrow]]" body="[[method.body]]" hidden$="[[!isPayloadRequest]]" content-type="{{contentType}}" value="{{payload}}"></raml-body-editor-panel></iron-pages><div class="action-bar"><paper-spinner alt="Loading contacts list" active="[[loadingRequest]]"></paper-spinner><span class="url-invalid-info" hidden$="[[!urlInvalid]]">Request URL is invalid.</span><paper-button class="action-button" on-tap="execute" hidden$="[[authNeeded]]" disabled="[[urlInvalid]]">Send</paper-button><div hidden$="[[!authNeeded]]"><paper-button class="action-button" on-tap="authAndExecute" disabled="[[urlInvalid]]">Authorize and send</paper-button></div></div></div><paper-dialog opened="[[authDialogOpened]]"><h2>Authorization</h2><paper-dialog-scrollable><template is="dom-if" if="[[authDialogOpened]]" restamp=""><authorization-panel secured-by="[[method.securedBy]]" redirect-url="[[redirectUrl]]"></authorization-panel></template></paper-dialog-scrollable><div class="buttons"><paper-button dialog-dismiss="" autofocus="">Cancel</paper-button><paper-button dialog-confirm="" on-tap="_onAuthAndSend">Authorize</paper-button></div></paper-dialog><oauth2-authorization></oauth2-authorization><raml-request-panel-simple-xhr id="xhr"></raml-request-panel-simple-xhr><paper-toast text="Authorization is required for this endpoint" id="authRequired" horizontal-align="right" horizontal-offset="12"></paper-toast><paper-toast text="Fill in the authorization form first" id="authFormError" horizontal-align="right" horizontal-offset="12"></paper-toast></template><script>Polymer({is:"raml-request-panel",properties:{method:Object,selectedTab:{type:Number,value:0,notify:true},contentType:{type:String,notify:true},isPayloadRequest:{type:Boolean,value:false,computed:"_computeIsPayloadRequest(method.*)"},headers:String,payload:String,url:{type:String,notify:true},narrow:{type:Boolean,notify:true,reflectToAttribute:true},narrowWidth:{type:String,value:"768px"},loadingRequest:{type:Boolean,notify:true,readOnly:true,value:false},responseIsXhr:{type:Boolean,notify:true,readOnly:true},
+request:{type:Request,notify:true,readOnly:true},response:{type:Response,notify:true,readOnly:true},responseError:{type:Object,notify:true,readOnly:true},loadingTime:{type:Number,notify:true,readOnly:true},timings:{type:Object,notify:true,readOnly:true},redirectTimings:{type:Array,notify:true,readOnly:true},redirects:{type:Array,notify:true,readOnly:true},sourceMessage:{type:String,notify:true,readOnly:true},authRequired:Boolean,redirectUrl:String,authMethod:String,authSettings:Object,authValid:Boolean,
+authNeeded:{type:Boolean,value:false,computed:"_computeAuthNeeded(authRequired,authValid,authMethod,authSettings)"},urlInvalid:{type:Boolean},noUrlEditor:Boolean,authDialogOpened:Boolean,baseUri:{type:String,observer:"_baseUriChanged"},_baseUri:String,queryModel:Object,uriModel:Object,hasUriParameters:Boolean,hasQueryParameters:Boolean,hasParameters:Boolean},observers:["_isPayloadRequestChanged(isPayloadRequest)","_authRequiredChanged(authRequired)","_selectedTabChanged(selectedTab)","_methodBaseUriChanged(method.baseUri)"],
+listeners:{"authorization-settings-changed":"_authSettingsChanged"},attached:function(){this.listen(window,"api-console-response","_responseHandler")},detached:function(){this.unlisten(window,"api-console-response","_responseHandler")},_computeIsPayloadRequest:function(record){var base=record.base;if(!base||!base.method)return false;return["get","head"].indexOf(base.method)===-1},_isPayloadRequestChanged:function(required){if(!required&&this.selectedTab===3)if(this.authRequired)this.selectedTab=0;
+else this.selectedTab=1;var tabs=this.$$("paper-tabs");if(!tabs)return;tabs.notifyResize()},_authRequiredChanged:function(required){if(required&&this.selectedTab===2)this.selectedTab=0;else if(!required&&this.selectedTab===0)this.selectedTab=1;var tabs=this.$$("paper-tabs");if(!tabs)return;tabs.notifyResize()},execute:function(){this._clearRequestData();this._setLoadingRequest(true);var event=new CustomEvent("api-console-request",{cancelable:true,bubbles:true,composed:true,detail:this.serializeRequest()});
+this.dispatchEvent(event);if(!event.defaultPrevented)this._executeRequest(event.detail)},authAndExecute:function(){if(this.selectedTab===0){this.$.authFormError.opened=true;return}this.authDialogOpened=true},_onAuthAndSend:function(){if(!this.authValid){this.$.authRequired.opened=true;return}var callSend=false;switch(this.authMethod){case "oauth2":if(!this.authSettings||!this.authSettings.tokenValue)this.fire("oauth2-token-requested",this.authSettings);else callSend=true;break;case "basic":if(!this.authSettings||
+!this.authSettings.hash){this.$.authRequired.opened=true;return}else callSend=true;break}if(callSend)this.execute();else this.__pendingRequest=true},serializeRequest:function(){var result={method:this.method.method.toUpperCase(),url:this.url,headers:this.headers,payload:this.payload};return result},_executeRequest:function(data){this.$.xhr.execute(data)},_responseHandler:function(e){this._setResponseIsXhr(e.detail.isXhr||true);this._setResponse(e.detail.response);this._setResponseError(e.detail.error);
+this._setRequest(e.detail.request);this._setLoadingTime(e.detail.loadingTime);this._setTimings(e.detail.timings);this._setRedirectTimings(e.detail.redirectTimings);this._setRedirects(e.detail.redirects);this._setSourceMessage(e.detail.sourceMessage);this.fire("api-console-response-ready",{isXhr:e.detail.isXhr,response:e.detail.response,responseError:e.detail.error,request:e.detail.request,loadingTime:e.detail.loadingTime,timings:e.detail.timings,redirectTimings:e.detail.redirectTimings,redirects:e.detail.redirects,
+sourceMessage:e.detail.sourceMessage});this._setLoadingRequest(false)},_clearRequestData:function(){this._setResponseIsXhr(false);this._setResponse(undefined);this._setResponseError(undefined);this._setRequest(undefined);this._setLoadingTime(undefined);this._setTimings(undefined);this._setRedirectTimings(undefined);this._setRedirects(undefined)},_authSettingsChanged:function(e){this.authMethod=e.detail.type;this.authSettings=e.detail.settings;this.set("authValid",e.detail.valid);if(this.__pendingRequest){this.__pendingRequest=
+false;this.execute()}},_computeAuthNeeded:function(required,authValid,authMethod,settings){if(!required)return false;if(!authValid)return true;if(authMethod==="oauth2")if(!settings.tokenValue)return true;return false},_selectedTabChanged:function(selectedTab){if(selectedTab===3)this.$$("raml-body-editor-panel").notifyResize()},_methodBaseUriChanged:function(methodBaseUri){if(this.baseUri)return;this._baseUri=methodBaseUri},_baseUriChanged:function(value){if(!value){if(this.method)this._baseUri=this.method.baseUri}else this._baseUri=
+value}});</script></dom-module><dom-module id="date-time" assetpath="bower_components/date-time/"><template><style>:host{display:inline;@apply (--date-time);}</style><time datetime$="[[iso]]">[[display]]</time></template><script>Number.isInteger=Number.isInteger||function(value){return typeof value==="number"&&isFinite(value)&&Math.floor(value)===value};
 Polymer({is:"date-time",properties:{locales:{type:String,observer:"_update"},date:{type:Date,observer:"_update"},display:String,year:{type:String,observer:"_update"},month:{type:String,observer:"_update"},day:{type:String,observer:"_update"},hour:{type:String,observer:"_update"},minute:{type:String,observer:"_update"},second:{type:String,observer:"_update"},weekday:{type:String,observer:"_update"},timeZoneName:{type:String,observer:"_update"},era:{type:String,observer:"_update"},timeZone:{type:String,
 observer:"_update"},hour12:{type:Boolean,observer:"_update"},iso:{type:String,readOnly:true},isReady:Boolean},ready:function(){this.isReady=true;this._update()},_update:function(){if(!this.isReady)return;var date=this.date;if(!date)date=new Date;else if(typeof date==="string")try{date=new Date(date);var _test=date.getDate();if(_test!==_test)date=new Date}catch(e){date=new Date}else if(Number.isInteger(date))date=new Date(date);else if(!(date instanceof Date))date=new Date;var options={year:this.year?
 this.year:undefined,month:this.month?this.month:undefined,day:this.day?this.day:undefined,hour:this.hour?this.hour:undefined,minute:this.minute?this.minute:undefined,second:this.second?this.second:undefined,weekday:this.weekday?this.weekday:undefined,era:this.era?this.era:undefined,timeZoneName:this.timeZoneName?this.timeZoneName:undefined,timeZone:this.timeZone?this.timeZone:undefined};if(this.hour12!==undefined)options.hour12=this.hour12;var locales;if(this.locales)locales=this.locales;var value=
@@ -2109,16 +2190,18 @@ if(typeof num==="string")return!!num;return num>0}});</script></dom-module><dom-
     .timings-row{@apply (--layout-horizontal);@apply (--layout-center);min-height:56px;}.status-row{@apply (--layout-horizontal);@apply (--layout-end-justified);}.sub-title{@apply (--arc-font-subhead);}.status-label{width:60px;font-size:var(--request-timings-panel-timing-total-size, 16px);font-weight:var(--request-timings-panel-timing-total-weigth, 400);@apply (--arc-font-subhead);}.text{-webkit-user-select:text;cursor:text;}.redirect-value{margin-top:12px;@apply (--layout-flex);}</style><template is="dom-if" if="[[hasRedirects]]" restamp=""><h3 class="sub-title">Redirects</h3><template is="dom-repeat" items="[[redirects]]"><div class="timings-row"><div class="status-label text">#<span>{{_computeIndexName(index)}}</span></div><div class="redirect-value"><request-timings timings="[[item]]"></request-timings></div></div></template><template is="dom-if" if="[[hasTimings]]"><h3 class="sub-title">Final request</h3><div class="timings-row"><div class="redirect-value"><request-timings timings="[[timings]]"></request-timings></div></div></template><div class="status-row"><div class="flex"></div><span class="timing-value total text">[[requestTotalTime]] ms</span></div></template><template is="dom-if" if="[[!hasRedirects]]" restamp=""><request-timings timings="[[timings]]"></request-timings></template></template><script>Polymer({is:"request-timings-panel",properties:{hasRedirects:{type:Boolean,value:false,readOnly:true},hasTimings:{type:Boolean,value:false,readOnly:true},redirects:{type:Array,value:function(){return[]}},timings:{type:Object,value:function(){return{}}},requestTotalTime:{type:Number,value:0,readOnly:true}},observers:["_redirectsChanged(redirects.*)","_timingsChanged(timings.*)","_computeRequestTime(redirects.*)","_computeRequestTime(timings.*)"],_redirectsChanged:function(){var rt=this.redirects;if(!rt||
 !rt.length)this._setHasRedirects(false);else this._setHasRedirects(true)},_timingsChanged:function(){var rt=this.timings;if(!rt)this._setHasTimings(false);else this._setHasTimings(true)},_computeIndexName:function(index){return index+1},_computeRequestTime:function(){var rt=this.redirects;var timings=this.timings;var time=0;if(!!rt&&rt.length)rt.forEach(function(timing){time+=this._computeHarTime(timing)},this);var add=this._computeHarTime(timings);if(add)time+=add;time=Math.round(time*1E4)/1E4;this._setRequestTotalTime(time)},
 _computeHarTime:function(har){var fullTime=0;if(!har)return fullTime;var connect=Number(har.connect);var receive=Number(har.receive);var send=Number(har.send);var wait=Number(har.wait);var blocked=Number(har.blocked);var dns=Number(har.dns);var ssl=Number(har.ssl);if(connect!==connect||connect<0)connect=0;if(receive!==receive||receive<0)receive=0;if(send!==send||send<0)send=0;if(wait!==wait||wait<0)wait=0;if(dns!==dns||dns<0)dns=-1;if(blocked!==blocked||blocked<0)blocked=-1;if(ssl!==ssl||ssl<0)ssl=
--1;fullTime+=connect+receive+send+wait;if(dns>0)fullTime+=dns;if(blocked>0)fullTime+=blocked;if(ssl>0)fullTime+=ssl;return fullTime}});</script></dom-module><dom-module id="headers-list-item-value" assetpath="bower_components/headers-list-view/"><template><style>:host{display:inline;font-family:inherit;font-size:inherit;@apply (--headers-list-item-value);}.auto-link{@apply (--arc-link);}</style><span id="display"></span></template></dom-module><script>Polymer({is:"headers-list-item-value",properties:{value:{type:String,observer:"_valueChanged"}},_valueChanged:function(){var value=this.value;if(!value){this.$.display.innerHTML="";return}this.$.display.innerHTML=this._autoLink(this._encodeHtml(value))},_encodeHtml:function(input){if(typeof input!=="string")return input;return input.replace(/</g,"\x26lt;").replace(/>/g,"\x26gt;")},_autoLink:function(input){var r=new RegExp('(https?:\\/\\/([^" \x3e]*))',"gim");return input.replace(r,'\x3ca target\x3d"_blank" class\x3d"auto-link" href\x3d"$1"\x3e$1\x3c/a\x3e')}});</script><dom-module id="headers-list-item" assetpath="bower_components/headers-list-view/"><template><style include="paper-item-shared-styles">:host{min-height:var(--headers-list-item-min-height, 20px);-webkit-user-select:text;word-break:break-word;@apply (--arc-font-code1);@apply (--layout-horizontal);@apply (--headers-list-item);}headers-list-item-value{margin-left:8px;}</style><span class="header-name">[[name]]:</span><headers-list-item-value class="header-value" value="[[value]]"></headers-list-item-value></template></dom-module><script>Polymer({is:"headers-list-item",properties:{name:String,value:String},behaviors:[Polymer.PaperItemBehavior]});</script><dom-module id="headers-list-view" assetpath="bower_components/headers-list-view/"><template><style>:host{display:block;@apply (--headers-list-view);}.dialog-header-example{@apply (--arc-font-body1);margin-top:16px;}.dialog-header-desc{@apply (--arc-font-body2);}</style><template is="dom-repeat" items="[[_headers]]"><headers-list-item on-dblclick="_displayHeaderInfo" name="[[item.name]]" value="[[item.value]]"></headers-list-item></template><paper-dialog id="headerInfo"><h2>[[_hdTitle]]</h2><paper-dialog-scrollable><section class="dialog-header-desc">[[_hdBody]]</section><section class="dialog-header-example"><span>Example:</span> <span>[[_hdExample]]</span></section></paper-dialog-scrollable><div class="buttons"><paper-button dialog-confirm="" autofocus="">Close</paper-button></div></paper-dialog></template><script>Polymer({is:"headers-list-view",behaviors:[ArcBehaviors.HeadersParserBehavior],properties:{headers:String,_headers:Array,type:{type:String,value:"response"},_hdTitle:String,_hdBody:String,_hdExample:String},observers:["_headersChanged(headers)"],_headersChanged:function(headers){this._headers=this.headersToJSON(headers)},_displayHeaderInfo:function(e){var item=e.model.get("item");var header=item.name.toLowerCase();var event=this.fire("query-headers",{"type":this.type,"query":header});var headers=
+-1;fullTime+=connect+receive+send+wait;if(dns>0)fullTime+=dns;if(blocked>0)fullTime+=blocked;if(ssl>0)fullTime+=ssl;return fullTime}});</script></dom-module><dom-module id="headers-list-item-value" assetpath="bower_components/headers-list-view/"><template><style>:host{display:inline;font-family:inherit;font-size:inherit;@apply (--headers-list-item-value);}.auto-link{@apply (--arc-link);}</style><span id="display"></span></template></dom-module><script>Polymer({is:"headers-list-item-value",properties:{value:{type:String,observer:"_valueChanged"}},_valueChanged:function(){var value=this.value;if(!value){this.$.display.innerHTML="";return}this.$.display.innerHTML=this._autoLink(value)},_autoLink:function(input){if(typeof input!=="string")return input;var r=new RegExp('(https?:\\/\\/([^" \x3e]*))',"gim");var matches=input.match(r);input=input.replace(/</g,"\x26lt;").replace(/>/g,"\x26gt;");if(!matches)return input;var index=input.indexOf(matches[0]);
+var result=input.substr(0,index);result+='\x3ca target\x3d"_blank" class\x3d"auto-link" href\x3d"';result+=matches[0];result+='"\x3e';result+=matches[0];result+="\x3c/a\x3e";index+=matches[0].length;result+=input.substr(index);return result}});</script><dom-module id="headers-list-item" assetpath="bower_components/headers-list-view/"><template><style include="paper-item-shared-styles">:host{min-height:var(--headers-list-item-min-height, 20px);-webkit-user-select:text;word-break:break-word;@apply (--arc-font-code1);@apply (--layout-horizontal);@apply (--headers-list-item);}headers-list-item-value{margin-left:8px;}</style><span class="header-name">[[name]]:</span><headers-list-item-value class="header-value" value="[[value]]"></headers-list-item-value></template></dom-module><script>Polymer({is:"headers-list-item",properties:{name:String,value:String},behaviors:[Polymer.PaperItemBehavior]});</script><dom-module id="headers-list-view" assetpath="bower_components/headers-list-view/"><template><style>:host{display:block;@apply (--headers-list-view);}.dialog-header-example{@apply (--arc-font-body1);margin-top:16px;}.dialog-header-desc{@apply (--arc-font-body2);}</style><template is="dom-repeat" items="[[_headers]]"><headers-list-item on-dblclick="_displayHeaderInfo" name="[[item.name]]" value="[[item.value]]"></headers-list-item></template><paper-dialog id="headerInfo"><h2>[[_hdTitle]]</h2><paper-dialog-scrollable><section class="dialog-header-desc">[[_hdBody]]</section><section class="dialog-header-example"><span>Example:</span> <span>[[_hdExample]]</span></section></paper-dialog-scrollable><div class="buttons"><paper-button dialog-confirm="" autofocus="">Close</paper-button></div></paper-dialog></template><script>Polymer({is:"headers-list-view",behaviors:[ArcBehaviors.HeadersParserBehavior],properties:{headers:String,_headers:Array,type:{type:String,value:"response"},_hdTitle:String,_hdBody:String,_hdExample:String},observers:["_headersChanged(headers)"],_headersChanged:function(headers){this._headers=this.headersToJSON(headers)},_displayHeaderInfo:function(e){var item=e.model.get("item");var header=item.name.toLowerCase();var event=this.fire("query-headers",{"type":this.type,"query":header});var headers=
 event.detail.headers;if(headers&&headers.length){var result=headers[0];this._hdTitle=result.key;this._hdBody=result.desc;this._hdExample=result.example;this.$.headerInfo.open()}this.fire("send-analytics",{type:"event",category:"Headers list",action:"Display header info",label:header})}});</script></dom-module><dom-module id="http-source-message-view" assetpath="bower_components/response-status-view/"><template><style>:host{margin:16px 16px 0 16px;overflow:auto;display:block;@apply (--http-source-message-view);}pre{word-break:break-all;@apply (--arc-font-code1);-webkit-user-select:text;cursor:text;@apply (--http-source-message);margin-bottom:0;}h5{margin:0;display:inline-block;cursor:pointer;}</style><h5 on-tap="toggle">Source message<paper-icon-button icon="[[_computeIcon(opened)]]"></paper-icon-button></h5><iron-collapse id="collapse" opened="{{opened}}"><pre>[[message]]</pre></iron-collapse></template><script>Polymer({is:"http-source-message-view",properties:{message:String,opened:Boolean},toggle:function(){this.$.collapse.toggle()},_computeIcon:function(opened){return opened?"arc:expand-less":"arc:expand-more"}});</script></dom-module><script>Polymer({is:"status-message",properties:{code:{type:Number,observer:"setMessage"},message:{type:String,readOnly:true,notify:true}},setMessage:function(){var code=this.code;code=Number(code);var message;switch(code){case 0:message="Request error";break;case 100:message="Continue";break;case 101:message="Switching Protocols";break;case 200:message="OK";break;case 201:message="Created";break;case 202:message="Accepted";break;case 203:message="Non-Authoritative Information";break;case 204:message="No Content";
 break;case 205:message="Reset Content";break;case 206:message="Partial Content";break;case 300:message="Multiple Choices";break;case 301:message="Moved Permanently";break;case 302:message="Found";break;case 303:message="See Other";break;case 304:message="Not Modified";break;case 305:message="Use Proxy";break;case 306:message="(Unused)";break;case 307:message="Temporary Redirect";break;case 400:message="Bad Request";break;case 401:message="Unauthorized";break;case 402:message="Payment Required";break;
 case 403:message="Forbidden";break;case 404:message="Not Found";break;case 405:message="Method Not Allowed";break;case 406:message="Not Acceptable";break;case 407:message="Proxy Authentication Required";break;case 408:message="Request Timeout";break;case 409:message="Conflict";break;case 410:message="Gone";break;case 411:message="Length Required";break;case 412:message="Precondition Failed";break;case 413:message="Request Entity Too Large";break;case 414:message="Request-URI Too Long";break;case 415:message=
 "Unsupported Media Type";break;case 416:message="Requested Range Not Satisfiable";break;case 417:message="Expectation Failed";break;case 500:message="Internal Server Error";break;case 501:message="Not Implemented";break;case 502:message="Bad Gateway";break;case 503:message="Service Unavailable";break;case 504:message="Gateway Timeout";break;case 505:message="HTTP Version Not Supported";break}return this._setMessage(message)}});</script><dom-module id="response-status-view" assetpath="bower_components/response-status-view/"><template><style>:host{@apply (--layout-vertical);@apply (--response-status-view);}.status-row,
-    .timings-row{@apply (--layout-horizontal);@apply (--arc-font-subhead);@apply (--layout-center);min-height:56px;}.status-row{border-bottom:1px var(--response-status-view-status-info-border-color, #e5e5e5) solid;}.timings-row{padding-right:0;}.status-label{width:40px;@apply (--arc-font-subhead);}.status-value{@apply (--layout-flex);@apply (--layout-horizontal);@apply (--layout-center);@apply (--response-status-view-status-container);}.status-value > span{display:block;}.status-value.status{padding:0 16px;}.redirect-value{margin-top:12px;@apply (--layout-flex);}.no-redirects-container{@apply (--layout-vertical);@apply (--layout-center);}.no-redirects-info{@apply (--no-info-message);}headers-list-view{margin-top:12px;}.text{@apply (--select-text);}.badge{display:block;background-color:var(--response-status-view-badge-background, --accent-color);color:var(--response-status-view-badge-color, #fff);width:20px;height:20px;border-radius:50%;font-size:12px;margin-left:12px;@apply (--layout-horizontal);@apply (--layout-center-center);}.badge.empty{background-color:var(--response-status-view-empty-badge-background, #9e9e9e);color:var(--response-status-view-empty-badge-color, #fff);}.status-value.status.text > span:not(:first-child){margin-left:8px;}.status-code-value{padding:4px 8px;color:#fff;border-radius:2px;background-color:var(--arc-status-code-color-200, rgba(56, 142, 60, 1));}.info.status-code-value{background-color:var(--arc-status-code-color-300, rgba(48, 63, 159, 1));}.warning.status-code-value{background-color:var(--arc-status-code-color-400, rgba(245, 124, 0, 1));}.error.status-code-value{background-color:var(--arc-status-code-color-500, rgba(211, 47, 47, 1));}.response-time{color:var(--response-status-view-loading-time-color, rgba(0, 0, 0, 0.54));margin-left:8px;}.status-info{@apply (--layout-flex);}.toggle-button{color:var(--response-status-view-toggle-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;}.toggle-icon{transform:rotateZ(0deg);transition:transform 0.3s linear;}.toggle-icon.opened{transform:rotateZ(-180deg);}.toggle-button:hover{color:var(--response-status-view-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));}.xhr-title{@apply (--layout-horizontal);@apply (--layout-center);padding:0px 16px;@apply (--arc-font-subhead);}.redirect-location{margin-left:8px;}.response-error-label{margin-left:12px;color:var(--arc-status-code-color-500, rgba(211, 47, 47, 1));}.status-url{@apply (--arc-font-body1);@apply (--layout-horizontal);@apply (--layout-center);padding-top:12px;padding-bottom:12px;font-size:120%;padding-left:16px;background:var(--response-status-view-request-url-background-color, #6B6C6D);color:var(--response-status-view-request-url-color, #fff);@apply (--arc-font-code);@apply (--response-status-view-request-url-info);}.http-method{margin-right:12px;}.request-url{word-break:break-all;}.no-info{padding-left:16px;@apply (--no-info-message);}</style><div class="status-row"><div class="status-value status"><template is="dom-if" if="[[!isError]]"><div class="status-info text"><span class$="[[_computeStatusClass(statusCode)]]">[[statusCode]] [[statusMessage]]</span> <span class="response-time" hidden$="[[!loadingTime]]">[[_roundTime(loadingTime)]] ms</span></div><div class="status-details"><paper-button on-tap="toggleCollapse" class="toggle-button" title="Toogle response headers">Details<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(opened)]]"></iron-icon></paper-button></div></template><template is="dom-if" if="[[isError]]"><span class="error status-code-value">0</span> <span class="response-time" hidden$="[[!loadingTime]]">[[_roundTime(loadingTime)]] ms</span><p class="response-error-label">Error in the response.</p></template></div></div><iron-collapse opened="[[opened]]"><template is="dom-if" if="[[requestUrl]]"><div class="status-url"><span class="http-method" hidden$="[[!requestMethod]]">[[requestMethod]]</span> <span class="request-url">[[requestUrl]]</span></div></template><paper-tabs selected="{{selectedTab}}"><paper-tab><span>Response headers</span> <span class$="[[_computeBageClass(responseHeaders)]]">[[_computeHeadersLength(responseHeaders)]]</span></paper-tab><paper-tab><span>Request headers</span> <span class$="[[_computeBageClass(requestHeaders)]]">[[_computeHeadersLength(requestHeaders)]]</span></paper-tab><template is="dom-if" if="[[!isXhr]]"><paper-tab><span>Redirects</span> <span class$="[[_computeBageClass(redirects.length)]]">[[redirects.length]]</span></paper-tab><paper-tab>Timings</paper-tab></template></paper-tabs><iron-pages selected="[[selectedTab]]"><headers-list-view on-tap="_handleLink" headers="[[responseHeaders]]"></headers-list-view><section class="request-header-panel"><template is="dom-if" if="[[hasRequestHeaders]]"><headers-list-view type="request" on-tap="_handleLink" headers="[[requestHeaders]]"></headers-list-view><http-source-message-view hidden$="[[!hasHttpMessage]]" message="[[httpMessage]]"></http-source-message-view></template><template is="dom-if" if="[[!hasRequestHeaders]]"><p class="no-info">Nothing to display here</p></template></section><section class="redirects-panel"><template is="dom-if" if="[[!redirects.length]]"><div class="no-redirects-container"><p class="no-redirects-info">There were no redirects during this request</p></div></template><template is="dom-repeat" items="[[redirects]]"><div class="status-row"><div class="status-label text">#<span>[[_computeIndexName(index)]]</span></div><div class="redirect-value" on-tap="_handleLink"><div class="status-value status text"><span class$="[[_computeStatusClass(item.status)]]">[[item.status]] [[item.statusText]]</span> <span class="redirect-location">to: <a href="[[_computeRedirectLocation(item.headers)]]" class="auto-link">[[_computeRedirectLocation(item.headers)]]</a></span></div><headers-list-view headers="[[item.headers]]"></headers-list-view></div></div></template></section><section class="timings-panel"><request-timings-panel redirects="[[redirectTimings]]" timings="[[timings]]"></request-timings-panel></section></iron-pages></iron-collapse></template><script>Polymer({is:"response-status-view",properties:{statusCode:{type:Number,observer:"_statusCodeChanged"},statusMessage:String,loadingTime:{type:Number,value:0},responseHeaders:{type:String},requestHeaders:String,hasRequestHeaders:{type:String,value:false,computed:"_computeHasRequestHeaders(requestHeaders)"},httpMessage:{type:String,observer:"_httpMessageChanged"},hasHttpMessage:{type:Boolean,value:false,readOnly:true},responseError:{type:Object,observer:"_computeError"},isError:{type:Boolean,value:false,
+    .timings-row{@apply (--layout-horizontal);@apply (--arc-font-subhead);@apply (--layout-center);min-height:56px;}.status-row{border-bottom:1px var(--response-status-view-status-info-border-color, #e5e5e5) solid;}.timings-row{padding-right:0;}.status-label{width:40px;@apply (--arc-font-subhead);}.status-value{@apply (--layout-flex);@apply (--layout-horizontal);@apply (--layout-center);@apply (--response-status-view-status-container);}.status-value > span{display:block;}.redirect-value{margin-top:12px;@apply (--layout-flex);}.no-redirects-container{@apply (--layout-vertical);@apply (--layout-center);}.no-redirects-info{@apply --no-info-message;}headers-list-view{margin-top:12px;}.text{@apply (--select-text);}.badge{display:block;background-color:var(--response-status-view-badge-background, --accent-color);color:var(--response-status-view-badge-color, #fff);width:20px;height:20px;border-radius:50%;font-size:12px;margin-left:12px;@apply (--layout-horizontal);@apply (--layout-center-center);}.badge.empty{background-color:var(--response-status-view-empty-badge-background, #9e9e9e);color:var(--response-status-view-empty-badge-color, #fff);}.status-value.status.text > span:not(:first-child){margin-left:8px;}.status-code-value{padding:4px 8px;color:#fff;border-radius:2px;display:block;background-color:var(--arc-status-code-color-200, rgba(56, 142, 60, 1));}.info.status-code-value{background-color:var(--arc-status-code-color-300, rgba(48, 63, 159, 1));}.warning.status-code-value{background-color:var(--arc-status-code-color-400, rgba(245, 124, 0, 1));}.error.status-code-value{background-color:var(--arc-status-code-color-500, rgba(211, 47, 47, 1));}.response-time{color:var(--response-status-view-loading-time-color, rgba(0, 0, 0, 0.54));margin-left:8px;display:block;@apply (--response-status-view-time);}.status-info{@apply --layout-horizontal;@apply --layout-center;@apply --layout-flex;}.toggle-button{color:var(--response-status-view-toggle-icon-color, rgba(0, 0, 0, 0.54));transition:color 0.25s linear;}.toggle-icon{transform:rotateZ(0deg);transition:transform 0.3s linear;}.toggle-icon.opened{transform:rotateZ(-180deg);}.toggle-button:hover{color:var(--response-status-view-toggle-icon-hover-color, rgba(0, 0, 0, 0.78));}.xhr-title{@apply (--layout-horizontal);@apply (--layout-center);padding:0px 16px;@apply (--arc-font-subhead);}.redirect-location{margin-left:8px;}.response-error-label{margin-left:12px;color:var(--arc-status-code-color-500, rgba(211, 47, 47, 1));}.status-url{@apply (--arc-font-body1);@apply (--layout-horizontal);@apply (--layout-center);padding-top:12px;padding-bottom:12px;font-size:120%;padding-left:16px;background:var(--response-status-view-request-url-background-color, #6B6C6D);color:var(--response-status-view-request-url-color, #fff);@apply (--arc-font-code);@apply (--response-status-view-request-url-info);}.http-method{margin-right:12px;}.request-url{word-break:break-all;}.no-info{padding-left:16px;@apply (--no-info-message);}</style><div class="status-row"><div class="status-value status"><template is="dom-if" if="[[!isError]]"><div class="status-info text"><span class$="[[_computeStatusClass(statusCode)]]">[[statusCode]] [[statusMessage]]</span> <span class="response-time" hidden$="[[!loadingTime]]">[[_roundTime(loadingTime)]] ms</span></div><div class="status-details"><paper-button on-tap="toggleCollapse" class="toggle-button" title="Toogle response headers">Details<iron-icon icon="arc:expand-more" class$="[[_computeToggleIconClass(opened)]]"></iron-icon></paper-button></div></template><template is="dom-if" if="[[isError]]"><span class="error status-code-value">0</span> <span class="response-time" hidden$="[[!loadingTime]]">[[_roundTime(loadingTime)]] ms</span><p class="response-error-label">Error in the response.</p></template></div></div><iron-collapse opened="[[opened]]"><template is="dom-if" if="[[requestUrl]]"><div class="status-url"><span class="http-method" hidden$="[[!requestMethod]]">[[requestMethod]]</span> <span class="request-url">[[requestUrl]]</span></div></template><paper-tabs selected="{{selectedTab}}"><paper-tab><span>Response headers</span> <span class$="[[_computeBageClass(responseHeaders)]]">[[_computeHeadersLength(responseHeaders)]]</span></paper-tab><paper-tab><span>Request headers</span> <span class$="[[_computeBageClass(requestHeaders)]]">[[_computeHeadersLength(requestHeaders)]]</span></paper-tab><template is="dom-if" if="[[!isXhr]]"><paper-tab><span>Redirects</span> <span class$="[[_computeBageClass(redirects.length)]]">[[redirects.length]]</span></paper-tab><paper-tab>Timings</paper-tab></template></paper-tabs><iron-pages selected="[[selectedTab]]"><headers-list-view on-tap="_handleLink" headers="[[responseHeaders]]"></headers-list-view><section class="request-header-panel"><template is="dom-if" if="[[hasRequestHeaders]]"><headers-list-view type="request" on-tap="_handleLink" headers="[[requestHeaders]]"></headers-list-view></template><template is="dom-if" if="[[!hasRequestHeaders]]"><p class="no-info">Nothing to display here</p></template><template is="dom-if" if="[[hasHttpMessage]]"><http-source-message-view message="[[httpMessage]]"></http-source-message-view></template></section><section class="redirects-panel"><template is="dom-if" if="[[!redirects.length]]"><div class="no-redirects-container"><p class="no-redirects-info">There were no redirects during this request</p></div></template><template is="dom-repeat" items="[[redirects]]"><div class="status-row"><div class="status-label text">#<span>[[_computeIndexName(index)]]</span></div><div class="redirect-value" on-tap="_handleLink"><div class="status-value status text"><span class$="[[_computeStatusClass(item.status)]]">[[item.status]] [[item.statusText]]</span> <span class="redirect-location">to: <a href="[[_computeRedirectLocation(item.headers)]]" class="auto-link">[[_computeRedirectLocation(item.headers)]]</a></span></div><headers-list-view headers="[[item.headers]]"></headers-list-view></div></div></template></section><section class="timings-panel"><request-timings-panel redirects="[[redirectTimings]]" timings="[[timings]]"></request-timings-panel></section></iron-pages></iron-collapse></template><script>Polymer({is:"response-status-view",properties:{statusCode:{type:Number,observer:"_statusCodeChanged"},statusMessage:String,loadingTime:{type:Number,value:0},responseHeaders:{type:String},requestHeaders:String,hasRequestHeaders:{type:String,value:false,computed:"_computeHasRequestHeaders(requestHeaders)"},httpMessage:{type:String,observer:"_httpMessageChanged"},hasHttpMessage:{type:Boolean,value:false,readOnly:true},responseError:{type:Object,observer:"_computeError"},isError:{type:Boolean,value:false,
 readOnly:true},redirects:{type:Array,value:[]},redirectTimings:{type:Array,value:function(){return[]}},selectedTab:{type:Number,value:0},timings:{type:Object,notify:true},isXhr:{type:Boolean,observer:"_isXhrChanged"},opened:{type:Boolean,value:false},requestUrl:String,requestMethod:String},attached:function(){if(this.statusCode)this._statusCodeChanged()},_computeStatusClass:function(code){var cls="status-code-value";if(code>=500||code===0)cls+=" error";if(code>=400&&code<500)cls+=" warning";if(code>=
-300&&code<400)cls+=" info";return cls},_statusCodeChanged:function(){if(!this.statusCode)this.statusCode=0;this.assignStatusMessage()},_computeIndexName:function(index){return index+1},_handleLink:function(e){e.preventDefault();e=Polymer.dom(e);if(e.rootTarget.nodeName==="A")this.fire("action-link-change",{url:e.rootTarget.href})},_computeRedirectLocation:function(headers){if(!headers)return"unknown";var match=headers.match(/^location: (.*)$/im);if(!match)return"unknown";return match[1]},_computeError:function(re){this._setIsError(!!re)},
-_computeBageClass:function(input){if(typeof input==="string")return!!input?"badge":"badge empty";return input===0?"badge empty":"badge"},_computeHeadersLength:function(headers){if(!headers)return 0;return headers.split("\n").length},_httpMessageChanged:function(message){var status=!!message;this._setHasHttpMessage(status)},_roundTime:function(num){num=Number(num);if(num!==num)return"";return num.toFixed(2)},toggleCollapse:function(){this.opened=!this.opened},_computeToggleIconClass:function(opened){var clazz=
-"toggle-icon";if(opened)clazz+=" opened";return clazz},assignStatusMessage:function(){this.async(function(){if(this.statusMessage)return;var element=document.createElement("status-message");element.code=this.statusCode;this.statusMessage=element.message},100)},_isXhrChanged:function(value){if(value===undefined)return;if(value&&this.selectedTab>1)this.selectedTab=0;var tabs=this.$$("paper-tabs");if(!tabs){console.warn("Tabs panel not found in DOM");return}tabs.notifyResize()},_computeHasRequestHeaders:function(requestHeaders){return!!requestHeaders}});</script></dom-module><dom-module id="response-error-view" assetpath="bower_components/response-error-view/"><template><style>:host{@apply (--layout-vertical);@apply (--layout-flex);-webkit-user-select:text;margin:0 16px;@apply (--response-error-view);}.message-wrapper{@apply (--layout-horizontal);@apply (--layout-center);}.error-icon{width:128px;height:128px;color:var(--error-message-icon-color, rgba(0, 0, 0, 0.56));@apply (--error-message-icon);}.error-desc{@apply (--arc-font-subhead);color:var(--error-message-color, #db4437);@apply (--error-message-text);}.error-code{color:var(--error-message-code-color, #9e9e9e);}.inherit{color:inherit !important;background-color:inherit !important;text-decoration:inherit !important;}p,
+300&&code<400)cls+=" info";return cls},_statusCodeChanged:function(){if(!this.statusCode)this.statusCode=0;this.assignStatusMessage()},_computeIndexName:function(index){return index+1},_handleLink:function(e){e.preventDefault();e=Polymer.dom(e);if(e.rootTarget.nodeName==="A")this.fire("action-link-change",{url:e.rootTarget.href})},_computeRedirectLocation:function(headers){var def="unknown";if(!headers)return def;if(typeof headers==="string"){var match=headers.match(/^location: (.*)$/im);if(!match)return def;
+return match[1]}var location=headers.get("location");return location||def},_computeError:function(re){this._setIsError(!!re)},_computeBageClass:function(input){if(typeof input==="string")return!!input?"badge":"badge empty";return input===0?"badge empty":"badge"},_computeHeadersLength:function(headers){if(!headers)return 0;return headers.split("\n").length},_httpMessageChanged:function(message){var status=!!message;this._setHasHttpMessage(status)},_roundTime:function(num){num=Number(num);if(num!==
+num)return"";return num.toFixed(2)},toggleCollapse:function(){this.opened=!this.opened},_computeToggleIconClass:function(opened){var clazz="toggle-icon";if(opened)clazz+=" opened";return clazz},assignStatusMessage:function(){this.async(function(){if(this.statusMessage)return;var element=document.createElement("status-message");element.code=this.statusCode;this.statusMessage=element.message},100)},_isXhrChanged:function(value){if(value===undefined)return;if(value&&this.selectedTab>1)this.selectedTab=
+0;var tabs=this.$$("paper-tabs");if(!tabs){console.warn("Tabs panel not found in DOM");return}tabs.notifyResize()},_computeHasRequestHeaders:function(requestHeaders){return!!requestHeaders}});</script></dom-module><dom-module id="response-error-view" assetpath="bower_components/response-error-view/"><template><style>:host{@apply (--layout-vertical);@apply (--layout-flex);-webkit-user-select:text;margin:0 16px;@apply (--response-error-view);}.message-wrapper{@apply (--layout-horizontal);@apply (--layout-center);}.error-icon{width:128px;height:128px;color:var(--error-message-icon-color, rgba(0, 0, 0, 0.56));@apply (--error-message-icon);}.error-desc{@apply (--arc-font-subhead);color:var(--error-message-color, #db4437);@apply (--error-message-text);}.error-code{color:var(--error-message-code-color, #9e9e9e);}.inherit{color:inherit !important;background-color:inherit !important;text-decoration:inherit !important;}p,
     h3{cursor:text;}</style><div class="message-wrapper"><div><iron-icon class="error-icon" icon="[[icon]]"></iron-icon></div><div class="error-desc"><iron-pages selected="[[detailsPage]]"><section><h3>The requested URL can't be reached</h3><p>The service might be temporarily down or it may have moved permanently to a new web address.</p><p class="error-code">[[message]]</p></section><section><h3>Install self signed certificate in Chrome</h3><p>The app can't work if the self-signed certificate is not installed in Chrome.</p><a class="inherit" href="http://restforchrome.blogspot.co.uk/2016/04/advanced-rest-client.html" target="_blank"><paper-button raised="">Tell me more</paper-button></a><p class="error-code">[[message]]</p></section><section><h3>The requested URL can't be reached</h3><p>The service refused to connect.</p><p>Please, check if:</p><ul><li>you and remote machine are connected to the internet,</li><li>all required services (like www) are up and running on server</li><li>port number is correct</li><li>url is correct</li></ul><p>Search Google for <a href="https://www.google.com/search?q=chrome%20network%20error%20102" target="_blank">chrome network error 102</a></p><p class="error-code">[[message]]</p></section><section><h3>Certificate is invalid for given domain</h3><p>Certificate presented to the app has different CN (common name) than the domain of the request.</p><p>Please, generate certificate again with valid domain name or use free certificate service like <a href="https://letsencrypt.org/" target="_blank">letsencrypt.org</a> to get a new certificate.</p><a class="inherit" href="http://restforchrome.blogspot.co.uk/2016/04/advanced-rest-client.html" target="_blank"><paper-button raised="">Tell me more</paper-button></a><a class="inherit" href="https://bugs.chromium.org/p/chromium/issues/detail?id=603104" target="_blank"><paper-button raised="">See CR bug</paper-button></a><p class="error-code">[[message]]</p></section><section><h3>Abort / timeout</h3><p>The request has been aborted manually or because of the conection timeout. There were no response from the server but the connection wasn't closed.</p><p>You can adjust timeout in settings.</p><p>Try to:</p><ul><li>add "Connection: close" header which should be used by the server to close the connection after it finish generating response</li></ul><p>Please, check if:</p><ul><li>all required services (like www) are up and running on server</li><li>method is correct</li><li>port number is correct</li><li>url is correct</li><li>all required headers and/or payload has been added to the request</li></ul><h4>Example</h4><p>Sometimes it may happen when you use <b>http</b> protocol instead of <b>https</b>. Also it may happen when you use different URL (port / protocol) and the server is not configured properly.</p></section><section><h3>The requested URL can't be reached</h3><p>The service is unreachable.</p><p>Search Google for <a href="https://www.google.com/search?q=chrome%20network%20error%20109" target="_blank">chrome network error 109</a></p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can鈥檛 provide a secure connection</h3><p><b>The URL</b> didn鈥檛 accept your login certificate or your login certificate may have expired.</p><p>Try contacting the system admin.</p><p class="error-code">[[message]]</p></section><section><h3>The URL is blocked</h3><p>The person who set up this computer has chosen to block this site.</p><p>Try contacting the system admin.</p><p><b>Check your administrator's policies</b></p><p>Visit <b>chrome://policy</b> to see the list of blacklisted URLs and other policies enforced by your system administrator.</p><p class="error-code">[[message]]</p></section><section><h3>The URL is blocked</h3><p>Requests to the server have been blocked by an extension.</p><p>Try</p><ul><li>Again...</li><li>Disabling your extensions</li></ul><p class="error-code">[[message]]</p></section><section><h3>There is no Internet connection</h3><p>Chrome OS hasn鈥檛 completed its initial setup.</p><ul><li>Fix your connection using the <a href="data:text/html,chromewebdata#buttons" target="_blank">diagnostics app</a></li><li>Sign out and complete setup</li></ul><p class="error-code">[[message]]</p></section><section><h3>Certificate error</h3><p>Certificate presented to the app is invalid.</p><p>Please, generate certificate again or use free certificate service like <a href="https://letsencrypt.org/" target="_blank">letsencrypt.org</a> to get a new certificate.</p><a class="inherit" href="http://restforchrome.blogspot.co.uk/2016/04/advanced-rest-client.html" target="_blank"><paper-button raised="">Tell me more</paper-button></a><p class="error-code">[[message]]</p></section><section><h3>The requested URL can't be reached</h3><p>The service unexpectedly closed the connection.</p><p>Try</p><ul><li>Again...</li><li>Checking the connection</li><li>Checking the proxy and the firewall</li></ul><p class="error-code">[[message]]</p><p><b>Check your Internet connection</b></p><p>Check any cables and reboot any routers, modems or other network devices you may be using.</p><p><b>Allow Chrome to access the network in your firewall or antivirus settings.</b></p><p>If it is already listed as a program allowed to access the network, try removing it from the list and adding it again.</p><p><b>If you use a proxy server...</b></p><p>Check your proxy settings or contact your network administrator to make sure that the proxy server is working. If you don't believe you should be using a proxy server: Go to the Chrome menu &gt; Settings &gt; + Show advanced settings &gt; Change proxy settings... and make sure your configuration is set to "no proxy" or "direct."</p></section><section><h3>The requested URL can't be reached</h3><p>The service is unreachable.</p><p>Search Google for <a href="https://www.google.co.uk/search?q=chrome%20network%20error%20104" target="_blank">chrome network error 104</a></p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can't be reached</h3><p>The service refused to connect.</p><p>Search Google for <a href="https://www.google.com/search?q=chrome%20network%20error%20102" target="_blank">chrome network error 102</a></p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can't be reached</h3><p>The service took too long to respond.</p><p>Search Google for <a href="https://www.google.com/search?q=chrome%20network%20error%20118" target="_blank">chrome network error 118</a></p><p class="error-code">[[message]]</p></section><section><h3>The requested URL isn鈥檛 working</h3><p>The service unexpectedly closed the connection.</p><p class="error-code">[[message]]</p></section><section><h3>The requested URL was not found</h3><p>It may have been moved or deleted.</p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can鈥檛 be reached</h3><p>This site on the company, organisation or school intranet has the same URL as an external website.</p><p>Try contacting your system administrator.</p><p class="error-code">[[message]]</p></section><section><h3>There is no Internet connection</h3><p>Your computer is offline.</p><p>Try:</p><ul><li>Checking the network cable or router</li><li>Resetting the modem or router</li><li>Reconnecting to Wi-Fi</li></ul><p class="error-code">[[message]]</p></section><section><h3>The requested URL can't be reached</h3><p>The service's server DNS address could not be found.</p><p>Search Google for <a href="https://www.google.com/search?q=chrome%20network%20error%20105" target="_blank">chrome network error 105</a></p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can't be reached</h3><p>The service might be temporarily down or it may have moved permanently to a new web address.</p><p>Search Google for <a href="https://www.google.com/search?q=chrome%20network%20error%20137" target="_blank">chrome network error 137</a></p><p class="error-code">[[message]]</p></section><section><h3>Your Internet access is blocked</h3><p>Firewall or antivirus software may have blocked the connection.</p><p>Try:</p><ul><li>Checking the connection</li><li>Checking firewall and antivirus configurations</li></ul><p class="error-code">[[message]]</p><p><b>Check your Internet connection</b></p><p>Check any cables and reboot any routers, modems or other network devices you may be using.</p><p><b>Allow Chrome to access the network in your firewall or antivirus settings</b></p><p>If it is already listed as a program allowed to access the network, try removing it from the list and adding it again.</p></section><section><h3>Your connection was interrupted</h3><p>A network change was detected.</p><p class="error-code">[[message]]</p></section><section><h3>Your connection was interrupted</h3><p>Your computer went to sleep. Zzzzzzz.</p><p class="error-code">[[message]]</p></section><section><h3>There is no Internet connection</h3><p>There is something wrong with the proxy server or the address is incorrect.</p><p>Try:</p><ul><li>Checking the proxy address</li><li>Contacting the system admin</li></ul><p class="error-code">[[message]]</p><p><b>If you use a proxy server...</b></p><p>Check your proxy settings or contact your network administrator to make sure that the proxy server is working. If you don't believe you should be using a proxy server: Go to the Chrome menu &gt; Settings &gt; + Show advanced settings &gt; Change proxy settings... and make sure your configuration is set to "no proxy" or "direct."</p></section><section><h3>The requested URL isn鈥檛 working</h3><p>The service sent an invalid response.</p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can鈥檛 provide a secure connection</h3><p><b>The URL</b> sent an invalid response.</p><p><a href="https://support.google.com/chrome?p=ir_ssl_error" target="_blank">Learn more</a> about this problem.</p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can鈥檛 provide a secure connection</h3><p>The server presented a certificate that doesn't match built-in expectations. These expectations are included for certain, high-security websites in order to protect you.</p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can鈥檛 provide a secure connection</h3><p>The server doesn't adhere to security standards.</p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can鈥檛 provide a secure connection</h3><p>The server uses an unsupported protocol.</p><p class="error-code">[[message]]</p><p><b>Unsupported protocol</b></p><p>The client and server don't support a common SSL protocol version or cipher suite. This is likely to be caused when the server needs RC4, which is no longer considered secure.</p></section><section><h3>The requested URL can鈥檛 provide a secure connection</h3><p>The server doesn't adhere to security standards.</p><p><a href="https://support.google.com/chrome?p=dh_error&amp;" target="_blank">Learn more</a> about this problem.</p><p class="error-code">[[message]]</p></section><section><h3>Access to network-error was denied</h3><p>The server hosting the web page might be overloaded or under maintenance. In order to avoid generating too much traffic and make the situation worse, requests to this URL have been temporarily disallowed.</p><p class="error-code">[[message]]</p></section><section><h3>The requested URL can't be reached</h3><p>The service took too long to respond.</p><p>Try</p><ul><li>Again...</li><li>Checking the connection</li><li>Checking the proxy and the firewall</li></ul><p class="error-code">[[message]]</p><p><b>Check your Internet connection</b></p><p>Check any cables and reboot any routers, modems or other network devices you may be using.</p><p><b>Allow the browser to access the network in your firewall or antivirus settings.</b></p><p>If it is already listed as a program allowed to access the network, try removing it from the list and adding it again.</p><p><b>If you use a proxy server...</b></p><p>Check your proxy settings or contact your network administrator to make sure that the proxy server is working. If you don't believe you should be using a proxy server: Go to the Chrome menu &gt; Settings &gt; + Show advanced settings &gt; Change proxy settings... and make sure your configuration is set to "no proxy" or "direct."</p></section><section><h3>The requested URL isn鈥檛 working</h3><p>The service redirected you too many times.</p><p>Try</p><ul><li>Again...</li><li>Clearing your cookies</li></ul><p class="error-code">[[message]]</p><p><b>Clearing your cookies</b></p><p>Go to app's settings and click on "Clear cookies".</p></section></iron-pages></div></div></template><script>Polymer({is:"response-error-view",properties:{message:{type:String,observer:"_messageChanged"},icon:{type:String,value:"arc:sentiment-very-dissatisfied"},detailsPage:Number},ready:function(){if(this.detailsPage===undefined)this.detailsPage=0},_messageChanged:function(msg){if(msg)msg=msg.trim();switch(msg){case "net::ERR_CERT_AUTHORITY_INVALID":this.detailsPage=1;break;case "net::ERR_CONNECTION_REFUSED":this.detailsPage=2;break;case "net::ERR_CERT_COMMON_NAME_INVALID":this.detailsPage=3;break;case "Request aborted":this.detailsPage=
 4;break;case "net::ERR_ADDRESS_UNREACHABLE":this.detailsPage=5;break;case "net::ERR_BAD_SSL_CLIENT_AUTH_CERT":this.detailsPage=6;break;case "net::ERR_BLOCKED_BY_ADMINISTRATOR":this.detailsPage=7;break;case "net::ERR_BLOCKED_BY_CLIENT":this.detailsPage=8;break;case "net::ERR_BLOCKED_ENROLLMENT_CHECK_PENDING":this.detailsPage=9;break;case "net::ERR_CERT_CONTAINS_ERRORS":case "net::ERR_CERT_DATE_INVALID":case "net::ERR_CERT_END":case "net::ERR_CERT_ERROR_IN_SSL_RENEGOTIATION":case "net::ERR_CERT_INVALID":case "net::ERR_CERT_NAME_CONSTRAINT_VIOLATION":case "net::ERR_CERT_NON_UNIQUE_NAME":case "net::ERR_CERT_NO_REVOCATION_MECHANISM":case "net::ERR_CERT_REVOKED":case "net::ERR_CERT_UNABLE_TO_CHECK_REVOCATION":case "net::ERR_CERT_VALIDITY_TOO_LONG":case "net::ERR_CERT_WEAK_KEY":case "net::ERR_CERT_WEAK_SIGNATURE_ALGORITHM":this.detailsPage=
 10;break;case "net::ERR_CONNECTION_CLOSED":case "net::ERR_CONNECTION_RESET":this.detailsPage=11;break;case "net::ERR_CONNECTION_FAILED":this.detailsPage=12;break;case "net::ERR_CONNECTION_REFUSED":this.detailsPage=13;break;case "net::ERR_CONNECTION_TIMED_OUT":this.detailsPage=14;break;case "net::ERR_CONTENT_LENGTH_MISMATCH":case "net::ERR_INCOMPLETE_CHUNKED_ENCODING":this.detailsPage=15;break;case "net::ERR_FILE_NOT_FOUND":this.detailsPage=16;break;case "net::ERR_ICANN_NAME_COLLISION":this.detailsPage=
@@ -2150,14 +2233,8 @@ hexequiv[textString>>4&15]+hexequiv[textString&15]},_convertCharStr2jEsc:functio
 65536;outputString+="\\u"+this._dec2hex4(55296|suppCP>>10)+"\\u"+this._dec2hex4(56320|suppCP&1023)}highsurrogate=0;continue}else{outputString+="Error in convertCharStr2UTF16: low surrogate expected, cc\x3d"+cc+"!";highsurrogate=0}if(55296<=cc&&cc<=56319)highsurrogate=cc;else switch(cc){case 0:outputString+="\\0";break;case 8:outputString+="\\b";break;case 9:outputString+="\\t";break;case 10:outputString+="\\n";break;case 13:outputString+="\\r";break;case 11:outputString+="\\v";break;case 12:outputString+=
 "\\f";break;case 34:outputString+='\\"';break;case 39:outputString+="\\'";break;case 92:outputString+="\\\\";break;default:if(cc>31&&cc<127)outputString+=String.fromCharCode(cc);else{pad=cc.toString(16).toUpperCase();while(pad.length<4)pad="0"+pad;outputString+="\\u"+pad}}}return outputString},mark:function(input){this.cleanMarked();var count=0;if(!input||!(input=input.replace(/(^\s+|\s+$)/g,"")))return;else{input=this._convertCharStr2jEsc(input);if(this._compile(input))count=this._searchWords(this._textSearch)}this._setMarkedCount(count)},
 cleanMarked:function(){var arr=this._textSearch.getElementsByTagName("MARK");var el;while(arr.length&&(el=arr[0])){var parent=el.parentNode;if(!el.firstChild)continue;parent.replaceChild(el.firstChild,el);parent.normalize()}},highlightMarked:function(position){this.clearHighlight();var marked=this._textSearch.querySelectorAll("mark.arc-search-mark");if(marked.length===0||marked.length<position)return;marked[position].classList.add("selected");if(marked[position].scrollIntoViewIfNeeded)marked[position].scrollIntoViewIfNeeded();
-else if(marked[position].scrollIntoView)marked[position].scrollIntoView(true);else;},clearHighlight:function(){var marked=this._textSearch.querySelector("mark.arc-search-mark.selected");if(!marked)return;marked.classList.remove("selected")}}})();</script><script>(function(global){global.ArcBehaviors=global.ArcBehaviors||{};global.ArcBehaviors.PayloadParserBehavior={properties:{AMP_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/&/g)}},GT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/>/g)}},LT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/</g)}},SQUOT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/'/g)}},QUOT_RE:{type:RegExp,readOnly:true,value:function(){return new RegExp(/"/g)}}},
-htmlEscape:function(s){if(s.indexOf("\x26")!==-1)s=s.replace(this.AMP_RE,"\x26amp;");if(s.indexOf("\x3c")!==-1)s=s.replace(this.LT_RE,"\x26lt;");if(s.indexOf("\x3e")!==-1)s=s.replace(this.GT_RE,"\x26gt;");if(s.indexOf('"')!==-1)s=s.replace(this.QUOT_RE,"\x26quot;");if(s.indexOf("'")!==-1)s=s.replace(this.SQUOT_RE,"\x26#39;");return s},formArrayToString:function(arr){var result="";if(!arr)return result;arr.forEach(function(item){var name=this._paramValue(item.name);var value=this._paramValue(item.value);
-if(!name&&!value)return;if(result)result+="\x26";result+=name+"\x3d"+value},this);return result},stringToArray:function(input){var result=[];if(!input||!input.trim())return result;var htmlInputCheck=/^([^\\=]{1,})=(.*)$/m;if(!htmlInputCheck.test(input)){input=input.replace(/^([^\\:]{1,}):(.*)$/gm,"$1\x3d$2\x26").replace(/\n/gm,"");input=input.substr(0,input.length-1)}result=this._createParamsArray(input);return result},_createParamsArray:function(input){var result=[];if(!input)return result;var state=
-0;var i=0;var _tmpName="";var _tmpValue="";while(true){var ch=input[i++];if(ch===undefined){if(_tmpValue||_tmpName)result[result.length]={name:_tmpName,value:_tmpValue};break}if(ch==="\x3d")if(state!==1){state=1;continue}if(ch==="\x26"){state=0;result[result.length]={name:_tmpName,value:_tmpValue};_tmpName="";_tmpValue="";continue}if(state===0)_tmpName+=ch;else if(state===1)_tmpValue+=ch}return result},encodeUrlEncoded:function(input){if(!input||!input.length)return input;var isArray=true;if(!(input instanceof
-Array)){isArray=false;input=this.stringToArray(input)}input.forEach(function(obj){obj.name=this.encodeQueryString(obj.name);obj.value=this.encodeQueryString(obj.value)},this);if(isArray)return input;return this.formArrayToString(input)},decodeUrlEncoded:function(input){if(!input||!input.length)return input;var isArray=true;if(!(input instanceof Array)){isArray=false;input=this.stringToArray(input)}input.forEach(function(obj){obj.name=this.decodeQueryString(obj.name);obj.value=this.decodeQueryString(obj.value)},
-this);if(isArray)return input;return this.formArrayToString(input)},_paramValue:function(input){if(!input)return String();input=String(input);input=input.trim();return input},_paramLineToFormObject:function(input){if(!input)return;var _tmp=input.split("\x3d");var name=_tmp[0].trim();if(!name&&_tmp.length===1)return;var value;if(_tmp.length===1)value="";else value=_tmp[1].trim();return{name:name,value:value}},encodeQueryString:function(str){if(!str)return str;var regexp=/%20/g;return encodeURIComponent(str).replace(regexp,
-"+")},decodeQueryString:function(str){if(!str)return str;var regexp=/\+/g;return decodeURIComponent(str.replace(regexp,"%20"))}}})(window);</script><dom-module id="response-raw-viewer" assetpath="bower_components/response-raw-viewer/"><template><style>:host{display:block;overflow:overlay;width:100%;@apply (--response-raw-viewer);}.raw-content{font-family:'Roboto Mono', 'Consolas', 'Menlo', monospace;-webkit-font-smoothing:antialiased;font-size:14px;font-weight:500;line-height:20px;-webkit-user-select:text;white-space:pre;width:100%;@apply (--arc-font-code1);}:host([wrap-text]) .raw-content{white-space:pre-wrap;word-wrap:break-word;}.actions-panel{@apply (--layout-horizontal);@apply (--layout-center);@apply (--response-raw-viewer-action-bar);}.actions-panel.hidden{display:none;}.no-info{@apply (--no-info-message);}</style><div class$="[[_computeActionsPanelClass(hasResponse)]]"><content select="[content-action]"></content></div><code id="rawContent" class="raw-content" hidden$="[[!hasResponse]]"></code><p class="no-info" hidden$="[[hasResponse]]">Nothing to dispplay.</p></template><script>Polymer({is:"response-raw-viewer",behaviors:[ArcBehaviors.TextSearchBehavior,ArcBehaviors.PayloadParserBehavior],properties:{responseText:{type:String,observer:"_responseChanged"},hasResponse:{type:Boolean,value:false,computed:"_computeHasResponse(responseText)"},_textSearch:{type:HTMLElement,value:function(){return this.$.rawContent}},query:{type:String,observer:"_queryChanged"}},_responseChanged:function(response){if(!response)this.$.rawContent.innerHTML="";else this.$.rawContent.innerHTML=this.htmlEscape(response)},
-_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeHasResponse:function(responseText){return!!responseText},_computeActionsPanelClass:function(hasResponse){var clazz="actions-panel";if(!hasResponse)clazz+=" hidden";return clazz}});</script></dom-module><dom-module id="error-message" assetpath="bower_components/error-message/"><template><style>:host{@apply (--layout-horizontal);@apply (--layout-center);@apply (--error-message);}.error-icon{width:128px;height:128px;color:var(--error-message-icon-color, rgba(0, 0, 0, 0.56));@apply (--error-message-icon);}.error-desc ::content > *{@apply (--arc-font-subhead);color:var(--error-message-color, --google-red-500);@apply (--error-message-text);}</style><div><iron-icon class="error-icon" icon="[[icon]]"></iron-icon></div><div class="error-desc"><content></content></div></template><script>Polymer({is:"error-message",properties:{icon:{type:String,value:"arc:sentiment-very-dissatisfied"}}});</script></dom-module><dom-module id="xml-viewer" assetpath="bower_components/xml-viewer/"><template><style>:host{display:block;color:black;cursor:text;-webkit-user-select:text;user-select:text;overflow:auto;word-wrap:break-word;@apply (--xml-viewer);}.material-icons{font-family:'Material Icons';font-weight:normal;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;}.prettyPrint{font-family:monospace;font-size:15px;}.arrowEmpty{}.node{margin:1px 0px;}.opened{}.comment{color:var(--xml-viewer-comment-color, #236E25);}.punctuation{color:var(--xml-viewer-punctuation-color, black);}.tagname{color:var(--xml-viewer-tag-name-color, #881280);}.attname{color:var(--xml-viewer-attribute-name-color, #994500);}.attribute{color:var(--xml-viewer-attribute-value-color, #1A1AA6);}.cdata{color:var(--xml-viewer-cdata-color, #48A);}.cdata *[collapsible]{white-space:pre;}.arrowExpanded,
+else if(marked[position].scrollIntoView)marked[position].scrollIntoView(true);else;},clearHighlight:function(){var marked=this._textSearch.querySelector("mark.arc-search-mark.selected");if(!marked)return;marked.classList.remove("selected")}}})();</script><dom-module id="response-raw-viewer" assetpath="bower_components/response-raw-viewer/"><template><style>:host{display:block;overflow:overlay;width:100%;@apply --response-raw-viewer;}.raw-content{@apply --arc-font-code1;-webkit-user-select:text;white-space:pre;width:100%;min-height:52px;display:block;overflow:auto;max-width:100%;@apply --response-raw-viewer-code;}:host([wrap-text]) .raw-content{white-space:pre-wrap;word-wrap:break-word;}.actions-panel{@apply --layout-horizontal;@apply --layout-center;@apply --response-raw-viewer-action-bar;}.actions-panel.hidden{display:none;}.no-info{@apply --no-info-message;}</style><div class$="[[_computeActionsPanelClass(hasResponse)]]"><content select="[content-action]"></content></div><code id="rawContent" class="raw-content" hidden$="[[!hasResponse]]"></code><p class="no-info" hidden$="[[hasResponse]]">Nothing to dispplay.</p></template><script>Polymer({is:"response-raw-viewer",behaviors:[ArcBehaviors.TextSearchBehavior,ArcBehaviors.PayloadParserBehavior],properties:{responseText:{type:String,observer:"_responseChanged"},hasResponse:{type:Boolean,value:false,computed:"_computeHasResponse(responseText)"},_textSearch:{type:HTMLElement,value:function(){return this.$.rawContent}},query:{type:String,observer:"_queryChanged"},wrapText:{type:Boolean,reflectToAttribute:true}},_responseChanged:function(response){if(!response)this.$.rawContent.innerHTML=
+"";else this.$.rawContent.innerHTML=this.htmlEscape(response)},_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeHasResponse:function(responseText){return!!responseText},_computeActionsPanelClass:function(hasResponse){var clazz="actions-panel";if(!hasResponse)clazz+=" hidden";return clazz}});</script></dom-module><dom-module id="error-message" assetpath="bower_components/error-message/"><template><style>:host{@apply (--layout-horizontal);@apply (--layout-center);@apply (--error-message);}.error-icon{width:128px;height:128px;color:var(--error-message-icon-color, rgba(0, 0, 0, 0.56));@apply (--error-message-icon);}.error-desc ::content > *{@apply (--arc-font-subhead);color:var(--error-message-color, --google-red-500);@apply (--error-message-text);}</style><div><iron-icon class="error-icon" icon="[[icon]]"></iron-icon></div><div class="error-desc"><content></content></div></template><script>Polymer({is:"error-message",properties:{icon:{type:String,value:"arc:sentiment-very-dissatisfied"}}});</script></dom-module><dom-module id="xml-viewer" assetpath="bower_components/xml-viewer/"><template><style>:host{display:block;color:black;cursor:text;-webkit-user-select:text;user-select:text;overflow:auto;word-wrap:break-word;@apply (--xml-viewer);}.material-icons{font-family:'Material Icons';font-weight:normal;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;}.prettyPrint{font-family:monospace;font-size:15px;}.arrowEmpty{}.node{margin:1px 0px;}.opened{}.comment{color:var(--xml-viewer-comment-color, #236E25);}.punctuation{color:var(--xml-viewer-punctuation-color, black);}.tagname{color:var(--xml-viewer-tag-name-color, #881280);}.attname{color:var(--xml-viewer-attribute-name-color, #994500);}.attribute{color:var(--xml-viewer-attribute-value-color, #1A1AA6);}.cdata{color:var(--xml-viewer-cdata-color, #48A);}.cdata *[collapsible]{white-space:pre;}.arrowExpanded,
     .arrowEmpty{display:inline-block;width:24px;height:18px;}.processing{color:var(--xml-viewer-document-declaration-color, #999);}.inline,
     .inline > div{display:inline-block;text-indent:0px;}.node.opened >. arrowEmpty{text-indent:0;font-size:10px;letter-spacing:0.1em;width:21px;margin-left:3px;margin-right:3px;}.nodeMargin{margin-left:44px;}.collapseIndicator{display:none;margin:0px 1px;text-indent:0px;}*[colapse-marker]{-webkit-user-select:none;cursor:pointer;}*[less]{display:inline-block;}*[more]{display:none;}*[data-expanded="false"] .arrowEmpty{display:none;}*[data-expanded="false"] *[less]{display:none;}*[data-expanded="false"] *[more]{display:inline-block;}*[data-expanded="false"] *[collapsible]{display:none !important;}*[data-expanded="false"] *[collapse-indicator]{display:inline-block !important;}.value.number,
     .value.null,
@@ -2308,7 +2385,7 @@ this.cssPrefix+'nodeMargin">');for(e=0;e<b;e++)c+=this.parse(f.item(e));c+="</di
 _textSearch:{type:HTMLElement,value:function(){return this.$.output}},query:{type:String,observer:"_queryChanged"}},behaviors:[ArcBehaviors.TextSearchBehavior],detached:function(){if(this._worker){this._worker.removeEventListener("message",this._workerDataHandler);this._worker.removeEventListener("error",this._workerErrorHandler);this._worker=undefined}},_changed:function(){if(!this.xml)return;this._setWorking(true);this._setIsError(false);this._setErrorMessage(null);this.$.output.innerText="";if(!this._worker){var blob=
 new Blob([this.$.worker.textContent]);var workerUrl=window.URL.createObjectURL(blob);var worker=new Worker(workerUrl);worker.addEventListener("message",this._workerDataHandler);worker.addEventListener("error",this._workerErrorHandler);this._worker=worker}this._worker.postMessage({xml:this.xml,cssPrefix:this.nodeName.toLowerCase()+" style-scope "})},_workerData:function(e){this._setWorking(false);this.$.output.innerHTML=e.data},_workerError:function(e){this._setIsError(true);this._setWorking(false);
 var err=e.message.replace("Uncaught Error: ","");if(err)this._setErrorMessage(err)},_computeShowOutput:function(working,isError,xml){return!working&&!isError&&!!xml},_handleDisplayClick:function(e){if(!e.target)return;var target=e.target;if(!target.getAttribute("colapse-marker")){target=target.parentNode;if(!target||!target.getAttribute("colapse-marker"))return}target=target.parentNode;var expanded=target.dataset.expanded;if(!expanded||expanded==="true")target.dataset.expanded="false";else target.dataset.expanded=
-"true"},_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeActionsPanelClass:function(showOutput){var clazz="actions-panel";if(!showOutput)clazz+=" hidden";return clazz}})})();</script></dom-module><dom-module id="js-max-number-error" assetpath="bower_components/json-viewer/"><template><style>:host{display:inline-block;vertical-align:text-bottom;}.parsed-value ::content > *{color:#D32F2F;font-weight:500;}.content{@apply (--layout-horizontal);@apply (--layout-center);color:#D32F2F;font-weight:500;cursor:pointer;}iron-icon{height:18px;width:18px;margin-right:8px;}#collapse{white-space:initial;@apply (--paper-font-body2);color:rgba(0, 0, 0, 0.74);}p{margin:0;}.message{padding:12px;background-color:#FFECB3;margin:12px 24px;}.expected{font-weight:700;}</style><div class="content" on-tap="toggle"><iron-icon icon="arc:info"></iron-icon><div class="parsed-value"><content></content></div></div><iron-collapse id="collapse"><div class="message"><p>The number used in the response is unsafe in JavaScript environment and therefore as a JSON value.</p><p>Original value for the number (represented as string) is <span class="expected">"[[expectedNumber]]"</span></p><p>This number will not work in web environment and should be passed as a string, not a number.</p><p><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER" target="_blank">Read more about numbers in JavaScript</a>.</p></div></iron-collapse></template><script>(function(){Polymer({is:"js-max-number-error",properties:{expectedNumber:{type:String,value:"[unknown]"}},toggle:function(){this.$.collapse.toggle()}})})();</script></dom-module><dom-module id="json-viewer" assetpath="bower_components/json-viewer/"><template><style>:host{display:block;font-family:monospace;font-size:10pt;color:black;cursor:text;-webkit-user-select:text;@apply (--json-viewer);}.prettyPrint{padding:8px;}.stringValue{white-space:normal;}.brace{display:inline-block;}.numeric{color:var(--code-type-number-value-color, blue);}.nullValue{color:var(--code-type-null-value-color, #708);}.booleanValue{color:var(--code-type-boolean-value-color, #708);}.punctuation{color:var(--code-punctuation-value-color, black);}.stringValue{color:var(--code-type-text-value-color, #48A);}.node{position:relative;white-space:nowrap;margin-bottom:4px;word-wrap:break-word;}.array-counter{color:gray;font-size:11px;}.array-counter::before{content:"Array[" attr(count) "]";user-select:none;pointer-events:none;}*[data-expanded="false"] > .array-counter::before{content:"Array[" attr(count) "] ...";user-select:none;pointer-events:none;}.array-key-number::before{content:"" attr(index) ":";user-select:none;pointer-events:none;}.key-name{color:var(--code-type-text-value-color, #48A);}.rootElementToggleButton{position:absolute;top:0;left:-9px;font-size:14px;cursor:pointer;font-weight:bold;user-select:none;}.rootElementToggleButton::after{content:"-";}.array-key-number{color:var(--code-array-index-color, rgb(119, 119, 119));}.info-row{display:none;margin:0 8px;text-indent:0;}div[data-expanded="false"] div[collapse-indicator]{display:inline-block !important;}div[data-expanded="false"] div[data-element]{display:none !important;}.arc-search-mark.selected{background-color:#ff9632;}div[data-expanded="false"] .punctuation.hidden{opacity:0;}.hidden{color:rgba(0, 0, 0, 0.24);}a[response-anchor]{color:var(--code-type-link-color, #1976d2);}paper-spinner:not([active]){display:none;}.actions-panel{@apply (--layout-horizontal);@apply (--layout-center);@apply (--response-raw-viewer-action-bar);}.actions-panel.hidden{display:none;}</style><paper-spinner active="[[working]]"></paper-spinner><div class="error" hidden$="[[!isError]]"><p>There was an error parsing JSON data</p></div><div class$="[[_computeActionsPanelClass(showOutput)]]"><content select="[content-action]"></content></div><output id="output" hidden$="[[!showOutput]]" on-tap="_handleDisplayClick"></output><script id="jsonWorker" type="text/js-worker">var SafeHtmlUtils = {
+"true"},_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeActionsPanelClass:function(showOutput){var clazz="actions-panel";if(!showOutput)clazz+=" hidden";return clazz}})})();</script></dom-module><dom-module id="js-max-number-error" assetpath="bower_components/json-viewer/"><template><style>:host{display:inline-block;vertical-align:text-bottom;}.parsed-value ::content > *{color:#D32F2F;font-weight:500;}.content{@apply --layout-horizontal;@apply --layout-center;color:#D32F2F;font-weight:500;cursor:pointer;}iron-icon{height:18px;width:18px;margin-right:8px;}#collapse{white-space:initial;@apply --paper-font-body2;color:rgba(0, 0, 0, 0.74);}p{margin:0;}.message{padding:12px;background-color:#FFECB3;margin:12px 24px;}.expected{font-weight:700;}</style><div class="content" on-tap="toggle"><iron-icon icon="arc:info"></iron-icon><div class="parsed-value"><content></content></div></div><iron-collapse><div class="message"><p>The number used in the response is unsafe in JavaScript environment and therefore as a JSON value.</p><p>Original value for the number (represented as string) is <span class="expected">"[[expectedNumber]]"</span></p><p>This number will not work in web environment and should be passed as a string, not a number.</p><p><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER" target="_blank">Read more about numbers in JavaScript</a>.</p></div></iron-collapse></template><script>Polymer({is:"js-max-number-error",properties:{expectedNumber:{type:String,value:"[unknown]"}},toggle:function(){this.$$("iron-collapse").toggle()}});</script></dom-module><dom-module id="json-viewer" assetpath="bower_components/json-viewer/"><template><style>:host{display:block;font-family:monospace;font-size:10pt;color:black;cursor:text;-webkit-user-select:text;@apply --json-viewer;}.prettyPrint{padding:8px;}.stringValue{white-space:normal;}.brace{display:inline-block;}.numeric{color:var(--code-type-number-value-color, blue);}.nullValue{color:var(--code-type-null-value-color, #708);}.booleanValue{color:var(--code-type-boolean-value-color, #708);}.punctuation{color:var(--code-punctuation-value-color, black);}.stringValue{color:var(--code-type-text-value-color, #48A);}.node{position:relative;white-space:nowrap;margin-bottom:4px;word-wrap:break-word;@apply --json-viewer-node;}.array-counter{color:gray;font-size:11px;}.array-counter::before{content:"Array[" attr(count) "]";user-select:none;pointer-events:none;}*[data-expanded="false"] > .array-counter::before{content:"Array[" attr(count) "] ...";user-select:none;pointer-events:none;}.array-key-number::before{content:"" attr(index) ":";user-select:none;pointer-events:none;}.key-name{color:var(--code-type-text-value-color, #48A);}.rootElementToggleButton{position:absolute;top:0;left:-9px;font-size:14px;cursor:pointer;font-weight:bold;user-select:none;}.rootElementToggleButton::after{content:"-";}.array-key-number{color:var(--code-array-index-color, rgb(119, 119, 119));}.info-row{display:none;margin:0 8px;text-indent:0;}div[data-expanded="false"] div[collapse-indicator]{display:inline-block !important;}div[data-expanded="false"] div[data-element]{display:none !important;}.arc-search-mark.selected{background-color:#ff9632;}div[data-expanded="false"] .punctuation.hidden{opacity:0;}.hidden{color:rgba(0, 0, 0, 0.24);}a[response-anchor]{color:var(--code-type-link-color, #1976d2);}paper-spinner:not([active]){display:none;}.actions-panel{@apply --layout-horizontal;@apply --layout-center;@apply --response-raw-viewer-action-bar;}.actions-panel.hidden{display:none;}[hidden]{display:none !important;}</style><paper-spinner active="[[working]]"></paper-spinner><template is="dom-if" if="[[isError]]"><div class="error"><p>There was an error parsing JSON data</p></div></template><div class$="[[_computeActionsPanelClass(showOutput)]]"><content select="[content-action]"></content></div><output hidden$="[[!showOutput]]" on-tap="_handleDisplayClick"></output><script id="jsonWorker" type="text/js-worker">var SafeHtmlUtils = {
       AMP_RE: new RegExp(/&/g),
       GT_RE: new RegExp(/>/g),
       LT_RE: new RegExp(/</g),
@@ -2610,41 +2687,44 @@ var err=e.message.replace("Uncaught Error: ","");if(err)this._setErrorMessage(er
         });
       }
     };</script></template><script>Polymer({is:"json-viewer",properties:{json:{type:String,observer:"_changed"},raw:String,isError:{type:Boolean,readOnly:true,value:false,notify:true},working:{type:Boolean,readOnly:true,value:false,notify:true},showOutput:{type:Boolean,readOnly:true,value:false,computed:"_computeShowOutput(working, isError, json)"},_worker:Object,_workerDataHandler:{type:Function,value:function(){return this._workerData.bind(this)}},_workerErrorHandler:{type:Function,value:function(){return this._workerError.bind(this)}},
-_textSearch:{type:HTMLElement,value:function(){return this.$.output}},query:{type:String,observer:"_queryChanged"},debug:Boolean},behaviors:[ArcBehaviors.TextSearchBehavior],detached:function(){if(this._worker){this._worker.removeEventListener("message",this._workerDataHandler);this._worker.removeEventListener("error",this._workerErrorHandler);this._worker=undefined}},ready:function(){this._isReady=true;if(this.json)this._changed(this.json)},_changed:function(json){if(!this._isReady)return;this._setIsError(false);
-this.$.output.innerText="";if(json===undefined)return;var html;if(json===null){html='\x3cdiv class\x3d"prettyPrint"\x3e\x3cspan class\x3d"nullValue"\x3enull';html+="\x3c/span\x3e\x3c/div\x3e";this.$.output.innerHTML=html;this.$.output.removeAttribute("hidden");return}if(json===false){html='\x3cdiv class\x3d"prettyPrint"\x3e\x3cspan class\x3d"booleanValue"\x3efalse';html+="\x3c/span\x3e\x3c/div\x3e";this.$.output.innerHTML=html;this._setShowOutput(true);return}this._setWorking(true);if(!this._worker){var blob=
-new Blob([this.$.jsonWorker.textContent],{type:"text/javascript"});var worker=new Worker(window.URL.createObjectURL(blob));worker.addEventListener("message",this._workerDataHandler);worker.addEventListener("error",this._workerErrorHandler);this._worker=worker}var debug=this.debug;var ua=navigator.userAgent;if(ua.indexOf("MSIE ")!==-1||ua.indexOf("Trident")!==-1)debug=false;this._worker.postMessage({json:json,raw:this.raw,cssPrefix:this.nodeName.toLowerCase()+" style-scope ",debug:debug})},_workerData:function(e){var data=
-e.data;if(data.error){this._setIsError(true);this.$.output.innerHTML=data.message}else this.$.output.innerHTML=data.message;this._setWorking(false);if(this.debug)if(data.measurement.items&&data.measurement.items.length){console.groupCollapsed("JSON viewer parse measurements");console.table(data.measurement.items);console.groupEnd()}this.fire("json-viewer-parsed")},_workerError:function(){this._setIsError(true);this._setWorking(false);this.fire("json-viewer-parsed")},_computeShowOutput:function(working,
-isError,json){if(working)return false;if(isError)return true;return!!json&&json!==null&&json!==false},_handleDisplayClick:function(e){if(!e.target)return;if(e.target.nodeName==="A"){e.preventDefault();this.fire("action-link-change",{url:e.target.getAttribute("href")});return}var toggleId=e.target.dataset.toggle;if(!toggleId)return;var parent=Polymer.dom(this.root).querySelector('div[data-element\x3d"'+toggleId+'"]');if(!parent)return;var expanded=parent.dataset.expanded;if(!expanded||expanded==="true")parent.dataset.expanded=
-"false";else parent.dataset.expanded="true"},_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeActionsPanelClass:function(showOutput){var clazz="actions-panel";if(!showOutput)clazz+=" hidden";return clazz}});</script></dom-module><script data-manual="">var _self=typeof window!=="undefined"?window:typeof WorkerGlobalScope!=="undefined"&&self instanceof WorkerGlobalScope?self:{};
-var Prism=function(){var lang=/\blang(?:uage)?-(\w+)\b/i;var uniqueId=0;var _=_self.Prism={util:{encode:function(tokens){if(tokens instanceof Token)return new Token(tokens.type,_.util.encode(tokens.content),tokens.alias);else if(_.util.type(tokens)==="Array")return tokens.map(_.util.encode);else return tokens.replace(/&/g,"\x26amp;").replace(/</g,"\x26lt;").replace(/\u00a0/g," ")},type:function(o){return Object.prototype.toString.call(o).match(/\[object (\w+)\]/)[1]},objId:function(obj){if(!obj["__id"])Object.defineProperty(obj,
-"__id",{value:++uniqueId});return obj["__id"]},clone:function(o){var type=_.util.type(o);switch(type){case "Object":var clone={};for(var key in o)if(o.hasOwnProperty(key))clone[key]=_.util.clone(o[key]);return clone;case "Array":return o.map&&o.map(function(v){return _.util.clone(v)})}return o}},languages:{extend:function(id,redef){var lang=_.util.clone(_.languages[id]);for(var key in redef)lang[key]=redef[key];return lang},insertBefore:function(inside,before,insert,root){root=root||_.languages;var grammar=
-root[inside];if(arguments.length==2){insert=arguments[1];for(var newToken in insert)if(insert.hasOwnProperty(newToken))grammar[newToken]=insert[newToken];return grammar}var ret={};for(var token in grammar)if(grammar.hasOwnProperty(token)){if(token==before)for(var newToken in insert)if(insert.hasOwnProperty(newToken))ret[newToken]=insert[newToken];ret[token]=grammar[token]}_.languages.DFS(_.languages,function(key,value){if(value===root[inside]&&key!=inside)this[key]=ret});return root[inside]=ret},
-DFS:function(o,callback,type,visited){visited=visited||{};for(var i in o)if(o.hasOwnProperty(i)){callback.call(o,i,o[i],type||i);if(_.util.type(o[i])==="Object"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,null,visited)}else if(_.util.type(o[i])==="Array"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,i,visited)}}}},plugins:{},highlightAll:function(async,callback){var env={callback:callback,selector:'code[class*\x3d"language-"], [class*\x3d"language-"] code, code[class*\x3d"lang-"], [class*\x3d"lang-"] code'};
-_.hooks.run("before-highlightall",env);var elements=env.elements||document.querySelectorAll(env.selector);for(var i=0,element;element=elements[i++];)_.highlightElement(element,async===true,env.callback)},highlightElement:function(element,async,callback){var language,grammar,parent=element;while(parent&&!lang.test(parent.className))parent=parent.parentNode;if(parent){language=(parent.className.match(lang)||[,""])[1].toLowerCase();grammar=_.languages[language]}element.className=element.className.replace(lang,
-"").replace(/\s+/g," ")+" language-"+language;parent=element.parentNode;if(/pre/i.test(parent.nodeName))parent.className=parent.className.replace(lang,"").replace(/\s+/g," ")+" language-"+language;var code=element.textContent;var env={element:element,language:language,grammar:grammar,code:code};_.hooks.run("before-sanity-check",env);if(!env.code||!env.grammar){if(env.code)env.element.textContent=env.code;_.hooks.run("complete",env);return}_.hooks.run("before-highlight",env);if(async&&_self.Worker){var worker=
-new Worker(_.filename);worker.onmessage=function(evt){env.highlightedCode=evt.data;_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&callback.call(env.element);_.hooks.run("after-highlight",env);_.hooks.run("complete",env)};worker.postMessage(JSON.stringify({language:env.language,code:env.code,immediateClose:true}))}else{env.highlightedCode=_.highlight(env.code,env.grammar,env.language);_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&
-callback.call(element);_.hooks.run("after-highlight",env);_.hooks.run("complete",env)}},highlight:function(text,grammar,language){var tokens=_.tokenize(text,grammar);return Token.stringify(_.util.encode(tokens),language)},tokenize:function(text,grammar,language){var Token=_.Token;var strarr=[text];var rest=grammar.rest;if(rest){for(var token in rest)grammar[token]=rest[token];delete grammar.rest}tokenloop:for(var token in grammar){if(!grammar.hasOwnProperty(token)||!grammar[token])continue;var patterns=
-grammar[token];patterns=_.util.type(patterns)==="Array"?patterns:[patterns];for(var j=0;j<patterns.length;++j){var pattern=patterns[j],inside=pattern.inside,lookbehind=!!pattern.lookbehind,greedy=!!pattern.greedy,lookbehindLength=0,alias=pattern.alias;if(greedy&&!pattern.pattern.global){var flags=pattern.pattern.toString().match(/[imuy]*$/)[0];pattern.pattern=RegExp(pattern.pattern.source,flags+"g")}pattern=pattern.pattern||pattern;for(var i=0,pos=0;i<strarr.length;pos+=strarr[i].length,++i){var str=
-strarr[i];if(strarr.length>text.length)break tokenloop;if(str instanceof Token)continue;pattern.lastIndex=0;var match=pattern.exec(str),delNum=1;if(!match&&greedy&&i!=strarr.length-1){pattern.lastIndex=pos;match=pattern.exec(text);if(!match)break;var from=match.index+(lookbehind?match[1].length:0),to=match.index+match[0].length,k=i,p=pos;for(var len=strarr.length;k<len&&p<to;++k){p+=strarr[k].length;if(from>=p){++i;pos=p}}if(strarr[i]instanceof Token||strarr[k-1].greedy)continue;delNum=k-i;str=text.slice(pos,
-p);match.index-=pos}if(!match)continue;if(lookbehind)lookbehindLength=match[1].length;var from=match.index+lookbehindLength,match=match[0].slice(lookbehindLength),to=from+match.length,before=str.slice(0,from),after=str.slice(to);var args=[i,delNum];if(before)args.push(before);var wrapped=new Token(token,inside?_.tokenize(match,inside):match,alias,match,greedy);args.push(wrapped);if(after)args.push(after);Array.prototype.splice.apply(strarr,args)}}}return strarr},hooks:{all:{},add:function(name,callback){var hooks=
-_.hooks.all;hooks[name]=hooks[name]||[];hooks[name].push(callback)},run:function(name,env){var callbacks=_.hooks.all[name];if(!callbacks||!callbacks.length)return;for(var i=0,callback;callback=callbacks[i++];)callback(env)}}};var Token=_.Token=function(type,content,alias,matchedStr,greedy){this.type=type;this.content=content;this.alias=alias;this.length=(matchedStr||"").length|0;this.greedy=!!greedy};Token.stringify=function(o,language,parent){if(typeof o=="string")return o;if(_.util.type(o)==="Array")return o.map(function(element){return Token.stringify(element,
-language,o)}).join("");var env={type:o.type,content:Token.stringify(o.content,language,parent),tag:"span",classes:["token",o.type],attributes:{},language:language,parent:parent};if(env.type=="comment")env.attributes["spellcheck"]="true";if(o.alias){var aliases=_.util.type(o.alias)==="Array"?o.alias:[o.alias];Array.prototype.push.apply(env.classes,aliases)}_.hooks.run("wrap",env);var attributes=Object.keys(env.attributes).map(function(name){return name+'\x3d"'+(env.attributes[name]||"").replace(/"/g,
-"\x26quot;")+'"'}).join(" ");return"\x3c"+env.tag+' class\x3d"'+env.classes.join(" ")+'"'+(attributes?" "+attributes:"")+"\x3e"+env.content+"\x3c/"+env.tag+"\x3e"};if(!_self.document){if(!_self.addEventListener)return _self.Prism;_self.addEventListener("message",function(evt){var message=JSON.parse(evt.data),lang=message.language,code=message.code,immediateClose=message.immediateClose;_self.postMessage(_.highlight(code,_.languages[lang],lang));if(immediateClose)_self.close()},false);return _self.Prism}var script=
-document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();if(script){_.filename=script.src;if(document.addEventListener&&!script.hasAttribute("data-manual"))if(document.readyState!=="loading")if(window.requestAnimationFrame)window.requestAnimationFrame(_.highlightAll);else window.setTimeout(_.highlightAll,16);else document.addEventListener("DOMContentLoaded",_.highlightAll)}return _self.Prism}();if(typeof module!=="undefined"&&module.exports)module.exports=Prism;
-if(typeof global!=="undefined")global.Prism=Prism;
-Prism.languages.markup={"comment":/\x3c!--[\w\W]*?-- >/,"prolog":/<\?[\w\W]+?\?>/,"doctype":/<!DOCTYPE[\w\W]+?>/i,"cdata":/<!\[CDATA\[[\w\W]*?]]\x3e/i,"tag":{pattern:/<\/?(?!\d)[^\s>\/=$<]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\\1|\\?(?!\1)[\w\W])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{"tag":{pattern:/^<\/?[^\s>\/]+/i,inside:{"punctuation":/^<\/?/,"namespace":/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:('|")[\w\W]*?(\1)|[^\s>]+)/i,inside:{"punctuation":/[=>"']/}},"punctuation":/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,
-inside:{"namespace":/^[^\s>\/:]+:/}}}},"entity":/&#?[\da-z]{1,8};/i};Prism.hooks.add("wrap",function(env){if(env.type==="entity")env.attributes["title"]=env.content.replace(/&amp;/,"\x26")});Prism.languages.xml=Prism.languages.markup;Prism.languages.html=Prism.languages.markup;Prism.languages.mathml=Prism.languages.markup;Prism.languages.svg=Prism.languages.markup;
-Prism.languages.css={"comment":/\/\*[\w\W]*?\*\//,"atrule":{pattern:/@[\w-]+?.*?(;|(?=\s*\{))/i,inside:{"rule":/@[\w-]+/}},"url":/url\((?:(["'])(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,"selector":/[^\{\}\s][^\{\};]*?(?=\s*\{)/,"string":{pattern:/("|')(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1/,greedy:true},"property":/(\b|\B)[\w-]+(?=\s*:)/i,"important":/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,"punctuation":/[(){};:]/};Prism.languages.css["atrule"].inside.rest=Prism.util.clone(Prism.languages.css);
-if(Prism.languages.markup){Prism.languages.insertBefore("markup","tag",{"style":{pattern:/(<style[\w\W]*?>)[\w\W]*?(?=<\/style>)/i,lookbehind:true,inside:Prism.languages.css,alias:"language-css"}});Prism.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|').*?\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:Prism.languages.markup.tag.inside},"punctuation":/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:Prism.languages.css}},alias:"language-css"}},Prism.languages.markup.tag)}
-Prism.languages.clike={"comment":[{pattern:/(^|[^\\])\/\*[\w\W]*?\*\//,lookbehind:true},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:true}],"string":{pattern:/(["'])(\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:true},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[a-z0-9_\.\\]+/i,lookbehind:true,inside:{punctuation:/(\.|\\)/}},"keyword":/\b(if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,
-"boolean":/\b(true|false)\b/,"function":/[a-z0-9_]+(?=\()/i,"number":/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)\b/i,"operator":/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,"punctuation":/[{}[\];(),.:]/};
-Prism.languages.javascript=Prism.languages.extend("clike",{"keyword":/\b(as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,"number":/\b-?(0x[\dA-Fa-f]+|0b[01]+|0o[0-7]+|\d*\.?\d+([Ee][+-]?\d+)?|NaN|Infinity)\b/,"function":/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\()/i,
-"operator":/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*\*?|\/|~|\^|%|\.{3}/});Prism.languages.insertBefore("javascript","keyword",{"regex":{pattern:/(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:true,greedy:true}});
-Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\\\|\\?[^\\])*?`/,greedy:true,inside:{"interpolation":{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},"string":/[\s\S]+/}}});if(Prism.languages.markup)Prism.languages.insertBefore("markup","tag",{"script":{pattern:/(<script[\w\W]*?>)[\w\W]*?(?=<\/script>)/i,lookbehind:true,inside:Prism.languages.javascript,alias:"language-javascript"}});
+_textSearch:{type:HTMLElement,value:function(){return this.$$("output")}},query:{type:String,observer:"_queryChanged"},debug:Boolean},behaviors:[ArcBehaviors.TextSearchBehavior],detached:function(){this._removeWorker()},ready:function(){this._isReady=true;if(this.json)this._changed(this.json)},_removeWorker:function(){if(this._worker){this._worker.removeEventListener("message",this._workerDataHandler);this._worker.removeEventListener("error",this._workerErrorHandler);this._worker.terminate();this._worker=
+undefined;window.URL.revokeObjectURL(this._workerUrl);this._workerUrl=undefined}},_clearOutput:function(){var node=this.$$("output");node.innerHTML=""},_writeOutput:function(text){var node=this.$$("output");node.innerHTML=text},_changed:function(json){if(!this._isReady)return;this._setIsError(false);this._clearOutput();if(json===undefined)return;var html;if(json===null){html='\x3cdiv class\x3d"prettyPrint"\x3e\x3cspan class\x3d"nullValue"\x3enull';html+="\x3c/span\x3e\x3c/div\x3e";this._writeOutput(html);
+this._setShowOutput(true);return}if(json===false){html='\x3cdiv class\x3d"prettyPrint"\x3e\x3cspan class\x3d"booleanValue"\x3efalse';html+="\x3c/span\x3e\x3c/div\x3e";this._writeOutput(html);this._setShowOutput(true);return}this._setWorking(true);var worker=this._worker;if(!worker){var script=this.$$('script[type\x3d"text/js-worker"]');var blob=new Blob([script.textContent],{type:"text/javascript"});this._workerUrl=window.URL.createObjectURL(blob);worker=new Worker(this._workerUrl);worker.addEventListener("message",
+this._workerDataHandler);worker.addEventListener("error",this._workerErrorHandler);this._worker=worker}var debug=this.debug;var ua=navigator.userAgent;if(ua.indexOf("MSIE ")!==-1||ua.indexOf("Trident")!==-1)debug=false;worker.postMessage({json:json,raw:this.raw,cssPrefix:this.nodeName.toLowerCase()+" style-scope ",debug:debug})},_workerData:function(e){var data=e.data;if(data.error)this._setIsError(true);this._writeOutput(data.message);this._setWorking(false);if(this.debug&&data.measurement)if(data.measurement.items&&
+data.measurement.items.length){console.groupCollapsed("JSON viewer parse measurements");console.table(data.measurement.items);console.groupEnd()}this.fire("json-viewer-parsed")},_workerError:function(){this._setIsError(true);this._setWorking(false);this.fire("json-viewer-parsed")},_computeShowOutput:function(working,isError,json){if(working)return false;if(isError)return true;return!!json&&json!==null&&json!==false},_handleDisplayClick:function(e){if(!e.target)return;if(e.target.nodeName==="A"){e.preventDefault();
+this.fire("action-link-change",{url:e.target.getAttribute("href")});return}var toggleId=e.target.dataset.toggle;if(!toggleId)return;var parent=Polymer.dom(this.root).querySelector('div[data-element\x3d"'+toggleId+'"]');if(!parent)return;var expanded=parent.dataset.expanded;if(!expanded||expanded==="true")parent.dataset.expanded="false";else parent.dataset.expanded="true"},_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeActionsPanelClass:function(showOutput){var clazz=
+"actions-panel";if(!showOutput)clazz+=" hidden";return clazz}});</script></dom-module><script data-manual="">var _self=typeof window!=="undefined"?window:typeof WorkerGlobalScope!=="undefined"&&self instanceof WorkerGlobalScope?self:{};
+var Prism=function(){var lang=/\blang(?:uage)?-(\w+)\b/i;var uniqueId=0;var _=_self.Prism={manual:_self.Prism&&_self.Prism.manual,disableWorkerMessageHandler:_self.Prism&&_self.Prism.disableWorkerMessageHandler,util:{encode:function(tokens){if(tokens instanceof Token)return new Token(tokens.type,_.util.encode(tokens.content),tokens.alias);else if(_.util.type(tokens)==="Array")return tokens.map(_.util.encode);else return tokens.replace(/&/g,"\x26amp;").replace(/</g,"\x26lt;").replace(/\u00a0/g," ")},
+type:function(o){return Object.prototype.toString.call(o).match(/\[object (\w+)\]/)[1]},objId:function(obj){if(!obj["__id"])Object.defineProperty(obj,"__id",{value:++uniqueId});return obj["__id"]},clone:function(o){var type=_.util.type(o);switch(type){case "Object":var clone={};for(var key in o)if(o.hasOwnProperty(key))clone[key]=_.util.clone(o[key]);return clone;case "Array":return o.map(function(v){return _.util.clone(v)})}return o}},languages:{extend:function(id,redef){var lang=_.util.clone(_.languages[id]);
+for(var key in redef)lang[key]=redef[key];return lang},insertBefore:function(inside,before,insert,root){root=root||_.languages;var grammar=root[inside];if(arguments.length==2){insert=arguments[1];for(var newToken in insert)if(insert.hasOwnProperty(newToken))grammar[newToken]=insert[newToken];return grammar}var ret={};for(var token in grammar)if(grammar.hasOwnProperty(token)){if(token==before)for(var newToken in insert)if(insert.hasOwnProperty(newToken))ret[newToken]=insert[newToken];ret[token]=grammar[token]}_.languages.DFS(_.languages,
+function(key,value){if(value===root[inside]&&key!=inside)this[key]=ret});return root[inside]=ret},DFS:function(o,callback,type,visited){visited=visited||{};for(var i in o)if(o.hasOwnProperty(i)){callback.call(o,i,o[i],type||i);if(_.util.type(o[i])==="Object"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,null,visited)}else if(_.util.type(o[i])==="Array"&&!visited[_.util.objId(o[i])]){visited[_.util.objId(o[i])]=true;_.languages.DFS(o[i],callback,i,visited)}}}},
+plugins:{},highlightAll:function(async,callback){var env={callback:callback,selector:'code[class*\x3d"language-"], [class*\x3d"language-"] code, code[class*\x3d"lang-"], [class*\x3d"lang-"] code'};_.hooks.run("before-highlightall",env);var elements=env.elements||document.querySelectorAll(env.selector);for(var i=0,element;element=elements[i++];)_.highlightElement(element,async===true,env.callback)},highlightElement:function(element,async,callback){var language,grammar,parent=element;while(parent&&
+!lang.test(parent.className))parent=parent.parentNode;if(parent){language=(parent.className.match(lang)||[,""])[1].toLowerCase();grammar=_.languages[language]}element.className=element.className.replace(lang,"").replace(/\s+/g," ")+" language-"+language;if(element.parentNode){parent=element.parentNode;if(/pre/i.test(parent.nodeName))parent.className=parent.className.replace(lang,"").replace(/\s+/g," ")+" language-"+language}var code=element.textContent;var env={element:element,language:language,grammar:grammar,
+code:code};_.hooks.run("before-sanity-check",env);if(!env.code||!env.grammar){if(env.code){_.hooks.run("before-highlight",env);env.element.textContent=env.code;_.hooks.run("after-highlight",env)}_.hooks.run("complete",env);return}_.hooks.run("before-highlight",env);if(async&&_self.Worker){var worker=new Worker(_.filename);worker.onmessage=function(evt){env.highlightedCode=evt.data;_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&callback.call(env.element);_.hooks.run("after-highlight",
+env);_.hooks.run("complete",env)};worker.postMessage(JSON.stringify({language:env.language,code:env.code,immediateClose:true}))}else{env.highlightedCode=_.highlight(env.code,env.grammar,env.language);_.hooks.run("before-insert",env);env.element.innerHTML=env.highlightedCode;callback&&callback.call(element);_.hooks.run("after-highlight",env);_.hooks.run("complete",env)}},highlight:function(text,grammar,language){var tokens=_.tokenize(text,grammar);return Token.stringify(_.util.encode(tokens),language)},
+matchGrammar:function(text,strarr,grammar,index,startPos,oneshot,target){var Token=_.Token;for(var token in grammar){if(!grammar.hasOwnProperty(token)||!grammar[token])continue;if(token==target)return;var patterns=grammar[token];patterns=_.util.type(patterns)==="Array"?patterns:[patterns];for(var j=0;j<patterns.length;++j){var pattern=patterns[j],inside=pattern.inside,lookbehind=!!pattern.lookbehind,greedy=!!pattern.greedy,lookbehindLength=0,alias=pattern.alias;if(greedy&&!pattern.pattern.global){var flags=
+pattern.pattern.toString().match(/[imuy]*$/)[0];pattern.pattern=RegExp(pattern.pattern.source,flags+"g")}pattern=pattern.pattern||pattern;for(var i=index,pos=startPos;i<strarr.length;pos+=strarr[i].length,++i){var str=strarr[i];if(strarr.length>text.length)return;if(str instanceof Token)continue;pattern.lastIndex=0;var match=pattern.exec(str),delNum=1;if(!match&&greedy&&i!=strarr.length-1){pattern.lastIndex=pos;match=pattern.exec(text);if(!match)break;var from=match.index+(lookbehind?match[1].length:
+0),to=match.index+match[0].length,k=i,p=pos;for(var len=strarr.length;k<len&&(p<to||!strarr[k].type&&!strarr[k-1].greedy);++k){p+=strarr[k].length;if(from>=p){++i;pos=p}}if(strarr[i]instanceof Token||strarr[k-1].greedy)continue;delNum=k-i;str=text.slice(pos,p);match.index-=pos}if(!match){if(oneshot)break;continue}if(lookbehind)lookbehindLength=match[1].length;var from=match.index+lookbehindLength,match=match[0].slice(lookbehindLength),to=from+match.length,before=str.slice(0,from),after=str.slice(to);
+var args=[i,delNum];if(before){++i;pos+=before.length;args.push(before)}var wrapped=new Token(token,inside?_.tokenize(match,inside):match,alias,match,greedy);args.push(wrapped);if(after)args.push(after);Array.prototype.splice.apply(strarr,args);if(delNum!=1)_.matchGrammar(text,strarr,grammar,i,pos,true,token);if(oneshot)break}}}},tokenize:function(text,grammar,language){var strarr=[text];var rest=grammar.rest;if(rest){for(var token in rest)grammar[token]=rest[token];delete grammar.rest}_.matchGrammar(text,
+strarr,grammar,0,0,false);return strarr},hooks:{all:{},add:function(name,callback){var hooks=_.hooks.all;hooks[name]=hooks[name]||[];hooks[name].push(callback)},run:function(name,env){var callbacks=_.hooks.all[name];if(!callbacks||!callbacks.length)return;for(var i=0,callback;callback=callbacks[i++];)callback(env)}}};var Token=_.Token=function(type,content,alias,matchedStr,greedy){this.type=type;this.content=content;this.alias=alias;this.length=(matchedStr||"").length|0;this.greedy=!!greedy};Token.stringify=
+function(o,language,parent){if(typeof o=="string")return o;if(_.util.type(o)==="Array")return o.map(function(element){return Token.stringify(element,language,o)}).join("");var env={type:o.type,content:Token.stringify(o.content,language,parent),tag:"span",classes:["token",o.type],attributes:{},language:language,parent:parent};if(o.alias){var aliases=_.util.type(o.alias)==="Array"?o.alias:[o.alias];Array.prototype.push.apply(env.classes,aliases)}_.hooks.run("wrap",env);var attributes=Object.keys(env.attributes).map(function(name){return name+
+'\x3d"'+(env.attributes[name]||"").replace(/"/g,"\x26quot;")+'"'}).join(" ");return"\x3c"+env.tag+' class\x3d"'+env.classes.join(" ")+'"'+(attributes?" "+attributes:"")+"\x3e"+env.content+"\x3c/"+env.tag+"\x3e"};if(!_self.document){if(!_self.addEventListener)return _self.Prism;if(!_.disableWorkerMessageHandler)_self.addEventListener("message",function(evt){var message=JSON.parse(evt.data),lang=message.language,code=message.code,immediateClose=message.immediateClose;_self.postMessage(_.highlight(code,
+_.languages[lang],lang));if(immediateClose)_self.close()},false);return _self.Prism}var script=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();if(script){_.filename=script.src;if(!_.manual&&!script.hasAttribute("data-manual"))if(document.readyState!=="loading")if(window.requestAnimationFrame)window.requestAnimationFrame(_.highlightAll);else window.setTimeout(_.highlightAll,16);else document.addEventListener("DOMContentLoaded",_.highlightAll)}return _self.Prism}();
+if(typeof module!=="undefined"&&module.exports)module.exports=Prism;if(typeof global!=="undefined")global.Prism=Prism;
+Prism.languages.markup={"comment":/\x3c!--[\s\S]*?-- >/,"prolog":/<\?[\s\S]+?\?>/,"doctype":/<!DOCTYPE[\s\S]+?>/i,"cdata":/<!\[CDATA\[[\s\S]*?]]\x3e/i,"tag":{pattern:/<\/?(?!\d)[^\s>\/=$<]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{"tag":{pattern:/^<\/?[^\s>\/]+/i,inside:{"punctuation":/^<\/?/,"namespace":/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/i,inside:{"punctuation":[/^=/,{pattern:/(^|[^\\])["']/,lookbehind:true}]}},
+"punctuation":/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{"namespace":/^[^\s>\/:]+:/}}}},"entity":/&#?[\da-z]{1,8};/i};Prism.languages.markup["tag"].inside["attr-value"].inside["entity"]=Prism.languages.markup["entity"];Prism.hooks.add("wrap",function(env){if(env.type==="entity")env.attributes["title"]=env.content.replace(/&amp;/,"\x26")});Prism.languages.xml=Prism.languages.markup;Prism.languages.html=Prism.languages.markup;Prism.languages.mathml=Prism.languages.markup;Prism.languages.svg=Prism.languages.markup;
+Prism.languages.css={"comment":/\/\*[\s\S]*?\*\//,"atrule":{pattern:/@[\w-]+?.*?(?:;|(?=\s*\{))/i,inside:{"rule":/@[\w-]+/}},"url":/url\((?:(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,"selector":/[^{}\s][^{};]*?(?=\s*\{)/,"string":{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:true},"property":/[\w-]+(?=\s*:)/i,"important":/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,"punctuation":/[(){};:]/};Prism.languages.css["atrule"].inside.rest=Prism.util.clone(Prism.languages.css);
+if(Prism.languages.markup){Prism.languages.insertBefore("markup","tag",{"style":{pattern:/(<style[\s\S]*?>)[\s\S]*?(?=<\/style>)/i,lookbehind:true,inside:Prism.languages.css,alias:"language-css"}});Prism.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:Prism.languages.markup.tag.inside},"punctuation":/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:Prism.languages.css}},alias:"language-css"}},
+Prism.languages.markup.tag)}
+Prism.languages.clike={"comment":[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:true},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:true}],"string":{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:true},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:true,inside:{punctuation:/[.\\]/}},"keyword":/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,"boolean":/\b(?:true|false)\b/,
+"function":/[a-z0-9_]+(?=\()/i,"number":/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)\b/i,"operator":/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,"punctuation":/[{}[\];(),.:]/};
+Prism.languages.javascript=Prism.languages.extend("clike",{"keyword":/\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/,"number":/\b-?(?:0[xX][\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+|\d*\.?\d+(?:[Ee][+-]?\d+)?|NaN|Infinity)\b/,"function":/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\s*\()/i,
+"operator":/-[-=]?|\+[+=]?|!=?=?|<<?=?|>>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/});Prism.languages.insertBefore("javascript","keyword",{"regex":{pattern:/(^|[^/])\/(?!\/)(\[[^\]\r\n]+]|\\.|[^/\\\[\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:true,greedy:true},"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)|[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)\s*=>))/i,alias:"function"}});
+Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,greedy:true,inside:{"interpolation":{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},"string":/[\s\S]+/}}});if(Prism.languages.markup)Prism.languages.insertBefore("markup","tag",{"script":{pattern:/(<script[\s\S]*?>)[\s\S]*?(?=<\/script>)/i,lookbehind:true,inside:Prism.languages.javascript,alias:"language-javascript"}});
 Prism.languages.js=Prism.languages.javascript;
-(function(){if(typeof self==="undefined"||!self.Prism||!self.document||!document.querySelector)return;self.Prism.fileHighlight=function(){var Extensions={"js":"javascript","py":"python","rb":"ruby","ps1":"powershell","psm1":"powershell","sh":"bash","bat":"batch","h":"c","tex":"latex"};if(Array.prototype.forEach)Array.prototype.slice.call(document.querySelectorAll("pre[data-src]")).forEach(function(pre){var src=pre.getAttribute("data-src");var language,parent=pre;var lang=/\blang(?:uage)?-(?!\*)(\w+)\b/i;
-while(parent&&!lang.test(parent.className))parent=parent.parentNode;if(parent)language=(pre.className.match(lang)||[,""])[1];if(!language){var extension=(src.match(/\.(\w+)$/)||[,""])[1];language=Extensions[extension]||extension}var code=document.createElement("code");code.className="language-"+language;pre.textContent="";code.textContent="Loading\u2026";pre.appendChild(code);var xhr=new XMLHttpRequest;xhr.open("GET",src,true);xhr.onreadystatechange=function(){if(xhr.readyState==4)if(xhr.status<400&&
-xhr.responseText){code.textContent=xhr.responseText;Prism.highlightElement(code)}else if(xhr.status>=400)code.textContent="\u2716 Error "+xhr.status+" while fetching file: "+xhr.statusText;else code.textContent="\u2716 Error: File does not exist or is empty"};xhr.send(null)})};document.addEventListener("DOMContentLoaded",self.Prism.fileHighlight)})();</script><dom-module id="prism-styles" assetpath="bower_components/prism-highlight/"><template><style>code[class*="language-"],
+(function(){if(typeof self==="undefined"||!self.Prism||!self.document||!document.querySelector)return;self.Prism.fileHighlight=function(){var Extensions={"js":"javascript","py":"python","rb":"ruby","ps1":"powershell","psm1":"powershell","sh":"bash","bat":"batch","h":"c","tex":"latex"};Array.prototype.slice.call(document.querySelectorAll("pre[data-src]")).forEach(function(pre){var src=pre.getAttribute("data-src");var language,parent=pre;var lang=/\blang(?:uage)?-(?!\*)(\w+)\b/i;while(parent&&!lang.test(parent.className))parent=
+parent.parentNode;if(parent)language=(pre.className.match(lang)||[,""])[1];if(!language){var extension=(src.match(/\.(\w+)$/)||[,""])[1];language=Extensions[extension]||extension}var code=document.createElement("code");code.className="language-"+language;pre.textContent="";code.textContent="Loading\u2026";pre.appendChild(code);var xhr=new XMLHttpRequest;xhr.open("GET",src,true);xhr.onreadystatechange=function(){if(xhr.readyState==4)if(xhr.status<400&&xhr.responseText){code.textContent=xhr.responseText;
+Prism.highlightElement(code)}else if(xhr.status>=400)code.textContent="\u2716 Error "+xhr.status+" while fetching file: "+xhr.statusText;else code.textContent="\u2716 Error: File does not exist or is empty"};xhr.send(null)})};document.addEventListener("DOMContentLoaded",self.Prism.fileHighlight)})();</script><dom-module id="prism-styles" assetpath="bower_components/prism-highlight/"><template><style>code[class*="language-"],
     pre[class*="language-"]{color:black;background:none;text-shadow:0 1px white;font-family:Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;direction:ltr;text-align:left;white-space:pre-wrap;word-spacing:normal;word-break:break-all;word-wrap:break-word;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}pre[class*="language-"]::-moz-selection,
     pre[class*="language-"]::-moz-selection,
     code[class*="language-"]::-moz-selection,
@@ -2676,39 +2756,44 @@ xhr.responseText){code.textContent=xhr.responseText;Prism.highlightElement(code)
     .token.keyword{color:#07a;}.token.function{color:#DD4A68;}.token.regex,
     .token.important,
     .token.variable{color:#e90;}.token.important,
-    .token.bold{font-weight:bold;}.token.italic{font-style:italic;}.token.entity{cursor:help;}</style></template></dom-module><dom-module id="prism-highlight" assetpath="bower_components/prism-highlight/"><template><style include="prism-styles">:host{display:block;@apply (--prism-highlight);}pre{-webkit-user-select:text;margin:8px;@apply (--prism-highlight-code);}paper-progress{width:100%;}.arc-search-mark.selected{background-color:var(--prism-highlight-mark-selected, #ff9632);}</style><pre class="parsed-content"><code id="output" class="language-" on-tap="_handleLinks"></code></pre><div hidden$="[[!hasMore]]"><paper-button raised="" on-tap="_loadNext">Show next [[maxRead]] lines</paper-button><paper-button raised="" on-tap="_loadAll">Display all</paper-button></div><paper-progress indeterminate="" hidden$="[[!working]]"></paper-progress></template><script>(function(){var importLocation="";(function(){var url;if(window.currentImport&&window.currentImport.URL){url=window.currentImport.URL;if(window.currentImport._URL)url=window.currentImport._URL}else if(window.currentImport._URL)url=window.currentImport._URL;else url=window.location.href;if(url==="about:blank")importLocation="../";else{var path=url.substr(url.indexOf("/",8));path=path.substr(0,path.lastIndexOf("/")+1);if(path.indexOf("/test")!==-1||path.indexOf("/demo")!==-1){path=path.substr(0,path.length-
-1);path=path.substr(0,path.lastIndexOf("/")+1)}importLocation=path}})();Polymer({is:"prism-highlight",properties:{code:String,lang:String,tokenized:{type:Array,readOnly:true},hasMore:{type:Boolean,readOnly:true,computed:"_computeHasMore(tokenized)"},maxRead:{type:Number,value:500},working:{type:Boolean,value:false,readOnly:true},textSearch:{type:HTMLElement,value:function(){return this.$.output}},importLocation:{type:String,value:function(){return importLocation}}},observers:["_highlight(code, lang)"],
-detached:function(){if(this.worker){this.worker.terminate();this.worker.onmessage=null;this.worker.onerror=null;this.worker=null}},reset:function(){this._setTokenized(undefined);this._setWorking(false);this.$.output.innerHTML=""},_highlight:function(){this.reset();this.debounce("_highlight",function(){var message={"language":this.lang,"code":this.code,"payload":"tokenize"};this._runWorker(message)},10)},_runWorker:function(message){this._setWorking(true);if(this.worker){this.worker.postMessage(message);
-return}this.worker=new Worker(this.importLocation+"workers/prism-worker.js");this.worker.onmessage=this._onWorkerData.bind(this);this.worker.onerror=this._onWorkerError.bind(this);this.worker.postMessage(message)},_onWorkerData:function(e){this._setWorking(false);switch(e.data.payload){case "tokenize":this._onTokenized(e.data.tokens);break;case "stringify":this._display(e.data.html);this.fire("prism-highlight-parsed");break}},_onWorkerError:function(e){this._setWorking(false);var html="\x3cerror-message\x3e\x3cp\x3e"+
-e.message+"\x3c/p\x3e\x3c/error-message\x3e";this._display(html);this.fire("app-log",{message:e,level:"error"});this.fire("error",{message:e.message});console.error("Highlight worker error",e)},_onTokenized:function(tokens){this._setTokenized(tokens);this._loadNext()},_loadNext:function(){if(!this.tokenized||this.tokenized.length===0)return;var tokens=this.splice("tokenized",0,this.maxRead);var message={"tokens":tokens,"payload":"stringify"};this._runWorker(message);if(this.tokenized.length===0)this._setTokenized(undefined)},
-_loadAll:function(){var tokens=this.tokenized;this._setTokenized(undefined);var message={"tokens":tokens,"payload":"stringify"};this._runWorker(message)},_display:function(html){this.$.output.innerHTML+=html},_computeHasMore:function(tokenized){if(!tokenized||tokenized.length===0)return false;return true},_handleLinks:function(e){var el=e.target;if(el.nodeName!=="A")return;e.preventDefault();var url=el.href;this.fire("url-change-action",{url:url})}})})();</script></dom-module><dom-module id="response-highlighter" assetpath="bower_components/response-highlighter/"><template><style>:host{display:block;@apply (--response-highlighter);}.actions-panel{@apply (--layout-horizontal);@apply (--layout-center);@apply (--response-highlighter-action-bar);}.actions-panel.hidden{display:none;}.no-info{@apply (--no-info-message);}</style><div class$="[[_computeActionsPanelClass(hasResponse)]]"><content select="[content-action]"></content></div><prism-highlight import-location="/bower_components/prism-highlight/" max-read="[[maxRead]]" hidden$="[[!hasResponse]]" id="prism" code="[[responseText]]" lang$="[[contentType]]"></prism-highlight><p class="no-info" hidden$="[[hasResponse]]">Nothing to dispplay.</p></template><script>Polymer({is:"response-highlighter",behaviors:[ArcBehaviors.TextSearchBehavior],properties:{responseText:String,hasResponse:{type:Boolean,value:false,computed:"_computeHasResponse(responseText)"},contentType:String,_textSearch:{type:HTMLElement,value:function(){return this.$.prism.$.output}},query:{type:String,observer:"_queryChanged"},maxRead:Number},_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeHasResponse:function(responseText){return!!responseText},
-_computeActionsPanelClass:function(hasResponse){var clazz="actions-panel";if(!hasResponse)clazz+=" hidden";return clazz}});</script></dom-module><dom-module id="response-body-view" assetpath="bower_components/response-body-view/"><template><style>:host{display:block;position:relative;}#webView{width:100%;height:100%;background-color:#fff;border:0;margin-top:12px;}#saveDialog{min-width:320px;}.donnload-section{@apply (--layout-vertical);@apply (--layout-center);}.download-file-icon{width:64px;height:64px;color:var(--response-body-view-download-icon, --accent-color);}paper-icon-button[active]{background-color:var(--response-raw-viewer-button-active, #BDBDBD);}.close-preview{position:absolute;top:8px;right:12px;background:#fff;color:rgba(0,0,0,0.74);}</style><iron-pages selected="{{activeView}}" hidden$="[[contentPreview]]"><section><response-raw-viewer response-text="[[_raw]]" wrap-text$="[[rawTextWrap]]"><paper-icon-button content-action="" title="Copy content to clipboard" icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button content-action="" title="Save content to file" icon="arc:archive" on-tap="_saveFile"></paper-icon-button><paper-icon-button content-action="" title="View with highlighted syntax" icon="arc:code" toggles="" active="" on-tap="toggleViewSource"></paper-icon-button><paper-icon-button content-action="" title="Preview response" icon="arc:visibility" toggles="" active="{{contentPreview}}"></paper-icon-button><paper-icon-button content-action="" title="Wrap or unwrap text" icon="arc:wrap-text" toggles="" active="{{rawTextWrap}}"></paper-icon-button></response-raw-viewer></section><section><template is="dom-if" if="[[isParsed]]" restamp="true"><response-highlighter response-text="[[_raw]]" content-type="[[contentType]]"><paper-icon-button content-action="" title="Copy content to clipboard" icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button content-action="" title="Save content to file" icon="arc:archive" on-tap="_saveFile"></paper-icon-button><paper-icon-button content-action="" title="View raw response (without syntax highlighting)" icon="arc:code" on-tap="toggleViewSource"></paper-icon-button><paper-icon-button content-action="" title="Preview response" icon="arc:visibility" toggles="" active="{{contentPreview}}"></paper-icon-button></response-highlighter></template></section><section><template is="dom-if" if="[[isJson]]" restamp="true"><json-viewer json="[[_raw]]"><paper-icon-button content-action="" title="Copy content to clipboard" icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button content-action="" title="Save content to file" icon="arc:archive" on-tap="_saveFile"></paper-icon-button><paper-icon-button content-action="" title="View raw response (without syntax highlighting)" icon="arc:code" on-tap="toggleViewSource"></paper-icon-button><paper-icon-button content-action="" title="View in a structured table" icon="arc:view-column" on-tap="toggleViewJsonTabble"></paper-icon-button></json-viewer></template></section><section><template is="dom-if" if="[[isXml]]" restamp="true"><xml-viewer xml="[[_raw]]"><paper-icon-button content-action="" title="Copy content to clipboard" icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button content-action="" title="Save content to file" icon="arc:archive" on-tap="_saveFile"></paper-icon-button><paper-icon-button content-action="" title="View raw response (without syntax highlighting)" icon="arc:code" on-tap="toggleViewSource"></paper-icon-button></xml-viewer></template></section><section><template is="dom-if" if="[[isJsonTable]]"><json-table json="[[_raw]]"><paper-icon-button content-action="" title="Copy content to clipboard" icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-icon-button content-action="" title="Save content to file" icon="arc:archive" on-tap="_saveFile"></paper-icon-button><paper-icon-button content-action="" title="View raw response (without syntax highlighting)" icon="arc:code" on-tap="toggleViewSource"></paper-icon-button><paper-icon-button content-action="" title="View in a structured table" icon="arc:view-column" on-tap="toggleViewJsonTabble" toggles="" active=""></paper-icon-button></json-table></template></section></iron-pages><iframe id="webView" hidden$="[[!contentPreview]]"></iframe><paper-icon-button class="close-preview" title="Close the preview" icon="arc:close" on-tap="closePreview" hidden$="[[!contentPreview]]"></paper-icon-button><paper-dialog id="saveDialog" on-iron-overlay-closed="_downloadDialogClose"><h2>Save to file</h2><div><p>Your file is ready to download. Click the icon below to save it to your local drive.</p><div class="donnload-section"><a href$="[[downloadFileUrl]]" download$="[[downloadFileName]]" on-tap="_downloadIconTap" target="_blank"><paper-icon-button icon="arc:file-download" class="download-file-icon" title="Download file"></paper-icon-button></a></div></div><div class="buttons"><paper-button dialog-dismiss="" autofocus="">Close</paper-button></div></paper-dialog><clipboard-copy content="[[_raw]]"></clipboard-copy><paper-toast id="safariDownload" text="Safari doesn't support file download. Please, use other browser."></paper-toast><script id="preview" type="text/html"><!DOCTYPE html><html><head><title>Advanced REST client - preview</title><style>
+    .token.bold{font-weight:bold;}.token.italic{font-style:italic;}.token.entity{cursor:help;}</style></template></dom-module><dom-module id="prism-highlight" assetpath="bower_components/prism-highlight/"><template><style include="prism-styles">:host{display:block;@apply (--prism-highlight);}pre{-webkit-user-select:text;margin:8px;@apply (--prism-highlight-code);}paper-progress{width:100%;}.arc-search-mark.selected{background-color:var(--prism-highlight-mark-selected, #ff9632);}</style><pre class="parsed-content"><code id="output" class="language-" on-tap="_handleLinks"></code></pre><div hidden$="[[!hasMore]]"><paper-button raised="" on-tap="_loadNext">Show next [[maxRead]] lines</paper-button><paper-button raised="" on-tap="_loadAll">Display all</paper-button></div><paper-progress indeterminate="" hidden$="[[!working]]"></paper-progress></template><script>(function(){Polymer({is:"prism-highlight",behaviors:[ArcBehaviors.TextSearchBehavior],properties:{code:String,lang:String,tokenized:{type:Array,readOnly:true},hasMore:{type:Boolean,readOnly:true,computed:"_computeHasMore(tokenized)"},maxRead:{type:Number,value:500},working:{type:Boolean,value:false,readOnly:true},_textSearch:{type:HTMLElement,value:function(){return this.$.output}},worker:{type:Object,readOnly:true},tokenizeTimeout:{type:Number,value:5E3}},observers:["_highlight(code, lang)"],detached:function(){this._unregisterWorker()},
+reset:function(){this._setTokenized(undefined);this._setWorking(false);this.$.output.innerHTML=""},_highlight:function(){this.reset();this.debounce("_highlight",function(){var message={"language":this.lang,"code":this.code,"payload":"tokenize"};this._runWorker(message)},10)},_runWorker:function(message){this._setWorking(true);if(!this.worker)this._registerWorker();this.worker.postMessage(message);var timeout=this.tokenizeTimeout;if(timeout)this._tokenizeTimeout=window.setTimeout(this._onTokenizeTimeout.bind(this),
+timeout)},_clearTokenizeTimeout:function(){if(!this._tokenizeTimeout)return;window.clearTimeout(this._tokenizeTimeout);this._tokenizeTimeout=undefined},_registerWorker:function(){if(this.worker)return;var worker=new Worker(this.resolveUrl("workers/prism-worker.js"));this.__workerDataHandler=this.__workerDataHandler?this.__workerDataHandler:this._onWorkerData.bind(this);this.__workerErrorHandler=this.__workerErrorHandler?this.__workerErrorHandler:this._onWorkerError.bind(this);worker.addEventListener("message",
+this.__workerDataHandler);worker.addEventListener("error",this.__workerErrorHandler);this._setWorker(worker)},_unregisterWorker:function(){if(!this.worker)return;this._clearTokenizeTimeout();this.worker.removeEventListener("message",this.__workerDataHandler);this.worker.removeEventListener("error",this.__workerErrorHandler);this.worker.terminate();this._setWorker(undefined)},_onWorkerData:function(e){this._setWorking(false);this._clearTokenizeTimeout();switch(e.data.payload){case "tokenize":this._onTokenized(e.data.tokens);
+break;case "stringify":this._display(e.data.html);this.fire("prism-highlight-parsed");break}},_onWorkerError:function(e){this._setWorking(false);this._clearTokenizeTimeout();var html="\x3cerror-message\x3e\x3cp\x3e"+e.message+"\x3c/p\x3e\x3c/error-message\x3e";this._display(html);this.fire("app-log",{message:e,level:"error"});this.fire("error",{message:e.message});console.error("Highlight worker error",e)},_onTokenized:function(tokens){this._setTokenized(tokens);this._loadNext()},_loadNext:function(){if(!this.tokenized||
+this.tokenized.length===0)return;var tokens=this.splice("tokenized",0,this.maxRead);var message={"tokens":tokens,"payload":"stringify"};this._runWorker(message);if(this.tokenized.length===0)this._setTokenized(undefined)},_loadAll:function(){var tokens=this.tokenized;this._setTokenized(undefined);var message={"tokens":tokens,"payload":"stringify"};this._runWorker(message)},_display:function(html){this.$.output.innerHTML+=html},_computeHasMore:function(tokenized){if(!tokenized||tokenized.length===0)return false;
+return true},_handleLinks:function(e){var el=e.target;if(el.nodeName!=="A")return;e.preventDefault();var url=el.href;this.fire("url-change-action",{url:url})},_onTokenizeTimeout:function(){this._setWorking(false);this._unregisterWorker();var message="Highlighter is unable to highlight the syntax.";this.fire("prism-highlight-timeout",{message:message},{cancelable:true})}})})();</script></dom-module><dom-module id="response-highlighter" assetpath="bower_components/response-highlighter/"><template><style>:host{display:block;@apply (--response-highlighter);}.actions-panel{@apply (--layout-horizontal);@apply (--layout-center);@apply (--response-highlighter-action-bar);}.actions-panel.hidden{display:none;}.no-info{@apply (--no-info-message);}</style><div class$="[[_computeActionsPanelClass(hasResponse)]]"><content select="[content-action]"></content></div><prism-highlight import-location="/bower_components/prism-highlight/" max-read="[[maxRead]]" hidden$="[[!hasResponse]]" id="prism" code="[[responseText]]" lang$="[[lang]]"></prism-highlight><p class="no-info" hidden$="[[hasResponse]]">Nothing to dispplay.</p></template><script>Polymer({is:"response-highlighter",behaviors:[ArcBehaviors.TextSearchBehavior],properties:{responseText:String,hasResponse:{type:Boolean,value:false,computed:"_computeHasResponse(responseText)"},contentType:String,_textSearch:{type:HTMLElement,value:function(){return this.$.prism.$.output}},query:{type:String,observer:"_queryChanged"},maxRead:Number,lang:{type:String,computed:"_computeLang(contentType)"}},_queryChanged:function(query){if(!query){this.cleanMarked();return}this.mark(query)},_computeHasResponse:function(responseText){return!!responseText},
+_computeActionsPanelClass:function(hasResponse){var clazz="actions-panel";if(!hasResponse)clazz+=" hidden";return clazz},_computeLang:function(contentType){if(!contentType)return undefined;if(!contentType.indexOf)return undefined;if(contentType.indexOf(";")!==-1)return contentType.split(";")[0];return contentType}});</script></dom-module><dom-module id="response-body-view" assetpath="bower_components/response-body-view/"><template><style>:host{display:block;position:relative;@apply --response-body-view;}#webView{width:100%;height:100%;background-color:#fff;border:0;margin-top:12px;}#saveDialog{min-width:320px;}paper-icon-button[active]{background-color:var(--response-raw-viewer-button-active, #BDBDBD);border-radius:50%;}.close-preview{position:absolute;top:8px;right:12px;background:#fff;color:rgba(0,0,0,0.74);@apply --response-body-view-preview-close;}[hidden]{display:none !important;}.content-actions{@apply --layout-horizontal;@apply --layout-center;@apply --response-body-view-content-actions;}.dialog-title{@apply --arc-font-common-base;@apply --response-body-view-dialog-title;}.buttons{@apply --response-body-view-dialog-buttons;}.button-dismiss{@apply --response-body-view-dialog-close;}.button-dismiss:hover{@apply --response-body-view-dialog-close-hover;}.button-download{@apply --response-body-view-dialog-download;}.button-download:hover{@apply (--response-body-view-dialog-download-hover);}.download-link{text-decoration:none;color:inherit;outline:none;}</style><template is="dom-if" if="[[hasData]]"><div class="content-actions" hidden$="[[contentPreview]]"><span><paper-icon-button icon="arc:content-copy" on-tap="_copyToClipboard"></paper-icon-button><paper-tooltip animation-delay="200">Copy content to clipboard</paper-tooltip></span><span><paper-icon-button icon="arc:archive" on-tap="_saveFile"></paper-icon-button><paper-tooltip animation-delay="200">Save content to file</paper-tooltip></span><span><paper-icon-button icon="arc:code" toggles="" active="{{rawView}}"></paper-icon-button><paper-tooltip animation-delay="200">Toogle raw response view</paper-tooltip></span><template is="dom-if" if="[[_computeRenderPreviewResponse(activeView)]]"><span><paper-icon-button icon="arc:visibility" toggles="" active="{{contentPreview}}"></paper-icon-button><paper-tooltip animation-delay="200">Preview response</paper-tooltip></span></template><template is="dom-if" if="[[isJson]]"><span><paper-icon-button icon="arc:view-column" toggles="" active="{{jsonTableView}}"></paper-icon-button><paper-tooltip animation-delay="200">Toggle structured table view</paper-tooltip></span></template><template is="dom-if" if="[[_computeRenderWithRaw(activeView)]]"><span><paper-icon-button icon="arc:wrap-text" toggles="" active="{{rawTextWrap}}"></paper-icon-button><paper-tooltip animation-delay="200">Toggle text wrapping</paper-tooltip></span></template></div></template><iron-pages selected="{{activeView}}" hidden$="[[contentPreview]]"><section><response-raw-viewer response-text="[[_raw]]" wrap-text$="[[rawTextWrap]]"></response-raw-viewer></section><section><template is="dom-if" if="[[isParsed]]" restamp="true"><response-highlighter response-text="[[_raw]]" content-type="[[contentType]]"></response-highlighter></template></section><section><template is="dom-if" if="[[isJson]]" restamp="true"><json-viewer json="[[_raw]]"></json-viewer></template></section><section><template is="dom-if" if="[[isXml]]" restamp="true"><xml-viewer xml="[[_raw]]"></xml-viewer></template></section><section><template is="dom-if" if="[[_computeRenderJsonTable(isJson, jsonTableView)]]" restamp="true"><json-table json="[[_raw]]"></json-table></template></section></iron-pages><iframe id="webView" hidden$="[[!contentPreview]]"></iframe><paper-icon-button class="close-preview" title="Close the preview" icon="arc:close" on-tap="closePreview" hidden$="[[!contentPreview]]"></paper-icon-button><paper-dialog id="saveDialog" on-iron-overlay-closed="_downloadDialogClose"><h2 class="dialog-title">Saving to file</h2><div><p>Your file is now ready to download.</p></div><div class="buttons"><paper-button class="button-dismiss" dialog-dismiss="">Close</paper-button><a href$="[[downloadFileUrl]]" autofocus="" download$="[[downloadFileName]]" on-tap="_downloadIconTap" target="_blank" class="download-link"><paper-button class="button-download">Download file</paper-button></a></div></paper-dialog><clipboard-copy content="[[_raw]]"></clipboard-copy><paper-toast id="safariDownload" text="Safari doesn't support file download. Please, use other browser."></paper-toast><paper-toast id="highlightTimeout"></paper-toast><script id="preview" type="text/html"><!DOCTYPE html><html><head><title>Advanced REST client - preview</title><style>
         body,html{overflow:auto;margin:0;padding:0}body{margin:16px;min-height:200px}
         </style></head><body></body></html></script></template><script>(function(){window.URL=URL||webkitURL;Polymer({is:"response-body-view",properties:{responseText:{type:String,observer:"_responseTextChanged"},_raw:String,contentType:String,contentPreview:{type:Boolean,value:false,observer:"_contentPreviewChanged"},isParsed:{type:Boolean,value:false,readOnly:true},isJson:{type:Boolean,value:false,readOnly:true},isXml:{type:Boolean,value:false,readOnly:true},activeView:Number,downloadFileUrl:{type:String,readOnly:true},downloadFileName:{type:String,readOnly:true},
-rawTextWrap:Boolean,isSafari:{type:Boolean,value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)},readOnly:true},isJsonTable:{type:Boolean,readOnly:true,observer:"_jsonTableChanged"}},observers:["_contentTypeChanged(contentType, _raw)"],attached:function(){this.listen(window,"storage","_onStorageChanged");this.listen(window,"json-table-state-changed","_onJsonTableStateChanged")},detached:function(){this.unlisten(window,"storage","_onStorageChanged");this.unlisten(window,
-"json-table-state-changed","_onJsonTableStateChanged");if(this.__previewUrl){window.URL.revokeObjectURL(this.__previewUrl);this.__previewUrl=undefined}},_responseTextChanged:function(payload){this._setIsXml(false);this._setIsJson(false);this._setIsParsed(false);if(payload===undefined)return this.set("_raw",undefined);if(payload===null||payload===false)return this.set("_raw",payload);this.set("_raw",undefined);if(!payload)return;this.debounce("set-raw",function(){this.set("_raw",this.responseText)},
-1)},_contentTypeChanged:function(contentType){var parsed=false;var json=false;var xml=false;this.contentPreview=false;if(contentType)if(contentType.indexOf("xml")!==-1){this.activeView=3;xml=true}else if(contentType.indexOf("json")!==-1){this.activeView=2;json=true}else{this.activeView=1;parsed=true}this._setIsXml(xml);this._setIsJson(json);this._setIsParsed(parsed);if(json){var isTable=this._localStorageValueToBoolean(localStorage.jsonTableEnabled);if(this.isJsonTable!==isTable)this._setIsJsonTable(isTable);
-if(this.isJsonTable)this.activeView=4}},_contentPreviewChanged:function(val){if(!this.isAttached)return;if(val)this._openResponsePreview();else this._closeResponsePreview()},_openResponsePreview:function(){if(!this.isAttached)return;var context=this;function onLoad(){context.$.webView.contentWindow.document.body.innerHTML=context._raw;context.async(function(){context._resizePreviewWindow(context.$.webView.contentWindow.document.body.clientHeight)},2)}if(!this.$.webView.src){var blob=new Blob([this.$.preview.textContent],
-{type:"text/html"});this.__previewUrl=window.URL.createObjectURL(blob);this.$.webView.src=this.__previewUrl;this.$.webView.addEventListener("load",function(){onLoad()})}else onLoad()},_closeResponsePreview:function(){if(!this.isAttached)return;this.$.webView.contentWindow.document.body.innerHTML=""},_resizePreviewWindow:function(height){if(!height)this.$.webView.style.height="auto";else this.$.webView.style.height=height+"px"},_copyToClipboard:function(e){var button=Polymer.dom(e).localTarget;var copy=
-this.$$("clipboard-copy");if(copy.copy())button.icon="arc:done";else button.icon="arc:error";this.async(function(){this._resetCopyButtonState(button)},1E3)},_resetCopyButtonState:function(button){button.icon="arc:content-copy"},_saveFile:function(){var e=this.fire("save-content-to-file",{content:this._raw},{cancelable:true});if(e.defaultPrevented)return;if(this.isSafari)this.$.safariDownload.opened=true;else this.saveToFile()},saveToFile:function(){var ext=".";if(this.isJson)ext+="json";else if(this.isXml)ext+=
-"xml";else ext+="txt";var ct=this.contentType||"text/plain";var file=new Blob([this._raw],{type:ct});var fileName="response-"+(new Date).toISOString()+ext;this._setDownloadFileUrl(URL.createObjectURL(file));this._setDownloadFileName(fileName);this.$.saveDialog.opened=true},_downloadIconTap:function(){this.async(function(){this.$.saveDialog.opened=false},250)},_downloadDialogClose:function(){URL.revokeObjectURL(this.downloadFileUrl);this._setDownloadFileUrl(undefined);this._setDownloadFileName(undefined)},
-toggleViewSource:function(){if(this.__parsedView){this.activeView=this.__parsedView;this.__parsedView=undefined;if(this.activeView===2&&this.isJsonTable)this._setIsJsonTable(false)}else{this.__parsedView=this.activeView;this.activeView=0}},toggleViewJsonTabble:function(){if(this.isJsonTable){this.activeView=2;this._setIsJsonTable(false)}else{this.activeView=4;this._setIsJsonTable(true)}},_jsonTableChanged:function(state){if(state===undefined)return;if(localStorage.jsonTableEnabled!==String(state))window.localStorage.setItem("jsonTableEnabled",
-state);this.fire("json-table-state-changed",{enabled:state})},_onStorageChanged:function(e){if(e.key!=="jsonTableEnabled")return;if(!e.newValue)return;var v=this._localStorageValueToBoolean(e.newValue);if(this.isJsonTable!==v)this._setIsJsonTable(v)},_localStorageValueToBoolean:function(value){if(!value)return false;if(value==="true")value=true;else value=false;return value},_onJsonTableStateChanged:function(e){if(e.target===this)return;var enabled=e.detail.enabled;if(enabled!==this.isJsonTable)this._setIsJsonTable(enabled)},
-closePreview:function(){this.contentPreview=false}})})();</script></dom-module><dom-module id="response-view" assetpath="bower_components/response-view/"><template><style>:host{display:block;@apply (--response-view);}.empty-info{@apply (--no-info-message);}</style><response-status-view status-code="[[statusCode]]" status-message="[[statusMessage]]" request-headers="[[requestHeaders]]" response-headers="[[responseHeaders]]" loading-time="[[loadingTime]]" http-message="[[sentHttpMessage]]" redirects="[[redirects]]" redirect-timings="[[redirectTimings]]" timings="[[responseTimings]]" is-xhr="[[isXhr]]" request-url="[[requestUrl]]" request-method="[[requestMethod]]"></response-status-view><template is="dom-if" if="[[hasResponse]]"><template is="dom-if" if="[[!isError]]"><response-body-view import-location="/bower_components/response-body-view/" response-text="[[responseBody]]" content-type="[[contentType]]"></response-body-view></template><template is="dom-if" if="[[isError]]"><response-error-view message="[[responseError.message]]"></response-error-view></template></template><template is="dom-if" if="[[!hasResponse]]"><p class="empty-info">This response does not carry a payload.</p></template></template><script>Polymer({is:"response-view",properties:{response:{type:Response,observer:"_responseChanged"},request:{type:Request,observer:"_requestChanged"},responseError:Object,responseBody:{type:String,notify:true},statusCode:Number,statusMessage:String,requestHeaders:String,responseHeaders:String,contentType:String,responseTimings:Object,loadingTime:Number,sentHttpMessage:String,redirects:Array,redirectTimings:Array,hasResponse:{type:Boolean,value:false,computed:"_computeHasResponse(request)"},isError:{type:Boolean,
+rawTextWrap:Boolean,isSafari:{type:Boolean,value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)},readOnly:true},hasLocalStorage:{type:Boolean,readOnly:true,value:function(){try{localStorage.__test__=true;delete localStorage.__test__;return true}catch(e){return false}}},rawView:Boolean,jsonTableView:Boolean,hasData:{value:false,type:Boolean,computed:"_computeHasData(contentType, _raw)"}},observers:["_contentTypeChanged(contentType, _raw)","_toggleViewSource(rawView)","_jsonTableViewChanged(jsonTableView)"],
+listeners:{"prism-highlight-timeout":"_onPrismHighlightTimeout"},attached:function(){this.listen(window,"storage","_onStorageChanged");this.listen(window,"json-table-state-changed","_onJsonTableStateChanged");this.listen(window,"search-bar-opened-changed","_searchBarOpenedChanged");this.listen(window,"search-bar-input-changed","_searchInputChanged");this.listen(window,"search-bar-search-position-changed","_searchPositionChanged")},detached:function(){this.unlisten(window,"storage","_onStorageChanged");
+this.unlisten(window,"json-table-state-changed","_onJsonTableStateChanged");this.unlisten(window,"search-bar-opened-changed","_searchBarOpenedChanged");this.unlisten(window,"search-bar-input-changed","_searchInputChanged");this.unlisten(window,"search-bar-search-position-changed","_searchPositionChanged");if(this.__previewUrl){window.URL.revokeObjectURL(this.__previewUrl);this.__previewUrl=undefined}},_responseTextChanged:function(payload){this._setIsXml(false);this._setIsJson(false);this._setIsParsed(false);
+if(payload===undefined)return this.set("_raw",undefined);if(payload===null||payload===false)return this.set("_raw",payload);this.set("_raw",undefined);if(!payload)return;this.debounce("set-raw",function(){this.set("_raw",this.responseText)},1)},_computeHasData:function(contentType,_raw){return!!(contentType&&_raw)},_contentTypeChanged:function(contentType){var parsed=false;var json=false;var xml=false;this.contentPreview=false;if(contentType)if(contentType.indexOf("xml")!==-1){this.activeView=3;xml=
+true}else if(contentType.indexOf("json")!==-1){this.activeView=2;json=true}else{this.activeView=1;parsed=true}this._setIsXml(xml);this._setIsJson(json);this._setIsParsed(parsed);if(json)this._ensureJsonTable()},_ensureJsonTable:function(){if(!this.hasLocalStorage)return;var isTable=this._localStorageValueToBoolean(localStorage.jsonTableEnabled);if(this.jsonTableView!==isTable)this.jsonTableView=isTable;if(this.jsonTableView)this.activeView=4;else if(this.activeView===4)this.activeView=2},_contentPreviewChanged:function(val){if(!this.isAttached)return;
+if(val)this._openResponsePreview();else this._closeResponsePreview()},_openResponsePreview:function(){if(!this.isAttached)return;var context=this;function onLoad(){context.$.webView.contentWindow.document.body.innerHTML=context._raw;context.async(function(){context._resizePreviewWindow(context.$.webView.contentWindow.document.body.clientHeight)},2)}if(!this.$.webView.src){var blob=new Blob([this.$.preview.textContent],{type:"text/html"});this.__previewUrl=window.URL.createObjectURL(blob);this.$.webView.src=
+this.__previewUrl;this.$.webView.addEventListener("load",function(){onLoad()})}else onLoad()},_closeResponsePreview:function(){if(!this.isAttached)return;this.$.webView.contentWindow.document.body.innerHTML=""},_resizePreviewWindow:function(height){if(!height)this.$.webView.style.height="auto";else this.$.webView.style.height=height+"px"},_copyToClipboard:function(e){var button=Polymer.dom(e).localTarget;var copy=this.$$("clipboard-copy");if(copy.copy())button.icon="arc:done";else button.icon="arc:error";
+this.async(function(){this._resetCopyButtonState(button)},1E3)},_resetCopyButtonState:function(button){button.icon="arc:content-copy"},_saveFile:function(){var e=this.fire("export-data",{data:this._raw,type:this.contentType,file:"response-data-export"},{cancelable:true});if(e.defaultPrevented)return;if(this.isSafari)this.$.safariDownload.opened=true;else this.saveToFile()},saveToFile:function(){var ext=".";if(this.isJson)ext+="json";else if(this.isXml)ext+="xml";else ext+="txt";var ct=this.contentType||
+"text/plain";var file=new Blob([this._raw],{type:ct});var fileName="response-"+(new Date).toISOString()+ext;this._setDownloadFileUrl(URL.createObjectURL(file));this._setDownloadFileName(fileName);this.$.saveDialog.opened=true},_downloadIconTap:function(){this.async(function(){this.$.saveDialog.opened=false},250)},_downloadDialogClose:function(){URL.revokeObjectURL(this.downloadFileUrl);this._setDownloadFileUrl(undefined);this._setDownloadFileName(undefined)},_toggleViewSource:function(opened){if(!opened){if(!this.__parsedView)return;
+this.activeView=this.__parsedView;this.__parsedView=undefined;if(this.activeView===2&&this.jsonTableView)this.jsonTableView=false}else{if(this.jsonTableView){this._skipJsonTableEvent=true;this.jsonTableView=false;this._skipJsonTableEvent=false}this.__parsedView=this.activeView;this.activeView=0}},_jsonTableViewChanged:function(state){if(state){if(this.rawView){this.__parsedView=undefined;this.rawView=false}this.activeView=4}else this.activeView=2;if(this._skipJsonTableEvent)return;if(this.hasLocalStorage&&
+localStorage.jsonTableEnabled!==String(state))window.localStorage.setItem("jsonTableEnabled",state);this.fire("json-table-state-changed",{enabled:state})},_onStorageChanged:function(e){if(e.key!=="jsonTableEnabled")return;if(!e.newValue)return;var v=this._localStorageValueToBoolean(e.newValue);if(this.jsonTableView!==v){this._skipJsonTableEvent=true;this.jsonTableView=v;this._skipJsonTableEvent=false}},_localStorageValueToBoolean:function(value){if(!value)return false;if(value==="true")value=true;
+else value=false;return value},_onJsonTableStateChanged:function(e){if(e.target===this)return;var enabled=e.detail.enabled;if(enabled!==this.jsonTableView){this._skipJsonTableEvent=true;this.jsonTableView=enabled;this._skipJsonTableEvent=false}},closePreview:function(){this.contentPreview=false},_onPrismHighlightTimeout:function(e){this.__parsedView=this.activeView;this.activeView=0;this.$.highlightTimeout.text=e.detail.message;this.$.highlightTimeout.opened=true},_computeRenderWithRaw:function(activeView){return activeView===
+0?true:false},_computeRenderShowRaw:function(activeView){return activeView===0?false:true},_computeRenderPreviewResponse:function(activeView){return activeView===1?true:false},_computeRenderToggleTable:function(activeView){return activeView===4||activeView===2?true:false},_computeRenderJsonTable:function(isJson,jsonTableView){return!!(isJson&&jsonTableView)},_searchBarOpenedChanged:function(e){this._searchInputChanged(e)},_searchInputChanged:function(e){if(e.detail.lastTarget&&e.detail.lastTarget!==
+this)return;var panel;switch(this.activeView){case 0:panel="response-raw-viewer";break;case 1:panel="response-highlighter";break;case 2:panel="json-viewer";break;case 3:panel="xml-viewer";break;default:return}var element=this.$$(panel);element.cleanMarked();element.mark(e.detail.value);var marked=element.markedCount;this.fire("search-bar-search-mark-count",{count:marked,searchTarget:this})},_searchPositionChanged:function(e){if(e.detail.searchTarget&&e.detail.searchTarget!==this)return;var panel;
+switch(this.activeView){case 0:panel="response-raw-viewer";break;case 1:panel="response-highlighter";break;case 2:panel="json-viewer";break;case 3:panel="xml-viewer";break;default:return}var element=this.$$(panel);element.clearHighlight();element.highlightMarked(e.detail.position)}})})();</script></dom-module><dom-module id="response-view" assetpath="bower_components/response-view/"><template><style>:host{display:block;@apply (--response-view);}.empty-info{@apply (--no-info-message);}</style><response-status-view status-code="[[statusCode]]" status-message="[[statusMessage]]" request-headers="[[requestHeaders]]" response-headers="[[responseHeaders]]" loading-time="[[loadingTime]]" http-message="[[sentHttpMessage]]" redirects="[[redirects]]" redirect-timings="[[redirectTimings]]" timings="[[responseTimings]]" is-xhr="[[isXhr]]" request-url="[[requestUrl]]" request-method="[[requestMethod]]"></response-status-view><template is="dom-if" if="[[hasResponse]]"><template is="dom-if" if="[[!isError]]"><response-body-view import-location="/bower_components/response-body-view/" response-text="[[responseBody]]" content-type="[[contentType]]"></response-body-view></template><template is="dom-if" if="[[isError]]"><response-error-view message="[[responseError.message]]"></response-error-view></template></template><template is="dom-if" if="[[!hasResponse]]"><p class="empty-info">This response does not carry a payload.</p></template></template><script>Polymer({is:"response-view",properties:{response:{type:Response,observer:"_responseChanged"},request:{type:Request,observer:"_requestChanged"},responseError:Object,responseBody:{type:String,notify:true},statusCode:Number,statusMessage:String,requestHeaders:String,responseHeaders:String,contentType:String,responseTimings:Object,loadingTime:Number,sentHttpMessage:String,redirects:Array,redirectTimings:Array,hasResponse:{type:Boolean,value:false,computed:"_computeHasResponse(request)"},isError:{type:Boolean,
 value:false,computed:"_computeIsError(responseError)"},isXhr:{type:Boolean,value:false},requestUrl:String,requestMethod:String},_reset:function(){this.set("statusCode",undefined);this.set("statusMessage",undefined);this.set("responseHeaders",undefined);this.set("responseBody",undefined);this.set("contentType",undefined)},_responseChanged:function(response){this._reset();if(!response)return;this.set("statusCode",response.status);this.set("statusMessage",response.statusText);var headers=response.headers;
-var rsponseHeaders="";headers.forEach(function(value,name){if(rsponseHeaders)rsponseHeaders+="\n";rsponseHeaders+=name+": "+value});this.set("responseHeaders",rsponseHeaders);var content=this;response.text().then(function(body){content.set("responseBody",body);content.set("contentType",headers.get("content-type"))}).catch(function(e){content.fire("app-log",{level:"error",message:e})})},_resetRequestData:function(){this.set("requestHeaders",undefined);this.set("sentHttpMessage",undefined)},_requestChanged:function(request){this._resetRequestData();
-if(!request)return;this.set("requestUrl",request.url);this.set("requestMethod",request.method);var headers=request.headers;var requestHeaders="";headers.forEach(function(value,name){if(requestHeaders)requestHeaders+="\n";requestHeaders+=name+": "+value});this.set("requestHeaders",requestHeaders);if(request.rawMessage){this.set("sentHttpMessage",request.rawMessage);return}var content=this;request.text().then(function(body){content.set("sentHttpMessage",body)}).catch(function(e){content.fire("app-log",
-{level:"error",message:e})})},_computeHasResponse:function(request){if(request&&request.method==="HEAD")return false;return true},_computeIsError:function(error){return!!error}});</script></dom-module><dom-module id="api-console-request" assetpath="bower_components/api-console/"><template><style>:host{display:block;}.extension-banner{@apply (--layout-horizontal);@apply (--layout-center);display:none;padding:0 24px;border-bottom:1px rgba(0,0,0,0.12) solid;margin-bottom:12px;color:rgba(0,0,0,0.54);}.extension-banner.active{display:-ms-flexbox;display:-webkit-flex;display:flex;}</style><div class="extension-banner"><p>For better experience install API console extension. Get it from <a target="_blank" href="https://chrome.google.com/webstore/detail/olkpohecoakpkpinafnpppponcfojioa">Chrome Web Store</a></p><paper-icon-button icon="arc:close" on-tap="dismissExtensionBanner"></paper-icon-button></div><raml-request-panel narrow="{{narrow}}" method="{{selectedObject}}" redirect-url="[[redirectUrl]]" request="{{request}}" response="{{response}}" response-is-xhr="{{responseIsXhr}}" response-error="{{responseError}}" loading-time="{{loadingTime}}" timings="{{timings}}" redirect-timings="{{redirectTimings}}" redirects="{{redirects}}" source-message="{{sourceMessage}}" no-url-editor="{{noUrlEditor}}" on-api-console-request="_apiRequested"></raml-request-panel><template is="dom-if" if="[[hasResponse]]"><response-view request="[[request]]" response="[[response]]" response-error="[[responseError]]" is-xhr="[[responseIsXhr]]" loading-time="{{loadingTime}}" redirects="[[redirects]]" redirect-timings="[[redirectTimings]]" response-timings="[[timings]]" sent-http-message="[[sourceMessage]]"></response-view></template><raml-aware raml="{{raml}}" scope="raml"></raml-aware><paper-toast id="noAuth" text="The required authorization is not set." duration="3000"></paper-toast></template><script>Polymer({is:"api-console-request",behaviors:[Polymer.IronScrollTargetBehavior,ArcBehaviors.HeadersParserBehavior],properties:{path:{type:String,notify:true},selectedObject:{type:Object,observer:"_selectedObjectChanged"},selectedParent:Object,narrow:{type:Boolean,notify:true},raml:{type:Object},redirectUrl:String,request:Request,response:Response,responseIsXhr:{type:Boolean,value:true},responseError:Object,hasResponse:{type:Boolean,value:false,computed:"_computeHasResponse(response)"},loadingTime:Number,
-timings:Object,redirectTimings:Array,redirects:Array,sourceMessage:String,noExtensionBanner:Boolean,isChrome:{type:Boolean,value:function(){return/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor)}},scrollTarget:HTMLElement,appendHeaders:Array,proxy:String,proxyEncodeUrl:Boolean,bowerLocation:String,noUrlEditor:Boolean},listeners:{"api-console-response-ready":"_onResponseReady"},ready:function(){this._setRedirectUrl();this._initExtensionBanner()},_setRedirectUrl:function(){var a=
-document.createElement("a");var location=this.bowerLocation;if(!location)location="bower_components/";if(location&&location[location.length-1]!=="/")location+="/";a.href=location+"oauth-authorization/oauth-popup.html";this.redirectUrl=a.href},_initExtensionBanner:function(){if(this.isChrome)this.async(function(){if(!this.noExtensionBanner)this.openInstallExtensionBanner()},1E3)},_computeHasResponse:function(response){return!!response},_apiRequested:function(event){var so=this.selectedObject;if(so&&
-so.securedBy&&so.securedBy.length)if(!this.authorizationMethod||!this.authorizationSettings)if(!event.detail.headers||!/^authorization\s?:\s?.+$/im.test(event.detail.headers))this.$.noAuth.opened=true;this._appendConsoleHeaders(event);this._appendProxy(event)},_appendConsoleHeaders:function(event){var headersToAdd=this.appendHeaders;if(headersToAdd){var eventHeaders=event.detail.headers||"";for(var i=0,len=headersToAdd.length;i<len;i++){var header=headersToAdd[i];eventHeaders=this.replaceHeaderValue(eventHeaders,
-header.name,header.value)}event.detail.headers=eventHeaders}},_appendProxy:function(event){var proxy=this.proxy;if(!proxy)return;var url=this.proxyEncodeUrl?encodeURIComponent(event.detail.url):event.detail.url;url=proxy+url;event.detail.url=url},_selectedObjectChanged:function(){this.set("request",undefined);this.set("response",undefined);this.set("responseError",undefined)},_onResponseReady:function(){this.async(function(){var panel=this.$$("response-view");var position=panel.offsetTop;this.scroll(0,
-position)},1)},dismissExtensionBanner:function(){this.$$(".extension-banner").classList.remove("active")},openInstallExtensionBanner:function(){this.$$(".extension-banner").classList.add("active")}});</script></dom-module><dom-module id="api-console" assetpath="bower_components/api-console/"><template><style>:host{--app-primary-color:#00A2DF;--app-secondary-color:black;display:block;}:host([manual-navigation]) raml-path-selector{@apply (--layout-fit);transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:0.24s;transition-duration:0.24s;-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0);background-color:var(--api-console-manual-navigation-background-color, #fff);z-index:1;}:host([manual-navigation]) raml-path-selector[opened]{transform:translate3d(0px, 0px, 0px);}*[hidden]{display:none !important;}iron-pages{height:100%;}iron-pages>*{height:100%;}.nav-content{@apply (--layout-horizontal);@apply (--layout-center);}.nav-content > ::content > *{margin-left:12px;}.drawer-content-wrapper{@apply (--layout-flex);@apply (--layout-vertical);}#drawer{--paper-header-panel-container:{@apply (--layout-horizontal);};}</style><paper-drawer-panel responsive-width="860px" force-narrow="[[manualNavigation]]"><template is="dom-if" if="[[!manualNavigation]]"><paper-header-panel drawer="" id="drawer"><paper-toolbar><div class="title">API console</div></paper-toolbar><div class="drawer-content-wrapper"><raml-path-selector narrow="[[narrow]]" raml="[[raml]]" selected-path="{{path}}" force-wide-layout="" first-level-opened="" resources-opened="" documentation-opened=""></raml-path-selector><content select="[nav-addon]"></content></div></paper-header-panel></template><paper-header-panel main=""><paper-toolbar><paper-icon-button icon="arc:menu" paper-drawer-toggle="" hidden$="[[manualNavigation]]"></paper-icon-button><div class="title">[[raml.title]]</div><span class="flex"></span><div class="nav-content"><content select="[nav]"></content></div></paper-toolbar><div><template is="dom-if" if="[[manualNavigation]]"><raml-path-selector opened$="[[navigationOpened]]" narrow="[[narrow]]" raml="[[raml]]" selected-path="{{path}}" first-level-opened="" resources-opened="" documentation-opened=""></raml-path-selector></template><iron-pages selected="[[page]]" attr-for-selected="name" role="main" id="mainPages"><raml-documentation-panel name="docs" narrow="[[narrow]]" selected-object="[[selectedObject]]" selected-parent="[[selectedParent]]" path="{{path}}" scroll-target="[[scrollTarget]]" no-try-it="[[noTryIt]]" handle-path-events=""></raml-documentation-panel><api-console-request no-extension-banner="[[noExtensionBanner]]" narrow="[[narrow]]" name="request" page="[[page]]" scroll-target="[[scrollTarget]]" selected-object="[[selectedObject]]" selected-parent="[[selectedParent]]" path="{{path}}" append-headers="[[_computeAppendHeaders(appendHeaders)]]" proxy="[[proxy]]" proxy-encode-url="[[proxyEncodeUrl]]" bower-location="[[bowerLocation]]" no-url-editor="{{noUrlEditor}}"></api-console-request></iron-pages></div></paper-header-panel></paper-drawer-panel><template is="dom-if" if="[[aware]]" restamp="true"><raml-aware raml="{{raml}}" scope="raml"></raml-aware></template><raml-path-to-object raml="[[raml]]" selected-path="{{path}}" selected-object="{{selectedObject}}" selected-parent="{{selectedParent}}"></raml-path-to-object><api-console-ext-comm></api-console-ext-comm></template><script>Polymer({is:"api-console",behaviors:[Polymer.IronScrollTargetBehavior,ArcBehaviors.HeadersParserBehavior],properties:{page:{type:String,value:"docs",notify:true},raml:Object,jsonFile:String,path:{type:String,notify:true},narrow:{type:Boolean,notify:true},selectedObject:Object,selectedParent:Object,noExtensionBanner:Boolean,aware:String,scrollTarget:{type:HTMLElement,value:function(){return this.$$("paper-header-panel[main]").scroller}},appendHeaders:{type:String},proxy:String,proxyEncodeUrl:Boolean,
-noTryIt:Boolean,manualNavigation:{type:Boolean,reflectToAttribute:true,value:false},navigationOpened:{type:Boolean,notify:true,observer:"_navigationOpenedChanged"},bowerLocation:String,noUrlEditor:Boolean},listeners:{"scroll-to":"_onScrollRequested","raml-path-changed":"_innerPathChanged","tryit-requested":"_tryitHandler","raml-selected-path-changed":"_pathChangedEventHandler"},observers:["_ramlChanged(raml)","_jsonFileChanged(jsonFile)"],attached:function(){this.listen(window,"api-console-extension-installed",
-"_onExtensionInstalled")},detached:function(){this.unlisten(window,"api-console-extension-installed","_onExtensionInstalled")},ready:function(){this.fire("api-console-ready")},_onScrollRequested:function(e){this.scroll(e.detail.x||0,e.detail.y||0)},_innerPathChanged:function(e){this.set("path",e.detail.path)},_onExtensionInstalled:function(){this.set("noExtensionBanner",true)},_tryitHandler:function(){this.page="request"},_ramlChanged:function(){this.path="summary"},_notify:function(message){var t=
-document.createElement("paper-toast");t.text=message;t.opened=true;document.body.appendChild(t)},_jsonFileChanged:function(url){var context=this;fetch(url).then(function(response){if(response.ok)return response.json()}).then(function(json){context.set("raml",json);if(!json){context._notify("Data unavailable under given URL.");context.fire("json-file-loaded-error")}else context.fire("json-file-loaded")}).catch(function(reason){context._notify("Unable to download data. "+reason.message)})},_computeAppendHeaders:function(headers){if(headers)headers=
-headers.replace("\\n","\n");return this.headersToJSON(headers)},_navigationOpenedChanged:function(value){if(value===undefined||!this.manualNavigation)return;if(value){var context=this;this.__originallScrollTop=this.scrollTarget.scrollTop;this.scrollTarget.scrollTop=0;this.__hideMainTimeout=setTimeout(function(){context.$.mainPages.setAttribute("hidden",true)},200)}else{if(this.__hideMainTimeout)clearTimeout(this.__hideMainTimeout);this.$.mainPages.removeAttribute("hidden");this.scrollTarget.scrollTop=
-this.__originallScrollTop}},_pathChangedEventHandler:function(e){if(this.page!=="docs")this.page="docs"}});</script></dom-module><script>!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("fs"),require("typescript"),function(){try{return require("RAML.XmlValidation")}catch(e){}}(),function(){try{return require("RAML.JsonValidation")}catch(e){}}()):"function"==typeof define&&define.amd?define(["fs","typescript","RAML.XmlValidation","RAML.JsonValidation"],t):"object"==typeof exports?exports.Parser=t(require("fs"),require("typescript"),function(){try{return require("RAML.XmlValidation")}catch(e){}}(),function(){try{return require("RAML.JsonValidation")}catch(e){}}()):(e.RAML=e.RAML||{},e.RAML.Parser=t(e.fs,e.typescript,e["RAML.XmlValidation"],e["RAML.JsonValidation"]))}(this,function(__WEBPACK_EXTERNAL_MODULE_43__,__WEBPACK_EXTERNAL_MODULE_151__,__WEBPACK_EXTERNAL_MODULE_161__,__WEBPACK_EXTERNAL_MODULE_162__){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function r(e,t,n){return h.loadApi(e,t,n).getOrElse(null)}function i(e,t,n){return h.loadApi(e,t,n).getOrElse(null)}function o(e,t,n){return{fsResolver:{content:function(r){return r===(n||m.resolve("/","#local.raml")).replace(/\\/,"/")?e:t&&t.fsResolver?t.fsResolver.content(r):void 0},contentAsync:function(r){return r===(n||m.resolve("/","#local.raml")).replace(/\\/,"/")?Promise.resolve(e):t&&t.fsResolver?t.fsResolver.contentAsync(r):void 0}},httpResolver:t?t.httpResolver:null,rejectOnErrors:t?t.rejectOnErrors:!1,attributeDefaults:t?t.attributeDefaults:!0}}function a(e,t){var n=null;return t&&t.filePath&&(n=t.filePath),h.loadApi(n||"/#local.raml",[],o(e,t,n)).getOrElse(null)}function s(e,t){var n=null;return t&&t.filePath&&(n=t.filePath),h.loadApiAsync(n||"/#local.raml",[],o(e,t,n))}function u(e,t,n){return h.loadApiAsync(e,t,n)}function p(e,t,n){return h.loadRAMLAsync(e,t,n)}function c(e){return h.getLanguageElementByRuntimeType(e)}function l(e){return t.api10.isFragment(e)}function f(e){return t.api10.asFragment(e)}var h=n(9),m=n(23),d=n(22);t.api10=n(12),t.api08=n(13),t.loadApiSync=r,t.loadRAMLSync=i,t.parseRAMLSync=a,t.parseRAML=s,t.loadApi=u,t.loadRAML=p,t.getLanguageElementByRuntimeType=c,t.isFragment=l,t.asFragment=f,t.hl=n(10),t.ll=n(11),t.search=n(1),t.stubs=n(2),t.utils=n(3),t.project=n(4),t.universeHelpers=n(14),t.ds=n(36),t.schema=n(5),t.universes=t.ds.universesInfo,t.parser=n(6),t.expander=n(7),t.wrapperHelper=n(8),"undefined"==typeof Promise&&"undefined"!=typeof window&&(window.Promise=d)},function(e,t,n){"use strict";function r(e,t){return v.determineCompletionKind(e,t)}function i(e,t){return v.enumValues(e,t)}function o(e){return v.globalDeclarations(e)}function a(e,t){return g.qName(e,t)}function s(e,t){return v.subTypesWithLocals(e,t)}function u(e,t){return v.nodesDeclaringType(e,t)}function p(e){return v.isExampleNodeContent(e)}function c(e){return v.findExampleContentType(e)}function l(e,t){return v.parseDocumentationContent(e,t)}function f(e,t){return v.parseStructuredExample(e,t)}function h(e){return v.isExampleNode(e)}function m(e,t){return v.referenceTargets(e,t)}function d(e,t){return v.findUsages(e,t)}function y(e,t,n){return v.findDeclaration(e,t,n)}var v=n(27),g=n(15);!function(e){e[e.VALUE_COMPLETION=0]="VALUE_COMPLETION",e[e.KEY_COMPLETION=1]="KEY_COMPLETION",e[e.PATH_COMPLETION=2]="PATH_COMPLETION",e[e.DIRECTIVE_COMPLETION=3]="DIRECTIVE_COMPLETION",e[e.VERSION_COMPLETION=4]="VERSION_COMPLETION",e[e.ANNOTATION_COMPLETION=5]="ANNOTATION_COMPLETION",e[e.SEQUENCE_KEY_COPLETION=6]="SEQUENCE_KEY_COPLETION",e[e.INCOMMENT=7]="INCOMMENT"}(t.LocationKind||(t.LocationKind={}));t.LocationKind;t.determineCompletionKind=r,t.enumValues=i,t.globalDeclarations=o,t.qName=a,t.subTypesWithLocals=s,t.nodesDeclaringType=u,t.isExampleNodeContent=p,t.findExampleContentType=c,t.parseDocumentationContent=l,t.parseStructuredExample=f,t.isExampleNode=h,t.referenceTargets=m,t.findUsages=d,t.findDeclaration=y},function(e,t,n){"use strict";function r(e,t,n,r){return void 0===n&&(n=null),S.createStubNode(e,t,n,r)}function i(e,t,n){return S.createStub(e,t,n)}function o(e,t,n){return S.createStub0(e,t,n)}function a(e,t){return S.createResourceStub(e,t)}function s(e,t){return S.createMethodStub(e,t)}function u(e,t){return S.createResponseStub(e,t)}function p(e,t){return S.createBodyStub(e,t)}function c(e,t){return S.createUriParameterStub(e,t)}function l(e,t){return S.createQueryParameterStub(e,t)}function f(e,t,n,r,i){return void 0===i&&(i=!1),new T.ASTPropImpl(e,t,n,r,i)}function h(e,t,n,r){return new T.ASTNodeImpl(e,t,n,r)}function m(e,t,n,r){return new E(e,t,n,r)}function d(e,t,n,r){return new _(e,t,n,r)}function y(e,t){return b.createMapping(e,t)}function v(){return b.createMap([])}function g(e,t){return S.createAttr(e,t)}var A=this&&this.__extends||function(e,t){function n(){this.constructor=e}for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)},T=n(15),b=n(24),S=n(16);t.createStubNode=r,t.createStub=i,t.createStubNoParentPatch=o,t.createResourceStub=a,t.createMethodStub=s,t.createResponseStub=u,t.createBodyStub=p,t.createUriParameterStub=c,t.createQueryParameterStub=l,t.createASTPropImpl=f,t.createASTNodeImpl=h,t.createVirtualASTPropImpl=m,t.createVirtualNodeImpl=d;var E=function(e){function t(){e.apply(this,arguments)}return A(t,e),t.prototype.value=function(){return""},t}(T.ASTPropImpl),_=function(e){function t(){e.apply(this,arguments)}return A(t,e),t.prototype.value=function(){return""},t}(T.ASTNodeImpl);t.createMapping=y,t.createMap=v,t.createAttr=g},function(e,t,n){"use strict";function r(){return p.hasAsyncRequests()}function i(e){p.addLoadCallback(e)}function o(){return h.getTransformNames()}function a(e){return c.getFragmentDefenitionName(e)}function s(e,t,n){if(n.range()instanceof l.ReferenceType){var r=(n.range(),f.createNode(e));return new c.StructuredValue(r,t,n)}return e}function u(e){return(new m.UrlParameterNameValidator).parseUrl(e)}var p=n(25),c=n(15),l=n(36),f=n(24),h=n(28),m=n(29),d=n(30),y=n(17);t.hasAsyncRequests=r,t.addLoadCallback=i,t.getTransformerNames=o,t.updateType=function(e){var t=d.doDescrimination(e);null==t&&e.property()&&(t=e.property().range()),t&&e.patchType(t)},t.getFragmentDefenitionName=a,t.genStructuredValue=s,t.parseUrl=u;var v=function(){function e(e,t){this.node=e,this.targetUnitRoot=t}return e}();t.UnitLink=v;var g=function(){function e(e,t){this.errors=e,this.primaryUnitRoot=t}return e.prototype.accept=function(e){this.transformIssue(e),this.errors.push(e)},e.prototype.transformIssue=function(e){var t=this,n=null,r=this.findIssueTail(e);r.node&&(n=r.node.lowLevel().unit());var i=this.primaryUnitRoot.lowLevel().unit();if(n&&i&&n!=i){var o=this.findPathToNodeUnit(this.primaryUnitRoot,r.node);if(o&&o.length>0){var a=o.map(function(n){return t.convertConnectingNodeToError(n,e)});if(a&&a.length>0)for(var s=r,u=a.length-1;u>=0;u--){var p=a[u];s.extras=[],s.extras.push(p),s=p}}}},e.prototype.begin=function(){},e.prototype.end=function(){},e.prototype.acceptUnique=function(e){for(var t=0,n=this.errors;t<n.length;t++){var r=n[t];if(r.start==e.start&&r.message==e.message)return}this.accept(e)},e.prototype.findPathToNodeUnit=function(e,t){return t.lowLevel()&&t.lowLevel().unit()?this.findPathToNodeUnitRecursively(e,t.lowLevel().unit()):[]},e.prototype.findPathToNodeUnitRecursively=function(e,t){for(var n=this.findUnitLinks(e),r=0;r<n.length;r++){var i=n[r];if(i.targetUnitRoot&&i.targetUnitRoot.lowLevel()&&i.targetUnitRoot.lowLevel().unit()==t)return[i.node];var o=this.findPathToNodeUnitRecursively(i.targetUnitRoot,t);if(o)return o.unshift(i.node),o}return null},e.prototype.findUnitLinks=function(e){var t=[];return t=t.concat(this.findMasterLinks(e))},e.prototype.findMasterLinks=function(e){if(!e.getMaster)return[];var t=e.getMaster();if(!t)return[];var n=e.asElement().attr(y.Universe10.Extension.properties["extends"].name);return n&&n.value()?[new v(n,t)]:[]},e.prototype.convertConnectingNodeToError=function(e,t){if(!e)return null;var n=e.lowLevel(),r=n.start(),i=n.end(),o=this.generateLinkMessageByNode(e,t);return{code:t.code,isWarning:t.isWarning,message:o,node:e,start:r,end:i,path:n.unit()?n.unit().path():"",extras:[],unit:n.unit()}},e.prototype.generateLinkMessageByNode=function(e,t){return e.property().nameId()==y.Universe10.Extension.properties["extends"].name?"Error in the master file: "+t.message:t.message},e.prototype.findIssueTail=function(e){return e.extras&&0!=e.extras.length?this.findIssueTail(e.extras[0]):e},e}();t.PointOfViewValidationAcceptorImpl=g},function(e,t,n){"use strict";function r(e,t,n){return new i.Project(e,t,n)}var i=n(24);t.createProject=r},function(e,t,n){"use strict";function r(e,t){var n=n.createProject(d.dirname(e)),r={$ref:t},i=JSON.stringify(r),o=n.setCachedUnitContent(d.basename(e),i),s=a(i,o);return s.jsonSchema.$ref}function i(e,t){return v.createSchema(e,new y.ContentProvider(t))}function o(e){return v.getXMLSchema(e)}function a(e,t){return v.getJSONSchema(e,new y.ContentProvider(t))}function s(e,t,n){return h.completeReference(e,t,n)}function u(e){return h.getIncludePath(e)}function p(e){return h.getIncludeReference(e)}function c(){return new m.SchemaToModelGenerator}function l(){return new m.ModelToSchemaGenerator}var f=n(36),h=n(26),m=n(18),d=n(23),y=n(31),v=f.getSchemaUtils();t.dereference=r,t.createSchema=i,t.getXMLSchema=o,t.getJSONSchema=a,t.completeReference=s,t.getIncludePath=u,t.getIncludeReference=p,t.createSchemaModelGenerator=c,t.createModelToSchemaGenerator=l},function(e,t,n){"use strict";t.modify=n(19)},function(e,t,n){"use strict";function r(e){return i.expandTraitsAndResourceTypes(e)}var i=n(28);t.expandTraitsAndResourceTypes=r},function(e,t,n){"use strict";function r(e){return i.completeRelativeUri(e)}var i=n(33);t.completeRelativeUri=r},function(e,t,n){"use strict";function r(e,t,n){var r=o(e,t,n);return new y(r)}function i(e,t,n){var r=o(e,t,n);return new y(r)}function o(e,t,n){var r=Array.isArray(t),i=r?t:null,o=r?n:t;o=o||{};var a=c(e,o),s=e.indexOf("://"),u=-1!=s&&6>s?e:d.basename(e),p=a.unit(u);n&&!i&&(i=null);var h;if(p)if(i&&i.length>0){var m=[];i.forEach(function(e){if(!e||0==e.trim().length)throw new Error("Extensions and overlays list should contain legal file paths")}),i.forEach(function(e){m.push(a.unit(e,d.isAbsolute(e)))}),m.forEach(function(e){return l(e,o)}),h=l(T.mergeAPIs(p,m,g.OverlayMergeMode.MERGE),o)}else h=l(p,o),h.highLevel().setMergeMode(g.OverlayMergeMode.MERGE);if(!p)throw new Error("Can not resolve :"+e);if(o.rejectOnErrors&&h&&h.errors().filter(function(e){return!e.isWarning}).length)throw f(h);return null!=o.attributeDefaults&&h?h.setAttributeDefaults(o.attributeDefaults):h&&h.setAttributeDefaults(!0),h}function a(e,t,n){var r=s(e,t,n);return r.then(function(e){return e})}function s(e,t,n){var r=Array.isArray(t),i=r?t:null,o=r?n:t;o=o||{};var a=c(e,o),s=e.indexOf("://"),u=-1!=s&&6>s?e:d.basename(e);return n&&!i&&(i=null),i&&0!=i.length?(i.forEach(function(e){if(!e||0==e.trim().length)throw new Error("Extensions and overlays list should contain legal file paths")}),p(a,u,o).then(function(e){var t=[];return i.forEach(function(e){t.push(p(a,e,o))}),Promise.all(t).then(function(t){var n=[];t.forEach(function(e){return n.push(e.highLevel().lowLevel().unit())});var r=T.mergeAPIs(e.highLevel().lowLevel().unit(),n,g.OverlayMergeMode.MERGE),i=r.wrapperNode();return null!=o.attributeDefaults&&r?i.setAttributeDefaults(o.attributeDefaults):r&&i.setAttributeDefaults(!0),i.highLevel()}).then(function(e){return l(e,o)})})):p(a,u,o).then(function(e){return e.highLevel().setMergeMode(g.OverlayMergeMode.MERGE),null!=o.attributeDefaults&&e?e.setAttributeDefaults(o.attributeDefaults):e&&e.setAttributeDefaults(!0),e})}function u(e){if(null==e)return null;var t=e.getAdapter(S.RAMLService).getDeclaringNode();return null==t?null:t.wrapperNode()}function p(e,t,n){return A.fetchIncludesAndMasterAsync(e,t).then(function(e){try{var t=l(e,n);return n.rejectOnErrors&&t&&t.errors().filter(function(e){return!e.isWarning}).length?Promise.reject(f(t)):t}catch(r){return Promise.reject(r)}})}function c(e,t){t=t||{};var n=t.fsResolver,r=t.httpResolver,i=d.dirname(e),o=new v.Project(i,n,r);return o}function l(e,t,n){if(void 0===n&&(n=!1),!e)return null;var r=null,i=null;e.isRAMLUnit?r=e:(i=e,r=i.lowLevel().unit());var o,a=r.contents(),s=g.ramlFirstLine(a);if(!s)throw new Error("Invalid first line. A RAML document is expected to start with '#%RAML <version> <?fragment type>'.");var u,p,c=s[1];s[2];if("0.8"==c?p="RAML08":"1.0"==c&&(p="RAML10"),!p)throw new Error("Unknown version of RAML expected to see one of '#%RAML 0.8' or '#%RAML 1.0'");if("RAML08"==p&&n)throw new Error("Extensions and overlays are not supported in RAML 0.8.");var l=E(p);l.type(u);return i||(i=g.fromUnit(r)),o=i.wrapperNode()}function f(e){var t=new Error("Api contains errors.");return t.parserErrors=e.errors(),t}function h(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!0);var r=E("RAML10"),i=r.type(b.Universe10.Api.name),o=new v.Project(e),a=[];return o.units().forEach(function(e){var r=e.ast();t&&(r=A.toChildCachingNode(r));var o=new m.ApiImpl(new g.ASTNodeImpl(r,null,i,null));n&&(o=T.expandTraitsAndResourceTypes(o)),a.push(o)}),a}var m=n(20),d=n(23),y=n(21),v=n(24),g=n(15),A=n(24),T=n(28),b=n(17),S=n(34),E=n(35);t.loadApi=r,t.loadRAML=i,t.loadApiAsync=a,t.loadRAMLAsync=s,t.getLanguageElementByRuntimeType=u,t.toError=f,t.loadApis1=h},function(e,t,n){"use strict";function r(e){return e.asElement&&e.getKind&&e.asAttr&&e.lowLevel}!function(e){e[e.BASIC=0]="BASIC",e[e.NODE=1]="NODE",e[e.ATTRIBUTE=2]="ATTRIBUTE"}(t.NodeKind||(t.NodeKind={}));t.NodeKind;!function(e){e[e.RAML10=0]="RAML10",e[e.RAML08=1]="RAML08"}(t.RAMLVersion||(t.RAMLVersion={}));t.RAMLVersion;t.isParseResult=r,function(e){e[e.UNRESOLVED_REFERENCE=0]="UNRESOLVED_REFERENCE",e[e.YAML_ERROR=1]="YAML_ERROR",e[e.UNKNOWN_NODE=2]="UNKNOWN_NODE",e[e.MISSING_REQUIRED_PROPERTY=3]="MISSING_REQUIRED_PROPERTY",e[e.PROPERTY_EXPECT_TO_HAVE_SINGLE_VALUE=4]="PROPERTY_EXPECT_TO_HAVE_SINGLE_VALUE",e[e.KEY_SHOULD_BE_UNIQUE_INTHISCONTEXT=5]="KEY_SHOULD_BE_UNIQUE_INTHISCONTEXT",e[e.UNABLE_TO_RESOLVE_INCLUDE_FILE=6]="UNABLE_TO_RESOLVE_INCLUDE_FILE",e[e.INVALID_VALUE_SCHEMA=7]="INVALID_VALUE_SCHEMA",e[e.MISSED_CONTEXT_REQUIREMENT=8]="MISSED_CONTEXT_REQUIREMENT",e[e.NODE_HAS_VALUE=9]="NODE_HAS_VALUE",e[e.ONLY_OVERRIDE_ALLOWED=10]="ONLY_OVERRIDE_ALLOWED",e[e.ILLEGAL_PROPERTY_VALUE=11]="ILLEGAL_PROPERTY_VALUE",e[e.ILLEGAL_PROPERTY=12]="ILLEGAL_PROPERTY",e[e.INVALID_PROPERTY=13]="INVALID_PROPERTY"}(t.IssueCode||(t.IssueCode={}));t.IssueCode},function(e,t,n){"use strict";function r(e,t){return new T(v.CHANGE_VALUE,e,t,-1)}function i(e,t){return new T(v.CHANGE_VALUE,e,t.lowLevel(),-1)}function o(e,t){return new T(v.CHANGE_KEY,e,t,-1)}function a(e,t){return new T(v.REMOVE_CHILD,e,t,-1)}function s(e,t,n,r){void 0===n&&(n=null),void 0===r&&(r=!1);var i=new T(v.ADD_CHILD,e,t,-1);return i.insertionPoint=n,i.toSeq=r,i}function u(e,t){return new T(v.INIT_RAML_FILE,e,t,-1)}function p(e,t,n){if(h.isAbsolute(e)){var r=h.extname(t);".xsd"!=r&&(e=e.substr(1),t=c(n,h.basename(t)))}return l(e)||h.isAbsolute(e)?e:l(t)||h.isAbsolute(t)?c(h.dirname(t),e):c(h.dirname(c(n,t)),e)}function c(e,t){if(l(t))return t;var n;if(l(e)){var r=d.stringEndsWith(e,"/")?e:e+"/";n=m.resolve(r,t).replace(/\\/g,"/")}else n=h.resolve(e,t).replace(/\\/g,"/");return n}function l(e){return null==e?!1:d.stringStartsWith(e,"http://")||d.stringStartsWith(e,"https://")}function f(e){return e.start&&e.end&&e.unit&&e.key&&e.value&&e.children&&e.includePath}var h=n(23),m=n(45),d=n(32),y=function(){function e(){}return e}();t.ASTDelta=y,function(e){e[e.ADD_CHILD=0]="ADD_CHILD",e[e.REMOVE_CHILD=1]="REMOVE_CHILD",e[e.MOVE_CHILD=2]="MOVE_CHILD",e[e.CHANGE_KEY=3]="CHANGE_KEY",e[e.CHANGE_VALUE=4]="CHANGE_VALUE",e[e.INIT_RAML_FILE=5]="INIT_RAML_FILE"}(t.CommandKind||(t.CommandKind={}));var v=t.CommandKind,g=function(){function e(e,t,n,r,i){void 0===i&&(i=null),this.offset=e,this.replacementLength=t,this.text=n,this.unit=r,this.target=i}return e}();t.TextChangeCommand=g;var A=function(){function e(){this.commands=[]}return e}();t.CompositeCommand=A,function(e){e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.END=2]="END",e[e.POINT=3]="POINT"}(t.InsertionPointType||(t.InsertionPointType={}));var T=(t.InsertionPointType,function(){function e(e,t,n,r){this.toSeq=!1,this.kind=e,this.target=t,this.value=n,this.position=r}return e}());t.ASTChangeCommand=T,t.setAttr=r,t.setAttrStructured=i,t.setKey=o,t.removeNode=a,t.insertNode=s,t.initRamlFile=u;var b=function(){function e(e,t){this.content=e,this.absPath=t}return e.prototype.position=function(e){var t=e;this.initMapping();for(var n=0;n<this.mapping.length;n++){var r=this.mapping[n];if(r>t)return{line:n,column:t,position:e};t-=r}if(0==t)return{line:this.mapping.length-1,column:this.mapping[this.mapping.length-1],position:this.content.length};if(1==t)return{line:this.mapping.length-1,column:this.mapping[this.mapping.length-1]-1,position:e-1};throw new Error("Character position exceeds text length: "+e+" > + "+this.content.length+".\nUnit path: "+this.absPath)},e.prototype.initMapping=function(){if(null==this.mapping){if(null==this.content)throw new Error("Line Mapper has been given null content"+(null!=this.absPath?". Path: "+this.absPath:" and null path."));this.mapping=[];for(var e=0,t=this.content.length,n=0;t>n;n++)"\r"==this.content.charAt(n)?t-1>n&&"\n"==this.content.charAt(n+1)?(this.mapping.push(n-e+2),e=n+2,n++):(this.mapping.push(n-e+1),e=n+1):"\n"==this.content.charAt(n)&&(this.mapping.push(n-e+1),e=n+1);this.mapping.push(t-e)}},e}();t.LineMapperImpl=b,t.buildPath=p,t.toAbsolutePath=c,t.isWebPath=l,t.isLowLevelNode=f},function(e,t,n){"use strict";function r(e){return"Api"==e.kind()&&"RAML10"==e.RAMLVersion()}function i(e){return"LibraryBase"==e.kind()&&"RAML10"==e.RAMLVersion()}function o(e){return"Annotable"==e.kind()&&"RAML10"==e.RAMLVersion()}function a(e){return"AnnotationRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function s(e){return"Reference"==e.kind()&&"RAML10"==e.RAMLVersion()}function u(e){return"ValueType"==e.kind()&&"RAML10"==e.RAMLVersion()}function p(e){return"StringType"==e.kind()&&"RAML10"==e.RAMLVersion()}function c(e){return"UriTemplate"==e.kind()&&"RAML10"==e.RAMLVersion()}function l(e){return"RelativeUriString"==e.kind()&&"RAML10"==e.RAMLVersion()}function f(e){return"FullUriTemplateString"==e.kind()&&"RAML10"==e.RAMLVersion()}function h(e){return"StatusCodeString"==e.kind()&&"RAML10"==e.RAMLVersion()}function m(e){return"FixedUriString"==e.kind()&&"RAML10"==e.RAMLVersion()}function d(e){return"ContentType"==e.kind()&&"RAML10"==e.RAMLVersion()}function y(e){return"MarkdownString"==e.kind()&&"RAML10"==e.RAMLVersion()}function v(e){return"SchemaString"==e.kind()&&"RAML10"==e.RAMLVersion()}function g(e){return"MimeType"==e.kind()&&"RAML10"==e.RAMLVersion()}function A(e){return"AnyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function T(e){return"NumberType"==e.kind()&&"RAML10"==e.RAMLVersion()}function b(e){return"IntegerType"==e.kind()&&"RAML10"==e.RAMLVersion()}function S(e){return"NullType"==e.kind()&&"RAML10"==e.RAMLVersion()}function E(e){return"TimeOnlyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function _(e){return"DateOnlyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function w(e){return"DateTimeOnlyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function N(e){return"DateTimeType"==e.kind()&&"RAML10"==e.RAMLVersion()}function M(e){return"FileType"==e.kind()&&"RAML10"==e.RAMLVersion()}function R(e){return"BooleanType"==e.kind()&&"RAML10"==e.RAMLVersion()}function I(e){return"AnnotationTarget"==e.kind()&&"RAML10"==e.RAMLVersion()}function P(e){return"TraitRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function L(e){return"Trait"==e.kind()&&"RAML10"==e.RAMLVersion()}function C(e){return"MethodBase"==e.kind()&&"RAML10"==e.RAMLVersion()}function O(e){return"Operation"==e.kind()&&"RAML10"==e.RAMLVersion()}function D(e){return"TypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function x(e){return"ModelLocation"==e.kind()&&"RAML10"==e.RAMLVersion()}function U(e){return"LocationKind"==e.kind()&&"RAML10"==e.RAMLVersion()}function k(e){return"ExampleSpec"==e.kind()&&"RAML10"==e.RAMLVersion()}function F(e){return"UsesDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function B(e){return"XMLFacetInfo"==e.kind()&&"RAML10"==e.RAMLVersion()}function V(e){return"ArrayTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function K(e){return"UnionTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function j(e){return"ObjectTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function q(e){return"StringTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function H(e){return"BooleanTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function Y(e){return"NumberTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function G(e){return"IntegerTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function z(e){return"DateOnlyTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function W(e){return"TimeOnlyTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function X(e){return"DateTimeOnlyTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function $(e){return"DateTimeTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function J(e){return"FileTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function Q(e){return"Response"==e.kind()&&"RAML10"==e.RAMLVersion()}function Z(e){return"SecuritySchemePart"==e.kind()&&"RAML10"==e.RAMLVersion()}function ee(e){return"SecuritySchemeRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function te(e){return"AbstractSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ne(e){return"SecuritySchemeSettings"==e.kind()&&"RAML10"==e.RAMLVersion()}function re(e){return"OAuth1SecuritySchemeSettings"==e.kind()&&"RAML10"==e.RAMLVersion()}function ie(e){return"OAuth2SecuritySchemeSettings"==e.kind()&&"RAML10"==e.RAMLVersion()}function oe(e){return"OAuth2SecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ae(e){return"OAuth1SecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function se(e){return"PassThroughSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ue(e){return"BasicSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function pe(e){return"DigestSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ce(e){return"CustomSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function le(e){return"Method"==e.kind()&&"RAML10"==e.RAMLVersion()}function fe(e){return"ResourceTypeRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function he(e){return"ResourceType"==e.kind()&&"RAML10"==e.RAMLVersion()}function me(e){return"ResourceBase"==e.kind()&&"RAML10"==e.RAMLVersion()}function de(e){return"Resource"==e.kind()&&"RAML10"==e.RAMLVersion()}function ye(e){return"DocumentationItem"==e.kind()&&"RAML10"==e.RAMLVersion()}function ve(e){return"Library"==e.kind()&&"RAML10"==e.RAMLVersion()}function ge(e){return"Overlay"==e.kind()&&"RAML10"==e.RAMLVersion()}function Ae(e){return"Extension"==e.kind()&&"RAML10"==e.RAMLVersion()}function Te(e){return null==e.highLevel().parent()}function be(e){return Te(e)?e:null}t.isApi=r,t.isLibraryBase=i,t.isAnnotable=o,t.isAnnotationRef=a,t.isReference=s,t.isValueType=u,t.isStringType=p,t.isUriTemplate=c,t.isRelativeUriString=l,t.isFullUriTemplateString=f,t.isStatusCodeString=h,t.isFixedUriString=m,t.isContentType=d,t.isMarkdownString=y,t.isSchemaString=v,t.isMimeType=g,t.isAnyType=A,t.isNumberType=T,t.isIntegerType=b,t.isNullType=S,t.isTimeOnlyType=E,t.isDateOnlyType=_,t.isDateTimeOnlyType=w,t.isDateTimeType=N,t.isFileType=M,t.isBooleanType=R,t.isAnnotationTarget=I,t.isTraitRef=P,t.isTrait=L,t.isMethodBase=C,t.isOperation=O,t.isTypeDeclaration=D,t.isModelLocation=x,t.isLocationKind=U,t.isExampleSpec=k,t.isUsesDeclaration=F,t.isXMLFacetInfo=B,t.isArrayTypeDeclaration=V,t.isUnionTypeDeclaration=K,t.isObjectTypeDeclaration=j,t.isStringTypeDeclaration=q,t.isBooleanTypeDeclaration=H,t.isNumberTypeDeclaration=Y,t.isIntegerTypeDeclaration=G,t.isDateOnlyTypeDeclaration=z,t.isTimeOnlyTypeDeclaration=W,t.isDateTimeOnlyTypeDeclaration=X,t.isDateTimeTypeDeclaration=$,t.isFileTypeDeclaration=J,t.isResponse=Q,t.isSecuritySchemePart=Z,t.isSecuritySchemeRef=ee,t.isAbstractSecurityScheme=te,t.isSecuritySchemeSettings=ne,t.isOAuth1SecuritySchemeSettings=re,t.isOAuth2SecuritySchemeSettings=ie,t.isOAuth2SecurityScheme=oe,t.isOAuth1SecurityScheme=ae,t.isPassThroughSecurityScheme=se,t.isBasicSecurityScheme=ue,t.isDigestSecurityScheme=pe,t.isCustomSecurityScheme=ce,t.isMethod=le,t.isResourceTypeRef=fe,t.isResourceType=he,t.isResourceBase=me,t.isResource=de,t.isDocumentationItem=ye,t.isLibrary=ve,t.isOverlay=ge,t.isExtension=Ae,t.isFragment=Te,t.asFragment=be},function(e,t,n){"use strict";function r(e){return"Api"==e.kind()&&"RAML08"==e.RAMLVersion()}function i(e){return"FullUriTemplateString"==e.kind()&&"RAML08"==e.RAMLVersion()}function o(e){return"UriTemplate"==e.kind()&&"RAML08"==e.RAMLVersion()}function a(e){return"StringType"==e.kind()&&"RAML08"==e.RAMLVersion()}function s(e){return"ValueType"==e.kind()&&"RAML08"==e.RAMLVersion()}function u(e){return"AnyType"==e.kind()&&"RAML08"==e.RAMLVersion()}function p(e){return"NumberType"==e.kind()&&"RAML08"==e.RAMLVersion()}function c(e){return"BooleanType"==e.kind()&&"RAML08"==e.RAMLVersion()}function l(e){return"Reference"==e.kind()&&"RAML08"==e.RAMLVersion()}function f(e){return"ResourceTypeRef"==e.kind()&&"RAML08"==e.RAMLVersion()}function h(e){return"ResourceType"==e.kind()&&"RAML08"==e.RAMLVersion()}function m(e){return"Method"==e.kind()&&"RAML08"==e.RAMLVersion()}function d(e){return"MethodBase"==e.kind()&&"RAML08"==e.RAMLVersion()}function y(e){return"Response"==e.kind()&&"RAML08"==e.RAMLVersion()}function v(e){return"StatusCodeString"==e.kind()&&"RAML08"==e.RAMLVersion()}function g(e){return"Parameter"==e.kind()&&"RAML08"==e.RAMLVersion()}function A(e){return"ParameterLocation"==e.kind()&&"RAML08"==e.RAMLVersion()}function T(e){return"MarkdownString"==e.kind()&&"RAML08"==e.RAMLVersion()}function b(e){return"StringTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function S(e){return"BooleanTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function E(e){return"NumberTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function _(e){return"IntegerTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function w(e){return"DateTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function N(e){return"FileTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function M(e){return"BodyLike"==e.kind()&&"RAML08"==e.RAMLVersion()}function R(e){return"SchemaString"==e.kind()&&"RAML08"==e.RAMLVersion()}function I(e){return"JSonSchemaString"==e.kind()&&"RAML08"==e.RAMLVersion()}function P(e){return"XMLSchemaString"==e.kind()&&"RAML08"==e.RAMLVersion()}function L(e){return"ExampleString"==e.kind()&&"RAML08"==e.RAMLVersion()}function C(e){return"JSONExample"==e.kind()&&"RAML08"==e.RAMLVersion()}function O(e){return"XMLExample"==e.kind()&&"RAML08"==e.RAMLVersion()}function D(e){return"XMLBody"==e.kind()&&"RAML08"==e.RAMLVersion()}function x(e){return"JSONBody"==e.kind()&&"RAML08"==e.RAMLVersion()}function U(e){return"SecuritySchemeRef"==e.kind()&&"RAML08"==e.RAMLVersion()}function k(e){return"AbstractSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function F(e){return"SecuritySchemePart"==e.kind()&&"RAML08"==e.RAMLVersion()}function B(e){return"TraitRef"==e.kind()&&"RAML08"==e.RAMLVersion()}function V(e){return"Trait"==e.kind()&&"RAML08"==e.RAMLVersion()}function K(e){return"SecuritySchemeSettings"==e.kind()&&"RAML08"==e.RAMLVersion()}function j(e){return"OAuth1SecuritySchemeSettings"==e.kind()&&"RAML08"==e.RAMLVersion()}function q(e){return"FixedUri"==e.kind()&&"RAML08"==e.RAMLVersion()}function H(e){return"OAuth2SecuritySchemeSettings"==e.kind()&&"RAML08"==e.RAMLVersion()}function Y(e){return"OAuth2SecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function G(e){return"OAuth1SecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function z(e){return"BasicSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function W(e){return"DigestSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function X(e){return"CustomSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function $(e){return"MimeType"==e.kind()&&"RAML08"==e.RAMLVersion()}function J(e){return"RelativeUriString"==e.kind()&&"RAML08"==e.RAMLVersion()}function Q(e){return"GlobalSchema"==e.kind()&&"RAML08"==e.RAMLVersion()}function Z(e){return"RAMLSimpleElement"==e.kind()&&"RAML08"==e.RAMLVersion()}function ee(e){return"DocumentationItem"==e.kind()&&"RAML08"==e.RAMLVersion()}function te(e){return"Resource"==e.kind()&&"RAML08"==e.RAMLVersion()}t.isApi=r,t.isFullUriTemplateString=i,t.isUriTemplate=o,t.isStringType=a,t.isValueType=s,t.isAnyType=u,t.isNumberType=p,t.isBooleanType=c,t.isReference=l,t.isResourceTypeRef=f,t.isResourceType=h,t.isMethod=m,t.isMethodBase=d,t.isResponse=y,t.isStatusCodeString=v,t.isParameter=g,t.isParameterLocation=A,t.isMarkdownString=T,t.isStringTypeDeclaration=b,t.isBooleanTypeDeclaration=S,t.isNumberTypeDeclaration=E,t.isIntegerTypeDeclaration=_,t.isDateTypeDeclaration=w,t.isFileTypeDeclaration=N,t.isBodyLike=M,t.isSchemaString=R,t.isJSonSchemaString=I,t.isXMLSchemaString=P,t.isExampleString=L,t.isJSONExample=C,t.isXMLExample=O,t.isXMLBody=D,t.isJSONBody=x,t.isSecuritySchemeRef=U,t.isAbstractSecurityScheme=k,t.isSecuritySchemePart=F,t.isTraitRef=B,t.isTrait=V,t.isSecuritySchemeSettings=K,t.isOAuth1SecuritySchemeSettings=j,t.isFixedUri=q,t.isOAuth2SecuritySchemeSettings=H,t.isOAuth2SecurityScheme=Y,t.isOAuth1SecurityScheme=G,t.isBasicSecurityScheme=z,t.isDigestSecurityScheme=W,t.isCustomSecurityScheme=X,t.isMimeType=$,t.isRelativeUriString=J,t.isGlobalSchema=Q,t.isRAMLSimpleElement=Z,t.isDocumentationItem=ee,t.isResource=te},function(e,t,n){"use strict";function r(e){return e.nameId()===Ke.Universe10.Api.properties.documentation.name||e.nameId()===Ke.Universe08.Api.properties.documentation.name}function i(e){return e===Ke.Universe10.Trait.properties.usage.name||e===Ke.Universe08.Trait.properties.usage.name||e===Ke.Universe10.ResourceType.properties.usage.name||e===Ke.Universe08.ResourceType.properties.usage.name||e===Ke.Universe10.Library.properties.usage.name||e===Ke.Universe10.Overlay.properties.usage.name||e===Ke.Universe10.Extension.properties.usage.name}function o(e){return i(e.nameId())}function a(e){return e.nameId()==Ke.Universe10.Overlay.properties["extends"].name||e.nameId()==Ke.Universe10.Extension.properties["extends"].name}function s(e){return e===Ke.Universe10.TypeDeclaration.properties.description.name||"description"===e}function u(e){return s(e.nameId())}function p(e){return e===Ke.Universe10.TypeDeclaration.properties.required.name||e===Ke.Universe08.Parameter.properties.required.name||"required"===e}function c(e){return e===Ke.Universe10.TypeDeclaration.properties.displayName.name||"displayName"===e}function l(e){return c(e.nameId())}function f(e){return p(e.nameId())}function h(e){return e===Ke.Universe10.Api.properties.title.name||e===Ke.Universe08.Api.properties.title.name||e===Ke.Universe10.DocumentationItem.properties.title.name||e===Ke.Universe08.DocumentationItem.properties.title.name||e===Ke.Universe10.Overlay.properties.title.name||e===Ke.Universe10.Extension.properties.title.name}function m(e){return h(e.nameId())}function d(e){return y(e.nameId())}function y(e){return e===Ke.Universe08.MethodBase.properties.headers.name||e===Ke.Universe08.Response.properties.headers.name||e===Ke.Universe08.SecuritySchemePart.properties.headers.name||e===Ke.Universe10.MethodBase.properties.headers.name||e===Ke.Universe10.Response.properties.headers.name}function v(e){return g(e.nameId())}function g(e){return e===Ke.Universe08.BodyLike.properties.formParameters.name}function A(e){return T(e.nameId())}function T(e){
+var responseHeaders="";headers.forEach(function(value,name){if(responseHeaders)responseHeaders+="\n";responseHeaders+=name+": "+value});this.set("responseHeaders",responseHeaders);var ct=headers.get("content-type");if(!ct)ct="text/plain";var content=this;response.text().then(function(body){content.set("responseBody",body);content.set("contentType",ct)}).catch(function(e){content.fire("app-log",{level:"error",message:e})})},_resetRequestData:function(){this.set("requestHeaders",undefined)},_requestChanged:function(request){this._resetRequestData();
+if(!request)return;this.set("requestUrl",request.url);this.set("requestMethod",request.method);var headers=request.headers;var requestHeaders="";headers.forEach(function(value,name){if(requestHeaders)requestHeaders+="\n";requestHeaders+=name+": "+value});this.set("requestHeaders",requestHeaders)},_computeHasResponse:function(request){if(request&&request.method==="HEAD")return false;return true},_computeIsError:function(error){return!!error}});</script></dom-module><dom-module id="api-console-request" assetpath="bower_components/api-console/"><template><style>:host{display:block;}.extension-banner{@apply (--layout-horizontal);@apply (--layout-center);display:none;padding:0 24px;border-bottom:1px rgba(0,0,0,0.12) solid;margin-bottom:12px;color:rgba(0,0,0,0.54);}.extension-banner.active{display:-ms-flexbox;display:-webkit-flex;display:flex;}</style><div class="extension-banner"><p>For better experience install API console extension. Get it from <a target="_blank" href="https://chrome.google.com/webstore/detail/olkpohecoakpkpinafnpppponcfojioa">Chrome Web Store</a></p><paper-icon-button icon="arc:close" on-tap="dismissExtensionBanner"></paper-icon-button></div><raml-request-panel narrow="{{narrow}}" method="{{selectedObject}}" redirect-url="[[redirectUrl]]" request="{{request}}" response="{{response}}" response-is-xhr="{{responseIsXhr}}" response-error="{{responseError}}" loading-time="{{loadingTime}}" timings="{{timings}}" redirect-timings="{{redirectTimings}}" redirects="{{redirects}}" source-message="{{sourceMessage}}" no-url-editor="{{noUrlEditor}}" base-uri="[[baseUri]]" on-api-console-request="_apiRequested"></raml-request-panel><template is="dom-if" if="[[hasResponse]]"><response-view request="[[request]]" response="[[response]]" response-error="[[responseError]]" is-xhr="[[responseIsXhr]]" loading-time="{{loadingTime}}" redirects="[[redirects]]" redirect-timings="[[redirectTimings]]" response-timings="[[timings]]" sent-http-message="[[sourceMessage]]"></response-view></template><raml-aware raml="{{raml}}" scope="raml"></raml-aware><paper-toast id="noAuth" text="The required authorization is not set." duration="3000"></paper-toast></template><script>Polymer({is:"api-console-request",behaviors:[Polymer.IronScrollTargetBehavior,ArcBehaviors.HeadersParserBehavior],properties:{selectedObject:{type:Object,observer:"_selectedObjectChanged"},narrow:{type:Boolean,notify:true},raml:Object,redirectUrl:String,request:Request,response:Response,responseIsXhr:{type:Boolean,value:true},responseError:Object,hasResponse:{type:Boolean,computed:"_computeHasResponse(response)"},loadingTime:Number,timings:Object,redirectTimings:Array,redirects:Array,sourceMessage:String,
+noExtensionBanner:Boolean,isChrome:{type:Boolean,value:function(){return/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor)}},scrollTarget:HTMLElement,appendHeaders:Array,proxy:String,proxyEncodeUrl:Boolean,bowerLocation:{type:String,observer:"_updateRedirectUrl"},noUrlEditor:Boolean,baseUri:String},listeners:{"api-console-response-ready":"_onResponseReady"},ready:function(){if(!this.redirectUrl)this._updateRedirectUrl(this.bowerLocation);this._initExtensionBanner()},_updateRedirectUrl:function(location){var a=
+document.createElement("a");if(!location)location="bower_components/";if(location&&location[location.length-1]!=="/")location+="/";a.href=location+"oauth-authorization/oauth-popup.html";this.redirectUrl=a.href},_initExtensionBanner:function(){if(this.isChrome)this.async(function(){if(!this.noExtensionBanner)this.openInstallExtensionBanner()},1E3)},_computeHasResponse:function(response){return!!response},_apiRequested:function(event){var so=this.selectedObject;if(so&&so.securedBy&&so.securedBy.length)if(!this.authorizationMethod||
+!this.authorizationSettings)if(!event.detail.headers||!/^authorization\s?:\s?.+$/im.test(event.detail.headers))this.$.noAuth.opened=true;this._appendConsoleHeaders(event);this._appendProxy(event)},_appendConsoleHeaders:function(event){var headersToAdd=this.appendHeaders;if(headersToAdd){var eventHeaders=event.detail.headers||"";for(var i=0,len=headersToAdd.length;i<len;i++){var header=headersToAdd[i];eventHeaders=this.replaceHeaderValue(eventHeaders,header.name,header.value)}event.detail.headers=
+eventHeaders}},_appendProxy:function(event){var proxy=this.proxy;if(!proxy)return;var url=this.proxyEncodeUrl?encodeURIComponent(event.detail.url):event.detail.url;url=proxy+url;event.detail.url=url},_selectedObjectChanged:function(){this.set("request",undefined);this.set("response",undefined);this.set("responseError",undefined)},_onResponseReady:function(){this.async(function(){var panel=this.$$("response-view");var position=panel.offsetTop;this.scroll(0,position)},1)},dismissExtensionBanner:function(){this.$$(".extension-banner").classList.remove("active")},
+openInstallExtensionBanner:function(){this.$$(".extension-banner").classList.add("active")}});</script></dom-module><dom-module id="api-console" assetpath="bower_components/api-console/"><template><style>:host{--app-primary-color:#00A2DF;--app-secondary-color:black;display:block;}:host([manual-navigation]) raml-path-selector{@apply (--layout-fit);transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:0.24s;transition-duration:0.24s;-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0);background-color:var(--api-console-manual-navigation-background-color, #fff);z-index:1;}:host([manual-navigation]) raml-path-selector[opened]{transform:translate3d(0px, 0px, 0px);}*[hidden]{display:none !important;}.main-content{min-height:100%;@apply --api-console-main-container;}.pages-content{height:100%;@apply --api-console-pages-container;}iron-pages>*{height:100%;}.nav-content{@apply (--layout-horizontal);@apply (--layout-center);}.nav-content > ::content > *{margin-left:12px;}.drawer-content-wrapper{@apply (--layout-flex);@apply (--layout-vertical);}#drawer{--paper-header-panel-container:{@apply (--layout-horizontal);};}.powered-by{padding:12px 0px;border-top:1px rgba(0,0,0,0.24) solid;margin:8px 12px 0 12px;}a img{text-underline:none;}a.attribution{display:inline-block;width:177px;margin-left:24px;}</style><paper-drawer-panel responsive-width="860px" force-narrow="[[manualNavigation]]"><template is="dom-if" if="[[!manualNavigation]]"><paper-header-panel drawer="" id="drawer"><paper-toolbar><div class="title">API console</div></paper-toolbar><div class="drawer-content-wrapper"><raml-path-selector narrow="[[narrow]]" raml="[[raml]]" selected-path="{{path}}" force-wide-layout="" first-level-opened="" resources-opened="" documentation-opened=""></raml-path-selector><template is="dom-if" if="[[!noAttribution]]" restamp=""><div class="powered-by"><a href="https://github.com/mulesoft/api-console" class="attribution" target="_blank"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 818.9 148"><defs><style>.cls-1{fill:#424143;}.cls-2{font-size:60px;fill:#414042;font-family:OpenSans, Open Sans;}</style></defs><path class="cls-1" d="M436.08,12.57a61.79,61.79,0,1,0,62.08,61.79A62,62,0,0,0,436.08,12.57Zm0,118.8a56.63,56.63,0,1,1,56.63-56.63A56.63,56.63,0,0,1,436.09,131.36Z"></path><path class="cls-1" d="M420.34,102.08a28.4,28.4,0,0,1-15.87-25.84,29.25,29.25,0,0,1,4.89-16.29l20.42,30.43h12.34l20.42-30.43a29.25,29.25,0,0,1,4.89,16.29,28.55,28.55,0,0,1-14,24.87l3.93,15.06a46.47,46.47,0,0,0,2.45-81.29L436.08,71.47,412.6,34.75A46.47,46.47,0,0,0,416.45,117Z"></path><polygon class="cls-1" points="544.97 80.8 529.71 48.31 521.79 48.31 521.79 100.53 529.71 100.53 529.71 65.62 542.03 91.08 547.9 91.08 559.93 65.62 559.93 100.53 567.85 100.53 567.85 48.31 559.93 48.31 544.97 80.8"></polygon><path class="cls-1" d="M597.61,86c0,5.73-3.53,8.29-7.7,8.29s-7.48-2.5-7.48-8.29V63.34h-7.48V87.11c0,4.19.88,7.71,3.74,10.5a12.93,12.93,0,0,0,9.17,3.37,13.28,13.28,0,0,0,9.9-4.18v3.74h7.34V63.34h-7.48Z"></path><path class="cls-1" d="M619.75,89.83V48.31h-7.48v42c0,5.51,3.08,10.27,10.2,10.27h4.62V94.16h-3.3C620.77,94.16,619.75,92.68,619.75,89.83Z"></path><path class="cls-1" d="M645.07,62.91c-9.54,0-15.77,7-15.77,19,0,14.16,7.41,19.07,16.73,19.07,6.53,0,10.12-2,13.93-5.79L655.2,90.7a11.08,11.08,0,0,1-9,3.81c-6.09,0-9.46-4-9.46-10.41h24.13V80.8C660.85,70.24,655.05,62.91,645.07,62.91Zm-8.36,16a11.79,11.79,0,0,1,1-5.06,7.77,7.77,0,0,1,7.41-4.69,7.66,7.66,0,0,1,7.34,4.69,11.62,11.62,0,0,1,1,5.06Z"></path><path class="cls-1" d="M697.78,74.93c-2.2-2-4.91-3.15-9.76-3.89l-5.94-.88a11.67,11.67,0,0,1-5.87-2.42,6.24,6.24,0,0,1-2-4.84c0-4.62,3.37-8.15,9.54-8.15,4.4,0,8.14,1,11.37,4l5.06-5c-4.47-4.18-9.31-5.94-16.21-5.94-10.86,0-17.46,6.23-17.46,15.33,0,4.25,1.25,7.55,3.82,10,2.27,2.12,5.64,3.59,9.9,4.18l6.16.89c3.09.44,4.4,1,5.73,2.2a7,7,0,0,1,2.05,5.43c0,5.06-4,8-10.78,8-5.36,0-9.54-1.17-13.35-5l-5.28,5.21c5,5.06,10.64,6.9,18.48,6.9C694.18,101,702,95.25,702,85.65,702,81.16,700.63,77.43,697.78,74.93Z"></path><path class="cls-1" d="M721.76,62.91a14.88,14.88,0,0,0-11.08,4.4c-3.52,3.66-4.4,8.36-4.4,14.6s.88,11,4.4,14.67a14.88,14.88,0,0,0,11.08,4.4,15,15,0,0,0,11.15-4.4c3.52-3.66,4.4-8.36,4.4-14.67s-.88-10.94-4.4-14.6A15,15,0,0,0,721.76,62.91Zm5.5,29.19a7.65,7.65,0,0,1-5.5,2.2,7.44,7.44,0,0,1-5.42-2.2c-2.28-2.27-2.57-6.17-2.57-10.2s.29-7.92,2.57-10.2a7.39,7.39,0,0,1,5.42-2.13,7.6,7.6,0,0,1,5.5,2.13c2.27,2.27,2.57,6.16,2.57,10.2S729.54,89.83,727.27,92.1Z"></path><path class="cls-1" d="M744.88,58.29V64h-4.26v5.73h4.26v30.81h7.48V69.73h7.41V64h-7.41V58.65c0-2.71,1.31-4.33,4.1-4.33h3.31V47.94h-4.7C748.1,47.94,744.88,52.93,744.88,58.29Z"></path><path class="cls-1" d="M776.12,52.71h-7.48V64h-4.26v5.73h4.26V90.19c0,5.36,3.22,10.35,10.19,10.35h4.47V94.16h-3.08c-2.78,0-4.11-1.62-4.11-4.33V69.73h7.19V64h-7.19Z"></path><path class="cls-1" d="M792.58,58.48a4,4,0,0,0-2.14-2.11,4.11,4.11,0,0,0-3.11,0,4.07,4.07,0,0,0-1.29.84,4,4,0,0,0-.87,1.26,3.86,3.86,0,0,0-.32,1.58,3.94,3.94,0,0,0,.32,1.6,4,4,0,0,0,.87,1.28,4,4,0,0,0,1.29.84,4.19,4.19,0,0,0,3.11,0,3.92,3.92,0,0,0,1.28-.84,4.1,4.1,0,0,0,.87-1.28,4,4,0,0,0,.32-1.6A3.86,3.86,0,0,0,792.58,58.48Zm-.66,2.94a3.34,3.34,0,0,1-.7,1.09,3.25,3.25,0,0,1-1,.72,3.19,3.19,0,0,1-1.3.26,3.24,3.24,0,0,1-2.36-1,3.35,3.35,0,0,1-.7-1.09,3.64,3.64,0,0,1-.25-1.37,3.54,3.54,0,0,1,.25-1.34,3.26,3.26,0,0,1,3.06-2.06,3.21,3.21,0,0,1,1.3.26,3.26,3.26,0,0,1,1.74,1.8,3.52,3.52,0,0,1,.25,1.34A3.62,3.62,0,0,1,791.92,61.42Z"></path><path class="cls-1" d="M790.42,60a1.14,1.14,0,0,0,.35-.93,1.23,1.23,0,0,0-.4-1,1.92,1.92,0,0,0-1.24-.33h-1.81v4.68H788v-2h.77l1.28,2h.78l-1.34-2.07A1.59,1.59,0,0,0,790.42,60Zm-1.61-.19H788V58.32h1l.37,0a1,1,0,0,1,.33.1.63.63,0,0,1,.24.21A.68.68,0,0,1,790,59a.79.79,0,0,1-.1.43.61.61,0,0,1-.27.23,1.19,1.19,0,0,1-.39.09Z"></path><text class="cls-2" transform="translate(19 91.93)">Powered by</text></svg></a></div></template></div></paper-header-panel></template><paper-header-panel main=""><paper-toolbar><paper-icon-button icon="arc:menu" paper-drawer-toggle="" hidden$="[[manualNavigation]]"></paper-icon-button><div class="title">[[raml.title]]</div><div class="nav-content"><content select="[nav]"></content></div></paper-toolbar><div class="main-content"><template is="dom-if" if="[[manualNavigation]]"><raml-path-selector opened$="[[navigationOpened]]" narrow="[[narrow]]" raml="[[raml]]" selected-path="{{path}}" first-level-opened="" resources-opened="" documentation-opened=""></raml-path-selector></template><iron-pages class="pages-content" selected="[[page]]" attr-for-selected="name" role="main" id="mainPages"><raml-documentation-panel name="docs" narrow="[[narrow]]" selected-object="[[selectedObject]]" selected-parent="[[selectedParent]]" path="{{path}}" scroll-target="[[scrollTarget]]" no-try-it="[[noTryIt]]" handle-path-events=""></raml-documentation-panel><api-console-request no-extension-banner="[[noExtensionBanner]]" narrow="[[narrow]]" name="request" scroll-target="[[scrollTarget]]" selected-object="[[selectedObject]]" append-headers="[[_computeAppendHeaders(appendHeaders)]]" proxy="[[proxy]]" proxy-encode-url="[[proxyEncodeUrl]]" bower-location="[[bowerLocation]]" no-url-editor="{{noUrlEditor}}" base-uri="[[baseUri]]"></api-console-request></iron-pages><content select=".api-console-content"></content></div></paper-header-panel></paper-drawer-panel><template is="dom-if" if="[[aware]]" restamp="true"><raml-aware raml="{{raml}}" scope="raml"></raml-aware></template><raml-path-to-object raml="[[raml]]" selected-path="{{path}}" selected-object="{{selectedObject}}" selected-parent="{{selectedParent}}"></raml-path-to-object><api-console-ext-comm></api-console-ext-comm></template><script>Polymer({is:"api-console",behaviors:[Polymer.IronScrollTargetBehavior,ArcBehaviors.HeadersParserBehavior],properties:{page:{type:String,value:"docs",notify:true},raml:Object,jsonFile:String,path:{type:String,notify:true},narrow:{type:Boolean,notify:true},selectedObject:Object,selectedParent:Object,noExtensionBanner:Boolean,aware:String,scrollTarget:{type:HTMLElement,value:function(){return this.$$("paper-header-panel[main]").scroller}},appendHeaders:{type:String},proxy:String,proxyEncodeUrl:Boolean,
+noTryIt:Boolean,manualNavigation:{type:Boolean,reflectToAttribute:true,value:false},navigationOpened:{type:Boolean,notify:true,observer:"_navigationOpenedChanged"},bowerLocation:String,noUrlEditor:Boolean,baseUri:String,noAttribution:{type:Boolean,value:false}},listeners:{"scroll-to":"_onScrollRequested","raml-path-changed":"_innerPathChanged","tryit-requested":"_tryitHandler","raml-selected-path-changed":"_pathChangedEventHandler"},observers:["_ramlChanged(raml)","_jsonFileChanged(jsonFile)"],attached:function(){this.listen(window,
+"api-console-extension-installed","_onExtensionInstalled")},detached:function(){this.unlisten(window,"api-console-extension-installed","_onExtensionInstalled")},ready:function(){this.fire("api-console-ready")},_onScrollRequested:function(e){this.scroll(e.detail.x||0,e.detail.y||0)},_innerPathChanged:function(e){this.set("path",e.detail.path)},_onExtensionInstalled:function(){this.set("noExtensionBanner",true)},_tryitHandler:function(){this.page="request"},_ramlChanged:function(){this.path="summary"},
+_notify:function(message){var t=document.createElement("paper-toast");t.text=message;t.opened=true;document.body.appendChild(t)},_jsonFileChanged:function(url){var context=this;fetch(url).then(function(response){if(response.ok)return response.json()}).then(function(json){context.set("raml",json);if(!json){context._notify("Data unavailable under given URL.");context.fire("json-file-loaded-error")}else context.fire("json-file-loaded")}).catch(function(reason){context._notify("Unable to download data. "+
+reason.message)})},_computeAppendHeaders:function(headers){if(headers)headers=headers.replace("\\n","\n");return this.headersToJSON(headers)},_navigationOpenedChanged:function(value){if(value===undefined||!this.manualNavigation)return;if(value){var context=this;this.__originallScrollTop=this.scrollTarget.scrollTop;this.scrollTarget.scrollTop=0;this.__hideMainTimeout=setTimeout(function(){context.$.mainPages.setAttribute("hidden",true)},200)}else{if(this.__hideMainTimeout)clearTimeout(this.__hideMainTimeout);
+this.$.mainPages.removeAttribute("hidden");this.scrollTarget.scrollTop=this.__originallScrollTop}},_pathChangedEventHandler:function(){if(this.page!=="docs")this.page="docs"}});</script></dom-module><script>!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("fs"),require("typescript"),function(){try{return require("RAML.XmlValidation")}catch(e){}}(),function(){try{return require("RAML.JsonValidation")}catch(e){}}()):"function"==typeof define&&define.amd?define(["fs","typescript","RAML.XmlValidation","RAML.JsonValidation"],t):"object"==typeof exports?exports.Parser=t(require("fs"),require("typescript"),function(){try{return require("RAML.XmlValidation")}catch(e){}}(),function(){try{return require("RAML.JsonValidation")}catch(e){}}()):(e.RAML=e.RAML||{},e.RAML.Parser=t(e.fs,e.typescript,e["RAML.XmlValidation"],e["RAML.JsonValidation"]))}(this,function(__WEBPACK_EXTERNAL_MODULE_43__,__WEBPACK_EXTERNAL_MODULE_151__,__WEBPACK_EXTERNAL_MODULE_161__,__WEBPACK_EXTERNAL_MODULE_162__){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function r(e,t,n){return h.loadApi(e,t,n).getOrElse(null)}function i(e,t,n){return h.loadApi(e,t,n).getOrElse(null)}function o(e,t,n){return{fsResolver:{content:function(r){return r===(n||m.resolve("/","#local.raml")).replace(/\\/,"/")?e:t&&t.fsResolver?t.fsResolver.content(r):void 0},contentAsync:function(r){return r===(n||m.resolve("/","#local.raml")).replace(/\\/,"/")?Promise.resolve(e):t&&t.fsResolver?t.fsResolver.contentAsync(r):void 0}},httpResolver:t?t.httpResolver:null,rejectOnErrors:t?t.rejectOnErrors:!1,attributeDefaults:t?t.attributeDefaults:!0}}function a(e,t){var n=null;return t&&t.filePath&&(n=t.filePath),h.loadApi(n||"/#local.raml",[],o(e,t,n)).getOrElse(null)}function s(e,t){var n=null;return t&&t.filePath&&(n=t.filePath),h.loadApiAsync(n||"/#local.raml",[],o(e,t,n))}function u(e,t,n){return h.loadApiAsync(e,t,n)}function p(e,t,n){return h.loadRAMLAsync(e,t,n)}function c(e){return h.getLanguageElementByRuntimeType(e)}function l(e){return t.api10.isFragment(e)}function f(e){return t.api10.asFragment(e)}var h=n(9),m=n(23),d=n(22);t.api10=n(12),t.api08=n(13),t.loadApiSync=r,t.loadRAMLSync=i,t.parseRAMLSync=a,t.parseRAML=s,t.loadApi=u,t.loadRAML=p,t.getLanguageElementByRuntimeType=c,t.isFragment=l,t.asFragment=f,t.hl=n(10),t.ll=n(11),t.search=n(1),t.stubs=n(2),t.utils=n(3),t.project=n(4),t.universeHelpers=n(14),t.ds=n(36),t.schema=n(5),t.universes=t.ds.universesInfo,t.parser=n(6),t.expander=n(7),t.wrapperHelper=n(8),"undefined"==typeof Promise&&"undefined"!=typeof window&&(window.Promise=d)},function(e,t,n){"use strict";function r(e,t){return v.determineCompletionKind(e,t)}function i(e,t){return v.enumValues(e,t)}function o(e){return v.globalDeclarations(e)}function a(e,t){return g.qName(e,t)}function s(e,t){return v.subTypesWithLocals(e,t)}function u(e,t){return v.nodesDeclaringType(e,t)}function p(e){return v.isExampleNodeContent(e)}function c(e){return v.findExampleContentType(e)}function l(e,t){return v.parseDocumentationContent(e,t)}function f(e,t){return v.parseStructuredExample(e,t)}function h(e){return v.isExampleNode(e)}function m(e,t){return v.referenceTargets(e,t)}function d(e,t){return v.findUsages(e,t)}function y(e,t,n){return v.findDeclaration(e,t,n)}var v=n(27),g=n(15);!function(e){e[e.VALUE_COMPLETION=0]="VALUE_COMPLETION",e[e.KEY_COMPLETION=1]="KEY_COMPLETION",e[e.PATH_COMPLETION=2]="PATH_COMPLETION",e[e.DIRECTIVE_COMPLETION=3]="DIRECTIVE_COMPLETION",e[e.VERSION_COMPLETION=4]="VERSION_COMPLETION",e[e.ANNOTATION_COMPLETION=5]="ANNOTATION_COMPLETION",e[e.SEQUENCE_KEY_COPLETION=6]="SEQUENCE_KEY_COPLETION",e[e.INCOMMENT=7]="INCOMMENT"}(t.LocationKind||(t.LocationKind={}));t.LocationKind;t.determineCompletionKind=r,t.enumValues=i,t.globalDeclarations=o,t.qName=a,t.subTypesWithLocals=s,t.nodesDeclaringType=u,t.isExampleNodeContent=p,t.findExampleContentType=c,t.parseDocumentationContent=l,t.parseStructuredExample=f,t.isExampleNode=h,t.referenceTargets=m,t.findUsages=d,t.findDeclaration=y},function(e,t,n){"use strict";function r(e,t,n,r){return void 0===n&&(n=null),S.createStubNode(e,t,n,r)}function i(e,t,n){return S.createStub(e,t,n)}function o(e,t,n){return S.createStub0(e,t,n)}function a(e,t){return S.createResourceStub(e,t)}function s(e,t){return S.createMethodStub(e,t)}function u(e,t){return S.createResponseStub(e,t)}function p(e,t){return S.createBodyStub(e,t)}function c(e,t){return S.createUriParameterStub(e,t)}function l(e,t){return S.createQueryParameterStub(e,t)}function f(e,t,n,r,i){return void 0===i&&(i=!1),new T.ASTPropImpl(e,t,n,r,i)}function h(e,t,n,r){return new T.ASTNodeImpl(e,t,n,r)}function m(e,t,n,r){return new E(e,t,n,r)}function d(e,t,n,r){return new _(e,t,n,r)}function y(e,t){return b.createMapping(e,t)}function v(){return b.createMap([])}function g(e,t){return S.createAttr(e,t)}var A=this&&this.__extends||function(e,t){function n(){this.constructor=e}for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)},T=n(15),b=n(24),S=n(16);t.createStubNode=r,t.createStub=i,t.createStubNoParentPatch=o,t.createResourceStub=a,t.createMethodStub=s,t.createResponseStub=u,t.createBodyStub=p,t.createUriParameterStub=c,t.createQueryParameterStub=l,t.createASTPropImpl=f,t.createASTNodeImpl=h,t.createVirtualASTPropImpl=m,t.createVirtualNodeImpl=d;var E=function(e){function t(){e.apply(this,arguments)}return A(t,e),t.prototype.value=function(){return""},t}(T.ASTPropImpl),_=function(e){function t(){e.apply(this,arguments)}return A(t,e),t.prototype.value=function(){return""},t}(T.ASTNodeImpl);t.createMapping=y,t.createMap=v,t.createAttr=g},function(e,t,n){"use strict";function r(){return p.hasAsyncRequests()}function i(e){p.addLoadCallback(e)}function o(){return h.getTransformNames()}function a(e){return c.getFragmentDefenitionName(e)}function s(e,t,n){if(n.range()instanceof l.ReferenceType){var r=(n.range(),f.createNode(e));return new c.StructuredValue(r,t,n)}return e}function u(e){return(new m.UrlParameterNameValidator).parseUrl(e)}var p=n(25),c=n(15),l=n(36),f=n(24),h=n(28),m=n(29),d=n(30),y=n(17);t.hasAsyncRequests=r,t.addLoadCallback=i,t.getTransformerNames=o,t.updateType=function(e){var t=d.doDescrimination(e);null==t&&e.property()&&(t=e.property().range()),t&&e.patchType(t)},t.getFragmentDefenitionName=a,t.genStructuredValue=s,t.parseUrl=u;var v=function(){function e(e,t){this.node=e,this.targetUnitRoot=t}return e}();t.UnitLink=v;var g=function(){function e(e,t){this.errors=e,this.primaryUnitRoot=t}return e.prototype.accept=function(e){this.transformIssue(e),this.errors.push(e)},e.prototype.transformIssue=function(e){var t=this,n=null,r=this.findIssueTail(e);r.node&&(n=r.node.lowLevel().unit());var i=this.primaryUnitRoot.lowLevel().unit();if(n&&i&&n!=i){var o=this.findPathToNodeUnit(this.primaryUnitRoot,r.node);if(o&&o.length>0){var a=o.map(function(n){return t.convertConnectingNodeToError(n,e)});if(a&&a.length>0)for(var s=r,u=a.length-1;u>=0;u--){var p=a[u];s.extras=[],s.extras.push(p),s=p}}}},e.prototype.begin=function(){},e.prototype.end=function(){},e.prototype.acceptUnique=function(e){for(var t=0,n=this.errors;t<n.length;t++){var r=n[t];if(r.start==e.start&&r.message==e.message)return}this.accept(e)},e.prototype.findPathToNodeUnit=function(e,t){return t.lowLevel()&&t.lowLevel().unit()?this.findPathToNodeUnitRecursively(e,t.lowLevel().unit()):[]},e.prototype.findPathToNodeUnitRecursively=function(e,t){for(var n=this.findUnitLinks(e),r=0;r<n.length;r++){var i=n[r];if(i.targetUnitRoot&&i.targetUnitRoot.lowLevel()&&i.targetUnitRoot.lowLevel().unit()==t)return[i.node];var o=this.findPathToNodeUnitRecursively(i.targetUnitRoot,t);if(o)return o.unshift(i.node),o}return null},e.prototype.findUnitLinks=function(e){var t=[];return t=t.concat(this.findMasterLinks(e))},e.prototype.findMasterLinks=function(e){if(!e.getMaster)return[];var t=e.getMaster();if(!t)return[];var n=e.asElement().attr(y.Universe10.Extension.properties["extends"].name);return n&&n.value()?[new v(n,t)]:[]},e.prototype.convertConnectingNodeToError=function(e,t){if(!e)return null;var n=e.lowLevel(),r=n.start(),i=n.end(),o=this.generateLinkMessageByNode(e,t);return{code:t.code,isWarning:t.isWarning,message:o,node:e,start:r,end:i,path:n.unit()?n.unit().path():"",extras:[],unit:n.unit()}},e.prototype.generateLinkMessageByNode=function(e,t){return e.property().nameId()==y.Universe10.Extension.properties["extends"].name?"Error in the master file: "+t.message:t.message},e.prototype.findIssueTail=function(e){return e.extras&&0!=e.extras.length?this.findIssueTail(e.extras[0]):e},e}();t.PointOfViewValidationAcceptorImpl=g},function(e,t,n){"use strict";function r(e,t,n){return new i.Project(e,t,n)}var i=n(24);t.createProject=r},function(e,t,n){"use strict";function r(e,t){var n=n.createProject(d.dirname(e)),r={$ref:t},i=JSON.stringify(r),o=n.setCachedUnitContent(d.basename(e),i),s=a(i,o);return s.jsonSchema.$ref}function i(e,t){return v.createSchema(e,new y.ContentProvider(t))}function o(e){return v.getXMLSchema(e)}function a(e,t){return v.getJSONSchema(e,new y.ContentProvider(t))}function s(e,t,n){return h.completeReference(e,t,n)}function u(e){return h.getIncludePath(e)}function p(e){return h.getIncludeReference(e)}function c(){return new m.SchemaToModelGenerator}function l(){return new m.ModelToSchemaGenerator}var f=n(36),h=n(26),m=n(18),d=n(23),y=n(31),v=f.getSchemaUtils();t.dereference=r,t.createSchema=i,t.getXMLSchema=o,t.getJSONSchema=a,t.completeReference=s,t.getIncludePath=u,t.getIncludeReference=p,t.createSchemaModelGenerator=c,t.createModelToSchemaGenerator=l},function(e,t,n){"use strict";t.modify=n(19)},function(e,t,n){"use strict";function r(e){return i.expandTraitsAndResourceTypes(e)}var i=n(28);t.expandTraitsAndResourceTypes=r},function(e,t,n){"use strict";function r(e){return i.completeRelativeUri(e)}var i=n(33);t.completeRelativeUri=r},function(e,t,n){"use strict";function r(e,t,n){var r=o(e,t,n);return new y(r)}function i(e,t,n){var r=o(e,t,n);return new y(r)}function o(e,t,n){var r=Array.isArray(t),i=r?t:null,o=r?n:t;o=o||{};var a=c(e,o),s=e.indexOf("://"),u=-1!=s&&6>s?e:d.basename(e),p=a.unit(u);n&&!i&&(i=null);var h;if(p)if(i&&i.length>0){var m=[];i.forEach(function(e){if(!e||0==e.trim().length)throw new Error("Extensions and overlays list should contain legal file paths")}),i.forEach(function(e){m.push(a.unit(e,d.isAbsolute(e)))}),m.forEach(function(e){return l(e,o)}),h=l(T.mergeAPIs(p,m,g.OverlayMergeMode.MERGE),o)}else h=l(p,o),h.highLevel().setMergeMode(g.OverlayMergeMode.MERGE);if(!p)throw new Error("Can not resolve :"+e);if(o.rejectOnErrors&&h&&h.errors().filter(function(e){return!e.isWarning}).length)throw f(h);return null!=o.attributeDefaults&&h?h.setAttributeDefaults(o.attributeDefaults):h&&h.setAttributeDefaults(!0),h}function a(e,t,n){var r=s(e,t,n);return r.then(function(e){return e})}function s(e,t,n){var r=Array.isArray(t),i=r?t:null,o=r?n:t;o=o||{};var a=c(e,o),s=e.indexOf("://"),u=-1!=s&&6>s?e:d.basename(e);return n&&!i&&(i=null),i&&0!=i.length?(i.forEach(function(e){if(!e||0==e.trim().length)throw new Error("Extensions and overlays list should contain legal file paths")}),p(a,u,o).then(function(e){var t=[];return i.forEach(function(e){t.push(p(a,e,o))}),Promise.all(t).then(function(t){var n=[];t.forEach(function(e){return n.push(e.highLevel().lowLevel().unit())});var r=T.mergeAPIs(e.highLevel().lowLevel().unit(),n,g.OverlayMergeMode.MERGE),i=r.wrapperNode();return null!=o.attributeDefaults&&r?i.setAttributeDefaults(o.attributeDefaults):r&&i.setAttributeDefaults(!0),i.highLevel()}).then(function(e){return l(e,o)})})):p(a,u,o).then(function(e){return e.highLevel().setMergeMode(g.OverlayMergeMode.MERGE),null!=o.attributeDefaults&&e?e.setAttributeDefaults(o.attributeDefaults):e&&e.setAttributeDefaults(!0),e})}function u(e){if(null==e)return null;var t=e.getAdapter(S.RAMLService).getDeclaringNode();return null==t?null:t.wrapperNode()}function p(e,t,n){return A.fetchIncludesAndMasterAsync(e,t).then(function(e){try{var t=l(e,n);return n.rejectOnErrors&&t&&t.errors().filter(function(e){return!e.isWarning}).length?Promise.reject(f(t)):t}catch(r){return Promise.reject(r)}})}function c(e,t){t=t||{};var n=t.fsResolver,r=t.httpResolver,i=d.dirname(e),o=new v.Project(i,n,r);return o}function l(e,t,n){if(void 0===n&&(n=!1),!e)return null;var r=null,i=null;e.isRAMLUnit?r=e:(i=e,r=i.lowLevel().unit());var o,a=r.contents(),s=g.ramlFirstLine(a);if(!s)throw new Error("Invalid first line. A RAML document is expected to start with '#%RAML <version> <?fragment type>'.");var u,p,c=s[1];s[2];if("0.8"==c?p="RAML08":"1.0"==c&&(p="RAML10"),!p)throw new Error("Unknown version of RAML expected to see one of '#%RAML 0.8' or '#%RAML 1.0'");if("RAML08"==p&&n)throw new Error("Extensions and overlays are not supported in RAML 0.8.");var l=E(p);l.type(u);return i||(i=g.fromUnit(r)),o=i.wrapperNode()}function f(e){var t=new Error("Api contains errors.");return t.parserErrors=e.errors(),t}function h(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!0);var r=E("RAML10"),i=r.type(b.Universe10.Api.name),o=new v.Project(e),a=[];return o.units().forEach(function(e){var r=e.ast();t&&(r=A.toChildCachingNode(r));var o=new m.ApiImpl(new g.ASTNodeImpl(r,null,i,null));n&&(o=T.expandTraitsAndResourceTypes(o)),a.push(o)}),a}var m=n(20),d=n(23),y=n(21),v=n(24),g=n(15),A=n(24),T=n(28),b=n(17),S=n(34),E=n(35);t.loadApi=r,t.loadRAML=i,t.loadApiAsync=a,t.loadRAMLAsync=s,t.getLanguageElementByRuntimeType=u,t.toError=f,t.loadApis1=h},function(e,t,n){"use strict";function r(e){return e.asElement&&e.getKind&&e.asAttr&&e.lowLevel}!function(e){e[e.BASIC=0]="BASIC",e[e.NODE=1]="NODE",e[e.ATTRIBUTE=2]="ATTRIBUTE"}(t.NodeKind||(t.NodeKind={}));t.NodeKind;!function(e){e[e.RAML10=0]="RAML10",e[e.RAML08=1]="RAML08"}(t.RAMLVersion||(t.RAMLVersion={}));t.RAMLVersion;t.isParseResult=r,function(e){e[e.UNRESOLVED_REFERENCE=0]="UNRESOLVED_REFERENCE",e[e.YAML_ERROR=1]="YAML_ERROR",e[e.UNKNOWN_NODE=2]="UNKNOWN_NODE",e[e.MISSING_REQUIRED_PROPERTY=3]="MISSING_REQUIRED_PROPERTY",e[e.PROPERTY_EXPECT_TO_HAVE_SINGLE_VALUE=4]="PROPERTY_EXPECT_TO_HAVE_SINGLE_VALUE",e[e.KEY_SHOULD_BE_UNIQUE_INTHISCONTEXT=5]="KEY_SHOULD_BE_UNIQUE_INTHISCONTEXT",e[e.UNABLE_TO_RESOLVE_INCLUDE_FILE=6]="UNABLE_TO_RESOLVE_INCLUDE_FILE",e[e.INVALID_VALUE_SCHEMA=7]="INVALID_VALUE_SCHEMA",e[e.MISSED_CONTEXT_REQUIREMENT=8]="MISSED_CONTEXT_REQUIREMENT",e[e.NODE_HAS_VALUE=9]="NODE_HAS_VALUE",e[e.ONLY_OVERRIDE_ALLOWED=10]="ONLY_OVERRIDE_ALLOWED",e[e.ILLEGAL_PROPERTY_VALUE=11]="ILLEGAL_PROPERTY_VALUE",e[e.ILLEGAL_PROPERTY=12]="ILLEGAL_PROPERTY",e[e.INVALID_PROPERTY=13]="INVALID_PROPERTY"}(t.IssueCode||(t.IssueCode={}));t.IssueCode},function(e,t,n){"use strict";function r(e,t){return new T(v.CHANGE_VALUE,e,t,-1)}function i(e,t){return new T(v.CHANGE_VALUE,e,t.lowLevel(),-1)}function o(e,t){return new T(v.CHANGE_KEY,e,t,-1)}function a(e,t){return new T(v.REMOVE_CHILD,e,t,-1)}function s(e,t,n,r){void 0===n&&(n=null),void 0===r&&(r=!1);var i=new T(v.ADD_CHILD,e,t,-1);return i.insertionPoint=n,i.toSeq=r,i}function u(e,t){return new T(v.INIT_RAML_FILE,e,t,-1)}function p(e,t,n){if(h.isAbsolute(e)){var r=h.extname(t);".xsd"!=r&&(e=e.substr(1),t=c(n,h.basename(t)))}return l(e)||h.isAbsolute(e)?e:l(t)||h.isAbsolute(t)?c(h.dirname(t),e):c(h.dirname(c(n,t)),e)}function c(e,t){if(l(t))return t;var n;if(l(e)){var r=d.stringEndsWith(e,"/")?e:e+"/";n=m.resolve(r,t).replace(/\\/g,"/")}else n=h.resolve(e,t).replace(/\\/g,"/");return n}function l(e){return null==e?!1:d.stringStartsWith(e,"http://")||d.stringStartsWith(e,"https://")}function f(e){return e.start&&e.end&&e.unit&&e.key&&e.value&&e.children&&e.includePath}var h=n(23),m=n(45),d=n(32),y=function(){function e(){}return e}();t.ASTDelta=y,function(e){e[e.ADD_CHILD=0]="ADD_CHILD",e[e.REMOVE_CHILD=1]="REMOVE_CHILD",e[e.MOVE_CHILD=2]="MOVE_CHILD",e[e.CHANGE_KEY=3]="CHANGE_KEY",e[e.CHANGE_VALUE=4]="CHANGE_VALUE",e[e.INIT_RAML_FILE=5]="INIT_RAML_FILE"}(t.CommandKind||(t.CommandKind={}));var v=t.CommandKind,g=function(){function e(e,t,n,r,i){void 0===i&&(i=null),this.offset=e,this.replacementLength=t,this.text=n,this.unit=r,this.target=i}return e}();t.TextChangeCommand=g;var A=function(){function e(){this.commands=[]}return e}();t.CompositeCommand=A,function(e){e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.END=2]="END",e[e.POINT=3]="POINT"}(t.InsertionPointType||(t.InsertionPointType={}));var T=(t.InsertionPointType,function(){function e(e,t,n,r){this.toSeq=!1,this.kind=e,this.target=t,this.value=n,this.position=r}return e}());t.ASTChangeCommand=T,t.setAttr=r,t.setAttrStructured=i,t.setKey=o,t.removeNode=a,t.insertNode=s,t.initRamlFile=u;var b=function(){function e(e,t){this.content=e,this.absPath=t}return e.prototype.position=function(e){var t=e;this.initMapping();for(var n=0;n<this.mapping.length;n++){var r=this.mapping[n];if(r>t)return{line:n,column:t,position:e};t-=r}if(0==t)return{line:this.mapping.length-1,column:this.mapping[this.mapping.length-1],position:this.content.length};if(1==t)return{line:this.mapping.length-1,column:this.mapping[this.mapping.length-1]-1,position:e-1};throw new Error("Character position exceeds text length: "+e+" > + "+this.content.length+".\nUnit path: "+this.absPath)},e.prototype.initMapping=function(){if(null==this.mapping){if(null==this.content)throw new Error("Line Mapper has been given null content"+(null!=this.absPath?". Path: "+this.absPath:" and null path."));this.mapping=[];for(var e=0,t=this.content.length,n=0;t>n;n++)"\r"==this.content.charAt(n)?t-1>n&&"\n"==this.content.charAt(n+1)?(this.mapping.push(n-e+2),e=n+2,n++):(this.mapping.push(n-e+1),e=n+1):"\n"==this.content.charAt(n)&&(this.mapping.push(n-e+1),e=n+1);this.mapping.push(t-e)}},e}();t.LineMapperImpl=b,t.buildPath=p,t.toAbsolutePath=c,t.isWebPath=l,t.isLowLevelNode=f},function(e,t,n){"use strict";function r(e){return"Api"==e.kind()&&"RAML10"==e.RAMLVersion()}function i(e){return"LibraryBase"==e.kind()&&"RAML10"==e.RAMLVersion()}function o(e){return"Annotable"==e.kind()&&"RAML10"==e.RAMLVersion()}function a(e){return"AnnotationRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function s(e){return"Reference"==e.kind()&&"RAML10"==e.RAMLVersion()}function u(e){return"ValueType"==e.kind()&&"RAML10"==e.RAMLVersion()}function p(e){return"StringType"==e.kind()&&"RAML10"==e.RAMLVersion()}function c(e){return"UriTemplate"==e.kind()&&"RAML10"==e.RAMLVersion()}function l(e){return"RelativeUriString"==e.kind()&&"RAML10"==e.RAMLVersion()}function f(e){return"FullUriTemplateString"==e.kind()&&"RAML10"==e.RAMLVersion()}function h(e){return"StatusCodeString"==e.kind()&&"RAML10"==e.RAMLVersion()}function m(e){return"FixedUriString"==e.kind()&&"RAML10"==e.RAMLVersion()}function d(e){return"ContentType"==e.kind()&&"RAML10"==e.RAMLVersion()}function y(e){return"MarkdownString"==e.kind()&&"RAML10"==e.RAMLVersion()}function v(e){return"SchemaString"==e.kind()&&"RAML10"==e.RAMLVersion()}function g(e){return"MimeType"==e.kind()&&"RAML10"==e.RAMLVersion()}function A(e){return"AnyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function T(e){return"NumberType"==e.kind()&&"RAML10"==e.RAMLVersion()}function b(e){return"IntegerType"==e.kind()&&"RAML10"==e.RAMLVersion()}function S(e){return"NullType"==e.kind()&&"RAML10"==e.RAMLVersion()}function E(e){return"TimeOnlyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function _(e){return"DateOnlyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function w(e){return"DateTimeOnlyType"==e.kind()&&"RAML10"==e.RAMLVersion()}function N(e){return"DateTimeType"==e.kind()&&"RAML10"==e.RAMLVersion()}function M(e){return"FileType"==e.kind()&&"RAML10"==e.RAMLVersion()}function R(e){return"BooleanType"==e.kind()&&"RAML10"==e.RAMLVersion()}function I(e){return"AnnotationTarget"==e.kind()&&"RAML10"==e.RAMLVersion()}function P(e){return"TraitRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function L(e){return"Trait"==e.kind()&&"RAML10"==e.RAMLVersion()}function C(e){return"MethodBase"==e.kind()&&"RAML10"==e.RAMLVersion()}function O(e){return"Operation"==e.kind()&&"RAML10"==e.RAMLVersion()}function D(e){return"TypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function x(e){return"ModelLocation"==e.kind()&&"RAML10"==e.RAMLVersion()}function U(e){return"LocationKind"==e.kind()&&"RAML10"==e.RAMLVersion()}function k(e){return"ExampleSpec"==e.kind()&&"RAML10"==e.RAMLVersion()}function F(e){return"UsesDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function B(e){return"XMLFacetInfo"==e.kind()&&"RAML10"==e.RAMLVersion()}function V(e){return"ArrayTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function K(e){return"UnionTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function j(e){return"ObjectTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function q(e){return"StringTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function H(e){return"BooleanTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function Y(e){return"NumberTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function G(e){return"IntegerTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function z(e){return"DateOnlyTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function W(e){return"TimeOnlyTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function X(e){return"DateTimeOnlyTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function $(e){return"DateTimeTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function J(e){return"FileTypeDeclaration"==e.kind()&&"RAML10"==e.RAMLVersion()}function Q(e){return"Response"==e.kind()&&"RAML10"==e.RAMLVersion()}function Z(e){return"SecuritySchemePart"==e.kind()&&"RAML10"==e.RAMLVersion()}function ee(e){return"SecuritySchemeRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function te(e){return"AbstractSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ne(e){return"SecuritySchemeSettings"==e.kind()&&"RAML10"==e.RAMLVersion()}function re(e){return"OAuth1SecuritySchemeSettings"==e.kind()&&"RAML10"==e.RAMLVersion()}function ie(e){return"OAuth2SecuritySchemeSettings"==e.kind()&&"RAML10"==e.RAMLVersion()}function oe(e){return"OAuth2SecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ae(e){return"OAuth1SecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function se(e){return"PassThroughSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ue(e){return"BasicSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function pe(e){return"DigestSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function ce(e){return"CustomSecurityScheme"==e.kind()&&"RAML10"==e.RAMLVersion()}function le(e){return"Method"==e.kind()&&"RAML10"==e.RAMLVersion()}function fe(e){return"ResourceTypeRef"==e.kind()&&"RAML10"==e.RAMLVersion()}function he(e){return"ResourceType"==e.kind()&&"RAML10"==e.RAMLVersion()}function me(e){return"ResourceBase"==e.kind()&&"RAML10"==e.RAMLVersion()}function de(e){return"Resource"==e.kind()&&"RAML10"==e.RAMLVersion()}function ye(e){return"DocumentationItem"==e.kind()&&"RAML10"==e.RAMLVersion()}function ve(e){return"Library"==e.kind()&&"RAML10"==e.RAMLVersion()}function ge(e){return"Overlay"==e.kind()&&"RAML10"==e.RAMLVersion()}function Ae(e){return"Extension"==e.kind()&&"RAML10"==e.RAMLVersion()}function Te(e){return null==e.highLevel().parent()}function be(e){return Te(e)?e:null}t.isApi=r,t.isLibraryBase=i,t.isAnnotable=o,t.isAnnotationRef=a,t.isReference=s,t.isValueType=u,t.isStringType=p,t.isUriTemplate=c,t.isRelativeUriString=l,t.isFullUriTemplateString=f,t.isStatusCodeString=h,t.isFixedUriString=m,t.isContentType=d,t.isMarkdownString=y,t.isSchemaString=v,t.isMimeType=g,t.isAnyType=A,t.isNumberType=T,t.isIntegerType=b,t.isNullType=S,t.isTimeOnlyType=E,t.isDateOnlyType=_,t.isDateTimeOnlyType=w,t.isDateTimeType=N,t.isFileType=M,t.isBooleanType=R,t.isAnnotationTarget=I,t.isTraitRef=P,t.isTrait=L,t.isMethodBase=C,t.isOperation=O,t.isTypeDeclaration=D,t.isModelLocation=x,t.isLocationKind=U,t.isExampleSpec=k,t.isUsesDeclaration=F,t.isXMLFacetInfo=B,t.isArrayTypeDeclaration=V,t.isUnionTypeDeclaration=K,t.isObjectTypeDeclaration=j,t.isStringTypeDeclaration=q,t.isBooleanTypeDeclaration=H,t.isNumberTypeDeclaration=Y,t.isIntegerTypeDeclaration=G,t.isDateOnlyTypeDeclaration=z,t.isTimeOnlyTypeDeclaration=W,t.isDateTimeOnlyTypeDeclaration=X,t.isDateTimeTypeDeclaration=$,t.isFileTypeDeclaration=J,t.isResponse=Q,t.isSecuritySchemePart=Z,t.isSecuritySchemeRef=ee,t.isAbstractSecurityScheme=te,t.isSecuritySchemeSettings=ne,t.isOAuth1SecuritySchemeSettings=re,t.isOAuth2SecuritySchemeSettings=ie,t.isOAuth2SecurityScheme=oe,t.isOAuth1SecurityScheme=ae,t.isPassThroughSecurityScheme=se,t.isBasicSecurityScheme=ue,t.isDigestSecurityScheme=pe,t.isCustomSecurityScheme=ce,t.isMethod=le,t.isResourceTypeRef=fe,t.isResourceType=he,t.isResourceBase=me,t.isResource=de,t.isDocumentationItem=ye,t.isLibrary=ve,t.isOverlay=ge,t.isExtension=Ae,t.isFragment=Te,t.asFragment=be},function(e,t,n){"use strict";function r(e){return"Api"==e.kind()&&"RAML08"==e.RAMLVersion()}function i(e){return"FullUriTemplateString"==e.kind()&&"RAML08"==e.RAMLVersion()}function o(e){return"UriTemplate"==e.kind()&&"RAML08"==e.RAMLVersion()}function a(e){return"StringType"==e.kind()&&"RAML08"==e.RAMLVersion()}function s(e){return"ValueType"==e.kind()&&"RAML08"==e.RAMLVersion()}function u(e){return"AnyType"==e.kind()&&"RAML08"==e.RAMLVersion()}function p(e){return"NumberType"==e.kind()&&"RAML08"==e.RAMLVersion()}function c(e){return"BooleanType"==e.kind()&&"RAML08"==e.RAMLVersion()}function l(e){return"Reference"==e.kind()&&"RAML08"==e.RAMLVersion()}function f(e){return"ResourceTypeRef"==e.kind()&&"RAML08"==e.RAMLVersion()}function h(e){return"ResourceType"==e.kind()&&"RAML08"==e.RAMLVersion()}function m(e){return"Method"==e.kind()&&"RAML08"==e.RAMLVersion()}function d(e){return"MethodBase"==e.kind()&&"RAML08"==e.RAMLVersion()}function y(e){return"Response"==e.kind()&&"RAML08"==e.RAMLVersion()}function v(e){return"StatusCodeString"==e.kind()&&"RAML08"==e.RAMLVersion()}function g(e){return"Parameter"==e.kind()&&"RAML08"==e.RAMLVersion()}function A(e){return"ParameterLocation"==e.kind()&&"RAML08"==e.RAMLVersion()}function T(e){return"MarkdownString"==e.kind()&&"RAML08"==e.RAMLVersion()}function b(e){return"StringTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function S(e){return"BooleanTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function E(e){return"NumberTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function _(e){return"IntegerTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function w(e){return"DateTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function N(e){return"FileTypeDeclaration"==e.kind()&&"RAML08"==e.RAMLVersion()}function M(e){return"BodyLike"==e.kind()&&"RAML08"==e.RAMLVersion()}function R(e){return"SchemaString"==e.kind()&&"RAML08"==e.RAMLVersion()}function I(e){return"JSonSchemaString"==e.kind()&&"RAML08"==e.RAMLVersion()}function P(e){return"XMLSchemaString"==e.kind()&&"RAML08"==e.RAMLVersion()}function L(e){return"ExampleString"==e.kind()&&"RAML08"==e.RAMLVersion()}function C(e){return"JSONExample"==e.kind()&&"RAML08"==e.RAMLVersion()}function O(e){return"XMLExample"==e.kind()&&"RAML08"==e.RAMLVersion()}function D(e){return"XMLBody"==e.kind()&&"RAML08"==e.RAMLVersion()}function x(e){return"JSONBody"==e.kind()&&"RAML08"==e.RAMLVersion()}function U(e){return"SecuritySchemeRef"==e.kind()&&"RAML08"==e.RAMLVersion()}function k(e){return"AbstractSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function F(e){return"SecuritySchemePart"==e.kind()&&"RAML08"==e.RAMLVersion()}function B(e){return"TraitRef"==e.kind()&&"RAML08"==e.RAMLVersion()}function V(e){return"Trait"==e.kind()&&"RAML08"==e.RAMLVersion()}function K(e){return"SecuritySchemeSettings"==e.kind()&&"RAML08"==e.RAMLVersion()}function j(e){return"OAuth1SecuritySchemeSettings"==e.kind()&&"RAML08"==e.RAMLVersion()}function q(e){return"FixedUri"==e.kind()&&"RAML08"==e.RAMLVersion()}function H(e){return"OAuth2SecuritySchemeSettings"==e.kind()&&"RAML08"==e.RAMLVersion()}function Y(e){return"OAuth2SecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function G(e){return"OAuth1SecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function z(e){return"BasicSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function W(e){return"DigestSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function X(e){return"CustomSecurityScheme"==e.kind()&&"RAML08"==e.RAMLVersion()}function $(e){return"MimeType"==e.kind()&&"RAML08"==e.RAMLVersion()}function J(e){return"RelativeUriString"==e.kind()&&"RAML08"==e.RAMLVersion()}function Q(e){return"GlobalSchema"==e.kind()&&"RAML08"==e.RAMLVersion()}function Z(e){return"RAMLSimpleElement"==e.kind()&&"RAML08"==e.RAMLVersion()}function ee(e){return"DocumentationItem"==e.kind()&&"RAML08"==e.RAMLVersion()}function te(e){return"Resource"==e.kind()&&"RAML08"==e.RAMLVersion()}t.isApi=r,t.isFullUriTemplateString=i,t.isUriTemplate=o,t.isStringType=a,t.isValueType=s,t.isAnyType=u,t.isNumberType=p,t.isBooleanType=c,t.isReference=l,t.isResourceTypeRef=f,t.isResourceType=h,t.isMethod=m,t.isMethodBase=d,t.isResponse=y,t.isStatusCodeString=v,t.isParameter=g,t.isParameterLocation=A,t.isMarkdownString=T,t.isStringTypeDeclaration=b,t.isBooleanTypeDeclaration=S,t.isNumberTypeDeclaration=E,t.isIntegerTypeDeclaration=_,t.isDateTypeDeclaration=w,t.isFileTypeDeclaration=N,t.isBodyLike=M,t.isSchemaString=R,t.isJSonSchemaString=I,t.isXMLSchemaString=P,t.isExampleString=L,t.isJSONExample=C,t.isXMLExample=O,t.isXMLBody=D,t.isJSONBody=x,t.isSecuritySchemeRef=U,t.isAbstractSecurityScheme=k,t.isSecuritySchemePart=F,t.isTraitRef=B,t.isTrait=V,t.isSecuritySchemeSettings=K,t.isOAuth1SecuritySchemeSettings=j,t.isFixedUri=q,t.isOAuth2SecuritySchemeSettings=H,t.isOAuth2SecurityScheme=Y,t.isOAuth1SecurityScheme=G,t.isBasicSecurityScheme=z,t.isDigestSecurityScheme=W,t.isCustomSecurityScheme=X,t.isMimeType=$,t.isRelativeUriString=J,t.isGlobalSchema=Q,t.isRAMLSimpleElement=Z,t.isDocumentationItem=ee,t.isResource=te},function(e,t,n){"use strict";function r(e){return e.nameId()===Ke.Universe10.Api.properties.documentation.name||e.nameId()===Ke.Universe08.Api.properties.documentation.name}function i(e){return e===Ke.Universe10.Trait.properties.usage.name||e===Ke.Universe08.Trait.properties.usage.name||e===Ke.Universe10.ResourceType.properties.usage.name||e===Ke.Universe08.ResourceType.properties.usage.name||e===Ke.Universe10.Library.properties.usage.name||e===Ke.Universe10.Overlay.properties.usage.name||e===Ke.Universe10.Extension.properties.usage.name}function o(e){return i(e.nameId())}function a(e){return e.nameId()==Ke.Universe10.Overlay.properties["extends"].name||e.nameId()==Ke.Universe10.Extension.properties["extends"].name}function s(e){return e===Ke.Universe10.TypeDeclaration.properties.description.name||"description"===e}function u(e){return s(e.nameId())}function p(e){return e===Ke.Universe10.TypeDeclaration.properties.required.name||e===Ke.Universe08.Parameter.properties.required.name||"required"===e}function c(e){return e===Ke.Universe10.TypeDeclaration.properties.displayName.name||"displayName"===e}function l(e){return c(e.nameId())}function f(e){return p(e.nameId())}function h(e){return e===Ke.Universe10.Api.properties.title.name||e===Ke.Universe08.Api.properties.title.name||e===Ke.Universe10.DocumentationItem.properties.title.name||e===Ke.Universe08.DocumentationItem.properties.title.name||e===Ke.Universe10.Overlay.properties.title.name||e===Ke.Universe10.Extension.properties.title.name}function m(e){return h(e.nameId())}function d(e){return y(e.nameId())}function y(e){return e===Ke.Universe08.MethodBase.properties.headers.name||e===Ke.Universe08.Response.properties.headers.name||e===Ke.Universe08.SecuritySchemePart.properties.headers.name||e===Ke.Universe10.MethodBase.properties.headers.name||e===Ke.Universe10.Response.properties.headers.name}function v(e){return g(e.nameId())}function g(e){return e===Ke.Universe08.BodyLike.properties.formParameters.name}function A(e){return T(e.nameId())}function T(e){
 return e===Ke.Universe08.MethodBase.properties.queryParameters.name||e===Ke.Universe08.SecuritySchemePart.properties.queryParameters.name||e===Ke.Universe10.MethodBase.properties.queryParameters.name}function b(e){return e.nameId()===Ke.Universe10.Api.properties.annotations.name||e.nameId()===Ke.Universe10.TypeDeclaration.properties.annotations.name||e.nameId()===Ke.Universe10.Response.properties.annotations.name}function S(e){return e.nameId()===Ke.Universe10.AnnotationRef.properties.annotation.name}function E(e){return e.nameId()===Ke.Universe10.MethodBase.properties.is.name||e.nameId()===Ke.Universe08.Method.properties.is.name||e.nameId()===Ke.Universe10.ResourceBase.properties.is.name||e.nameId()===Ke.Universe08.ResourceType.properties.is.name||e.nameId()===Ke.Universe08.Resource.properties.is.name}function _(e){return e.nameId()===Ke.Universe10.Api.properties.securedBy.name||e.nameId()===Ke.Universe08.Api.properties.securedBy.name||e.nameId()===Ke.Universe10.MethodBase.properties.securedBy.name||e.nameId()===Ke.Universe08.MethodBase.properties.securedBy.name||e.nameId()===Ke.Universe08.ResourceType.properties.securedBy.name||e.nameId()===Ke.Universe08.Resource.properties.securedBy.name||e.nameId()===Ke.Universe10.ResourceBase.properties.securedBy.name}function w(e){return e.nameId()===Ke.Universe10.LibraryBase.properties.securitySchemes.name||e.nameId()===Ke.Universe08.Api.properties.securitySchemes.name}function N(e){return e.nameId()===Ke.Universe10.SecuritySchemeRef.properties.securityScheme.name||e.nameId()===Ke.Universe08.SecuritySchemeRef.properties.securityScheme.name}function M(e){return e.nameId()===Ke.Universe10.AbstractSecurityScheme.properties.type.name||e.nameId()===Ke.Universe08.AbstractSecurityScheme.properties.type.name||e.nameId()===Ke.Universe08.ResourceType.properties.type.name||e.nameId()===Ke.Universe08.Resource.properties.type.name||e.nameId()===Ke.Universe08.Parameter.properties.type.name||e.nameId()===Ke.Universe10.ResourceBase.properties.type.name||e.nameId()===Ke.Universe10.TypeDeclaration.properties.type.name}function R(e){return e.nameId()===Ke.Universe10.ObjectTypeDeclaration.properties.properties.name}function I(e){return e.nameId()===Ke.Universe10.MethodBase.properties.responses.name||e.nameId()===Ke.Universe08.MethodBase.properties.responses.name}function P(e){return e.nameId()===Ke.Universe10.Api.properties.protocols.name||e.nameId()===Ke.Universe08.Api.properties.protocols.name||e.nameId()===Ke.Universe10.MethodBase.properties.protocols.name}function L(e){return e.nameId()===Ke.Universe10.TypeDeclaration.properties.name.name||e.nameId()===Ke.Universe10.TypeDeclaration.properties.name.name||e.nameId()===Ke.Universe08.AbstractSecurityScheme.properties.name.name||e.nameId()===Ke.Universe10.AbstractSecurityScheme.properties.name.name||e.nameId()===Ke.Universe08.Trait.properties.name.name||e.nameId()===Ke.Universe10.Trait.properties.name.name||"name"===e.nameId()}function C(e){return e.nameId()===Ke.Universe10.MethodBase.properties.body.name||e.nameId()===Ke.Universe08.MethodBase.properties.body.name||e.nameId()===Ke.Universe10.Response.properties.body.name||e.nameId()===Ke.Universe08.Response.properties.body.name}function O(e){return e.nameId()===Ke.Universe10.TypeDeclaration.properties["default"].name||e.nameId()===Ke.Universe08.Parameter.properties["default"].name}function D(e){return e.nameId()===Ke.Universe08.BodyLike.properties.schema.name||e.nameId()===Ke.Universe08.XMLBody.properties.schema.name||e.nameId()===Ke.Universe08.JSONBody.properties.schema.name||e.nameId()===Ke.Universe10.TypeDeclaration.properties.schema.name}function x(e){return e.nameId()===Ke.Universe08.Api.properties.traits.name||e.nameId()===Ke.Universe10.LibraryBase.properties.traits.name}function U(e){return e.nameId()===Ke.Universe08.TraitRef.properties.trait.name||e.nameId()===Ke.Universe10.TraitRef.properties.trait.name}function k(e){return e.nameId()===Ke.Universe08.Api.properties.resourceTypes.name||e.nameId()===Ke.Universe10.LibraryBase.properties.resourceTypes.name}function F(e){return e.nameId()===Ke.Universe08.ResourceTypeRef.properties.resourceType.name||e.nameId()===Ke.Universe10.ResourceTypeRef.properties.resourceType.name}function B(e){return e.nameId()===Ke.Universe10.TypeDeclaration.properties.facets.name}function V(e){return e.nameId()===Ke.Universe08.Api.properties.schemas.name||e.nameId()===Ke.Universe10.LibraryBase.properties.schemas.name}function K(e){return e.nameId()===Ke.Universe10.Api.properties.resources.name||e.nameId()===Ke.Universe08.Api.properties.resources.name||e.nameId()===Ke.Universe10.Resource.properties.resources.name||e.nameId()===Ke.Universe08.Resource.properties.resources.name}function j(e){return e.nameId()===Ke.Universe10.ResourceBase.properties.methods.name||e.nameId()===Ke.Universe08.Resource.properties.methods.name||e.nameId()===Ke.Universe08.ResourceType.properties.methods.name}function q(e){return e.nameId()===Ke.Universe10.LibraryBase.properties.types.name}function H(e){return e.nameId()===Ke.Universe10.TypeDeclaration.properties.example.name||"example"===e.nameId()}function Y(e){return e.nameId()===Ke.Universe10.StringTypeDeclaration.properties["enum"].name||e.nameId()===Ke.Universe10.NumberTypeDeclaration.properties["enum"].name||e.nameId()===Ke.Universe08.StringTypeDeclaration.properties["enum"].name}function G(e){return e.nameId()===Ke.Universe10.TypeDeclaration.properties.example.name||e.nameId()===Ke.Universe10.TypeDeclaration.properties.examples.name}function z(e){return e.nameId()===Ke.Universe08.GlobalSchema.properties.value.name}function W(e){return e.nameId()===Ke.Universe08.Api.properties.uriParameters.name||e.nameId()===Ke.Universe08.ResourceType.properties.uriParameters.name||e.nameId()===Ke.Universe08.Resource.properties.uriParameters.name||e.nameId()===Ke.Universe10.ResourceBase.properties.uriParameters.name}function X(e){return e.nameId()===Ke.Universe08.Resource.properties.baseUriParameters.name||e.nameId()===Ke.Universe08.Api.properties.baseUriParameters.name||e.nameId()===Ke.Universe10.Api.properties.baseUriParameters.name}function $(e){return e.nameId()===Ke.Universe08.Api.properties.RAMLVersion.name||e.nameId()===Ke.Universe10.Api.properties.RAMLVersion.name}function J(e){return e.nameId()===Ke.Universe10.FragmentDeclaration.properties.uses.name}function Q(e){return e.nameId()===Ke.Universe10.LibraryBase.properties.annotationTypes.name}function Z(e){return e.key()==Ke.Universe10.Method||e.key()==Ke.Universe08.Method}function ee(e){return e.key()==Ke.Universe10.Api||e.key()==Ke.Universe08.Api}function te(e){return e.key()==Ke.Universe10.BooleanType||e.key()==Ke.Universe08.BooleanType}function ne(e){return e.key()==Ke.Universe10.MarkdownString||e.key()==Ke.Universe08.MarkdownString}function re(e){return e.key()==Ke.Universe10.Resource||e.key()==Ke.Universe08.Resource}function ie(e){return e.key()==Ke.Universe10.Trait||e.key()==Ke.Universe08.Trait}function oe(e){return e.key()==Ke.Universe10.TraitRef||e.key()==Ke.Universe08.TraitRef}function ae(e){return e.key()==Ke.Universe10.ResourceTypeRef||e.key()==Ke.Universe08.ResourceTypeRef}function se(e){return e.key()==Ke.Universe08.GlobalSchema}function ue(e){return e.key()==Ke.Universe10.AbstractSecurityScheme||e.key()==Ke.Universe08.AbstractSecurityScheme}function pe(e){return e.isAssignableFrom(Ke.Universe10.AbstractSecurityScheme.name)}function ce(e){return e.key()==Ke.Universe10.SecuritySchemeRef||e.key()==Ke.Universe08.SecuritySchemeRef}function le(e){return e.key()==Ke.Universe10.TypeDeclaration}function fe(e){return e.key()==Ke.Universe10.Response||e.key()==Ke.Universe08.Response}function he(e){return e.key()==Ke.Universe08.BodyLike}function me(e){return e.key()==Ke.Universe10.Overlay}function de(e){return!1}function ye(e){return e.key()==Ke.Universe10.ResourceType||e.key()==Ke.Universe08.ResourceType}function ve(e){return e.key()==Ke.Universe10.SchemaString||e.key()==Ke.Universe08.SchemaString}function ge(e){return e.key()==Ke.Universe10.MethodBase||e.key()==Ke.Universe08.MethodBase}function Ae(e){return e.key()==Ke.Universe10.Library}function Te(e){return e.key()==Ke.Universe10.StringType||e.key()==Ke.Universe08.StringType}function be(e){return e.key()==Ke.Universe10.ExampleSpec}function Se(e){return e.key()==Ke.Universe10.Extension}function Ee(e){return e.isAssignableFrom(Ke.Universe10.TypeDeclaration.name)}function _e(e){return e.key()==Ke.Universe10.DocumentationItem||e.key()==Ke.Universe08.DocumentationItem}function we(e){return e.isAssignableFrom(Ke.Universe10.AnnotationRef.name)}function Ne(e){return e.isAssignableFrom(Ke.Universe10.Api.name)||e.isAssignableFrom(Ke.Universe08.Api.name)}function Me(e){return e.isAssignableFrom(Ke.Universe10.LibraryBase.name)}function Re(e){return e.isAssignableFrom(Ke.Universe10.ResourceBase.name)||e.isAssignableFrom(Ke.Universe08.Resource.name)}function Ie(e){return e.isAssignableFrom(Ke.Universe10.ObjectTypeDeclaration.name)}function Pe(e){return e.isAssignableFrom(Ke.Universe10.TypeDeclaration.name)}function Le(e){return e.isAssignableFrom(Ke.Universe10.TypeDeclaration.name)}function Ce(e){return e.isAssignableFrom(Ke.Universe10.MethodBase.name)||e.isAssignableFrom(Ke.Universe08.MethodBase.name)}function Oe(e){return e.key()==Ke.Universe10.SecuritySchemePart||e.key()==Ke.Universe08.SecuritySchemePart}function De(e){return e.nameId()===Ke.Universe08.Api.properties.mediaType.name||e.nameId()===Ke.Universe10.Api.properties.mediaType.name}function xe(e){return"RAML08"==e.universe().version()}function Ue(e){return"RAML10"==e.universe().version()}function ke(e){return xe(e.definition())}function Fe(e){return xe(e.definition())}function Be(e){return Ue(e.definition())}function Ve(e){return Ue(e.definition())}var Ke=n(17);t.isDocumentationProperty=r,t.isUsagePropertyName=i,t.isUsageProperty=o,t.isMasterRefProperty=a,t.isDescriptionPropertyName=s,t.isDescriptionProperty=u,t.isRequiredPropertyName=p,t.isDisplayNamePropertyName=c,t.isDisplayNameProperty=l,t.isRequiredProperty=f,t.isTitlePropertyName=h,t.isTitleProperty=m,t.isHeadersProperty=d,t.isHeadersPropertyName=y,t.isFormParametersProperty=v,t.isFormParametersPropertyName=g,t.isQueryParametersProperty=A,t.isQueryParametersPropertyName=T,t.isAnnotationsProperty=b,t.isAnnotationProperty=S,t.isIsProperty=E,t.isSecuredByProperty=_,t.isSecuritySchemesProperty=w,t.isSecuritySchemeProperty=N,t.isTypeProperty=M,t.isPropertiesProperty=R,t.isResponsesProperty=I,t.isProtocolsProperty=P,t.isNameProperty=L,t.isBodyProperty=C,t.isDefaultValue=O,t.isSchemaProperty=D,t.isTraitsProperty=x,t.isTraitProperty=U,t.isResourceTypesProperty=k,t.isResourceTypeProperty=F,t.isFacetsProperty=B,t.isSchemasProperty=V,t.isResourcesProperty=K,t.isMethodsProperty=j,t.isTypesProperty=q,t.isExampleProperty=H,t.isEnumProperty=Y,t.isExamplesProperty=G,t.isValueProperty=z,t.isUriParametersProperty=W,t.isBaseUriParametersProperty=X,t.isRAMLVersionProperty=$,t.isUsesProperty=J,t.isAnnotationTypesProperty=Q,t.isMethodType=Z,t.isApiType=ee,t.isBooleanTypeType=te,t.isMarkdownStringType=ne,t.isResourceType=re,t.isTraitType=ie,t.isTraitRefType=oe,t.isResourceTypeRefType=ae,t.isGlobalSchemaType=se,t.isSecuritySchemaType=ue,t.isSecuritySchemaTypeDescendant=pe,t.isSecuritySchemeRefType=ce,t.isTypeDeclarationType=le,t.isResponseType=fe,t.isBodyLikeType=he,t.isOverlayType=me,t.isAnnotationTypeType=de,t.isResourceTypeType=ye,t.isSchemaStringType=ve,t.isMethodBaseType=ge,t.isLibraryType=Ae,t.isStringTypeType=Te,t.isExampleSpecType=be,t.isExtensionType=Se,t.isTypeDeclarationTypeOrDescendant=Ee,t.isDocumentationType=_e,t.isAnnotationRefTypeOrDescendant=we,t.isApiSibling=Ne,t.isLibraryBaseSibling=Me,t.isResourceBaseSibling=Re,t.isObjectTypeDeclarationSibling=Ie,t.isTypeDeclarationDescendant=Pe,t.isTypeDeclarationSibling=Le,t.isMethodBaseSibling=Ce,t.isSecuritySchemePartType=Oe,t.isMediaTypeProperty=De,t.isRAML08Type=xe,t.isRAML10Type=Ue,t.isRAML08Node=ke,t.isRAML08Attribute=Fe,t.isRAML10Node=Be,t.isRAML10Attribute=Ve},function(e,t,n){"use strict";function r(e,t){var n=e.name();if(t.lowLevel()instanceof h.LowLevelProxyNode){if(e.lowLevel()instanceof h.LowLevelProxyNode)return n;var r=t.root().lowLevel().unit(),i=r.project().namespaceResolver(),o=e.lowLevel().unit(),a=i.resolveNamespace(r,o);if(null!=a)return a+"."+n}if(e.lowLevel().unit()!=t.lowLevel().unit())for(var s=t;;){if(s.lowLevel().includePath()||null==s.parent()){s.unitMap||(s.unitMap={},s.asElement().elements().forEach(function(e){if(e.definition().key()==b.Universe10.UsesDeclaration){var t=e.attr("value");if(t){var n=e.root().lowLevel().unit().resolve(t.value());if(null!=n){var r=e.attr("key");r&&(s.unitMap[n.absolutePath()]=r.value())}}}}));var u=s.unitMap[e.lowLevel().unit().absolutePath()];if(u)return u+"."+n}if(!s.parent())break;s=s.parent()}return n}function i(e){return e.match(/^\s*#%RAML\s+(\d\.\d)\s*(\w*)\s*$/m)}function o(e){var t=e.lowLevel()&&e.lowLevel().unit()&&e.lowLevel().unit().contents();return null==t?null:j(t,e.lowLevel()).ptype}function a(e){if(null==e)return null;var t=e.contents(),n=e.ast(),r=j(t,n),i=r.ptype,o=r.localUniverse,a=o.type(i);a||(a=o.type("Api"));var s=new K(n,null,a,null);return s.setUniverse(o),s.children(),s}function s(e,t){if(t){var n=t.root().lowLevel().unit();return n?new O.PointOfViewValidationAcceptorImpl(e,t.root()):{accept:function(t){e.push(t)},begin:function(){},end:function(){},acceptUnique:function(t){for(var n=0,r=e;n<r.length;n++){var i=r[n];if(i.start==t.start&&i.message==t.message)return}this.accept(t)}}}}function u(e){if(null!=e.parent())return!1;var t=e.lowLevel().unit();if(null==t)return!1;var n=t.contents(),r=i(n);return r.length<3?!1:"AnnotationTypeDeclaration"==r[2]}var p=this&&this.__extends||function(e,t){function n(){this.constructor=e}for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)},c=n(36),l=n(10),f=n(60),h=n(37),m=c,d=n(30),y=n(27),v=n(38),g=n(29),A=n(28),T=n(39),b=n(17),S=n(24),E=n(40),_=m,w=n(71),N=n(33),M=n(41),R=n(42),I=n(14),P=n(25),L=c.rt,C=n(31),O=n(3);t.qName=r;var D=function(){function e(e,t){this._node=e,this._parent=t,this._implicit=!1,this.values={},e&&e.setHighLevelParseResult(this)}return e.prototype.getKind=function(){return l.NodeKind.BASIC},e.prototype.asAttr=function(){return null},e.prototype.asElement=function(){return null},e.prototype.hashkey=function(){return this._hashkey||(this._hashkey=this.parent()?this.parent().hashkey()+"/"+this.name():this.name()),this._hashkey},e.prototype.root=function(){return this.parent()?this.parent().root():this},e.prototype.version=function(){return""},e.prototype.getLowLevelStart=function(){return this.lowLevel().kind()===S.Kind.SCALAR?this.lowLevel().start():this.lowLevel().keyStart()},e.prototype.getLowLevelEnd=function(){return this.lowLevel().kind()===S.Kind.SCALAR?this.lowLevel().end():this.lowLevel().keyEnd()},e.prototype.isSameNode=function(e){return e&&e.lowLevel().actual()==this.lowLevel().actual()?!0:!1},e.prototype.checkContextValue=function(e,t,n){var r=this.computedValue(e);return r&&-1!=r.indexOf(t)?!0:t==r||"false"==t},e.prototype.printDetails=function(e){return(e?e:"")+"Unkown\n"},e.prototype.testSerialize=function(e){return(e?e:"")+"Unkown\n"},e.prototype.errors=function(){var e=[],t=s(e,this);return this.validate(t),e},e.prototype.markCh=function(){for(var e=this.lowLevel();e instanceof h.LowLevelProxyNode;)e=e.originalNode();return e=e._node?e._node:e,e.markCh?!0:void(e.markCh=1)},e.prototype.unmarkCh=function(){for(var e=this.lowLevel();e instanceof h.LowLevelProxyNode;)e=e.originalNode();e=e._node?e._node:e,delete e.markCh},e.prototype.validate=function(e){g.validate(this,e)},e.prototype.allowRecursive=function(){return!1},e.prototype.setComputed=function(e,t){this.values[e]=t},e.prototype.computedValue=function(e){var t=this.values[e];return!t&&this.parent()?this.parent().computedValue(e):t},e.prototype.lowLevel=function(){return this._node},e.prototype.name=function(){var e=this.lowLevel().key();return e?e:""},e.prototype.optional=function(){var e=this.lowLevel(),t=e.optional();if(null!=e.key())return t;var n=this.property();if(!n||!n.isMultiValue())return t;for(var r=e.parent();r&&null==r.highLevelNode();){if(r.kind()==w.Kind.MAPPING)return r.optional();r=r.parent()}return t},e.prototype.parent=function(){return this._parent},e.prototype.setParent=function(e){this._parent=e},e.prototype.isElement=function(){return!1},e.prototype.directChildren=function(){return this.children()},e.prototype.children=function(){return[]},e.prototype.isAttached=function(){return null!=this.parent()},e.prototype.isImplicit=function(){return this._implicit},e.prototype.isAttr=function(){return!1},e.prototype.isUnknown=function(){return!0},e.prototype.id=function(){var e=this;if(this.cachedId)return this.cachedId;if(this._parent){var t=this.parent().id();t+="."+this.name();var n=this.parent().directChildren().filter(function(t){return t.name()==e.name()});if(n.length>1){var r=n.indexOf(this);t+="["+r+"]"}return this.cachedId=t,t}return this.cachedId="",this.cachedId},e.prototype.localId=function(){return this.name()},e.prototype.fullLocalId=function(){var e=this;if(this.cachedFullId)return this.cachedFullId;if(this._parent){var t=".";t+=null!=this.property()&&I.isAnnotationsProperty(this.property())?this.lowLevel().key():this.name();var n=this.parent().directChildren().filter(function(t){return t.name()==e.name()});if(n.length>1){var r=n.indexOf(this);t+="["+r+"]"}return this.cachedFullId=t,t}return this.cachedFullId=this.localId(),this.cachedFullId},e.prototype.property=function(){return null},e}();t.BasicASTNode=D;var x=function(){function e(e,t,n,r){void 0===r&&(r=null),this.node=e,this._parent=t,this.kv=r,this._pr=n}return e.prototype.valueName=function(){var e=null;return this.kv&&(e=this.kv),e=this.node.key(),this._pr&&this._pr.isAnnotation()&&e&&"("==e.charAt(0)&&(e=e.substring(1,e.length-1)),e},e.prototype.children=function(){return this.node.children().map(function(t){return new e(t,null,null)})},e.prototype.lowLevel=function(){return this.node},e.prototype.toHighLevel=function(e){if(!e&&this._parent&&(e=this._parent),this._hl)return this._hl;var t=this.valueName(),n=y.referenceTargets(this._pr,e).filter(function(n){return r(n,e)==t});if(n&&n[0]){var i=n[0].localType(),o=new K(this.node,e,i,this._pr);return this._pr&&this._pr.childRestrictions().forEach(function(e){o.setComputed(e.name,e.value)}),this._hl=o,o}return null},e.prototype.toHighLevel2=function(e){!e&&this._parent&&(e=this._parent);var t=this.valueName(),n=y.referenceTargets(this._pr,e).filter(function(n){return r(n,e)==t});if(n&&n[0]){var i=n[0].localType(),o=new K(this.node,e,i,this._pr);return this._pr&&this._pr.childRestrictions().forEach(function(e){o.setComputed(e.name,e.value)}),o}if(this._pr.range()){var o=new K(this.node.parent(),e,this._pr.range(),this._pr);return this._pr&&this._pr.childRestrictions().forEach(function(e){o.setComputed(e.name,e.value)}),o}return null},e}();t.StructuredValue=x;var U=function(e){function t(t,n,r,i,o){void 0===o&&(o=!1),e.call(this,t,n),this._def=r,this._prop=i,this.fromKey=o}return p(t,e),t.prototype.definition=function(){return this._def},t.prototype.asAttr=function(){return this},t.prototype.errors=function(){var e=[],t=s(e,this);return this.parent().validate(t),e},t.prototype.isString=function(){return!this._def||this._def.key()!==b.Universe08.StringType&&this._def.key()!=b.Universe10.StringType?!1:!0},t.prototype.isAnnotatedScalar=function(){return this.property().isAnnotation()||this.property().isKey()?!1:this.lowLevel().isAnnotatedScalar()},t.prototype.annotations=function(){var e=this.lowLevel().children(),n=[],r=this.definition().universe().type(b.Universe10.Annotable.name);if(!r)return n;for(var i=r.property("annotations"),o=0;o<e.length;o++){var a=e[o],s=a.key();if(null!=s&&"("==s[0]&&")"==s[s.length-1]){var u=new t(a,this.parent(),i.range(),i);n.push(u)}}return n},t.prototype.getKind=function(){return l.NodeKind.ATTRIBUTE},t.prototype.owningWrapper=function(){return{node:this.parent().wrapperNode(),property:this.name()}},t.prototype.patchType=function(e){this._def=e},t.prototype.findReferenceDeclaration=function(){var e=this,t=y.referenceTargets(this.property(),this.parent()),n=this.value();if(n instanceof x)var i=n,o=i.valueName();else var o=""+n;var a=f.find(t,function(t){return r(t,e.parent())==o});return a},t.prototype.findReferencedValue=function(){var e=this.findReferenceDeclaration();if(e){var t=e.attr("value"),n=e.definition().key();if(n===b.Universe08.GlobalSchema){if(t){var r=t.value();if(r){var i=g.isValid(this._def,this.parent(),r,t.property());return i}}return null}}return e},t.prototype.isElement=function(){return!1},t.prototype.property=function(){return this._prop},t.prototype.convertMultivalueToString=function(e){for(var t=0,n=2;" "==e[n];)t++,n++;var r=E.splitOnLines(e);return r=r.map(function(e){return e.substring(t,e.length)}),r.join("")},t.prototype.overrideValue=function(e){this._value=e},t.prototype.value=function(){return this._value?this._value:(this._value=this.calcValue(),this._value)},t.prototype.calcValue=function(){if(this._computed)return this.computedValue(this.property().nameId());if(this.fromKey){var e=this.parent(),t=e.definition();if("RAML08"==t.universe().version())return this._node.key();if(I.isNameProperty(this.property())&&t.isAssignableFrom(b.Universe10.TypeDeclaration.name)){var n=e.attr("required");if(n&&null!=n.value())return this._node.optional()?this._node.key()+"?":this._node.key()}return this._node.key()}if(this.property().isAnnotation()&&this._node.key()&&"annotations"!=this._node.key())return new x(this._node,this.parent(),this._prop);var r=null!=this.property()&&!(null==this.parent()||null==this.parent().definition()||I.isTypeProperty(this.property())&&I.isTypeDeclarationSibling(this.parent().definition()))&&I.isStringTypeType(this.property().range()),i=this._node.value(r);if(this.property().isSelfNode()&&(!i||i instanceof S.ASTNode)&&(i=this._node,0==i.children().length&&(i=null)),i instanceof S.ASTNode||i instanceof h.LowLevelProxyNode){var o=!1;if(this.property().range().hasStructure()||this._node.isAnnotatedScalar()&&this._node.children().forEach(function(e){"value"===e.key()&&(i=e.value(r),o=!0)}),!o)return this._sval?this._sval:(this._sval=new x(i,this.parent(),this._prop),this._sval)}if("string"==typeof i&&E.isMultiLineValue(i)){var a=this.convertMultivalueToString(i);return a}return null==i&&this._node.children().length>0&&this.property()&&I.isTypeProperty(this.property())&&this.parent()&&I.isTypeDeclarationSibling(this.parent().definition())?new x(this._node,this.parent(),this._prop):i},t.prototype.name=function(){return this._prop.nameId()},t.prototype.printDetails=function(e){var t=this.definition().nameId(),n=this.property().range().nameId(),r=(e?e:"")+(this.name()+" : "+t+"["+n+"]  =  "+this.value())+(this.property().isKey()&&this.optional()?"?":"")+"\n";if(this.value()instanceof x){var i=this.value().toHighLevel();i&&i.printDetails&&(r+=i.printDetails(e+"	"))}return r},t.prototype.testSerialize=function(e){var t=this.definition().nameId(),n=(e?e:"")+(this.name()+" : "+t+"  =  "+this.value())+"\n";if(this.value()instanceof x){var r=this.value().toHighLevel();if(r&&r.testSerialize)n+=r.testSerialize((e?e:"")+"  ");else{var i=this.value().lowLevel(),o=i.dumpToObject(),a=JSON.stringify(o),s="",u=a.split("\n");u.forEach(function(t){return s+=(e?e:"")+"  "+t+"\n"}),n+=s+"\n"}}return n},t.prototype.isAttr=function(){return!0},t.prototype.isUnknown=function(){return!1},t.prototype.setValue=function(e){v.setValue(this,e),this._value=null},t.prototype.setKey=function(e){v.setKey(this,e),this._value=null},t.prototype.children=function(){return[]},t.prototype.addStringValue=function(e){v.addStringValue(this,e),this._value=null},t.prototype.addStructuredValue=function(e){v.addStructuredValue(this,e),this._value=null},t.prototype.addValue=function(e){if(!this.property().isMultiValue())throw new Error("setValue(string) only apply to multi-values properties");"string"==typeof e?this.addStringValue(e):this.addStructuredValue(e),this._value=null},t.prototype.isEmbedded=function(){var e=this.lowLevel().asMapping().key.value;return this.property().canBeValue()&&e!=this.property().nameId()},t.prototype.remove=function(){v.removeAttr(this)},t.prototype.setValues=function(e){v.setValues(this,e),this._value=null},t.prototype.isEmpty=function(){if(!this.property().isMultiValue())throw new Error("isEmpty() only apply to multi-values attributes");var e=this.parent(),t=(e.lowLevel(),e.attributes(this.name()));if(0==t.length)return!0;if(1==t.length){var n=t[0].lowLevel();return n.isMapping()&&null==n.value()?!0:!1}return!1},t.prototype.isFromKey=function(){return this.fromKey},t}(D);t.ASTPropImpl=U;var k=new d.BasicNodeBuilder;!function(e){e[e.MERGE=0]="MERGE",e[e.AGGREGATE=1]="AGGREGATE"}(t.OverlayMergeMode||(t.OverlayMergeMode={}));var F=t.OverlayMergeMode,B=function(e){function t(n,r){e.call(this),this._node=n,this._highLevelRoot=r;var i=r.root(),o=i.getMaster();if(o&&this._node===r.lowLevel()){var a=r.getMasterCounterPart();a&&(this._toMerge=new t(a.lowLevel(),a))}}return p(t,e),t.prototype.contentProvider=function(){var e=this._node&&this._node.includeBaseUnit()&&(this._node.includePath&&this._node.includePath()?this._node.includeBaseUnit().resolve(this._node.includePath()):this._node.includeBaseUnit());return new C.ContentProvider(e)},t.prototype.key=function(){var e=this._node.key();return this._node.optional()&&(e+="?"),e},t.prototype.value=function(){var e=this._node.valueKind();if(e===w.Kind.SEQ)return this.children().map(function(e){return e.value()});if(e===w.Kind.MAP||e===w.Kind.ANCHOR_REF){var n=this._node.dumpToObject(!1);return n[this.key()]}if(this._node.kind()==w.Kind.MAP){var n=this._node.dumpToObject(!1);return n}if(e===w.Kind.INCLUDE_REF){var r=null,i=this._node.includePath();try{r=this._node.unit().resolve(i)}catch(o){}if(null!=r&&r.isRAMLUnit()){var a=r.ast(),s=new t(a,r.highLevel().asElement());return a.kind()==w.Kind.SEQ?s.children().map(function(e){return e.value()}):s.value()}}var u=this._node.value();return u},t.prototype.children=function(){var e=this;if(this._children)return this._children;"uses"!=this.key()||this._node.parent().parent()?this._children=this._node.children().map(function(n){return new t(n,e._highLevelRoot)}):this._children=this._node.children().map(function(t){return new V(t,e._highLevelRoot)}),this.childByKey={};for(var n=0;n<this._children.length;n++){var r=this._children[n];this.childByKey[r.key()]=r}if(this._toMerge)for(var i=this._toMerge.children(),n=0;n<i.length;n++){var r=i[n],o=this.childByKey[r.key()];o?o._toMerge=r:(this._children.push(r),this.childByKey[r.key()]=r)}return this._children},t.prototype.childWithKey=function(e){return this._children||this.children(),this.childByKey[e]},t.prototype.kind=function(){var e=this._node.valueKind();if(e==w.Kind.MAPPING||null===e)return L.NodeKind.MAP;if(e==w.Kind.MAP)return L.NodeKind.MAP;var t=this._node.kind();return t==w.Kind.MAP?L.NodeKind.MAP:e==w.Kind.SEQ?L.NodeKind.ARRAY:e==w.Kind.INCLUDE_REF&&this._node.children().length>0?L.NodeKind.MAP:L.NodeKind.SCALAR},t.prototype.getSource=function(){if(!this._node)return null;var e=this._node.highLevelNode();if(!e){var t=this._node.start(),n=y.deepFindNode(this._highLevelRoot,t,t,!0,!1);return n&&(this._node.setHighLevelParseResult(n),n instanceof K&&this._node.setHighLevelNode(n)),n}return e},t.prototype.node=function(){return this._node},t}(c.SourceProvider);t.LowLevelWrapperForTypeSystem=B;var V=function(e){function t(){e.apply(this,arguments)}return p(t,e),t.prototype.children=function(){var e=this._node.unit().resolve(this.value());return e&&e.isRAMLUnit()&&e.contents().trim().length>0?new B(e.ast(),this._highLevelRoot).children():[]},t.prototype.anchor=function(){return this._node.actual()},t.prototype.childWithKey=function(e){for(var t=this.children(),n=0;n<t.length;n++)if(t[n].key()==e)return t[n];return null},t}(B);t.UsesNodeWrapperFoTypeSystem=V;var K=function(e){function t(t,n,r,i){e.call(this,t,n),this._def=r,this._prop=i,this._expanded=!1,this._allowQuestion=!1,this._subTypesCache=null,this._auxChecked=!1,this.overlayMergeMode=F.MERGE,t&&t.setHighLevelNode(this),t instanceof h.LowLevelProxyNode&&(this._expanded=!0)}return p(t,e),t.prototype.createIssue=function(e){return g.toIssue(e,this)},t.prototype.validate=function(e){var t=this.definition().key();if((t==b.Universe10.Api||t==b.Universe08.Api||t==b.Universe10.Extension)&&!this.isExpanded()){var n=A.expandTraitsAndResourceTypes(this.wrapperNode()),r=n.highLevel();return r.resetChildren(),r.children(),r._expanded=!0,r.clearTypesCache(),void r.validate(e)}(t==b.Universe10.Overlay||t==b.Universe10.Extension)&&this.clearTypesCache(),g.validate(this,e)},t.prototype.clearTypesCache=function(){if(this._types=null,this.lowLevel()){var e=this.lowLevel().actual();e.types=null}},t.prototype.types=function(){var e=this;if(!this._types){if(this.parent()&&this.definition().key()!==b.Universe10.Library)return this.parent().types();var t=this.lowLevel().actual();if(t.types)return t.types;this._types=L.parseFromAST(new B(this.lowLevel(),this)),this._types.types().forEach(function(t){var n=T.convertType(e,t);n.putExtra(c.USER_DEFINED_EXTRA,!0)}),t.types=this._types}return this._types},t.prototype.setTypes=function(e){this._types=e},t.prototype.parsedType=function(){if(!this._ptype){if(this.property()&&this.property().nameId()==b.Universe10.MethodBase.properties.body.name){var e=this.isParametrizedType();this._ptype=L.parseTypeFromAST(this.name(),new B(this.lowLevel(),this),this.types(),!0,!1,!1,e)}else{var t=this.property()&&this.property().nameId()==b.Universe10.LibraryBase.properties.annotationTypes.name,n=!this.property()||this.property().nameId()==b.Universe10.LibraryBase.properties.types.name||this.property().nameId()==b.Universe10.LibraryBase.properties.schemas.name;if(!t&&null==this.parent()){var r=this.universe();r&&r.getOriginalTopLevelText()&&"AnnotationTypeDeclaration"==r.getOriginalTopLevelText()&&(t=!0)}this._ptype=L.parseTypeFromAST(this.name(),new B(this.lowLevel(),this),this.types(),!1,t,n)}this.property()&&I.isTypesProperty(this.property())&&this.parent()&&I.isApiType(this.parent().definition())&&this._ptype.putExtra&&this._ptype.putExtra(c.DEFINED_IN_TYPES_EXTRA,!0);var i=this._ptype;i.putExtra(c.USER_DEFINED_EXTRA,!0),this._ptype.putExtra(c.SOURCE_EXTRA,this)}return this._ptype},t.prototype.isParametrizedType=function(){var e=!1,t=this.attr(b.Universe10.TypeDeclaration.properties.type.name);if(t){var n=t.value();if("string"==typeof n&&n.indexOf("<<")>=0)for(var r=this.parent();null!=r;){if(I.isResourceTypeType(r.definition())||I.isTraitType(r.definition())){e=!0;break}r=r.parent()}}return e},t.prototype.localType=function(){return T.typeFromNode(this)},t.prototype.patchProp=function(e){this._prop=e},t.prototype.getKind=function(){return l.NodeKind.NODE},t.prototype.wrapperNode=function(){if(!this._wrapperNode){if(I.isExampleSpecType(this.definition())){var e=w.newMap([w.newMapping(w.newScalar("example"),this.lowLevel().actual())]),t=w.newMapping(w.newScalar("types"),w.newMap([w.newMapping(w.newScalar("__AUX_TYPE__"),e)])),n=w.newMap([t]),r=new S.ASTNode(n,this.lowLevel().unit(),null,null,null),i=L.parseFromAST(new B(r,this)),o=L.toNominal(i.types()[0],function(e){return null}),a=N.examplesFromNominal(o,this,!0,!1);return a[0]}this.children(),this._wrapperNode=this.buildWrapperNode()}return this._wrapperNode},t.prototype.asElement=function(){return this},t.prototype.buildWrapperNode=function(){var e=this.definition().universe().version();return"RAML10"==e?M.buildWrapperNode(this):"RAML08"==e?R.buildWrapperNode(this):null},t.prototype.propertiesAllowedToUse=function(){var e=this;return this.definition().allProperties().filter(function(t){return e.isAllowedToUse(t)})},t.prototype.isAllowedToUse=function(e){var t=this,n=!0;
 return e.getAdapter(_.RAMLPropertyService).isSystem()?!1:(e.getContextRequirements().forEach(function(e){if(-1!=e.name.indexOf("("))return!0;var r=t.computedValue(e.name);r?n=n&&r==e.value:e.value&&(n=!1)}),n)},t.prototype.allowRecursive=function(){return this.definition().getAdapter(_.RAMLService).isUserDefined()?!0:!1},t.prototype.setWrapperNode=function(e){this._wrapperNode=e},t.prototype.setAssociatedType=function(e){this._associatedDef=e},t.prototype.associatedType=function(){return this._associatedDef},t.prototype.knownIds=function(){return this.isAuxilary(),this._knownIds?this._knownIds:{}},t.prototype.findById=function(e){var t=this,n=this.root();if(n!=this)return n.findById(e);if(!this._knownIds){this._knownIds={};var r=y.allChildren(this);r.forEach(function(e){return t._knownIds[e.id()]=e})}if(this.isAuxilary()){if(!this._slaveIds){this._slaveIds={};var r=y.allChildren(this);r.forEach(function(e){return t._slaveIds[e.id()]=e})}var i=this._slaveIds[e];if(i)return i}return this._knownIds[e]},t.prototype.isAuxilary=function(){if(this._isAux)return!0;if(this._auxChecked)return!1;this._auxChecked=!0;var e=this.getMaster();return e?(this._isAux=!0,this.initilizeKnownIDs(e),!0):!1},t.prototype.initilizeKnownIDs=function(e){var t=this;this._knownIds={};var n=y.allChildren(e);n.forEach(function(e){return t._knownIds[e.id()]=e}),this._knownIds[""]=e},t.prototype.getMaster=function(){if(this.masterApi)return this.masterApi;var e=this.calculateMasterByRef();return e&&e.setSlave(this),e},t.prototype.overrideMaster=function(e){this.masterApi=e,this.resetAuxilaryState(),e&&e.setSlave(this)},t.prototype.setSlave=function(e){this.slave=e},t.prototype.setMergeMode=function(e){this.overlayMergeMode=e,this.resetAuxilaryState()},t.prototype.getMergeMode=function(){return this.overlayMergeMode},t.prototype.calculateMasterByRef=function(){var e=this.lowLevel().unit();if(!e)return null;var t=e.getMasterReferenceNode();if(!t||!t.value())return null;var n=this.lowLevel();if(n.master)return n.master;var r=t.value(),i=this.lowLevel().unit().project().resolve(this.lowLevel().unit().path(),r);if(!i)return null;var o=i.expandedHighLevel();return o.setMergeMode(this.overlayMergeMode),n.master=o,o},t.prototype.resetAuxilaryState=function(){this._isAux=!1,this._auxChecked=!1,this._knownIds=null,this.clearChildrenCache()},t.prototype.printDetails=function(e){var t="";e||(e="");var n=this.definition().nameId(),r=this.property()?this.property().range().nameId():"",i=this.property()?this.property().nameId():"";return t+=e+n+"["+r+"] <--- "+i+"\n",this.children().forEach(function(n){t+=n.printDetails(e+"	")}),t},t.prototype.testSerialize=function(e){var t="";e||(e="");var n=this.definition().nameId(),r=this.property()?this.property().nameId():"";return t+=e+n+" <-- "+r+"\n",this.children().forEach(function(n){n.testSerialize&&(t+=n.testSerialize(e+"  "))}),t},t.prototype.getExtractedChildren=function(){var e=this.root();if(e.isAuxilary()){if(e._knownIds){var t=e._knownIds[this.id()];if(t){var n=t.children();return n}}return[]}return[]},t.prototype.getMasterCounterPart=function(){var e=this.root();if(e.isAuxilary()){if(e._knownIds){var t=e._knownIds[this.id()];return t}return null}return null},t.prototype.getExtractedLowLevelChildren=function(e){var t=this.root();if(t.isAuxilary()){if(t._knownLowLevelIds){var n=t._knownLowLevelIds[this.id()];if(n)return n.children()}return[]}return[]},t.prototype.allowsQuestion=function(){return this._allowQuestion||this.definition().getAdapter(_.RAMLService).getAllowQuestion()},t.prototype.findReferences=function(){var e=this,t=[];y.refFinder(this.root(),this,t),t.length>1&&(t=t.filter(function(t){return t!=e&&t.parent()!=e}));var n=[];return t.forEach(function(e){f.find(n,function(t){return t==e})||n.push(e)}),n},t.prototype.setNamePatch=function(e){this._patchedName=e},t.prototype.isNamePatch=function(){return this._patchedName},t.prototype.name=function(){if(this._patchedName)return this._patchedName;var t=f.find(this.directChildren(),function(e){return e.property()&&e.property().getAdapter(_.RAMLPropertyService).isKey()});if(t&&t instanceof U){var n=null,r=this.definition(),i=r.universe().version();if(r&&"RAML10"==i&&t.isFromKey()){var o=this._node.key();n=this._node.optional()?o+"?":o}else n=t.value();return n}return e.prototype.name.call(this)},t.prototype.findElementAtOffset=function(e){return this._findNode(this,e,e)},t.prototype.isElement=function(){return!0},t.prototype.universe=function(){return this._universe?this._universe:this.definition().universe()},t.prototype.setUniverse=function(e){this._universe=e},t.prototype._findNode=function(e,t,n){var r=this;if(null==e)return null;if(e.lowLevel()&&e.lowLevel().start()<=t&&e.lowLevel().end()>=n){var i=e;return e.elements().forEach(function(o){if(o.lowLevel().unit()==e.lowLevel().unit()){var a=r._findNode(o,t,n);a&&(i=a)}}),i}return null},t.prototype.isStub=function(){return!this.lowLevel().unit()||this.lowLevel().unit().isStubUnit()},t.prototype.add=function(e){v.addToNode(this,e)},t.prototype.remove=function(e){v.removeNodeFrom(this,e)},t.prototype.dump=function(e){return this._node.dump()},t.prototype.patchType=function(e){this._def=e;this._associatedDef;this._associatedDef=null,this._children=null,this._mergedChildren=null},t.prototype.children=function(){var e=this.lowLevel();return e&&e.isValueInclude&&e.isValueInclude()&&P.isWaitingFor(e.includePath())?(this._children=null,[]):this._children?this._mergedChildren?this._mergedChildren:(this._mergedChildren=this.mergeChildren(this._children,this.getExtractedChildren()),this._mergedChildren):this._node?(this._children=k.process(this,this._node.children()),this._children=this._children.filter(function(e){return null!=e}),this.mergeChildren(this._children,this.getExtractedChildren())):[]},t.prototype.mergeChildren=function(e,t){var n=this,r=this.root();if(r.overlayMergeMode==F.AGGREGATE)return e.concat(t);if(r.overlayMergeMode==F.MERGE){var i=[];return e.forEach(function(e){var r=f.find(t,function(t){return t.fullLocalId()==e.fullLocalId()});r?n.mergeChild(i,e,r):i.push(e)}),t.forEach(function(t){var n=f.find(e,function(e){return t.fullLocalId()==e.fullLocalId()});n||i.push(t)}),i}return null},t.prototype.mergeLowLevelChildren=function(e,t){var n=this,r=this.root();if(r.overlayMergeMode==F.AGGREGATE)return e.concat(t);if(r.overlayMergeMode==F.MERGE){var i=[];return e.forEach(function(e){var r=f.find(t,function(t){return t.key()==e.key()});r?n.mergeLowLevelChild(i,e,r):i.push(e)}),t.forEach(function(t){var n=f.find(e,function(e){return t.key()==e.key()});n||i.push(t)}),i}return null},t.prototype.mergeLowLevelChild=function(e,t,n){return t.kind()!=n.kind()?(e.push(t),void e.push(n)):void e.push(t)},t.prototype.mergeChild=function(e,t,n){return t.getKind()!=n.getKind()?(e.push(t),void e.push(n)):t.getKind()==l.NodeKind.NODE?void e.push(t):t.getKind()==l.NodeKind.ATTRIBUTE?void e.push(t):t.getKind()==l.NodeKind.BASIC?(e.push(t),void e.push(n)):void 0},t.prototype.directChildren=function(){return this._children?this._children:this._node?(this._children=k.process(this,this._node.children()),this._children):[]},t.prototype.resetChildren=function(){this._children=null,this._mergedChildren=null},t.prototype.isEmptyRamlFile=function(){var e=this.lowLevel().root();return e.isScalar()},t.prototype.initRamlFile=function(){v.initEmptyRAMLFile(this)},t.prototype.createAttr=function(e,t){v.createAttr(this,e,t)},t.prototype.isAttr=function(){return!1},t.prototype.isUnknown=function(){return!1},t.prototype.value=function(){return this._node.value()},t.prototype.valuesOf=function(e){var t=this._def.property(e);return null!=t?this.elements().filter(function(e){return e.property()==t}):[]},t.prototype.attr=function(e){return f.find(this.attrs(),function(t){return t.name()==e})},t.prototype.attrOrCreate=function(e){var t=this.attr(e);return t||this.createAttr(e,""),this.attr(e)},t.prototype.attrValue=function(e){var t=this.attr(e);return t?t.value():null},t.prototype.attributes=function(e){return f.filter(this.attrs(),function(t){return t.name()==e})},t.prototype.attrs=function(){var e=this.children().filter(function(e){return e.isAttr()});if(this._patchedName){var t=f.find(this.definition().allProperties(),function(e){return e.getAdapter(_.RAMLPropertyService).isKey()});if(t){var n=new U(this.lowLevel(),this,t.range(),t,!0);return n._value=this._patchedName,[n].concat(e)}}return e},t.prototype.elements=function(){return this.children().filter(function(e){return!e.isAttr()&&!e.isUnknown()})},t.prototype.element=function(e){var t=this.elementsOfKind(e);return t.length>0?t[0]:null},t.prototype.elementsOfKind=function(e){var t=this.elements().filter(function(t){return t.property().nameId()==e});return t},t.prototype.definition=function(){return this._def},t.prototype.property=function(){return this._prop},t.prototype.isExpanded=function(){return this._expanded},t.prototype.copy=function(){return new t(this.lowLevel().copy(),this.parent(),this.definition(),this.property())},t.prototype.clearChildrenCache=function(){this._children=null,this._mergedChildren=null},t.prototype.optionalProperties=function(){var e=this.definition();if(null==e)return[];var t=[],n={},r=this.lowLevel().children();r.forEach(function(e){e.optional()&&(n[e.key()]=!0)});var i=e.allProperties();return i.forEach(function(e){var r=e;n[r.nameId()]&&t.push(r.nameId())}),t},t}(D);t.ASTNodeImpl=K,t.universeProvider=n(35);var j=function(e,n){var r=i(e),o=r&&r[1]||"",a=r&&r.length>2&&r[2]||"Api",s=r&&r.length>2&&r[2],u="1.0"==o?new m.Universe(null,"RAML10",t.universeProvider("RAML10"),"RAML10"):new m.Universe(null,"RAML08",t.universeProvider("RAML08"));return"API"==a?a="Api":"NamedExample"==a?a="ExampleSpec":"DataType"==a?a="TypeDeclaration":"SecurityScheme"==a?a="AbstractSecurityScheme":"AnnotationTypeDeclaration"==a&&(a="TypeDeclaration"),u.setOriginalTopLevelText(s),u.setTopLevel(a),u.setTypedVersion(o),{ptype:a,localUniverse:u}};t.ramlFirstLine=i,t.getFragmentDefenitionName=o,t.fromUnit=a,t.createBasicValidationAcceptor=s,t.isAnnotationTypeFragment=u},function(e,t,n){"use strict";function r(e,t,n){var r=e.definition().property(t);if(!r)return null;var i=r.range(),o=h(i,r,n);return o}function i(e,t,n,r){var i=y.newMap(n.map(function(e){return y.newMapping(y.newScalar(e.key),y.newScalar(e.value))})),o=new m.ASTNode(i,r?r.lowLevel().unit():null,r?r.lowLevel():null,null,null);return new d.StructuredValue(o,r,r?r.definition().property(e):null,t)}function o(e,t,n){var r=e.definition().property(t);if(!r)return null;var i=r.range(),o=e.lowLevel().unit().stub(),a=h(i,r,n,o);return a.isInEdit=!0,a.lowLevel()._unit=o,a._parent=e.copy(),a._parent.lowLevel()._unit=o,a}function a(e,t){return o(e,"resources",t)}function s(e,t){return o(e,"methods",t)}function u(e,t){return o(e,"responses",t)}function p(e,t){return o(e,"body",t)}function c(e,t){return o(e,"uriParameters",t)}function l(e,t){return o(e,"queryParameters",t)}function f(e,t){var n=m.createMapping(e.nameId(),t),r=new d.ASTPropImpl(n,null,e.range(),e);return r}function h(e,t,n,r){void 0===n&&(n=null);var i=m.createNode(n?n:"key",null,r),o=new d.ASTNodeImpl(i,null,e,t);return i.unit()||(i._unit=r),o.children(),o}var m=n(24),d=n(15),y=n(71);t.createStub0=r,t.genStructuredValue=i,t.createStub=o,t.createResourceStub=a,t.createMethodStub=s,t.createResponseStub=u,t.createBodyStub=p,t.createUriParameterStub=c,t.createQueryParameterStub=l,t.createAttr=f,t.createStubNode=h},function(e,t,n){"use strict";var r=n(36);e.exports=r.universesInfo},function(e,t,n){"use strict";var r=n(60),i=n(40),o=n(20),a=function(){function e(){}return e.prototype.generateText=function(e){var t=this,n=JSON.parse(e),r=n.items;if(!r)return"";var i="",o=r instanceof Array?r:[r];return i+="types:\n",o.forEach(function(e){i+="  - "+e.title+":\n",i+=t.generateObj(e,3)}),i},e.prototype.generateObj=function(e,t){var n="";if(n+=i.indent(t,"type: "+e.type)+"\n",e.properties){n+=i.indent(t,"properties:\n");for(var r in e.properties){var o=e.properties[r];n+=i.indent(t+1,r+":\n"),n+="object"==o.type?this.generateObj(o,t+2):i.indent(t+2,"type: "+o.type)+"\n"}return n}},e.prototype.generateTo=function(e,t,n){var r=this,i=JSON.parse(t),a=i.items;if(a){var s=a instanceof Array?a:[a],u=[];return s.forEach(function(t){var n=new o.ObjectTypeDeclarationImpl(t.title);r.generateObjTo(n,t),new o.BasicSecuritySchemeImpl(e).addToProp(n,"types"),u.push(t.title)}),u}i.title&&(n=i.title);var p=new o.ObjectTypeDeclarationImpl(n);return this.generateObjTo(p,i),new o.BasicSecuritySchemeImpl(e).addToProp(p,"types"),[n]},e.prototype.generateObjTo=function(e,t){if(e.setType(t.type),t.properties)for(var n in t.properties){var r=t.properties[n],i=this.makeTypeField(n,r);"array"==r.type,e.addToProp(i,"properties")}},e.prototype.makeTypeField=function(e,t){var n=this.makeType(e,t.type);if(t.type&&n.setType(t.type),"number"==t.type){var r=n;void 0!=t.minimum&&r.setMinimum(t.minimum),void 0!=t.maximum&&r.setMaximum(t.maximum)}if("array"==t.type){var i=t.items.type;n.setType(i+"[]");var o=n;void 0!=t.minItems&&o.setMinItems(t.minItems),void 0!=t.maxItems&&o.setMaxItems(t.maxItems),void 0!=t.uniqueItems&&o.setUniqueItems(t.uniqueItems)}return"object"==t.type&&this.generateObjTo(n,t),n},e.prototype.makeType=function(e,t){return"number"==t?new o.NumberTypeDeclarationImpl(e):"string"==t?new o.StringTypeDeclarationImpl(e):"array"==t?new o.ArrayTypeDeclarationImpl(e):new o.ObjectTypeDeclarationImpl(e)},e.prototype.generateItemsTo=function(e,t){var n=t.items;if(n){var r=n instanceof Array?n:[n];r.forEach(function(e){})}},e}();t.SchemaToModelGenerator=a;var s=function(){function e(){}return e.prototype.generateSchema=function(e){var t=this.generateType(e);return t.$schema="http://json-schema.org/draft-04/schema#",t},e.prototype.isSimpleType=function(e){return"string"==e||"number"==e||"boolean"==e||"object"==e},e.prototype.generateType=function(e){var t=this.allTypes(e),n={};n.title=e.attrValue("name");if(e.attrValue("type")){var i=e.attributes("type"),o=!1,a=!1;for(var s in i){var u=i[s].value(),p=i[s].lowLevel();if(n.type="",p.isValueInclude()){var c=JSON.parse(u);n.type="object",n.properties=c.properties}else if(this.isSimpleType(u)){if(n.type=u,a=!0,o)throw new Error("couldn't mix user defined and basic types in inheritance")}else{var l=this.resolveType(e,u);if(l){var f=this.generateTypeExp(u,t);if(n.properties?r.extend(n.properties,f.properties):n.properties=f.properties,n.type="object",o=!0,a)throw new Error("couldn't mix user defined and basic types in inheritance")}else{var f=this.generateTypeExp(u,t);n.type="object",o=!0,f.anyOf&&(n.anyOf=f.anyOf)}}}}else n.type="object";var h=this.generateProperties(e);return n.properties?r.extend(n.properties,h):n.properties=h,n},e.prototype.makeUnion=function(e,t){var n=this,r=[];return e.forEach(function(e){e=e.trim(),t[e]?r.push({type:"object",properties:n.generateType(t[e]).properties}):r.push({type:e})}),r},e.prototype.generateTypeExp=function(e,t){var n={};if(i.endsWith(e,"[]"))n.type="array",n.items={type:e.substring(0,e.length-2)};else if(e.indexOf("|")>0){var r=e.split("|");n.anyOf=this.makeUnion(r,t)}else if(t[e]){var o=this.generateType(t[e]);n.type="object",n.properties=o.properties}else n.type=e;return n},e.prototype.allTypes=function(e){var t=e.root(),n=t.elementsOfKind("types"),r={};return n.forEach(function(e){r[e.name()]=e}),r},e.prototype.resolveType=function(e,t){var n=this.allTypes(e);return n[t]},e.prototype.generateProperty=function(e,t){var n=this,i=this.allTypes(e),o={},a=e.definition().allProperties();a.forEach(function(t){if("name"!=t.nameId()){var a=e.attrValue(t.nameId());if(null!=a&&void 0!=a&&"undefined"!=a)if("type"==t.nameId()){var s=n.generateTypeExp(a,i);r.extend(o,s)}else if("enum"==t.nameId()){var u=e.attributes("enum"),p=u.map(function(e){return e.value()});o["enum"]=p}else o[t.nameId()]=a}}),t&&(o.required=!1);var s=(e.elements(),this.generateProperties(e));return Object.getOwnPropertyNames(s).length>0&&(o.properties=s),o},e.prototype.generateProperties=function(e){var t=this,n={},r=e.elements(),i=!0;return r.forEach(function(e){var r=e.attrValue("name");if("string"==typeof r){r=r.trim();var o=e.optional();n[r]=t.generateProperty(e,o),i=!1}}),n},e}();t.ModelToSchemaGenerator=s},function(e,t,n){"use strict";function r(e){return new u.TypeDeclarationImpl(e)}function i(e){return new u.ObjectTypeDeclarationImpl(e)}function o(e,t){e.setSchema(t)}function a(e,t){var n=(p.getUniverse("RAML10").type(p.universesInfo.Universe10.ExampleSpec.name),p.universesInfo.Universe10.TypeDeclaration.properties.example.name),r=e.highLevel(),i=r.lowLevel(),o=r.children().filter(function(e){return e.lowLevel().key()==n}),a=c.createNode(n);l.setAttr(a,t),o.length>0&&(l.removeNode(i,o[0].lowLevel()),o[0]._node=a,l.insertNode(i,a)),r.createAttr&&r.createAttr(n,t)}function s(e,t){e.add(t)}var u=n(20),p=n(36),c=n(24),l=n(11);t.createTypeDeclaration=r,t.createObjectTypeDeclaration=i,t.setTypeDeclarationSchema=o,t.setTypeDeclarationExample=a,t.addChild=s},function(e,t,n){"use strict";function r(e){var t=J.getUniverse("RAML10"),n=t.type("Api"),r=$.createStubNode(n,null,e);return r}function i(e){var t=J.getUniverse("RAML10"),n=t.type("LibraryBase"),r=$.createStubNode(n,null,e);return r}function o(e){var t=J.getUniverse("RAML10"),n=t.type("FragmentDeclaration"),r=$.createStubNode(n,null,e);return r}function a(e){var t=J.getUniverse("RAML10"),n=t.type("Trait"),r=$.createStubNode(n,null,e);return r}function s(e){var t=J.getUniverse("RAML10"),n=t.type("MethodBase"),r=$.createStubNode(n,null,e);return r}function u(e){var t=J.getUniverse("RAML10"),n=t.type("Operation"),r=$.createStubNode(n,null,e);return r}function p(e){var t=J.getUniverse("RAML10"),n=t.type("TypeDeclaration"),r=$.createStubNode(n,null,e);return r}function c(e){var t=J.getUniverse("RAML10"),n=t.type("UsesDeclaration"),r=$.createStubNode(n,null,e);return r}function l(e){var t=J.getUniverse("RAML10"),n=t.type("XMLFacetInfo"),r=$.createStubNode(n,null,e);return r}function f(e){var t=J.getUniverse("RAML10"),n=t.type("ArrayTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function h(e){var t=J.getUniverse("RAML10"),n=t.type("UnionTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function m(e){var t=J.getUniverse("RAML10"),n=t.type("ObjectTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function d(e){var t=J.getUniverse("RAML10"),n=t.type("StringTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function y(e){var t=J.getUniverse("RAML10"),n=t.type("BooleanTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function v(e){var t=J.getUniverse("RAML10"),n=t.type("NumberTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function g(e){var t=J.getUniverse("RAML10"),n=t.type("IntegerTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function A(e){var t=J.getUniverse("RAML10"),n=t.type("DateOnlyTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function T(e){var t=J.getUniverse("RAML10"),n=t.type("TimeOnlyTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function b(e){var t=J.getUniverse("RAML10"),n=t.type("DateTimeOnlyTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function S(e){var t=J.getUniverse("RAML10"),n=t.type("DateTimeTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function E(e){var t=J.getUniverse("RAML10"),n=t.type("FileTypeDeclaration"),r=$.createStubNode(n,null,e);return r}function _(e){var t=J.getUniverse("RAML10"),n=t.type("Response"),r=$.createStubNode(n,null,e);return r}function w(e){var t=J.getUniverse("RAML10"),n=t.type("SecuritySchemePart"),r=$.createStubNode(n,null,e);return r}function N(e){var t=J.getUniverse("RAML10"),n=t.type("AbstractSecurityScheme"),r=$.createStubNode(n,null,e);return r}function M(e){var t=J.getUniverse("RAML10"),n=t.type("SecuritySchemeSettings"),r=$.createStubNode(n,null,e);return r}function R(e){var t=J.getUniverse("RAML10"),n=t.type("OAuth1SecuritySchemeSettings"),r=$.createStubNode(n,null,e);return r}function I(e){var t=J.getUniverse("RAML10"),n=t.type("OAuth2SecuritySchemeSettings"),r=$.createStubNode(n,null,e);return r}function P(e){var t=J.getUniverse("RAML10"),n=t.type("OAuth2SecurityScheme"),r=$.createStubNode(n,null,e);return r}function L(e){var t=J.getUniverse("RAML10"),n=t.type("OAuth1SecurityScheme"),r=$.createStubNode(n,null,e);return r}function C(e){var t=J.getUniverse("RAML10"),n=t.type("PassThroughSecurityScheme"),r=$.createStubNode(n,null,e);return r}function O(e){var t=J.getUniverse("RAML10"),n=t.type("BasicSecurityScheme"),r=$.createStubNode(n,null,e);return r}function D(e){var t=J.getUniverse("RAML10"),n=t.type("DigestSecurityScheme"),r=$.createStubNode(n,null,e);return r}function x(e){var t=J.getUniverse("RAML10"),n=t.type("CustomSecurityScheme"),r=$.createStubNode(n,null,e);return r}function U(e){var t=J.getUniverse("RAML10"),n=t.type("Method"),r=$.createStubNode(n,null,e);return r}function k(e){var t=J.getUniverse("RAML10"),n=t.type("ResourceType"),r=$.createStubNode(n,null,e);return r}function F(e){var t=J.getUniverse("RAML10"),n=t.type("ResourceBase"),r=$.createStubNode(n,null,e);return r}function B(e){var t=J.getUniverse("RAML10"),n=t.type("Resource"),r=$.createStubNode(n,null,e);return r}function V(e){var t=J.getUniverse("RAML10"),n=t.type("DocumentationItem"),r=$.createStubNode(n,null,e);return r}function K(e){var t=J.getUniverse("RAML10"),n=t.type("Library"),r=$.createStubNode(n,null,e);return r}function j(e){var t=J.getUniverse("RAML10"),n=t.type("Overlay"),r=$.createStubNode(n,null,e);return r}function q(e){var t=J.getUniverse("RAML10"),n=t.type("Extension"),r=$.createStubNode(n,null,e);return r}function H(e,t,n){return Z.loadApi(e,t,n).getOrElse(null)}function Y(e,t,n){return Z.loadApi(e,t,n).getOrElse(null)}function G(e,t,n){return Z.loadApiAsync(e,t,n)}function z(e,t,n){return Z.loadRAMLAsync(e,t,n)}function W(e){return Z.getLanguageElementByRuntimeType(e)}var X=this&&this.__extends||function(e,t){function n(){this.constructor=e}for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r]);e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)},$=n(16),J=n(36),Q=n(44),Z=n(9),ee=n(33),te=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.annotations=function(){return e.prototype.attributes.call(this,"annotations",function(e){return new Ct(e)})},t.prototype.wrapperClassName=function(){return"AnnotableImpl"},t.prototype.kind=function(){return"Annotable"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new Le(this.highLevel())},t}(Q.BasicNodeImpl);t.AnnotableImpl=te;var ne=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"ValueTypeImpl"},t.prototype.kind=function(){return"ValueType"},t.prototype.RAMLVersion=function(){return"undefined"},t.prototype.value=function(){return this.attr.value()},t}(Q.AttributeNodeImpl);t.ValueTypeImpl=ne;var re=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"StringTypeImpl"},t.prototype.kind=function(){return"StringType"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.value=function(){return this.attr.value()},t}(ne);t.StringTypeImpl=re;var ie=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"UriTemplateImpl"},t.prototype.kind=function(){return"UriTemplate"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(re);t.UriTemplateImpl=ie;var oe=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"RelativeUriStringImpl"},t.prototype.kind=function(){return"RelativeUriString"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ie);t.RelativeUriStringImpl=oe;var ae=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"FullUriTemplateStringImpl"},t.prototype.kind=function(){return"FullUriTemplateString"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ie);t.FullUriTemplateStringImpl=ae;var se=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"StatusCodeStringImpl"},t.prototype.kind=function(){return"StatusCodeString"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(re);t.StatusCodeStringImpl=se;var ue=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"FixedUriStringImpl"},t.prototype.kind=function(){return"FixedUriString"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(re);t.FixedUriStringImpl=ue;var pe=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"ContentTypeImpl"},t.prototype.kind=function(){return"ContentType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(re);t.ContentTypeImpl=pe;var ce=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"MarkdownStringImpl"},t.prototype.kind=function(){return"MarkdownString"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(re);t.MarkdownStringImpl=ce;var le=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"SchemaStringImpl"},t.prototype.kind=function(){return"SchemaString"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(re);t.SchemaStringImpl=le;var fe=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"MimeTypeImpl"},t.prototype.kind=function(){return"MimeType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(re);t.MimeTypeImpl=fe;var he=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"AnyTypeImpl"},t.prototype.kind=function(){return"AnyType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.AnyTypeImpl=he;var me=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"NumberTypeImpl"},t.prototype.kind=function(){return"NumberType"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.value=function(){return this.attr.value()},t}(ne);t.NumberTypeImpl=me;var de=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"IntegerTypeImpl"},t.prototype.kind=function(){return"IntegerType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.IntegerTypeImpl=de;var ye=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"NullTypeImpl"},t.prototype.kind=function(){return"NullType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.NullTypeImpl=ye;var ve=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"TimeOnlyTypeImpl"},t.prototype.kind=function(){return"TimeOnlyType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.TimeOnlyTypeImpl=ve;var ge=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"DateOnlyTypeImpl"},t.prototype.kind=function(){return"DateOnlyType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.DateOnlyTypeImpl=ge;var Ae=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"DateTimeOnlyTypeImpl"},t.prototype.kind=function(){return"DateTimeOnlyType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.DateTimeOnlyTypeImpl=Ae;var Te=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"DateTimeTypeImpl"},t.prototype.kind=function(){return"DateTimeType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.DateTimeTypeImpl=Te;var be=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"FileTypeImpl"},t.prototype.kind=function(){return"FileType"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.FileTypeImpl=be;var Se=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"BooleanTypeImpl"},t.prototype.kind=function(){return"BooleanType"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.value=function(){return this.attr.value()},t}(ne);t.BooleanTypeImpl=Se;var Ee=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"AnnotationTargetImpl"},t.prototype.kind=function(){return"AnnotationTarget"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(ne);t.AnnotationTargetImpl=Ee;var _e=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"ReferenceImpl"},t.prototype.kind=function(){return"Reference"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.value=function(){return Q.toStructuredValue(this.attr)},t.prototype.structuredValue=function(){return ee.structuredValue(this)},t.prototype.name=function(){return ee.referenceName(this)},t}(Q.AttributeNodeImpl);t.ReferenceImpl=_e;var we=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"TraitRefImpl"},t.prototype.kind=function(){return"TraitRef"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.trait=function(){return ee.referencedTrait(this)},t}(_e);t.TraitRefImpl=we;var Ne=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?u(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.queryParameters=function(){return e.prototype.elements.call(this,"queryParameters")},t.prototype.headers=function(){return e.prototype.elements.call(this,"headers")},t.prototype.queryString=function(){return e.prototype.element.call(this,"queryString")},t.prototype.responses=function(){return e.prototype.elements.call(this,"responses")},t.prototype.wrapperClassName=function(){return"OperationImpl"},t.prototype.kind=function(){return"Operation"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(te);t.OperationImpl=Ne;var Me=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?p(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.name=function(){return e.prototype.attribute.call(this,"name",this.toString)},t.prototype.setName=function(e){return this.highLevel().attrOrCreate("name").setValue(""+e),this},t.prototype.displayName=function(){return e.prototype.attribute.call(this,"displayName",this.toString)},t.prototype.setDisplayName=function(e){return this.highLevel().attrOrCreate("displayName").setValue(""+e),this},t.prototype.facets=function(){return e.prototype.elements.call(this,"facets")},t.prototype.schema_original=function(){return e.prototype.attributes.call(this,"schema",this.toString)},t.prototype.setSchema=function(e){return this.highLevel().attrOrCreate("schema").setValue(""+e),this},t.prototype.type_original=function(){return e.prototype.attributes.call(this,"type",this.toString)},t.prototype.setType=function(e){return this.highLevel().attrOrCreate("type").setValue(""+e),this},t.prototype.location=function(){return e.prototype.attribute.call(this,"location",function(e){return new Re(e)})},t.prototype.locationKind=function(){return e.prototype.attribute.call(this,"locationKind",function(e){return new Ie(e)})},t.prototype["default"]=function(){return e.prototype.attribute.call(this,"default",this.toAny)},t.prototype.setDefault=function(e){return this.highLevel().attrOrCreate("default").setValue(""+e),this},t.prototype.example_original=function(){return e.prototype.element.call(this,"example")},t.prototype.examples_original=function(){return e.prototype.elements.call(this,"examples")},t.prototype.required=function(){return e.prototype.attribute.call(this,"required",this.toBoolean)},t.prototype.setRequired=function(e){return this.highLevel().attrOrCreate("required").setValue(""+e),
 this},t.prototype.description=function(){return e.prototype.attribute.call(this,"description",function(e){return new ce(e)})},t.prototype.xml=function(){return e.prototype.element.call(this,"xml")},t.prototype.allowedTargets=function(){return e.prototype.attributes.call(this,"allowedTargets",function(e){return new Ee(e)})},t.prototype.isAnnotation=function(){return e.prototype.attribute.call(this,"isAnnotation",this.toBoolean)},t.prototype.setIsAnnotation=function(e){return this.highLevel().attrOrCreate("isAnnotation").setValue(""+e),this},t.prototype.annotations=function(){return e.prototype.attributes.call(this,"annotations",function(e){return new Ct(e)})},t.prototype.uses=function(){return e.prototype.elements.call(this,"uses")},t.prototype.wrapperClassName=function(){return"TypeDeclarationImpl"},t.prototype.kind=function(){return"TypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.runtimeType=function(){return ee.runtimeType(this)},t.prototype.validateInstance=function(e){return ee.validateInstance(this,e)},t.prototype.validateInstanceWithDetailedStatuses=function(e){return ee.validateInstanceWithDetailedStatuses(this,e)},t.prototype.example=function(){return ee.getTypeExample(this)},t.prototype.examples=function(){return ee.getTypeExamples(this)},t.prototype.fixedFacets=function(){return ee.typeFixedFacets(this)},t.prototype.type=function(){return ee.typeValue(this)},t.prototype.schema=function(){return ee.schemaValue(this)},t.prototype.structuredType=function(){return ee.typeStructuredValue(this)},t.prototype.parametrizedProperties=function(){return ee.getTemplateParametrizedProperties(this)},t.prototype.scalarsAnnotations=function(){return new Ue(this.highLevel())},t}(te);t.TypeDeclarationImpl=Me;var Re=function(){function e(e){this.attr=e}return e.prototype.wrapperClassName=function(){return"ModelLocationImpl"},e.prototype.kind=function(){return"ModelLocation"},e.prototype.RAMLVersion=function(){return"RAML10"},e}();t.ModelLocationImpl=Re;var Ie=function(){function e(e){this.attr=e}return e.prototype.wrapperClassName=function(){return"LocationKindImpl"},e.prototype.kind=function(){return"LocationKind"},e.prototype.RAMLVersion=function(){return"RAML10"},e}();t.LocationKindImpl=Ie;var Pe=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?c(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.key=function(){return e.prototype.attribute.call(this,"key",this.toString)},t.prototype.setKey=function(e){return this.highLevel().attrOrCreate("key").setValue(""+e),this},t.prototype.value=function(){return e.prototype.attribute.call(this,"value",this.toString)},t.prototype.setValue=function(e){return this.highLevel().attrOrCreate("value").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"UsesDeclarationImpl"},t.prototype.kind=function(){return"UsesDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.ast=function(){return ee.referencedNode(this)},t.prototype.scalarsAnnotations=function(){return new Ce(this.highLevel())},t}(te);t.UsesDeclarationImpl=Pe;var Le=function(){function e(e){this.node=e}return e.prototype.annotations=function(){var e=this.node.attributes("annotations");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},e}();t.AnnotableScalarsAnnotationsImpl=Le;var Ce=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.value=function(){var e=this.node.attr("value");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Le);t.UsesDeclarationScalarsAnnotationsImpl=Ce;var Oe=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?l(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.attribute=function(){return e.prototype.attribute.call(this,"attribute",this.toBoolean)},t.prototype.setAttribute=function(e){return this.highLevel().attrOrCreate("attribute").setValue(""+e),this},t.prototype.wrapped=function(){return e.prototype.attribute.call(this,"wrapped",this.toBoolean)},t.prototype.setWrapped=function(e){return this.highLevel().attrOrCreate("wrapped").setValue(""+e),this},t.prototype.name=function(){return e.prototype.attribute.call(this,"name",this.toString)},t.prototype.setName=function(e){return this.highLevel().attrOrCreate("name").setValue(""+e),this},t.prototype.namespace=function(){return e.prototype.attribute.call(this,"namespace",this.toString)},t.prototype.setNamespace=function(e){return this.highLevel().attrOrCreate("namespace").setValue(""+e),this},t.prototype.prefix=function(){return e.prototype.attribute.call(this,"prefix",this.toString)},t.prototype.setPrefix=function(e){return this.highLevel().attrOrCreate("prefix").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"XMLFacetInfoImpl"},t.prototype.kind=function(){return"XMLFacetInfo"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new De(this.highLevel())},t}(te);t.XMLFacetInfoImpl=Oe;var De=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.attribute=function(){var e=this.node.attr("attribute");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.wrapped=function(){var e=this.node.attr("wrapped");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.name=function(){var e=this.node.attr("name");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.namespace=function(){var e=this.node.attr("namespace");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.prefix=function(){var e=this.node.attr("prefix");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Le);t.XMLFacetInfoScalarsAnnotationsImpl=De;var xe=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?f(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.uniqueItems=function(){return e.prototype.attribute.call(this,"uniqueItems",this.toBoolean)},t.prototype.setUniqueItems=function(e){return this.highLevel().attrOrCreate("uniqueItems").setValue(""+e),this},t.prototype.items_original=function(){return e.prototype.element.call(this,"items")},t.prototype.minItems=function(){return e.prototype.attribute.call(this,"minItems",this.toNumber)},t.prototype.setMinItems=function(e){return this.highLevel().attrOrCreate("minItems").setValue(""+e),this},t.prototype.maxItems=function(){return e.prototype.attribute.call(this,"maxItems",this.toNumber)},t.prototype.setMaxItems=function(e){return this.highLevel().attrOrCreate("maxItems").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"ArrayTypeDeclarationImpl"},t.prototype.kind=function(){return"ArrayTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.items=function(){return ee.getItems(this)},t.prototype.findComponentTypeDeclaration=function(){return ee.findComponentTypeDeclaration(this)},t.prototype.scalarsAnnotations=function(){return new ke(this.highLevel())},t}(Me);t.ArrayTypeDeclarationImpl=xe;var Ue=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.displayName=function(){var e=this.node.attr("displayName");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.schema=function(){var e=this.node.attributes("schema");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t.prototype.type=function(){var e=this.node.attributes("type");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t.prototype.location=function(){var e=this.node.attr("location");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.locationKind=function(){var e=this.node.attr("locationKind");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype["default"]=function(){var e=this.node.attr("default");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.required=function(){var e=this.node.attr("required");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.description=function(){var e=this.node.attr("description");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.allowedTargets=function(){var e=this.node.attributes("allowedTargets");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t.prototype.isAnnotation=function(){var e=this.node.attr("isAnnotation");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.annotations=function(){var e=this.node.attributes("annotations");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t}(Le);t.TypeDeclarationScalarsAnnotationsImpl=Ue;var ke=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.uniqueItems=function(){var e=this.node.attr("uniqueItems");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.minItems=function(){var e=this.node.attr("minItems");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.maxItems=function(){var e=this.node.attr("maxItems");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Ue);t.ArrayTypeDeclarationScalarsAnnotationsImpl=ke;var Fe=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?h(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.wrapperClassName=function(){return"UnionTypeDeclarationImpl"},t.prototype.kind=function(){return"UnionTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(Me);t.UnionTypeDeclarationImpl=Fe;var Be=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?m(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.properties=function(){return e.prototype.elements.call(this,"properties")},t.prototype.minProperties=function(){return e.prototype.attribute.call(this,"minProperties",this.toNumber)},t.prototype.setMinProperties=function(e){return this.highLevel().attrOrCreate("minProperties").setValue(""+e),this},t.prototype.maxProperties=function(){return e.prototype.attribute.call(this,"maxProperties",this.toNumber)},t.prototype.setMaxProperties=function(e){return this.highLevel().attrOrCreate("maxProperties").setValue(""+e),this},t.prototype.additionalProperties=function(){return e.prototype.attribute.call(this,"additionalProperties",this.toBoolean)},t.prototype.setAdditionalProperties=function(e){return this.highLevel().attrOrCreate("additionalProperties").setValue(""+e),this},t.prototype.discriminator=function(){return e.prototype.attribute.call(this,"discriminator",this.toString)},t.prototype.setDiscriminator=function(e){return this.highLevel().attrOrCreate("discriminator").setValue(""+e),this},t.prototype.discriminatorValue=function(){return e.prototype.attribute.call(this,"discriminatorValue",this.toString)},t.prototype.setDiscriminatorValue=function(e){return this.highLevel().attrOrCreate("discriminatorValue").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"ObjectTypeDeclarationImpl"},t.prototype.kind=function(){return"ObjectTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new Ve(this.highLevel())},t}(Me);t.ObjectTypeDeclarationImpl=Be;var Ve=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.minProperties=function(){var e=this.node.attr("minProperties");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.maxProperties=function(){var e=this.node.attr("maxProperties");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.additionalProperties=function(){var e=this.node.attr("additionalProperties");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.discriminator=function(){var e=this.node.attr("discriminator");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.discriminatorValue=function(){var e=this.node.attr("discriminatorValue");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Ue);t.ObjectTypeDeclarationScalarsAnnotationsImpl=Ve;var Ke=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?d(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.pattern=function(){return e.prototype.attribute.call(this,"pattern",this.toString)},t.prototype.setPattern=function(e){return this.highLevel().attrOrCreate("pattern").setValue(""+e),this},t.prototype.minLength=function(){return e.prototype.attribute.call(this,"minLength",this.toNumber)},t.prototype.setMinLength=function(e){return this.highLevel().attrOrCreate("minLength").setValue(""+e),this},t.prototype.maxLength=function(){return e.prototype.attribute.call(this,"maxLength",this.toNumber)},t.prototype.setMaxLength=function(e){return this.highLevel().attrOrCreate("maxLength").setValue(""+e),this},t.prototype["enum"]=function(){return e.prototype.attributes.call(this,"enum",this.toString)},t.prototype.setEnum=function(e){return this.highLevel().attrOrCreate("enum").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"StringTypeDeclarationImpl"},t.prototype.kind=function(){return"StringTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new je(this.highLevel())},t}(Me);t.StringTypeDeclarationImpl=Ke;var je=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.pattern=function(){var e=this.node.attr("pattern");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.minLength=function(){var e=this.node.attr("minLength");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.maxLength=function(){var e=this.node.attr("maxLength");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype["enum"]=function(){var e=this.node.attributes("enum");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t}(Ue);t.StringTypeDeclarationScalarsAnnotationsImpl=je;var qe=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?y(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.wrapperClassName=function(){return"BooleanTypeDeclarationImpl"},t.prototype.kind=function(){return"BooleanTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(Me);t.BooleanTypeDeclarationImpl=qe;var He=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?v(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.minimum=function(){return e.prototype.attribute.call(this,"minimum",this.toNumber)},t.prototype.setMinimum=function(e){return this.highLevel().attrOrCreate("minimum").setValue(""+e),this},t.prototype.maximum=function(){return e.prototype.attribute.call(this,"maximum",this.toNumber)},t.prototype.setMaximum=function(e){return this.highLevel().attrOrCreate("maximum").setValue(""+e),this},t.prototype["enum"]=function(){return e.prototype.attributes.call(this,"enum",this.toString)},t.prototype.setEnum=function(e){return this.highLevel().attrOrCreate("enum").setValue(""+e),this},t.prototype.format=function(){return e.prototype.attribute.call(this,"format",this.toString)},t.prototype.setFormat=function(e){return this.highLevel().attrOrCreate("format").setValue(""+e),this},t.prototype.multipleOf=function(){return e.prototype.attribute.call(this,"multipleOf",this.toNumber)},t.prototype.setMultipleOf=function(e){return this.highLevel().attrOrCreate("multipleOf").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"NumberTypeDeclarationImpl"},t.prototype.kind=function(){return"NumberTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new Ge(this.highLevel())},t}(Me);t.NumberTypeDeclarationImpl=He;var Ye=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?g(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.format=function(){return e.prototype.attribute.call(this,"format",this.toString)},t.prototype.setFormat=function(e){return this.highLevel().attrOrCreate("format").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"IntegerTypeDeclarationImpl"},t.prototype.kind=function(){return"IntegerTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new ze(this.highLevel())},t}(He);t.IntegerTypeDeclarationImpl=Ye;var Ge=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.minimum=function(){var e=this.node.attr("minimum");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.maximum=function(){var e=this.node.attr("maximum");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype["enum"]=function(){var e=this.node.attributes("enum");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t.prototype.format=function(){var e=this.node.attr("format");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.multipleOf=function(){var e=this.node.attr("multipleOf");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Ue);t.NumberTypeDeclarationScalarsAnnotationsImpl=Ge;var ze=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.format=function(){var e=this.node.attr("format");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Ge);t.IntegerTypeDeclarationScalarsAnnotationsImpl=ze;var We=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?A(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.wrapperClassName=function(){return"DateOnlyTypeDeclarationImpl"},t.prototype.kind=function(){return"DateOnlyTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(Me);t.DateOnlyTypeDeclarationImpl=We;var Xe=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?T(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.wrapperClassName=function(){return"TimeOnlyTypeDeclarationImpl"},t.prototype.kind=function(){return"TimeOnlyTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(Me);t.TimeOnlyTypeDeclarationImpl=Xe;var $e=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?b(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.wrapperClassName=function(){return"DateTimeOnlyTypeDeclarationImpl"},t.prototype.kind=function(){return"DateTimeOnlyTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(Me);t.DateTimeOnlyTypeDeclarationImpl=$e;var Je=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?S(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.format=function(){return e.prototype.attribute.call(this,"format",this.toString)},t.prototype.setFormat=function(e){return this.highLevel().attrOrCreate("format").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"DateTimeTypeDeclarationImpl"},t.prototype.kind=function(){return"DateTimeTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new Qe(this.highLevel())},t}(Me);t.DateTimeTypeDeclarationImpl=Je;var Qe=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.format=function(){var e=this.node.attr("format");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Ue);t.DateTimeTypeDeclarationScalarsAnnotationsImpl=Qe;var Ze=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?E(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.fileTypes=function(){return e.prototype.attributes.call(this,"fileTypes",function(e){return new pe(e)})},t.prototype.minLength=function(){return e.prototype.attribute.call(this,"minLength",this.toNumber)},t.prototype.setMinLength=function(e){return this.highLevel().attrOrCreate("minLength").setValue(""+e),this},t.prototype.maxLength=function(){return e.prototype.attribute.call(this,"maxLength",this.toNumber)},t.prototype.setMaxLength=function(e){return this.highLevel().attrOrCreate("maxLength").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"FileTypeDeclarationImpl"},t.prototype.kind=function(){return"FileTypeDeclaration"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new et(this.highLevel())},t}(Me);t.FileTypeDeclarationImpl=Ze;var et=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.fileTypes=function(){var e=this.node.attributes("fileTypes");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t.prototype.minLength=function(){var e=this.node.attr("minLength");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.maxLength=function(){var e=this.node.attr("maxLength");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t}(Ue);t.FileTypeDeclarationScalarsAnnotationsImpl=et;var tt=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?_(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.code=function(){return e.prototype.attribute.call(this,"code",function(e){return new se(e)})},t.prototype.headers=function(){return e.prototype.elements.call(this,"headers")},t.prototype.body=function(){return e.prototype.elements.call(this,"body")},t.prototype.description=function(){return e.prototype.attribute.call(this,"description",function(e){return new ce(e)})},t.prototype.annotations=function(){return e.prototype.attributes.call(this,"annotations",function(e){return new Ct(e)})},t.prototype.wrapperClassName=function(){return"ResponseImpl"},t.prototype.kind=function(){return"Response"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.isOkRange=function(){return ee.isOkRange(this)},t.prototype.scalarsAnnotations=function(){return new nt(this.highLevel())},t}(te);t.ResponseImpl=tt;var nt=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.description=function(){var e=this.node.attr("description");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.annotations=function(){var e=this.node.attributes("annotations");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t}(Le);t.ResponseScalarsAnnotationsImpl=nt;var rt=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?w(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.annotations=function(){return e.prototype.attributes.call(this,"annotations",function(e){return new Ct(e)})},t.prototype.wrapperClassName=function(){return"SecuritySchemePartImpl"},t.prototype.kind=function(){return"SecuritySchemePart"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new it(this.highLevel())},t}(Ne);t.SecuritySchemePartImpl=rt;var it=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.annotations=function(){var e=this.node.attributes("annotations");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t}(Le);t.SecuritySchemePartScalarsAnnotationsImpl=it;var ot=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?s(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.body=function(){return e.prototype.elements.call(this,"body")},t.prototype.protocols=function(){return e.prototype.attributes.call(this,"protocols",this.toString)},t.prototype.setProtocols=function(e){return this.highLevel().attrOrCreate("protocols").setValue(""+e),this},t.prototype.is=function(){return e.prototype.attributes.call(this,"is",function(e){return new we(e)})},t.prototype.securedBy=function(){return e.prototype.attributes.call(this,"securedBy",function(e){return new at(e)})},t.prototype.description=function(){return e.prototype.attribute.call(this,"description",function(e){return new ce(e)})},t.prototype.displayName=function(){return e.prototype.attribute.call(this,"displayName",this.toString)},t.prototype.setDisplayName=function(e){return this.highLevel().attrOrCreate("displayName").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"MethodBaseImpl"},t.prototype.kind=function(){return"MethodBase"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new bt(this.highLevel())},t}(Ne);t.MethodBaseImpl=ot;var at=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.wrapperClassName=function(){return"SecuritySchemeRefImpl"},t.prototype.kind=function(){return"SecuritySchemeRef"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.securitySchemeName=function(){return ee.securitySchemeName(this)},t.prototype.securityScheme=function(){return ee.securityScheme(this)},t}(_e);t.SecuritySchemeRefImpl=at;var st=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?N(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.name=function(){return e.prototype.attribute.call(this,"name",this.toString)},t.prototype.setName=function(e){return this.highLevel().attrOrCreate("name").setValue(""+e),this},t.prototype.type=function(){return e.prototype.attribute.call(this,"type",this.toString)},t.prototype.setType=function(e){return this.highLevel().attrOrCreate("type").setValue(""+e),this},t.prototype.description=function(){return e.prototype.attribute.call(this,"description",function(e){return new ce(e)})},t.prototype.describedBy=function(){return e.prototype.element.call(this,"describedBy")},t.prototype.displayName=function(){return e.prototype.attribute.call(this,"displayName",this.toString)},t.prototype.setDisplayName=function(e){return this.highLevel().attrOrCreate("displayName").setValue(""+e),this},t.prototype.settings=function(){return e.prototype.element.call(this,"settings")},t.prototype.wrapperClassName=function(){return"AbstractSecuritySchemeImpl"},t.prototype.kind=function(){return"AbstractSecurityScheme"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new At(this.highLevel())},t}(te);t.AbstractSecuritySchemeImpl=st;var ut=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?M(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.wrapperClassName=function(){return"SecuritySchemeSettingsImpl"},t.prototype.kind=function(){return"SecuritySchemeSettings"},t.prototype.RAMLVersion=function(){return"RAML10"},t}(te);t.SecuritySchemeSettingsImpl=ut;var pt=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?R(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.requestTokenUri=function(){return e.prototype.attribute.call(this,"requestTokenUri",function(e){return new ue(e)})},t.prototype.authorizationUri=function(){return e.prototype.attribute.call(this,"authorizationUri",function(e){return new ue(e)})},t.prototype.tokenCredentialsUri=function(){return e.prototype.attribute.call(this,"tokenCredentialsUri",function(e){return new ue(e)})},t.prototype.signatures=function(){return e.prototype.attributes.call(this,"signatures",this.toString)},t.prototype.setSignatures=function(e){return this.highLevel().attrOrCreate("signatures").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"OAuth1SecuritySchemeSettingsImpl"},t.prototype.kind=function(){return"OAuth1SecuritySchemeSettings"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new ct(this.highLevel())},t}(ut);t.OAuth1SecuritySchemeSettingsImpl=pt;var ct=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.requestTokenUri=function(){var e=this.node.attr("requestTokenUri");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.authorizationUri=function(){var e=this.node.attr("authorizationUri");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.tokenCredentialsUri=function(){var e=this.node.attr("tokenCredentialsUri");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.signatures=function(){var e=this.node.attributes("signatures");return e.map(function(e){var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n})},t}(Le);t.OAuth1SecuritySchemeSettingsScalarsAnnotationsImpl=ct;var lt=function(e){function t(t,n){void 0===n&&(n=!0),e.call(this,"string"==typeof t?I(t):t,n),this.nodeOrKey=t,this.setAsTopLevel=n}return X(t,e),t.prototype.accessTokenUri=function(){return e.prototype.attribute.call(this,"accessTokenUri",function(e){return new ue(e)})},t.prototype.authorizationUri=function(){return e.prototype.attribute.call(this,"authorizationUri",function(e){return new ue(e)})},t.prototype.authorizationGrants=function(){return e.prototype.attributes.call(this,"authorizationGrants",this.toString)},t.prototype.setAuthorizationGrants=function(e){return this.highLevel().attrOrCreate("authorizationGrants").setValue(""+e),this},t.prototype.scopes=function(){return e.prototype.attributes.call(this,"scopes",this.toString)},t.prototype.setScopes=function(e){return this.highLevel().attrOrCreate("scopes").setValue(""+e),this},t.prototype.wrapperClassName=function(){return"OAuth2SecuritySchemeSettingsImpl"},t.prototype.kind=function(){return"OAuth2SecuritySchemeSettings"},t.prototype.RAMLVersion=function(){return"RAML10"},t.prototype.scalarsAnnotations=function(){return new ft(this.highLevel())},t}(ut);t.OAuth2SecuritySchemeSettingsImpl=lt;var ft=function(e){function t(){e.apply(this,arguments)}return X(t,e),t.prototype.accessTokenUri=function(){var e=this.node.attr("accessTokenUri");if(null==e)return[];var t=e.annotations(),n=Q.attributesToValues(t,function(e){return new Ct(e)});return n},t.prototype.authorizationUri=function(){var e=this.node.attr("authorizationUri");
@@ -2849,214 +2934,7 @@ httpResolver:{getResourceAsync:function(path){return context.getResourceAsync(pa
 serializeMetadata:false});detail.json=json}this._setLatestJson(json);this._setLatestResult(api);this.fire("api-parse-ready",detail);return detail},contentAsync:function(path){return this.findEntry(path).then(function(entry){if(!entry)return Promise.reject(new Error("Entry not found."));return this._readFileContent(entry)}.bind(this))},getResourceAsync:function(path){this._markTime("raml-file-fetch-start");var context=this;return fetch(path).then(function(response){context._markTime("raml-file-fetch-end");
 return response.text()}).then(function(text){return{content:text}})},loadFiles:function(ramlFile){ramlFile=ramlFile||this.ramlFile;if(!ramlFile)return Promise.reject(new Error("No file entry available"));return this._readFileContent(ramlFile).then(function(content){return this.parseRaml(content)}.bind(this))},_readFileContent:function(file){return new Promise(function(resolve,reject){var reader=new FileReader;reader.addEventListener("loadend",function(e){resolve(e.target.result)});reader.addEventListener("error",
 function(e){reject(e)});var blob=file.content;if(!blob&&file.entry&&file.entry.content)blob=file.entry.content;if(!blob)blob=file;reader.readAsText(blob)})},findEntry:function(path){var entries=this.files;if(!entries||entries.length===1&&entries[0]===this.ramlFile)return Promise.resolve(null);for(var i=0,len=entries.length;i<len;i++){var entry=entries[i];var fullPath=entry.filename||entry.name;if(fullPath===path||"/"+fullPath===path)return Promise.resolve(entry);var index=fullPath.indexOf(path);if(index>
-0)if(path[0]==="/"||fullPath[index-1]==="/")return Promise.resolve(entry)}return Promise.resolve(null)},_measureData:function(){if(!this.debug||!performance||!performance.mark)return;performance.measure("api-spec-load-time","load-raml-url-start","load-raml-url-end");var items=window.performance.getEntriesByType("measure");console.log(items)}})})();</script><dom-module id="raml-json-enhance" assetpath="bower_components/raml-json-enhance/"><template><style>:host{display:none;}</style><script id="worker" type="javascript/worker">// All polyfills source: Mozilla Developer Network
-if (typeof Object.assign !== 'function') {
-  Object.assign = function(target) {
-    'use strict';
-    if (target === null) {
-      throw new TypeError('Cannot convert undefined or null to object');
-    }
-    var to = Object(target);
-    for (var index = 1; index < arguments.length; index++) {
-      var nextSource = arguments[index];
-      if (nextSource !== null) {
-        for (var nextKey in nextSource) {
-          if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {
-            to[nextKey] = nextSource[nextKey];
-          }
-        }
-      }
-    }
-    return to;
-  };
-}
-if (!Object.keys) {
-  Object.keys = (function() {
-    'use strict';
-    var hasOwnProperty = Object.prototype.hasOwnProperty;
-    var hasDontEnumBug = !({
-      toString: null
-    }).propertyIsEnumerable('toString');
-    var dontEnums = [
-      'toString',
-      'toLocaleString',
-      'valueOf',
-      'hasOwnProperty',
-      'isPrototypeOf',
-      'propertyIsEnumerable',
-      'constructor'
-    ];
-    var dontEnumsLength = dontEnums.length;
-    return function(obj) {
-      if (typeof obj !== 'function' && (typeof obj !== 'object' || obj === null)) {
-        throw new TypeError('Object.keys called on non-object');
-      }
-
-      var result = [];
-      var prop;
-      var i;
-
-      for (prop in obj) {
-        if (hasOwnProperty.call(obj, prop)) {
-          result.push(prop);
-        }
-      }
-
-      if (hasDontEnumBug) {
-        for (i = 0; i < dontEnumsLength; i++) {
-          if (hasOwnProperty.call(obj, dontEnums[i])) {
-            result.push(dontEnums[i]);
-          }
-        }
-      }
-      return result;
-    };
-  }());
-}
-if (!Array.isArray) {
-  Array.isArray = function(arg) {
-    return Object.prototype.toString.call(arg) === '[object Array]';
-  };
-}
-;/**
-@license
-Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
-This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
-The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
-The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
-Code distributed by Google as part of the polymer project is also
-subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-*/
-function MakePromise(asap) {
-  function Promise(fn) {
-    if (typeof this !== 'object' || typeof fn !== 'function') {
-      throw new TypeError();
-    }
-    this._state = null;
-    this._value = null;
-    this._deferreds = [];
-
-    doResolve(fn, resolve.bind(this), reject.bind(this));
-  }
-
-  function handle(deferred) {
-    if (this._state === null) {
-      this._deferreds.push(deferred);
-      return;
-    }
-    var cb = this._state ? deferred.onFulfilled : deferred.onRejected;
-    if (typeof cb !== 'function') {
-      (this._state ? deferred.resolve : deferred.reject)(this._value);
-      return;
-    }
-    var ret;
-    try {
-      ret = cb(this._value);
-    } catch (e) {
-      deferred.reject(e);
-      return;
-    }
-    deferred.resolve(ret);
-  }
-
-  function resolve(newValue) {
-    try { //Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure
-      if (newValue === this) {
-        throw new TypeError();
-      }
-      if (newValue && (typeof newValue === 'object' || typeof newValue === 'function')) {
-        var then = newValue.then;
-        if (typeof then === 'function') {
-          doResolve(then.bind(newValue), resolve.bind(this), reject.bind(this));
-          return;
-        }
-      }
-      this._state = true;
-      this._value = newValue;
-      finale.call(this);
-    } catch (e) {
-      reject.call(this, e);
-    }
-  }
-
-  function reject(newValue) {
-    this._state = false;
-    this._value = newValue;
-    finale.call(this);
-  }
-
-  function finale() {
-    for (var i = 0, len = this._deferreds.length; i < len; i++) {
-      handle.call(this, this._deferreds[i]);
-    }
-    this._deferreds = null;
-  }
-
-  /**
-   * Take a potentially misbehaving resolver function and make sure
-   * onFulfilled and onRejected are only called once.
-   *
-   * Makes no guarantees about asynchrony.
-   */
-  function doResolve(fn, onFulfilled, onRejected) {
-    var done = false;
-    try {
-      fn(function(value) {
-        if (done) return;
-        done = true;
-        onFulfilled(value);
-      }, function(reason) {
-        if (done) return;
-        done = true;
-        onRejected(reason);
-      })
-    } catch (ex) {
-      if (done) return;
-      done = true;
-      onRejected(ex);
-    }
-  }
-
-  Promise.prototype['catch'] = function(onRejected) {
-    return this.then(null, onRejected);
-  };
-
-  Promise.prototype.then = function(onFulfilled, onRejected) {
-    var me = this;
-    return new Promise(function(resolve, reject) {
-      handle.call(me, {
-        onFulfilled: onFulfilled,
-        onRejected: onRejected,
-        resolve: resolve,
-        reject: reject
-      });
-    })
-  };
-
-  Promise.resolve = function(value) {
-    if (value && typeof value === 'object' && value.constructor === Promise) {
-      return value;
-    }
-
-    return new Promise(function(resolve) {
-      resolve(value);
-    });
-  };
-
-  Promise.reject = function(value) {
-    return new Promise(function(resolve, reject) {
-      reject(value);
-    });
-  };
-
-
-  return Promise;
-}
-
-if (typeof module !== 'undefined') {
-  module.exports = MakePromise;
-}
-;if(typeof Math.imul == "undefined" || (Math.imul(0xffffffff,5) == 0)) {
+0)if(path[0]==="/"||fullPath[index-1]==="/")return Promise.resolve(entry)}return Promise.resolve(null)},_measureData:function(){if(!this.debug||!performance||!performance.mark)return;performance.measure("api-spec-load-time","load-raml-url-start","load-raml-url-end");var items=window.performance.getEntriesByType("measure");console.log(items)}})})();</script><dom-module id="raml-json-enhance" assetpath="bower_components/raml-json-enhance/"><template><style>:host{display:none;}</style><script id="normalizer" type="javascript/worker">;"function"!=typeof Object.assign&&(Object.assign=function(target){"use strict";if(null===target)throw new TypeError("Cannot convert undefined or null to object");for(var to=Object(target),index=1;index<arguments.length;index++){var nextSource=arguments[index];if(null!==nextSource)for(var nextKey in nextSource)Object.prototype.hasOwnProperty.call(nextSource,nextKey)&&(to[nextKey]=nextSource[nextKey])}return to}),Object.keys||(Object.keys=function(){"use strict";var hasOwnProperty=Object.prototype.hasOwnProperty,hasDontEnumBug=!{toString:null}.propertyIsEnumerable("toString"),dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],dontEnumsLength=dontEnums.length;return function(obj){if("function"!=typeof obj&&("object"!=typeof obj||null===obj))throw new TypeError("Object.keys called on non-object");var prop,i,result=[];for(prop in obj)hasOwnProperty.call(obj,prop)&&result.push(prop);if(hasDontEnumBug)for(i=0;i<dontEnumsLength;i++)hasOwnProperty.call(obj,dontEnums[i])&&result.push(dontEnums[i]);return result}}()),Array.isArray||(Array.isArray=function(arg){return"[object Array]"===Object.prototype.toString.call(arg)});;function MakePromise(asap){function Promise(fn){if("object"!=typeof this||"function"!=typeof fn)throw new TypeError;this._state=null,this._value=null,this._deferreds=[],doResolve(fn,resolve.bind(this),reject.bind(this))}function handle(deferred){var me=this;if(null===this._state)return void this._deferreds.push(deferred);asap(function(){var cb=me._state?deferred.onFulfilled:deferred.onRejected;if("function"!=typeof cb)return void(me._state?deferred.resolve:deferred.reject)(me._value);var ret;try{ret=cb(me._value)}catch(e){return void deferred.reject(e)}deferred.resolve(ret)})}function resolve(newValue){try{if(newValue===this)throw new TypeError;if(newValue&&("object"==typeof newValue||"function"==typeof newValue)){var then=newValue.then;if("function"==typeof then)return void doResolve(then.bind(newValue),resolve.bind(this),reject.bind(this))}this._state=!0,this._value=newValue,finale.call(this)}catch(e){reject.call(this,e)}}function reject(newValue){this._state=!1,this._value=newValue,finale.call(this)}function finale(){for(var i=0,len=this._deferreds.length;i<len;i++)handle.call(this,this._deferreds[i]);this._deferreds=null}function doResolve(fn,onFulfilled,onRejected){var done=!1;try{fn(function(value){done||(done=!0,onFulfilled(value))},function(reason){done||(done=!0,onRejected(reason))})}catch(ex){if(done)return;done=!0,onRejected(ex)}}return Promise.prototype.catch=function(onRejected){return this.then(null,onRejected)},Promise.prototype.then=function(onFulfilled,onRejected){var me=this;return new Promise(function(resolve,reject){handle.call(me,{onFulfilled:onFulfilled,onRejected:onRejected,resolve:resolve,reject:reject})})},Promise.resolve=function(value){return value&&"object"==typeof value&&value.constructor===Promise?value:new Promise(function(resolve){resolve(value)})},Promise.reject=function(value){return new Promise(function(resolve,reject){reject(value)})},Promise}"undefined"!=typeof module&&(module.exports=MakePromise);;if(typeof Math.imul == "undefined" || (Math.imul(0xffffffff,5) == 0)) {
     Math.imul = function (a, b) {
         var ah  = (a >>> 16) & 0xffff;
         var al = a & 0xffff;
@@ -3466,11 +3344,11 @@ oj=new R(null,"NUM","NUM",-218662260),pj=new R(null,"inside-comment","inside-com
 Zj=new R(null,"numItems","numItems",-1505478382),ak=new R(null,"parser","parser",-1543495310),bk=new R(null,"regexp","regexp",-541372782),ck=new R(null,"parser1","parser1",-439601422),dk=new R(null,"success","success",1890645906),ek=new R(null,"repetition","repetition",1938392115),fk=new R(null,"negative-lookahead","negative-lookahead",874382387),gk=new R(null,"nodes","nodes",-2099585805),hk=new R(null,"node-builder","node-builder",-1956562605),ik=new R(null,"line","line",212345235),jk=new R(null,
 "keyword","keyword",811389747),kk=new R(null,"result","result",1415092211),lk=new R(null,"examples","examples",-473712556),mk=new R(null,"WSP","WSP",-1046948716),nk=new R(null,"segment","segment",-964921196),xa=new R(null,"print-length","print-length",1931866356),ok=new R(null,"max","max",61366548),pk=new R(null,"rulename-left","rulename-left",-1824251564),qk=new R(null,"factor","factor",-2103172748),rk=new R(null,"Epsilon","Epsilon",133418452),sk=new R("instaparse.gll","start-index","instaparse.gll/start-index",
 404653620),tk=new R(null,"fileTypes","fileTypes",-200305100),uk=new R(null,"red","red",-969428204),vk=new R(null,"optional","optional",2053951509),wk=new R(null,"CR","CR",-1654295403),xk=new R(null,"multiple-inheritance","multiple-inheritance",619645109),yk=new R(null,"minimum","minimum",-1621006059),zk=new R(null,"minItems","minItems",1950622069),Ak=new R(null,"comment","comment",532206069),Jh=new R(null,"parents","parents",-2027538891),Bk=new R(null,"plus","plus",211540661),Ck=new R(null,"OCTET",
-"OCTET",-743420682),Dk=new R(null,"length","length",588987862),Ek=new R(null,"stack","stack",-793405930),Fk=new R(null,"epsilon","epsilon",-730158570),Gk=new R(null,"SCALAR_TYPE","SCALAR_TYPE",-784669066),Hk=new R(null,"reduction-type","reduction-type",-488293450),Ik=new R(null,"rulelist","rulelist",-1871218473),Jk=new R(null,"opt-whitespace","opt-whitespace",1115207927),Kk=new R(null,"low","low",-1601362409),Lk=new R(null,"maxLength","maxLength",-1633020073),Mk=new R(null,"repeat","repeat",832692087),
-Nk=new R(null,"ALPHA","ALPHA",-1463859144),Ok=new R(null,"TYPE_EXPRESSION","TYPE_EXPRESSION",260003064),Pk=new R(null,"optimize","optimize",-1912349448),Qk=new R(null,"facets","facets",-2061519464),Rk=new R(null,"next-stack","next-stack",-481930728),Sk=new R(null,"example","example",-1755779144),Tk=new R(null,"standard","standard",-1769206695),Z=new R(null,"tag","tag",-1290361223),Uk=new R(null,"hex-val","hex-val",1267737401),Be=new uc(null,"quote","quote",1377916282,null),Vk=new R(null,"items","items",
-1031954938),Wk=new R(null,"CHAR","CHAR",-1280338086),Ae=new R(null,"arglists","arglists",1661989754),ze=new uc(null,"nil-iter","nil-iter",1101030523,null),Xk=new R(null,"hierarchy","hierarchy",-1053470341),qh=new R(null,"alt-impl","alt-impl",670969595),Yk=new R(null,"$ref","$ref",841290683),Zk=new R(null,"xml","xml",-1170142052),$k=new R(null,"abnf","abnf",-152462052),Gh=new R(null,"keywordize-keys","keywordize-keys",1310784252),al=new R(null,"atomic","atomic",-120459460),bl=new R(null,"BIT","BIT",
--1854474115),cl=new R(null,"parsers","parsers",-804353827),dl=new R(null,"listeners","listeners",394544445),el=new R(null,"string-ci","string-ci",374631805),fl=new R(null,"auto-whitespace","auto-whitespace",741152317),gl=new R(null,"char-range","char-range",1443391389),hl=new R(null,"dec-char","dec-char",-646625154),il=new R(null,"required","required",1807647006),jl=new R(null,"discriminator","discriminator",-1267549858),kl=new R(null,"hi","hi",-1821422114),ll=new R(null,"maxItems","maxItems",576652798),
-Ce=new uc(null,"meta18454","meta18454",-1269531138,null),ml=new R(null,"char","char",-641587586),nl=new uc(null,"meta22839","meta22839",1953309694,null),ol=new R(null,"pattern","pattern",242135423),pl=new R(null,"opt","opt",-794706369),ql=new R(null,"text","text",-1790561697),rl=new uc(null,"f","f",43394975,null),sl=new R(null,"results","results",-1134170113);function tl(b,a){var c=J(a);a:if(0===c)c=1;else for(var d=c|0,c=1,e=31;;){var f;f=d;if(Cd(f))f=0===(f&1);else throw Error([y("Argument must be an integer: "),y(f)].join(""));d=Nd(d);if(!f){if(0===d){c=ic(e,c);break a}c=ic(e,c)}e=ic(e,e)}c|=0;return(ic(c,b.jc)|0)+(a.jc-c)}function ul(b,a){for(var c=Qa(B,b,a),d=a;;)if(x(vl.b?vl.b(c):vl.call(null,c)))c=B.a(c,0),d=cd.a(d,0);else return d}
+"OCTET",-743420682),Dk=new uc(null,"meta22663","meta22663",-1921515114,null),Ek=new R(null,"length","length",588987862),Fk=new R(null,"stack","stack",-793405930),Gk=new R(null,"epsilon","epsilon",-730158570),Hk=new R(null,"SCALAR_TYPE","SCALAR_TYPE",-784669066),Ik=new R(null,"reduction-type","reduction-type",-488293450),Jk=new R(null,"rulelist","rulelist",-1871218473),Kk=new R(null,"opt-whitespace","opt-whitespace",1115207927),Lk=new R(null,"low","low",-1601362409),Mk=new R(null,"maxLength","maxLength",
+-1633020073),Nk=new R(null,"repeat","repeat",832692087),Ok=new R(null,"ALPHA","ALPHA",-1463859144),Pk=new R(null,"TYPE_EXPRESSION","TYPE_EXPRESSION",260003064),Qk=new R(null,"optimize","optimize",-1912349448),Rk=new R(null,"facets","facets",-2061519464),Sk=new R(null,"next-stack","next-stack",-481930728),Tk=new R(null,"example","example",-1755779144),Uk=new R(null,"standard","standard",-1769206695),Z=new R(null,"tag","tag",-1290361223),Vk=new R(null,"hex-val","hex-val",1267737401),Be=new uc(null,
+"quote","quote",1377916282,null),Wk=new R(null,"items","items",1031954938),Xk=new R(null,"CHAR","CHAR",-1280338086),Ae=new R(null,"arglists","arglists",1661989754),ze=new uc(null,"nil-iter","nil-iter",1101030523,null),Yk=new R(null,"hierarchy","hierarchy",-1053470341),qh=new R(null,"alt-impl","alt-impl",670969595),Zk=new R(null,"$ref","$ref",841290683),$k=new R(null,"xml","xml",-1170142052),al=new R(null,"abnf","abnf",-152462052),Gh=new R(null,"keywordize-keys","keywordize-keys",1310784252),bl=new R(null,
+"atomic","atomic",-120459460),cl=new R(null,"BIT","BIT",-1854474115),dl=new R(null,"parsers","parsers",-804353827),el=new R(null,"listeners","listeners",394544445),fl=new R(null,"string-ci","string-ci",374631805),gl=new R(null,"auto-whitespace","auto-whitespace",741152317),hl=new R(null,"char-range","char-range",1443391389),il=new R(null,"dec-char","dec-char",-646625154),jl=new R(null,"required","required",1807647006),kl=new R(null,"discriminator","discriminator",-1267549858),ll=new R(null,"hi","hi",
+-1821422114),ml=new R(null,"maxItems","maxItems",576652798),Ce=new uc(null,"meta18454","meta18454",-1269531138,null),nl=new R(null,"char","char",-641587586),ol=new R(null,"pattern","pattern",242135423),pl=new R(null,"opt","opt",-794706369),ql=new R(null,"text","text",-1790561697),rl=new uc(null,"f","f",43394975,null),sl=new R(null,"results","results",-1134170113);function tl(b,a){var c=J(a);a:if(0===c)c=1;else for(var d=c|0,c=1,e=31;;){var f;f=d;if(Cd(f))f=0===(f&1);else throw Error([y("Argument must be an integer: "),y(f)].join(""));d=Nd(d);if(!f){if(0===d){c=ic(e,c);break a}c=ic(e,c)}e=ic(e,e)}c|=0;return(ic(c,b.jc)|0)+(a.jc-c)}function ul(b,a){for(var c=Qa(B,b,a),d=a;;)if(x(vl.b?vl.b(c):vl.call(null,c)))c=B.a(c,0),d=cd.a(d,0);else return d}
 function wl(b,a){return new ce(null,function(){var c=Uc,d=Qa(B,b,a),e;a:{e=b;for(var f=a;;){if(F.a(J(f),1)){e=kd(f)<(xl.b?xl.b(e):xl.call(null,e))-1?ul(e,new T(null,1,5,U,[kd(f)+1],null)):null;break a}var g=kd(f),k;k=ld(f);k=Qa(B,e,k);k=xl.b?xl.b(k):xl.call(null,k);if(g<k-1){e=ul(e,cd.a(ld(f),kd(f)+1));break a}f=ld(f)}}return c(d,x(e)?wl(b,e):null)},null,null)}
 var yl=function yl(a,c){if(null!=a&&null!=a.Kc)return a.Kc(0,c);var d=yl[n(null==a?null:a)];if(null!=d)return d.a?d.a(a,c):d.call(null,a,c);d=yl._;if(null!=d)return d.a?d.a(a,c):d.call(null,a,c);throw La("ConjFlat.conj-flat",a);};function zl(b,a,c,d,e,f){this.U=b;this.jc=a;this.pb=c;this.l=d;this.Lb=e;this.gc=f;this.o=31850958;this.J=0}h=zl.prototype;h.toString=function(){return hc(t(this))};h.L=function(b,a){return this.U.L(null,a)};h.K=function(b,a,c){return this.U.K(null,a,c)};h.V=function(){return jd(this.U)};
 h.Pa=function(){return D(t(this))};h.$=function(){return this.l};h.S=function(){return this.pb};h.D=function(b,a){return F.a(this.pb,rc(a))&&F.a(this.l,J(a))&&(F.a(this.l,0)||F.a(t(this),a))};h.da=function(){return Wc(Al,jd(this))};h.ja=function(){return C(t(this))};h.Ia=function(){return wc(t(this))};h.Z=function(){if(!x(this.gc)){var b;this.Lb?(b=this.U,b=0<J(b)?wl(b,ul(b,new T(null,1,5,U,[0],null))):null):b=t(this.U);this.gc=b}return this.gc};
@@ -3483,34 +3361,34 @@ h.Oa=function(b,a,c){return Dl(this).Oa(null,a,c)};h.mb=function(b,a,c){return D
 h.D=function(b,a){return F.a(this.pb,rc(a))&&F.a(this.l,J(a))&&F.a(Dl(this),a)};h.da=function(){return Wc(dd,jd(this))};h.$a=function(b,a,c){return Q.c(Dl(this),a,c)};h.Hb=function(b,a){return Dl(this).Hb(null,a)};h.Z=function(){return t(Dl(this))};
 h.W=function(b,a){var c=this;return x(G.b?G.b(c.Ta):G.call(null,c.Ta))?new El(function(){var a=G.b?G.b(c.U):G.call(null,c.U);return Me?Me(a):Le.call(null,a)}(),c.pb,c.l,function(){var b=Wc(G.b?G.b(c.Ta):G.call(null,c.Ta),a);return Me?Me(b):Le.call(null,b)}()):new El(function(){var b=Wc(G.b?G.b(c.U):G.call(null,c.U),a);return Me?Me(b):Le.call(null,b)}(),c.pb,c.l,function(){var a=G.b?G.b(c.Ta):G.call(null,c.Ta);return Me?Me(a):Le.call(null,a)}())};h.Y=function(b,a){return cd.a(Dl(this),a)};
 h.call=function(){function b(a,b,c){return this.Cb().c(null,b,c)}function a(a,b){return this.Cb().a(null,b)}var c=null,c=function(c,e,f){switch(arguments.length){case 2:return a.call(this,0,e);case 3:return b.call(this,0,e,f)}throw Error("Invalid arity: "+arguments.length);};c.a=a;c.c=b;return c}();h.apply=function(b,a){return this.call.apply(this,[this].concat(Oa(a)))};h.b=function(b){return this.Cb().a(null,b)};h.a=function(b,a){return this.Cb().c(null,b,a)};
-h.tb=function(b,a){return Xb(Dl(this),a)};h.aa=!0;h.R=function(b,a,c){return Ob(Dl(this),a,c)};function Fl(b){if(x(b.Lb))if(x(b.gc))b=wf(t(b));else{var a;a=b.U;a=Me?Me(a):Le.call(null,a);b=new El(a,b.pb,b.l,Me?Me(null):Le.call(null,null))}else b=b.U;return b};function Gl(b){return t(b)&&Ga(D(b))}function Hl(b){return Q.c(b,uk,Il)}var Il=new q(null,1,[Hk,Ti],null),Jl=new q(null,2,[wj,function(b){return new q(null,2,[Hk,wj,Bi,b],null)},Sj,function(b){return new q(null,2,[Hk,Sj,Bi,b],null)}],null),Kl=new q(null,2,[Sj,function(b,a){return new q(null,2,[Z,b,Si,Xa(xc,a)],null)},wj,function(b,a){return new T(null,2,5,U,[b,a],null)}],null);
-function Ll(b,a){switch(Hk.b(b)instanceof R?Hk.b(b).ka:null){case "raw":return yl(Al,a);case "hiccup":return Fl(yl(Bl(new T(null,1,5,U,[Bi.b(b)],null)),a));case "enlive":var c=yl(Al,a);return new q(null,2,[Z,Bi.b(b),Si,0===J(c)?null:c],null);default:return b.b?b.b(a):b.call(null,a)}}
+h.tb=function(b,a){return Xb(Dl(this),a)};h.aa=!0;h.R=function(b,a,c){return Ob(Dl(this),a,c)};function Fl(b){if(x(b.Lb))if(x(b.gc))b=wf(t(b));else{var a;a=b.U;a=Me?Me(a):Le.call(null,a);b=new El(a,b.pb,b.l,Me?Me(null):Le.call(null,null))}else b=b.U;return b};function Gl(b){return t(b)&&Ga(D(b))}function Hl(b){return Q.c(b,uk,Il)}var Il=new q(null,1,[Ik,Ti],null),Jl=new q(null,2,[wj,function(b){return new q(null,2,[Ik,wj,Bi,b],null)},Sj,function(b){return new q(null,2,[Ik,Sj,Bi,b],null)}],null),Kl=new q(null,2,[Sj,function(b,a){return new q(null,2,[Z,b,Si,Xa(xc,a)],null)},wj,function(b,a){return new T(null,2,5,U,[b,a],null)}],null);
+function Ll(b,a){switch(Ik.b(b)instanceof R?Ik.b(b).ka:null){case "raw":return yl(Al,a);case "hiccup":return Fl(yl(Bl(new T(null,1,5,U,[Bi.b(b)],null)),a));case "enlive":var c=yl(Al,a);return new q(null,2,[Z,Bi.b(b),Si,0===J(c)?null:c],null);default:return b.b?b.b(a):b.call(null,a)}}
 function Ml(b,a){var c=Jl.b?Jl.b(b):Jl.call(null,b);if(x(c))return $e.a(V,function(){return function(a,b){return function g(c){return new ce(null,function(a){return function(){for(;;){var b=t(c);if(b){if(ud(b)){var d=Zb(b),e=J(d),u=ge(e);a:for(var w=0;;)if(w<e){var z=A.a(d,w),E=P(z,0,null),z=P(z,1,null),E=x(uk.b(z))?new T(null,2,5,U,[E,z],null):new T(null,2,5,U,[E,Q.c(z,uk,a.b?a.b(E):a.call(null,E))],null);u.add(E);w+=1}else{d=!0;break a}return d?ie(u.ca(),g($b(b))):ie(u.ca(),null)}d=C(b);u=P(d,0,
-null);d=P(d,1,null);return Uc(x(uk.b(d))?new T(null,2,5,U,[u,d],null):new T(null,2,5,U,[u,Q.c(d,uk,a.b?a.b(u):a.call(null,u))],null),g(wc(b)))}return null}}}(a,b),null,null)}}(c,c)(a)}());throw[y("Invalid output format"),y(b),y(". Use :enlive or :hiccup.")].join("");};var Zg=new q(null,1,[Z,Fk],null);function Nl(b){return F.a(b,Zg)?Zg:new q(null,2,[Z,pl,ak,b],null)}function Ol(b){return F.a(b,Zg)?Zg:new q(null,2,[Z,Bk,ak,b],null)}function Pl(b){return F.a(b,Zg)?Zg:new q(null,2,[Z,rj,ak,b],null)}function Ql(b,a,c){if(!(b<=a))throw Error("Assert failed: (\x3c\x3d m n)");return F.a(c,Zg)?Zg:new q(null,4,[Z,jj,ak,c,ki,b,ok,a],null)}
-var Rl=function Rl(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;return Rl.h(0<c.length?new r(c.slice(0),0,null):null)};Rl.h=function(b){return De(He(F,Zg),b)?Zg:x(Gl(b))?C(b):new q(null,2,[Z,Ji,cl,b],null)};Rl.F=0;Rl.C=function(b){return Rl.h(t(b))};var Sl=function Sl(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;switch(c.length){case 0:return Sl.H();default:return Sl.h(arguments[0],new r(c.slice(1),0,null))}};Sl.H=function(){return Zg};
-Sl.h=function(b,a){var c=F.a(b,Zg)?Xe(Yg(),a):a;t(c)?(c=qe(Sl,c),c=new q(null,3,[Z,ri,ck,b,ci,c],null)):c=b;return c};Sl.C=function(b){var a=C(b);b=D(b);return Sl.h(a,b)};Sl.F=1;var Tl=function Tl(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;return Tl.h(0<c.length?new r(c.slice(0),0,null):null)};Tl.h=function(b){if(De(He(F,Zg),b))return Zg;b=Xe(Yg(),b);return x(Gl(b))?C(b):new q(null,2,[Z,fi,cl,b],null)};Tl.F=0;Tl.C=function(b){return Tl.h(t(b))};
-function Ul(b){return F.a(b,"")?Zg:new q(null,2,[Z,uj,uj,b],null)}function Vl(b){return F.a(b,"")?Zg:new q(null,2,[Z,el,uj,b],null)}function Wl(b,a){if(!(b<=a))throw Error([y("Assert failed: "),y("Character range minimum must be less than or equal the maximum"),y("\n"),y("(\x3c\x3d lo hi)")].join(""));return new q(null,3,[Z,ml,yj,b,kl,a],null)}function Xl(b){if(b instanceof RegExp){b=""+y(b);var a=J(b)-1;return b.substring(1,a)}return b}
-function Yl(b){b=[y("^"),y(Xl(b))].join("");return F.a(b,"^")?Zg:new q(null,2,[Z,bk,bk,fh(b)],null)}function Zl(b){return new q(null,2,[Z,gj,jk,b],null)}function $l(b){return new q(null,2,[Z,Ni,ak,b],null)}function am(b){return new q(null,2,[Z,bi,ak,b],null)}function cm(b){return Q.c(b,Fj,!0)}var dm=function dm(a){a=x(Fj.b(a))?gd.a(a,Fj):a;return x(ak.b(a))?Q.c(a,ak,dm(ak.b(a))):x(cl.b(a))?Q.c(a,cl,X.a(dm,cl.b(a))):F.a(Z.b(a),ri)?Q.h(a,ck,dm(ck.b(a)),O([ci,dm(ci.b(a))],0)):a};
+null);d=P(d,1,null);return Uc(x(uk.b(d))?new T(null,2,5,U,[u,d],null):new T(null,2,5,U,[u,Q.c(d,uk,a.b?a.b(u):a.call(null,u))],null),g(wc(b)))}return null}}}(a,b),null,null)}}(c,c)(a)}());throw[y("Invalid output format"),y(b),y(". Use :enlive or :hiccup.")].join("");};var Zg=new q(null,1,[Z,Gk],null);function Nl(b){return F.a(b,Zg)?Zg:new q(null,2,[Z,pl,ak,b],null)}function Ol(b){return F.a(b,Zg)?Zg:new q(null,2,[Z,Bk,ak,b],null)}function Pl(b){return F.a(b,Zg)?Zg:new q(null,2,[Z,rj,ak,b],null)}function Ql(b,a,c){if(!(b<=a))throw Error("Assert failed: (\x3c\x3d m n)");return F.a(c,Zg)?Zg:new q(null,4,[Z,jj,ak,c,ki,b,ok,a],null)}
+var Rl=function Rl(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;return Rl.h(0<c.length?new r(c.slice(0),0,null):null)};Rl.h=function(b){return De(He(F,Zg),b)?Zg:x(Gl(b))?C(b):new q(null,2,[Z,Ji,dl,b],null)};Rl.F=0;Rl.C=function(b){return Rl.h(t(b))};var Sl=function Sl(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;switch(c.length){case 0:return Sl.H();default:return Sl.h(arguments[0],new r(c.slice(1),0,null))}};Sl.H=function(){return Zg};
+Sl.h=function(b,a){var c=F.a(b,Zg)?Xe(Yg(),a):a;t(c)?(c=qe(Sl,c),c=new q(null,3,[Z,ri,ck,b,ci,c],null)):c=b;return c};Sl.C=function(b){var a=C(b);b=D(b);return Sl.h(a,b)};Sl.F=1;var Tl=function Tl(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;return Tl.h(0<c.length?new r(c.slice(0),0,null):null)};Tl.h=function(b){if(De(He(F,Zg),b))return Zg;b=Xe(Yg(),b);return x(Gl(b))?C(b):new q(null,2,[Z,fi,dl,b],null)};Tl.F=0;Tl.C=function(b){return Tl.h(t(b))};
+function Ul(b){return F.a(b,"")?Zg:new q(null,2,[Z,uj,uj,b],null)}function Vl(b){return F.a(b,"")?Zg:new q(null,2,[Z,fl,uj,b],null)}function Wl(b,a){if(!(b<=a))throw Error([y("Assert failed: "),y("Character range minimum must be less than or equal the maximum"),y("\n"),y("(\x3c\x3d lo hi)")].join(""));return new q(null,3,[Z,nl,yj,b,ll,a],null)}function Xl(b){if(b instanceof RegExp){b=""+y(b);var a=J(b)-1;return b.substring(1,a)}return b}
+function Yl(b){b=[y("^"),y(Xl(b))].join("");return F.a(b,"^")?Zg:new q(null,2,[Z,bk,bk,fh(b)],null)}function Zl(b){return new q(null,2,[Z,gj,jk,b],null)}function $l(b){return new q(null,2,[Z,Ni,ak,b],null)}function am(b){return new q(null,2,[Z,bi,ak,b],null)}function cm(b){return Q.c(b,Fj,!0)}var dm=function dm(a){a=x(Fj.b(a))?gd.a(a,Fj):a;return x(ak.b(a))?Q.c(a,ak,dm(ak.b(a))):x(dl.b(a))?Q.c(a,dl,X.a(dm,dl.b(a))):F.a(Z.b(a),ri)?Q.h(a,ck,dm(ck.b(a)),O([ci,dm(ci.b(a))],0)):a};
 function em(b){return $e.a(V,function(){return function c(b){return new ce(null,function(){for(;;){var e=t(b);if(e){if(ud(e)){var f=Zb(e),g=J(f),k=ge(g);a:for(var l=0;;)if(l<g){var m=A.a(f,l),p=P(m,0,null),m=P(m,1,null),p=new T(null,2,5,U,[p,dm(m)],null);k.add(p);l+=1}else{f=!0;break a}return f?ie(k.ca(),c($b(e))):ie(k.ca(),null)}f=C(e);k=P(f,0,null);f=P(f,1,null);return Uc(new T(null,2,5,U,[k,dm(f)],null),c(wc(e)))}return null}},null,null)}(b)}())}
 function fm(b,a){var c=Jl.b?Jl.b(b):Jl.call(null,b);if(x(c))return $e.a(V,function(){return function(a,b){return function g(c){return new ce(null,function(a){return function(){for(;;){var b=t(c);if(b){if(ud(b)){var d=Zb(b),e=J(d),u=ge(e);a:for(var w=0;;)if(w<e){var z=A.a(d,w),E=P(z,0,null),z=P(z,1,null),E=new T(null,2,5,U,[E,Q.c(z,uk,a.b?a.b(E):a.call(null,E))],null);u.add(E);w+=1}else{d=!0;break a}return d?ie(u.ca(),g($b(b))):ie(u.ca(),null)}d=C(b);u=P(d,0,null);d=P(d,1,null);return Uc(new T(null,
 2,5,U,[u,Q.c(d,uk,a.b?a.b(u):a.call(null,u))],null),g(wc(b)))}return null}}}(a,b),null,null)}}(c,c)(a)}());throw[y("Invalid output format"),y(b),y(". Use :enlive or :hiccup.")].join("");}
 function gm(b,a){var c=Jl.b?Jl.b(b):Jl.call(null,b);if(x(c))return $e.a(V,function(){return function(a,b){return function g(c){return new ce(null,function(a){return function(){for(;;){var b=t(c);if(b){if(ud(b)){var d=Zb(b),e=J(d),u=ge(e);a:for(var w=0;;)if(w<e){var z=A.a(d,w),E=P(z,0,null),z=P(z,1,null),E=new T(null,2,5,U,[E,Q.c(dm(z),uk,a.b?a.b(E):a.call(null,E))],null);u.add(E);w+=1}else{d=!0;break a}return d?ie(u.ca(),g($b(b))):ie(u.ca(),null)}d=C(b);u=P(d,0,null);d=P(d,1,null);return Uc(new T(null,
 2,5,U,[u,Q.c(dm(d),uk,a.b?a.b(u):a.call(null,u))],null),g(wc(b)))}return null}}}(a,b),null,null)}}(c,c)(a)}());throw[y("Invalid output format"),y(b),y(". Use :enlive or :hiccup.")].join("");}
-var hm=function hm(a,c){var d=Z.b(a)instanceof R?Z.b(a).ka:null;switch(d){case "neg":return cf.I(a,new T(null,1,5,U,[ak],null),hm,c);case "cat":return Q.c(a,cl,X.a(function(){return function(a){return hm(a,c)}}(d),cl.b(a)));case "ord":return Q.h(a,ck,hm(ck.b(a),c),O([ci,hm(ci.b(a),c)],0));case "alt":return Q.c(a,cl,X.a(function(){return function(a){return hm(a,c)}}(d),cl.b(a)));case "look":return cf.I(a,new T(null,1,5,U,[ak],null),hm,c);case "nt":return a;case "rep":return cf.I(a,new T(null,1,5,U,
+var hm=function hm(a,c){var d=Z.b(a)instanceof R?Z.b(a).ka:null;switch(d){case "neg":return cf.I(a,new T(null,1,5,U,[ak],null),hm,c);case "cat":return Q.c(a,dl,X.a(function(){return function(a){return hm(a,c)}}(d),dl.b(a)));case "ord":return Q.h(a,ck,hm(ck.b(a),c),O([ci,hm(ci.b(a),c)],0));case "alt":return Q.c(a,dl,X.a(function(){return function(a){return hm(a,c)}}(d),dl.b(a)));case "look":return cf.I(a,new T(null,1,5,U,[ak],null),hm,c);case "nt":return a;case "rep":return cf.I(a,new T(null,1,5,U,
 [ak],null),hm,c);case "star":return cf.I(a,new T(null,1,5,U,[ak],null),hm,c);case "string":return x(uk.b(a))?Q.c(Tl.h(O([c,gd.a(a,uk)],0)),uk,uk.b(a)):Tl.h(O([c,a],0));case "regexp":return x(uk.b(a))?Q.c(Tl.h(O([c,gd.a(a,uk)],0)),uk,uk.b(a)):Tl.h(O([c,a],0));case "plus":return cf.I(a,new T(null,1,5,U,[ak],null),hm,c);case "epsilon":return a;case "string-ci":return x(uk.b(a))?Q.c(Tl.h(O([c,gd.a(a,uk)],0)),uk,uk.b(a)):Tl.h(O([c,a],0));case "opt":return cf.I(a,new T(null,1,5,U,[ak],null),hm,c);default:throw Error([y("No matching clause: "),
 y(Z.b(a))].join(""));}};
 function im(b,a,c,d){var e=cm(Nl(Zl(d))),f=Q.c(c,d,Hl(c.b?c.b(d):c.call(null,d)));c=$e.a(V,function(){return function(a,b){return function m(c){return new ce(null,function(a){return function(){for(;;){var b=t(c);if(b){if(ud(b)){var d=Zb(b),e=J(d),f=ge(e);a:for(var g=0;;)if(g<e){var k=A.a(d,g),N=P(k,0,null),k=P(k,1,null),N=new T(null,2,5,U,[N,hm(k,a)],null);f.add(N);g+=1}else{d=!0;break a}return d?ie(f.ca(),m($b(b))):ie(f.ca(),null)}d=C(b);f=P(d,0,null);d=P(d,1,null);return Uc(new T(null,2,5,U,[f,
 hm(d,a)],null),m(wc(b)))}return null}}}(a,b),null,null)}}(e,f)(b)}());a=Q.c(c,a,Q.c(Tl.h(O([gd.a(c.b?c.b(a):c.call(null,a),uk),e],0)),uk,uk.b(c.b?c.b(a):c.call(null,a))));return Sg.h(O([a,f],0))};function jm(b){return function(){function a(a){var b=null;if(0<arguments.length){for(var b=0,f=Array(arguments.length-0);b<f.length;)f[b]=arguments[b+0],++b;b=new r(f,0)}return c.call(this,b)}function c(a){a=Te(a);if(F.a(J(a),1))return a=C(a),b.b?b.b(a):b.call(null,a);a=wf(a);return b.b?b.b(a):b.call(null,a)}a.F=0;a.C=function(a){a=t(a);return c(a)};a.h=c;return a}()}
 function km(b,a,c){if("string"===typeof a)return b.replace(new RegExp(String(a).replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08"),"g"),c);if(a instanceof RegExp)return"string"===typeof c?b.replace(new RegExp(a.source,"g"),c):b.replace(new RegExp(a.source,"g"),jm(c));throw[y("Invalid match arg: "),y(a)].join("");}function lm(b,a){for(var c=new ha,d=t(a);;)if(null!=d)c.append(""+y(C(d))),d=D(d),null!=d&&c.append(b);else return c.toString()};function Je(b,a,c){(a=Ga(a))?(a=c.b?c.b(Z):c.call(null,Z),b=b.b?b.b(a):b.call(null,a)):b=a;return x(b)?[y("("),y(mm?mm(c,!1):nm.call(null,c,!1)),y(")")].join(""):mm?mm(c,!1):nm.call(null,c,!1)}var om=He(Je,new Vg(null,new q(null,3,[fi,null,ri,null,Ji,null],null),null));function pm(b){switch(b){case "\n":return"\\n";case "\b":return"\\b";case "\f":return"\\f";case "\r":return"\\r";case "\t":return"\\t";default:return b}}
-function qm(b){return km([y('#"'),y(b.source.substring(1)),y('"')].join(""),/[\s]/,pm)}function rm(b){return 4095>=b?[y("0000"),y(b.toString(16))].join("").substr(-4):b.toString(16)}function sm(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,yj);a=B.a(a,kl);return F.a(b,a)?[y("%x"),y(rm(b))].join(""):[y("%x"),y(rm(b)),y("-"),y(rm(a))].join("")}
+function qm(b){return km([y('#"'),y(b.source.substring(1)),y('"')].join(""),/[\s]/,pm)}function rm(b){return 4095>=b?[y("0000"),y(b.toString(16))].join("").substr(-4):b.toString(16)}function sm(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,yj);a=B.a(a,ll);return F.a(b,a)?[y("%x"),y(rm(b))].join(""):[y("%x"),y(rm(b)),y("-"),y(rm(a))].join("")}
 function nm(b){for(var a=[],c=arguments.length,d=0;;)if(d<c)a.push(arguments[d]),d+=1;else break;switch(a.length){case 1:return mm(arguments[0],!1);case 2:return mm(arguments[0],arguments[1]);default:throw Error([y("Invalid arity: "),y(a.length)].join(""));}}
-function mm(b,a){var c=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b,d=B.a(c,ak),e=B.a(c,ck),f=B.a(c,ci),g=B.a(c,cl),k=B.a(c,Z);if(x(function(){var b=Ga(a);return b?Fj.b(c):b}()))return[y("\x3c"),y(mm(c,!0)),y("\x3e")].join("");var l=k instanceof R?k.ka:null;switch(l){case "neg":return[y("!"),y(om.a?om.a(a,d):om.call(null,a,d))].join("");case "cat":return lm(" ",X.a(Ie(new Vg(null,new q(null,2,[ri,null,Ji,null],null),null),a),g));case "ord":return[y(Je(new Vg(null,new q(null,1,[Ji,null],null),null),a,e)),y(" / "),
+function mm(b,a){var c=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b,d=B.a(c,ak),e=B.a(c,ck),f=B.a(c,ci),g=B.a(c,dl),k=B.a(c,Z);if(x(function(){var b=Ga(a);return b?Fj.b(c):b}()))return[y("\x3c"),y(mm(c,!0)),y("\x3e")].join("");var l=k instanceof R?k.ka:null;switch(l){case "neg":return[y("!"),y(om.a?om.a(a,d):om.call(null,a,d))].join("");case "cat":return lm(" ",X.a(Ie(new Vg(null,new q(null,2,[ri,null,Ji,null],null),null),a),g));case "ord":return[y(Je(new Vg(null,new q(null,1,[Ji,null],null),null),a,e)),y(" / "),
 y(Je(new Vg(null,new q(null,1,[Ji,null],null),null),a,f))].join("");case "alt":return lm(" | ",X.a(Ie(new Vg(null,new q(null,1,[ri,null],null),null),a),g));case "look":return[y("\x26"),y(om.a?om.a(a,d):om.call(null,a,d))].join("");case "nt":return Qd(""+y(jk.b(c)),1);case "rep":return we(ki.b(c),ok.b(c))?[y(om.a?om.a(a,d):om.call(null,a,d)),y("{"),y(ki.b(c)),y(","),y(ok.b(c)),y("}")].join(""):[y(om.a?om.a(a,d):om.call(null,a,d)),y("{"),y(ki.b(c)),y("}")].join("");case "star":return[y(om.a?om.a(a,
 d):om.call(null,a,d)),y("*")].join("");case "string":var m=new ha,p=ma,v=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(p,v,m,l,b,c,c,d,e,f,g,k);try{th(O([uj.b(c)],0),ra())}finally{ka=v,ma=p}return""+y(m);case "regexp":return qm(bk.b(c));case "plus":return[y(om.a?om.a(a,d):om.call(null,a,d)),y("+")].join("");case "epsilon":return"蔚";case "string-ci":m=new ha;p=ma;v=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(p,v,m,l,b,c,c,d,e,f,g,k);try{th(O([uj.b(c)],
-0),ra())}finally{ka=v,ma=p}return""+y(m);case "char":return sm(c);case "opt":return[y(om.a?om.a(a,d):om.call(null,a,d)),y("?")].join("");default:throw Error([y("No matching clause: "),y(k)].join(""));}}function tm(b,a){return F.a(Hk.b(uk.b(a)),Ti)?[y("\x3c"),y(be(b)),y("\x3e"),y(" \x3d "),y(mm(a,!1))].join(""):[y(be(b)),y(" \x3d "),y(mm(a,!1))].join("")}
+0),ra())}finally{ka=v,ma=p}return""+y(m);case "char":return sm(c);case "opt":return[y(om.a?om.a(a,d):om.call(null,a,d)),y("?")].join("");default:throw Error([y("No matching clause: "),y(k)].join(""));}}function tm(b,a){return F.a(Ik.b(uk.b(a)),Ti)?[y("\x3c"),y(be(b)),y("\x3e"),y(" \x3d "),y(mm(a,!1))].join(""):[y(be(b)),y(" \x3d "),y(mm(a,!1))].join("")}
 function um(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b,c=B.a(a,hj),d=B.a(a,Wi);return lm("\n",Uc(tm(d,c.b?c.b(d):c.call(null,d)),function(){return function(a,b,c,d){return function m(p){return new ce(null,function(a,b,c,d){return function(){for(var a=p;;)if(a=t(a)){if(ud(a)){var b=Zb(a),c=J(b),e=ge(c);a:for(var f=0;;)if(f<c){var g=A.a(b,f),k=P(g,0,null),g=P(g,1,null);we(k,d)&&(k=tm(k,g),e.add(k));f+=1}else{b=!0;break a}return b?ie(e.ca(),m($b(a))):ie(e.ca(),null)}b=C(a);e=P(b,0,null);b=P(b,1,null);
 if(we(e,d))return Uc(tm(e,b),m(wc(a)));a=wc(a)}else return null}}(a,b,c,d),null,null)}}(b,a,c,d)(c)}()))};function vm(b){return null!=b&&0<=b&&1114111>=b?65536<=b&&1114111>=b?String.fromCharCode((b>>10)+55232)+String.fromCharCode((b&1023)+56320):String.fromCharCode(b):null}
-function wm(b,a){var c=b.charCodeAt(a);if(55296<=c&&56319>=c&&a+1<b.length){var d=b.charCodeAt(a+1);if(56320<=d&&57343>=d)return 55296<=c&&56319>=c&&56320<=d&&57343>=d?(c<<10)-56623104+(d-56320+65536):null}else if(56320<=c&&57343>=c&&0<a&&(d=b.charCodeAt(a-1),55296<=d&&56319>=d))return-(55296<=d&&56319>=d&&56320<=c&&57343>=c?(d<<10)-56623104+(c-56320+65536):0);return c};function xm(b){return Bd((new Vg(null,new q(null,2,["\n",null,"\r",null],null),null)).call(null,b))}function ym(b,a){for(var c=t(km(a,"\r\n","\n")),d=b;;){if(nd(c))return"";if(F.a(d,1))return qe(y,bh(Fe(xm),c));x(xm(C(c)))?(c=D(c),--d):c=D(c)}}function zm(b){x(oi.b(b))?(uh.h(O(["NOT "],0)),uh.h(O([oi.b(b)],0))):x(gl.b(b))?uh.h(O([sm(b)],0)):b instanceof RegExp?uh.h(O([qm(b)],0)):th(O([b],0),ra())}
+function wm(b,a){var c=b.charCodeAt(a);if(55296<=c&&56319>=c&&a+1<b.length){var d=b.charCodeAt(a+1);if(56320<=d&&57343>=d)return 55296<=c&&56319>=c&&56320<=d&&57343>=d?(c<<10)-56623104+(d-56320+65536):null}else if(56320<=c&&57343>=c&&0<a&&(d=b.charCodeAt(a-1),55296<=d&&56319>=d))return-(55296<=d&&56319>=d&&56320<=c&&57343>=c?(d<<10)-56623104+(c-56320+65536):0);return c};function xm(b){return Bd((new Vg(null,new q(null,2,["\n",null,"\r",null],null),null)).call(null,b))}function ym(b,a){for(var c=t(km(a,"\r\n","\n")),d=b;;){if(nd(c))return"";if(F.a(d,1))return qe(y,bh(Fe(xm),c));x(xm(C(c)))?(c=D(c),--d):c=D(c)}}function zm(b){x(oi.b(b))?(uh.h(O(["NOT "],0)),uh.h(O([oi.b(b)],0))):x(hl.b(b))?uh.h(O([sm(b)],0)):b instanceof RegExp?uh.h(O([qm(b)],0)):th(O([b],0),ra())}
 function Am(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,ik);var c=B.a(a,Bj),d=B.a(a,ql),a=B.a(a,Qj);wh(O(["Parse error at line",b,", column",c,":\n"],0));wh(O([d],0));wh(O([Cd(c)?1>=c?"^":qe(y,ne.a(Re(c-1,Ue(" ")),new T(null,1,5,U,["^"],null))):null],0));c=$g(X.a(Cj,We(xi,a)));b=$g(X.a(Cj,We(Fe(xi),a)));d=J(c)+J(b);0!==d&&(F.a(1,d)?wh(O(["Expected:"],0)):wh(O(["Expected one of:"],0)));for(var c=t(c),d=null,e=a=0;;)if(e<a){var f=d.P(null,e);zm(f);wh(O([" (followed by end-of-string)"],0));e+=
 1}else if(c=t(c))d=c,ud(d)?(c=Zb(d),e=$b(d),d=c,a=J(c),c=e):(c=C(d),zm(c),wh(O([" (followed by end-of-string)"],0)),c=D(d),d=null,a=0),e=0;else break;b=t(b);c=null;for(e=a=0;;)if(e<a)d=c.P(null,e),zm(d),vh(),e+=1;else if(b=t(b))c=b,ud(c)?(b=Zb(c),a=$b(c),c=b,d=J(b),b=a,a=d):(d=C(c),zm(d),vh(),b=D(c),c=null,a=0),e=0;else break};var Bm=function Bm(a){if(null!=a&&null!=a.Lc)return a.Lc();var c=Bm[n(null==a?null:a)];if(null!=c)return c.b?c.b(a):c.call(null,a);c=Bm._;if(null!=c)return c.b?c.b(a):c.call(null,a);throw La("ISegment.toString",a);};function Cm(b,a,c){this.text=b;this.offset=a;this.count=c;this.o=2;this.J=0}Cm.prototype.Lc=function(){return this.text.substring(this.offset,this.offset+this.count)};Cm.prototype.$=function(){return this.count};
 function Dm(b,a,c){switch(Z.b(b)instanceof R?Z.b(b).ka:null){case "neg":return Em.c?Em.c(b,a,c):Em.call(null,b,a,c);case "cat":return Fm.c?Fm.c(b,a,c):Fm.call(null,b,a,c);case "ord":return Gm.c?Gm.c(b,a,c):Gm.call(null,b,a,c);case "alt":return Hm.c?Hm.c(b,a,c):Hm.call(null,b,a,c);case "look":return Im.c?Im.c(b,a,c):Im.call(null,b,a,c);case "nt":return Jm.c?Jm.c(b,a,c):Jm.call(null,b,a,c);case "rep":return Km.c?Km.c(b,a,c):Km.call(null,b,a,c);case "star":return Lm.c?Lm.c(b,a,c):Lm.call(null,b,a,c);
@@ -3524,21 +3402,21 @@ h.$a=function(b,a,c){return x(S.a?S.a(Fi,a):S.call(null,Fi,a))?new hn(c,this.rea
 h.Y=function(b,a){return td(a)?ib(this,A.a(a,0),A.a(a,1)):Qa(Xa,this,a)};h.aa=!0;h.R=function(b,a){var c=this;return Nb(a,function(){var a=new ha,b=ma,f=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(b,f,a,c);try{Am(c)}finally{ka=f,ma=b}return""+y(a)}())};function jn(b){return new Cm(b,0,J(b))}
 function kn(b,a,c,d,e,f,g,k,l,m,p,v,u,w,z,E){this.ea=b;this.text=a;this.La=c;this.Ja=d;this.Ka=e;this.stack=f;this.la=g;this.qa=k;this.ha=l;this.ra=m;this.X=p;this.ma=v;this.pa=u;this.N=w;this.G=z;this.w=E;this.o=2229667594;this.J=8192}h=kn.prototype;h.L=function(b,a){return fb.c(this,a,null)};
 h.K=function(b,a,c){switch(a instanceof R?a.ka:null){case "msg-cache":return this.ra;case "negative-listeners":return this.ha;case "generation":return this.qa;case "failure":return this.pa;case "fail-index":return this.Ja;case "grammar":return this.ea;case "success":return this.ma;case "nodes":return this.X;case "node-builder":return this.Ka;case "segment":return this.La;case "stack":return this.stack;case "next-stack":return this.la;case "text":return this.text;default:return B.c(this.G,a,c)}};
-h.R=function(b,a,c){return gh(a,function(){return function(b){return gh(a,oh,""," ","",c,b)}}(this),"#instaparse.gll.Tramp{",", ","}",c,ne.a(new T(null,13,5,U,[new T(null,2,5,U,[hj,this.ea],null),new T(null,2,5,U,[ql,this.text],null),new T(null,2,5,U,[nk,this.La],null),new T(null,2,5,U,[fj,this.Ja],null),new T(null,2,5,U,[hk,this.Ka],null),new T(null,2,5,U,[Ek,this.stack],null),new T(null,2,5,U,[Rk,this.la],null),new T(null,2,5,U,[vi,this.qa],null),new T(null,2,5,U,[ui,this.ha],null),new T(null,2,
-5,U,[ni,this.ra],null),new T(null,2,5,U,[gk,this.X],null),new T(null,2,5,U,[dk,this.ma],null),new T(null,2,5,U,[Li,this.pa],null)],null),this.G))};h.Wa=function(){return new Mf(0,this,13,new T(null,13,5,U,[hj,ql,nk,fj,hk,Ek,Rk,vi,ui,ni,gk,dk,Li],null),fc(this.G))};h.V=function(){return this.N};h.$=function(){return 13+J(this.G)};h.S=function(){var b=this.w;return null!=b?b:this.w=b=Rd(this)};h.D=function(b,a){var c;c=x(a)?(c=this.constructor===a.constructor)?Lf(this,a):c:a;return x(c)?!0:!1};
-h.ub=function(b,a){return Dd(new Vg(null,new q(null,13,[ni,null,ui,null,vi,null,Li,null,fj,null,hj,null,dk,null,gk,null,hk,null,nk,null,Ek,null,Rk,null,ql,null],null),null),a)?gd.a(Wc($e.a(V,this),this.N),a):new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,xe(gd.a(this.G,a)),null)};
+h.R=function(b,a,c){return gh(a,function(){return function(b){return gh(a,oh,""," ","",c,b)}}(this),"#instaparse.gll.Tramp{",", ","}",c,ne.a(new T(null,13,5,U,[new T(null,2,5,U,[hj,this.ea],null),new T(null,2,5,U,[ql,this.text],null),new T(null,2,5,U,[nk,this.La],null),new T(null,2,5,U,[fj,this.Ja],null),new T(null,2,5,U,[hk,this.Ka],null),new T(null,2,5,U,[Fk,this.stack],null),new T(null,2,5,U,[Sk,this.la],null),new T(null,2,5,U,[vi,this.qa],null),new T(null,2,5,U,[ui,this.ha],null),new T(null,2,
+5,U,[ni,this.ra],null),new T(null,2,5,U,[gk,this.X],null),new T(null,2,5,U,[dk,this.ma],null),new T(null,2,5,U,[Li,this.pa],null)],null),this.G))};h.Wa=function(){return new Mf(0,this,13,new T(null,13,5,U,[hj,ql,nk,fj,hk,Fk,Sk,vi,ui,ni,gk,dk,Li],null),fc(this.G))};h.V=function(){return this.N};h.$=function(){return 13+J(this.G)};h.S=function(){var b=this.w;return null!=b?b:this.w=b=Rd(this)};h.D=function(b,a){var c;c=x(a)?(c=this.constructor===a.constructor)?Lf(this,a):c:a;return x(c)?!0:!1};
+h.ub=function(b,a){return Dd(new Vg(null,new q(null,13,[ni,null,ui,null,vi,null,Li,null,fj,null,hj,null,dk,null,gk,null,hk,null,nk,null,Fk,null,Sk,null,ql,null],null),null),a)?gd.a(Wc($e.a(V,this),this.N),a):new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,xe(gd.a(this.G,a)),null)};
 h.$a=function(b,a,c){return x(S.a?S.a(hj,a):S.call(null,hj,a))?new kn(c,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(ql,a):S.call(null,ql,a))?new kn(this.ea,c,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(nk,a):S.call(null,nk,a))?new kn(this.ea,this.text,c,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,
-this.G,null):x(S.a?S.a(fj,a):S.call(null,fj,a))?new kn(this.ea,this.text,this.La,c,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(hk,a):S.call(null,hk,a))?new kn(this.ea,this.text,this.La,this.Ja,c,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(Ek,a):S.call(null,Ek,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,c,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):
-x(S.a?S.a(Rk,a):S.call(null,Rk,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,c,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(vi,a):S.call(null,vi,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,c,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(ui,a):S.call(null,ui,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,c,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(ni,
+this.G,null):x(S.a?S.a(fj,a):S.call(null,fj,a))?new kn(this.ea,this.text,this.La,c,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(hk,a):S.call(null,hk,a))?new kn(this.ea,this.text,this.La,this.Ja,c,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(Fk,a):S.call(null,Fk,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,c,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):
+x(S.a?S.a(Sk,a):S.call(null,Sk,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,c,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(vi,a):S.call(null,vi,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,c,this.ha,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(ui,a):S.call(null,ui,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,c,this.ra,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(ni,
 a):S.call(null,ni,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,c,this.X,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(gk,a):S.call(null,gk,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,c,this.ma,this.pa,this.N,this.G,null):x(S.a?S.a(dk,a):S.call(null,dk,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,c,this.pa,this.N,this.G,null):x(S.a?S.a(Li,a):S.call(null,
 Li,a))?new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,c,this.N,this.G,null):new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,this.N,Q.c(this.G,a,c),null)};
-h.Z=function(){return t(ne.a(new T(null,13,5,U,[new T(null,2,5,U,[hj,this.ea],null),new T(null,2,5,U,[ql,this.text],null),new T(null,2,5,U,[nk,this.La],null),new T(null,2,5,U,[fj,this.Ja],null),new T(null,2,5,U,[hk,this.Ka],null),new T(null,2,5,U,[Ek,this.stack],null),new T(null,2,5,U,[Rk,this.la],null),new T(null,2,5,U,[vi,this.qa],null),new T(null,2,5,U,[ui,this.ha],null),new T(null,2,5,U,[ni,this.ra],null),new T(null,2,5,U,[gk,this.X],null),new T(null,2,5,U,[dk,this.ma],null),new T(null,2,5,U,
+h.Z=function(){return t(ne.a(new T(null,13,5,U,[new T(null,2,5,U,[hj,this.ea],null),new T(null,2,5,U,[ql,this.text],null),new T(null,2,5,U,[nk,this.La],null),new T(null,2,5,U,[fj,this.Ja],null),new T(null,2,5,U,[hk,this.Ka],null),new T(null,2,5,U,[Fk,this.stack],null),new T(null,2,5,U,[Sk,this.la],null),new T(null,2,5,U,[vi,this.qa],null),new T(null,2,5,U,[ui,this.ha],null),new T(null,2,5,U,[ni,this.ra],null),new T(null,2,5,U,[gk,this.X],null),new T(null,2,5,U,[dk,this.ma],null),new T(null,2,5,U,
 [Li,this.pa],null)],null),this.G))};h.W=function(b,a){return new kn(this.ea,this.text,this.La,this.Ja,this.Ka,this.stack,this.la,this.qa,this.ha,this.ra,this.X,this.ma,this.pa,a,this.G,this.w)};h.Y=function(b,a){return td(a)?ib(this,A.a(a,0),A.a(a,1)):Qa(Xa,this,a)};function ln(b,a,c,d,e){return new kn(b,a,c,d,e,dd,dd,0,Pg(Kd),V,V,null,new hn(0,dd,null,null,null),null,null,null)}function mn(b,a){return new q(null,2,[kk,b,Fi,a],null)}
 function nn(b,a,c,d,e,f,g){this.Xa=b;this.ab=a;this.Ya=c;this.Va=d;this.N=e;this.G=f;this.w=g;this.o=2229667594;this.J=8192}h=nn.prototype;h.L=function(b,a){return fb.c(this,a,null)};h.K=function(b,a,c){switch(a instanceof R?a.ka:null){case "listeners":return this.Xa;case "full-listeners":return this.ab;case "results":return this.Ya;case "full-results":return this.Va;default:return B.c(this.G,a,c)}};
-h.R=function(b,a,c){return gh(a,function(){return function(b){return gh(a,oh,""," ","",c,b)}}(this),"#instaparse.gll.Node{",", ","}",c,ne.a(new T(null,4,5,U,[new T(null,2,5,U,[dl,this.Xa],null),new T(null,2,5,U,[pi,this.ab],null),new T(null,2,5,U,[sl,this.Ya],null),new T(null,2,5,U,[ei,this.Va],null)],null),this.G))};h.Wa=function(){return new Mf(0,this,4,new T(null,4,5,U,[dl,pi,sl,ei],null),fc(this.G))};h.V=function(){return this.N};h.$=function(){return 4+J(this.G)};
-h.S=function(){var b=this.w;return null!=b?b:this.w=b=Rd(this)};h.D=function(b,a){var c;c=x(a)?(c=this.constructor===a.constructor)?Lf(this,a):c:a;return x(c)?!0:!1};h.ub=function(b,a){return Dd(new Vg(null,new q(null,4,[ei,null,pi,null,dl,null,sl,null],null),null),a)?gd.a(Wc($e.a(V,this),this.N),a):new nn(this.Xa,this.ab,this.Ya,this.Va,this.N,xe(gd.a(this.G,a)),null)};
-h.$a=function(b,a,c){return x(S.a?S.a(dl,a):S.call(null,dl,a))?new nn(c,this.ab,this.Ya,this.Va,this.N,this.G,null):x(S.a?S.a(pi,a):S.call(null,pi,a))?new nn(this.Xa,c,this.Ya,this.Va,this.N,this.G,null):x(S.a?S.a(sl,a):S.call(null,sl,a))?new nn(this.Xa,this.ab,c,this.Va,this.N,this.G,null):x(S.a?S.a(ei,a):S.call(null,ei,a))?new nn(this.Xa,this.ab,this.Ya,c,this.N,this.G,null):new nn(this.Xa,this.ab,this.Ya,this.Va,this.N,Q.c(this.G,a,c),null)};
-h.Z=function(){return t(ne.a(new T(null,4,5,U,[new T(null,2,5,U,[dl,this.Xa],null),new T(null,2,5,U,[pi,this.ab],null),new T(null,2,5,U,[sl,this.Ya],null),new T(null,2,5,U,[ei,this.Va],null)],null),this.G))};h.W=function(b,a){return new nn(this.Xa,this.ab,this.Ya,this.Va,a,this.G,this.w)};h.Y=function(b,a){return td(a)?ib(this,A.a(a,0),A.a(a,1)):Qa(Xa,this,a)};function on(b,a){return b.stack=cd.a(b.stack,a)}
+h.R=function(b,a,c){return gh(a,function(){return function(b){return gh(a,oh,""," ","",c,b)}}(this),"#instaparse.gll.Node{",", ","}",c,ne.a(new T(null,4,5,U,[new T(null,2,5,U,[el,this.Xa],null),new T(null,2,5,U,[pi,this.ab],null),new T(null,2,5,U,[sl,this.Ya],null),new T(null,2,5,U,[ei,this.Va],null)],null),this.G))};h.Wa=function(){return new Mf(0,this,4,new T(null,4,5,U,[el,pi,sl,ei],null),fc(this.G))};h.V=function(){return this.N};h.$=function(){return 4+J(this.G)};
+h.S=function(){var b=this.w;return null!=b?b:this.w=b=Rd(this)};h.D=function(b,a){var c;c=x(a)?(c=this.constructor===a.constructor)?Lf(this,a):c:a;return x(c)?!0:!1};h.ub=function(b,a){return Dd(new Vg(null,new q(null,4,[ei,null,pi,null,el,null,sl,null],null),null),a)?gd.a(Wc($e.a(V,this),this.N),a):new nn(this.Xa,this.ab,this.Ya,this.Va,this.N,xe(gd.a(this.G,a)),null)};
+h.$a=function(b,a,c){return x(S.a?S.a(el,a):S.call(null,el,a))?new nn(c,this.ab,this.Ya,this.Va,this.N,this.G,null):x(S.a?S.a(pi,a):S.call(null,pi,a))?new nn(this.Xa,c,this.Ya,this.Va,this.N,this.G,null):x(S.a?S.a(sl,a):S.call(null,sl,a))?new nn(this.Xa,this.ab,c,this.Va,this.N,this.G,null):x(S.a?S.a(ei,a):S.call(null,ei,a))?new nn(this.Xa,this.ab,this.Ya,c,this.N,this.G,null):new nn(this.Xa,this.ab,this.Ya,this.Va,this.N,Q.c(this.G,a,c),null)};
+h.Z=function(){return t(ne.a(new T(null,4,5,U,[new T(null,2,5,U,[el,this.Xa],null),new T(null,2,5,U,[pi,this.ab],null),new T(null,2,5,U,[sl,this.Ya],null),new T(null,2,5,U,[ei,this.Va],null)],null),this.G))};h.W=function(b,a){return new nn(this.Xa,this.ab,this.Ya,this.Va,a,this.G,this.w)};h.Y=function(b,a){return td(a)?ib(this,A.a(a,0),A.a(a,1)):Qa(Xa,this,a)};function on(b,a){return b.stack=cd.a(b.stack,a)}
 function pn(b,a,c){var d=b.ra,e=Fi.b(c),f=new T(null,2,5,U,[a,e],null),g=B.c(d,f,0),d=function(){return function(){return a.b?a.b(c):a.call(null,c)}}(d,e,f,g);g>b.qa?b.la=cd.a(b.la,d):b.stack=cd.a(b.stack,d);b.ra=Q.c(b.ra,f,g+1)}function qn(b,a){var c=b.X,c=c.b?c.b(a):c.call(null,a);return x(c)?0<J(c.Xa):null}function rn(b,a){var c=b.X,c=c.b?c.b(a):c.call(null,a);return x(c)?0<J(c.ab)||0<J(c.Xa):null}function sn(b,a){var c=b.X,c=c.b?c.b(a):c.call(null,a);return x(c)?0<J(c.Va)||0<J(c.Ya):null}
 function tn(b,a){var c=b.X,c=c.b?c.b(a):c.call(null,a);x(c)||(c=new nn(dd,dd,Xg,Xg,null,null,null),b.X=Q.c(b.X,a,c));return c}function un(b,a){return(null!=b?b.o&262144||b.fd||(b.o?0:Ia(zb,b)):Ia(zb,b))?Wc(b,a):b}
 function vn(b,a,c){var d=tn(b,a),e=a.b?a.b(1):a.call(null,1);c=x(Fj.b(e))?Q.c(c,kk,null):c;e=uk.b(e);a=x(e)?mn(un(Ll(e,kk.b(c)),new q(null,2,[sk,a.b?a.b(0):a.call(null,0),Qi,Fi.b(c)],null)),Fi.b(c)):c;e=F.a(J(b.text),Fi.b(a));c=x(e)?d.Va:d.Ya;if(Ga(c.b?c.b(a):c.call(null,a))){x(e)?d.Va=cd.a(d.Va,a):d.Ya=cd.a(d.Ya,a);c=t(d.Xa);for(var f=null,g=0,k=0;;)if(k<g){var l=f.P(null,k);pn(b,l,a);k+=1}else if(c=t(c))f=c,ud(f)?(c=Zb(f),k=$b(f),f=c,g=J(c),c=k):(c=C(f),pn(b,c,a),c=D(f),f=null,g=0),k=0;else break;
@@ -3555,16 +3433,16 @@ null!=f&&(f.o&64||f.ga)?qe(Ne,f):f;f=B.a(m,kk);m=B.a(m,Fi);f=yl(a,f);d<=J(f)&&J(
 function Mm(b,a,c){var d=uj.b(b),e=c.text,f;f=J(e);var g=a+J(d);f=f<g?f:g;return F.a(d,e.substring(a,f))?vn(c,new T(null,2,5,U,[a,b],null),mn(d,f)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,uj,Cj,d],null))}function an(b,a,c){var d=uj.b(b),e=c.text,f;f=J(e);var g=a+J(d);f=f<g?f:g;g=e.substring(a,f);return F.a(f,J(e))&&F.a(d,g)?vn(c,new T(null,2,5,U,[a,b],null),mn(d,f)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,uj,Cj,d,xi,!0],null))}
 function Qm(b,a,c){var d=uj.b(b),e=c.text,f;f=J(e);var g=a+J(d);f=f<g?f:g;return x(F.a(d.toUpperCase(),e.substring(a,f).toUpperCase()))?vn(c,new T(null,2,5,U,[a,b],null),mn(d,f)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,uj,Cj,d],null))}
 function en(b,a,c){var d=uj.b(b),e=c.text,f=function(){var b=J(e),c=a+J(d);return b<c?b:c}(),g=e.substring(a,f);return x(function(){var a=F.a(f,J(e));return a?F.a(d.toUpperCase(),g.toUpperCase()):a}())?vn(c,new T(null,2,5,U,[a,b],null),mn(d,f)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,uj,Cj,d,xi,!0],null))}
-function Rm(b,a,c){var d=yj.b(b),e=kl.b(b),f=ql.b(c);if(a>=J(f))return An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,ml,Cj,new q(null,3,[gl,!0,yj,d,kl,e],null)],null));if(65535>=e)return f=f.charCodeAt(a),d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(Ld(f),a+1)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,ml,Cj,new q(null,3,[gl,!0,yj,d,kl,e],null)],null));var f=wm(f,a|0),g=vm(f);return d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(g,a+J(g))):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,
-2,[Z,ml,Cj,new q(null,3,[gl,!0,yj,d,kl,e],null)],null))}
-function fn(b,a,c){var d=yj.b(b),e=kl.b(b),f=ql.b(c),g=J(f);if(a>=J(f))return An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,ml,Cj,new q(null,3,[gl,!0,yj,d,kl,e],null),xi,!0],null));if(65535>=e)return f=f.charCodeAt(a),F.a(a+1,g)&&d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(Ld(f),g)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,ml,Cj,new q(null,3,[gl,!0,yj,d,kl,e],null),xi,!0],null));var f=wm(f,a|0),k=vm(f);return F.a(a+J(k),g)&&d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(k,g)):
-An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,ml,Cj,new q(null,3,[gl,!0,yj,d,kl,e],null),xi,!0],null))}function Nn(b,a){var c=(new RegExp(b.source,"g")).exec(a);return x(x(c)?0===c.index:c)?C(c):null}function Nm(b,a,c){var d=bk.b(b),e=c.La,f=J(e),e=Bm(new Cm(e.text,e.offset+a,f-a)),e=Nn(d,e);return x(e)?vn(c,new T(null,2,5,U,[a,b],null),mn(e,a+J(e))):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,bk,Cj,d],null))}
+function Rm(b,a,c){var d=yj.b(b),e=ll.b(b),f=ql.b(c);if(a>=J(f))return An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,nl,Cj,new q(null,3,[hl,!0,yj,d,ll,e],null)],null));if(65535>=e)return f=f.charCodeAt(a),d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(Ld(f),a+1)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,nl,Cj,new q(null,3,[hl,!0,yj,d,ll,e],null)],null));var f=wm(f,a|0),g=vm(f);return d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(g,a+J(g))):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,
+2,[Z,nl,Cj,new q(null,3,[hl,!0,yj,d,ll,e],null)],null))}
+function fn(b,a,c){var d=yj.b(b),e=ll.b(b),f=ql.b(c),g=J(f);if(a>=J(f))return An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,nl,Cj,new q(null,3,[hl,!0,yj,d,ll,e],null),xi,!0],null));if(65535>=e)return f=f.charCodeAt(a),F.a(a+1,g)&&d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(Ld(f),g)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,nl,Cj,new q(null,3,[hl,!0,yj,d,ll,e],null),xi,!0],null));var f=wm(f,a|0),k=vm(f);return F.a(a+J(k),g)&&d<=f&&f<=e?vn(c,new T(null,2,5,U,[a,b],null),mn(k,g)):
+An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,nl,Cj,new q(null,3,[hl,!0,yj,d,ll,e],null),xi,!0],null))}function Nn(b,a){var c=(new RegExp(b.source,"g")).exec(a);return x(x(c)?0===c.index:c)?C(c):null}function Nm(b,a,c){var d=bk.b(b),e=c.La,f=J(e),e=Bm(new Cm(e.text,e.offset+a,f-a)),e=Nn(d,e);return x(e)?vn(c,new T(null,2,5,U,[a,b],null),mn(e,a+J(e))):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,bk,Cj,d],null))}
 function bn(b,a,c){var d=bk.b(b),e=nk.b(c),f=J(e),f=Bm(new Cm(e.text,e.offset+a,f-a)),f=Nn(d,f),g=J(e)-a;return x(x(f)?F.a(J(f),g):f)?vn(c,new T(null,2,5,U,[a,b],null),mn(f,J(e))):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,3,[Z,bk,Cj,d,xi,!0],null))}
-var Fm=function(b){return function(a,c,d){var e=cl.b(a);return wn(d,new T(null,2,5,U,[c,C(e)],null),Gn(b,D(e),new T(null,2,5,U,[c,a],null),d))}}(Al),Um=function(b){return function(a,c,d){var e=cl.b(a);return wn(d,new T(null,2,5,U,[c,C(e)],null),Hn(b,D(e),new T(null,2,5,U,[c,a],null),d))}}(Al),Om=function(b){return function(a,c,d){var e=ak.b(a);return wn(d,new T(null,2,5,U,[c,e],null),In(b,e,c,new T(null,2,5,U,[c,a],null),d))}}(Al),cn=function(b){return function(a,c,d){var e=ak.b(a);return wn(d,new T(null,
+var Fm=function(b){return function(a,c,d){var e=dl.b(a);return wn(d,new T(null,2,5,U,[c,C(e)],null),Gn(b,D(e),new T(null,2,5,U,[c,a],null),d))}}(Al),Um=function(b){return function(a,c,d){var e=dl.b(a);return wn(d,new T(null,2,5,U,[c,C(e)],null),Hn(b,D(e),new T(null,2,5,U,[c,a],null),d))}}(Al),Om=function(b){return function(a,c,d){var e=ak.b(a);return wn(d,new T(null,2,5,U,[c,e],null),In(b,e,c,new T(null,2,5,U,[c,a],null),d))}}(Al),cn=function(b){return function(a,c,d){var e=ak.b(a);return wn(d,new T(null,
 2,5,U,[c,e],null),Jn(b,e,c,new T(null,2,5,U,[c,a],null),d))}}(Al),Km=function(b){return function(a,c,d){var e=ak.b(a),f=ki.b(a),g=ok.b(a);return 0===f?(vn(d,new T(null,2,5,U,[c,a],null),mn(null,c)),1<=g?wn(d,new T(null,2,5,U,[c,e],null),Kn(b,e,1,g,c,new T(null,2,5,U,[c,a],null),d)):null):wn(d,new T(null,2,5,U,[c,e],null),Kn(b,e,f,g,c,new T(null,2,5,U,[c,a],null),d))}}(Al),Zm=function(b){return function(a,c,d){var e=ak.b(a),f=ki.b(a),g=ok.b(a);return 0===f?(vn(d,new T(null,2,5,U,[c,a],null),mn(null,
 c)),1<=g?wn(d,new T(null,2,5,U,[c,e],null),Ln(b,e,1,g,c,new T(null,2,5,U,[c,a],null),d)):null):wn(d,new T(null,2,5,U,[c,e],null),Ln(b,e,f,g,c,new T(null,2,5,U,[c,a],null),d))}}(Al),Lm=function(b){return function(a,c,d){var e=ak.b(a);wn(d,new T(null,2,5,U,[c,e],null),In(b,e,c,new T(null,2,5,U,[c,a],null),d));return vn(d,new T(null,2,5,U,[c,a],null),mn(null,c))}}(Al),$m=function(b){return function(a,c,d){var e=ak.b(a);return F.a(c,J(ql.b(d)))?vn(d,new T(null,2,5,U,[c,a],null),mn(null,c)):wn(d,new T(null,
-2,5,U,[c,e],null),Jn(b,e,c,new T(null,2,5,U,[c,a],null),d))}}(Al);function Hm(b,a,c){for(var d=cl.b(b),d=t(d),e=null,f=0,g=0;;)if(g<f){var k=e.P(null,g);wn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c));g+=1}else if(d=t(d))e=d,ud(e)?(d=Zb(e),f=$b(e),e=d,k=J(d),d=f,f=k):(k=C(e),wn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c)),d=D(e),e=null,f=0),g=0;else return null}
-function Wm(b,a,c){for(var d=cl.b(b),d=t(d),e=null,f=0,g=0;;)if(g<f){var k=e.P(null,g);xn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c));g+=1}else if(d=t(d))e=d,ud(e)?(d=Zb(e),f=$b(e),e=d,k=J(d),d=f,f=k):(k=C(e),xn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c)),d=D(e),e=null,f=0),g=0;else return null}
+2,5,U,[c,e],null),Jn(b,e,c,new T(null,2,5,U,[c,a],null),d))}}(Al);function Hm(b,a,c){for(var d=dl.b(b),d=t(d),e=null,f=0,g=0;;)if(g<f){var k=e.P(null,g);wn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c));g+=1}else if(d=t(d))e=d,ud(e)?(d=Zb(e),f=$b(e),e=d,k=J(d),d=f,f=k):(k=C(e),wn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c)),d=D(e),e=null,f=0),g=0;else return null}
+function Wm(b,a,c){for(var d=dl.b(b),d=t(d),e=null,f=0,g=0;;)if(g<f){var k=e.P(null,g);xn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c));g+=1}else if(d=t(d))e=d,ud(e)?(d=Zb(e),f=$b(e),e=d,k=J(d),d=f,f=k):(k=C(e),xn(c,new T(null,2,5,U,[a,k],null),En(new T(null,2,5,U,[a,b],null),c)),d=D(e),e=null,f=0),g=0;else return null}
 function Gm(b,a,c){var d=ck.b(b),e=ci.b(b),f=new T(null,2,5,U,[a,d],null),g=new T(null,2,5,U,[a,e],null);b=En(new T(null,2,5,U,[a,b],null),c);wn(c,f,b);return zn(c,f,function(a,b,d,e,f){return function(){return wn(c,e,f)}}(d,e,f,g,b))}function Vm(b,a,c){var d=ck.b(b),e=ci.b(b),f=new T(null,2,5,U,[a,d],null),g=new T(null,2,5,U,[a,e],null);b=En(new T(null,2,5,U,[a,b],null),c);xn(c,f,b);return zn(c,f,function(a,b,d,e,f){return function(){return xn(c,e,f)}}(d,e,f,g,b))}
 function Sm(b,a,c){var d=ak.b(b);wn(c,new T(null,2,5,U,[a,d],null),En(new T(null,2,5,U,[a,b],null),c));return vn(c,new T(null,2,5,U,[a,b],null),mn(null,a))}function gn(b,a,c){var d=ak.b(b);xn(c,new T(null,2,5,U,[a,d],null),En(new T(null,2,5,U,[a,b],null),c));return F.a(a,J(ql.b(c)))?vn(c,new T(null,2,5,U,[a,b],null),mn(null,a)):An(c,new T(null,2,5,U,[a,b],null),a,new q(null,2,[Z,vk,Cj,ii],null))}
 function Jm(b,a,c){var d;d=hj.b(c);var e=jk.b(b);d=B.c(d,e,e);return wn(c,new T(null,2,5,U,[a,d],null),En(new T(null,2,5,U,[a,b],null),c))}function Ym(b,a,c){var d;d=hj.b(c);var e=jk.b(b);d=B.c(d,e,e);return xn(c,new T(null,2,5,U,[a,d],null),En(new T(null,2,5,U,[a,b],null),c))}function Im(b,a,c){var d=ak.b(b);return wn(c,new T(null,2,5,U,[a,d],null),Fn(new T(null,2,5,U,[a,b],null),c))}
@@ -3583,41 +3461,41 @@ E=function(){var a;a:if(F.a(3,J(l)))a=l;else if(3<J(l))a=l.substring(0,3);else f
 a):ao.call(null,w,a)}(),"timestamp day field must be in range 1..last day in month"),eo(0,a,23,"timestamp hour field must be in range 0..23"),eo(0,c,59,"timestamp minute field must be in range 0..59"),eo(0,z,F.a(c,59)?60:59,"timestamp second field must be in range 0..60"),eo(0,E,999,"timestamp millisecond field must be in range 0..999"),m],null)}
 var go=new q(null,4,["inst",function(b){var a;if("string"===typeof b)if(a=fo(b),x(a)){b=P(a,0,null);var c=P(a,1,null),d=P(a,2,null),e=P(a,3,null),f=P(a,4,null),g=P(a,5,null),k=P(a,6,null);a=P(a,7,null);a=new Date(Date.UTC(b,c-1,d,e,f,g,k)-6E4*a)}else a=Wn(O([[y("Unrecognized date/time syntax: "),y(b)].join("")],0));else a=Wn(O(["Instance literal expects a string for its timestamp."],0));return a},"uuid",function(b){return"string"===typeof b?new Wh(b,null):Wn(O(["UUID literal expects a string as its representation."],
 0))},"queue",function(b){return td(b)?$e.a(If,b):Wn(O(["Queue literal expects a vector for its elements."],0))},"js",function(b){if(td(b)){var a=[];b=t(b);for(var c=null,d=0,e=0;;)if(e<d){var f=c.P(null,e);a.push(f);e+=1}else if(b=t(b))c=b,ud(c)?(b=Zb(c),e=$b(c),c=b,d=J(b),b=e):(b=C(c),a.push(b),b=D(c),c=null,d=0),e=0;else break;return a}if(rd(b)){a={};b=t(b);c=null;for(e=d=0;;)if(e<d){var g=c.P(null,e),f=P(g,0,null),g=P(g,1,null);a[be(f)]=g;e+=1}else if(b=t(b))ud(b)?(d=Zb(b),b=$b(b),c=d,d=J(d)):
-(d=C(b),c=P(d,0,null),d=P(d,1,null),a[be(c)]=d,b=D(b),c=null,d=0),e=0;else break;return a}return Wn(O([[y("JS literal expects a vector or map containing "),y("only string or unqualified keyword keys")].join("")],0))}],null);Me||Le.call(null,go);Me||Le.call(null,null);var ho=!1,io=/(?:(?!(?:\(\*|\*\)))[\s\S])*/,jo=cm(Zl(Jk)),ko=Ml(wj,fd([bi,fi,ri,zi,Ji,Ni,Xi,gj,ij,pj,rj,uj,xj,Fj,Ij,Tj,bk,qk,Ak,Bk,Fk,Jk,pl],[Tl.h(O([cm(Ul("!")),jo,Zl(qk)],0)),Ol(Tl.h(O([jo,Rl.h(O([Zl(qk),Zl(Ni),Zl(bi)],0)),jo],0))),Tl.h(O([Zl(fi),Ol(Tl.h(O([jo,cm(Ul("/")),jo,Zl(fi)],0)))],0)),Rl.h(O([Ul(":"),Ul(":\x3d"),Ul("::\x3d"),Ul("\x3d")],0)),Tl.h(O([Zl(fi),Pl(Tl.h(O([jo,cm(Ul("|")),jo,Zl(fi)],0)))],0)),Tl.h(O([cm(Ul("\x26")),jo,Zl(qk)],0)),Tl.h(O([Rl.h(O([Zl(gj),Zl(ij)],0)),jo,cm(Zl(zi)),
-jo,Zl(Tj),cm(Rl.h(O([Zl(Jk),Tl.h(O([Zl(Jk),Rl.h(O([Ul(";"),Ul(".")],0)),Zl(Jk)],0))],0)))],0)),Tl.h(O([am(Zl(Fk)),Yl("[^, \\r\\t\\n\x3c\x3e(){}\\[\\]+*?:\x3d|'\"#\x26!;./]+")],0)),Tl.h(O([cm(Ul("\x3c")),jo,Zl(gj),jo,cm(Ul("\x3e"))],0)),Tl.h(O([Yl(io),Pl(Tl.h(O([Zl(Ak),Yl(io)],0)))],0)),Rl.h(O([Tl.h(O([cm(Ul("{")),jo,Zl(Tj),jo,cm(Ul("}"))],0)),Tl.h(O([Zl(qk),jo,cm(Ul("*"))],0))],0)),Rl.h(O([Yl(/'[^'\\]*(?:\\.[^'\\]*)*'/),Yl(/\"[^\"\\]*(?:\\.[^\"\\]*)*\"/)],0)),Hl(Tl.h(O([jo,Ol(Zl(Xi))],0))),Tl.h(O([cm(Ul("\x3c")),
-jo,Zl(Tj),jo,cm(Ul("\x3e"))],0)),Tl.h(O([cm(Ul("(")),jo,Zl(Tj),jo,cm(Ul(")"))],0)),Hl(Rl.h(O([Zl(Ji),Zl(ri)],0))),Rl.h(O([Yl(/#'[^'\\]*(?:\\.[^'\\]*)*'/),Yl(/#\"[^\"\\]*(?:\\.[^\"\\]*)*\"/)],0)),Hl(Rl.h(O([Zl(gj),Zl(uj),Zl(bk),Zl(pl),Zl(rj),Zl(Bk),Zl(Ij),Zl(Fj),Zl(Fk)],0))),Tl.h(O([Ul("(*"),Zl(pj),Ul("*)")],0)),Tl.h(O([Zl(qk),jo,cm(Ul("+"))],0)),Rl.h(O([Ul("Epsilon"),Ul("epsilon"),Ul("EPSILON"),Ul("eps"),Ul("蔚")],0)),Tl.h(O([Yl("[,\\s]*"),Pl(Tl.h(O([Zl(Ak),Yl("[,\\s]*")],0)))],0)),Rl.h(O([Tl.h(O([cm(Ul("[")),
+(d=C(b),c=P(d,0,null),d=P(d,1,null),a[be(c)]=d,b=D(b),c=null,d=0),e=0;else break;return a}return Wn(O([[y("JS literal expects a vector or map containing "),y("only string or unqualified keyword keys")].join("")],0))}],null);Me||Le.call(null,go);Me||Le.call(null,null);var ho=!1,io=/(?:(?!(?:\(\*|\*\)))[\s\S])*/,jo=cm(Zl(Kk)),ko=Ml(wj,fd([bi,fi,ri,zi,Ji,Ni,Xi,gj,ij,pj,rj,uj,xj,Fj,Ij,Tj,bk,qk,Ak,Bk,Gk,Kk,pl],[Tl.h(O([cm(Ul("!")),jo,Zl(qk)],0)),Ol(Tl.h(O([jo,Rl.h(O([Zl(qk),Zl(Ni),Zl(bi)],0)),jo],0))),Tl.h(O([Zl(fi),Ol(Tl.h(O([jo,cm(Ul("/")),jo,Zl(fi)],0)))],0)),Rl.h(O([Ul(":"),Ul(":\x3d"),Ul("::\x3d"),Ul("\x3d")],0)),Tl.h(O([Zl(fi),Pl(Tl.h(O([jo,cm(Ul("|")),jo,Zl(fi)],0)))],0)),Tl.h(O([cm(Ul("\x26")),jo,Zl(qk)],0)),Tl.h(O([Rl.h(O([Zl(gj),Zl(ij)],0)),jo,cm(Zl(zi)),
+jo,Zl(Tj),cm(Rl.h(O([Zl(Kk),Tl.h(O([Zl(Kk),Rl.h(O([Ul(";"),Ul(".")],0)),Zl(Kk)],0))],0)))],0)),Tl.h(O([am(Zl(Gk)),Yl("[^, \\r\\t\\n\x3c\x3e(){}\\[\\]+*?:\x3d|'\"#\x26!;./]+")],0)),Tl.h(O([cm(Ul("\x3c")),jo,Zl(gj),jo,cm(Ul("\x3e"))],0)),Tl.h(O([Yl(io),Pl(Tl.h(O([Zl(Ak),Yl(io)],0)))],0)),Rl.h(O([Tl.h(O([cm(Ul("{")),jo,Zl(Tj),jo,cm(Ul("}"))],0)),Tl.h(O([Zl(qk),jo,cm(Ul("*"))],0))],0)),Rl.h(O([Yl(/'[^'\\]*(?:\\.[^'\\]*)*'/),Yl(/\"[^\"\\]*(?:\\.[^\"\\]*)*\"/)],0)),Hl(Tl.h(O([jo,Ol(Zl(Xi))],0))),Tl.h(O([cm(Ul("\x3c")),
+jo,Zl(Tj),jo,cm(Ul("\x3e"))],0)),Tl.h(O([cm(Ul("(")),jo,Zl(Tj),jo,cm(Ul(")"))],0)),Hl(Rl.h(O([Zl(Ji),Zl(ri)],0))),Rl.h(O([Yl(/#'[^'\\]*(?:\\.[^'\\]*)*'/),Yl(/#\"[^\"\\]*(?:\\.[^\"\\]*)*\"/)],0)),Hl(Rl.h(O([Zl(gj),Zl(uj),Zl(bk),Zl(pl),Zl(rj),Zl(Bk),Zl(Ij),Zl(Fj),Zl(Gk)],0))),Tl.h(O([Ul("(*"),Zl(pj),Ul("*)")],0)),Tl.h(O([Zl(qk),jo,cm(Ul("+"))],0)),Rl.h(O([Ul("Epsilon"),Ul("epsilon"),Ul("EPSILON"),Ul("eps"),Ul("蔚")],0)),Tl.h(O([Yl("[,\\s]*"),Pl(Tl.h(O([Zl(Ak),Yl("[,\\s]*")],0)))],0)),Rl.h(O([Tl.h(O([cm(Ul("[")),
 jo,Zl(Tj),jo,cm(Ul("]"))],0)),Tl.h(O([Zl(qk),jo,cm(Ul("?"))],0))],0))]));function lo(b){for(var a=t(b),c=dd;;){var d=C(a);if(x(d))switch(d){case "\\":var e=$c(a);if(x(e)){F.a(e,"'")?(a=Se(a),c=cd.a(c,e)):(a=Se(a),c=cd.h(c,d,O([e],0)));continue}else throw[y("Encountered backslash character at end of string:"),y(b)].join("");case '"':a=D(a);c=cd.h(c,"\\",O(['"'],0));continue;default:a=D(a),c=cd.a(c,d)}else return qe(y,c)}}
 function mo(b){var a=J(b)-1;b=lo(b.substring(1,a));a:{b=new Vn([y(b),y('"')].join(""),[],-1);for(var a=new ha,c=Un(b);;){if(null==c){b=Wn(O(["EOF while reading"],0));break a}if("\\"===c)a.append($n(b));else{if('"'===c){b=a.toString();break a}a.append(c)}c=Un(b)}}return b}function no(b){var a=J(b)-1;b=lo(b.substring(2,a));return fh(b)}
 var oo=function oo(a){for(;;)switch((C.b?C.b(a):C.call(null,a))instanceof R?(C.b?C.b(a):C.call(null,a)).ka:null){case "neg":return am(oo(ad.b?ad.b(a):ad.call(null,a)));case "cat":return qe(Tl,X.a(oo,D.b?D.b(a):D.call(null,a)));case "ord":return qe(Sl,X.a(oo,D.b?D.b(a):D.call(null,a)));case "alt":return qe(Rl,X.a(oo,D.b?D.b(a):D.call(null,a)));case "look":return $l(oo(ad.b?ad.b(a):ad.call(null,a)));case "rule":a=D.b?D.b(a):D.call(null,a);var c=P(a,0,null);a=P(a,1,null);return F.a(C.b?C.b(c):C.call(null,
 c),ij)?new T(null,2,5,U,[ae.b(function(){var a=ad.b?ad.b(c):ad.call(null,c);return ad.b?ad.b(a):ad.call(null,a)}()),Hl(oo(a))],null):new T(null,2,5,U,[ae.b(ad.b?ad.b(c):ad.call(null,c)),oo(a)],null);case "nt":return Zl(ae.b(ad.b?ad.b(a):ad.call(null,a)));case "star":return Pl(oo(ad.b?ad.b(a):ad.call(null,a)));case "string":return(x(ho)?Vl:Ul).call(null,mo(ad.b?ad.b(a):ad.call(null,a)));case "hide":return cm(oo(ad.b?ad.b(a):ad.call(null,a)));case "paren":a=ad.b?ad.b(a):ad.call(null,a);continue;case "regexp":return Yl(no(ad.b?
-ad.b(a):ad.call(null,a)));case "plus":return Ol(oo(ad.b?ad.b(a):ad.call(null,a)));case "epsilon":return Zg;case "opt":return Nl(oo(ad.b?ad.b(a):ad.call(null,a)));default:throw Error([y("No matching clause: "),y(C.b?C.b(a):C.call(null,a))].join(""));}},po=function po(a){for(;;)switch(Z.b(a)instanceof R?Z.b(a).ka:null){case "neg":a=ak.b(a);continue;case "cat":return Ve(po,O([cl.b(a)],0));case "ord":return Ve(po,O([new T(null,2,5,U,[ck.b(a),ci.b(a)],null)],0));case "alt":return Ve(po,O([cl.b(a)],0));
+ad.b(a):ad.call(null,a)));case "plus":return Ol(oo(ad.b?ad.b(a):ad.call(null,a)));case "epsilon":return Zg;case "opt":return Nl(oo(ad.b?ad.b(a):ad.call(null,a)));default:throw Error([y("No matching clause: "),y(C.b?C.b(a):C.call(null,a))].join(""));}},po=function po(a){for(;;)switch(Z.b(a)instanceof R?Z.b(a).ka:null){case "neg":a=ak.b(a);continue;case "cat":return Ve(po,O([dl.b(a)],0));case "ord":return Ve(po,O([new T(null,2,5,U,[ck.b(a),ci.b(a)],null)],0));case "alt":return Ve(po,O([dl.b(a)],0));
 case "look":a=ak.b(a);continue;case "nt":return new T(null,1,5,U,[jk.b(a)],null);case "rep":a=ak.b(a);continue;case "star":a=ak.b(a);continue;case "string":return dd;case "regexp":return dd;case "plus":a=ak.b(a);continue;case "epsilon":return dd;case "string-ci":return dd;case "char":return dd;case "opt":a=ak.b(a);continue;default:throw Error([y("No matching clause: "),y(Z.b(a))].join(""));}};
 function qo(b){var a;a:if(a=Sf(b),a=t(a),null==a)a=Xg;else if(a instanceof r&&0===a.A){a=a.g;b:for(var c=0,d=Qb(Xg);;)if(c<a.length)var e=c+1,d=d.zb(null,a[c]),c=e;else break b;a=d.Kb(null)}else for(e=Qb(Xg);;)if(null!=a)c=D(a),e=e.zb(null,a.ja(null)),a=c;else{a=Sb(e);break a}for(var c=t($g(Ve(po,O([Tf(b)],0)))),e=null,f=d=0;;)if(f<d){var g=e.P(null,f);if(!x(a.b?a.b(g):a.call(null,g)))throw[y(Qd(""+y(g),1)),y(" occurs on the right-hand side of your grammar, but not on the left")].join("");f+=1}else if(c=
 t(c)){e=c;if(ud(e))c=Zb(e),f=$b(e),e=c,d=J(c),c=f;else{c=C(e);if(!x(a.b?a.b(c):a.call(null,c)))throw[y(Qd(""+y(c),1)),y(" occurs on the right-hand side of your grammar, but not on the left")].join("");c=D(e);e=null;d=0}f=0}else break;return b}
 function ro(b,a){var c=Pn(ko,xj,b,!1);if(c instanceof hn)throw[y("Error parsing grammar specification:\n"),y(function(){var a=new ha,b=ma,d=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(b,d,a,c);try{wh(O([c],0))}finally{ka=d,ma=b}return""+y(a)}())].join("");var d=X.a(oo,c),e=C(C(d));return new q(null,3,[hj,qo(Ml(a,$e.a(V,d))),Wi,e,kj,a],null)}
 function so(b,a,c){if(null==c)throw"When you build a parser from a map of parser combinators, you must provide a start production using the :start keyword argument.";return new q(null,3,[hj,qo(Ml(a,b)),Wi,c,kj,a],null)};function to(b,a){var c=Array.prototype.slice.call(arguments),d=c.shift();if("undefined"==typeof d)throw Error("[goog.string.format] Template required");return d.replace(/%([0\-\ \+]*)(\d+)?(\.(\d+))?([%sfdiu])/g,function(a,b,d,k,l,m,p,v){if("%"==m)return"%";var u=c.shift();if("undefined"==typeof u)throw Error("[goog.string.format] Not enough arguments");arguments[0]=u;return to.ob[m].apply(null,arguments)})}to.ob={};
 to.ob.s=function(b,a,c){return isNaN(c)||""==c||b.length>=c?b:b=-1<a.indexOf("-",0)?b+fa(" ",c-b.length):fa(" ",c-b.length)+b};to.ob.f=function(b,a,c,d,e){d=b.toString();isNaN(e)||""==e||(d=parseFloat(b).toFixed(e));var f;f=0>b?"-":0<=a.indexOf("+")?"+":0<=a.indexOf(" ")?" ":"";0<=b&&(d=f+d);if(isNaN(c)||d.length>=c)return d;d=isNaN(e)?Math.abs(b).toString():Math.abs(b).toFixed(e);b=c-d.length-f.length;0<=a.indexOf("-",0)?d=f+d+fa(" ",b):(a=0<=a.indexOf("0",0)?"0":" ",d=f+fa(a,b)+d);return d};
-to.ob.d=function(b,a,c,d,e,f,g,k){return to.ob.f(parseInt(b,10),a,c,d,0,f,g,k)};to.ob.i=to.ob.d;to.ob.u=to.ob.d;var uo=fd([ti,wi,Gi,Hi,aj,bj,lj,Jj,Kj,Nj,mk,wk,Ck,Nk,Wk,bl],[Ul("\r\n"),Ul("\t"),Rl.h(O([Rl.h(O([Ul(" "),Ul("\t")],0)),Pl(Tl.h(O([Ul("\r\n"),Rl.h(O([Ul(" "),Ul("\t")],0))],0)))],0)),Ul("\n"),Yl("[\\u0021-\\u007E]"),Yl("[0-9]"),Ul(" "),Yl("[0-9a-fA-F]"),Yl("[\\u0000-\\u001F|\\u007F]"),Ul('"'),Rl.h(O([Ul(" "),Ul("\t")],0)),Ul("\r"),Yl("[\\u0000-\\u00FF]"),Yl("[a-zA-Z]"),Yl("[\\u0001-\\u007F]"),Yl("[01]")]),vo=function vo(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;
+to.ob.d=function(b,a,c,d,e,f,g,k){return to.ob.f(parseInt(b,10),a,c,d,0,f,g,k)};to.ob.i=to.ob.d;to.ob.u=to.ob.d;var uo=fd([ti,wi,Gi,Hi,aj,bj,lj,Jj,Kj,Nj,mk,wk,Ck,Ok,Xk,cl],[Ul("\r\n"),Ul("\t"),Rl.h(O([Rl.h(O([Ul(" "),Ul("\t")],0)),Pl(Tl.h(O([Ul("\r\n"),Rl.h(O([Ul(" "),Ul("\t")],0))],0)))],0)),Ul("\n"),Yl("[\\u0021-\\u007E]"),Yl("[0-9]"),Ul(" "),Yl("[0-9a-fA-F]"),Yl("[\\u0000-\\u001F|\\u007F]"),Ul('"'),Rl.h(O([Ul(" "),Ul("\t")],0)),Ul("\r"),Yl("[\\u0000-\\u00FF]"),Yl("[a-zA-Z]"),Yl("[\\u0001-\\u007F]"),Yl("[01]")]),vo=function vo(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;
 return vo.h(0<c.length?new r(c.slice(0),0,null):null)};vo.h=function(b){if(F.a("-",$c(b))){var a=P(b,0,null);P(b,1,null);var c=P(b,2,null);return Wl(a,c)}return qe(Tl,function(){return function e(a){return new ce(null,function(){for(;;){var b=t(a);if(b){if(ud(b)){var c=Zb(b),l=J(c),m=ge(l);a:for(var p=0;;)if(p<l){var v=A.a(c,p),v=Wl(v,v);m.add(v);p+=1}else{c=!0;break a}return c?ie(m.ca(),e($b(b))):ie(m.ca(),null)}m=C(b);return Uc(Wl(m,m),e(wc(b)))}return null}},null,null)}(b)}())};vo.F=0;vo.C=function(b){return vo.h(t(b))};
 function wo(b,a){return $e.a(V,function(){return function d(a){return new ce(null,function(){for(var f=a;;)if(f=t(f)){if(ud(f)){var g=Zb(f),k=J(g),l=ge(k);a:for(var m=0;;)if(m<k){var p=A.a(g,m);Dd(b,p)&&(p=new T(null,2,5,U,[p,b.b?b.b(p):b.call(null,p)],null),l.add(p));m+=1}else{g=!0;break a}return g?ie(l.ca(),d($b(f))):ie(l.ca(),null)}l=C(f);if(Dd(b,l))return Uc(new T(null,2,5,U,[l,b.b?b.b(l):b.call(null,l)],null),d(wc(f)));f=wc(f)}else return null},null,null)}(a)}())}
 function xo(b){return Sg.h(O([wo(uo,$g(Ve(po,O([Tf(b)],0)))),b],0))}function yo(b,a){var c=F.a(uk.b(b),Il),d=F.a(uk.b(a),Il);return x(x(c)?d:c)?Hl(Rl.h(O([gd.a(b,uk),gd.a(a,uk)],0))):x(c)?Hl(Rl.h(O([gd.a(b,uk),a],0))):x(d)?Hl(Rl.h(O([b,gd.a(a,uk)],0))):Rl.h(O([b,a],0))}
-var zo=fd([bi,Di,Ni,Pi,Xi,Yi,oj,sj,Fj,Lj,Mj,Pj,Vj,Wj,Yj,bk,ek,pk,Mk,Uk,hl],[am,function(b,a){return Xf([b,Hl(a)])},$l,function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){a=qe(y,a);return parseInt(a,2)}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),Ne,function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=
+var zo=fd([bi,Di,Ni,Pi,Xi,Yi,oj,sj,Fj,Lj,Mj,Pj,Vj,Wj,Yj,bk,ek,pk,Nk,Vk,il],[am,function(b,a){return Xf([b,Hl(a)])},$l,function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){a=qe(y,a);return parseInt(a,2)}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),Ne,function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=
 arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){return x(!1)?Zl(ae.b(qe(y,a).toUpperCase())):Zl(ae.b(qe(y,a)))}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){a=qe(y,a);return parseInt(a)}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),function(){function b(b){var d=null;if(0<
 arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){return Vl(qe(y,a))}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),cm,Nl,function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){a=qe(y,a);return parseInt(a,16)}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),
-vo,vo,Tl,Rl,Ge.a(Yl,no),function(){function b(a,b){return nd(a)?Pl(b):F.a(J(a),2)?Ql(Kk.b(a),Gj.b(a),b):F.a(Kk.b(a),1)?Ol(b):F.a(Gj.b(a),1)?Nl(b):Ql(function(){var b=Kk.b(a);return x(b)?b:0}(),function(){var b=Gj.b(a);return x(b)?b:Infinity}(),b)}var a=null,a=function(a,d){switch(arguments.length){case 1:return a;case 2:return b.call(this,a,d)}throw Error("Invalid arity: "+arguments.length);};a.b=function(a){return a};a.a=b;return a}(),function(){function b(b){var d=null;if(0<arguments.length){for(var d=
-0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){return x(!1)?ae.b(qe(y,a).toUpperCase()):ae.b(qe(y,a))}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){switch(J(a)){case 1:return F.a(C(a),"*")?V:new q(null,2,[Kk,C(a),Gj,C(a)],null);case 2:return F.a(C(a),
-"*")?new q(null,1,[Gj,$c(a)],null):new q(null,1,[Kk,C(a)],null);case 3:return new q(null,2,[Kk,C(a),Gj,Oc(a,2)],null);default:throw Error([y("No matching clause: "),y(J(a))].join(""));}}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),vo,function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){a=qe(y,a);return parseInt(a)}b.F=0;b.C=function(b){b=t(b);return a(b)};
+vo,vo,Tl,Rl,Ge.a(Yl,no),function(){function b(a,b){return nd(a)?Pl(b):F.a(J(a),2)?Ql(Lk.b(a),Gj.b(a),b):F.a(Lk.b(a),1)?Ol(b):F.a(Gj.b(a),1)?Nl(b):Ql(function(){var b=Lk.b(a);return x(b)?b:0}(),function(){var b=Gj.b(a);return x(b)?b:Infinity}(),b)}var a=null,a=function(a,d){switch(arguments.length){case 1:return a;case 2:return b.call(this,a,d)}throw Error("Invalid arity: "+arguments.length);};a.b=function(a){return a};a.a=b;return a}(),function(){function b(b){var d=null;if(0<arguments.length){for(var d=
+0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){return x(!1)?ae.b(qe(y,a).toUpperCase()):ae.b(qe(y,a))}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){switch(J(a)){case 1:return F.a(C(a),"*")?V:new q(null,2,[Lk,C(a),Gj,C(a)],null);case 2:return F.a(C(a),
+"*")?new q(null,1,[Gj,$c(a)],null):new q(null,1,[Lk,C(a)],null);case 3:return new q(null,2,[Lk,C(a),Gj,Oc(a,2)],null);default:throw Error([y("No matching clause: "),y(J(a))].join(""));}}b.F=0;b.C=function(b){b=t(b);return a(b)};b.h=a;return b}(),vo,function(){function b(b){var d=null;if(0<arguments.length){for(var d=0,e=Array(arguments.length-0);d<e.length;)e[d]=arguments[d+0],++d;d=new r(e,0)}return a.call(this,d)}function a(a){a=qe(y,a);return parseInt(a)}b.F=0;b.C=function(b){b=t(b);return a(b)};
 b.h=a;return b}()]),Ao=Ml(wj,function(b){if(x(eh(/[:=]/,b))){var a=Pn(ko,xj,b,!1);if(a instanceof hn)throw[y("Error parsing grammar specification:\n"),y(function(){var b=new ha,c=ma,f=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(c,f,b,a);try{wh(O([a],0))}finally{ka=f,ma=c}return""+y(b)}())].join("");return $e.a(V,X.a(oo,a))}var c=Pn(ko,Tj,b,!1);if(c instanceof hn)throw[y("Error parsing grammar specification:\n"),y(function(){var a=new ha,b=ma,f=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(b,
 f,a,c);try{wh(O([c],0))}finally{ka=f,ma=b}return""+y(a)}())].join("");return oo(C(c))}("\n\x3crulelist\x3e \x3d \x3copt-whitespace\x3e (rule | hide-tag-rule)+;\nrule \x3d rulename-left \x3cdefined-as\x3e alternation \x3copt-whitespace\x3e;\nhide-tag-rule \x3d hide-tag \x3cdefined-as\x3e alternation \x3copt-whitespace\x3e;\nrulename-left \x3d rulename;\nrulename-right \x3d rulename;\n\x3crulename\x3e \x3d #'[a-zA-Z][-a-zA-Z0-9]*';\n\x3chide-tag\x3e \x3d \x3c'\x3c' opt-whitespace\x3e rulename-left \x3copt-whitespace '\x3e'\x3e;\ndefined-as \x3d \x3copt-whitespace\x3e ('\x3d' | '\x3d/') \x3copt-whitespace\x3e;\nalternation \x3d concatenation (\x3copt-whitespace '/' opt-whitespace\x3e concatenation)*;\nconcatenation \x3d repetition (\x3cwhitespace\x3e repetition)*;\nrepetition \x3d [repeat] \x3copt-whitespace\x3e element;\nrepeat \x3d NUM | (NUM? '*' NUM?);\n\x3celement\x3e \x3d rulename-right | group | hide | option | char-val | num-val\n          | look | neg | regexp;\nlook \x3d \x3c'\x26' opt-whitespace\x3e element;\nneg \x3d \x3c'!' opt-whitespace\x3e element;\n\x3cgroup\x3e \x3d \x3c'(' opt-whitespace\x3e alternation \x3copt-whitespace ')'\x3e;\noption \x3d \x3c'[' opt-whitespace\x3e alternation \x3copt-whitespace ']'\x3e;\nhide \x3d \x3c'\x3c' opt-whitespace\x3e alternation \x3copt-whitespace '\x3e'\x3e;\nchar-val \x3d \x3c'\\u0022'\x3e #'[\\u0020-\\u0021\\u0023-\\u007E]'* \x3c'\\u0022'\x3e (* double-quoted strings *)\n         | \x3c'\\u0027'\x3e #'[\\u0020-\\u0026(-~]'* \x3c'\\u0027'\x3e;  (* single-quoted strings *)\n\x3cnum-val\x3e \x3d \x3c'%'\x3e (bin-val | dec-val | hex-val);\nbin-val \x3d \x3c'b'\x3e bin-char\n          [ (\x3c'.'\x3e bin-char)+ | ('-' bin-char) ];\nbin-char \x3d ('0' | '1')+;\ndec-val \x3d \x3c'd'\x3e dec-char\n          [ (\x3c'.'\x3e dec-char)+ | ('-' dec-char) ];\ndec-char \x3d DIGIT+;\nhex-val \x3d \x3c'x'\x3e hex-char\n          [ (\x3c'.'\x3e hex-char)+ | ('-' hex-char) ];\nhex-char \x3d HEXDIG+;\nNUM \x3d DIGIT+;\n\x3cDIGIT\x3e \x3d #'[0-9]';\n\x3cHEXDIG\x3e \x3d #'[0-9a-fA-F]';\nopt-whitespace \x3d #'\\s*(?:;.*?(?:\\u000D?\\u000A\\s*|$))*';\nwhitespace \x3d #'\\s+(?:;.*?\\u000D?\\u000A\\s*)*';\nregexp \x3d #\"#'[^'\\\\]*(?:\\\\.[^'\\\\]*)*'\"\n       | #\"#\\\"[^\\\"\\\\]*(?:\\\\.[^\\\"\\\\]*)*\\\"\"\n"));
-function Bo(b,a){var c=Pn(Ao,Ik,b,!1);if(c instanceof hn)throw[y("Error parsing grammar specification:\n"),y(function(){var a=new ha,b=ma,d=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(b,d,a,c);try{wh(O([c],0))}finally{ka=d,ma=b}return""+y(a)}())].join("");var d=Tn(zo,c),e=xo(re(Tg,yo,d)),d=C(C(C(d)));return new q(null,3,[hj,qo(Ml(a,e)),Wi,d,kj,a],null)};function Co(b){var a=jd(b);b=sk.b(a);a=Qi.b(a);return x(x(b)?a:b)?new T(null,2,5,U,[b,a],null):null};function Do(b){return td(b)&&F.a(J(b),1)||rd(b)&&Dd(b,Z)&&nd(B.a(b,Si))||nd(b)}var Eo=new hn(null,null,null,null,null),Fo=function Fo(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;switch(c.length){case 1:return Fo.b(arguments[0]);case 2:return Fo.a(arguments[0],arguments[1]);default:throw Error([y("Invalid arity: "),y(c.length)].join(""));}};Fo.b=function(b){var a=Co(b);P(a,0,null);a=P(a,1,null);return x(a)?Md(a):J(b)};
+function Bo(b,a){var c=Pn(Ao,Jk,b,!1);if(c instanceof hn)throw[y("Error parsing grammar specification:\n"),y(function(){var a=new ha,b=ma,d=ka;ma=!0;ka=function(a,b,c){return function(a){return c.append(a)}}(b,d,a,c);try{wh(O([c],0))}finally{ka=d,ma=b}return""+y(a)}())].join("");var d=Tn(zo,c),e=xo(re(Tg,yo,d)),d=C(C(C(d)));return new q(null,3,[hj,qo(Ml(a,e)),Wi,d,kj,a],null)};function Co(b){var a=jd(b);b=sk.b(a);a=Qi.b(a);return x(x(b)?a:b)?new T(null,2,5,U,[b,a],null):null};function Do(b){return td(b)&&F.a(J(b),1)||rd(b)&&Dd(b,Z)&&nd(B.a(b,Si))||nd(b)}var Eo=new hn(null,null,null,null,null),Fo=function Fo(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;switch(c.length){case 1:return Fo.b(arguments[0]);case 2:return Fo.a(arguments[0],arguments[1]);default:throw Error([y("Invalid arity: "),y(c.length)].join(""));}};Fo.b=function(b){var a=Co(b);P(a,0,null);a=P(a,1,null);return x(a)?Md(a):J(b)};
 Fo.a=function(b,a){var c=Co(b);P(c,0,null);c=P(c,1,null);return x(c)?Md(c):a+J(b)};Fo.F=2;function Go(b,a,c,d,e){b=ln(b,c,d,-1,null);wn(b,new T(null,2,5,U,[e,a],null),Mn(b));return Dn(b,null)}function Ho(b,a,c,d,e,f){var g=J(c);for(f=t(f);;)if(f){var k=C(f),l=Co(k);P(l,0,null);l=P(l,1,null);l=x(l)?l:e+J(k);if(F.a(l,g))return new T(null,3,5,U,[k,l,null],null);var m=t(Go(b,a,c,d,l));if(m)return new T(null,3,5,U,[k,l,m],null);f=D(f)}else return null}
-function Io(b,a,c,d,e){var f=J(c),g=Go(b,a,c,d,e);e=Md(e);var k=Ho(b,a,c,d,e,g);P(k,0,null);P(k,1,null);P(k,2,null);g=e;for(e=Al;;){var l=k,m=P(l,0,null),k=P(l,1,null),p=P(l,2,null);if(null==l||F.a(g,k))return Eo;if(null==p)return un(yl(e,m),new q(null,3,[Pk,dj,sk,0,Qi,f],null));g=Md(k);e=yl(e,m);k=Ho(b,a,c,d,k,p)}}
-function Jo(b,a,c,d,e){if(!x((new Vg(null,new q(null,2,[wj,null,Sj,null],null),null)).call(null,c)))throw Error("Assert failed: (#{:hiccup :enlive} output-format)");if(F.a(c,wj))a:{c=jn(e);var f=J(e),g=Go(b,a,e,c,0),k=Md(0),l=Bl(new T(null,1,5,U,[d],null)),g=Ho(b,a,e,c,k,g);P(g,0,null);P(g,1,null);P(g,2,null);d=k;k=l;for(l=g;;){var m=l,p=P(m,0,null),l=P(m,1,null),g=P(m,2,null);if(null==m||F.a(d,l)){b=Eo;break a}if(null==g){b=un(Fl(yl(k,p)),new q(null,3,[Pk,dj,sk,0,Qi,f],null));break a}d=Md(l);k=yl(k,
-p);l=Ho(b,a,e,c,l,g)}}else if(F.a(c,Sj))a:for(c=jn(e),f=J(e),l=Go(b,a,e,c,0),k=Md(0),g=Ho(b,a,e,c,k,l),P(g,0,null),P(g,1,null),P(g,2,null),l=Al;;){var v=g,m=P(v,0,null),g=P(v,1,null),p=P(v,2,null);if(null==v||F.a(k,g)){b=Eo;break a}if(null==p){b=un(new q(null,2,[Z,d,Si,t(yl(l,m))],null),new q(null,3,[Pk,dj,sk,0,Qi,f],null));break a}k=Md(g);l=yl(l,m);g=Ho(b,a,e,c,g,p)}else b=null;return b}
-function Ko(b,a,c,d,e,f){var g=jn(f),k=J(f),l=Go(b,a,f,g,0);if(x(function(){var b=nd(l);return b?b:Fj.b(a)}()))return Eo;var m=re(ah,Fo,l),p=Fo.b(m),v=Io(b,ak.b(c),f,g,p);b=new q(null,3,[Pk,dj,sk,0,Qi,k],null);if(x(function(){var a=v instanceof hn;return a?a:(a=F.a(Z.b(c),rj))?Do(v):a}()))return Eo;switch(d instanceof R?d.ka:null){case "enlive":return un(new q(null,2,[Z,e,Si,yl(yl(Al,m),v)],null),b);case "hiccup":return un(Fl(yl(yl(Bl(new T(null,1,5,U,[e],null)),m),v)),b);default:return un(yl(yl(Al,
-m),v),b)}}function Lo(b,a,c,d,e){var f=cl.b(d),g=bd(f),k;if(k=F.a(Z.b(d),fi))k=(new Vg(null,new q(null,2,[rj,null,Bk,null],null),null)).call(null,Z.b(g)),k=x(k)?Ga(Fj.b(g))&&Ga(Fj.b(ak.b(g))):k;if(Ga(k))return Eo;a:for(k=dd;;)if(D(f))k=cd.a(k,C(f)),f=D(f);else{f=t(k);break a}f=qe(Tl,f);return F.a(uk.b(d),Il)?Ko(b,f,g,null,c,a):Ko(b,f,g,e,c,a)}
+function Io(b,a,c,d,e){var f=J(c),g=Go(b,a,c,d,e);e=Md(e);var k=Ho(b,a,c,d,e,g);P(k,0,null);P(k,1,null);P(k,2,null);g=e;for(e=Al;;){var l=k,m=P(l,0,null),k=P(l,1,null),p=P(l,2,null);if(null==l||F.a(g,k))return Eo;if(null==p)return un(yl(e,m),new q(null,3,[Qk,dj,sk,0,Qi,f],null));g=Md(k);e=yl(e,m);k=Ho(b,a,c,d,k,p)}}
+function Jo(b,a,c,d,e){if(!x((new Vg(null,new q(null,2,[wj,null,Sj,null],null),null)).call(null,c)))throw Error("Assert failed: (#{:hiccup :enlive} output-format)");if(F.a(c,wj))a:{c=jn(e);var f=J(e),g=Go(b,a,e,c,0),k=Md(0),l=Bl(new T(null,1,5,U,[d],null)),g=Ho(b,a,e,c,k,g);P(g,0,null);P(g,1,null);P(g,2,null);d=k;k=l;for(l=g;;){var m=l,p=P(m,0,null),l=P(m,1,null),g=P(m,2,null);if(null==m||F.a(d,l)){b=Eo;break a}if(null==g){b=un(Fl(yl(k,p)),new q(null,3,[Qk,dj,sk,0,Qi,f],null));break a}d=Md(l);k=yl(k,
+p);l=Ho(b,a,e,c,l,g)}}else if(F.a(c,Sj))a:for(c=jn(e),f=J(e),l=Go(b,a,e,c,0),k=Md(0),g=Ho(b,a,e,c,k,l),P(g,0,null),P(g,1,null),P(g,2,null),l=Al;;){var v=g,m=P(v,0,null),g=P(v,1,null),p=P(v,2,null);if(null==v||F.a(k,g)){b=Eo;break a}if(null==p){b=un(new q(null,2,[Z,d,Si,t(yl(l,m))],null),new q(null,3,[Qk,dj,sk,0,Qi,f],null));break a}k=Md(g);l=yl(l,m);g=Ho(b,a,e,c,g,p)}else b=null;return b}
+function Ko(b,a,c,d,e,f){var g=jn(f),k=J(f),l=Go(b,a,f,g,0);if(x(function(){var b=nd(l);return b?b:Fj.b(a)}()))return Eo;var m=re(ah,Fo,l),p=Fo.b(m),v=Io(b,ak.b(c),f,g,p);b=new q(null,3,[Qk,dj,sk,0,Qi,k],null);if(x(function(){var a=v instanceof hn;return a?a:(a=F.a(Z.b(c),rj))?Do(v):a}()))return Eo;switch(d instanceof R?d.ka:null){case "enlive":return un(new q(null,2,[Z,e,Si,yl(yl(Al,m),v)],null),b);case "hiccup":return un(Fl(yl(yl(Bl(new T(null,1,5,U,[e],null)),m),v)),b);default:return un(yl(yl(Al,
+m),v),b)}}function Lo(b,a,c,d,e){var f=dl.b(d),g=bd(f),k;if(k=F.a(Z.b(d),fi))k=(new Vg(null,new q(null,2,[rj,null,Bk,null],null),null)).call(null,Z.b(g)),k=x(k)?Ga(Fj.b(g))&&Ga(Fj.b(ak.b(g))):k;if(Ga(k))return Eo;a:for(k=dd;;)if(D(f))k=cd.a(k,C(f)),f=D(f);else{f=t(k);break a}f=qe(Tl,f);return F.a(uk.b(d),Il)?Ko(b,f,g,null,c,a):Ko(b,f,g,e,c,a)}
 function Mo(b,a,c){var d=hj.b(b);b=kj.b(b);var e=B.a(d,c);return F.a(Fj.b(e),!0)?Eo:F.a(uk.b(e),Il)?F.a(Z.b(e),rj)?(c=ak.b(e),b=jn(a),Io(d,c,a,b,0)):F.a(Z.b(e),Bk)?(c=ak.b(e),b=jn(a),a=Io(d,c,a,b,0),x(Do(a))?Eo:a):Lo(d,a,c,e,b):F.a(Z.b(e),rj)?Jo(d,ak.b(e),b,c,a):F.a(Z.b(e),Bk)?(a=Jo(d,ak.b(e),b,c,a),x(Do(a))?Eo:a):Lo(d,a,c,e,b)};function No(b,a){if(F.a(null,a))return b;if(F.a(Si,a))return Q.c(b,hj,em(hj.b(b)));if(F.a(gi,a))return Q.c(b,hj,fm(kj.b(b),hj.b(b)));if(F.a(vj,a))return Q.c(b,hj,gm(kj.b(b),hj.b(b)));throw Error([y("No matching clause: "),y(a)].join(""));}function Oo(b){for(var a=[],c=arguments.length,d=0;;)if(d<c)a.push(arguments[d]),d+=1;else break;return Po(arguments[0],arguments[1],2<a.length?new r(a.slice(2),0,null):null)}
-function Po(b,a,c){var d=null!=c&&(c.o&64||c.ga)?qe(Ne,c):c;if(!Dd(new Vg(null,new q(null,4,[null,null,gi,null,Si,null,vj,null],null),null),B.a(d,Oj)))throw Error("Assert failed: (contains? #{nil :tags :content :all} (get options :unhide))");if(!Dd(new Vg(null,new q(null,2,[null,null,dj,null],null),null),B.a(d,Pk)))throw Error("Assert failed: (contains? #{nil :memory} (get options :optimize))");c=B.c(d,ej,Wi.b(b));var e=B.c(d,Uj,!1),f=B.c(d,Pk,!1),g=B.a(d,Oj);b=No(b,g);return x(Xj.b(d))?(f=hj.b(b),
+function Po(b,a,c){var d=null!=c&&(c.o&64||c.ga)?qe(Ne,c):c;if(!Dd(new Vg(null,new q(null,4,[null,null,gi,null,Si,null,vj,null],null),null),B.a(d,Oj)))throw Error("Assert failed: (contains? #{nil :tags :content :all} (get options :unhide))");if(!Dd(new Vg(null,new q(null,2,[null,null,dj,null],null),null),B.a(d,Qk)))throw Error("Assert failed: (contains? #{nil :memory} (get options :optimize))");c=B.c(d,ej,Wi.b(b));var e=B.c(d,Uj,!1),f=B.c(d,Qk,!1),g=B.a(d,Oj);b=No(b,g);return x(Xj.b(d))?(f=hj.b(b),
 b=kj.b(b),d=Kl.b?Kl.b(b):Kl.call(null,b),b=Pn(f,c,a,e),b instanceof hn?(g=Fi.b(b),f=ln(f,a,jn(a),g,d),On(f,Zl(c),e),e=Dn(f,null),x(e)?a=C(e):(e=Bn(d,Dj,a,0,J(a)),a=Bn(d,c,e,0,J(a))),a=Wc(a,Sg.h(O([b,jd(a)],0)))):a=b,a):x(x(f)?Ga(e):f)?(d=Mo(b,a,c),x(Qo.b?Qo.b(d):Qo.call(null,d))?Pn(hj.b(b),c,a,e):d):Pn(hj.b(b),c,a,e)}function Ro(b,a,c,d,e,f){this.ea=b;this.yb=a;this.xb=c;this.N=d;this.G=e;this.w=f;this.o=2229667595;this.J=8192}h=Ro.prototype;h.L=function(b,a){return fb.c(this,a,null)};
 h.K=function(b,a,c){switch(a instanceof R?a.ka:null){case "grammar":return this.ea;case "start-production":return this.yb;case "output-format":return this.xb;default:return B.c(this.G,a,c)}};h.R=function(b,a,c){return gh(a,function(){return function(b){return gh(a,oh,""," ","",c,b)}}(this),"#instaparse.core.Parser{",", ","}",c,ne.a(new T(null,3,5,U,[new T(null,2,5,U,[hj,this.ea],null),new T(null,2,5,U,[Wi,this.yb],null),new T(null,2,5,U,[kj,this.xb],null)],null),this.G))};
 h.Wa=function(){return new Mf(0,this,3,new T(null,3,5,U,[hj,Wi,kj],null),fc(this.G))};h.V=function(){return this.N};h.$=function(){return 3+J(this.G)};h.S=function(){var b=this.w;return null!=b?b:this.w=b=Rd(this)};h.D=function(b,a){var c;c=x(a)?(c=this.constructor===a.constructor)?Lf(this,a):c:a;return x(c)?!0:!1};
@@ -3627,129 +3505,64 @@ h.W=function(b,a){return new Ro(this.ea,this.yb,this.xb,a,this.G,this.w)};h.Y=fu
 h.call=function(){var b=null,b=function(a,b,d,e,f,g,k,l){switch(arguments.length){case 2:return Oo(this,b);case 4:return Po(this,b,O([d,e],0));case 6:return Po(this,b,O([d,e,f,g],0));case 8:return Po(this,b,O([d,e,f,g,k,l],0))}throw Error("Invalid arity: "+arguments.length);};b.a=function(a,b){return Oo(this,b)};b.I=function(a,b,d,e){return Po(this,b,O([d,e],0))};b.ia=function(a,b,d,e,f,g){return Po(this,b,O([d,e,f,g],0))};b.ta=function(a,b,d,e,f,g,k,l){return Po(this,b,O([d,e,f,g,k,l],0))};return b}();
 h.apply=function(b,a){return this.call.apply(this,[this].concat(Oa(a)))};h.b=function(b){return Oo(this,b)};h.c=function(b,a,c){return Po(this,b,O([a,c],0))};h.M=function(b,a,c,d,e){return Po(this,b,O([a,c,d,e],0))};h.sa=function(b,a,c,d,e,f,g){return Po(this,b,O([a,c,d,e,f,g],0))};function So(b){return new Ro(hj.b(b),Wi.b(b),kj.b(b),null,gd.h(b,hj,O([Wi,kj],0)),null)}h.aa=!0;h.R=function(b,a){return Nb(a,um(this))};
 function To(b){for(var a=[],c=arguments.length,d=0;;)if(d<c)a.push(arguments[d]),d+=1;else break;return Uo(arguments[0],1<a.length?new r(a.slice(1),0,null):null)}
-function Uo(b,a){var c=null!=a&&(a.o&64||a.ga)?qe(Ne,a):a;if(!Dd(new Vg(null,new q(null,3,[null,null,Rj,null,$k,null],null),null),B.a(c,Mi)))throw Error("Assert failed: (contains? #{nil :ebnf :abnf} (get options :input-format))");if(!Dd(new Vg(null,new q(null,3,[null,null,wj,null,Sj,null],null),null),B.a(c,kj)))throw Error("Assert failed: (contains? #{nil :hiccup :enlive} (get options :output-format))");if(!function(){var a=B.a(c,fl);return null==a||Dd(Vo,a)||rd(a)&&Dd(a,hj)&&Dd(a,Wi)}())throw Error("Assert failed: (let [ws-parser (get options :auto-whitespace)] (or (nil? ws-parser) (contains? standard-whitespace-parsers ws-parser) (and (map? ws-parser) (contains? ws-parser :grammar) (contains? ws-parser :start-production))))");
-var d=B.c(c,Mi,Rj),e=function(){var b=d instanceof R?d.ka:null;switch(b){case "abnf":return Bo;case "ebnf":return x(B.a(c,el))?function(){return function(a,b){var c=ho;ho=!0;try{return ro(a,b)}finally{ho=c}}}(b,d,a,c,c):ro;default:throw Error([y("No matching clause: "),y(d)].join(""));}}(),f=B.c(c,kj,wj),g=B.c(c,ej,null),k="string"===typeof b?function(){var a=e.a?e.a(b,f):e.call(null,b,f);return x(g)?So(Q.c(a,Wi,g)):So(a)}():rd(b)?function(){var a=so(b,f,g);return So(a)}():td(b)?function(){var a=
-x(g)?g:b.b?b.b(0):b.call(null,0),a=so(qe(Ne,b),f,a);return So(a)}():null,l=B.a(c,fl),l=l instanceof R?B.a(Vo,l):l;if(x(l)){var m=null!=l&&(l.o&64||l.ga)?qe(Ne,l):l,l=B.a(m,hj),m=B.a(m,Wi);return Q.c(k,hj,im(hj.b(k),Wi.b(k),l,m))}return k}function Qo(b){return b instanceof hn||jd(b)instanceof hn}var Vo=new q(null,2,[Tk,To("whitespace \x3d #'\\s+'"),Zi,To("whitespace \x3d #'[,\\s]+'")],null);za();function Wo(b){return $e.a(V,We(function(a){P(a,0,null);return null!=P(a,1,null)},b))}var Xo=function Xo(a){return rd(a)?$e.a(V,X.a(function(a){var d=P(a,0,null);a=P(a,1,null);return F.a(d,Si)||F.a(d,Yh)?new T(null,2,5,U,[d,a],null):new T(null,2,5,U,[d,Xo(a)],null)},Wo(a))):od(a)?$e.a(dd,X.a(function(a){return Xo(a)},a)):a};function Yo(b){throw Error(b);};function Zo(b,a,c){if(Vd(c))return c=qe(Yd,X.a(b,c)),a.b?a.b(c):a.call(null,c);if(Ad(c))return c=ch(X.a(b,c)),a.b?a.b(c):a.call(null,c);if(sd(c))return c=Qa(function(a,c){return cd.a(a,b.b?b.b(c):b.call(null,c))},c,c),a.b?a.b(c):a.call(null,c);od(c)&&(c=$e.a(null==c?null:Va(c),X.a(b,c)));return a.b?a.b(c):a.call(null,c)}var $o=function $o(a,c){return Zo(He($o,a),a,c)};
+function Uo(b,a){var c=null!=a&&(a.o&64||a.ga)?qe(Ne,a):a;if(!Dd(new Vg(null,new q(null,3,[null,null,Rj,null,al,null],null),null),B.a(c,Mi)))throw Error("Assert failed: (contains? #{nil :ebnf :abnf} (get options :input-format))");if(!Dd(new Vg(null,new q(null,3,[null,null,wj,null,Sj,null],null),null),B.a(c,kj)))throw Error("Assert failed: (contains? #{nil :hiccup :enlive} (get options :output-format))");if(!function(){var a=B.a(c,gl);return null==a||Dd(Vo,a)||rd(a)&&Dd(a,hj)&&Dd(a,Wi)}())throw Error("Assert failed: (let [ws-parser (get options :auto-whitespace)] (or (nil? ws-parser) (contains? standard-whitespace-parsers ws-parser) (and (map? ws-parser) (contains? ws-parser :grammar) (contains? ws-parser :start-production))))");
+var d=B.c(c,Mi,Rj),e=function(){var b=d instanceof R?d.ka:null;switch(b){case "abnf":return Bo;case "ebnf":return x(B.a(c,fl))?function(){return function(a,b){var c=ho;ho=!0;try{return ro(a,b)}finally{ho=c}}}(b,d,a,c,c):ro;default:throw Error([y("No matching clause: "),y(d)].join(""));}}(),f=B.c(c,kj,wj),g=B.c(c,ej,null),k="string"===typeof b?function(){var a=e.a?e.a(b,f):e.call(null,b,f);return x(g)?So(Q.c(a,Wi,g)):So(a)}():rd(b)?function(){var a=so(b,f,g);return So(a)}():td(b)?function(){var a=
+x(g)?g:b.b?b.b(0):b.call(null,0),a=so(qe(Ne,b),f,a);return So(a)}():null,l=B.a(c,gl),l=l instanceof R?B.a(Vo,l):l;if(x(l)){var m=null!=l&&(l.o&64||l.ga)?qe(Ne,l):l,l=B.a(m,hj),m=B.a(m,Wi);return Q.c(k,hj,im(hj.b(k),Wi.b(k),l,m))}return k}function Qo(b){return b instanceof hn||jd(b)instanceof hn}var Vo=new q(null,2,[Uk,To("whitespace \x3d #'\\s+'"),Zi,To("whitespace \x3d #'[,\\s]+'")],null);za();function Wo(b){return $e.a(V,We(function(a){P(a,0,null);return null!=P(a,1,null)},b))}var Xo=function Xo(a){return rd(a)?$e.a(V,X.a(function(a){var d=P(a,0,null);a=P(a,1,null);return F.a(d,Si)||F.a(d,Yh)?new T(null,2,5,U,[d,a],null):new T(null,2,5,U,[d,Xo(a)],null)},Wo(a))):od(a)?$e.a(dd,X.a(function(a){return Xo(a)},a)):a};function Yo(b){throw Error(b);};function Zo(b,a,c){if(Vd(c))return c=qe(Yd,X.a(b,c)),a.b?a.b(c):a.call(null,c);if(Ad(c))return c=ch(X.a(b,c)),a.b?a.b(c):a.call(null,c);if(sd(c))return c=Qa(function(a,c){return cd.a(a,b.b?b.b(c):b.call(null,c))},c,c),a.b?a.b(c):a.call(null,c);od(c)&&(c=$e.a(null==c?null:Va(c),X.a(b,c)));return a.b?a.b(c):a.call(null,c)}var $o=function $o(a,c){return Zo(He($o,a),a,c)};
 function ap(b){return $o(function(a){return function(b){return rd(b)?$e.a(V,X.a(a,b)):b}}(function(a){var b=P(a,0,null);a=P(a,1,null);return"string"===typeof b?new T(null,2,5,U,[ae.b(b),a],null):new T(null,2,5,U,[b,a],null)}),b)};za();
 var bp=To("TYPE_EXPRESSION \x3d TYPE_NAME | SCALAR_TYPE | \x3c'('\x3e \x3cBS\x3e  TYPE_EXPRESSION \x3cBS\x3e \x3c')'\x3e | ARRAY_TYPE | UNION_TYPE\n                   SCALAR_TYPE \x3d 'string' | 'number' | 'integer' | 'boolean' | 'date-only' | 'time-only' | 'datetime-only' | 'datetime' | 'file' | 'nil'\n                   ARRAY_TYPE \x3d TYPE_EXPRESSION \x3c'[]'\x3e\n                   TYPE_NAME \x3d #\"(\\w[\\w\\d]+\\.)*\\w[\\w\\d]+\"\n                   UNION_TYPE \x3d TYPE_EXPRESSION \x3cBS\x3e (\x3c'|'\x3e \x3cBS\x3e TYPE_EXPRESSION)+\n                   BS \x3d #\"\\s*\"\n                   "),cp=
-function cp(a,c){for(;;){var d=bf(function(){return function(a){return we(a,Ok)}}(a,c),a);if(F.a(1,J(d))&&td(C(d))){var d=C(d),e=c;a=d;c=e}else{var e=F,f=C(d);return x(e.a?e.a(nj,f):e.call(null,nj,f))?new q(null,2,[Y,"union",Ai,af(function(a,c){return function(a){return cp(a,c)}}(a,c,e,f,d),wc(d))],null):x(e.a?e.a(Gk,f):e.call(null,Gk,f))?new q(null,1,[Y,bd(d)],null):x(e.a?e.a(Ri,f):e.call(null,Ri,f))?new q(null,2,[Y,"array",Vk,cp(bd(d),c)],null):x(e.a?e.a(qj,f):e.call(null,qj,f))?bd(d):Yo([y("Cannot parse type expression AST "),
-y(af(Id,d))].join(""))}}};function dp(b,a){try{return cp(bp.b?bp.b(b):bp.call(null,b),a)}catch(c){if(c instanceof Error)return null;throw c;}}var ep=new Vg(null,new q(null,11,["boolean",null,"string",null,"time-only",null,"any",null,"number",null,"datetime",null,"date-only",null,"integer",null,"datetime-only",null,"file",null,"nil",null],null),null),fp=function fp(a){var c=B.c(a,Qk,V),c=Sf(c),c=x(c)?c:dd;return rd(Y.b(a))?ne.a(c,fp(Y.b(a))):od(Y.b(a))?ne.a(c,Ze(X.a(fp,Y.b(a)))):c};
+function cp(a,c){for(;;){var d=bf(function(){return function(a){return we(a,Pk)}}(a,c),a);if(F.a(1,J(d))&&td(C(d))){var d=C(d),e=c;a=d;c=e}else{var e=F,f=C(d);return x(e.a?e.a(nj,f):e.call(null,nj,f))?new q(null,2,[Y,"union",Ai,af(function(a,c){return function(a){return cp(a,c)}}(a,c,e,f,d),wc(d))],null):x(e.a?e.a(Hk,f):e.call(null,Hk,f))?new q(null,1,[Y,bd(d)],null):x(e.a?e.a(Ri,f):e.call(null,Ri,f))?new q(null,2,[Y,"array",Wk,cp(bd(d),c)],null):x(e.a?e.a(qj,f):e.call(null,qj,f))?bd(d):Yo([y("Cannot parse type expression AST "),
+y(af(Id,d))].join(""))}}};function dp(b,a){try{return cp(bp.b?bp.b(b):bp.call(null,b),a)}catch(c){if(c instanceof Error)return null;throw c;}}var ep=new Vg(null,new q(null,11,["boolean",null,"string",null,"time-only",null,"any",null,"number",null,"datetime",null,"date-only",null,"integer",null,"datetime-only",null,"file",null,"nil",null],null),null),fp=function fp(a){var c=B.c(a,Rk,V),c=Sf(c),c=x(c)?c:dd;return rd(Y.b(a))?ne.a(c,fp(Y.b(a))):od(Y.b(a))?ne.a(c,Ze(X.a(fp,Y.b(a)))):c};
 function gp(b,a){var c=fp(a),c=$e.a(V,X.a(function(){return function(b){return new T(null,2,5,U,[b,b.b?b.b(a):b.call(null,a)],null)}}(c),c));return Sg.h(O([b,c],0))}
-function hp(b,a){return Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(gp(b,a),il,null!=il.b(a)?il.b(a):null),Zk,Zk.b(a)),tk,tk.b(a)),Sk,Sk.b(a)),Yh,Yh.b(a)),Oi,Oi.b(a)),Ui,Ui.b(a)),lk,lk.b(a)),Aj,Aj.b(a)),Hj,Hj.b(a)),qi,qi.b(a)),jl,jl.b(a)),Xh,Xh.b(a)),tj,tj.b(a)),Lk,Lk.b(a)),yk,yk.b(a)),cj,cj.b(a)),li,li.b(a)),mi,mi.b(a)),ol,ol.b(a)),si,si.b(a)),zk,zk.b(a)),ll,ll.b(a)),Zh,function(){var b=$e.a(dd,Zh.b(a));return nd(b)?null:b}()),di,di.a(a,F.a("object",
+function hp(b,a){return Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(Q.c(gp(b,a),jl,null!=jl.b(a)?jl.b(a):null),$k,$k.b(a)),tk,tk.b(a)),Tk,Tk.b(a)),Yh,Yh.b(a)),Oi,Oi.b(a)),Ui,Ui.b(a)),lk,lk.b(a)),Aj,Aj.b(a)),Hj,Hj.b(a)),qi,qi.b(a)),kl,kl.b(a)),Xh,Xh.b(a)),tj,tj.b(a)),Mk,Mk.b(a)),yk,yk.b(a)),cj,cj.b(a)),li,li.b(a)),mi,mi.b(a)),ol,ol.b(a)),si,si.b(a)),zk,zk.b(a)),ml,ml.b(a)),Zh,function(){var b=$e.a(dd,Zh.b(a));return nd(b)?null:b}()),di,di.a(a,F.a("object",
 Y.b(b))||null!=ai.b(b)?!0:null))}function ip(b){return F.a(b,"xml")||"string"===typeof b&&0==b.lastIndexOf("\x3c?xml",0)}function jp(b){return F.a(b,"json")||"string"===typeof b&&0==b.lastIndexOf("{",0)}function kp(b){b=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;B.a(b,$h);return Q.h(b,$h,dd,O([Ei,Me?Me(V):Le.call(null,V)],0))}function lp(b,a){return null!=C(We(function(a){return F.a(a,b)},a))}
-function mp(b,a){return null!=Vk.b(b)?Q.c(b,Vk,function(){var c=Vk.b(b);return np.a?np.a(c,a):np.call(null,c,a)}()):b}function op(b,a){return pp(b,a,ai)}function pp(b,a,c){return null!=(c.b?c.b(b):c.call(null,b))?Q.c(b,c,$e.a(V,X.a(function(b){var c=P(b,0,null);b=P(b,1,null);var f=np.a?np.a(b,a):np.call(null,b,a),g=rd(b)&&null!=il.b(b),k;k=be(c);k=ea(k);c=g?be(c):km(be(c),/\?$/,"");b=k&&!g?Q.c(f,il,!1):Q.c(f,il,g?il.b(b):!0);return new T(null,2,5,U,[c,b],null)},c.b?c.b(b):c.call(null,b)))):b}
-function qp(b,a){var c=pp(b,a,Qk),d=Qk.b(c);return null==d?c:Q.c(c,Qk,$e.a(V,X.a(function(){return function(a){var b=P(a,0,null);a=P(a,1,null);return new T(null,2,5,U,[ae.b(b),new q(null,1,[Y,Y.b(a)],null)],null)}}(c,d),d)))}
-var np=function np(a,c){var d=rd(a)&&null!=ai.b(a)?Q.c(a,ai,$e.a(V,X.a(function(a){var c=P(a,0,null);a=P(a,1,null);return new T(null,2,5,U,[be(c),a],null)},ai.b(a)))):a,e="string"===typeof d?d:function(){var a=Y.b(d);return x(a)?a:hi.b(d)}();if(null==e&&null==d)return new q(null,1,[Y,"any"],null);if(!rd(e)&&od(e))return Xo(hp(mp(qp(op(Q.c(d,Y,af(function(){return function(a){return np(a,c)}}(d,e),e)),c),c),c),d));if(x(B.a(ep,e)))return Xo(hp(qp(new q(null,2,[Y,e,Qk,Qk.b(d)],null),c),d));if(null==
-e&&null!=Vk.b(d)||F.a(e,"array"))return Xo(hp(qp(Q.c(new q(null,2,[Y,"array",Qk,Qk.b(d)],null),Vk,np(Vk.a(d,new q(null,1,[Y,"any"],null)),c)),c),d));if(null==e&&null!=ai.b(d)||F.a(e,"object"))return Xo(qp(op(hp(new q(null,3,[Y,"object",Qk,Qk.b(d),ai,ai.b(d)],null),d),c),c));if(F.a(e,"union"))return Xo(hp(qp(new q(null,3,[Y,"union",Qk,Qk.b(d),Ai,af(function(){return function(a){return np(a,c)}}(d,e),Ai.b(d))],null),c),d));if(x(function(){var a=null!=e;return a&&(a="string"===typeof e||e instanceof
-R)?(a=B.a(c,be(e)),x(a)?a:B.a(c,ae.b(e))):a}())){var f=function(){var a=B.a(c,be(e));return x(a)?a:B.a(c,ae.b(e))}();if(null==f)throw Error([y("Cannot find reference "),y(be(e))].join(""));if(x(lp(be(e),$h.b(c))))return Qe.a(Ei.b(c),function(a,c,d){return function(a){return Q.c(a,d,!0)}}(f,d,e)),Xo(hp(new q(null,1,[Y,Ii],null),d));var g=B.a(c,$h),g=Q.c(c,$h,cd.a(g,be(e)));return"string"===typeof d?Q.c(np(f,g),Yk,e):Xo(hp(mp(qp(op(Q.c(Q.c(rd(d)?d:V,Yk,e),Y,np(f,g)),g),g),g),d))}if(x(ip(e)))return F.a(Y.b(d),
-"xml")?d:new q(null,2,[Y,"xml",Si,e],null);if(x(jp(e)))return F.a(Y.b(d),"json")?d:new q(null,2,[Y,"json",Si,e],null);if(null==e&&null!=d)return Xo(hp(qp(new q(null,2,[Y,"any",Qk,Qk.b(d)],null),c),d));if(x(function(){var a="string"===typeof e;return a?dh(/^.*\?$/,e):a}()))return Xo(hp(qp(new q(null,3,[Y,"union",Qk,Qk.b(d),Ai,new T(null,2,5,U,[new q(null,1,[Y,km(e,"?","")],null),new q(null,1,[Y,"nil"],null)],null)],null),c),d));if(rd(e))return f=np(Q.c(d,Y,new T(null,1,5,U,[e],null)),c),Q.c(Xo(mp(qp(op(f,
-c),c),c)),Y,C(Y.b(f)));f=dp(e,c);return null!=f?Xo(hp(np(f,c),d)):Yo([y("Unknown type "),y(e),y(" in "),y(c)].join(""))},rp=function rp(a,c,d){if(rd(a)&&null!=Yk.b(a)){var e=Yk.b(a);a=gd.a(a,Yk);a=rp(a,c,d);return null!=B.a(c,e)?new q(null,2,[Y,ji,$i,a],null):a}return rd(a)&&F.a(Y.b(a),Ii)?(Qe.a(d,Gc),a):rd(a)?$e.a(V,X.a(function(a){var e=P(a,0,null);a=P(a,1,null);return new T(null,2,5,U,[e,rp(a,c,d)],null)},a)):od(a)?af(function(a){return rp(a,c,d)},a):a};
-function sp(b,a){if(null==b)throw Error("Cannot expand nil node");var c=kp(a),d=C(C(We(function(){return function(a){P(a,0,null);a=P(a,1,null);return F.a(a,b)}}(c),c))),e=Q.c(c,$h,null!=d?new T(null,1,5,U,[d],null):dd),c=np(b,e),c=null!=d?Q.c(c,Yk,d):c,d=Me?Me(0):Le.call(null,0),c=rp(c,function(){var a=Ei.b(e);return G.b?G.b(a):G.call(null,a)}(),d);return F.a(G.b?G.b(d):G.call(null,d),J(function(){var a=Ei.b(e);return G.b?G.b(a):G.call(null,a)}()))?c:new q(null,2,[Y,ji,$i,c],null)};var tp;if("undefined"===typeof up)var up={};for(var vp=Array(1),wp=0;;)if(wp<vp.length)vp[wp]=null,wp+=1;else break;(function(b){"undefined"===typeof tp&&(tp=function(a,b,d){this.Bb=a;this.Oc=b;this.ld=d;this.o=393216;this.J=0},tp.prototype.W=function(a,b){return new tp(this.Bb,this.Oc,b)},tp.prototype.V=function(){return this.ld},tp.jd=function(){return new T(null,3,5,U,[rl,yi,nl],null)},tp.rc=!0,tp.Yb="cljs.core.async/t_cljs$core$async22838",tp.Gc=function(a,b){return Nb(b,"cljs.core.async/t_cljs$core$async22838")});return new tp(b,!0,V)})(function(){return null});function xp(b,a){var c=re(ah,b,a);return Uc(c,Xe(function(a){return function(b){return a===b}}(c),a))}var yp=function yp(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;switch(c.length){case 1:return yp.b(arguments[0]);case 2:return yp.a(arguments[0],arguments[1]);default:return yp.h(arguments[0],arguments[1],new r(c.slice(2),0,null))}};yp.b=function(b){return b};
+function mp(b,a){return null!=Wk.b(b)?Q.c(b,Wk,function(){var c=Wk.b(b);return np.a?np.a(c,a):np.call(null,c,a)}()):b}function op(b,a){return pp(b,a,ai)}function pp(b,a,c){return null!=(c.b?c.b(b):c.call(null,b))?Q.c(b,c,$e.a(V,X.a(function(b){var c=P(b,0,null);b=P(b,1,null);var f=np.a?np.a(b,a):np.call(null,b,a),g=rd(b)&&null!=jl.b(b),k;k=be(c);k=ea(k);c=g?be(c):km(be(c),/\?$/,"");b=k&&!g?Q.c(f,jl,!1):Q.c(f,jl,g?jl.b(b):!0);return new T(null,2,5,U,[c,b],null)},c.b?c.b(b):c.call(null,b)))):b}
+function qp(b,a){var c=pp(b,a,Rk),d=Rk.b(c);return null==d?c:Q.c(c,Rk,$e.a(V,X.a(function(){return function(a){var b=P(a,0,null);a=P(a,1,null);return new T(null,2,5,U,[ae.b(b),new q(null,1,[Y,Y.b(a)],null)],null)}}(c,d),d)))}
+var np=function np(a,c){var d=rd(a)&&null!=ai.b(a)?Q.c(a,ai,$e.a(V,X.a(function(a){var c=P(a,0,null);a=P(a,1,null);return new T(null,2,5,U,[be(c),a],null)},ai.b(a)))):a,e="string"===typeof d?d:function(){var a=Y.b(d);return x(a)?a:hi.b(d)}();if(null==e&&null==d)return new q(null,1,[Y,"any"],null);if(!rd(e)&&od(e))return Xo(hp(mp(qp(op(Q.c(d,Y,af(function(){return function(a){return np(a,c)}}(d,e),e)),c),c),c),d));if(x(B.a(ep,e)))return Xo(hp(qp(new q(null,2,[Y,e,Rk,Rk.b(d)],null),c),d));if(null==
+e&&null!=Wk.b(d)||F.a(e,"array"))return Xo(hp(qp(Q.c(new q(null,2,[Y,"array",Rk,Rk.b(d)],null),Wk,np(Wk.a(d,new q(null,1,[Y,"any"],null)),c)),c),d));if(null==e&&null!=ai.b(d)||F.a(e,"object"))return Xo(qp(op(hp(new q(null,3,[Y,"object",Rk,Rk.b(d),ai,ai.b(d)],null),d),c),c));if(F.a(e,"union"))return Xo(hp(qp(new q(null,3,[Y,"union",Rk,Rk.b(d),Ai,af(function(){return function(a){return np(a,c)}}(d,e),Ai.b(d))],null),c),d));if(x(function(){var a=null!=e;return a&&(a="string"===typeof e||e instanceof
+R)?(a=B.a(c,be(e)),x(a)?a:B.a(c,ae.b(e))):a}())){var f=function(){var a=B.a(c,be(e));return x(a)?a:B.a(c,ae.b(e))}();if(null==f)throw Error([y("Cannot find reference "),y(be(e))].join(""));if(x(lp(be(e),$h.b(c))))return Qe.a(Ei.b(c),function(a,c,d){return function(a){return Q.c(a,d,!0)}}(f,d,e)),Xo(hp(new q(null,1,[Y,Ii],null),d));var g=B.a(c,$h),g=Q.c(c,$h,cd.a(g,be(e)));return"string"===typeof d?Q.c(np(f,g),Zk,e):Xo(hp(mp(qp(op(Q.c(Q.c(rd(d)?d:V,Zk,e),Y,np(f,g)),g),g),g),d))}if(x(ip(e)))return F.a(Y.b(d),
+"xml")?d:new q(null,2,[Y,"xml",Si,e],null);if(x(jp(e)))return F.a(Y.b(d),"json")?d:new q(null,2,[Y,"json",Si,e],null);if(null==e&&null!=d)return Xo(hp(qp(new q(null,2,[Y,"any",Rk,Rk.b(d)],null),c),d));if(x(function(){var a="string"===typeof e;return a?dh(/^.*\?$/,e):a}()))return Xo(hp(qp(new q(null,3,[Y,"union",Rk,Rk.b(d),Ai,new T(null,2,5,U,[new q(null,1,[Y,km(e,"?","")],null),new q(null,1,[Y,"nil"],null)],null)],null),c),d));if(rd(e))return f=np(Q.c(d,Y,new T(null,1,5,U,[e],null)),c),Q.c(Xo(mp(qp(op(f,
+c),c),c)),Y,C(Y.b(f)));f=dp(e,c);return null!=f?Xo(hp(np(f,c),d)):Yo([y("Unknown type "),y(e),y(" in "),y(c)].join(""))},rp=function rp(a,c,d){if(rd(a)&&null!=Zk.b(a)){var e=Zk.b(a);a=gd.a(a,Zk);a=rp(a,c,d);return null!=B.a(c,e)?new q(null,2,[Y,ji,$i,a],null):a}return rd(a)&&F.a(Y.b(a),Ii)?(Qe.a(d,Gc),a):rd(a)?$e.a(V,X.a(function(a){var e=P(a,0,null);a=P(a,1,null);return new T(null,2,5,U,[e,rp(a,c,d)],null)},a)):od(a)?af(function(a){return rp(a,c,d)},a):a};
+function sp(b,a){if(null==b)throw Error("Cannot expand nil node");var c=kp(a),d=C(C(We(function(){return function(a){P(a,0,null);a=P(a,1,null);return F.a(a,b)}}(c),c))),e=Q.c(c,$h,null!=d?new T(null,1,5,U,[d],null):dd),c=np(b,e),c=null!=d?Q.c(c,Zk,d):c,d=Me?Me(0):Le.call(null,0),c=rp(c,function(){var a=Ei.b(e);return G.b?G.b(a):G.call(null,a)}(),d);return F.a(G.b?G.b(d):G.call(null,d),J(function(){var a=Ei.b(e);return G.b?G.b(a):G.call(null,a)}()))?c:new q(null,2,[Y,ji,$i,c],null)};var tp;if("undefined"===typeof up)var up={};for(var vp=Array(1),wp=0;;)if(wp<vp.length)vp[wp]=null,wp+=1;else break;(function(b){"undefined"===typeof tp&&(tp=function(a,b,d){this.Bb=a;this.Oc=b;this.ld=d;this.o=393216;this.J=0},tp.prototype.W=function(a,b){return new tp(this.Bb,this.Oc,b)},tp.prototype.V=function(){return this.ld},tp.jd=function(){return new T(null,3,5,U,[rl,yi,Dk],null)},tp.rc=!0,tp.Yb="cljs.core.async/t_cljs$core$async22662",tp.Gc=function(a,b){return Nb(b,"cljs.core.async/t_cljs$core$async22662")});return new tp(b,!0,V)})(function(){return null});function xp(b,a){var c=re(ah,b,a);return Uc(c,Xe(function(a){return function(b){return a===b}}(c),a))}var yp=function yp(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;switch(c.length){case 1:return yp.b(arguments[0]);case 2:return yp.a(arguments[0],arguments[1]);default:return yp.h(arguments[0],arguments[1],new r(c.slice(2),0,null))}};yp.b=function(b){return b};
 yp.a=function(b,a){for(;;)if(J(a)<J(b)){var c=b;b=a;a=c}else return Qa(function(a,b){return function(a,c){return Dd(b,c)?a:md.a(a,c)}}(b,a),b,b)};yp.h=function(b,a,c){b=xp(function(a){return-J(a)},cd.h(c,a,O([b],0)));return Qa(yp,C(b),wc(b))};yp.C=function(b){var a=C(b),c=D(b);b=C(c);c=D(c);return yp.h(a,b,c)};yp.F=2;
 var zp=function zp(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),e+=1;else break;switch(c.length){case 1:return zp.b(arguments[0]);case 2:return zp.a(arguments[0],arguments[1]);default:return zp.h(arguments[0],arguments[1],new r(c.slice(2),0,null))}};zp.b=function(b){return b};zp.a=function(b,a){return J(b)<J(a)?Qa(function(b,d){return Dd(a,d)?md.a(b,d):b},b,b):Qa(md,b,a)};zp.h=function(b,a,c){return Qa(zp,b,cd.a(c,a))};
 zp.C=function(b){var a=C(b),c=D(b);b=C(c);c=D(c);return zp.h(a,b,c)};zp.F=2;function Ap(b,a){return J(b)<=J(a)&&De(function(b){return Dd(a,b)},b)};var Bp={},Cp=new Vg(null,new q(null,13,["json",null,"boolean",null,"string",null,"xml",null,"time-only",null,"any",null,"number",null,"datetime",null,"date-only",null,"integer",null,"datetime-only",null,"file",null,"nil",null],null),null);function Dp(b){return F.a("union",B.a(b,Y))}function Ep(b){return F.a("any",B.a(b,Y))}
-if("undefined"===typeof Fp)var Fp=function(){var b=Me?Me(V):Le.call(null,V),a=Me?Me(V):Le.call(null,V),c=Me?Me(V):Le.call(null,V),d=Me?Me(V):Le.call(null,V),e=B.c(V,Xk,Ih());return new Th(vc.a("datatype-expansion.canonical-form","lt-restriction"),function(){return function(a){return a}}(b,a,c,d,e),Ui,e,b,a,c,d)}();Vh(Fp,Hj,function(b,a,c){return c>=a?a>c?a:c:Yo("sub type has a weaker constraint for min-properties than base type")});Vh(Fp,qi,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for max-properties than base type")});
-Vh(Fp,il,function(b,a,c){return!0===a?F.a(a,c)?F.a(a,c):Yo("Error in required property, making optional base class required property"):x(a)?a:c});
-Vh(Fp,jl,function(b,a,c){b=We(Ha,new T(null,2,5,U,[a,c],null));var d=J(b);if(x(d.a?d.a(0,F):d.call(null,0,F)))return null;if(x(d.a?d.a(1,F):d.call(null,1,F)))return C(b);if(x(d.a?d.a(2,F):d.call(null,2,F)))return F.a(a,c)?a:Yo([y("Different values for discriminator constraint"),y(new T(null,2,5,U,[a,c],null))].join(""));throw Error([y("No matching clause: "),y(F)].join(""));});
+if("undefined"===typeof Fp)var Fp=function(){var b=Me?Me(V):Le.call(null,V),a=Me?Me(V):Le.call(null,V),c=Me?Me(V):Le.call(null,V),d=Me?Me(V):Le.call(null,V),e=B.c(V,Yk,Ih());return new Th(vc.a("datatype-expansion.canonical-form","lt-restriction"),function(){return function(a){return a}}(b,a,c,d,e),Ui,e,b,a,c,d)}();Vh(Fp,Hj,function(b,a,c){return c>=a?a>c?a:c:Yo("sub type has a weaker constraint for min-properties than base type")});Vh(Fp,qi,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for max-properties than base type")});
+Vh(Fp,jl,function(b,a,c){return!0===a?F.a(a,c)?F.a(a,c):Yo("Error in required property, making optional base class required property"):x(a)?a:c});
+Vh(Fp,kl,function(b,a,c){b=We(Ha,new T(null,2,5,U,[a,c],null));var d=J(b);if(x(d.a?d.a(0,F):d.call(null,0,F)))return null;if(x(d.a?d.a(1,F):d.call(null,1,F)))return C(b);if(x(d.a?d.a(2,F):d.call(null,2,F)))return F.a(a,c)?a:Yo([y("Different values for discriminator constraint"),y(new T(null,2,5,U,[a,c],null))].join(""));throw Error([y("No matching clause: "),y(F)].join(""));});
 Vh(Fp,Xh,function(b,a,c){b=We(Ha,new T(null,2,5,U,[a,c],null));var d=J(b);if(x(d.a?d.a(0,F):d.call(null,0,F)))return null;if(x(d.a?d.a(1,F):d.call(null,1,F)))return C(b);if(x(d.a?d.a(2,F):d.call(null,2,F)))return F.a(a,c)?a:Yo([y("Different values for discriminator-value constraint"),y(new T(null,2,5,U,[a,c],null))].join(""));throw Error([y("No matching clause: "),y(F)].join(""));});Vh(Fp,tj,function(b,a,c){return c>=a?a>c?a:c:Yo("sub type has a weaker constraint for min-length than base type")});
-Vh(Fp,Lk,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for max-length than base type")});Vh(Fp,yk,function(b,a,c){return c>=a?a>c?a:c:Yo("sub type has a weaker constraint for minimum than base type")});Vh(Fp,cj,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for maximum than base type")});
+Vh(Fp,Mk,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for max-length than base type")});Vh(Fp,yk,function(b,a,c){return c>=a?a>c?a:c:Yo("sub type has a weaker constraint for minimum than base type")});Vh(Fp,cj,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for maximum than base type")});
 Vh(Fp,li,function(b,a,c){b=We(Ha,new T(null,2,5,U,[a,c],null));var d=J(b);if(x(d.a?d.a(0,F):d.call(null,0,F)))return null;if(x(d.a?d.a(1,F):d.call(null,1,F)))return C(b);if(x(d.a?d.a(2,F):d.call(null,2,F)))return F.a(a,c)?a:Yo([y("Different values for format constraint"),y(new T(null,2,5,U,[a,c],null))].join(""));throw Error([y("No matching clause: "),y(F)].join(""));});
 Vh(Fp,ol,function(b,a,c){b=We(Ha,new T(null,2,5,U,[a,c],null));var d=J(b);if(x(d.a?d.a(0,F):d.call(null,0,F)))return null;if(x(d.a?d.a(1,F):d.call(null,1,F)))return C(b);if(x(d.a?d.a(2,F):d.call(null,2,F)))return F.a(a,c)?a:Yo([y("Different values for pattern constraint"),y(new T(null,2,5,U,[a,c],null))].join(""));throw Error([y("No matching clause: "),y(F)].join(""));});Vh(Fp,si,function(b,a,c){return!1===a||F.a(a,c)?x(a)?c:a:Yo("sub type has a weaker constraint for unique-items than base type")});
-Vh(Fp,zk,function(b,a,c){return c>=a?a>c?a:c:Yo("sub type has a weaker constraint for min-items than base type")});Vh(Fp,ll,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for max-items than base type")});Vh(Fp,Zh,function(b,a,c){return x(Ap($e.a(Xg,c),$e.a(Xg,a)))?yp.a($e.a(Xg,a),$e.a(Xg,c)):Yo("sub type has a weaker constraint for enum-values than base type")});Vh(Fp,di,function(b,a,c){return!0===a||F.a(a,c)?x(a)?c:a:Yo("sub type has a weaker constraint for additional-properties than base type")});
+Vh(Fp,zk,function(b,a,c){return c>=a?a>c?a:c:Yo("sub type has a weaker constraint for min-items than base type")});Vh(Fp,ml,function(b,a,c){return c<=a?a<c?a:c:Yo("sub type has a weaker constraint for max-items than base type")});Vh(Fp,Zh,function(b,a,c){return x(Ap($e.a(Xg,c),$e.a(Xg,a)))?yp.a($e.a(Xg,a),$e.a(Xg,c)):Yo("sub type has a weaker constraint for enum-values than base type")});Vh(Fp,di,function(b,a,c){return!0===a||F.a(a,c)?x(a)?c:a:Yo("sub type has a weaker constraint for additional-properties than base type")});
 Vh(Fp,Y,function(b,a,c){return F.a(a,"union")||F.a(c,"union")?"union":F.a(a,c)?a:Yo(""+y("Cannot compute min value of different sub types"))});Vh(Fp,Ui,function(b,a,c){return x(c)?c:a});function Gp(b,a){for(var c=V,d=$e.a(Xg,ne.a(Sf(b),Sf(a)));;){if(nd(d))return c;var e=C(d),f=B.a(b,e),g=B.a(a,e),c=null==f||null==g?Q.c(c,e,x(f)?f:g):Q.c(c,e,Fp.c?Fp.c(e,f,g):Fp.call(null,e,f,g)),d=wc(d)}}
-var Hp=new q(null,4,[mj,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,Hj);a=B.a(a,qi);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(mj),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));}return!0},Dk,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,tj);a=B.a(a,Lk);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(Dk),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));
-}return!0},zj,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,yk);a=B.a(a,cj);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(zj),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));}return!0},Zj,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,zk);a=B.a(a,ll);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(Zj),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));}return!0}],
+var Hp=new q(null,4,[mj,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,Hj);a=B.a(a,qi);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(mj),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));}return!0},Ek,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,tj);a=B.a(a,Mk);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(Ek),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));
+}return!0},zj,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,yk);a=B.a(a,cj);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(zj),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));}return!0},Zj,function(b){var a=null!=b&&(b.o&64||b.ga)?qe(Ne,b):b;b=B.a(a,zk);a=B.a(a,ml);if(null!=b&&null!=a){if(b<=a)return!0;throw Error([y("Consistency check failure for property "),y(Zj),y(" and values ["),y(b),y(" "),y(a),y("]")].join(""));}return!0}],
 null);function Ip(b){for(var a=t(Hp),c=null,d=0,e=0;;)if(e<d){var f=c.P(null,e);P(f,0,null);f=P(f,1,null);f.b?f.b(b):f.call(null,b);e+=1}else if(a=t(a))ud(a)?(d=Zb(a),a=$b(a),c=d,d=J(d)):(c=C(a),P(c,0,null),c=P(c,1,null),c.b?c.b(b):c.call(null,b),a=D(a),c=null,d=0),e=0;else break;return b}
 function Jp(b,a){return x(function(){var c=Ep(b);return x(c)?Ga(Ep(a)):c}())?new T(null,2,5,U,["any",Vi],null):x(function(){var c=Ga(Ep(b));return c?Ep(a):c}())?new T(null,2,5,U,[Vi,"any"],null):x(function(){var c=Dp(b);return x(c)?Ga(Dp(a)):c}())?new T(null,2,5,U,["union",Vi],null):x(function(){var c=Ga(Dp(b));return c?Dp(a):c}())?new T(null,2,5,U,[Vi,"union"],null):new T(null,2,5,U,[Y.b(b),Y.b(a)],null)}
-if("undefined"===typeof Kp)var Kp=function(){var b=Me?Me(V):Le.call(null,V),a=Me?Me(V):Le.call(null,V),c=Me?Me(V):Le.call(null,V),d=Me?Me(V):Le.call(null,V),e=B.c(V,Xk,Ih());return new Th(vc.a("datatype-expansion.canonical-form","lt"),function(){return function(a,b){return Jp(a,b)}}(b,a,c,d,e),Ui,e,b,a,c,d)}();Vh(Kp,new T(null,2,5,U,["any","any"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["any",Vi],null),function(b,a){return Ip(Gp(Q.c(b,Y,B.a(a,Y)),a))});
+if("undefined"===typeof Kp)var Kp=function(){var b=Me?Me(V):Le.call(null,V),a=Me?Me(V):Le.call(null,V),c=Me?Me(V):Le.call(null,V),d=Me?Me(V):Le.call(null,V),e=B.c(V,Yk,Ih());return new Th(vc.a("datatype-expansion.canonical-form","lt"),function(){return function(a,b){return Jp(a,b)}}(b,a,c,d,e),Ui,e,b,a,c,d)}();Vh(Kp,new T(null,2,5,U,["any","any"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["any",Vi],null),function(b,a){return Ip(Gp(Q.c(b,Y,B.a(a,Y)),a))});
 Vh(Kp,new T(null,2,5,U,[Vi,"any"],null),function(b,a){return Ip(Gp(b,Q.c(a,Y,B.a(b,Y))))});Vh(Kp,new T(null,2,5,U,["boolean","boolean"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["datetime","datetime"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["datetime-only","datetime-only"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["date-only","date-only"],null),function(b,a){return Ip(Gp(b,a))});
 Vh(Kp,new T(null,2,5,U,["number","number"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["integer","integer"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["number","integer"],null),function(b,a){return Ip(Gp(Q.c(b,Y,"integer"),Q.c(a,Y,"integer")))});Vh(Kp,new T(null,2,5,U,["string","string"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["nil","nil"],null),function(b,a){return Ip(Gp(b,a))});
-Vh(Kp,new T(null,2,5,U,["file","file"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["json","json"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["xml","xml"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["array","array"],null),function(b,a){var c;c=Q.c(Vk.b(a),Y,Vk.b(b));c=Lp.b?Lp.b(c):Lp.call(null,c);var d=Gp(gd.a(b,Vk),gd.a(a,Vk)),d=Ip(d);return Q.c(d,Vk,c)});
+Vh(Kp,new T(null,2,5,U,["file","file"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["json","json"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["xml","xml"],null),function(b,a){return Ip(Gp(b,a))});Vh(Kp,new T(null,2,5,U,["array","array"],null),function(b,a){var c;c=Q.c(Wk.b(a),Y,Wk.b(b));c=Lp.b?Lp.b(c):Lp.call(null,c);var d=Gp(gd.a(b,Wk),gd.a(a,Wk)),d=Ip(d);return Q.c(d,Wk,c)});
 Vh(Kp,new T(null,2,5,U,["object","object"],null),function(b,a){var c=ai.b(b),d=$e.a(Xg,Sf(c)),e=ai.b(a),f=$e.a(Xg,Sf(e)),g=yp.a(d,f),k=Gp(gd.a(b,ai),gd.a(a,ai)),l=Ip(k),m=$e.a(V,af(function(a,b,c){return function(b){var d=U,e;e=B.a(a,b);var f=B.a(c,b);e=Kp.a?Kp.a(e,f):Kp.call(null,e,f);return new T(null,2,5,d,[b,e],null)}}(c,d,e,f,g,k,l),g)),p=$e.a(V,af(function(a){return function(b){return new T(null,2,5,U,[b,B.a(a,b)],null)}}(c,d,e,f,g,k,l,m),zp.a(d,g))),c=$e.a(V,af(function(a,b,c){return function(a){return new T(null,
 2,5,U,[a,B.a(c,a)],null)}}(c,d,e,f,g,k,l,m,p),zp.a(f,g))),m=Sg.h(O([p,m,c],0));return Q.c(l,ai,m)});Vh(Kp,new T(null,2,5,U,["union","union"],null),function(b,a){var c=Ai.b(b),d=Ai.b(a),c=nd(d)?c:nd(c)?d:Ze(X.a(function(a,b){return function(c){return X.a(function(){return function(a){return Kp.a?Kp.a(a,c):Kp.call(null,a,c)}}(a,b),a)}}(c,d),d)),d=Gp(gd.a(b,Ai),gd.a(a,Ai));return Q.c(d,Ai,c)});
-Vh(Kp,new T(null,2,5,U,["union",Vi],null),function(b,a){var c=Ai.b(b),c=X.a(function(){return function(b){return Kp.a?Kp.a(b,a):Kp.call(null,b,a)}}(c),c),d=Gp(gd.a(b,Ai),gd.a(gd.a(a,Vk),ai));return Q.c(d,Ai,c)});Vh(Kp,new T(null,2,5,U,[Vi,"union"],null),function(b,a){var c=Ai.b(a),c=X.a(function(){return function(a){return Kp.a?Kp.a(a,b):Kp.call(null,a,b)}}(c),c),d=Gp(gd.a(gd.a(gd.a(b,Vk),ai),Ai),gd.a(gd.a(gd.a(a,Vk),ai),Ai));return Q.c(d,Ai,c)});
+Vh(Kp,new T(null,2,5,U,["union",Vi],null),function(b,a){var c=Ai.b(b),c=X.a(function(){return function(b){return Kp.a?Kp.a(b,a):Kp.call(null,b,a)}}(c),c),d=Gp(gd.a(b,Ai),gd.a(gd.a(a,Wk),ai));return Q.c(d,Ai,c)});Vh(Kp,new T(null,2,5,U,[Vi,"union"],null),function(b,a){var c=Ai.b(a),c=X.a(function(){return function(a){return Kp.a?Kp.a(a,b):Kp.call(null,a,b)}}(c),c),d=Gp(gd.a(gd.a(gd.a(b,Wk),ai),Ai),gd.a(gd.a(gd.a(a,Wk),ai),Ai));return Q.c(d,Ai,c)});
 Vh(Kp,Ui,function(b,a){throw new Bp.rd([y("Invalid inheriance "),y(Y.b(b)),y(" -\x3e "),y(Y.b(a))].join(""));});
-if("undefined"===typeof Lp)var Lp=function(){var b=Me?Me(V):Le.call(null,V),a=Me?Me(V):Le.call(null,V),c=Me?Me(V):Le.call(null,V),d=Me?Me(V):Le.call(null,V),e=B.c(V,Xk,Ih());return new Th(vc.a("datatype-expansion.canonical-form","canonical-form"),function(){return function(a){a=null!=a&&(a.o&64||a.ga)?qe(Ne,a):a;a=B.a(a,Y);return rd(a)?Ej:od(a)?xk:x(B.a(Cp,a))?al:a}}(b,a,c,d,e),Ui,e,b,a,c,d)}();Vh(Lp,al,function(b){return Ip(b)});
-Vh(Lp,"array",function(b){var a=function(){var a=Vk.b(b);return Lp.b?Lp.b(a):Lp.call(null,a)}(),c=Ip(b);return x(Dp(a))?(c=X.a(function(a,b){return function(a){return Q.c(b,Vk,a)}}(a,c),Ai.b(a)),Q.c(a,Ai,c)):Q.c(c,Vk,a)});function Mp(b,a,c){return X.a(function(b){var e=ai.b(b),e=Q.c(e,a,c);return Q.c(b,ai,e)},b)}
-function Np(b,a,c){return Ze(af(function(b){var e=ai.b(b),f=il.b(c),g=Ai.b(c);return af(function(){return function(a){return Q.c(b,ai,a)}}(e,f,g),af(function(b){return function(c){return Q.c(b,a,c)}}(e,f,g),af(function(a,b){return function(a){return Q.c(a,il,b)}}(e,f,g),g)))},b))}function Op(b,a){return Q.c(Q.c(gd.a(a,ai),Y,"union"),Ai,b)}
-Vh(Lp,"object",function(b){for(var a=ai.b(b),a=$e.a(V,af(function(){return function(a){var b=P(a,0,null);a=P(a,1,null);ea(b)&&null==il.b(a)&&(b=km(b,"?",""),a=Q.c(a,il,!1));return new T(null,2,5,U,[b,a],null)}}(a),a)),c=new T(null,1,5,U,[Q.c(b,ai,V)],null);;){if(nd(a))return Ip(F.a(1,J(c))?C(c):Op(c,b));var d=C(a),e=P(d,0,null),d=P(d,1,null),d=Lp.b?Lp.b(d):Lp.call(null,d);x(Dp(d))?(a=wc(a),c=Np(c,e,d)):(a=wc(a),c=Mp(c,e,d))}});
-var Pp=function Pp(a){return null!=ai.b(a)?"object":null!=Vk.b(a)?"array":"string"===typeof Y.b(a)?Y.b(a):rd(Y.b(a))?Pp(Y.b(a)):od(Y.b(a))?(a=C(We(Ha,X.a(function(a){try{return Pp(a)}catch(d){if(d instanceof Error)return null;throw d;}},Y.b(a)))),null==a?Yo("Cannot find top level class for node, not in expanded form"):a):Yo("Cannot find top level class for node, not in expanded form")};
-Vh(Lp,Ej,function(b){var a=Pp(b),c;c=Y.b(b);c=Lp.b?Lp.b(c):Lp.call(null,c);b=Q.c(b,Y,a);a=x(F.a?F.a("array",a):F.call(null,"array",a))?Q.c(b,Vk,B.c(b,Vk,new q(null,1,[Y,"any"],null))):x(F.a?F.a("object",a):F.call(null,"object",a))?Q.c(b,ai,B.c(b,ai,V)):x(F.a?F.a("union",a):F.call(null,"union",a))?Q.c(b,Ai,B.c(b,Ai,dd)):b;a=Lp.b?Lp.b(a):Lp.call(null,a);return Ip(Kp.a?Kp.a(c,a):Kp.call(null,c,a))});
-Vh(Lp,xk,function(b){var a=Pp(b),c=Q.c(b,Y,a),d=x(F.a?F.a("array",a):F.call(null,"array",a))?Q.c(c,Vk,B.c(c,Vk,new q(null,1,[Y,"any"],null))):x(F.a?F.a("object",a):F.call(null,"object",a))?Q.c(c,ai,B.c(c,ai,dd)):x(F.a?F.a("union",a):F.call(null,"union",a))?Q.c(c,Ai,B.c(c,Ai,dd)):c;return function(){var e=Ip(Qa(function(){return function(a,b){var c=Lp.b?Lp.b(b):Lp.call(null,b);return Kp.a?Kp.a(c,a):Kp.call(null,c,a)}}(a,c,d),d,Y.b(b)));return Lp.b?Lp.b(e):Lp.call(null,e)}()});
+if("undefined"===typeof Lp)var Lp=function(){var b=Me?Me(V):Le.call(null,V),a=Me?Me(V):Le.call(null,V),c=Me?Me(V):Le.call(null,V),d=Me?Me(V):Le.call(null,V),e=B.c(V,Yk,Ih());return new Th(vc.a("datatype-expansion.canonical-form","canonical-form"),function(){return function(a){a=null!=a&&(a.o&64||a.ga)?qe(Ne,a):a;a=B.a(a,Y);return rd(a)?Ej:od(a)?xk:x(B.a(Cp,a))?bl:a}}(b,a,c,d,e),Ui,e,b,a,c,d)}();Vh(Lp,bl,function(b){return Ip(b)});
+Vh(Lp,"array",function(b){var a=function(){var a=Wk.b(b);return Lp.b?Lp.b(a):Lp.call(null,a)}(),c=Ip(b);return x(Dp(a))?(c=X.a(function(a,b){return function(a){return Q.c(b,Wk,a)}}(a,c),Ai.b(a)),Q.c(a,Ai,c)):Q.c(c,Wk,a)});function Mp(b,a,c){return X.a(function(b){var e=ai.b(b),e=Q.c(e,a,c);return Q.c(b,ai,e)},b)}
+function Np(b,a,c){return Ze(af(function(b){var e=ai.b(b),f=jl.b(c),g=Ai.b(c);return af(function(){return function(a){return Q.c(b,ai,a)}}(e,f,g),af(function(b){return function(c){return Q.c(b,a,c)}}(e,f,g),af(function(a,b){return function(a){return Q.c(a,jl,b)}}(e,f,g),g)))},b))}function Op(b,a){return Q.c(Q.c(gd.a(a,ai),Y,"union"),Ai,b)}
+Vh(Lp,"object",function(b){for(var a=ai.b(b),a=$e.a(V,af(function(){return function(a){var b=P(a,0,null);a=P(a,1,null);ea(b)&&null==jl.b(a)&&(b=km(b,"?",""),a=Q.c(a,jl,!1));return new T(null,2,5,U,[b,a],null)}}(a),a)),c=new T(null,1,5,U,[Q.c(b,ai,V)],null);;){if(nd(a))return Ip(F.a(1,J(c))?C(c):Op(c,b));var d=C(a),e=P(d,0,null),d=P(d,1,null),d=Lp.b?Lp.b(d):Lp.call(null,d);x(Dp(d))?(a=wc(a),c=Np(c,e,d)):(a=wc(a),c=Mp(c,e,d))}});
+var Pp=function Pp(a){return null!=ai.b(a)?"object":null!=Wk.b(a)?"array":"string"===typeof Y.b(a)?Y.b(a):rd(Y.b(a))?Pp(Y.b(a)):od(Y.b(a))?(a=C(We(Ha,X.a(function(a){try{return Pp(a)}catch(d){if(d instanceof Error)return null;throw d;}},Y.b(a)))),null==a?Yo("Cannot find top level class for node, not in expanded form"):a):Yo("Cannot find top level class for node, not in expanded form")};
+Vh(Lp,Ej,function(b){var a=Pp(b),c;c=Y.b(b);c=Lp.b?Lp.b(c):Lp.call(null,c);b=Q.c(b,Y,a);a=x(F.a?F.a("array",a):F.call(null,"array",a))?Q.c(b,Wk,B.c(b,Wk,new q(null,1,[Y,"any"],null))):x(F.a?F.a("object",a):F.call(null,"object",a))?Q.c(b,ai,B.c(b,ai,V)):x(F.a?F.a("union",a):F.call(null,"union",a))?Q.c(b,Ai,B.c(b,Ai,dd)):b;a=Lp.b?Lp.b(a):Lp.call(null,a);return Ip(Kp.a?Kp.a(c,a):Kp.call(null,c,a))});
+Vh(Lp,xk,function(b){var a=Pp(b),c=Q.c(b,Y,a),d=x(F.a?F.a("array",a):F.call(null,"array",a))?Q.c(c,Wk,B.c(c,Wk,new q(null,1,[Y,"any"],null))):x(F.a?F.a("object",a):F.call(null,"object",a))?Q.c(c,ai,B.c(c,ai,dd)):x(F.a?F.a("union",a):F.call(null,"union",a))?Q.c(c,Ai,B.c(c,Ai,dd)):c;return function(){var e=Ip(Qa(function(){return function(a,b){var c=Lp.b?Lp.b(b):Lp.call(null,b);return Kp.a?Kp.a(c,a):Kp.call(null,c,a)}}(a,c,d),d,Y.b(b)));return Lp.b?Lp.b(e):Lp.call(null,e)}()});
 Vh(Lp,"union",function(b){return Q.c(b,Ai,Ze($g(X.a(function(a){return x(Dp(a))?Ai.b(a):a},Ze(X.a(Lp,Ai.b(b)))))))});za();ba("datatype_expansion.js.expandedForm",function(b,a,c){try{var d=ap(Fh(b)),e=$e.a(V,X.a(function(){return function(a){var b=P(a,0,null);a=P(a,1,null);return new T(null,2,5,U,[b,ap(a)],null)}}(d),Fh(a))),f=sp(Fh(d),Fh(e)),g=Ch(f);null!=c&&(c.a?c.a(null,g):c.call(null,null,g));return g}catch(k){if(k instanceof Error&&null!=c)return c.a?c.a(k,null):c.call(null,k,null);throw k;}});
 ba("datatype_expansion.js.canonicalForm",function(b,a){try{var c=ap(Fh(b)),d=Lp.b?Lp.b(c):Lp.call(null,c),e=Ch(d);null!=a&&(a.a?a.a(null,e):a.call(null,null,e));return e}catch(f){if(f instanceof Error&&null!=a)return a.a?a.a(f,null):a.call(null,f,null);throw f;}});
-})();
-;"use strict";var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor}}();function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++){s(r[o])}return s})({1:[function(require,module,exports){function _isObject(obj){return obj===Object(obj)}function _objectToArray(obj){if(Array.isArray(obj)){return obj}return Object.keys(obj).map(function(key){if(_isObject(obj[key])){obj[key].key=key}return obj[key]})}function _arrayToObject(arr){return arr.reduce(function(acc,cur){Object.keys(cur).forEach(function(key){acc[key]=cur[key]});return acc},{})}function recursiveObjectToArray(obj){if(_isObject(obj)){Object.keys(obj).forEach(function(key){var value=obj[key];if(_isObject(obj)&&["responses","body","queryParameters","headers","properties","baseUriParameters","annotations","uriParameters"].indexOf(key)!==-1){obj[key]=_objectToArray(value)}recursiveObjectToArray(value)})}else if(Array.isArray(obj)){obj.forEach(function(value){recursiveObjectToArray(value)})}return obj}function arraysToObjects(ramlObj){["types","traits","resourceTypes","annotationTypes","securitySchemes"].forEach(function(key){if(ramlObj[key]){ramlObj[key]=_arrayToObject(ramlObj[key])}});return ramlObj}module.exports={arraysToObjects:arraysToObjects,recursiveObjectToArray:recursiveObjectToArray}},{}],2:[function(require,module,exports){var raml2obj=require("./");if(typeof window==="undefined"){self.raml2obj=raml2obj}else{window.raml2obj=raml2obj}},{"./":4}],3:[function(require,module,exports){function _isObject(obj){return obj===Object(obj)}function makeConsistent(obj,types){if(Array.isArray(obj)){obj.forEach(function(value){makeConsistent(value,types)})}else if(_isObject(obj)){if(obj.type){if(Array.isArray(obj.type)){obj.type=obj.type[0]}if(types&&types[obj.type]){var typedef=types[obj.type];var objectExamples=[];if(obj.examples&&typedef.examples){objectExamples=obj.examples}if(obj.example&&typedef.example){objectExamples.push(obj.example)}var objectProperties=obj.properties;var objectItems=obj.items;var objectDefault=obj.default;var objectDescription=obj.description;var objectEnum=obj.enum;Object.assign(obj,types[obj.type]);obj.__typeConsistent=true;if(objectExamples.length){if(!obj.examples||!obj.examples.length){obj.examples=[]}objectExamples.forEach(function(item){obj.examples.push(item)})}if(objectProperties){Object.assign(obj.properties,objectProperties)}if(objectItems){Object.assign(obj.items,objectItems)}if(objectDefault){obj.default=objectDefault}if(objectDescription){obj.description=objectDescription}if(objectEnum){obj.enum=objectEnum}}}if(obj.items&&types&&types[obj.items]){obj.items=types[obj.items]}if(obj.examples&&obj.examples.length){obj.examples=obj.examples.map(function(example){return example.value?example.value:example})}if(obj.structuredExample){if(typeof obj.examples==="undefined"){obj.examples=[]}obj.examples.push(obj.structuredExample.value);delete obj.example;delete obj.structuredExample}var keys=Object.keys(obj);keys.forEach(function(key){if(obj.__typeConsistent&&["properties","items"].indexOf(key)!==-1){return}makeConsistent(obj[key],types)})}return obj}module.exports=makeConsistent},{}],4:[function(require,module,exports){"use strict";var makeConsistent=require("./consistency-helpers");var _require=require("./arrays-objects-helpers"),arraysToObjects=_require.arraysToObjects,recursiveObjectToArray=_require.recursiveObjectToArray;var Raml2Object=function(){function Raml2Object(object){_classCallCheck(this,Raml2Object);this.raml=object;this.debug=false}_createClass(Raml2Object,[{key:"mark",value:function mark(title){if(this.debug&&performance&&performance.mark){performance.mark(title)}}},{key:"getMeasurement",value:function getMeasurement(){if(!this.debug){return[]}try{performance.measure("raml2obj-enhace","raml2obj-enhace-start","raml2obj-enhace-end");performance.measure("raml2obj-arrays-to-object","raml2obj-arrays-to-object-start","raml2obj-arrays-to-object-end");performance.measure("raml2obj-expanding-root-types","raml2obj-expanding-root-types-start","raml2obj-expanding-root-types-end");performance.measure("raml2obj-make-consistent-root-types","raml2obj-make-consistent-root-types-start","raml2obj-make-consistent-root-types-end");performance.measure("raml2obj-make-consistent-raml","raml2obj-make-consistent-raml-start","raml2obj-make-consistent-raml-end");performance.measure("raml2obj-recursive-object-to-array","raml2obj-recursive-object-to-array-start","raml2obj-recursive-object-to-array-end");performance.measure("raml2obj-apply-raml-types","raml2obj-apply-raml-types-start","raml2obj-apply-raml-types-end")}catch(e){return[]}return performance.getEntriesByType("measure")}},{key:"enhance",value:function enhance(){var _this=this;this.mark("raml2obj-enhace-start");this.mark("raml2obj-arrays-to-object-start");arraysToObjects(this.raml);this.mark("raml2obj-arrays-to-object-end");this.mark("raml2obj-expanding-root-types-start");return this.expandRootTypes(this.raml.types).then(function(expanded){_this.mark("raml2obj-expanding-root-types-end");_this.mark("raml2obj-make-consistent-root-types-start");var types=makeConsistent(expanded);_this.mark("raml2obj-make-consistent-root-types-end");delete _this.raml.types;_this.mark("raml2obj-make-consistent-raml-start");makeConsistent(_this.raml,types);_this.mark("raml2obj-make-consistent-raml-end");_this.mark("raml2obj-recursive-object-to-array-start");recursiveObjectToArray(_this.raml);_this.mark("raml2obj-recursive-object-to-array-end");_this.securitySchemes=_this.raml.securitySchemes;_this.mark("raml2obj-apply-raml-types-start");_this.applyRamlTypes(_this.raml);_this.mark("raml2obj-apply-raml-types-end");if(types){_this.raml.types=types}_this.mark("raml2obj-enhace-end");return _this.raml})}},{key:"applySecuritySchemes",value:function applySecuritySchemes(object){if(!object.queryParameters){object.queryParameters=[]}if(!object.headers){object.headers=[]}if(!object.securedBy){object.securedBy=[]}var responses=[];object.securedBy.forEach(function(scheme){if(!scheme||typeof scheme==="string"){return}if(scheme.describedBy){if(scheme.describedBy.queryParameters){object.queryParameters=object.queryParameters.concat(scheme.describedBy.queryParameters)}if(scheme.describedBy.headers){object.headers=object.headers.concat(scheme.describedBy.headers)}if(scheme.describedBy.responses){responses=responses.concat(scheme.describedBy.responses)}}});if(object.responses){responses=responses.concat(object.responses)}responses.sort(function(a,b){var aCode=Number(a.code);var bCode=Number(b.code);if(aCode>bCode){return 1}if(aCode<bCode){return-1}return 0});object.responses=responses}},{key:"isObject",value:function isObject(obj){return obj===Object(obj)}},{key:"addSecuritSchemes",value:function addSecuritSchemes(object){var _this2=this;var rootSchemes=this.securitySchemes;if(!rootSchemes||!Object.keys(rootSchemes).length){return}if(!object||!object.securedBy||!object.securedBy.length){return}var added=false;object.securedBy.forEach(function(item,i){if(typeof item==="string"){if(item in rootSchemes){added=true;object.securedBy[i]=Object.assign({},rootSchemes[item])}}else if(_this2.isObject(item)){var keys=Object.keys(item);var key=keys[0];if(key in rootSchemes){added=true;var schema=Object.assign({},rootSchemes[key]);var params=item[key];schema.settings=Object.assign({},schema.settings,params);object.securedBy[i]=schema}}});if(added){this.applySecuritySchemes(object)}}},{key:"applyRamlTypes",value:function applyRamlTypes(ramlObj,parentUrl,allUriParameters){var _this3=this;if(!ramlObj.resources){return}ramlObj.resources.forEach(function(resource){resource.parentUrl=parentUrl||"";resource.allUriParameters=ramlObj.baseUriParameters||[];if(allUriParameters){resource.allUriParameters=resource.allUriParameters.concat(allUriParameters)}if(resource.uriParameters){resource.allUriParameters=resource.allUriParameters.concat(resource.uriParameters)}if(resource.methods){resource.methods.forEach(function(method){method.allUriParameters=resource.allUriParameters;method.absoluteUri=resource.absoluteUri;_this3.addSecuritSchemes(method)})}_this3.addSecuritSchemes(resource);_this3.applyRamlTypes(resource,resource.parentUrl+resource.relativeUri,resource.allUriParameters)})}},{key:"expandRootTypes",value:function expandRootTypes(types){var _this4=this;if(!types){return Promise.resolve(types)}var promises=Object.keys(types).map(function(key){return _this4._expandType(types,key)});return Promise.all(promises).then(function(results){results.forEach(function(result){types[result[0]]=result[1]});return types})}},{key:"_expandType",value:function _expandType(types,key){return new Promise(function(resolve){datatype_expansion.js.expandedForm(types[key],types,function(err,expanded){if(expanded){datatype_expansion.js.canonicalForm(expanded,function(err2,canonical){if(canonical){resolve([key,canonical])}else{resolve([key,types[key]])}})}else{resolve([key,types[key]])}})})}}]);return Raml2Object}();module.exports.parse=function(source){var r2o=new Raml2Object(source);return r2o.enhance()}},{"./arrays-objects-helpers":1,"./consistency-helpers":3}]},{},[2]);
-;if(!self.Promise){self.Promise=MakePromise(function(c){c()})}/**
-@license
-Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
-This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
-The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
-The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
-Code distributed by Google as part of the polymer project is also
-subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-*/
-Promise.all = Promise.all || function () {
-  var args = Array.prototype.slice.call(arguments.length === 1 && Array.isArray(arguments[0]) ? arguments[0] : arguments);
-
-  return new Promise(function (resolve, reject) {
-    if (args.length === 0) return resolve([]);
-    var remaining = args.length;
-    function res(i, val) {
-      try {
-        if (val && (typeof val === 'object' || typeof val === 'function')) {
-          var then = val.then;
-          if (typeof then === 'function') {
-            then.call(val, function (val) { res(i, val) }, reject);
-            return;
-          }
-        }
-        args[i] = val;
-        if (--remaining === 0) {
-          resolve(args);
-        }
-      } catch (ex) {
-        reject(ex);
-      }
-    }
-    for (var i = 0; i < args.length; i++) {
-      res(i, args[i]);
-    }
-  });
-};
-
-Promise.race = Promise.race || function(values) {
-  // TODO(bradfordcsmith): To be consistent with the ECMAScript spec, this
-  //     method should take any iterable, not just an array.
-  var forcedArray = /** @type {!Array<!Thenable>} */ (values);
-  return new Promise(function (resolve, reject) {
-    for(var i = 0, len = forcedArray.length; i < len; i++) {
-      forcedArray[i].then(resolve, reject);
-    }
-  });
-};
-
-;/* global raml2obj, self */
-self.onmessage = function(e) {
-  try {
-    raml2obj
-    .parse(e.data.raml)
-    .then(function(result) {
-      self.postMessage({
-        result: result
-      });
-    });
-  } catch (e) {
-    self.postMessage({
-      error: true,
-      message: 'Worker parser error: ' + e.message
-    });
-  }
-};
-;</script></template><script>Polymer({is:"raml-json-enhance",properties:{json:{type:Object,observer:"_jsonChnaged"},result:{type:Object,notify:true,readOnly:true},_workerExpandDataHandler:{type:Function,value:function(){return this._expandWorkerData.bind(this)}},_workerExpandErrorHandler:{type:Function,value:function(){return this._expandWorkerError.bind(this)}},debug:Boolean,_expadndWorker:Object},_markTime:function(name){if(this.debug&&typeof performance!=="undefined"&&performance.mark)performance.mark(name)},_jsonChnaged:function(json){if(!json)return this._setResult(undefined);
-if(json.specification)json=json.specification;this._normalizeRamlJson(json)},_normalizeRamlJson:function(json){var ie10=/msie 10/i.test(navigator.userAgent);if(!ie10&&!this._expadndWorker){var blob=new Blob([this.$.worker.textContent]);var workerUrl=window.URL.createObjectURL(blob);var worker=new Worker(workerUrl);worker.addEventListener("message",this._workerExpandDataHandler);worker.addEventListener("error",this._workerExpandErrorHandler);this._expadndWorker=worker}else if(ie10){var self={postMessage:function(data){this._expandWorkerData({data:data})}.bind(this)};
-eval(this.$.worker.textContent);self.onmessage({data:{raml:json}});return}this._markTime("raml-worker-expansion-library-send");this._expadndWorker.postMessage({raml:json})},_expandWorkerData:function(e){this._markTime("raml-worker-expansion-library-receive");var data=e.data;if(data.error){console.log("Error in the worker.",data);this.fire("error",{message:data.message});return}var result=data.result;this._setResult(result);this.fire("raml-json-enhance-ready",{json:result});this._measureData()},_expandWorkerError:function(e){this._markTime("raml-worker-expansion-library-receive");
-var err=new Error(e.message||" Unknown worker error.");console.log("Error in the worker.",err);this.fire("error",{message:err.message})},_measureData:function(){if(!this.debug||typeof performance==="undefined"||!performance.mark)return;performance.measure("worker-work-time","raml-worker-expansion-library-send","raml-worker-expansion-library-receive");var items=performance.getEntriesByType("measure");console.log(items)}});</script></dom-module><script>(function(){Polymer({is:"iron-location",properties:{path:{type:String,notify:true,value:function(){return window.decodeURIComponent(window.location.pathname)}},query:{type:String,notify:true,value:function(){return window.location.search.slice(1)}},hash:{type:String,notify:true,value:function(){return window.decodeURIComponent(window.location.hash.slice(1))}},dwellTime:{type:Number,value:2E3},urlSpaceRegex:{type:String,value:""},_urlSpaceRegExp:{computed:"_makeRegExp(urlSpaceRegex)"},_lastChangedAt:{type:Number},
+})();;"use strict";function _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_createClass=function(){function a(a,b){for(var c=0;c<b.length;c++){var d=b[c];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(a,d.key,d)}}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}();!function b(c,d,e){function a(h,i){if(!d[h]){if(!c[h]){var j="function"==typeof require&&require;if(!i&&j)return j(h,!0);if(g)return g(h,!0);var k=new Error("Cannot find module '"+h+"'");throw k.code="MODULE_NOT_FOUND",k}var f=d[h]={exports:{}};c[h][0].call(f.exports,function(b){var d=c[h][1][b];return a(d||b)},f,f.exports,b,c,d,e)}return d[h].exports}for(var g="function"==typeof require&&require,f=0;f<e.length;f++)a(e[f]);return a}({1:[function(a,b,c){},{}],2:[function(a,b,c){var d=a("./");"undefined"==typeof window?self.raml2obj=d:window.raml2obj=d},{"./":3}],3:[function(a,b,c){var d=a("./lib/enhencer"),e=d.RamlJsonEnhancer,f=a("./lib/arrays-objects"),g=f.arraysToObjects,h=a("./lib/expander"),i=h.ExpansionLibrary;b.exports.parse=function(a){return(new e).enhance(a)},b.exports.prepareObject=function(a){var b={json:[]};return a?(g(a),b.json=a,Promise.resolve(b)):Promise.resolve(b)},b.exports.expandTypes=function(a){var b={types:[]};return a&&Object.keys(a).length?i.expandRootTypes(a).then(function(a){return b.types=a,b}):Promise.resolve(b)},b.exports.normalize=function(a,b){var c={json:[]};return a?(a=(new e).normalize(a,b),c.json=a,Promise.resolve(c)):Promise.resolve(c)}},{"./lib/arrays-objects":4,"./lib/enhencer":6,"./lib/expander":7}],4:[function(a,b,c){function d(a){return a&&a===Object(a)&&!Array.isArray(a)}function e(a){return Array.isArray(a)?a:Object.keys(a).map(function(b){return d(a[b])&&(a[b].key=b),a[b]})}function f(a){return a.reduce(function(a,b){return Object.keys(b).forEach(function(c){a[c]=b[c]}),a},{})}function g(a){return Array.isArray(a)?a.forEach(function(a){g(a)}):d(a)&&Object.keys(a).forEach(function(b){var c=a[b];-1!==i.indexOf(b)&&d(c)&&(a[b]=e(c)),g(c)}),a}function h(a){return j.forEach(function(b){b in a&&a[b]&&(a[b]=f(a[b]))}),a}var i=["responses","body","queryParameters","headers","properties","baseUriParameters","annotations","uriParameters"],j=["types","traits","resourceTypes","annotationTypes","securitySchemes"];b.exports={arraysToObjects:h,recursiveObjectToArray:g}},{}],5:[function(a,b,c){var d=function(){function a(){_classCallCheck(this,a)}return _createClass(a,null,[{key:"isObject",value:function(a){return a&&a===Object(a)&&!Array.isArray(a)}},{key:"makeConsistent",value:function(b,c){if(!b||b.__typeConsistent)return b;if(Array.isArray(b))b.forEach(function(d,e){b[e]=a.makeConsistent(d,c)});else if(a.isObject(b)){b=a.consistentExample(b),b.type&&(b=a.consistentType(b,c)),b.items&&c&&c[b.items]&&(b.items=c[b.items]);var d=Object.keys(b);d.forEach(function(d){b[d]=a.makeConsistent(b[d],c)})}return b}},{key:"consistentType",value:function(b,c){return Array.isArray(b.type)&&(b.type=b.type[0]),c&&c[b.type]&&a.applyType(b,c[b.type]),b}},{key:"consistentExample",value:function(a){return a.examples&&a.examples.length&&(a.examples=a.examples.map(function(a){return a.value?a.value:a})),a.structuredExample&&(void 0===a.examples&&(a.examples=[]),a.examples.push(a.structuredExample.value),delete a.example,delete a.structuredExample),a}},{key:"applyType",value:function(a,b){var c=this,d={description:a.description,enum:a.enum,default:a.default,schema:a.schema,xml:a.xml,name:a.name},e={properties:a.properties,items:a.items},f=[];a.examples&&(f=a.examples,delete a.examples),a.example&&(f.push(a.example),delete a.example),a=Object.assign(a,b),a.type&&Array.isArray(a.type)&&(a.type=a.type[0]),a.examples||(a.examples=[]),f.length&&(a.examples=a.examples.concat(f)),Object.keys(e).forEach(function(b){void 0!==e[b]&&(a[b]&&a[b].length||(a[b]=[]),a[b]=c.mergeExcludeDusplicates(e[b],a[b]))}),d.name===d.displayName&&a.displayName!==d.displayName&&delete d.displayName,Object.keys(d).forEach(function(b){void 0!==d[b]&&(a[b]=d[b])}),a.__typeConsistent=!0}},{key:"mergeExcludeDusplicates",value:function(a,b){a&&a.length||(a=[]),b&&b.length||(b=[]);for(var c=0,d=b.length;c<d;c++){for(var e=b[c],f=e.key,g=!1,h=0,i=a.length;h<i;h++)if(a[h].key===f){g=!0;break}g||a.push(e)}return a}}]),a}();b.exports.ConsistencyHelper=d},{}],6:[function(a,b,c){var d=a("./arrays-objects"),e=d.arraysToObjects,f=d.recursiveObjectToArray,g=a("./expander"),h=g.ExpansionLibrary,i=a("./consistency-helpers"),j=i.ConsistencyHelper,k=a("./security-schemes"),l=k.SecuritySchemesTransformer,m=function(){function a(){_classCallCheck(this,a)}return _createClass(a,[{key:"enhance",value:function(a){var b=this;return e(a),h.expandRootTypes(a.types).then(function(c){return b.normalize(a,c)})}},{key:"normalize",value:function(a,b){return delete a.types,this._transformTypesToArrays(b),this._transformObjectsToArrays(a),this._makeRamlConsistent(a,b),this._normalizeObject(a),b&&(a.types=b),a}},{key:"_makeRamlConsistent",value:function(a,b){j.makeConsistent(a,b)}},{key:"_transformObjectsToArrays",value:function(a){f(a)}},{key:"_transformTypesToArrays",value:function(a){f(a)}},{key:"_normalizeObject",value:function(a){var b={securitySchemes:a.securitySchemes},c=!this.hasProperBaseUri(a),d={computeBaseUri:c,baseUri:a.baseUri};this.enhaceJson(a,b,d)}},{key:"enhaceJson",value:function(a,b,c){var d=this;a.resources&&a.resources.forEach(function(e){e.parentUrl=c.parentUrl||"",e.allUriParameters=a.baseUriParameters?d._clone(a.baseUriParameters):[],c.computeBaseUri&&(e.absoluteUri=c.baseUri+e.relativeUri),c.allUriParameters&&(e.allUriParameters=e.allUriParameters.concat(c.allUriParameters)),e.baseUriParameters&&(e.allUriParameters=d._mergeBaseParameters(e.allUriParameters,e.baseUriParameters)),e.uriParameters&&(e.allUriParameters=e.allUriParameters.concat(e.uriParameters));var f=e.parentUrl+e.relativeUri;e.methods&&e.methods.forEach(function(a){a.allUriParameters=e.allUriParameters,a.absoluteUri=e.absoluteUri,a.relativeUri=f,a.baseUri=c.baseUri,l.addSecuritSchemes(a,b.securitySchemes)}),l.addSecuritSchemes(e,b.securitySchemes);var g=Object.assign({},c);g.parentUrl=f,g.allUriParameters=e.allUriParameters?d._clone(e.allUriParameters):[],d.enhaceJson(e,b,g)})}},{key:"hasProperBaseUri",value:function(a){if(!a||!a.resources||!a.resources[0])return!0;if(!a.baseUri)return!0;var b=a.resources[0].absoluteUri;if(!b)return!1;var c=a.baseUri;return 0===b.indexOf(c)}},{key:"_mergeBaseParameters",value:function(a,b){b=b||[],a=a?this._clone(a):[];for(var c=0,d=b.length;c<d;c++){for(var e=b[c],f=!1,g=0,h=a.length;g<h;g++)if(a[g].name===e.name){f=!0,a[g]=Object.assign(a[g],e);break}f||a.push(e)}return a}},{key:"_isArray",value:function(a){return"[object Array]"===Object.prototype.toString.apply(a)}},{key:"_clone",value:function(a){var b,c;if("object"!==(void 0===a?"undefined":_typeof(a)))return a;if(!a)return a;if(this._isArray(a)){for(b=[],c=0;c<a.length;c+=1)b[c]=this._clone(a[c]);return b}b={};for(c in a)a.hasOwnProperty(c)&&(b[c]=this._clone(a[c]));return b}}]),a}();b.exports.RamlJsonEnhancer=m},{"./arrays-objects":4,"./consistency-helpers":5,"./expander":7,"./security-schemes":8}],7:[function(a,b,c){var d=a("./consistency-helpers"),e=d.ConsistencyHelper,f=!0;("undefined"!=typeof window||"undefined"!=typeof self&&self.importScripts)&&(f=!1);var g=function(){function b(){_classCallCheck(this,b)}return _createClass(b,null,[{key:"expandRootTypes",value:function(a){if(!a)return Promise.resolve(a);var c=Object.keys(a);if(!c.length)return Promise.resolve(a);var d=c.map(function(c){return b._expandType(a,c)});return Promise.all(d).then(function(b){return b.forEach(function(b){a[b[0]]=b[1]}),a}).then(function(a){return e.makeConsistent(a)})}},{key:"_expandType",value:function(b,c){return new Promise(function(d){var e=f?a("datatype-expansion"):datatype_expansion.js;e.expandedForm(b[c],b,function(a,f){if(a)return console.warn(a),d([c,b[c]]);f?e.canonicalForm(f,function(a,e){if(a)return console.warn(a),d([c,b[c]]);d(e?[c,e]:[c,b[c]])}):d([c,b[c]])})})}}]),b}();b.exports.ExpansionLibrary=g},{"./consistency-helpers":5,"datatype-expansion":1}],8:[function(a,b,c){var d=function(){function a(){_classCallCheck(this,a)}return _createClass(a,null,[{key:"isObject",value:function(a){return a&&a===Object(a)&&!Array.isArray(a)}},{key:"addSecuritSchemes",value:function(b,c){if(c&&Object.keys(c).length&&b&&b.securedBy&&b.securedBy.length){var d=!1;b.securedBy.forEach(function(e,f){if("string"==typeof e)e in c&&(d=!0,b.securedBy[f]=Object.assign({},c[e]));else if(a.isObject(e)){var g=Object.keys(e),h=g[0];if(h in c){d=!0;var i=Object.assign({},c[h]),j=e[h];i.settings=Object.assign({},i.settings,j),b.securedBy[f]=i}}}),d&&a.transform(b)}}},{key:"transform",value:function(a){a.queryParameters||(a.queryParameters=[]),a.headers||(a.headers=[]),a.securedBy||(a.securedBy=[]);var b=[];a.securedBy.forEach(function(c){c&&"string"!=typeof c&&c.describedBy&&(c.describedBy.queryParameters&&(a.queryParameters=a.queryParameters.concat(c.describedBy.queryParameters)),c.describedBy.headers&&(a.headers=a.headers.concat(c.describedBy.headers)),c.describedBy.responses&&(b=b.concat(c.describedBy.responses)))}),a.responses&&(b=b.concat(a.responses)),b.sort(function(c,a){var b=Number(c.code),d=Number(a.code);return b>d?1:b<d?-1:0}),a.responses=b}}]),a}();b.exports.SecuritySchemesTransformer=d},{}]},{},[2]);;self.Promise||(self.Promise=MakePromise(function(c){c()}));;Promise.all=Promise.all||function(){var args=Array.prototype.slice.call(1===arguments.length&&Array.isArray(arguments[0])?arguments[0]:arguments);return new Promise(function(resolve,reject){function res(i,val){try{if(val&&("object"==typeof val||"function"==typeof val)){var then=val.then;if("function"==typeof then)return void then.call(val,function(val){res(i,val)},reject)}args[i]=val,0==--remaining&&resolve(args)}catch(ex){reject(ex)}}if(0===args.length)return resolve([]);for(var remaining=args.length,i=0;i<args.length;i++)res(i,args[i])})},Promise.race=Promise.race||function(values){var forcedArray=values;return new Promise(function(resolve,reject){for(var i=0,len=forcedArray.length;i<len;i++)forcedArray[i].then(resolve,reject)})};;"use strict";var Nw={reportError:function(b){self.postMessage({error:!0,message:b})},reportResult:function(b){self.postMessage({error:!1,json:b.json})},reportExpandResult:function(b){self.postMessage({error:!1,types:b.types,raml:b.raml})},messageHandler:function(c){var a=c.data.payload;if(!a)return Nw.reportError("Payload not set");switch(a){case"prepare-types":Nw.prepareObject(c.data.json);break;case"expand-types":Nw.expandTypes(c.data.types,c.data.raml);break;case"normalize":Nw.normalize(c.data.raml,c.data.types);break;default:return Nw.reportError("Unknown payload")}},prepareObject:function(c){var d;try{raml2obj.prepareObject(c,{}).then(function(b){Nw.reportResult(b)}).catch(function(b){return d=b.message||"Unknown prepare types error",Nw.reportError(d)})}catch(b){return d=b.message||"Unknown prepare types error",Nw.reportError(d)}},normalize:function(d,a){var b;try{raml2obj.normalize(d,a,{}).then(function(b){Nw.reportResult(b)}).catch(function(c){return b=c.message||"Unknown normalize error",Nw.reportError(b)})}catch(c){return b=c.message||"Unknown normalize error",Nw.reportError(b)}},expandTypes:function(d,e){var b;try{raml2obj.expandTypes(d,{}).then(function(b){b.raml=e,Nw.reportExpandResult(b)}).catch(function(c){return b=c.message||"Unknown expand types error",Nw.reportError(b)})}catch(c){return b=c.message||"Unknown expand types error",Nw.reportError(b)}}};self.onmessage=Nw.messageHandler;</script></template><script>(function(){var WORKERS=[];function getWorker(name){for(var i=0,len=WORKERS.length;i<len;i++)if(WORKERS[i].name===name)return WORKERS[i].ref}Polymer({is:"raml-json-enhance",properties:{json:{type:Object,observer:"_jsonChnaged"},result:{type:Object,notify:true,readOnly:true},state:{type:Number,readOnly:true,value:0}},_jsonChnaged:function(json){if(!json)return this._setResult(undefined);this._noSupportedError();if(json.specification)json=json.specification;this._killWorkers();this._enhance(json)},
+_noSupportedError:function(){var ie10=/msie 10/i.test(navigator.userAgent);if(!ie10)return;this._setResult(undefined);this.fire("error",{message:"This browser is not supported."});throw new Error("This browser is not supported.");},_killWorkers:function(){for(var i=WORKERS.length-1;i>=0;i--){this.__terminateWorker(WORKERS[i]);WORKERS.splice(i,1)}this._setState(0)},__terminateWorker:function(workerRef){workerRef.ref.terminate();workerRef.ref.removeEventListener("message",workerRef.data);workerRef.ref.removeEventListener("error",
+workerRef.error);this.__clearDataUrl(workerRef.url)},__clearDataUrl:function(url){if(url)window.URL.revokeObjectURL(url)},_createWorkers:function(){var norm=this.__createWorker("_normalize",this.$.normalizer.textContent);WORKERS.push(norm)},__createWorker:function(property,body){var blob=new Blob([body]);var workerUrl=window.URL.createObjectURL(blob);var worker=new Worker(workerUrl);var dataHandler=this[property+"DataHandler"].bind(this);var errorHandler=this[property+"ErrorHandler"].bind(this);worker.addEventListener("message",
+dataHandler);worker.addEventListener("error",errorHandler);return{name:property,ref:worker,url:workerUrl,error:errorHandler,data:dataHandler}},_enhance:function(json){this._createWorkers();this._prepareTypesTask(json)},_prepareTypesTask:function(json){this._setState(1);var worker=getWorker("_normalize");var message={payload:"prepare-types",json:json};worker.postMessage(message)},_expandTypesTask:function(json){this._setState(2);var worker=getWorker("_normalize");var message={payload:"expand-types",
+types:json.types,raml:json};worker.postMessage(message)},_normalizeTypesTask:function(types,raml){this._setState(3);var worker=getWorker("_normalize");var message={payload:"normalize",types:types,raml:raml};worker.postMessage(message)},_reportResult:function(result){this._setResult(result);this.fire("raml-json-enhance-ready",{json:result});this._killWorkers()},_reportError:function(errorMessage){var err=new Error(errorMessage);this.fire("error",{message:err.message});this._killWorkers();throw err;
+},_normalizeDataHandler:function(e){var data=e.data;if(data.error){this._reportError(data.message);return}switch(this.state){case 1:this._expandTypesTask(data.json);break;case 2:this._normalizeTypesTask(data.types,data.raml);break;case 3:this._setState(0);this._reportResult(data.json);break;default:this._reportError("Normalize worker data handler called in invalid state")}},_normalizeErrorHandler:function(e){var message=e&&e.message?"Normalize worker: "+e.message:"Unknown normalize worker error.";
+this._reportError(message)}})})();</script></dom-module><script>(function(){Polymer({is:"iron-location",properties:{path:{type:String,notify:true,value:function(){return window.decodeURIComponent(window.location.pathname)}},query:{type:String,notify:true,value:function(){return window.location.search.slice(1)}},hash:{type:String,notify:true,value:function(){return window.decodeURIComponent(window.location.hash.slice(1))}},dwellTime:{type:Number,value:2E3},urlSpaceRegex:{type:String,value:""},_urlSpaceRegExp:{computed:"_makeRegExp(urlSpaceRegex)"},_lastChangedAt:{type:Number},
 _initialized:{type:Boolean,value:false}},hostAttributes:{hidden:true},observers:["_updateUrl(path, query, hash)"],attached:function(){this.listen(window,"hashchange","_hashChanged");this.listen(window,"location-changed","_urlChanged");this.listen(window,"popstate","_urlChanged");this.listen((document.body),"click","_globalOnClick");this._lastChangedAt=window.performance.now()-(this.dwellTime-200);this._initialized=true;this._urlChanged()},detached:function(){this.unlisten(window,"hashchange","_hashChanged");
 this.unlisten(window,"location-changed","_urlChanged");this.unlisten(window,"popstate","_urlChanged");this.unlisten((document.body),"click","_globalOnClick");this._initialized=false},_hashChanged:function(){this.hash=window.decodeURIComponent(window.location.hash.substring(1))},_urlChanged:function(){this._dontUpdateUrl=true;this._hashChanged();this.path=window.decodeURIComponent(window.location.pathname);this.query=window.location.search.substring(1);this._dontUpdateUrl=false;this._updateUrl()},
 _getUrl:function(){var partiallyEncodedPath=window.encodeURI(this.path).replace(/\#/g,"%23").replace(/\?/g,"%3F");var partiallyEncodedQuery="";if(this.query)partiallyEncodedQuery="?"+this.query.replace(/\#/g,"%23");var partiallyEncodedHash="";if(this.hash)partiallyEncodedHash="#"+window.encodeURI(this.hash);return partiallyEncodedPath+partiallyEncodedQuery+partiallyEncodedHash},_updateUrl:function(){if(this._dontUpdateUrl||!this._initialized)return;if(this.path===window.decodeURIComponent(window.location.pathname)&&
@@ -3766,7 +3579,7 @@ if(this.useHashAsPath)this.__hash=this.path;else this.__path=this.path}})})();</
     padding: 12px 0px;
     border-top: 1px rgba(0,0,0,0.24) solid;
     margin: 8px 12px 0 12px;
-  }</style></div><app-location use-hash-as-path=""></app-location><raml-js-parser json=""></raml-js-parser><raml-json-enhance></raml-json-enhance><api-console page="{{page}}" path="{{path}}" by-api-console-builder=""><div class="powered" nav-addon=""><a href="https://github.com/mulesoft/api-console" target="_blank"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALIAAAAfCAYAAABDCJdYAAAAAXNSR0IArs4c6QAADbBJREFUeAHtm01oXNcVxyVZSZwPrHECoYGARzuTjeWAodCCR5tAu2jGOxdCNWMntN3EEoVCuxlPu+nKskoplJBoVKcki1CNlgkUj7orFFuBELxKJh8Qe5F4nObD+bL6+z2/O7nz9Gb0YSe00Vx4c+8999xzzzv3f8897743oyPD9I1Z4IknniiNj4+X9uzZc9RBbty4MbW+vt6h3rb+1Vdfrd5xxx3NZ555Zs36MO3cAqM77zrsmWeBcrlcIM3SNmP72NhYk+yfALrz6aeftqUB5gN33nlnkeIhwF2WRlrqdDpnm81m52Z1+LsdCwyBvB1rbcJbqVRmR0dHa4B37bPPPqufO3du1S71er3HzrVabV06vEmu577rrrtqemz6Vp999lnBP0zbsECPgbfRb8gaWSD1wouQpr788stqDOBHHnlk9PXXX++xM7R1aOtZQJ88ebIMmBcBePO5556rRkMMi5tYoMfAm/AOm3MsIIj3799/3qarV69OLy8vX9MDBwA/9NBDo++9997o/fffn9j6gw8+WIe2Dm09BnTwzll5w1Ajx+g5pLEc2pC0DQsIYmLe9uLi4uEAurfeeqv0yiuvTCFmDMDuIR8n1EguyyltTE8t4PXEAthhleGCsEysrZcfpi1YYAjkLRipH8uJEyfmbeMhLQkDAPTok08+OY93/QflZ/ft25eAGJZxTiiSy7JX2jaWAv7veOw3n3rqKcHfBTNyisTdp6UN02ALaOhh2oEFfEDjwewPnERMv/TSS5cV8c477+hBf2EZEH7v/fff/8+DDz544Z577hn/4osv9gDusXvvvXeMtpGPP/5YtnUWwTnyItde4uPjR44cefnChQuXL126dJ3yv+jzwsGDB5dee+21DjzD1McCQ4/cxzCbkT1lAGQLL774YltewoM5sorlkGj/DWCeBKBjnBfv8bLM0ZsOZAzgP01+NPAD8AIPi+ePHz9elOb5MjLqe/fuTTx/4BvmGy0wBPJGm2xKMQQAkFOe+8os8ADcmdBRj5umCeLdP9E2Fl/Xr18fvXbt2gF4fhvxhj4FvHY3NnYMeMoB3IFpmPdaYLxara73kpID+yYGrIaHl2z7/1qdOLLG27IS56/TWd3wlOeJT1uNRqOebdtpHXkzgKsR7EPoUBsg6wdvvPHGjyYnJ1+OeT766KM/U5+IaaHMIikZujz//PMtxyAWbzDGKdr1+j0pzB+hy7T8caPgv/vuu9+UxsNod3XFPHllbaYO2+nj4mY3cQEmcb5yWbxNdqH6Vt9c+sD7wAMPLDu2/bczvg8eI7ERFObTsgJp2gAM+Xd7wtBlz4u1g/ZiwiqxZ6VujNw1E7wLH3744ZGJiYlr0G8QUvwcnh/KIG9eIvyYgd6yjT4rjFmz3C8Z6tDWittdYP3kx3y3WnbBGBIhp8C1hr4txi2Rl1n0bWlcmyYeeD1HL8FoSLViBx92kVOLMSotvPaHb4k+xQTIdghJD4A3WKCziiXJyWKQGjS/FWgjZMFVhqeofP755+3gCTxG4gGoHVZg3N5PhgPIh+yOns46W+8cVydvTNtN3EzihdWHakdav4ROBcbwRUNR78xus+B9ImMWj9EK+qaL+BRjL4XYNytTHuWEe9b46JAAErrsHcb7K7SnpUsjn7hy5cpZgPWzTz75ZB+T8mvboqT+DWizgUa5TLlqnTi7xTGfjqVvEgACKuitnsio9O1wGxuI4dVVuzTiFzniYTtvKQWk9sJ+9UH9WDStVH13RneqldwY2e8AMEI7ZR7xrNRBfO1K3nb1pTHbIb4hUFCSaKsBlG4dGfN4ioKNA2Q42TP0XWSBLMG66mQM4geUHnFpvAX1YZxZx+iXbJePdhdoGfDNy4vBDgGqmmWToKR9NoDhJrX397777vM1ciuiHorK3svSww8//Ctor0pn7KSZ/Md44u9fvnz5j5Qn4jbKJ7DT7xLGr38K8XEcfdqh/jVLbykOcdhVc22i7QwdYlnWvXql9dYEJWHMRUMZHMCbXKcjjmSOsXFyz4GeBaOLS4eijFTOsjT5U31mLCOnFumY0HA48+puO/gTgy3wMifoLSce2W0MxY7KRIMg1rMm8Zg3gOAiXmw6jQlb0EoajUlb4arYT2DTR69asq5iDFDQmygDeoE49ZhtpBZKFZFxinIyDnKa4cYH8XPjdfSbZQEdTj1pU30U2i+hVwvZddvRSyNcRM5cqn9iTO+N+3wc3mY/OXl0ZLhLJU1pvuobu3ffffck8v5NexfM7F5/g7EHxPCsEAs24VvnPlrUS2EcjvaSSbbOpLXjeuCJ8g7jV5iHursZ8rRth6srQ171dQycUpcejylPNqVzuQzdMZrkU8ipgZkR5tRtfg0Zyq4xrwfIV7Fjd2cO8nRO9NdebXjUsQytSPvhwLOVPHU07Zh3g0dGoTYgmWaLaMgIAA+h1FoK4qQvtBZKFFPgFXwwcXuRrsG9cTydoEgeVpQBf4GJSla+ucaDNpUI5MdxQ3kQvx5RvhAOWHZc834pbg/9lJPqbwgDrpOQoYz+C/3kbIXuV25+R/HYY4+tcf+/Z9K6QKb/RKbeYSJPbEXuZjzITfTWweCNK/AXsK+gu+WE/VwUPksd0xnh1AReWCwj2pGxzkIroMcsc7mss9BziwX7ihGyZDdDxiSL97D4kGZbOi/uyI4zh8zpLA1MztmelxKPjKdYCjFfHtMgGoo3mbyjAKCEYnMocY0bf9w6+UrUt21oEtVH2C46cT1T7sdfyPDdUtXJ5h5O+YRLvsGLbFc4MXD4GMgPg06//fbbP0HGIWTniTpx5syZq+iQ25jXoR8NcJ1lUZxinAo8bfnQpc6pRcXyrST0c5ceYZ5LgLOkLOoCuWjZJMjYDRY4Opxi3qeY/6M6KwB9nub9CRM/tK3GZWT4zbZgbwX6TvINHjkrBLD5xJw8SERtlQikq4IWnilXkA9Pab1k2T7KIDPUSB4MXTSCnz5F27NpEH+64DySqoR+GKMcynl53J7264SFi64L9NGQp1iIzbz+WRr3Xgw0JnQtlM19vmC8dS+/biOvxu2hDN0v3JblC7RYrjRA2Alt2lf7hXo2d8dEF+9lBJnq0BgU62f7b6UuOKOrnXrUblfH0zsbbuhRadA2yY7dZcovFPLJW6cmHnkQu+Bk8huEDudZjY0UpH7Y0rAf8VgTg/vwldTlh69IU9e7ZWVgAFe4cbg3uyFtxs9Yc/Q3+Ddk0QNoiO6kZwXCW0CnZcZrU67YP/Ck+rahFbm3pUDvl7sAeFApGoqk4darMS9yZqg3pFEWpG6xdcauSTOhQ4ev4Ko3azd/3V7VIaJ11M16+mA9shkwg1emS0FvHMnqFrGVnnQkPIR3GwYUQh9eq1fzdNAWhmchHM2KckGG+B47HAjtlJNQiwXaCrSd5uMY9fSgla5gFKwS1xoDu0UuAWLm8OY/GbwxJuo0IcVqUAIF6xirB1ixDLzLqyyAejCKMrM6DOLXYEy8sbweYoG+HcYshvHjPMh24tQf3mPBGwc++hpehDgtkAfla04cDA0A2WRLXwzM3Fv3ZUag6aGwUaiOoEPy7NAlUEC/Gn27JOzXDBXiXne8Vqj3y50TYtJp24Ntc3idpzLyfFgrUj6aw5OQcBTzhJ0r2GcF+5QB5DK0xOvbH3rLeQovMVjghjYrdtZzwzNFPXFogh07uWtUkJFgg/IsrB1eDq0lA+b/JLzah35F5z6PbRwj1/MasjS3DGheG1JWRr/B+snYLr8KpGBsbVAmQ8jIztUfg5a4ljJd+1bl5XochuTtHgZuUK+EDoRGywIqeFTpgjm0Z3P6LzLppZjuAg11QD0DaLakXzxm6B/neO0GgJqBNoXcKfJOehUCX2oLbeLp0DVseBodj3qPXMmiTR3Vqn3QbQ4nYZgUZPrwLr1lmzwuMmQkO6lypZHcHeaCU7xJ6v0N+mofZNnY6OW4Wds0Rs7r9F2hucvgRS56Pxpsq/clLxPQ/f4h3cYFREgFvK4nNOVA6JcLYgEStyO7EQBpyKFn0/PHPKHMTjjtFerZPNsuaDwxCHR210nA2iPDxQ99vzzsnA1lQqsSHkzG/YKTUFcW6mTcjszDxsnhPlIZys2VYbtjKT/20LG+YVHIm02jWcJuqrvdeQyn4QZ5hTybAMB5AFZkAo/ZTr3rrWL+zb4XYCFdhb8Q+gDqNgul+5E+i8FvRVYHefTQdzfnu9ojC15DlO2CWMDgIet4zpIAtq53on7WckhuraHcLwe4MU+HsORY0IcYdhYQ+zKqR24/WbuZvquBfCsTL9gAahUgzodDf8Ds28JqkAsIkwefUO+Tr6b0Nbf4sBUrE1nzhCj/N18h9rm/b4W851sZ5Ts6yMWLFy89+uijVwgxXgj/7IC2RlkAHwSYf/HfHoNuH97rAP4KocNPA68gNsYGyL9cWlrKjY0HydyNbbs6Rr5dE57Gx/N66PRkZseigyxAPBcepnYsbBd1HAL5Nk22JxR45kUA2CR+HniklDekLz38SxP9PWa65QWRN8Z3mTYE8m2cXcHoRzvEzWUB7VlwiHn7DWMYQWiRfCNBH1+wbHsR9JO9m+hDIH8Ds50C+hQeWkAX8LBrgHU1Hip68+VDY5Oz6O4fWWO+YXlrFhgCeWt22jGXHtfzZoA8FQsByGt8u7A24FVyzD4sb2KB/wJA1w/2bHEDHAAAAABJRU5ErkJggg=="></a></div></api-console><script>(function(){var apiconsole={};apiconsole.app={};apiconsole.app.init=function(){apiconsole.app.setInitialRouteData();apiconsole.app.addParserListeners();apiconsole.app.observeRouteEvents();var url=new URL(location.href);var branch=url.searchParams.get("branch")||"master";document.querySelector("raml-js-parser").loadApi("https://raw.githubusercontent.com/scitran/core/"+branch+"/raml/api.raml").catch(function(cause){apiconsole.app.notifyInitError(cause.message)})};apiconsole.app.setInitialRouteData=function(){var location=document.querySelector("app-location");var locationPath=location.path;
+  }</style></div><app-location use-hash-as-path=""></app-location><raml-js-parser json=""></raml-js-parser><raml-json-enhance></raml-json-enhance><api-console page="{{page}}" path="{{path}}" by-api-console-builder=""><div class="powered" nav-addon=""><a href="https://github.com/mulesoft/api-console" target="_blank"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALIAAAAfCAYAAABDCJdYAAAAAXNSR0IArs4c6QAADbBJREFUeAHtm01oXNcVxyVZSZwPrHECoYGARzuTjeWAodCCR5tAu2jGOxdCNWMntN3EEoVCuxlPu+nKskoplJBoVKcki1CNlgkUj7orFFuBELxKJh8Qe5F4nObD+bL6+z2/O7nz9Gb0YSe00Vx4c+8999xzzzv3f8897743oyPD9I1Z4IknniiNj4+X9uzZc9RBbty4MbW+vt6h3rb+1Vdfrd5xxx3NZ555Zs36MO3cAqM77zrsmWeBcrlcIM3SNmP72NhYk+yfALrz6aeftqUB5gN33nlnkeIhwF2WRlrqdDpnm81m52Z1+LsdCwyBvB1rbcJbqVRmR0dHa4B37bPPPqufO3du1S71er3HzrVabV06vEmu577rrrtqemz6Vp999lnBP0zbsECPgbfRb8gaWSD1wouQpr788stqDOBHHnlk9PXXX++xM7R1aOtZQJ88ebIMmBcBePO5556rRkMMi5tYoMfAm/AOm3MsIIj3799/3qarV69OLy8vX9MDBwA/9NBDo++9997o/fffn9j6gw8+WIe2Dm09BnTwzll5w1Ajx+g5pLEc2pC0DQsIYmLe9uLi4uEAurfeeqv0yiuvTCFmDMDuIR8n1EguyyltTE8t4PXEAthhleGCsEysrZcfpi1YYAjkLRipH8uJEyfmbeMhLQkDAPTok08+OY93/QflZ/ft25eAGJZxTiiSy7JX2jaWAv7veOw3n3rqKcHfBTNyisTdp6UN02ALaOhh2oEFfEDjwewPnERMv/TSS5cV8c477+hBf2EZEH7v/fff/8+DDz544Z577hn/4osv9gDusXvvvXeMtpGPP/5YtnUWwTnyItde4uPjR44cefnChQuXL126dJ3yv+jzwsGDB5dee+21DjzD1McCQ4/cxzCbkT1lAGQLL774YltewoM5sorlkGj/DWCeBKBjnBfv8bLM0ZsOZAzgP01+NPAD8AIPi+ePHz9elOb5MjLqe/fuTTx/4BvmGy0wBPJGm2xKMQQAkFOe+8os8ADcmdBRj5umCeLdP9E2Fl/Xr18fvXbt2gF4fhvxhj4FvHY3NnYMeMoB3IFpmPdaYLxara73kpID+yYGrIaHl2z7/1qdOLLG27IS56/TWd3wlOeJT1uNRqOebdtpHXkzgKsR7EPoUBsg6wdvvPHGjyYnJ1+OeT766KM/U5+IaaHMIikZujz//PMtxyAWbzDGKdr1+j0pzB+hy7T8caPgv/vuu9+UxsNod3XFPHllbaYO2+nj4mY3cQEmcb5yWbxNdqH6Vt9c+sD7wAMPLDu2/bczvg8eI7ERFObTsgJp2gAM+Xd7wtBlz4u1g/ZiwiqxZ6VujNw1E7wLH3744ZGJiYlr0G8QUvwcnh/KIG9eIvyYgd6yjT4rjFmz3C8Z6tDWittdYP3kx3y3WnbBGBIhp8C1hr4txi2Rl1n0bWlcmyYeeD1HL8FoSLViBx92kVOLMSotvPaHb4k+xQTIdghJD4A3WKCziiXJyWKQGjS/FWgjZMFVhqeofP755+3gCTxG4gGoHVZg3N5PhgPIh+yOns46W+8cVydvTNtN3EzihdWHakdav4ROBcbwRUNR78xus+B9ImMWj9EK+qaL+BRjL4XYNytTHuWEe9b46JAAErrsHcb7K7SnpUsjn7hy5cpZgPWzTz75ZB+T8mvboqT+DWizgUa5TLlqnTi7xTGfjqVvEgACKuitnsio9O1wGxuI4dVVuzTiFzniYTtvKQWk9sJ+9UH9WDStVH13RneqldwY2e8AMEI7ZR7xrNRBfO1K3nb1pTHbIb4hUFCSaKsBlG4dGfN4ioKNA2Q42TP0XWSBLMG66mQM4geUHnFpvAX1YZxZx+iXbJePdhdoGfDNy4vBDgGqmmWToKR9NoDhJrX397777vM1ciuiHorK3svSww8//Ctor0pn7KSZ/Md44u9fvnz5j5Qn4jbKJ7DT7xLGr38K8XEcfdqh/jVLbykOcdhVc22i7QwdYlnWvXql9dYEJWHMRUMZHMCbXKcjjmSOsXFyz4GeBaOLS4eijFTOsjT5U31mLCOnFumY0HA48+puO/gTgy3wMifoLSce2W0MxY7KRIMg1rMm8Zg3gOAiXmw6jQlb0EoajUlb4arYT2DTR69asq5iDFDQmygDeoE49ZhtpBZKFZFxinIyDnKa4cYH8XPjdfSbZQEdTj1pU30U2i+hVwvZddvRSyNcRM5cqn9iTO+N+3wc3mY/OXl0ZLhLJU1pvuobu3ffffck8v5NexfM7F5/g7EHxPCsEAs24VvnPlrUS2EcjvaSSbbOpLXjeuCJ8g7jV5iHursZ8rRth6srQ171dQycUpcejylPNqVzuQzdMZrkU8ipgZkR5tRtfg0Zyq4xrwfIV7Fjd2cO8nRO9NdebXjUsQytSPvhwLOVPHU07Zh3g0dGoTYgmWaLaMgIAA+h1FoK4qQvtBZKFFPgFXwwcXuRrsG9cTydoEgeVpQBf4GJSla+ucaDNpUI5MdxQ3kQvx5RvhAOWHZc834pbg/9lJPqbwgDrpOQoYz+C/3kbIXuV25+R/HYY4+tcf+/Z9K6QKb/RKbeYSJPbEXuZjzITfTWweCNK/AXsK+gu+WE/VwUPksd0xnh1AReWCwj2pGxzkIroMcsc7mss9BziwX7ihGyZDdDxiSL97D4kGZbOi/uyI4zh8zpLA1MztmelxKPjKdYCjFfHtMgGoo3mbyjAKCEYnMocY0bf9w6+UrUt21oEtVH2C46cT1T7sdfyPDdUtXJ5h5O+YRLvsGLbFc4MXD4GMgPg06//fbbP0HGIWTniTpx5syZq+iQ25jXoR8NcJ1lUZxinAo8bfnQpc6pRcXyrST0c5ceYZ5LgLOkLOoCuWjZJMjYDRY4Opxi3qeY/6M6KwB9nub9CRM/tK3GZWT4zbZgbwX6TvINHjkrBLD5xJw8SERtlQikq4IWnilXkA9Pab1k2T7KIDPUSB4MXTSCnz5F27NpEH+64DySqoR+GKMcynl53J7264SFi64L9NGQp1iIzbz+WRr3Xgw0JnQtlM19vmC8dS+/biOvxu2hDN0v3JblC7RYrjRA2Alt2lf7hXo2d8dEF+9lBJnq0BgU62f7b6UuOKOrnXrUblfH0zsbbuhRadA2yY7dZcovFPLJW6cmHnkQu+Bk8huEDudZjY0UpH7Y0rAf8VgTg/vwldTlh69IU9e7ZWVgAFe4cbg3uyFtxs9Yc/Q3+Ddk0QNoiO6kZwXCW0CnZcZrU67YP/Ck+rahFbm3pUDvl7sAeFApGoqk4darMS9yZqg3pFEWpG6xdcauSTOhQ4ev4Ko3azd/3V7VIaJ11M16+mA9shkwg1emS0FvHMnqFrGVnnQkPIR3GwYUQh9eq1fzdNAWhmchHM2KckGG+B47HAjtlJNQiwXaCrSd5uMY9fSgla5gFKwS1xoDu0UuAWLm8OY/GbwxJuo0IcVqUAIF6xirB1ixDLzLqyyAejCKMrM6DOLXYEy8sbweYoG+HcYshvHjPMh24tQf3mPBGwc++hpehDgtkAfla04cDA0A2WRLXwzM3Fv3ZUag6aGwUaiOoEPy7NAlUEC/Gn27JOzXDBXiXne8Vqj3y50TYtJp24Ntc3idpzLyfFgrUj6aw5OQcBTzhJ0r2GcF+5QB5DK0xOvbH3rLeQovMVjghjYrdtZzwzNFPXFogh07uWtUkJFgg/IsrB1eDq0lA+b/JLzah35F5z6PbRwj1/MasjS3DGheG1JWRr/B+snYLr8KpGBsbVAmQ8jIztUfg5a4ljJd+1bl5XochuTtHgZuUK+EDoRGywIqeFTpgjm0Z3P6LzLppZjuAg11QD0DaLakXzxm6B/neO0GgJqBNoXcKfJOehUCX2oLbeLp0DVseBodj3qPXMmiTR3Vqn3QbQ4nYZgUZPrwLr1lmzwuMmQkO6lypZHcHeaCU7xJ6v0N+mofZNnY6OW4Wds0Rs7r9F2hucvgRS56Pxpsq/clLxPQ/f4h3cYFREgFvK4nNOVA6JcLYgEStyO7EQBpyKFn0/PHPKHMTjjtFerZPNsuaDwxCHR210nA2iPDxQ99vzzsnA1lQqsSHkzG/YKTUFcW6mTcjszDxsnhPlIZys2VYbtjKT/20LG+YVHIm02jWcJuqrvdeQyn4QZ5hTybAMB5AFZkAo/ZTr3rrWL+zb4XYCFdhb8Q+gDqNgul+5E+i8FvRVYHefTQdzfnu9ojC15DlO2CWMDgIet4zpIAtq53on7WckhuraHcLwe4MU+HsORY0IcYdhYQ+zKqR24/WbuZvquBfCsTL9gAahUgzodDf8Ds28JqkAsIkwefUO+Tr6b0Nbf4sBUrE1nzhCj/N18h9rm/b4W851sZ5Ts6yMWLFy89+uijVwgxXgj/7IC2RlkAHwSYf/HfHoNuH97rAP4KocNPA68gNsYGyL9cWlrKjY0HydyNbbs6Rr5dE57Gx/N66PRkZseigyxAPBcepnYsbBd1HAL5Nk22JxR45kUA2CR+HniklDekLz38SxP9PWa65QWRN8Z3mTYE8m2cXcHoRzvEzWUB7VlwiHn7DWMYQWiRfCNBH1+wbHsR9JO9m+hDIH8Ds50C+hQeWkAX8LBrgHU1Hip68+VDY5Oz6O4fWWO+YXlrFhgCeWt22jGXHtfzZoA8FQsByGt8u7A24FVyzD4sb2KB/wJA1w/2bHEDHAAAAABJRU5ErkJggg=="></a></div></api-console><script>(function(){var apiconsole={};apiconsole.app={};apiconsole.app.init=function(){apiconsole.app.setInitialRouteData();apiconsole.app.addParserListeners();apiconsole.app.observeRouteEvents();var url=new URL(location.href);var branch=new URLSearchParams(url.search).get("branch")||"master";document.querySelector("raml-js-parser").loadApi("https://raw.githubusercontent.com/scitran/core/"+branch+"/raml/api.raml").catch(function(cause){apiconsole.app.notifyInitError(cause.message)})};apiconsole.app.setInitialRouteData=function(){var location=document.querySelector("app-location");var locationPath=location.path;
 if(!locationPath)return;var parsedPath=locationPath.replace(/\-/g,".");if(parsedPath[0]==="/")parsedPath=parsedPath.substr(1);var _route=parsedPath.split("/");var page=_route[0];var path=_route[1];apiconsole.app.__initialPage=page;apiconsole.app.__initialPath=path};apiconsole.app.addParserListeners=function(){window.addEventListener("raml-json-enhance-ready",function(e){var apiConsole=document.querySelector("api-console");apiConsole.raml=e.detail.json;if(apiconsole.app.__initialPage&&apiconsole.app.__initialPage!==
 apiConsole.page){apiconsole.app.pageChanged(apiconsole.app.__initialPage);apiconsole.app.__initialPage=undefined}if(apiconsole.app.__initialPath&&apiconsole.app.__initialPath!==apiConsole.path){apiconsole.app.pathChanged(apiconsole.app.__initialPath);apiconsole.app.__initialPath=undefined}else apiconsole.app.pathChanged("summary")});window.addEventListener("api-parse-ready",function(e){var enhacer=document.querySelector("raml-json-enhance");enhacer.json=e.detail.json.specification});document.querySelector("raml-json-enhance").addEventListener("error",
 function(e){apiconsole.app.notifyInitError(e.detail.message)})};apiconsole.app.observeRouteEvents=function(){var apiConsole=document.querySelector("api-console");var location=document.querySelector("app-location");apiConsole.addEventListener("path-changed",apiconsole.app._pathChanged);apiConsole.addEventListener("page-changed",apiconsole.app._pageChanged);location.addEventListener("route-changed",apiconsole.app._routeChanged)};apiconsole.app._pathChanged=function(e){apiconsole.app.pathChanged(e.detail.value)};