diff --git a/app/__init__.py b/app/__init__.py index 4deb480..6d80285 100644 --- a/app/__init__.py +++ b/app/__init__.py @@ -6,7 +6,8 @@ from flask_migrate import Migrate from flask_sqlalchemy import SQLAlchemy from flask_wtf import FlaskForm -from wtforms import StringField, TextAreaField +from werkzeug.security import check_password_hash, generate_password_hash +from wtforms import PasswordField, StringField, TextAreaField from wtforms.validators import DataRequired app = Flask(__name__, instance_relative_config=True) @@ -27,6 +28,7 @@ class Plan(db.Model): sql = db.Column(db.String) is_public = db.Column(db.Boolean, default=False) delete_key = db.Column(db.String) + password_hash = db.Column(db.String, default=False) __table_args__ = {"postgresql_partition_by": "HASH (id)"} @@ -55,6 +57,11 @@ class PlanForm(FlaskForm): title = StringField("Title") plan = TextAreaField("Plan", validators=[DataRequired()]) query = TextAreaField("Query") + password = StringField("Password") + + +class PasswordForm(FlaskForm): + password = PasswordField("Password") @app.route("/new", methods=["POST"]) @@ -73,14 +80,21 @@ def save(json=False): """ form = PlanForm() if form.validate_on_submit(): - sql = "SELECT register_plan(:title, :plan, :query, :is_public)" + plan = form.plan.data + password_hash = None + if password := form.password.data: + password_hash = generate_password_hash(password) + sql = """ + SELECT register_plan(:title, :plan, :query, :is_public, :password_hash) + """ query = db.session.execute( sql, { "title": form.title.data, - "plan": form.plan.data, + "plan": plan, "query": form.query.data, "is_public": False, + "password_hash": password_hash, }, ) db.session.commit() @@ -97,12 +111,26 @@ def plan(): return redirect(url_for("plan_error")) -@app.route("/plan/") +@app.route("/plan/", methods=["GET"]) def plan_from_db(id): plan = Plan.query.get_or_404(id, description="This plan doesn't exist.") + if plan.password_hash is not None: + return render_template("locked.html") return render_template("plan.html", plan=plan) +@app.route("/plan/", methods=["POST"]) +def plan_from_db_with_password(id): + plan = Plan.query.get_or_404(id, description="This plan doesn't exist.") + form = PasswordForm() + form.validate_on_submit() + if plan.password_hash is None or check_password_hash( + plan.password_hash, form.password.data + ): + return render_template("plan.html", plan=plan) + return render_template("locked.html", invalid_password=True) + + @app.route("/plan//") def delete(id, key): plan = Plan.query.get_or_404(id, description="This plan doesn't exist.") diff --git a/app/static/dist/.vite/manifest.json b/app/static/dist/.vite/manifest.json index abac9f7..6fb4de0 100644 --- a/app/static/dist/.vite/manifest.json +++ b/app/static/dist/.vite/manifest.json @@ -27,7 +27,7 @@ ] }, "app/static/js/index.js": { - "file": "assets/index-H99ZOPuf.js", + "file": "assets/index-z8Sih27D.js", "name": "index", "src": "app/static/js/index.js", "isEntry": true, diff --git a/app/static/dist/assets/index-H99ZOPuf.js b/app/static/dist/assets/index-z8Sih27D.js similarity index 81% rename from app/static/dist/assets/index-H99ZOPuf.js rename to app/static/dist/assets/index-z8Sih27D.js index f3932d3..e0dfd39 100644 --- a/app/static/dist/assets/index-H99ZOPuf.js +++ b/app/static/dist/assets/index-z8Sih27D.js @@ -1,18 +1,18 @@ -var Wr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);import{l as Pr,f as Dr,a as Hr,b as Ir,M as Ua,F as Mr}from"./about-BdlHKEOl.js";import{d as Fr,A as Ur,r as ae,o as qr,e as Yr,w as dt,H as zr,b as Jr}from"./vue-DqnmULX3.js";import{r as jr,g as Vr}from"./lodash-BwctMegf.js";var f0=Wr((I0,St)=>{function hs(e,t){return function(){return e.apply(t,arguments)}}const{toString:Gr}=Object.prototype,{getPrototypeOf:_a}=Object,bt=(e=>t=>{const a=Gr.call(t);return e[a]||(e[a]=a.slice(8,-1).toLowerCase())})(Object.create(null)),oe=e=>(e=e.toLowerCase(),t=>bt(t)===e),Nt=e=>t=>typeof t===e,{isArray:Ie}=Array,Ze=Nt("undefined");function $r(e){return e!==null&&!Ze(e)&&e.constructor!==null&&!Ze(e.constructor)&&K(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const fs=oe("ArrayBuffer");function Kr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&fs(e.buffer),t}const Zr=Nt("string"),K=Nt("function"),_s=Nt("number"),Ot=e=>e!==null&&typeof e=="object",Xr=e=>e===!0||e===!1,ut=e=>{if(bt(e)!=="object")return!1;const t=_a(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Qr=oe("Date"),ei=oe("File"),ti=oe("Blob"),ai=oe("FileList"),si=e=>Ot(e)&&K(e.pipe),ri=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||K(e.append)&&((t=bt(e))==="formdata"||t==="object"&&K(e.toString)&&e.toString()==="[object FormData]"))},ii=oe("URLSearchParams"),[oi,ni,li,ci]=["ReadableStream","Request","Response","Headers"].map(oe),di=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function tt(e,t,{allOwnKeys:a=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),Ie(e))for(s=0,r=e.length;s0;)if(r=a[s],t===r.toLowerCase())return r;return null}const Le=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ks=e=>!Ze(e)&&e!==Le;function sa(){const{caseless:e}=ks(this)&&this||{},t={},a=(s,r)=>{const i=e&&Ss(t,r)||r;ut(t[i])&&ut(s)?t[i]=sa(t[i],s):ut(s)?t[i]=sa({},s):Ie(s)?t[i]=s.slice():t[i]=s};for(let s=0,r=arguments.length;s(tt(t,(r,i)=>{a&&K(r)?e[i]=hs(r,a):e[i]=r},{allOwnKeys:s}),e),pi=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),mi=(e,t,a,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),a&&Object.assign(e.prototype,a)},hi=(e,t,a,s)=>{let r,i,o;const n={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),i=r.length;i-- >0;)o=r[i],(!s||s(o,e,t))&&!n[o]&&(t[o]=e[o],n[o]=!0);e=a!==!1&&_a(e)}while(e&&(!a||a(e,t))&&e!==Object.prototype);return t},fi=(e,t,a)=>{e=String(e),(a===void 0||a>e.length)&&(a=e.length),a-=t.length;const s=e.indexOf(t,a);return s!==-1&&s===a},_i=e=>{if(!e)return null;if(Ie(e))return e;let t=e.length;if(!_s(t))return null;const a=new Array(t);for(;t-- >0;)a[t]=e[t];return a},Si=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&_a(Uint8Array)),ki=(e,t)=>{const s=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=s.next())&&!r.done;){const i=r.value;t.call(e,i[0],i[1])}},Ti=(e,t)=>{let a;const s=[];for(;(a=e.exec(t))!==null;)s.push(a);return s},Bi=oe("HTMLFormElement"),Ei=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(a,s,r){return s.toUpperCase()+r}),qa=(({hasOwnProperty:e})=>(t,a)=>e.call(t,a))(Object.prototype),Ri=oe("RegExp"),Ts=(e,t)=>{const a=Object.getOwnPropertyDescriptors(e),s={};tt(a,(r,i)=>{let o;(o=t(r,i,e))!==!1&&(s[i]=o||r)}),Object.defineProperties(e,s)},wi=e=>{Ts(e,(t,a)=>{if(K(e)&&["arguments","caller","callee"].indexOf(a)!==-1)return!1;const s=e[a];if(K(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+a+"'")})}})},gi=(e,t)=>{const a={},s=r=>{r.forEach(i=>{a[i]=!0})};return Ie(e)?s(e):s(String(e).split(t)),a},Ai=()=>{},Li=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function yi(e){return!!(e&&K(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const bi=e=>{const t=new Array(10),a=(s,r)=>{if(Ot(s)){if(t.indexOf(s)>=0)return;if(!("toJSON"in s)){t[r]=s;const i=Ie(s)?[]:{};return tt(s,(o,n)=>{const d=a(o,r+1);!Ze(d)&&(i[n]=d)}),t[r]=void 0,i}}return s};return a(e,0)},Ni=oe("AsyncFunction"),Oi=e=>e&&(Ot(e)||K(e))&&K(e.then)&&K(e.catch),Bs=((e,t)=>e?setImmediate:t?((a,s)=>(Le.addEventListener("message",({source:r,data:i})=>{r===Le&&i===a&&s.length&&s.shift()()},!1),r=>{s.push(r),Le.postMessage(a,"*")}))(`axios@${Math.random()}`,[]):a=>setTimeout(a))(typeof setImmediate=="function",K(Le.postMessage)),xi=typeof queueMicrotask<"u"?queueMicrotask.bind(Le):typeof process<"u"&&process.nextTick||Bs,c={isArray:Ie,isArrayBuffer:fs,isBuffer:$r,isFormData:ri,isArrayBufferView:Kr,isString:Zr,isNumber:_s,isBoolean:Xr,isObject:Ot,isPlainObject:ut,isReadableStream:oi,isRequest:ni,isResponse:li,isHeaders:ci,isUndefined:Ze,isDate:Qr,isFile:ei,isBlob:ti,isRegExp:Ri,isFunction:K,isStream:si,isURLSearchParams:ii,isTypedArray:Si,isFileList:ai,forEach:tt,merge:sa,extend:ui,trim:di,stripBOM:pi,inherits:mi,toFlatObject:hi,kindOf:bt,kindOfTest:oe,endsWith:fi,toArray:_i,forEachEntry:ki,matchAll:Ti,isHTMLForm:Bi,hasOwnProperty:qa,hasOwnProp:qa,reduceDescriptors:Ts,freezeMethods:wi,toObjectSet:gi,toCamelCase:Ei,noop:Ai,toFiniteNumber:Li,findKey:Ss,global:Le,isContextDefined:ks,isSpecCompliantForm:yi,toJSONObject:bi,isAsyncFn:Ni,isThenable:Oi,setImmediate:Bs,asap:xi};function E(e,t,a,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),a&&(this.config=a),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}c.inherits(E,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:c.toJSONObject(this.config),code:this.code,status:this.status}}});const Es=E.prototype,Rs={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Rs[e]={value:e}});Object.defineProperties(E,Rs);Object.defineProperty(Es,"isAxiosError",{value:!0});E.from=(e,t,a,s,r,i)=>{const o=Object.create(Es);return c.toFlatObject(e,o,function(d){return d!==Error.prototype},n=>n!=="isAxiosError"),E.call(o,e.message,t,a,s,r),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const Ci=null;function ra(e){return c.isPlainObject(e)||c.isArray(e)}function ws(e){return c.endsWith(e,"[]")?e.slice(0,-2):e}function Ya(e,t,a){return e?e.concat(t).map(function(r,i){return r=ws(r),!a&&i?"["+r+"]":r}).join(a?".":""):t}function vi(e){return c.isArray(e)&&!e.some(ra)}const Wi=c.toFlatObject(c,{},null,function(t){return/^is[A-Z]/.test(t)});function xt(e,t,a){if(!c.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,a=c.toFlatObject(a,{metaTokens:!0,dots:!1,indexes:!1},!1,function(B,S){return!c.isUndefined(S[B])});const s=a.metaTokens,r=a.visitor||u,i=a.dots,o=a.indexes,d=(a.Blob||typeof Blob<"u"&&Blob)&&c.isSpecCompliantForm(t);if(!c.isFunction(r))throw new TypeError("visitor must be a function");function l(f){if(f===null)return"";if(c.isDate(f))return f.toISOString();if(!d&&c.isBlob(f))throw new E("Blob is not supported. Use a Buffer instead.");return c.isArrayBuffer(f)||c.isTypedArray(f)?d&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function u(f,B,S){let x=f;if(f&&!S&&typeof f=="object"){if(c.endsWith(B,"{}"))B=s?B:B.slice(0,-2),f=JSON.stringify(f);else if(c.isArray(f)&&vi(f)||(c.isFileList(f)||c.endsWith(B,"[]"))&&(x=c.toArray(f)))return B=ws(B),x.forEach(function(D,T){!(c.isUndefined(D)||D===null)&&t.append(o===!0?Ya([B],T,i):o===null?B:B+"[]",l(D))}),!1}return ra(f)?!0:(t.append(Ya(S,B,i),l(f)),!1)}const m=[],R=Object.assign(Wi,{defaultVisitor:u,convertValue:l,isVisitable:ra});function b(f,B){if(!c.isUndefined(f)){if(m.indexOf(f)!==-1)throw Error("Circular reference detected in "+B.join("."));m.push(f),c.forEach(f,function(x,W){(!(c.isUndefined(x)||x===null)&&r.call(t,x,c.isString(W)?W.trim():W,B,R))===!0&&b(x,B?B.concat(W):[W])}),m.pop()}}if(!c.isObject(e))throw new TypeError("data must be an object");return b(e),t}function za(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function Sa(e,t){this._pairs=[],e&&xt(e,this,t)}const gs=Sa.prototype;gs.append=function(t,a){this._pairs.push([t,a])};gs.toString=function(t){const a=t?function(s){return t.call(this,s,za)}:za;return this._pairs.map(function(r){return a(r[0])+"="+a(r[1])},"").join("&")};function Pi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function As(e,t,a){if(!t)return e;const s=a&&a.encode||Pi;c.isFunction(a)&&(a={serialize:a});const r=a&&a.serialize;let i;if(r?i=r(t,a):i=c.isURLSearchParams(t)?t.toString():new Sa(t,a).toString(s),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Ja{constructor(){this.handlers=[]}use(t,a,s){return this.handlers.push({fulfilled:t,rejected:a,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){c.forEach(this.handlers,function(s){s!==null&&t(s)})}}const Ls={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Di=typeof URLSearchParams<"u"?URLSearchParams:Sa,Hi=typeof FormData<"u"?FormData:null,Ii=typeof Blob<"u"?Blob:null,Mi={isBrowser:!0,classes:{URLSearchParams:Di,FormData:Hi,Blob:Ii},protocols:["http","https","file","blob","url","data"]},ka=typeof window<"u"&&typeof document<"u",ia=typeof navigator=="object"&&navigator||void 0,Fi=ka&&(!ia||["ReactNative","NativeScript","NS"].indexOf(ia.product)<0),Ui=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",qi=ka&&window.location.href||"http://localhost",Yi=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ka,hasStandardBrowserEnv:Fi,hasStandardBrowserWebWorkerEnv:Ui,navigator:ia,origin:qi},Symbol.toStringTag,{value:"Module"})),q={...Yi,...Mi};function zi(e,t){return xt(e,new q.classes.URLSearchParams,Object.assign({visitor:function(a,s,r,i){return q.isNode&&c.isBuffer(a)?(this.append(s,a.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function Ji(e){return c.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function ji(e){const t={},a=Object.keys(e);let s;const r=a.length;let i;for(s=0;s=a.length;return o=!o&&c.isArray(r)?r.length:o,d?(c.hasOwnProp(r,o)?r[o]=[r[o],s]:r[o]=s,!n):((!r[o]||!c.isObject(r[o]))&&(r[o]=[]),t(a,s,r[o],i)&&c.isArray(r[o])&&(r[o]=ji(r[o])),!n)}if(c.isFormData(e)&&c.isFunction(e.entries)){const a={};return c.forEachEntry(e,(s,r)=>{t(Ji(s),r,a,0)}),a}return null}function Vi(e,t,a){if(c.isString(e))try{return(t||JSON.parse)(e),c.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(a||JSON.stringify)(e)}const at={transitional:Ls,adapter:["xhr","http","fetch"],transformRequest:[function(t,a){const s=a.getContentType()||"",r=s.indexOf("application/json")>-1,i=c.isObject(t);if(i&&c.isHTMLForm(t)&&(t=new FormData(t)),c.isFormData(t))return r?JSON.stringify(ys(t)):t;if(c.isArrayBuffer(t)||c.isBuffer(t)||c.isStream(t)||c.isFile(t)||c.isBlob(t)||c.isReadableStream(t))return t;if(c.isArrayBufferView(t))return t.buffer;if(c.isURLSearchParams(t))return a.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let n;if(i){if(s.indexOf("application/x-www-form-urlencoded")>-1)return zi(t,this.formSerializer).toString();if((n=c.isFileList(t))||s.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return xt(n?{"files[]":t}:t,d&&new d,this.formSerializer)}}return i||r?(a.setContentType("application/json",!1),Vi(t)):t}],transformResponse:[function(t){const a=this.transitional||at.transitional,s=a&&a.forcedJSONParsing,r=this.responseType==="json";if(c.isResponse(t)||c.isReadableStream(t))return t;if(t&&c.isString(t)&&(s&&!this.responseType||r)){const o=!(a&&a.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(n){if(o)throw n.name==="SyntaxError"?E.from(n,E.ERR_BAD_RESPONSE,this,null,this.response):n}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:q.classes.FormData,Blob:q.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};c.forEach(["delete","get","head","post","put","patch"],e=>{at.headers[e]={}});const Gi=c.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),$i=e=>{const t={};let a,s,r;return e&&e.split(` -`).forEach(function(o){r=o.indexOf(":"),a=o.substring(0,r).trim().toLowerCase(),s=o.substring(r+1).trim(),!(!a||t[a]&&Gi[a])&&(a==="set-cookie"?t[a]?t[a].push(s):t[a]=[s]:t[a]=t[a]?t[a]+", "+s:s)}),t},ja=Symbol("internals");function qe(e){return e&&String(e).trim().toLowerCase()}function pt(e){return e===!1||e==null?e:c.isArray(e)?e.map(pt):String(e)}function Ki(e){const t=Object.create(null),a=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=a.exec(e);)t[s[1]]=s[2];return t}const Zi=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function jt(e,t,a,s,r){if(c.isFunction(s))return s.call(this,t,a);if(r&&(t=a),!!c.isString(t)){if(c.isString(s))return t.indexOf(s)!==-1;if(c.isRegExp(s))return s.test(t)}}function Xi(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,a,s)=>a.toUpperCase()+s)}function Qi(e,t){const a=c.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+a,{value:function(r,i,o){return this[s].call(this,t,r,i,o)},configurable:!0})})}let V=class{constructor(t){t&&this.set(t)}set(t,a,s){const r=this;function i(n,d,l){const u=qe(d);if(!u)throw new Error("header name must be a non-empty string");const m=c.findKey(r,u);(!m||r[m]===void 0||l===!0||l===void 0&&r[m]!==!1)&&(r[m||d]=pt(n))}const o=(n,d)=>c.forEach(n,(l,u)=>i(l,u,d));if(c.isPlainObject(t)||t instanceof this.constructor)o(t,a);else if(c.isString(t)&&(t=t.trim())&&!Zi(t))o($i(t),a);else if(c.isHeaders(t))for(const[n,d]of t.entries())i(d,n,s);else t!=null&&i(a,t,s);return this}get(t,a){if(t=qe(t),t){const s=c.findKey(this,t);if(s){const r=this[s];if(!a)return r;if(a===!0)return Ki(r);if(c.isFunction(a))return a.call(this,r,s);if(c.isRegExp(a))return a.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,a){if(t=qe(t),t){const s=c.findKey(this,t);return!!(s&&this[s]!==void 0&&(!a||jt(this,this[s],s,a)))}return!1}delete(t,a){const s=this;let r=!1;function i(o){if(o=qe(o),o){const n=c.findKey(s,o);n&&(!a||jt(s,s[n],n,a))&&(delete s[n],r=!0)}}return c.isArray(t)?t.forEach(i):i(t),r}clear(t){const a=Object.keys(this);let s=a.length,r=!1;for(;s--;){const i=a[s];(!t||jt(this,this[i],i,t,!0))&&(delete this[i],r=!0)}return r}normalize(t){const a=this,s={};return c.forEach(this,(r,i)=>{const o=c.findKey(s,i);if(o){a[o]=pt(r),delete a[i];return}const n=t?Xi(i):String(i).trim();n!==i&&delete a[i],a[n]=pt(r),s[n]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const a=Object.create(null);return c.forEach(this,(s,r)=>{s!=null&&s!==!1&&(a[r]=t&&c.isArray(s)?s.join(", "):s)}),a}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,a])=>t+": "+a).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...a){const s=new this(t);return a.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[ja]=this[ja]={accessors:{}}).accessors,r=this.prototype;function i(o){const n=qe(o);s[n]||(Qi(r,o),s[n]=!0)}return c.isArray(t)?t.forEach(i):i(t),this}};V.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);c.reduceDescriptors(V.prototype,({value:e},t)=>{let a=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[a]=s}}});c.freezeMethods(V);function Vt(e,t){const a=this||at,s=t||a,r=V.from(s.headers);let i=s.data;return c.forEach(e,function(n){i=n.call(a,i,r.normalize(),t?t.status:void 0)}),r.normalize(),i}function bs(e){return!!(e&&e.__CANCEL__)}function Me(e,t,a){E.call(this,e??"canceled",E.ERR_CANCELED,t,a),this.name="CanceledError"}c.inherits(Me,E,{__CANCEL__:!0});function Ns(e,t,a){const s=a.config.validateStatus;!a.status||!s||s(a.status)?e(a):t(new E("Request failed with status code "+a.status,[E.ERR_BAD_REQUEST,E.ERR_BAD_RESPONSE][Math.floor(a.status/100)-4],a.config,a.request,a))}function eo(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function to(e,t){e=e||10;const a=new Array(e),s=new Array(e);let r=0,i=0,o;return t=t!==void 0?t:1e3,function(d){const l=Date.now(),u=s[i];o||(o=l),a[r]=d,s[r]=l;let m=i,R=0;for(;m!==r;)R+=a[m++],m=m%e;if(r=(r+1)%e,r===i&&(i=(i+1)%e),l-o{a=u,r=null,i&&(clearTimeout(i),i=null),e.apply(null,l)};return[(...l)=>{const u=Date.now(),m=u-a;m>=s?o(l,u):(r=l,i||(i=setTimeout(()=>{i=null,o(r)},s-m)))},()=>r&&o(r)]}const kt=(e,t,a=3)=>{let s=0;const r=to(50,250);return ao(i=>{const o=i.loaded,n=i.lengthComputable?i.total:void 0,d=o-s,l=r(d),u=o<=n;s=o;const m={loaded:o,total:n,progress:n?o/n:void 0,bytes:d,rate:l||void 0,estimated:l&&n&&u?(n-o)/l:void 0,event:i,lengthComputable:n!=null,[t?"download":"upload"]:!0};e(m)},a)},Va=(e,t)=>{const a=e!=null;return[s=>t[0]({lengthComputable:a,total:e,loaded:s}),t[1]]},Ga=e=>(...t)=>c.asap(()=>e(...t)),so=q.hasStandardBrowserEnv?((e,t)=>a=>(a=new URL(a,q.origin),e.protocol===a.protocol&&e.host===a.host&&(t||e.port===a.port)))(new URL(q.origin),q.navigator&&/(msie|trident)/i.test(q.navigator.userAgent)):()=>!0,ro=q.hasStandardBrowserEnv?{write(e,t,a,s,r,i){const o=[e+"="+encodeURIComponent(t)];c.isNumber(a)&&o.push("expires="+new Date(a).toGMTString()),c.isString(s)&&o.push("path="+s),c.isString(r)&&o.push("domain="+r),i===!0&&o.push("secure"),document.cookie=o.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function io(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function oo(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Os(e,t,a){let s=!io(t);return e&&s||a==!1?oo(e,t):t}const $a=e=>e instanceof V?{...e}:e;function Oe(e,t){t=t||{};const a={};function s(l,u,m,R){return c.isPlainObject(l)&&c.isPlainObject(u)?c.merge.call({caseless:R},l,u):c.isPlainObject(u)?c.merge({},u):c.isArray(u)?u.slice():u}function r(l,u,m,R){if(c.isUndefined(u)){if(!c.isUndefined(l))return s(void 0,l,m,R)}else return s(l,u,m,R)}function i(l,u){if(!c.isUndefined(u))return s(void 0,u)}function o(l,u){if(c.isUndefined(u)){if(!c.isUndefined(l))return s(void 0,l)}else return s(void 0,u)}function n(l,u,m){if(m in t)return s(l,u);if(m in e)return s(void 0,l)}const d={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:n,headers:(l,u,m)=>r($a(l),$a(u),m,!0)};return c.forEach(Object.keys(Object.assign({},e,t)),function(u){const m=d[u]||r,R=m(e[u],t[u],u);c.isUndefined(R)&&m!==n||(a[u]=R)}),a}const xs=e=>{const t=Oe({},e);let{data:a,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:i,headers:o,auth:n}=t;t.headers=o=V.from(o),t.url=As(Os(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),n&&o.set("Authorization","Basic "+btoa((n.username||"")+":"+(n.password?unescape(encodeURIComponent(n.password)):"")));let d;if(c.isFormData(a)){if(q.hasStandardBrowserEnv||q.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((d=o.getContentType())!==!1){const[l,...u]=d?d.split(";").map(m=>m.trim()).filter(Boolean):[];o.setContentType([l||"multipart/form-data",...u].join("; "))}}if(q.hasStandardBrowserEnv&&(s&&c.isFunction(s)&&(s=s(t)),s||s!==!1&&so(t.url))){const l=r&&i&&ro.read(i);l&&o.set(r,l)}return t},no=typeof XMLHttpRequest<"u",lo=no&&function(e){return new Promise(function(a,s){const r=xs(e);let i=r.data;const o=V.from(r.headers).normalize();let{responseType:n,onUploadProgress:d,onDownloadProgress:l}=r,u,m,R,b,f;function B(){b&&b(),f&&f(),r.cancelToken&&r.cancelToken.unsubscribe(u),r.signal&&r.signal.removeEventListener("abort",u)}let S=new XMLHttpRequest;S.open(r.method.toUpperCase(),r.url,!0),S.timeout=r.timeout;function x(){if(!S)return;const D=V.from("getAllResponseHeaders"in S&&S.getAllResponseHeaders()),N={data:!n||n==="text"||n==="json"?S.responseText:S.response,status:S.status,statusText:S.statusText,headers:D,config:e,request:S};Ns(function(U){a(U),B()},function(U){s(U),B()},N),S=null}"onloadend"in S?S.onloadend=x:S.onreadystatechange=function(){!S||S.readyState!==4||S.status===0&&!(S.responseURL&&S.responseURL.indexOf("file:")===0)||setTimeout(x)},S.onabort=function(){S&&(s(new E("Request aborted",E.ECONNABORTED,e,S)),S=null)},S.onerror=function(){s(new E("Network Error",E.ERR_NETWORK,e,S)),S=null},S.ontimeout=function(){let T=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const N=r.transitional||Ls;r.timeoutErrorMessage&&(T=r.timeoutErrorMessage),s(new E(T,N.clarifyTimeoutError?E.ETIMEDOUT:E.ECONNABORTED,e,S)),S=null},i===void 0&&o.setContentType(null),"setRequestHeader"in S&&c.forEach(o.toJSON(),function(T,N){S.setRequestHeader(N,T)}),c.isUndefined(r.withCredentials)||(S.withCredentials=!!r.withCredentials),n&&n!=="json"&&(S.responseType=r.responseType),l&&([R,f]=kt(l,!0),S.addEventListener("progress",R)),d&&S.upload&&([m,b]=kt(d),S.upload.addEventListener("progress",m),S.upload.addEventListener("loadend",b)),(r.cancelToken||r.signal)&&(u=D=>{S&&(s(!D||D.type?new Me(null,e,S):D),S.abort(),S=null)},r.cancelToken&&r.cancelToken.subscribe(u),r.signal&&(r.signal.aborted?u():r.signal.addEventListener("abort",u)));const W=eo(r.url);if(W&&q.protocols.indexOf(W)===-1){s(new E("Unsupported protocol "+W+":",E.ERR_BAD_REQUEST,e));return}S.send(i||null)})},co=(e,t)=>{const{length:a}=e=e?e.filter(Boolean):[];if(t||a){let s=new AbortController,r;const i=function(l){if(!r){r=!0,n();const u=l instanceof Error?l:this.reason;s.abort(u instanceof E?u:new Me(u instanceof Error?u.message:u))}};let o=t&&setTimeout(()=>{o=null,i(new E(`timeout ${t} of ms exceeded`,E.ETIMEDOUT))},t);const n=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(l=>{l.unsubscribe?l.unsubscribe(i):l.removeEventListener("abort",i)}),e=null)};e.forEach(l=>l.addEventListener("abort",i));const{signal:d}=s;return d.unsubscribe=()=>c.asap(n),d}},uo=function*(e,t){let a=e.byteLength;if(a{const r=po(e,t);let i=0,o,n=d=>{o||(o=!0,s&&s(d))};return new ReadableStream({async pull(d){try{const{done:l,value:u}=await r.next();if(l){n(),d.close();return}let m=u.byteLength;if(a){let R=i+=m;a(R)}d.enqueue(new Uint8Array(u))}catch(l){throw n(l),l}},cancel(d){return n(d),r.return()}},{highWaterMark:2})},Ct=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Cs=Ct&&typeof ReadableStream=="function",ho=Ct&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),vs=(e,...t)=>{try{return!!e(...t)}catch{return!1}},fo=Cs&&vs(()=>{let e=!1;const t=new Request(q.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Za=64*1024,oa=Cs&&vs(()=>c.isReadableStream(new Response("").body)),Tt={stream:oa&&(e=>e.body)};Ct&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!Tt[t]&&(Tt[t]=c.isFunction(e[t])?a=>a[t]():(a,s)=>{throw new E(`Response type '${t}' is not supported`,E.ERR_NOT_SUPPORT,s)})})})(new Response);const _o=async e=>{if(e==null)return 0;if(c.isBlob(e))return e.size;if(c.isSpecCompliantForm(e))return(await new Request(q.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(c.isArrayBufferView(e)||c.isArrayBuffer(e))return e.byteLength;if(c.isURLSearchParams(e)&&(e=e+""),c.isString(e))return(await ho(e)).byteLength},So=async(e,t)=>{const a=c.toFiniteNumber(e.getContentLength());return a??_o(t)},ko=Ct&&(async e=>{let{url:t,method:a,data:s,signal:r,cancelToken:i,timeout:o,onDownloadProgress:n,onUploadProgress:d,responseType:l,headers:u,withCredentials:m="same-origin",fetchOptions:R}=xs(e);l=l?(l+"").toLowerCase():"text";let b=co([r,i&&i.toAbortSignal()],o),f;const B=b&&b.unsubscribe&&(()=>{b.unsubscribe()});let S;try{if(d&&fo&&a!=="get"&&a!=="head"&&(S=await So(u,s))!==0){let N=new Request(t,{method:"POST",body:s,duplex:"half"}),X;if(c.isFormData(s)&&(X=N.headers.get("content-type"))&&u.setContentType(X),N.body){const[U,Ee]=Va(S,kt(Ga(d)));s=Ka(N.body,Za,U,Ee)}}c.isString(m)||(m=m?"include":"omit");const x="credentials"in Request.prototype;f=new Request(t,{...R,signal:b,method:a.toUpperCase(),headers:u.normalize().toJSON(),body:s,duplex:"half",credentials:x?m:void 0});let W=await fetch(f);const D=oa&&(l==="stream"||l==="response");if(oa&&(n||D&&B)){const N={};["status","statusText","headers"].forEach(Fa=>{N[Fa]=W[Fa]});const X=c.toFiniteNumber(W.headers.get("content-length")),[U,Ee]=n&&Va(X,kt(Ga(n),!0))||[];W=new Response(Ka(W.body,Za,U,()=>{Ee&&Ee(),B&&B()}),N)}l=l||"text";let T=await Tt[c.findKey(Tt,l)||"text"](W,e);return!D&&B&&B(),await new Promise((N,X)=>{Ns(N,X,{data:T,headers:V.from(W.headers),status:W.status,statusText:W.statusText,config:e,request:f})})}catch(x){throw B&&B(),x&&x.name==="TypeError"&&/fetch/i.test(x.message)?Object.assign(new E("Network Error",E.ERR_NETWORK,e,f),{cause:x.cause||x}):E.from(x,x&&x.code,e,f)}}),na={http:Ci,xhr:lo,fetch:ko};c.forEach(na,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Xa=e=>`- ${e}`,To=e=>c.isFunction(e)||e===null||e===!1,Ws={getAdapter:e=>{e=c.isArray(e)?e:[e];const{length:t}=e;let a,s;const r={};for(let i=0;i`adapter ${n} `+(d===!1?"is not supported by the environment":"is not available in the build"));let o=t?i.length>1?`since : +var Wr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);import{l as Pr,f as Dr,a as Hr,b as Ir,M as Ua,F as Mr}from"./about-BdlHKEOl.js";import{d as Fr,A as Ur,r as Q,o as qr,e as Yr,w as ut,H as zr,b as Jr}from"./vue-DqnmULX3.js";import{r as jr,g as Vr}from"./lodash-BwctMegf.js";var f0=Wr((I0,kt)=>{function hs(e,t){return function(){return e.apply(t,arguments)}}const{toString:Gr}=Object.prototype,{getPrototypeOf:Sa}=Object,Nt=(e=>t=>{const a=Gr.call(t);return e[a]||(e[a]=a.slice(8,-1).toLowerCase())})(Object.create(null)),ne=e=>(e=e.toLowerCase(),t=>Nt(t)===e),Ot=e=>t=>typeof t===e,{isArray:Me}=Array,Xe=Ot("undefined");function $r(e){return e!==null&&!Xe(e)&&e.constructor!==null&&!Xe(e.constructor)&&Z(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const fs=ne("ArrayBuffer");function Kr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&fs(e.buffer),t}const Zr=Ot("string"),Z=Ot("function"),_s=Ot("number"),xt=e=>e!==null&&typeof e=="object",Xr=e=>e===!0||e===!1,pt=e=>{if(Nt(e)!=="object")return!1;const t=Sa(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Qr=ne("Date"),ei=ne("File"),ti=ne("Blob"),ai=ne("FileList"),si=e=>xt(e)&&Z(e.pipe),ri=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Z(e.append)&&((t=Nt(e))==="formdata"||t==="object"&&Z(e.toString)&&e.toString()==="[object FormData]"))},ii=ne("URLSearchParams"),[oi,ni,li,ci]=["ReadableStream","Request","Response","Headers"].map(ne),di=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function at(e,t,{allOwnKeys:a=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),Me(e))for(s=0,r=e.length;s0;)if(r=a[s],t===r.toLowerCase())return r;return null}const Le=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ks=e=>!Xe(e)&&e!==Le;function ra(){const{caseless:e}=ks(this)&&this||{},t={},a=(s,r)=>{const i=e&&Ss(t,r)||r;pt(t[i])&&pt(s)?t[i]=ra(t[i],s):pt(s)?t[i]=ra({},s):Me(s)?t[i]=s.slice():t[i]=s};for(let s=0,r=arguments.length;s(at(t,(r,i)=>{a&&Z(r)?e[i]=hs(r,a):e[i]=r},{allOwnKeys:s}),e),pi=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),mi=(e,t,a,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),a&&Object.assign(e.prototype,a)},hi=(e,t,a,s)=>{let r,i,o;const n={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),i=r.length;i-- >0;)o=r[i],(!s||s(o,e,t))&&!n[o]&&(t[o]=e[o],n[o]=!0);e=a!==!1&&Sa(e)}while(e&&(!a||a(e,t))&&e!==Object.prototype);return t},fi=(e,t,a)=>{e=String(e),(a===void 0||a>e.length)&&(a=e.length),a-=t.length;const s=e.indexOf(t,a);return s!==-1&&s===a},_i=e=>{if(!e)return null;if(Me(e))return e;let t=e.length;if(!_s(t))return null;const a=new Array(t);for(;t-- >0;)a[t]=e[t];return a},Si=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Sa(Uint8Array)),ki=(e,t)=>{const s=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=s.next())&&!r.done;){const i=r.value;t.call(e,i[0],i[1])}},Ti=(e,t)=>{let a;const s=[];for(;(a=e.exec(t))!==null;)s.push(a);return s},Bi=ne("HTMLFormElement"),Ei=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(a,s,r){return s.toUpperCase()+r}),qa=(({hasOwnProperty:e})=>(t,a)=>e.call(t,a))(Object.prototype),Ri=ne("RegExp"),Ts=(e,t)=>{const a=Object.getOwnPropertyDescriptors(e),s={};at(a,(r,i)=>{let o;(o=t(r,i,e))!==!1&&(s[i]=o||r)}),Object.defineProperties(e,s)},wi=e=>{Ts(e,(t,a)=>{if(Z(e)&&["arguments","caller","callee"].indexOf(a)!==-1)return!1;const s=e[a];if(Z(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+a+"'")})}})},gi=(e,t)=>{const a={},s=r=>{r.forEach(i=>{a[i]=!0})};return Me(e)?s(e):s(String(e).split(t)),a},Ai=()=>{},Li=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function yi(e){return!!(e&&Z(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const bi=e=>{const t=new Array(10),a=(s,r)=>{if(xt(s)){if(t.indexOf(s)>=0)return;if(!("toJSON"in s)){t[r]=s;const i=Me(s)?[]:{};return at(s,(o,n)=>{const d=a(o,r+1);!Xe(d)&&(i[n]=d)}),t[r]=void 0,i}}return s};return a(e,0)},Ni=ne("AsyncFunction"),Oi=e=>e&&(xt(e)||Z(e))&&Z(e.then)&&Z(e.catch),Bs=((e,t)=>e?setImmediate:t?((a,s)=>(Le.addEventListener("message",({source:r,data:i})=>{r===Le&&i===a&&s.length&&s.shift()()},!1),r=>{s.push(r),Le.postMessage(a,"*")}))(`axios@${Math.random()}`,[]):a=>setTimeout(a))(typeof setImmediate=="function",Z(Le.postMessage)),xi=typeof queueMicrotask<"u"?queueMicrotask.bind(Le):typeof process<"u"&&process.nextTick||Bs,c={isArray:Me,isArrayBuffer:fs,isBuffer:$r,isFormData:ri,isArrayBufferView:Kr,isString:Zr,isNumber:_s,isBoolean:Xr,isObject:xt,isPlainObject:pt,isReadableStream:oi,isRequest:ni,isResponse:li,isHeaders:ci,isUndefined:Xe,isDate:Qr,isFile:ei,isBlob:ti,isRegExp:Ri,isFunction:Z,isStream:si,isURLSearchParams:ii,isTypedArray:Si,isFileList:ai,forEach:at,merge:ra,extend:ui,trim:di,stripBOM:pi,inherits:mi,toFlatObject:hi,kindOf:Nt,kindOfTest:ne,endsWith:fi,toArray:_i,forEachEntry:ki,matchAll:Ti,isHTMLForm:Bi,hasOwnProperty:qa,hasOwnProp:qa,reduceDescriptors:Ts,freezeMethods:wi,toObjectSet:gi,toCamelCase:Ei,noop:Ai,toFiniteNumber:Li,findKey:Ss,global:Le,isContextDefined:ks,isSpecCompliantForm:yi,toJSONObject:bi,isAsyncFn:Ni,isThenable:Oi,setImmediate:Bs,asap:xi};function E(e,t,a,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),a&&(this.config=a),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}c.inherits(E,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:c.toJSONObject(this.config),code:this.code,status:this.status}}});const Es=E.prototype,Rs={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Rs[e]={value:e}});Object.defineProperties(E,Rs);Object.defineProperty(Es,"isAxiosError",{value:!0});E.from=(e,t,a,s,r,i)=>{const o=Object.create(Es);return c.toFlatObject(e,o,function(d){return d!==Error.prototype},n=>n!=="isAxiosError"),E.call(o,e.message,t,a,s,r),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const Ci=null;function ia(e){return c.isPlainObject(e)||c.isArray(e)}function ws(e){return c.endsWith(e,"[]")?e.slice(0,-2):e}function Ya(e,t,a){return e?e.concat(t).map(function(r,i){return r=ws(r),!a&&i?"["+r+"]":r}).join(a?".":""):t}function vi(e){return c.isArray(e)&&!e.some(ia)}const Wi=c.toFlatObject(c,{},null,function(t){return/^is[A-Z]/.test(t)});function Ct(e,t,a){if(!c.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,a=c.toFlatObject(a,{metaTokens:!0,dots:!1,indexes:!1},!1,function(B,S){return!c.isUndefined(S[B])});const s=a.metaTokens,r=a.visitor||u,i=a.dots,o=a.indexes,d=(a.Blob||typeof Blob<"u"&&Blob)&&c.isSpecCompliantForm(t);if(!c.isFunction(r))throw new TypeError("visitor must be a function");function l(h){if(h===null)return"";if(c.isDate(h))return h.toISOString();if(!d&&c.isBlob(h))throw new E("Blob is not supported. Use a Buffer instead.");return c.isArrayBuffer(h)||c.isTypedArray(h)?d&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function u(h,B,S){let O=h;if(h&&!S&&typeof h=="object"){if(c.endsWith(B,"{}"))B=s?B:B.slice(0,-2),h=JSON.stringify(h);else if(c.isArray(h)&&vi(h)||(c.isFileList(h)||c.endsWith(B,"[]"))&&(O=c.toArray(h)))return B=ws(B),O.forEach(function(W,$){!(c.isUndefined(W)||W===null)&&t.append(o===!0?Ya([B],$,i):o===null?B:B+"[]",l(W))}),!1}return ia(h)?!0:(t.append(Ya(S,B,i),l(h)),!1)}const m=[],R=Object.assign(Wi,{defaultVisitor:u,convertValue:l,isVisitable:ia});function b(h,B){if(!c.isUndefined(h)){if(m.indexOf(h)!==-1)throw Error("Circular reference detected in "+B.join("."));m.push(h),c.forEach(h,function(O,v){(!(c.isUndefined(O)||O===null)&&r.call(t,O,c.isString(v)?v.trim():v,B,R))===!0&&b(O,B?B.concat(v):[v])}),m.pop()}}if(!c.isObject(e))throw new TypeError("data must be an object");return b(e),t}function za(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function ka(e,t){this._pairs=[],e&&Ct(e,this,t)}const gs=ka.prototype;gs.append=function(t,a){this._pairs.push([t,a])};gs.toString=function(t){const a=t?function(s){return t.call(this,s,za)}:za;return this._pairs.map(function(r){return a(r[0])+"="+a(r[1])},"").join("&")};function Pi(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function As(e,t,a){if(!t)return e;const s=a&&a.encode||Pi;c.isFunction(a)&&(a={serialize:a});const r=a&&a.serialize;let i;if(r?i=r(t,a):i=c.isURLSearchParams(t)?t.toString():new ka(t,a).toString(s),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Ja{constructor(){this.handlers=[]}use(t,a,s){return this.handlers.push({fulfilled:t,rejected:a,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){c.forEach(this.handlers,function(s){s!==null&&t(s)})}}const Ls={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Di=typeof URLSearchParams<"u"?URLSearchParams:ka,Hi=typeof FormData<"u"?FormData:null,Ii=typeof Blob<"u"?Blob:null,Mi={isBrowser:!0,classes:{URLSearchParams:Di,FormData:Hi,Blob:Ii},protocols:["http","https","file","blob","url","data"]},Ta=typeof window<"u"&&typeof document<"u",oa=typeof navigator=="object"&&navigator||void 0,Fi=Ta&&(!oa||["ReactNative","NativeScript","NS"].indexOf(oa.product)<0),Ui=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",qi=Ta&&window.location.href||"http://localhost",Yi=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Ta,hasStandardBrowserEnv:Fi,hasStandardBrowserWebWorkerEnv:Ui,navigator:oa,origin:qi},Symbol.toStringTag,{value:"Module"})),U={...Yi,...Mi};function zi(e,t){return Ct(e,new U.classes.URLSearchParams,Object.assign({visitor:function(a,s,r,i){return U.isNode&&c.isBuffer(a)?(this.append(s,a.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function Ji(e){return c.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function ji(e){const t={},a=Object.keys(e);let s;const r=a.length;let i;for(s=0;s=a.length;return o=!o&&c.isArray(r)?r.length:o,d?(c.hasOwnProp(r,o)?r[o]=[r[o],s]:r[o]=s,!n):((!r[o]||!c.isObject(r[o]))&&(r[o]=[]),t(a,s,r[o],i)&&c.isArray(r[o])&&(r[o]=ji(r[o])),!n)}if(c.isFormData(e)&&c.isFunction(e.entries)){const a={};return c.forEachEntry(e,(s,r)=>{t(Ji(s),r,a,0)}),a}return null}function Vi(e,t,a){if(c.isString(e))try{return(t||JSON.parse)(e),c.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(a||JSON.stringify)(e)}const st={transitional:Ls,adapter:["xhr","http","fetch"],transformRequest:[function(t,a){const s=a.getContentType()||"",r=s.indexOf("application/json")>-1,i=c.isObject(t);if(i&&c.isHTMLForm(t)&&(t=new FormData(t)),c.isFormData(t))return r?JSON.stringify(ys(t)):t;if(c.isArrayBuffer(t)||c.isBuffer(t)||c.isStream(t)||c.isFile(t)||c.isBlob(t)||c.isReadableStream(t))return t;if(c.isArrayBufferView(t))return t.buffer;if(c.isURLSearchParams(t))return a.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let n;if(i){if(s.indexOf("application/x-www-form-urlencoded")>-1)return zi(t,this.formSerializer).toString();if((n=c.isFileList(t))||s.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return Ct(n?{"files[]":t}:t,d&&new d,this.formSerializer)}}return i||r?(a.setContentType("application/json",!1),Vi(t)):t}],transformResponse:[function(t){const a=this.transitional||st.transitional,s=a&&a.forcedJSONParsing,r=this.responseType==="json";if(c.isResponse(t)||c.isReadableStream(t))return t;if(t&&c.isString(t)&&(s&&!this.responseType||r)){const o=!(a&&a.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(n){if(o)throw n.name==="SyntaxError"?E.from(n,E.ERR_BAD_RESPONSE,this,null,this.response):n}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:U.classes.FormData,Blob:U.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};c.forEach(["delete","get","head","post","put","patch"],e=>{st.headers[e]={}});const Gi=c.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),$i=e=>{const t={};let a,s,r;return e&&e.split(` +`).forEach(function(o){r=o.indexOf(":"),a=o.substring(0,r).trim().toLowerCase(),s=o.substring(r+1).trim(),!(!a||t[a]&&Gi[a])&&(a==="set-cookie"?t[a]?t[a].push(s):t[a]=[s]:t[a]=t[a]?t[a]+", "+s:s)}),t},ja=Symbol("internals");function Ye(e){return e&&String(e).trim().toLowerCase()}function mt(e){return e===!1||e==null?e:c.isArray(e)?e.map(mt):String(e)}function Ki(e){const t=Object.create(null),a=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=a.exec(e);)t[s[1]]=s[2];return t}const Zi=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Vt(e,t,a,s,r){if(c.isFunction(s))return s.call(this,t,a);if(r&&(t=a),!!c.isString(t)){if(c.isString(s))return t.indexOf(s)!==-1;if(c.isRegExp(s))return s.test(t)}}function Xi(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,a,s)=>a.toUpperCase()+s)}function Qi(e,t){const a=c.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+a,{value:function(r,i,o){return this[s].call(this,t,r,i,o)},configurable:!0})})}let V=class{constructor(t){t&&this.set(t)}set(t,a,s){const r=this;function i(n,d,l){const u=Ye(d);if(!u)throw new Error("header name must be a non-empty string");const m=c.findKey(r,u);(!m||r[m]===void 0||l===!0||l===void 0&&r[m]!==!1)&&(r[m||d]=mt(n))}const o=(n,d)=>c.forEach(n,(l,u)=>i(l,u,d));if(c.isPlainObject(t)||t instanceof this.constructor)o(t,a);else if(c.isString(t)&&(t=t.trim())&&!Zi(t))o($i(t),a);else if(c.isHeaders(t))for(const[n,d]of t.entries())i(d,n,s);else t!=null&&i(a,t,s);return this}get(t,a){if(t=Ye(t),t){const s=c.findKey(this,t);if(s){const r=this[s];if(!a)return r;if(a===!0)return Ki(r);if(c.isFunction(a))return a.call(this,r,s);if(c.isRegExp(a))return a.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,a){if(t=Ye(t),t){const s=c.findKey(this,t);return!!(s&&this[s]!==void 0&&(!a||Vt(this,this[s],s,a)))}return!1}delete(t,a){const s=this;let r=!1;function i(o){if(o=Ye(o),o){const n=c.findKey(s,o);n&&(!a||Vt(s,s[n],n,a))&&(delete s[n],r=!0)}}return c.isArray(t)?t.forEach(i):i(t),r}clear(t){const a=Object.keys(this);let s=a.length,r=!1;for(;s--;){const i=a[s];(!t||Vt(this,this[i],i,t,!0))&&(delete this[i],r=!0)}return r}normalize(t){const a=this,s={};return c.forEach(this,(r,i)=>{const o=c.findKey(s,i);if(o){a[o]=mt(r),delete a[i];return}const n=t?Xi(i):String(i).trim();n!==i&&delete a[i],a[n]=mt(r),s[n]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const a=Object.create(null);return c.forEach(this,(s,r)=>{s!=null&&s!==!1&&(a[r]=t&&c.isArray(s)?s.join(", "):s)}),a}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,a])=>t+": "+a).join(` +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...a){const s=new this(t);return a.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[ja]=this[ja]={accessors:{}}).accessors,r=this.prototype;function i(o){const n=Ye(o);s[n]||(Qi(r,o),s[n]=!0)}return c.isArray(t)?t.forEach(i):i(t),this}};V.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);c.reduceDescriptors(V.prototype,({value:e},t)=>{let a=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[a]=s}}});c.freezeMethods(V);function Gt(e,t){const a=this||st,s=t||a,r=V.from(s.headers);let i=s.data;return c.forEach(e,function(n){i=n.call(a,i,r.normalize(),t?t.status:void 0)}),r.normalize(),i}function bs(e){return!!(e&&e.__CANCEL__)}function Fe(e,t,a){E.call(this,e??"canceled",E.ERR_CANCELED,t,a),this.name="CanceledError"}c.inherits(Fe,E,{__CANCEL__:!0});function Ns(e,t,a){const s=a.config.validateStatus;!a.status||!s||s(a.status)?e(a):t(new E("Request failed with status code "+a.status,[E.ERR_BAD_REQUEST,E.ERR_BAD_RESPONSE][Math.floor(a.status/100)-4],a.config,a.request,a))}function eo(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function to(e,t){e=e||10;const a=new Array(e),s=new Array(e);let r=0,i=0,o;return t=t!==void 0?t:1e3,function(d){const l=Date.now(),u=s[i];o||(o=l),a[r]=d,s[r]=l;let m=i,R=0;for(;m!==r;)R+=a[m++],m=m%e;if(r=(r+1)%e,r===i&&(i=(i+1)%e),l-o{a=u,r=null,i&&(clearTimeout(i),i=null),e.apply(null,l)};return[(...l)=>{const u=Date.now(),m=u-a;m>=s?o(l,u):(r=l,i||(i=setTimeout(()=>{i=null,o(r)},s-m)))},()=>r&&o(r)]}const Tt=(e,t,a=3)=>{let s=0;const r=to(50,250);return ao(i=>{const o=i.loaded,n=i.lengthComputable?i.total:void 0,d=o-s,l=r(d),u=o<=n;s=o;const m={loaded:o,total:n,progress:n?o/n:void 0,bytes:d,rate:l||void 0,estimated:l&&n&&u?(n-o)/l:void 0,event:i,lengthComputable:n!=null,[t?"download":"upload"]:!0};e(m)},a)},Va=(e,t)=>{const a=e!=null;return[s=>t[0]({lengthComputable:a,total:e,loaded:s}),t[1]]},Ga=e=>(...t)=>c.asap(()=>e(...t)),so=U.hasStandardBrowserEnv?((e,t)=>a=>(a=new URL(a,U.origin),e.protocol===a.protocol&&e.host===a.host&&(t||e.port===a.port)))(new URL(U.origin),U.navigator&&/(msie|trident)/i.test(U.navigator.userAgent)):()=>!0,ro=U.hasStandardBrowserEnv?{write(e,t,a,s,r,i){const o=[e+"="+encodeURIComponent(t)];c.isNumber(a)&&o.push("expires="+new Date(a).toGMTString()),c.isString(s)&&o.push("path="+s),c.isString(r)&&o.push("domain="+r),i===!0&&o.push("secure"),document.cookie=o.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function io(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function oo(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Os(e,t,a){let s=!io(t);return e&&s||a==!1?oo(e,t):t}const $a=e=>e instanceof V?{...e}:e;function Oe(e,t){t=t||{};const a={};function s(l,u,m,R){return c.isPlainObject(l)&&c.isPlainObject(u)?c.merge.call({caseless:R},l,u):c.isPlainObject(u)?c.merge({},u):c.isArray(u)?u.slice():u}function r(l,u,m,R){if(c.isUndefined(u)){if(!c.isUndefined(l))return s(void 0,l,m,R)}else return s(l,u,m,R)}function i(l,u){if(!c.isUndefined(u))return s(void 0,u)}function o(l,u){if(c.isUndefined(u)){if(!c.isUndefined(l))return s(void 0,l)}else return s(void 0,u)}function n(l,u,m){if(m in t)return s(l,u);if(m in e)return s(void 0,l)}const d={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:n,headers:(l,u,m)=>r($a(l),$a(u),m,!0)};return c.forEach(Object.keys(Object.assign({},e,t)),function(u){const m=d[u]||r,R=m(e[u],t[u],u);c.isUndefined(R)&&m!==n||(a[u]=R)}),a}const xs=e=>{const t=Oe({},e);let{data:a,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:i,headers:o,auth:n}=t;t.headers=o=V.from(o),t.url=As(Os(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),n&&o.set("Authorization","Basic "+btoa((n.username||"")+":"+(n.password?unescape(encodeURIComponent(n.password)):"")));let d;if(c.isFormData(a)){if(U.hasStandardBrowserEnv||U.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((d=o.getContentType())!==!1){const[l,...u]=d?d.split(";").map(m=>m.trim()).filter(Boolean):[];o.setContentType([l||"multipart/form-data",...u].join("; "))}}if(U.hasStandardBrowserEnv&&(s&&c.isFunction(s)&&(s=s(t)),s||s!==!1&&so(t.url))){const l=r&&i&&ro.read(i);l&&o.set(r,l)}return t},no=typeof XMLHttpRequest<"u",lo=no&&function(e){return new Promise(function(a,s){const r=xs(e);let i=r.data;const o=V.from(r.headers).normalize();let{responseType:n,onUploadProgress:d,onDownloadProgress:l}=r,u,m,R,b,h;function B(){b&&b(),h&&h(),r.cancelToken&&r.cancelToken.unsubscribe(u),r.signal&&r.signal.removeEventListener("abort",u)}let S=new XMLHttpRequest;S.open(r.method.toUpperCase(),r.url,!0),S.timeout=r.timeout;function O(){if(!S)return;const W=V.from("getAllResponseHeaders"in S&&S.getAllResponseHeaders()),k={data:!n||n==="text"||n==="json"?S.responseText:S.response,status:S.status,statusText:S.statusText,headers:W,config:e,request:S};Ns(function(se){a(se),B()},function(se){s(se),B()},k),S=null}"onloadend"in S?S.onloadend=O:S.onreadystatechange=function(){!S||S.readyState!==4||S.status===0&&!(S.responseURL&&S.responseURL.indexOf("file:")===0)||setTimeout(O)},S.onabort=function(){S&&(s(new E("Request aborted",E.ECONNABORTED,e,S)),S=null)},S.onerror=function(){s(new E("Network Error",E.ERR_NETWORK,e,S)),S=null},S.ontimeout=function(){let $=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const k=r.transitional||Ls;r.timeoutErrorMessage&&($=r.timeoutErrorMessage),s(new E($,k.clarifyTimeoutError?E.ETIMEDOUT:E.ECONNABORTED,e,S)),S=null},i===void 0&&o.setContentType(null),"setRequestHeader"in S&&c.forEach(o.toJSON(),function($,k){S.setRequestHeader(k,$)}),c.isUndefined(r.withCredentials)||(S.withCredentials=!!r.withCredentials),n&&n!=="json"&&(S.responseType=r.responseType),l&&([R,h]=Tt(l,!0),S.addEventListener("progress",R)),d&&S.upload&&([m,b]=Tt(d),S.upload.addEventListener("progress",m),S.upload.addEventListener("loadend",b)),(r.cancelToken||r.signal)&&(u=W=>{S&&(s(!W||W.type?new Fe(null,e,S):W),S.abort(),S=null)},r.cancelToken&&r.cancelToken.subscribe(u),r.signal&&(r.signal.aborted?u():r.signal.addEventListener("abort",u)));const v=eo(r.url);if(v&&U.protocols.indexOf(v)===-1){s(new E("Unsupported protocol "+v+":",E.ERR_BAD_REQUEST,e));return}S.send(i||null)})},co=(e,t)=>{const{length:a}=e=e?e.filter(Boolean):[];if(t||a){let s=new AbortController,r;const i=function(l){if(!r){r=!0,n();const u=l instanceof Error?l:this.reason;s.abort(u instanceof E?u:new Fe(u instanceof Error?u.message:u))}};let o=t&&setTimeout(()=>{o=null,i(new E(`timeout ${t} of ms exceeded`,E.ETIMEDOUT))},t);const n=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(l=>{l.unsubscribe?l.unsubscribe(i):l.removeEventListener("abort",i)}),e=null)};e.forEach(l=>l.addEventListener("abort",i));const{signal:d}=s;return d.unsubscribe=()=>c.asap(n),d}},uo=function*(e,t){let a=e.byteLength;if(a{const r=po(e,t);let i=0,o,n=d=>{o||(o=!0,s&&s(d))};return new ReadableStream({async pull(d){try{const{done:l,value:u}=await r.next();if(l){n(),d.close();return}let m=u.byteLength;if(a){let R=i+=m;a(R)}d.enqueue(new Uint8Array(u))}catch(l){throw n(l),l}},cancel(d){return n(d),r.return()}},{highWaterMark:2})},vt=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Cs=vt&&typeof ReadableStream=="function",ho=vt&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),vs=(e,...t)=>{try{return!!e(...t)}catch{return!1}},fo=Cs&&vs(()=>{let e=!1;const t=new Request(U.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Za=64*1024,na=Cs&&vs(()=>c.isReadableStream(new Response("").body)),Bt={stream:na&&(e=>e.body)};vt&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!Bt[t]&&(Bt[t]=c.isFunction(e[t])?a=>a[t]():(a,s)=>{throw new E(`Response type '${t}' is not supported`,E.ERR_NOT_SUPPORT,s)})})})(new Response);const _o=async e=>{if(e==null)return 0;if(c.isBlob(e))return e.size;if(c.isSpecCompliantForm(e))return(await new Request(U.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(c.isArrayBufferView(e)||c.isArrayBuffer(e))return e.byteLength;if(c.isURLSearchParams(e)&&(e=e+""),c.isString(e))return(await ho(e)).byteLength},So=async(e,t)=>{const a=c.toFiniteNumber(e.getContentLength());return a??_o(t)},ko=vt&&(async e=>{let{url:t,method:a,data:s,signal:r,cancelToken:i,timeout:o,onDownloadProgress:n,onUploadProgress:d,responseType:l,headers:u,withCredentials:m="same-origin",fetchOptions:R}=xs(e);l=l?(l+"").toLowerCase():"text";let b=co([r,i&&i.toAbortSignal()],o),h;const B=b&&b.unsubscribe&&(()=>{b.unsubscribe()});let S;try{if(d&&fo&&a!=="get"&&a!=="head"&&(S=await So(u,s))!==0){let k=new Request(t,{method:"POST",body:s,duplex:"half"}),P;if(c.isFormData(s)&&(P=k.headers.get("content-type"))&&u.setContentType(P),k.body){const[se,J]=Va(S,Tt(Ga(d)));s=Ka(k.body,Za,se,J)}}c.isString(m)||(m=m?"include":"omit");const O="credentials"in Request.prototype;h=new Request(t,{...R,signal:b,method:a.toUpperCase(),headers:u.normalize().toJSON(),body:s,duplex:"half",credentials:O?m:void 0});let v=await fetch(h);const W=na&&(l==="stream"||l==="response");if(na&&(n||W&&B)){const k={};["status","statusText","headers"].forEach(Ce=>{k[Ce]=v[Ce]});const P=c.toFiniteNumber(v.headers.get("content-length")),[se,J]=n&&Va(P,Tt(Ga(n),!0))||[];v=new Response(Ka(v.body,Za,se,()=>{J&&J(),B&&B()}),k)}l=l||"text";let $=await Bt[c.findKey(Bt,l)||"text"](v,e);return!W&&B&&B(),await new Promise((k,P)=>{Ns(k,P,{data:$,headers:V.from(v.headers),status:v.status,statusText:v.statusText,config:e,request:h})})}catch(O){throw B&&B(),O&&O.name==="TypeError"&&/fetch/i.test(O.message)?Object.assign(new E("Network Error",E.ERR_NETWORK,e,h),{cause:O.cause||O}):E.from(O,O&&O.code,e,h)}}),la={http:Ci,xhr:lo,fetch:ko};c.forEach(la,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Xa=e=>`- ${e}`,To=e=>c.isFunction(e)||e===null||e===!1,Ws={getAdapter:e=>{e=c.isArray(e)?e:[e];const{length:t}=e;let a,s;const r={};for(let i=0;i`adapter ${n} `+(d===!1?"is not supported by the environment":"is not available in the build"));let o=t?i.length>1?`since : `+i.map(Xa).join(` -`):" "+Xa(i[0]):"as no adapter specified";throw new E("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return s},adapters:na};function Gt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Me(null,e)}function Qa(e){return Gt(e),e.headers=V.from(e.headers),e.data=Vt.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Ws.getAdapter(e.adapter||at.adapter)(e).then(function(s){return Gt(e),s.data=Vt.call(e,e.transformResponse,s),s.headers=V.from(s.headers),s},function(s){return bs(s)||(Gt(e),s&&s.response&&(s.response.data=Vt.call(e,e.transformResponse,s.response),s.response.headers=V.from(s.response.headers))),Promise.reject(s)})}const Ps="1.8.3",vt={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{vt[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const es={};vt.transitional=function(t,a,s){function r(i,o){return"[Axios v"+Ps+"] Transitional option '"+i+"'"+o+(s?". "+s:"")}return(i,o,n)=>{if(t===!1)throw new E(r(o," has been removed"+(a?" in "+a:"")),E.ERR_DEPRECATED);return a&&!es[o]&&(es[o]=!0,console.warn(r(o," has been deprecated since v"+a+" and will be removed in the near future"))),t?t(i,o,n):!0}};vt.spelling=function(t){return(a,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function Bo(e,t,a){if(typeof e!="object")throw new E("options must be an object",E.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const i=s[r],o=t[i];if(o){const n=e[i],d=n===void 0||o(n,i,e);if(d!==!0)throw new E("option "+i+" must be "+d,E.ERR_BAD_OPTION_VALUE);continue}if(a!==!0)throw new E("Unknown option "+i,E.ERR_BAD_OPTION)}}const mt={assertOptions:Bo,validators:vt},le=mt.validators;let be=class{constructor(t){this.defaults=t,this.interceptors={request:new Ja,response:new Ja}}async request(t,a){try{return await this._request(t,a)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const i=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?i&&!String(s.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(s.stack+=` -`+i):s.stack=i}catch{}}throw s}}_request(t,a){typeof t=="string"?(a=a||{},a.url=t):a=t||{},a=Oe(this.defaults,a);const{transitional:s,paramsSerializer:r,headers:i}=a;s!==void 0&&mt.assertOptions(s,{silentJSONParsing:le.transitional(le.boolean),forcedJSONParsing:le.transitional(le.boolean),clarifyTimeoutError:le.transitional(le.boolean)},!1),r!=null&&(c.isFunction(r)?a.paramsSerializer={serialize:r}:mt.assertOptions(r,{encode:le.function,serialize:le.function},!0)),a.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?a.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:a.allowAbsoluteUrls=!0),mt.assertOptions(a,{baseUrl:le.spelling("baseURL"),withXsrfToken:le.spelling("withXSRFToken")},!0),a.method=(a.method||this.defaults.method||"get").toLowerCase();let o=i&&c.merge(i.common,i[a.method]);i&&c.forEach(["delete","get","head","post","put","patch","common"],f=>{delete i[f]}),a.headers=V.concat(o,i);const n=[];let d=!0;this.interceptors.request.forEach(function(B){typeof B.runWhen=="function"&&B.runWhen(a)===!1||(d=d&&B.synchronous,n.unshift(B.fulfilled,B.rejected))});const l=[];this.interceptors.response.forEach(function(B){l.push(B.fulfilled,B.rejected)});let u,m=0,R;if(!d){const f=[Qa.bind(this),void 0];for(f.unshift.apply(f,n),f.push.apply(f,l),R=f.length,u=Promise.resolve(a);m{if(!s._listeners)return;let i=s._listeners.length;for(;i-- >0;)s._listeners[i](r);s._listeners=null}),this.promise.then=r=>{let i;const o=new Promise(n=>{s.subscribe(n),i=n}).then(r);return o.cancel=function(){s.unsubscribe(i)},o},t(function(i,o,n){s.reason||(s.reason=new Me(i,o,n),a(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const a=this._listeners.indexOf(t);a!==-1&&this._listeners.splice(a,1)}toAbortSignal(){const t=new AbortController,a=s=>{t.abort(s)};return this.subscribe(a),t.signal.unsubscribe=()=>this.unsubscribe(a),t.signal}static source(){let t;return{token:new Ds(function(r){t=r}),cancel:t}}};function Ro(e){return function(a){return e.apply(null,a)}}function wo(e){return c.isObject(e)&&e.isAxiosError===!0}const la={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(la).forEach(([e,t])=>{la[t]=e});function Hs(e){const t=new be(e),a=hs(be.prototype.request,t);return c.extend(a,be.prototype,t,{allOwnKeys:!0}),c.extend(a,t,null,{allOwnKeys:!0}),a.create=function(r){return Hs(Oe(e,r))},a}const H=Hs(at);H.Axios=be;H.CanceledError=Me;H.CancelToken=Eo;H.isCancel=bs;H.VERSION=Ps;H.toFormData=xt;H.AxiosError=E;H.Cancel=H.CanceledError;H.all=function(t){return Promise.all(t)};H.spread=Ro;H.isAxiosError=wo;H.mergeConfig=Oe;H.AxiosHeaders=V;H.formToJSON=e=>ys(c.isHTMLForm(e)?new FormData(e):e);H.getAdapter=Ws.getAdapter;H.HttpStatusCode=la;H.default=H;const{Axios:R0,AxiosError:w0,CanceledError:g0,isCancel:A0,CancelToken:L0,VERSION:y0,all:b0,Cancel:N0,isAxiosError:O0,spread:x0,toFormData:C0,AxiosHeaders:v0,HttpStatusCode:W0,formToJSON:P0,getAdapter:D0,mergeConfig:H0}=H;//! moment.js +`):" "+Xa(i[0]):"as no adapter specified";throw new E("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return s},adapters:la};function $t(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Fe(null,e)}function Qa(e){return $t(e),e.headers=V.from(e.headers),e.data=Gt.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Ws.getAdapter(e.adapter||st.adapter)(e).then(function(s){return $t(e),s.data=Gt.call(e,e.transformResponse,s),s.headers=V.from(s.headers),s},function(s){return bs(s)||($t(e),s&&s.response&&(s.response.data=Gt.call(e,e.transformResponse,s.response),s.response.headers=V.from(s.response.headers))),Promise.reject(s)})}const Ps="1.8.3",Wt={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Wt[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const es={};Wt.transitional=function(t,a,s){function r(i,o){return"[Axios v"+Ps+"] Transitional option '"+i+"'"+o+(s?". "+s:"")}return(i,o,n)=>{if(t===!1)throw new E(r(o," has been removed"+(a?" in "+a:"")),E.ERR_DEPRECATED);return a&&!es[o]&&(es[o]=!0,console.warn(r(o," has been deprecated since v"+a+" and will be removed in the near future"))),t?t(i,o,n):!0}};Wt.spelling=function(t){return(a,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function Bo(e,t,a){if(typeof e!="object")throw new E("options must be an object",E.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const i=s[r],o=t[i];if(o){const n=e[i],d=n===void 0||o(n,i,e);if(d!==!0)throw new E("option "+i+" must be "+d,E.ERR_BAD_OPTION_VALUE);continue}if(a!==!0)throw new E("Unknown option "+i,E.ERR_BAD_OPTION)}}const ht={assertOptions:Bo,validators:Wt},ce=ht.validators;let be=class{constructor(t){this.defaults=t,this.interceptors={request:new Ja,response:new Ja}}async request(t,a){try{return await this._request(t,a)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const i=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?i&&!String(s.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(s.stack+=` +`+i):s.stack=i}catch{}}throw s}}_request(t,a){typeof t=="string"?(a=a||{},a.url=t):a=t||{},a=Oe(this.defaults,a);const{transitional:s,paramsSerializer:r,headers:i}=a;s!==void 0&&ht.assertOptions(s,{silentJSONParsing:ce.transitional(ce.boolean),forcedJSONParsing:ce.transitional(ce.boolean),clarifyTimeoutError:ce.transitional(ce.boolean)},!1),r!=null&&(c.isFunction(r)?a.paramsSerializer={serialize:r}:ht.assertOptions(r,{encode:ce.function,serialize:ce.function},!0)),a.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?a.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:a.allowAbsoluteUrls=!0),ht.assertOptions(a,{baseUrl:ce.spelling("baseURL"),withXsrfToken:ce.spelling("withXSRFToken")},!0),a.method=(a.method||this.defaults.method||"get").toLowerCase();let o=i&&c.merge(i.common,i[a.method]);i&&c.forEach(["delete","get","head","post","put","patch","common"],h=>{delete i[h]}),a.headers=V.concat(o,i);const n=[];let d=!0;this.interceptors.request.forEach(function(B){typeof B.runWhen=="function"&&B.runWhen(a)===!1||(d=d&&B.synchronous,n.unshift(B.fulfilled,B.rejected))});const l=[];this.interceptors.response.forEach(function(B){l.push(B.fulfilled,B.rejected)});let u,m=0,R;if(!d){const h=[Qa.bind(this),void 0];for(h.unshift.apply(h,n),h.push.apply(h,l),R=h.length,u=Promise.resolve(a);m{if(!s._listeners)return;let i=s._listeners.length;for(;i-- >0;)s._listeners[i](r);s._listeners=null}),this.promise.then=r=>{let i;const o=new Promise(n=>{s.subscribe(n),i=n}).then(r);return o.cancel=function(){s.unsubscribe(i)},o},t(function(i,o,n){s.reason||(s.reason=new Fe(i,o,n),a(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const a=this._listeners.indexOf(t);a!==-1&&this._listeners.splice(a,1)}toAbortSignal(){const t=new AbortController,a=s=>{t.abort(s)};return this.subscribe(a),t.signal.unsubscribe=()=>this.unsubscribe(a),t.signal}static source(){let t;return{token:new Ds(function(r){t=r}),cancel:t}}};function Ro(e){return function(a){return e.apply(null,a)}}function wo(e){return c.isObject(e)&&e.isAxiosError===!0}const ca={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ca).forEach(([e,t])=>{ca[t]=e});function Hs(e){const t=new be(e),a=hs(be.prototype.request,t);return c.extend(a,be.prototype,t,{allOwnKeys:!0}),c.extend(a,t,null,{allOwnKeys:!0}),a.create=function(r){return Hs(Oe(e,r))},a}const H=Hs(st);H.Axios=be;H.CanceledError=Fe;H.CancelToken=Eo;H.isCancel=bs;H.VERSION=Ps;H.toFormData=Ct;H.AxiosError=E;H.Cancel=H.CanceledError;H.all=function(t){return Promise.all(t)};H.spread=Ro;H.isAxiosError=wo;H.mergeConfig=Oe;H.AxiosHeaders=V;H.formToJSON=e=>ys(c.isHTMLForm(e)?new FormData(e):e);H.getAdapter=Ws.getAdapter;H.HttpStatusCode=ca;H.default=H;const{Axios:R0,AxiosError:w0,CanceledError:g0,isCancel:A0,CancelToken:L0,VERSION:y0,all:b0,Cancel:N0,isAxiosError:O0,spread:x0,toFormData:C0,AxiosHeaders:v0,HttpStatusCode:W0,formToJSON:P0,getAdapter:D0,mergeConfig:H0}=H;//! moment.js //! version : 2.29.4 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com -var Is;function h(){return Is.apply(null,arguments)}function go(e){Is=e}function re(e){return e instanceof Array||Object.prototype.toString.call(e)==="[object Array]"}function Ne(e){return e!=null&&Object.prototype.toString.call(e)==="[object Object]"}function L(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ta(e){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(e).length===0;var t;for(t in e)if(L(e,t))return!1;return!0}function j(e){return e===void 0}function ke(e){return typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]"}function st(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function Ms(e,t){var a=[],s,r=e.length;for(s=0;s>>0,s;for(s=0;s0)for(a=0;a>>0,s;for(s=0;s0)for(a=0;a=0;return(i?a?"+":"":"-")+Math.pow(10,Math.max(0,r)).toString().substr(1)+s}var wa=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,nt=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Kt={},Pe={};function k(e,t,a,s){var r=s;typeof s=="string"&&(r=function(){return this[s]()}),e&&(Pe[e]=r),t&&(Pe[t[0]]=function(){return de(r.apply(this,arguments),t[1],t[2])}),a&&(Pe[a]=function(){return this.localeData().ordinal(r.apply(this,arguments),e)})}function No(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function Oo(e){var t=e.match(wa),a,s;for(a=0,s=t.length;a=0&&nt.test(e);)e=e.replace(nt,s),nt.lastIndex=0,a-=1;return e}var xo={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function Co(e){var t=this._longDateFormat[e],a=this._longDateFormat[e.toUpperCase()];return t||!a?t:(this._longDateFormat[e]=a.match(wa).map(function(s){return s==="MMMM"||s==="MM"||s==="DD"||s==="dddd"?s.slice(1):s}).join(""),this._longDateFormat[e])}var vo="Invalid date";function Wo(){return this._invalidDate}var Po="%d",Do=/\d{1,2}/;function Ho(e){return this._ordinal.replace("%d",e)}var Io={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function Mo(e,t,a,s){var r=this._relativeTime[a];return pe(r)?r(e,t,a,s):r.replace(/%d/i,e)}function Fo(e,t){var a=this._relativeTime[e>0?"future":"past"];return pe(a)?a(t):a.replace(/%s/i,t)}var Ge={};function z(e,t){var a=e.toLowerCase();Ge[a]=Ge[a+"s"]=Ge[t]=e}function te(e){return typeof e=="string"?Ge[e]||Ge[e.toLowerCase()]:void 0}function ga(e){var t={},a,s;for(s in e)L(e,s)&&(a=te(s),a&&(t[a]=e[s]));return t}var Ys={};function J(e,t){Ys[e]=t}function Uo(e){var t=[],a;for(a in e)L(e,a)&&t.push({unit:a,priority:Ys[a]});return t.sort(function(s,r){return s.priority-r.priority}),t}function Pt(e){return e%4===0&&e%100!==0||e%400===0}function Q(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function g(e){var t=+e,a=0;return t!==0&&isFinite(t)&&(a=Q(t)),a}function Fe(e,t){return function(a){return a!=null?(zs(this,e,a),h.updateOffset(this,t),this):Bt(this,e)}}function Bt(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function zs(e,t,a){e.isValid()&&!isNaN(a)&&(t==="FullYear"&&Pt(e.year())&&e.month()===1&&e.date()===29?(a=g(a),e._d["set"+(e._isUTC?"UTC":"")+t](a,e.month(),Ut(a,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](a))}function qo(e){return e=te(e),pe(this[e])?this[e]():this}function Yo(e,t){if(typeof e=="object"){e=ga(e);var a=Uo(e),s,r=a.length;for(s=0;s68?1900:2e3)};var er=Fe("FullYear",!0);function cn(){return Pt(this.year())}function dn(e,t,a,s,r,i,o){var n;return e<100&&e>=0?(n=new Date(e+400,t,a,s,r,i,o),isFinite(n.getFullYear())&&n.setFullYear(e)):n=new Date(e,t,a,s,r,i,o),n}function Xe(e){var t,a;return e<100&&e>=0?(a=Array.prototype.slice.call(arguments),a[0]=e+400,t=new Date(Date.UTC.apply(null,a)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function Rt(e,t,a){var s=7+t-a,r=(7+Xe(e,0,s).getUTCDay()-t)%7;return-r+s-1}function tr(e,t,a,s,r){var i=(7+a-s)%7,o=Rt(e,s,r),n=1+7*(t-1)+i+o,d,l;return n<=0?(d=e-1,l=$e(d)+n):n>$e(e)?(d=e+1,l=n-$e(e)):(d=e,l=n),{year:d,dayOfYear:l}}function Qe(e,t,a){var s=Rt(e.year(),t,a),r=Math.floor((e.dayOfYear()-s-1)/7)+1,i,o;return r<1?(o=e.year()-1,i=r+Se(o,t,a)):r>Se(e.year(),t,a)?(i=r-Se(e.year(),t,a),o=e.year()+1):(o=e.year(),i=r),{week:i,year:o}}function Se(e,t,a){var s=Rt(e,t,a),r=Rt(e+1,t,a);return($e(e)-s+r)/7}k("w",["ww",2],"wo","week");k("W",["WW",2],"Wo","isoWeek");z("week","w");z("isoWeek","W");J("week",5);J("isoWeek",5);_("w",v);_("ww",v,Z);_("W",v);_("WW",v,Z);ot(["w","ww","W","WW"],function(e,t,a,s){t[s.substr(0,1)]=g(e)});function un(e){return Qe(e,this._week.dow,this._week.doy).week}var pn={dow:0,doy:6};function mn(){return this._week.dow}function hn(){return this._week.doy}function fn(e){var t=this.localeData().week(this);return e==null?t:this.add((e-t)*7,"d")}function _n(e){var t=Qe(this,1,4).week;return e==null?t:this.add((e-t)*7,"d")}k("d",0,"do","day");k("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)});k("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)});k("dddd",0,0,function(e){return this.localeData().weekdays(this,e)});k("e",0,0,"weekday");k("E",0,0,"isoWeekday");z("day","d");z("weekday","e");z("isoWeekday","E");J("day",11);J("weekday",11);J("isoWeekday",11);_("d",v);_("e",v);_("E",v);_("dd",function(e,t){return t.weekdaysMinRegex(e)});_("ddd",function(e,t){return t.weekdaysShortRegex(e)});_("dddd",function(e,t){return t.weekdaysRegex(e)});ot(["dd","ddd","dddd"],function(e,t,a,s){var r=a._locale.weekdaysParse(e,s,a._strict);r!=null?t.d=r:w(a).invalidWeekday=e});ot(["d","e","E"],function(e,t,a,s){t[s]=g(e)});function Sn(e,t){return typeof e!="string"?e:isNaN(e)?(e=t.weekdaysParse(e),typeof e=="number"?e:null):parseInt(e,10)}function kn(e,t){return typeof e=="string"?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function ya(e,t){return e.slice(t,7).concat(e.slice(0,t))}var Tn="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),ar="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Bn="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),En=it,Rn=it,wn=it;function gn(e,t){var a=re(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(t)?"format":"standalone"];return e===!0?ya(a,this._week.dow):e?a[e.day()]:a}function An(e){return e===!0?ya(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Ln(e){return e===!0?ya(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function yn(e,t,a){var s,r,i,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],s=0;s<7;++s)i=ue([2e3,1]).day(s),this._minWeekdaysParse[s]=this.weekdaysMin(i,"").toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(i,"").toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(i,"").toLocaleLowerCase();return a?t==="dddd"?(r=I.call(this._weekdaysParse,o),r!==-1?r:null):t==="ddd"?(r=I.call(this._shortWeekdaysParse,o),r!==-1?r:null):(r=I.call(this._minWeekdaysParse,o),r!==-1?r:null):t==="dddd"?(r=I.call(this._weekdaysParse,o),r!==-1||(r=I.call(this._shortWeekdaysParse,o),r!==-1)?r:(r=I.call(this._minWeekdaysParse,o),r!==-1?r:null)):t==="ddd"?(r=I.call(this._shortWeekdaysParse,o),r!==-1||(r=I.call(this._weekdaysParse,o),r!==-1)?r:(r=I.call(this._minWeekdaysParse,o),r!==-1?r:null)):(r=I.call(this._minWeekdaysParse,o),r!==-1||(r=I.call(this._weekdaysParse,o),r!==-1)?r:(r=I.call(this._shortWeekdaysParse,o),r!==-1?r:null))}function bn(e,t,a){var s,r,i;if(this._weekdaysParseExact)return yn.call(this,e,t,a);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),s=0;s<7;s++){if(r=ue([2e3,1]).day(s),a&&!this._fullWeekdaysParse[s]&&(this._fullWeekdaysParse[s]=new RegExp("^"+this.weekdays(r,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[s]=new RegExp("^"+this.weekdaysShort(r,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[s]=new RegExp("^"+this.weekdaysMin(r,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[s]||(i="^"+this.weekdays(r,"")+"|^"+this.weekdaysShort(r,"")+"|^"+this.weekdaysMin(r,""),this._weekdaysParse[s]=new RegExp(i.replace(".",""),"i")),a&&t==="dddd"&&this._fullWeekdaysParse[s].test(e))return s;if(a&&t==="ddd"&&this._shortWeekdaysParse[s].test(e))return s;if(a&&t==="dd"&&this._minWeekdaysParse[s].test(e))return s;if(!a&&this._weekdaysParse[s].test(e))return s}}function Nn(e){if(!this.isValid())return e!=null?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return e!=null?(e=Sn(e,this.localeData()),this.add(e-t,"d")):t}function On(e){if(!this.isValid())return e!=null?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return e==null?t:this.add(e-t,"d")}function xn(e){if(!this.isValid())return e!=null?this:NaN;if(e!=null){var t=kn(e,this.localeData());return this.day(this.day()%7?t:t-7)}else return this.day()||7}function Cn(e){return this._weekdaysParseExact?(L(this,"_weekdaysRegex")||ba.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(L(this,"_weekdaysRegex")||(this._weekdaysRegex=En),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function vn(e){return this._weekdaysParseExact?(L(this,"_weekdaysRegex")||ba.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(L(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Rn),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Wn(e){return this._weekdaysParseExact?(L(this,"_weekdaysRegex")||ba.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(L(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=wn),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function ba(){function e(u,m){return m.length-u.length}var t=[],a=[],s=[],r=[],i,o,n,d,l;for(i=0;i<7;i++)o=ue([2e3,1]).day(i),n=$(this.weekdaysMin(o,"")),d=$(this.weekdaysShort(o,"")),l=$(this.weekdays(o,"")),t.push(n),a.push(d),s.push(l),r.push(n),r.push(d),r.push(l);t.sort(e),a.sort(e),s.sort(e),r.sort(e),this._weekdaysRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+t.join("|")+")","i")}function Na(){return this.hours()%12||12}function Pn(){return this.hours()||24}k("H",["HH",2],0,"hour");k("h",["hh",2],0,Na);k("k",["kk",2],0,Pn);k("hmm",0,0,function(){return""+Na.apply(this)+de(this.minutes(),2)});k("hmmss",0,0,function(){return""+Na.apply(this)+de(this.minutes(),2)+de(this.seconds(),2)});k("Hmm",0,0,function(){return""+this.hours()+de(this.minutes(),2)});k("Hmmss",0,0,function(){return""+this.hours()+de(this.minutes(),2)+de(this.seconds(),2)});function sr(e,t){k(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}sr("a",!0);sr("A",!1);z("hour","h");J("hour",13);function rr(e,t){return t._meridiemParse}_("a",rr);_("A",rr);_("H",v);_("h",v);_("k",v);_("HH",v,Z);_("hh",v,Z);_("kk",v,Z);_("hmm",Vs);_("hmmss",Gs);_("Hmm",Vs);_("Hmmss",Gs);O(["H","HH"],F);O(["k","kk"],function(e,t,a){var s=g(e);t[F]=s===24?0:s});O(["a","A"],function(e,t,a){a._isPm=a._locale.isPM(e),a._meridiem=e});O(["h","hh"],function(e,t,a){t[F]=g(e),w(a).bigHour=!0});O("hmm",function(e,t,a){var s=e.length-2;t[F]=g(e.substr(0,s)),t[se]=g(e.substr(s)),w(a).bigHour=!0});O("hmmss",function(e,t,a){var s=e.length-4,r=e.length-2;t[F]=g(e.substr(0,s)),t[se]=g(e.substr(s,2)),t[_e]=g(e.substr(r)),w(a).bigHour=!0});O("Hmm",function(e,t,a){var s=e.length-2;t[F]=g(e.substr(0,s)),t[se]=g(e.substr(s))});O("Hmmss",function(e,t,a){var s=e.length-4,r=e.length-2;t[F]=g(e.substr(0,s)),t[se]=g(e.substr(s,2)),t[_e]=g(e.substr(r))});function Dn(e){return(e+"").toLowerCase().charAt(0)==="p"}var Hn=/[ap]\.?m?\.?/i,In=Fe("Hours",!0);function Mn(e,t,a){return e>11?a?"pm":"PM":a?"am":"AM"}var ir={calendar:yo,longDateFormat:xo,invalidDate:vo,ordinal:Po,dayOfMonthOrdinalParse:Do,relativeTime:Io,months:Xo,monthsShort:$s,week:pn,weekdays:Tn,weekdaysMin:Bn,weekdaysShort:ar,meridiemParse:Hn},P={},Ye={},et;function Fn(e,t){var a,s=Math.min(e.length,t.length);for(a=0;a0;){if(r=qt(i.slice(0,a).join("-")),r)return r;if(s&&s.length>=a&&Fn(i,s)>=a-1)break;a--}t++}return et}function qn(e){return e.match("^[^/\\\\]*$")!=null}function qt(e){var t=null,a;if(P[e]===void 0&&typeof St<"u"&&St&&St.exports&&qn(e))try{t=et._abbr,a=require,a("./locale/"+e),ge(t)}catch{P[e]=null}return P[e]}function ge(e,t){var a;return e&&(j(t)?a=Te(e):a=Oa(e,t),a?et=a:typeof console<"u"&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),et._abbr}function Oa(e,t){if(t!==null){var a,s=ir;if(t.abbr=e,P[e]!=null)Us("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=P[e]._config;else if(t.parentLocale!=null)if(P[t.parentLocale]!=null)s=P[t.parentLocale]._config;else if(a=qt(t.parentLocale),a!=null)s=a._config;else return Ye[t.parentLocale]||(Ye[t.parentLocale]=[]),Ye[t.parentLocale].push({name:e,config:t}),null;return P[e]=new Ra(da(s,t)),Ye[e]&&Ye[e].forEach(function(r){Oa(r.name,r.config)}),ge(e),P[e]}else return delete P[e],null}function Yn(e,t){if(t!=null){var a,s,r=ir;P[e]!=null&&P[e].parentLocale!=null?P[e].set(da(P[e]._config,t)):(s=qt(e),s!=null&&(r=s._config),t=da(r,t),s==null&&(t.abbr=e),a=new Ra(t),a.parentLocale=P[e],P[e]=a),ge(e)}else P[e]!=null&&(P[e].parentLocale!=null?(P[e]=P[e].parentLocale,e===ge()&&ge(e)):P[e]!=null&&delete P[e]);return P[e]}function Te(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return et;if(!re(e)){if(t=qt(e),t)return t;e=[e]}return Un(e)}function zn(){return ua(P)}function xa(e){var t,a=e._a;return a&&w(e).overflow===-2&&(t=a[fe]<0||a[fe]>11?fe:a[ce]<1||a[ce]>Ut(a[Y],a[fe])?ce:a[F]<0||a[F]>24||a[F]===24&&(a[se]!==0||a[_e]!==0||a[ye]!==0)?F:a[se]<0||a[se]>59?se:a[_e]<0||a[_e]>59?_e:a[ye]<0||a[ye]>999?ye:-1,w(e)._overflowDayOfYear&&(tce)&&(t=ce),w(e)._overflowWeeks&&t===-1&&(t=$o),w(e)._overflowWeekday&&t===-1&&(t=Ko),w(e).overflow=t),e}var Jn=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,jn=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Vn=/Z|[+-]\d\d(?::?\d\d)?/,lt=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Zt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Gn=/^\/?Date\((-?\d+)/i,$n=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Kn={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function or(e){var t,a,s=e._i,r=Jn.exec(s)||jn.exec(s),i,o,n,d,l=lt.length,u=Zt.length;if(r){for(w(e).iso=!0,t=0,a=l;t$e(o)||e._dayOfYear===0)&&(w(e)._overflowDayOfYear=!0),a=Xe(o,0,e._dayOfYear),e._a[fe]=a.getUTCMonth(),e._a[ce]=a.getUTCDate()),t=0;t<3&&e._a[t]==null;++t)e._a[t]=s[t]=r[t];for(;t<7;t++)e._a[t]=s[t]=e._a[t]==null?t===2?1:0:e._a[t];e._a[F]===24&&e._a[se]===0&&e._a[_e]===0&&e._a[ye]===0&&(e._nextDay=!0,e._a[F]=0),e._d=(e._useUTC?Xe:dn).apply(null,s),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[F]=24),e._w&&typeof e._w.d<"u"&&e._w.d!==i&&(w(e).weekdayMismatch=!0)}}function rl(e){var t,a,s,r,i,o,n,d,l;t=e._w,t.GG!=null||t.W!=null||t.E!=null?(i=1,o=4,a=ve(t.GG,e._a[Y],Qe(C(),1,4).year),s=ve(t.W,1),r=ve(t.E,1),(r<1||r>7)&&(d=!0)):(i=e._locale._week.dow,o=e._locale._week.doy,l=Qe(C(),i,o),a=ve(t.gg,e._a[Y],l.year),s=ve(t.w,l.week),t.d!=null?(r=t.d,(r<0||r>6)&&(d=!0)):t.e!=null?(r=t.e+i,(t.e<0||t.e>6)&&(d=!0)):r=i),s<1||s>Se(a,i,o)?w(e)._overflowWeeks=!0:d!=null?w(e)._overflowWeekday=!0:(n=tr(a,s,r,i,o),e._a[Y]=n.year,e._dayOfYear=n.dayOfYear)}h.ISO_8601=function(){};h.RFC_2822=function(){};function va(e){if(e._f===h.ISO_8601){or(e);return}if(e._f===h.RFC_2822){nr(e);return}e._a=[],w(e).empty=!0;var t=""+e._i,a,s,r,i,o,n=t.length,d=0,l,u;for(r=qs(e._f,e._locale).match(wa)||[],u=r.length,a=0;a0&&w(e).unusedInput.push(o),t=t.slice(t.indexOf(s)+s.length),d+=s.length),Pe[i]?(s?w(e).empty=!1:w(e).unusedTokens.push(i),Go(i,s,e)):e._strict&&!s&&w(e).unusedTokens.push(i);w(e).charsLeftOver=n-d,t.length>0&&w(e).unusedInput.push(t),e._a[F]<=12&&w(e).bigHour===!0&&e._a[F]>0&&(w(e).bigHour=void 0),w(e).parsedDateParts=e._a.slice(0),w(e).meridiem=e._meridiem,e._a[F]=il(e._locale,e._a[F],e._meridiem),l=w(e).era,l!==null&&(e._a[Y]=e._locale.erasConvertYear(l,e._a[Y])),Ca(e),xa(e)}function il(e,t,a){var s;return a==null?t:e.meridiemHour!=null?e.meridiemHour(t,a):(e.isPM!=null&&(s=e.isPM(a),s&&t<12&&(t+=12),!s&&t===12&&(t=0)),t)}function ol(e){var t,a,s,r,i,o,n=!1,d=e._f.length;if(d===0){w(e).invalidFormat=!0,e._d=new Date(NaN);return}for(r=0;rthis?this:e:Wt()});function dr(e,t){var a,s;if(t.length===1&&re(t[0])&&(t=t[0]),!t.length)return C();for(a=t[0],s=1;sthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function yl(){if(!j(this._isDSTShifted))return this._isDSTShifted;var e={},t;return Ea(e,this),e=lr(e),e._a?(t=e._isUTC?ue(e._a):C(e._a),this._isDSTShifted=this.isValid()&&kl(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function bl(){return this.isValid()?!this._isUTC:!1}function Nl(){return this.isValid()?this._isUTC:!1}function pr(){return this.isValid()?this._isUTC&&this._offset===0:!1}var Ol=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,xl=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function ne(e,t){var a=e,s=null,r,i,o;return ft(e)?a={ms:e._milliseconds,d:e._days,M:e._months}:ke(e)||!isNaN(+e)?(a={},t?a[t]=+e:a.milliseconds=+e):(s=Ol.exec(e))?(r=s[1]==="-"?-1:1,a={y:0,d:g(s[ce])*r,h:g(s[F])*r,m:g(s[se])*r,s:g(s[_e])*r,ms:g(ma(s[ye]*1e3))*r}):(s=xl.exec(e))?(r=s[1]==="-"?-1:1,a={y:Ae(s[2],r),M:Ae(s[3],r),w:Ae(s[4],r),d:Ae(s[5],r),h:Ae(s[6],r),m:Ae(s[7],r),s:Ae(s[8],r)}):a==null?a={}:typeof a=="object"&&("from"in a||"to"in a)&&(o=Cl(C(a.from),C(a.to)),a={},a.ms=o.milliseconds,a.M=o.months),i=new Yt(a),ft(e)&&L(e,"_locale")&&(i._locale=e._locale),ft(e)&&L(e,"_isValid")&&(i._isValid=e._isValid),i}ne.fn=Yt.prototype;ne.invalid=Sl;function Ae(e,t){var a=e&&parseFloat(e.replace(",","."));return(isNaN(a)?0:a)*t}function rs(e,t){var a={};return a.months=t.month()-e.month()+(t.year()-e.year())*12,e.clone().add(a.months,"M").isAfter(t)&&--a.months,a.milliseconds=+t-+e.clone().add(a.months,"M"),a}function Cl(e,t){var a;return e.isValid()&&t.isValid()?(t=Pa(t,e),e.isBefore(t)?a=rs(e,t):(a=rs(t,e),a.milliseconds=-a.milliseconds,a.months=-a.months),a):{milliseconds:0,months:0}}function mr(e,t){return function(a,s){var r,i;return s!==null&&!isNaN(+s)&&(Us(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=a,a=s,s=i),r=ne(a,s),hr(this,r,e),this}}function hr(e,t,a,s){var r=t._milliseconds,i=ma(t._days),o=ma(t._months);e.isValid()&&(s=s??!0,o&&Zs(e,Bt(e,"Month")+o*a),i&&zs(e,"Date",Bt(e,"Date")+i*a),r&&e._d.setTime(e._d.valueOf()+r*a),s&&h.updateOffset(e,i||o))}var vl=mr(1,"add"),Wl=mr(-1,"subtract");function fr(e){return typeof e=="string"||e instanceof String}function Pl(e){return ie(e)||st(e)||fr(e)||ke(e)||Hl(e)||Dl(e)||e===null||e===void 0}function Dl(e){var t=Ne(e)&&!Ta(e),a=!1,s=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],r,i,o=s.length;for(r=0;ra.valueOf():a.valueOf()9999?ht(a,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):pe(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",ht(a,"Z")):ht(a,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function Zl(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",t="",a,s,r,i;return this.isLocal()||(e=this.utcOffset()===0?"moment.utc":"moment.parseZone",t="Z"),a="["+e+'("]',s=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",r="-MM-DD[T]HH:mm:ss.SSS",i=t+'[")]',this.format(a+s+r+i)}function Xl(e){e||(e=this.isUtc()?h.defaultFormatUtc:h.defaultFormat);var t=ht(this,e);return this.localeData().postformat(t)}function Ql(e,t){return this.isValid()&&(ie(e)&&e.isValid()||C(e).isValid())?ne({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ec(e){return this.from(C(),e)}function tc(e,t){return this.isValid()&&(ie(e)&&e.isValid()||C(e).isValid())?ne({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ac(e){return this.to(C(),e)}function _r(e){var t;return e===void 0?this._locale._abbr:(t=Te(e),t!=null&&(this._locale=t),this)}var Sr=ee("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return e===void 0?this.localeData():this.locale(e)});function kr(){return this._locale}var wt=1e3,De=60*wt,gt=60*De,Tr=(365*400+97)*24*gt;function He(e,t){return(e%t+t)%t}function Br(e,t,a){return e<100&&e>=0?new Date(e+400,t,a)-Tr:new Date(e,t,a).valueOf()}function Er(e,t,a){return e<100&&e>=0?Date.UTC(e+400,t,a)-Tr:Date.UTC(e,t,a)}function sc(e){var t,a;if(e=te(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(a=this._isUTC?Er:Br,e){case"year":t=a(this.year(),0,1);break;case"quarter":t=a(this.year(),this.month()-this.month()%3,1);break;case"month":t=a(this.year(),this.month(),1);break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=a(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=He(t+(this._isUTC?0:this.utcOffset()*De),gt);break;case"minute":t=this._d.valueOf(),t-=He(t,De);break;case"second":t=this._d.valueOf(),t-=He(t,wt);break}return this._d.setTime(t),h.updateOffset(this,!0),this}function rc(e){var t,a;if(e=te(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(a=this._isUTC?Er:Br,e){case"year":t=a(this.year()+1,0,1)-1;break;case"quarter":t=a(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=a(this.year(),this.month()+1,1)-1;break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=a(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=gt-He(t+(this._isUTC?0:this.utcOffset()*De),gt)-1;break;case"minute":t=this._d.valueOf(),t+=De-He(t,De)-1;break;case"second":t=this._d.valueOf(),t+=wt-He(t,wt)-1;break}return this._d.setTime(t),h.updateOffset(this,!0),this}function ic(){return this._d.valueOf()-(this._offset||0)*6e4}function oc(){return Math.floor(this.valueOf()/1e3)}function nc(){return new Date(this.valueOf())}function lc(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function cc(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function dc(){return this.isValid()?this.toISOString():null}function uc(){return Ba(this)}function pc(){return Re({},w(this))}function mc(){return w(this).overflow}function hc(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}k("N",0,0,"eraAbbr");k("NN",0,0,"eraAbbr");k("NNN",0,0,"eraAbbr");k("NNNN",0,0,"eraName");k("NNNNN",0,0,"eraNarrow");k("y",["y",1],"yo","eraYear");k("y",["yy",2],0,"eraYear");k("y",["yyy",3],0,"eraYear");k("y",["yyyy",4],0,"eraYear");_("N",Da);_("NN",Da);_("NNN",Da);_("NNNN",Ac);_("NNNNN",Lc);O(["N","NN","NNN","NNNN","NNNNN"],function(e,t,a,s){var r=a._locale.erasParse(e,s,a._strict);r?w(a).era=r:w(a).invalidEra=e});_("y",Ue);_("yy",Ue);_("yyy",Ue);_("yyyy",Ue);_("yo",yc);O(["y","yy","yyy","yyyy"],Y);O(["yo"],function(e,t,a,s){var r;a._locale._eraYearOrdinalRegex&&(r=e.match(a._locale._eraYearOrdinalRegex)),a._locale.eraYearOrdinalParse?t[Y]=a._locale.eraYearOrdinalParse(e,r):t[Y]=parseInt(e,10)});function fc(e,t){var a,s,r,i=this._eras||Te("en")._eras;for(a=0,s=i.length;a=0)return i[s]}function Sc(e,t){var a=e.since<=e.until?1:-1;return t===void 0?h(e.since).year():h(e.since).year()+(t-e.offset)*a}function kc(){var e,t,a,s=this.localeData().eras();for(e=0,t=s.length;ei&&(t=i),Wc.call(this,e,t,a,s,r))}function Wc(e,t,a,s,r){var i=tr(e,t,a,s,r),o=Xe(i.year,0,i.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}k("Q",0,"Qo","quarter");z("quarter","Q");J("quarter",7);_("Q",Js);O("Q",function(e,t){t[fe]=(g(e)-1)*3});function Pc(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}k("D",["DD",2],"Do","date");z("date","D");J("date",9);_("D",v);_("DD",v,Z);_("Do",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient});O(["D","DD"],ce);O("Do",function(e,t){t[ce]=g(e.match(v)[0])});var wr=Fe("Date",!0);k("DDD",["DDDD",3],"DDDo","dayOfYear");z("dayOfYear","DDD");J("dayOfYear",4);_("DDD",Ht);_("DDDD",js);O(["DDD","DDDD"],function(e,t,a){a._dayOfYear=g(e)});function Dc(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return e==null?t:this.add(e-t,"d")}k("m",["mm",2],0,"minute");z("minute","m");J("minute",14);_("m",v);_("mm",v,Z);O(["m","mm"],se);var Hc=Fe("Minutes",!1);k("s",["ss",2],0,"second");z("second","s");J("second",15);_("s",v);_("ss",v,Z);O(["s","ss"],_e);var Ic=Fe("Seconds",!1);k("S",0,0,function(){return~~(this.millisecond()/100)});k(0,["SS",2],0,function(){return~~(this.millisecond()/10)});k(0,["SSS",3],0,"millisecond");k(0,["SSSS",4],0,function(){return this.millisecond()*10});k(0,["SSSSS",5],0,function(){return this.millisecond()*100});k(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3});k(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4});k(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5});k(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6});z("millisecond","ms");J("millisecond",16);_("S",Ht,Js);_("SS",Ht,Z);_("SSS",Ht,js);var we,gr;for(we="SSSS";we.length<=9;we+="S")_(we,Ue);function Mc(e,t){t[ye]=g(("0."+e)*1e3)}for(we="S";we.length<=9;we+="S")O(we,Mc);gr=Fe("Milliseconds",!1);k("z",0,0,"zoneAbbr");k("zz",0,0,"zoneName");function Fc(){return this._isUTC?"UTC":""}function Uc(){return this._isUTC?"Coordinated Universal Time":""}var p=rt.prototype;p.add=vl;p.calendar=Fl;p.clone=Ul;p.diff=Gl;p.endOf=rc;p.format=Xl;p.from=Ql;p.fromNow=ec;p.to=tc;p.toNow=ac;p.get=qo;p.invalidAt=mc;p.isAfter=ql;p.isBefore=Yl;p.isBetween=zl;p.isSame=Jl;p.isSameOrAfter=jl;p.isSameOrBefore=Vl;p.isValid=uc;p.lang=Sr;p.locale=_r;p.localeData=kr;p.max=ul;p.min=dl;p.parsingFlags=pc;p.set=Yo;p.startOf=sc;p.subtract=Wl;p.toArray=lc;p.toObject=cc;p.toDate=nc;p.toISOString=Kl;p.inspect=Zl;typeof Symbol<"u"&&Symbol.for!=null&&(p[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"});p.toJSON=dc;p.toString=$l;p.unix=oc;p.valueOf=ic;p.creationData=hc;p.eraName=kc;p.eraNarrow=Tc;p.eraAbbr=Bc;p.eraYear=Ec;p.year=er;p.isLeapYear=cn;p.weekYear=bc;p.isoWeekYear=Nc;p.quarter=p.quarters=Pc;p.month=Xs;p.daysInMonth=on;p.week=p.weeks=fn;p.isoWeek=p.isoWeeks=_n;p.weeksInYear=Cc;p.weeksInWeekYear=vc;p.isoWeeksInYear=Oc;p.isoWeeksInISOWeekYear=xc;p.date=wr;p.day=p.days=Nn;p.weekday=On;p.isoWeekday=xn;p.dayOfYear=Dc;p.hour=p.hours=In;p.minute=p.minutes=Hc;p.second=p.seconds=Ic;p.millisecond=p.milliseconds=gr;p.utcOffset=Bl;p.utc=Rl;p.local=wl;p.parseZone=gl;p.hasAlignedHourOffset=Al;p.isDST=Ll;p.isLocal=bl;p.isUtcOffset=Nl;p.isUtc=pr;p.isUTC=pr;p.zoneAbbr=Fc;p.zoneName=Uc;p.dates=ee("dates accessor is deprecated. Use date instead.",wr);p.months=ee("months accessor is deprecated. Use month instead",Xs);p.years=ee("years accessor is deprecated. Use year instead",er);p.zone=ee("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",El);p.isDSTShifted=ee("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",yl);function qc(e){return C(e*1e3)}function Yc(){return C.apply(null,arguments).parseZone()}function Ar(e){return e}var y=Ra.prototype;y.calendar=bo;y.longDateFormat=Co;y.invalidDate=Wo;y.ordinal=Ho;y.preparse=Ar;y.postformat=Ar;y.relativeTime=Mo;y.pastFuture=Fo;y.set=Lo;y.eras=fc;y.erasParse=_c;y.erasConvertYear=Sc;y.erasAbbrRegex=wc;y.erasNameRegex=Rc;y.erasNarrowRegex=gc;y.months=tn;y.monthsShort=an;y.monthsParse=rn;y.monthsRegex=ln;y.monthsShortRegex=nn;y.week=un;y.firstDayOfYear=hn;y.firstDayOfWeek=mn;y.weekdays=gn;y.weekdaysMin=Ln;y.weekdaysShort=An;y.weekdaysParse=bn;y.weekdaysRegex=Cn;y.weekdaysShortRegex=vn;y.weekdaysMinRegex=Wn;y.isPM=Dn;y.meridiem=Mn;function At(e,t,a,s){var r=Te(),i=ue().set(s,t);return r[a](i,e)}function Lr(e,t,a){if(ke(e)&&(t=e,e=void 0),e=e||"",t!=null)return At(e,t,a,"month");var s,r=[];for(s=0;s<12;s++)r[s]=At(e,s,a,"month");return r}function Ia(e,t,a,s){typeof e=="boolean"?(ke(t)&&(a=t,t=void 0),t=t||""):(t=e,a=t,e=!1,ke(t)&&(a=t,t=void 0),t=t||"");var r=Te(),i=e?r._week.dow:0,o,n=[];if(a!=null)return At(t,(a+i)%7,s,"day");for(o=0;o<7;o++)n[o]=At(t,(o+i)%7,s,"day");return n}function zc(e,t){return Lr(e,t,"months")}function Jc(e,t){return Lr(e,t,"monthsShort")}function jc(e,t,a){return Ia(e,t,a,"weekdays")}function Vc(e,t,a){return Ia(e,t,a,"weekdaysShort")}function Gc(e,t,a){return Ia(e,t,a,"weekdaysMin")}ge("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,a=g(e%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return e+a}});h.lang=ee("moment.lang is deprecated. Use moment.locale instead.",ge);h.langData=ee("moment.langData is deprecated. Use moment.localeData instead.",Te);var me=Math.abs;function $c(){var e=this._data;return this._milliseconds=me(this._milliseconds),this._days=me(this._days),this._months=me(this._months),e.milliseconds=me(e.milliseconds),e.seconds=me(e.seconds),e.minutes=me(e.minutes),e.hours=me(e.hours),e.months=me(e.months),e.years=me(e.years),this}function yr(e,t,a,s){var r=ne(t,a);return e._milliseconds+=s*r._milliseconds,e._days+=s*r._days,e._months+=s*r._months,e._bubble()}function Kc(e,t){return yr(this,e,t,1)}function Zc(e,t){return yr(this,e,t,-1)}function is(e){return e<0?Math.floor(e):Math.ceil(e)}function Xc(){var e=this._milliseconds,t=this._days,a=this._months,s=this._data,r,i,o,n,d;return e>=0&&t>=0&&a>=0||e<=0&&t<=0&&a<=0||(e+=is(fa(a)+t)*864e5,t=0,a=0),s.milliseconds=e%1e3,r=Q(e/1e3),s.seconds=r%60,i=Q(r/60),s.minutes=i%60,o=Q(i/60),s.hours=o%24,t+=Q(o/24),d=Q(br(t)),a+=d,t-=is(fa(d)),n=Q(a/12),a%=12,s.days=t,s.months=a,s.years=n,this}function br(e){return e*4800/146097}function fa(e){return e*146097/4800}function Qc(e){if(!this.isValid())return NaN;var t,a,s=this._milliseconds;if(e=te(e),e==="month"||e==="quarter"||e==="year")switch(t=this._days+s/864e5,a=this._months+br(t),e){case"month":return a;case"quarter":return a/3;case"year":return a/12}else switch(t=this._days+Math.round(fa(this._months)),e){case"week":return t/7+s/6048e5;case"day":return t+s/864e5;case"hour":return t*24+s/36e5;case"minute":return t*1440+s/6e4;case"second":return t*86400+s/1e3;case"millisecond":return Math.floor(t*864e5)+s;default:throw new Error("Unknown unit "+e)}}function ed(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+g(this._months/12)*31536e6:NaN}function Be(e){return function(){return this.as(e)}}var td=Be("ms"),ad=Be("s"),sd=Be("m"),rd=Be("h"),id=Be("d"),od=Be("w"),nd=Be("M"),ld=Be("Q"),cd=Be("y");function dd(){return ne(this)}function ud(e){return e=te(e),this.isValid()?this[e+"s"]():NaN}function xe(e){return function(){return this.isValid()?this._data[e]:NaN}}var pd=xe("milliseconds"),md=xe("seconds"),hd=xe("minutes"),fd=xe("hours"),_d=xe("days"),Sd=xe("months"),kd=xe("years");function Td(){return Q(this.days()/7)}var he=Math.round,We={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function Bd(e,t,a,s,r){return r.relativeTime(t||1,!!a,e,s)}function Ed(e,t,a,s){var r=ne(e).abs(),i=he(r.as("s")),o=he(r.as("m")),n=he(r.as("h")),d=he(r.as("d")),l=he(r.as("M")),u=he(r.as("w")),m=he(r.as("y")),R=i<=a.ss&&["s",i]||i0,R[4]=s,Bd.apply(null,R)}function Rd(e){return e===void 0?he:typeof e=="function"?(he=e,!0):!1}function wd(e,t){return We[e]===void 0?!1:t===void 0?We[e]:(We[e]=t,e==="s"&&(We.ss=t-1),!0)}function gd(e,t){if(!this.isValid())return this.localeData().invalidDate();var a=!1,s=We,r,i;return typeof e=="object"&&(t=e,e=!1),typeof e=="boolean"&&(a=e),typeof t=="object"&&(s=Object.assign({},We,t),t.s!=null&&t.ss==null&&(s.ss=t.s-1)),r=this.localeData(),i=Ed(this,!a,s,r),a&&(i=r.pastFuture(+this,i)),r.postformat(i)}var Xt=Math.abs;function Ce(e){return(e>0)-(e<0)||+e}function Jt(){if(!this.isValid())return this.localeData().invalidDate();var e=Xt(this._milliseconds)/1e3,t=Xt(this._days),a=Xt(this._months),s,r,i,o,n=this.asSeconds(),d,l,u,m;return n?(s=Q(e/60),r=Q(s/60),e%=60,s%=60,i=Q(a/12),a%=12,o=e?e.toFixed(3).replace(/\.?0+$/,""):"",d=n<0?"-":"",l=Ce(this._months)!==Ce(n)?"-":"",u=Ce(this._days)!==Ce(n)?"-":"",m=Ce(this._milliseconds)!==Ce(n)?"-":"",d+"P"+(i?l+i+"Y":"")+(a?l+a+"M":"")+(t?u+t+"D":"")+(r||s||e?"T":"")+(r?m+r+"H":"")+(s?m+s+"M":"")+(e?m+o+"S":"")):"P0D"}var A=Yt.prototype;A.isValid=_l;A.abs=$c;A.add=Kc;A.subtract=Zc;A.as=Qc;A.asMilliseconds=td;A.asSeconds=ad;A.asMinutes=sd;A.asHours=rd;A.asDays=id;A.asWeeks=od;A.asMonths=nd;A.asQuarters=ld;A.asYears=cd;A.valueOf=ed;A._bubble=Xc;A.clone=dd;A.get=ud;A.milliseconds=pd;A.seconds=md;A.minutes=hd;A.hours=fd;A.days=_d;A.weeks=Td;A.months=Sd;A.years=kd;A.humanize=gd;A.toISOString=Jt;A.toString=Jt;A.toJSON=Jt;A.locale=_r;A.localeData=kr;A.toIsoString=ee("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Jt);A.lang=Sr;k("X",0,0,"unix");k("x",0,0,"valueOf");_("x",Mt);_("X",Jo);O("X",function(e,t,a){a._d=new Date(parseFloat(e)*1e3)});O("x",function(e,t,a){a._d=new Date(g(e))});//! moment.js -h.version="2.29.4";go(C);h.fn=p;h.min=pl;h.max=ml;h.now=hl;h.utc=ue;h.unix=qc;h.months=zc;h.isDate=st;h.locale=ge;h.invalid=Wt;h.duration=ne;h.isMoment=ie;h.weekdays=jc;h.parseZone=Yc;h.localeData=Te;h.isDuration=ft;h.monthsShort=Jc;h.weekdaysMin=Gc;h.defineLocale=Oa;h.updateLocale=Yn;h.locales=zn;h.weekdaysShort=Vc;h.normalizeUnits=te;h.relativeTimeRounding=Rd;h.relativeTimeThreshold=wd;h.calendarFormat=Ml;h.prototype=p;h.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"};function Ad(e){if(e===null||e===!0||e===!1)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function G(e,t){if(t.length1?"s":"")+" required, but only "+t.length+" present")}function M(e){G(1,arguments);var t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new Date(e.getTime()):typeof e=="number"||t==="[object Number]"?new Date(e):((typeof e=="string"||t==="[object String]")&&typeof console<"u"&&(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"),console.warn(new Error().stack)),new Date(NaN))}function Lt(e){var t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}function Ke(e,t){G(2,arguments);var a=M(e),s=M(t),r=a.getTime()-s.getTime();return r<0?-1:r>0?1:r}var Nr=6e4,Or=36e5;function Ld(e,t){G(2,arguments);var a=M(e),s=M(t),r=a.getFullYear()-s.getFullYear(),i=a.getMonth()-s.getMonth();return r*12+i}function yd(e,t){return G(2,arguments),M(e).getTime()-M(t).getTime()}var os={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(e){return e<0?Math.ceil(e):Math.floor(e)}},bd="trunc";function Nd(e){return e?os[e]:os[bd]}function Od(e){G(1,arguments);var t=M(e);return t.setHours(23,59,59,999),t}function xd(e){G(1,arguments);var t=M(e),a=t.getMonth();return t.setFullYear(t.getFullYear(),a+1,0),t.setHours(23,59,59,999),t}function Cd(e){G(1,arguments);var t=M(e);return Od(t).getTime()===xd(t).getTime()}function vd(e,t){G(2,arguments);var a=M(e),s=M(t),r=Ke(a,s),i=Math.abs(Ld(a,s)),o;if(i<1)o=0;else{a.getMonth()===1&&a.getDate()>27&&a.setDate(30),a.setMonth(a.getMonth()-r*i);var n=Ke(a,s)===-r;Cd(M(e))&&i===1&&Ke(e,s)===1&&(n=!1),o=r*(i-Number(n))}return o===0?0:o}function Wd(e,t,a){G(2,arguments);var s=yd(e,t)/1e3;return Nd(void 0)(s)}var Pd={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Dd=function(e,t,a){var s,r=Pd[e];return typeof r=="string"?s=r:t===1?s=r.one:s=r.other.replace("{{count}}",t.toString()),a!=null&&a.addSuffix?a.comparison&&a.comparison>0?"in "+s:s+" ago":s},Hd=Dd;function Qt(e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=t.width?String(t.width):e.defaultWidth,s=e.formats[a]||e.formats[e.defaultWidth];return s}}var Id={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Md={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Fd={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Ud={date:Qt({formats:Id,defaultWidth:"full"}),time:Qt({formats:Md,defaultWidth:"full"}),dateTime:Qt({formats:Fd,defaultWidth:"full"})},qd=Ud,Yd={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},zd=function(e,t,a,s){return Yd[e]},Jd=zd;function Je(e){return function(t,a){var s=a||{},r=s.context?String(s.context):"standalone",i;if(r==="formatting"&&e.formattingValues){var o=e.defaultFormattingWidth||e.defaultWidth,n=s.width?String(s.width):o;i=e.formattingValues[n]||e.formattingValues[o]}else{var d=e.defaultWidth,l=s.width?String(s.width):e.defaultWidth;i=e.values[l]||e.values[d]}var u=e.argumentCallback?e.argumentCallback(t):t;return i[u]}}var jd={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Vd={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Gd={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},$d={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Kd={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Zd={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Xd=function(e,t){var a=Number(e),s=a%100;if(s>20||s<10)switch(s%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},Qd={ordinalNumber:Xd,era:Je({values:jd,defaultWidth:"wide"}),quarter:Je({values:Vd,defaultWidth:"wide",argumentCallback:function(e){return e-1}}),month:Je({values:Gd,defaultWidth:"wide"}),day:Je({values:$d,defaultWidth:"wide"}),dayPeriod:Je({values:Kd,defaultWidth:"wide",formattingValues:Zd,defaultFormattingWidth:"wide"})},eu=Qd;function je(e){return function(t){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=a.width,r=s&&e.matchPatterns[s]||e.matchPatterns[e.defaultMatchWidth],i=t.match(r);if(!i)return null;var o=i[0],n=s&&e.parsePatterns[s]||e.parsePatterns[e.defaultParseWidth],d=Array.isArray(n)?au(n,function(m){return m.test(o)}):tu(n,function(m){return m.test(o)}),l;l=e.valueCallback?e.valueCallback(d):d,l=a.valueCallback?a.valueCallback(l):l;var u=t.slice(o.length);return{value:l,rest:u}}}function tu(e,t){for(var a in e)if(e.hasOwnProperty(a)&&t(e[a]))return a}function au(e,t){for(var a=0;a1&&arguments[1]!==void 0?arguments[1]:{},s=t.match(e.matchPattern);if(!s)return null;var r=s[0],i=t.match(e.parsePattern);if(!i)return null;var o=e.valueCallback?e.valueCallback(i[0]):i[0];o=a.valueCallback?a.valueCallback(o):o;var n=t.slice(r.length);return{value:o,rest:n}}}var ru=/^(\d+)(th|st|nd|rd)?/i,iu=/\d+/i,ou={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},nu={any:[/^b/i,/^(a|c)/i]},lu={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},cu={any:[/1/i,/2/i,/3/i,/4/i]},du={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},uu={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},pu={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},mu={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},hu={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},fu={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},_u={ordinalNumber:su({matchPattern:ru,parsePattern:iu,valueCallback:function(e){return parseInt(e,10)}}),era:je({matchPatterns:ou,defaultMatchWidth:"wide",parsePatterns:nu,defaultParseWidth:"any"}),quarter:je({matchPatterns:lu,defaultMatchWidth:"wide",parsePatterns:cu,defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:je({matchPatterns:du,defaultMatchWidth:"wide",parsePatterns:uu,defaultParseWidth:"any"}),day:je({matchPatterns:pu,defaultMatchWidth:"wide",parsePatterns:mu,defaultParseWidth:"any"}),dayPeriod:je({matchPatterns:hu,defaultMatchWidth:"any",parsePatterns:fu,defaultParseWidth:"any"})},Su=_u,ku={code:"en-US",formatDistance:Hd,formatLong:qd,formatRelative:Jd,localize:eu,match:Su,options:{weekStartsOn:0,firstWeekContainsDate:1}},xr=ku;function Tu(e,t){if(e==null)throw new TypeError("assign requires that input parameter not be null or undefined");t=t||{};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}function Cr(e){return Tu({},e)}var ns=1440,Bu=2520,ea=43200,Eu=86400;function Ru(e,t){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};G(2,arguments);var s=a.locale||xr;if(!s.formatDistance)throw new RangeError("locale must contain formatDistance property");var r=Ke(e,t);if(isNaN(r))throw new RangeError("Invalid time value");var i=Cr(a);i.addSuffix=!!a.addSuffix,i.comparison=r;var o,n;r>0?(o=M(t),n=M(e)):(o=M(e),n=M(t));var d=Wd(n,o),l=(Lt(n)-Lt(o))/1e3,u=Math.round((d-l)/60),m;if(u<2)return a.includeSeconds?d<5?s.formatDistance("lessThanXSeconds",5,i):d<10?s.formatDistance("lessThanXSeconds",10,i):d<20?s.formatDistance("lessThanXSeconds",20,i):d<40?s.formatDistance("halfAMinute",null,i):d<60?s.formatDistance("lessThanXMinutes",1,i):s.formatDistance("xMinutes",1,i):u===0?s.formatDistance("lessThanXMinutes",1,i):s.formatDistance("xMinutes",u,i);if(u<45)return s.formatDistance("xMinutes",u,i);if(u<90)return s.formatDistance("aboutXHours",1,i);if(u2&&arguments[2]!==void 0?arguments[2]:{};G(2,arguments);var s=a.locale||xr;if(!s.formatDistance)throw new RangeError("locale must contain localize.formatDistance property");var r=Ke(e,t);if(isNaN(r))throw new RangeError("Invalid time value");var i=Cr(a);i.addSuffix=!!a.addSuffix,i.comparison=r;var o,n;r>0?(o=M(t),n=M(e)):(o=M(e),n=M(t));var d=a.roundingMethod==null?"round":String(a.roundingMethod),l;if(d==="floor")l=Math.floor;else if(d==="ceil")l=Math.ceil;else if(d==="round")l=Math.round;else throw new RangeError("roundingMethod must be 'floor', 'ceil' or 'round'");var u=n.getTime()-o.getTime(),m=u/ls,R=Lt(n)-Lt(o),b=(u-R)/ls,f;if(a.unit==null?m<1?f="second":m<60?f="minute":m2)return t;if(/:/.test(a[0])?s=a[0]:(t.date=a[0],s=a[1],ct.timeZoneDelimiter.test(t.date)&&(t.date=e.split(ct.timeZoneDelimiter)[0],s=e.substr(t.date.length,e.length))),s){var r=ct.timezone.exec(s);r?(t.time=s.replace(r[1],""),t.timezone=r[1]):t.time=s}return t}function xu(e,t){var a=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),s=e.match(a);if(!s)return{year:NaN,restDateString:""};var r=s[1]?parseInt(s[1]):null,i=s[2]?parseInt(s[2]):null;return{year:i===null?r:i*100,restDateString:e.slice((s[1]||s[2]).length)}}function Cu(e,t){if(t===null)return new Date(NaN);var a=e.match(yu);if(!a)return new Date(NaN);var s=!!a[4],r=Ve(a[1]),i=Ve(a[2])-1,o=Ve(a[3]),n=Ve(a[4]),d=Ve(a[5])-1;if(s)return Mu(t,n,d)?Pu(t,n,d):new Date(NaN);var l=new Date(0);return!Hu(t,i,o)||!Iu(t,r)?new Date(NaN):(l.setUTCFullYear(t,i,Math.max(r,o)),l)}function Ve(e){return e?parseInt(e):1}function vu(e){var t=e.match(bu);if(!t)return NaN;var a=ta(t[1]),s=ta(t[2]),r=ta(t[3]);return Fu(a,s,r)?a*Or+s*Nr+r*1e3:NaN}function ta(e){return e&&parseFloat(e.replace(",","."))||0}function Wu(e){if(e==="Z")return 0;var t=e.match(Nu);if(!t)return 0;var a=t[1]==="+"?-1:1,s=parseInt(t[2]),r=t[3]&&parseInt(t[3])||0;return Uu(s,r)?a*(s*Or+r*Nr):NaN}function Pu(e,t,a){var s=new Date(0);s.setUTCFullYear(e,0,4);var r=s.getUTCDay()||7,i=(t-1)*7+a+1-r;return s.setUTCDate(s.getUTCDate()+i),s}var Du=[31,null,31,30,31,30,31,31,30,31,30,31];function vr(e){return e%400===0||e%4===0&&e%100!==0}function Hu(e,t,a){return t>=0&&t<=11&&a>=1&&a<=(Du[t]||(vr(e)?29:28))}function Iu(e,t){return t>=1&&t<=(vr(e)?366:365)}function Mu(e,t,a){return t>=1&&t<=53&&a>=0&&a<=6}function Fu(e,t,a){return e===24?t===0&&a===0:a>=0&&a<60&&t>=0&&t<60&&e>=0&&e<25}function Uu(e,t){return t>=0&&t<=59}var qu=(e,t={},a)=>{var s,r;return typeof e=="string"&&(e=Lu(e)),t.useStrict?Au(e,{addSuffix:(s=t.addSuffix)!=null?s:!0,locale:a,unit:t.unit,roundingMethod:t.roundingMethod}):gu(e,{includeSeconds:t.includeSeconds,addSuffix:(r=t.addSuffix)!=null?r:!0,locale:a})};const Yu=(e={})=>{const t=e.name||"Timeago";return Fr({name:t,props:{datetime:{type:[String,Number,Date],required:!0},title:{type:[String,Boolean],required:!1,default:null},autoUpdate:{type:[Number,Boolean],required:!1,default:null},converter:{type:Function,required:!1,default:null},converterOptions:{type:Object,required:!1,default:null},locale:{type:Object,required:!1,default:null}},setup(a){const s=ae();qr(()=>{n()}),Yr(()=>{d()});const r=l=>(a.converter||qu)(l||a.datetime,a.converterOptions||e.converterOptions,a.locale||e.locale),i=ae(r()),o=l=>{i.value=r(l)},n=()=>{if(a.autoUpdate){const l=a.autoUpdate===!0?60:a.autoUpdate;s.value=setInterval(()=>{o(a.datetime)},l*1e3)}},d=()=>{s.value&&(clearInterval(s.value),s.value=void 0)};return dt(()=>a.autoUpdate,l=>{d(),l&&n()}),dt(()=>[a.datetime,a.converter],()=>{o()}),dt(()=>a.converterOptions,()=>{o()},{deep:!0}),{timeago:i,updateTimer:s}},render(){return Ur("timeago",{attrs:{datetime:new Date(this.datetime).toISOString(),title:typeof this.title=="string"?this.title:this.title===!1?null:this.timeago}},[this.timeago])}})};var zu=(e,t)=>{if(e.config.globalProperties.$timeago)return;Number(e.version.split(".")[0])<3&&console.warn("[vue-timeago3] This plugin requires at least Vue version 3.0");const s=Yu(t);e.component(s.name,s)},Ju=jr();const us=Vr(Ju);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function a(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(r){if(r.ep)return;r.ep=!0;const i=a(r);fetch(r.href,i)}})();const ju=`Nested Loop Left Join (cost=11.95..28.52 rows=5 width=157) (actual time=0.010..0.010 rows=0 loops=1) +`+new Error().stack),a=!1}return t.apply(this,arguments)},t)}var as={};function Us(e,t){f.deprecationHandler!=null&&f.deprecationHandler(e,t),as[e]||(Fs(t),as[e]=!0)}f.suppressDeprecationWarnings=!1;f.deprecationHandler=null;function me(e){return typeof Function<"u"&&e instanceof Function||Object.prototype.toString.call(e)==="[object Function]"}function Lo(e){var t,a;for(a in e)L(e,a)&&(t=e[a],me(t)?this[a]=t:this["_"+a]=t);this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function ua(e,t){var a=Re({},e),s;for(s in t)L(t,s)&&(Ne(e[s])&&Ne(t[s])?(a[s]={},Re(a[s],e[s]),Re(a[s],t[s])):t[s]!=null?a[s]=t[s]:delete a[s]);for(s in e)L(e,s)&&!L(t,s)&&Ne(e[s])&&(a[s]=Re({},a[s]));return a}function wa(e){e!=null&&this.set(e)}var pa;Object.keys?pa=Object.keys:pa=function(e){var t,a=[];for(t in e)L(e,t)&&a.push(t);return a};var yo={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function bo(e,t,a){var s=this._calendar[e]||this._calendar.sameElse;return me(s)?s.call(t,a):s}function ue(e,t,a){var s=""+Math.abs(e),r=t-s.length,i=e>=0;return(i?a?"+":"":"-")+Math.pow(10,Math.max(0,r)).toString().substr(1)+s}var ga=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,lt=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Zt={},De={};function T(e,t,a,s){var r=s;typeof s=="string"&&(r=function(){return this[s]()}),e&&(De[e]=r),t&&(De[t[0]]=function(){return ue(r.apply(this,arguments),t[1],t[2])}),a&&(De[a]=function(){return this.localeData().ordinal(r.apply(this,arguments),e)})}function No(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function Oo(e){var t=e.match(ga),a,s;for(a=0,s=t.length;a=0&<.test(e);)e=e.replace(lt,s),lt.lastIndex=0,a-=1;return e}var xo={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function Co(e){var t=this._longDateFormat[e],a=this._longDateFormat[e.toUpperCase()];return t||!a?t:(this._longDateFormat[e]=a.match(ga).map(function(s){return s==="MMMM"||s==="MM"||s==="DD"||s==="dddd"?s.slice(1):s}).join(""),this._longDateFormat[e])}var vo="Invalid date";function Wo(){return this._invalidDate}var Po="%d",Do=/\d{1,2}/;function Ho(e){return this._ordinal.replace("%d",e)}var Io={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function Mo(e,t,a,s){var r=this._relativeTime[a];return me(r)?r(e,t,a,s):r.replace(/%d/i,e)}function Fo(e,t){var a=this._relativeTime[e>0?"future":"past"];return me(a)?a(t):a.replace(/%s/i,t)}var $e={};function Y(e,t){var a=e.toLowerCase();$e[a]=$e[a+"s"]=$e[t]=e}function ae(e){return typeof e=="string"?$e[e]||$e[e.toLowerCase()]:void 0}function Aa(e){var t={},a,s;for(s in e)L(e,s)&&(a=ae(s),a&&(t[a]=e[s]));return t}var Ys={};function z(e,t){Ys[e]=t}function Uo(e){var t=[],a;for(a in e)L(e,a)&&t.push({unit:a,priority:Ys[a]});return t.sort(function(s,r){return s.priority-r.priority}),t}function Dt(e){return e%4===0&&e%100!==0||e%400===0}function ee(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function g(e){var t=+e,a=0;return t!==0&&isFinite(t)&&(a=ee(t)),a}function Ue(e,t){return function(a){return a!=null?(zs(this,e,a),f.updateOffset(this,t),this):Et(this,e)}}function Et(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function zs(e,t,a){e.isValid()&&!isNaN(a)&&(t==="FullYear"&&Dt(e.year())&&e.month()===1&&e.date()===29?(a=g(a),e._d["set"+(e._isUTC?"UTC":"")+t](a,e.month(),qt(a,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](a))}function qo(e){return e=ae(e),me(this[e])?this[e]():this}function Yo(e,t){if(typeof e=="object"){e=Aa(e);var a=Uo(e),s,r=a.length;for(s=0;s68?1900:2e3)};var er=Ue("FullYear",!0);function cn(){return Dt(this.year())}function dn(e,t,a,s,r,i,o){var n;return e<100&&e>=0?(n=new Date(e+400,t,a,s,r,i,o),isFinite(n.getFullYear())&&n.setFullYear(e)):n=new Date(e,t,a,s,r,i,o),n}function Qe(e){var t,a;return e<100&&e>=0?(a=Array.prototype.slice.call(arguments),a[0]=e+400,t=new Date(Date.UTC.apply(null,a)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function wt(e,t,a){var s=7+t-a,r=(7+Qe(e,0,s).getUTCDay()-t)%7;return-r+s-1}function tr(e,t,a,s,r){var i=(7+a-s)%7,o=wt(e,s,r),n=1+7*(t-1)+i+o,d,l;return n<=0?(d=e-1,l=Ke(d)+n):n>Ke(e)?(d=e+1,l=n-Ke(e)):(d=e,l=n),{year:d,dayOfYear:l}}function et(e,t,a){var s=wt(e.year(),t,a),r=Math.floor((e.dayOfYear()-s-1)/7)+1,i,o;return r<1?(o=e.year()-1,i=r+ke(o,t,a)):r>ke(e.year(),t,a)?(i=r-ke(e.year(),t,a),o=e.year()+1):(o=e.year(),i=r),{week:i,year:o}}function ke(e,t,a){var s=wt(e,t,a),r=wt(e+1,t,a);return(Ke(e)-s+r)/7}T("w",["ww",2],"wo","week");T("W",["WW",2],"Wo","isoWeek");Y("week","w");Y("isoWeek","W");z("week",5);z("isoWeek",5);_("w",C);_("ww",C,X);_("W",C);_("WW",C,X);nt(["w","ww","W","WW"],function(e,t,a,s){t[s.substr(0,1)]=g(e)});function un(e){return et(e,this._week.dow,this._week.doy).week}var pn={dow:0,doy:6};function mn(){return this._week.dow}function hn(){return this._week.doy}function fn(e){var t=this.localeData().week(this);return e==null?t:this.add((e-t)*7,"d")}function _n(e){var t=et(this,1,4).week;return e==null?t:this.add((e-t)*7,"d")}T("d",0,"do","day");T("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)});T("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)});T("dddd",0,0,function(e){return this.localeData().weekdays(this,e)});T("e",0,0,"weekday");T("E",0,0,"isoWeekday");Y("day","d");Y("weekday","e");Y("isoWeekday","E");z("day",11);z("weekday",11);z("isoWeekday",11);_("d",C);_("e",C);_("E",C);_("dd",function(e,t){return t.weekdaysMinRegex(e)});_("ddd",function(e,t){return t.weekdaysShortRegex(e)});_("dddd",function(e,t){return t.weekdaysRegex(e)});nt(["dd","ddd","dddd"],function(e,t,a,s){var r=a._locale.weekdaysParse(e,s,a._strict);r!=null?t.d=r:w(a).invalidWeekday=e});nt(["d","e","E"],function(e,t,a,s){t[s]=g(e)});function Sn(e,t){return typeof e!="string"?e:isNaN(e)?(e=t.weekdaysParse(e),typeof e=="number"?e:null):parseInt(e,10)}function kn(e,t){return typeof e=="string"?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function ba(e,t){return e.slice(t,7).concat(e.slice(0,t))}var Tn="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),ar="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Bn="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),En=ot,Rn=ot,wn=ot;function gn(e,t){var a=ie(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(t)?"format":"standalone"];return e===!0?ba(a,this._week.dow):e?a[e.day()]:a}function An(e){return e===!0?ba(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Ln(e){return e===!0?ba(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function yn(e,t,a){var s,r,i,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],s=0;s<7;++s)i=pe([2e3,1]).day(s),this._minWeekdaysParse[s]=this.weekdaysMin(i,"").toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(i,"").toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(i,"").toLocaleLowerCase();return a?t==="dddd"?(r=I.call(this._weekdaysParse,o),r!==-1?r:null):t==="ddd"?(r=I.call(this._shortWeekdaysParse,o),r!==-1?r:null):(r=I.call(this._minWeekdaysParse,o),r!==-1?r:null):t==="dddd"?(r=I.call(this._weekdaysParse,o),r!==-1||(r=I.call(this._shortWeekdaysParse,o),r!==-1)?r:(r=I.call(this._minWeekdaysParse,o),r!==-1?r:null)):t==="ddd"?(r=I.call(this._shortWeekdaysParse,o),r!==-1||(r=I.call(this._weekdaysParse,o),r!==-1)?r:(r=I.call(this._minWeekdaysParse,o),r!==-1?r:null)):(r=I.call(this._minWeekdaysParse,o),r!==-1||(r=I.call(this._weekdaysParse,o),r!==-1)?r:(r=I.call(this._shortWeekdaysParse,o),r!==-1?r:null))}function bn(e,t,a){var s,r,i;if(this._weekdaysParseExact)return yn.call(this,e,t,a);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),s=0;s<7;s++){if(r=pe([2e3,1]).day(s),a&&!this._fullWeekdaysParse[s]&&(this._fullWeekdaysParse[s]=new RegExp("^"+this.weekdays(r,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[s]=new RegExp("^"+this.weekdaysShort(r,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[s]=new RegExp("^"+this.weekdaysMin(r,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[s]||(i="^"+this.weekdays(r,"")+"|^"+this.weekdaysShort(r,"")+"|^"+this.weekdaysMin(r,""),this._weekdaysParse[s]=new RegExp(i.replace(".",""),"i")),a&&t==="dddd"&&this._fullWeekdaysParse[s].test(e))return s;if(a&&t==="ddd"&&this._shortWeekdaysParse[s].test(e))return s;if(a&&t==="dd"&&this._minWeekdaysParse[s].test(e))return s;if(!a&&this._weekdaysParse[s].test(e))return s}}function Nn(e){if(!this.isValid())return e!=null?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return e!=null?(e=Sn(e,this.localeData()),this.add(e-t,"d")):t}function On(e){if(!this.isValid())return e!=null?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return e==null?t:this.add(e-t,"d")}function xn(e){if(!this.isValid())return e!=null?this:NaN;if(e!=null){var t=kn(e,this.localeData());return this.day(this.day()%7?t:t-7)}else return this.day()||7}function Cn(e){return this._weekdaysParseExact?(L(this,"_weekdaysRegex")||Na.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(L(this,"_weekdaysRegex")||(this._weekdaysRegex=En),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function vn(e){return this._weekdaysParseExact?(L(this,"_weekdaysRegex")||Na.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(L(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Rn),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Wn(e){return this._weekdaysParseExact?(L(this,"_weekdaysRegex")||Na.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(L(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=wn),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Na(){function e(u,m){return m.length-u.length}var t=[],a=[],s=[],r=[],i,o,n,d,l;for(i=0;i<7;i++)o=pe([2e3,1]).day(i),n=K(this.weekdaysMin(o,"")),d=K(this.weekdaysShort(o,"")),l=K(this.weekdays(o,"")),t.push(n),a.push(d),s.push(l),r.push(n),r.push(d),r.push(l);t.sort(e),a.sort(e),s.sort(e),r.sort(e),this._weekdaysRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+t.join("|")+")","i")}function Oa(){return this.hours()%12||12}function Pn(){return this.hours()||24}T("H",["HH",2],0,"hour");T("h",["hh",2],0,Oa);T("k",["kk",2],0,Pn);T("hmm",0,0,function(){return""+Oa.apply(this)+ue(this.minutes(),2)});T("hmmss",0,0,function(){return""+Oa.apply(this)+ue(this.minutes(),2)+ue(this.seconds(),2)});T("Hmm",0,0,function(){return""+this.hours()+ue(this.minutes(),2)});T("Hmmss",0,0,function(){return""+this.hours()+ue(this.minutes(),2)+ue(this.seconds(),2)});function sr(e,t){T(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}sr("a",!0);sr("A",!1);Y("hour","h");z("hour",13);function rr(e,t){return t._meridiemParse}_("a",rr);_("A",rr);_("H",C);_("h",C);_("k",C);_("HH",C,X);_("hh",C,X);_("kk",C,X);_("hmm",Vs);_("hmmss",Gs);_("Hmm",Vs);_("Hmmss",Gs);N(["H","HH"],F);N(["k","kk"],function(e,t,a){var s=g(e);t[F]=s===24?0:s});N(["a","A"],function(e,t,a){a._isPm=a._locale.isPM(e),a._meridiem=e});N(["h","hh"],function(e,t,a){t[F]=g(e),w(a).bigHour=!0});N("hmm",function(e,t,a){var s=e.length-2;t[F]=g(e.substr(0,s)),t[re]=g(e.substr(s)),w(a).bigHour=!0});N("hmmss",function(e,t,a){var s=e.length-4,r=e.length-2;t[F]=g(e.substr(0,s)),t[re]=g(e.substr(s,2)),t[Se]=g(e.substr(r)),w(a).bigHour=!0});N("Hmm",function(e,t,a){var s=e.length-2;t[F]=g(e.substr(0,s)),t[re]=g(e.substr(s))});N("Hmmss",function(e,t,a){var s=e.length-4,r=e.length-2;t[F]=g(e.substr(0,s)),t[re]=g(e.substr(s,2)),t[Se]=g(e.substr(r))});function Dn(e){return(e+"").toLowerCase().charAt(0)==="p"}var Hn=/[ap]\.?m?\.?/i,In=Ue("Hours",!0);function Mn(e,t,a){return e>11?a?"pm":"PM":a?"am":"AM"}var ir={calendar:yo,longDateFormat:xo,invalidDate:vo,ordinal:Po,dayOfMonthOrdinalParse:Do,relativeTime:Io,months:Xo,monthsShort:$s,week:pn,weekdays:Tn,weekdaysMin:Bn,weekdaysShort:ar,meridiemParse:Hn},D={},ze={},tt;function Fn(e,t){var a,s=Math.min(e.length,t.length);for(a=0;a0;){if(r=Yt(i.slice(0,a).join("-")),r)return r;if(s&&s.length>=a&&Fn(i,s)>=a-1)break;a--}t++}return tt}function qn(e){return e.match("^[^/\\\\]*$")!=null}function Yt(e){var t=null,a;if(D[e]===void 0&&typeof kt<"u"&&kt&&kt.exports&&qn(e))try{t=tt._abbr,a=require,a("./locale/"+e),ge(t)}catch{D[e]=null}return D[e]}function ge(e,t){var a;return e&&(j(t)?a=Be(e):a=xa(e,t),a?tt=a:typeof console<"u"&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),tt._abbr}function xa(e,t){if(t!==null){var a,s=ir;if(t.abbr=e,D[e]!=null)Us("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=D[e]._config;else if(t.parentLocale!=null)if(D[t.parentLocale]!=null)s=D[t.parentLocale]._config;else if(a=Yt(t.parentLocale),a!=null)s=a._config;else return ze[t.parentLocale]||(ze[t.parentLocale]=[]),ze[t.parentLocale].push({name:e,config:t}),null;return D[e]=new wa(ua(s,t)),ze[e]&&ze[e].forEach(function(r){xa(r.name,r.config)}),ge(e),D[e]}else return delete D[e],null}function Yn(e,t){if(t!=null){var a,s,r=ir;D[e]!=null&&D[e].parentLocale!=null?D[e].set(ua(D[e]._config,t)):(s=Yt(e),s!=null&&(r=s._config),t=ua(r,t),s==null&&(t.abbr=e),a=new wa(t),a.parentLocale=D[e],D[e]=a),ge(e)}else D[e]!=null&&(D[e].parentLocale!=null?(D[e]=D[e].parentLocale,e===ge()&&ge(e)):D[e]!=null&&delete D[e]);return D[e]}function Be(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return tt;if(!ie(e)){if(t=Yt(e),t)return t;e=[e]}return Un(e)}function zn(){return pa(D)}function Ca(e){var t,a=e._a;return a&&w(e).overflow===-2&&(t=a[_e]<0||a[_e]>11?_e:a[de]<1||a[de]>qt(a[q],a[_e])?de:a[F]<0||a[F]>24||a[F]===24&&(a[re]!==0||a[Se]!==0||a[ye]!==0)?F:a[re]<0||a[re]>59?re:a[Se]<0||a[Se]>59?Se:a[ye]<0||a[ye]>999?ye:-1,w(e)._overflowDayOfYear&&(tde)&&(t=de),w(e)._overflowWeeks&&t===-1&&(t=$o),w(e)._overflowWeekday&&t===-1&&(t=Ko),w(e).overflow=t),e}var Jn=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,jn=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Vn=/Z|[+-]\d\d(?::?\d\d)?/,ct=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Xt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Gn=/^\/?Date\((-?\d+)/i,$n=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Kn={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function or(e){var t,a,s=e._i,r=Jn.exec(s)||jn.exec(s),i,o,n,d,l=ct.length,u=Xt.length;if(r){for(w(e).iso=!0,t=0,a=l;tKe(o)||e._dayOfYear===0)&&(w(e)._overflowDayOfYear=!0),a=Qe(o,0,e._dayOfYear),e._a[_e]=a.getUTCMonth(),e._a[de]=a.getUTCDate()),t=0;t<3&&e._a[t]==null;++t)e._a[t]=s[t]=r[t];for(;t<7;t++)e._a[t]=s[t]=e._a[t]==null?t===2?1:0:e._a[t];e._a[F]===24&&e._a[re]===0&&e._a[Se]===0&&e._a[ye]===0&&(e._nextDay=!0,e._a[F]=0),e._d=(e._useUTC?Qe:dn).apply(null,s),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[F]=24),e._w&&typeof e._w.d<"u"&&e._w.d!==i&&(w(e).weekdayMismatch=!0)}}function rl(e){var t,a,s,r,i,o,n,d,l;t=e._w,t.GG!=null||t.W!=null||t.E!=null?(i=1,o=4,a=We(t.GG,e._a[q],et(x(),1,4).year),s=We(t.W,1),r=We(t.E,1),(r<1||r>7)&&(d=!0)):(i=e._locale._week.dow,o=e._locale._week.doy,l=et(x(),i,o),a=We(t.gg,e._a[q],l.year),s=We(t.w,l.week),t.d!=null?(r=t.d,(r<0||r>6)&&(d=!0)):t.e!=null?(r=t.e+i,(t.e<0||t.e>6)&&(d=!0)):r=i),s<1||s>ke(a,i,o)?w(e)._overflowWeeks=!0:d!=null?w(e)._overflowWeekday=!0:(n=tr(a,s,r,i,o),e._a[q]=n.year,e._dayOfYear=n.dayOfYear)}f.ISO_8601=function(){};f.RFC_2822=function(){};function Wa(e){if(e._f===f.ISO_8601){or(e);return}if(e._f===f.RFC_2822){nr(e);return}e._a=[],w(e).empty=!0;var t=""+e._i,a,s,r,i,o,n=t.length,d=0,l,u;for(r=qs(e._f,e._locale).match(ga)||[],u=r.length,a=0;a0&&w(e).unusedInput.push(o),t=t.slice(t.indexOf(s)+s.length),d+=s.length),De[i]?(s?w(e).empty=!1:w(e).unusedTokens.push(i),Go(i,s,e)):e._strict&&!s&&w(e).unusedTokens.push(i);w(e).charsLeftOver=n-d,t.length>0&&w(e).unusedInput.push(t),e._a[F]<=12&&w(e).bigHour===!0&&e._a[F]>0&&(w(e).bigHour=void 0),w(e).parsedDateParts=e._a.slice(0),w(e).meridiem=e._meridiem,e._a[F]=il(e._locale,e._a[F],e._meridiem),l=w(e).era,l!==null&&(e._a[q]=e._locale.erasConvertYear(l,e._a[q])),va(e),Ca(e)}function il(e,t,a){var s;return a==null?t:e.meridiemHour!=null?e.meridiemHour(t,a):(e.isPM!=null&&(s=e.isPM(a),s&&t<12&&(t+=12),!s&&t===12&&(t=0)),t)}function ol(e){var t,a,s,r,i,o,n=!1,d=e._f.length;if(d===0){w(e).invalidFormat=!0,e._d=new Date(NaN);return}for(r=0;rthis?this:e:Pt()});function dr(e,t){var a,s;if(t.length===1&&ie(t[0])&&(t=t[0]),!t.length)return x();for(a=t[0],s=1;sthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function yl(){if(!j(this._isDSTShifted))return this._isDSTShifted;var e={},t;return Ra(e,this),e=lr(e),e._a?(t=e._isUTC?pe(e._a):x(e._a),this._isDSTShifted=this.isValid()&&kl(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function bl(){return this.isValid()?!this._isUTC:!1}function Nl(){return this.isValid()?this._isUTC:!1}function pr(){return this.isValid()?this._isUTC&&this._offset===0:!1}var Ol=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,xl=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function le(e,t){var a=e,s=null,r,i,o;return _t(e)?a={ms:e._milliseconds,d:e._days,M:e._months}:Te(e)||!isNaN(+e)?(a={},t?a[t]=+e:a.milliseconds=+e):(s=Ol.exec(e))?(r=s[1]==="-"?-1:1,a={y:0,d:g(s[de])*r,h:g(s[F])*r,m:g(s[re])*r,s:g(s[Se])*r,ms:g(ha(s[ye]*1e3))*r}):(s=xl.exec(e))?(r=s[1]==="-"?-1:1,a={y:Ae(s[2],r),M:Ae(s[3],r),w:Ae(s[4],r),d:Ae(s[5],r),h:Ae(s[6],r),m:Ae(s[7],r),s:Ae(s[8],r)}):a==null?a={}:typeof a=="object"&&("from"in a||"to"in a)&&(o=Cl(x(a.from),x(a.to)),a={},a.ms=o.milliseconds,a.M=o.months),i=new zt(a),_t(e)&&L(e,"_locale")&&(i._locale=e._locale),_t(e)&&L(e,"_isValid")&&(i._isValid=e._isValid),i}le.fn=zt.prototype;le.invalid=Sl;function Ae(e,t){var a=e&&parseFloat(e.replace(",","."));return(isNaN(a)?0:a)*t}function rs(e,t){var a={};return a.months=t.month()-e.month()+(t.year()-e.year())*12,e.clone().add(a.months,"M").isAfter(t)&&--a.months,a.milliseconds=+t-+e.clone().add(a.months,"M"),a}function Cl(e,t){var a;return e.isValid()&&t.isValid()?(t=Da(t,e),e.isBefore(t)?a=rs(e,t):(a=rs(t,e),a.milliseconds=-a.milliseconds,a.months=-a.months),a):{milliseconds:0,months:0}}function mr(e,t){return function(a,s){var r,i;return s!==null&&!isNaN(+s)&&(Us(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=a,a=s,s=i),r=le(a,s),hr(this,r,e),this}}function hr(e,t,a,s){var r=t._milliseconds,i=ha(t._days),o=ha(t._months);e.isValid()&&(s=s??!0,o&&Zs(e,Et(e,"Month")+o*a),i&&zs(e,"Date",Et(e,"Date")+i*a),r&&e._d.setTime(e._d.valueOf()+r*a),s&&f.updateOffset(e,i||o))}var vl=mr(1,"add"),Wl=mr(-1,"subtract");function fr(e){return typeof e=="string"||e instanceof String}function Pl(e){return oe(e)||rt(e)||fr(e)||Te(e)||Hl(e)||Dl(e)||e===null||e===void 0}function Dl(e){var t=Ne(e)&&!Ba(e),a=!1,s=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],r,i,o=s.length;for(r=0;ra.valueOf():a.valueOf()9999?ft(a,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):me(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",ft(a,"Z")):ft(a,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function Zl(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",t="",a,s,r,i;return this.isLocal()||(e=this.utcOffset()===0?"moment.utc":"moment.parseZone",t="Z"),a="["+e+'("]',s=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",r="-MM-DD[T]HH:mm:ss.SSS",i=t+'[")]',this.format(a+s+r+i)}function Xl(e){e||(e=this.isUtc()?f.defaultFormatUtc:f.defaultFormat);var t=ft(this,e);return this.localeData().postformat(t)}function Ql(e,t){return this.isValid()&&(oe(e)&&e.isValid()||x(e).isValid())?le({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ec(e){return this.from(x(),e)}function tc(e,t){return this.isValid()&&(oe(e)&&e.isValid()||x(e).isValid())?le({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ac(e){return this.to(x(),e)}function _r(e){var t;return e===void 0?this._locale._abbr:(t=Be(e),t!=null&&(this._locale=t),this)}var Sr=te("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return e===void 0?this.localeData():this.locale(e)});function kr(){return this._locale}var gt=1e3,He=60*gt,At=60*He,Tr=(365*400+97)*24*At;function Ie(e,t){return(e%t+t)%t}function Br(e,t,a){return e<100&&e>=0?new Date(e+400,t,a)-Tr:new Date(e,t,a).valueOf()}function Er(e,t,a){return e<100&&e>=0?Date.UTC(e+400,t,a)-Tr:Date.UTC(e,t,a)}function sc(e){var t,a;if(e=ae(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(a=this._isUTC?Er:Br,e){case"year":t=a(this.year(),0,1);break;case"quarter":t=a(this.year(),this.month()-this.month()%3,1);break;case"month":t=a(this.year(),this.month(),1);break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=a(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=Ie(t+(this._isUTC?0:this.utcOffset()*He),At);break;case"minute":t=this._d.valueOf(),t-=Ie(t,He);break;case"second":t=this._d.valueOf(),t-=Ie(t,gt);break}return this._d.setTime(t),f.updateOffset(this,!0),this}function rc(e){var t,a;if(e=ae(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(a=this._isUTC?Er:Br,e){case"year":t=a(this.year()+1,0,1)-1;break;case"quarter":t=a(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=a(this.year(),this.month()+1,1)-1;break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=a(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=At-Ie(t+(this._isUTC?0:this.utcOffset()*He),At)-1;break;case"minute":t=this._d.valueOf(),t+=He-Ie(t,He)-1;break;case"second":t=this._d.valueOf(),t+=gt-Ie(t,gt)-1;break}return this._d.setTime(t),f.updateOffset(this,!0),this}function ic(){return this._d.valueOf()-(this._offset||0)*6e4}function oc(){return Math.floor(this.valueOf()/1e3)}function nc(){return new Date(this.valueOf())}function lc(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function cc(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function dc(){return this.isValid()?this.toISOString():null}function uc(){return Ea(this)}function pc(){return Re({},w(this))}function mc(){return w(this).overflow}function hc(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}T("N",0,0,"eraAbbr");T("NN",0,0,"eraAbbr");T("NNN",0,0,"eraAbbr");T("NNNN",0,0,"eraName");T("NNNNN",0,0,"eraNarrow");T("y",["y",1],"yo","eraYear");T("y",["yy",2],0,"eraYear");T("y",["yyy",3],0,"eraYear");T("y",["yyyy",4],0,"eraYear");_("N",Ha);_("NN",Ha);_("NNN",Ha);_("NNNN",Ac);_("NNNNN",Lc);N(["N","NN","NNN","NNNN","NNNNN"],function(e,t,a,s){var r=a._locale.erasParse(e,s,a._strict);r?w(a).era=r:w(a).invalidEra=e});_("y",qe);_("yy",qe);_("yyy",qe);_("yyyy",qe);_("yo",yc);N(["y","yy","yyy","yyyy"],q);N(["yo"],function(e,t,a,s){var r;a._locale._eraYearOrdinalRegex&&(r=e.match(a._locale._eraYearOrdinalRegex)),a._locale.eraYearOrdinalParse?t[q]=a._locale.eraYearOrdinalParse(e,r):t[q]=parseInt(e,10)});function fc(e,t){var a,s,r,i=this._eras||Be("en")._eras;for(a=0,s=i.length;a=0)return i[s]}function Sc(e,t){var a=e.since<=e.until?1:-1;return t===void 0?f(e.since).year():f(e.since).year()+(t-e.offset)*a}function kc(){var e,t,a,s=this.localeData().eras();for(e=0,t=s.length;ei&&(t=i),Wc.call(this,e,t,a,s,r))}function Wc(e,t,a,s,r){var i=tr(e,t,a,s,r),o=Qe(i.year,0,i.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}T("Q",0,"Qo","quarter");Y("quarter","Q");z("quarter",7);_("Q",Js);N("Q",function(e,t){t[_e]=(g(e)-1)*3});function Pc(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}T("D",["DD",2],"Do","date");Y("date","D");z("date",9);_("D",C);_("DD",C,X);_("Do",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient});N(["D","DD"],de);N("Do",function(e,t){t[de]=g(e.match(C)[0])});var wr=Ue("Date",!0);T("DDD",["DDDD",3],"DDDo","dayOfYear");Y("dayOfYear","DDD");z("dayOfYear",4);_("DDD",It);_("DDDD",js);N(["DDD","DDDD"],function(e,t,a){a._dayOfYear=g(e)});function Dc(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return e==null?t:this.add(e-t,"d")}T("m",["mm",2],0,"minute");Y("minute","m");z("minute",14);_("m",C);_("mm",C,X);N(["m","mm"],re);var Hc=Ue("Minutes",!1);T("s",["ss",2],0,"second");Y("second","s");z("second",15);_("s",C);_("ss",C,X);N(["s","ss"],Se);var Ic=Ue("Seconds",!1);T("S",0,0,function(){return~~(this.millisecond()/100)});T(0,["SS",2],0,function(){return~~(this.millisecond()/10)});T(0,["SSS",3],0,"millisecond");T(0,["SSSS",4],0,function(){return this.millisecond()*10});T(0,["SSSSS",5],0,function(){return this.millisecond()*100});T(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3});T(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4});T(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5});T(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6});Y("millisecond","ms");z("millisecond",16);_("S",It,Js);_("SS",It,X);_("SSS",It,js);var we,gr;for(we="SSSS";we.length<=9;we+="S")_(we,qe);function Mc(e,t){t[ye]=g(("0."+e)*1e3)}for(we="S";we.length<=9;we+="S")N(we,Mc);gr=Ue("Milliseconds",!1);T("z",0,0,"zoneAbbr");T("zz",0,0,"zoneName");function Fc(){return this._isUTC?"UTC":""}function Uc(){return this._isUTC?"Coordinated Universal Time":""}var p=it.prototype;p.add=vl;p.calendar=Fl;p.clone=Ul;p.diff=Gl;p.endOf=rc;p.format=Xl;p.from=Ql;p.fromNow=ec;p.to=tc;p.toNow=ac;p.get=qo;p.invalidAt=mc;p.isAfter=ql;p.isBefore=Yl;p.isBetween=zl;p.isSame=Jl;p.isSameOrAfter=jl;p.isSameOrBefore=Vl;p.isValid=uc;p.lang=Sr;p.locale=_r;p.localeData=kr;p.max=ul;p.min=dl;p.parsingFlags=pc;p.set=Yo;p.startOf=sc;p.subtract=Wl;p.toArray=lc;p.toObject=cc;p.toDate=nc;p.toISOString=Kl;p.inspect=Zl;typeof Symbol<"u"&&Symbol.for!=null&&(p[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"});p.toJSON=dc;p.toString=$l;p.unix=oc;p.valueOf=ic;p.creationData=hc;p.eraName=kc;p.eraNarrow=Tc;p.eraAbbr=Bc;p.eraYear=Ec;p.year=er;p.isLeapYear=cn;p.weekYear=bc;p.isoWeekYear=Nc;p.quarter=p.quarters=Pc;p.month=Xs;p.daysInMonth=on;p.week=p.weeks=fn;p.isoWeek=p.isoWeeks=_n;p.weeksInYear=Cc;p.weeksInWeekYear=vc;p.isoWeeksInYear=Oc;p.isoWeeksInISOWeekYear=xc;p.date=wr;p.day=p.days=Nn;p.weekday=On;p.isoWeekday=xn;p.dayOfYear=Dc;p.hour=p.hours=In;p.minute=p.minutes=Hc;p.second=p.seconds=Ic;p.millisecond=p.milliseconds=gr;p.utcOffset=Bl;p.utc=Rl;p.local=wl;p.parseZone=gl;p.hasAlignedHourOffset=Al;p.isDST=Ll;p.isLocal=bl;p.isUtcOffset=Nl;p.isUtc=pr;p.isUTC=pr;p.zoneAbbr=Fc;p.zoneName=Uc;p.dates=te("dates accessor is deprecated. Use date instead.",wr);p.months=te("months accessor is deprecated. Use month instead",Xs);p.years=te("years accessor is deprecated. Use year instead",er);p.zone=te("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",El);p.isDSTShifted=te("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",yl);function qc(e){return x(e*1e3)}function Yc(){return x.apply(null,arguments).parseZone()}function Ar(e){return e}var y=wa.prototype;y.calendar=bo;y.longDateFormat=Co;y.invalidDate=Wo;y.ordinal=Ho;y.preparse=Ar;y.postformat=Ar;y.relativeTime=Mo;y.pastFuture=Fo;y.set=Lo;y.eras=fc;y.erasParse=_c;y.erasConvertYear=Sc;y.erasAbbrRegex=wc;y.erasNameRegex=Rc;y.erasNarrowRegex=gc;y.months=tn;y.monthsShort=an;y.monthsParse=rn;y.monthsRegex=ln;y.monthsShortRegex=nn;y.week=un;y.firstDayOfYear=hn;y.firstDayOfWeek=mn;y.weekdays=gn;y.weekdaysMin=Ln;y.weekdaysShort=An;y.weekdaysParse=bn;y.weekdaysRegex=Cn;y.weekdaysShortRegex=vn;y.weekdaysMinRegex=Wn;y.isPM=Dn;y.meridiem=Mn;function Lt(e,t,a,s){var r=Be(),i=pe().set(s,t);return r[a](i,e)}function Lr(e,t,a){if(Te(e)&&(t=e,e=void 0),e=e||"",t!=null)return Lt(e,t,a,"month");var s,r=[];for(s=0;s<12;s++)r[s]=Lt(e,s,a,"month");return r}function Ma(e,t,a,s){typeof e=="boolean"?(Te(t)&&(a=t,t=void 0),t=t||""):(t=e,a=t,e=!1,Te(t)&&(a=t,t=void 0),t=t||"");var r=Be(),i=e?r._week.dow:0,o,n=[];if(a!=null)return Lt(t,(a+i)%7,s,"day");for(o=0;o<7;o++)n[o]=Lt(t,(o+i)%7,s,"day");return n}function zc(e,t){return Lr(e,t,"months")}function Jc(e,t){return Lr(e,t,"monthsShort")}function jc(e,t,a){return Ma(e,t,a,"weekdays")}function Vc(e,t,a){return Ma(e,t,a,"weekdaysShort")}function Gc(e,t,a){return Ma(e,t,a,"weekdaysMin")}ge("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,a=g(e%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return e+a}});f.lang=te("moment.lang is deprecated. Use moment.locale instead.",ge);f.langData=te("moment.langData is deprecated. Use moment.localeData instead.",Be);var he=Math.abs;function $c(){var e=this._data;return this._milliseconds=he(this._milliseconds),this._days=he(this._days),this._months=he(this._months),e.milliseconds=he(e.milliseconds),e.seconds=he(e.seconds),e.minutes=he(e.minutes),e.hours=he(e.hours),e.months=he(e.months),e.years=he(e.years),this}function yr(e,t,a,s){var r=le(t,a);return e._milliseconds+=s*r._milliseconds,e._days+=s*r._days,e._months+=s*r._months,e._bubble()}function Kc(e,t){return yr(this,e,t,1)}function Zc(e,t){return yr(this,e,t,-1)}function is(e){return e<0?Math.floor(e):Math.ceil(e)}function Xc(){var e=this._milliseconds,t=this._days,a=this._months,s=this._data,r,i,o,n,d;return e>=0&&t>=0&&a>=0||e<=0&&t<=0&&a<=0||(e+=is(_a(a)+t)*864e5,t=0,a=0),s.milliseconds=e%1e3,r=ee(e/1e3),s.seconds=r%60,i=ee(r/60),s.minutes=i%60,o=ee(i/60),s.hours=o%24,t+=ee(o/24),d=ee(br(t)),a+=d,t-=is(_a(d)),n=ee(a/12),a%=12,s.days=t,s.months=a,s.years=n,this}function br(e){return e*4800/146097}function _a(e){return e*146097/4800}function Qc(e){if(!this.isValid())return NaN;var t,a,s=this._milliseconds;if(e=ae(e),e==="month"||e==="quarter"||e==="year")switch(t=this._days+s/864e5,a=this._months+br(t),e){case"month":return a;case"quarter":return a/3;case"year":return a/12}else switch(t=this._days+Math.round(_a(this._months)),e){case"week":return t/7+s/6048e5;case"day":return t+s/864e5;case"hour":return t*24+s/36e5;case"minute":return t*1440+s/6e4;case"second":return t*86400+s/1e3;case"millisecond":return Math.floor(t*864e5)+s;default:throw new Error("Unknown unit "+e)}}function ed(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+g(this._months/12)*31536e6:NaN}function Ee(e){return function(){return this.as(e)}}var td=Ee("ms"),ad=Ee("s"),sd=Ee("m"),rd=Ee("h"),id=Ee("d"),od=Ee("w"),nd=Ee("M"),ld=Ee("Q"),cd=Ee("y");function dd(){return le(this)}function ud(e){return e=ae(e),this.isValid()?this[e+"s"]():NaN}function xe(e){return function(){return this.isValid()?this._data[e]:NaN}}var pd=xe("milliseconds"),md=xe("seconds"),hd=xe("minutes"),fd=xe("hours"),_d=xe("days"),Sd=xe("months"),kd=xe("years");function Td(){return ee(this.days()/7)}var fe=Math.round,Pe={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function Bd(e,t,a,s,r){return r.relativeTime(t||1,!!a,e,s)}function Ed(e,t,a,s){var r=le(e).abs(),i=fe(r.as("s")),o=fe(r.as("m")),n=fe(r.as("h")),d=fe(r.as("d")),l=fe(r.as("M")),u=fe(r.as("w")),m=fe(r.as("y")),R=i<=a.ss&&["s",i]||i0,R[4]=s,Bd.apply(null,R)}function Rd(e){return e===void 0?fe:typeof e=="function"?(fe=e,!0):!1}function wd(e,t){return Pe[e]===void 0?!1:t===void 0?Pe[e]:(Pe[e]=t,e==="s"&&(Pe.ss=t-1),!0)}function gd(e,t){if(!this.isValid())return this.localeData().invalidDate();var a=!1,s=Pe,r,i;return typeof e=="object"&&(t=e,e=!1),typeof e=="boolean"&&(a=e),typeof t=="object"&&(s=Object.assign({},Pe,t),t.s!=null&&t.ss==null&&(s.ss=t.s-1)),r=this.localeData(),i=Ed(this,!a,s,r),a&&(i=r.pastFuture(+this,i)),r.postformat(i)}var Qt=Math.abs;function ve(e){return(e>0)-(e<0)||+e}function jt(){if(!this.isValid())return this.localeData().invalidDate();var e=Qt(this._milliseconds)/1e3,t=Qt(this._days),a=Qt(this._months),s,r,i,o,n=this.asSeconds(),d,l,u,m;return n?(s=ee(e/60),r=ee(s/60),e%=60,s%=60,i=ee(a/12),a%=12,o=e?e.toFixed(3).replace(/\.?0+$/,""):"",d=n<0?"-":"",l=ve(this._months)!==ve(n)?"-":"",u=ve(this._days)!==ve(n)?"-":"",m=ve(this._milliseconds)!==ve(n)?"-":"",d+"P"+(i?l+i+"Y":"")+(a?l+a+"M":"")+(t?u+t+"D":"")+(r||s||e?"T":"")+(r?m+r+"H":"")+(s?m+s+"M":"")+(e?m+o+"S":"")):"P0D"}var A=zt.prototype;A.isValid=_l;A.abs=$c;A.add=Kc;A.subtract=Zc;A.as=Qc;A.asMilliseconds=td;A.asSeconds=ad;A.asMinutes=sd;A.asHours=rd;A.asDays=id;A.asWeeks=od;A.asMonths=nd;A.asQuarters=ld;A.asYears=cd;A.valueOf=ed;A._bubble=Xc;A.clone=dd;A.get=ud;A.milliseconds=pd;A.seconds=md;A.minutes=hd;A.hours=fd;A.days=_d;A.weeks=Td;A.months=Sd;A.years=kd;A.humanize=gd;A.toISOString=jt;A.toString=jt;A.toJSON=jt;A.locale=_r;A.localeData=kr;A.toIsoString=te("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",jt);A.lang=Sr;T("X",0,0,"unix");T("x",0,0,"valueOf");_("x",Ft);_("X",Jo);N("X",function(e,t,a){a._d=new Date(parseFloat(e)*1e3)});N("x",function(e,t,a){a._d=new Date(g(e))});//! moment.js +f.version="2.29.4";go(x);f.fn=p;f.min=pl;f.max=ml;f.now=hl;f.utc=pe;f.unix=qc;f.months=zc;f.isDate=rt;f.locale=ge;f.invalid=Pt;f.duration=le;f.isMoment=oe;f.weekdays=jc;f.parseZone=Yc;f.localeData=Be;f.isDuration=_t;f.monthsShort=Jc;f.weekdaysMin=Gc;f.defineLocale=xa;f.updateLocale=Yn;f.locales=zn;f.weekdaysShort=Vc;f.normalizeUnits=ae;f.relativeTimeRounding=Rd;f.relativeTimeThreshold=wd;f.calendarFormat=Ml;f.prototype=p;f.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"};function Ad(e){if(e===null||e===!0||e===!1)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function G(e,t){if(t.length1?"s":"")+" required, but only "+t.length+" present")}function M(e){G(1,arguments);var t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new Date(e.getTime()):typeof e=="number"||t==="[object Number]"?new Date(e):((typeof e=="string"||t==="[object String]")&&typeof console<"u"&&(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"),console.warn(new Error().stack)),new Date(NaN))}function yt(e){var t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}function Ze(e,t){G(2,arguments);var a=M(e),s=M(t),r=a.getTime()-s.getTime();return r<0?-1:r>0?1:r}var Nr=6e4,Or=36e5;function Ld(e,t){G(2,arguments);var a=M(e),s=M(t),r=a.getFullYear()-s.getFullYear(),i=a.getMonth()-s.getMonth();return r*12+i}function yd(e,t){return G(2,arguments),M(e).getTime()-M(t).getTime()}var os={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(e){return e<0?Math.ceil(e):Math.floor(e)}},bd="trunc";function Nd(e){return e?os[e]:os[bd]}function Od(e){G(1,arguments);var t=M(e);return t.setHours(23,59,59,999),t}function xd(e){G(1,arguments);var t=M(e),a=t.getMonth();return t.setFullYear(t.getFullYear(),a+1,0),t.setHours(23,59,59,999),t}function Cd(e){G(1,arguments);var t=M(e);return Od(t).getTime()===xd(t).getTime()}function vd(e,t){G(2,arguments);var a=M(e),s=M(t),r=Ze(a,s),i=Math.abs(Ld(a,s)),o;if(i<1)o=0;else{a.getMonth()===1&&a.getDate()>27&&a.setDate(30),a.setMonth(a.getMonth()-r*i);var n=Ze(a,s)===-r;Cd(M(e))&&i===1&&Ze(e,s)===1&&(n=!1),o=r*(i-Number(n))}return o===0?0:o}function Wd(e,t,a){G(2,arguments);var s=yd(e,t)/1e3;return Nd(void 0)(s)}var Pd={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Dd=function(e,t,a){var s,r=Pd[e];return typeof r=="string"?s=r:t===1?s=r.one:s=r.other.replace("{{count}}",t.toString()),a!=null&&a.addSuffix?a.comparison&&a.comparison>0?"in "+s:s+" ago":s},Hd=Dd;function ea(e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=t.width?String(t.width):e.defaultWidth,s=e.formats[a]||e.formats[e.defaultWidth];return s}}var Id={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Md={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Fd={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Ud={date:ea({formats:Id,defaultWidth:"full"}),time:ea({formats:Md,defaultWidth:"full"}),dateTime:ea({formats:Fd,defaultWidth:"full"})},qd=Ud,Yd={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},zd=function(e,t,a,s){return Yd[e]},Jd=zd;function je(e){return function(t,a){var s=a||{},r=s.context?String(s.context):"standalone",i;if(r==="formatting"&&e.formattingValues){var o=e.defaultFormattingWidth||e.defaultWidth,n=s.width?String(s.width):o;i=e.formattingValues[n]||e.formattingValues[o]}else{var d=e.defaultWidth,l=s.width?String(s.width):e.defaultWidth;i=e.values[l]||e.values[d]}var u=e.argumentCallback?e.argumentCallback(t):t;return i[u]}}var jd={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Vd={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Gd={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},$d={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Kd={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Zd={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Xd=function(e,t){var a=Number(e),s=a%100;if(s>20||s<10)switch(s%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},Qd={ordinalNumber:Xd,era:je({values:jd,defaultWidth:"wide"}),quarter:je({values:Vd,defaultWidth:"wide",argumentCallback:function(e){return e-1}}),month:je({values:Gd,defaultWidth:"wide"}),day:je({values:$d,defaultWidth:"wide"}),dayPeriod:je({values:Kd,defaultWidth:"wide",formattingValues:Zd,defaultFormattingWidth:"wide"})},eu=Qd;function Ve(e){return function(t){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=a.width,r=s&&e.matchPatterns[s]||e.matchPatterns[e.defaultMatchWidth],i=t.match(r);if(!i)return null;var o=i[0],n=s&&e.parsePatterns[s]||e.parsePatterns[e.defaultParseWidth],d=Array.isArray(n)?au(n,function(m){return m.test(o)}):tu(n,function(m){return m.test(o)}),l;l=e.valueCallback?e.valueCallback(d):d,l=a.valueCallback?a.valueCallback(l):l;var u=t.slice(o.length);return{value:l,rest:u}}}function tu(e,t){for(var a in e)if(e.hasOwnProperty(a)&&t(e[a]))return a}function au(e,t){for(var a=0;a1&&arguments[1]!==void 0?arguments[1]:{},s=t.match(e.matchPattern);if(!s)return null;var r=s[0],i=t.match(e.parsePattern);if(!i)return null;var o=e.valueCallback?e.valueCallback(i[0]):i[0];o=a.valueCallback?a.valueCallback(o):o;var n=t.slice(r.length);return{value:o,rest:n}}}var ru=/^(\d+)(th|st|nd|rd)?/i,iu=/\d+/i,ou={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},nu={any:[/^b/i,/^(a|c)/i]},lu={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},cu={any:[/1/i,/2/i,/3/i,/4/i]},du={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},uu={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},pu={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},mu={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},hu={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},fu={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},_u={ordinalNumber:su({matchPattern:ru,parsePattern:iu,valueCallback:function(e){return parseInt(e,10)}}),era:Ve({matchPatterns:ou,defaultMatchWidth:"wide",parsePatterns:nu,defaultParseWidth:"any"}),quarter:Ve({matchPatterns:lu,defaultMatchWidth:"wide",parsePatterns:cu,defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:Ve({matchPatterns:du,defaultMatchWidth:"wide",parsePatterns:uu,defaultParseWidth:"any"}),day:Ve({matchPatterns:pu,defaultMatchWidth:"wide",parsePatterns:mu,defaultParseWidth:"any"}),dayPeriod:Ve({matchPatterns:hu,defaultMatchWidth:"any",parsePatterns:fu,defaultParseWidth:"any"})},Su=_u,ku={code:"en-US",formatDistance:Hd,formatLong:qd,formatRelative:Jd,localize:eu,match:Su,options:{weekStartsOn:0,firstWeekContainsDate:1}},xr=ku;function Tu(e,t){if(e==null)throw new TypeError("assign requires that input parameter not be null or undefined");t=t||{};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}function Cr(e){return Tu({},e)}var ns=1440,Bu=2520,ta=43200,Eu=86400;function Ru(e,t){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};G(2,arguments);var s=a.locale||xr;if(!s.formatDistance)throw new RangeError("locale must contain formatDistance property");var r=Ze(e,t);if(isNaN(r))throw new RangeError("Invalid time value");var i=Cr(a);i.addSuffix=!!a.addSuffix,i.comparison=r;var o,n;r>0?(o=M(t),n=M(e)):(o=M(e),n=M(t));var d=Wd(n,o),l=(yt(n)-yt(o))/1e3,u=Math.round((d-l)/60),m;if(u<2)return a.includeSeconds?d<5?s.formatDistance("lessThanXSeconds",5,i):d<10?s.formatDistance("lessThanXSeconds",10,i):d<20?s.formatDistance("lessThanXSeconds",20,i):d<40?s.formatDistance("halfAMinute",null,i):d<60?s.formatDistance("lessThanXMinutes",1,i):s.formatDistance("xMinutes",1,i):u===0?s.formatDistance("lessThanXMinutes",1,i):s.formatDistance("xMinutes",u,i);if(u<45)return s.formatDistance("xMinutes",u,i);if(u<90)return s.formatDistance("aboutXHours",1,i);if(u2&&arguments[2]!==void 0?arguments[2]:{};G(2,arguments);var s=a.locale||xr;if(!s.formatDistance)throw new RangeError("locale must contain localize.formatDistance property");var r=Ze(e,t);if(isNaN(r))throw new RangeError("Invalid time value");var i=Cr(a);i.addSuffix=!!a.addSuffix,i.comparison=r;var o,n;r>0?(o=M(t),n=M(e)):(o=M(e),n=M(t));var d=a.roundingMethod==null?"round":String(a.roundingMethod),l;if(d==="floor")l=Math.floor;else if(d==="ceil")l=Math.ceil;else if(d==="round")l=Math.round;else throw new RangeError("roundingMethod must be 'floor', 'ceil' or 'round'");var u=n.getTime()-o.getTime(),m=u/ls,R=yt(n)-yt(o),b=(u-R)/ls,h;if(a.unit==null?m<1?h="second":m<60?h="minute":m2)return t;if(/:/.test(a[0])?s=a[0]:(t.date=a[0],s=a[1],dt.timeZoneDelimiter.test(t.date)&&(t.date=e.split(dt.timeZoneDelimiter)[0],s=e.substr(t.date.length,e.length))),s){var r=dt.timezone.exec(s);r?(t.time=s.replace(r[1],""),t.timezone=r[1]):t.time=s}return t}function xu(e,t){var a=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),s=e.match(a);if(!s)return{year:NaN,restDateString:""};var r=s[1]?parseInt(s[1]):null,i=s[2]?parseInt(s[2]):null;return{year:i===null?r:i*100,restDateString:e.slice((s[1]||s[2]).length)}}function Cu(e,t){if(t===null)return new Date(NaN);var a=e.match(yu);if(!a)return new Date(NaN);var s=!!a[4],r=Ge(a[1]),i=Ge(a[2])-1,o=Ge(a[3]),n=Ge(a[4]),d=Ge(a[5])-1;if(s)return Mu(t,n,d)?Pu(t,n,d):new Date(NaN);var l=new Date(0);return!Hu(t,i,o)||!Iu(t,r)?new Date(NaN):(l.setUTCFullYear(t,i,Math.max(r,o)),l)}function Ge(e){return e?parseInt(e):1}function vu(e){var t=e.match(bu);if(!t)return NaN;var a=aa(t[1]),s=aa(t[2]),r=aa(t[3]);return Fu(a,s,r)?a*Or+s*Nr+r*1e3:NaN}function aa(e){return e&&parseFloat(e.replace(",","."))||0}function Wu(e){if(e==="Z")return 0;var t=e.match(Nu);if(!t)return 0;var a=t[1]==="+"?-1:1,s=parseInt(t[2]),r=t[3]&&parseInt(t[3])||0;return Uu(s,r)?a*(s*Or+r*Nr):NaN}function Pu(e,t,a){var s=new Date(0);s.setUTCFullYear(e,0,4);var r=s.getUTCDay()||7,i=(t-1)*7+a+1-r;return s.setUTCDate(s.getUTCDate()+i),s}var Du=[31,null,31,30,31,30,31,31,30,31,30,31];function vr(e){return e%400===0||e%4===0&&e%100!==0}function Hu(e,t,a){return t>=0&&t<=11&&a>=1&&a<=(Du[t]||(vr(e)?29:28))}function Iu(e,t){return t>=1&&t<=(vr(e)?366:365)}function Mu(e,t,a){return t>=1&&t<=53&&a>=0&&a<=6}function Fu(e,t,a){return e===24?t===0&&a===0:a>=0&&a<60&&t>=0&&t<60&&e>=0&&e<25}function Uu(e,t){return t>=0&&t<=59}var qu=(e,t={},a)=>{var s,r;return typeof e=="string"&&(e=Lu(e)),t.useStrict?Au(e,{addSuffix:(s=t.addSuffix)!=null?s:!0,locale:a,unit:t.unit,roundingMethod:t.roundingMethod}):gu(e,{includeSeconds:t.includeSeconds,addSuffix:(r=t.addSuffix)!=null?r:!0,locale:a})};const Yu=(e={})=>{const t=e.name||"Timeago";return Fr({name:t,props:{datetime:{type:[String,Number,Date],required:!0},title:{type:[String,Boolean],required:!1,default:null},autoUpdate:{type:[Number,Boolean],required:!1,default:null},converter:{type:Function,required:!1,default:null},converterOptions:{type:Object,required:!1,default:null},locale:{type:Object,required:!1,default:null}},setup(a){const s=Q();qr(()=>{n()}),Yr(()=>{d()});const r=l=>(a.converter||qu)(l||a.datetime,a.converterOptions||e.converterOptions,a.locale||e.locale),i=Q(r()),o=l=>{i.value=r(l)},n=()=>{if(a.autoUpdate){const l=a.autoUpdate===!0?60:a.autoUpdate;s.value=setInterval(()=>{o(a.datetime)},l*1e3)}},d=()=>{s.value&&(clearInterval(s.value),s.value=void 0)};return ut(()=>a.autoUpdate,l=>{d(),l&&n()}),ut(()=>[a.datetime,a.converter],()=>{o()}),ut(()=>a.converterOptions,()=>{o()},{deep:!0}),{timeago:i,updateTimer:s}},render(){return Ur("timeago",{attrs:{datetime:new Date(this.datetime).toISOString(),title:typeof this.title=="string"?this.title:this.title===!1?null:this.timeago}},[this.timeago])}})};var zu=(e,t)=>{if(e.config.globalProperties.$timeago)return;Number(e.version.split(".")[0])<3&&console.warn("[vue-timeago3] This plugin requires at least Vue version 3.0");const s=Yu(t);e.component(s.name,s)},Ju=jr();const us=Vr(Ju);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const i of r)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function a(r){const i={};return r.integrity&&(i.integrity=r.integrity),r.referrerPolicy&&(i.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?i.credentials="include":r.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function s(r){if(r.ep)return;r.ep=!0;const i=a(r);fetch(r.href,i)}})();const ju=`Nested Loop Left Join (cost=11.95..28.52 rows=5 width=157) (actual time=0.010..0.010 rows=0 loops=1) Output: rel_users_exams.user_username, rel_users_exams.exam_id, rel_users_exams.started_at, rel_users_exams.finished_at, exam_1.id, exam_1.title, exam_1.date_from, exam_1.date_to, exam_1.created, exam_1.created_by_, exam_1.duration, exam_1.success_threshold, exam_1.published Inner Unique: true Join Filter: (exam_1.id = rel_users_exams.exam_id) @@ -5888,4 +5888,4 @@ LIMIT 1; only 3 are used */ EXPLAIN (ANALYZE,BUFFERS,SETTINGS) SELECT * from pgbench_accounts where aid BETWEEN 5000000 AND 9000000 ; -`,h0=[["Simple join (TEXT format)",ju,ps],["Simple join (JSON format)",Vu,ps],["Three joins, missing an index",Gu,$u],["Aggregate with four joins",Zu,Xu],["With subplan",Qu,""],["With Buffers",e0,t0],["A single CTE",a0,s0],["Many CTEs",Ku,""],["Very large plan",r0,""],["DELETE with triggers",d0,u0],["With many options",i0,o0],["Parallel (verbose)",n0,""],["Parallel (4 workers)",c0,l0],["Partitions",p0,m0]];Pr.add(Dr,Hr,Ir);let aa,ms;const Ma=zr({setup(){const e=ae(""),t=ae(""),a=ae(""),s=ae(!1),r=ae(!1),i=ae([]),o=ae(null),n=ae(null),d=ae(!1);function l(T){o.value=null,T.preventDefault(),localStorage.getItem("dontAskBeforeSubmit")?u():aa.show()}function u(){document.getElementById("dontAskAgain").checked&&localStorage.setItem("dontAskBeforeSubmit",!0);let N=o.value;N||(e.value=e.value||"Plan created on "+h().format("MMMM Do YYYY, h:mm a"),N={title:e.value,plan:t.value,query:a.value,createdOn:new Date}),W(N)}function m(T){[e.value,t.value,a.value]=T}function R(T){const N=T.srcElement;if(!(N instanceof HTMLTextAreaElement)||(s.value=!1,r.value=!1,!T.dataTransfer))return;const X=T.dataTransfer.files[0],U=new FileReader;U.onload=Ee=>{U.result instanceof ArrayBuffer||(N.value=U.result||"",N.dispatchEvent(new Event("input")))},U.readAsText(X)}function b(){const T=[];for(let N in localStorage)us.startsWith(N,"plan_")&&T.push(JSON.parse(localStorage[N]));i.value=us.chain(T).sortBy("createdOn").reverse().value()}function f(T){T.value=T,localStorage.getItem("dontAskBeforeSubmit")?W(T):aa.show()}function B(T){return T.shareId?"/"+T.shareId:"#"+T.id}function S(T){d.value&&T.shareId?H.get("/plan/"+T.shareId+"/"+T.deleteKey).then(x.bind(this,T)):x(T)}function x(T){localStorage.removeItem(T.id?T.id:"plan_"+T.shareId),b(),ms.hide()}function W(T){const N=document.getElementById("submitForm");H.post(N.action,{title:T.title,plan:T.plan,query:T.query}).then(X=>{localStorage.removeItem(T.id);const U=X.data,Ee="plan_"+U.id;localStorage.setItem(Ee,JSON.stringify({id:Ee,shareId:U.id,title:T.title,createdOn:T.createdOn,deleteKey:U.deleteKey})),window.location.href="/plan/"+U.id})}function D(T){return new Date(T).toLocaleDateString(navigator.language,{weekday:"short",year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"})}return Jr(()=>{document.getElementsByTagName("textarea"),b(),aa=new Ua(document.getElementById("confirmSubmitModal")),ms=new Ua(document.getElementById("deletePlanModal"))}),dt(n,(T,N)=>{d.value=!1}),{samples:h0,titleInput:e,planInput:t,queryInput:a,draggingPlan:s,draggingQuery:r,plans:i,plan:o,planToDelete:n,deleteFromServer:d,checkForm:l,submitPlan:u,loadSample:m,handleDrop:R,loadPlan:f,getPlanUrl:B,deletePlan:S,formattedDate:D}}});Ma.use(zu);Ma.component("font-awesome-icon",Mr);Ma.mount("#app")});export default f0(); +`,h0=[["Simple join (TEXT format)",ju,ps],["Simple join (JSON format)",Vu,ps],["Three joins, missing an index",Gu,$u],["Aggregate with four joins",Zu,Xu],["With subplan",Qu,""],["With Buffers",e0,t0],["A single CTE",a0,s0],["Many CTEs",Ku,""],["Very large plan",r0,""],["DELETE with triggers",d0,u0],["With many options",i0,o0],["Parallel (verbose)",n0,""],["Parallel (4 workers)",c0,l0],["Partitions",p0,m0]];Pr.add(Dr,Hr,Ir);let sa,ms;const Fa=zr({setup(){const e=Q(""),t=Q(""),a=Q(""),s=Q(""),r=Q(!1),i=Q(!1),o=Q([]),n=Q(null),d=Q(null),l=Q(!1);function u(k){n.value=null,k.preventDefault(),localStorage.getItem("dontAskBeforeSubmit")?m():sa.show()}function m(){document.getElementById("dontAskAgain").checked&&localStorage.setItem("dontAskBeforeSubmit",!0);let P=n.value;P||(e.value=e.value||"Plan created on "+f().format("MMMM Do YYYY, h:mm a"),P={title:e.value,plan:t.value,query:a.value,password:s.value,createdOn:new Date}),W(P)}function R(k){[e.value,t.value,a.value]=k}function b(k){const P=k.srcElement;if(!(P instanceof HTMLTextAreaElement)||(r.value=!1,i.value=!1,!k.dataTransfer))return;const se=k.dataTransfer.files[0],J=new FileReader;J.onload=Ce=>{J.result instanceof ArrayBuffer||(P.value=J.result||"",P.dispatchEvent(new Event("input")))},J.readAsText(se)}function h(){const k=[];for(let P in localStorage)us.startsWith(P,"plan_")&&k.push(JSON.parse(localStorage[P]));o.value=us.chain(k).sortBy("createdOn").reverse().value()}function B(k){k.value=k,localStorage.getItem("dontAskBeforeSubmit")?W(k):sa.show()}function S(k){return k.shareId?"/"+k.shareId:"#"+k.id}function O(k){l.value&&k.shareId?H.get("/plan/"+k.shareId+"/"+k.deleteKey).then(v.bind(this,k)):v(k)}function v(k){localStorage.removeItem(k.id?k.id:"plan_"+k.shareId),h(),ms.hide()}function W(k){const P=document.getElementById("submitForm");H.post(P.action,{title:k.title,plan:k.plan,query:k.query,password:k.password}).then(se=>{localStorage.removeItem(k.id);const J=se.data,Ce="plan_"+J.id;localStorage.setItem(Ce,JSON.stringify({id:Ce,shareId:J.id,title:k.title,createdOn:k.createdOn,deleteKey:J.deleteKey})),window.location.href="/plan/"+J.id})}function $(k){return new Date(k).toLocaleDateString(navigator.language,{weekday:"short",year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"})}return Jr(()=>{document.getElementsByTagName("textarea"),h(),sa=new Ua(document.getElementById("confirmSubmitModal")),ms=new Ua(document.getElementById("deletePlanModal"))}),ut(d,(k,P)=>{l.value=!1}),{samples:h0,titleInput:e,planInput:t,queryInput:a,passwordInput:s,draggingPlan:r,draggingQuery:i,plans:o,plan:n,planToDelete:d,deleteFromServer:l,checkForm:u,submitPlan:m,loadSample:R,handleDrop:b,loadPlan:B,getPlanUrl:S,deletePlan:O,formattedDate:$}}});Fa.use(zu);Fa.component("font-awesome-icon",Mr);Fa.mount("#app")});export default f0(); diff --git a/app/static/js/index.js b/app/static/js/index.js index 4396bfe..aceffc8 100644 --- a/app/static/js/index.js +++ b/app/static/js/index.js @@ -27,6 +27,7 @@ const app = createApp({ const titleInput = ref(""); const planInput = ref(""); const queryInput = ref(""); + const passwordInput = ref(""); const draggingPlan = ref(false); const draggingQuery = ref(false); const plans = ref([]); @@ -62,6 +63,7 @@ const app = createApp({ title: titleInput.value, plan: planInput.value, query: queryInput.value, + password: passwordInput.value, createdOn: new Date(), }; } @@ -141,6 +143,7 @@ const app = createApp({ title: plan.title, plan: plan.plan, query: plan.query, + password: plan.password, }) .then((response) => { localStorage.removeItem(plan.id); @@ -191,6 +194,7 @@ const app = createApp({ titleInput, planInput, queryInput, + passwordInput, draggingPlan, draggingQuery, plans, diff --git a/app/templates/index.html b/app/templates/index.html index b5f118e..b835dd3 100644 --- a/app/templates/index.html +++ b/app/templates/index.html @@ -37,6 +37,16 @@

+
+ +
+
+ +
+
+
diff --git a/app/templates/locked.html b/app/templates/locked.html new file mode 100644 index 0000000..7953b8c --- /dev/null +++ b/app/templates/locked.html @@ -0,0 +1,58 @@ +{% set asset='common' %} + +{% extends "layout.html" %} + +{% block title %} +{{ plan.title or '' + ' |' if plan else ' | ' }} +{% endblock %} + +{% block body %} +
+
+
+
+
+
+
+
+ This plan is protected by a password. +
+
+
+ +
+ {% if invalid_password %} +
+ Password is incorrect +
+ {% endif %} +
+
+ +
+
+
+
+
+
+
+
+{% endblock %} + +{% block head %} + +{% endblock %} diff --git a/migrations/versions/a9ed4fe59f75_add_support_for_plans_password_.py b/migrations/versions/a9ed4fe59f75_add_support_for_plans_password_.py new file mode 100644 index 0000000..a96e074 --- /dev/null +++ b/migrations/versions/a9ed4fe59f75_add_support_for_plans_password_.py @@ -0,0 +1,99 @@ +"""Add support for plans password protection. + +Revision ID: a9ed4fe59f75 +Revises: 7d4af6ed6f66 +Create Date: 2025-06-04 11:43:31.050664 + +""" + +import sqlalchemy as sa +from alembic import op + +# revision identifiers, used by Alembic. +revision = "a9ed4fe59f75" +down_revision = "7d4af6ed6f66" +branch_labels = None +depends_on = None + + +def upgrade(): + with op.batch_alter_table("plans", schema=None) as batch_op: + batch_op.add_column(sa.Column("password_hash", sa.String(), nullable=True)) + + op.execute( + """ + DROP FUNCTION public.register_plan; + + CREATE FUNCTION public.register_plan(in_title text, in_plan + text, in_sql text, in_is_public boolean, in_password_hash text) + RETURNS register_plan_return + LANGUAGE plpgsql + AS $function$ + DECLARE + use_hash_length int4 := 16; + reply register_plan_return; + insert_sql TEXT; + BEGIN + insert_sql := 'INSERT INTO public.plans (id, title, plan, sql, + is_public, created, delete_key, password_hash) VALUES ($1, $2, $3, $4, $5, now(), $6, $7)'; + reply.delete_key := get_random_string( 50 ); + LOOP + reply.id := get_random_string(use_hash_length); + BEGIN + execute insert_sql using reply.id, in_title, in_plan, in_sql, in_is_public, reply.delete_key, in_password_hash; + RETURN reply; + EXCEPTION WHEN unique_violation THEN + -- do nothing + END; + use_hash_length := use_hash_length + 1; + IF use_hash_length >= 30 THEN + raise exception 'Random string of length == 30 requested. something''s wrong.'; + END IF; + END LOOP; + END; + $function$; + """ + ) + + +def downgrade(): + with op.batch_alter_table("plans", schema=None) as batch_op: + batch_op.drop_column("password_hash") + + op.execute( + """ + -- + -- Name: get_random_string(integer); Type: FUNCTION; Schema: public; Owner: - + -- + DROP FUNCTION public.register_plan; + + CREATE FUNCTION public.register_plan(in_title text, in_plan + text, in_sql text, in_is_public boolean) + RETURNS register_plan_return + LANGUAGE plpgsql + AS $function$ + DECLARE + use_hash_length int4 := 16; + reply register_plan_return; + insert_sql TEXT; + BEGIN + insert_sql := 'INSERT INTO public.plans (id, title, plan, sql, + is_public, created, delete_key) VALUES ($1, $2, $3, $4, $5, now(), $6)'; + reply.delete_key := get_random_string( 50 ); + LOOP + reply.id := get_random_string(use_hash_length); + BEGIN + execute insert_sql using reply.id, in_title, in_plan, in_sql, in_is_public, reply.delete_key; + RETURN reply; + EXCEPTION WHEN unique_violation THEN + -- do nothing + END; + use_hash_length := use_hash_length + 1; + IF use_hash_length >= 30 THEN + raise exception 'Random string of length == 30 requested. something''s wrong.'; + END IF; + END LOOP; + END; + $function$; + """ + )