(self.AMP=self.AMP||[]).push({n:"amp-form",v:"1810052256480",f:(function(AMP,_){
var l;function n(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;for(var d in b)if(Object.defineProperties){var e=Object.getOwnPropertyDescriptor(b,d);e&&Object.defineProperty(a,d,e)}else a[d]=b[d]}function aa(a,b){b=void 0===b?"":b;try{return decodeURIComponent(a)}catch(c){return b}};var ba=/(?:^[#?]?|&)([^=&]+)(?:=([^&]*))?/g;var ca=Object.prototype.toString;function da(a){if(!a)return[];for(var b=Array(a.length),c=0;c<a.length;c++)b[c]=a[c];return b}function ea(a){return"[object Object]"===ca.call(a)};self.log=self.log||{user:null,dev:null,userForEmbed:null};var p=self.log;function q(){if(!p.user)throw Error("failed to call initLogConstructor");return p.user}function r(){if(p.dev)return p.dev;throw Error("failed to call initLogConstructor");};var fa=Object.prototype.hasOwnProperty;function u(){var a,b=Object.create(null);a&&Object.assign(b,a);return b}function v(a){return a||{}}
function ga(a,b){var c;c=void 0===c?10:c;var d=[],e=[];e.push({t:a,s:b,d:0});for(a={};0<e.length;){b=e.shift();a.t=b.t;a.s=b.s;a.d=b.d;if(d.includes(a.s))throw Error("Source object has a circular reference.");d.push(a.s);a.t!==a.s&&(a.d>c?Object.assign(a.t,a.s):(Object.keys(a.s).forEach(function(a){return function(b){var c=a.s[b];if(fa.call(a.t,b)){var d=a.t[b];if(ea(c)&&ea(d)){e.push({t:d,s:c,d:a.d+1});return}}a.t[b]=c}}(a)),a={s:a.s,t:a.t,d:a.d}))}};function ha(){var a,b;this.promise=new Promise(function(c,d){a=c;b=d});this.resolve=a;this.reject=b}function ia(a){return new Promise(function(b){b(a())})}function ja(a){var b,c;this.Z=new Promise(function(a,d){b=a;c=d});this.ja=b;this.ha=c;this.R=0;if(a)for(var d=0;d<a.length;d++)this.add(a[d])}ja.prototype.add=function(a){var b=this,c=++this.R;Promise.resolve(a).then(function(a){b.R===c&&b.ja(a)},function(a){b.R===c&&b.ha(a)});return this.Z};
ja.prototype.then=function(a,b){return this.Z.then(a,b)};function w(a,b){if(a.nodeType){var c=(a.ownerDocument||a).defaultView;if(c=c!=(c.__AMP_TOP||c)&&ka(c,b)?x(c,b):null)return c}return y(a,b)}function z(a,b){a=a.__AMP_TOP||a;return x(a,b)}function la(a,b){var c=A(a),c=B(c);return x(c,b)}function y(a,b){a=A(a);a=B(a);return x(a,b)}function A(a){return a.nodeType?z((a.ownerDocument||a).defaultView,"ampdoc").getAmpDoc(a):a}function B(a){a=A(a);return a.isSingleDoc()?a.win:a}
function x(a,b){ka(a,b);var c=ma(a);a=c[b];a.obj||(a.obj=new a.ctor(a.context),a.ctor=null,a.context=null,a.resolve&&a.resolve(a.obj));return a.obj}function na(a){var b=ma(a)["amp-analytics-instrumentation"];if(b){if(b.promise)return b.promise;x(a,"amp-analytics-instrumentation");return b.promise=Promise.resolve(b.obj)}return null}function ma(a){var b=a.services;b||(b=a.services={});return b}function ka(a,b){a=a.services&&a.services[b];return!(!a||!a.ctor&&!a.obj)};/*
 https://mths.be/cssescape v1.5.1 by @mathias | MIT license */
var oa=/(\0)|^(-)$|([\x01-\x1f\x7f]|^-?[0-9])|([\x80-\uffff0-9a-zA-Z_-]+)|[^]/g;function pa(a,b,c,d,e){return e?e:b?"\ufffd":d?a.slice(0,-1)+"\\"+a.slice(-1).charCodeAt(0).toString(16)+" ":"\\"+a};function qa(a,b){return b.length>a.length?!1:0==a.lastIndexOf(b,0)};var C;function ra(a,b){for(var c=[],d=a.parentElement;d;d=d.parentElement)b(d)&&c.push(d);return c}function sa(a){var b="fieldset",b=b.toUpperCase();return ra(a,function(a){return a.tagName==b})}function D(a,b){for(var c=0,d;void 0!==(d=a[c]);c++)b(d,c)};function ta(a){var b=A(a),c=na(B(a));return c?c:b.whenBodyAvailable().then(function(){var a;a=b.win;var c=b.getHeadNode(),g;if(c){g=[];for(var c=c.querySelectorAll("script[custom-element]"),f=0;f<c.length;f++)g.push(c[f].getAttribute("custom-element"))}else g=[];a=g.includes("amp-analytics")?z(a,"extensions").waitForExtension(a,"amp-analytics"):Promise.resolve();return a}).then(function(){var c;c=b.win;if(c.ampExtendedElements&&c.ampExtendedElements["amp-analytics"]){c=B(a);var e=na(c);if(!e){var g=
new ha,e=g.promise,g=g.resolve;ma(c)["amp-analytics-instrumentation"]={obj:null,promise:e,resolve:g,context:null,ctor:null}}c=e}else c=null;return c})};function E(a){this.ea=a;this.P=this.W=0;this.J=Object.create(null)}E.prototype.has=function(a){return!!this.J[a]};E.prototype.get=function(a){var b=this.J[a];if(b)return b.access=++this.P,b.payload};E.prototype.put=function(a,b){this.has(a)||this.W++;this.J[a]={payload:b,access:this.P};if(!(this.W<=this.ea)){r().warn("lru-cache","Trimming LRU cache");a=this.J;var c=this.P+1,d,e;for(e in a){var g=a[e].access;g<c&&(c=g,d=e)}void 0!==d&&(delete a[d],this.W--)}};var F=self.AMP_CONFIG||{},ua={thirdParty:F.thirdPartyUrl||"https://3p.ampproject.net",thirdPartyFrameHost:F.thirdPartyFrameHost||"ampproject.net",thirdPartyFrameRegex:("string"==typeof F.thirdPartyFrameRegex?new RegExp(F.thirdPartyFrameRegex):F.thirdPartyFrameRegex)||/^d-\d+\.ampproject\.net$/,cdn:F.cdnUrl||"https://cdn.ampproject.org",cdnProxyRegex:("string"==typeof F.cdnProxyRegex?new RegExp(F.cdnProxyRegex):F.cdnProxyRegex)||/^https:\/\/([a-zA-Z0-9_-]+\.)?cdn\.ampproject\.org$/,localhostRegex:/^https?:\/\/localhost(:\d+)?$/,
errorReporting:F.errorReportingUrl||"https://amp-error-reporting.appspot.com/r",localDev:F.localDev||!1};var va=v({c:!0,v:!0,a:!0,ad:!0}),wa,xa,ya=/[?&]amp_js[^&]*/,za=/[?&]amp_gsa[^&]*/,Aa=/[?&]amp_r[^&]*/,Ba=/[?&]usqp[^&]*/;
function G(a){var b;wa||(wa=self.document.createElement("a"),xa=self.UrlCache||(self.UrlCache=new E(100)));var c=b?null:xa,d=wa;if(c&&c.has(a))a=c.get(a);else{d.href=a;d.protocol||(d.href=d.href);var e={href:d.href,protocol:d.protocol,host:d.host,hostname:d.hostname,port:"0"==d.port?"":d.port,pathname:d.pathname,search:d.search,hash:d.hash,origin:null};"/"!==e.pathname[0]&&(e.pathname="/"+e.pathname);if("http:"==e.protocol&&80==e.port||"https:"==e.protocol&&443==e.port)e.port="",e.host=e.hostname;
e.origin=d.origin&&"null"!=d.origin?d.origin:"data:"!=e.protocol&&e.host?e.protocol+"//"+e.host:e.href;c&&c.put(a,e);a=e}return a}function Ca(a,b,c){if(!b)return a;var d=a.split("#",2),e=d[0].split("?",2),g=e[0]+(e[1]?c?"?"+b+"&"+e[1]:"?"+e[1]+"&"+b:"?"+b);return g+=d[1]?"#"+d[1]:""}
function Da(a){"string"==typeof a&&(a=G(a));var b=a;"string"==typeof b&&(b=G(b));if(!ua.cdnProxyRegex.test(b.origin))return a.href;var b=a.pathname.split("/"),c=b[1];q().assert(va[c],"Unknown path prefix in url %s",a.href);var d=b[2],e="s"==d?"https://"+decodeURIComponent(b[3]):"http://"+decodeURIComponent(d);q().assert(0<e.indexOf("."),"Expected a . in origin %s",e);b.splice(1,"s"==d?3:2);b=e+b.join("/");c=(c=a.search)&&"?"!=c?(c=c.replace(ya,"").replace(za,"").replace(Aa,"").replace(Ba,"").replace(/^[?&]/,
""))?"?"+c:"":"";return b+c+(a.hash||"")};function Ea(a,b,c,d){var e={detail:c};Object.assign(e,d);if("function"==typeof a.CustomEvent)return new a.CustomEvent(b,e);a=a.document.createEvent("CustomEvent");a.initCustomEvent(b,!!e.bubbles,!!e.cancelable,c);return a};var H,Ga="Webkit webkit Moz moz ms O o".split(" ");function Ha(a,b){void 0===b&&(b=a.hasAttribute("hidden"));b?a.removeAttribute("hidden"):a.setAttribute("hidden","")};function Ia(a,b){var c='form.amp-form-submit-error [submit-error],form.amp-form-submit-success [submit-success],form.amp-form-submitting [submitting]{display:block}.i-amphtml-validation-bubble{-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%);background-color:#fff;box-shadow:0 5px 15px 0 rgba(0,0,0,0.5);max-width:200px;position:absolute;display:block;box-sizing:border-box;padding:10px;border-radius:5px}.i-amphtml-validation-bubble:after{content:" ";position:absolute;bottom:-8px;left:30px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #fff}[visible-when-invalid]{color:red}\n/*# sourceURL=/extensions/amp-form/0.1/amp-form.css*/',
d=!1,e="amp-form",g=a.getHeadNode(),f=Ja(g,Ka(g,c),d||!1,e||null);if(b){var h=a.getRootNode();if(La(h,f))b(f);else var k=setInterval(function(){La(h,f)&&(clearInterval(k),b(f))},4)}}
function Ja(a,b,c,d){var e=a.__AMP_CSS_SM;e||(e=a.__AMP_CSS_SM=u());var g=!c&&d&&"amp-custom"!=d&&"amp-keyframes"!=d,f=c?"amp-runtime":g?"amp-extension="+d:null;if(f){var h=Ma(a,e,f);if(h)return h.textContent!==b&&(h.textContent=b),h}var k=(a.ownerDocument||a).createElement("style");k.textContent=b;var m=null;c?k.setAttribute("amp-runtime",""):g?(k.setAttribute("amp-extension",d||""),m=Ma(a,e,"amp-runtime")):(d&&k.setAttribute(d,""),m=a.lastChild);b=m;a.insertBefore(k,b?b.nextSibling:a.firstChild);
f&&(e[f]=k);return k}function Ma(a,b,c){return b[c]?b[c]:(a=a.querySelector("style["+c+"]"))?b[c]=a:null}function Ka(a,b){return(a=a.__AMP_CSS_TR)?a(b):b}function La(a,b){var c=a.styleSheets;for(a=0;a<c.length;a++){var d=c[a];if(d.ownerNode==b)return!0}return!1};function Na(a,b,c){ta(a).then(function(d){d&&d.triggerEventForTarget(a,b,c)})};function Oa(){this.j=null}l=Oa.prototype;l.add=function(a){var b=this;this.j||(this.j=[]);this.j.push(a);return function(){b.remove(a)}};l.remove=function(a){this.j&&(a=this.j.indexOf(a),-1<a&&this.j.splice(a,1))};l.removeAll=function(){this.j&&(this.j.length=0)};l.fire=function(a){if(this.j)for(var b=this.j,c=0;c<b.length;c++)(0,b[c])(a)};l.getHandlerCount=function(){return this.j?this.j.length:0};function I(a){var b={},c=a.elements,d=/^(?:input|select|textarea)$/i,e=/^(?:button|image|file|reset)$/i,g=/^(?:checkbox|radio)$/i;for(a=0;a<c.length;a++){var f=c[a],h;if(h=f.name){a:if(f.disabled)h=!0;else{h=sa(f);for(var k=0;k<h.length;k++)if(h[k].disabled){h=!0;break a}h=!1}h=!h}!h||!d.test(f.tagName)||e.test(f.type)||g.test(f.type)&&!f.checked||(void 0===b[f.name]&&(b[f.name]=[]),b[f.name].push(f.value))}return b};function J(a){this.B=new FormData(a);this.L=this.B.entries?null:a?I(a):u()}J.prototype.append=function(a,b){if(!this.B.entries){var c=String(a);this.L[c]=this.L[c]||[];this.L[a].push(String(b))}return this.B.append(a,b)};J.prototype.entries=function(){if(this.B.entries)return this.B.entries();var a=[],b=this.L;Object.keys(b).forEach(function(c){b[c].forEach(function(b){return a.push([c,b])})});var c=0;return{next:function(){return c<a.length?{value:a[c++],done:!1}:{value:void 0,done:!0}}}};
J.prototype.getFormData=function(){return this.B};function Pa(){this.X=new Oa}Pa.prototype.beforeSubmit=function(a){this.X.add(a)};Pa.prototype.fire=function(a){this.X.fire(a)};var Qa=["GET","POST"];
function Ra(a,b){q().assert(ea(a),"Object expected: %s",a);var c="document"==b;if(!c)return new Response(a.body,a.init);var d=u(),e={status:200,statusText:"OK",getResponseHeader:function(a){return d[String(a).toLowerCase()]||null}};if(a.init){var g=a.init;Array.isArray(g.headers)&&g.headers.forEach(function(a){var b=a[0],c=a[1];d[String(b).toLowerCase()]=String(c)});g.status&&(e.status=parseInt(g.status,10));g.statusText&&(e.statusText=String(g.statusText))}return new Response(a.body?String(a.body):
"",e)};function K(a,b,c){this.C=b;this.w=c;this.la=a}K.prototype.isSupported=function(){var a=this.C.ampdoc;return a.isSingleDoc()&&a.getRootNode().documentElement.hasAttribute("allow-viewer-render-template")?this.C.hasCapability("viewerRenderTemplate"):!1};K.prototype.fetchAndRenderTemplate=function(a,b,c,d){c=void 0===c?null:c;d=void 0===d?{}:d;var e;c||(e=this.w.maybeFindTemplate(a));return this.C.sendMessageAwaitResponse("viewerRenderTemplate",Sa(this,b,e,c,d))};
function Sa(a,b,c,d,e){e=void 0===e?{}:e;var g=v({type:a.la}),f="successTemplate",h=d&&d[f]?d[f]:c;h&&(g[f]={type:"amp-mustache",payload:h.innerHTML});var k="errorTemplate",m=d&&d[k]?d[k]:null;m&&(g[k]={type:"amp-mustache",payload:m.innerHTML});e&&Object.assign(g,e);a=b.xhrUrl;c=b.fetchOpt;b=Object.assign({},c);if((d=c.body)&&"function"==typeof d.getFormData){b.headers["Content-Type"]="multipart/form-data;charset=utf-8";c=c.body.entries();d=[];for(e=c.next();!e.done;e=c.next())d.push(e.value);b.body=
d}return v({originalRequest:{input:a,init:b},ampComponent:g})}K.prototype.verifySsrResponse=function(a,b,c){b=Ra(b,c.fetchOpt.responseType);c=c.fetchOpt;(b=b.headers.get("AMP-Access-Control-Allow-Source-Origin"))?(a=G(Da(a.location.href)).origin,q().assert(b==a,"Returned AMP-Access-Control-Allow-Source-Origin is not equal to the current: "+b+(" vs "+a))):c.requireAmpResponseSourceOrigin&&q().assert(!1,"Response must contain the AMP-Access-Control-Allow-Source-Origin header")};function Ta(a){var b=a.ownerDocument.defaultView;b.FormProxy||(b.FormProxy=Ua(b));var c=b.FormProxy,d=new c(a);"action"in d||Va(a,d);a.$p=d}
function Ua(a){function b(a){this.h=a}var c=b.prototype,d=a.Object,e=d.prototype,g=[a.HTMLFormElement,a.EventTarget],f=g.reduce(function(a,b){for(b=b&&b.prototype;b&&b!==e&&!(0<=a.indexOf(b));)a.push(b),b=d.getPrototypeOf(b);return a},[]);f.forEach(function(b){var d={},g;for(g in b)if(d.property=a.Object.getOwnPropertyDescriptor(b,g),d.property&&g.toUpperCase()!=g&&!qa(g,"on")&&!e.hasOwnProperty.call(c,g)){if("function"==typeof d.property.value)d.method=d.property.value,c[g]=function(a){return function(){return a.method.apply(this.h,
arguments)}}(d);else{var f={};d.property.get&&(f.get=function(a){return function(){return a.property.get.call(this.h)}}(d));d.property.set&&(f.set=function(a){return function(b){return a.property.set.call(this.h,b)}}(d));a.Object.defineProperty(c,g,f)}d={method:d.method,property:d.property}}});return b}
function Va(a,b){var c=a.ownerDocument.defaultView.HTMLFormElement.prototype.cloneNode.call(a,!1),d={},e;for(e in c)if(d.name=e,!(d.name in b||d.name.toUpperCase()==d.name||qa(d.name,"on"))){d.desc=Wa[d.name];var g=a[d.name];if(d.desc)if(d.desc.access==L){d.actual=void 0;if(g&&g.nodeType){var f=c=g,h=f.nextSibling,f=f.parentNode;f.removeChild(c);try{d.actual=a[d.name]}finally{f.insertBefore(c,h)}}else d.actual=g;Object.defineProperty(b,d.name,{get:function(a){return function(){return a.actual}}(d)})}else d.desc.access==
M&&(d.attr=d.desc.attr||d.name,Object.defineProperty(b,d.name,{get:function(c){return function(){var d=b.getAttribute(c.attr);return null==d&&void 0!==c.desc.def?c.desc.def:c.desc.type==Xa?"true"===d:c.desc.type==N?null!=d:c.desc.type==Ya?(d=d||"",w(a,"url").parse(d).href):d}}(d),set:function(a){return function(c){a.desc.type==N&&(c=c?"":null);null!=c?b.setAttribute(a.attr,c):b.removeAttribute(a.attr)}}(d)}));else Object.defineProperty(b,d.name,{get:function(b){return function(){return a[b.name]}}(d),
set:function(b){return function(c){a[b.name]=c}}(d)});d={actual:d.actual,attr:d.attr,desc:d.desc,name:d.name}}}
var M=1,L=2,Ya=1,Xa=2,N=3,Wa={acceptCharset:{access:M,attr:"accept-charset"},accessKey:{access:M,attr:"accesskey"},action:{access:M,type:Ya},attributes:{access:L},autocomplete:{access:M,def:"on"},children:{access:L},dataset:{access:L},dir:{access:M},draggable:{access:M,type:Xa,def:!1},elements:{access:L},encoding:{access:L},enctype:{access:M},hidden:{access:M,type:N,def:!1},id:{access:M,def:""},lang:{access:M},localName:{access:L},method:{access:M,def:"get"},name:{access:M},noValidate:{access:M,attr:"novalidate",
type:N,def:!1},prefix:{access:L},spellcheck:{access:M},style:{access:L},target:{access:M,def:""},title:{access:M},translate:{access:M}};function Za(a,b){return a.hasAttribute("verify-xhr")?new $a(a,b):new ab(a)}function O(a){this.h=a}O.prototype.onCommit=function(){bb(this);return cb(this)?this.ba():Promise.resolve({updatedElements:[],errors:[]})};O.prototype.ba=function(){return Promise.resolve({updatedElements:[],errors:[]})};
function cb(a){a=a.h.elements;for(var b=0;b<a.length;b++){var c=a[b];if(!c.disabled)switch(c.type){case "select-multiple":case "select-one":for(var c=c.options,d=0;d<c.length;d++)if(c[d].selected!==c[d].defaultSelected)return!0;break;case "checkbox":case "radio":if(c.checked!==c.defaultChecked)return!0;break;default:if(c.value!==c.defaultValue)return!0}}return!1}function bb(a){(a=a.h.elements)&&D(a,function(a){a.setCustomValidity("")})}function ab(a){O.apply(this,arguments)}n(ab,O);
function $a(a,b){this.h=a;this.K=b;this.H=null;this.Y=[]}n($a,O);$a.prototype.ba=function(){var a=this,b=this.K().then(function(){return[]},function(a){return db(a)});return eb(this,b).then(function(b){return fb(a,b)})};function eb(a,b){if(!a.H){a.H=new ja;var c=function(){return a.H=null};a.H.then(c,c)}return a.H.add(b)}
function fb(a,b){function c(a){return b.every(function(b){return a.name!==b.name})}var d=[],e=a.Y;a.Y=b;for(var g=0;g<b.length;g++){var f=b[g],h=q().assertString(f.name,"Verification errors must have a name property"),f=q().assertString(f.message,"Verification errors must have a message property"),h=q().assertElement(a.h.querySelector('[name="'+h+'"]'),"Verification error name property must match a field name");h.checkValidity()&&(h.setCustomValidity(f),d.push(h))}var k=e.filter(c).map(function(b){return a.h.querySelector('[name="'+
b.name+'"]')});return{updatedElements:d.concat(k),errors:b}}function db(a){return(a=a.response)?a.json().then(function(a){return a.verifyErrors||[]},function(){return[]}):Promise.resolve([])};function P(a,b){this.V=b;this.qa=y(a,"viewport");this.ca=z(a.win,"vsync");this.T=null;this.S="";this.N=!1;this.A=a.win.document.createElement("div");Ha(this.A,!1);this.A.classList.add("i-amphtml-validation-bubble");this.A.__BUBBLE_OBJ=this;a.getBody().appendChild(this.A)}P.prototype.isActiveOn=function(a){return this.N&&a==this.T};P.prototype.hide=function(){this.N&&(this.N=!1,this.T=null,this.S="",this.ca.run({measure:void 0,mutate:gb},{bubbleElement:this.A}))};
P.prototype.show=function(a,b){if(!this.isActiveOn(a)||b!=this.S){this.N=!0;this.T=a;this.S=b;var c={message:b,targetElement:a,bubbleElement:this.A,viewport:this.qa,id:this.V};this.ca.run({measure:hb,mutate:ib},c)}};function gb(a){a.bubbleElement.removeAttribute("aria-alert");a.bubbleElement.removeAttribute("role");for(var b=a.bubbleElement;b.firstChild;)b.removeChild(b.firstChild);Ha(a.bubbleElement,!1)}function hb(a){a.targetRect=a.viewport.getLayoutRect(a.targetElement)}
function ib(a){for(var b=a.bubbleElement;b.firstChild;)b.removeChild(b.firstChild);var c=a.bubbleElement.ownerDocument.createElement("div");c.id="bubble-message-"+a.id;c.textContent=a.message;a.bubbleElement.setAttribute("aria-labeledby",c.id);a.bubbleElement.setAttribute("role","alert");a.bubbleElement.setAttribute("aria-live","assertive");a.bubbleElement.appendChild(c);Ha(a.bubbleElement,!0);b=a.bubbleElement;a={top:a.targetRect.top-10+"px",left:a.targetRect.left+a.targetRect.width/2+"px"};for(var d in a){var e=
b,g=a[d],f;f=e.style;var h=d;if(qa(h,"--"))f=h;else{H||(H=u());var k=H[h];if(!k){k=h;if(void 0===f[h]){var m=h.charAt(0).toUpperCase()+h.slice(1);b:{for(var t=0;t<Ga.length;t++){var Fa=Ga[t]+m;if(void 0!==f[Fa]){m=Fa;break b}}m=""}void 0!==f[m]&&(k=m)}H[h]=k}f=k}f&&(e.style[f]=g)}};var jb,kb,lb=0;function Q(a){this.form=a;this.ampdoc=A(a);this.resources=y(a,"resources");this.root=this.ampdoc.getRootNode();this.M=null}l=Q.prototype;l.report=function(){};l.onBlur=function(){};l.onInput=function(){};l.inputs=function(){return this.form.querySelectorAll("input,select,textarea")};l.fireValidityEventIfNecessary=function(){var a=this.M;this.M=this.form.checkValidity();if(a!==this.M){var b=Ea(this.form.ownerDocument.defaultView,this.M?"valid":"invalid",null,{bubbles:!0});this.form.dispatchEvent(b)}};
function mb(a){Q.apply(this,arguments)}n(mb,Q);mb.prototype.report=function(){this.form.reportValidity();this.fireValidityEventIfNecessary()};function R(a){Q.call(this,a);var b="i-amphtml-validation-bubble-"+lb++;this.F=new P(this.ampdoc,b)}n(R,Q);R.prototype.report=function(){for(var a=this.inputs(),b=0;b<a.length;b++)if(!a[b].checkValidity()){a[b].focus();this.F.show(a[b],a[b].validationMessage);break}this.fireValidityEventIfNecessary()};R.prototype.onBlur=function(){this.F.hide()};
R.prototype.onInput=function(a){a=a.target;this.F.isActiveOn(a)&&(a.checkValidity()?(a.removeAttribute("aria-invalid"),this.F.hide()):(a.setAttribute("aria-invalid","true"),this.F.show(a,a.validationMessage)))};function S(a){Q.call(this,a)}n(S,Q);l=S.prototype;l.reportInput=function(a){var b=nb(a);b&&this.showValidationFor(a,b)};l.hideAllValidations=function(){for(var a=this.inputs(),b=0;b<a.length;b++)this.hideValidationFor(a[b])};
l.getValidationFor=function(a,b){if(!a.id)return null;var c="__AMP_VALIDATION_"+b;c in a||(a[c]=this.root.querySelector("[visible-when-invalid="+b+"]"+("[validation-for="+a.id+"]")));return a[c]};l.showValidationFor=function(a,b){var c=this.getValidationFor(a,b);c&&(c.textContent.trim()||(c.textContent=a.validationMessage),a.__AMP_VISIBLE_VALIDATION=c,this.resources.mutateElement(a,function(){return a.setAttribute("aria-invalid","true")}),this.resources.mutateElement(c,function(){return c.classList.add("visible")}))};
l.hideValidationFor=function(a){var b=this.getVisibleValidationFor(a);b&&(delete a.__AMP_VISIBLE_VALIDATION,this.resources.mutateElement(a,function(){return a.removeAttribute("aria-invalid")}),this.resources.mutateElement(b,function(){return b.classList.remove("visible")}))};l.getVisibleValidationFor=function(a){return a.__AMP_VISIBLE_VALIDATION};l.shouldValidateOnInteraction=function(){throw Error("Not Implemented");};
l.onInteraction=function(a){a=a.target;var b=!!a.checkValidity&&this.shouldValidateOnInteraction(a);this.hideValidationFor(a);b&&!a.checkValidity()&&this.reportInput(a)};l.onBlur=function(a){this.onInteraction(a)};l.onInput=function(a){this.onInteraction(a)};function T(a){S.apply(this,arguments)}n(T,S);T.prototype.report=function(){this.hideAllValidations();for(var a=this.inputs(),b=0;b<a.length;b++)if(!a[b].checkValidity()){this.reportInput(a[b]);a[b].focus();break}this.fireValidityEventIfNecessary()};
T.prototype.shouldValidateOnInteraction=function(a){return!!this.getVisibleValidationFor(a)};function U(a){S.apply(this,arguments)}n(U,S);U.prototype.report=function(){this.hideAllValidations();for(var a=null,b=this.inputs(),c=0;c<b.length;c++)b[c].checkValidity()||(a=a||b[c],this.reportInput(b[c]));a&&a.focus();this.fireValidityEventIfNecessary()};U.prototype.shouldValidateOnInteraction=function(a){return!!this.getVisibleValidationFor(a)};function V(a){S.apply(this,arguments)}n(V,S);
V.prototype.shouldValidateOnInteraction=function(){return!0};V.prototype.onInteraction=function(a){S.prototype.onInteraction.call(this,a);this.fireValidityEventIfNecessary()};function ob(a){U.apply(this,arguments)}n(ob,U);ob.prototype.shouldValidateOnInteraction=function(){return!0};ob.prototype.onInteraction=function(a){U.prototype.onInteraction.call(this,a);this.fireValidityEventIfNecessary()};
function pb(a){var b=a.getAttribute("custom-validation-reporting");switch(b){case "as-you-go":return new V(a);case "show-all-on-submit":return new U(a);case "interact-and-submit":return new ob(a);case "show-first-on-submit":return new T(a)}a.ownerDocument&&void 0===jb&&(jb=!!document.createElement("form").reportValidity);return jb?new mb(a):new R(a)}
function nb(a){var b=["badInput"],c;for(c in a.validity)b.includes(c)||b.push(c);c=b.filter(function(b){return!0===a.validity[b]});return c.length?c[0]:null};var qb=["amp-selector"];
function rb(a,b){var c=this;try{Ta(a)}catch(f){r().error("amp-form","form proxy failed to install",f)}a.__AMP_FORM=this;this.V=b;this.l=a.ownerDocument.defaultView;this.oa=z(this.l,"timer");this.aa=w(a,"url-replace");this.U=null;this.h=a;this.w=z(this.l,"templates");this.ua=z(this.l,"xhr");this.I=w(this.h,"action");this.ka=y(this.h,"resources");this.C=y(this.h,"viewer");this.D=new K("amp-form",this.C,this.w);this.m=(this.h.getAttribute("method")||"GET").toUpperCase();this.na=this.h.getAttribute("target");
this.G=sb(this,"action-xhr");this.ta=sb(this,"verify-xhr");this.$=!this.h.hasAttribute("novalidate");this.h.setAttribute("novalidate","");this.$||this.h.setAttribute("amp-novalidate","");this.h.classList.add("i-amphtml-form");var d=this.h.querySelectorAll('[type="submit"]');this.ma=da(d);this.o="initial";b=this.h.elements;for(var e=0;e<b.length;e++){var g=b[e].name;q().assert("__amp_source_origin"!=g&&"__amp_form_verify"!=g,"Illegal input name, %s found: %s",g,b[e])}this.O=pb(this.h);this.pa=Za(this.h,
function(){return tb(c)});this.I.installActionHandler(this.h,this.da.bind(this),100);ub(this);this.ia=this.sa=null;this.fa=la(a,"form-submit-service")}function sb(a,b){var c=a.h.getAttribute(b);if(c){var d=w(a.h,"url");d.assertHttpsUrl(c,a.h,b);q().assert(!d.isProxyOrigin(c),"form "+b+" should not be on AMP CDN: %s",a.h)}return c}l=rb.prototype;
l.requestForFormFetch=function(a,b,c){var d,e,g="GET"==b||"HEAD"==b;if(g){vb(this);var f=I(this.h);c&&ga(f,c);var h=[],k;for(k in f){var m=f[k];if(null!=m)if(Array.isArray(m))for(var t=0;t<m.length;t++)h.push(encodeURIComponent(k)+"="+encodeURIComponent(m[t]));else h.push(encodeURIComponent(k)+"="+encodeURIComponent(m))}d=Ca(a,h.join("&"))}else for(f in d=a,e=new J(this.h),c)e.append(f,c[f]);return{xhrUrl:d,fetchOpt:v({body:e,method:b,credentials:"include",headers:v({Accept:"application/json"})})}};
l.da=function(a){var b=this;"submit"==a.method?wb(this).then(function(){var c=a;"submitting"!=b.o&&xb(b)&&(yb(b,c.trust),"GET"!=b.m||b.G||b.h.submit())}):"clear"===a.method&&zb(this);return null};function wb(a){if(a.U)return a.U;var b=a.h.querySelectorAll(qb.join(",")),c=da(b).map(function(a){return a.whenBuilt()});return a.U=Ab(a,c,2E3)}
function ub(a){a.C.whenNextVisible().then(function(){var b=a.h.querySelector("[autofocus]");if(b)try{b.focus()}catch(c){}});a.h.addEventListener("submit",a.ga.bind(a),!0);a.h.addEventListener("blur",function(b){Bb(b.target);a.O.onBlur(b)},!0);a.D.isSupported()||a.h.addEventListener("change",function(b){a.pa.onCommit().then(function(c){var d=c.updatedElements,e=c.errors;d.forEach(Bb);a.O.onBlur(b);"verifying"===a.o&&(e.length?(W(a,"verify-error"),X(a,{verifyErrors:e}).then(function(){Y(a,"verify-error",
e)})):W(a,"initial"))})});a.h.addEventListener("input",function(b){Bb(b.target);a.O.onInput(b)})}function Cb(a,b){Db(a,"Form analytics not supported");var c={},d=I(a.h),e;for(e in d)Object.prototype.hasOwnProperty.call(d,e)&&(c["formFields["+e+"]"]=d[e].join(","));c.formId=a.h.id;Na(a.h,b,c)}
function zb(a){a.h.reset();W(a,"initial");a.h.classList.remove("user-valid");a.h.classList.remove("user-invalid");var b=a.h.querySelectorAll(".user-valid, .user-invalid");D(b,function(a){a.classList.remove("user-valid");a.classList.remove("user-invalid")});var c=a.h.querySelectorAll(".visible[validation-for]");D(c,function(a){a.classList.remove("visible")});Eb(a.h)}
l.ga=function(a){"submitting"!=this.o&&xb(this)?((this.G||"POST"==this.m)&&a.preventDefault(),yb(this,100)):(a.stopImmediatePropagation(),a.preventDefault())};
function yb(a,b){try{a.fa.fire(a.h)}catch(g){r().error("amp-form","Form submit service failed: "+g)}var c=Fb(a);if(a.G)Gb(a,c,b);else if("POST"==a.m)q().assert(!1,"Only XHR based (via action-xhr attribute) submissions are supported for POST requests. %s",a.h);else if("GET"==a.m){var d=c;Db(a,"Non-XHR GETs not supported.");vb(a);for(var e=0;e<d.length;e++)a.aa.expandInputValueSync(d[e]);Cb(a,"amp-form-submit")}}function Fb(a){return a.h.querySelectorAll('[type="hidden"][data-amp-replace]')}
function tb(a){if("submitting"===a.o)return Promise.resolve();W(a,"verifying");Y(a,"verify",null);return Hb(a,Fb(a)).then(function(){var b={};return a.K(a.ta,a.m,(b.__amp_form_verify=!0,b))})}function Gb(a,b,c){W(a,"submitting");var d=Hb(a,b);a.D.isSupported()?d.then(function(){return Ib(a,c)}):d.then(function(){Jb(a,c);return a.K(a.G,a.m)}).then(function(b){return Kb(a,b)},function(b){return Lb(a,b)})}
function Ib(a,b){var c,d=I(a.h);return X(a,d).then(function(){a.I.trigger(a.h,"submit",null,b)}).then(function(){var b=c=a.requestForFormFetch(a.G,a.m),d=c.fetchOpt||{},f;f=d.method;void 0===f?f="GET":(f=f.toUpperCase(),Qa.includes(f));d.method=f;d.headers=d.headers||v({});b.fetchOpt=d;var b=c,h=a.l;f=c.xhrUrl;d=c.fetchOpt;!1===d.ampCors&&(d.requireAmpResponseSourceOrigin=!1);!0===d.requireAmpResponseSourceOrigin&&r().error("XHR","requireAmpResponseSourceOrigin is deprecated, use ampCors instead");
void 0===d.requireAmpResponseSourceOrigin&&(d.requireAmpResponseSourceOrigin=!0);h=h.origin||G(h.location.href).origin;f=G(f).origin;h==f&&(d.headers=d.headers||{},d.headers["AMP-Same-Origin"]="true");b.fetchOpt=d;b=c;f=c.xhrUrl;if(!1!==c.fetchOpt.ampCors){d=a.l;var h=G(f).search,k=Object.create(null);if(h)for(var m;m=ba.exec(h);){var t=aa(m[1],m[1]);m=m[2]?aa(m[2],m[2]):"";k[t]=m}q().assert(!("__amp_source_origin"in k),"Source origin is not allowed in %s",f);d=G(Da(d.location.href)).origin;f=Ca(f,
encodeURIComponent("__amp_source_origin")+"="+encodeURIComponent(d),void 0)}b.xhrUrl=f;return a.D.fetchAndRenderTemplate(a.h,c,Mb(a))}).then(function(b){return Nb(a,b,c)},function(b){return Ob(a,b)})}function Mb(a){var b=a.h.querySelector("div[submit-success]"),c=a.h.querySelector("div[submit-error]"),d,e;b&&(d=a.w.maybeFindTemplate(b));c&&(e=a.w.maybeFindTemplate(c));return{successTemplate:d,errorTemplate:e}}
function Ob(a,b){W(a,"submit-error");q().error("amp-form","Form submission failed: "+b);return ia(function(){X(a,b||{}).then(function(){Y(a,"submit-error",b)})})}function Jb(a,b){Cb(a,"amp-form-submit");var c=I(a.h);X(a,c).then(function(){a.I.trigger(a.h,"submit",null,b)})}function Hb(a,b){for(var c=[],d=0;d<b.length;d++)c.push(a.aa.expandInputValueAsync(b[d]));return Ab(a,c,100)}
l.K=function(a,b,c){Db(this,"XHRs should be proxied.");a=this.requestForFormFetch(a,b,c);return this.ua.fetch(a.xhrUrl,a.fetchOpt)};function Nb(a,b,c){a.D.verifySsrResponse(a.l,b,c);return Pb(a,ia(function(){return b.html}))}function Kb(a,b){return Pb(a,b.json()).then(function(){Cb(a,"amp-form-submit-success");Qb(a,b)})}
function Pb(a,b){return b.then(function(b){W(a,"submit-success");X(a,b||{}).then(function(){Y(a,"submit-success",b)})},function(a){q().error("amp-form","Failed to parse response JSON: "+a)})}function Lb(a,b){return(b&&b.response?b.response.json().catch(function(){return null}):Promise.resolve(null)).then(function(c){Cb(a,"amp-form-submit-error");W(a,"submit-error");X(a,c||{}).then(function(){Y(a,"submit-error",c)});Qb(a,b.response);q().error("amp-form","Form submission failed: "+b)})}
function Db(a,b){var c=a.D.isSupported();q().assert(!1===c,"[amp-form]: viewerRenderTemplate | "+b)}function vb(a){var b=a.h.querySelectorAll("input[type=password],input[type=file]");q().assert(0==b.length,"input[type=password] or input[type=file] may only appear in form[method=post]")}function xb(a){void 0===kb&&(kb=!!a.l.document.createElement("input").checkValidity);if(kb){var b=Rb(a.h);if(a.$)return a.O.report(),b}return!0}
function Qb(a,b){Db(a,"Redirects not supported.");if(b&&b.headers){var c=b.headers.get("AMP-Redirect-To");if(c){q().assert("_blank"!=a.na,"Redirecting to target=_blank using AMP-Redirect-To is currently not supported, use target=_top instead. %s",a.h);try{var d=w(a.h,"url");d.assertAbsoluteHttpOrHttpsUrl(c);d.assertHttpsUrl(c,"AMP-Redirect-To","Url")}catch(e){q().assert(!1,"The `AMP-Redirect-To` header value must be an absolute URL starting with https://. Found %s",c)}la(a.h,"navigation").navigateTo(a.l,
c,"AMP-Redirect-To")}}}function Y(a,b,c){c=Ea(a.l,"amp-form."+b,v({response:c}));a.I.trigger(a.h,b,c,100)}function Ab(a,b,c){return Promise.race([Promise.all(b),a.oa.promise(c)])}function W(a,b){var c=a.o;a.h.classList.remove("amp-form-"+c);a.h.classList.add("amp-form-"+b);Sb(a,c);a.o=b;a.ma.forEach(function(a){"submitting"==b?a.setAttribute("disabled",""):a.removeAttribute("disabled")})}
function X(a,b){var c=a.h.querySelector("["+a.o+"]"),d=Promise.resolve();if(c){var e="rendered-message-"+a.V;c.setAttribute("role","alert");c.setAttribute("aria-labeledby",e);c.setAttribute("aria-live","assertive");a.w.hasTemplate(c)?d=a.w.findAndRenderTemplate(c,b).then(function(b){b.id=e;b.setAttribute("i-amphtml-rendered","");c.appendChild(b);var d=Ea(a.l,"amp:dom-update",null,{bubbles:!0});c.dispatchEvent(d)}):a.ka.mutateElement(c,function(){})}return d}
function Sb(a,b){if(a=a.h.querySelector("["+b+"]")){var c;if(null==C){b=a.ownerDocument;try{c=b.createElement("div");var d=b.createElement("div");c.appendChild(d);C=c.querySelector(":scope div")===d}catch(g){C=!1}}C?c=a.querySelector(":scope > [i-amphtml-rendered]"):(a.classList.add("i-amphtml-scoped"),c=a.querySelector(".i-amphtml-scoped > [i-amphtml-rendered]"),a.classList.remove("i-amphtml-scoped"));var e=c;e&&(c=e,c.parentElement&&c.parentElement.removeChild(c))}}l.va=function(){return this.ia};
l.wa=function(){return this.sa};function Rb(a){D(a.querySelectorAll("input,select,textarea,fieldset"),function(a){return Z(a)});return Z(a)}function Eb(a){var b=document.createElement("input"),c={},d;for(d in b.validity){c.validityState=d;var e=a.querySelectorAll("."+String(c.validityState).replace(oa,pa));D(e,function(a){return function(b){return b.classList.remove(a.validityState)}}(c));c={validityState:c.validityState}}}
function Z(a,b){b=void 0===b?!1:b;if(!a.checkValidity)return!0;var c=!1,d=a.classList.contains("user-valid")?"valid":a.classList.contains("user-invalid")?"invalid":"none",e=a.checkValidity();"valid"!=d&&e?(a.classList.add("user-valid"),a.classList.remove("user-invalid"),c="invalid"==d):"invalid"==d||e||(a.classList.add("user-invalid"),a.classList.remove("user-valid"),c=!0);if(a.validity)for(var g in a.validity)a.classList.toggle(g,a.validity[g]);if(b&&c){g=sa(a);for(var f=0;f<g.length;f++)Z(g[f]);
a.form&&Z(a.form)}return e}function Bb(a){Z(a,!0)}function Tb(a){this.ra=Ub(a).then(function(){return Vb(a)})}Tb.prototype.whenInitialized=function(){return this.ra};function Ub(a){var b=new ha;Ia(a,b.resolve);return b.promise}function Vb(a){return a.whenReady().then(function(){Wb(a.getRootNode().querySelectorAll("form"));Xb(a.getRootNode())})}function Wb(a){a&&D(a,function(a,c){var b=a.__AMP_FORM||null;b||new rb(a,"amp-form-"+c)})}
function Xb(a){a.addEventListener("amp:dom-update",function(){Wb(a.querySelectorAll("form"))})}(function(a){a.registerServiceForDoc("amp-form",Tb);a.registerServiceForDoc("form-submit-service",Pa)})(self.AMP);
})});
//# sourceMappingURL=amp-form-0.1.js.map

