edgeone 1.4.2 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -140,7 +140,7 @@ Read about how to prevent this error on https://github.com/vadimdemedes/ink/#isr
140
140
  `.repeat(t));I$.displayName="Newline";X_.default=I$});var R$=G(Z_=>{"use strict";var N$=Z_&&Z_.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Z_,"__esModule",{value:!0});var Hbe=N$(Xs()),Vbe=N$(gb()),F$=()=>Hbe.default.createElement(Vbe.default,{flexGrow:1});F$.displayName="Spacer";Z_.default=F$});var Sb=G(Q_=>{"use strict";var Wbe=Q_&&Q_.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Q_,"__esModule",{value:!0});var zbe=Xs(),Gbe=Wbe(z4()),Ybe=()=>zbe.useContext(Gbe.default);Q_.default=Ybe});var M$=G(eS=>{"use strict";var Kbe=eS&&eS.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(eS,"__esModule",{value:!0});var L$=Xs(),Jbe=Kbe(Sb()),Xbe=(t,e={})=>{let{stdin:n,setRawMode:o,internal_exitOnCtrlC:u}=Jbe.default();L$.useEffect(()=>{if(e.isActive!==!1)return o(!0),()=>{o(!1)}},[e.isActive,o]),L$.useEffect(()=>{if(e.isActive===!1)return;let r=f=>{let p=String(f),y={upArrow:p==="\x1B[A",downArrow:p==="\x1B[B",leftArrow:p==="\x1B[D",rightArrow:p==="\x1B[C",pageDown:p==="\x1B[6~",pageUp:p==="\x1B[5~",return:p==="\r",escape:p==="\x1B",ctrl:!1,shift:!1,tab:p===" "||p==="\x1B[Z",backspace:p==="\b",delete:p==="\x7F"||p==="\x1B[3~",meta:!1};p<=""&&!y.return&&(p=String.fromCharCode(p.charCodeAt(0)+97-1),y.ctrl=!0),p.startsWith("\x1B")&&(p=p.slice(1),y.meta=!0);let m=p>="A"&&p<="Z",S=p>="\u0410"&&p<="\u042F";p.length===1&&(m||S)&&(y.shift=!0),y.tab&&p==="[Z"&&(y.shift=!0),(y.tab||y.backspace||y.delete)&&(p=""),(!(p==="c"&&y.ctrl)||!u)&&t(p,y)};return n==null||n.on("data",r),()=>{n==null||n.off("data",r)}},[e.isActive,n,u,t])};eS.default=Xbe});var B$=G(tS=>{"use strict";var Zbe=tS&&tS.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tS,"__esModule",{value:!0});var Qbe=Xs(),ePe=Zbe(V4()),tPe=()=>Qbe.useContext(ePe.default);tS.default=tPe});var j$=G(rS=>{"use strict";var rPe=rS&&rS.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(rS,"__esModule",{value:!0});var nPe=Xs(),iPe=rPe(Y4()),sPe=()=>nPe.useContext(iPe.default);rS.default=sPe});var q$=G(nS=>{"use strict";var oPe=nS&&nS.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nS,"__esModule",{value:!0});var aPe=Xs(),uPe=oPe(J4()),lPe=()=>aPe.useContext(uPe.default);nS.default=lPe});var $$=G(sS=>{"use strict";var U$=sS&&sS.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(sS,"__esModule",{value:!0});var iS=Xs(),cPe=U$(yb()),fPe=U$(Sb()),pPe=({isActive:t=!0,autoFocus:e=!1,id:n}={})=>{let{isRawModeSupported:o,setRawMode:u}=fPe.default(),{activeId:r,add:f,remove:p,activate:y,deactivate:m,focus:S}=iS.useContext(cPe.default),C=iS.useMemo(()=>n!=null?n:Math.random().toString().slice(2,7),[n]);return iS.useEffect(()=>(f(C,{autoFocus:e}),()=>{p(C)}),[C,e]),iS.useEffect(()=>{t?y(C):m(C)},[t,C]),iS.useEffect(()=>{if(!(!o||!t))return u(!0),()=>{u(!1)}},[t]),{isFocused:!!C&&r===C,focus:S}};sS.default=pPe});var H$=G(oS=>{"use strict";var dPe=oS&&oS.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oS,"__esModule",{value:!0});var hPe=Xs(),mPe=dPe(yb()),yPe=()=>{let t=hPe.useContext(mPe.default);return{enableFocus:t.enableFocus,disableFocus:t.disableFocus,focusNext:t.focusNext,focusPrevious:t.focusPrevious,focus:t.focus}};oS.default=yPe});var V$=G(iO=>{"use strict";Object.defineProperty(iO,"__esModule",{value:!0});iO.default=t=>{var e,n,o,u;return{width:(n=(e=t.yogaNode)===null||e===void 0?void 0:e.getComputedWidth())!==null&&n!==void 0?n:0,height:(u=(o=t.yogaNode)===null||o===void 0?void 0:o.getComputedHeight())!==null&&u!==void 0?u:0}}});var Tb=G($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});var gPe=P$();Object.defineProperty($u,"render",{enumerable:!0,get:function(){return gPe.default}});var vPe=gb();Object.defineProperty($u,"Box",{enumerable:!0,get:function(){return vPe.default}});var xPe=rO();Object.defineProperty($u,"Text",{enumerable:!0,get:function(){return xPe.default}});var _Pe=C$();Object.defineProperty($u,"Static",{enumerable:!0,get:function(){return _Pe.default}});var SPe=k$();Object.defineProperty($u,"Transform",{enumerable:!0,get:function(){return SPe.default}});var TPe=O$();Object.defineProperty($u,"Newline",{enumerable:!0,get:function(){return TPe.default}});var EPe=R$();Object.defineProperty($u,"Spacer",{enumerable:!0,get:function(){return EPe.default}});var wPe=M$();Object.defineProperty($u,"useInput",{enumerable:!0,get:function(){return wPe.default}});var bPe=B$();Object.defineProperty($u,"useApp",{enumerable:!0,get:function(){return bPe.default}});var PPe=Sb();Object.defineProperty($u,"useStdin",{enumerable:!0,get:function(){return PPe.default}});var DPe=j$();Object.defineProperty($u,"useStdout",{enumerable:!0,get:function(){return DPe.default}});var CPe=q$();Object.defineProperty($u,"useStderr",{enumerable:!0,get:function(){return CPe.default}});var APe=$$();Object.defineProperty($u,"useFocus",{enumerable:!0,get:function(){return APe.default}});var kPe=H$();Object.defineProperty($u,"useFocusManager",{enumerable:!0,get:function(){return kPe.default}});var IPe=V$();Object.defineProperty($u,"measureElement",{enumerable:!0,get:function(){return IPe.default}})});var W$=G((sO,u2)=>{(function(t,e){typeof sO=="object"&&typeof u2<"u"?u2.exports=e():typeof define=="function"&&define.amd?define(e):t.moment=e()})(sO,function(){"use strict";var t;function e(){return t.apply(null,arguments)}function n(T){t=T}function o(T){return T instanceof Array||Object.prototype.toString.call(T)==="[object Array]"}function u(T){return T!=null&&Object.prototype.toString.call(T)==="[object Object]"}function r(T,k){return Object.prototype.hasOwnProperty.call(T,k)}function f(T){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(T).length===0;var k;for(k in T)if(r(T,k))return!1;return!0}function p(T){return T===void 0}function y(T){return typeof T=="number"||Object.prototype.toString.call(T)==="[object Number]"}function m(T){return T instanceof Date||Object.prototype.toString.call(T)==="[object Date]"}function S(T,k){var M=[],W,ee=T.length;for(W=0;W<ee;++W)M.push(k(T[W],W));return M}function C(T,k){for(var M in k)r(k,M)&&(T[M]=k[M]);return r(k,"toString")&&(T.toString=k.toString),r(k,"valueOf")&&(T.valueOf=k.valueOf),T}function A(T,k,M,W){return Qd(T,k,M,W,!0).utc()}function R(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function v(T){return T._pf==null&&(T._pf=R()),T._pf}var z;Array.prototype.some?z=Array.prototype.some:z=function(T){var k=Object(this),M=k.length>>>0,W;for(W=0;W<M;W++)if(W in k&&T.call(this,k[W],W,k))return!0;return!1};function U(T){var k=null,M=!1,W=T._d&&!isNaN(T._d.getTime());if(W&&(k=v(T),M=z.call(k.parsedDateParts,function(ee){return ee!=null}),W=k.overflow<0&&!k.empty&&!k.invalidEra&&!k.invalidMonth&&!k.invalidWeekday&&!k.weekdayMismatch&&!k.nullInput&&!k.invalidFormat&&!k.userInvalidated&&(!k.meridiem||k.meridiem&&M),T._strict&&(W=W&&k.charsLeftOver===0&&k.unusedTokens.length===0&&k.bigHour===void 0)),Object.isFrozen==null||!Object.isFrozen(T))T._isValid=W;else return W;return T._isValid}function $(T){var k=A(NaN);return T!=null?C(v(k),T):v(k).userInvalidated=!0,k}var Z=e.momentProperties=[],_e=!1;function de(T,k){var M,W,ee,be=Z.length;if(p(k._isAMomentObject)||(T._isAMomentObject=k._isAMomentObject),p(k._i)||(T._i=k._i),p(k._f)||(T._f=k._f),p(k._l)||(T._l=k._l),p(k._strict)||(T._strict=k._strict),p(k._tzm)||(T._tzm=k._tzm),p(k._isUTC)||(T._isUTC=k._isUTC),p(k._offset)||(T._offset=k._offset),p(k._pf)||(T._pf=v(k)),p(k._locale)||(T._locale=k._locale),be>0)for(M=0;M<be;M++)W=Z[M],ee=k[W],p(ee)||(T[W]=ee);return T}function ge(T){de(this,T),this._d=new Date(T._d!=null?T._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),_e===!1&&(_e=!0,e.updateOffset(this),_e=!1)}function Fe(T){return T instanceof ge||T!=null&&T._isAMomentObject!=null}function He(T){e.suppressDeprecationWarnings===!1&&typeof console<"u"&&console.warn&&console.warn("Deprecation warning: "+T)}function tt(T,k){var M=!0;return C(function(){if(e.deprecationHandler!=null&&e.deprecationHandler(null,T),M){var W=[],ee,be,ft,ir=arguments.length;for(be=0;be<ir;be++){if(ee="",typeof arguments[be]=="object"){ee+=`
141
141
  [`+be+"] ";for(ft in arguments[0])r(arguments[0],ft)&&(ee+=ft+": "+arguments[0][ft]+", ");ee=ee.slice(0,-2)}else ee=arguments[be];W.push(ee)}He(T+`
142
142
  Arguments: `+Array.prototype.slice.call(W).join("")+`
143
- `+new Error().stack),M=!1}return k.apply(this,arguments)},k)}var Le={};function Ct(T,k){e.deprecationHandler!=null&&e.deprecationHandler(T,k),Le[T]||(He(k),Le[T]=!0)}e.suppressDeprecationWarnings=!1,e.deprecationHandler=null;function gt(T){return typeof Function<"u"&&T instanceof Function||Object.prototype.toString.call(T)==="[object Function]"}function ct(T){var k,M;for(M in T)r(T,M)&&(k=T[M],gt(k)?this[M]=k:this["_"+M]=k);this._config=T,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function qe(T,k){var M=C({},T),W;for(W in k)r(k,W)&&(u(T[W])&&u(k[W])?(M[W]={},C(M[W],T[W]),C(M[W],k[W])):k[W]!=null?M[W]=k[W]:delete M[W]);for(W in T)r(T,W)&&!r(k,W)&&u(T[W])&&(M[W]=C({},M[W]));return M}function oe(T){T!=null&&this.set(T)}var Ae;Object.keys?Ae=Object.keys:Ae=function(T){var k,M=[];for(k in T)r(T,k)&&M.push(k);return M};var Ke={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function Se(T,k,M){var W=this._calendar[T]||this._calendar.sameElse;return gt(W)?W.call(k,M):W}function we(T,k,M){var W=""+Math.abs(T),ee=k-W.length,be=T>=0;return(be?M?"+":"":"-")+Math.pow(10,Math.max(0,ee)).toString().substr(1)+W}var Oe=/(\[[^\[]*\])|(\\)?([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,ut=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Lt={},er={};function at(T,k,M,W){var ee=W;typeof W=="string"&&(ee=function(){return this[W]()}),T&&(er[T]=ee),k&&(er[k[0]]=function(){return we(ee.apply(this,arguments),k[1],k[2])}),M&&(er[M]=function(){return this.localeData().ordinal(ee.apply(this,arguments),T)})}function zt(T){return T.match(/\[[\s\S]/)?T.replace(/^\[|\]$/g,""):T.replace(/\\/g,"")}function Ie(T){var k=T.match(Oe),M,W;for(M=0,W=k.length;M<W;M++)er[k[M]]?k[M]=er[k[M]]:k[M]=zt(k[M]);return function(ee){var be="",ft;for(ft=0;ft<W;ft++)be+=gt(k[ft])?k[ft].call(ee,T):k[ft];return be}}function Qe(T,k){return T.isValid()?(k=st(k,T.localeData()),Lt[k]=Lt[k]||Ie(k),Lt[k](T)):T.localeData().invalidDate()}function st(T,k){var M=5;function W(ee){return k.longDateFormat(ee)||ee}for(ut.lastIndex=0;M>=0&&ut.test(T);)T=T.replace(ut,W),ut.lastIndex=0,M-=1;return T}var $t={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 Dr(T){var k=this._longDateFormat[T],M=this._longDateFormat[T.toUpperCase()];return k||!M?k:(this._longDateFormat[T]=M.match(Oe).map(function(W){return W==="MMMM"||W==="MM"||W==="DD"||W==="dddd"?W.slice(1):W}).join(""),this._longDateFormat[T])}var ar="Invalid date";function tr(){return this._invalidDate}var P="%d",Xt=/\d{1,2}/;function lr(T){return this._ordinal.replace("%d",T)}var Bn={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 Pt(T,k,M,W){var ee=this._relativeTime[M];return gt(ee)?ee(T,k,M,W):ee.replace(/%d/i,T)}function xt(T,k){var M=this._relativeTime[T>0?"future":"past"];return gt(M)?M(k):M.replace(/%s/i,k)}var Yt={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function me(T){return typeof T=="string"?Yt[T]||Yt[T.toLowerCase()]:void 0}function ze(T){var k={},M,W;for(W in T)r(T,W)&&(M=me(W),M&&(k[M]=T[W]));return k}var kt={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function Ht(T){var k=[],M;for(M in T)r(T,M)&&k.push({unit:M,priority:kt[M]});return k.sort(function(W,ee){return W.priority-ee.priority}),k}var Rr=/\d/,Lr=/\d\d/,Rn=/\d{3}/,kn=/\d{4}/,Vn=/[+-]?\d{6}/,pn=/\d\d?/,wo=/\d\d\d\d?/,Bo=/\d\d\d\d\d\d?/,Yi=/\d{1,3}/,bo=/\d{1,4}/,_u=/[+-]?\d{1,6}/,Da=/\d+/,Xe=/[+-]?\d+/,wt=/Z|[+-]\d\d:?\d\d/gi,vt=/Z|[+-]\d\d(?::?\d\d)?/gi,jt=/[+-]?\d+(\.\d{1,3})?/,Pr=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,dr=/^[1-9]\d?/,Tn=/^([1-9]\d|\d)/,li;li={};function bt(T,k,M){li[T]=gt(k)?k:function(W,ee){return W&&M?M:k}}function gi(T,k){return r(li,T)?li[T](k._strict,k._locale):new RegExp(ls(T))}function ls(T){return vi(T.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(k,M,W,ee,be){return M||W||ee||be}))}function vi(T){return T.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ci(T){return T<0?Math.ceil(T)||0:Math.floor(T)}function Kr(T){var k=+T,M=0;return k!==0&&isFinite(k)&&(M=ci(k)),M}var As={};function En(T,k){var M,W=k,ee;for(typeof T=="string"&&(T=[T]),y(k)&&(W=function(be,ft){ft[k]=Kr(be)}),ee=T.length,M=0;M<ee;M++)As[T[M]]=W}function rs(T,k){En(T,function(M,W,ee,be){ee._w=ee._w||{},k(M,ee._w,ee,be)})}function Su(T,k,M){k!=null&&r(As,T)&&As[T](k,M._a,M,T)}function Bs(T){return T%4===0&&T%100!==0||T%400===0}var Zt=0,co=1,Ws=2,cs=3,fo=4,zs=5,Ts=6,Pl=7,za=8;at("Y",0,0,function(){var T=this.year();return T<=9999?we(T,4):"+"+T}),at(0,["YY",2],0,function(){return this.year()%100}),at(0,["YYYY",4],0,"year"),at(0,["YYYYY",5],0,"year"),at(0,["YYYYYY",6,!0],0,"year"),bt("Y",Xe),bt("YY",pn,Lr),bt("YYYY",bo,kn),bt("YYYYY",_u,Vn),bt("YYYYYY",_u,Vn),En(["YYYYY","YYYYYY"],Zt),En("YYYY",function(T,k){k[Zt]=T.length===2?e.parseTwoDigitYear(T):Kr(T)}),En("YY",function(T,k){k[Zt]=e.parseTwoDigitYear(T)}),En("Y",function(T,k){k[Zt]=parseInt(T,10)});function pa(T){return Bs(T)?366:365}e.parseTwoDigitYear=function(T){return Kr(T)+(Kr(T)>68?1900:2e3)};var Tu=zr("FullYear",!0);function ac(){return Bs(this.year())}function zr(T,k){return function(M){return M!=null?(Dl(this,T,M),e.updateOffset(this,k),this):Ku(this,T)}}function Ku(T,k){if(!T.isValid())return NaN;var M=T._d,W=T._isUTC;switch(k){case"Milliseconds":return W?M.getUTCMilliseconds():M.getMilliseconds();case"Seconds":return W?M.getUTCSeconds():M.getSeconds();case"Minutes":return W?M.getUTCMinutes():M.getMinutes();case"Hours":return W?M.getUTCHours():M.getHours();case"Date":return W?M.getUTCDate():M.getDate();case"Day":return W?M.getUTCDay():M.getDay();case"Month":return W?M.getUTCMonth():M.getMonth();case"FullYear":return W?M.getUTCFullYear():M.getFullYear();default:return NaN}}function Dl(T,k,M){var W,ee,be,ft,ir;if(!(!T.isValid()||isNaN(M))){switch(W=T._d,ee=T._isUTC,k){case"Milliseconds":return void(ee?W.setUTCMilliseconds(M):W.setMilliseconds(M));case"Seconds":return void(ee?W.setUTCSeconds(M):W.setSeconds(M));case"Minutes":return void(ee?W.setUTCMinutes(M):W.setMinutes(M));case"Hours":return void(ee?W.setUTCHours(M):W.setHours(M));case"Date":return void(ee?W.setUTCDate(M):W.setDate(M));case"FullYear":break;default:return}be=M,ft=T.month(),ir=T.date(),ir=ir===29&&ft===1&&!Bs(be)?28:ir,ee?W.setUTCFullYear(be,ft,ir):W.setFullYear(be,ft,ir)}}function Ga(T){return T=me(T),gt(this[T])?this[T]():this}function Ki(T,k){if(typeof T=="object"){T=ze(T);var M=Ht(T),W,ee=M.length;for(W=0;W<ee;W++)this[M[W].unit](T[M[W].unit])}else if(T=me(T),gt(this[T]))return this[T](k);return this}function Li(T,k){return(T%k+k)%k}var Pi;Array.prototype.indexOf?Pi=Array.prototype.indexOf:Pi=function(T){var k;for(k=0;k<this.length;++k)if(this[k]===T)return k;return-1};function ks(T,k){if(isNaN(T)||isNaN(k))return NaN;var M=Li(k,12);return T+=(k-M)/12,M===1?Bs(T)?29:28:31-M%7%2}at("M",["MM",2],"Mo",function(){return this.month()+1}),at("MMM",0,0,function(T){return this.localeData().monthsShort(this,T)}),at("MMMM",0,0,function(T){return this.localeData().months(this,T)}),bt("M",pn,dr),bt("MM",pn,Lr),bt("MMM",function(T,k){return k.monthsShortRegex(T)}),bt("MMMM",function(T,k){return k.monthsRegex(T)}),En(["M","MM"],function(T,k){k[co]=Kr(T)-1}),En(["MMM","MMMM"],function(T,k,M,W){var ee=M._locale.monthsParse(T,W,M._strict);ee!=null?k[co]=ee:v(M).invalidMonth=T});var po="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),da="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),jo=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,ho=Pr,uc=Pr;function i0(T,k){return T?o(this._months)?this._months[T.month()]:this._months[(this._months.isFormat||jo).test(k)?"format":"standalone"][T.month()]:o(this._months)?this._months:this._months.standalone}function Xc(T,k){return T?o(this._monthsShort)?this._monthsShort[T.month()]:this._monthsShort[jo.test(k)?"format":"standalone"][T.month()]:o(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function lc(T,k,M){var W,ee,be,ft=T.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],W=0;W<12;++W)be=A([2e3,W]),this._shortMonthsParse[W]=this.monthsShort(be,"").toLocaleLowerCase(),this._longMonthsParse[W]=this.months(be,"").toLocaleLowerCase();return M?k==="MMM"?(ee=Pi.call(this._shortMonthsParse,ft),ee!==-1?ee:null):(ee=Pi.call(this._longMonthsParse,ft),ee!==-1?ee:null):k==="MMM"?(ee=Pi.call(this._shortMonthsParse,ft),ee!==-1?ee:(ee=Pi.call(this._longMonthsParse,ft),ee!==-1?ee:null)):(ee=Pi.call(this._longMonthsParse,ft),ee!==-1?ee:(ee=Pi.call(this._shortMonthsParse,ft),ee!==-1?ee:null))}function Zo(T,k,M){var W,ee,be;if(this._monthsParseExact)return lc.call(this,T,k,M);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),W=0;W<12;W++){if(ee=A([2e3,W]),M&&!this._longMonthsParse[W]&&(this._longMonthsParse[W]=new RegExp("^"+this.months(ee,"").replace(".","")+"$","i"),this._shortMonthsParse[W]=new RegExp("^"+this.monthsShort(ee,"").replace(".","")+"$","i")),!M&&!this._monthsParse[W]&&(be="^"+this.months(ee,"")+"|^"+this.monthsShort(ee,""),this._monthsParse[W]=new RegExp(be.replace(".",""),"i")),M&&k==="MMMM"&&this._longMonthsParse[W].test(T))return W;if(M&&k==="MMM"&&this._shortMonthsParse[W].test(T))return W;if(!M&&this._monthsParse[W].test(T))return W}}function At(T,k){if(!T.isValid())return T;if(typeof k=="string"){if(/^\d+$/.test(k))k=Kr(k);else if(k=T.localeData().monthsParse(k),!y(k))return T}var M=k,W=T.date();return W=W<29?W:Math.min(W,ks(T.year(),M)),T._isUTC?T._d.setUTCMonth(M,W):T._d.setMonth(M,W),T}function Ya(T){return T!=null?(At(this,T),e.updateOffset(this,!0),this):Ku(this,"Month")}function s0(){return ks(this.year(),this.month())}function Zc(T){return this._monthsParseExact?(r(this,"_monthsRegex")||Ju.call(this),T?this._monthsShortStrictRegex:this._monthsShortRegex):(r(this,"_monthsShortRegex")||(this._monthsShortRegex=ho),this._monthsShortStrictRegex&&T?this._monthsShortStrictRegex:this._monthsShortRegex)}function Ui(T){return this._monthsParseExact?(r(this,"_monthsRegex")||Ju.call(this),T?this._monthsStrictRegex:this._monthsRegex):(r(this,"_monthsRegex")||(this._monthsRegex=uc),this._monthsStrictRegex&&T?this._monthsStrictRegex:this._monthsRegex)}function Ju(){function T(rn,ti){return ti.length-rn.length}var k=[],M=[],W=[],ee,be,ft,ir;for(ee=0;ee<12;ee++)be=A([2e3,ee]),ft=vi(this.monthsShort(be,"")),ir=vi(this.months(be,"")),k.push(ft),M.push(ir),W.push(ir),W.push(ft);k.sort(T),M.sort(T),W.sort(T),this._monthsRegex=new RegExp("^("+W.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+M.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+k.join("|")+")","i")}function Gd(T,k,M,W,ee,be,ft){var ir;return T<100&&T>=0?(ir=new Date(T+400,k,M,W,ee,be,ft),isFinite(ir.getFullYear())&&ir.setFullYear(T)):ir=new Date(T,k,M,W,ee,be,ft),ir}function qf(T){var k,M;return T<100&&T>=0?(M=Array.prototype.slice.call(arguments),M[0]=T+400,k=new Date(Date.UTC.apply(null,M)),isFinite(k.getUTCFullYear())&&k.setUTCFullYear(T)):k=new Date(Date.UTC.apply(null,arguments)),k}function Cl(T,k,M){var W=7+k-M,ee=(7+qf(T,0,W).getUTCDay()-k)%7;return-ee+W-1}function Vp(T,k,M,W,ee){var be=(7+M-W)%7,ft=Cl(T,W,ee),ir=1+7*(k-1)+be+ft,rn,ti;return ir<=0?(rn=T-1,ti=pa(rn)+ir):ir>pa(T)?(rn=T+1,ti=ir-pa(T)):(rn=T,ti=ir),{year:rn,dayOfYear:ti}}function Kt(T,k,M){var W=Cl(T.year(),k,M),ee=Math.floor((T.dayOfYear()-W-1)/7)+1,be,ft;return ee<1?(ft=T.year()-1,be=ee+Di(ft,k,M)):ee>Di(T.year(),k,M)?(be=ee-Di(T.year(),k,M),ft=T.year()+1):(ft=T.year(),be=ee),{week:be,year:ft}}function Di(T,k,M){var W=Cl(T,k,M),ee=Cl(T+1,k,M);return(pa(T)-W+ee)/7}at("w",["ww",2],"wo","week"),at("W",["WW",2],"Wo","isoWeek"),bt("w",pn,dr),bt("ww",pn,Lr),bt("W",pn,dr),bt("WW",pn,Lr),rs(["w","ww","W","WW"],function(T,k,M,W){k[W.substr(0,1)]=Kr(T)});function Wp(T){return Kt(T,this._week.dow,this._week.doy).week}var cc={dow:0,doy:6};function Ka(){return this._week.dow}function Uf(){return this._week.doy}function o0(T){var k=this.localeData().week(this);return T==null?k:this.add((T-k)*7,"d")}function Yd(T){var k=Kt(this,1,4).week;return T==null?k:this.add((T-k)*7,"d")}at("d",0,"do","day"),at("dd",0,0,function(T){return this.localeData().weekdaysMin(this,T)}),at("ddd",0,0,function(T){return this.localeData().weekdaysShort(this,T)}),at("dddd",0,0,function(T){return this.localeData().weekdays(this,T)}),at("e",0,0,"weekday"),at("E",0,0,"isoWeekday"),bt("d",pn),bt("e",pn),bt("E",pn),bt("dd",function(T,k){return k.weekdaysMinRegex(T)}),bt("ddd",function(T,k){return k.weekdaysShortRegex(T)}),bt("dddd",function(T,k){return k.weekdaysRegex(T)}),rs(["dd","ddd","dddd"],function(T,k,M,W){var ee=M._locale.weekdaysParse(T,W,M._strict);ee!=null?k.d=ee:v(M).invalidWeekday=T}),rs(["d","e","E"],function(T,k,M,W){k[W]=Kr(T)});function a0(T,k){return typeof T!="string"?T:isNaN(T)?(T=k.weekdaysParse(T),typeof T=="number"?T:null):parseInt(T,10)}function ha(T,k){return typeof T=="string"?k.weekdaysParse(T)%7||7:isNaN(T)?null:T}function ma(T,k){return T.slice(k,7).concat(T.slice(0,k))}var Kd="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Jd="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Qc="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),qo=Pr,ef=Pr,ya=Pr;function Al(T,k){var M=o(this._weekdays)?this._weekdays:this._weekdays[T&&T!==!0&&this._weekdays.isFormat.test(k)?"format":"standalone"];return T===!0?ma(M,this._week.dow):T?M[T.day()]:M}function Ja(T){return T===!0?ma(this._weekdaysShort,this._week.dow):T?this._weekdaysShort[T.day()]:this._weekdaysShort}function Eu(T){return T===!0?ma(this._weekdaysMin,this._week.dow):T?this._weekdaysMin[T.day()]:this._weekdaysMin}function Xu(T,k,M){var W,ee,be,ft=T.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],W=0;W<7;++W)be=A([2e3,1]).day(W),this._minWeekdaysParse[W]=this.weekdaysMin(be,"").toLocaleLowerCase(),this._shortWeekdaysParse[W]=this.weekdaysShort(be,"").toLocaleLowerCase(),this._weekdaysParse[W]=this.weekdays(be,"").toLocaleLowerCase();return M?k==="dddd"?(ee=Pi.call(this._weekdaysParse,ft),ee!==-1?ee:null):k==="ddd"?(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1?ee:null):(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1?ee:null):k==="dddd"?(ee=Pi.call(this._weekdaysParse,ft),ee!==-1||(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1)?ee:(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1?ee:null)):k==="ddd"?(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1||(ee=Pi.call(this._weekdaysParse,ft),ee!==-1)?ee:(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1?ee:null)):(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1||(ee=Pi.call(this._weekdaysParse,ft),ee!==-1)?ee:(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1?ee:null))}function Zu(T,k,M){var W,ee,be;if(this._weekdaysParseExact)return Xu.call(this,T,k,M);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),W=0;W<7;W++){if(ee=A([2e3,1]).day(W),M&&!this._fullWeekdaysParse[W]&&(this._fullWeekdaysParse[W]=new RegExp("^"+this.weekdays(ee,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[W]=new RegExp("^"+this.weekdaysShort(ee,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[W]=new RegExp("^"+this.weekdaysMin(ee,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[W]||(be="^"+this.weekdays(ee,"")+"|^"+this.weekdaysShort(ee,"")+"|^"+this.weekdaysMin(ee,""),this._weekdaysParse[W]=new RegExp(be.replace(".",""),"i")),M&&k==="dddd"&&this._fullWeekdaysParse[W].test(T))return W;if(M&&k==="ddd"&&this._shortWeekdaysParse[W].test(T))return W;if(M&&k==="dd"&&this._minWeekdaysParse[W].test(T))return W;if(!M&&this._weekdaysParse[W].test(T))return W}}function ys(T){if(!this.isValid())return T!=null?this:NaN;var k=Ku(this,"Day");return T!=null?(T=a0(T,this.localeData()),this.add(T-k,"d")):k}function dn(T){if(!this.isValid())return T!=null?this:NaN;var k=(this.day()+7-this.localeData()._week.dow)%7;return T==null?k:this.add(T-k,"d")}function wu(T){if(!this.isValid())return T!=null?this:NaN;if(T!=null){var k=ha(T,this.localeData());return this.day(this.day()%7?k:k-7)}else return this.day()||7}function Xd(T){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||pc.call(this),T?this._weekdaysStrictRegex:this._weekdaysRegex):(r(this,"_weekdaysRegex")||(this._weekdaysRegex=qo),this._weekdaysStrictRegex&&T?this._weekdaysStrictRegex:this._weekdaysRegex)}function Is(T){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||pc.call(this),T?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(r(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=ef),this._weekdaysShortStrictRegex&&T?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function fc(T){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||pc.call(this),T?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(r(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=ya),this._weekdaysMinStrictRegex&&T?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function pc(){function T(Vo,Ra){return Ra.length-Vo.length}var k=[],M=[],W=[],ee=[],be,ft,ir,rn,ti;for(be=0;be<7;be++)ft=A([2e3,1]).day(be),ir=vi(this.weekdaysMin(ft,"")),rn=vi(this.weekdaysShort(ft,"")),ti=vi(this.weekdays(ft,"")),k.push(ir),M.push(rn),W.push(ti),ee.push(ir),ee.push(rn),ee.push(ti);k.sort(T),M.sort(T),W.sort(T),ee.sort(T),this._weekdaysRegex=new RegExp("^("+ee.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+W.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+M.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+k.join("|")+")","i")}function ga(){return this.hours()%12||12}function tf(){return this.hours()||24}at("H",["HH",2],0,"hour"),at("h",["hh",2],0,ga),at("k",["kk",2],0,tf),at("hmm",0,0,function(){return""+ga.apply(this)+we(this.minutes(),2)}),at("hmmss",0,0,function(){return""+ga.apply(this)+we(this.minutes(),2)+we(this.seconds(),2)}),at("Hmm",0,0,function(){return""+this.hours()+we(this.minutes(),2)}),at("Hmmss",0,0,function(){return""+this.hours()+we(this.minutes(),2)+we(this.seconds(),2)});function mo(T,k){at(T,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),k)})}mo("a",!0),mo("A",!1);function rf(T,k){return k._meridiemParse}bt("a",rf),bt("A",rf),bt("H",pn,Tn),bt("h",pn,dr),bt("k",pn,dr),bt("HH",pn,Lr),bt("hh",pn,Lr),bt("kk",pn,Lr),bt("hmm",wo),bt("hmmss",Bo),bt("Hmm",wo),bt("Hmmss",Bo),En(["H","HH"],cs),En(["k","kk"],function(T,k,M){var W=Kr(T);k[cs]=W===24?0:W}),En(["a","A"],function(T,k,M){M._isPm=M._locale.isPM(T),M._meridiem=T}),En(["h","hh"],function(T,k,M){k[cs]=Kr(T),v(M).bigHour=!0}),En("hmm",function(T,k,M){var W=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W)),v(M).bigHour=!0}),En("hmmss",function(T,k,M){var W=T.length-4,ee=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W,2)),k[zs]=Kr(T.substr(ee)),v(M).bigHour=!0}),En("Hmm",function(T,k,M){var W=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W))}),En("Hmmss",function(T,k,M){var W=T.length-4,ee=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W,2)),k[zs]=Kr(T.substr(ee))});function Zd(T){return(T+"").toLowerCase().charAt(0)==="p"}var Ca=/[ap]\.?m?\.?/i,Qo=zr("Hours",!0);function nf(T,k,M){return T>11?M?"pm":"PM":M?"am":"AM"}var kl={calendar:Ke,longDateFormat:$t,invalidDate:ar,ordinal:P,dayOfMonthOrdinalParse:Xt,relativeTime:Bn,months:po,monthsShort:da,week:cc,weekdays:Kd,weekdaysMin:Qc,weekdaysShort:Jd,meridiemParse:Ca},ns={},js={},bu;function $f(T,k){var M,W=Math.min(T.length,k.length);for(M=0;M<W;M+=1)if(T[M]!==k[M])return M;return W}function Xa(T){return T&&T.toLowerCase().replace("_","-")}function Il(T){for(var k=0,M,W,ee,be;k<T.length;){for(be=Xa(T[k]).split("-"),M=be.length,W=Xa(T[k+1]),W=W?W.split("-"):null;M>0;){if(ee=Q(be.slice(0,M).join("-")),ee)return ee;if(W&&W.length>=M&&$f(be,W)>=M-1)break;M--}k++}return bu}function ie(T){return!!(T&&T.match("^[^/\\\\]*$"))}function Q(T){var k=null,M;if(ns[T]===void 0&&typeof u2<"u"&&u2&&u2.exports&&ie(T))try{k=bu._abbr,M=require,M("./locale/"+T),ne(k)}catch{ns[T]=null}return ns[T]}function ne(T,k){var M;return T&&(p(k)?M=Ge(T):M=ke(T,k),M?bu=M:typeof console<"u"&&console.warn&&console.warn("Locale "+T+" not found. Did you forget to load it?")),bu._abbr}function ke(T,k){if(k!==null){var M,W=kl;if(k.abbr=T,ns[T]!=null)Ct("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."),W=ns[T]._config;else if(k.parentLocale!=null)if(ns[k.parentLocale]!=null)W=ns[k.parentLocale]._config;else if(M=Q(k.parentLocale),M!=null)W=M._config;else return js[k.parentLocale]||(js[k.parentLocale]=[]),js[k.parentLocale].push({name:T,config:k}),null;return ns[T]=new oe(qe(W,k)),js[T]&&js[T].forEach(function(ee){ke(ee.name,ee.config)}),ne(T),ns[T]}else return delete ns[T],null}function Ze(T,k){if(k!=null){var M,W,ee=kl;ns[T]!=null&&ns[T].parentLocale!=null?ns[T].set(qe(ns[T]._config,k)):(W=Q(T),W!=null&&(ee=W._config),k=qe(ee,k),W==null&&(k.abbr=T),M=new oe(k),M.parentLocale=ns[T],ns[T]=M),ne(T)}else ns[T]!=null&&(ns[T].parentLocale!=null?(ns[T]=ns[T].parentLocale,T===ne()&&ne(T)):ns[T]!=null&&delete ns[T]);return ns[T]}function Ge(T){var k;if(T&&T._locale&&T._locale._abbr&&(T=T._locale._abbr),!T)return bu;if(!o(T)){if(k=Q(T),k)return k;T=[T]}return Il(T)}function lt(){return Ae(ns)}function pt(T){var k,M=T._a;return M&&v(T).overflow===-2&&(k=M[co]<0||M[co]>11?co:M[Ws]<1||M[Ws]>ks(M[Zt],M[co])?Ws:M[cs]<0||M[cs]>24||M[cs]===24&&(M[fo]!==0||M[zs]!==0||M[Ts]!==0)?cs:M[fo]<0||M[fo]>59?fo:M[zs]<0||M[zs]>59?zs:M[Ts]<0||M[Ts]>999?Ts:-1,v(T)._overflowDayOfYear&&(k<Zt||k>Ws)&&(k=Ws),v(T)._overflowWeeks&&k===-1&&(k=Pl),v(T)._overflowWeekday&&k===-1&&(k=za),v(T).overflow=k),T}var It=/^\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)?)?$/,hr=/^\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)?/,Wn=[["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]],wn=[["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/]],va=/^\/?Date\((-?\d+)/i,dc=/^(?:(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}))$/,ea={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 yo(T){var k,M,W=T._i,ee=It.exec(W)||hr.exec(W),be,ft,ir,rn,ti=Wn.length,Vo=wn.length;if(ee){for(v(T).iso=!0,k=0,M=ti;k<M;k++)if(Wn[k][1].exec(ee[1])){ft=Wn[k][0],be=Wn[k][2]!==!1;break}if(ft==null){T._isValid=!1;return}if(ee[3]){for(k=0,M=Vo;k<M;k++)if(wn[k][1].exec(ee[3])){ir=(ee[2]||" ")+wn[k][0];break}if(ir==null){T._isValid=!1;return}}if(!be&&ir!=null){T._isValid=!1;return}if(ee[4])if(vn.exec(ee[4]))rn="Z";else{T._isValid=!1;return}T._f=ft+(ir||"")+(rn||""),Po(T)}else T._isValid=!1}function Zn(T,k,M,W,ee,be){var ft=[Jr(T),da.indexOf(k),parseInt(M,10),parseInt(W,10),parseInt(ee,10)];return be&&ft.push(parseInt(be,10)),ft}function Jr(T){var k=parseInt(T,10);return k<=49?2e3+k:k<=999?1900+k:k}function Cr(T){return T.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function Gr(T,k,M){if(T){var W=Jd.indexOf(T),ee=new Date(k[0],k[1],k[2]).getDay();if(W!==ee)return v(M).weekdayMismatch=!0,M._isValid=!1,!1}return!0}function zn(T,k,M){if(T)return ea[T];if(k)return 0;var W=parseInt(M,10),ee=W%100,be=(W-ee)/100;return be*60+ee}function _i(T){var k=dc.exec(Cr(T._i)),M;if(k){if(M=Zn(k[4],k[3],k[2],k[5],k[6],k[7]),!Gr(k[1],M,T))return;T._a=M,T._tzm=zn(k[8],k[9],k[10]),T._d=qf.apply(null,T._a),T._d.setUTCMinutes(T._d.getUTCMinutes()-T._tzm),v(T).rfc2822=!0}else T._isValid=!1}function Os(T){var k=va.exec(T._i);if(k!==null){T._d=new Date(+k[1]);return}if(yo(T),T._isValid===!1)delete T._isValid;else return;if(_i(T),T._isValid===!1)delete T._isValid;else return;T._strict?T._isValid=!1:e.createFromInputFallback(T)}e.createFromInputFallback=tt("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(T){T._d=new Date(T._i+(T._useUTC?" UTC":""))});function no(T,k,M){return T!=null?T:k!=null?k:M}function Qu(T){var k=new Date(e.now());return T._useUTC?[k.getUTCFullYear(),k.getUTCMonth(),k.getUTCDate()]:[k.getFullYear(),k.getMonth(),k.getDate()]}function qs(T){var k,M,W=[],ee,be,ft;if(!T._d){for(ee=Qu(T),T._w&&T._a[Ws]==null&&T._a[co]==null&&xa(T),T._dayOfYear!=null&&(ft=no(T._a[Zt],ee[Zt]),(T._dayOfYear>pa(ft)||T._dayOfYear===0)&&(v(T)._overflowDayOfYear=!0),M=qf(ft,0,T._dayOfYear),T._a[co]=M.getUTCMonth(),T._a[Ws]=M.getUTCDate()),k=0;k<3&&T._a[k]==null;++k)T._a[k]=W[k]=ee[k];for(;k<7;k++)T._a[k]=W[k]=T._a[k]==null?k===2?1:0:T._a[k];T._a[cs]===24&&T._a[fo]===0&&T._a[zs]===0&&T._a[Ts]===0&&(T._nextDay=!0,T._a[cs]=0),T._d=(T._useUTC?qf:Gd).apply(null,W),be=T._useUTC?T._d.getUTCDay():T._d.getDay(),T._tzm!=null&&T._d.setUTCMinutes(T._d.getUTCMinutes()-T._tzm),T._nextDay&&(T._a[cs]=24),T._w&&typeof T._w.d<"u"&&T._w.d!==be&&(v(T).weekdayMismatch=!0)}}function xa(T){var k,M,W,ee,be,ft,ir,rn,ti;k=T._w,k.GG!=null||k.W!=null||k.E!=null?(be=1,ft=4,M=no(k.GG,T._a[Zt],Kt(hn(),1,4).year),W=no(k.W,1),ee=no(k.E,1),(ee<1||ee>7)&&(rn=!0)):(be=T._locale._week.dow,ft=T._locale._week.doy,ti=Kt(hn(),be,ft),M=no(k.gg,T._a[Zt],ti.year),W=no(k.w,ti.week),k.d!=null?(ee=k.d,(ee<0||ee>6)&&(rn=!0)):k.e!=null?(ee=k.e+be,(k.e<0||k.e>6)&&(rn=!0)):ee=be),W<1||W>Di(M,be,ft)?v(T)._overflowWeeks=!0:rn!=null?v(T)._overflowWeekday=!0:(ir=Vp(M,W,ee,be,ft),T._a[Zt]=ir.year,T._dayOfYear=ir.dayOfYear)}e.ISO_8601=function(){},e.RFC_2822=function(){};function Po(T){if(T._f===e.ISO_8601){yo(T);return}if(T._f===e.RFC_2822){_i(T);return}T._a=[],v(T).empty=!0;var k=""+T._i,M,W,ee,be,ft,ir=k.length,rn=0,ti,Vo;for(ee=st(T._f,T._locale).match(Oe)||[],Vo=ee.length,M=0;M<Vo;M++)be=ee[M],W=(k.match(gi(be,T))||[])[0],W&&(ft=k.substr(0,k.indexOf(W)),ft.length>0&&v(T).unusedInput.push(ft),k=k.slice(k.indexOf(W)+W.length),rn+=W.length),er[be]?(W?v(T).empty=!1:v(T).unusedTokens.push(be),Su(be,W,T)):T._strict&&!W&&v(T).unusedTokens.push(be);v(T).charsLeftOver=ir-rn,k.length>0&&v(T).unusedInput.push(k),T._a[cs]<=12&&v(T).bigHour===!0&&T._a[cs]>0&&(v(T).bigHour=void 0),v(T).parsedDateParts=T._a.slice(0),v(T).meridiem=T._meridiem,T._a[cs]=hc(T._locale,T._a[cs],T._meridiem),ti=v(T).era,ti!==null&&(T._a[Zt]=T._locale.erasConvertYear(ti,T._a[Zt])),qs(T),pt(T)}function hc(T,k,M){var W;return M==null?k:T.meridiemHour!=null?T.meridiemHour(k,M):(T.isPM!=null&&(W=T.isPM(M),W&&k<12&&(k+=12),!W&&k===12&&(k=0)),k)}function sf(T){var k,M,W,ee,be,ft,ir=!1,rn=T._f.length;if(rn===0){v(T).invalidFormat=!0,T._d=new Date(NaN);return}for(ee=0;ee<rn;ee++)be=0,ft=!1,k=de({},T),T._useUTC!=null&&(k._useUTC=T._useUTC),k._f=T._f[ee],Po(k),U(k)&&(ft=!0),be+=v(k).charsLeftOver,be+=v(k).unusedTokens.length*10,v(k).score=be,ir?be<W&&(W=be,M=k):(W==null||be<W||ft)&&(W=be,M=k,ft&&(ir=!0));C(T,M||k)}function Pu(T){if(!T._d){var k=ze(T._i),M=k.day===void 0?k.date:k.day;T._a=S([k.year,k.month,M,k.hour,k.minute,k.second,k.millisecond],function(W){return W&&parseInt(W,10)}),qs(T)}}function of(T){var k=new ge(pt(Do(T)));return k._nextDay&&(k.add(1,"d"),k._nextDay=void 0),k}function Do(T){var k=T._i,M=T._f;return T._locale=T._locale||Ge(T._l),k===null||M===void 0&&k===""?$({nullInput:!0}):(typeof k=="string"&&(T._i=k=T._locale.preparse(k)),Fe(k)?new ge(pt(k)):(m(k)?T._d=k:o(M)?sf(T):M?Po(T):Ci(T),U(T)||(T._d=null),T))}function Ci(T){var k=T._i;p(k)?T._d=new Date(e.now()):m(k)?T._d=new Date(k.valueOf()):typeof k=="string"?Os(T):o(k)?(T._a=S(k.slice(0),function(M){return parseInt(M,10)}),qs(T)):u(k)?Pu(T):y(k)?T._d=new Date(k):e.createFromInputFallback(T)}function Qd(T,k,M,W,ee){var be={};return(k===!0||k===!1)&&(W=k,k=void 0),(M===!0||M===!1)&&(W=M,M=void 0),(u(T)&&f(T)||o(T)&&T.length===0)&&(T=void 0),be._isAMomentObject=!0,be._useUTC=be._isUTC=ee,be._l=M,be._i=T,be._f=k,be._strict=W,of(be)}function hn(T,k,M,W){return Qd(T,k,M,W,!1)}var eh=tt("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var T=hn.apply(null,arguments);return this.isValid()&&T.isValid()?T<this?this:T:$()}),Co=tt("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var T=hn.apply(null,arguments);return this.isValid()&&T.isValid()?T>this?this:T:$()});function Jn(T,k){var M,W;if(k.length===1&&o(k[0])&&(k=k[0]),!k.length)return hn();for(M=k[0],W=1;W<k.length;++W)(!k[W].isValid()||k[W][T](M))&&(M=k[W]);return M}function Aa(){var T=[].slice.call(arguments,0);return Jn("isBefore",T)}function zp(){var T=[].slice.call(arguments,0);return Jn("isAfter",T)}var Hf=function(){return Date.now?Date.now():+new Date},Vf=["year","quarter","month","week","day","hour","minute","second","millisecond"];function vg(T){var k,M=!1,W,ee=Vf.length;for(k in T)if(r(T,k)&&!(Pi.call(Vf,k)!==-1&&(T[k]==null||!isNaN(T[k]))))return!1;for(W=0;W<ee;++W)if(T[Vf[W]]){if(M)return!1;parseFloat(T[Vf[W]])!==Kr(T[Vf[W]])&&(M=!0)}return!0}function Gp(){return this._isValid}function u0(){return io(NaN)}function el(T){var k=ze(T),M=k.year||0,W=k.quarter||0,ee=k.month||0,be=k.week||k.isoWeek||0,ft=k.day||0,ir=k.hour||0,rn=k.minute||0,ti=k.second||0,Vo=k.millisecond||0;this._isValid=vg(k),this._milliseconds=+Vo+ti*1e3+rn*6e4+ir*1e3*60*60,this._days=+ft+be*7,this._months=+ee+W*3+M*12,this._data={},this._locale=Ge(),this._bubble()}function Sa(T){return T instanceof el}function Ol(T){return T<0?Math.round(-1*T)*-1:Math.round(T)}function ka(T,k,M){var W=Math.min(T.length,k.length),ee=Math.abs(T.length-k.length),be=0,ft;for(ft=0;ft<W;ft++)(M&&T[ft]!==k[ft]||!M&&Kr(T[ft])!==Kr(k[ft]))&&be++;return be+ee}function af(T,k){at(T,0,0,function(){var M=this.utcOffset(),W="+";return M<0&&(M=-M,W="-"),W+we(~~(M/60),2)+k+we(~~M%60,2)})}af("Z",":"),af("ZZ",""),bt("Z",vt),bt("ZZ",vt),En(["Z","ZZ"],function(T,k,M){M._useUTC=!0,M._tzm=go(vt,T)});var Ns=/([\+\-]|\d\d)/gi;function go(T,k){var M=(k||"").match(T),W,ee,be;return M===null?null:(W=M[M.length-1]||[],ee=(W+"").match(Ns)||["-",0,0],be=+(ee[1]*60)+Kr(ee[2]),be===0?0:ee[0]==="+"?be:-be)}function Us(T,k){var M,W;return k._isUTC?(M=k.clone(),W=(Fe(T)||m(T)?T.valueOf():hn(T).valueOf())-M.valueOf(),M._d.setTime(M._d.valueOf()+W),e.updateOffset(M,!1),M):hn(T).local()}function tl(T){return-Math.round(T._d.getTimezoneOffset())}e.updateOffset=function(){};function Wf(T,k,M){var W=this._offset||0,ee;if(!this.isValid())return T!=null?this:NaN;if(T!=null){if(typeof T=="string"){if(T=go(vt,T),T===null)return this}else Math.abs(T)<16&&!M&&(T=T*60);return!this._isUTC&&k&&(ee=tl(this)),this._offset=T,this._isUTC=!0,ee!=null&&this.add(ee,"m"),W!==T&&(!k||this._changeInProgress?ra(this,io(T-W,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this}else return this._isUTC?W:tl(this)}function fi(T,k){return T!=null?(typeof T!="string"&&(T=-T),this.utcOffset(T,k),this):-this.utcOffset()}function l0(T){return this.utcOffset(0,T)}function c0(T){return this._isUTC&&(this.utcOffset(0,T),this._isUTC=!1,T&&this.subtract(tl(this),"m")),this}function Uo(){if(this._tzm!=null)this.utcOffset(this._tzm,!1,!0);else if(typeof this._i=="string"){var T=go(wt,this._i);T!=null?this.utcOffset(T):this.utcOffset(0,!0)}return this}function ta(T){return this.isValid()?(T=T?hn(T).utcOffset():0,(this.utcOffset()-T)%60===0):!1}function Ia(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function mc(){if(!p(this._isDSTShifted))return this._isDSTShifted;var T={},k;return de(T,this),T=Do(T),T._a?(k=T._isUTC?A(T._a):hn(T._a),this._isDSTShifted=this.isValid()&&ka(T._a,k.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function yc(){return this.isValid()?!this._isUTC:!1}function gc(){return this.isValid()?this._isUTC:!1}function pi(){return this.isValid()?this._isUTC&&this._offset===0:!1}var Du=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,vc=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function io(T,k){var M=T,W=null,ee,be,ft;return Sa(T)?M={ms:T._milliseconds,d:T._days,M:T._months}:y(T)||!isNaN(+T)?(M={},k?M[k]=+T:M.milliseconds=+T):(W=Du.exec(T))?(ee=W[1]==="-"?-1:1,M={y:0,d:Kr(W[Ws])*ee,h:Kr(W[cs])*ee,m:Kr(W[fo])*ee,s:Kr(W[zs])*ee,ms:Kr(Ol(W[Ts]*1e3))*ee}):(W=vc.exec(T))?(ee=W[1]==="-"?-1:1,M={y:Nl(W[2],ee),M:Nl(W[3],ee),w:Nl(W[4],ee),d:Nl(W[5],ee),h:Nl(W[6],ee),m:Nl(W[7],ee),s:Nl(W[8],ee)}):M==null?M={}:typeof M=="object"&&("from"in M||"to"in M)&&(ft=f0(hn(M.from),hn(M.to)),M={},M.ms=ft.milliseconds,M.M=ft.months),be=new el(M),Sa(T)&&r(T,"_locale")&&(be._locale=T._locale),Sa(T)&&r(T,"_isValid")&&(be._isValid=T._isValid),be}io.fn=el.prototype,io.invalid=u0;function Nl(T,k){var M=T&&parseFloat(T.replace(",","."));return(isNaN(M)?0:M)*k}function Cu(T,k){var M={};return M.months=k.month()-T.month()+(k.year()-T.year())*12,T.clone().add(M.months,"M").isAfter(k)&&--M.months,M.milliseconds=+k-+T.clone().add(M.months,"M"),M}function f0(T,k){var M;return T.isValid()&&k.isValid()?(k=Us(k,T),T.isBefore(k)?M=Cu(T,k):(M=Cu(k,T),M.milliseconds=-M.milliseconds,M.months=-M.months),M):{milliseconds:0,months:0}}function uf(T,k){return function(M,W){var ee,be;return W!==null&&!isNaN(+W)&&(Ct(k,"moment()."+k+"(period, number) is deprecated. Please use moment()."+k+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),be=M,M=W,W=be),ee=io(M,W),ra(this,ee,T),this}}function ra(T,k,M,W){var ee=k._milliseconds,be=Ol(k._days),ft=Ol(k._months);T.isValid()&&(W=W==null?!0:W,ft&&At(T,Ku(T,"Month")+ft*M),be&&Dl(T,"Date",Ku(T,"Date")+be*M),ee&&T._d.setTime(T._d.valueOf()+ee*M),W&&e.updateOffset(T,be||ft))}var Gn=uf(1,"add"),Yp=uf(-1,"subtract");function th(T){return typeof T=="string"||T instanceof String}function rh(T){return Fe(T)||m(T)||th(T)||y(T)||Xm(T)||Jm(T)||T===null||T===void 0}function Jm(T){var k=u(T)&&!f(T),M=!1,W=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],ee,be,ft=W.length;for(ee=0;ee<ft;ee+=1)be=W[ee],M=M||r(T,be);return k&&M}function Xm(T){var k=o(T),M=!1;return k&&(M=T.filter(function(W){return!y(W)&&th(T)}).length===0),k&&M}function xg(T){var k=u(T)&&!f(T),M=!1,W=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"],ee,be;for(ee=0;ee<W.length;ee+=1)be=W[ee],M=M||r(T,be);return k&&M}function lv(T,k){var M=T.diff(k,"days",!0);return M<-6?"sameElse":M<-1?"lastWeek":M<0?"lastDay":M<1?"sameDay":M<2?"nextDay":M<7?"nextWeek":"sameElse"}function p0(T,k){arguments.length===1&&(arguments[0]?rh(arguments[0])?(T=arguments[0],k=void 0):xg(arguments[0])&&(k=arguments[0],T=void 0):(T=void 0,k=void 0));var M=T||hn(),W=Us(M,this).startOf("day"),ee=e.calendarFormat(this,W)||"sameElse",be=k&&(gt(k[ee])?k[ee].call(this,M):k[ee]);return this.format(be||this.localeData().calendar(ee,this,hn(M)))}function nh(){return new ge(this)}function _g(T,k){var M=Fe(T)?T:hn(T);return this.isValid()&&M.isValid()?(k=me(k)||"millisecond",k==="millisecond"?this.valueOf()>M.valueOf():M.valueOf()<this.clone().startOf(k).valueOf()):!1}function Au(T,k){var M=Fe(T)?T:hn(T);return this.isValid()&&M.isValid()?(k=me(k)||"millisecond",k==="millisecond"?this.valueOf()<M.valueOf():this.clone().endOf(k).valueOf()<M.valueOf()):!1}function xc(T,k,M,W){var ee=Fe(T)?T:hn(T),be=Fe(k)?k:hn(k);return this.isValid()&&ee.isValid()&&be.isValid()?(W=W||"()",(W[0]==="("?this.isAfter(ee,M):!this.isBefore(ee,M))&&(W[1]===")"?this.isBefore(be,M):!this.isAfter(be,M))):!1}function na(T,k){var M=Fe(T)?T:hn(T),W;return this.isValid()&&M.isValid()?(k=me(k)||"millisecond",k==="millisecond"?this.valueOf()===M.valueOf():(W=M.valueOf(),this.clone().startOf(k).valueOf()<=W&&W<=this.clone().endOf(k).valueOf())):!1}function Za(T,k){return this.isSame(T,k)||this.isAfter(T,k)}function ia(T,k){return this.isSame(T,k)||this.isBefore(T,k)}function lf(T,k,M){var W,ee,be;if(!this.isValid())return NaN;if(W=Us(T,this),!W.isValid())return NaN;switch(ee=(W.utcOffset()-this.utcOffset())*6e4,k=me(k),k){case"year":be=Qa(this,W)/12;break;case"month":be=Qa(this,W);break;case"quarter":be=Qa(this,W)/3;break;case"second":be=(this-W)/1e3;break;case"minute":be=(this-W)/6e4;break;case"hour":be=(this-W)/36e5;break;case"day":be=(this-W-ee)/864e5;break;case"week":be=(this-W-ee)/6048e5;break;default:be=this-W}return M?be:ci(be)}function Qa(T,k){if(T.date()<k.date())return-Qa(k,T);var M=(k.year()-T.year())*12+(k.month()-T.month()),W=T.clone().add(M,"months"),ee,be;return k-W<0?(ee=T.clone().add(M-1,"months"),be=(k-W)/(W-ee)):(ee=T.clone().add(M+1,"months"),be=(k-W)/(ee-W)),-(M+be)||0}e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",e.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";function Fl(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function zf(T){if(!this.isValid())return null;var k=T!==!0,M=k?this.clone().utc():this;return M.year()<0||M.year()>9999?Qe(M,k?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):gt(Date.prototype.toISOString)?k?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",Qe(M,"Z")):Qe(M,k?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function Gf(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var T="moment",k="",M,W,ee,be;return this.isLocal()||(T=this.utcOffset()===0?"moment.utc":"moment.parseZone",k="Z"),M="["+T+'("]',W=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",ee="-MM-DD[T]HH:mm:ss.SSS",be=k+'[")]',this.format(M+W+ee+be)}function Kp(T){T||(T=this.isUtc()?e.defaultFormatUtc:e.defaultFormat);var k=Qe(this,T);return this.localeData().postformat(k)}function Zm(T,k){return this.isValid()&&(Fe(T)&&T.isValid()||hn(T).isValid())?io({to:this,from:T}).locale(this.locale()).humanize(!k):this.localeData().invalidDate()}function d0(T){return this.from(hn(),T)}function Yf(T,k){return this.isValid()&&(Fe(T)&&T.isValid()||hn(T).isValid())?io({from:this,to:T}).locale(this.locale()).humanize(!k):this.localeData().invalidDate()}function _c(T){return this.to(hn(),T)}function h0(T){var k;return T===void 0?this._locale._abbr:(k=Ge(T),k!=null&&(this._locale=k),this)}var eu=tt("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(T){return T===void 0?this.localeData():this.locale(T)});function m0(){return this._locale}var Rl=1e3,rl=60*Rl,Sc=60*rl,Qm=(365*400+97)*24*Sc;function di(T,k){return(T%k+k)%k}function vo(T,k,M){return T<100&&T>=0?new Date(T+400,k,M)-Qm:new Date(T,k,M).valueOf()}function tu(T,k,M){return T<100&&T>=0?Date.UTC(T+400,k,M)-Qm:Date.UTC(T,k,M)}function ku(T){var k,M;if(T=me(T),T===void 0||T==="millisecond"||!this.isValid())return this;switch(M=this._isUTC?tu:vo,T){case"year":k=M(this.year(),0,1);break;case"quarter":k=M(this.year(),this.month()-this.month()%3,1);break;case"month":k=M(this.year(),this.month(),1);break;case"week":k=M(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":k=M(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":k=M(this.year(),this.month(),this.date());break;case"hour":k=this._d.valueOf(),k-=di(k+(this._isUTC?0:this.utcOffset()*rl),Sc);break;case"minute":k=this._d.valueOf(),k-=di(k,rl);break;case"second":k=this._d.valueOf(),k-=di(k,Rl);break}return this._d.setTime(k),e.updateOffset(this,!0),this}function Ll(T){var k,M;if(T=me(T),T===void 0||T==="millisecond"||!this.isValid())return this;switch(M=this._isUTC?tu:vo,T){case"year":k=M(this.year()+1,0,1)-1;break;case"quarter":k=M(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":k=M(this.year(),this.month()+1,1)-1;break;case"week":k=M(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":k=M(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":k=M(this.year(),this.month(),this.date()+1)-1;break;case"hour":k=this._d.valueOf(),k+=Sc-di(k+(this._isUTC?0:this.utcOffset()*rl),Sc)-1;break;case"minute":k=this._d.valueOf(),k+=rl-di(k,rl)-1;break;case"second":k=this._d.valueOf(),k+=Rl-di(k,Rl)-1;break}return this._d.setTime(k),e.updateOffset(this,!0),this}function Oa(){return this._d.valueOf()-(this._offset||0)*6e4}function cf(){return Math.floor(this.valueOf()/1e3)}function Ml(){return new Date(this.valueOf())}function Sg(){var T=this;return[T.year(),T.month(),T.date(),T.hour(),T.minute(),T.second(),T.millisecond()]}function y0(){var T=this;return{years:T.year(),months:T.month(),date:T.date(),hours:T.hours(),minutes:T.minutes(),seconds:T.seconds(),milliseconds:T.milliseconds()}}function Kf(){return this.isValid()?this.toISOString():null}function Jp(){return U(this)}function cv(){return C({},v(this))}function ey(){return v(this).overflow}function ih(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}at("N",0,0,"eraAbbr"),at("NN",0,0,"eraAbbr"),at("NNN",0,0,"eraAbbr"),at("NNNN",0,0,"eraName"),at("NNNNN",0,0,"eraNarrow"),at("y",["y",1],"yo","eraYear"),at("y",["yy",2],0,"eraYear"),at("y",["yyy",3],0,"eraYear"),at("y",["yyyy",4],0,"eraYear"),bt("N",Zp),bt("NN",Zp),bt("NNN",Zp),bt("NNNN",oh),bt("NNNNN",ah),En(["N","NN","NNN","NNNN","NNNNN"],function(T,k,M,W){var ee=M._locale.erasParse(T,W,M._strict);ee?v(M).era=ee:v(M).invalidEra=T}),bt("y",Da),bt("yy",Da),bt("yyy",Da),bt("yyyy",Da),bt("yo",v0),En(["y","yy","yyy","yyyy"],Zt),En(["yo"],function(T,k,M,W){var ee;M._locale._eraYearOrdinalRegex&&(ee=T.match(M._locale._eraYearOrdinalRegex)),M._locale.eraYearOrdinalParse?k[Zt]=M._locale.eraYearOrdinalParse(T,ee):k[Zt]=parseInt(T,10)});function ty(T,k){var M,W,ee,be=this._eras||Ge("en")._eras;for(M=0,W=be.length;M<W;++M){switch(typeof be[M].since){case"string":ee=e(be[M].since).startOf("day"),be[M].since=ee.valueOf();break}switch(typeof be[M].until){case"undefined":be[M].until=1/0;break;case"string":ee=e(be[M].until).startOf("day").valueOf(),be[M].until=ee.valueOf();break}}return be}function ry(T,k,M){var W,ee,be=this.eras(),ft,ir,rn;for(T=T.toUpperCase(),W=0,ee=be.length;W<ee;++W)if(ft=be[W].name.toUpperCase(),ir=be[W].abbr.toUpperCase(),rn=be[W].narrow.toUpperCase(),M)switch(k){case"N":case"NN":case"NNN":if(ir===T)return be[W];break;case"NNNN":if(ft===T)return be[W];break;case"NNNNN":if(rn===T)return be[W];break}else if([ft,ir,rn].indexOf(T)>=0)return be[W]}function g0(T,k){var M=T.since<=T.until?1:-1;return k===void 0?e(T.since).year():e(T.since).year()+(k-T.offset)*M}function ff(){var T,k,M,W=this.localeData().eras();for(T=0,k=W.length;T<k;++T)if(M=this.clone().startOf("day").valueOf(),W[T].since<=M&&M<=W[T].until||W[T].until<=M&&M<=W[T].since)return W[T].name;return""}function ny(){var T,k,M,W=this.localeData().eras();for(T=0,k=W.length;T<k;++T)if(M=this.clone().startOf("day").valueOf(),W[T].since<=M&&M<=W[T].until||W[T].until<=M&&M<=W[T].since)return W[T].narrow;return""}function Tg(){var T,k,M,W=this.localeData().eras();for(T=0,k=W.length;T<k;++T)if(M=this.clone().startOf("day").valueOf(),W[T].since<=M&&M<=W[T].until||W[T].until<=M&&M<=W[T].since)return W[T].abbr;return""}function Xp(){var T,k,M,W,ee=this.localeData().eras();for(T=0,k=ee.length;T<k;++T)if(M=ee[T].since<=ee[T].until?1:-1,W=this.clone().startOf("day").valueOf(),ee[T].since<=W&&W<=ee[T].until||ee[T].until<=W&&W<=ee[T].since)return(this.year()-e(ee[T].since).year())*M+ee[T].offset;return this.year()}function sa(T){return r(this,"_erasNameRegex")||Xf.call(this),T?this._erasNameRegex:this._erasRegex}function sh(T){return r(this,"_erasAbbrRegex")||Xf.call(this),T?this._erasAbbrRegex:this._erasRegex}function Jf(T){return r(this,"_erasNarrowRegex")||Xf.call(this),T?this._erasNarrowRegex:this._erasRegex}function Zp(T,k){return k.erasAbbrRegex(T)}function oh(T,k){return k.erasNameRegex(T)}function ah(T,k){return k.erasNarrowRegex(T)}function v0(T,k){return k._eraYearOrdinalRegex||Da}function Xf(){var T=[],k=[],M=[],W=[],ee,be,ft,ir,rn,ti=this.eras();for(ee=0,be=ti.length;ee<be;++ee)ft=vi(ti[ee].name),ir=vi(ti[ee].abbr),rn=vi(ti[ee].narrow),k.push(ft),T.push(ir),M.push(rn),W.push(ft),W.push(ir),W.push(rn);this._erasRegex=new RegExp("^("+W.join("|")+")","i"),this._erasNameRegex=new RegExp("^("+k.join("|")+")","i"),this._erasAbbrRegex=new RegExp("^("+T.join("|")+")","i"),this._erasNarrowRegex=new RegExp("^("+M.join("|")+")","i")}at(0,["gg",2],0,function(){return this.weekYear()%100}),at(0,["GG",2],0,function(){return this.isoWeekYear()%100});function Zf(T,k){at(0,[T,T.length],0,k)}Zf("gggg","weekYear"),Zf("ggggg","weekYear"),Zf("GGGG","isoWeekYear"),Zf("GGGGG","isoWeekYear"),bt("G",Xe),bt("g",Xe),bt("GG",pn,Lr),bt("gg",pn,Lr),bt("GGGG",bo,kn),bt("gggg",bo,kn),bt("GGGGG",_u,Vn),bt("ggggg",_u,Vn),rs(["gggg","ggggg","GGGG","GGGGG"],function(T,k,M,W){k[W.substr(0,2)]=Kr(T)}),rs(["gg","GG"],function(T,k,M,W){k[W]=e.parseTwoDigitYear(T)});function Qf(T){return ru.call(this,T,this.week(),this.weekday()+this.localeData()._week.dow,this.localeData()._week.dow,this.localeData()._week.doy)}function iy(T){return ru.call(this,T,this.isoWeek(),this.isoWeekday(),1,4)}function uh(){return Di(this.year(),1,4)}function lh(){return Di(this.isoWeekYear(),1,4)}function Tc(){var T=this.localeData()._week;return Di(this.year(),T.dow,T.doy)}function pf(){var T=this.localeData()._week;return Di(this.weekYear(),T.dow,T.doy)}function ru(T,k,M,W,ee){var be;return T==null?Kt(this,W,ee).year:(be=Di(T,W,ee),k>be&&(k=be),df.call(this,T,k,M,W,ee))}function df(T,k,M,W,ee){var be=Vp(T,k,M,W,ee),ft=qf(be.year,0,be.dayOfYear);return this.year(ft.getUTCFullYear()),this.month(ft.getUTCMonth()),this.date(ft.getUTCDate()),this}at("Q",0,"Qo","quarter"),bt("Q",Rr),En("Q",function(T,k){k[co]=(Kr(T)-1)*3});function x0(T){return T==null?Math.ceil((this.month()+1)/3):this.month((T-1)*3+this.month()%3)}at("D",["DD",2],"Do","date"),bt("D",pn,dr),bt("DD",pn,Lr),bt("Do",function(T,k){return T?k._dayOfMonthOrdinalParse||k._ordinalParse:k._dayOfMonthOrdinalParseLenient}),En(["D","DD"],Ws),En("Do",function(T,k){k[Ws]=Kr(T.match(pn)[0])});var Ec=zr("Date",!0);at("DDD",["DDDD",3],"DDDo","dayOfYear"),bt("DDD",Yi),bt("DDDD",Rn),En(["DDD","DDDD"],function(T,k,M){M._dayOfYear=Kr(T)});function nl(T){var k=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return T==null?k:this.add(T-k,"d")}at("m",["mm",2],0,"minute"),bt("m",pn,Tn),bt("mm",pn,Lr),En(["m","mm"],fo);var _0=zr("Minutes",!1);at("s",["ss",2],0,"second"),bt("s",pn,Tn),bt("ss",pn,Lr),En(["s","ss"],zs);var Qp=zr("Seconds",!1);at("S",0,0,function(){return~~(this.millisecond()/100)}),at(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),at(0,["SSS",3],0,"millisecond"),at(0,["SSSS",4],0,function(){return this.millisecond()*10}),at(0,["SSSSS",5],0,function(){return this.millisecond()*100}),at(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3}),at(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4}),at(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5}),at(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6}),bt("S",Yi,Rr),bt("SS",Yi,Lr),bt("SSS",Yi,Rn);var Iu,S0;for(Iu="SSSS";Iu.length<=9;Iu+="S")bt(Iu,Da);function sy(T,k){k[Ts]=Kr(("0."+T)*1e3)}for(Iu="S";Iu.length<=9;Iu+="S")En(Iu,sy);S0=zr("Milliseconds",!1),at("z",0,0,"zoneAbbr"),at("zz",0,0,"zoneName");function ch(){return this._isUTC?"UTC":""}function fh(){return this._isUTC?"Coordinated Universal Time":""}var Bt=ge.prototype;Bt.add=Gn,Bt.calendar=p0,Bt.clone=nh,Bt.diff=lf,Bt.endOf=Ll,Bt.format=Kp,Bt.from=Zm,Bt.fromNow=d0,Bt.to=Yf,Bt.toNow=_c,Bt.get=Ga,Bt.invalidAt=ey,Bt.isAfter=_g,Bt.isBefore=Au,Bt.isBetween=xc,Bt.isSame=na,Bt.isSameOrAfter=Za,Bt.isSameOrBefore=ia,Bt.isValid=Jp,Bt.lang=eu,Bt.locale=h0,Bt.localeData=m0,Bt.max=Co,Bt.min=eh,Bt.parsingFlags=cv,Bt.set=Ki,Bt.startOf=ku,Bt.subtract=Yp,Bt.toArray=Sg,Bt.toObject=y0,Bt.toDate=Ml,Bt.toISOString=zf,Bt.inspect=Gf,typeof Symbol<"u"&&Symbol.for!=null&&(Bt[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),Bt.toJSON=Kf,Bt.toString=Fl,Bt.unix=cf,Bt.valueOf=Oa,Bt.creationData=ih,Bt.eraName=ff,Bt.eraNarrow=ny,Bt.eraAbbr=Tg,Bt.eraYear=Xp,Bt.year=Tu,Bt.isLeapYear=ac,Bt.weekYear=Qf,Bt.isoWeekYear=iy,Bt.quarter=Bt.quarters=x0,Bt.month=Ya,Bt.daysInMonth=s0,Bt.week=Bt.weeks=o0,Bt.isoWeek=Bt.isoWeeks=Yd,Bt.weeksInYear=Tc,Bt.weeksInWeekYear=pf,Bt.isoWeeksInYear=uh,Bt.isoWeeksInISOWeekYear=lh,Bt.date=Ec,Bt.day=Bt.days=ys,Bt.weekday=dn,Bt.isoWeekday=wu,Bt.dayOfYear=nl,Bt.hour=Bt.hours=Qo,Bt.minute=Bt.minutes=_0,Bt.second=Bt.seconds=Qp,Bt.millisecond=Bt.milliseconds=S0,Bt.utcOffset=Wf,Bt.utc=l0,Bt.local=c0,Bt.parseZone=Uo,Bt.hasAlignedHourOffset=ta,Bt.isDST=Ia,Bt.isLocal=yc,Bt.isUtcOffset=gc,Bt.isUtc=pi,Bt.isUTC=pi,Bt.zoneAbbr=ch,Bt.zoneName=fh,Bt.dates=tt("dates accessor is deprecated. Use date instead.",Ec),Bt.months=tt("months accessor is deprecated. Use month instead",Ya),Bt.years=tt("years accessor is deprecated. Use year instead",Tu),Bt.zone=tt("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",fi),Bt.isDSTShifted=tt("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",mc);function tn(T){return hn(T*1e3)}function $o(){return hn.apply(null,arguments).parseZone()}function Gs(T){return T}var mn=oe.prototype;mn.calendar=Se,mn.longDateFormat=Dr,mn.invalidDate=tr,mn.ordinal=lr,mn.preparse=Gs,mn.postformat=Gs,mn.relativeTime=Pt,mn.pastFuture=xt,mn.set=ct,mn.eras=ty,mn.erasParse=ry,mn.erasConvertYear=g0,mn.erasAbbrRegex=sh,mn.erasNameRegex=sa,mn.erasNarrowRegex=Jf,mn.months=i0,mn.monthsShort=Xc,mn.monthsParse=Zo,mn.monthsRegex=Ui,mn.monthsShortRegex=Zc,mn.week=Wp,mn.firstDayOfYear=Uf,mn.firstDayOfWeek=Ka,mn.weekdays=Al,mn.weekdaysMin=Eu,mn.weekdaysShort=Ja,mn.weekdaysParse=Zu,mn.weekdaysRegex=Xd,mn.weekdaysShortRegex=Is,mn.weekdaysMinRegex=fc,mn.isPM=Zd,mn.meridiem=nf;function Ta(T,k,M,W){var ee=Ge(),be=A().set(W,k);return ee[M](be,T)}function ed(T,k,M){if(y(T)&&(k=T,T=void 0),T=T||"",k!=null)return Ta(T,k,M,"month");var W,ee=[];for(W=0;W<12;W++)ee[W]=Ta(T,W,M,"month");return ee}function Fs(T,k,M,W){typeof T=="boolean"?(y(k)&&(M=k,k=void 0),k=k||""):(k=T,M=k,T=!1,y(k)&&(M=k,k=void 0),k=k||"");var ee=Ge(),be=T?ee._week.dow:0,ft,ir=[];if(M!=null)return Ta(k,(M+be)%7,W,"day");for(ft=0;ft<7;ft++)ir[ft]=Ta(k,(ft+be)%7,W,"day");return ir}function td(T,k){return ed(T,k,"months")}function bn(T,k){return ed(T,k,"monthsShort")}function ep(T,k,M){return Fs(T,k,M,"weekdays")}function hf(T,k,M){return Fs(T,k,M,"weekdaysShort")}function T0(T,k,M){return Fs(T,k,M,"weekdaysMin")}ne("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(T){var k=T%10,M=Kr(T%100/10)===1?"th":k===1?"st":k===2?"nd":k===3?"rd":"th";return T+M}}),e.lang=tt("moment.lang is deprecated. Use moment.locale instead.",ne),e.langData=tt("moment.langData is deprecated. Use moment.localeData instead.",Ge);var il=Math.abs;function E0(){var T=this._data;return this._milliseconds=il(this._milliseconds),this._days=il(this._days),this._months=il(this._months),T.milliseconds=il(T.milliseconds),T.seconds=il(T.seconds),T.minutes=il(T.minutes),T.hours=il(T.hours),T.months=il(T.months),T.years=il(T.years),this}function ph(T,k,M,W){var ee=io(k,M);return T._milliseconds+=W*ee._milliseconds,T._days+=W*ee._days,T._months+=W*ee._months,T._bubble()}function wc(T,k){return ph(this,T,k,1)}function Er(T,k){return ph(this,T,k,-1)}function mf(T){return T<0?Math.floor(T):Math.ceil(T)}function w0(){var T=this._milliseconds,k=this._days,M=this._months,W=this._data,ee,be,ft,ir,rn;return T>=0&&k>=0&&M>=0||T<=0&&k<=0&&M<=0||(T+=mf(sl(M)+k)*864e5,k=0,M=0),W.milliseconds=T%1e3,ee=ci(T/1e3),W.seconds=ee%60,be=ci(ee/60),W.minutes=be%60,ft=ci(be/60),W.hours=ft%24,k+=ci(ft/24),rn=ci(nu(k)),M+=rn,k-=mf(sl(rn)),ir=ci(M/12),M%=12,W.days=k,W.months=M,W.years=ir,this}function nu(T){return T*4800/146097}function sl(T){return T*146097/4800}function rd(T){if(!this.isValid())return NaN;var k,M,W=this._milliseconds;if(T=me(T),T==="month"||T==="quarter"||T==="year")switch(k=this._days+W/864e5,M=this._months+nu(k),T){case"month":return M;case"quarter":return M/3;case"year":return M/12}else switch(k=this._days+Math.round(sl(this._months)),T){case"week":return k/7+W/6048e5;case"day":return k+W/864e5;case"hour":return k*24+W/36e5;case"minute":return k*1440+W/6e4;case"second":return k*86400+W/1e3;case"millisecond":return Math.floor(k*864e5)+W;default:throw new Error("Unknown unit "+T)}}function Na(T){return function(){return this.as(T)}}var tp=Na("ms"),b0=Na("s"),Bl=Na("m"),nd=Na("h"),yf=Na("d"),rp=Na("w"),Ou=Na("M"),ol=Na("Q"),id=Na("y"),gf=tp;function oa(){return io(this)}function Ai(T){return T=me(T),this.isValid()?this[T+"s"]():NaN}function Si(T){return function(){return this.isValid()?this._data[T]:NaN}}var dh=Si("milliseconds"),Fa=Si("seconds"),oy=Si("minutes"),np=Si("hours"),P0=Si("days"),Eg=Si("months"),D0=Si("years");function hh(){return ci(this.days()/7)}var iu=Math.round,bc={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function ip(T,k,M,W,ee){return ee.relativeTime(k||1,!!M,T,W)}function ay(T,k,M,W){var ee=io(T).abs(),be=iu(ee.as("s")),ft=iu(ee.as("m")),ir=iu(ee.as("h")),rn=iu(ee.as("d")),ti=iu(ee.as("M")),Vo=iu(ee.as("w")),Ra=iu(ee.as("y")),Es=be<=M.ss&&["s",be]||be<M.s&&["ss",be]||ft<=1&&["m"]||ft<M.m&&["mm",ft]||ir<=1&&["h"]||ir<M.h&&["hh",ir]||rn<=1&&["d"]||rn<M.d&&["dd",rn];return M.w!=null&&(Es=Es||Vo<=1&&["w"]||Vo<M.w&&["ww",Vo]),Es=Es||ti<=1&&["M"]||ti<M.M&&["MM",ti]||Ra<=1&&["y"]||["yy",Ra],Es[2]=k,Es[3]=+T>0,Es[4]=W,ip.apply(null,Es)}function uy(T){return T===void 0?iu:typeof T=="function"?(iu=T,!0):!1}function sd(T,k){return bc[T]===void 0?!1:k===void 0?bc[T]:(bc[T]=k,T==="s"&&(bc.ss=k-1),!0)}function wg(T,k){if(!this.isValid())return this.localeData().invalidDate();var M=!1,W=bc,ee,be;return typeof T=="object"&&(k=T,T=!1),typeof T=="boolean"&&(M=T),typeof k=="object"&&(W=Object.assign({},bc,k),k.s!=null&&k.ss==null&&(W.ss=k.s-1)),ee=this.localeData(),be=ay(this,!M,W,ee),M&&(be=ee.pastFuture(+this,be)),ee.postformat(be)}var mh=Math.abs;function Pc(T){return(T>0)-(T<0)||+T}function Ho(){if(!this.isValid())return this.localeData().invalidDate();var T=mh(this._milliseconds)/1e3,k=mh(this._days),M=mh(this._months),W,ee,be,ft,ir=this.asSeconds(),rn,ti,Vo,Ra;return ir?(W=ci(T/60),ee=ci(W/60),T%=60,W%=60,be=ci(M/12),M%=12,ft=T?T.toFixed(3).replace(/\.?0+$/,""):"",rn=ir<0?"-":"",ti=Pc(this._months)!==Pc(ir)?"-":"",Vo=Pc(this._days)!==Pc(ir)?"-":"",Ra=Pc(this._milliseconds)!==Pc(ir)?"-":"",rn+"P"+(be?ti+be+"Y":"")+(M?ti+M+"M":"")+(k?Vo+k+"D":"")+(ee||W||T?"T":"")+(ee?Ra+ee+"H":"")+(W?Ra+W+"M":"")+(T?Ra+ft+"S":"")):"P0D"}var In=el.prototype;In.isValid=Gp,In.abs=E0,In.add=wc,In.subtract=Er,In.as=rd,In.asMilliseconds=tp,In.asSeconds=b0,In.asMinutes=Bl,In.asHours=nd,In.asDays=yf,In.asWeeks=rp,In.asMonths=Ou,In.asQuarters=ol,In.asYears=id,In.valueOf=gf,In._bubble=w0,In.clone=oa,In.get=Ai,In.milliseconds=dh,In.seconds=Fa,In.minutes=oy,In.hours=np,In.days=P0,In.weeks=hh,In.months=Eg,In.years=D0,In.humanize=wg,In.toISOString=Ho,In.toString=Ho,In.toJSON=Ho,In.locale=h0,In.localeData=m0,In.toIsoString=tt("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ho),In.lang=eu,at("X",0,0,"unix"),at("x",0,0,"valueOf"),bt("x",Xe),bt("X",jt),En("X",function(T,k,M){M._d=new Date(parseFloat(T)*1e3)}),En("x",function(T,k,M){M._d=new Date(Kr(T))});return e.version="2.30.1",n(hn),e.fn=Bt,e.min=Aa,e.max=zp,e.now=Hf,e.utc=A,e.unix=tn,e.months=td,e.isDate=m,e.locale=ne,e.invalid=$,e.duration=io,e.isMoment=Fe,e.weekdays=ep,e.parseZone=$o,e.localeData=Ge,e.isDuration=Sa,e.monthsShort=bn,e.weekdaysMin=T0,e.defineLocale=ke,e.updateLocale=Ze,e.locales=lt,e.weekdaysShort=hf,e.normalizeUnits=me,e.relativeTimeRounding=uy,e.relativeTimeThreshold=sd,e.calendarFormat=lv,e.prototype=Bt,e.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"},e})});function $y(){return!process.stdout.isTTY||process.env.FORCE_NON_TTY==="1"}function Eb({prefix:t="cli"}){return Ps.default.createElement(Ss.Text,{color:"grey"},"[",t,"]")}function ss(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m\x1B[31m[\u2718] \x1B[0m${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,null,Ps.default.createElement(Eb,{prefix:e}),Ps.default.createElement(Ss.Text,{color:"red"},"[\u2718] "),t));n()}function uS(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m\x1B[32m[\u2714] \x1B[0m${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,null,Ps.default.createElement(Eb,{prefix:e}),Ps.default.createElement(Ss.Text,{color:"green"},"[\u2714] "),t));n()}function vm(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m \x1B[33mWARNING:\x1B[0m ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,null,Ps.default.createElement(Eb,{prefix:e}),Ps.default.createElement(Ss.Text,{color:"orange"},"\u2757\uFE0F "),t));n()}function z$(t){if($y()){console.log(t);return}let{unmount:e}=(0,Ss.render)(Ps.default.createElement(Ss.Text,{color:"cyan"},t));e()}function Wr(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m\x1B[37m ${t}\x1B[0m`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,{color:"white"},Ps.default.createElement(Eb,{prefix:e}),t));n()}function oO({timestamp:t}){return Ps.default.createElement(Ss.Box,{width:13},Ps.default.createElement(Ss.Text,{color:"grey"},(0,aS.default)(t).format("HH:mm:ss.SSS")))}function G$(t,e){if($y()){console.log(`${(0,aS.default)(e).format("HH:mm:ss.SSS")} ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Box,null,Ps.default.createElement(oO,{timestamp:e}),Ps.default.createElement(Ss.Text,{color:"white"},t)));n()}function Y$(t,e){if($y()){console.log(`${(0,aS.default)(e).format("HH:mm:ss.SSS")} [WARNING] ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Box,null,Ps.default.createElement(oO,{timestamp:e}),Ps.default.createElement(Ss.Text,{color:"white",backgroundColor:"yellow"},"[WARNING]"),Ps.default.createElement(Ss.Text,null," ",t)));n()}function aO(t,e){if($y()){console.log(`${(0,aS.default)(e).format("HH:mm:ss.SSS")} [ERROR] ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Box,null,Ps.default.createElement(oO,{timestamp:e}),Ps.default.createElement(Ss.Text,{color:"white",backgroundColor:"red"},"[ERROR]"),Ps.default.createElement(Ss.Text,{color:"white"}," ",t)));n()}var Ss,Ps,aS,Hu=mt(()=>{Ss=cr(Tb()),Ps=cr(Xs()),aS=cr(W$())});var J$,K$=mt(()=>{J$={name:"edgeone",version:"1.4.2",description:"Command-line interface for TencentCloud Pages Functions",bin:{edgeone:"./edgeone-bin/edgeone.js"},files:["./edgeone-bin/edgeone.js","./edgeone-dist/cli.js","./edgeone-dist/templates","./edgeone-dist/pages/dev/runner-worker.js"],author:"",keywords:["tencent","edgeone","edgefunctions","edgeone","cli","typescript"],scripts:{clean:"rimraf ./edgeone-dist ./edgeone-bin ./libs-node-ai ./libs-kv-client",bundle:"node -r esbuild-register ./scripts/bundle.ts",watch:"node -r esbuild-register ./scripts/bundle.ts watch",build:"npm run clean && npm run build:pages-ai && npm run build:kv-client && npm run bundle","build:pages-ai":"node ./scripts/build-pages-ai.js","build:kv-client":"node ./scripts/build-kv-client.js",format:'prettier --write "src/**/*.{ts,tsx,js,jsx,json,md}" "scripts/**/*.{ts,js}" "*.{json,md}"',prepack:"npm run build",prepublishOnly:"npm run build",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage"},dependencies:{"@edgeone/framework-detect":"^0.0.2","@edgeone/nuxt-pages":"1.1.0","@edgeone/opennextjs-pages":"0.2.2",archiver:"^7.0.1",chokidar:"^4.0.1","common-path-prefix":"^1.0.0","cos-nodejs-sdk-v5":"^2.14.7","cross-spawn":"^7.0.6",crypto:"^1.0.1","detect-port":"^2.1.0",esbuild:"^0.19.2","esbuild-plugin-polyfill-node":"^0.3.0","esbuild-plugin-vue":"^0.2.4","fast-glob":"^3.3.0","fs-extra":"^11.3.1","ink-table":"^3.1.0",inquirer:"^8.2.4",install:"^0.13.0",lodash:"^4.17.21","mime-types":"^3.0.1",minimatch:"^9.0.5","node-persist":"^4.0.3",npm:"^10.9.1",open:"^8.4.2","p-map":"^5.5.0","parse-gitignore":"^2.0.0",portfinder:"^1.0.32",undici:"^5.29.0",vitest:"^4.0.17"},devDependencies:{"@babel/generator":"^7.28.0","@babel/parser":"^7.28.0","@babel/traverse":"^7.28.0","@babel/types":"^7.28.0","@tencent/capi-nodejs-sdk":"^2.3.2","@types/http-proxy":"^1.17.12","@types/inquirer":"^9.0.8","@types/ip":"^1.1.0","@types/lodash":"^4.14.198","@types/prompts":"^2.4.4","@types/react":"^17.0.2","@types/uuid":"^9.0.3","@types/ws":"^8.5.7","@types/yargs":"^17.0.24","@vitest/coverage-v8":"^4.0.17",axios:"^1.7.9",chalk:"^5.3.0",cookie:"^1.0.2",dotenv:"^16.3.1","esbuild-register":"^3.6.0",execa:"^7.1.1","http-proxy":"^1.18.1",husky:"^8.0.3",ink:"^3.2.0",ip:"^2.0.1",json5:"^2.2.3","lint-staged":"^15.2.0",lodash:"^4.17.21",moment:"^2.30.1","node-fetch":"^3.3.2",prettier:"^3.1.1",prompts:"^2.4.2",react:"^17.0.2",rimraf:"^6.0.1",semiver:"^1.1.0",sirv:"^2.0.3","tencentcloud-cls-sdk-js-web":"^1.0.13","ts-node":"^10.9.2",typescript:"^5.9.3","update-check":"^1.5.4",uuid:"^9.0.0",ws:"^8.14.2",yargs:"^17.6.2",zod:"^3.23.8","zod-to-json-schema":"^3.23.5"},engines:{node:">=12"},"lint-staged":{"*.{ts,tsx,js,jsx,json,md}":["prettier --write"]}}});function FPe(){var t,e;return{run_id:NPe,cli_version:(e=(t=J$)==null?void 0:t.version)!=null?e:"unknown",node_version:process.version,os_platform:lO.default.platform(),os_arch:lO.default.arch(),app_type:"cli",app_id:process.env.AppId||void 0,uin:process.env.Uin||void 0,instance_id:process.env.ProjectId||void 0,is_ci:process.env.CI==="true"}}function RPe(t,e){try{if(typeof process.send!="function")return;process.send(JSON.stringify({name:t,value:JSON.stringify(e)}))}catch{}}function Wa(t){var n;let e={...FPe(),...t};RPe((n=e.event_name)!=null?n:"unknown",e)}function kp(t){if(t==null)return{message:"unknown error",stack:""};if(typeof t=="string")return{message:wb(t,uO),stack:""};if(typeof t=="object"){let e=t,n=wb(typeof e.message=="string"?e.message:String(e),uO),o=wb(typeof e.stack=="string"?e.stack:"",LPe);return{message:n,stack:o}}return{message:wb(String(t),uO),stack:""}}function wb(t,e){return t.length>e?t.slice(0,e)+"\u2026[truncated]":t}var lO,Ha,Va,NPe,cO,uO,LPe,xm=mt(()=>{lO=cr(require("os"));K$();Ha={COMMAND:"command",REQUEST:"request",LOCAL_FLOW:"local_flow",EXIT:"exit"},Va={SUCCESS:"success",FAIL:"fail",START:"start"},NPe=`cli-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;cO=(t,e)=>{let n=kp(e);Wa({event_name:"error",event_scope:Ha.COMMAND,event_result:Va.FAIL,error_message:`${t} ${n.message}`.trim(),error_stack:n.stack})},uO=500,LPe=2e3});var lS,l2,fO=mt(()=>{lS={NEXTJS:"nextjs",NUXTJS:"nuxtjs",ASTRO:"astro",UNKNOWN:"unknown"},l2={FRAMEWORK_DETECT:"framework_detect",PLUGIN_RESOLVE:"plugin_resolve",PLUGIN_LOAD:"plugin_load",PLUGIN_HOOK:"plugin_hook",CONFIG_LOAD:"config_load"}});async function cS(t=!1){try{let e=await yj(t);return Wa({event_name:"Config:Load:Success",event_scope:Ha.LOCAL_FLOW,event_phase:l2.CONFIG_LOAD,event_result:Va.SUCCESS,has_build_command:(e==null?void 0:e.buildCommand)!=null,has_install_command:(e==null?void 0:e.installCommand)!=null,has_output_directory:(e==null?void 0:e.outputDirectory)!=null,has_node_version:(e==null?void 0:e.nodeVersion)!=null}),e}catch(e){let n=kp(e);return Wa({event_name:"Config:Load:Fail",event_scope:Ha.LOCAL_FLOW,event_phase:l2.CONFIG_LOAD,event_result:Va.FAIL,error_message:n.message}),wp()&&console.error("%c [ error ]-80","font-size:13px; background:pink; color:#bf2c9f;",e),null}}var X$=mt(()=>{Iw();ww();xm();fO()});var Z$,qc,pO=mt(()=>{Z$=[{funcName:"onRequestGet",method:"GET"},{funcName:"onRequestPost",method:"POST"},{funcName:"onRequestDelete",method:"DELETE"},{funcName:"onRequestPatch",method:"PATCH"},{funcName:"onRequestPut",method:"PUT"},{funcName:"onRequestHead",method:"HEAD"},{funcName:"onRequestOptions",method:"OPTIONS"}],qc=["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS"]});async function MPe(t){let e;bb.default.statSync(t).isFile()?e=c2.default.resolve(c2.default.dirname(t)):e=t;let n=c2.default.parse(e).root;if(e===n)return null;for(;e!==n;){let o=c2.default.join(e,"package.json");try{return await bb.default.promises.access(o),o}catch{if(e=c2.default.dirname(e),e===n)break}}return null}async function Pb(t){if(t.endsWith(".mjs"))return"esm";if(t.endsWith(".cjs"))return"commonjs";try{let e=await MPe(t);if(e&&JSON.parse(await bb.default.promises.readFile(e,"utf-8")).type==="module")return"esm"}catch(e){console.warn("Failed to read package.json:",e)}return"commonjs"}var bb,c2,Db=mt(()=>{bb=cr(require("fs")),c2=cr(require("path"))});function qPe(t){let e=dO.default.extname(t);return jPe[e]||"ts"}async function eH(t,e,n,o){let u=`mod_${UPe++}`,f=(await Q$.default.build({stdin:{contents:t,loader:qPe(n),resolveDir:dO.default.dirname(n)},write:!1,bundle:!0,format:"esm",platform:"node",target:"node14",minify:!1,resolveExtensions:[".ts",".js",".mjs",".json"],nodePaths:[process.cwd()],absWorkingDir:process.cwd(),external:(o==null?void 0:o.externalModules)||[]})).outputFiles[0].text,p=[];f=f.replace(/^import\s+[^'"]*['"][^'"]*['"]\s*;?\n/gm,C=>(p.push(C),"")),f=f.replace(/export (async )?function/g,"$1function"),f=f.replace(/export const/g,"const"),f=f.replace(/export let/g,"let"),f=f.replace(/export var/g,"var"),f=f.replace(/export default/g,""),f=f.replace(/export \{[^}]+\};?/g,""),f=f.replace(/export class/g,"class");let y=/const\s+app\s*=/.test(f),m=`${p.join(`
143
+ `+new Error().stack),M=!1}return k.apply(this,arguments)},k)}var Le={};function Ct(T,k){e.deprecationHandler!=null&&e.deprecationHandler(T,k),Le[T]||(He(k),Le[T]=!0)}e.suppressDeprecationWarnings=!1,e.deprecationHandler=null;function gt(T){return typeof Function<"u"&&T instanceof Function||Object.prototype.toString.call(T)==="[object Function]"}function ct(T){var k,M;for(M in T)r(T,M)&&(k=T[M],gt(k)?this[M]=k:this["_"+M]=k);this._config=T,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function qe(T,k){var M=C({},T),W;for(W in k)r(k,W)&&(u(T[W])&&u(k[W])?(M[W]={},C(M[W],T[W]),C(M[W],k[W])):k[W]!=null?M[W]=k[W]:delete M[W]);for(W in T)r(T,W)&&!r(k,W)&&u(T[W])&&(M[W]=C({},M[W]));return M}function oe(T){T!=null&&this.set(T)}var Ae;Object.keys?Ae=Object.keys:Ae=function(T){var k,M=[];for(k in T)r(T,k)&&M.push(k);return M};var Ke={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function Se(T,k,M){var W=this._calendar[T]||this._calendar.sameElse;return gt(W)?W.call(k,M):W}function we(T,k,M){var W=""+Math.abs(T),ee=k-W.length,be=T>=0;return(be?M?"+":"":"-")+Math.pow(10,Math.max(0,ee)).toString().substr(1)+W}var Oe=/(\[[^\[]*\])|(\\)?([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,ut=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Lt={},er={};function at(T,k,M,W){var ee=W;typeof W=="string"&&(ee=function(){return this[W]()}),T&&(er[T]=ee),k&&(er[k[0]]=function(){return we(ee.apply(this,arguments),k[1],k[2])}),M&&(er[M]=function(){return this.localeData().ordinal(ee.apply(this,arguments),T)})}function zt(T){return T.match(/\[[\s\S]/)?T.replace(/^\[|\]$/g,""):T.replace(/\\/g,"")}function Ie(T){var k=T.match(Oe),M,W;for(M=0,W=k.length;M<W;M++)er[k[M]]?k[M]=er[k[M]]:k[M]=zt(k[M]);return function(ee){var be="",ft;for(ft=0;ft<W;ft++)be+=gt(k[ft])?k[ft].call(ee,T):k[ft];return be}}function Qe(T,k){return T.isValid()?(k=st(k,T.localeData()),Lt[k]=Lt[k]||Ie(k),Lt[k](T)):T.localeData().invalidDate()}function st(T,k){var M=5;function W(ee){return k.longDateFormat(ee)||ee}for(ut.lastIndex=0;M>=0&&ut.test(T);)T=T.replace(ut,W),ut.lastIndex=0,M-=1;return T}var $t={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 Dr(T){var k=this._longDateFormat[T],M=this._longDateFormat[T.toUpperCase()];return k||!M?k:(this._longDateFormat[T]=M.match(Oe).map(function(W){return W==="MMMM"||W==="MM"||W==="DD"||W==="dddd"?W.slice(1):W}).join(""),this._longDateFormat[T])}var ar="Invalid date";function tr(){return this._invalidDate}var P="%d",Xt=/\d{1,2}/;function lr(T){return this._ordinal.replace("%d",T)}var Bn={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 Pt(T,k,M,W){var ee=this._relativeTime[M];return gt(ee)?ee(T,k,M,W):ee.replace(/%d/i,T)}function xt(T,k){var M=this._relativeTime[T>0?"future":"past"];return gt(M)?M(k):M.replace(/%s/i,k)}var Yt={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function me(T){return typeof T=="string"?Yt[T]||Yt[T.toLowerCase()]:void 0}function ze(T){var k={},M,W;for(W in T)r(T,W)&&(M=me(W),M&&(k[M]=T[W]));return k}var kt={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function Ht(T){var k=[],M;for(M in T)r(T,M)&&k.push({unit:M,priority:kt[M]});return k.sort(function(W,ee){return W.priority-ee.priority}),k}var Rr=/\d/,Lr=/\d\d/,Rn=/\d{3}/,kn=/\d{4}/,Vn=/[+-]?\d{6}/,pn=/\d\d?/,wo=/\d\d\d\d?/,Bo=/\d\d\d\d\d\d?/,Yi=/\d{1,3}/,bo=/\d{1,4}/,_u=/[+-]?\d{1,6}/,Da=/\d+/,Xe=/[+-]?\d+/,wt=/Z|[+-]\d\d:?\d\d/gi,vt=/Z|[+-]\d\d(?::?\d\d)?/gi,jt=/[+-]?\d+(\.\d{1,3})?/,Pr=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,dr=/^[1-9]\d?/,Tn=/^([1-9]\d|\d)/,li;li={};function bt(T,k,M){li[T]=gt(k)?k:function(W,ee){return W&&M?M:k}}function gi(T,k){return r(li,T)?li[T](k._strict,k._locale):new RegExp(ls(T))}function ls(T){return vi(T.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(k,M,W,ee,be){return M||W||ee||be}))}function vi(T){return T.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ci(T){return T<0?Math.ceil(T)||0:Math.floor(T)}function Kr(T){var k=+T,M=0;return k!==0&&isFinite(k)&&(M=ci(k)),M}var As={};function En(T,k){var M,W=k,ee;for(typeof T=="string"&&(T=[T]),y(k)&&(W=function(be,ft){ft[k]=Kr(be)}),ee=T.length,M=0;M<ee;M++)As[T[M]]=W}function rs(T,k){En(T,function(M,W,ee,be){ee._w=ee._w||{},k(M,ee._w,ee,be)})}function Su(T,k,M){k!=null&&r(As,T)&&As[T](k,M._a,M,T)}function Bs(T){return T%4===0&&T%100!==0||T%400===0}var Zt=0,co=1,Ws=2,cs=3,fo=4,zs=5,Ts=6,Pl=7,za=8;at("Y",0,0,function(){var T=this.year();return T<=9999?we(T,4):"+"+T}),at(0,["YY",2],0,function(){return this.year()%100}),at(0,["YYYY",4],0,"year"),at(0,["YYYYY",5],0,"year"),at(0,["YYYYYY",6,!0],0,"year"),bt("Y",Xe),bt("YY",pn,Lr),bt("YYYY",bo,kn),bt("YYYYY",_u,Vn),bt("YYYYYY",_u,Vn),En(["YYYYY","YYYYYY"],Zt),En("YYYY",function(T,k){k[Zt]=T.length===2?e.parseTwoDigitYear(T):Kr(T)}),En("YY",function(T,k){k[Zt]=e.parseTwoDigitYear(T)}),En("Y",function(T,k){k[Zt]=parseInt(T,10)});function pa(T){return Bs(T)?366:365}e.parseTwoDigitYear=function(T){return Kr(T)+(Kr(T)>68?1900:2e3)};var Tu=zr("FullYear",!0);function ac(){return Bs(this.year())}function zr(T,k){return function(M){return M!=null?(Dl(this,T,M),e.updateOffset(this,k),this):Ku(this,T)}}function Ku(T,k){if(!T.isValid())return NaN;var M=T._d,W=T._isUTC;switch(k){case"Milliseconds":return W?M.getUTCMilliseconds():M.getMilliseconds();case"Seconds":return W?M.getUTCSeconds():M.getSeconds();case"Minutes":return W?M.getUTCMinutes():M.getMinutes();case"Hours":return W?M.getUTCHours():M.getHours();case"Date":return W?M.getUTCDate():M.getDate();case"Day":return W?M.getUTCDay():M.getDay();case"Month":return W?M.getUTCMonth():M.getMonth();case"FullYear":return W?M.getUTCFullYear():M.getFullYear();default:return NaN}}function Dl(T,k,M){var W,ee,be,ft,ir;if(!(!T.isValid()||isNaN(M))){switch(W=T._d,ee=T._isUTC,k){case"Milliseconds":return void(ee?W.setUTCMilliseconds(M):W.setMilliseconds(M));case"Seconds":return void(ee?W.setUTCSeconds(M):W.setSeconds(M));case"Minutes":return void(ee?W.setUTCMinutes(M):W.setMinutes(M));case"Hours":return void(ee?W.setUTCHours(M):W.setHours(M));case"Date":return void(ee?W.setUTCDate(M):W.setDate(M));case"FullYear":break;default:return}be=M,ft=T.month(),ir=T.date(),ir=ir===29&&ft===1&&!Bs(be)?28:ir,ee?W.setUTCFullYear(be,ft,ir):W.setFullYear(be,ft,ir)}}function Ga(T){return T=me(T),gt(this[T])?this[T]():this}function Ki(T,k){if(typeof T=="object"){T=ze(T);var M=Ht(T),W,ee=M.length;for(W=0;W<ee;W++)this[M[W].unit](T[M[W].unit])}else if(T=me(T),gt(this[T]))return this[T](k);return this}function Li(T,k){return(T%k+k)%k}var Pi;Array.prototype.indexOf?Pi=Array.prototype.indexOf:Pi=function(T){var k;for(k=0;k<this.length;++k)if(this[k]===T)return k;return-1};function ks(T,k){if(isNaN(T)||isNaN(k))return NaN;var M=Li(k,12);return T+=(k-M)/12,M===1?Bs(T)?29:28:31-M%7%2}at("M",["MM",2],"Mo",function(){return this.month()+1}),at("MMM",0,0,function(T){return this.localeData().monthsShort(this,T)}),at("MMMM",0,0,function(T){return this.localeData().months(this,T)}),bt("M",pn,dr),bt("MM",pn,Lr),bt("MMM",function(T,k){return k.monthsShortRegex(T)}),bt("MMMM",function(T,k){return k.monthsRegex(T)}),En(["M","MM"],function(T,k){k[co]=Kr(T)-1}),En(["MMM","MMMM"],function(T,k,M,W){var ee=M._locale.monthsParse(T,W,M._strict);ee!=null?k[co]=ee:v(M).invalidMonth=T});var po="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),da="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),jo=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,ho=Pr,uc=Pr;function i0(T,k){return T?o(this._months)?this._months[T.month()]:this._months[(this._months.isFormat||jo).test(k)?"format":"standalone"][T.month()]:o(this._months)?this._months:this._months.standalone}function Xc(T,k){return T?o(this._monthsShort)?this._monthsShort[T.month()]:this._monthsShort[jo.test(k)?"format":"standalone"][T.month()]:o(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function lc(T,k,M){var W,ee,be,ft=T.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],W=0;W<12;++W)be=A([2e3,W]),this._shortMonthsParse[W]=this.monthsShort(be,"").toLocaleLowerCase(),this._longMonthsParse[W]=this.months(be,"").toLocaleLowerCase();return M?k==="MMM"?(ee=Pi.call(this._shortMonthsParse,ft),ee!==-1?ee:null):(ee=Pi.call(this._longMonthsParse,ft),ee!==-1?ee:null):k==="MMM"?(ee=Pi.call(this._shortMonthsParse,ft),ee!==-1?ee:(ee=Pi.call(this._longMonthsParse,ft),ee!==-1?ee:null)):(ee=Pi.call(this._longMonthsParse,ft),ee!==-1?ee:(ee=Pi.call(this._shortMonthsParse,ft),ee!==-1?ee:null))}function Zo(T,k,M){var W,ee,be;if(this._monthsParseExact)return lc.call(this,T,k,M);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),W=0;W<12;W++){if(ee=A([2e3,W]),M&&!this._longMonthsParse[W]&&(this._longMonthsParse[W]=new RegExp("^"+this.months(ee,"").replace(".","")+"$","i"),this._shortMonthsParse[W]=new RegExp("^"+this.monthsShort(ee,"").replace(".","")+"$","i")),!M&&!this._monthsParse[W]&&(be="^"+this.months(ee,"")+"|^"+this.monthsShort(ee,""),this._monthsParse[W]=new RegExp(be.replace(".",""),"i")),M&&k==="MMMM"&&this._longMonthsParse[W].test(T))return W;if(M&&k==="MMM"&&this._shortMonthsParse[W].test(T))return W;if(!M&&this._monthsParse[W].test(T))return W}}function At(T,k){if(!T.isValid())return T;if(typeof k=="string"){if(/^\d+$/.test(k))k=Kr(k);else if(k=T.localeData().monthsParse(k),!y(k))return T}var M=k,W=T.date();return W=W<29?W:Math.min(W,ks(T.year(),M)),T._isUTC?T._d.setUTCMonth(M,W):T._d.setMonth(M,W),T}function Ya(T){return T!=null?(At(this,T),e.updateOffset(this,!0),this):Ku(this,"Month")}function s0(){return ks(this.year(),this.month())}function Zc(T){return this._monthsParseExact?(r(this,"_monthsRegex")||Ju.call(this),T?this._monthsShortStrictRegex:this._monthsShortRegex):(r(this,"_monthsShortRegex")||(this._monthsShortRegex=ho),this._monthsShortStrictRegex&&T?this._monthsShortStrictRegex:this._monthsShortRegex)}function Ui(T){return this._monthsParseExact?(r(this,"_monthsRegex")||Ju.call(this),T?this._monthsStrictRegex:this._monthsRegex):(r(this,"_monthsRegex")||(this._monthsRegex=uc),this._monthsStrictRegex&&T?this._monthsStrictRegex:this._monthsRegex)}function Ju(){function T(rn,ti){return ti.length-rn.length}var k=[],M=[],W=[],ee,be,ft,ir;for(ee=0;ee<12;ee++)be=A([2e3,ee]),ft=vi(this.monthsShort(be,"")),ir=vi(this.months(be,"")),k.push(ft),M.push(ir),W.push(ir),W.push(ft);k.sort(T),M.sort(T),W.sort(T),this._monthsRegex=new RegExp("^("+W.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+M.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+k.join("|")+")","i")}function Gd(T,k,M,W,ee,be,ft){var ir;return T<100&&T>=0?(ir=new Date(T+400,k,M,W,ee,be,ft),isFinite(ir.getFullYear())&&ir.setFullYear(T)):ir=new Date(T,k,M,W,ee,be,ft),ir}function qf(T){var k,M;return T<100&&T>=0?(M=Array.prototype.slice.call(arguments),M[0]=T+400,k=new Date(Date.UTC.apply(null,M)),isFinite(k.getUTCFullYear())&&k.setUTCFullYear(T)):k=new Date(Date.UTC.apply(null,arguments)),k}function Cl(T,k,M){var W=7+k-M,ee=(7+qf(T,0,W).getUTCDay()-k)%7;return-ee+W-1}function Vp(T,k,M,W,ee){var be=(7+M-W)%7,ft=Cl(T,W,ee),ir=1+7*(k-1)+be+ft,rn,ti;return ir<=0?(rn=T-1,ti=pa(rn)+ir):ir>pa(T)?(rn=T+1,ti=ir-pa(T)):(rn=T,ti=ir),{year:rn,dayOfYear:ti}}function Kt(T,k,M){var W=Cl(T.year(),k,M),ee=Math.floor((T.dayOfYear()-W-1)/7)+1,be,ft;return ee<1?(ft=T.year()-1,be=ee+Di(ft,k,M)):ee>Di(T.year(),k,M)?(be=ee-Di(T.year(),k,M),ft=T.year()+1):(ft=T.year(),be=ee),{week:be,year:ft}}function Di(T,k,M){var W=Cl(T,k,M),ee=Cl(T+1,k,M);return(pa(T)-W+ee)/7}at("w",["ww",2],"wo","week"),at("W",["WW",2],"Wo","isoWeek"),bt("w",pn,dr),bt("ww",pn,Lr),bt("W",pn,dr),bt("WW",pn,Lr),rs(["w","ww","W","WW"],function(T,k,M,W){k[W.substr(0,1)]=Kr(T)});function Wp(T){return Kt(T,this._week.dow,this._week.doy).week}var cc={dow:0,doy:6};function Ka(){return this._week.dow}function Uf(){return this._week.doy}function o0(T){var k=this.localeData().week(this);return T==null?k:this.add((T-k)*7,"d")}function Yd(T){var k=Kt(this,1,4).week;return T==null?k:this.add((T-k)*7,"d")}at("d",0,"do","day"),at("dd",0,0,function(T){return this.localeData().weekdaysMin(this,T)}),at("ddd",0,0,function(T){return this.localeData().weekdaysShort(this,T)}),at("dddd",0,0,function(T){return this.localeData().weekdays(this,T)}),at("e",0,0,"weekday"),at("E",0,0,"isoWeekday"),bt("d",pn),bt("e",pn),bt("E",pn),bt("dd",function(T,k){return k.weekdaysMinRegex(T)}),bt("ddd",function(T,k){return k.weekdaysShortRegex(T)}),bt("dddd",function(T,k){return k.weekdaysRegex(T)}),rs(["dd","ddd","dddd"],function(T,k,M,W){var ee=M._locale.weekdaysParse(T,W,M._strict);ee!=null?k.d=ee:v(M).invalidWeekday=T}),rs(["d","e","E"],function(T,k,M,W){k[W]=Kr(T)});function a0(T,k){return typeof T!="string"?T:isNaN(T)?(T=k.weekdaysParse(T),typeof T=="number"?T:null):parseInt(T,10)}function ha(T,k){return typeof T=="string"?k.weekdaysParse(T)%7||7:isNaN(T)?null:T}function ma(T,k){return T.slice(k,7).concat(T.slice(0,k))}var Kd="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Jd="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Qc="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),qo=Pr,ef=Pr,ya=Pr;function Al(T,k){var M=o(this._weekdays)?this._weekdays:this._weekdays[T&&T!==!0&&this._weekdays.isFormat.test(k)?"format":"standalone"];return T===!0?ma(M,this._week.dow):T?M[T.day()]:M}function Ja(T){return T===!0?ma(this._weekdaysShort,this._week.dow):T?this._weekdaysShort[T.day()]:this._weekdaysShort}function Eu(T){return T===!0?ma(this._weekdaysMin,this._week.dow):T?this._weekdaysMin[T.day()]:this._weekdaysMin}function Xu(T,k,M){var W,ee,be,ft=T.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],W=0;W<7;++W)be=A([2e3,1]).day(W),this._minWeekdaysParse[W]=this.weekdaysMin(be,"").toLocaleLowerCase(),this._shortWeekdaysParse[W]=this.weekdaysShort(be,"").toLocaleLowerCase(),this._weekdaysParse[W]=this.weekdays(be,"").toLocaleLowerCase();return M?k==="dddd"?(ee=Pi.call(this._weekdaysParse,ft),ee!==-1?ee:null):k==="ddd"?(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1?ee:null):(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1?ee:null):k==="dddd"?(ee=Pi.call(this._weekdaysParse,ft),ee!==-1||(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1)?ee:(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1?ee:null)):k==="ddd"?(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1||(ee=Pi.call(this._weekdaysParse,ft),ee!==-1)?ee:(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1?ee:null)):(ee=Pi.call(this._minWeekdaysParse,ft),ee!==-1||(ee=Pi.call(this._weekdaysParse,ft),ee!==-1)?ee:(ee=Pi.call(this._shortWeekdaysParse,ft),ee!==-1?ee:null))}function Zu(T,k,M){var W,ee,be;if(this._weekdaysParseExact)return Xu.call(this,T,k,M);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),W=0;W<7;W++){if(ee=A([2e3,1]).day(W),M&&!this._fullWeekdaysParse[W]&&(this._fullWeekdaysParse[W]=new RegExp("^"+this.weekdays(ee,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[W]=new RegExp("^"+this.weekdaysShort(ee,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[W]=new RegExp("^"+this.weekdaysMin(ee,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[W]||(be="^"+this.weekdays(ee,"")+"|^"+this.weekdaysShort(ee,"")+"|^"+this.weekdaysMin(ee,""),this._weekdaysParse[W]=new RegExp(be.replace(".",""),"i")),M&&k==="dddd"&&this._fullWeekdaysParse[W].test(T))return W;if(M&&k==="ddd"&&this._shortWeekdaysParse[W].test(T))return W;if(M&&k==="dd"&&this._minWeekdaysParse[W].test(T))return W;if(!M&&this._weekdaysParse[W].test(T))return W}}function ys(T){if(!this.isValid())return T!=null?this:NaN;var k=Ku(this,"Day");return T!=null?(T=a0(T,this.localeData()),this.add(T-k,"d")):k}function dn(T){if(!this.isValid())return T!=null?this:NaN;var k=(this.day()+7-this.localeData()._week.dow)%7;return T==null?k:this.add(T-k,"d")}function wu(T){if(!this.isValid())return T!=null?this:NaN;if(T!=null){var k=ha(T,this.localeData());return this.day(this.day()%7?k:k-7)}else return this.day()||7}function Xd(T){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||pc.call(this),T?this._weekdaysStrictRegex:this._weekdaysRegex):(r(this,"_weekdaysRegex")||(this._weekdaysRegex=qo),this._weekdaysStrictRegex&&T?this._weekdaysStrictRegex:this._weekdaysRegex)}function Is(T){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||pc.call(this),T?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(r(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=ef),this._weekdaysShortStrictRegex&&T?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function fc(T){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||pc.call(this),T?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(r(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=ya),this._weekdaysMinStrictRegex&&T?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function pc(){function T(Vo,Ra){return Ra.length-Vo.length}var k=[],M=[],W=[],ee=[],be,ft,ir,rn,ti;for(be=0;be<7;be++)ft=A([2e3,1]).day(be),ir=vi(this.weekdaysMin(ft,"")),rn=vi(this.weekdaysShort(ft,"")),ti=vi(this.weekdays(ft,"")),k.push(ir),M.push(rn),W.push(ti),ee.push(ir),ee.push(rn),ee.push(ti);k.sort(T),M.sort(T),W.sort(T),ee.sort(T),this._weekdaysRegex=new RegExp("^("+ee.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+W.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+M.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+k.join("|")+")","i")}function ga(){return this.hours()%12||12}function tf(){return this.hours()||24}at("H",["HH",2],0,"hour"),at("h",["hh",2],0,ga),at("k",["kk",2],0,tf),at("hmm",0,0,function(){return""+ga.apply(this)+we(this.minutes(),2)}),at("hmmss",0,0,function(){return""+ga.apply(this)+we(this.minutes(),2)+we(this.seconds(),2)}),at("Hmm",0,0,function(){return""+this.hours()+we(this.minutes(),2)}),at("Hmmss",0,0,function(){return""+this.hours()+we(this.minutes(),2)+we(this.seconds(),2)});function mo(T,k){at(T,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),k)})}mo("a",!0),mo("A",!1);function rf(T,k){return k._meridiemParse}bt("a",rf),bt("A",rf),bt("H",pn,Tn),bt("h",pn,dr),bt("k",pn,dr),bt("HH",pn,Lr),bt("hh",pn,Lr),bt("kk",pn,Lr),bt("hmm",wo),bt("hmmss",Bo),bt("Hmm",wo),bt("Hmmss",Bo),En(["H","HH"],cs),En(["k","kk"],function(T,k,M){var W=Kr(T);k[cs]=W===24?0:W}),En(["a","A"],function(T,k,M){M._isPm=M._locale.isPM(T),M._meridiem=T}),En(["h","hh"],function(T,k,M){k[cs]=Kr(T),v(M).bigHour=!0}),En("hmm",function(T,k,M){var W=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W)),v(M).bigHour=!0}),En("hmmss",function(T,k,M){var W=T.length-4,ee=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W,2)),k[zs]=Kr(T.substr(ee)),v(M).bigHour=!0}),En("Hmm",function(T,k,M){var W=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W))}),En("Hmmss",function(T,k,M){var W=T.length-4,ee=T.length-2;k[cs]=Kr(T.substr(0,W)),k[fo]=Kr(T.substr(W,2)),k[zs]=Kr(T.substr(ee))});function Zd(T){return(T+"").toLowerCase().charAt(0)==="p"}var Ca=/[ap]\.?m?\.?/i,Qo=zr("Hours",!0);function nf(T,k,M){return T>11?M?"pm":"PM":M?"am":"AM"}var kl={calendar:Ke,longDateFormat:$t,invalidDate:ar,ordinal:P,dayOfMonthOrdinalParse:Xt,relativeTime:Bn,months:po,monthsShort:da,week:cc,weekdays:Kd,weekdaysMin:Qc,weekdaysShort:Jd,meridiemParse:Ca},ns={},js={},bu;function $f(T,k){var M,W=Math.min(T.length,k.length);for(M=0;M<W;M+=1)if(T[M]!==k[M])return M;return W}function Xa(T){return T&&T.toLowerCase().replace("_","-")}function Il(T){for(var k=0,M,W,ee,be;k<T.length;){for(be=Xa(T[k]).split("-"),M=be.length,W=Xa(T[k+1]),W=W?W.split("-"):null;M>0;){if(ee=Q(be.slice(0,M).join("-")),ee)return ee;if(W&&W.length>=M&&$f(be,W)>=M-1)break;M--}k++}return bu}function ie(T){return!!(T&&T.match("^[^/\\\\]*$"))}function Q(T){var k=null,M;if(ns[T]===void 0&&typeof u2<"u"&&u2&&u2.exports&&ie(T))try{k=bu._abbr,M=require,M("./locale/"+T),ne(k)}catch{ns[T]=null}return ns[T]}function ne(T,k){var M;return T&&(p(k)?M=Ge(T):M=ke(T,k),M?bu=M:typeof console<"u"&&console.warn&&console.warn("Locale "+T+" not found. Did you forget to load it?")),bu._abbr}function ke(T,k){if(k!==null){var M,W=kl;if(k.abbr=T,ns[T]!=null)Ct("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."),W=ns[T]._config;else if(k.parentLocale!=null)if(ns[k.parentLocale]!=null)W=ns[k.parentLocale]._config;else if(M=Q(k.parentLocale),M!=null)W=M._config;else return js[k.parentLocale]||(js[k.parentLocale]=[]),js[k.parentLocale].push({name:T,config:k}),null;return ns[T]=new oe(qe(W,k)),js[T]&&js[T].forEach(function(ee){ke(ee.name,ee.config)}),ne(T),ns[T]}else return delete ns[T],null}function Ze(T,k){if(k!=null){var M,W,ee=kl;ns[T]!=null&&ns[T].parentLocale!=null?ns[T].set(qe(ns[T]._config,k)):(W=Q(T),W!=null&&(ee=W._config),k=qe(ee,k),W==null&&(k.abbr=T),M=new oe(k),M.parentLocale=ns[T],ns[T]=M),ne(T)}else ns[T]!=null&&(ns[T].parentLocale!=null?(ns[T]=ns[T].parentLocale,T===ne()&&ne(T)):ns[T]!=null&&delete ns[T]);return ns[T]}function Ge(T){var k;if(T&&T._locale&&T._locale._abbr&&(T=T._locale._abbr),!T)return bu;if(!o(T)){if(k=Q(T),k)return k;T=[T]}return Il(T)}function lt(){return Ae(ns)}function pt(T){var k,M=T._a;return M&&v(T).overflow===-2&&(k=M[co]<0||M[co]>11?co:M[Ws]<1||M[Ws]>ks(M[Zt],M[co])?Ws:M[cs]<0||M[cs]>24||M[cs]===24&&(M[fo]!==0||M[zs]!==0||M[Ts]!==0)?cs:M[fo]<0||M[fo]>59?fo:M[zs]<0||M[zs]>59?zs:M[Ts]<0||M[Ts]>999?Ts:-1,v(T)._overflowDayOfYear&&(k<Zt||k>Ws)&&(k=Ws),v(T)._overflowWeeks&&k===-1&&(k=Pl),v(T)._overflowWeekday&&k===-1&&(k=za),v(T).overflow=k),T}var It=/^\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)?)?$/,hr=/^\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)?/,Wn=[["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]],wn=[["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/]],va=/^\/?Date\((-?\d+)/i,dc=/^(?:(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}))$/,ea={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 yo(T){var k,M,W=T._i,ee=It.exec(W)||hr.exec(W),be,ft,ir,rn,ti=Wn.length,Vo=wn.length;if(ee){for(v(T).iso=!0,k=0,M=ti;k<M;k++)if(Wn[k][1].exec(ee[1])){ft=Wn[k][0],be=Wn[k][2]!==!1;break}if(ft==null){T._isValid=!1;return}if(ee[3]){for(k=0,M=Vo;k<M;k++)if(wn[k][1].exec(ee[3])){ir=(ee[2]||" ")+wn[k][0];break}if(ir==null){T._isValid=!1;return}}if(!be&&ir!=null){T._isValid=!1;return}if(ee[4])if(vn.exec(ee[4]))rn="Z";else{T._isValid=!1;return}T._f=ft+(ir||"")+(rn||""),Po(T)}else T._isValid=!1}function Zn(T,k,M,W,ee,be){var ft=[Jr(T),da.indexOf(k),parseInt(M,10),parseInt(W,10),parseInt(ee,10)];return be&&ft.push(parseInt(be,10)),ft}function Jr(T){var k=parseInt(T,10);return k<=49?2e3+k:k<=999?1900+k:k}function Cr(T){return T.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function Gr(T,k,M){if(T){var W=Jd.indexOf(T),ee=new Date(k[0],k[1],k[2]).getDay();if(W!==ee)return v(M).weekdayMismatch=!0,M._isValid=!1,!1}return!0}function zn(T,k,M){if(T)return ea[T];if(k)return 0;var W=parseInt(M,10),ee=W%100,be=(W-ee)/100;return be*60+ee}function _i(T){var k=dc.exec(Cr(T._i)),M;if(k){if(M=Zn(k[4],k[3],k[2],k[5],k[6],k[7]),!Gr(k[1],M,T))return;T._a=M,T._tzm=zn(k[8],k[9],k[10]),T._d=qf.apply(null,T._a),T._d.setUTCMinutes(T._d.getUTCMinutes()-T._tzm),v(T).rfc2822=!0}else T._isValid=!1}function Os(T){var k=va.exec(T._i);if(k!==null){T._d=new Date(+k[1]);return}if(yo(T),T._isValid===!1)delete T._isValid;else return;if(_i(T),T._isValid===!1)delete T._isValid;else return;T._strict?T._isValid=!1:e.createFromInputFallback(T)}e.createFromInputFallback=tt("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(T){T._d=new Date(T._i+(T._useUTC?" UTC":""))});function no(T,k,M){return T!=null?T:k!=null?k:M}function Qu(T){var k=new Date(e.now());return T._useUTC?[k.getUTCFullYear(),k.getUTCMonth(),k.getUTCDate()]:[k.getFullYear(),k.getMonth(),k.getDate()]}function qs(T){var k,M,W=[],ee,be,ft;if(!T._d){for(ee=Qu(T),T._w&&T._a[Ws]==null&&T._a[co]==null&&xa(T),T._dayOfYear!=null&&(ft=no(T._a[Zt],ee[Zt]),(T._dayOfYear>pa(ft)||T._dayOfYear===0)&&(v(T)._overflowDayOfYear=!0),M=qf(ft,0,T._dayOfYear),T._a[co]=M.getUTCMonth(),T._a[Ws]=M.getUTCDate()),k=0;k<3&&T._a[k]==null;++k)T._a[k]=W[k]=ee[k];for(;k<7;k++)T._a[k]=W[k]=T._a[k]==null?k===2?1:0:T._a[k];T._a[cs]===24&&T._a[fo]===0&&T._a[zs]===0&&T._a[Ts]===0&&(T._nextDay=!0,T._a[cs]=0),T._d=(T._useUTC?qf:Gd).apply(null,W),be=T._useUTC?T._d.getUTCDay():T._d.getDay(),T._tzm!=null&&T._d.setUTCMinutes(T._d.getUTCMinutes()-T._tzm),T._nextDay&&(T._a[cs]=24),T._w&&typeof T._w.d<"u"&&T._w.d!==be&&(v(T).weekdayMismatch=!0)}}function xa(T){var k,M,W,ee,be,ft,ir,rn,ti;k=T._w,k.GG!=null||k.W!=null||k.E!=null?(be=1,ft=4,M=no(k.GG,T._a[Zt],Kt(hn(),1,4).year),W=no(k.W,1),ee=no(k.E,1),(ee<1||ee>7)&&(rn=!0)):(be=T._locale._week.dow,ft=T._locale._week.doy,ti=Kt(hn(),be,ft),M=no(k.gg,T._a[Zt],ti.year),W=no(k.w,ti.week),k.d!=null?(ee=k.d,(ee<0||ee>6)&&(rn=!0)):k.e!=null?(ee=k.e+be,(k.e<0||k.e>6)&&(rn=!0)):ee=be),W<1||W>Di(M,be,ft)?v(T)._overflowWeeks=!0:rn!=null?v(T)._overflowWeekday=!0:(ir=Vp(M,W,ee,be,ft),T._a[Zt]=ir.year,T._dayOfYear=ir.dayOfYear)}e.ISO_8601=function(){},e.RFC_2822=function(){};function Po(T){if(T._f===e.ISO_8601){yo(T);return}if(T._f===e.RFC_2822){_i(T);return}T._a=[],v(T).empty=!0;var k=""+T._i,M,W,ee,be,ft,ir=k.length,rn=0,ti,Vo;for(ee=st(T._f,T._locale).match(Oe)||[],Vo=ee.length,M=0;M<Vo;M++)be=ee[M],W=(k.match(gi(be,T))||[])[0],W&&(ft=k.substr(0,k.indexOf(W)),ft.length>0&&v(T).unusedInput.push(ft),k=k.slice(k.indexOf(W)+W.length),rn+=W.length),er[be]?(W?v(T).empty=!1:v(T).unusedTokens.push(be),Su(be,W,T)):T._strict&&!W&&v(T).unusedTokens.push(be);v(T).charsLeftOver=ir-rn,k.length>0&&v(T).unusedInput.push(k),T._a[cs]<=12&&v(T).bigHour===!0&&T._a[cs]>0&&(v(T).bigHour=void 0),v(T).parsedDateParts=T._a.slice(0),v(T).meridiem=T._meridiem,T._a[cs]=hc(T._locale,T._a[cs],T._meridiem),ti=v(T).era,ti!==null&&(T._a[Zt]=T._locale.erasConvertYear(ti,T._a[Zt])),qs(T),pt(T)}function hc(T,k,M){var W;return M==null?k:T.meridiemHour!=null?T.meridiemHour(k,M):(T.isPM!=null&&(W=T.isPM(M),W&&k<12&&(k+=12),!W&&k===12&&(k=0)),k)}function sf(T){var k,M,W,ee,be,ft,ir=!1,rn=T._f.length;if(rn===0){v(T).invalidFormat=!0,T._d=new Date(NaN);return}for(ee=0;ee<rn;ee++)be=0,ft=!1,k=de({},T),T._useUTC!=null&&(k._useUTC=T._useUTC),k._f=T._f[ee],Po(k),U(k)&&(ft=!0),be+=v(k).charsLeftOver,be+=v(k).unusedTokens.length*10,v(k).score=be,ir?be<W&&(W=be,M=k):(W==null||be<W||ft)&&(W=be,M=k,ft&&(ir=!0));C(T,M||k)}function Pu(T){if(!T._d){var k=ze(T._i),M=k.day===void 0?k.date:k.day;T._a=S([k.year,k.month,M,k.hour,k.minute,k.second,k.millisecond],function(W){return W&&parseInt(W,10)}),qs(T)}}function of(T){var k=new ge(pt(Do(T)));return k._nextDay&&(k.add(1,"d"),k._nextDay=void 0),k}function Do(T){var k=T._i,M=T._f;return T._locale=T._locale||Ge(T._l),k===null||M===void 0&&k===""?$({nullInput:!0}):(typeof k=="string"&&(T._i=k=T._locale.preparse(k)),Fe(k)?new ge(pt(k)):(m(k)?T._d=k:o(M)?sf(T):M?Po(T):Ci(T),U(T)||(T._d=null),T))}function Ci(T){var k=T._i;p(k)?T._d=new Date(e.now()):m(k)?T._d=new Date(k.valueOf()):typeof k=="string"?Os(T):o(k)?(T._a=S(k.slice(0),function(M){return parseInt(M,10)}),qs(T)):u(k)?Pu(T):y(k)?T._d=new Date(k):e.createFromInputFallback(T)}function Qd(T,k,M,W,ee){var be={};return(k===!0||k===!1)&&(W=k,k=void 0),(M===!0||M===!1)&&(W=M,M=void 0),(u(T)&&f(T)||o(T)&&T.length===0)&&(T=void 0),be._isAMomentObject=!0,be._useUTC=be._isUTC=ee,be._l=M,be._i=T,be._f=k,be._strict=W,of(be)}function hn(T,k,M,W){return Qd(T,k,M,W,!1)}var eh=tt("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var T=hn.apply(null,arguments);return this.isValid()&&T.isValid()?T<this?this:T:$()}),Co=tt("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var T=hn.apply(null,arguments);return this.isValid()&&T.isValid()?T>this?this:T:$()});function Jn(T,k){var M,W;if(k.length===1&&o(k[0])&&(k=k[0]),!k.length)return hn();for(M=k[0],W=1;W<k.length;++W)(!k[W].isValid()||k[W][T](M))&&(M=k[W]);return M}function Aa(){var T=[].slice.call(arguments,0);return Jn("isBefore",T)}function zp(){var T=[].slice.call(arguments,0);return Jn("isAfter",T)}var Hf=function(){return Date.now?Date.now():+new Date},Vf=["year","quarter","month","week","day","hour","minute","second","millisecond"];function vg(T){var k,M=!1,W,ee=Vf.length;for(k in T)if(r(T,k)&&!(Pi.call(Vf,k)!==-1&&(T[k]==null||!isNaN(T[k]))))return!1;for(W=0;W<ee;++W)if(T[Vf[W]]){if(M)return!1;parseFloat(T[Vf[W]])!==Kr(T[Vf[W]])&&(M=!0)}return!0}function Gp(){return this._isValid}function u0(){return io(NaN)}function el(T){var k=ze(T),M=k.year||0,W=k.quarter||0,ee=k.month||0,be=k.week||k.isoWeek||0,ft=k.day||0,ir=k.hour||0,rn=k.minute||0,ti=k.second||0,Vo=k.millisecond||0;this._isValid=vg(k),this._milliseconds=+Vo+ti*1e3+rn*6e4+ir*1e3*60*60,this._days=+ft+be*7,this._months=+ee+W*3+M*12,this._data={},this._locale=Ge(),this._bubble()}function Sa(T){return T instanceof el}function Ol(T){return T<0?Math.round(-1*T)*-1:Math.round(T)}function ka(T,k,M){var W=Math.min(T.length,k.length),ee=Math.abs(T.length-k.length),be=0,ft;for(ft=0;ft<W;ft++)(M&&T[ft]!==k[ft]||!M&&Kr(T[ft])!==Kr(k[ft]))&&be++;return be+ee}function af(T,k){at(T,0,0,function(){var M=this.utcOffset(),W="+";return M<0&&(M=-M,W="-"),W+we(~~(M/60),2)+k+we(~~M%60,2)})}af("Z",":"),af("ZZ",""),bt("Z",vt),bt("ZZ",vt),En(["Z","ZZ"],function(T,k,M){M._useUTC=!0,M._tzm=go(vt,T)});var Ns=/([\+\-]|\d\d)/gi;function go(T,k){var M=(k||"").match(T),W,ee,be;return M===null?null:(W=M[M.length-1]||[],ee=(W+"").match(Ns)||["-",0,0],be=+(ee[1]*60)+Kr(ee[2]),be===0?0:ee[0]==="+"?be:-be)}function Us(T,k){var M,W;return k._isUTC?(M=k.clone(),W=(Fe(T)||m(T)?T.valueOf():hn(T).valueOf())-M.valueOf(),M._d.setTime(M._d.valueOf()+W),e.updateOffset(M,!1),M):hn(T).local()}function tl(T){return-Math.round(T._d.getTimezoneOffset())}e.updateOffset=function(){};function Wf(T,k,M){var W=this._offset||0,ee;if(!this.isValid())return T!=null?this:NaN;if(T!=null){if(typeof T=="string"){if(T=go(vt,T),T===null)return this}else Math.abs(T)<16&&!M&&(T=T*60);return!this._isUTC&&k&&(ee=tl(this)),this._offset=T,this._isUTC=!0,ee!=null&&this.add(ee,"m"),W!==T&&(!k||this._changeInProgress?ra(this,io(T-W,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this}else return this._isUTC?W:tl(this)}function fi(T,k){return T!=null?(typeof T!="string"&&(T=-T),this.utcOffset(T,k),this):-this.utcOffset()}function l0(T){return this.utcOffset(0,T)}function c0(T){return this._isUTC&&(this.utcOffset(0,T),this._isUTC=!1,T&&this.subtract(tl(this),"m")),this}function Uo(){if(this._tzm!=null)this.utcOffset(this._tzm,!1,!0);else if(typeof this._i=="string"){var T=go(wt,this._i);T!=null?this.utcOffset(T):this.utcOffset(0,!0)}return this}function ta(T){return this.isValid()?(T=T?hn(T).utcOffset():0,(this.utcOffset()-T)%60===0):!1}function Ia(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function mc(){if(!p(this._isDSTShifted))return this._isDSTShifted;var T={},k;return de(T,this),T=Do(T),T._a?(k=T._isUTC?A(T._a):hn(T._a),this._isDSTShifted=this.isValid()&&ka(T._a,k.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function yc(){return this.isValid()?!this._isUTC:!1}function gc(){return this.isValid()?this._isUTC:!1}function pi(){return this.isValid()?this._isUTC&&this._offset===0:!1}var Du=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,vc=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function io(T,k){var M=T,W=null,ee,be,ft;return Sa(T)?M={ms:T._milliseconds,d:T._days,M:T._months}:y(T)||!isNaN(+T)?(M={},k?M[k]=+T:M.milliseconds=+T):(W=Du.exec(T))?(ee=W[1]==="-"?-1:1,M={y:0,d:Kr(W[Ws])*ee,h:Kr(W[cs])*ee,m:Kr(W[fo])*ee,s:Kr(W[zs])*ee,ms:Kr(Ol(W[Ts]*1e3))*ee}):(W=vc.exec(T))?(ee=W[1]==="-"?-1:1,M={y:Nl(W[2],ee),M:Nl(W[3],ee),w:Nl(W[4],ee),d:Nl(W[5],ee),h:Nl(W[6],ee),m:Nl(W[7],ee),s:Nl(W[8],ee)}):M==null?M={}:typeof M=="object"&&("from"in M||"to"in M)&&(ft=f0(hn(M.from),hn(M.to)),M={},M.ms=ft.milliseconds,M.M=ft.months),be=new el(M),Sa(T)&&r(T,"_locale")&&(be._locale=T._locale),Sa(T)&&r(T,"_isValid")&&(be._isValid=T._isValid),be}io.fn=el.prototype,io.invalid=u0;function Nl(T,k){var M=T&&parseFloat(T.replace(",","."));return(isNaN(M)?0:M)*k}function Cu(T,k){var M={};return M.months=k.month()-T.month()+(k.year()-T.year())*12,T.clone().add(M.months,"M").isAfter(k)&&--M.months,M.milliseconds=+k-+T.clone().add(M.months,"M"),M}function f0(T,k){var M;return T.isValid()&&k.isValid()?(k=Us(k,T),T.isBefore(k)?M=Cu(T,k):(M=Cu(k,T),M.milliseconds=-M.milliseconds,M.months=-M.months),M):{milliseconds:0,months:0}}function uf(T,k){return function(M,W){var ee,be;return W!==null&&!isNaN(+W)&&(Ct(k,"moment()."+k+"(period, number) is deprecated. Please use moment()."+k+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),be=M,M=W,W=be),ee=io(M,W),ra(this,ee,T),this}}function ra(T,k,M,W){var ee=k._milliseconds,be=Ol(k._days),ft=Ol(k._months);T.isValid()&&(W=W==null?!0:W,ft&&At(T,Ku(T,"Month")+ft*M),be&&Dl(T,"Date",Ku(T,"Date")+be*M),ee&&T._d.setTime(T._d.valueOf()+ee*M),W&&e.updateOffset(T,be||ft))}var Gn=uf(1,"add"),Yp=uf(-1,"subtract");function th(T){return typeof T=="string"||T instanceof String}function rh(T){return Fe(T)||m(T)||th(T)||y(T)||Xm(T)||Jm(T)||T===null||T===void 0}function Jm(T){var k=u(T)&&!f(T),M=!1,W=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],ee,be,ft=W.length;for(ee=0;ee<ft;ee+=1)be=W[ee],M=M||r(T,be);return k&&M}function Xm(T){var k=o(T),M=!1;return k&&(M=T.filter(function(W){return!y(W)&&th(T)}).length===0),k&&M}function xg(T){var k=u(T)&&!f(T),M=!1,W=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"],ee,be;for(ee=0;ee<W.length;ee+=1)be=W[ee],M=M||r(T,be);return k&&M}function lv(T,k){var M=T.diff(k,"days",!0);return M<-6?"sameElse":M<-1?"lastWeek":M<0?"lastDay":M<1?"sameDay":M<2?"nextDay":M<7?"nextWeek":"sameElse"}function p0(T,k){arguments.length===1&&(arguments[0]?rh(arguments[0])?(T=arguments[0],k=void 0):xg(arguments[0])&&(k=arguments[0],T=void 0):(T=void 0,k=void 0));var M=T||hn(),W=Us(M,this).startOf("day"),ee=e.calendarFormat(this,W)||"sameElse",be=k&&(gt(k[ee])?k[ee].call(this,M):k[ee]);return this.format(be||this.localeData().calendar(ee,this,hn(M)))}function nh(){return new ge(this)}function _g(T,k){var M=Fe(T)?T:hn(T);return this.isValid()&&M.isValid()?(k=me(k)||"millisecond",k==="millisecond"?this.valueOf()>M.valueOf():M.valueOf()<this.clone().startOf(k).valueOf()):!1}function Au(T,k){var M=Fe(T)?T:hn(T);return this.isValid()&&M.isValid()?(k=me(k)||"millisecond",k==="millisecond"?this.valueOf()<M.valueOf():this.clone().endOf(k).valueOf()<M.valueOf()):!1}function xc(T,k,M,W){var ee=Fe(T)?T:hn(T),be=Fe(k)?k:hn(k);return this.isValid()&&ee.isValid()&&be.isValid()?(W=W||"()",(W[0]==="("?this.isAfter(ee,M):!this.isBefore(ee,M))&&(W[1]===")"?this.isBefore(be,M):!this.isAfter(be,M))):!1}function na(T,k){var M=Fe(T)?T:hn(T),W;return this.isValid()&&M.isValid()?(k=me(k)||"millisecond",k==="millisecond"?this.valueOf()===M.valueOf():(W=M.valueOf(),this.clone().startOf(k).valueOf()<=W&&W<=this.clone().endOf(k).valueOf())):!1}function Za(T,k){return this.isSame(T,k)||this.isAfter(T,k)}function ia(T,k){return this.isSame(T,k)||this.isBefore(T,k)}function lf(T,k,M){var W,ee,be;if(!this.isValid())return NaN;if(W=Us(T,this),!W.isValid())return NaN;switch(ee=(W.utcOffset()-this.utcOffset())*6e4,k=me(k),k){case"year":be=Qa(this,W)/12;break;case"month":be=Qa(this,W);break;case"quarter":be=Qa(this,W)/3;break;case"second":be=(this-W)/1e3;break;case"minute":be=(this-W)/6e4;break;case"hour":be=(this-W)/36e5;break;case"day":be=(this-W-ee)/864e5;break;case"week":be=(this-W-ee)/6048e5;break;default:be=this-W}return M?be:ci(be)}function Qa(T,k){if(T.date()<k.date())return-Qa(k,T);var M=(k.year()-T.year())*12+(k.month()-T.month()),W=T.clone().add(M,"months"),ee,be;return k-W<0?(ee=T.clone().add(M-1,"months"),be=(k-W)/(W-ee)):(ee=T.clone().add(M+1,"months"),be=(k-W)/(ee-W)),-(M+be)||0}e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",e.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";function Fl(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function zf(T){if(!this.isValid())return null;var k=T!==!0,M=k?this.clone().utc():this;return M.year()<0||M.year()>9999?Qe(M,k?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):gt(Date.prototype.toISOString)?k?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",Qe(M,"Z")):Qe(M,k?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function Gf(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var T="moment",k="",M,W,ee,be;return this.isLocal()||(T=this.utcOffset()===0?"moment.utc":"moment.parseZone",k="Z"),M="["+T+'("]',W=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",ee="-MM-DD[T]HH:mm:ss.SSS",be=k+'[")]',this.format(M+W+ee+be)}function Kp(T){T||(T=this.isUtc()?e.defaultFormatUtc:e.defaultFormat);var k=Qe(this,T);return this.localeData().postformat(k)}function Zm(T,k){return this.isValid()&&(Fe(T)&&T.isValid()||hn(T).isValid())?io({to:this,from:T}).locale(this.locale()).humanize(!k):this.localeData().invalidDate()}function d0(T){return this.from(hn(),T)}function Yf(T,k){return this.isValid()&&(Fe(T)&&T.isValid()||hn(T).isValid())?io({from:this,to:T}).locale(this.locale()).humanize(!k):this.localeData().invalidDate()}function _c(T){return this.to(hn(),T)}function h0(T){var k;return T===void 0?this._locale._abbr:(k=Ge(T),k!=null&&(this._locale=k),this)}var eu=tt("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(T){return T===void 0?this.localeData():this.locale(T)});function m0(){return this._locale}var Rl=1e3,rl=60*Rl,Sc=60*rl,Qm=(365*400+97)*24*Sc;function di(T,k){return(T%k+k)%k}function vo(T,k,M){return T<100&&T>=0?new Date(T+400,k,M)-Qm:new Date(T,k,M).valueOf()}function tu(T,k,M){return T<100&&T>=0?Date.UTC(T+400,k,M)-Qm:Date.UTC(T,k,M)}function ku(T){var k,M;if(T=me(T),T===void 0||T==="millisecond"||!this.isValid())return this;switch(M=this._isUTC?tu:vo,T){case"year":k=M(this.year(),0,1);break;case"quarter":k=M(this.year(),this.month()-this.month()%3,1);break;case"month":k=M(this.year(),this.month(),1);break;case"week":k=M(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":k=M(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":k=M(this.year(),this.month(),this.date());break;case"hour":k=this._d.valueOf(),k-=di(k+(this._isUTC?0:this.utcOffset()*rl),Sc);break;case"minute":k=this._d.valueOf(),k-=di(k,rl);break;case"second":k=this._d.valueOf(),k-=di(k,Rl);break}return this._d.setTime(k),e.updateOffset(this,!0),this}function Ll(T){var k,M;if(T=me(T),T===void 0||T==="millisecond"||!this.isValid())return this;switch(M=this._isUTC?tu:vo,T){case"year":k=M(this.year()+1,0,1)-1;break;case"quarter":k=M(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":k=M(this.year(),this.month()+1,1)-1;break;case"week":k=M(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":k=M(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":k=M(this.year(),this.month(),this.date()+1)-1;break;case"hour":k=this._d.valueOf(),k+=Sc-di(k+(this._isUTC?0:this.utcOffset()*rl),Sc)-1;break;case"minute":k=this._d.valueOf(),k+=rl-di(k,rl)-1;break;case"second":k=this._d.valueOf(),k+=Rl-di(k,Rl)-1;break}return this._d.setTime(k),e.updateOffset(this,!0),this}function Oa(){return this._d.valueOf()-(this._offset||0)*6e4}function cf(){return Math.floor(this.valueOf()/1e3)}function Ml(){return new Date(this.valueOf())}function Sg(){var T=this;return[T.year(),T.month(),T.date(),T.hour(),T.minute(),T.second(),T.millisecond()]}function y0(){var T=this;return{years:T.year(),months:T.month(),date:T.date(),hours:T.hours(),minutes:T.minutes(),seconds:T.seconds(),milliseconds:T.milliseconds()}}function Kf(){return this.isValid()?this.toISOString():null}function Jp(){return U(this)}function cv(){return C({},v(this))}function ey(){return v(this).overflow}function ih(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}at("N",0,0,"eraAbbr"),at("NN",0,0,"eraAbbr"),at("NNN",0,0,"eraAbbr"),at("NNNN",0,0,"eraName"),at("NNNNN",0,0,"eraNarrow"),at("y",["y",1],"yo","eraYear"),at("y",["yy",2],0,"eraYear"),at("y",["yyy",3],0,"eraYear"),at("y",["yyyy",4],0,"eraYear"),bt("N",Zp),bt("NN",Zp),bt("NNN",Zp),bt("NNNN",oh),bt("NNNNN",ah),En(["N","NN","NNN","NNNN","NNNNN"],function(T,k,M,W){var ee=M._locale.erasParse(T,W,M._strict);ee?v(M).era=ee:v(M).invalidEra=T}),bt("y",Da),bt("yy",Da),bt("yyy",Da),bt("yyyy",Da),bt("yo",v0),En(["y","yy","yyy","yyyy"],Zt),En(["yo"],function(T,k,M,W){var ee;M._locale._eraYearOrdinalRegex&&(ee=T.match(M._locale._eraYearOrdinalRegex)),M._locale.eraYearOrdinalParse?k[Zt]=M._locale.eraYearOrdinalParse(T,ee):k[Zt]=parseInt(T,10)});function ty(T,k){var M,W,ee,be=this._eras||Ge("en")._eras;for(M=0,W=be.length;M<W;++M){switch(typeof be[M].since){case"string":ee=e(be[M].since).startOf("day"),be[M].since=ee.valueOf();break}switch(typeof be[M].until){case"undefined":be[M].until=1/0;break;case"string":ee=e(be[M].until).startOf("day").valueOf(),be[M].until=ee.valueOf();break}}return be}function ry(T,k,M){var W,ee,be=this.eras(),ft,ir,rn;for(T=T.toUpperCase(),W=0,ee=be.length;W<ee;++W)if(ft=be[W].name.toUpperCase(),ir=be[W].abbr.toUpperCase(),rn=be[W].narrow.toUpperCase(),M)switch(k){case"N":case"NN":case"NNN":if(ir===T)return be[W];break;case"NNNN":if(ft===T)return be[W];break;case"NNNNN":if(rn===T)return be[W];break}else if([ft,ir,rn].indexOf(T)>=0)return be[W]}function g0(T,k){var M=T.since<=T.until?1:-1;return k===void 0?e(T.since).year():e(T.since).year()+(k-T.offset)*M}function ff(){var T,k,M,W=this.localeData().eras();for(T=0,k=W.length;T<k;++T)if(M=this.clone().startOf("day").valueOf(),W[T].since<=M&&M<=W[T].until||W[T].until<=M&&M<=W[T].since)return W[T].name;return""}function ny(){var T,k,M,W=this.localeData().eras();for(T=0,k=W.length;T<k;++T)if(M=this.clone().startOf("day").valueOf(),W[T].since<=M&&M<=W[T].until||W[T].until<=M&&M<=W[T].since)return W[T].narrow;return""}function Tg(){var T,k,M,W=this.localeData().eras();for(T=0,k=W.length;T<k;++T)if(M=this.clone().startOf("day").valueOf(),W[T].since<=M&&M<=W[T].until||W[T].until<=M&&M<=W[T].since)return W[T].abbr;return""}function Xp(){var T,k,M,W,ee=this.localeData().eras();for(T=0,k=ee.length;T<k;++T)if(M=ee[T].since<=ee[T].until?1:-1,W=this.clone().startOf("day").valueOf(),ee[T].since<=W&&W<=ee[T].until||ee[T].until<=W&&W<=ee[T].since)return(this.year()-e(ee[T].since).year())*M+ee[T].offset;return this.year()}function sa(T){return r(this,"_erasNameRegex")||Xf.call(this),T?this._erasNameRegex:this._erasRegex}function sh(T){return r(this,"_erasAbbrRegex")||Xf.call(this),T?this._erasAbbrRegex:this._erasRegex}function Jf(T){return r(this,"_erasNarrowRegex")||Xf.call(this),T?this._erasNarrowRegex:this._erasRegex}function Zp(T,k){return k.erasAbbrRegex(T)}function oh(T,k){return k.erasNameRegex(T)}function ah(T,k){return k.erasNarrowRegex(T)}function v0(T,k){return k._eraYearOrdinalRegex||Da}function Xf(){var T=[],k=[],M=[],W=[],ee,be,ft,ir,rn,ti=this.eras();for(ee=0,be=ti.length;ee<be;++ee)ft=vi(ti[ee].name),ir=vi(ti[ee].abbr),rn=vi(ti[ee].narrow),k.push(ft),T.push(ir),M.push(rn),W.push(ft),W.push(ir),W.push(rn);this._erasRegex=new RegExp("^("+W.join("|")+")","i"),this._erasNameRegex=new RegExp("^("+k.join("|")+")","i"),this._erasAbbrRegex=new RegExp("^("+T.join("|")+")","i"),this._erasNarrowRegex=new RegExp("^("+M.join("|")+")","i")}at(0,["gg",2],0,function(){return this.weekYear()%100}),at(0,["GG",2],0,function(){return this.isoWeekYear()%100});function Zf(T,k){at(0,[T,T.length],0,k)}Zf("gggg","weekYear"),Zf("ggggg","weekYear"),Zf("GGGG","isoWeekYear"),Zf("GGGGG","isoWeekYear"),bt("G",Xe),bt("g",Xe),bt("GG",pn,Lr),bt("gg",pn,Lr),bt("GGGG",bo,kn),bt("gggg",bo,kn),bt("GGGGG",_u,Vn),bt("ggggg",_u,Vn),rs(["gggg","ggggg","GGGG","GGGGG"],function(T,k,M,W){k[W.substr(0,2)]=Kr(T)}),rs(["gg","GG"],function(T,k,M,W){k[W]=e.parseTwoDigitYear(T)});function Qf(T){return ru.call(this,T,this.week(),this.weekday()+this.localeData()._week.dow,this.localeData()._week.dow,this.localeData()._week.doy)}function iy(T){return ru.call(this,T,this.isoWeek(),this.isoWeekday(),1,4)}function uh(){return Di(this.year(),1,4)}function lh(){return Di(this.isoWeekYear(),1,4)}function Tc(){var T=this.localeData()._week;return Di(this.year(),T.dow,T.doy)}function pf(){var T=this.localeData()._week;return Di(this.weekYear(),T.dow,T.doy)}function ru(T,k,M,W,ee){var be;return T==null?Kt(this,W,ee).year:(be=Di(T,W,ee),k>be&&(k=be),df.call(this,T,k,M,W,ee))}function df(T,k,M,W,ee){var be=Vp(T,k,M,W,ee),ft=qf(be.year,0,be.dayOfYear);return this.year(ft.getUTCFullYear()),this.month(ft.getUTCMonth()),this.date(ft.getUTCDate()),this}at("Q",0,"Qo","quarter"),bt("Q",Rr),En("Q",function(T,k){k[co]=(Kr(T)-1)*3});function x0(T){return T==null?Math.ceil((this.month()+1)/3):this.month((T-1)*3+this.month()%3)}at("D",["DD",2],"Do","date"),bt("D",pn,dr),bt("DD",pn,Lr),bt("Do",function(T,k){return T?k._dayOfMonthOrdinalParse||k._ordinalParse:k._dayOfMonthOrdinalParseLenient}),En(["D","DD"],Ws),En("Do",function(T,k){k[Ws]=Kr(T.match(pn)[0])});var Ec=zr("Date",!0);at("DDD",["DDDD",3],"DDDo","dayOfYear"),bt("DDD",Yi),bt("DDDD",Rn),En(["DDD","DDDD"],function(T,k,M){M._dayOfYear=Kr(T)});function nl(T){var k=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return T==null?k:this.add(T-k,"d")}at("m",["mm",2],0,"minute"),bt("m",pn,Tn),bt("mm",pn,Lr),En(["m","mm"],fo);var _0=zr("Minutes",!1);at("s",["ss",2],0,"second"),bt("s",pn,Tn),bt("ss",pn,Lr),En(["s","ss"],zs);var Qp=zr("Seconds",!1);at("S",0,0,function(){return~~(this.millisecond()/100)}),at(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),at(0,["SSS",3],0,"millisecond"),at(0,["SSSS",4],0,function(){return this.millisecond()*10}),at(0,["SSSSS",5],0,function(){return this.millisecond()*100}),at(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3}),at(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4}),at(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5}),at(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6}),bt("S",Yi,Rr),bt("SS",Yi,Lr),bt("SSS",Yi,Rn);var Iu,S0;for(Iu="SSSS";Iu.length<=9;Iu+="S")bt(Iu,Da);function sy(T,k){k[Ts]=Kr(("0."+T)*1e3)}for(Iu="S";Iu.length<=9;Iu+="S")En(Iu,sy);S0=zr("Milliseconds",!1),at("z",0,0,"zoneAbbr"),at("zz",0,0,"zoneName");function ch(){return this._isUTC?"UTC":""}function fh(){return this._isUTC?"Coordinated Universal Time":""}var Bt=ge.prototype;Bt.add=Gn,Bt.calendar=p0,Bt.clone=nh,Bt.diff=lf,Bt.endOf=Ll,Bt.format=Kp,Bt.from=Zm,Bt.fromNow=d0,Bt.to=Yf,Bt.toNow=_c,Bt.get=Ga,Bt.invalidAt=ey,Bt.isAfter=_g,Bt.isBefore=Au,Bt.isBetween=xc,Bt.isSame=na,Bt.isSameOrAfter=Za,Bt.isSameOrBefore=ia,Bt.isValid=Jp,Bt.lang=eu,Bt.locale=h0,Bt.localeData=m0,Bt.max=Co,Bt.min=eh,Bt.parsingFlags=cv,Bt.set=Ki,Bt.startOf=ku,Bt.subtract=Yp,Bt.toArray=Sg,Bt.toObject=y0,Bt.toDate=Ml,Bt.toISOString=zf,Bt.inspect=Gf,typeof Symbol<"u"&&Symbol.for!=null&&(Bt[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),Bt.toJSON=Kf,Bt.toString=Fl,Bt.unix=cf,Bt.valueOf=Oa,Bt.creationData=ih,Bt.eraName=ff,Bt.eraNarrow=ny,Bt.eraAbbr=Tg,Bt.eraYear=Xp,Bt.year=Tu,Bt.isLeapYear=ac,Bt.weekYear=Qf,Bt.isoWeekYear=iy,Bt.quarter=Bt.quarters=x0,Bt.month=Ya,Bt.daysInMonth=s0,Bt.week=Bt.weeks=o0,Bt.isoWeek=Bt.isoWeeks=Yd,Bt.weeksInYear=Tc,Bt.weeksInWeekYear=pf,Bt.isoWeeksInYear=uh,Bt.isoWeeksInISOWeekYear=lh,Bt.date=Ec,Bt.day=Bt.days=ys,Bt.weekday=dn,Bt.isoWeekday=wu,Bt.dayOfYear=nl,Bt.hour=Bt.hours=Qo,Bt.minute=Bt.minutes=_0,Bt.second=Bt.seconds=Qp,Bt.millisecond=Bt.milliseconds=S0,Bt.utcOffset=Wf,Bt.utc=l0,Bt.local=c0,Bt.parseZone=Uo,Bt.hasAlignedHourOffset=ta,Bt.isDST=Ia,Bt.isLocal=yc,Bt.isUtcOffset=gc,Bt.isUtc=pi,Bt.isUTC=pi,Bt.zoneAbbr=ch,Bt.zoneName=fh,Bt.dates=tt("dates accessor is deprecated. Use date instead.",Ec),Bt.months=tt("months accessor is deprecated. Use month instead",Ya),Bt.years=tt("years accessor is deprecated. Use year instead",Tu),Bt.zone=tt("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",fi),Bt.isDSTShifted=tt("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",mc);function tn(T){return hn(T*1e3)}function $o(){return hn.apply(null,arguments).parseZone()}function Gs(T){return T}var mn=oe.prototype;mn.calendar=Se,mn.longDateFormat=Dr,mn.invalidDate=tr,mn.ordinal=lr,mn.preparse=Gs,mn.postformat=Gs,mn.relativeTime=Pt,mn.pastFuture=xt,mn.set=ct,mn.eras=ty,mn.erasParse=ry,mn.erasConvertYear=g0,mn.erasAbbrRegex=sh,mn.erasNameRegex=sa,mn.erasNarrowRegex=Jf,mn.months=i0,mn.monthsShort=Xc,mn.monthsParse=Zo,mn.monthsRegex=Ui,mn.monthsShortRegex=Zc,mn.week=Wp,mn.firstDayOfYear=Uf,mn.firstDayOfWeek=Ka,mn.weekdays=Al,mn.weekdaysMin=Eu,mn.weekdaysShort=Ja,mn.weekdaysParse=Zu,mn.weekdaysRegex=Xd,mn.weekdaysShortRegex=Is,mn.weekdaysMinRegex=fc,mn.isPM=Zd,mn.meridiem=nf;function Ta(T,k,M,W){var ee=Ge(),be=A().set(W,k);return ee[M](be,T)}function ed(T,k,M){if(y(T)&&(k=T,T=void 0),T=T||"",k!=null)return Ta(T,k,M,"month");var W,ee=[];for(W=0;W<12;W++)ee[W]=Ta(T,W,M,"month");return ee}function Fs(T,k,M,W){typeof T=="boolean"?(y(k)&&(M=k,k=void 0),k=k||""):(k=T,M=k,T=!1,y(k)&&(M=k,k=void 0),k=k||"");var ee=Ge(),be=T?ee._week.dow:0,ft,ir=[];if(M!=null)return Ta(k,(M+be)%7,W,"day");for(ft=0;ft<7;ft++)ir[ft]=Ta(k,(ft+be)%7,W,"day");return ir}function td(T,k){return ed(T,k,"months")}function bn(T,k){return ed(T,k,"monthsShort")}function ep(T,k,M){return Fs(T,k,M,"weekdays")}function hf(T,k,M){return Fs(T,k,M,"weekdaysShort")}function T0(T,k,M){return Fs(T,k,M,"weekdaysMin")}ne("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(T){var k=T%10,M=Kr(T%100/10)===1?"th":k===1?"st":k===2?"nd":k===3?"rd":"th";return T+M}}),e.lang=tt("moment.lang is deprecated. Use moment.locale instead.",ne),e.langData=tt("moment.langData is deprecated. Use moment.localeData instead.",Ge);var il=Math.abs;function E0(){var T=this._data;return this._milliseconds=il(this._milliseconds),this._days=il(this._days),this._months=il(this._months),T.milliseconds=il(T.milliseconds),T.seconds=il(T.seconds),T.minutes=il(T.minutes),T.hours=il(T.hours),T.months=il(T.months),T.years=il(T.years),this}function ph(T,k,M,W){var ee=io(k,M);return T._milliseconds+=W*ee._milliseconds,T._days+=W*ee._days,T._months+=W*ee._months,T._bubble()}function wc(T,k){return ph(this,T,k,1)}function Er(T,k){return ph(this,T,k,-1)}function mf(T){return T<0?Math.floor(T):Math.ceil(T)}function w0(){var T=this._milliseconds,k=this._days,M=this._months,W=this._data,ee,be,ft,ir,rn;return T>=0&&k>=0&&M>=0||T<=0&&k<=0&&M<=0||(T+=mf(sl(M)+k)*864e5,k=0,M=0),W.milliseconds=T%1e3,ee=ci(T/1e3),W.seconds=ee%60,be=ci(ee/60),W.minutes=be%60,ft=ci(be/60),W.hours=ft%24,k+=ci(ft/24),rn=ci(nu(k)),M+=rn,k-=mf(sl(rn)),ir=ci(M/12),M%=12,W.days=k,W.months=M,W.years=ir,this}function nu(T){return T*4800/146097}function sl(T){return T*146097/4800}function rd(T){if(!this.isValid())return NaN;var k,M,W=this._milliseconds;if(T=me(T),T==="month"||T==="quarter"||T==="year")switch(k=this._days+W/864e5,M=this._months+nu(k),T){case"month":return M;case"quarter":return M/3;case"year":return M/12}else switch(k=this._days+Math.round(sl(this._months)),T){case"week":return k/7+W/6048e5;case"day":return k+W/864e5;case"hour":return k*24+W/36e5;case"minute":return k*1440+W/6e4;case"second":return k*86400+W/1e3;case"millisecond":return Math.floor(k*864e5)+W;default:throw new Error("Unknown unit "+T)}}function Na(T){return function(){return this.as(T)}}var tp=Na("ms"),b0=Na("s"),Bl=Na("m"),nd=Na("h"),yf=Na("d"),rp=Na("w"),Ou=Na("M"),ol=Na("Q"),id=Na("y"),gf=tp;function oa(){return io(this)}function Ai(T){return T=me(T),this.isValid()?this[T+"s"]():NaN}function Si(T){return function(){return this.isValid()?this._data[T]:NaN}}var dh=Si("milliseconds"),Fa=Si("seconds"),oy=Si("minutes"),np=Si("hours"),P0=Si("days"),Eg=Si("months"),D0=Si("years");function hh(){return ci(this.days()/7)}var iu=Math.round,bc={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function ip(T,k,M,W,ee){return ee.relativeTime(k||1,!!M,T,W)}function ay(T,k,M,W){var ee=io(T).abs(),be=iu(ee.as("s")),ft=iu(ee.as("m")),ir=iu(ee.as("h")),rn=iu(ee.as("d")),ti=iu(ee.as("M")),Vo=iu(ee.as("w")),Ra=iu(ee.as("y")),Es=be<=M.ss&&["s",be]||be<M.s&&["ss",be]||ft<=1&&["m"]||ft<M.m&&["mm",ft]||ir<=1&&["h"]||ir<M.h&&["hh",ir]||rn<=1&&["d"]||rn<M.d&&["dd",rn];return M.w!=null&&(Es=Es||Vo<=1&&["w"]||Vo<M.w&&["ww",Vo]),Es=Es||ti<=1&&["M"]||ti<M.M&&["MM",ti]||Ra<=1&&["y"]||["yy",Ra],Es[2]=k,Es[3]=+T>0,Es[4]=W,ip.apply(null,Es)}function uy(T){return T===void 0?iu:typeof T=="function"?(iu=T,!0):!1}function sd(T,k){return bc[T]===void 0?!1:k===void 0?bc[T]:(bc[T]=k,T==="s"&&(bc.ss=k-1),!0)}function wg(T,k){if(!this.isValid())return this.localeData().invalidDate();var M=!1,W=bc,ee,be;return typeof T=="object"&&(k=T,T=!1),typeof T=="boolean"&&(M=T),typeof k=="object"&&(W=Object.assign({},bc,k),k.s!=null&&k.ss==null&&(W.ss=k.s-1)),ee=this.localeData(),be=ay(this,!M,W,ee),M&&(be=ee.pastFuture(+this,be)),ee.postformat(be)}var mh=Math.abs;function Pc(T){return(T>0)-(T<0)||+T}function Ho(){if(!this.isValid())return this.localeData().invalidDate();var T=mh(this._milliseconds)/1e3,k=mh(this._days),M=mh(this._months),W,ee,be,ft,ir=this.asSeconds(),rn,ti,Vo,Ra;return ir?(W=ci(T/60),ee=ci(W/60),T%=60,W%=60,be=ci(M/12),M%=12,ft=T?T.toFixed(3).replace(/\.?0+$/,""):"",rn=ir<0?"-":"",ti=Pc(this._months)!==Pc(ir)?"-":"",Vo=Pc(this._days)!==Pc(ir)?"-":"",Ra=Pc(this._milliseconds)!==Pc(ir)?"-":"",rn+"P"+(be?ti+be+"Y":"")+(M?ti+M+"M":"")+(k?Vo+k+"D":"")+(ee||W||T?"T":"")+(ee?Ra+ee+"H":"")+(W?Ra+W+"M":"")+(T?Ra+ft+"S":"")):"P0D"}var In=el.prototype;In.isValid=Gp,In.abs=E0,In.add=wc,In.subtract=Er,In.as=rd,In.asMilliseconds=tp,In.asSeconds=b0,In.asMinutes=Bl,In.asHours=nd,In.asDays=yf,In.asWeeks=rp,In.asMonths=Ou,In.asQuarters=ol,In.asYears=id,In.valueOf=gf,In._bubble=w0,In.clone=oa,In.get=Ai,In.milliseconds=dh,In.seconds=Fa,In.minutes=oy,In.hours=np,In.days=P0,In.weeks=hh,In.months=Eg,In.years=D0,In.humanize=wg,In.toISOString=Ho,In.toString=Ho,In.toJSON=Ho,In.locale=h0,In.localeData=m0,In.toIsoString=tt("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ho),In.lang=eu,at("X",0,0,"unix"),at("x",0,0,"valueOf"),bt("x",Xe),bt("X",jt),En("X",function(T,k,M){M._d=new Date(parseFloat(T)*1e3)}),En("x",function(T,k,M){M._d=new Date(Kr(T))});return e.version="2.30.1",n(hn),e.fn=Bt,e.min=Aa,e.max=zp,e.now=Hf,e.utc=A,e.unix=tn,e.months=td,e.isDate=m,e.locale=ne,e.invalid=$,e.duration=io,e.isMoment=Fe,e.weekdays=ep,e.parseZone=$o,e.localeData=Ge,e.isDuration=Sa,e.monthsShort=bn,e.weekdaysMin=T0,e.defineLocale=ke,e.updateLocale=Ze,e.locales=lt,e.weekdaysShort=hf,e.normalizeUnits=me,e.relativeTimeRounding=uy,e.relativeTimeThreshold=sd,e.calendarFormat=lv,e.prototype=Bt,e.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"},e})});function $y(){return!process.stdout.isTTY||process.env.FORCE_NON_TTY==="1"}function Eb({prefix:t="cli"}){return Ps.default.createElement(Ss.Text,{color:"grey"},"[",t,"]")}function ss(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m\x1B[31m[\u2718] \x1B[0m${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,null,Ps.default.createElement(Eb,{prefix:e}),Ps.default.createElement(Ss.Text,{color:"red"},"[\u2718] "),t));n()}function uS(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m\x1B[32m[\u2714] \x1B[0m${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,null,Ps.default.createElement(Eb,{prefix:e}),Ps.default.createElement(Ss.Text,{color:"green"},"[\u2714] "),t));n()}function vm(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m \x1B[33mWARNING:\x1B[0m ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,null,Ps.default.createElement(Eb,{prefix:e}),Ps.default.createElement(Ss.Text,{color:"orange"},"\u2757\uFE0F "),t));n()}function z$(t){if($y()){console.log(t);return}let{unmount:e}=(0,Ss.render)(Ps.default.createElement(Ss.Text,{color:"cyan"},t));e()}function Wr(t,e="cli"){if($y()){console.log(`\x1B[90m[${e}]\x1B[0m\x1B[37m ${t}\x1B[0m`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Text,{color:"white"},Ps.default.createElement(Eb,{prefix:e}),t));n()}function oO({timestamp:t}){return Ps.default.createElement(Ss.Box,{width:13},Ps.default.createElement(Ss.Text,{color:"grey"},(0,aS.default)(t).format("HH:mm:ss.SSS")))}function G$(t,e){if($y()){console.log(`${(0,aS.default)(e).format("HH:mm:ss.SSS")} ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Box,null,Ps.default.createElement(oO,{timestamp:e}),Ps.default.createElement(Ss.Text,{color:"white"},t)));n()}function Y$(t,e){if($y()){console.log(`${(0,aS.default)(e).format("HH:mm:ss.SSS")} [WARNING] ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Box,null,Ps.default.createElement(oO,{timestamp:e}),Ps.default.createElement(Ss.Text,{color:"white",backgroundColor:"yellow"},"[WARNING]"),Ps.default.createElement(Ss.Text,null," ",t)));n()}function aO(t,e){if($y()){console.log(`${(0,aS.default)(e).format("HH:mm:ss.SSS")} [ERROR] ${t}`);return}let{unmount:n}=(0,Ss.render)(Ps.default.createElement(Ss.Box,null,Ps.default.createElement(oO,{timestamp:e}),Ps.default.createElement(Ss.Text,{color:"white",backgroundColor:"red"},"[ERROR]"),Ps.default.createElement(Ss.Text,{color:"white"}," ",t)));n()}var Ss,Ps,aS,Hu=mt(()=>{Ss=cr(Tb()),Ps=cr(Xs()),aS=cr(W$())});var J$,K$=mt(()=>{J$={name:"edgeone",version:"1.4.3",description:"Command-line interface for TencentCloud Pages Functions",bin:{edgeone:"./edgeone-bin/edgeone.js"},files:["./edgeone-bin/edgeone.js","./edgeone-dist/cli.js","./edgeone-dist/templates","./edgeone-dist/pages/dev/runner-worker.js"],author:"",keywords:["tencent","edgeone","edgefunctions","edgeone","cli","typescript"],scripts:{clean:"rimraf ./edgeone-dist ./edgeone-bin ./libs-node-ai ./libs-kv-client",bundle:"node -r esbuild-register ./scripts/bundle.ts",watch:"node -r esbuild-register ./scripts/bundle.ts watch",build:"npm run clean && npm run build:pages-ai && npm run build:kv-client && npm run bundle","build:pages-ai":"node ./scripts/build-pages-ai.js","build:kv-client":"node ./scripts/build-kv-client.js",format:'prettier --write "src/**/*.{ts,tsx,js,jsx,json,md}" "scripts/**/*.{ts,js}" "*.{json,md}"',prepack:"npm run build",prepublishOnly:"npm run build",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage"},dependencies:{"@edgeone/framework-detect":"^0.0.2","@edgeone/nuxt-pages":"1.1.0","@edgeone/opennextjs-pages":"0.2.2",archiver:"^7.0.1",chokidar:"^4.0.1","common-path-prefix":"^1.0.0","cos-nodejs-sdk-v5":"^2.14.7","cross-spawn":"^7.0.6",crypto:"^1.0.1","detect-port":"^2.1.0",esbuild:"^0.19.2","esbuild-plugin-polyfill-node":"^0.3.0","esbuild-plugin-vue":"^0.2.4","fast-glob":"^3.3.0","fs-extra":"^11.3.1","ink-table":"^3.1.0",inquirer:"^8.2.4",install:"^0.13.0",lodash:"^4.17.21","mime-types":"^3.0.1",minimatch:"^9.0.5","node-persist":"^4.0.3",npm:"^10.9.1",open:"^8.4.2","p-map":"^5.5.0","parse-gitignore":"^2.0.0",portfinder:"^1.0.32",undici:"^5.29.0",vitest:"^4.0.17"},devDependencies:{"@babel/generator":"^7.28.0","@babel/parser":"^7.28.0","@babel/traverse":"^7.28.0","@babel/types":"^7.28.0","@tencent/capi-nodejs-sdk":"^2.3.2","@types/http-proxy":"^1.17.12","@types/inquirer":"^9.0.8","@types/ip":"^1.1.0","@types/lodash":"^4.14.198","@types/prompts":"^2.4.4","@types/react":"^17.0.2","@types/uuid":"^9.0.3","@types/ws":"^8.5.7","@types/yargs":"^17.0.24","@vitest/coverage-v8":"^4.0.17",axios:"^1.7.9",chalk:"^5.3.0",cookie:"^1.0.2",dotenv:"^16.3.1","esbuild-register":"^3.6.0",execa:"^7.1.1","http-proxy":"^1.18.1",husky:"^8.0.3",ink:"^3.2.0",ip:"^2.0.1",json5:"^2.2.3","lint-staged":"^15.2.0",lodash:"^4.17.21",moment:"^2.30.1","node-fetch":"^3.3.2",prettier:"^3.1.1",prompts:"^2.4.2",react:"^17.0.2",rimraf:"^6.0.1",semiver:"^1.1.0",sirv:"^2.0.3","tencentcloud-cls-sdk-js-web":"^1.0.13","ts-node":"^10.9.2",typescript:"^5.9.3","update-check":"^1.5.4",uuid:"^9.0.0",ws:"^8.14.2",yargs:"^17.6.2",zod:"^3.23.8","zod-to-json-schema":"^3.23.5"},engines:{node:">=12"},"lint-staged":{"*.{ts,tsx,js,jsx,json,md}":["prettier --write"]}}});function FPe(){var t,e;return{run_id:NPe,cli_version:(e=(t=J$)==null?void 0:t.version)!=null?e:"unknown",node_version:process.version,os_platform:lO.default.platform(),os_arch:lO.default.arch(),app_type:"cli",app_id:process.env.AppId||void 0,uin:process.env.Uin||void 0,instance_id:process.env.ProjectId||void 0,is_ci:process.env.CI==="true"}}function RPe(t,e){try{if(typeof process.send!="function")return;process.send(JSON.stringify({name:t,value:JSON.stringify(e)}))}catch{}}function Wa(t){var n;let e={...FPe(),...t};RPe((n=e.event_name)!=null?n:"unknown",e)}function kp(t){if(t==null)return{message:"unknown error",stack:""};if(typeof t=="string")return{message:wb(t,uO),stack:""};if(typeof t=="object"){let e=t,n=wb(typeof e.message=="string"?e.message:String(e),uO),o=wb(typeof e.stack=="string"?e.stack:"",LPe);return{message:n,stack:o}}return{message:wb(String(t),uO),stack:""}}function wb(t,e){return t.length>e?t.slice(0,e)+"\u2026[truncated]":t}var lO,Ha,Va,NPe,cO,uO,LPe,xm=mt(()=>{lO=cr(require("os"));K$();Ha={COMMAND:"command",REQUEST:"request",LOCAL_FLOW:"local_flow",EXIT:"exit"},Va={SUCCESS:"success",FAIL:"fail",START:"start"},NPe=`cli-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;cO=(t,e)=>{let n=kp(e);Wa({event_name:"error",event_scope:Ha.COMMAND,event_result:Va.FAIL,error_message:`${t} ${n.message}`.trim(),error_stack:n.stack})},uO=500,LPe=2e3});var lS,l2,fO=mt(()=>{lS={NEXTJS:"nextjs",NUXTJS:"nuxtjs",ASTRO:"astro",UNKNOWN:"unknown"},l2={FRAMEWORK_DETECT:"framework_detect",PLUGIN_RESOLVE:"plugin_resolve",PLUGIN_LOAD:"plugin_load",PLUGIN_HOOK:"plugin_hook",CONFIG_LOAD:"config_load"}});async function cS(t=!1){try{let e=await yj(t);return Wa({event_name:"Config:Load:Success",event_scope:Ha.LOCAL_FLOW,event_phase:l2.CONFIG_LOAD,event_result:Va.SUCCESS,has_build_command:(e==null?void 0:e.buildCommand)!=null,has_install_command:(e==null?void 0:e.installCommand)!=null,has_output_directory:(e==null?void 0:e.outputDirectory)!=null,has_node_version:(e==null?void 0:e.nodeVersion)!=null}),e}catch(e){let n=kp(e);return Wa({event_name:"Config:Load:Fail",event_scope:Ha.LOCAL_FLOW,event_phase:l2.CONFIG_LOAD,event_result:Va.FAIL,error_message:n.message}),wp()&&console.error("%c [ error ]-80","font-size:13px; background:pink; color:#bf2c9f;",e),null}}var X$=mt(()=>{Iw();ww();xm();fO()});var Z$,qc,pO=mt(()=>{Z$=[{funcName:"onRequestGet",method:"GET"},{funcName:"onRequestPost",method:"POST"},{funcName:"onRequestDelete",method:"DELETE"},{funcName:"onRequestPatch",method:"PATCH"},{funcName:"onRequestPut",method:"PUT"},{funcName:"onRequestHead",method:"HEAD"},{funcName:"onRequestOptions",method:"OPTIONS"}],qc=["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS"]});async function MPe(t){let e;bb.default.statSync(t).isFile()?e=c2.default.resolve(c2.default.dirname(t)):e=t;let n=c2.default.parse(e).root;if(e===n)return null;for(;e!==n;){let o=c2.default.join(e,"package.json");try{return await bb.default.promises.access(o),o}catch{if(e=c2.default.dirname(e),e===n)break}}return null}async function Pb(t){if(t.endsWith(".mjs"))return"esm";if(t.endsWith(".cjs"))return"commonjs";try{let e=await MPe(t);if(e&&JSON.parse(await bb.default.promises.readFile(e,"utf-8")).type==="module")return"esm"}catch(e){console.warn("Failed to read package.json:",e)}return"commonjs"}var bb,c2,Db=mt(()=>{bb=cr(require("fs")),c2=cr(require("path"))});function qPe(t){let e=dO.default.extname(t);return jPe[e]||"ts"}async function eH(t,e,n,o){let u=`mod_${UPe++}`,f=(await Q$.default.build({stdin:{contents:t,loader:qPe(n),resolveDir:dO.default.dirname(n)},write:!1,bundle:!0,format:"esm",platform:"node",target:"node14",minify:!1,resolveExtensions:[".ts",".js",".mjs",".json"],nodePaths:[process.cwd()],absWorkingDir:process.cwd(),external:(o==null?void 0:o.externalModules)||[]})).outputFiles[0].text,p=[];f=f.replace(/^import\s+[^'"]*['"][^'"]*['"]\s*;?\n/gm,C=>(p.push(C),"")),f=f.replace(/export (async )?function/g,"$1function"),f=f.replace(/export const/g,"const"),f=f.replace(/export let/g,"let"),f=f.replace(/export var/g,"var"),f=f.replace(/export default/g,""),f=f.replace(/export \{[^}]+\};?/g,""),f=f.replace(/export class/g,"class");let y=/const\s+app\s*=/.test(f),m=`${p.join(`
144
144
  `)}`;return{code:o!=null&&o.isFramework?`
145
145
  const ${u} = (() => {
146
146
 
@@ -3848,7 +3848,7 @@ export = cryptoShim;
3848
3848
  `+Object.keys(o).map(u=>`${u}: ${o[u]}`).join(`\r
3849
3849
  `)+`\r
3850
3850
  \r
3851
- `+n)}function uv(t,e,n,o,u,r){if(t.listenerCount("wsClientError")){let f=new Error(u);Error.captureStackTrace(f,uv),t.emit("wsClientError",f,n,e)}else aE(n,o,u,r)}});var $ht,Hht,Vht,Jae,Wht,Xae,Zae=mt(()=>{$ht=cr(qae(),1),Hht=cr(I6(),1),Vht=cr(F6(),1),Jae=cr(UC(),1),Wht=cr(Kae(),1),Xae=Jae.default});function Qae(t){return new Promise((e,n)=>{let o=new Xae(t);o.on("error",console.error),o.on("open",function(){e(!0)}),o.on("close",function(){Wr("Function log server disconnected")}),o.on("message",function(r){let{logs:f,event_info:p,exceptions:y}=JSON.parse(r.toString());f.forEach(m=>{let{timestamp:S,level:C,content:A}=m;C==="INFO"?G$(A,S):C==="WARN"?Y$(A,S):C==="ERROR"&&aO(A,S)}),y.forEach(m=>{aO(m.content,m.timestamp)})})})}function H6(t){let e=Buffer.byteLength(t||"","utf8"),n=(e/(1024*1024)).toFixed(2),o=($6.CODE_SIZE/(1024*1024)).toFixed(0);e>$6.CODE_SIZE&&ss(`Code package size (${n} MB) exceeds the limit of ${o} MB. Please reduce your code size.`),e>$6.CODE_SIZE*.8&&vm(`Code package size (${n} MB) is approaching the limit of ${o} MB. Consider optimizing your code.`)}var $6,HC=mt(()=>{Zae();Hu();Ph();h6();$6={CODE_SIZE:5*1024*1024}});async function zht(t,e,n){let o=await nv("CreateDebugFunction",{JSContent:t,ProjectId:e,MetaData:n});if(o!=null&&o.Error)throw new Error("Start remote dev server failed: "+o.Error.Message);if(!o||!o.WsLogUrl||!o.DebugUrl||!o.SessionId)throw process.env.DEBUG&&console.error("Start remote dev server failed.",o),new Error("Start remote dev server failed.");return o}var xx,V6=mt(()=>{Woe();Hu();xC();HC();uE();HC();xx=class{devSessionId;config;destUrl;routes;constructor(e){this.devConfig=e,this.config={...e,watchPaths:yg(this)};let n=new AC({mode:"dev",env:e.env});this.buildInstance=n}async buildAndGetBundle(){let{bundle:e,meta:n}=await this.buildInstance.build();return{jsBundle:e,meta:n}}async start(){try{let{jsBundle:e,meta:n}=await this.buildAndGetBundle();if(!e)throw new Error("Build error, please check your edge-functions code!");H6(e),Wr("Waiting for edge-function dev server start...");let o=JSON.parse(n);this.routes=o.routes;let{DebugUrl:u,SessionId:r,WsLogUrl:f}=await zht(e,this.devConfig.ProjectId,n);return this.devSessionId=r,this.destUrl=u,await Qae(f),{destUrl:this.destUrl,builder:this.buildInstance,runner:this,watch:this.config.watchPaths,type:"edge-function",config:this.config,routes:this.routes,status:"started"}}catch(e){return{destUrl:null,builder:this.buildInstance,runner:this,watch:this.config.watchPaths,type:"edge-function",config:this.config,routes:[],status:"startFailed",error:e.message||String(e)}}}async handleFileChange(){let{jsBundle:e,meta:n}=await this.buildAndGetBundle();if(!e)throw new Error("Build error, please check your edge-functions code!");H6(e);let o=await nv("ModifyDebugFunction",{JSContent:e,SessionId:this.devSessionId,MetaData:n}).catch(u=>{throw console.log("Modify debug function failed",u),new Error(u)});if(o){o!=null&&o.Message&&ss(`Rebuild remote dev server failed: ${o.Message}`);let u=JSON.parse(n);this.routes=u.routes}return{destUrl:this.destUrl,builder:this.buildInstance,runner:this,watch:this.config.watchPaths,type:"edge-function",config:this.config,routes:this.routes}}stop(){}}});function Yht(t){let e=ui.default.extname(t).toLowerCase();return!(!rue.includes(e)&&!Ght.includes(e)||ui.default.basename(t).toLowerCase().endsWith(".sh"))}function eue(t){let e=ui.default.extname(t);return rue.includes(e)}var Ur,ui,tue,ro,rue,Ght,Yu,VC,nue=mt(()=>{Ur=cr(require("fs")),ui=cr(require("path")),tue=cr(require("os"));Ph();Hu();ro={FUNCTION:"./cloud-functions",OUTPUT_DIR:"./.edgeone/cloud-functions/api-python",OUTPUT_APP:"./.edgeone/cloud-functions/api-python/app.py",OUTPUT_META:"./.edgeone/cloud-functions/api-python/config.json",OUTPUT_REQUIREMENTS:"./.edgeone/cloud-functions/api-python/requirements.txt",DEPS_CACHE_FILE:"./.edgeone/cloud-functions/api-python/.deps-cache.json",CLOUD_FUNCTIONS_DIR:"./.edgeone/cloud-functions"},rue=[".py"],Ght=[".json",".yaml",".yml",".txt",".toml",".ini",".env"],Yu="3.10";VC=class{mode;env;silent;functionList;wrapPort=9e3;uvPath=null;uvFailed=!1;pythonPath=null;getPythonCommand(){try{return this.ensurePython()}catch{let e=this.detectPythonCommand();return(e==null?void 0:e.cmd)||null}}static async decide(){try{let e=Sn(ro.FUNCTION);if(!Ur.default.existsSync(e))return!1;let n=o=>{let u=Ur.default.readdirSync(o,{withFileTypes:!0});for(let r of u){let f=ui.default.join(o,r.name);if(r.isDirectory()){if(n(f))return!0}else if(r.isFile()&&eue(r.name))return!0}return!1};return n(e)}catch{return!1}}constructor(e){this.mode=e.mode||"prod",this.env=e.env||{},this.mode==="dev"&&(this.silent=!0),this.silent=e.silent||!1,this.functionList=[]}log(e){this.silent||Wr(e,"PythonFunctionBuilder")}warn(e){this.silent||vm(e,"PythonFunctionBuilder")}error(e){ss(e,"PythonFunctionBuilder")}scanPythonFiles(e,n=""){let o=[],u=Ur.default.readdirSync(e,{withFileTypes:!0});for(let f of u){let p=ui.default.join(e,f.name),y=n?ui.default.join(n,f.name):f.name;if(f.isDirectory())o.push(...this.scanPythonFiles(p,y));else if(f.isFile()&&eue(f.name)){let m=Ur.default.readFileSync(p,"utf-8");if(!this.hasFunctionEntryPoint(m))continue;let S=ui.default.basename(f.name,ui.default.extname(f.name)),C;S==="index"?C=n?`/${n.replace(/\\/g,"/")}`:"/":C=`/${y.replace(/\.py$/,"").replace(/\\/g,"/")}`;let A=[];C=C.replace(/\/\[\[([^\]]+)\]\]/g,(U,$)=>(A.push($),`/:${$}*`)).replace(/\/\[([^\]]+)\]/g,(U,$)=>(A.push($),`/:${$}`));let R=A.length>0,{methods:v,isFramework:z}=this.detectPythonHttpMethods(m);o.push({route:C,filePath:y.replace(/\\/g,"/"),fileName:S,isDynamic:R,paramNames:A,methods:v,isFramework:z})}}let r=new Map;for(let f of o){let p=r.get(f.route);p?(this.warn(`Route conflict detected! Route: ${f.route}`),this.warn(` File 1: ${p}`),this.warn(` File 2: ${f.filePath}`),this.warn(" Only the first file will be used.")):r.set(f.route,f.filePath)}return o}hasFunctionEntryPoint(e){return[/^def\s+handler\s*\(/m,/^def\s+Handler\s*\(/m,/^class\s+handler\s*\(/m,/^class\s+Handler\s*\(/m,/^app\s*(?::\s*\S+\s*)?=\s*/m,/^application\s*(?::\s*\S+\s*)?=\s*/m,/^urlpatterns\s*=\s*/m,/get_wsgi_application\s*\(/,/get_asgi_application\s*\(/].some(o=>o.test(e))}detectPythonHttpMethods(e){if([/^app\s*(?::\s*\S+\s*)?=\s*/m,/^application\s*(?::\s*\S+\s*)?=\s*/m,/^urlpatterns\s*=\s*/m,/get_wsgi_application\s*\(/,/get_asgi_application\s*\(/].some(u=>u.test(e)))return{methods:[],isFramework:!0};if(/^class\s+(?:handler|Handler)\s*\([\s\S]*?BaseHTTPRequestHandler/m.test(e)){let u=[{pattern:/def\s+do_GET\s*\(/m,method:"GET"},{pattern:/def\s+do_POST\s*\(/m,method:"POST"},{pattern:/def\s+do_PUT\s*\(/m,method:"PUT"},{pattern:/def\s+do_DELETE\s*\(/m,method:"DELETE"},{pattern:/def\s+do_PATCH\s*\(/m,method:"PATCH"},{pattern:/def\s+do_HEAD\s*\(/m,method:"HEAD"},{pattern:/def\s+do_OPTIONS\s*\(/m,method:"OPTIONS"}],r=[];for(let{pattern:f,method:p}of u)f.test(e)&&r.push(p);return{methods:r.length>0?r:["GET"],isFramework:!1}}return{methods:[],isFramework:!1}}checkFileNameConflicts(){let e=new Set(["fastapi","flask","django","starlette","uvicorn","pydantic","requests","httpx","aiohttp","urllib3","numpy","pandas","sqlalchemy","redis","celery","boto3","pillow","pytest","json","os","sys","io","re","typing","collections","datetime","time","random","math","string","logging","asyncio","functools","itertools","pathlib","shutil","tempfile","subprocess","threading","multiprocessing","socket","email","http","html","xml","csv","base64","hashlib","hmac","secrets","uuid","copy","pickle","sqlite3","contextlib","abc","dataclasses","enum","types"]),n=Sn(ro.FUNCTION),o=[],u=(r,f="")=>{if(!Ur.default.existsSync(r))return;let p=Ur.default.readdirSync(r,{withFileTypes:!0});for(let y of p)if(y.isFile()&&y.name.endsWith(".py")){let m=y.name.replace(/\.py$/,"");if(e.has(m.toLowerCase())){let S=f?ui.default.join(f,y.name):y.name;o.push(S)}}else if(y.isDirectory()&&!["__pycache__",".git","node_modules","venv",".venv","scripts","tests",".pytest_cache"].includes(y.name)){if(e.has(y.name.toLowerCase())){let S=f?ui.default.join(f,y.name):y.name;o.push(S+"/")}u(ui.default.join(r,y.name),f?ui.default.join(f,y.name):y.name)}};if(u(n),o.length>0){this.error("File name conflict detected!"),this.error("The following files/directories have names that conflict with Python modules:");for(let r of o)this.error(` - ${r}`);throw this.error('This will cause "cannot import name" errors when Python tries to import these modules.'),this.error("Please rename these files/directories to avoid conflicts."),this.error('For example: "fastapi.py" \u2192 "api.py" or "my_fastapi.py"'),new Error(`File name conflict: ${o.join(", ")}`)}}prepareOutputDirectory(e){if(!Ur.default.existsSync(e)){Ur.default.mkdirSync(e,{recursive:!0});return}let n=[/\.dist-info$/,/\.egg-info$/,/\.deps-cache\.json$/],o=new Set(["typing_extensions.py","six.py","bottle.py","colorsys.py"]),u=new Set(["app.py","config.json","requirements.txt"]),r=this.getUserPyFileNames(),f=new Set;for(let y of r)!y.includes(ui.default.sep)&&!y.includes("/")&&f.add(y);let p=Ur.default.readdirSync(e,{withFileTypes:!0});for(let y of p){let m=ui.default.join(e,y.name);if(!n.some(S=>S.test(y.name))&&!o.has(y.name)){if(u.has(y.name)){y.isDirectory()?Ur.default.rmSync(m,{recursive:!0,force:!0}):Ur.default.unlinkSync(m);continue}if(y.name.endsWith(".py")&&f.has(y.name)){Ur.default.unlinkSync(m);continue}y.isDirectory()&&this.getUserDirNames().has(y.name)&&Ur.default.rmSync(m,{recursive:!0,force:!0})}}}getUserPyFileNames(){let e=Sn(ro.FUNCTION),n=new Set;if(!Ur.default.existsSync(e))return n;let o=(u,r="")=>{let f=Ur.default.readdirSync(u,{withFileTypes:!0});for(let p of f)if(p.isFile()&&p.name.endsWith(".py")){let y=r?ui.default.join(r,p.name):p.name;n.add(y)}else p.isDirectory()&&!p.name.startsWith(".")&&p.name!=="__pycache__"&&o(ui.default.join(u,p.name),r?ui.default.join(r,p.name):p.name)};return o(e),n}getUserDirNames(){let e=Sn(ro.FUNCTION),n=new Set;if(!Ur.default.existsSync(e))return n;let o=Ur.default.readdirSync(e,{withFileTypes:!0});for(let u of o)u.isDirectory()&&!u.name.startsWith(".")&&u.name!=="__pycache__"&&n.add(u.name);return n}copyUserFiles(){this.checkFileNameConflicts();let e=Sn(ro.FUNCTION),n=Sn(ro.OUTPUT_DIR),o=(u,r,f="")=>{let p=Ur.default.readdirSync(u,{withFileTypes:!0});for(let y of p){let m=ui.default.join(u,y.name),S=ui.default.join(r,y.name);if(y.isDirectory()){if(["__pycache__",".git","node_modules","venv",".venv","scripts","tests",".pytest_cache"].includes(y.name))continue;Ur.default.existsSync(S)||Ur.default.mkdirSync(S,{recursive:!0}),o(m,S,ui.default.join(f,y.name))}else y.isFile()&&Yht(y.name)&&Ur.default.copyFileSync(m,S)}};o(e,n)}routeToRegex(e){return`^${e.replace(/:([^/]+)\*/g,"(.+)").replace(/:([^/]+)/g,"([^/]+)")}$`}generateMetaJson(){let o={routes:[...this.functionList].sort((r,f)=>{if(!r.isDynamic&&f.isDynamic)return-1;if(r.isDynamic&&!f.isDynamic)return 1;let p=r.route.includes(":")&&r.route.includes("*"),y=f.route.includes(":")&&f.route.includes("*");return!p&&y?-1:p&&!y?1:f.route.length-r.route.length}).map(r=>{let f=r.route.includes(":")&&r.route.includes("*"),p={src:r.isDynamic?this.routeToRegex(r.route):`^${r.route}$`,path:r.route,file:r.filePath};return r.isDynamic&&r.paramNames.length>0&&(p.params=r.paramNames),f&&(p.isCatchAll=!0),p.method=r.methods,p.isFramework=r.isFramework,p})},u=Sn(ro.OUTPUT_META);Ur.default.writeFileSync(u,JSON.stringify(o,null,2))}detectFrameworksFromCode(){let e=[],n=Sn(ro.FUNCTION),o={fastapi:"fastapi>=0.100.0",django:"django>=4.0",starlette:"starlette>=0.27.0",sanic:"sanic>=21.0",httptools:"httptools>=0.5.0",quart:"quart>=0.18.0",tornado:"tornado>=6.0",aiohttp:"aiohttp>=3.8.0",bottle:"bottle>=0.12.0",falcon:"falcon>=3.0.0",httpx:"httpx>=0.24.0",requests:"requests>=2.28.0",pydantic:"pydantic>=2.0.0",sqlalchemy:"sqlalchemy>=2.0.0",redis:"redis>=4.0.0",pymongo:"pymongo>=4.0.0",psycopg2:"psycopg2-binary>=2.9.0",mysql:"mysql-connector-python>=8.0.0",celery:"celery>=5.0.0",jwt:"pyjwt>=2.0.0",bcrypt:"bcrypt>=4.0.0",cryptography:"cryptography>=40.0.0",pillow:"pillow>=9.0.0",numpy:"numpy>=1.24.0",pandas:"pandas>=2.0.0"},u={sanic:["httptools>=0.5.0",'uvloop>=0.17.0;sys_platform!="win32"'],uvicorn:["httptools>=0.5.0",'uvloop>=0.17.0;sys_platform!="win32"']},r=p=>{if(Ur.default.existsSync(p))for(let y of Ur.default.readdirSync(p,{withFileTypes:!0})){let m=ui.default.join(p,y.name);if(y.isDirectory())["__pycache__",".venv","venv","node_modules",".git","scripts","tests",".pytest_cache"].includes(y.name)||r(m);else if(y.isFile()&&y.name.endsWith(".py"))try{let S=Ur.default.readFileSync(m,"utf-8"),C=/(?:^|\n)\s*(?:from\s+(\w+)|import\s+(\w+))/g,A;for(;(A=C.exec(S))!==null;){let R=(A[1]||A[2]).toLowerCase();o[R]&&!e.includes(o[R])&&e.push(o[R])}}catch{}}};r(n);let f=e.map(p=>p.split(/[>=<]/)[0].toLowerCase());for(let[p,y]of Object.entries(u))if(f.includes(p))for(let m of y)e.includes(m)||e.push(m);return e}generateRequirements(){let e=["werkzeug>=2.0.0","flask>=2.0.0","uvicorn>=0.20.0"],n=this.detectFrameworksFromCode(),o=Sn("requirements.txt"),u=Sn(ui.default.join(ro.FUNCTION,"requirements.txt")),r=[];Ur.default.existsSync(u)?r=Ur.default.readFileSync(u,"utf-8").split(`
3851
+ `+n)}function uv(t,e,n,o,u,r){if(t.listenerCount("wsClientError")){let f=new Error(u);Error.captureStackTrace(f,uv),t.emit("wsClientError",f,n,e)}else aE(n,o,u,r)}});var $ht,Hht,Vht,Jae,Wht,Xae,Zae=mt(()=>{$ht=cr(qae(),1),Hht=cr(I6(),1),Vht=cr(F6(),1),Jae=cr(UC(),1),Wht=cr(Kae(),1),Xae=Jae.default});function Qae(t){return new Promise((e,n)=>{let o=new Xae(t);o.on("error",console.error),o.on("open",function(){e(!0)}),o.on("close",function(){Wr("Function log server disconnected")}),o.on("message",function(r){let{logs:f,event_info:p,exceptions:y}=JSON.parse(r.toString());f.forEach(m=>{let{timestamp:S,level:C,content:A}=m;C==="INFO"?G$(A,S):C==="WARN"?Y$(A,S):C==="ERROR"&&aO(A,S)}),y.forEach(m=>{aO(m.content,m.timestamp)})})})}function H6(t){let e=Buffer.byteLength(t||"","utf8"),n=(e/(1024*1024)).toFixed(2),o=($6.CODE_SIZE/(1024*1024)).toFixed(0);e>$6.CODE_SIZE&&ss(`Code package size (${n} MB) exceeds the limit of ${o} MB. Please reduce your code size.`),e>$6.CODE_SIZE*.8&&vm(`Code package size (${n} MB) is approaching the limit of ${o} MB. Consider optimizing your code.`)}var $6,HC=mt(()=>{Zae();Hu();Ph();h6();$6={CODE_SIZE:5*1024*1024}});async function zht(t,e,n){let o=await nv("CreateDebugFunction",{JSContent:t,ProjectId:e,MetaData:n});if(o!=null&&o.Error)throw new Error("Start remote dev server failed: "+o.Error.Message);if(!o||!o.WsLogUrl||!o.DebugUrl||!o.SessionId)throw process.env.DEBUG&&console.error("Start remote dev server failed.",o),new Error("Start remote dev server failed.");return o}var xx,V6=mt(()=>{Woe();Hu();xC();HC();uE();HC();xx=class{devSessionId;config;destUrl;routes;constructor(e){this.devConfig=e,this.config={...e,watchPaths:yg(this)};let n=new AC({mode:"dev",env:e.env});this.buildInstance=n}async buildAndGetBundle(){let{bundle:e,meta:n}=await this.buildInstance.build();return{jsBundle:e,meta:n}}async start(){try{let{jsBundle:e,meta:n}=await this.buildAndGetBundle();if(!e)throw new Error("Build error, please check your edge-functions code!");H6(e),Wr("Waiting for edge-function dev server start...");let o=JSON.parse(n);this.routes=o.routes;let{DebugUrl:u,SessionId:r,WsLogUrl:f}=await zht(e,this.devConfig.ProjectId,n);return this.devSessionId=r,this.destUrl=u,await Qae(f),{destUrl:this.destUrl,builder:this.buildInstance,runner:this,watch:this.config.watchPaths,type:"edge-function",config:this.config,routes:this.routes,status:"started"}}catch(e){return{destUrl:null,builder:this.buildInstance,runner:this,watch:this.config.watchPaths,type:"edge-function",config:this.config,routes:[],status:"startFailed",error:e.message||String(e)}}}async handleFileChange(){let{jsBundle:e,meta:n}=await this.buildAndGetBundle();if(!e)throw new Error("Build error, please check your edge-functions code!");H6(e);let o=await nv("ModifyDebugFunction",{JSContent:e,SessionId:this.devSessionId,MetaData:n}).catch(u=>{throw console.log("Modify debug function failed",u),new Error(u)});if(o){o!=null&&o.Message&&ss(`Rebuild remote dev server failed: ${o.Message}`);let u=JSON.parse(n);this.routes=u.routes}return{destUrl:this.destUrl,builder:this.buildInstance,runner:this,watch:this.config.watchPaths,type:"edge-function",config:this.config,routes:this.routes}}stop(){}}});function Yht(t){let e=ui.default.extname(t).toLowerCase();return!(!rue.includes(e)&&!Ght.includes(e)||ui.default.basename(t).toLowerCase().endsWith(".sh"))}function eue(t){let e=ui.default.extname(t);return rue.includes(e)}var Ur,ui,tue,ro,rue,Ght,Yu,VC,nue=mt(()=>{Ur=cr(require("fs")),ui=cr(require("path")),tue=cr(require("os"));Ph();Hu();ro={FUNCTION:"./cloud-functions",OUTPUT_DIR:"./.edgeone/cloud-functions/api-python",OUTPUT_APP:"./.edgeone/cloud-functions/api-python/app.py",OUTPUT_META:"./.edgeone/cloud-functions/api-python/config.json",OUTPUT_REQUIREMENTS:"./.edgeone/cloud-functions/api-python/requirements.txt",DEPS_CACHE_FILE:"./.edgeone/cloud-functions/api-python/.deps-cache.json",CLOUD_FUNCTIONS_DIR:"./.edgeone/cloud-functions"},rue=[".py"],Ght=[".json",".yaml",".yml",".txt",".toml",".ini",".env"],Yu="3.10";VC=class{mode;env;silent;functionList;wrapPort=9e3;uvPath=null;uvFailed=!1;pythonPath=null;getPythonCommand(){try{return this.ensurePython()}catch{let e=this.detectPythonCommand();return(e==null?void 0:e.cmd)||null}}static async decide(){try{let e=Sn(ro.FUNCTION);if(!Ur.default.existsSync(e))return!1;let n=o=>{let u=Ur.default.readdirSync(o,{withFileTypes:!0});for(let r of u){let f=ui.default.join(o,r.name);if(r.isDirectory()){if(n(f))return!0}else if(r.isFile()&&eue(r.name))return!0}return!1};return n(e)}catch{return!1}}constructor(e){this.mode=e.mode||"prod",this.env=e.env||{},this.mode==="dev"&&(this.silent=!0),this.silent=e.silent||!1,this.functionList=[]}log(e){this.silent||Wr(e,"PythonFunctionBuilder")}warn(e){this.silent||vm(e,"PythonFunctionBuilder")}error(e){ss(e,"PythonFunctionBuilder")}scanPythonFiles(e,n=""){let o=[],u=Ur.default.readdirSync(e,{withFileTypes:!0});for(let f of u){let p=ui.default.join(e,f.name),y=n?ui.default.join(n,f.name):f.name;if(f.isDirectory())o.push(...this.scanPythonFiles(p,y));else if(f.isFile()&&eue(f.name)){let m=Ur.default.readFileSync(p,"utf-8");if(!this.hasFunctionEntryPoint(m))continue;let S=ui.default.basename(f.name,ui.default.extname(f.name)),C;S==="index"?C=n?`/${n.replace(/\\/g,"/")}`:"/":C=`/${y.replace(/\.py$/,"").replace(/\\/g,"/")}`;let A=[];C=C.replace(/\/\[\[([^\]]+)\]\]/g,(U,$)=>(A.push($),`/:${$}*`)).replace(/\/\[([^\]]+)\]/g,(U,$)=>(A.push($),`/:${$}`));let R=A.length>0,{methods:v,isFramework:z}=this.detectPythonHttpMethods(m);o.push({route:C,filePath:y.replace(/\\/g,"/"),fileName:S,isDynamic:R,paramNames:A,methods:v,isFramework:z})}}let r=new Map;for(let f of o){let p=r.get(f.route);p?(this.warn(`Route conflict detected! Route: ${f.route}`),this.warn(` File 1: ${p}`),this.warn(` File 2: ${f.filePath}`),this.warn(" Only the first file will be used.")):r.set(f.route,f.filePath)}return o}hasFunctionEntryPoint(e){return[/^def\s+handler\s*\(/m,/^def\s+Handler\s*\(/m,/^class\s+handler\s*\(/m,/^class\s+Handler\s*\(/m,/^app\s*(?::\s*\S+\s*)?=\s*/m,/^application\s*(?::\s*\S+\s*)?=\s*/m,/^urlpatterns\s*=\s*/m,/get_wsgi_application\s*\(/,/get_asgi_application\s*\(/].some(o=>o.test(e))}detectPythonHttpMethods(e){if([/^app\s*(?::\s*\S+\s*)?=\s*/m,/^application\s*(?::\s*\S+\s*)?=\s*/m,/^urlpatterns\s*=\s*/m,/get_wsgi_application\s*\(/,/get_asgi_application\s*\(/].some(u=>u.test(e)))return{methods:[],isFramework:!0};if(/^class\s+(?:handler|Handler)\s*\([\s\S]*?BaseHTTPRequestHandler/m.test(e)){let u=[{pattern:/def\s+do_GET\s*\(/m,method:"GET"},{pattern:/def\s+do_POST\s*\(/m,method:"POST"},{pattern:/def\s+do_PUT\s*\(/m,method:"PUT"},{pattern:/def\s+do_DELETE\s*\(/m,method:"DELETE"},{pattern:/def\s+do_PATCH\s*\(/m,method:"PATCH"},{pattern:/def\s+do_HEAD\s*\(/m,method:"HEAD"},{pattern:/def\s+do_OPTIONS\s*\(/m,method:"OPTIONS"}],r=[];for(let{pattern:f,method:p}of u)f.test(e)&&r.push(p);return{methods:r.length>0?r:["GET"],isFramework:!1}}return{methods:[],isFramework:!1}}checkFileNameConflicts(){let e=new Set(["fastapi","flask","django","starlette","uvicorn","pydantic","requests","httpx","aiohttp","urllib3","numpy","pandas","sqlalchemy","redis","celery","boto3","pillow","pytest","json","os","sys","io","re","typing","collections","datetime","time","random","math","string","logging","asyncio","functools","itertools","pathlib","shutil","tempfile","subprocess","threading","multiprocessing","socket","email","http","html","xml","csv","base64","hashlib","hmac","secrets","uuid","copy","pickle","sqlite3","contextlib","abc","dataclasses","enum","types"]),n=Sn(ro.FUNCTION),o=[],u=(r,f="")=>{if(!Ur.default.existsSync(r))return;let p=Ur.default.readdirSync(r,{withFileTypes:!0});for(let y of p)if(y.isFile()&&y.name.endsWith(".py")){let m=y.name.replace(/\.py$/,"");if(e.has(m.toLowerCase())){let S=f?ui.default.join(f,y.name):y.name;o.push(S)}}else if(y.isDirectory()&&!["__pycache__",".git","node_modules","venv",".venv","scripts","tests",".pytest_cache"].includes(y.name)){if(e.has(y.name.toLowerCase())){let S=f?ui.default.join(f,y.name):y.name;o.push(S+"/")}u(ui.default.join(r,y.name),f?ui.default.join(f,y.name):y.name)}};if(u(n),o.length>0){this.error("File name conflict detected!"),this.error("The following files/directories have names that conflict with Python modules:");for(let r of o)this.error(` - ${r}`);throw this.error('This will cause "cannot import name" errors when Python tries to import these modules.'),this.error("Please rename these files/directories to avoid conflicts."),this.error('For example: "fastapi.py" \u2192 "api.py" or "my_fastapi.py"'),new Error(`File name conflict: ${o.join(", ")}`)}}prepareOutputDirectory(e){if(!Ur.default.existsSync(e)){Ur.default.mkdirSync(e,{recursive:!0});return}let n=[/\.dist-info$/,/\.egg-info$/,/\.deps-cache\.json$/],o=new Set(["typing_extensions.py","six.py","bottle.py","colorsys.py"]),u=new Set(["app.py","config.json","requirements.txt"]),r=this.getUserPyFileNames(),f=new Set;for(let y of r)!y.includes(ui.default.sep)&&!y.includes("/")&&f.add(y);let p=Ur.default.readdirSync(e,{withFileTypes:!0});for(let y of p){let m=ui.default.join(e,y.name);if(!n.some(S=>S.test(y.name))&&!o.has(y.name)){if(u.has(y.name)){y.isDirectory()?Ur.default.rmSync(m,{recursive:!0,force:!0}):Ur.default.unlinkSync(m);continue}if(y.name.endsWith(".py")&&f.has(y.name)){Ur.default.unlinkSync(m);continue}y.isDirectory()&&this.getUserDirNames().has(y.name)&&Ur.default.rmSync(m,{recursive:!0,force:!0})}}}getUserPyFileNames(){let e=Sn(ro.FUNCTION),n=new Set;if(!Ur.default.existsSync(e))return n;let o=(u,r="")=>{let f=Ur.default.readdirSync(u,{withFileTypes:!0});for(let p of f)if(p.isFile()&&p.name.endsWith(".py")){let y=r?ui.default.join(r,p.name):p.name;n.add(y)}else p.isDirectory()&&!p.name.startsWith(".")&&p.name!=="__pycache__"&&o(ui.default.join(u,p.name),r?ui.default.join(r,p.name):p.name)};return o(e),n}getUserDirNames(){let e=Sn(ro.FUNCTION),n=new Set;if(!Ur.default.existsSync(e))return n;let o=Ur.default.readdirSync(e,{withFileTypes:!0});for(let u of o)u.isDirectory()&&!u.name.startsWith(".")&&u.name!=="__pycache__"&&n.add(u.name);return n}copyUserFiles(){this.checkFileNameConflicts();let e=Sn(ro.FUNCTION),n=Sn(ro.OUTPUT_DIR),o=(u,r,f="")=>{let p=Ur.default.readdirSync(u,{withFileTypes:!0});for(let y of p){let m=ui.default.join(u,y.name),S=ui.default.join(r,y.name);if(y.isDirectory()){if(["__pycache__",".git","node_modules","venv",".venv","scripts","tests",".pytest_cache"].includes(y.name))continue;Ur.default.existsSync(S)||Ur.default.mkdirSync(S,{recursive:!0}),o(m,S,ui.default.join(f,y.name))}else y.isFile()&&Yht(y.name)&&Ur.default.copyFileSync(m,S)}};o(e,n)}routeToRegex(e){let n=/:([^/]+)\*/.test(e),o=e.replace(/:([^/]+)\*/g,"(.*)").replace(/:([^/]+)/g,"([^/]+)");return n&&(o=o.replace(/\/\(\.\*\)/,"(?:/(.*))?")),`^${o}$`}generateMetaJson(){let o={routes:[...this.functionList].sort((r,f)=>{if(!r.isDynamic&&f.isDynamic)return-1;if(r.isDynamic&&!f.isDynamic)return 1;let p=r.route.includes(":")&&r.route.includes("*"),y=f.route.includes(":")&&f.route.includes("*");return!p&&y?-1:p&&!y?1:f.route.length-r.route.length}).map(r=>{let f=r.route.includes(":")&&r.route.includes("*"),p={src:r.isDynamic?this.routeToRegex(r.route):`^${r.route}(?:/.*)?$`,path:r.route,file:r.filePath};return r.isDynamic&&r.paramNames.length>0&&(p.params=r.paramNames),f&&(p.isCatchAll=!0),p.method=r.methods,p.isFramework=r.isFramework,p})},u=Sn(ro.OUTPUT_META);Ur.default.writeFileSync(u,JSON.stringify(o,null,2))}detectFrameworksFromCode(){let e=[],n=Sn(ro.FUNCTION),o={fastapi:"fastapi>=0.100.0",django:"django>=4.0",starlette:"starlette>=0.27.0",sanic:"sanic>=21.0",httptools:"httptools>=0.5.0",quart:"quart>=0.18.0",tornado:"tornado>=6.0",aiohttp:"aiohttp>=3.8.0",bottle:"bottle>=0.12.0",falcon:"falcon>=3.0.0",httpx:"httpx>=0.24.0",requests:"requests>=2.28.0",pydantic:"pydantic>=2.0.0",sqlalchemy:"sqlalchemy>=2.0.0",redis:"redis>=4.0.0",pymongo:"pymongo>=4.0.0",psycopg2:"psycopg2-binary>=2.9.0",mysql:"mysql-connector-python>=8.0.0",celery:"celery>=5.0.0",jwt:"pyjwt>=2.0.0",bcrypt:"bcrypt>=4.0.0",cryptography:"cryptography>=40.0.0",pillow:"pillow>=9.0.0",numpy:"numpy>=1.24.0",pandas:"pandas>=2.0.0"},u={sanic:["httptools>=0.5.0",'uvloop>=0.17.0;sys_platform!="win32"'],uvicorn:["httptools>=0.5.0",'uvloop>=0.17.0;sys_platform!="win32"']},r=p=>{if(Ur.default.existsSync(p))for(let y of Ur.default.readdirSync(p,{withFileTypes:!0})){let m=ui.default.join(p,y.name);if(y.isDirectory())["__pycache__",".venv","venv","node_modules",".git","scripts","tests",".pytest_cache"].includes(y.name)||r(m);else if(y.isFile()&&y.name.endsWith(".py"))try{let S=Ur.default.readFileSync(m,"utf-8"),C=/(?:^|\n)\s*(?:from\s+(\w+)|import\s+(\w+))/g,A;for(;(A=C.exec(S))!==null;){let R=(A[1]||A[2]).toLowerCase();o[R]&&!e.includes(o[R])&&e.push(o[R])}}catch{}}};r(n);let f=e.map(p=>p.split(/[>=<]/)[0].toLowerCase());for(let[p,y]of Object.entries(u))if(f.includes(p))for(let m of y)e.includes(m)||e.push(m);return e}generateRequirements(){let e=["werkzeug>=2.0.0","flask>=2.0.0","uvicorn>=0.20.0"],n=this.detectFrameworksFromCode(),o=Sn("requirements.txt"),u=Sn(ui.default.join(ro.FUNCTION,"requirements.txt")),r=[];Ur.default.existsSync(u)?r=Ur.default.readFileSync(u,"utf-8").split(`
3852
3852
  `).filter(m=>m.trim()&&!m.startsWith("#")):Ur.default.existsSync(o)&&(r=Ur.default.readFileSync(o,"utf-8").split(`
3853
3853
  `).filter(m=>m.trim()&&!m.startsWith("#")));let f=[...new Set([...e,...n,...r])],p=Sn(ro.OUTPUT_REQUIREMENTS);Ur.default.writeFileSync(p,f.join(`
3854
3854
  `))}getPythonVersion(e){try{let{execSync:n}=require("child_process"),u=n(`${e} --version`,{encoding:"utf-8",stdio:"pipe"}).match(/Python (\d+\.\d+)/);return u?u[1]:null}catch{return null}}ensureUv(){if(this.uvPath)return this.uvPath;if(this.uvFailed)throw new Error("uv installation previously failed, skipping retry");let{execSync:e}=require("child_process"),n=["uv"],o=process.env.HOME||process.env.USERPROFILE||"";o&&(n.push(ui.default.join(o,".local","bin","uv")),n.push(ui.default.join(o,".cargo","bin","uv")));let u=ui.default.join(tue.default.tmpdir(),"edgeone-uv"),r=ui.default.join(u,"bin","uv");n.push(r);for(let y of n)try{let m=e(`${y} --version`,{encoding:"utf-8",stdio:"pipe"}).trim();return this.log(`Using ${m}`),this.uvPath=y,y}catch{continue}this.log("uv not found, installing...");try{Ur.default.mkdirSync(u,{recursive:!0}),process.platform==="win32"?e('powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"',{stdio:"pipe",env:{...process.env,UV_NO_MODIFY_PATH:"1",UV_INSTALL_DIR:u}}):e("curl -LsSf https://astral.sh/uv/install.sh | sh",{stdio:"pipe",env:{...process.env,UV_NO_MODIFY_PATH:"1",UV_INSTALL_DIR:u}});for(let y of n)try{let m=e(`${y} --version`,{encoding:"utf-8",stdio:"pipe"}).trim();return this.log(`Installed ${m}`),this.uvPath=y,y}catch{continue}}catch(y){this.warn(`Shell installation failed: ${y.message}`)}this.log("Trying pip install uv as fallback...");let f=["pip3","pip","python3 -m pip","python -m pip"],p=ui.default.join(u,"pip-packages");for(let y of f){let m=[`${y} install uv --quiet --target ${p}`,`${y} install uv --quiet --user`,`${y} install uv --quiet`];for(let S of m)try{e(S,{stdio:"pipe",env:{...process.env}});let C=["uv",ui.default.join(p,"bin","uv"),ui.default.join(p,"uv")];for(let A of C)try{let R=e(`${A} --version`,{encoding:"utf-8",stdio:"pipe"}).trim();return this.log(`Installed ${R} (via pip)`),this.uvPath=A,A}catch{continue}}catch{continue}}throw this.uvFailed=!0,new Error(`Failed to install uv. Please install manually:
@@ -4283,6 +4283,12 @@ class ASGIPathStripMiddleware:
4283
4283
  self.mount_path = mount_path
4284
4284
  # \u63D0\u53D6\u9759\u6001\u524D\u7F00\u7528\u4E8E\u8DEF\u5F84\u5265\u79BB
4285
4285
  self.static_prefix = _extract_static_prefix(mount_path)
4286
+ # \u7981\u7528 FastAPI/Starlette \u7684 redirect_slashes
4287
+ # \u907F\u514D 307 \u91CD\u5B9A\u5411\u5230\u5185\u90E8\u57DF\u540D\u5BFC\u81F4\u5BA2\u6237\u7AEF 404
4288
+ # \u6539\u4E3A\u5728\u4E2D\u95F4\u4EF6\u5C42\u81EA\u52A8\u5904\u7406\u5C3E\u90E8\u659C\u6760\u5339\u914D
4289
+ router = getattr(app, 'router', None)
4290
+ if router and hasattr(router, 'redirect_slashes'):
4291
+ router.redirect_slashes = False
4286
4292
 
4287
4293
  async def __call__(self, scope, receive, send):
4288
4294
  if scope['type'] in ('http', 'websocket'):
@@ -4303,23 +4309,80 @@ class ASGIPathStripMiddleware:
4303
4309
  if raw_path and raw_path.startswith(prefix_bytes):
4304
4310
  scope['raw_path'] = raw_path[len(prefix_bytes):] or b'/'
4305
4311
 
4306
- # \u5305\u88C5 send \u6CE8\u5165 Pages header \u548C\u65E5\u5FD7
4307
- response_logged = False
4308
- async def pages_send(message):
4309
- nonlocal response_logged
4310
- if message['type'] == 'http.response.start':
4311
- status_code = message.get('status', 200)
4312
- headers = list(message.get('headers', []))
4313
- _pages_inject_asgi_headers(headers, status_code)
4314
- message = dict(message)
4315
- message['headers'] = headers
4316
- if not response_logged:
4317
- response_logged = True
4318
- elapsed_ms = (time.time() - start_time) * 1000
4319
- _pages_log_response(request_method, request_path, status_code, elapsed_ms)
4320
- await send(message)
4321
-
4322
- await self.app(scope, receive, pages_send)
4312
+ # \u5148\u7528\u539F\u8DEF\u5F84\u5C1D\u8BD5\uFF0C\u5982\u679C 404 \u4E14\u8DEF\u5F84\u4E0D\u4EE5 / \u7ED3\u5C3E\uFF0C\u81EA\u52A8\u8865 / \u91CD\u8BD5
4313
+ # \u89E3\u51B3 redirect_slashes \u7981\u7528\u540E /items \u5339\u914D\u4E0D\u5230 /items/ \u7684\u95EE\u9898
4314
+ # \u6CE8\u610F\uFF1A\u53EA\u5BF9\u65E0 body \u7684\u8BF7\u6C42\uFF08GET/HEAD/OPTIONS\uFF09\u505A probe+retry
4315
+ # \u6709 body \u7684\u8BF7\u6C42\uFF08POST/PUT/PATCH/DELETE\uFF09\u4E0D\u80FD\u91CD\u8BD5\uFF0C\u56E0\u4E3A receive \u6D41\u4F1A\u88AB\u6D88\u8D39
4316
+ current_path = scope.get('path', '/')
4317
+ method = scope.get('method', 'GET').upper()
4318
+ can_retry = method in ('GET', 'HEAD', 'OPTIONS') and current_path != '/' and not current_path.endswith('/')
4319
+
4320
+ if can_retry:
4321
+ probe_status = None
4322
+ probe_messages = []
4323
+
4324
+ async def probe_send(message):
4325
+ nonlocal probe_status
4326
+ if message['type'] == 'http.response.start':
4327
+ probe_status = message.get('status', 200)
4328
+ probe_messages.append(message)
4329
+
4330
+ await self.app(dict(scope), receive, probe_send)
4331
+
4332
+ # \u5982\u679C 404\uFF0C\u5C1D\u8BD5\u8865 / \u91CD\u8BD5
4333
+ if probe_status == 404:
4334
+ retry_scope = dict(scope)
4335
+ retry_scope['path'] = current_path + '/'
4336
+ retry_raw = scope.get('raw_path', b'')
4337
+ if retry_raw:
4338
+ retry_scope['raw_path'] = retry_raw + b'/'
4339
+
4340
+ retry_status = None
4341
+ retry_messages = []
4342
+
4343
+ async def retry_send(message):
4344
+ nonlocal retry_status
4345
+ if message['type'] == 'http.response.start':
4346
+ retry_status = message.get('status', 200)
4347
+ retry_messages.append(message)
4348
+
4349
+ await self.app(retry_scope, receive, retry_send)
4350
+
4351
+ # \u91CD\u8BD5\u6210\u529F\uFF08\u975E 404\uFF09\uFF0C\u4F7F\u7528\u91CD\u8BD5\u7ED3\u679C
4352
+ if retry_status != 404:
4353
+ probe_messages = retry_messages
4354
+
4355
+ # \u53D1\u9001\u6700\u7EC8\u7ED3\u679C\uFF0C\u6CE8\u5165 Pages header \u548C\u65E5\u5FD7
4356
+ response_logged = False
4357
+ for message in probe_messages:
4358
+ if message['type'] == 'http.response.start':
4359
+ status_code = message.get('status', 200)
4360
+ headers = list(message.get('headers', []))
4361
+ _pages_inject_asgi_headers(headers, status_code)
4362
+ message = dict(message)
4363
+ message['headers'] = headers
4364
+ if not response_logged:
4365
+ response_logged = True
4366
+ elapsed_ms = (time.time() - start_time) * 1000
4367
+ _pages_log_response(request_method, request_path, status_code, elapsed_ms)
4368
+ await send(message)
4369
+ else:
4370
+ # \u6709 body \u7684\u8BF7\u6C42\u6216\u5DF2\u5E26\u5C3E\u90E8\u659C\u6760\uFF1A\u76F4\u63A5\u8C03\u7528\uFF0C\u4E0D\u505A probe+retry
4371
+ response_logged = False
4372
+ async def pages_send(message):
4373
+ nonlocal response_logged
4374
+ if message['type'] == 'http.response.start':
4375
+ status_code = message.get('status', 200)
4376
+ headers = list(message.get('headers', []))
4377
+ _pages_inject_asgi_headers(headers, status_code)
4378
+ message = dict(message)
4379
+ message['headers'] = headers
4380
+ if not response_logged:
4381
+ response_logged = True
4382
+ elapsed_ms = (time.time() - start_time) * 1000
4383
+ _pages_log_response(request_method, request_path, status_code, elapsed_ms)
4384
+ await send(message)
4385
+ await self.app(scope, receive, pages_send)
4323
4386
  else:
4324
4387
  # lifespan \u7B49\u4E8B\u4EF6\u900F\u4F20\u7ED9\u5E95\u5C42\u5E94\u7528
4325
4388
  await self.app(scope, receive, send)
@@ -5348,7 +5411,7 @@ if __name__ == '__main__':
5348
5411
  warnings.filterwarnings("ignore", category=DeprecationWarning)
5349
5412
  `,n=ui.default.join(Sn(ro.OUTPUT_DIR),"sitecustomize.py");Ur.default.writeFileSync(n,e)}generateScfBootstrap(){let e=`#!/bin/bash
5350
5413
  /var/lang/python310/bin/python3 -W ignore -u app.py
5351
- `,n=Sn(ui.default.join(ro.OUTPUT_DIR,"scf_bootstrap"));Ur.default.writeFileSync(n,e,{mode:493})}async packageToZip(){let{execSync:e}=require("child_process"),n=Sn(ro.OUTPUT_DIR),o=Sn(ui.default.join(ro.CLOUD_FUNCTIONS_DIR,"python.zip"));Ur.default.existsSync(o)&&Ur.default.unlinkSync(o);try{e(`cd "${n}" && zip -rq "${o}" .`,{stdio:this.silent?"pipe":"inherit"});let r=(Ur.default.statSync(o).size/1024/1024).toFixed(1);this.log(`Packaged to python.zip (${r}MB)`)}catch(u){throw this.error(`Failed to create zip package: ${u.message}`),u}}async build(e={}){e.port&&(this.wrapPort=e.port);let n=Sn(ro.OUTPUT_DIR);this.prepareOutputDirectory(n);let o=Sn(ro.FUNCTION);if(this.functionList=this.scanPythonFiles(o),this.functionList.length===0)return this.log("No Python functions found"),{routes:[],watch:[]};this.log(`Found ${this.functionList.length} Python functions`),this.copyUserFiles(),this.generateAppPy(),this.generateSiteCustomize(),this.generateMetaJson(),this.generateRequirements(),await this.installDependencies();let r=[...this.functionList].sort((f,p)=>{if(!f.isDynamic&&p.isDynamic)return-1;if(f.isDynamic&&!p.isDynamic)return 1;let y=f.route.includes(":")&&f.route.includes("*"),m=p.route.includes(":")&&p.route.includes("*");return!y&&m?-1:y&&!m?1:p.route.length-f.route.length}).map(f=>{let p=f.route.includes(":")&&f.route.includes("*"),y={src:f.isDynamic?this.routeToRegex(f.route):`^${f.route}$`,path:f.route,file:f.filePath};return f.isDynamic&&f.paramNames.length>0&&(y.params=f.paramNames),p&&(y.isCatchAll=!0),y.method=f.methods,y.isFramework=f.isFramework,y});return Wr(`\u2728 Python functions build completed: ${this.functionList.length} functions`),{routes:r,watch:[Sn(ro.FUNCTION)]}}getRoutes(){return[...this.functionList].sort((n,o)=>{if(!n.isDynamic&&o.isDynamic)return-1;if(n.isDynamic&&!o.isDynamic)return 1;let u=n.route.includes(":")&&n.route.includes("*"),r=o.route.includes(":")&&o.route.includes("*");return!u&&r?-1:u&&!r?1:o.route.length-n.route.length}).map(n=>{let o=n.route.includes(":")&&n.route.includes("*"),u={src:n.isDynamic?this.routeToRegex(n.route):`^${n.route}$`,path:n.route,file:n.filePath};return n.isDynamic&&n.paramNames.length>0&&(u.params=n.paramNames),o&&(u.isCatchAll=!0),u.method=n.methods,u.isFramework=n.isFramework,u})}}});var WC,iue,_x,W6=mt(()=>{nue();Hu();WC=cr(require("path")),iue=require("child_process");uE();_x=class{devConfig;buildInstance;config;server=null;isStarting=!1;constructor(e){this.devConfig=e,this.config={...e,watchPaths:yg(this)},this.buildInstance=new VC({mode:"dev",env:e.env})}async start(e={}){if(this.isStarting)return console.log("[dev] Python function server is already starting, skipping..."),{destUrl:this.server?`http://127.0.0.1:${this.buildInstance.wrapPort}`:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"starting"};if(this.server&&!this.server.killed)return console.log("[dev] Python function server is already running, skipping..."),{destUrl:`http://127.0.0.1:${this.buildInstance.wrapPort}`,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:this.buildInstance.getRoutes().map(o=>{var u;return{src:o.src,routePath:o.path,method:o.method||["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD"],isFramework:(u=o.isFramework)!=null?u:!o.isCatchAll}}),status:"running"};this.isStarting=!0;let n=await Sx(9100);try{let o;if(e.skipBuild?o={routes:this.buildInstance.getRoutes()}:o=await this.buildInstance.build({port:n}),o.routes.length===0)return{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"no-routes"};this.server&&await this.stop();let u=WC.default.join(process.cwd(),".edgeone/cloud-functions/api-python/app.py"),r=this.detectPythonCommand(),f=(0,iue.spawn)(r,[u],{stdio:["pipe","inherit","inherit"],env:{...process.env,...this.devConfig.env,PYTHONPATH:WC.default.join(process.cwd(),".edgeone/cloud-functions/api-python"),PORT:String(n)},cwd:WC.default.join(process.cwd(),".edgeone/cloud-functions/api-python")});await new Promise((y,m)=>{f.on("spawn",()=>{y(void 0)}),f.on("error",S=>{ss("Failed to start Python dev server:",S.message),m(S)})}),this.server=f,this.isStarting=!1;let p=o.routes.map(y=>{var m;return{src:y.src,routePath:y.path,method:y.method||["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD"],isFramework:(m=y.isFramework)!=null?m:!y.isCatchAll}});return{destUrl:`http://127.0.0.1:${n}`,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:p,status:"started"}}catch(o){return this.isStarting=!1,{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"startFailed",error:o.message}}}async stop(){if(this.server){let e=this.server;return this.server=null,new Promise(n=>{let o=setTimeout(()=>{console.log("[dev] Python server kill timeout, force killing...");try{e.kill("SIGKILL")}catch{}n()},3e3);e.once("exit",()=>{clearTimeout(o),console.log("[dev] Python function dev server stopped"),n()});try{e.kill("SIGTERM")}catch{clearTimeout(o),n()}})}}async handleFileChange(e){try{Wr(`[dev] Python function file changed: ${e}`),this.isStarting=!1,await this.stop();let n=await this.start({skipBuild:!1});return n.status==="startFailed"?{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:n.routes,status:"rebuildFailed",error:n.error}:{destUrl:`http://127.0.0.1:${this.buildInstance.wrapPort}`,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:n.routes,status:"rebuilt"}}catch(n){return{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"rebuildFailed",error:n.message}}}detectPythonCommand(){let e=this.buildInstance.getPythonCommand();if(e)return e;throw new Error(`Python 3.10+ is not available.
5414
+ `,n=Sn(ui.default.join(ro.OUTPUT_DIR,"scf_bootstrap"));Ur.default.writeFileSync(n,e,{mode:493})}async packageToZip(){let{execSync:e}=require("child_process"),n=Sn(ro.OUTPUT_DIR),o=Sn(ui.default.join(ro.CLOUD_FUNCTIONS_DIR,"python.zip"));Ur.default.existsSync(o)&&Ur.default.unlinkSync(o);try{e(`cd "${n}" && zip -rq "${o}" .`,{stdio:this.silent?"pipe":"inherit"});let r=(Ur.default.statSync(o).size/1024/1024).toFixed(1);this.log(`Packaged to python.zip (${r}MB)`)}catch(u){throw this.error(`Failed to create zip package: ${u.message}`),u}}async build(e={}){e.port&&(this.wrapPort=e.port);let n=Sn(ro.OUTPUT_DIR);this.prepareOutputDirectory(n);let o=Sn(ro.FUNCTION);if(this.functionList=this.scanPythonFiles(o),this.functionList.length===0)return this.log("No Python functions found"),{routes:[],watch:[]};this.log(`Found ${this.functionList.length} Python functions`),this.copyUserFiles(),this.generateAppPy(),this.generateSiteCustomize(),this.generateMetaJson(),this.generateRequirements(),await this.installDependencies();let r=[...this.functionList].sort((f,p)=>{if(!f.isDynamic&&p.isDynamic)return-1;if(f.isDynamic&&!p.isDynamic)return 1;let y=f.route.includes(":")&&f.route.includes("*"),m=p.route.includes(":")&&p.route.includes("*");return!y&&m?-1:y&&!m?1:p.route.length-f.route.length}).map(f=>{let p=f.route.includes(":")&&f.route.includes("*"),y={src:f.isDynamic?this.routeToRegex(f.route):`^${f.route}(?:/.*)?$`,path:f.route,file:f.filePath};return f.isDynamic&&f.paramNames.length>0&&(y.params=f.paramNames),p&&(y.isCatchAll=!0),y.method=f.methods,y.isFramework=f.isFramework,y});return Wr(`\u2728 Python functions build completed: ${this.functionList.length} functions`),{routes:r,watch:[Sn(ro.FUNCTION)]}}getRoutes(){return[...this.functionList].sort((n,o)=>{if(!n.isDynamic&&o.isDynamic)return-1;if(n.isDynamic&&!o.isDynamic)return 1;let u=n.route.includes(":")&&n.route.includes("*"),r=o.route.includes(":")&&o.route.includes("*");return!u&&r?-1:u&&!r?1:o.route.length-n.route.length}).map(n=>{let o=n.route.includes(":")&&n.route.includes("*"),u={src:n.isDynamic?this.routeToRegex(n.route):`^${n.route}(?:/.*)?$`,path:n.route,file:n.filePath};return n.isDynamic&&n.paramNames.length>0&&(u.params=n.paramNames),o&&(u.isCatchAll=!0),u.method=n.methods,u.isFramework=n.isFramework,u})}}});var WC,iue,_x,W6=mt(()=>{nue();Hu();WC=cr(require("path")),iue=require("child_process");uE();_x=class{devConfig;buildInstance;config;server=null;isStarting=!1;constructor(e){this.devConfig=e,this.config={...e,watchPaths:yg(this)},this.buildInstance=new VC({mode:"dev",env:e.env})}async start(e={}){if(this.isStarting)return console.log("[dev] Python function server is already starting, skipping..."),{destUrl:this.server?`http://127.0.0.1:${this.buildInstance.wrapPort}`:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"starting"};if(this.server&&!this.server.killed)return console.log("[dev] Python function server is already running, skipping..."),{destUrl:`http://127.0.0.1:${this.buildInstance.wrapPort}`,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:this.buildInstance.getRoutes().map(o=>{var u;return{src:o.src,routePath:o.path,method:o.method||["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD"],isFramework:(u=o.isFramework)!=null?u:!o.isCatchAll}}),status:"running"};this.isStarting=!0;let n=await Sx(9100);try{let o;if(e.skipBuild?o={routes:this.buildInstance.getRoutes()}:o=await this.buildInstance.build({port:n}),o.routes.length===0)return{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"no-routes"};this.server&&await this.stop();let u=WC.default.join(process.cwd(),".edgeone/cloud-functions/api-python/app.py"),r=this.detectPythonCommand(),f=(0,iue.spawn)(r,[u],{stdio:["pipe","inherit","inherit"],env:{...process.env,...this.devConfig.env,PYTHONPATH:WC.default.join(process.cwd(),".edgeone/cloud-functions/api-python"),PORT:String(n)},cwd:WC.default.join(process.cwd(),".edgeone/cloud-functions/api-python")});await new Promise((y,m)=>{f.on("spawn",()=>{y(void 0)}),f.on("error",S=>{ss("Failed to start Python dev server:",S.message),m(S)})}),this.server=f,this.isStarting=!1;let p=o.routes.map(y=>{var m;return{src:y.src,routePath:y.path,method:y.method||["GET","POST","PUT","DELETE","PATCH","OPTIONS","HEAD"],isFramework:(m=y.isFramework)!=null?m:!y.isCatchAll}});return{destUrl:`http://127.0.0.1:${n}`,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:p,status:"started"}}catch(o){return this.isStarting=!1,{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"startFailed",error:o.message}}}async stop(){if(this.server){let e=this.server;return this.server=null,new Promise(n=>{let o=setTimeout(()=>{console.log("[dev] Python server kill timeout, force killing...");try{e.kill("SIGKILL")}catch{}n()},3e3);e.once("exit",()=>{clearTimeout(o),console.log("[dev] Python function dev server stopped"),n()});try{e.kill("SIGTERM")}catch{clearTimeout(o),n()}})}}async handleFileChange(e){try{Wr(`[dev] Python function file changed: ${e}`),this.isStarting=!1,await this.stop();let n=await this.start({skipBuild:!1});return n.status==="startFailed"?{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:n.routes,status:"rebuildFailed",error:n.error}:{destUrl:`http://127.0.0.1:${this.buildInstance.wrapPort}`,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:n.routes,status:"rebuilt"}}catch(n){return{destUrl:null,watch:this.config.watchPaths,type:"python-function",config:this.config,routes:[],status:"rebuildFailed",error:n.message}}}detectPythonCommand(){let e=this.buildInstance.getPythonCommand();if(e)return e;throw new Error(`Python 3.10+ is not available.
5352
5415
  Please install Python 3.10:
5353
5416
  macOS: brew install python@3.10
5354
5417
  Ubuntu: sudo apt install python3.10