(()=>{function E(e,l){return e.indexOf(l)!==-1}function S(e){return E(["auto","dark","light"],e)}function W(e){return E(["auto","never"],e)}function O(e){return e>0&&e<9e5}var Ee=/^[0-9A-Za-z_-]{3,100}$/;function ie(e){return Ee.test(e)}var ye=/^[a-z0-9_-]{0,32}$/i;function ae(e){return ye.test(e)}var he=/^[a-z0-9_-]{0,255}$/i;function oe(e){return he.test(e)}function D(e){return E(["normal","compact","invisible"],e)}function P(e){return E(["auto","manual","never"],e)}var Ie=/^[a-z]{2}(-[A-Z]{2})?$/;function H(e){return e==="auto"||Ie.test(e)}function z(e){return E(["always","execute","interaction-only"],e)}function U(e){return E(["render","execute"],e)}var ve=".cf-turnstile",xe=".cf-challenge",be=".g-recaptcha",we="cf_challenge_response",Te="cf-turnstile-response",Ae="g-recaptcha-response",Re=8e3,L=!1,de=!1;function s(e){let l=`[Cloudflare Turnstile] ${e}.`;throw console.error(l),new Error(l)}function p(e){console.warn(`[Cloudflare Turnstile] ${e}.`)}function $e(e){s(`Failed with code: ${e}`)}function F(e){ge(e,"")}function ue(){let e=[ve,xe];L&&e.push(be);let l=document.querySelectorAll(e.join(", "));for(let o=0;o 0 and < 900000"`);return}let I=(ee=t["refresh-expired"])!=null?ee:"auto";if(P(I))t["refresh-expired"]=I;else{s(`Invalid type for parameter "refresh-expired", expected never|manual|auto, got "${I}" ${typeof I}`);return}let q=r.getElementsByTagName("iframe")[0];q&&q.id.startsWith(C)&&w(r);let y=document.createElement("iframe");if(d!==void 0&&typeof d!="string"){s(`Invalid type for parameter "action", expected "string", got "${typeof d}"`);return}if(d=d===void 0?null:d,!ae(d)){s(`Invalid input for parameter "action", got "${d}"`);return}if(g!==void 0&&typeof g!="string"){s(`Invalid type for parameter "cData", expected "string", got "${typeof g}"`);return}if(!oe(g)){s(`Invalid input for parameter "cData", got "${g}"`);return}g=g===void 0?null:g;let fe="https://challenges.cloudflare.com",N=u(),A=R(N),G=[];t.execution==="render"&&G.push("execute"),l++,e.set(N,{idx:l,action:d,cData:g,cbSuccess:_,cbError:b,cbExpired:M,cbTimeout:x,params:t,isResetting:!1,isInitialized:!1,msgQueue:G}),y.style.display="none",y.style.border="none",y.style.overflow="hidden";let me="h/g/";if(y.setAttribute("src",`${fe}/cdn-cgi/challenge-platform/${me}turnstile/if/ov2/av0/${N}/${f}/${t.theme}/${t.size}`),y.id=A,y.tabIndex=(te=t.tabindex)!=null?te:0,y.title="Widget containing a Cloudflare security challenge",r.appendChild(y),(ne=t["response-field"])!=null?ne:!0){let m=document.createElement("input");if(m.type="hidden",m.name=(re=t["response-field-name"])!=null?re:Te,m.id=`${A}_response`,r.appendChild(m),typeof t["response-field-name"]!="string"&&Me(f)){let k=document.createElement("input");k.type="hidden",k.name=we,k.id=`${A}_legacy_response`,r.appendChild(k)}}if(L){let m=document.createElement("input");m.type="hidden",m.name=Ae,m.id=`${A}_g_response`,r.appendChild(m)}return A}return{ready(i){if(de)throw p("turnstile.ready() would break if called *before* the Turnstile api.js script is loaded by visitors"),new Error("Remove async/defer from the Turnstile api.js script tag before using turnstile.ready().");if(typeof i!="function"&&s(`turnstile.ready() expected a "function" argument, got "${typeof i}"`),i(),typeof i!="function"&&s('Invalid value for parameter "callback", you must provide a callback function as argument to ready()'),pe){i();return}ce.push(i)},implicitRender:ue,execute(i,a){let r=c(i);if(!r){if(a===void 0){s("Please provide 2 parameters to execute: container and parameters");return}r=T(i,a)}let n=e.get(r);if(n){if(n.response){n.cbSuccess&&n.cbSuccess(n.response);return}n.msgQueue.push("execute");let t=R(r),d=document.querySelector(`#${t}`);if(!d){s(`Widget ${t} to execute was not found.`);return}n.isInitialized&&h(n,r,d),n.params.appearance==="execute"&&B(d,n)}},render:T,reset:v,remove:w,getResponse(i){if(typeof i=="undefined"){let r,n=-1;for(let[t,d]of e)n 0 and < 900000"`));let r=e.getAttribute("data-refresh-expired");r&&(P(r)?o["refresh-expired"]=r:p(`Unknown data-refresh-expired value: "${r}, expected either: 'never', 'auto' or 'manual'.`));let n=e.getAttribute("data-language");n&&(H(n)?o.language=n:p(`Invalid data-language value: "${n}, expected either: auto, or an ISO 639-1 two-letter language code (e.g. en) or language and country code (e.g. en-US)`));let t=e.getAttribute("data-error-callback");t&&window[t]&&(o["error-callback"]=window[t]);let d=e.getAttribute("data-callback");d&&window[d]&&(o.callback=window[d]);let g=e.getAttribute("data-expired-callback");g&&window[g]&&(o["expired-callback"]=window[g]);let f=e.getAttribute("data-timeout-callback");f&&window[f]&&(o["timeout-callback"]=window[f]);let _=(I=e.getAttribute("data-response-field"))!=null?I:"true";o["response-field"]=_==="true";let M=e.getAttribute("data-response-field-name");M&&(o["response-field-name"]=M);let x=e.getAttribute("data-execution");x&&(U(x)?o.execution=x:p(`Unknown data-execution value: "${x}, expected either: 'render' or 'execute'.`));let b=e.getAttribute("data-appearance");return b&&(z(b)?o.appearance=b:p(`Unknown data-appearance value: "${b}, expected either: 'always', 'execute', or 'interaction-only'.`)),o}function _e(){let e=/\/turnstile\/v0(\/.*)?\/api\.js/,l=document.currentScript;if(e.test(l.src))return l;let o=document.getElementsByTagName("script");for(let u=0;u1?new URLSearchParams(o[1]):new URLSearchParams}var $=Ne();if($){let e=$.get("compat");(e==null?void 0:e.toLowerCase())==="recaptcha"?window.grecaptcha?p("grecaptcha is already defined. The compatibility layer will not be enabled"):(p("Compatibility layer enabled"),L=!0,window.grecaptcha=Y):e!==null&&p(`Unknown value for api.js?compat: "${e}", ignoring`),$.forEach(function(o,u){E(["onload","compat","render"],u)||p(`Unknown parameter passed to api.js: "?${u}=...", ignoring`)});let l=$.get("onload");l&&setTimeout(function(){typeof window[l]=="function"&&window[l]()},0)}var Se="turnstile"in window;Se?p("Turnstile already has been loaded. Is Turnstile imported multiple times?"):(window.turnstile=Y,$.get("render")!=="explicit"&&(document.readyState==="complete"||document.readyState==="interactive"?setTimeout(se,0):window.addEventListener("DOMContentLoaded",se)));})();